From d5ef0417abbaf0ceb59c4f6102832d15ce7f9b67 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Thu, 20 Aug 2015 18:25:47 +0200 Subject: [PATCH 01/28] refactoring --- arangod/Replication/ContinuousSyncer.cpp | 315 ++++++++++++++---- arangod/Replication/ContinuousSyncer.h | 21 +- .../RestHandler/RestReplicationHandler.cpp | 48 ++- arangod/V8Server/v8-replication.cpp | 2 +- arangod/VocBase/replication-applier.cpp | 14 - arangod/VocBase/replication-applier.h | 20 -- arangod/VocBase/replication-common.h | 1 - arangod/VocBase/replication-dump.cpp | 64 +++- arangod/VocBase/replication-dump.h | 2 + arangod/Wal/CollectorThread.cpp | 4 +- arangod/Wal/RecoverState.cpp | 290 +++------------- arangod/Wal/RecoverState.h | 56 ---- 12 files changed, 428 insertions(+), 409 deletions(-) diff --git a/arangod/Replication/ContinuousSyncer.cpp b/arangod/Replication/ContinuousSyncer.cpp index 124b0098afef..b6bd9e34f679 100644 --- a/arangod/Replication/ContinuousSyncer.cpp +++ b/arangod/Replication/ContinuousSyncer.cpp @@ -97,6 +97,15 @@ ContinuousSyncer::ContinuousSyncer (TRI_server_t* server, //////////////////////////////////////////////////////////////////////////////// ContinuousSyncer::~ContinuousSyncer () { + // abort all running transactions + for (auto& it : _openInitialTransactions) { + auto trx = it.second; + + if (trx != nullptr) { + trx->abort(); + delete trx; + } + } } // ----------------------------------------------------------------------------- @@ -217,15 +226,49 @@ int ContinuousSyncer::saveApplierState () { return res; } //////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not a collection should be excluded +/// @brief whether or not a marker should be skipped //////////////////////////////////////////////////////////////////////////////// -bool ContinuousSyncer::excludeCollection (TRI_json_t const* json) const { - if (_restrictType == RESTRICT_NONE && _includeSystem) { - return false; +bool ContinuousSyncer::skipMarker (TRI_voc_tick_t firstRegularTick, + TRI_json_t const* json) const { + bool tooOld = false; + string const tick = JsonHelper::getStringValue(json, "tick", ""); + + if (! tick.empty()) { + tooOld = (static_cast(StringUtils::uint64(tick.c_str(), tick.size())) < firstRegularTick); + + if (tooOld) { + int typeValue = JsonHelper::getNumericValue(json, "type", 0); + // handle marker type + TRI_replication_operation_e type = (TRI_replication_operation_e) typeValue; + + if (type == REPLICATION_MARKER_DOCUMENT || + type == REPLICATION_MARKER_EDGE || + type == REPLICATION_MARKER_REMOVE || + type == REPLICATION_TRANSACTION_START || + type == REPLICATION_TRANSACTION_ABORT || + type == REPLICATION_TRANSACTION_COMMIT) { + // read "tid" entry from marker + string const id = JsonHelper::getStringValue(json, "tid", ""); + + if (! id.empty()) { + TRI_voc_tid_t tid = static_cast(StringUtils::uint64(id.c_str(), id.size())); + + if (tid > 0 && + _openInitialTransactions.find(tid) != _openInitialTransactions.end()) { + // must still use this marker as it belongs to a transaction we need to finish + tooOld = false; + } + } + } + } } - if (! TRI_IsObjectJson(json)) { + if (tooOld) { + return true; + } + + if (_restrictType == RESTRICT_NONE && _includeSystem) { return false; } @@ -369,14 +412,17 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, } if (tid > 0) { - auto it = _applier->_runningRemoteTransactions.find(tid); + auto it = _openInitialTransactions.find(tid); - if (it == _applier->_runningRemoteTransactions.end()) { + if (it == _openInitialTransactions.end()) { return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } auto trx = (*it).second; - TRI_ASSERT(trx != nullptr); + + if (trx == nullptr) { + return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; + } TRI_transaction_collection_t* trxCollection = trx->trxCollection(cid); @@ -443,35 +489,35 @@ int ContinuousSyncer::startTransaction (TRI_json_t const* json) { // note: this is the remote transaction id! TRI_voc_tid_t tid = static_cast(StringUtils::uint64(id.c_str(), id.size())); - auto it = _applier->_runningRemoteTransactions.find(tid); + auto it = _openInitialTransactions.find(tid); - if (it != _applier->_runningRemoteTransactions.end()) { + if (it != _openInitialTransactions.end()) { + // found a previous version of the same transaction - should not happen... auto trx = (*it).second; + + _openInitialTransactions.erase(tid); - _applier->_runningRemoteTransactions.erase(tid); + if (trx != nullptr) { + // abort ongoing trx + delete trx; + } - // abort ongoing trx - delete trx; } TRI_ASSERT(tid > 0); - LOG_TRACE("starting replication transaction %llu", (unsigned long long) tid); + LOG_TRACE("starting transaction %llu", (unsigned long long) tid); - auto trx = new ReplicationTransaction(_server, _vocbase, tid); - - if (trx == nullptr) { - return TRI_ERROR_OUT_OF_MEMORY; - } + std::unique_ptr trx(new ReplicationTransaction(_server, _vocbase, tid)); int res = trx->begin(); if (res != TRI_ERROR_NO_ERROR) { - delete trx; return res; } - _applier->_runningRemoteTransactions.insert(it, std::make_pair(tid, trx)); + _openInitialTransactions[tid] = trx.get(); + trx.release(); return TRI_ERROR_NO_ERROR; } @@ -489,12 +535,12 @@ int ContinuousSyncer::abortTransaction (TRI_json_t const* json) { } // transaction id - // note: this is the remote trasnaction id! + // note: this is the remote transaction id! TRI_voc_tid_t const tid = static_cast(StringUtils::uint64(id.c_str(), id.size())); - auto it = _applier->_runningRemoteTransactions.find(tid); + auto it = _openInitialTransactions.find(tid); - if (it == _applier->_runningRemoteTransactions.end()) { + if (it == _openInitialTransactions.end()) { // invalid state, no transaction was started. return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } @@ -504,12 +550,16 @@ int ContinuousSyncer::abortTransaction (TRI_json_t const* json) { LOG_TRACE("abort replication transaction %llu", (unsigned long long) tid); auto trx = (*it).second; - _applier->_runningRemoteTransactions.erase(tid); + _openInitialTransactions.erase(tid); - int res = trx->abort(); - delete trx; + if (trx != nullptr) { + int res = trx->abort(); + delete trx; - return res; + return res; + } + + return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } //////////////////////////////////////////////////////////////////////////////// @@ -528,8 +578,9 @@ int ContinuousSyncer::commitTransaction (TRI_json_t const* json) { // note: this is the remote trasnaction id! TRI_voc_tid_t const tid = static_cast(StringUtils::uint64(id.c_str(), id.size())); - auto it = _applier->_runningRemoteTransactions.find(tid); - if (it == _applier->_runningRemoteTransactions.end()) { + auto it = _openInitialTransactions.find(tid); + + if (it == _openInitialTransactions.end()) { // invalid state, no transaction was started. return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } @@ -539,12 +590,16 @@ int ContinuousSyncer::commitTransaction (TRI_json_t const* json) { LOG_TRACE("committing replication transaction %llu", (unsigned long long) tid); auto trx = (*it).second; - _applier->_runningRemoteTransactions.erase(tid); + _openInitialTransactions.erase(tid); - int res = trx->commit(); - delete trx; + if (trx != nullptr) { + int res = trx->commit(); + delete trx; - return res; + return res; + } + + return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } //////////////////////////////////////////////////////////////////////////////// @@ -621,15 +676,6 @@ int ContinuousSyncer::changeCollection (TRI_json_t const* json) { int ContinuousSyncer::applyLogMarker (TRI_json_t const* json, string& errorMsg) { - static const string invalidMsg = "received invalid JSON data"; - - // check data - if (! JsonHelper::isObject(json)) { - errorMsg = invalidMsg; - - return TRI_ERROR_REPLICATION_INVALID_RESPONSE; - } - // fetch marker "type" int typeValue = JsonHelper::getNumericValue(json, "type", 0); @@ -708,6 +754,7 @@ int ContinuousSyncer::applyLogMarker (TRI_json_t const* json, //////////////////////////////////////////////////////////////////////////////// int ContinuousSyncer::applyLog (SimpleHttpResult* response, + TRI_voc_tick_t firstRegularTick, std::string& errorMsg, uint64_t& processedMarkers, uint64_t& ignoreCount) { @@ -746,10 +793,16 @@ int ContinuousSyncer::applyLog (SimpleHttpResult* response, if (json == nullptr) { return TRI_ERROR_OUT_OF_MEMORY; } + + if (! TRI_IsObjectJson(json.get())) { + errorMsg = "received invalid JSON data"; + + return TRI_ERROR_REPLICATION_INVALID_RESPONSE; + } int res; bool skipped; - if (excludeCollection(json.get())) { + if (skipMarker(firstRegularTick, json.get())) { // entry is skipped res = TRI_ERROR_NO_ERROR; skipped = true; @@ -808,7 +861,6 @@ int ContinuousSyncer::applyLog (SimpleHttpResult* response, int ContinuousSyncer::runContinuousSync (string& errorMsg) { uint64_t connectRetries = 0; uint64_t inactiveCycles = 0; - int res = TRI_ERROR_INTERNAL; // get start tick // --------------------------------------- @@ -836,7 +888,19 @@ int ContinuousSyncer::runContinuousSync (string& errorMsg) { return TRI_ERROR_REPLICATION_NO_START_TICK; } - // TODO: get the applier into a sensible start state... + // get the applier into a sensible start state by fetching the list of + // open transactions from the master + TRI_voc_tick_t fetchTick = 0; + int res = fetchMasterState(errorMsg, 0, fromTick, fetchTick); + + if (res != TRI_ERROR_NO_ERROR) { + return res; + } + + if (fetchTick > fromTick) { + // must not happen + return TRI_ERROR_INTERNAL; + } // run in a loop. the loop is terminated when the applier is stopped or an // error occurs @@ -844,8 +908,8 @@ int ContinuousSyncer::runContinuousSync (string& errorMsg) { bool worked; bool masterActive = false; - // fromTick is passed by reference! - res = followMasterLog(errorMsg, fromTick, _configuration._ignoreErrors, worked, masterActive); + // fetchTick is passed by reference! + res = followMasterLog(errorMsg, fetchTick, fromTick, _configuration._ignoreErrors, worked, masterActive); uint64_t sleepTime; @@ -928,12 +992,125 @@ int ContinuousSyncer::runContinuousSync (string& errorMsg) { return res; } +//////////////////////////////////////////////////////////////////////////////// +/// @brief fetch the initial master state +//////////////////////////////////////////////////////////////////////////////// + +int ContinuousSyncer::fetchMasterState (string& errorMsg, + TRI_voc_tick_t fromTick, + TRI_voc_tick_t toTick, + TRI_voc_tick_t& startTick) { + string const baseUrl = BaseUrl + "/determine-open-transactions"; + + map headers; + + string const url = baseUrl + + "?serverId=" + _localServerIdString + + "&from=" + StringUtils::itoa(fromTick) + + "&to=" + StringUtils::itoa(toTick); + + string const progress = "fetching initial master state with from tick " + StringUtils::itoa(fromTick) + ", toTick " + StringUtils::itoa(toTick); + + LOG_TRACE("fetching initial master state with from tick %llu, to tick %llu, url %s", + (unsigned long long) fromTick, + (unsigned long long) toTick, + url.c_str()); + + // send request + setProgress(progress.c_str()); + + SimpleHttpResult* response = _client->request(HttpRequest::HTTP_REQUEST_GET, + url, + nullptr, + 0, + headers); + + if (response == nullptr || ! response->isComplete()) { + errorMsg = "got invalid response from master at " + string(_masterInfo._endpoint) + + ": " + _client->getErrorMessage(); + + if (response != nullptr) { + delete response; + } + + return TRI_ERROR_REPLICATION_NO_RESPONSE; + } + + if (response->wasHttpError()) { + errorMsg = "got invalid response from master at " + string(_masterInfo._endpoint) + + ": HTTP " + StringUtils::itoa(response->getHttpReturnCode()) + + ": " + response->getHttpReturnMessage(); + + delete response; + + return TRI_ERROR_REPLICATION_MASTER_ERROR; + } + + bool fromIncluded = false; + + bool found; + string header = response->getHeaderField(TRI_REPLICATION_HEADER_FROMPRESENT, found); + + if (found) { + fromIncluded = StringUtils::boolean(header); + } + + if (! fromIncluded && + _requireFromPresent) { + errorMsg = "required tick value '" + StringUtils::itoa(fromTick) + "' is not present on master at " + string(_masterInfo._endpoint); + delete response; + + return TRI_ERROR_REPLICATION_START_TICK_NOT_PRESENT; + } + + // fetch the tick from where we need to start scanning later + header = response->getHeaderField(TRI_REPLICATION_HEADER_LASTTICK, found); + + if (! found) { + errorMsg = "got invalid response from master at " + string(_masterInfo._endpoint) + + ": required header " + TRI_REPLICATION_HEADER_LASTTICK + " is missing"; + + delete response; + return TRI_ERROR_REPLICATION_INVALID_RESPONSE; + } + + startTick = StringUtils::uint64(header); + + StringBuffer& data = response->getBody(); + std::unique_ptr json(TRI_JsonString(TRI_UNKNOWN_MEM_ZONE, data.begin())); + + delete response; + + if (! TRI_IsArrayJson(json.get())) { + errorMsg = "got invalid response from master at " + string(_masterInfo._endpoint) + + ": invalid response type for initial data. expecting array"; + + return TRI_ERROR_REPLICATION_INVALID_RESPONSE; + } + + for (size_t i = 0; i < TRI_LengthArrayJson(json.get()); ++i) { + auto id = static_cast(TRI_AtVector(&(json.get()->_value._objects), i)); + + if (! TRI_IsStringJson(id)) { + errorMsg = "got invalid response from master at " + string(_masterInfo._endpoint) + + ": invalid response type for initial data. expecting array of ids"; + + return TRI_ERROR_REPLICATION_INVALID_RESPONSE; + } + + _openInitialTransactions.emplace(StringUtils::uint64(id->_value._string.data, id->_value._string.length - 1), nullptr); + } + + return TRI_ERROR_NO_ERROR; +} + //////////////////////////////////////////////////////////////////////////////// /// @brief run the continuous synchronisation //////////////////////////////////////////////////////////////////////////////// int ContinuousSyncer::followMasterLog (string& errorMsg, - TRI_voc_tick_t& fromTick, + TRI_voc_tick_t& fetchTick, + TRI_voc_tick_t firstRegularTick, uint64_t& ignoreCount, bool& worked, bool& masterActive) { @@ -942,24 +1119,48 @@ int ContinuousSyncer::followMasterLog (string& errorMsg, map headers; worked = false; - string const tickString = StringUtils::itoa(fromTick); + string const tickString = StringUtils::itoa(fetchTick); string const url = baseUrl + "&from=" + tickString + + "&firstRegular=" + StringUtils::itoa(firstRegularTick) + "&serverId=" + _localServerIdString + "&includeSystem=" + (_includeSystem ? "true" : "false"); LOG_TRACE("running continuous replication request with tick %llu, url %s", - (unsigned long long) fromTick, + (unsigned long long) fetchTick, url.c_str()); // send request string const progress = "fetching master log from offset " + tickString; setProgress(progress.c_str()); - SimpleHttpResult* response = _client->request(HttpRequest::HTTP_REQUEST_GET, + std::string body; + + if (! _openInitialTransactions.empty()) { + // stringify list of open transactions + body.append("[\""); + bool first = true; + + for (auto& it : _openInitialTransactions) { + if (first) { + first = false; + } + else { + body.append("\",\""); + } + + body.append(StringUtils::itoa(it.first)); + } + body.append("\"]"); + } + else { + body.append("[]"); + } + + SimpleHttpResult* response = _client->request(HttpRequest::HTTP_REQUEST_PUT, url, - nullptr, - 0, + body.c_str(), + body.size(), headers); if (response == nullptr || ! response->isComplete()) { @@ -1011,8 +1212,8 @@ int ContinuousSyncer::followMasterLog (string& errorMsg, if (found) { tick = StringUtils::uint64(header); - if (tick > fromTick) { - fromTick = tick; + if (tick > fetchTick) { + fetchTick = tick; worked = true; } else { @@ -1052,7 +1253,7 @@ int ContinuousSyncer::followMasterLog (string& errorMsg, } uint64_t processedMarkers = 0; - res = applyLog(response, errorMsg, processedMarkers, ignoreCount); + res = applyLog(response, firstRegularTick, errorMsg, processedMarkers, ignoreCount); if (processedMarkers > 0) { worked = true; diff --git a/arangod/Replication/ContinuousSyncer.h b/arangod/Replication/ContinuousSyncer.h index 0d010d426806..6f4f3f9896b2 100644 --- a/arangod/Replication/ContinuousSyncer.h +++ b/arangod/Replication/ContinuousSyncer.h @@ -51,6 +51,7 @@ namespace triagens { } namespace arango { + class ReplicationTransaction; enum RestrictType : uint32_t { RESTRICT_NONE, @@ -128,7 +129,8 @@ namespace triagens { /// @brief whether or not a collection should be excluded //////////////////////////////////////////////////////////////////////////////// - bool excludeCollection (struct TRI_json_t const*) const; + bool skipMarker (TRI_voc_tick_t, + struct TRI_json_t const*) const; //////////////////////////////////////////////////////////////////////////////// /// @brief whether or not a collection should be excluded @@ -192,6 +194,7 @@ namespace triagens { //////////////////////////////////////////////////////////////////////////////// int applyLog (httpclient::SimpleHttpResult*, + TRI_voc_tick_t, std::string&, uint64_t&, uint64_t&); @@ -202,12 +205,22 @@ namespace triagens { int runContinuousSync (std::string&); +//////////////////////////////////////////////////////////////////////////////// +/// @brief fetch the initial master state +//////////////////////////////////////////////////////////////////////////////// + + int fetchMasterState (std::string&, + TRI_voc_tick_t, + TRI_voc_tick_t, + TRI_voc_tick_t&); + //////////////////////////////////////////////////////////////////////////////// /// @brief run the continuous synchronisation //////////////////////////////////////////////////////////////////////////////// int followMasterLog (std::string&, TRI_voc_tick_t&, + TRI_voc_tick_t, uint64_t&, bool&, bool&); @@ -267,6 +280,12 @@ namespace triagens { bool _requireFromPresent; +//////////////////////////////////////////////////////////////////////////////// +/// @brief which transactions were open and need to be treated specially +//////////////////////////////////////////////////////////////////////////////// + + std::unordered_map _openInitialTransactions; + }; } diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index c3dc04630eea..4470c638dc97 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -120,7 +120,8 @@ HttpHandler::status_t RestReplicationHandler::execute () { handleCommandLoggerFirstTick(); } else if (command == "logger-follow") { - if (type != HttpRequest::HTTP_REQUEST_GET) { + if (type != HttpRequest::HTTP_REQUEST_GET && + type != HttpRequest::HTTP_REQUEST_PUT) { goto BAD_CALL; } handleCommandLoggerFollow(); @@ -1098,7 +1099,8 @@ void RestReplicationHandler::handleCommandLoggerFollow () { // determine start and end tick triagens::wal::LogfileManagerState state = triagens::wal::LogfileManager::instance()->state(); TRI_voc_tick_t tickStart = 0; - TRI_voc_tick_t tickEnd = state.lastDataTick; + TRI_voc_tick_t tickEnd = state.lastDataTick; + TRI_voc_tick_t firstRegularTick = 0; bool found; char const* value; @@ -1128,6 +1130,39 @@ void RestReplicationHandler::handleCommandLoggerFollow () { includeSystem = StringUtils::boolean(value); } + // grab list of transactions from the body value + std::unordered_set transactionIds; + + if (_request->requestType() == triagens::rest::HttpRequest::HTTP_REQUEST_PUT) { + value = _request->value("firstRegularTick", found); + if (found) { + firstRegularTick = static_cast(StringUtils::uint64(value)); + } + + char const* ptr = _request->body(); + + std::unique_ptr json(TRI_JsonString(TRI_UNKNOWN_MEM_ZONE, ptr)); + + if (! TRI_IsArrayJson(json.get())) { + generateError(HttpResponse::BAD, + TRI_ERROR_HTTP_BAD_PARAMETER, + "invalid body value. expecting array"); + return; + } + + for (size_t i = 0; i < TRI_LengthArrayJson(json.get()); ++i) { + auto id = static_cast(TRI_AtVector(&(json.get()->_value._objects), i)); + if (! TRI_IsStringJson(id)) { + generateError(HttpResponse::BAD, + TRI_ERROR_HTTP_BAD_PARAMETER, + "invalid body value. expecting array of ids"); + return; + } + + transactionIds.emplace(StringUtils::uint64(id->_value._string.data, id->_value._string.length - 1)); + } + } + int res = TRI_ERROR_NO_ERROR; try { @@ -1135,7 +1170,7 @@ void RestReplicationHandler::handleCommandLoggerFollow () { TRI_replication_dump_t dump(_vocbase, (size_t) determineChunkSize(), includeSystem); // and dump - res = TRI_DumpLogReplication(&dump, tickStart, tickEnd, false); + res = TRI_DumpLogReplication(&dump, transactionIds, firstRegularTick, tickStart, tickEnd, false); if (res == TRI_ERROR_NO_ERROR) { bool const checkMore = (dump._lastFoundTick > 0 && dump._lastFoundTick != state.lastDataTick); @@ -1244,6 +1279,9 @@ void RestReplicationHandler::handleCommandDetermineOpenTransactions () { } _response->setContentType("application/x-arango-dump; charset=utf-8"); + + _response->setHeader(TRI_CHAR_LENGTH_PAIR(TRI_REPLICATION_HEADER_FROMPRESENT), dump._fromTickIncluded ? "true" : "false"); + _response->setHeader(TRI_CHAR_LENGTH_PAIR(TRI_REPLICATION_HEADER_LASTTICK), StringUtils::itoa(dump._lastFoundTick)); if (length > 0) { // transfer ownership of the buffer contents @@ -2201,7 +2239,8 @@ int RestReplicationHandler::processRestoreIndexesCoordinator ( return TRI_ERROR_HTTP_BAD_PARAMETER; } - const size_t n = TRI_LengthArrayJson(indexes); + size_t const n = TRI_LengthArrayJson(indexes); + if (n == 0) { // nothing to do return TRI_ERROR_NO_ERROR; @@ -3661,6 +3700,7 @@ void RestReplicationHandler::handleCommandApplierSetConfig () { if (TRI_IsArrayJson(value)) { config._restrictCollections.clear(); size_t const n = TRI_LengthArrayJson(value); + for (size_t i = 0; i < n; ++i) { TRI_json_t const* collection = TRI_LookupArrayJson(value, i); if (TRI_IsStringJson(collection)) { diff --git a/arangod/V8Server/v8-replication.cpp b/arangod/V8Server/v8-replication.cpp index 129789a81a0f..81a91f58b7e6 100644 --- a/arangod/V8Server/v8-replication.cpp +++ b/arangod/V8Server/v8-replication.cpp @@ -98,7 +98,7 @@ static void JS_LastLoggerReplication (const v8::FunctionCallbackInfo& TRI_voc_tick_t tickStart = TRI_ObjectToUInt64(args[0], true); TRI_voc_tick_t tickEnd = TRI_ObjectToUInt64(args[1], true); - int res = TRI_DumpLogReplication(&dump, tickStart, tickEnd, true); + int res = TRI_DumpLogReplication(&dump, std::unordered_set(), 0, tickStart, tickEnd, true); if (res != TRI_ERROR_NO_ERROR) { TRI_V8_THROW_EXCEPTION(res); diff --git a/arangod/VocBase/replication-applier.cpp b/arangod/VocBase/replication-applier.cpp index 4f43118c7778..da4033d8a903 100644 --- a/arangod/VocBase/replication-applier.cpp +++ b/arangod/VocBase/replication-applier.cpp @@ -1055,14 +1055,6 @@ TRI_replication_applier_t::~TRI_replication_applier_t () { stop(true); TRI_DestroyStateReplicationApplier(&_state); TRI_DestroyConfigurationReplicationApplier(&_configuration); - - for (auto it = _runningRemoteTransactions.begin(); it != _runningRemoteTransactions.end(); ++it) { - auto trx = (*it).second; - - // do NOT write abort markers so we can resume running transactions later - trx->addHint(TRI_TRANSACTION_HINT_NO_ABORT_MARKER, true); - delete trx; - } } //////////////////////////////////////////////////////////////////////////////// @@ -1233,12 +1225,6 @@ int TRI_replication_applier_t::shutdown () { setTermination(false); - { - WRITE_LOCKER(_statusLock); - // really abort all ongoing transactions - abortRunningRemoteTransactions(); - } - LOG_INFO("stopped replication applier for database '%s'", _databaseName.c_str()); return res; diff --git a/arangod/VocBase/replication-applier.h b/arangod/VocBase/replication-applier.h index b4cfa2e5488b..c3ebdde3456d 100644 --- a/arangod/VocBase/replication-applier.h +++ b/arangod/VocBase/replication-applier.h @@ -136,10 +136,6 @@ class TRI_replication_applier_t { _terminateThread.store(value); } - void addRemoteTransaction (triagens::arango::ReplicationTransaction* trx) { - _runningRemoteTransactions.insert(std::make_pair(trx->externalId(), trx)); - } - //////////////////////////////////////////////////////////////////////////////// /// @brief return the database name //////////////////////////////////////////////////////////////////////////////// @@ -173,21 +169,6 @@ class TRI_replication_applier_t { int shutdown (); - void abortRunningRemoteTransactions () { - size_t const n = _runningRemoteTransactions.size(); - triagens::arango::TransactionBase::increaseNumbers((int) n, (int) n); - - for (auto it = _runningRemoteTransactions.begin(); it != _runningRemoteTransactions.end(); ++it) { - auto trx = (*it).second; - - // do NOT write abort markers so we can resume running transactions later - trx->removeHint(TRI_TRANSACTION_HINT_NO_ABORT_MARKER, true); - delete trx; - } - - _runningRemoteTransactions.clear(); - } - //////////////////////////////////////////////////////////////////////////////// /// @brief set the progress with or without a lock //////////////////////////////////////////////////////////////////////////////// @@ -228,7 +209,6 @@ class TRI_replication_applier_t { TRI_replication_applier_state_t _state; TRI_replication_applier_configuration_t _configuration; TRI_thread_t _thread; - std::unordered_map _runningRemoteTransactions; }; // ----------------------------------------------------------------------------- diff --git a/arangod/VocBase/replication-common.h b/arangod/VocBase/replication-common.h index 88b77d323336..aa590e80f5cd 100644 --- a/arangod/VocBase/replication-common.h +++ b/arangod/VocBase/replication-common.h @@ -31,7 +31,6 @@ #define ARANGODB_VOC_BASE_REPLICATION__COMMON_H 1 #include "Basics/Common.h" - #include "VocBase/voc-types.h" // ----------------------------------------------------------------------------- diff --git a/arangod/VocBase/replication-dump.cpp b/arangod/VocBase/replication-dump.cpp index 55dd5d83087d..d2f9fc474ab9 100644 --- a/arangod/VocBase/replication-dump.cpp +++ b/arangod/VocBase/replication-dump.cpp @@ -1070,6 +1070,42 @@ static TRI_voc_tick_t GetCollectionFromWalMarker (TRI_df_marker_t const* marker) } } +//////////////////////////////////////////////////////////////////////////////// +/// @brief helper function to extract a transaction id from a marker +//////////////////////////////////////////////////////////////////////////////// + +template +static TRI_voc_tid_t GetTransactionId (TRI_df_marker_t const* marker) { + T const* m = reinterpret_cast(marker); + return m->_transactionId; +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief get the transaction id from a marker +//////////////////////////////////////////////////////////////////////////////// + +static TRI_voc_tid_t GetTransactionFromWalMarker (TRI_df_marker_t const* marker) { + TRI_ASSERT_EXPENSIVE(MustReplicateWalMarkerType(marker)); + + switch (marker->_type) { + case TRI_WAL_MARKER_DOCUMENT: + return GetTransactionId(marker); + case TRI_WAL_MARKER_EDGE: + return GetTransactionId(marker); + case TRI_WAL_MARKER_REMOVE: + return GetTransactionId(marker); + case TRI_WAL_MARKER_BEGIN_TRANSACTION: + return GetTransactionId(marker); + case TRI_WAL_MARKER_COMMIT_TRANSACTION: + return GetTransactionId(marker); + case TRI_WAL_MARKER_ABORT_TRANSACTION: + return GetTransactionId(marker); + default: { + return 0; + } + } +} + //////////////////////////////////////////////////////////////////////////////// /// @brief whether or not a marker belongs to a transaction //////////////////////////////////////////////////////////////////////////////// @@ -1094,7 +1130,9 @@ static bool IsTransactionWalMarker (TRI_replication_dump_t* dump, //////////////////////////////////////////////////////////////////////////////// static bool MustReplicateWalMarker (TRI_replication_dump_t* dump, - TRI_df_marker_t const* marker) { + TRI_df_marker_t const* marker, + TRI_voc_tick_t firstRegularTick, + std::unordered_set const& transactionIds) { // first check the marker type if (! MustReplicateWalMarkerType(marker)) { return false; @@ -1115,6 +1153,18 @@ static bool MustReplicateWalMarker (TRI_replication_dump_t* dump, } } + if (marker->_tick >= firstRegularTick) { + return true; + } + + if (! transactionIds.empty()) { + TRI_voc_tid_t tid = GetTransactionFromWalMarker(marker); + if (tid == 0 || + transactionIds.find(tid) == transactionIds.end()) { + return false; + } + } + return true; } @@ -1384,6 +1434,8 @@ int TRI_DumpCollectionReplication (TRI_replication_dump_t* dump, //////////////////////////////////////////////////////////////////////////////// int TRI_DumpLogReplication (TRI_replication_dump_t* dump, + std::unordered_set const& transactionIds, + TRI_voc_tick_t firstRegularTick, TRI_voc_tick_t tickMin, TRI_voc_tick_t tickMax, bool outputAsArray) { @@ -1438,14 +1490,14 @@ int TRI_DumpLogReplication (TRI_replication_dump_t* dump, if (foundTick >= tickMax) { hasMore = false; - } - if (foundTick > tickMax) { - // marker too new - break; + if (foundTick > tickMax) { + // marker too new + break; + } } - if (! MustReplicateWalMarker(dump, marker)) { + if (! MustReplicateWalMarker(dump, marker, firstRegularTick, transactionIds)) { continue; } diff --git a/arangod/VocBase/replication-dump.h b/arangod/VocBase/replication-dump.h index 6e90caddcdef..a0f5589fd79e 100644 --- a/arangod/VocBase/replication-dump.h +++ b/arangod/VocBase/replication-dump.h @@ -128,6 +128,8 @@ int TRI_DumpCollectionReplication (TRI_replication_dump_t*, //////////////////////////////////////////////////////////////////////////////// int TRI_DumpLogReplication (TRI_replication_dump_t*, + std::unordered_set const&, + TRI_voc_tick_t, TRI_voc_tick_t, TRI_voc_tick_t, bool); diff --git a/arangod/Wal/CollectorThread.cpp b/arangod/Wal/CollectorThread.cpp index 034d1dbb4bda..0bf8ad60b6ae 100644 --- a/arangod/Wal/CollectorThread.cpp +++ b/arangod/Wal/CollectorThread.cpp @@ -72,7 +72,7 @@ static inline TRI_doc_datafile_info_t& createDfi (CollectorCache* cache, TRI_doc_datafile_info_t dfi; memset(&dfi, 0, sizeof(TRI_doc_datafile_info_t)); - cache->dfi.emplace(std::make_pair(fid, dfi)); + cache->dfi.emplace(fid, dfi); return getDfi(cache, fid); } @@ -1133,7 +1133,7 @@ int CollectorThread::queueOperations (triagens::wal::Logfile* logfile, if (it == _operationsQueue.end()) { std::vector ops; ops.push_back(cache); - _operationsQueue.emplace(std::make_pair(cid, ops)); + _operationsQueue.emplace(cid, ops); _logfileManager->increaseCollectQueueSize(logfile); } else { diff --git a/arangod/Wal/RecoverState.cpp b/arangod/Wal/RecoverState.cpp index 8a20b8fcafe8..3f3d212703c0 100644 --- a/arangod/Wal/RecoverState.cpp +++ b/arangod/Wal/RecoverState.cpp @@ -179,14 +179,10 @@ RecoverState::RecoverState (TRI_server_t* server, bool ignoreRecoveryErrors) : server(server), failedTransactions(), - remoteTransactions(), - remoteTransactionCollections(), - remoteTransactionDatabases(), lastTick(0), logfilesToProcess(), openedCollections(), openedDatabases(), - runningRemoteTransactions(), emptyLogfiles(), policy(TRI_DOC_UPDATE_ONLY_IF_NEWER, 0, nullptr), ignoreRecoveryErrors(ignoreRecoveryErrors), @@ -199,15 +195,6 @@ RecoverState::RecoverState (TRI_server_t* server, RecoverState::~RecoverState () { releaseResources(); - - // free running remote transactions - for (auto it = runningRemoteTransactions.begin(); it != runningRemoteTransactions.end(); ++it) { - auto trx = (*it).second; - - delete trx; - } - - runningRemoteTransactions.clear(); } // ----------------------------------------------------------------------------- @@ -220,25 +207,6 @@ RecoverState::~RecoverState () { //////////////////////////////////////////////////////////////////////////////// void RecoverState::releaseResources () { - // hand over running remote transactions to the applier - for (auto it = runningRemoteTransactions.begin(); it != runningRemoteTransactions.end(); ++it) { - auto* trx = (*it).second; - - TRI_vocbase_t* vocbase = trx->vocbase(); - TRI_ASSERT(vocbase != nullptr); - - auto* applier = vocbase->_replicationApplier; - TRI_ASSERT(applier != nullptr); - - applier->addRemoteTransaction(trx); - } - - // reset trx counter as we're moving transactions from this thread to a potential other - triagens::arango::TransactionBase::setNumbers(0, 0); - - runningRemoteTransactions.clear(); - - // release all collections for (auto it = openedCollections.begin(); it != openedCollections.end(); ++it) { TRI_vocbase_col_t* collection = (*it).second; @@ -411,61 +379,6 @@ TRI_document_collection_t* RecoverState::getCollection (TRI_voc_tick_t databaseI return document; } -//////////////////////////////////////////////////////////////////////////////// -/// @brief executes an operation in a remote transaction -//////////////////////////////////////////////////////////////////////////////// - -int RecoverState::executeRemoteOperation (TRI_voc_tick_t databaseId, - TRI_voc_cid_t collectionId, - TRI_voc_tid_t transactionId, - TRI_df_marker_t const* marker, - TRI_voc_fid_t fid, - std::function func) { - - auto it = remoteTransactions.find(transactionId); - if (it == remoteTransactions.end()) { - LOG_WARNING("remote transaction not found: internal error"); - return TRI_ERROR_INTERNAL; - } - - TRI_voc_tid_t externalId = (*it).second.second; - auto it2 = runningRemoteTransactions.find(externalId); - if (it2 == runningRemoteTransactions.end()) { - LOG_WARNING("remote transaction not found: internal error"); - return TRI_ERROR_INTERNAL; - } - - auto trx = (*it2).second; - - registerRemoteUsage(databaseId, collectionId); - - EnvelopeMarker* envelope = nullptr; - int res = TRI_ERROR_INTERNAL; - - try { - envelope = new EnvelopeMarker(marker, fid); - - // execute the operation - res = func(trx, envelope); - - if (res != TRI_ERROR_NO_ERROR) { - THROW_ARANGO_EXCEPTION(res); - } - } - catch (triagens::basics::Exception const& ex) { - res = ex.code(); - } - catch (...) { - res = TRI_ERROR_INTERNAL; - } - - if (envelope != nullptr) { - delete envelope; - } - - return res; -} - //////////////////////////////////////////////////////////////////////////////// /// @brief executes a single operation inside a transaction //////////////////////////////////////////////////////////////////////////////// @@ -600,6 +513,7 @@ bool RecoverState::InitialScanMarker (TRI_df_marker_t const* marker, transaction_abort_marker_t const* m = reinterpret_cast(marker); auto it = state->failedTransactions.find(m->_transactionId); + if (it != state->failedTransactions.end()) { // delete previous element if present state->failedTransactions.erase(m->_transactionId); @@ -612,15 +526,15 @@ bool RecoverState::InitialScanMarker (TRI_df_marker_t const* marker, case TRI_WAL_MARKER_BEGIN_REMOTE_TRANSACTION: { transaction_remote_begin_marker_t const* m = reinterpret_cast(marker); - // insert this transaction into the list of remote transactions - state->remoteTransactions.emplace(std::make_pair(m->_transactionId, std::make_pair(m->_databaseId, m->_externalId))); + // insert this transaction into the list of failed transactions + state->failedTransactions.emplace(std::make_pair(m->_transactionId, std::make_pair(m->_databaseId, false))); break; } case TRI_WAL_MARKER_COMMIT_REMOTE_TRANSACTION: { transaction_remote_commit_marker_t const* m = reinterpret_cast(marker); - // remove this transaction from the list of remote transactions - state->remoteTransactions.erase(m->_transactionId); + // remove this transaction from the list of failed transactions + state->failedTransactions.erase(m->_transactionId); break; } @@ -629,13 +543,13 @@ bool RecoverState::InitialScanMarker (TRI_df_marker_t const* marker, // insert this transaction into the list of failed transactions // the transaction is treated the same as a regular local transaction that is aborted auto it = state->failedTransactions.find(m->_transactionId); - if (it == state->failedTransactions.end()) { - // insert the transaction into the list of failed transactions - state->failedTransactions.emplace(std::make_pair(m->_transactionId, std::make_pair(m->_databaseId, false))); + + if (it != state->failedTransactions.end()) { + state->failedTransactions.erase(m->_transactionId); } - // remove this transaction from the list of remote transactions - state->remoteTransactions.erase(m->_transactionId); + // and (re-)insert + state->failedTransactions.emplace(std::make_pair(m->_transactionId, std::make_pair(m->_databaseId, true))); break; } /* @@ -795,48 +709,21 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, TRI_shaped_json_t shaped; TRI_EXTRACT_SHAPED_JSON_MARKER(shaped, m); - int res = TRI_ERROR_NO_ERROR; - - if (state->isRemoteTransaction(transactionId)) { - // remote operation - res = state->executeRemoteOperation(databaseId, collectionId, transactionId, marker, datafile->_fid, [&](RemoteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection(collectionId))) { - return TRI_ERROR_NO_ERROR; - } + int res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { + if (IsVolatile(trx->trxCollection())) { + return TRI_ERROR_NO_ERROR; + } - TRI_doc_mptr_copy_t mptr; - int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(collectionId), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, nullptr, false, false, true); + TRI_doc_mptr_copy_t mptr; + int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, nullptr, false, false, true); - if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { - state->policy.setExpectedRevision(m->_revisionId); - res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(collectionId), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); - } + if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { + state->policy.setExpectedRevision(m->_revisionId); + res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); + } - return res; - }); - } - else if (! state->isUsedByRemoteTransaction(collectionId)) { - // local operation - res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection())) { - return TRI_ERROR_NO_ERROR; - } - - TRI_doc_mptr_copy_t mptr; - int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, nullptr, false, false, true); - - if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { - state->policy.setExpectedRevision(m->_revisionId); - res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); - } - - return res; - }); - } - else { - // ERROR - found a local action for a collection that has an ongoing remote transaction - res = TRI_ERROR_TRANSACTION_INTERNAL; - } + return res; + }); if (res != TRI_ERROR_NO_ERROR && res != TRI_ERROR_ARANGO_CONFLICT && @@ -879,48 +766,21 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, TRI_shaped_json_t shaped; TRI_EXTRACT_SHAPED_JSON_MARKER(shaped, m); - int res = TRI_ERROR_NO_ERROR; - - if (state->isRemoteTransaction(transactionId)) { - // remote operation - res = state->executeRemoteOperation(databaseId, collectionId, transactionId, marker, datafile->_fid, [&](RemoteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection(collectionId))) { - return TRI_ERROR_NO_ERROR; - } - - TRI_doc_mptr_copy_t mptr; - int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(collectionId), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &edge, false, false, true); - - if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { - state->policy.setExpectedRevision(m->_revisionId); - res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(collectionId), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); - } - - return res; - }); - } - else if (! state->isUsedByRemoteTransaction(collectionId)) { - // local operation - res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection())) { - return TRI_ERROR_NO_ERROR; - } + int res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { + if (IsVolatile(trx->trxCollection())) { + return TRI_ERROR_NO_ERROR; + } - TRI_doc_mptr_copy_t mptr; - int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &edge, false, false, true); + TRI_doc_mptr_copy_t mptr; + int res = TRI_InsertShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &edge, false, false, true); - if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { - state->policy.setExpectedRevision(m->_revisionId); - res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); - } + if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED) { + state->policy.setExpectedRevision(m->_revisionId); + res = TRI_UpdateShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &mptr, &shaped, &state->policy, false, false); + } - return res; - }); - } - else { - // ERROR - found a local action for a collection that has an ongoing remote transaction - res = TRI_ERROR_TRANSACTION_INTERNAL; - } + return res; + }); if (res != TRI_ERROR_NO_ERROR && res != TRI_ERROR_ARANGO_CONFLICT && @@ -955,40 +815,17 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, char const* base = reinterpret_cast(m); char const* key = base + sizeof(remove_marker_t); - int res = TRI_ERROR_NO_ERROR; - - if (state->isRemoteTransaction(transactionId)) { - // remote operation - res = state->executeRemoteOperation(databaseId, collectionId, transactionId, marker, datafile->_fid, [&](RemoteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection(collectionId))) { - return TRI_ERROR_NO_ERROR; - } - - // remove the document and ignore any potential errors - state->policy.setExpectedRevision(m->_revisionId); - TRI_RemoveShapedJsonDocumentCollection(trx->trxCollection(collectionId), (TRI_voc_key_t) key, m->_revisionId, envelope, &state->policy, false, false); - + int res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { + if (IsVolatile(trx->trxCollection())) { return TRI_ERROR_NO_ERROR; - }); - } - else if (! state->isUsedByRemoteTransaction(collectionId)) { - // local operation - res = state->executeSingleOperation(databaseId, collectionId, marker, datafile->_fid, [&](SingleWriteTransactionType* trx, Marker* envelope) -> int { - if (IsVolatile(trx->trxCollection())) { - return TRI_ERROR_NO_ERROR; - } - - // remove the document and ignore any potential errors - state->policy.setExpectedRevision(m->_revisionId); - TRI_RemoveShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &state->policy, false, false); + } - return TRI_ERROR_NO_ERROR; - }); - } - else { - // ERROR - found a local action for a collection that has an ongoing remote transaction - res = TRI_ERROR_TRANSACTION_INTERNAL; - } + // remove the document and ignore any potential errors + state->policy.setExpectedRevision(m->_revisionId); + TRI_RemoveShapedJsonDocumentCollection(trx->trxCollection(), (TRI_voc_key_t) key, m->_revisionId, envelope, &state->policy, false, false); + + return TRI_ERROR_NO_ERROR; + }); if (res != TRI_ERROR_NO_ERROR && res != TRI_ERROR_ARANGO_CONFLICT && @@ -1009,47 +846,6 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, // transactions // ----------------------------------------------------------------------------- - case TRI_WAL_MARKER_BEGIN_REMOTE_TRANSACTION: { - transaction_remote_begin_marker_t const* m = reinterpret_cast(marker); - TRI_voc_tick_t databaseId = m->_databaseId; - TRI_voc_tid_t externalId = m->_externalId; - // start a remote transaction - - if (state->isDropped(databaseId)) { - return true; - } - - TRI_vocbase_t* vocbase = state->useDatabase(databaseId); - if (vocbase == nullptr) { - LOG_WARNING("cannot start remote transaction in database %llu: %s", - (unsigned long long) databaseId, - TRI_errno_string(TRI_ERROR_ARANGO_DATABASE_NOT_FOUND)); - } - - auto trx = new RemoteTransactionType(state->server, vocbase, externalId); - - if (trx == nullptr) { - LOG_WARNING("unable to start transaction: %s", TRI_errno_string(TRI_ERROR_OUT_OF_MEMORY)); - ++state->errorCount; - return state->canContinue(); - } - - trx->addHint(TRI_TRANSACTION_HINT_NO_BEGIN_MARKER, true); - - int res = trx->begin(); - - if (res != TRI_ERROR_NO_ERROR) { - LOG_WARNING("unable to start transaction: %s", TRI_errno_string(TRI_ERROR_OUT_OF_MEMORY)); - delete trx; - ++state->errorCount; - return state->canContinue(); - } - - state->runningRemoteTransactions.emplace(std::make_pair(m->_externalId, trx)); - break; - } - - case TRI_WAL_MARKER_RENAME_COLLECTION: { collection_rename_marker_t const* m = reinterpret_cast(marker); TRI_voc_cid_t collectionId = m->_collectionId; diff --git a/arangod/Wal/RecoverState.h b/arangod/Wal/RecoverState.h index b02f64300231..6fb81e54b404 100644 --- a/arangod/Wal/RecoverState.h +++ b/arangod/Wal/RecoverState.h @@ -41,19 +41,12 @@ #include "Wal/Marker.h" #include -//////////////////////////////////////////////////////////////////////////////// -/// @brief shortcut for multi-operation remote transaction -//////////////////////////////////////////////////////////////////////////////// - -#define RemoteTransactionType triagens::arango::ReplicationTransaction - //////////////////////////////////////////////////////////////////////////////// /// @brief shortcut for single-operation write transaction //////////////////////////////////////////////////////////////////////////////// #define SingleWriteTransactionType triagens::arango::SingleCollectionWriteTransaction<1> - namespace triagens { namespace wal { @@ -134,14 +127,6 @@ namespace triagens { return ignoreRecoveryErrors; } -//////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not there are remote transactions -//////////////////////////////////////////////////////////////////////////////// - - inline bool hasRunningRemoteTransactions () const { - return ! runningRemoteTransactions.empty(); - } - //////////////////////////////////////////////////////////////////////////////// /// @brief whether or not the recovery procedure must be run //////////////////////////////////////////////////////////////////////////////// @@ -158,32 +143,6 @@ namespace triagens { return (transactionId > 0 && failedTransactions.find(transactionId) != failedTransactions.end()); } -//////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not a transaction was started remotely -//////////////////////////////////////////////////////////////////////////////// - - inline bool isRemoteTransaction (TRI_voc_tid_t transactionId) const { - return (transactionId > 0 && remoteTransactions.find(transactionId) != remoteTransactions.end()); - } - -//////////////////////////////////////////////////////////////////////////////// -/// @brief register a collection for a remote transaction -//////////////////////////////////////////////////////////////////////////////// - - inline void registerRemoteUsage (TRI_voc_tick_t databaseId, - TRI_voc_cid_t collectionId) { - remoteTransactionDatabases.insert(databaseId); - remoteTransactionCollections.insert(collectionId); - } - -//////////////////////////////////////////////////////////////////////////////// -/// @brief whether or not a transaction was started remotely -//////////////////////////////////////////////////////////////////////////////// - - inline bool isUsedByRemoteTransaction (TRI_voc_tid_t collectionId) const { - return (remoteTransactionCollections.find(collectionId) != remoteTransactionCollections.end()); - } - //////////////////////////////////////////////////////////////////////////////// /// @brief release opened collections and databases so they can be shut down /// etc. @@ -227,17 +186,6 @@ namespace triagens { TRI_document_collection_t* getCollection (TRI_voc_tick_t, TRI_voc_cid_t); -//////////////////////////////////////////////////////////////////////////////// -/// @brief executes an operation in a remote transaction -//////////////////////////////////////////////////////////////////////////////// - - int executeRemoteOperation (TRI_voc_tick_t, - TRI_voc_cid_t, - TRI_voc_tid_t, - TRI_df_marker_t const*, - TRI_voc_fid_t, - std::function); - //////////////////////////////////////////////////////////////////////////////// /// @brief executes a single operation inside a transaction //////////////////////////////////////////////////////////////////////////////// @@ -302,9 +250,6 @@ namespace triagens { TRI_server_t* server; std::unordered_map> failedTransactions; - std::unordered_map> remoteTransactions; - std::unordered_set remoteTransactionCollections; - std::unordered_set remoteTransactionDatabases; std::unordered_set droppedCollections; std::unordered_set droppedDatabases; std::unordered_set droppedIds; @@ -313,7 +258,6 @@ namespace triagens { std::vector logfilesToProcess; std::unordered_map openedCollections; std::unordered_map openedDatabases; - std::unordered_map runningRemoteTransactions; std::vector emptyLogfiles; TRI_doc_update_policy_t policy; From f10aae1d913e279a423ea627bd6c8f30c6df8378 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Fri, 21 Aug 2015 15:57:24 +0200 Subject: [PATCH 02/28] fix replication resumption --- UnitTests/Makefile.unittests | 29 +- arangod/Replication/ContinuousSyncer.cpp | 60 ++- arangod/Replication/ContinuousSyncer.h | 3 + arangod/Replication/InitialSyncer.cpp | 28 +- arangod/Replication/InitialSyncer.h | 8 +- .../RestHandler/RestReplicationHandler.cpp | 14 +- arangod/Utils/Transaction.h | 1 + arangod/VocBase/document-collection.cpp | 5 + arangod/VocBase/document-collection.h | 4 +- arangod/VocBase/headers.cpp | 35 +- arangod/VocBase/headers.h | 54 ++- arangod/VocBase/replication-common.h | 25 - arangod/VocBase/replication-dump.cpp | 4 +- arangod/VocBase/transaction.cpp | 43 +- arangod/VocBase/transaction.h | 1 - arangod/Wal/DocumentOperation.h | 3 +- arangod/Wal/RecoverState.cpp | 7 +- arangosh/V8Client/arangodump.cpp | 32 +- arangosh/V8Client/arangorestore.cpp | 2 +- js/server/tests/replication-ongoing.js | 443 ++++++++++++++++++ ...lication-data.js => replication-static.js} | 43 +- 21 files changed, 692 insertions(+), 152 deletions(-) create mode 100644 js/server/tests/replication-ongoing.js rename js/server/tests/{replication-data.js => replication-static.js} (97%) diff --git a/UnitTests/Makefile.unittests b/UnitTests/Makefile.unittests index da05713ba3de..5b331269fb06 100755 --- a/UnitTests/Makefile.unittests +++ b/UnitTests/Makefile.unittests @@ -852,9 +852,9 @@ unittests-import: ### starts two servers (master & slave) and checks for data drift ################################################################################ -.PHONY: unittests-replication unittests-replication-server unittests-replication-http unittests-replication-data +.PHONY: unittests-replication unittests-replication-server unittests-replication-http unittests-replication-static unittests-replication-ongoing -unittests-replication: unittests-replication-server unittests-replication-http unittests-replication-data +unittests-replication: unittests-replication-server unittests-replication-http unittests-replication-static unittests-replication-ongoing unittests-replication-server: @echo @@ -888,7 +888,7 @@ unittests-replication-http: @rm -rf "$(VOCDIR)" @echo -unittests-replication-data: +unittests-replication-static: $(MAKE) start-server PID=$(PID) SERVER_START="--server.endpoint tcp://$(VOCHOST):$(VOCPORT) --server.disable-authentication false" PROTO=http $(MAKE) start-slave PID=$(PID) SERVER_START="--server.endpoint tcp://$(SLAVEHOST):$(SLAVEPORT) --server.disable-authentication true" PROTO=http @@ -900,7 +900,28 @@ unittests-replication-data: $(VALGRIND) @builddir@/bin/arangosh $(CLIENT_OPT) --server.username "$(USERNAME)" --server.password "$(PASSWORD)" --server.endpoint tcp://$(VOCHOST):$(VOCPORT) --javascript.execute-string "require('org/arangodb/users').save('replicator-user', 'replicator-password', true); require('org/arangodb/users').reload();" - $(VALGRIND) @builddir@/bin/arangosh $(CLIENT_OPT) --server.username "$(USERNAME)" --server.password "$(PASSWORD)" --server.endpoint tcp://$(VOCHOST):$(VOCPORT) --javascript.unit-tests @top_srcdir@/js/server/tests/replication-data.js || test "x$(FORCE)" == "x1" + $(VALGRIND) @builddir@/bin/arangosh $(CLIENT_OPT) --server.username "$(USERNAME)" --server.password "$(PASSWORD)" --server.endpoint tcp://$(VOCHOST):$(VOCPORT) --javascript.unit-tests @top_srcdir@/js/server/tests/replication-static.js || test "x$(FORCE)" == "x1" + + kill `cat $(PIDFILE)` + kill `cat $(SLAVEPIDFILE)` + while test -f $(PIDFILE); do sleep 1; done + while test -f $(SLAVEPIDFILE); do sleep 1; done + @if [ "$(VALGRIND)" != "" ]; then sleep 60; fi + @rm -rf "$(VOCDIR)" + @rm -rf "$(SLAVEDIR)" + @echo + +unittests-replication-ongoing: + $(MAKE) start-server PID=$(PID) SERVER_START="--server.endpoint tcp://$(VOCHOST):$(VOCPORT) --server.disable-authentication true" PROTO=http + $(MAKE) start-slave PID=$(PID) SERVER_START="--server.endpoint tcp://$(SLAVEHOST):$(SLAVEPORT) --server.disable-authentication true" PROTO=http + + @echo + @echo "================================================================================" + @echo "<< REPLICATION DATA TESTS >>" + @echo "================================================================================" + @echo + + $(VALGRIND) @builddir@/bin/arangosh $(CLIENT_OPT) --server.username "$(USERNAME)" --server.password "$(PASSWORD)" --server.endpoint tcp://$(VOCHOST):$(VOCPORT) --javascript.unit-tests @top_srcdir@/js/server/tests/replication-ongoing.js || test "x$(FORCE)" == "x1" kill `cat $(PIDFILE)` kill `cat $(SLAVEPIDFILE)` diff --git a/arangod/Replication/ContinuousSyncer.cpp b/arangod/Replication/ContinuousSyncer.cpp index b6bd9e34f679..d11e20a4da70 100644 --- a/arangod/Replication/ContinuousSyncer.cpp +++ b/arangod/Replication/ContinuousSyncer.cpp @@ -208,6 +208,14 @@ void ContinuousSyncer::setProgress (char const* msg) { _applier->setProgress(msg, true); } +//////////////////////////////////////////////////////////////////////////////// +/// @brief set the applier progress +//////////////////////////////////////////////////////////////////////////////// + +void ContinuousSyncer::setProgress (std::string const& msg) { + setProgress(msg.c_str()); +} + //////////////////////////////////////////////////////////////////////////////// /// @brief save the current applier state //////////////////////////////////////////////////////////////////////////////// @@ -363,15 +371,18 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, } // extract optional "cname" + bool isSystem = false; TRI_json_t const* cnameJson = JsonHelper::getObjectElement(json, "cname"); if (JsonHelper::isString(cnameJson)) { string const cnameString = JsonHelper::getStringValue(json, "cname", ""); - if (! cnameString.empty() && cnameString[0] == '_') { - // system collection + isSystem = (! cnameString.empty() && cnameString[0] == '_'); + + if (! cnameString.empty()) { TRI_vocbase_col_t* col = TRI_LookupCollectionByNameVocBase(_vocbase, cnameString.c_str()); + if (col != nullptr && col->_cid != cid) { - // cid change? this may happen for system collections + // cid change? this may happen for system collections or if we restored from a dump cid = col->_cid; } } @@ -381,6 +392,7 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, TRI_json_t const* keyJson = JsonHelper::getObjectElement(json, "key"); if (! JsonHelper::isString(keyJson)) { + errorMsg = "invalid document key format"; return TRI_ERROR_REPLICATION_INVALID_RESPONSE; } @@ -415,12 +427,14 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, auto it = _openInitialTransactions.find(tid); if (it == _openInitialTransactions.end()) { + errorMsg = "unexpected transaction " + StringUtils::itoa(tid); return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } auto trx = (*it).second; if (trx == nullptr) { + errorMsg = "unexpected transaction " + StringUtils::itoa(tid); return TRI_ERROR_REPLICATION_UNEXPECTED_TRANSACTION; } @@ -437,6 +451,11 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, doc, errorMsg); + if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED && isSystem) { + // ignore unique constraint violations for system collections + res = TRI_ERROR_NO_ERROR; + } + return res; } @@ -465,6 +484,11 @@ int ContinuousSyncer::processDocument (TRI_replication_operation_e type, rid, doc, errorMsg); + + if (res == TRI_ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED && isSystem) { + // ignore unique constraint violations for system collections + res = TRI_ERROR_NO_ERROR; + } res = trx.finish(res); @@ -674,6 +698,7 @@ int ContinuousSyncer::changeCollection (TRI_json_t const* json) { //////////////////////////////////////////////////////////////////////////////// int ContinuousSyncer::applyLogMarker (TRI_json_t const* json, + TRI_voc_tick_t firstRegularTick, string& errorMsg) { // fetch marker "type" @@ -687,14 +712,10 @@ int ContinuousSyncer::applyLogMarker (TRI_json_t const* json, WRITE_LOCKER_EVENTUAL(_applier->_statusLock, 1000); - if (newTick > _applier->_state._lastProcessedContinuousTick) { + if (newTick >= firstRegularTick && + newTick > _applier->_state._lastProcessedContinuousTick) { _applier->_state._lastProcessedContinuousTick = newTick; } - else { - LOG_WARNING("replication marker tick value %llu is lower than last processed tick value %llu", - (unsigned long long) newTick, - (unsigned long long) _applier->_state._lastProcessedContinuousTick); - } } // handle marker type @@ -808,7 +829,7 @@ int ContinuousSyncer::applyLog (SimpleHttpResult* response, skipped = true; } else { - res = applyLogMarker(json.get(), errorMsg); + res = applyLogMarker(json.get(), firstRegularTick, errorMsg); skipped = false; } @@ -902,6 +923,16 @@ int ContinuousSyncer::runContinuousSync (string& errorMsg) { return TRI_ERROR_INTERNAL; } + LOG_TRACE("starting with from tick %llu, fetch tick %llu, open transactions: %d", + (unsigned long long) fromTick, + (unsigned long long) fetchTick, + (int) _openInitialTransactions.size()); + + string const progress = "starting with from tick " + StringUtils::itoa(fromTick) + + ", fetch tick " + StringUtils::itoa(fetchTick) + + ", open transactions: " + StringUtils::itoa(_openInitialTransactions.size()); + setProgress(progress); + // run in a loop. the loop is terminated when the applier is stopped or an // error occurs while (true) { @@ -1017,7 +1048,7 @@ int ContinuousSyncer::fetchMasterState (string& errorMsg, url.c_str()); // send request - setProgress(progress.c_str()); + setProgress(progress); SimpleHttpResult* response = _client->request(HttpRequest::HTTP_REQUEST_GET, url, @@ -1126,13 +1157,14 @@ int ContinuousSyncer::followMasterLog (string& errorMsg, "&serverId=" + _localServerIdString + "&includeSystem=" + (_includeSystem ? "true" : "false"); - LOG_TRACE("running continuous replication request with tick %llu, url %s", + LOG_TRACE("running continuous replication request with from tick %llu, first regular tick %llu, url %s", (unsigned long long) fetchTick, + (unsigned long long) firstRegularTick, url.c_str()); // send request - string const progress = "fetching master log from offset " + tickString; - setProgress(progress.c_str()); + string const progress = "fetching master log from tick " + tickString; + setProgress(progress); std::string body; diff --git a/arangod/Replication/ContinuousSyncer.h b/arangod/Replication/ContinuousSyncer.h index 6f4f3f9896b2..e5191cbfc6f1 100644 --- a/arangod/Replication/ContinuousSyncer.h +++ b/arangod/Replication/ContinuousSyncer.h @@ -118,6 +118,8 @@ namespace triagens { //////////////////////////////////////////////////////////////////////////////// void setProgress (char const*); + + void setProgress (std::string const&); //////////////////////////////////////////////////////////////////////////////// /// @brief save the current applier state @@ -187,6 +189,7 @@ namespace triagens { //////////////////////////////////////////////////////////////////////////////// int applyLogMarker (struct TRI_json_t const*, + TRI_voc_tick_t, std::string&); //////////////////////////////////////////////////////////////////////////////// diff --git a/arangod/Replication/InitialSyncer.cpp b/arangod/Replication/InitialSyncer.cpp index 95d1faa8980a..b809c83945cb 100644 --- a/arangod/Replication/InitialSyncer.cpp +++ b/arangod/Replication/InitialSyncer.cpp @@ -55,6 +55,8 @@ using namespace triagens::rest; // --SECTION-- constructors and destructors // ----------------------------------------------------------------------------- +size_t const InitialSyncer::MaxChunkSize = 10 * 1024 * 1024; + //////////////////////////////////////////////////////////////////////////////// /// @brief constructor //////////////////////////////////////////////////////////////////////////////// @@ -73,18 +75,16 @@ InitialSyncer::InitialSyncer (TRI_vocbase_t* vocbase, _batchUpdateTime(0), _batchTtl(180), _includeSystem(false), - _chunkSize(), + _chunkSize(configuration->_chunkSize), _verbose(verbose), _hasFlushed(false) { - uint64_t c = configuration->_chunkSize; - if (c == 0) { - c = (uint64_t) 8 * 1024 * 1024; // 8 mb + if (_chunkSize == 0) { + _chunkSize = (uint64_t) 2 * 1024 * 1024; // 2 mb + } + else if (_chunkSize < 128 * 1024) { + _chunkSize = 128 * 1024; } - - TRI_ASSERT(c > 0); - - _chunkSize = StringUtils::itoa(c); _includeSystem = configuration->_includeSystem; } @@ -466,9 +466,10 @@ int InitialSyncer::handleCollectionDump (string const& cid, _hasFlushed = true; } + uint64_t chunkSize = _chunkSize; + string const baseUrl = BaseUrl + "/dump?collection=" + cid + - "&chunkSize=" + _chunkSize + appendix; map headers; @@ -486,6 +487,7 @@ int InitialSyncer::handleCollectionDump (string const& cid, } url += "&serverId=" + _localServerIdString; + url += "&chunkSize=" + StringUtils::itoa(chunkSize); std::string const typeString = (trxCollection->_collection->_collection->_info._type == TRI_COL_TYPE_EDGE ? "edge" : "document"); @@ -563,6 +565,14 @@ int InitialSyncer::handleCollectionDump (string const& cid, return res; } + // increase chunk size for next fetch + if (chunkSize < MaxChunkSize) { + chunkSize = static_cast(chunkSize * 1.5); + if (chunkSize > MaxChunkSize) { + chunkSize = MaxChunkSize; + } + } + batch++; } diff --git a/arangod/Replication/InitialSyncer.h b/arangod/Replication/InitialSyncer.h index 862d5d7ea337..6ccde319cc7a 100644 --- a/arangod/Replication/InitialSyncer.h +++ b/arangod/Replication/InitialSyncer.h @@ -285,7 +285,7 @@ namespace triagens { /// @brief chunk size to use //////////////////////////////////////////////////////////////////////////////// - std::string _chunkSize; + uint64_t _chunkSize; //////////////////////////////////////////////////////////////////////////////// /// @brief verbosity @@ -298,6 +298,12 @@ namespace triagens { //////////////////////////////////////////////////////////////////////////////// bool _hasFlushed; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief maximum internal value for chunkSize +//////////////////////////////////////////////////////////////////////////////// + + static size_t const MaxChunkSize; }; } diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index 4470c638dc97..3c9b067d7755 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -1748,7 +1748,7 @@ int RestReplicationHandler::createCollection (TRI_json_t const* json, //////////////////////////////////////////////////////////////////////////////// void RestReplicationHandler::handleCommandRestoreCollection () { - TRI_json_t* json = _request->toJson(0); + std::unique_ptr json(_request->toJson(nullptr)); if (json == nullptr) { generateError(HttpResponse::BAD, @@ -1782,26 +1782,24 @@ void RestReplicationHandler::handleCommandRestoreCollection () { string errorMsg; int res; if (ServerState::instance()->isCoordinator()) { - res = processRestoreCollectionCoordinator(json, overwrite, recycleIds, + res = processRestoreCollectionCoordinator(json.get(), overwrite, recycleIds, force, errorMsg); } else { - res = processRestoreCollection(json, overwrite, recycleIds, force, errorMsg); + res = processRestoreCollection(json.get(), overwrite, recycleIds, force, errorMsg); } - TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json); - if (res != TRI_ERROR_NO_ERROR) { generateError(HttpResponse::SERVER_ERROR, res); } else { TRI_json_t result; - TRI_InitObjectJson(TRI_CORE_MEM_ZONE, &result); - TRI_Insert3ObjectJson(TRI_CORE_MEM_ZONE, &result, "result", TRI_CreateBooleanJson(TRI_CORE_MEM_ZONE, true)); + TRI_InitObjectJson(TRI_UNKNOWN_MEM_ZONE, &result); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, &result, "result", TRI_CreateBooleanJson(TRI_UNKNOWN_MEM_ZONE, true)); generateResult(&result); - TRI_DestroyJson(TRI_CORE_MEM_ZONE, &result); + TRI_DestroyJson(TRI_UNKNOWN_MEM_ZONE, &result); } } diff --git a/arangod/Utils/Transaction.h b/arangod/Utils/Transaction.h index f84375edd5ad..b9101f7f0df6 100644 --- a/arangod/Utils/Transaction.h +++ b/arangod/Utils/Transaction.h @@ -45,6 +45,7 @@ #include "VocBase/Ditch.h" #include "VocBase/document-collection.h" #include "VocBase/edge-collection.h" +#include "VocBase/headers.h" #include "VocBase/transaction.h" #include "VocBase/update-policy.h" #include "VocBase/vocbase.h" diff --git a/arangod/VocBase/document-collection.cpp b/arangod/VocBase/document-collection.cpp index df08e1b63e17..ef94723c110d 100644 --- a/arangod/VocBase/document-collection.cpp +++ b/arangod/VocBase/document-collection.cpp @@ -52,6 +52,7 @@ #include "VocBase/Ditch.h" #include "VocBase/edge-collection.h" #include "VocBase/ExampleMatcher.h" +#include "VocBase/headers.h" #include "VocBase/KeyGenerator.h" #include "VocBase/server.h" #include "VocBase/shape-accessor.h" @@ -2021,6 +2022,10 @@ static TRI_doc_collection_info_t* Figures (TRI_document_collection_t* document) info->_numberIndexes = 0; info->_sizeIndexes = 0; + if (document->_headersPtr != nullptr) { + info->_sizeIndexes += static_cast(document->_headersPtr->memory()); + } + for (auto& idx : document->allIndexes()) { info->_sizeIndexes += idx->memory(); info->_numberIndexes++; diff --git a/arangod/VocBase/document-collection.h b/arangod/VocBase/document-collection.h index f342ef5e2bfc..c897b7c05e1a 100644 --- a/arangod/VocBase/document-collection.h +++ b/arangod/VocBase/document-collection.h @@ -37,7 +37,6 @@ #include "Basics/ReadWriteLockCPP11.h" #include "VocBase/collection.h" #include "VocBase/Ditch.h" -#include "VocBase/headers.h" #include "VocBase/transaction.h" #include "VocBase/update-policy.h" #include "VocBase/voc-types.h" @@ -52,6 +51,7 @@ struct TRI_cap_constraint_s; struct TRI_document_edge_s; struct TRI_json_t; +class TRI_headers_t; class VocShaper; @@ -410,7 +410,7 @@ struct TRI_document_collection_t : public TRI_collection_t { mutable triagens::arango::Ditches _ditches; TRI_associative_pointer_t _datafileInfo; - TRI_headers_t* _headersPtr; + class TRI_headers_t* _headersPtr; KeyGenerator* _keyGenerator; std::vector _indexes; diff --git a/arangod/VocBase/headers.cpp b/arangod/VocBase/headers.cpp index 8d22aa4bcca8..5f189bac3768 100644 --- a/arangod/VocBase/headers.cpp +++ b/arangod/VocBase/headers.cpp @@ -74,9 +74,10 @@ TRI_headers_t::TRI_headers_t () _end(nullptr), _nrAllocated(0), _nrLinked(0), - _totalSize(0) { - - TRI_InitVectorPointer(&_blocks, TRI_UNKNOWN_MEM_ZONE, 16); + _totalSize(0), + _blocks() { + + _blocks.reserve(16); } //////////////////////////////////////////////////////////////////////////////// @@ -84,11 +85,9 @@ TRI_headers_t::TRI_headers_t () //////////////////////////////////////////////////////////////////////////////// TRI_headers_t::~TRI_headers_t () { - for (size_t i = 0; i < _blocks._length; ++i) { - delete[] static_cast(_blocks._buffer[i]); + for (auto& it : _blocks) { + delete[] it; } - - TRI_DestroyVectorPointer(&_blocks); } // ----------------------------------------------------------------------------- @@ -324,7 +323,7 @@ TRI_doc_mptr_t* TRI_headers_t::request (size_t size) { TRI_ASSERT(size > 0); if (_freelist == nullptr) { - size_t blockSize = GetBlockSize(_blocks._length); + size_t blockSize = GetBlockSize(_blocks.size()); TRI_ASSERT(blockSize > 0); TRI_doc_mptr_t* begin; @@ -352,7 +351,15 @@ TRI_doc_mptr_t* TRI_headers_t::request (size_t size) { _freelist = header; - TRI_PushBackVectorPointer(&_blocks, begin); + try { + _blocks.emplace_back(begin); + } + catch (...) { + // out of memory + delete[] begin; + TRI_set_errno(TRI_ERROR_OUT_OF_MEMORY); + return nullptr; + } } TRI_ASSERT(_freelist != nullptr); @@ -417,20 +424,18 @@ void TRI_headers_t::release (TRI_doc_mptr_t* header, header->setDataPtr(_freelist); // ONLY IN HEADERS _freelist = header; - if (_nrAllocated == 0 && _blocks._length >= 8) { + if (_nrAllocated == 0 && _blocks.size() >= 8) { // if this was the last header, we can safely reclaim some // memory by freeing all already-allocated blocks and wiping the freelist // we only do this if we had allocated 8 blocks of headers // this limit is arbitrary, but will ensure we only free memory if // it is sensible and not everytime the last document is removed - for (size_t i = 0; i < _blocks._length; ++i) { - delete[] static_cast(_blocks._buffer[i]); - _blocks._buffer[i] = nullptr; + for (auto& it : _blocks) { + delete[] it; } + _blocks.clear(); - // set length to 0 - _blocks._length = 0; _freelist = nullptr; _begin = nullptr; _end = nullptr; diff --git a/arangod/VocBase/headers.h b/arangod/VocBase/headers.h index d42b74cb81d4..c27b9eed0757 100644 --- a/arangod/VocBase/headers.h +++ b/arangod/VocBase/headers.h @@ -31,13 +31,7 @@ #define ARANGODB_VOC_BASE_HEADERS_H 1 #include "Basics/Common.h" -#include "Basics/vector.h" - -// ----------------------------------------------------------------------------- -// --SECTION-- forward declarations -// ----------------------------------------------------------------------------- - -struct TRI_doc_mptr_t; +#include "VocBase/document-collection.h" // ----------------------------------------------------------------------------- // --SECTION-- class TRI_headers_t @@ -69,42 +63,58 @@ class TRI_headers_t { public: +//////////////////////////////////////////////////////////////////////////////// +/// @brief returns the number of allocated headers +//////////////////////////////////////////////////////////////////////////////// + + size_t numAllocated () const { + return _nrAllocated; + } + +//////////////////////////////////////////////////////////////////////////////// +/// @brief returns the memory usage +//////////////////////////////////////////////////////////////////////////////// + + size_t memory () const { + return _nrAllocated * sizeof(TRI_doc_mptr_t); + } + //////////////////////////////////////////////////////////////////////////////// /// @brief move an existing header to the end of the linked list //////////////////////////////////////////////////////////////////////////////// - void moveBack (struct TRI_doc_mptr_t*, struct TRI_doc_mptr_t*); + void moveBack (TRI_doc_mptr_t*, TRI_doc_mptr_t*); //////////////////////////////////////////////////////////////////////////////// /// @brief unlink an existing header from the linked list, without freeing it //////////////////////////////////////////////////////////////////////////////// - void unlink (struct TRI_doc_mptr_t*); + void unlink (TRI_doc_mptr_t*); //////////////////////////////////////////////////////////////////////////////// /// @brief move an existing header to another position in the linked list //////////////////////////////////////////////////////////////////////////////// - void move (struct TRI_doc_mptr_t*, struct TRI_doc_mptr_t*); + void move (TRI_doc_mptr_t*, TRI_doc_mptr_t*); //////////////////////////////////////////////////////////////////////////////// /// @brief relink an existing header into the linked list, at its original /// position //////////////////////////////////////////////////////////////////////////////// - void relink (struct TRI_doc_mptr_t*, struct TRI_doc_mptr_t*); + void relink (TRI_doc_mptr_t*, TRI_doc_mptr_t*); //////////////////////////////////////////////////////////////////////////////// /// @brief request a new header //////////////////////////////////////////////////////////////////////////////// - struct TRI_doc_mptr_t* request (size_t); + TRI_doc_mptr_t* request (size_t); //////////////////////////////////////////////////////////////////////////////// /// @brief release/free an existing header, putting it back onto the freelist //////////////////////////////////////////////////////////////////////////////// - void release (struct TRI_doc_mptr_t*, bool unlink); + void release (TRI_doc_mptr_t*, bool unlink); //////////////////////////////////////////////////////////////////////////////// /// @brief adjust the total size (called by the collector when changing WAL @@ -119,7 +129,7 @@ class TRI_headers_t { /// note: the element returned might be nullptr //////////////////////////////////////////////////////////////////////////////// - inline struct TRI_doc_mptr_t* front () const { + inline TRI_doc_mptr_t* front () const { return _begin; } @@ -129,7 +139,7 @@ class TRI_headers_t { /// note: the element returned might be nullptr //////////////////////////////////////////////////////////////////////////////// - inline struct TRI_doc_mptr_t* back () const { + inline TRI_doc_mptr_t* back () const { return _end; } @@ -155,15 +165,15 @@ class TRI_headers_t { private: - TRI_doc_mptr_t const* _freelist; // free headers + TRI_doc_mptr_t const* _freelist; // free headers - TRI_doc_mptr_t* _begin; // start pointer to list of allocated headers - TRI_doc_mptr_t* _end; // end pointer to list of allocated headers - size_t _nrAllocated; // number of allocated headers - size_t _nrLinked; // number of linked headers - int64_t _totalSize; // total size of markers for linked headers + TRI_doc_mptr_t* _begin; // start pointer to list of allocated headers + TRI_doc_mptr_t* _end; // end pointer to list of allocated headers + size_t _nrAllocated; // number of allocated headers + size_t _nrLinked; // number of linked headers + int64_t _totalSize; // total size of markers for linked headers - TRI_vector_pointer_t _blocks; + std::vector _blocks; }; #endif diff --git a/arangod/VocBase/replication-common.h b/arangod/VocBase/replication-common.h index aa590e80f5cd..3aa9d2f835a1 100644 --- a/arangod/VocBase/replication-common.h +++ b/arangod/VocBase/replication-common.h @@ -71,31 +71,6 @@ #define TRI_REPLICATION_HEADER_ACTIVE "x-arango-replication-active" -//////////////////////////////////////////////////////////////////////////////// -/// @brief minimum number of log events to keep (lower bound for logger config) -//////////////////////////////////////////////////////////////////////////////// - -#define TRI_REPLICATION_LOGGER_EVENTS_MIN 4096 - -//////////////////////////////////////////////////////////////////////////////// -/// @brief default number of log events to keep -//////////////////////////////////////////////////////////////////////////////// - -#define TRI_REPLICATION_LOGGER_EVENTS_DEFAULT 1048576 - -//////////////////////////////////////////////////////////////////////////////// -/// @brief minimum cumulated size of log events to keep (lower bound for logger -/// config) -//////////////////////////////////////////////////////////////////////////////// - -#define TRI_REPLICATION_LOGGER_SIZE_MIN 1048576 - -//////////////////////////////////////////////////////////////////////////////// -/// @brief default cumulated size of log events to keep -//////////////////////////////////////////////////////////////////////////////// - -#define TRI_REPLICATION_LOGGER_SIZE_DEFAULT 134217728 - // ----------------------------------------------------------------------------- // --SECTION-- public types // ----------------------------------------------------------------------------- diff --git a/arangod/VocBase/replication-dump.cpp b/arangod/VocBase/replication-dump.cpp index d2f9fc474ab9..9ac7ed2a62d7 100644 --- a/arangod/VocBase/replication-dump.cpp +++ b/arangod/VocBase/replication-dump.cpp @@ -1664,8 +1664,8 @@ int TRI_DetermineOpenTransactionsReplication (TRI_replication_dump_t* dump, TRI_AppendStringStringBuffer(dump->_buffer, "[\""); for (auto const& it : transactions) { - if (it.second < lastFoundTick) { - lastFoundTick = it.second; + if (it.second - 1 < lastFoundTick) { + lastFoundTick = it.second - 1; } if (first) { diff --git a/arangod/VocBase/transaction.cpp b/arangod/VocBase/transaction.cpp index b26c6f7bcead..d1457c6d1915 100644 --- a/arangod/VocBase/transaction.cpp +++ b/arangod/VocBase/transaction.cpp @@ -667,17 +667,8 @@ static int WriteBeginMarker (TRI_transaction_t* trx) { int res; try { - if (trx->_externalId > 0) { - // remotely started trx - triagens::wal::BeginRemoteTransactionMarker marker(trx->_vocbase->_id, trx->_id, trx->_externalId); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } - else { - // local trx - triagens::wal::BeginTransactionMarker marker(trx->_vocbase->_id, trx->_id); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } - + triagens::wal::BeginTransactionMarker marker(trx->_vocbase->_id, trx->_id); + res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; if (res == TRI_ERROR_NO_ERROR) { trx->_beginWritten = true; @@ -719,16 +710,8 @@ static int WriteAbortMarker (TRI_transaction_t* trx) { int res; try { - if (trx->_externalId > 0) { - // remotely started trx - triagens::wal::AbortRemoteTransactionMarker marker(trx->_vocbase->_id, trx->_id, trx->_externalId); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } - else { - // local trx - triagens::wal::AbortTransactionMarker marker(trx->_vocbase->_id, trx->_id); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } + triagens::wal::AbortTransactionMarker marker(trx->_vocbase->_id, trx->_id); + res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; } catch (triagens::basics::Exception const& ex) { res = ex.code(); @@ -762,16 +745,8 @@ static int WriteCommitMarker (TRI_transaction_t* trx) { int res; try { - if (trx->_externalId > 0) { - // remotely started trx - triagens::wal::CommitRemoteTransactionMarker marker(trx->_vocbase->_id, trx->_id, trx->_externalId); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } - else { - // local trx - triagens::wal::CommitTransactionMarker marker(trx->_vocbase->_id, trx->_id); - res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; - } + triagens::wal::CommitTransactionMarker marker(trx->_vocbase->_id, trx->_id); + res = GetLogfileManager()->allocateAndWrite(marker, false).errorCode; } catch (triagens::basics::Exception const& ex) { res = ex.code(); @@ -828,7 +803,6 @@ TRI_transaction_t* TRI_CreateTransaction (TRI_vocbase_t* vocbase, // note: the real transaction id will be acquired on transaction start trx->_id = 0; // local trx id - trx->_externalId = externalId; // remote trx id (used in replication) trx->_status = TRI_TRANSACTION_CREATED; trx->_type = TRI_TRANSACTION_READ; trx->_hints = 0; @@ -845,11 +819,6 @@ TRI_transaction_t* TRI_CreateTransaction (TRI_vocbase_t* vocbase, trx->_timeout = (uint64_t) 0; } - if (trx->_externalId != 0) { - // replication transaction is always a write transaction - trx->_type = TRI_TRANSACTION_WRITE; - } - TRI_InitVectorPointer(&trx->_collections, TRI_UNKNOWN_MEM_ZONE, 2); return trx; diff --git a/arangod/VocBase/transaction.h b/arangod/VocBase/transaction.h index bb3e9f4c26f9..15a468d3f3cc 100644 --- a/arangod/VocBase/transaction.h +++ b/arangod/VocBase/transaction.h @@ -145,7 +145,6 @@ TRI_transaction_hint_e; typedef struct TRI_transaction_s { TRI_vocbase_t* _vocbase; // vocbase TRI_voc_tid_t _id; // local trx id - TRI_voc_tid_t _externalId; // external trx id (used in replication) TRI_transaction_type_e _type; // access type (read|write) TRI_transaction_status_e _status; // current status TRI_vector_pointer_t _collections; // list of participating collections diff --git a/arangod/Wal/DocumentOperation.h b/arangod/Wal/DocumentOperation.h index 931ed8dfccbe..9aa793a3fb08 100644 --- a/arangod/Wal/DocumentOperation.h +++ b/arangod/Wal/DocumentOperation.h @@ -3,8 +3,9 @@ #define TRIAGENS_VOC_BASE_DOCUMENT_OPERATION_H 1 #include "Basics/Common.h" -#include "VocBase/voc-types.h" #include "VocBase/document-collection.h" +#include "VocBase/headers.h" +#include "VocBase/voc-types.h" #include "Wal/Marker.h" struct TRI_transaction_collection_s; diff --git a/arangod/Wal/RecoverState.cpp b/arangod/Wal/RecoverState.cpp index 3f3d212703c0..76f8cdb3b05f 100644 --- a/arangod/Wal/RecoverState.cpp +++ b/arangod/Wal/RecoverState.cpp @@ -1122,7 +1122,7 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, if (TRI_IsStringJson(name)) { collection = TRI_LookupCollectionByNameVocBase(vocbase, name->_value._string.data); - if (collection != nullptr && ! TRI_IsSystemNameCollection(name->_value._string.data)) { + if (collection != nullptr) { // && ! TRI_IsSystemNameCollection(name->_value._string.data)) { // if yes, delete it TRI_voc_cid_t otherCid = collection->_cid; @@ -1161,9 +1161,10 @@ bool RecoverState::ReplayMarker (TRI_df_marker_t const* marker, TRI_FreeCollectionInfoOptions(&info); if (collection == nullptr) { - LOG_WARNING("cannot create collection %llu in database %llu", + LOG_WARNING("cannot create collection %llu in database %llu: %s", (unsigned long long) collectionId, - (unsigned long long) databaseId); + (unsigned long long) databaseId, + TRI_last_error()); ++state->errorCount; return state->canContinue(); } diff --git a/arangosh/V8Client/arangodump.cpp b/arangosh/V8Client/arangodump.cpp index c1088df05b77..4d018eb5d987 100644 --- a/arangosh/V8Client/arangodump.cpp +++ b/arangosh/V8Client/arangodump.cpp @@ -81,7 +81,13 @@ triagens::httpclient::SimpleHttpClient* Client = nullptr; /// @brief chunk size //////////////////////////////////////////////////////////////////////////////// -static uint64_t ChunkSize = 1024 * 1024 * 8; +static uint64_t ChunkSize = 1024 * 1024 * 2; + +//////////////////////////////////////////////////////////////////////////////// +/// @brief max chunk size +//////////////////////////////////////////////////////////////////////////////// + +static uint64_t MaxChunkSize = 1024 * 1024 * 12; //////////////////////////////////////////////////////////////////////////////// /// @brief collections @@ -173,7 +179,8 @@ static void ParseProgramOptions (int argc, char* argv[]) { description ("collection", &Collections, "restrict to collection name (can be specified multiple times)") - ("batch-size", &ChunkSize, "maximum size for individual data batches (in bytes)") + ("initial-batch-size", &ChunkSize, "initial size for individual data batches (in bytes)") + ("batch-size", &MaxChunkSize, "maximum size for individual data batches (in bytes)") ("dump-data", &DumpData, "dump collection data") ("force", &Force, "continue dumping even in the face of some server-side errors") ("include-system-collections", &IncludeSystemCollections, "include system collections") @@ -515,19 +522,21 @@ static int DumpCollection (int fd, const string& cid, const string& name, TRI_json_t const* parameters, - const uint64_t maxTick, + uint64_t maxTick, string& errorMsg) { + uint64_t chunkSize = ChunkSize; + const string baseUrl = "/_api/replication/dump?collection=" + cid + - "&chunkSize=" + StringUtils::itoa(ChunkSize) + "&ticks=false&translateIds=true&flush=false"; map headers; uint64_t fromTick = TickStart; - while (1) { - string url = baseUrl + "&from=" + StringUtils::itoa(fromTick); + while (true) { + string url = baseUrl + "&from=" + StringUtils::itoa(fromTick) + + "&chunkSize=" + StringUtils::itoa(chunkSize); if (maxTick > 0) { url += "&to=" + StringUtils::itoa(maxTick); @@ -614,6 +623,14 @@ static int DumpCollection (int fd, // done return res; } + + if (chunkSize < MaxChunkSize) { + // adaptively increase chunksize + chunkSize = static_cast(chunkSize * 1.5); + if (chunkSize > MaxChunkSize) { + chunkSize = MaxChunkSize; + } + } } TRI_ASSERT(false); @@ -1270,6 +1287,9 @@ int main (int argc, char* argv[]) { if (ChunkSize < 1024 * 128) { ChunkSize = 1024 * 128; } + if (MaxChunkSize < ChunkSize) { + MaxChunkSize = ChunkSize; + } if (TickStart < TickEnd) { cerr << "invalid values for --tick-start or --tick-end" << endl; diff --git a/arangosh/V8Client/arangorestore.cpp b/arangosh/V8Client/arangorestore.cpp index 78ddd19a6b0f..c3fe6c42c263 100644 --- a/arangosh/V8Client/arangorestore.cpp +++ b/arangosh/V8Client/arangorestore.cpp @@ -132,7 +132,7 @@ static bool Progress = true; static bool Overwrite = true; //////////////////////////////////////////////////////////////////////////////// -/// @brief re-use revision ids on import +/// @brief re-use collection ids and revision ids on import //////////////////////////////////////////////////////////////////////////////// static bool RecycleIds = false; diff --git a/js/server/tests/replication-ongoing.js b/js/server/tests/replication-ongoing.js new file mode 100644 index 000000000000..d4d9843f63a6 --- /dev/null +++ b/js/server/tests/replication-ongoing.js @@ -0,0 +1,443 @@ +/*jshint globalstrict:false, strict:false, unused: false */ +/*global fail, assertEqual, assertTrue, assertFalse, assertNull, arango */ + +//////////////////////////////////////////////////////////////////////////////// +/// @brief test the replication +/// +/// @file +/// +/// DISCLAIMER +/// +/// Copyright 2010-2012 triagens GmbH, Cologne, Germany +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// +/// Copyright holder is triAGENS GmbH, Cologne, Germany +/// +/// @author Jan Steemann +/// @author Copyright 2013, triAGENS GmbH, Cologne, Germany +//////////////////////////////////////////////////////////////////////////////// + +var jsunity = require("jsunity"); +var arangodb = require("org/arangodb"); +var errors = arangodb.errors; +var db = arangodb.db; + +var replication = require("org/arangodb/replication"); +var console = require("console"); +var internal = require("internal"); +var masterEndpoint = arango.getEndpoint(); +var slaveEndpoint = masterEndpoint.replace(/:3(\d+)$/, ':4$1'); + +// ----------------------------------------------------------------------------- +// --SECTION-- replication tests +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @brief test suite +//////////////////////////////////////////////////////////////////////////////// + +function ReplicationSuite () { + 'use strict'; + var cn = "UnitTestsReplication"; + var cn2 = "UnitTestsReplication2"; + + var connectToMaster = function () { + arango.reconnect(masterEndpoint, db._name(), "root", ""); + }; + + var connectToSlave = function () { + arango.reconnect(slaveEndpoint, db._name(), "root", ""); + }; + + var collectionChecksum = function (name) { + var c = db._collection(name).checksum(true, true); + return c.checksum; + }; + + var collectionCount = function (name) { + return db._collection(name).count(); + }; + + var compareTicks = function (l, r) { + var i; + if (l === null) { + l = "0"; + } + if (r === null) { + r = "0"; + } + if (l.length !== r.length) { + return l.length - r.length < 0 ? -1 : 1; + } + + // length is equal + for (i = 0; i < l.length; ++i) { + if (l[i] !== r[i]) { + return l[i] < r[i] ? -1 : 1; + } + } + + return 0; + }; + + var compare = function (masterFunc, masterFunc2, slaveFuncOngoing, slaveFuncFinal, applierConfiguration) { + var state = { }; + + db._flushCache(); + masterFunc(state); + + connectToSlave(); + replication.applier.stop(); + + internal.wait(1, false); + + var includeSystem = true; + var restrictType = ""; + var restrictCollections = [ ]; + + if (typeof applierConfiguration === 'object') { + if (applierConfiguration.hasOwnProperty("includeSystem")) { + includeSystem = applierConfiguration.includeSystem; + } + if (applierConfiguration.hasOwnProperty("restrictType")) { + restrictType = applierConfiguration.restrictType; + } + if (applierConfiguration.hasOwnProperty("restrictCollections")) { + restrictCollections = applierConfiguration.restrictCollections; + } + } + + var syncResult = replication.sync({ + endpoint: masterEndpoint, + username: "root", + password: "", + verbose: true, + includeSystem: includeSystem, + restrictType: restrictType, + restrictCollections: restrictCollections + }); + + assertTrue(syncResult.hasOwnProperty('lastLogTick')); + + connectToMaster(); + masterFunc2(state); + + if (typeof applierConfiguration === 'object') { + console.log("using special applier configuration: " + JSON.stringify(applierConfiguration)); + } + + applierConfiguration = applierConfiguration || { }; + applierConfiguration.endpoint = masterEndpoint; + applierConfiguration.username = "root"; + applierConfiguration.password = ""; + + if (! applierConfiguration.hasOwnProperty('chunkSize')) { + applierConfiguration.chunkSize = 16384; + } + + connectToSlave(); + + replication.applier.properties(applierConfiguration); + replication.applier.start(syncResult.lastLogTick); + + var printed = false; + + while (true) { + if (! slaveFuncOngoing(state)) { + return; + } + + var slaveState = replication.applier.state(); + + if (! slaveState.state.running || slaveState.state.lastError.errorNum > 0) { + break; + } + + if (compareTicks(slaveState.state.lastAppliedContinuousTick, syncResult.lastLogTick) > 0 || + compareTicks(slaveState.state.lastProcessedContinuousTick, syncResult.lastLogTick) > 0 || + compareTicks(slaveState.state.lastAvailableContinuousTick, syncResult.lastLogTick) > 0) { + break; + } + + if (! printed) { + console.log("waiting for slave to catch up"); + printed = true; + } + internal.wait(1.0, false); + } + + db._flushCache(); + slaveFuncFinal(state); + }; + + return { + +//////////////////////////////////////////////////////////////////////////////// +/// @brief set up +//////////////////////////////////////////////////////////////////////////////// + + setUp : function () { + connectToMaster(); + + db._drop(cn); + db._drop(cn2); + }, + +//////////////////////////////////////////////////////////////////////////////// +/// @brief tear down +//////////////////////////////////////////////////////////////////////////////// + + tearDown : function () { + connectToMaster(); + + db._drop(cn); + db._drop(cn2); + + connectToSlave(); + replication.applier.stop(); + db._drop(cn); + db._drop(cn2); + }, + +//////////////////////////////////////////////////////////////////////////////// +/// @brief test long transaction, blocking +//////////////////////////////////////////////////////////////////////////////// + + testLongTransactionBlocking : function () { + connectToMaster(); + + compare( + function (state) { + db._create(cn); + }, + + function (state) { + db._executeTransaction({ + collections: { + write: cn + }, + action: function (params) { + var wait = require("internal").wait; + var db = require("internal").db; + var c = db._collection(params.cn); + + for (var i = 0; i < 10; ++i) { + c.save({ test1: i }); + c.save({ test2: i }); + + // intentionally delay the transaction + wait(0.75, false); + } + }, + params: { + cn: cn + } + }); + + state.checksum = collectionChecksum(cn); + state.count = collectionCount(cn); + assertEqual(20, state.count); + }, + + function (state) { + // stop and restart replication on the slave + assertTrue(replication.applier.state().state.running); + replication.applier.stop(); + assertFalse(replication.applier.state().state.running); + + internal.wait(0.5, false); + replication.applier.start(); + assertTrue(replication.applier.state().state.running); + + return true; + }, + + function (state) { + assertEqual(state.count, collectionCount(cn)); + assertEqual(state.checksum, collectionChecksum(cn)); + } + ); + }, + +//////////////////////////////////////////////////////////////////////////////// +/// @brief test long transaction, asynchronous +//////////////////////////////////////////////////////////////////////////////// + + testLongTransactionAsync : function () { + connectToMaster(); + + compare( + function (state) { + db._create(cn); + }, + + function (state) { + var func = db._executeTransaction({ + collections: { + write: cn + }, + action: function (params) { + var wait = require("internal").wait; + var db = require("internal").db; + var c = db._collection(params.cn); + + for (var i = 0; i < 10; ++i) { + c.save({ test1: i }); + c.save({ test2: i }); + + // intentionally delay the transaction + wait(0.75, false); + } + }, + params: { + cn: cn + } + }); + + state.task = require("org/arangodb/tasks").register({ + name: "replication-test", + command: String(func), + params: { + cn: cn + } + }).id; + }, + + function (state) { + assertTrue(replication.applier.state().state.running); + + connectToMaster(); + try { + require("org/arangodb/tasks").get(state.task); + // task exists + } + catch (err) { + // task does not exist. we're done + state.checksum = collectionChecksum(cn); + state.count = collectionCount(cn); + assertEqual(20, state.count); + connectToSlave(); + return false; + } + + connectToSlave(); + internal.wait(0.5, false); + return true; + }, + + function (state) { + assertEqual(state.count, collectionCount(cn)); + } + ); + }, + +//////////////////////////////////////////////////////////////////////////////// +/// @brief test long transaction, asynchronous +//////////////////////////////////////////////////////////////////////////////// + + testLongTransactionAsyncWithSlaveRestarts : function () { + connectToMaster(); + + compare( + function (state) { + db._create(cn); + }, + + function (state) { + var func = db._executeTransaction({ + collections: { + write: cn + }, + action: function (params) { + var wait = require("internal").wait; + var db = require("internal").db; + var c = db._collection(params.cn); + + for (var i = 0; i < 10; ++i) { + c.save({ test1: i }); + c.save({ test2: i }); + + // intentionally delay the transaction + wait(0.75, false); + } + }, + params: { + cn: cn + } + }); + + state.task = require("org/arangodb/tasks").register({ + name: "replication-test", + command: String(func), + params: { + cn: cn + } + }).id; + }, + + function (state) { + // stop and restart replication on the slave + assertTrue(replication.applier.state().state.running); + replication.applier.stop(); + assertFalse(replication.applier.state().state.running); + + connectToMaster(); + try { + require("org/arangodb/tasks").get(state.task); + // task exists + } + catch (err) { + // task does not exist. we're done + state.checksum = collectionChecksum(cn); + state.count = collectionCount(cn); + assertEqual(20, state.count); + connectToSlave(); + return false; + } + + connectToSlave(); + + internal.wait(0.5, false); + replication.applier.start(); + assertTrue(replication.applier.state().state.running); + return true; + }, + + function (state) { + assertEqual(state.count, collectionCount(cn)); + } + ); + } + +// done + + }; +} + +// ----------------------------------------------------------------------------- +// --SECTION-- main +// ----------------------------------------------------------------------------- + +//////////////////////////////////////////////////////////////////////////////// +/// @brief executes the test suite +//////////////////////////////////////////////////////////////////////////////// + +jsunity.run(ReplicationSuite); + +return jsunity.done(); + +// Local Variables: +// mode: outline-minor +// outline-regexp: "^\\(/// @brief\\|/// @addtogroup\\|// --SECTION--\\|/// @page\\|/// @}\\)" +// End: diff --git a/js/server/tests/replication-data.js b/js/server/tests/replication-static.js similarity index 97% rename from js/server/tests/replication-data.js rename to js/server/tests/replication-static.js index 212978ed099f..6a6c63678d90 100644 --- a/js/server/tests/replication-data.js +++ b/js/server/tests/replication-static.js @@ -152,7 +152,7 @@ function ReplicationSuite () { var printed = false; - while (1) { + while (true) { var slaveState = replication.applier.state(); if (! slaveState.state.running || slaveState.state.lastError.errorNum > 0) { @@ -844,6 +844,47 @@ function ReplicationSuite () { ); }, +//////////////////////////////////////////////////////////////////////////////// +/// @brief test delayed transaction +//////////////////////////////////////////////////////////////////////////////// + + testTransactionDelayed : function () { + compare( + function (state) { + db._create(cn); + + db._executeTransaction({ + collections: { + write: cn + }, + action: function (params) { + var c = require("internal").db._collection(params.cn), i; + var wait = require("internal").wait; + + for (i = 0; i < 10; ++i) { + c.save({ "_key" : "test" + i, value : i }); + c.update("test" + i, { value : i + 1 }); + + wait(1, false); + } + }, + params: { "cn" : cn }, + }); + + state.checksum = collectionChecksum(cn); + state.count = collectionCount(cn); + assertEqual(10, state.count); + }, + function (state) { + assertEqual(state.count, collectionCount(cn)); + assertEqual(state.checksum, collectionChecksum(cn)); + }, + { + chunkSize: 2048 + } + ); + }, + //////////////////////////////////////////////////////////////////////////////// /// @brief test transactions //////////////////////////////////////////////////////////////////////////////// From cb717eece4fb52fceb17bc9c0b48e52c7ce8dd0c Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Fri, 21 Aug 2015 17:00:32 +0200 Subject: [PATCH 03/28] add tickRanges() function --- .../RestHandler/RestReplicationHandler.cpp | 11 +++++-- arangod/V8Server/v8-replication.cpp | 29 +++++++++++++++++++ .../js/modules/org/arangodb/replication.js | 13 +++++++++ js/client/modules/org/arangodb/replication.js | 13 +++++++++ js/server/bootstrap/module-internal.js | 9 ++++++ js/server/modules/org/arangodb/replication.js | 8 +++++ 6 files changed, 81 insertions(+), 2 deletions(-) diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index 3c9b067d7755..222010766637 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -551,11 +551,18 @@ void RestReplicationHandler::handleCommandLoggerTickRanges () { generateError(HttpResponse::SERVER_ERROR, TRI_ERROR_OUT_OF_MEMORY); return; } + + char buffer[21]; + size_t len; TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "datafile", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, it.filename.c_str(), it.filename.size())); TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "status", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, it.state.c_str(), it.state.size())); - TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "tickMin", TRI_CreateNumberJson(TRI_UNKNOWN_MEM_ZONE, static_cast(it.tickMin))); - TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "tickMax", TRI_CreateNumberJson(TRI_UNKNOWN_MEM_ZONE, static_cast(it.tickMax))); + + len = TRI_StringUInt64InPlace(it.tickMin, (char*) &buffer); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "tickMin", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, (char const*) buffer, len)); + + len = TRI_StringUInt64InPlace(it.tickMax, (char*) &buffer); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, r, "tickMax", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, (char const*) buffer, len)); TRI_PushBack3ArrayJson(TRI_UNKNOWN_MEM_ZONE, json, r); } diff --git a/arangod/V8Server/v8-replication.cpp b/arangod/V8Server/v8-replication.cpp index 81a91f58b7e6..0638eb5a7f49 100644 --- a/arangod/V8Server/v8-replication.cpp +++ b/arangod/V8Server/v8-replication.cpp @@ -76,6 +76,34 @@ static void JS_StateLoggerReplication (const v8::FunctionCallbackInfo TRI_V8_TRY_CATCH_END } +//////////////////////////////////////////////////////////////////////////////// +/// @brief get the tick ranges that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +static void JS_TickRangesLoggerReplication (const v8::FunctionCallbackInfo& args) { + TRI_V8_TRY_CATCH_BEGIN(isolate); + v8::HandleScope scope(isolate); + + auto const& ranges = triagens::wal::LogfileManager::instance()->ranges(); + + v8::Handle result = v8::Array::New(isolate, (int) ranges.size()); + uint32_t i = 0; + + for (auto& it : ranges) { + v8::Handle df = v8::Object::New(isolate); + + df->ForceSet(TRI_V8_ASCII_STRING("datafile"), TRI_V8_STD_STRING(it.filename)); + df->ForceSet(TRI_V8_ASCII_STRING("state"), TRI_V8_STD_STRING(it.state)); + df->ForceSet(TRI_V8_ASCII_STRING("tickMin"), V8TickId(isolate, it.tickMin)); + df->ForceSet(TRI_V8_ASCII_STRING("tickMax"), V8TickId(isolate, it.tickMax)); + + result->Set(i++, df); + } + + TRI_V8_RETURN(result); + TRI_V8_TRY_CATCH_END +} + //////////////////////////////////////////////////////////////////////////////// /// @brief get the last WAL entries //////////////////////////////////////////////////////////////////////////////// @@ -645,6 +673,7 @@ void TRI_InitV8Replication (v8::Isolate* isolate, // replication functions. not intended to be used by end users TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_STATE"), JS_StateLoggerReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_LAST"), JS_LastLoggerReplication, true); + TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_TICK_RANGES"), JS_TickRangesLoggerReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_SYNCHRONISE"), JS_SynchroniseReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_SERVER_ID"), JS_ServerIdReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_APPLIER_CONFIGURE"), JS_ConfigureApplierReplication, true); diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js b/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js index 8b1afbfc8626..6cbe47c7e3e7 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js @@ -133,6 +133,19 @@ applier.properties = function (config) { return requestResult; }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the tick ranges that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.tickRanges = function () { + var db = internal.db; + + var requestResult = db._connection.GET("/_api/replication/logger-tick-ranges"); + arangosh.checkRequestResult(requestResult); + + return requestResult; +}; + // ----------------------------------------------------------------------------- // --SECTION-- other functions // ----------------------------------------------------------------------------- diff --git a/js/client/modules/org/arangodb/replication.js b/js/client/modules/org/arangodb/replication.js index b1db1daa56a6..16b992952049 100644 --- a/js/client/modules/org/arangodb/replication.js +++ b/js/client/modules/org/arangodb/replication.js @@ -132,6 +132,19 @@ applier.properties = function (config) { return requestResult; }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the tick ranges that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.tickRanges = function () { + var db = internal.db; + + var requestResult = db._connection.GET("/_api/replication/logger-tick-ranges"); + arangosh.checkRequestResult(requestResult); + + return requestResult; +}; + // ----------------------------------------------------------------------------- // --SECTION-- other functions // ----------------------------------------------------------------------------- diff --git a/js/server/bootstrap/module-internal.js b/js/server/bootstrap/module-internal.js index ee74a53217d0..1830ef580364 100644 --- a/js/server/bootstrap/module-internal.js +++ b/js/server/bootstrap/module-internal.js @@ -225,6 +225,15 @@ if (global.REPLICATION_LOGGER_STATE) { delete global.REPLICATION_LOGGER_STATE; } +//////////////////////////////////////////////////////////////////////////////// +/// @brief tickRangesReplicationLogger +//////////////////////////////////////////////////////////////////////////////// + +if (global.REPLICATION_LOGGER_TICK_RANGES) { + exports.tickRangesReplicationLogger = global.REPLICATION_LOGGER_TICK_RANGES; + delete global.REPLICATION_LOGGER_TICK_RANGES; +} + //////////////////////////////////////////////////////////////////////////////// /// @brief configureReplicationApplier //////////////////////////////////////////////////////////////////////////////// diff --git a/js/server/modules/org/arangodb/replication.js b/js/server/modules/org/arangodb/replication.js index b764904b9d9b..0a675e89a856 100644 --- a/js/server/modules/org/arangodb/replication.js +++ b/js/server/modules/org/arangodb/replication.js @@ -48,6 +48,14 @@ logger.state = function () { return internal.getStateReplicationLogger(); }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the tick ranges provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.tickRanges = function () { + return internal.tickRangesReplicationLogger(); +}; + //////////////////////////////////////////////////////////////////////////////// /// @brief starts the replication applier //////////////////////////////////////////////////////////////////////////////// From 4ab4935fd1357c17aad5ed9689dba3bb3198db0c Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Fri, 21 Aug 2015 17:03:16 +0200 Subject: [PATCH 04/28] Add missing example --- .../Examples/EDGCOL_01_SaveEdgeCol.generated | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Documentation/Examples/EDGCOL_01_SaveEdgeCol.generated diff --git a/Documentation/Examples/EDGCOL_01_SaveEdgeCol.generated b/Documentation/Examples/EDGCOL_01_SaveEdgeCol.generated new file mode 100644 index 000000000000..a4991e7c6204 --- /dev/null +++ b/Documentation/Examples/EDGCOL_01_SaveEdgeCol.generated @@ -0,0 +1,31 @@ +arangosh> db._create("vertex"); +[ArangoCollection 22677622, "vertex" (type document, status loaded)] +arangosh> db._createEdgeCollection("relation"); +[ArangoCollection 22808694, "relation" (type edge, status loaded)] +arangosh> v1 = db.vertex.insert({ name : "vertex 1" }); +{ + "_id" : "vertex/23136374", + "_rev" : "23136374", + "_key" : "23136374" +} +arangosh> v2 = db.vertex.insert({ name : "vertex 2" }); +{ + "_id" : "vertex/23332982", + "_rev" : "23332982", + "_key" : "23332982" +} +arangosh> e1 = db.relation.insert(v1, v2, { label : "knows" }); +{ + "_id" : "relation/23660662", + "_rev" : "23660662", + "_key" : "23660662" +} +arangosh> db._document(e1); +{ + "label" : "knows", + "_id" : "relation/23660662", + "_rev" : "23660662", + "_key" : "23660662", + "_from" : "vertex/23136374", + "_to" : "vertex/23332982" +} From e2cc550f055305af938569e13866c54106e104cf Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Fri, 21 Aug 2015 17:11:40 +0200 Subject: [PATCH 05/28] added firstTick() --- arangod/V8Server/v8-replication.cpp | 31 +++++++++++++++++++ .../js/modules/org/arangodb/replication.js | 13 ++++++++ js/client/modules/org/arangodb/replication.js | 13 ++++++++ js/server/bootstrap/module-internal.js | 9 ++++++ js/server/modules/org/arangodb/replication.js | 8 +++++ 5 files changed, 74 insertions(+) diff --git a/arangod/V8Server/v8-replication.cpp b/arangod/V8Server/v8-replication.cpp index 0638eb5a7f49..3868011f7629 100644 --- a/arangod/V8Server/v8-replication.cpp +++ b/arangod/V8Server/v8-replication.cpp @@ -104,6 +104,36 @@ static void JS_TickRangesLoggerReplication (const v8::FunctionCallbackInfo& args) { + TRI_V8_TRY_CATCH_BEGIN(isolate); + v8::HandleScope scope(isolate); + + auto const& ranges = triagens::wal::LogfileManager::instance()->ranges(); + + TRI_voc_tick_t tick = UINT64_MAX; + + for (auto& it : ranges) { + if (it.tickMin == 0) { + continue; + } + + if (it.tickMin < tick) { + tick = it.tickMin; + } + } + + if (tick == UINT64_MAX) { + TRI_V8_RETURN(v8::Null(isolate)); + } + + TRI_V8_RETURN(V8TickId(isolate, tick)); + TRI_V8_TRY_CATCH_END +} + //////////////////////////////////////////////////////////////////////////////// /// @brief get the last WAL entries //////////////////////////////////////////////////////////////////////////////// @@ -674,6 +704,7 @@ void TRI_InitV8Replication (v8::Isolate* isolate, TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_STATE"), JS_StateLoggerReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_LAST"), JS_LastLoggerReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_TICK_RANGES"), JS_TickRangesLoggerReplication, true); + TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_LOGGER_FIRST_TICK"), JS_FirstTickLoggerReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_SYNCHRONISE"), JS_SynchroniseReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_SERVER_ID"), JS_ServerIdReplication, true); TRI_AddGlobalFunctionVocbase(isolate, context, TRI_V8_ASCII_STRING("REPLICATION_APPLIER_CONFIGURE"), JS_ConfigureApplierReplication, true); diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js b/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js index 6cbe47c7e3e7..0aee236b4d8e 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/modules/org/arangodb/replication.js @@ -146,6 +146,19 @@ logger.tickRanges = function () { return requestResult; }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the first tick that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.firstTick = function () { + var db = internal.db; + + var requestResult = db._connection.GET("/_api/replication/logger-first-tick"); + arangosh.checkRequestResult(requestResult); + + return requestResult.firstTick; +}; + // ----------------------------------------------------------------------------- // --SECTION-- other functions // ----------------------------------------------------------------------------- diff --git a/js/client/modules/org/arangodb/replication.js b/js/client/modules/org/arangodb/replication.js index 16b992952049..ca7443307e1e 100644 --- a/js/client/modules/org/arangodb/replication.js +++ b/js/client/modules/org/arangodb/replication.js @@ -145,6 +145,19 @@ logger.tickRanges = function () { return requestResult; }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the first tick that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.firstTick = function () { + var db = internal.db; + + var requestResult = db._connection.GET("/_api/replication/logger-first-tick"); + arangosh.checkRequestResult(requestResult); + + return requestResult.firstTick; +}; + // ----------------------------------------------------------------------------- // --SECTION-- other functions // ----------------------------------------------------------------------------- diff --git a/js/server/bootstrap/module-internal.js b/js/server/bootstrap/module-internal.js index 1830ef580364..36f39388f69e 100644 --- a/js/server/bootstrap/module-internal.js +++ b/js/server/bootstrap/module-internal.js @@ -234,6 +234,15 @@ if (global.REPLICATION_LOGGER_TICK_RANGES) { delete global.REPLICATION_LOGGER_TICK_RANGES; } +//////////////////////////////////////////////////////////////////////////////// +/// @brief firstTickReplicationLogger +//////////////////////////////////////////////////////////////////////////////// + +if (global.REPLICATION_LOGGER_FIRST_TICK) { + exports.firstTickReplicationLogger = global.REPLICATION_LOGGER_FIRST_TICK; + delete global.REPLICATION_LOGGER_FIRST_TICK; +} + //////////////////////////////////////////////////////////////////////////////// /// @brief configureReplicationApplier //////////////////////////////////////////////////////////////////////////////// diff --git a/js/server/modules/org/arangodb/replication.js b/js/server/modules/org/arangodb/replication.js index 0a675e89a856..9b62b4784019 100644 --- a/js/server/modules/org/arangodb/replication.js +++ b/js/server/modules/org/arangodb/replication.js @@ -56,6 +56,14 @@ logger.tickRanges = function () { return internal.tickRangesReplicationLogger(); }; +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the first tick that can be provided by the replication logger +//////////////////////////////////////////////////////////////////////////////// + +logger.firstTick = function () { + return internal.firstTickReplicationLogger(); +}; + //////////////////////////////////////////////////////////////////////////////// /// @brief starts the replication applier //////////////////////////////////////////////////////////////////////////////// From 2e7bbdbec31e23c6ec48550c221de00cddc7a7f5 Mon Sep 17 00:00:00 2001 From: CoDEmanX Date: Sat, 22 Aug 2015 04:18:02 +0200 Subject: [PATCH 06/28] Improvements to documentation building Fix sed parameter error that creates additional files on Windows/Cygwin, support Python 2.6, fix font for deprecated summary entries and add author/description to book. --- Documentation/Books/Makefile | 6 +++--- Documentation/Books/Users/book.json | 2 ++ Documentation/Books/deprecated.py | 22 +++++++++++----------- Documentation/Books/generateMdFiles.py | 15 ++++++++------- 4 files changed, 24 insertions(+), 21 deletions(-) diff --git a/Documentation/Books/Makefile b/Documentation/Books/Makefile index 5f5b42ee38fa..bddf9a6bec6a 100644 --- a/Documentation/Books/Makefile +++ b/Documentation/Books/Makefile @@ -58,9 +58,9 @@ build-book: done python generateMdFiles.py $(NAME) ppbooks/ - cd ppbooks/$(NAME) && sed -ie 's/VERSION_NUMBER/v$(newVersionNumber)/g' styles/header.js - cd ppbooks/$(NAME) && sed -ie 's/VERSION_NUMBER/v$(newVersionNumber)/g' README.md - cd ppbooks/$(NAME) && sed -ie 's/VERSION_NUMBER/v$(newVersionNumber)/g' book.json + cd ppbooks/$(NAME) && sed -i -e 's/VERSION_NUMBER/v$(newVersionNumber)/g' styles/header.js + cd ppbooks/$(NAME) && sed -i -e 's/VERSION_NUMBER/v$(newVersionNumber)/g' README.md + cd ppbooks/$(NAME) && sed -i -e 's/VERSION_NUMBER/v$(newVersionNumber)/g' book.json test -d books/$(NAME) || mkdir -p books/$(NAME) diff --git a/Documentation/Books/Users/book.json b/Documentation/Books/Users/book.json index b0a1dad3fc5f..54945d60196a 100644 --- a/Documentation/Books/Users/book.json +++ b/Documentation/Books/Users/book.json @@ -1,6 +1,8 @@ { "gitbook": ">=2.0.0", "title": "ArangoDB VERSION_NUMBER Documentation", + "author": "ArangoDB GmbH", + "description": "Official manual for ArangoDB - the multi-model NoSQL database", "language": "en", "plugins":["expandable-chapters", "addcssjs"], "pdf": { diff --git a/Documentation/Books/deprecated.py b/Documentation/Books/deprecated.py index c52916190f25..3d78a5270c48 100644 --- a/Documentation/Books/deprecated.py +++ b/Documentation/Books/deprecated.py @@ -16,17 +16,17 @@ def replaceCode(pathOfFile, newVersionNumber): s=f.read() f.close() f=open(pathOfFile,'w') - lines = s.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") - lines = lines.replace("","") + lines = s.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") + lines = lines.replace(""," ") #lines = lines.replace("!CHAPTER","#") lines = re.sub("!CHAPTER\s+" + "(.*)", r"

\g<1>

", lines) #lines = lines.replace("!SECTION","##") diff --git a/Documentation/Books/generateMdFiles.py b/Documentation/Books/generateMdFiles.py index 1d6c00197414..a86ce4a5bce7 100644 --- a/Documentation/Books/generateMdFiles.py +++ b/Documentation/Books/generateMdFiles.py @@ -72,7 +72,7 @@ def walk_on_files(inDirPath, outDirPath): for file in files: if file.endswith(".mdpp"): inFileFull = os.path.join(root, file) - outFileFull = os.path.join(outDirPath, re.sub(r'mdpp$', 'md', inFileFull)); + outFileFull = os.path.join(outDirPath, re.sub(r'mdpp$', 'md', inFileFull)) print "%s -> %s" % (inFileFull, outFileFull) _mkdir_recursive(os.path.join(outDirPath, root)) mdpp = open(inFileFull, "r") @@ -80,7 +80,7 @@ def walk_on_files(inDirPath, outDirPath): MarkdownPP.MarkdownPP(input=mdpp, output=md, modules=MarkdownPP.modules.keys()) mdpp.close() md.close() - findStartCode(md, outFileFull); + findStartCode(md, outFileFull) def findStartCode(fd,full_path): inFD = open(full_path, "r") @@ -135,8 +135,9 @@ def replaceTextInline(text, pathOfFile, searchText): print '*' * 80 print text exit(1) - rePattern = r'\s*@startDocuBlockInline\s+'+ searchText +'.*@endDocuBlock\s' + searchText - match = re.search(rePattern, text, flags=re.DOTALL); + rePattern = r'(?s)\s*@startDocuBlockInline\s+'+ searchText +'.*@endDocuBlock\s' + searchText + # (?s) is equivalent to flags=re.DOTALL but works in Python 2.6 + match = re.search(rePattern, text) if (match == None): print "failed to match with '%s' for %s in file %s in: \n%s" % (rePattern, searchText, pathOfFile, text) @@ -145,9 +146,9 @@ def replaceTextInline(text, pathOfFile, searchText): subtext = match.group(0) if (len(re.findall('@startDocuBlock', subtext)) > 1): print "failed to snap with '%s' on end docublock for %s in %s our match is:\n%s" % (rePattern, searchText, pathOfFile, subtext) - exit(1); + exit(1) - return re.sub(rePattern, dokuBlocks[1][searchText], text, flags=re.DOTALL) + return re.sub(rePattern, dokuBlocks[1][searchText], text) ################################################################################ # Read the docublocks into memory @@ -186,7 +187,7 @@ def readNextLine(line): def loadDokuBlocks(): state = STATE_SEARCH_START f=open("allComments.txt", 'rU') - count = 0; + count = 0 for line in f.readlines(): if state == STATE_SEARCH_START: state = readStartLine(line) From b3d1a604e1c828d94b58db15e6d0e9d4c0e42049 Mon Sep 17 00:00:00 2001 From: jsteemann Date: Sat, 22 Aug 2015 23:22:24 +0200 Subject: [PATCH 07/28] make removeByExample, replaceByExample and updateByExample use AQL internally --- arangod/Aql/ExecutionBlock.cpp | 36 +++-- js/common/tests/shell-simple-query.js | 32 +++-- .../modules/org/arangodb/arango-collection.js | 131 ++++++------------ 3 files changed, 93 insertions(+), 106 deletions(-) diff --git a/arangod/Aql/ExecutionBlock.cpp b/arangod/Aql/ExecutionBlock.cpp index 69a3675bbbd2..b9961d96c67a 100644 --- a/arangod/Aql/ExecutionBlock.cpp +++ b/arangod/Aql/ExecutionBlock.cpp @@ -4822,7 +4822,6 @@ AqlItemBlock* InsertBlock::work (std::vector& blocks) { } handleResult(errorCode, ep->_options.ignoreErrors); - ++dstRow; } // done with a block @@ -4888,7 +4887,7 @@ AqlItemBlock* UpdateBlock::work (std::vector& blocks) { if (ep->_outVariableNew != nullptr) { result->setDocumentCollection(_outRegNew, trxCollection->_collection->_collection); } - + // loop over all blocks size_t dstRow = 0; for (auto it = blocks.begin(); it != blocks.end(); ++it) { @@ -4965,8 +4964,14 @@ AqlItemBlock* UpdateBlock::work (std::vector& blocks) { std::unique_ptr patchedJson(TRI_MergeJson(TRI_UNKNOWN_MEM_ZONE, old.get(), json.json(), ep->_options.nullMeansRemove, ep->_options.mergeObjects)); if (patchedJson.get() != nullptr) { - // all exceptions are caught in _trx->update() - errorCode = _trx->update(trxCollection, key, 0, &mptr, patchedJson.get(), TRI_DOC_UPDATE_LAST_WRITE, 0, nullptr, ep->_options.waitForSync); + if (_isDBServer && + isShardKeyChange(old.get(), patchedJson.get(), true)) { + errorCode = TRI_ERROR_CLUSTER_MUST_NOT_CHANGE_SHARDING_ATTRIBUTES; + } + else { + // all exceptions are caught in _trx->update() + errorCode = _trx->update(trxCollection, key, 0, &mptr, patchedJson.get(), TRI_DOC_UPDATE_LAST_WRITE, 0, nullptr, ep->_options.waitForSync); + } } } } @@ -5005,7 +5010,6 @@ AqlItemBlock* UpdateBlock::work (std::vector& blocks) { } handleResult(errorCode, ep->_options.ignoreErrors, &errorMessage); - ++dstRow; } // done with a block @@ -5248,7 +5252,6 @@ AqlItemBlock* UpsertBlock::work (std::vector& blocks) { } handleResult(errorCode, ep->_options.ignoreErrors, &errorMessage); - ++dstRow; } // done with a block @@ -5351,7 +5354,7 @@ AqlItemBlock* ReplaceBlock::work (std::vector& blocks) { errorCode = TRI_ERROR_ARANGO_DOCUMENT_TYPE_INVALID; } - if (errorCode == TRI_ERROR_NO_ERROR && ep->_outVariableOld != nullptr) { + if (errorCode == TRI_ERROR_NO_ERROR && (ep->_outVariableOld != nullptr || _isDBServer)) { if (! hasKeyVariable && a.isShaped()) { // "old" is already ShapedJson. no need to fetch the old document first constructMptr(&nptr, a.getMarker()); @@ -5365,9 +5368,21 @@ AqlItemBlock* ReplaceBlock::work (std::vector& blocks) { if (errorCode == TRI_ERROR_NO_ERROR) { TRI_doc_mptr_copy_t mptr; auto const json = a.toJson(_trx, document, true); - - // all exceptions are caught in _trx->update() - errorCode = _trx->update(trxCollection, key, 0, &mptr, json.json(), TRI_DOC_UPDATE_LAST_WRITE, 0, nullptr, ep->_options.waitForSync); + + if (_isDBServer) { + TRI_shaped_json_t shapedJson; + TRI_EXTRACT_SHAPED_JSON_MARKER(shapedJson, nptr.getDataPtr()); // PROTECTED by trx here + std::unique_ptr old(TRI_JsonShapedJson(_collection->documentCollection()->getShaper(), &shapedJson)); + + if (isShardKeyChange(old.get(), json.json(), false)) { + errorCode = TRI_ERROR_CLUSTER_MUST_NOT_CHANGE_SHARDING_ATTRIBUTES; + } + } + + if (errorCode == TRI_ERROR_NO_ERROR) { + // all exceptions are caught in _trx->update() + errorCode = _trx->update(trxCollection, key, 0, &mptr, json.json(), TRI_DOC_UPDATE_LAST_WRITE, 0, nullptr, ep->_options.waitForSync); + } if (errorCode == TRI_ERROR_ARANGO_DOCUMENT_NOT_FOUND && _isDBServer) { if (ignoreDocumentNotFound) { @@ -5400,7 +5415,6 @@ AqlItemBlock* ReplaceBlock::work (std::vector& blocks) { } handleResult(errorCode, ep->_options.ignoreErrors); - ++dstRow; } // done with a block diff --git a/js/common/tests/shell-simple-query.js b/js/common/tests/shell-simple-query.js index 11eb03f9dfbb..a6e07ae5194b 100644 --- a/js/common/tests/shell-simple-query.js +++ b/js/common/tests/shell-simple-query.js @@ -1376,9 +1376,13 @@ function SimpleQueryByExampleSuite () { // not existing documents replaced = collection.replaceByExample({ meow : true }, { }); + + assertEqual(0, replaced); + + replaced = collection.replaceByExample({ value : 142 }, { }); assertEqual(0, replaced); - replaced = collection.replaceByExample({ value : null }, { }); + replaced = collection.replaceByExample({ value : "peng!" }, { }); assertEqual(0, replaced); collection.truncate(); @@ -1415,7 +1419,10 @@ function SimpleQueryByExampleSuite () { replaced = collection.replaceByExample({ meow : true }, { }); assertEqual(0, replaced); - replaced = collection.replaceByExample({ value : null }, { }); + replaced = collection.replaceByExample({ value : 142 }, { }); + assertEqual(0, replaced); + + replaced = collection.replaceByExample({ value : "peng!" }, { }); assertEqual(0, replaced); collection.truncate(); @@ -1460,7 +1467,10 @@ function SimpleQueryByExampleSuite () { replaced = collection.replaceByExample({ meow : true }, { }, false, 99); assertEqual(0, replaced); - replaced = collection.replaceByExample({ value : null }, { }, false, 99); + replaced = collection.replaceByExample({ value : 42 }, { }, false, 99); + assertEqual(0, replaced); + + replaced = collection.replaceByExample({ value : "peng!" }, { }, false, 99); assertEqual(0, replaced); // check counts @@ -1520,7 +1530,10 @@ function SimpleQueryByExampleSuite () { updated = collection.updateByExample({ meow : true }, { }); assertEqual(0, updated); - updated = collection.updateByExample({ value : null }, { }); + updated = collection.updateByExample({ value : 142 }, { }); + assertEqual(0, updated); + + updated = collection.updateByExample({ value : "peng!" }, { }); assertEqual(0, updated); collection.truncate(); @@ -1585,7 +1598,7 @@ function SimpleQueryByExampleSuite () { updated = collection.updateByExample({ meow : true }, { }); assertEqual(0, updated); - updated = collection.updateByExample({ not_existent_null_value : null }, { }); + updated = collection.updateByExample({ nonExistentValue : "foo" }, { }); assertEqual(0, updated); collection.truncate(); @@ -1593,11 +1606,11 @@ function SimpleQueryByExampleSuite () { assertEqual(0, updated); for (i = 0; i < 50; ++i) { - collection.save({ test : i , limit_test : 1}); + collection.save({ test : i , limitTest : 1}); } // update and remove old values keep null values updated = collection.updateByExample( - { limit_test : 1 }, + { limitTest : 1 }, { foo : "bart", bar : "baz", value : null }, {keepNull: true, limit : 30}); assertEqual(30, updated); @@ -1666,7 +1679,10 @@ function SimpleQueryByExampleSuite () { updated = collection.updateByExample({ meow : true }, { }, false, false, 99); assertEqual(0, updated); - updated = collection.updateByExample({ value : null }, { }, false, false, 99); + updated = collection.updateByExample({ value : 42 }, { }, false, false, 99); + assertEqual(0, updated); + + updated = collection.updateByExample({ value : "peng!" }, { }, false, false, 99); assertEqual(0, updated); collection.truncate(); diff --git a/js/server/modules/org/arangodb/arango-collection.js b/js/server/modules/org/arangodb/arango-collection.js index 8ac8c166daba..1a99e5286add 100644 --- a/js/server/modules/org/arangodb/arango-collection.js +++ b/js/server/modules/org/arangodb/arango-collection.js @@ -32,6 +32,33 @@ module.isSystem = true; var internal = require("internal"); +//////////////////////////////////////////////////////////////////////////////// +/// @brief builds an example query +//////////////////////////////////////////////////////////////////////////////// + +function buildExampleQuery (collection, example, limit) { + var parts = [ ]; + var bindVars = { "@collection" : collection.name() }; + var keys = Object.keys(example); + + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + parts.push("doc.@att" + i + " == @value" + i); + bindVars["att" + i] = key; + bindVars["value" + i] = example[key]; + } + + var query = "FOR doc IN @@collection"; + if (parts.length > 0) { + query += " FILTER " + parts.join(" && ", parts); + } + if (limit > 0) { + query += " LIMIT " + parseInt(limit, 10); + } + + return { query: query, bindVars: bindVars }; +} + //////////////////////////////////////////////////////////////////////////////// /// @brief add options from arguments to index specification //////////////////////////////////////////////////////////////////////////////// @@ -622,9 +649,10 @@ ArangoCollection.prototype.removeByExample = function (example, var tmp_options = waitForSync === null ? {} : waitForSync; // avoiding jslint error // see: http://jslinterrors.com/unexpected-sync-method-a/ - waitForSync = tmp_options.waitForSync; + waitForSync = tmp_options.waitForSync; limit = tmp_options.limit; } + var i; var cluster = require("org/arangodb/cluster"); if (cluster.isCoordinator()) { @@ -657,7 +685,7 @@ ArangoCollection.prototype.removeByExample = function (example, }); var deleted = 0; - var results = cluster.wait(coord, shards), i; + var results = cluster.wait(coord, shards); for (i = 0; i < results.length; ++i) { var body = JSON.parse(results[i].body); @@ -667,34 +695,11 @@ ArangoCollection.prototype.removeByExample = function (example, return deleted; } - return require("internal").db._executeTransaction({ - collections: { - write: this.name() - }, - action: function (params) { - var collection = params.c; - var documents = collection.byExample(params.example); - if (params.limit > 0) { - documents = documents.limit(params.limit); - } - - var deleted = 0; - while (documents.hasNext()) { - var document = documents.next(); + var query = buildExampleQuery(this, example, limit); + var opts = { waitForSync : waitForSync }; + query.query += " REMOVE doc IN @@collection OPTIONS " + JSON.stringify(opts); - if (collection.remove(document, true, params.wfs)) { - deleted++; - } - } - return deleted; - }, - params: { - c: this, - example: example, - limit: limit, - wfs: waitForSync - } - }); + return require("internal").db._query(query).getExtra().stats.writesExecuted; }; //////////////////////////////////////////////////////////////////////////////// @@ -779,35 +784,12 @@ ArangoCollection.prototype.replaceByExample = function (example, return replaced; } - return require("internal").db._executeTransaction({ - collections: { - write: this.name() - }, - action: function (params) { - var collection = params.c; - var documents = collection.byExample(params.example); - if (params.limit > 0) { - documents = documents.limit(params.limit); - } - - var replaced = 0; - while (documents.hasNext()) { - var document = documents.next(); + var query = buildExampleQuery(this, example, limit); + var opts = { waitForSync : waitForSync }; + query.query += " REPLACE doc WITH @newValue IN @@collection OPTIONS " + JSON.stringify(opts); + query.bindVars.newValue = newValue; - if (collection.replace(document, params.newValue, true, params.wfs)) { - replaced++; - } - } - return replaced; - }, - params: { - c: this, - example: example, - newValue: newValue, - limit: limit, - wfs: waitForSync - } - }); + return require("internal").db._query(query).getExtra().stats.writesExecuted; }; //////////////////////////////////////////////////////////////////////////////// @@ -898,37 +880,12 @@ ArangoCollection.prototype.updateByExample = function (example, return updated; } - return require("internal").db._executeTransaction({ - collections: { - write: this.name() - }, - action: function (params) { - var collection = params.c; - var documents = collection.byExample(params.example); - if (params.limit > 0) { - documents = documents.limit(params.limit); - } - - var updated = 0; - while (documents.hasNext()) { - var document = documents.next(); + var query = buildExampleQuery(this, example, limit); + var opts = { waitForSync : waitForSync, keepNull: keepNull }; + query.query += " UPDATE doc WITH @newValue IN @@collection OPTIONS " + JSON.stringify(opts); + query.bindVars.newValue = newValue; - if (collection.update(document, params.newValue, - {overwrite: true, keepNull: params.keepNull, waitForSync: params.wfs})) { - updated++; - } - } - return updated; - }, - params: { - c: this, - example: example, - newValue: newValue, - keepNull: keepNull, - limit: limit, - wfs: waitForSync - } - }); + return require("internal").db._query(query).getExtra().stats.writesExecuted; }; //////////////////////////////////////////////////////////////////////////////// From ca72b2cfb2c04835a5d9916573b7dcb364aaf0a1 Mon Sep 17 00:00:00 2001 From: jsteemann Date: Sat, 22 Aug 2015 23:24:36 +0200 Subject: [PATCH 08/28] do not fetch vocbase in loop --- arangod/VocBase/ExampleMatcher.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/arangod/VocBase/ExampleMatcher.cpp b/arangod/VocBase/ExampleMatcher.cpp index 669743f8e30b..af64ab94f86b 100644 --- a/arangod/VocBase/ExampleMatcher.cpp +++ b/arangod/VocBase/ExampleMatcher.cpp @@ -61,6 +61,17 @@ void ExampleMatcher::fillExampleDefinition (v8::Isolate* isolate, size_t& n, std::string& errorMessage, ExampleDefinition& def) { + TRI_IF_FAILURE("ExampleNoContextVocbase") { + // intentionally fail + THROW_ARANGO_EXCEPTION(TRI_ERROR_ARANGO_DATABASE_NOT_FOUND); + } + + TRI_vocbase_t* vocbase = GetContextVocBase(isolate); + if (vocbase == nullptr) { + // This should never be thrown as we are already in a transaction + THROW_ARANGO_EXCEPTION(TRI_ERROR_ARANGO_DATABASE_NOT_FOUND); + } + def._pids.reserve(n); def._values.reserve(n); @@ -84,15 +95,6 @@ void ExampleMatcher::fillExampleDefinition (v8::Isolate* isolate, } else { // We need a Collection Name Resolver here now! - TRI_vocbase_t* vocbase = GetContextVocBase(isolate); - TRI_IF_FAILURE("ExampleNoContextVocbase") { - // Explicitly delete the vocbase - vocbase = nullptr; - } - if (vocbase == nullptr) { - // This should never be thrown as we are already in a transaction - THROW_ARANGO_EXCEPTION(TRI_ERROR_ARANGO_DATABASE_NOT_FOUND); - } V8ResolverGuard resolverGuard(vocbase); CollectionNameResolver const* resolver = resolverGuard.getResolver(); string colName = keyVal.substr(0, keyVal.find("/")); From add25edf638091d0edc1697c72dbb4081372808e Mon Sep 17 00:00:00 2001 From: hkernbach Date: Mon, 24 Aug 2015 09:54:41 +0200 Subject: [PATCH 09/28] web ui design --- .../clusterFrontend/build/style-minified.css | 2 +- .../build/style-minified.css.gz | Bin 23704 -> 23782 bytes .../APP/clusterFrontend/build/style.css | 33 ++++++++++++++-- .../APP/clusterFrontend/build/style.css.gz | Bin 37288 -> 37342 bytes .../_admin/aardvark/APP/frontend/build/app.js | 36 +++++++++--------- .../aardvark/APP/frontend/build/app.js.gz | Bin 1238106 -> 1238211 bytes .../aardvark/APP/frontend/build/app.min.js | 22 +++++------ .../aardvark/APP/frontend/build/app.min.js.gz | Bin 796226 -> 796300 bytes .../APP/frontend/build/scripts.html.part | 2 +- .../APP/frontend/build/standalone-min.html | 30 ++++++++++----- .../APP/frontend/build/standalone-min.html.gz | Bin 23444 -> 23604 bytes .../APP/frontend/build/standalone.html | 26 +++++++++---- .../APP/frontend/build/style-minified.css | 2 +- .../APP/frontend/build/style-minified.css.gz | Bin 33769 -> 33892 bytes .../aardvark/APP/frontend/build/style.css | 24 +++++++++--- .../aardvark/APP/frontend/build/style.css.gz | Bin 39123 -> 39240 bytes .../js/templates/applicationsView.ejs | 1 + .../js/templates/collectionsItemView.ejs | 1 + .../frontend/js/templates/collectionsView.ejs | 1 + .../frontend/js/templates/databaseView.ejs | 16 ++++---- .../frontend/js/templates/foxxActiveView.ejs | 1 + .../js/templates/graphManagementView.ejs | 2 + .../js/templates/userManagementView.ejs | 2 + .../APP/frontend/js/views/collectionsView.js | 5 +-- .../aardvark/APP/frontend/scss/_colors.scss | 4 +- .../APP/frontend/scss/_headerBar.scss | 2 +- .../aardvark/APP/frontend/scss/_tiles.scss | 19 ++++++++- 27 files changed, 159 insertions(+), 72 deletions(-) diff --git a/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css b/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css index 58714796e322..cb605cfadb81 100644 --- a/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css +++ b/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css @@ -1,4 +1,4 @@ @charset "UTF-8";.fa,.fa-stack{display:inline-block}.clusterDownBtn,.clusterDownBtn button,.fa-fw,.fa-li,.fa-stack-1x,.fa-stack-2x,.footer,.modal-body th .valueCell,.modal-body th th.actionCell,.modal-body th th.keyCell,.waitModal,div.toolbox div.gv_action_button{text-align:center}.page-title span,.pingback a.url,body,input,textarea{font-family:'Open Sans',sans-serif!important;font-weight:400}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(../fonts/opensans/OpenSansLight.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:local('Open Sans'),local('OpenSans'),url(../fonts/opensans/OpenSans.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:local('Open Sans Bold'),local('OpenSans-Bold'),url(../fonts/opensans/OpenSansBold.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300;src:local('Open Sans Light Italic'),local('OpenSansLight-Italic'),url(../fonts/opensans/OpenSansLightItalic.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:400;src:local('Open Sans Italic'),local('OpenSans-Italic'),url(../fonts/opensans/OpenSansItalic.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:700;src:local('Open Sans Bold Italic'),local('OpenSans-BoldItalic'),url(../fonts/opensans/OpenSansBoldItalic.woff) format('woff')}/*! * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome/fontawesome-webfont.eot?v=4.3.0);src:url(../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.3.0) format('embedded-opentype'),url(../fonts/fontawesome/fontawesome-webfont.woff2?v=4.3.0) format('woff2'),url(../fonts/fontawesome/fontawesome-webfont.woff?v=4.3.0) format('woff'),url(../fonts/fontawesome/fontawesome-webfont.ttf?v=4.3.0) format('truetype'),url(../fonts/fontawesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular) format('svg');font-weight:400;font-style:normal}.fa{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0,0)}.modal-body,button{font-family:'Open Sans',sans-serif!important}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857em}.fa-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em}.fa-li.fa-lg{left:-1.8571428571em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.pull-right{float:right}.contentDiv li,.dashboard-bar-chart-container,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage,.dashboard-half-height-legend,.dashboard-large-chart,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-legend,.dashboard-medium-chart,.dashboard-medium-chart .dashboard-interior-chart,.dashboard-small-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart,.dashboard-sub-bar,.dashboard-sub-bar .dashboard-sub-bar-title,.dashboard-tendency-container,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar,.dashboard-title-bar .dashboard-half-title-bar,.machineClass,.modal-chart-detail,.modal-chart-detail .modal-body,.modal-chart-detail .modal-dashboard-legend,.modal-chart-detail .modal-inner-detail,.pull-left,.scenarioMachine,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.add-Icon,div .tile,div .tile a span.add-Icon,div.centralContent,div.dropdownInner ul,div.footer-center,div.footer-left,div.footer-left p,div.navlogo,ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.navlist li,ul.script-dropdown-menu,ul.user-dropdown-menu{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before,.fa-genderless:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.dashboard-sub-bar-menu,.search-field,div .bigtile div.iconSet span,div .tile div.iconSet span,div.footer-right,div.footer-right p,div.headerBar>div.headerButtonBar,div.navmenu,ul.headerButtonList li{float:right}.dashboard-bar-chart-container .dashboard-bar-chart:after,.dashboard-medium-chart .dashboard-medium-chart-inner:after,.dashboard-medium-chart .dashboard-medium-chart-menu:after,.dashboard-row:after,.dashboard-sub-bar:after,.dashboard-tendency-container .dashboard-tendency-chart:after,.detail-chart:after,.machineClass:after,.scenarioSingleMachine:after,div.headerBar>div.headerButtonBar:after,div.resizecontainer:after,div.tileList:after{clear:both;content:'.';display:block;font-size:0;height:0;visibility:hidden}.addButton,.arangoicon,.clusterDownBtn button,.contentDiv .icon,.deleteButton,.gv-search-submit-icon,.icon-info-sign,.scenarioImage,.search-submit-icon,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.icon,div .bigtile a svg,div .bigtile div.iconSet span,div .tile a span.icon,div .tile a svg,div .tile div.iconSet span,div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label,div.toolbox div.gv_action_button,ul.script-dropdown-menu li.dropdown-item{cursor:pointer}footer.footer,nav.navbar{background-color:rgba(245,248,240,.95);color:#fff;left:0;position:fixed;right:0;width:100%;z-index:1000}.button-danger{background-color:#da4f49}.button-danger:focus,.button-danger:hover{background-color:#be342e}.deleteButton,a.danger.coordinator,a.danger.dbserver{color:#da4f49}.deleteButton:focus,.deleteButton:hover,a.danger.coordinator:focus,a.danger.coordinator:hover,a.danger.dbserver:focus,a.danger.dbserver:hover{color:#be342e}a.danger.coordinator,a.danger.dbserver{fill:#da4f49}a.danger.coordinator:focus,a.danger.coordinator:hover,a.danger.dbserver:focus,a.danger.dbserver:hover{fill:#be342e}.button-success{background-color:#8aa051}.button-success:focus,.button-success:hover{background-color:#788f3d}.addButton,a.success.coordinator,a.success.dbserver{color:#8aa051}.addButton:focus,.addButton:hover,a.success.coordinator:focus,a.success.coordinator:hover,a.success.dbserver:focus,a.success.dbserver:hover{color:#788f3d}a.success.coordinator,a.success.dbserver{fill:#8aa051}a.success.coordinator:focus,a.success.coordinator:hover,a.success.dbserver:focus,a.success.dbserver:hover{fill:#788f3d}.button-warning{background-color:#faa732}.button-warning:focus,.button-warning:hover{background-color:#f89406}a.warning.coordinator,a.warning.dbserver{color:#faa732;fill:#faa732}a.warning.coordinator:focus,a.warning.coordinator:hover,a.warning.dbserver:focus,a.warning.dbserver:hover{color:#f89406;fill:#f89406}.button-close,.button-neutral{background-color:#8f8d8c}.button-close:focus,.button-close:hover,.button-neutral:focus,.button-neutral:hover{background-color:#736b68}.dashboard-sub-bar-menu{color:#8f8d8c}.dashboard-sub-bar-menu:focus,.dashboard-sub-bar-menu:hover{color:#736b68}.button-primary{background-color:#564e4a}.button-primary:focus,.button-primary:hover{background-color:#3a322e}.button-header,a.button-gui,a.headerButton{background-color:#fff;border:1px solid #fff;color:#555}.button-header:focus,.button-header:hover,a.button-gui:focus,a.button-gui:hover,a.headerButton:focus,a.headerButton:hover{border:1px solid #8aa051;background-color:#8aa051;color:#fff}.button-notification{background-color:#faa020}.button-notification:focus,.button-notification:hover{background-color:#f87c0f}.button-inactive,.button-inactive:focus,.button-inactive:hover,[class*=' button-']:disabled,[class*=' button-']:focus:disabled,[class*=' button-']:hover:disabled,[class^=button-]:disabled,[class^=button-]:focus:disabled,[class^=button-]:hover:disabled{background-color:#d3d3d3}a.headerButton.disabled,a.headerButton.disabled:focus,a.headerButton.disabled:hover,a.inactive.coordinator,a.inactive.coordinator:focus,a.inactive.coordinator:hover,a.inactive.dbserver,a.inactive.dbserver:focus,a.inactive.dbserver:hover{color:#d3d3d3}a.inactive.coordinator,a.inactive.coordinator:focus,a.inactive.coordinator:hover,a.inactive.dbserver,a.inactive.dbserver:focus,a.inactive.dbserver:hover{fill:#d3d3d3}ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.script-dropdown-menu,ul.user-dropdown-menu{background-color:#F5F8F0;border-color:#666;border-style:solid;border-width:1px;border-radius:3px;display:none;list-style:none;margin:5px 0 0;padding:5px 0;position:absolute;right:0;top:80%;z-index:1000}a.tab,ul.script-dropdown-menu li.dropdown-item a{display:block}ul.gv-dropdown-menu li,ul.link-dropdown-menu li,ul.script-dropdown-menu li,ul.user-dropdown-menu li{line-height:23px;white-space:nowrap;width:100%}ul.gv-dropdown-menu li.dropdown-header,ul.link-dropdown-menu li.dropdown-header,ul.script-dropdown-menu li.dropdown-header,ul.user-dropdown-menu li.dropdown-header{color:#999;font-size:15px;font-weight:600;font-variant:small-caps;padding:0 15px}ul.gv-dropdown-menu li.dropdown-header:hover,ul.link-dropdown-menu li.dropdown-header:hover,ul.script-dropdown-menu li.dropdown-header:hover,ul.user-dropdown-menu li.dropdown-header:hover{cursor:default}ul.gv-dropdown-menu li.divider,ul.link-dropdown-menu li.divider,ul.script-dropdown-menu li.divider,ul.user-dropdown-menu li.divider{background-color:#666;height:1px;margin:10px 0}ul.gv-dropdown-menu a,ul.link-dropdown-menu a,ul.script-dropdown-menu a,ul.user-dropdown-menu a{color:#fff;padding:0 20px}.navbar{-webkit-font-smoothing:subpixel-antialiased}.navbar .nav li.dropdown .active>.dropdown-toggle,.navbar .nav li.dropdown .open.active>.dropdown-toggle,.navbar .nav li.dropdown .open>.dropdown-toggle{background:#788f3d}nav.navbar{padding-top:6px;height:44px;margin-bottom:3px;top:0}nav.navbar .arangodbLogo{height:auto;margin-left:-5px;margin-top:-1px;width:40%}nav.navbar .nav>.active>a{background-color:#fff;color:#000;-webkit-box-shadow:0 0 0 transparent inset;-moz-box-shadow:0 0 0 transparent inset;box-shadow:0 0 0 transparent inset}nav.navbar .nav>li>a:focus{background-color:#fff}nav.navbar .nav>li>a:hover{background-color:#000;color:#686766}ul.navlist li.dropdown-item:hover a,ul.navlist>li.active a,ul.navlist>li.active:hover a,ul.navlist>li:hover a{color:#000}div.navlogo{margin-left:5px;margin-right:-1px;padding-top:3px}ul.navlist{list-style:none}ul.navlist li{margin-left:1px}ul.navlist li.navbar-spacer{background-color:#a0a0a0;height:21px;margin-top:9px;width:1px}ul.navlist li.navbar-spacer.big{margin-left:15px;margin-right:15px}ul.navlist li.navbar-spacer.med{margin-left:5px;margin-right:5px}ul.navlist li.dropdown-item,ul.script-dropdown-menu li.dropdown-item{margin-left:0}ul.navlist li.navbar-spacer:hover{background-color:#a0a0a0}ul.navlist>li.active,ul.navlist>li.active:hover{background-color:transparent}ul.navlist li.active{font-weight:700}ul.navlist li.active .tab{border-bottom:2px solid #8aa051;padding-bottom:4px}ul.navlist li.divider,ul.navlist li.navbar-spacer{border:none}ul.navlist li.divider{background-color:rgba(0,0,0,.2)}ul.navlist li{border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent}ul.navlist li.dropdown:hover{border-top:1px solid rgba(0,0,0,.2);border-left:1px solid rgba(0,0,0,.2);border-right:1px solid rgba(0,0,0,.2);border-bottom-left-radius:0;border-bottom-right-radius:0}ul.navlist li.dropdown-item:hover,ul.navlist>li:hover{background-color:#fff;border-radius:3px}ul.navlist li.dropdown-item a{display:block;border-bottom:0}ul.navlist li.dropdown-item a:hover{color:#686766;background-color:#dee9cf}a.tab{color:#686766;font-size:12pt;font-weight:100;padding:9px 10px 10px}a.tab.userImg{padding-bottom:5px}.dropdown-item a{border-bottom:0!important;font-weight:300}ul.link-dropdown-menu{background-color:#fff;z-index:-10;margin-top:7px;margin-right:-1px;border:1px solid rgba(0,0,0,.2);border-top-right-radius:0}ul.script-dropdown-menu li.dropdown-item a:hover{color:#fff}ul.script-dropdown-menu li.dropdown-item:hover{background-color:#8aa051}ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:rgba(0,0,0,.7);border:1px solid #c2c2c2;margin-right:-20px;margin-top:6px}ul.gv-dropdown-menu:after{border-bottom-color:#fff}ul.gv-dropdown-menu li:hover{background-color:#fff;background-image:none}ul.gv-dropdown-menu li a{padding:0}ul.gv-dropdown-menu li a label{color:#fff;padding-left:5px}ul.gv-dropdown-menu li a:focus{background-color:#8aa051!important;background-image:none}#arangoCollectionSelect{display:none;float:right;margin-bottom:0;margin-right:15px;padding-bottom:0}.caret{border-left:5px solid transparent;border-top:5px solid #686766;border-right:5px solid transparent;content:'';display:inline-block;height:0;vertical-align:top;width:0}.applications-menu{display:block}.arango-logo{height:34px;padding:0!important}.arango-logo img{margin-left:22px}.footer{bottom:0;font-size:14px;left:0;position:fixed;right:0;z-index:1000}footer.footer{bottom:0;height:40px}footer.footer p{margin-bottom:0;padding-bottom:10px;padding-top:10px;font-weight:100;font-size:10pt}div.footer-left{background:none;color:#686766;width:45%}div.footer-left .social-icons{margin-top:5px}div.footer-left .social-icons a{width:25px;display:block;height:25px;float:left}div.footer-left .social-icons p{font-size:12pt;background:#fff;border:1px solid rgba(104,103,102,.1);border-radius:20px;height:25px;width:25px;padding:0;margin-right:10px}div.footer-left .social-icons p:hover{cursor:pointer;background:#8c8a89}div.footer-left .social-icons p:hover i{color:#fff}div.footer-left .social-icons i{color:#000;position:absolute;margin-top:4px}div.footer-left .social-icons i.fa-twitter{margin-left:-7px}div.footer-left .social-icons i.fa-envelope{margin-left:-20px}div.footer-left .social-icons i.fa-google{margin-top:6px;margin-left:-18px}div.footer-left .social-icons i.fa-stack-overflow{margin-left:-18px}div.footer-center{background:none;color:#686766;width:10%}div.footer-center i{background-color:#fff;border-radius:20px;border:1px solid rgba(104,103,102,.1);width:20px;padding:6px 3px 6px 2px}div.footer-center i:hover{color:#fff;background-color:#8c8a89}div.footer-center p{padding-top:5px}div.footer-center p:hover{cursor:pointer}[class*=' button-']:disabled,[class^=button-]:disabled,a.headerButton.disabled{cursor:not-allowed}div.footer-right{background:none;color:#686766;width:45%}div.footer-right p{color:#fff}div.footer-right i{color:#da4f49;font-size:18px}div.footer-right a{color:#686766;margin-left:5px;position:relative;top:-1px}div.footer-right .isOnline{color:#8aa051!important}.button-close,.button-danger,.button-header,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;font-size:14px;font-weight:300!important}.waitModal,a.button-gui,a.headerButton{-webkit-box-shadow:none;-moz-box-shadow:none}.button-close,.button-danger,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{border:0;color:#fff;margin-left:10px;padding:5px 16px}.button-header{margin-top:5px}.addButton{font-size:22px;margin-right:7px;margin-top:2px;position:relative}.deleteButton{font-size:22px;padding-right:3px;position:relative;top:3px}#closeBtnInfoView{margin-left:0!important}button.large-distance{margin-left:12px}button.short-distance{margin-left:6px}ul.headerButtonList{display:inline-block;margin-bottom:0;margin-left:0;padding-left:0!important}ul.headerButtonList li{display:inline}button.shutdown{margin-top:6px;padding:3px 14px}a.button-gui,a.headerButton{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;box-shadow:none;margin-left:5px;margin-right:5px}a.headerButton{margin-top:2px;position:relative}a.headerButton .fa,a.headerButton [class*=" icon_"],a.headerButton [class^=icon_]{display:block;height:23px;line-height:23px;position:static;right:0;text-align:center;top:0;width:27px}a.headerButton .icon_arangodb_arrowleft,a.headerButton .icon_arangodb_arrowright{font-weight:700}a.headerButton.activated{background-color:#788f3d;color:#fff;border:1px solid #788f3d}a.headerButton.activated:hover{background-color:#fff;color:#788f3d}div.toolbox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);margin-right:5px;margin-top:-3px;padding-top:5px;padding-bottom:5px;position:absolute}div.toolbox div.gv_action_button{background-color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;color:#000;height:50px;margin:5px;position:relative;width:50px}div.toolbox div.gv_action_button.active{background-color:#8aa051;color:#fff}div.toolbox div.gv_action_button:first-child{margin-top:0}div.toolbox div.gv_action_button:last-child{margin-bottom:0}h6.gv_button_title,h6.gv_icon_icon{left:0;margin:0;position:absolute;right:0}h6.gv_icon_icon{font-size:22px;top:6px}h6.gv_button_title{bottom:1px}button.graphViewer-icon-button{background-color:transparent;border:0;height:20px;margin-left:5px;margin-top:-2px;padding:0;width:20px}button.graphViewer-icon-button>img{height:20px;padding-bottom:10px;width:20px}button.gv_dropdown_entry{height:30px;margin:4px 4px 4px 30px;width:160px}button.gv_context_button{width:65px}.btn-icon{background-color:#383434;padding:4px}button.gv-icon-small{background-size:16px 16px;height:16px;width:16px}button.gv-icon-small.delete{background-image:url(../img/icon_delete.png)}button.gv-icon-small.add{background-image:url(../img/plus_icon.png)}button.gv-icon-btn{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;background-size:36px 36px;height:36px;width:36px}button.gv-icon-btn.active{background-color:#8aa051}button.btn-zoom:hover{background:inherit}button.btn-zoom{background:0 0;height:16px;margin:0;padding:0;position:absolute;width:16px}button.btn-zoom-top{border:0;box-shadow:none;left:13px;top:1}button.btn-zoom-left{border:0;box-shadow:none;left:0;top:13px}button.btn-zoom-bottom{border:0;box-shadow:none;left:13px;top:25px}button.btn-zoom-right{border:0;box-shadow:none;right:0;top:13px}button.gv-zoom-btn{background-size:14px 14px;height:14px;vertical-align:baseline;width:14px}button.gv-zoom-btn.pan-right{background-image:url(../img/gv_arrow_right.png)}button.gv-zoom-btn.pan-left{background-image:url(../img/gv_arrow_left.png)}button.gv-zoom-btn.pan-top{background-image:url(../img/gv_arrow_top.png)}button.gv-zoom-btn.pan-bottom{background-image:url(../img/gv_arrow_bottom.png)}a.pagination-button,ul.arango-pagination a{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.badge,.btn,.label{text-shadow:none!important}.navbar-inner,.thumbnail{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0}.modal-body th.actionCell>button{margin-top:-12px}.btn-old-padding{padding-bottom:4px!important;padding-top:4px!important}button.btn-overview,button.btn-server{margin:5px}button.btn-server{width:120px}a.button-gui{height:auto;margin-bottom:0;margin-top:0;padding-top:1px;padding-bottom:1px;position:absolute;right:2px;text-decoration:none!important;top:2px;width:auto}a.button-gui.button-gui-disabled{display:none}.clusterDownBtn{padding-bottom:10px;padding-top:10px}.clusterDownBtn button{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#f1f1f1;border:1px solid rgba(0,0,0,.1875);color:#333;font-size:20px;font-weight:300;margin:0;padding:12px 18px;text-decoration:none!important;width:250px}.clusterDownBtn button:hover{background-color:#e8e8e8;color:#4a6c30;-webkit-transition-delay:0;-webkit-transition-duration:.2s;-webkit-transition-property:all;-webkit-transition-timing-function:ease-in}.clusterDownBtn button.green{background-color:#617e2b;color:#fff}.clusterDownBtn button.green:hover{background-color:#8ba142}.bottomButtonBar{border-top:1px solid rgba(104,103,102,.1);background-color:#fff;height:30px;padding:10px}.clusterInfoIcon{float:left;padding-left:5px;padding-top:2px}.waitModal.icon{font-size:100px;height:120px}.waitModal.message{font-size:20px}.icon_arangodb_info{color:#333;font-size:23px}li a [class*=" icon_arangodb"],li a [class^=icon_arangodb]{font-size:18px;position:absolute;right:4px;top:2px}.fa-minus-circle{color:#da4f49;font-size:14pt}.fa-minus-circle:hover{cursor:pointer}div.headerDropdown{background-color:#fff;border:1px solid rgba(104,103,102,.1);border-radius:3px;display:none;padding:10px;position:relative;width:auto}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox{display:none}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.dropdown-title{margin-bottom:10px}div.dropdownInner{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;min-height:125px;position:relative;width:auto}div.dropdownInner>.nav-header{color:#000;font-size:13px;font-weight:400}div.dropdownInner>label{color:#000;font-weight:300}div.dropdownInner ul{border-left:1px solid #c2c2c2;display:inline;margin-top:10px;min-height:105px;width:238px}div.dropdownInner ul:first-of-type{border:0}div.dropdownInner ul label{color:#000;padding-left:35px}div.dropdownInner ul li .fa{margin-right:5px;color:#8c8a89}div.dropdownInner ul li .fa.fa-check-circle-o,div.dropdownInner ul li .fa.fa-dot-circle-o{color:#8aa051}div.queryline{color:#000;height:35px}div.queryline .textDiv{margin-right:10px;margin-top:4px}div.queryline input,div.queryline select{margin-bottom:5px}div.queryline.querylineAdd span{color:#fff;padding-left:10px;position:relative;top:-21px}div.queryline .removeFilterItem i{margin-left:5px!important;margin-top:0!important}div.queryline div.searchByAttribute{margin-left:6px;margin-right:6px;position:relative}div.queryline div.searchByAttribute>ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:#fff;color:#fff;display:none;left:0;position:absolute;top:20px;width:247px}div.dropdownImport{background-color:#fff;border-radius:3px;display:none;position:relative;padding:10px 10px 5px}div.dropdownImport input{line-height:0;margin-bottom:-15px;margin-top:5px}select.filterSelect{margin-left:10px;margin-right:10px;width:100px}#filterHeader button{float:right;margin-left:10px!important;margin-top:1px}div.input-append button.gv_example_toggle{-moz-border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;background-color:#8f8d8c;height:30px;margin-left:-1px;padding-left:10px;padding-right:10px;padding-top:12px;vertical-align:top}div.input-append button.gv_example_toggle:hover{background-color:#8aa051}.searchEqualsLabel{margin-left:6px;margin-right:6px}img.gv-throbber{background-image:url(../img/swagger/throbber.gif)}span.gv_caret{margin-top:2px!important}input.search-input{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:14px;line-height:18px;margin-top:6px;margin-right:-1px;width:120px;outline:transparent 0}input.search-input:focus{border-color:#999;box-shadow:none;outline:transparent 0}.search-field{margin-left:10px}.search-field .fa-search{color:#D2D2D2;font-size:13pt;opacity:.5;position:absolute;right:7px;top:9px}.search-field .fa-search:hover{opacity:1;cursor:pointer}.gv-search-submit-icon,.search-submit-icon{background-image:url(../img/enter_icon.png);background-size:14px;height:14px;margin-left:-18px;opacity:.2;position:absolute;width:14px}.gv-search-submit-icon:hover,.search-submit-icon:hover{opacity:.8}.search-submit-icon{margin-top:11px}.gv-search-submit-icon{margin-top:6px}div.headerBar{background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);color:#fff;font-size:16px;height:36px;margin-top:15px;margin-bottom:5px;padding-left:5px;padding-right:5px;position:relative}div.headerBar .infoField{background-color:#f5f8f0;border:1px solid #d3d3d3;border-radius:3px!important;color:#000;float:right;font-size:12px;margin-top:7px;margin-right:7px;padding-left:5px;padding-right:5px}div.headerBar .infoField .fa{cursor:pointer;margin-left:5px}div.headerBar input[type=checkbox].css-checkbox{display:none}div.headerBar input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;cursor:pointer;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerBar input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.headerBar input[type=radio]{display:none}div.headerBar input[type=radio]+label span{background:url(../img/check_radio_sheet.png) -38px top no-repeat;cursor:pointer;display:inline-block;height:19px;margin:-1px 4px 0 0;vertical-align:middle;width:19px}#transparentHeader input[type=checkbox].css-checkbox,.lineGraph .many .dygraph-legend>span,.modal-delete-confirmation{display:none}div.headerBar input[type=radio]:checked+label span{background:url(../img/check_radio_sheet.png) -57px top no-repeat}div.headerBar a.arangoHeader{color:#000;font-size:13pt;font-weight:100;left:0;position:relative;top:7px}div.headerBar>div.headerButtonBar{margin:4px 0;margin-bottom:0!important}.breadcrumb{background:0 0;border:0;border-radius:0;padding:7px 0}.breadcrumb .disabledBread{font-size:13pt;font-weight:100;color:#666;float:left;padding-right:5px;position:relative}.breadcrumb .disabledBread i{font-size:10pt;margin-left:10px}.breadcrumb .activeBread{font-size:13pt;font-weight:100;color:#7da817;float:left}.arangoHeader{font-weight:400}.checkboxLabel{margin-top:4px;padding-left:0}.css-label{background-image:url(../img/dark-check-green.png)}.css-label-round{background-image:url(../img/dark-check-green-round.png)}.modal-dashboard-header,.modal-header{background-color:#fff;border-radius:3px;border-bottom:0!important;margin-top:5px;padding-left:5px;padding-right:10px;padding-top:4px}.modal-dashboard-header .arangoHeader,.modal-header .arangoHeader{color:#000;font-size:13pt;font-weight:100;left:5px;position:relative;top:2px}.modal-dashboard-header a,.modal-header a{top:2px!important}.modal-dashboard-header .close,.modal-header .close{color:#fff;font-weight:300;margin-top:2px;opacity:.5}.modal-dashboard-header .close:hover,.modal-header .close:hover{opacity:1}.modal-body{color:#736b68;font-size:14px;font-weight:300}.modal-body .select2-choices{border-radius:3px;border:1px solid #aaa;box-shadow:none;-webkit-box-shadow:none;background-image:none!important}.modal-body .select2-choices input{box-shadow:none;-webkit-box-shadow:none;outline:transparent!important}.modal-body .select2-choices input:active{box-shadow:none;-webkit-box-shadow:none;outline:0!important}.modal-body .select2-choices .select2-search-choice{margin:5px 0 3px 5px!important}.modal-body .select2-choices li{color:#000;background-color:#fff!important;background-image:none!important}.modal-body .select2-choices li a{margin-top:-1px;margin-left:1px}.modal-body .select2-choices:active{outline:transparent!important;border:1px solid #aaa;box-shadow:none!important;-webkit-box-shadow:none!important}.modal-body .nav-tabs{margin-top:15px}.modal-body input,.modal-body select,.modal-body textarea{margin-top:10px;border-radius:3px;box-shadow:none}.modal-body input[type=checkbox]{margin-bottom:10px}.modal-body input[type=text].invalid-input{border-color:rgba(234,23,23,.6)}.modal-body input[type=text].invalid-input:focus{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6)}.modal-body input[type=file]{line-height:17px}.modal-body th.actionCell{width:30px}.modal-body th.keyCell{width:170px}.modal-body th.keyCell input{width:150px}.modal-body th .valueCell{width:300px}.modal-body th .valueCell input{width:290px}.modal-body th div.select2-container{margin-bottom:10px;margin-top:10px}.modal-body .icon-info-sign{margin-bottom:10px;margin-left:10px;opacity:.7;padding-bottom:5px}.modal-body .icon-info-sign:hover{opacity:1}.modal-body .icon_arangodb_info{color:#736b68;font-size:18px;margin-top:-10px;position:absolute;right:12px}.modal-body .icon_arangodb_info:hover{color:#000}.modal-body .collapse{margin-right:-14px;position:relative}.modal-body .accordion-inner{border-top:0;margin-left:0;padding-left:0;padding-right:0}.modal-body .accordion-toggle span b.caret{border-top-color:#000;float:right;margin-top:5px}.modal-body .accordion-toggle.collapsed span b.caret{-ms-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.modal-body input{width:384px}.modal-body select{width:398px}.modal-body .collectionTh{height:55px}.modal-body .tab-content{min-height:200px}.modal-body .tab-content .tab-pane{border-top:1px solid #666!important;margin-left:0!important;padding-top:10px}.modal-body .tab-content #appstore{max-height:290px}.modal-body .errorMessage{background-color:#fff;color:red;font-size:9pt;font-weight:400;margin-bottom:5px;margin-top:-9px;position:absolute}.modal-body .nav img.tab-icon{margin-right:5px;margin-top:-3px;width:20px}.modal-text{font-weight:300;padding-bottom:3px;padding-top:3px}.modal-backdrop,.modal-backdrop.fade.in{opacity:.4}.modal{box-shadow:none;border:0!important;border-radius:3px!important}.modal .fade.in{top:12.1%!important}.modal table tr:last-child{border-bottom:0!important}.waitModal{box-shadow:none;background:0 0;border:0;color:#fff}.waitModalBackdrop{opacity:.7!important}.modalTooltips span{color:#736b68;font-size:20px}.modalTooltips span:hover{color:#000}pre.gv-object-view{text-align:left;white-space:pre}.capitalize{text-transform:capitalize}.modal-footer{border-top:0!important;padding-right:17px}.modal-header{margin-left:5px;margin-right:5px}.modal-dashboard-header{margin-left:0;margin-right:0;padding-bottom:9px}.modal table tr,.thBorderBottom{border-bottom:1px solid #f7f3f2!important}.modal-delete-confirmation button{margin-right:10px;margin-top:-4px}.modal-delete-confirmation button .modal-confirm-delete{margin-right:-18px}.createModalDialog table{width:100%}.createModalDialog .collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.createModalDialog .figures1,.createModalDialog .figures2{margin-bottom:20px;width:255px}.createModalDialog .figures2{margin-left:20px!important}.createModalDialog .figures3{margin-bottom:0;width:100%}.foxx-store-row .foxx-name{font-weight:700}.foxx-store-row .foxx-author{font-size:10pt;font-weight:300;margin-top:-4px}.foxx-store-row .foxx-version{font-weight:400}#new-app-mount{margin-right:24px;width:360px}#control_event_edge_delete_modal,#control_event_edge_edit_modal,#control_event_new_node_modal,#control_event_node_delete_modal,#control_event_node_edit_modal{margin-left:-320px;width:640px}.scenarioImage{height:70%;width:auto}svg.clusterChart{height:auto;margin:auto;width:auto}.lineGraph{position:absolute}.lineGraph .few .dygraph-legend>span.highlight{border:1px solid grey}.lineGraph .many .dygraph-legend>span.highlight{display:inline}a.coordinator,a.dbserver{color:#000;height:50px;position:absolute;top:10px;width:50px}a.coordinator h6.serverName,a.dbserver h6.serverName{bottom:0;font-size:11px;left:0;margin:0;position:absolute;right:0}a.coordinator.single{left:90px}a.coordinator.double{left:60px}a.dbserver.single{right:90px}a.dbserver.double{right:60px}.cluster-connection-check-success{color:#8aa051;margin-left:20px}.cluster-connection-check-fail{color:#da4f49;margin-left:20px}.cluster-unreachable-info{margin:0 auto;max-width:320px;padding-top:17px;text-align:center}.machineClass{background-color:#e1e1e1;margin-left:31px;margin-right:31px;padding:10px}.scenarioBox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:rgba(0,0,0,.075);border:1px solid rgba(0,0,0,.19);height:65px;left:10px;margin-top:30px;position:absolute;right:10px;width:auto}.scenarioMachine,div .bigtile,div .tile{background-color:#fff;position:relative}.scenarioBox.bottomBox{bottom:30px}.scenarioBoxHeader{border-bottom:1px solid rgba(0,0,0,.19);height:18px;line-height:18px;margin-top:0;padding-bottom:0;text-align:center;width:auto}.scenarioBoxText{font-size:13px;font-weight:400;margin-top:17px;text-align:center;width:auto}.collectionName,div .bigtile .badge-success,div .tile .badge-success{font-weight:300}.scenarioMachine{-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;border:1px solid rgba(0,0,0,.19);height:257px;margin-right:17px;width:110px}.scenarioMachine:last-child{margin-right:0}.scenarioSingleMachine{-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background-color:#fff;border:1px solid rgba(0,0,0,.19)}.scenarioSingleMachine .scenarioMachine{border:1px solid transparent;height:238px}.bigtile.informationtile{cursor:auto}.informationText{background:#fff;font-size:12px;margin:10px;padding:5px;text-align:left}div.tileList{margin-left:-6px;margin-right:-6px}div.tileList legend{padding-left:5px}div .bigtile,div .tile{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border-radius:3px;border:1px solid rgba(104,103,102,.1);font-size:14px;list-style:none;margin-bottom:13px;margin-left:6px;margin-right:6px;text-align:center}div .bigtile .warning-icons,div .tile .warning-icons{background-color:#da4f49;color:#fff;font-size:11px;height:17px;left:0;line-height:13px;padding-left:9px;padding-right:4px;position:absolute;top:0}div .bigtile a svg.icon,div .bigtile img.icon,div .tile a svg.icon,div .tile img.icon{height:50px;width:50px}div .bigtile .warning-icons:before,div .tile .warning-icons:before{border-right:17px solid transparent;border-top:17px solid #da4f49;content:'';position:absolute;right:-17px}div .bigtile .warning-icons .fa+.fa,div .tile .warning-icons .fa+.fa{margin-left:1px}div .bigtile .warning-icons .fa:before,div .tile .warning-icons .fa:before{font-size:8px}div .bigtile .collection-type-icon,div .tile .collection-type-icon{color:#666;font-size:30pt;margin-top:12pt}div .bigtile .collection-type-icon:hover,div .tile .collection-type-icon:hover{cursor:pointer}div .bigtile a span.add-Icon,div .tile a span.add-Icon{font-size:22px;margin-left:22px;margin-right:10px;margin-top:-5px;position:relative;right:4px;top:2px}div .bigtile a span.icon,div .tile a span.icon{font-size:50px}div .bigtile svg.tile-icon-svg,div .tile svg.tile-icon-svg{cursor:pointer;fill:#686766;height:50px;margin-left:90px;margin-top:10px;width:50px}div .bigtile span.tile-icon,div .tile span.tile-icon{color:#686766;font-size:50px;line-height:1.2}div .bigtile span.icon_arangodb_edge5-2,div .tile span.icon_arangodb_edge5-2{position:relative;top:15px;-webkit-transform:rotate(80deg);-moz-transform:rotate(80deg);-o-transform:rotate(80deg);display:inline-block}div .bigtile h5,div .tile h5{background:#8c8a89;color:#fff;font-size:12px;margin:0;overflow:hidden!important;padding:4px 8px;text-overflow:ellipsis!important;white-space:nowrap!important}div .bigtile div.tileSelects,div .tile div.tileSelects{margin-left:40px;position:relative;z-index:9999}div .bigtile div.tileSelects select,div .tile div.tileSelects select{float:right;height:20px;margin-right:5px;margin-top:16px;width:70px}div .bigtile div.iconSet,div .tile div.iconSet{position:absolute;right:5px;top:5px}div .bigtile div.iconSet span,div .tile div.iconSet span{border-radius:3px;color:#000;font-size:18px;padding:2px 3px}div .bigtile div.iconSet span:hover,div .tile div.iconSet span:hover{background-color:#8aa051;color:#fff}div .bigtile div.iconSet span.disabled,div .tile div.iconSet span.disabled{cursor:default;opacity:.2}div .bigtile div.iconSet span.disabled:hover,div .tile div.iconSet span.disabled:hover{background-color:#fff;color:#000;cursor:default;opacity:.2}div .bigtile .unloaded div,div .tile .unloaded div{border-bottom:16px solid #ff8f35}div .bigtile .deleted div,div .tile .deleted div{border-bottom:16px solid #700}div .bigtile div.tileBadge,div .tile div.tileBadge{bottom:29px;font-size:11px;font-weight:300;position:absolute;right:0}div .bigtile div.tileBadge button,div .tile div.tileBadge button{margin-left:0;margin-right:5px}div .bigtile div.tileBadge span,div .tile div.tileBadge span{display:inline-block;line-height:15px}div .bigtile div.tileBadge span div.corneredBadge,div .tile div.tileBadge span div.corneredBadge{border-left:5px solid transparent;border-bottom-style:solid;border-bottom-width:17px;border-radius:3px;margin-bottom:4px;margin-right:5px;color:#fff;height:0;padding-left:1px;padding-right:6px}div .bigtile div.tileBadge span div.corneredBadge.loading,div .tile div.tileBadge span div.corneredBadge.loading{border-bottom-color:#ff8f35}div .bigtile div.tileBadge span div.corneredBadge.loaded,div .tile div.tileBadge span div.corneredBadge.loaded{border-bottom-color:#8aa051}div .bigtile div.tileBadge span div.corneredBadge.development,div .bigtile div.tileBadge span div.corneredBadge.unloaded,div .tile div.tileBadge span div.corneredBadge.development,div .tile div.tileBadge span div.corneredBadge.unloaded{border-bottom-color:#ff8f35}div .tile{height:100px;width:226px}div .tile-graph .tile-icon:hover{cursor:pointer}div .bigtile{height:309px;width:452px}div .bigtile div.shardContainer{font-size:30px}div .bigtile div.shardContainer span{padding:2px}.collectionName{bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px;left:0;position:absolute;right:0;text-align:left}.dashboard-bar-chart-container,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-medium-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-tendency-container{border-top-left-radius:3px;border-top-right-radius:3px}.dashboard-bar-chart-container:first-child,.dashboard-large-chart .dashboard-large-chart-inner:first-child,.dashboard-medium-chart:first-child,.dashboard-small-chart .dashboard-small-chart-inner:first-child,.dashboard-tendency-container:first-child{margin-left:0}.dashboard-bar-chart-container,.dashboard-large-chart,.dashboard-medium-chart,.dashboard-small-chart,.dashboard-tendency-container{margin-bottom:10px;position:relative}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-medium-chart .dashboard-interior-chart{margin-bottom:0}.dashboard-sub-bar-menu{cursor:pointer;position:absolute;right:9px;top:6px}.dashboard-large-chart{margin-right:12px;border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-large-chart .dashboard-large-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:12px;padding-bottom:10px}.dashboard-small-chart{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-small-chart .dashboard-small-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:10px;padding-top:5px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart-outer:first-child{margin-right:10px}.dashboard-medium-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:10px;margin-bottom:0}.dashboard-medium-chart:first-child{margin-right:12px}.dashboard-medium-chart .dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart .dashboard-medium-chart-menu{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:0 solid rgba(0,0,0,.3);color:rgba(0,0,0,.3);cursor:pointer;padding:0 4px;position:absolute;z-index:1000}.dashboard-medium-chart .dashboard-medium-chart-menu:hover{color:rgba(0,0,0,.7)}.dashboard-medium-chart .dashboard-medium-chart-inner{padding-bottom:10px}.dashboard-medium-chart .clusterChart .slice path{fill-opacity:.15;stroke-opacity:1;stroke-width:1.5px}.dashboard-tendency-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-tendency-container .dashboard-tendency-chart{background-color:#fff;border-top-left-radius:3px;border-top-right-radius:3px;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{background-color:#fff;margin-top:5px;padding:0 8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency:first-child{border-right:1px solid #e1e1e1}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar{border-bottom:1px solid #e1e1e1;text-align:right}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure{text-align:center}.dashboard-bar-chart-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-bar-chart-container .dashboard-bar-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;border-top-left-radius:3px;border-top-right-radius:3px;padding-bottom:5px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{margin-top:5px;padding:0 8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{font-weight:400}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{text-align:right}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-legend .dashboard-legend-inner{padding:0 5px 5px 0}.dashboard-sub-bar{background-color:#686766;border-bottom-left-radius:3px;border-bottom-right-radius:3px;color:#fff;height:24px;line-height:24px;margin:0;padding:0 6px}.dashboard-spacer{margin:0 12px}.headerBar.dashboard-headerbar{margin:15px 0 10px}.modal-chart-detail .modal-dashboard-legend .dashboard-legend-inner{padding-left:20px}.dashboard-half-height-legend .dashboard-legend-inner{padding-top:20px}.dashboard-title-bar{background-color:#686766;color:#fff;font-size:14.5px;font-weight:400;height:30px;line-height:30px;padding:0 5px 0 10px}.dashboard-title-bar .dashboard-half-title-bar{border-left:1px solid #000;margin-left:-1px;width:50%}.dashboard-title-bar .dashboard-half-title-bar:first-child{border-left:0;margin-left:0}.dashboard-row{margin-bottom:0;margin-left:0;margin-right:0}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{color:#666}div.resizecontainer{margin:0 auto}@media (max-width:798px){#arangoCollectionUl{display:none}#collectionsDropdown ul{width:auto!important}#arangoCollectionSelect{display:inline-block}}@media (min-width:799px) and (max-width:1041px){#arangoCollectionUl a{font-size:12px;padding:10px 5px}}@media (min-width:1042px) and (max-width:1284px){#arangoCollectionUl a{font-size:14px}}@media (min-width:250px) and (max-width:489px){div.resizecontainer{width:228px}.dashboard-large-chart{width:146px}.dashboard-large-chart .dashboard-sub-bar{width:134px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:136px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:106px;float:left}.dashboard-medium-chart{width:96px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:95px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:96px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:79px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:66px}.dashboard-small-chart .dashboard-sub-bar{width:54px}.dashboard-small-chart .dashboard-small-chart-inner{width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:54px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:56px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:40px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-114px;width:228px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:208px}.modal-body .dashboard-large-chart{width:143px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:131px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:133px}.modal-body .dashboard-medium-chart-outer{width:91px;float:left}.modal-body .dashboard-medium-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:89px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:74px}.modal-body .dashboard-small-chart{width:61px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:49px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:51px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:6.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:51px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:56px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:40px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:228px}.application-detail-view aside.meta{display:none}}@media (min-width:490px) and (max-width:729px){div.resizecontainer{width:468px}.dashboard-large-chart{width:306px}.dashboard-large-chart .dashboard-sub-bar{width:294px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:296px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:226px;float:left}.dashboard-medium-chart{width:216px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:215px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:216px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:199px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:146px}.dashboard-small-chart .dashboard-sub-bar{width:134px}.dashboard-small-chart .dashboard-small-chart-inner{width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:48px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:134px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:136px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:120px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-234px;width:468px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:448px}.modal-body .dashboard-large-chart{width:303px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:291px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:293px}.modal-body .dashboard-medium-chart-outer{width:211px;float:left}.modal-body .dashboard-medium-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:194px}.modal-body .dashboard-small-chart{width:141px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:129px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:131px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:46.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:131px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:136px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:120px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:468px}.application-detail-view aside.meta{display:none}}@media (min-width:730px) and (max-width:969px){div.resizecontainer{width:708px}.dashboard-large-chart{width:466px}.dashboard-large-chart .dashboard-sub-bar{width:454px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:456px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:346px;float:left}.dashboard-medium-chart{width:336px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:335px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:319px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:226px}.dashboard-small-chart .dashboard-sub-bar{width:214px}.dashboard-small-chart .dashboard-small-chart-inner{width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:88px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:214px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:216px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:200px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-354px;width:708px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:688px}.modal-body .dashboard-large-chart{width:463px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:451px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:453px}.modal-body .dashboard-medium-chart-outer{width:331px;float:left}.modal-body .dashboard-medium-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:329px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:314px}.modal-body .dashboard-small-chart{width:221px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:211px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:86.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:211px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:216px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:200px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:508px}}@media (min-width:970px) and (max-width:1209px){div.resizecontainer{width:948px}.dashboard-large-chart{width:626px}.dashboard-large-chart .dashboard-sub-bar{width:614px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:220px;width:496px}.dashboard-sub-bar-menu{font-size:13px}.dashboard-medium-chart-outer{width:466px;float:left}.dashboard-medium-chart{width:456px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:455px}.dashboard-medium-chart .dashboard-interior-chart{height:220px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:13px;left:438px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:220px;width:456px}.dashboard-medium-chart #clusterGraphs svg text{font-size:11px}.dashboard-small-chart{width:306px}.dashboard-small-chart .dashboard-sub-bar{width:294px}.dashboard-small-chart .dashboard-small-chart-inner{width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:229px;width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:11px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:96.5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:128px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:31.17px;line-height:31.17px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:52.33px;line-height:25.17px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:294px}.dashboard-bar-chart-container{height:98px}.dashboard-bar-chart-container .dashboard-bar-chart{height:96px;width:296px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:31.33px;line-height:31.33px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:45.67px;line-height:45.67px;padding:5px 8px 10px;width:280px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:50.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-474px;width:948px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:13px;min-height:225px;width:130px}.absolut,.percentage{font-size:15px}.modal-chart-detail .modal-inner-detail{width:808px}.modal-body .dashboard-large-chart{width:623px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:611px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:493px}.modal-body .dashboard-medium-chart-outer{width:451px;float:left}.modal-body .dashboard-medium-chart{width:451px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:433px}.modal-body .dashboard-small-chart{width:301px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:289px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:291px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:126.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:291px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:296px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:280px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:11px;font-weight:400}.dashboard-subtitle-bar{font-size:15px;font-weight:300}.dashboard-figure{font-size:18px;font-weight:400}.dashboard-figurePer{font-size:16px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:11px}.dashboard-legend{height:225px;margin-top:-3px;width:120px}.dashboard-half-height-legend{font-size:11px;height:117.5px;width:60px}.application-detail-view section.info{width:748px}}@media (min-width:1210px) and (max-width:1449px){div.resizecontainer{width:1188px}.dashboard-large-chart{width:786px}.dashboard-large-chart .dashboard-sub-bar{width:774px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:255px;width:646px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:586px;float:left}.dashboard-medium-chart{width:576px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:575px}.dashboard-medium-chart .dashboard-interior-chart{height:255px;width:446px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:16px;left:555px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:255px;width:576px}.dashboard-medium-chart #clusterGraphs svg text{font-size:12px}.dashboard-small-chart{width:386px}.dashboard-small-chart .dashboard-sub-bar{width:374px}.dashboard-small-chart .dashboard-small-chart-inner{width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:264px;width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:114px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:168px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:37px;line-height:37px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:64px;line-height:31px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:374px}.dashboard-bar-chart-container{height:115.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:113.5px;width:376px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:37.17px;line-height:37.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:57.33px;line-height:57.33px;padding:5px 8px 10px;width:360px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:62.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-594px;width:1188px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:14px;min-height:260px;width:140px}.absolut,.percentage{font-size:18px}.modal-chart-detail .modal-inner-detail{width:1038px}.modal-body .dashboard-large-chart{width:783px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:771px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:643px}.modal-body .dashboard-medium-chart-outer{width:571px;float:left}.modal-body .dashboard-medium-chart{width:571px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:569px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:441px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:550px}.modal-body .dashboard-small-chart{width:381px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:369px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:371px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:166.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:371px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:376px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:360px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:18px;font-weight:300}.dashboard-figure{font-size:22px;font-weight:400}.dashboard-figurePer{font-size:20px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:13px;font-weight:400}.dashboard-legend{font-size:12px;font-weight:400;height:260px;margin-top:-3px;width:130px}.dashboard-half-height-legend{font-size:12px;height:135px;width:65px}.application-detail-view section.info{width:988px}}@media (min-width:1450px) and (max-width:1689px){div.resizecontainer{width:1428px}.dashboard-large-chart{width:946px}.dashboard-large-chart .dashboard-sub-bar{width:934px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:796px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:706px;float:left}.dashboard-medium-chart{width:696px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:695px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:556px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:18px;left:673px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:696px}.dashboard-medium-chart #clusterGraphs svg text{font-size:13px}.dashboard-small-chart{width:466px}.dashboard-small-chart .dashboard-sub-bar{width:454px}.dashboard-small-chart .dashboard-small-chart-inner{width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:208px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:454px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:456px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:440px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-714px;width:1428px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:15px;min-height:290px;width:150px}.absolut,.percentage{font-size:20px}.modal-chart-detail .modal-inner-detail{width:1268px}.modal-body .dashboard-large-chart{width:943px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:931px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:793px}.modal-body .dashboard-medium-chart-outer{width:691px;float:left}.modal-body .dashboard-medium-chart{width:691px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:551px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:668px}.modal-body .dashboard-small-chart{width:461px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:451px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:206.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:451px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:456px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:440px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:20px;font-weight:300}.dashboard-figure{font-size:26px;font-weight:400}.dashboard-figurePer{font-size:24px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:13px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:13px;height:150px;width:70px}.application-detail-view section.info{width:1228px}}@media (min-width:1690px) and (max-width:1929px){div.resizecontainer{width:1668px}.dashboard-large-chart{width:1106px}.dashboard-large-chart .dashboard-sub-bar{width:1094px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:325px;width:936px}.dashboard-sub-bar-menu{font-size:16px}.dashboard-medium-chart-outer{width:826px;float:left}.dashboard-medium-chart{width:816px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:815px}.dashboard-medium-chart .dashboard-interior-chart{height:325px;width:656px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:22px;left:789px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:325px;width:816px}.dashboard-medium-chart #clusterGraphs svg text{font-size:14px}.dashboard-small-chart{width:546px}.dashboard-small-chart .dashboard-sub-bar{width:534px}.dashboard-small-chart .dashboard-small-chart-inner{width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:334px;width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:149px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:248px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:48.67px;line-height:48.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:87.33px;line-height:42.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:534px}.dashboard-bar-chart-container{height:150.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:148.5px;width:536px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:48.83px;line-height:48.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:80.67px;line-height:80.67px;padding:5px 8px 10px;width:520px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:85.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-834px;width:1668px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:16px;min-height:330px;width:170px}.absolut,.percentage{font-size:24px}.modal-chart-detail .modal-inner-detail{width:1488px}.modal-body .dashboard-large-chart{width:1103px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1091px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:933px}.modal-body .dashboard-medium-chart-outer{width:811px;float:left}.modal-body .dashboard-medium-chart{width:811px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:809px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:651px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:784px}.modal-body .dashboard-small-chart{width:541px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:529px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:531px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:246.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:531px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:536px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:520px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:14px;font-weight:400}.dashboard-subtitle-bar{font-size:24px;font-weight:300}.dashboard-figure{font-size:30px;font-weight:400}.dashboard-figurePer{font-size:28px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:14px}.dashboard-legend{height:330px;margin-top:-3px;width:160px}.dashboard-half-height-legend{font-size:14px;height:170px;width:80px}.application-detail-view section.info{width:1468px}}@media (min-width:1930px) and (max-width:2169px){div.resizecontainer{width:1908px}.dashboard-large-chart{width:1266px}.dashboard-large-chart .dashboard-sub-bar{width:1254px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:385px;width:1086px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:946px;float:left}.dashboard-medium-chart{width:936px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:935px}.dashboard-medium-chart .dashboard-interior-chart{height:385px;width:766px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:26px;left:905px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:385px;width:936px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:626px}.dashboard-small-chart .dashboard-sub-bar{width:614px}.dashboard-small-chart .dashboard-small-chart-inner{width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:394px;width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:179px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:288px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:58.67px;line-height:58.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:107.33px;line-height:52.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:614px}.dashboard-bar-chart-container{height:180.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:178.5px;width:616px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:58.83px;line-height:58.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:100.67px;line-height:100.67px;padding:5px 8px 10px;width:600px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:105.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-954px;width:1908px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:390px;width:180px}.absolut,.percentage{font-size:28px}.modal-chart-detail .modal-inner-detail{width:1718px}.modal-body .dashboard-large-chart{width:1263px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1251px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1083px}.modal-body .dashboard-medium-chart-outer{width:931px;float:left}.modal-body .dashboard-medium-chart{width:931px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:929px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:761px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:900px}.modal-body .dashboard-small-chart{width:621px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:609px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:611px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:286.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:611px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:616px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:600px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:28px;font-weight:300}.dashboard-figure{font-size:34px;font-weight:400}.dashboard-figurePer{font-size:32px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:14px;font-weight:400}.dashboard-legend{font-size:15px;font-weight:400;height:390px;margin-top:-3px;width:170px}.dashboard-half-height-legend{font-size:15px;height:200px;width:85px}.application-detail-view section.info{width:1708px}}@media (min-width:2170px) and (max-width:2409px){div.resizecontainer{width:2148px}.dashboard-large-chart{width:1426px}.dashboard-large-chart .dashboard-sub-bar{width:1414px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1276px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1066px;float:left}.dashboard-medium-chart{width:1056px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1055px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:916px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1031px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1056px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:706px}.dashboard-small-chart .dashboard-sub-bar{width:694px}.dashboard-small-chart .dashboard-small-chart-inner{width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:328px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:694px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:696px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:680px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1074px;width:2148px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:1988px}.modal-body .dashboard-large-chart{width:1423px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1411px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1273px}.modal-body .dashboard-medium-chart-outer{width:1051px;float:left}.modal-body .dashboard-medium-chart{width:1051px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1049px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:911px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1026px}.modal-body .dashboard-small-chart{width:701px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:691px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:326.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:691px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:696px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:680px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:1948px}}@media (min-width:2410px) and (max-width:2649px){div.resizecontainer{width:2388px}.dashboard-large-chart{width:1586px}.dashboard-large-chart .dashboard-sub-bar{width:1574px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1436px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1186px;float:left}.dashboard-medium-chart{width:1176px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1175px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1036px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1151px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1176px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:786px}.dashboard-small-chart .dashboard-sub-bar{width:774px}.dashboard-small-chart .dashboard-small-chart-inner{width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:368px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:774px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:776px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:760px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1194px;width:2388px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2228px}.modal-body .dashboard-large-chart{width:1583px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1571px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1433px}.modal-body .dashboard-medium-chart-outer{width:1171px;float:left}.modal-body .dashboard-medium-chart{width:1171px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1169px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1031px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1146px}.modal-body .dashboard-small-chart{width:781px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:769px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:771px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:366.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:771px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:776px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:760px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2188px}}@media (min-width:2650px) and (max-width:2889px){div.resizecontainer{width:2628px}.dashboard-large-chart{width:1746px}.dashboard-large-chart .dashboard-sub-bar{width:1734px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1596px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1306px;float:left}.dashboard-medium-chart{width:1296px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1295px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1156px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1271px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1296px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:866px}.dashboard-small-chart .dashboard-sub-bar{width:854px}.dashboard-small-chart .dashboard-small-chart-inner{width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:408px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:854px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:856px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:840px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1314px;width:2628px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2468px}.modal-body .dashboard-large-chart{width:1743px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1731px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1593px}.modal-body .dashboard-medium-chart-outer{width:1291px;float:left}.modal-body .dashboard-medium-chart{width:1291px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1289px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1151px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1266px}.modal-body .dashboard-small-chart{width:861px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:849px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:851px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:406.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:851px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:856px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:840px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2428px}}div.centralRow{margin-top:40px;margin-bottom:40px}div.centralContent{background-color:transparent;height:100%;margin-left:-5px;margin-right:-5px;min-height:80px;padding:5px;width:100%}.contentDiv{list-style:none;padding:13px 0 0}.contentDiv li{background-color:rgba(0,0,0,.05)}.contentDiv a.add{display:block;font-weight:400;padding:40px 0;text-align:left}.contentDiv .icon{padding-left:5px;padding-right:5px;padding-top:10px}.contentDiv:after{clear:both}.contentDiv:after,.contentDiv:before{content:'';display:table;line-height:0} \ No newline at end of file + */@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome/fontawesome-webfont.eot?v=4.3.0);src:url(../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.3.0) format('embedded-opentype'),url(../fonts/fontawesome/fontawesome-webfont.woff2?v=4.3.0) format('woff2'),url(../fonts/fontawesome/fontawesome-webfont.woff?v=4.3.0) format('woff'),url(../fonts/fontawesome/fontawesome-webfont.ttf?v=4.3.0) format('truetype'),url(../fonts/fontawesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular) format('svg');font-weight:400;font-style:normal}.fa{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0,0)}.modal-body,button{font-family:'Open Sans',sans-serif!important}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857em}.fa-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em}.fa-li.fa-lg{left:-1.8571428571em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.pull-right{float:right}.contentDiv li,.dashboard-bar-chart-container,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage,.dashboard-half-height-legend,.dashboard-large-chart,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-legend,.dashboard-medium-chart,.dashboard-medium-chart .dashboard-interior-chart,.dashboard-small-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart,.dashboard-sub-bar,.dashboard-sub-bar .dashboard-sub-bar-title,.dashboard-tendency-container,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar,.dashboard-title-bar .dashboard-half-title-bar,.machineClass,.modal-chart-detail,.modal-chart-detail .modal-body,.modal-chart-detail .modal-dashboard-legend,.modal-chart-detail .modal-inner-detail,.pull-left,.scenarioMachine,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.add-Icon,div .tile,div .tile a span.add-Icon,div.centralContent,div.dropdownInner ul,div.footer-center,div.footer-left,div.footer-left p,div.navlogo,ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.navlist li,ul.script-dropdown-menu,ul.user-dropdown-menu{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before,.fa-genderless:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.dashboard-sub-bar-menu,.search-field,div .bigtile div.iconSet span,div .tile div.iconSet span,div.footer-right,div.footer-right p,div.headerBar>div.headerButtonBar,div.navmenu,ul.headerButtonList li{float:right}.dashboard-bar-chart-container .dashboard-bar-chart:after,.dashboard-medium-chart .dashboard-medium-chart-inner:after,.dashboard-medium-chart .dashboard-medium-chart-menu:after,.dashboard-row:after,.dashboard-sub-bar:after,.dashboard-tendency-container .dashboard-tendency-chart:after,.detail-chart:after,.machineClass:after,.scenarioSingleMachine:after,div.headerBar>div.headerButtonBar:after,div.resizecontainer:after,div.tileList:after{clear:both;content:'.';display:block;font-size:0;height:0;visibility:hidden}.addButton,.arangoicon,.clusterDownBtn button,.contentDiv .icon,.deleteButton,.gv-search-submit-icon,.icon-info-sign,.scenarioImage,.search-submit-icon,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.icon,div .bigtile a svg,div .bigtile div.iconSet span,div .tile a span.icon,div .tile a svg,div .tile div.iconSet span,div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label,div.toolbox div.gv_action_button,ul.script-dropdown-menu li.dropdown-item{cursor:pointer}footer.footer,nav.navbar{background-color:rgba(245,248,240,.95);color:#fff;left:0;position:fixed;right:0;width:100%;z-index:1000}.button-danger{background-color:#da4f49}.button-danger:focus,.button-danger:hover{background-color:#be342e}.deleteButton,a.danger.coordinator,a.danger.dbserver{color:#da4f49}.deleteButton:focus,.deleteButton:hover,a.danger.coordinator:focus,a.danger.coordinator:hover,a.danger.dbserver:focus,a.danger.dbserver:hover{color:#be342e}a.danger.coordinator,a.danger.dbserver{fill:#da4f49}a.danger.coordinator:focus,a.danger.coordinator:hover,a.danger.dbserver:focus,a.danger.dbserver:hover{fill:#be342e}.button-success{background-color:#8aa051}.button-success:focus,.button-success:hover{background-color:#788f3d}.addButton,a.success.coordinator,a.success.dbserver{color:#8aa051}.addButton:focus,.addButton:hover,a.success.coordinator:focus,a.success.coordinator:hover,a.success.dbserver:focus,a.success.dbserver:hover{color:#788f3d}a.success.coordinator,a.success.dbserver{fill:#8aa051}a.success.coordinator:focus,a.success.coordinator:hover,a.success.dbserver:focus,a.success.dbserver:hover{fill:#788f3d}.button-warning{background-color:#faa732}.button-warning:focus,.button-warning:hover{background-color:#f89406}a.warning.coordinator,a.warning.dbserver{color:#faa732;fill:#faa732}a.warning.coordinator:focus,a.warning.coordinator:hover,a.warning.dbserver:focus,a.warning.dbserver:hover{color:#f89406;fill:#f89406}.button-close,.button-neutral{background-color:#8f8d8c}.button-close:focus,.button-close:hover,.button-neutral:focus,.button-neutral:hover{background-color:#736b68}.dashboard-sub-bar-menu{color:#8f8d8c}.dashboard-sub-bar-menu:focus,.dashboard-sub-bar-menu:hover{color:#736b68}.button-primary{background-color:#564e4a}.button-primary:focus,.button-primary:hover{background-color:#3a322e}.button-header,a.button-gui,a.headerButton{background-color:#fff;border:1px solid #fff;color:#555}.button-header:focus,.button-header:hover,a.button-gui:focus,a.button-gui:hover,a.headerButton:focus,a.headerButton:hover{border:1px solid #8aa051;background-color:#8aa051;color:#fff}.button-notification{background-color:#faa020}.button-notification:focus,.button-notification:hover{background-color:#f87c0f}.button-inactive,.button-inactive:focus,.button-inactive:hover,[class*=' button-']:disabled,[class*=' button-']:focus:disabled,[class*=' button-']:hover:disabled,[class^=button-]:disabled,[class^=button-]:focus:disabled,[class^=button-]:hover:disabled{background-color:#d3d3d3}a.headerButton.disabled,a.headerButton.disabled:focus,a.headerButton.disabled:hover,a.inactive.coordinator,a.inactive.coordinator:focus,a.inactive.coordinator:hover,a.inactive.dbserver,a.inactive.dbserver:focus,a.inactive.dbserver:hover{color:#d3d3d3}a.inactive.coordinator,a.inactive.coordinator:focus,a.inactive.coordinator:hover,a.inactive.dbserver,a.inactive.dbserver:focus,a.inactive.dbserver:hover{fill:#d3d3d3}ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.script-dropdown-menu,ul.user-dropdown-menu{background-color:#F5F8F0;border-color:#666;border-style:solid;border-width:1px;border-radius:3px;display:none;list-style:none;margin:5px 0 0;padding:5px 0;position:absolute;right:0;top:80%;z-index:1000}a.tab,ul.script-dropdown-menu li.dropdown-item a{display:block}ul.gv-dropdown-menu li,ul.link-dropdown-menu li,ul.script-dropdown-menu li,ul.user-dropdown-menu li{line-height:23px;white-space:nowrap;width:100%}ul.gv-dropdown-menu li.dropdown-header,ul.link-dropdown-menu li.dropdown-header,ul.script-dropdown-menu li.dropdown-header,ul.user-dropdown-menu li.dropdown-header{color:#999;font-size:15px;font-weight:600;font-variant:small-caps;padding:0 15px}ul.gv-dropdown-menu li.dropdown-header:hover,ul.link-dropdown-menu li.dropdown-header:hover,ul.script-dropdown-menu li.dropdown-header:hover,ul.user-dropdown-menu li.dropdown-header:hover{cursor:default}ul.gv-dropdown-menu li.divider,ul.link-dropdown-menu li.divider,ul.script-dropdown-menu li.divider,ul.user-dropdown-menu li.divider{background-color:#666;height:1px;margin:10px 0}ul.gv-dropdown-menu a,ul.link-dropdown-menu a,ul.script-dropdown-menu a,ul.user-dropdown-menu a{color:#fff;padding:0 20px}.navbar{-webkit-font-smoothing:subpixel-antialiased}.navbar .nav li.dropdown .active>.dropdown-toggle,.navbar .nav li.dropdown .open.active>.dropdown-toggle,.navbar .nav li.dropdown .open>.dropdown-toggle{background:#788f3d}nav.navbar{padding-top:6px;height:44px;margin-bottom:3px;top:0}nav.navbar .arangodbLogo{height:auto;margin-left:-5px;margin-top:-1px;width:40%}nav.navbar .nav>.active>a{background-color:#fff;color:#000;-webkit-box-shadow:0 0 0 transparent inset;-moz-box-shadow:0 0 0 transparent inset;box-shadow:0 0 0 transparent inset}nav.navbar .nav>li>a:focus{background-color:#fff}nav.navbar .nav>li>a:hover{background-color:#000;color:#686766}ul.navlist li.dropdown-item:hover a,ul.navlist>li.active a,ul.navlist>li.active:hover a,ul.navlist>li:hover a{color:#000}div.navlogo{margin-left:5px;margin-right:-1px;padding-top:3px}ul.navlist{list-style:none}ul.navlist li{margin-left:1px}ul.navlist li.navbar-spacer{background-color:#a0a0a0;height:21px;margin-top:9px;width:1px}ul.navlist li.navbar-spacer.big{margin-left:15px;margin-right:15px}ul.navlist li.navbar-spacer.med{margin-left:5px;margin-right:5px}ul.navlist li.dropdown-item,ul.script-dropdown-menu li.dropdown-item{margin-left:0}ul.navlist li.navbar-spacer:hover{background-color:#a0a0a0}ul.navlist>li.active,ul.navlist>li.active:hover{background-color:transparent}ul.navlist li.active{font-weight:700}ul.navlist li.active .tab{border-bottom:2px solid #8aa051;padding-bottom:4px}ul.navlist li.divider,ul.navlist li.navbar-spacer{border:none}ul.navlist li.divider{background-color:rgba(0,0,0,.2)}ul.navlist li{border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent}ul.navlist li.dropdown:hover{border-top:1px solid rgba(0,0,0,.2);border-left:1px solid rgba(0,0,0,.2);border-right:1px solid rgba(0,0,0,.2);border-bottom-left-radius:0;border-bottom-right-radius:0}ul.navlist li.dropdown-item:hover,ul.navlist>li:hover{background-color:#fff;border-radius:3px}ul.navlist li.dropdown-item a{display:block;border-bottom:0}ul.navlist li.dropdown-item a:hover{color:#686766;background-color:#dee9cf}a.tab{color:#686766;font-size:12pt;font-weight:100;padding:9px 10px 10px}a.tab.userImg{padding-bottom:5px}.dropdown-item a{border-bottom:0!important;font-weight:300}ul.link-dropdown-menu{background-color:#fff;z-index:-10;margin-top:7px;margin-right:-1px;border:1px solid rgba(0,0,0,.2);border-top-right-radius:0}ul.script-dropdown-menu li.dropdown-item a:hover{color:#fff}ul.script-dropdown-menu li.dropdown-item:hover{background-color:#8aa051}ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:rgba(0,0,0,.7);border:1px solid #c2c2c2;margin-right:-20px;margin-top:6px}ul.gv-dropdown-menu:after{border-bottom-color:#fff}ul.gv-dropdown-menu li:hover{background-color:#fff;background-image:none}ul.gv-dropdown-menu li a{padding:0}ul.gv-dropdown-menu li a label{color:#fff;padding-left:5px}ul.gv-dropdown-menu li a:focus{background-color:#8aa051!important;background-image:none}#arangoCollectionSelect{display:none;float:right;margin-bottom:0;margin-right:15px;padding-bottom:0}.caret{border-left:5px solid transparent;border-top:5px solid #686766;border-right:5px solid transparent;content:'';display:inline-block;height:0;vertical-align:top;width:0}.applications-menu{display:block}.arango-logo{height:34px;padding:0!important}.arango-logo img{margin-left:22px}.footer{bottom:0;font-size:14px;left:0;position:fixed;right:0;z-index:1000}footer.footer{bottom:0;height:40px}footer.footer p{margin-bottom:0;padding-bottom:10px;padding-top:10px;font-weight:100;font-size:10pt}div.footer-left{background:none;color:#686766;width:45%}div.footer-left .social-icons{margin-top:5px}div.footer-left .social-icons a{width:25px;display:block;height:25px;float:left}div.footer-left .social-icons p{font-size:12pt;background:#fff;border:1px solid rgba(104,103,102,.1);border-radius:20px;height:25px;width:25px;padding:0;margin-right:10px}div.footer-left .social-icons p:hover{cursor:pointer;background:#8c8a89}div.footer-left .social-icons p:hover i{color:#fff}div.footer-left .social-icons i{color:#000;position:absolute;margin-top:4px}div.footer-left .social-icons i.fa-twitter{margin-left:-7px}div.footer-left .social-icons i.fa-envelope{margin-left:-20px}div.footer-left .social-icons i.fa-google{margin-top:6px;margin-left:-18px}div.footer-left .social-icons i.fa-stack-overflow{margin-left:-18px}div.footer-center{background:none;color:#686766;width:10%}div.footer-center i{background-color:#fff;border-radius:20px;border:1px solid rgba(104,103,102,.1);width:20px;padding:6px 3px 6px 2px}div.footer-center i:hover{color:#fff;background-color:#8c8a89}div.footer-center p{padding-top:5px}div.footer-center p:hover{cursor:pointer}[class*=' button-']:disabled,[class^=button-]:disabled,a.headerButton.disabled{cursor:not-allowed}div.footer-right{background:none;color:#686766;width:45%}div.footer-right p{color:#fff}div.footer-right i{color:#da4f49;font-size:18px}div.footer-right a{color:#686766;margin-left:5px;position:relative;top:-1px}div.footer-right .isOnline{color:#8aa051!important}.button-close,.button-danger,.button-header,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;font-size:14px;font-weight:300!important}.waitModal,a.button-gui,a.headerButton{-webkit-box-shadow:none;-moz-box-shadow:none}.button-close,.button-danger,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{border:0;color:#fff;margin-left:10px;padding:5px 16px}.button-header{margin-top:5px}.addButton{font-size:22px;margin-right:7px;margin-top:2px;position:relative}.deleteButton{font-size:22px;padding-right:3px;position:relative;top:3px}#closeBtnInfoView{margin-left:0!important}button.large-distance{margin-left:12px}button.short-distance{margin-left:6px}ul.headerButtonList{display:inline-block;margin-bottom:0;margin-left:0;padding-left:0!important}ul.headerButtonList li{display:inline}button.shutdown{margin-top:6px;padding:3px 14px}a.button-gui,a.headerButton{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;box-shadow:none;margin-left:5px;margin-right:5px}a.headerButton{margin-top:2px;position:relative}a.headerButton .fa,a.headerButton [class*=" icon_"],a.headerButton [class^=icon_]{display:block;height:23px;line-height:23px;position:static;right:0;text-align:center;top:0;width:27px}a.headerButton .icon_arangodb_arrowleft,a.headerButton .icon_arangodb_arrowright{font-weight:700}a.headerButton.activated{background-color:#788f3d;color:#fff;border:1px solid #788f3d}a.headerButton.activated:hover{background-color:#fff;color:#788f3d}div.toolbox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);margin-right:5px;margin-top:-3px;padding-top:5px;padding-bottom:5px;position:absolute}div.toolbox div.gv_action_button{background-color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;color:#000;height:50px;margin:5px;position:relative;width:50px}div.toolbox div.gv_action_button.active{background-color:#8aa051;color:#fff}div.toolbox div.gv_action_button:first-child{margin-top:0}div.toolbox div.gv_action_button:last-child{margin-bottom:0}h6.gv_button_title,h6.gv_icon_icon{left:0;margin:0;position:absolute;right:0}h6.gv_icon_icon{font-size:22px;top:6px}h6.gv_button_title{bottom:1px}button.graphViewer-icon-button{background-color:transparent;border:0;height:20px;margin-left:5px;margin-top:-2px;padding:0;width:20px}button.graphViewer-icon-button>img{height:20px;padding-bottom:10px;width:20px}button.gv_dropdown_entry{height:30px;margin:4px 4px 4px 30px;width:160px}button.gv_context_button{width:65px}.btn-icon{background-color:#383434;padding:4px}button.gv-icon-small{background-size:16px 16px;height:16px;width:16px}button.gv-icon-small.delete{background-image:url(../img/icon_delete.png)}button.gv-icon-small.add{background-image:url(../img/plus_icon.png)}button.gv-icon-btn{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;background-size:36px 36px;height:36px;width:36px}button.gv-icon-btn.active{background-color:#8aa051}button.btn-zoom:hover{background:inherit}button.btn-zoom{background:0 0;height:16px;margin:0;padding:0;position:absolute;width:16px}button.btn-zoom-top{border:0;box-shadow:none;left:13px;top:1}button.btn-zoom-left{border:0;box-shadow:none;left:0;top:13px}button.btn-zoom-bottom{border:0;box-shadow:none;left:13px;top:25px}button.btn-zoom-right{border:0;box-shadow:none;right:0;top:13px}button.gv-zoom-btn{background-size:14px 14px;height:14px;vertical-align:baseline;width:14px}button.gv-zoom-btn.pan-right{background-image:url(../img/gv_arrow_right.png)}button.gv-zoom-btn.pan-left{background-image:url(../img/gv_arrow_left.png)}button.gv-zoom-btn.pan-top{background-image:url(../img/gv_arrow_top.png)}button.gv-zoom-btn.pan-bottom{background-image:url(../img/gv_arrow_bottom.png)}a.pagination-button,ul.arango-pagination a{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.badge,.btn,.label{text-shadow:none!important}.navbar-inner,.thumbnail{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0}.modal-body th.actionCell>button{margin-top:-12px}.btn-old-padding{padding-bottom:4px!important;padding-top:4px!important}button.btn-overview,button.btn-server{margin:5px}button.btn-server{width:120px}a.button-gui{height:auto;margin-bottom:0;margin-top:0;padding-top:1px;padding-bottom:1px;position:absolute;right:2px;text-decoration:none!important;top:2px;width:auto}a.button-gui.button-gui-disabled{display:none}.clusterDownBtn{padding-bottom:10px;padding-top:10px}.clusterDownBtn button{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#f1f1f1;border:1px solid rgba(0,0,0,.1875);color:#333;font-size:20px;font-weight:300;margin:0;padding:12px 18px;text-decoration:none!important;width:250px}.clusterDownBtn button:hover{background-color:#e8e8e8;color:#4a6c30;-webkit-transition-delay:0;-webkit-transition-duration:.2s;-webkit-transition-property:all;-webkit-transition-timing-function:ease-in}.clusterDownBtn button.green{background-color:#617e2b;color:#fff}.clusterDownBtn button.green:hover{background-color:#8ba142}.bottomButtonBar{border-top:1px solid rgba(104,103,102,.1);background-color:#fff;height:30px;padding:10px}.clusterInfoIcon{float:left;padding-left:5px;padding-top:2px}.waitModal.icon{font-size:100px;height:120px}.waitModal.message{font-size:20px}.icon_arangodb_info{color:#333;font-size:23px}li a [class*=" icon_arangodb"],li a [class^=icon_arangodb]{font-size:18px;position:absolute;right:4px;top:2px}.fa-minus-circle{color:#da4f49;font-size:14pt}.fa-minus-circle:hover{cursor:pointer}div.headerDropdown{background-color:#fff;border:1px solid rgba(104,103,102,.1);border-radius:3px;display:none;padding:10px;position:relative;width:auto}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox{display:none}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.dropdown-title{margin-bottom:10px}div.dropdownInner{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;min-height:125px;position:relative;width:auto}div.dropdownInner>.nav-header{color:#000;font-size:13px;font-weight:400}div.dropdownInner>label{color:#000;font-weight:300}div.dropdownInner ul{border-left:1px solid #c2c2c2;display:inline;margin-top:10px;min-height:105px;width:238px}div.dropdownInner ul:first-of-type{border:0}div.dropdownInner ul label{color:#000;padding-left:35px}div.dropdownInner ul li .fa{margin-right:5px;color:#8c8a89}div.dropdownInner ul li .fa.fa-check-circle-o,div.dropdownInner ul li .fa.fa-dot-circle-o{color:#8aa051}div.queryline{color:#000;height:35px}div.queryline .textDiv{margin-right:10px;margin-top:4px}div.queryline input,div.queryline select{margin-bottom:5px}div.queryline.querylineAdd span{color:#fff;padding-left:10px;position:relative;top:-21px}div.queryline .removeFilterItem i{margin-left:5px!important;margin-top:0!important}div.queryline div.searchByAttribute{margin-left:6px;margin-right:6px;position:relative}div.queryline div.searchByAttribute>ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:#fff;color:#fff;display:none;left:0;position:absolute;top:20px;width:247px}div.dropdownImport{background-color:#fff;border-radius:3px;display:none;position:relative;padding:10px 10px 5px}div.dropdownImport input{line-height:0;margin-bottom:-15px;margin-top:5px}select.filterSelect{margin-left:10px;margin-right:10px;width:100px}#filterHeader button{float:right;margin-left:10px!important;margin-top:1px}div.input-append button.gv_example_toggle{-moz-border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;background-color:#8f8d8c;height:30px;margin-left:-1px;padding-left:10px;padding-right:10px;padding-top:12px;vertical-align:top}div.input-append button.gv_example_toggle:hover{background-color:#8aa051}.searchEqualsLabel{margin-left:6px;margin-right:6px}img.gv-throbber{background-image:url(../img/swagger/throbber.gif)}span.gv_caret{margin-top:2px!important}input.search-input{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:14px;line-height:18px;margin-top:6px;margin-right:-1px;width:120px;outline:transparent 0}input.search-input:focus{border-color:#999;box-shadow:none;outline:transparent 0}.search-field{margin-left:10px}.search-field .fa-search{color:#D2D2D2;font-size:13pt;opacity:.5;position:absolute;right:7px;top:9px}.search-field .fa-search:hover{opacity:1;cursor:pointer}.gv-search-submit-icon,.search-submit-icon{background-image:url(../img/enter_icon.png);background-size:14px;height:14px;margin-left:-18px;opacity:.2;position:absolute;width:14px}.gv-search-submit-icon:hover,.search-submit-icon:hover{opacity:.8}.search-submit-icon{margin-top:11px}.gv-search-submit-icon{margin-top:6px}div.headerBar{background-color:#fff;border-radius:3px;border:1px solid rgba(140,138,137,.25);color:#fff;font-size:16px;height:36px;margin-top:15px;margin-bottom:5px;padding-left:5px;padding-right:5px;position:relative}div.headerBar .infoField{background-color:#f5f8f0;border:1px solid #d3d3d3;border-radius:3px!important;color:#000;float:right;font-size:12px;margin-top:7px;margin-right:7px;padding-left:5px;padding-right:5px}div.headerBar .infoField .fa{cursor:pointer;margin-left:5px}div.headerBar input[type=checkbox].css-checkbox{display:none}div.headerBar input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;cursor:pointer;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerBar input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.headerBar input[type=radio]{display:none}div.headerBar input[type=radio]+label span{background:url(../img/check_radio_sheet.png) -38px top no-repeat;cursor:pointer;display:inline-block;height:19px;margin:-1px 4px 0 0;vertical-align:middle;width:19px}#transparentHeader input[type=checkbox].css-checkbox,.lineGraph .many .dygraph-legend>span,.modal-delete-confirmation{display:none}div.headerBar input[type=radio]:checked+label span{background:url(../img/check_radio_sheet.png) -57px top no-repeat}div.headerBar a.arangoHeader{color:#000;font-size:13pt;font-weight:100;left:0;position:relative;top:7px}div.headerBar>div.headerButtonBar{margin:4px 0;margin-bottom:0!important}.breadcrumb{background:0 0;border:0;border-radius:0;padding:7px 0}.breadcrumb .disabledBread{font-size:13pt;font-weight:100;color:#666;float:left;padding-right:5px;position:relative}.breadcrumb .disabledBread i{font-size:10pt;margin-left:10px}.breadcrumb .activeBread{font-size:13pt;font-weight:100;color:#7da817;float:left}.arangoHeader{font-weight:400}.checkboxLabel{margin-top:4px;padding-left:0}.css-label{background-image:url(../img/dark-check-green.png)}.css-label-round{background-image:url(../img/dark-check-green-round.png)}.modal-dashboard-header,.modal-header{background-color:#fff;border-radius:3px;border-bottom:0!important;margin-top:5px;padding-left:5px;padding-right:10px;padding-top:4px}.modal-dashboard-header .arangoHeader,.modal-header .arangoHeader{color:#000;font-size:13pt;font-weight:100;left:5px;position:relative;top:2px}.modal-dashboard-header a,.modal-header a{top:2px!important}.modal-dashboard-header .close,.modal-header .close{color:#fff;font-weight:300;margin-top:2px;opacity:.5}.modal-dashboard-header .close:hover,.modal-header .close:hover{opacity:1}.modal-body{color:#736b68;font-size:14px;font-weight:300}.modal-body .select2-choices{border-radius:3px;border:1px solid #aaa;box-shadow:none;-webkit-box-shadow:none;background-image:none!important}.modal-body .select2-choices input{box-shadow:none;-webkit-box-shadow:none;outline:transparent!important}.modal-body .select2-choices input:active{box-shadow:none;-webkit-box-shadow:none;outline:0!important}.modal-body .select2-choices .select2-search-choice{margin:5px 0 3px 5px!important}.modal-body .select2-choices li{color:#000;background-color:#fff!important;background-image:none!important}.modal-body .select2-choices li a{margin-top:-1px;margin-left:1px}.modal-body .select2-choices:active{outline:transparent!important;border:1px solid #aaa;box-shadow:none!important;-webkit-box-shadow:none!important}.modal-body .nav-tabs{margin-top:15px}.modal-body input,.modal-body select,.modal-body textarea{margin-top:10px;border-radius:3px;box-shadow:none}.modal-body input[type=checkbox]{margin-bottom:10px}.modal-body input[type=text].invalid-input{border-color:rgba(234,23,23,.6)}.modal-body input[type=text].invalid-input:focus{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6)}.modal-body input[type=file]{line-height:17px}.modal-body th.actionCell{width:30px}.modal-body th.keyCell{width:170px}.modal-body th.keyCell input{width:150px}.modal-body th .valueCell{width:300px}.modal-body th .valueCell input{width:290px}.modal-body th div.select2-container{margin-bottom:10px;margin-top:10px}.modal-body .icon-info-sign{margin-bottom:10px;margin-left:10px;opacity:.7;padding-bottom:5px}.modal-body .icon-info-sign:hover{opacity:1}.modal-body .icon_arangodb_info{color:#736b68;font-size:18px;margin-top:-10px;position:absolute;right:12px}.modal-body .icon_arangodb_info:hover{color:#000}.modal-body .collapse{margin-right:-14px;position:relative}.modal-body .accordion-inner{border-top:0;margin-left:0;padding-left:0;padding-right:0}.modal-body .accordion-toggle span b.caret{border-top-color:#000;float:right;margin-top:5px}.modal-body .accordion-toggle.collapsed span b.caret{-ms-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.modal-body input{width:384px}.modal-body select{width:398px}.modal-body .collectionTh{height:55px}.modal-body .tab-content{min-height:200px}.modal-body .tab-content .tab-pane{border-top:1px solid #666!important;margin-left:0!important;padding-top:10px}.modal-body .tab-content #appstore{max-height:290px}.modal-body .errorMessage{background-color:#fff;color:red;font-size:9pt;font-weight:400;margin-bottom:5px;margin-top:-9px;position:absolute}.modal-body .nav img.tab-icon{margin-right:5px;margin-top:-3px;width:20px}.modal-text{font-weight:300;padding-bottom:3px;padding-top:3px}.modal-backdrop,.modal-backdrop.fade.in{opacity:.4}.modal{box-shadow:none;border:0!important;border-radius:3px!important}.modal .fade.in{top:12.1%!important}.modal table tr:last-child{border-bottom:0!important}.waitModal{box-shadow:none;background:0 0;border:0;color:#fff}.waitModalBackdrop{opacity:.7!important}.modalTooltips span{color:#736b68;font-size:20px}.modalTooltips span:hover{color:#000}pre.gv-object-view{text-align:left;white-space:pre}.capitalize{text-transform:capitalize}.modal-footer{border-top:0!important;padding-right:17px}.modal-header{margin-left:5px;margin-right:5px}.modal-dashboard-header{margin-left:0;margin-right:0;padding-bottom:9px}.modal table tr,.thBorderBottom{border-bottom:1px solid #f7f3f2!important}.modal-delete-confirmation button{margin-right:10px;margin-top:-4px}.modal-delete-confirmation button .modal-confirm-delete{margin-right:-18px}.createModalDialog table{width:100%}.createModalDialog .collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.createModalDialog .figures1,.createModalDialog .figures2{margin-bottom:20px;width:255px}.createModalDialog .figures2{margin-left:20px!important}.createModalDialog .figures3{margin-bottom:0;width:100%}.foxx-store-row .foxx-name{font-weight:700}.foxx-store-row .foxx-author{font-size:10pt;font-weight:300;margin-top:-4px}.foxx-store-row .foxx-version{font-weight:400}#new-app-mount{margin-right:24px;width:360px}#control_event_edge_delete_modal,#control_event_edge_edit_modal,#control_event_new_node_modal,#control_event_node_delete_modal,#control_event_node_edit_modal{margin-left:-320px;width:640px}.scenarioImage{height:70%;width:auto}svg.clusterChart{height:auto;margin:auto;width:auto}.lineGraph{position:absolute}.lineGraph .few .dygraph-legend>span.highlight{border:1px solid grey}.lineGraph .many .dygraph-legend>span.highlight{display:inline}a.coordinator,a.dbserver{color:#000;height:50px;position:absolute;top:10px;width:50px}a.coordinator h6.serverName,a.dbserver h6.serverName{bottom:0;font-size:11px;left:0;margin:0;position:absolute;right:0}a.coordinator.single{left:90px}a.coordinator.double{left:60px}a.dbserver.single{right:90px}a.dbserver.double{right:60px}.cluster-connection-check-success{color:#8aa051;margin-left:20px}.cluster-connection-check-fail{color:#da4f49;margin-left:20px}.cluster-unreachable-info{margin:0 auto;max-width:320px;padding-top:17px;text-align:center}.machineClass{background-color:#e1e1e1;margin-left:31px;margin-right:31px;padding:10px}.scenarioBox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:rgba(0,0,0,.075);border:1px solid rgba(0,0,0,.19);height:65px;left:10px;margin-top:30px;position:absolute;right:10px;width:auto}.scenarioMachine,div .bigtile,div .tile{background-color:#fff;position:relative}.scenarioBox.bottomBox{bottom:30px}.scenarioBoxHeader{border-bottom:1px solid rgba(0,0,0,.19);height:18px;line-height:18px;margin-top:0;padding-bottom:0;text-align:center;width:auto}.scenarioBoxText{font-size:13px;font-weight:400;margin-top:17px;text-align:center;width:auto}.collectionName,div .bigtile .badge-success,div .tile .badge-success{font-weight:300}.scenarioMachine{-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;border:1px solid rgba(0,0,0,.19);height:257px;margin-right:17px;width:110px}.scenarioMachine:last-child{margin-right:0}.scenarioSingleMachine{-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background-color:#fff;border:1px solid rgba(0,0,0,.19)}.scenarioSingleMachine .scenarioMachine{border:1px solid transparent;height:238px}.bigtile.informationtile{cursor:auto}.informationText{background:#fff;font-size:12px;margin:10px;padding:5px;text-align:left}div.tileList{margin-left:-6px;margin-right:-6px}div.tileList legend{padding-left:5px}div .bigtile,div .tile{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border-radius:3px;border:1px solid #F5F8F0;font-size:14px;list-style:none;margin-bottom:13px;margin-left:6px;margin-right:6px;text-align:center}div .bigtile .warning-icons,div .tile .warning-icons{background-color:#da4f49;color:#fff;font-size:11px;height:17px;left:0;line-height:13px;padding-left:9px;padding-right:4px;position:absolute;top:0}div .bigtile a svg.icon,div .bigtile img.icon,div .tile a svg.icon,div .tile img.icon{height:50px;width:50px}div .bigtile .warning-icons:before,div .tile .warning-icons:before{border-right:17px solid transparent;border-top:17px solid #da4f49;content:'';position:absolute;right:-17px}div .bigtile .warning-icons .fa+.fa,div .tile .warning-icons .fa+.fa{margin-left:1px}div .bigtile .warning-icons .fa:before,div .tile .warning-icons .fa:before{font-size:8px}div .bigtile .collection-type-icon,div .tile .collection-type-icon{color:#666;font-size:30pt;margin-top:12pt}div .bigtile .collection-type-icon:hover,div .tile .collection-type-icon:hover{cursor:pointer}div .bigtile a span.add-Icon,div .tile a span.add-Icon{font-size:22px;margin-left:22px;margin-right:10px;margin-top:-5px;position:relative;right:4px;top:2px}div .bigtile a span.icon,div .tile a span.icon{font-size:50px}div .bigtile svg.tile-icon-svg,div .tile svg.tile-icon-svg{cursor:pointer;fill:#686766;height:50px;margin-left:90px;margin-top:10px;width:50px}div .bigtile span.tile-icon,div .tile span.tile-icon{color:#686766;font-size:50px;line-height:1.2}div .bigtile span.icon_arangodb_edge5-2,div .tile span.icon_arangodb_edge5-2{position:relative;top:15px;-webkit-transform:rotate(80deg);-moz-transform:rotate(80deg);-o-transform:rotate(80deg);display:inline-block}div .bigtile h5,div .tile h5{background:#8c8a89;color:#fff;font-size:12px;margin:0;overflow:hidden!important;padding:4px 8px;text-overflow:ellipsis!important;white-space:nowrap!important}div .bigtile div.tileSelects,div .tile div.tileSelects{margin-left:40px;position:relative;z-index:9999}div .bigtile div.tileSelects select,div .tile div.tileSelects select{float:right;height:20px;margin-right:5px;margin-top:16px;width:70px}div .bigtile div.fullBorderBox,div .tile div.fullBorderBox{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:100%;position:absolute;width:100%}div .bigtile div.borderBox,div .tile div.borderBox{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:75px;position:absolute;width:224px}div .bigtile div.iconSet,div .tile div.iconSet{position:absolute;right:5px;top:5px}div .bigtile div.iconSet span,div .tile div.iconSet span{border-radius:3px;color:#000;font-size:18px;padding:2px 3px}div .bigtile div.iconSet span:hover,div .tile div.iconSet span:hover{background-color:#8aa051;color:#fff}div .bigtile div.iconSet span.disabled,div .tile div.iconSet span.disabled{cursor:default;opacity:.2}div .bigtile div.iconSet span.disabled:hover,div .tile div.iconSet span.disabled:hover{background-color:#fff;color:#000;cursor:default;opacity:.2}div .bigtile .unloaded div,div .tile .unloaded div{border-bottom:16px solid #ff8f35}div .bigtile .deleted div,div .tile .deleted div{border-bottom:16px solid #700}div .bigtile div.tileBadge,div .tile div.tileBadge{bottom:29px;font-size:11px;font-weight:300;position:absolute;right:0}div .bigtile div.tileBadge button,div .tile div.tileBadge button{margin-left:0;margin-right:5px}div .bigtile div.tileBadge span,div .tile div.tileBadge span{display:inline-block;line-height:15px}div .bigtile div.tileBadge span div.corneredBadge,div .tile div.tileBadge span div.corneredBadge{border-left:5px solid transparent;border-bottom-style:solid;border-bottom-width:17px;border-radius:3px;margin-bottom:4px;margin-right:5px;color:#fff;height:0;padding-left:1px;padding-right:6px}div .bigtile div.tileBadge span div.corneredBadge.loading,div .tile div.tileBadge span div.corneredBadge.loading{border-bottom-color:#ff8f35}div .bigtile div.tileBadge span div.corneredBadge.loaded,div .tile div.tileBadge span div.corneredBadge.loaded{border-bottom-color:#8aa051}div .bigtile div.tileBadge span div.corneredBadge.development,div .bigtile div.tileBadge span div.corneredBadge.unloaded,div .tile div.tileBadge span div.corneredBadge.development,div .tile div.tileBadge span div.corneredBadge.unloaded{border-bottom-color:#ff8f35}div .tile{height:100px;width:226px}div .tile-graph .tile-icon:hover{cursor:pointer}div .bigtile{height:309px;width:452px}div .bigtile div.shardContainer{font-size:30px}div .bigtile div.shardContainer span{padding:2px}.collectionName{bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px;left:0;position:absolute;right:0;text-align:left}.dashboard-bar-chart-container,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-medium-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-tendency-container{border-top-left-radius:3px;border-top-right-radius:3px}.dashboard-bar-chart-container:first-child,.dashboard-large-chart .dashboard-large-chart-inner:first-child,.dashboard-medium-chart:first-child,.dashboard-small-chart .dashboard-small-chart-inner:first-child,.dashboard-tendency-container:first-child{margin-left:0}.dashboard-bar-chart-container,.dashboard-large-chart,.dashboard-medium-chart,.dashboard-small-chart,.dashboard-tendency-container{margin-bottom:10px;position:relative}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-medium-chart .dashboard-interior-chart{margin-bottom:0}.dashboard-sub-bar-menu{cursor:pointer;position:absolute;right:9px;top:6px}.dashboard-large-chart{margin-right:12px;border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-large-chart .dashboard-large-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:12px;padding-bottom:10px}.dashboard-small-chart{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-small-chart .dashboard-small-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:10px;padding-top:5px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart-outer:first-child{margin-right:10px}.dashboard-medium-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:10px;margin-bottom:0}.dashboard-medium-chart:first-child{margin-right:12px}.dashboard-medium-chart .dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart .dashboard-medium-chart-menu{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:0 solid rgba(0,0,0,.3);color:rgba(0,0,0,.3);cursor:pointer;padding:0 4px;position:absolute;z-index:1000}.dashboard-medium-chart .dashboard-medium-chart-menu:hover{color:rgba(0,0,0,.7)}.dashboard-medium-chart .dashboard-medium-chart-inner{padding-bottom:10px}.dashboard-medium-chart .clusterChart .slice path{fill-opacity:.15;stroke-opacity:1;stroke-width:1.5px}.dashboard-tendency-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-tendency-container .dashboard-tendency-chart{background-color:#fff;border-top-left-radius:3px;border-top-right-radius:3px;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{background-color:#fff;margin-top:5px;padding:0 8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency:first-child{border-right:1px solid #e1e1e1}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar{border-bottom:1px solid #e1e1e1;text-align:right}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure{text-align:center}.dashboard-bar-chart-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-bar-chart-container .dashboard-bar-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;border-top-left-radius:3px;border-top-right-radius:3px;padding-bottom:5px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{margin-top:5px;padding:0 8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{font-weight:400}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{text-align:right}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-legend .dashboard-legend-inner{padding:0 5px 5px 0}.dashboard-sub-bar{background-color:#686766;border-bottom-left-radius:3px;border-bottom-right-radius:3px;color:#fff;height:24px;line-height:24px;margin:0;padding:0 6px}.dashboard-spacer{margin:0 12px}.headerBar.dashboard-headerbar{margin:15px 0 10px}.modal-chart-detail .modal-dashboard-legend .dashboard-legend-inner{padding-left:20px}.dashboard-half-height-legend .dashboard-legend-inner{padding-top:20px}.dashboard-title-bar{background-color:#686766;color:#fff;font-size:14.5px;font-weight:400;height:30px;line-height:30px;padding:0 5px 0 10px}.dashboard-title-bar .dashboard-half-title-bar{border-left:1px solid #000;margin-left:-1px;width:50%}.dashboard-title-bar .dashboard-half-title-bar:first-child{border-left:0;margin-left:0}.dashboard-row{margin-bottom:0;margin-left:0;margin-right:0}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{color:#666}div.resizecontainer{margin:0 auto}@media (max-width:798px){#arangoCollectionUl{display:none}#collectionsDropdown ul{width:auto!important}#arangoCollectionSelect{display:inline-block}}@media (min-width:799px) and (max-width:1041px){#arangoCollectionUl a{font-size:12px;padding:10px 5px}}@media (min-width:1042px) and (max-width:1284px){#arangoCollectionUl a{font-size:14px}}@media (min-width:250px) and (max-width:489px){div.resizecontainer{width:228px}.dashboard-large-chart{width:146px}.dashboard-large-chart .dashboard-sub-bar{width:134px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:136px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:106px;float:left}.dashboard-medium-chart{width:96px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:95px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:96px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:79px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:66px}.dashboard-small-chart .dashboard-sub-bar{width:54px}.dashboard-small-chart .dashboard-small-chart-inner{width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:54px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:56px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:40px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-114px;width:228px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:208px}.modal-body .dashboard-large-chart{width:143px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:131px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:133px}.modal-body .dashboard-medium-chart-outer{width:91px;float:left}.modal-body .dashboard-medium-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:89px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:74px}.modal-body .dashboard-small-chart{width:61px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:49px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:51px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:6.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:51px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:56px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:40px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:228px}.application-detail-view aside.meta{display:none}}@media (min-width:490px) and (max-width:729px){div.resizecontainer{width:468px}.dashboard-large-chart{width:306px}.dashboard-large-chart .dashboard-sub-bar{width:294px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:296px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:226px;float:left}.dashboard-medium-chart{width:216px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:215px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:216px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:199px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:146px}.dashboard-small-chart .dashboard-sub-bar{width:134px}.dashboard-small-chart .dashboard-small-chart-inner{width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:48px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:134px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:136px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:120px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-234px;width:468px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:448px}.modal-body .dashboard-large-chart{width:303px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:291px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:293px}.modal-body .dashboard-medium-chart-outer{width:211px;float:left}.modal-body .dashboard-medium-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:194px}.modal-body .dashboard-small-chart{width:141px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:129px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:131px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:46.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:131px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:136px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:120px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:468px}.application-detail-view aside.meta{display:none}}@media (min-width:730px) and (max-width:969px){div.resizecontainer{width:708px}.dashboard-large-chart{width:466px}.dashboard-large-chart .dashboard-sub-bar{width:454px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:456px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:346px;float:left}.dashboard-medium-chart{width:336px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:335px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:319px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:226px}.dashboard-small-chart .dashboard-sub-bar{width:214px}.dashboard-small-chart .dashboard-small-chart-inner{width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:88px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:214px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:216px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:200px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-354px;width:708px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:688px}.modal-body .dashboard-large-chart{width:463px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:451px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:453px}.modal-body .dashboard-medium-chart-outer{width:331px;float:left}.modal-body .dashboard-medium-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:329px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:314px}.modal-body .dashboard-small-chart{width:221px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:211px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:86.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:211px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:216px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:200px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:508px}}@media (min-width:970px) and (max-width:1209px){div.resizecontainer{width:948px}.dashboard-large-chart{width:626px}.dashboard-large-chart .dashboard-sub-bar{width:614px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:220px;width:496px}.dashboard-sub-bar-menu{font-size:13px}.dashboard-medium-chart-outer{width:466px;float:left}.dashboard-medium-chart{width:456px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:455px}.dashboard-medium-chart .dashboard-interior-chart{height:220px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:13px;left:438px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:220px;width:456px}.dashboard-medium-chart #clusterGraphs svg text{font-size:11px}.dashboard-small-chart{width:306px}.dashboard-small-chart .dashboard-sub-bar{width:294px}.dashboard-small-chart .dashboard-small-chart-inner{width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:229px;width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:11px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:96.5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:128px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:31.17px;line-height:31.17px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:52.33px;line-height:25.17px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:294px}.dashboard-bar-chart-container{height:98px}.dashboard-bar-chart-container .dashboard-bar-chart{height:96px;width:296px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:31.33px;line-height:31.33px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:45.67px;line-height:45.67px;padding:5px 8px 10px;width:280px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:50.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-474px;width:948px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:13px;min-height:225px;width:130px}.absolut,.percentage{font-size:15px}.modal-chart-detail .modal-inner-detail{width:808px}.modal-body .dashboard-large-chart{width:623px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:611px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:493px}.modal-body .dashboard-medium-chart-outer{width:451px;float:left}.modal-body .dashboard-medium-chart{width:451px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:433px}.modal-body .dashboard-small-chart{width:301px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:289px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:291px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:126.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:291px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:296px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:280px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:11px;font-weight:400}.dashboard-subtitle-bar{font-size:15px;font-weight:300}.dashboard-figure{font-size:18px;font-weight:400}.dashboard-figurePer{font-size:16px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:11px}.dashboard-legend{height:225px;margin-top:-3px;width:120px}.dashboard-half-height-legend{font-size:11px;height:117.5px;width:60px}.application-detail-view section.info{width:748px}}@media (min-width:1210px) and (max-width:1449px){div.resizecontainer{width:1188px}.dashboard-large-chart{width:786px}.dashboard-large-chart .dashboard-sub-bar{width:774px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:255px;width:646px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:586px;float:left}.dashboard-medium-chart{width:576px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:575px}.dashboard-medium-chart .dashboard-interior-chart{height:255px;width:446px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:16px;left:555px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:255px;width:576px}.dashboard-medium-chart #clusterGraphs svg text{font-size:12px}.dashboard-small-chart{width:386px}.dashboard-small-chart .dashboard-sub-bar{width:374px}.dashboard-small-chart .dashboard-small-chart-inner{width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:264px;width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:114px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:168px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:37px;line-height:37px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:64px;line-height:31px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:374px}.dashboard-bar-chart-container{height:115.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:113.5px;width:376px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:37.17px;line-height:37.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:57.33px;line-height:57.33px;padding:5px 8px 10px;width:360px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:62.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-594px;width:1188px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:14px;min-height:260px;width:140px}.absolut,.percentage{font-size:18px}.modal-chart-detail .modal-inner-detail{width:1038px}.modal-body .dashboard-large-chart{width:783px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:771px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:643px}.modal-body .dashboard-medium-chart-outer{width:571px;float:left}.modal-body .dashboard-medium-chart{width:571px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:569px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:441px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:550px}.modal-body .dashboard-small-chart{width:381px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:369px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:371px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:166.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:371px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:376px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:360px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:18px;font-weight:300}.dashboard-figure{font-size:22px;font-weight:400}.dashboard-figurePer{font-size:20px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:13px;font-weight:400}.dashboard-legend{font-size:12px;font-weight:400;height:260px;margin-top:-3px;width:130px}.dashboard-half-height-legend{font-size:12px;height:135px;width:65px}.application-detail-view section.info{width:988px}}@media (min-width:1450px) and (max-width:1689px){div.resizecontainer{width:1428px}.dashboard-large-chart{width:946px}.dashboard-large-chart .dashboard-sub-bar{width:934px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:796px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:706px;float:left}.dashboard-medium-chart{width:696px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:695px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:556px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:18px;left:673px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:696px}.dashboard-medium-chart #clusterGraphs svg text{font-size:13px}.dashboard-small-chart{width:466px}.dashboard-small-chart .dashboard-sub-bar{width:454px}.dashboard-small-chart .dashboard-small-chart-inner{width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:208px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:454px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:456px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:440px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-714px;width:1428px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:15px;min-height:290px;width:150px}.absolut,.percentage{font-size:20px}.modal-chart-detail .modal-inner-detail{width:1268px}.modal-body .dashboard-large-chart{width:943px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:931px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:793px}.modal-body .dashboard-medium-chart-outer{width:691px;float:left}.modal-body .dashboard-medium-chart{width:691px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:551px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:668px}.modal-body .dashboard-small-chart{width:461px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:451px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:206.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:451px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:456px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:440px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:20px;font-weight:300}.dashboard-figure{font-size:26px;font-weight:400}.dashboard-figurePer{font-size:24px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:13px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:13px;height:150px;width:70px}.application-detail-view section.info{width:1228px}}@media (min-width:1690px) and (max-width:1929px){div.resizecontainer{width:1668px}.dashboard-large-chart{width:1106px}.dashboard-large-chart .dashboard-sub-bar{width:1094px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:325px;width:936px}.dashboard-sub-bar-menu{font-size:16px}.dashboard-medium-chart-outer{width:826px;float:left}.dashboard-medium-chart{width:816px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:815px}.dashboard-medium-chart .dashboard-interior-chart{height:325px;width:656px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:22px;left:789px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:325px;width:816px}.dashboard-medium-chart #clusterGraphs svg text{font-size:14px}.dashboard-small-chart{width:546px}.dashboard-small-chart .dashboard-sub-bar{width:534px}.dashboard-small-chart .dashboard-small-chart-inner{width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:334px;width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:149px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:248px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:48.67px;line-height:48.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:87.33px;line-height:42.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:534px}.dashboard-bar-chart-container{height:150.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:148.5px;width:536px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:48.83px;line-height:48.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:80.67px;line-height:80.67px;padding:5px 8px 10px;width:520px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:85.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-834px;width:1668px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:16px;min-height:330px;width:170px}.absolut,.percentage{font-size:24px}.modal-chart-detail .modal-inner-detail{width:1488px}.modal-body .dashboard-large-chart{width:1103px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1091px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:933px}.modal-body .dashboard-medium-chart-outer{width:811px;float:left}.modal-body .dashboard-medium-chart{width:811px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:809px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:651px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:784px}.modal-body .dashboard-small-chart{width:541px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:529px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:531px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:246.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:531px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:536px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:520px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:14px;font-weight:400}.dashboard-subtitle-bar{font-size:24px;font-weight:300}.dashboard-figure{font-size:30px;font-weight:400}.dashboard-figurePer{font-size:28px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:14px}.dashboard-legend{height:330px;margin-top:-3px;width:160px}.dashboard-half-height-legend{font-size:14px;height:170px;width:80px}.application-detail-view section.info{width:1468px}}@media (min-width:1930px) and (max-width:2169px){div.resizecontainer{width:1908px}.dashboard-large-chart{width:1266px}.dashboard-large-chart .dashboard-sub-bar{width:1254px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:385px;width:1086px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:946px;float:left}.dashboard-medium-chart{width:936px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:935px}.dashboard-medium-chart .dashboard-interior-chart{height:385px;width:766px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:26px;left:905px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:385px;width:936px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:626px}.dashboard-small-chart .dashboard-sub-bar{width:614px}.dashboard-small-chart .dashboard-small-chart-inner{width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:394px;width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:179px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:288px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:58.67px;line-height:58.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:107.33px;line-height:52.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:614px}.dashboard-bar-chart-container{height:180.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:178.5px;width:616px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:58.83px;line-height:58.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:100.67px;line-height:100.67px;padding:5px 8px 10px;width:600px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:105.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-954px;width:1908px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:390px;width:180px}.absolut,.percentage{font-size:28px}.modal-chart-detail .modal-inner-detail{width:1718px}.modal-body .dashboard-large-chart{width:1263px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1251px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1083px}.modal-body .dashboard-medium-chart-outer{width:931px;float:left}.modal-body .dashboard-medium-chart{width:931px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:929px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:761px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:900px}.modal-body .dashboard-small-chart{width:621px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:609px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:611px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:286.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:611px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:616px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:600px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:28px;font-weight:300}.dashboard-figure{font-size:34px;font-weight:400}.dashboard-figurePer{font-size:32px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:14px;font-weight:400}.dashboard-legend{font-size:15px;font-weight:400;height:390px;margin-top:-3px;width:170px}.dashboard-half-height-legend{font-size:15px;height:200px;width:85px}.application-detail-view section.info{width:1708px}}@media (min-width:2170px) and (max-width:2409px){div.resizecontainer{width:2148px}.dashboard-large-chart{width:1426px}.dashboard-large-chart .dashboard-sub-bar{width:1414px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1276px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1066px;float:left}.dashboard-medium-chart{width:1056px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1055px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:916px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1031px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1056px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:706px}.dashboard-small-chart .dashboard-sub-bar{width:694px}.dashboard-small-chart .dashboard-small-chart-inner{width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:328px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:694px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:696px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:680px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1074px;width:2148px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:1988px}.modal-body .dashboard-large-chart{width:1423px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1411px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1273px}.modal-body .dashboard-medium-chart-outer{width:1051px;float:left}.modal-body .dashboard-medium-chart{width:1051px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1049px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:911px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1026px}.modal-body .dashboard-small-chart{width:701px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:691px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:326.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:691px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:696px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:680px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:1948px}}@media (min-width:2410px) and (max-width:2649px){div.resizecontainer{width:2388px}.dashboard-large-chart{width:1586px}.dashboard-large-chart .dashboard-sub-bar{width:1574px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1436px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1186px;float:left}.dashboard-medium-chart{width:1176px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1175px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1036px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1151px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1176px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:786px}.dashboard-small-chart .dashboard-sub-bar{width:774px}.dashboard-small-chart .dashboard-small-chart-inner{width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:368px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:774px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:776px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:760px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1194px;width:2388px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2228px}.modal-body .dashboard-large-chart{width:1583px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1571px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1433px}.modal-body .dashboard-medium-chart-outer{width:1171px;float:left}.modal-body .dashboard-medium-chart{width:1171px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1169px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1031px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1146px}.modal-body .dashboard-small-chart{width:781px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:769px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:771px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:366.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:771px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:776px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:760px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2188px}}@media (min-width:2650px) and (max-width:2889px){div.resizecontainer{width:2628px}.dashboard-large-chart{width:1746px}.dashboard-large-chart .dashboard-sub-bar{width:1734px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1596px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1306px;float:left}.dashboard-medium-chart{width:1296px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1295px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1156px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1271px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1296px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:866px}.dashboard-small-chart .dashboard-sub-bar{width:854px}.dashboard-small-chart .dashboard-small-chart-inner{width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:408px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:854px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:856px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:840px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1314px;width:2628px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2468px}.modal-body .dashboard-large-chart{width:1743px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1731px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1593px}.modal-body .dashboard-medium-chart-outer{width:1291px;float:left}.modal-body .dashboard-medium-chart{width:1291px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1289px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1151px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1266px}.modal-body .dashboard-small-chart{width:861px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:849px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:851px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:406.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:851px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:856px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:840px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2428px}}div.centralRow{margin-top:40px;margin-bottom:40px}div.centralContent{background-color:transparent;height:100%;margin-left:-5px;margin-right:-5px;min-height:80px;padding:5px;width:100%}.contentDiv{list-style:none;padding:13px 0 0}.contentDiv li{background-color:rgba(0,0,0,.05)}.contentDiv a.add{display:block;font-weight:400;padding:40px 0;text-align:left}.contentDiv .icon{padding-left:5px;padding-right:5px;padding-top:10px}.contentDiv:after{clear:both}.contentDiv:after,.contentDiv:before{content:'';display:table;line-height:0} \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css.gz b/js/apps/system/_admin/aardvark/APP/clusterFrontend/build/style-minified.css.gz index 73e02e24a99b27071fcdc4dbec414df619f160bb..24fb4a272a438d580ddc2f45af5df2770095f794 100644 GIT binary patch literal 23782 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 literal 23704 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 Svid82V*U>@odfqWi30#^S@G!r literal 37288 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�|+~fa3bR3;s7&X#@lz5m|<2-)EGg%`PR%G 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

#8(=~&dn@TTQVk<;KD1VQBPrhchiJ?noE z3mz+ib6IF5kSfls!by{ul?~T$Djk2m%vV}_OP!iD%@5ft$Ha=)nP@;dK)j-=j@(G& zwTTqpZX063e^&0?=_&6lSN@w5t1Xbpr2}4s^mCiMob71g7F42s6xD*~N`RR8bAYnh zTDm@7le?k)65?1!g?N^N)3Z(m$JpzZz$S*{2KwU2N^1;Rl78ZN&Xg#%kb{3^0B>$b zmZF-x7PyJy4eH>PWFKH;b|&+&`Z8F+W4)V;kvwdlbb3Nmaa?uO&S>T5BkSQJGBvz$ zjWNd6)is*V(d}V-^r1~nnmuOOU+02z;E9mqug^fkNykCiGev_$pC}#+m;DQ+aBFU% z)&e;NvFd?|<>=h!=lx-a?k9g?txHSU2q^h3Y@})f!#>VRl(uMizjq|bE$;jRE(-*S zs594}vCOdU?lq}VDKYY^aW_a2!vA-0%3@-)b=p39k2wFB)-X$e-Q0TgBj=Tb6>#6Kt$R`MqS>d{nd9gJ1tm#F7?*6~tYqbxetz!=i{JeDkrr9|Z3(+a z1#8+y>-jj0u3Mcvtj?NP3Gc6{PJYg!+k z_(knYRv5ReX+ufLdj0YDdy&tzJ?5#k{T=Gb<$!0Uggf~5-cUc2xOIn=p55fxJcyg1 z31y+cG7Z|wZ6JSPWz5i#tr8Ju=ENi1tUU+(v)HsY&9HfWO1!)C*rDR}vz)7k^SIHy zV+)~TOSUo3AD}G&?!%cM)?9z&q$2hm#}iJ1 zxEs3tqxTExW&Xqd@&lHt`Nz zt06xI=&F6~gH%9|A(Mi40Go?cJ5Iq*YD1m~i7=v^8m8pp)AMFW(kqy*SB9zjHyKLV z5copZT2g<7geuGGYxcHgir8&m{!-tGy#+RRp6>2HYwW%{c=_tUBWGAC8k6*}dHwE?)+Xc^DJ;`)j_dUO z^45Rp3}(9y+!?S^g&+bJ#o>BiwQ5DSfuGIwXHnsji@)TE>Lu4h#O^S(AdvL3t3o^` zL|LJ3CSaDU$WniC1}((UViJDHzBgY3$Weel#>2+@!d&0KX6Mz5NAN^Mfk$a5?IGuA%8Bph2Lr;M3#eXH|U-N%EjcA-b{lq~2i8 zjJYyf8bu$t)r12_UR>|2B910t=%lh8iV#xSoMUWdMv~=jt#puUVub3c_a?Pyt^Sc* z5fL*tOmcjSsN{p+Blsn=ogR9wPJ@4f-*Z=;^0>lvI!4!2u)05F06cuI{NNU-BuDYOw(u)R47CCdN8O8rXghm#ep;;si z&PN(YA5%vKY(dO&41wvVYF1~Ttzc@J^iMX%@egr!90i~?1{uxq5Usm2xj(9rgA4xub zzNs@E<)Gi|95EF64oMWZbe$Ppk)xDTI!$qn8JI8Emvc7!a(%_Rwfmw=`*M95@xD@5 z2o3IizP^m}TlBT%3FGpvDWFdIWdN_a5R@tUilF?_pk9aDjoNwl;^=+#1QD7(G!c4& z#{2fAMf>XQ&yF;NyrguFgI3mA0P8ZX-de6z>XjOz2^RaeWCG5d%)ccLwTJ+c^@O@s z)V)z-x@5p902VEzaYH-7si3yZskQlaV6BH_9L$ z*S&>LouTCDiF%Dve;C_z!JjW)E=Jr3w)u7q*6=()@a$>ZGM1#75G;|4~{+#X*wsxkSmYI@L z+=N=x)4iG(;V^%NUBeF=hmo2?=VejzFRB$f3=bQf9yN60A%TC7Ixs1EAB*79qHa}QW|=c-RFajOM?@wwp_7hK z0_X7R4V0x|vG^xpSNmJJnh1FqONOSShXSykp0sLi ze*!JMCYjs@VHluh5@|EiJGvMfbP|ycZ^~1u=%Pl&%M4UTmP{hYJXwrGQe(LBfx&aq zLB#%#I&gnK;u>8^2Md#x5dFME-KM{QJlO~xyGmUV+m&{C3A^tm4-fN-Kvj z<`W8()?WZbpMVLZQYrD*Q=LCyCD+DXBGaN)Djj)3tJ9+sINUtBUYEK9-wL@MPqsme zv%m#;+Kq>uZ@wYH<`3PPP{aU!O5d3b%*RT^t&xAG7t;GQ>|*f-U{G3?Vc{3$ZGr&y z_Mit!blUEoJNMx}LO>m#xPtKi995kE<-@&1?CmH;!Dt_I=_4u|YuP3^6^Vu`dM*2e#M-l^8cvxABhH-_!JJ^(f3oXSgipr z>~${Kp;|$?%k$jYj%j&hJ`DcalbsmT`n-QV%7IC*Q7jkB0v!C2#Uj{pQjukXfS#=Lqc#y1_UQ>VTRas>PfF#*|Kul;nS% zDNXOh6lKjw0Hf{(N+`M0Bgy3nLTwnmf#llo9%myCF8&VLc=|o$!$#-`(uXnTzmL2) z|37>0-ql8y(76z4z9veJ>tGgHFLkTGXRSBh9DU2Dn z`?KHQFJeFQAqkKGmtn0cL*~x?h#h}B-VvLbH5}UC^ab076zx_pS)i!JYgev;g58-n zmRMD`On0pz4djdW1ZxTq(|#D=E&U^+j-iZ&Ia;$?A=C~A1QH8WKC@SSfno@xgWyR` zf|f`% zDM&inE3)l*DaJD45{*|x@iKpmq0aLbbS(5#eln?%NUD@0Y~^l zlTX2cf04-58e+huLbUWEIZT$^ToSP1rE#`|OUL8KxccI~GFQWrr*40}B6Bd8yTJv? zaTGl0G6_<>F@gYPDtYr$G^f11e;5RwraY_)ol25JIdv6A{`0Fn>zz{vy-f&>CYcl}S*a7`mXo_Vg{+ z2Qd5Nq7oX8WX^8Yc53rV^xE8OZ5*_Y-fZvhZ|}T1+Sz#1x_K5{Rc9v1LQP;%xoyIb zhdLl9fN$}MyR}B(AY10PuF!Vw0Xud*8?S%d-FwqQ^6}QI*3o}f>&NY#ZPt^xJ)~-T zo(#72b-8K?_DlM9J@SNw?3@^iuykA(Iihnm2AIL&@%eBw$n>x%PV~mBR%wUy_U5>& z+&Q_>skfF^n()|wonzXi{RTws4Y<~5%6*Tg*z66u>BrrZ1{!Pa`?bjEI`M39bTpW? zNd4yS>(^R5fPB!viSQzE?(ARl~&IzC1Xjz(%Rhv<-c=yE%;E7{0iK%t3RM_ap_k`I5hvwLv# z~4DsVz zCyQbhpS^@_f>z{yJuP1$oWh^glJdA3NG|!|chFq|JUe`5Z)Pu=99Jdqli^Sw68n3v zD^P#*F*71OOW2I?53$Vr)PuQhfRqWiJjbjW>apzjw^cFkpngZY4+o799pe%foinwc zHDGD7Z57-ps&S*L466CQPy|-t4E*hUx1CYR85(1!o`F3AH-8)QY0^UBsrm;LS$ADDk{n*3dR zV;Ax#UbzVoGgzKP`Iw!X(Py+uk{}Ny*r)1gdCIdApi*?Yo~}P#mMEmPXJ{6*GKpe1 zxrMI6HvRwx{rE{KIuFd2ZW)4HaUp&m zP;A-k0IfMc{%{wF86Ihgb|l34u-_Xume!Y+A#%khnjej`=o1D;)qgx!;30iWxQ zp|Kdv2f)mQ-!_i|4r#;-yGi`?v#LDWOL~5c+r0zlhCbGbKt+Et%s6QbSkpxJ2ErR8S#*lwpb)-IY*56Z+)Kv<>&&T{Jb?1(wzUTif(%L8S-_Zxr9_YM^y9+Q??ror5Er&aq z*y9W9fds~cBCLO(iWmCImN-t_oQ7Z&93S-}=(_5TOQD(J$QHnyi?=x8@*q@ssS&pAeu{Sp5j72Od z*%A0OoFrS%Zl$noJ>UU|cshaHTONlX;S3x)RPC3wHw4^JCW-&W7Km$pTm`6W8XPP> zMnv6C&Psnmu3qqeCf`+$>By~z<2CF7iZGs;MtD&-Ak$o|neS$11TNEa5xZ!4TG}al zPHn6B?+AMSmHiE`O^1(C)1%ZRD8!>x5aUYXS|F;KruMW>5dmw&zxw_n{Eg+mI}z|= z@z1XEg<Z8rdO-Lxg6yTnEv{@QIsht zRk&c{TP?tZsO*2xQ^ejTHWuv;6 z{J$WeiWW!3bkmx-7$)rps<7ZHUqBqAX&kWf_YUXz-Ooiq*?wt1B#*z|7vs#dck7!t zkX?U#$zh6KDD}_PONP!Q4s?2H9X*SI9xirf{kV|j!308WPS1?~=CPB~G(VG1f7R7i zwGm@=gFfb<(nw9w4z_}^=lC~72^3S*8Au~8Tl!{npdk6Z6h%K%D%;NmEZK*dJ&b}+ zKeo?@eW}yn%n0$-Bv9qf)@-wN^NZe8()@oduL$6#G-`Tn_Oo{P6?;IkTGl~Izi+Sb zWMHns?-QN9h|vDApIz}r6Pmv8=ZXADnFl*Dm)j>56N+^*_;jv63+Zr%%2J9rA^M~G zOTXRGE02t;dru!}s*yxT0Oi`jS@1&f&5wl{*Xf_?yYZ$@f5l|YVbP_CpL;xlH@<&( zU{+uhT|r_9ULIeJCD)17BlI)EU$rIlbjVH+q1J;S;<%bQIjf#9^ZLdW!AvAwv4CA9$ zIJ+3@A5@TB{F8Qzk9b`#s>SuMWL5CyfuFOb>F<5xU-(y3dtY7-By*7uN}0cYzSW7p z*AiaLlD`kBnYuDeI<%h-$ER1p14? z(8^|$yLlu&Q;82xU8v1S6d8YH`?$a;j=RZ#7MF`T)pCc@3c_M6QCb;ixZ!CK#%i+v z$vS_zg>ov6WI+GKwP8eDML;oYU5 z7@Y{kNv<uxzUzwjTH7K0b!ozY>~6dsj^i)x^n%lT$N>yq&$*j z^eF0B6T2-I>CIW@-bXE99q`y$3SE`AIm%SOzil>|?vNd{La}bN$Qf{_Cdrb0u`U~p zoqWmd_YI1OVBUZW&5C~!3`YAnY%#a1(c0VF-8(7=?#d9t@f$uCTRQFwKxVp;u>|G*R-hFBVO#_){J7ICbgKH zJV1k*r5c8B80FXU3d=jXJrprFyaTtlE)BArti*`Dmf&njE6aa6taR%}uqaoiRQjQ3 zOjLP6Bl!@nLivF18ErW1RL#N_W6sBe}cIV%u#t0~qap}B$NQftGTA8|3J5ldXk zraMtCkQvDq%nyH(YAo%*j(Cg;gU|}jP<@$gpm0O&^nbexcXcErNd%_6=~g;Bv0Dp6 zUzRNM(Cl-T63i&dOd&U+&CT{)pfRx(&o(mF-A0|5W51etfG>$GF-S{dHA+EQwAE`; zjgNRnwx}A}ykVu3r*2AgF*+>zDFqDCvHzjRT5KpG(ba$WD4xtV1iduds$NXG`eU(n&iXFA;)VG_4|1xLSyy4P8UF_z6FR zVMRMZ`O5*F8F@Owhif@%hKgguT3%S-3fFe@2JLY+!Y2}Sm!~f;dj0YC0CQ@X`4?ubUR(-l z3RZQ^LZq*MZAhW|7qv?JyllIs=KC{{B-`br7)DYsfzgc$%o{5U#tQpr9_e-#0w%vC zNkT6PlVxCWmY)R(ib!ja7lGcCx}b>p3+PP6VU|1a8wkpp-r|7-*EI>mO zgo4l26Jo9;H`f6aPw%!7&gJMrZs8_Qz6bRbt(qo|Lbd{3ERw-0xPH>>npnzSk9fC`|A$rzj@k_Nw;G=BnEOB>@Wn`|xc^Erp0 zWkEu!ytEognD|O%Sp;hYzo-{_yb>sXo1K--(MjXx5}&qWJ!=0qZ9BUieIfGZJahXSQH7V3mY>18;>$_8~%2|uh~mR*wm zYf_g0{z8qz#Zl;~mRFLXP^90JSV>EP>ZE$PLcyI`xOvgbrca#<9K9Q{l+T7FH$_Q* zKRJM^toG9O#W*`hY61-sxX}b3NKFD@nk!#wN)@qgo!rS}#%Sy9&i#y0l@cNj`)qij zi@8okEwnOyy__aF$aEmuZ-ar1LD$?TqlH3HE^m~qa9V3Y%N47}3Ksfj5jMn#sA z(zGS}WH$nVH@~OpFofkbRVnuOiZuPd(9a*2nwbzbB@W8%|8?WdTU310vTgf69qqn5 zc>C_aQI?rf1syi9zCF0q%Sg`~x%R{TQZR)ET}WdjHl(ZerL)Xbl#_kP!W)YhB0LfQ*p(<5ExS61 zu+Ct1$g4Hjl7{0(M=c+MwZ)ezoDd{`hn@FL*7-U z!PMRtPaU^+3d>%EEx*J)%&3n?>1>o;QiJ1p5lQ2Zag<6}HTT2R8?+wcaYBB4VP1D~ zo?xnaUN-QV16Aa^sAUc2(=LB`fw1@4ndY-H%n4Dk8tzXjC&+ziBhg*sm zD+}57v*b3|aFSC^v{t_X76`LG4SsO-R`I_WS=#egvHbnHr;#rbR5KO8Ne9BO0kZ zh$o1@27G@+i*?{(RTO96CZh^$VjvD z#DL^qIHo6ND5Ci_>Hg2=bUaY@X%9(%V$w%#)8i%&B>4sMG z@nsBI6z22$g@F2gIICTAXiGD)@AVj~Q7SB#v;A6D0Oq?mPt8;gN7MYzQifY)W_9f_ z0fw@8RM<=6k~R67ZKb`{_Ix+?hAyAxvzLx9M!0gE9dhyMN2o-iGePMZpUHE7UnY6w zh<&Yus-HGnp;WNVlFG=H(T01MKCF(H)AS zQV=jUx(K}xlKx{Kccc)OFSsf83+rxWFG@GInWbP~H-%8B=gc?p{fE<53g_RMiQ8V| z%TZ+_&R?W${HK1}_G@YX`96vGIMW3xA&g0QR84Ub3Adfxo`AEAWnj5~`%=mGfr09S zBHnJ7{I6!-ZK zT(%I_aP9DPaV~*Sq@hqTx6TjQ=)L91MyIKcF43myc{g}D8eu%KJxX7+xb_HeNF;810SX7yy?_oUy0pDJ)nB9b#nKcu*?7|qUyW4#)|d_W_C-0>*M zdUOCQl9`!!?_ww84PzgB<11Y(45{aG@e!RLD=WK=!7nT4|M%na%8C(V2P^Pj&=qUV z85MvLVEEyqp+ByFCMz&+@N3jE9JLW|+&+iw+4_{`)h z{*(?nsq_L{3N!TJ3dPo4N&?>*dIrSewb{jBDRNzzVoJ5uB%1NuoyLi&3_qnR-3Cfe ziMLwOjxe`Ack^X4*~I3{Y6;I1q=jXdY^R~oVu6LMw1RAZP3zNId4X^NxUcNr7RAZ! z@@Dcj%k$oGABL(nf(6vowF1A?F&)e+*t*_8f7K0Y53W|Au<8zIG_8)u?hLNw7*dV8 zdS*Bf>`}bIV@urn;%W;Jd$Pw}`?rWvJ%)WNNKgE{^?0!`um_j%s3$(cl>~RuGwxy( z9#O0@$c+_$S%>z&HX=xDim9L<1zFTQ$p$PJ##jgS4#M@w{T#N(XL?d)4;3jrPnk9g zZGW?Qm>D1@0XJ`?s8Wmz+_XQq+|r>rgfgx3-e8Ld6Wc8NX|ATiV>z^gi}PbdiC}-D z&ZHME*X~vB@Q9S>S%^$H|CJ*cvT&;rlnRuRc{h@O5wIRx&~FbAED_M*B7f+#hrKZ> zrv;YSSFU&2pc@@8n7Ni{z;V4qn*P zf~|UgzMy^jp^ya2Lp0Z)CuKFxVPhzJ7x}cQvM**5+C+`d$?9GYCGLY3oNo*dw;HAS z6I1;J#VQKfFL}S#(9RK5XJ=a} zjBA_t(33e51{I>GrPKjEwoAorlE zOy+k3a+v=kDAr8*F&3?92Dy&fU&X#SsC_GOVpGnO!*C;1kPxOe67`n1D6ua=K+q}MXIO)=ils?=*7e|F zcay6SD!|kpf}mlx#j@0x^cV)L$}rR)Q|!E-Ar=rJgMwiiCT*0^2;C?KKTob18Ka_N zVQ(Lh$YL*0D($cU12-rol@g45`{}cPUZ%vBvq?4f@}*hZ!_Z2GRPE8PLfM(5)uI%H zA?El~Ap#XnP+1VF<7EYAP-bNim>?J^pRL`{vE=&e2Y5`_)e`clY)iKM3vE0r|Iot)H&` zkbZpj)O;&{JrDjeY%^?N9{EbKQjpt|1|F zjM~LNx52U?&&gz${8FGpsf&R|buG=ZWcqrB#Mr3YXYu>z#rMz6djJKm@PGF=o2DP1 zV{nltjmLt;3uGS}@_!V_G7|-V@$JwIXBE7nj5tTsmagPP{xH>0D|0fG#Y-dlaqQ^# z!h|8-Sfrkmz6u9^IXS) z$pkVms=$)c#{Ib_Q>ZVwM8Q(Z;ad~6>?+vJQzqFETknH1cPJr~q#mAsR+yiRu|tmn zj}I^w%!v)n;nao$6xi>kTkUbX*wo2975HQ1CKQvm#(mSNBh!oFSF`NZu6l~NRVlS3Q#%VO~79^{?!>A}IX?y@O_*g?bS(1pLBtKmft z|JNh)9Hz~FdNKy_X^vQbrDQdE-P(C|@KYo8W~Al!Uyon}@rWp(NtZyb8^}j0agEPe zu8*e?zdiq+zbL2vshzXZoEEe)$(<0bTkXzS!=f_o#jUf4&j zFSQZM8%m=pr0Spe_}TmScsM$I{+>c^@V%Dp;Uq;c*Q!0c;%IDtqDUJGDxD9PU1cph z!^WkZAipdQcge9h!%H)oUwY+mMi}+2?llKMWu7Axp&HVt7^k~2C?K*o8c9nyJl=>; zj~RhRa`L@+pG0hd^ta|rpsZ3V%Mz3KtCIQ^{xl$3R)UiCvVq7*jA>32d-+9fgdD++|rkbdjqCFyiLmB#u?(_8w)YhuWy5uHN zDaWWNR$wXRjZB$-i4RH-bUNEP?9_ga4YG2%bBkKwoNb7cbuy%qV~f?CoSzYG3gCwd z$%rvQ@nJT+FgMtj_PbbnIw}F7_GQ1|2c=(4-V}Naq}ZmPJ@hUQiKl-c2e`@?exZ=K zoNyNNwxUUY%8L;X%g+0DZ}%-inzvgwH}pEw?{bpt@9rHW$;QFK-u6qBt=ey-%MhU} zjlF=KHRR00YU_=%&icAQYwUeyT1DpAp<@HeT$eE(caj{B z2(-Xv`P6!CCrR9ePmug$NIauGQSFG{X6Gz>fgQ2NutzRA*B=!)rh1PV zK_5jG(o%IKPo3~=z=d1~gm&vI$SL6kgff`5;YkY{Xc^h%!Wh6V^=GQnRo!QH4fp{@fs8g=s04+rY>Z=d4&4XLaI==Fn_jb^2+J7P`JR z?iG2#>TuEBW?~lBm=^siPdf4)DHKIQ0l1$BESZw1L_FbD>w)P9nDROuoFa)L98y<* zUzJqRm&U*$q7#aB=407qexTVvQe;jKBlgl}=rFV5yFzBgY~z|#iwWaS9r&3US&weX z5Va>^4e=p#Kuqj?%Qv$(kqRuZiUH_jl~|Q$9aI9eLKp)3n@V{a6Wz1%S2G2o1)wvi z?&(+=geG*6c>+w(k?k=13cB}94E=3?Tw$Q;JO0h{o5OyQ7NzR~KaMao@M7A8J%Tvt z2#^DG^km@AX?Yaa+p$6XmQ>yv`yzS8w(tkOBv)9$#WrPU4UwFF7I$9DMj;`or|`sLiLYgL zz({{LlY*3EN2nHZ5-!PodaYDv0ZcL7+0xuns~IfE5Cqc4_v?ERSv_18m{;3an(M-9ODnaF?8~_+(Eb zI7l~#KlZb$?%H1v9D0VX-#5<2om@?ET)u-LSnj?#wz}=U?m6_+MMk|Mh== z_pkrwPxhlDH;C3M!=w>ZG)mh!Buo_cM&xcA`Ozw2V9}^*>%O26FdSunACPhCiiz7Z zN^apG(K*Yq++=gMhxi0Fs*wk(n*k^`QmhiWk&9RmV0*aL`|Wq+*|w)Z$ToYL2T)mN zE`2uYN}@V|gY9-%FKVL`boAWKh*E$JvQDg|MsRqUS|nnvbW0>s3{ztUa7nDoI%Sy}Ab4q)+t0%TgLQ${{a*&G%CU-K%qd*UV0) z!;QD|OXf8_I6}(6O=K2+thVW;SzC~J#%L$PDKG2j~d^pdN0X1HDGd-7Sf6i+I zfS+<=1o%v%x3^I$Jo zOr9RwNERdOHFDs8=`%EUd?zsh5|ahRykOD}v1_JG-P+VHa1dSeq&<0L$huP9aLQrb zh!88??=O-KQ?0*9D-5J{$BhbZsh09=(?SoYIm>YQNF&_qfJFG-Kq#RldI}ADl*X}AfXXQrV&)Y&j+P%&qvf83OS*$|!3=3CJom8UA9k9vsia1Je^H zrMm{twzk-mlOp2Ol{vyn}at=H(AS;B04~ns(pP9SGX9!-Ft9LU9QiE*li?#SU zb0xT5z*iT40`3-i1gwRVivh{35D#P)_%IL(03Vh2f}P1PhPbQ%V}v`Vm2yD*hFK1O z7sTCd6hz1E1y=}`l9r?U^YLNpT4gPg9LVX{M zE}pm>86NhHv`%#=Uu2w7jRB%6tq@MNrW2$@4^vlvC;VteK7_}ti#ksf-eHrNOu%sv zo+_MJ8p65Prm-r1<||4pDnh0UE>NST~D*`gyhd?hWo!?VLUR{C+ju^>qTtZG9CMeX$WxqMJ0KcG{bPE#~mx;Luq; z^_sSq$FL9~fBy*qORfEbBO2Fkoa%bVcDGproaSYhBkP&#kMOb|WS6%PHv1BBH@_!; z-v9B)+=_K1UYjFJg^!G8Z!W(%fCS;*9b^s(BcmJ{C*(3vGca7<6=W#72nOh;^i?gxYs3YUJSd#+Fl;o{r=dFF(Z4?b-ztxQ#b%?c ze|`Rc)ZqhOPNwV3hw4OdC9|w?$n#w*V%RCSf*G4IY9qe-Y=Ka!2z(0Ha^2m!O0mH1 z0BiLw32XMT8UQ_7_wMCTQ=x}pr3)cQF0@m_ypxj_oyvK4lL_w8p~J%3IAJuUnbqKZRjp^5a$q&o5II_qZ{)TUG9U?? z&Wvu*&;1>l)rCA-wMMP~tCzvD5H5dp%-e+7Volr}Auw~tb2r2D!d@R(Iisn&S7qvs z_v_3Rm=F23T(~_SJ2?5b<;F=g1|4ItfxC<#&&6#qry24&H;(g=$1hT^We~x&tl+-L z#*!(;ruE-8UheO{M(W;CYjd-;gFL>??SsEHmgE$%Iv|S0Jq?YkEQ9=cS>JyrNfhJ- zrQyzUb+5UTi3CwupR)#o7_*AiT`JPZuD|7rRA{fc<*ur=Mfeak)wogN09lafy4K({ zbstS)*eE@1YiJRzUxJ-Bs9ZVCJPz!i78tO6&E0dkVD-B<`h1s1WKuT_u5geK5U5hD3noU~!!Cc2z z|FUU2JrWmyJe-q_-gP~lQ<950bNC_+^rl{#vG?hvA|ib}C_Z|NTm2qQ^i~hM=5>Fw zo1$r$yqQ&8P07{Q<4sdRE6eFUn&`0?k_z`|qQ6}PyGVhsQTh<}M-%;>ndlvV-(Hk` z-VZPrJ!|7Qcg+0(S>~PeZ$&0IN!Vy7RxMbJx@D)4OacEQE$R*g4^bbs0CJOjn6~uN z_L)L!$Xj56(}mg79atWahFvnIyGiQaO%r3j7)$#6)xB5rTZ9<_CG-!~_sAsfgPNwr z|3{x)+mgQddUwCI)7r18l>zGwy)&Ax{%}9$fMNvy1DDvf5JLrn(&n#cmmszf7k~Fs zqf^ia7i(Gz)O}dQ-Qd*@h=oaJZZC{j_Tcv74sGTWT^6McT4)f1+ZH2nJ-lsscp(QQ zLv#HpM;&-12=XSc>))6n+uV;d^L0xvRscRSNp};S8$p{X^2mw!@oYq$85R9ex?gUnf*UKU95LRdTM82CFOb@fhEX&2(|kpJPp)iF(L!bUc-tP33AN;=h_=l!tOpZQdzb#Sp8ah~WnkMeud^3pi?Lw(IAz?vjrv&4 zqa(@-=B*w4g&pSW))WHbp?}PFvZXUg~}+w7Cl4(CEB8|QZNZ15DFxQJ2SR=HaTRn_U(-QGogG_}5-B0q$Q5R=NC)ZS~Lqf`hD56XvG9g%F1_K#@C zb7dJG%QQ$qa>_0=+WES_=D}l`22;M_mS#+)19LWEnoiADsl(lA307~IA#`9*DCI+x z?hX08hv?2a*e*<-*MCiTh@!mNgohF{P_Z)$3ewaqd5EIB-IA|TYBvZ_9V{@Lz`nP! zwf(Lp4Dzd%)t``m%=Jf1R@0?*+$(j?Ye}_vWdD;#hql3@C3ZVb!&z{>VLGlk_`st8 z9>sS`w2xKR;5g3)V_Y6%Z|PFkVUQB`SY-`}B1OaNs;n87(|9T#A${1Xj zd>#y8u7-23Vo8wyxCkA70;u>a3psw-+I+UOnjGS{pYa>+-O^v5FTFR$QY}50c6lq*q;8&9b@Qh} zH_}0=Bi`vePQ!H^V%mNJ@)ZG7K?rbMpF6YeHGkox6sWbcbySlc=O{+0fF|F}_2)@B zpQUoW0G=&@RHRgr^c$Zaw9aw&dMhGn#qVr+$vo|!-~&dP*+)3N{B?c3bC%);DIhER z_eF3-iwVhzF`K2E=qR2_(^Dz!GHEuOxX?SvVX#rm!pA%gCd@4!DL+g%-zVRoeC5SJ z4u5>wwPh?ZNsKl~FOv;9Yb}x-stK&jftOAEmyLEV&e6)AMtznyTYG!Edq-NBd2{#m z>(=JM_U_Knn|H4dwvXQJw=nB&TIlHwLYP2BkAbdy=X}LuhuvlOcvskHHsB9;RvKXo)6KX8ef#JA-JPahyWBguYOt?m z+3~`Qc;3s!u4KnNh*5x=z`_TcKJq9?K@dQ&42G1 z5wmLa2&sJE5qkN@L^S*3f49GxQ^P;;EB+5js=GVd6bilRM49~MRV$(?c>^Rnl$%Js z@p*8Ty-bxihZp%-6&VUp{bJZ9QwU>TlTYy&xeJLcJZBk~XzXC-g?R?p`W{HrJ)ZEM zoyH?IDgVT0#hsH69gmqLt%n~vW`6|yq7;BfUWGiB@s5sEXbh%{A^F22rth{v{yy@k zp-Th!_tqtCk>2mN8#BEza|-7b7g?pe{F9$F4gU%;n%AuAZ$CfXtTb~9R)Rq zynS?})g{V{;55uYr6vlUD)JsoujVW6S^!g>ltJOrj*YX&{Q}xO-2Kvn|9=u_9AJ>p z0iYdfVb5Rmf*_Zey3)YlbTq)-kMJ-re-z(%PE7k|=El~^JDWaEvWpxk2m?S2lK3WJmS;Xe9~>aoHgsL_$k zZsj${G~I%Z>|{Sm4vjRFITDsQk0BD!cu$g%U*l#(waJn+8T+u;eJ`{f(=GHxieGLE zx>ssB&V0KvV^d%ein!k+9s_(0>sKa5>Zjt7|3H>#2q}|6!bLe!UVrFv<`qrsVA?V* zKlq%a*ke&hbOF#HRCtj3-C|=f55$_IjZDf@jEP50+zFix6zhUlK>ID(BFBub|M@s` z9~YPgS=BcNK`eN+Tt4^ovqfIoXVhZiSEH<4*)7xrG-qeicP~D*G4==I_aG1}wCh@y zI_N;)sAH*apUX^DzJDWA#V;O(?cPGL8eIijYdcaw=4YhLryu=3H3pqkJ@F3IfFA3pd&Djrxcw}0Cl#?NVG@f!P_oiK!Un7y zREEhg3qWC)40~E>y%?YjvtU)x(YVo`7r`&61q$6f`a^7iUw=+nkUT7GgKvBNt?=hq zPw}8gm1sQn$9Qp)$JFv&N0dKW5tCQbm4>&x$zU_MqOsK)_5vBjnXrBpSh-ZRa+gJY zEHHdycv!dx)izhw3RMxJ32&$|Ne4Dr0c#t^;L+*DIjqTI-j?}W<}cQ2T0JXdtk|V@ zdDa8jI74szMt>|vp73fUf*!~uIQzB>GaT+Uh{ZVc)gEJdsaUhD{hI^ec*;bB)rf5# zWzh#Y1jBQph%@y!6GNwbhrTmdz|orwUD+kf{YruYbAKNo;p7zwbM%i%8F4LFQ@jHM z*HqUr(hqwlJ>E(<&aydL;7f4KfPpH{ab9A`wp&`B8-MOrceD5L;wyeXgSzY1Qhx*6 zed*|g*75L6K!AHlhWl*PJMB>unQV5S$$D=QVCKGH{e$&!m~_lX^VAg9M6%rj;SaUKSS#q+VR2VjP)LB(+TbE zg7bNi2!9$eHL%wO6m)`3tXjYnop4TO`PSB})=^-a-`PE&Wu7|U4Ndd4Jw}$)$bKpk z|1E8y>+30#vSHPXoTOwS@XJQRhU(=7@fS$o)$-28h_2aIggO*FgB|oZRjW)#igZ#C z0Rp{QwmIzvPeO^iax$21+O?u^q+Vf`L=f{;fPZKB#HxFhU5dW9YCnwE4&R6f-t0LR ztAk$SQ)RjP{T1DUz=lYKyA)ESV=k->g0hAUy}1GaTsk{vsQWOSK66msJfkXN>@y@kzJi?6eI(f z>wk}OlbEMLZ>eHgBR#XFwEk5<>%{Y_UgdQ9jU&>nCX4{^&w^+b9T#GE zl~$k#gV2)WD-ptY1OlQ&q0`Cq+mg~JlLR{U(+*8^yo(;>5IumSh_J^V0y&w!KGPQZ zKWt_cK9?gYTe`&Ob+J2PJ{rD0ORrpHjDN<(fMjxLr=!gz+InCq0M+5RYGpqYV8VBV zLJ=@#wH1n%Y9Bvn>AHAVR+Hl_>!ZckRR|RVosus*5PGmNS>rBA#rE6}YE`##G_y7b0MPxqp!{ zwD>of;|0$scHl~P?L5mm1>k$<}WrFyNL)5?Y#%EhNT8{{8 z>6s$L+(WspkFYkBO^DG0MB9=UIbYeM91K=NqB_KB%AF3TP$Q|w zt>`lS=;d~5C~<>8u`{Y(h)(`XcvnpP2|Bb|Ns^T3UFbgcnwFbewXg7|=-akRo_LCi zKE^uW+P*8_mqy@BMdjcai8%MFcI5cUL+zSw4aG!$ma!yqfA#kD?DB*x~tx~!K?_WV2*IH zj#I{HXQHwp>L%OEH>!O$k60@DG?mQ#(p7EJm~HcNrT1=i4_d=8}p>u+ov<*Y&xRmJtUAH~B5|vIm?fNv4Sk-iC3pNpB z#@v_i#1Iw%K$i!_5FkgboNavrJgu?00v?XNbnH>#%zLwh6Wh`D6pI3t6|#E9D(N+loMfcjgbGp?CtKn z3jIz8e|y_H(zyqJKyf{KkW32YpV(`({Alr%RJdj%Ef#^E9~PgG_1s;$4Bc@|iV(-z zR_n)`!zb|bl{%dco+At_B`R_Ysj{4C%Gd-rMU`!Z#6ODuOP4THXv;j3ao4; zEv@`q>ZcLN#e3=aVg%2Ly;&%d%VXgeq^}|*$x5$*pJg7BT4~a^mD2-c&m6ehmZke9N-vV>Kkw5H5j1FC`Ra;-t>gGFY0Ojoa~V`)RWU|km#nl6n< zqK64`mB>VYb>Ed@X33K4!!mXJYE?U)fKZ8KchJ8IsaF*4NZMk(00DiGN~69Mf$3;S z7cj_}I*+}eY+I|b8u5mZSyU0H!cI#R-NhVAt2GF80uokT5}=AfA%|r=LTq83-&Vf~ zR$Cn9Q*7?JsZz~e;F)y`75tdASnI-lG2MqdtEOFljZOI@6^9NtTV;U?-Lg{Ic2vCf zgZ~w4=k9|NakFIKwW!`jI}Hd(kTqZ{)gv>BjW~;?F&CImzwD68GJmOtSIA_l=|+6+ zl@S%x_*u07lA=E^&7od9zHz)`eV3E<27<-9d+M09^CVP3Ths{Zt)`bK?`B>Aqp1SA zr>a+ffx>=sCA7B3$>6F5QI#`CS)|B5)yg|6C@OjhtOKzuPRXI8Yk;R~Ba=N(d zIw%g)^msw-Q|g0kpS)>by-c^1C)S8FG>)yB0i4>cOXbn5{7Uf17=QqliHa%nbVw`b z`Xj`5dhuCU9|nw%8=SV_EsBa%StZgp5l2LSZZEt`o&zS?#ZdG>o+Y_=R$LT8n4Y;R zmD7A-1P> zVv|zLBg_}+zaLVHbxC?Y9AC-A%-aN+Iz!mQq$IC|rYe~*Qz;5%L3)S!KBCsod^IS4 zt;A--==RezIrJ`ZiQ6-f!lhZ>&2v<|Z8kCCdeJb1&+%{AMhmC84ReQ;bZOc)K+bVD z#gDx{^4dis;TuT-zbVX;WF=W)FW!WqIs0p+XF@*~@ z4j1GoXhUys0;zqF_qr%OCQ6#n4w)|AisWJ;dBVm=JA z6mbXMW=tU;Vxd{EyuvISpL+SGt{T`)Uile0`=w`2(6*$pNroniZ!Cef15NsWZ7_(D zbp)erKB?>Ag0^CmciK+62@Sy|y zo4E}W?K-enP)ms8@$1NSu=?7bYR9zd894qG@Iyi-KZCX@b%Zk!11h z_sP;>BIG|=V)y0uoJRG3o28^M@C)t3)+cJpa znO$Aabz1H8k=~~6h#-AY=2eY?ANK!Iq^GbEP7 z(mNcbD0Bib)?#APfB=wP3_5uBy!of)C+Wu_>T}{&XH>OBdD{+u8t>Vf)|Ce z!zP7CVdJWzukuONi{L{w{j#P07QCWZ#uxlIc&tHW+BZw^2Cqcv#TWdy@ECrhyL#`zchGq)bakyFaMA~U~C^}VjPhtII8aK+a^O4TC%@?{^ghD zC3fE$bYCpW7L;dTAm^xEgh0xUlr<4vhhgXYvnY-|)&Hq~heppXDlf~G^v}4w#Oje# zQUfbHxUEmhdO-qCZCNl5pb#3DLR+9I1&51oRz*iFKee43gQfe(lD@{$$*2e69+o9I zewH>b@-Yx&6#c$z^um7>=T|wffcPI)44FE3qRk~l}l*~RJE7-JvC6UokpaJgzl zk5{9tlVZw$Ij7iSg6=3A^g21}bem}!7n576?j!wB`(xlczAFIMeD}}7^2C_yzH*Jc zcPbpc;ikF*ay%nzlC{?`mTWMa-qMs*s5ez$Dnqq9nGnli*dm7V#=eMN+ z(S{(Bi}FA(gSlI9}i@ZO8mz= zkP@#5p#}!crn+c~cRkSJxrSgar~pu`Ks2qy-7w+6@7mr#;8=_YUa=OdpCd}oLlN9MK`El^*WT0lYaYByd|fjR2?3e$>m524kOAbI~iZ1 zG@Zb$3+-dnLji{fbatMoFc&re@ZgbK+SpIF_m`5F8~fY)tJ2F~whw;VeRq)jWn*uD zZ)4|RyS1O}?j@VMJ6qel`v8Cam~8C)E%~qQ9hBNlkt5H0bv{Cu#TsDB>78ThC`KWj z(e)Mr%i4PKVcJ2>xeiu0IK2Q?pxQ2sUIUhc8v-4AIk%TC#;)|!@14V`pp`{DR+y!E zPlLz0v#d|t;l(ne-o`7yd>YpM(7qUdpJD!6qh|6W3i$n=Y^EqtGFnYuUv%K7+{(^S zo=|3EoBH8^-_HcenS3*Kyt(r0Cr>Et+N6RyF1fT!D7d2X53g6OIfQ z85`*bEm*+NTpu<07e`X!;U3GMe6Hpt-(LTAU&!?p{;hl_&)8xcKFT(PO#j}0KJnkb z-NsuZCnN=`3m470%ztUQsXf2lh9ZtFowIpII&@0tb&XGKKfE}``A^^%Kg+rd6qxf2 ziN|aXX;{f2yWvF*(h;qw+E@^)DG?5vB>UaB z@K2{55XEeiQ@KP-GZ;R$=!X;wsnKTgQM8jIKd_WhXK^EjK$jltjI{4!6FCNS3*=I9 z-Hgu+1F>#DSko)_fj>$Z7J~V6K1*NuY3~hSSU@cv*5iT2PXFLZC)t`Y@6VGbiWR|O zmw|xmR(?jFzSzkjJ*+~wI7Xd$@77^sJ?Zu{*4)*zsP`u6TY610T$i5F5G)~HpwhXU zKmKyR+qJwfYmz$XqGlusiXKBuZ0Jmzuwm@Lm+R3G9VLPXV*lKxeK`5t(UFR5FH7Js5~H?1xBxn zm($V^A_*yFN}MDx^ZpN){?ZT{4Rsw?l4rm~h2`Ym{tcHU(-0yL)!6)}9I)`d$(3j$ zySk^BR?`qM6G7Mu(dbom@e9!?LPFoZkr8osmzvWMA0cvSKtK(mpfws2*xlOM= zi2xmA%Af#JCsvaW+PIjP+S3pt0STA>(-1Bm1EYj=R7s7Qg0$LryKNfEpJF9kv=9lT zL+Ti~q+FLu)DRs68=_9>muu7z9ws%Liw0TV{s2m4O!%c5k#mJn89+xIy`^R>i%Sh= z9zs7ccfcL-m#@?iOn)7rfiO^%Co0woy$d|}Su~P}vU2YYq{N&W_;o_DRN{B9fH+R< zwEG1a%I&cv@zjW3I`;K8EBMB57X^^?;~i|6y>HExTSf2yX`2wfh0%TBvGK(r@LMi? ztJyW0$_vyE4zU1a6$&kPTfSR7x;yBp>yj}e_W`^D=|i~$3m5`HcTY_sUt)=vxUcR4 zaHf=*r4(wp=QWp-)etii3rR40gY119P(h`LQt=0)<=+99*wqjw0fd+T)ety;-Ji<} zV&=EJg70F_CrL>2I+Jb;erX6Bh3yiEMQF}wjf+UcYp{T!Jo)^LzmOm z5Gn%p;Ftf_5Gypd`=_{Md3<)ByMSGMF?Xlf?TyNioW8ca(-~7lOrZ5+e#m2f2vm^2 zUm&*eF+b!nKjb=>Ue^#8B{MV81i561`Bm0utoa>5X5IYR-4m-%fKOX*L{ir8nTjh+pI+h&9kl`(9y08yXj7w8nQ(-5v(! z&;sgzzUUOT^OsE65IO=55SNJ95FLNtkw}{ShoC8b`}SKqf=q*%YTzQfmxH$^39r#} zjuEn?{IEw80_LX)667F5T`}Iki?6?nK|;gsLjMWAU%Ukf=1_6;!QV$i6@3(Ug$)>b zd*JKH%u9m8yx!t-pMKAAZvHvk|_!XZq!iEyw1V29o!+L zY~IwJB9k5Trf@Rf-yxV7MFfB0;!dF?QbCKpor-fu@ei4*eB}~WDPzt?zkJuGFlbw< zf}$YkT?-#~4N(XU3j?X``#xcM*YI2zFs0-BfTW%v6;lQm=f@ECkh65BaP6k79aVAa zXFJ{c`5jTmYH%So;!Yvf8*JSUX10TSg&O$(7X~)WSOI?zaPt9!cO`!W`w?$^HhmWn z#2#F@g*OY55Cgz-o}tu$il8XwUgQO+5ehY&RB~2-h1!BmMPSM~`ncCc7yb(gjPY;% zi>Q^guFQEwH!mVn;%Texe{f!jF6w~B7vFME!M{AyU zhl?=Qa)`i8OBt8wVNHK-RT^ut#*amfxtb)jzUBi4(`!~;x(1~FA1QwGb;9axU7@*l3%HauX;puci=tSRsfF0?PjdP#GwTvh$m_xNf_!y{erPE`culF+$d zmX?xljs1TjTn@+oHd*>*X<25g^F^`_XZ#7%=TF5#rO$~yhW)W9R?uTzfB)e-1QEfk z{!=^oYywjroasctVC2{F8wY8pZmBJEj~8gwBvK|UhEDt~`^@4Df=0T;>*ffGR&R~VK-G!422 zuvMQf5W0GgqH*%ym5Z{3q%*lEA-WRMsFBvR5wMF6YP@q-WC=3Xix}aTN-5z<1#C>6 z@_UC4sKmltjwSG5u$kPnfR8z-cY;1V%hxd@459kJqIbcm@xSsBHK*-vW4YR1(CZ?p zsCNKbK&8Kb($jDP@}L!dw9-tr^?IrgT3z50Hy0V%RqEX71x71QDqZ1B6`9PPO`L_h z#4|80phMgy-sxX-P5G!b9byghT+^yPcc9UhkU*d`<$y%mDg@&NlGGb+{##?7E~9{b zBUg^rAcK+nuM%rAvdG}NvxcEr_tW;M$bcJ67i*_~sM=M#@Mv#YCbvuggZ;e&*T{`d zw_OeW4{lf7IS=1fop{yui-$*lLtK+whwfM5_bIQjd1%$cE#F4rFR9xOPlclc0wl$lnPMOL>G1lp98gn++nO?np z%^xu>T?=EI+S=3rINe}pdi-KdcIvwU_Rg6`XxZk7Zjlqi$z(DF&CLj_$z{7Y{xKWv zUky6S!YC6q{p|`i#b?rYRzjWgBEA4ZCmzCoz=Q?aE=8SQssFr%aH2tTOJf_=EV(Nj>Zd z#S{I&hdIaxu}AuY#kjf3Vb_Tt6?km=E0z`&Yg>f7aXJ7>o>;)zXUhA-yl!jjmn`iS z?3X*_KQ7%A;I;|$RK2bZ-`bIA|48B>f)0gJhXl61X&g48cM3>x14HD^@NRW~ZglrV z2X}v##&&NC4QodZ?a1z)1r`_wiLd^NmRH{_oJoBvIWLB;*DNEin>Aa(tC+ zZ;?CjzvPD>-|c+*;m3_n!c#tfH_ex3*=j{wHP*Cc35%1@_GTGiu7tUK@kun*h#0zB z{vti;DT-SAI|A-+r*PNMXe=fsjhB=SFmP=_NOxQGtGuy0!&ePDGY|}c|3^0OicO~k z>bLw3jF?4cW#GslM7M|cw?p5TvsynKr42cw_5T`C@=Y}8GEQ9?+L%z_Vs z3>5)aC8>y**$Fp0xQ`qcU@s7?vpLQy$xn{^74HUU9BCTNczE(6z`j1C!(7o9oypFV zDo^kO>)GQaRB#kP8-SWKzGcQHf@bJNp|NP(`dgA|G(;?=tw1gV_g1O$Omn=VJ)XX>VZ8ZI5~PaRH7MFI>P zSQw`^FX9Y7m$@w-KM>3eeH=GS`@1?w73TU=7Wv(%s-Hxg6q`#aK8{k@h>Vfg+;+@H zVs9#jkV|qq-}zTu|0ejzcEzNAR=iwl zcQCu0`eECKLYXNn>0(W_-cXnfmL(`JhL!8kq z;9eReRo_?$E{7y{g0>WM9Wsf`TgFyxQ^Zw1t;Ey{ER~LbYf;pHFcXHdvnu?QLEP-I zC_cbH%&u$U*XfAK4;GJ>qS7xi>!+xOPYWgh%7Pk=!>k_ZVm6oj!^{gy{vg-b*voQ) z()#vS5Q@3`@^9@1CyRW%v8GXR^#by2t;?oic6Bw;n;J;=)>nSZ&mdJNbaiybFOris z6Vg_2E%sc01uJyM4ijUjk%R6g*6#PlQYu!Pob>wM6uGs%zxjG&`%P<)FQoy?AB=jZ zXXE7gchA0C!~gzQg4wrE(?OoRIzRqtHQCJi*(sAZUg2(%$E#`}K0aPmLxB?|N6veY zJ)uf4o>S1N-#hQ=bs)Kj#Uru(yoLxp$Wx!(@3HQGEbGJ2N=p*3ZsS#JXMY;j{m{M` zpW#Z^AN#of3l5T(u)`xwQ_|C?e0?;p@q0BRyxk`nGW*(liM*is#|3Xw_D8VBe?6r^kY5oFOOoo!apbx%}Y`eAd-XI(C zv3)Q~PXWgl$@|0bd+5ToA`?cJTVHQQte>TZAk z{L3%POYFWi=)Ta+P~5>ym%Ng)zy^Ey6dw4LNTvMmsbKS5k5t6>HqX+|?~I+vGnNkE zX#t+QKS&VxU-HBCdEoO$9+>9queUcrk6UZco8LKLz8e5dnN;=210Mhn+!{5LA4lzf z!SBgt+V9h;{Q9DUq`0l@42C4d{#urZ`Z0IU5^)~gxy3EPw8W|#X&ji*z}*>8_QVR? z8U%5bG~%lpK8k^jEg6`qe>qzmIE!$Vs?l7dq%@Md_r5sTHzvgOBVDhxJ!>OLZ$VG0 z0QhCV;yOMnEu*0`7iD3YE178|cCY<^`Tp5OsrzrV6<}v4j#w}a4n}~P53`j&+Pp!^ zJl2x^&E}IsSWTZQlYh#HrKj>ne|?!j>}U`4k1dE7`rD7@?iT%PM@mEM@B6^H!Kwbf zm!7sh4xc`GUlJJ_w4B941D`a<+3V~w9c@BCUeR_yr5onw|{g%zXefl1(3pQc!FN6ty9A=|&ez-KqBoP4(<}og-r__%t zLXjD{X>bb0Fopslztg_(xC#qdHf|MO8*GCqThPvbr)YxkL!yh3z$P*M^B(vs);*2) zQ~!m`f_PTkXFY)a`#gwm8-PiF4_P@G%4t74hX2_>Z{cb==x&DeVM@*v+bM)3!JjDimN>vR zVOS=$p6kyOhbSE9fEx(0`x9__>9lvU^ddP-mU`!q1=sl}OdDdYz$I0GZ1LOhG;F~? z3oV9&s0IHlv_J}XG>rURXw&Ot;W!`H@L*8vsFUZ~h&Il3{zcXW&S57TzW%NKp`CX| zz2Ugj3O&oJ+rweM2VDrN>-ulGj2CuyHa_nMU0gUOAI3d($6f8H&}@w_;->kB2ovz1L{0rTKQ+Ct*EW0dCAB3y4!3Hgd6n=&ocx=U2 z^O#jQ$>IIJ<7oR)*C9AGK8yeCz+ufrjKhn_u2JFqa@OnY&H0e`Wt z!X5&uFFla_SG5aqYci(T1szxRW5#oALt2x;)D1crqV<$cIu-(2)$>QgB%~GDNL3>d zN2G=PR@KDG7W}2E!E|CB9&?!8TC>PTqM=GV)kNseF@yH@9Nuyw7SwJA?%lqGd{AS5}FU1=Heu+~1%_d(u^6~t; zA#@c}j3Og5qmENGZb@pB))e2WT2BXY0Ry~*A^i?1x7dyaLQbvXFZN9cej_2u=M*86 z_rjXQIx)#$z@!nQUy-ZXdwdN`3ti@S=q_Mxj+s;fH#YQM#@ac<_Vv63j}C(T(Ln%B zNZi|h`7rJDpbVjw!r=4*h?SgX2#^&2?L9lm{|pED{y0s6@Dtntf1*A=)%!kY>?1l$9Q3nQL}q2ehj{#*EY?^due{rAEON~dw{uh z0N)1`%;u}sL1StCs6Fhh2Mb!)5!Ylyp0UIo$tE(nI=}CQy*8pTcp_ajmFNxJ4su$5 z=L(%DJU|k3HTNu7O(OD5%7}{j{yceNdgj(3GdSEDQy%G{*ZEytRMoqbz#j^FH-w#y zNefGekOuUme8QkN?zQ{upt|n9|LFf?(%1KNRi%RtB1zuuZEwOhm<=H8G{T99i;Dxy zfEjP!Rbqx&F;Qa#_2yeMcjyvd6rN;%!}~##jFDjuYtAml-RyD@A3YU_UY~jZ*aU|<^GZ=FEE=qzZG;>_eTOGmLNYPyK^aF0oX-vn~pW- z!?o3V-8yJh@ysuE>mUuB^iD6}38~w_1u{;bL=^3l&gr_OknD}DQ@@V$^n9Fu$W7!S zySLi2p36e%$w<_}VhV!R6n1JlwgC};-rwDUP{FX7-pQ3&(6W#NN$#`y&m5$&IZNrc z)FYB40~J9UyD=awLXViQ5NIP#wfq5ee>zK%&F3kKVn`;$T!+*|0v)09p5|(OVz&LL(fV{W+>Z9`vd*LhdtA8g4n5LKS#r#oqTRC@Rq2)w;P&Eq{-qCrUdDBt$C`p8R3v(bR+r`Gy%m^`J`FMqn4JT>Xg@;l5xlpUTX6=^~48e>0` z=2<)6y&SwXmy9*KuCO$P%^cHj9?8-UyG-2SbnqM3!XFxL@PAQWEifH`*cQ1$0xpzx za_|zfi|kMOG3{K8k&9$=tJdcEqo?iWj@X1HYQE&VwH3O5q(b0N$V^+E!1j2^oJ&K( zRD~9WJHlmuR{xQFXZw;>C}~=&9NBzeQvEoh44$kxQl>}L&Vd^7l@c_wRP9zt9h2%p z_;Y)5xFy3j|B(cP5vYX*g>~zvor}>3{!_N*d$W|WIPfT|*hfOGRUrZhxe9CQm@Dgv zcpQ#6X2uf&H_D<|-Nf@TtvD62fB}aJDEtCAE|q(KY#cV5iNEZrcq(|cIyq#XG@Gkh zMYfA72zabXo#r4axn5@L_siacZnliLXt9K;wuQ$IaXH=OTTHV_3~l&X3BtO2rvxoM z5vayO-B5BAqZV&tjC_qQkZ% zqzqn^5PMi5BK>&QzChifMR->xo;9c!I{*QHc-BNHSrNerUXTtJ4=qcNh0atKC5= zP0m%F4=l+X<~0q)dD0MF-q?+mM`90uQ1cR|9$14FgCH1vx0?K(rbFByX)Gf0UGvDG z7)&BgtCcsvPHoZYBPxlOOJkNo@2s;OcFbaa(yz1gT&LH>3}mMgn7}wzmZ0{h4!0_` zDBb9oksGkI8lt!r8EO|)8d~NZE|p6YXX81vKLnWp7IxTA_{DTk29~^|K%X9f zc3$ zm}#r_G2Be3bE;E>>1NTYhOz5LP)UA}WQHwV#h~}P3A|crh!%kUDo;?AOD+G7`UY3I znda;`lM0D9Aa zn4F;g=b(#_(V^7bO%9+Q_^}MsSyi_Co9I+Y`vkW$$$5~~QQ&W>@-=8Lh1B zAXIT>SfNi7MHDXK3y2maARuIlmreq} zZY-ldp4g8_)!8HH5Dp)rkApV_i4y`EDg*$B<>c@ddmY#8{a9Rd#_FEY7J6(sZ+$knQ4)bjG&`GL^~5)DskXL7Y{F z;=ZJh`s|!vfMpM|!P+1_MHtqHprHQtz|@vhj@ugyFHjzTHcM9ID4|dFM|qUw^j4l7lq1;zSk ztwLpPJ9ENmyU&_#S4OnN35B{~)YworbDFP2P>dMoNF_4}aa8>m`sQfV#DCccwTjWo zMMJjs_ICGr%|9M@Cf zU8yjAhXFl>lEHz8pgG4WqERW*Q~ayc6+98DrHSn9&PgJbrWcT9IcZD3lNFtcI0Hq? zSy}Oa_jIhRBq-$$P$;@?y-c1r|6j?Rl?@YmOx{7FelcW~Y9-1i7XVJmd;PR*V9Pk#XV%!Pn}c`FScDD5TX6tYW_#XsD^lyDwWTm2e_M(2uS zN}zih8tlwKJ{E4y#9!@-N{1nls9h1^xRkGdI5yVcN7QBvO%120JjO)IIUA|aeE(^* zIIdRB`tGq~JkAnmR?dHvfoSBZ*f~E*?{QNEAH{9O=ZW>{tStk?BJpw1i`yRTr%cK$ zAv6uhaCV(!h=K7=?FX(GF%QQx3nwO>u!v0Hop9fV&x;JtpwyyGeDH7as#4m;APw7p zFjCUbx&G9tlP;VmI9mQ#spRa#2aQrmkpw$r5L|>8 zSguUMe=ZC*xgQ}rgj7V#72^~NhEU0#&}VoD5+-k`r=sogU;+STFRD>wKfr_tML+{R zij>rTd{#NW!xHM)!Q9;D=LxEFvsC1jIg2Wywjo<%gZu>YJdn!;V;f9=GUkO2 z>XFHn7-E<2oLvllzfU9yVHF{XoDIbkvN=5}|M`9LOrO~ZXNNfWSlTFIUo<@t2BX_p zp(0E`noV-12wSA9MnFlp|10uz#aUi7hOutIvgw0jxs2ioA8A)t?{dBIZy zGZ56Xet!j?pI{v@6!EVL`0>(-0EXM@*fKl|NQMgxb6pm-wksh3))-~YTfBYA2@44- z+be^h*n^K$RU!zCmSjH@nqA&8t)wwJl`GU`#w(npG1S2UB6IM7bTPDl#*T&C?f~du z1#9XRlddH1fU28a1Gh@&=+N$ zb?s>aNFs(i#>8r(@b&iMHI3L`{e}otx&5ZxkNhP#74cM|8gJVS*rCH;IjM-}v8Ydm zTWA{>tfGebjg$kqDt708%4ST!ybG1RrYAKHVC@*tzxxJ8udx_wgemPEk$8ps7LPE1OFjyxkaxWTBz?J!zF zz1wXUr64DF*X}149D_Rz#VYd3}T@eYm#1OBm)qlt4M%!Q6d9= zq9)nQxr`~S+MbYq*Ex{yT>^}0ZK&Fcvt>|rH=dDDZnv~#pS?&=_DKzO;ih~Iq$MIL zhF;uC_P8fi&o-I`ig4RN+c8?3$8~!vRj($A}uU=Fg=9YJ17LB zENGQM6b3??SrT4~pQCCCSTwXdG1Xm+aF$sDoq=;G%E6C+OjHB|6=j$e(?3oU!YD_e zBaERqK}3M`fp6jU2kVDlF3&nW6dLZrV2BVklD>eeCmRw@$$mv=blq}L$`F30DoT_( zxE~4D%rjs-r35a=VJckonk>k$SO~jKw^vRORSDGhU^9TMZAk=ZkxelJS|j*nAhyQo z4~nf1EYd1}%o$2HUcUxf&3T6N?@^|B%_1Xzpu8a*Qgv{W1kCj($m<9lY#0wke35h@ zw=M+48p@k}iUZ*P0A-FGOdE(UL&!5MgQ&2>qY``YNXp~!d}|m!TyZCS88?HQY3}HH z6Xarejr)N-{{>gD5$7uny9=$(5pQF-+f4DnK6}T1zM@;;)CY;Bftb~O3wQ)Hvo$pw zUWz+d+Bc7A4YhORL2T9HI-}8}M&b7A4-wpjL<{2Tdj# zfH9l8A=p6LkNh?`&iq*5MCsWzd7C3WQ3kM<{+mC6oPUouA-MrtP&d?L&A%#9AZEi- zkt`&CuGZpVYH8__bPqu*-S0~K!o$waJmoG^zwSa48qn1BNjnkj-4MzpaB#MiPcN6kK^aFKlfeL-P7GOBe1Q(PS&~-Bh7SIS65e8 zS65e8#jAQ)e$Kkif}d9QqS1WoXPB$G3zfHjx3b40{$6W4ftfYKG3D=TaW_XOx2jx4 zLts$AWQ`T9Y(@6AyOE<|Rz@|c=(XMY8Z}E?CXF+fedWOxE?!$$Jj74>2l6LD|A0-ahfAi&RW`is|CU8 zzUMU&*Jie^ph9HIkBmo;UKP}ur;WJcpY#!r4c`4LIkH?Iaid)U;|3au8`g|}civYg zaUe^z64$%;GB^F6^%6&c4>7*)ubX5;{7E}0Ry%I^6vGeakayNj%sCZk zpmMnHnb#J9;|>3052YC%BLzRHH1Dp*cs0q* zIhAHyDYwT=p0UXLX)(eUdHn@el(`?Zez<91)3=w_(eg3@Zw6Xt>CMW@RQ60X<`hZW z5kS`s@k&1$_0_i?ehDk9*jV`Ea41VoS|qv==Bu()e3xKGx)IjNMRJM45kU zW-70s0N-bK@cVY16;}bS2UT*1r$T@!JO$#N)&hWNk&TyYc9FKZ2Xof@tUzrg$rTr_ z@`~J1KLbqpPr2dTjHz~iqvpgbS#ZdJsB(m6Lf2F#u1XnFQ1Fim2VLyg-~*;&%UlDE z?7qyvomXTNTh$&E3cJA^SM>$3fTp}Sg=}U&U8LEdv=4z|MYTW;#qt0f*Q2tM?MOZ{1t_J$o(73@R=IlPJE)-{rn1f_W3k ztOo9oP9N}-8hlk(%O$*bYtU5h))=crdK$jisAXWawo=>>CFlH0 zvr$mO0PXik9{p$tQGR#nlC)*e*XE&=2Y%Bx2dm)uuY{0)%>0#$aV9Sz6dnjmE#$3Z zY>TtS5jN~ct=+BWk4H~iola}_vGx{lH9U6~ZJQw%`{Q)ECYQYtyQ_AmK9Nns>9V1a zi{g#yqw%D!!MsZvs$XazZ)>;nm`E>N315!YD837#0gs@m37A!AtpbJ&PdHCs+nlL`jOX+D?*)xYLge1UBCsUYqqB31`!R* zh)RRe#~0uv*pL3uI(X9hhr3fn z9o^M`FQ2xpW?Skhm>`bbk$&2?N|LB|+LJ2n=I=ap@@1QgYxkaUh4S5}mi)B;T!_x( z>q@fH^ML8fI}EuE8J)4o`?*RfXXJOGcE4aGLjI4+2)j|SHkW)k`^1#DTb7$vFssWA z(NS9&C)*!$Py7M7?0xsehS5H%ov|{P<*nj>t@s~*_q-6H=z#dr@q_IomDxNQX}4;D zYU{RppZ1dN-PKhqsptPK*h20%HxF=!VW)|)U%a7X!4L(-w{*&KZVxzv_?>&|=?W6N z65NKy;!gO3Iasv4)Wd$YcB>nKoJp!Lfj-9fh3+@+0x7G@+|BlZ&gd@ht?uF%FsG@1 z8(#g5g8K5_*7pj?>VmrY1JNWpQN=3t>EP5Z)nc4eIrSfSa9Z&W)J@cE{RD?bj%m>` zs4ln#HLu%~x+pD(`p6>UyGsL;=NX%YKX$2IS;adqlVxP!fW{f;!QY32Dl zRJF^-yEnS=)>Yqsa}4qOfewQ|0=30|O*zY**A%n- zzcIhuAAbk^5o}S6YzlT~+lMOazX0~O6TA2OFc0CRP-n;MFYrQb=twPTpFK#Pj++zcO>>@u> zPM6GeHjzsq)wq<}k*zV9yY#Vs+D`|)$+PvJ#fR2W$oKKQ&Q(*VyN-t?oC3d@dnx^1 zJF{clH$;A$2~qppcUG+ntgL{KT9Uwoayd?sHCg+EbUM>>B+EVT{+c33tph4B(wP6mV+xJ?-hDpyYtDtbeW5iAruZD6c=Pj_NXWy6&7}pRl^GIaY?03 z7uYdC$%~^{SWyCkge}RV!os*b9u~!e!h&=W4@>e%VNtcKhK2RnoZ`-~P*l&oECgT$ zNLbT8{U{X%PKxI4)@plydv&{2)fwc@2)Q7W@4MrE_jr&_m>NF081>SJ$!Io3j>vTN zqCXss`Pe=fr)QW(50e@c1#?~H`Sai82hPQ(qqFg7b}3IVd!0D2Mc(ks^XGs0Wdi8a z8UZ(ly@#K@;Uze~07$0b4Bt!Bq$z8UCN3-sk#F|H6L9o-lMxK{n zTdmIKPNVg-$qTfa19x+D`AQ>^ZLHtjNYDdRA5N0T7spRllFiXzbT-8G$;avV0_j6t zwVnP6N-^^{wm`^#4vM^=jms_)ohRnaO7eX=o*?LKvQb}WR<1OunO8N?p13gy=mkX9 za5PPr>6hD@g!m%d{7HH_#kL6hVhlrHu0GOsDGeDgbpi5|0WvzCcA4T7H7;M-EXSrK zcFzuRvibRRdiii|?ds~P-W8BSjKSYqXBsbod!u7k3sY6xb7d_+4LOfZH?>6HrW3~ zvY8@NB;^HI-Mq{iAV))+z8*NLFYfc%XS9f@Aeo$hV+C**Gy?%+3vf0_4V}+2k2h!I z3A#DIs>-HSO}C3XpSk)5?&RO4fP5i`FwqwmqoG45ubu$RXmCHo>*Lv@z0AELHIy)Y_ESWvZ= zsH9bYnZlw*Yl_M`?ItX26`aD-PJhXDQmeW5AEUAonCJh%*@d}SnU9TOWfhU%+ikcH zk)_N}4_q(GQFh#&o}733|7U`|X4Yaap;#1bjtXRt=HKkq-;(vr+^ZJb z?B%yvLA7JbwKuh;_qx+ACgp2m4aiOg9*Ty4RQIwYn+&K@lDFi@D_JKroaN_H2a<#h z)C*%>vcAD210xYLOP~}+(=33I^}Ga7R={RYaZhpt;(Ce@fBTZb9+XnzW^}^sLiF&s zJ4s2a;ZXBS*Y^$&Y&?Y8+EMqiZ*=@MB)*1*|Ibc)x2}f#{^_e_g1Ez_nKZF$bsY+S z?#YXNzy0L^8(Tq9^0>$g1>vpmIm=*%I-)N5%~-%3mf%JGygO-M4fn<)=w#DZ%QZx=v{>p_xCV2wCAx7o%e z$h2FraU~vWPf|lG=e37Iex1-osI5vVmA+c)c${`$WDgV;7uo@A2iL=MB{L9762P>_ z!h#t$2f=dSI{fYnDkDE@Uq3CYX85g+G8;}0MpM{8b#L#~7@RWW)knSvyCwL451$6i zuE6;FM_h!V6<3xKEU?))8;f_Q{vWUqJNnwC*gg19UW^?PKFo6L7RJ&g*&(><%6?iz zM=-FT(5nBT_omkGO;*a^?;>iJmj8fkRe#Jyl&7xMC9d*TPqFp?XRVvgUCOST?t$In z%2Bm_8{`3E{vi9p&n1N0TR5kGwr^aFTD{}($!MCF?l&`<$~5?7HvPzVY)NoZ_D7DK z{>NNwhIDbmX~$SRZx-jH07!wSJddFNvz8hgrNAx>_P1SV+$BF(z+Th)__uIsxGXto zI}`UxwMQA7Cg)D>*w2M}DS_kO+XFcJz=}knQ+AB#&hzBZbcj1s*%6h0m|L>~7NUC+ zfULq|$$9o^F|%a;IL`osrR@d z!$PY({lGwE_Vg1+#fzJ+#h+lbAGh9v5nJp&o%j< zxd7g^E12EVxwt}Z3CxOr*iBtl#s+PPp}0Un4$6irVxedRmru*3-3mHi68pf4+~3pQ zP?yUr>er`*(~jcDxK9k$Pa8o3yNyL(?OixT0qE{8dQ0NXzW#ySR8DO?om((`+8aIp zSxcomR9>zDafyftUc8BaJ8uzXVmh0S5OIO`&+Ns{k0`=K=Nz}|6N@8F_IlC&ZDLBS-(STw z{QEb#g)hKOyZ}Es!l%Fzp8`uvZzr(CKM`-EGfh*(IvFaj7Y3COmi`ctB|d^(r^dZW z!e}{GMu_N}8@B6hUutX&y8~F)$O}V;c*PB`16KIZelPc%DnJ3I=mwoRV*oXVCs%%MM`LpAHa+sP;oTKqw5vMA7;d`sX#>8!^1> z!vt+JS`Gf|GIq^)Rg$lF;V6yZowiDX04^GpW9yORJ0U*q!GzMa{(OkrQqsOr8f&d7 zvY?P-;tE7)Qqw$MLoq^@v5Yezt|Lp$S z?VODJ2&yAOJ?cvvL}PaZrKJh(yddn(bVXV}!IVI#msyHi(8vAhxI2E8c;FZ{1XxT8 zI?@>_`eRgOlpG-5BTXe#>Y)E3t=H=hpAYjCNRr`y?BW=qVZKf7ZruB3ZUIyBFUj5Y zZ%R79KO0KWnoY(MN?#_eA+CAP#HW1{5rWZ#*kJ^48YSb|5K*3hJ^CmW`(8!F^_k%U zU>6aK5UB-2b2%yL3*XzAxc%h6iD=UQ;tP1cWZg8q_#(OcP4cFs8+(W`%ZNgWUVM*H zZ%o{Oa7|J~Y$C5A-p_0>wb76UT`-XuFGK@MPi9jDEx@qDb~NNy$hy%51TA884PMog zm@yAVj3G4WpJ1ZA(n{dXU%LbH#uN;WxJzgi(S!OIiU4Q_@We!#a5~NnDfQr+t?g>DFcW@WB23BSX2rrg!Tm1>TEKQb=^DaasB`T-*wEKdT z6QK(3C6i|OEMquW@Ru21>Q(A_x~gJQ>V-q@fk}BAL@w8*U^f=j7F7nqK%&%ZRnf9ue}EVfA=IkWk=p2}SL5 z*Gh6cLtHlehs9#rA0#Q(35W`a`hm}p6E2``PJCWO5yT-mt}B<;CkT1H{5m;*dXc_L z9wyIgr=!txY>6Of-0xNXcwS2oxG&G4Vc>BHSu7lxlr3zB&6o@Ffciz!UrGM2e|aLY z2>WOSrq1g*t${%-BO#ZPt1hGnWY6JA!N*VRgJHXD>sf>8QcTSYWUc z#5Q?_c;2W&fMaP8g@M8RvH>E0_d`BWMwu9TR-CMu$b3+< z+0tK$Z3q8AJ1C=Lysn8HvaAIT1tXH#aNoR}MaiEeOGo|Q(hB~7r=S=@Pg*(}r@t;0 z=qU%7`nKHEMCTI`f$0d{P6GNN?BB@?ta_N9#G8_1qIf%0PN6jAq`yCZd9J0I1%-u9 zW~`CD`5$H+??b}5YR6pXr>i;L~+Ehh#>GEsUpI3sdv1T=-O7^@grLk zT~;<=0BRU0tV;(Zh|0Fq1Q|Ow#9_}ZVipZncCG?OqBG3wyA}6oz{q@1U z2W66x%e?JH1f-NzER~>Y{@Rx)kCC2CmB6fHr`T5|f}e&x}SaXz{2vdv&lDw0N>UXcL+g*l#Nr`=+HnBLZDI!`4Mg9E}(rQZU;0Agxef~7?iNx z6DVeGn%G_lkjw6v+TWmz8%8JC5)}`q!SgN!K%SPe*ycDXt3!6882z5g{KI79-aKwH z3<=DmYWFv^TE6{%j9V%q%Z|+TXpJ#dxrEHvXGl9^q zrHjDDNLJmg5<$3?LXqQ4j+Qr|pwkK404{){@#!hcA;|JlHkbI8x2$L zjw$U;)F%lLDs@Zt>>PT8J9|+L1uo{WRVX*)5oV5gx+#n6F*+>dZnUllFnlNMOdj*!}ZNzY%C9Pd5ok)<3DC`GKJgFP2A}B6hLX=57!yWX$eVg377t0Y2>3;Lz zaDNvf-Hzcy)F7?Qcxm-F;2)1TB?9A6R;n!%P%$RUBWxnl(=L`d6+}uVF)?BvDxnu4 z5!H}?Y6=Ec705WP?w-c|sX?d_b?WcB!G$&CATugJVp5^9rW$X*VvHLWb-Q!1*05+Q z)I5Dv8ZZ&Q#NH};0BjNz5MfJ8N1(B5LMqbsJf;LZ1$)G;*xI6_&<21~)RH_?fOcW& zsE3e_4)PrKQK4WuOBg-E&@VNG0cXMy|o1NwXf~(St2pQR8 zr4 z)qY{sG4<<%ba*yBw*y#!^d=nR$KB~{p!=%N6K=B+E4dG=Jv2}T2|3+U+_gMC6hDGfQa3i)myg={1(IdH;|pFpKbN9JE6<;QziX-$ zn|NTp3(OK$Et6nnNrrf#vd}oT9K*JE>YvRph%{{j$n-+_t1ba=@BVV{llx2hDX$8) z1{8U2v-rEtt3nr;dmq9DhT$Kq>QStYKs>O}X`ro~PF!Y_3mi`~4pi_y$j#zPK)2y{ z`k72V!i7a8Q&NL13g_3o<0{;LZ$7%k)TsB+1twFRul?TCdpX6fLYx1rEsg|rSluSj z)l@mJYjbz%FibRIx?6Ti_%h0=>SmmtpWy*gDZ9yKs>)-8C+@*#Te7BEA8Cc0ukaDh z6H&qp-^k2gyoyNGV4)w?HB=)}vr3cx4~uWdZ3Del{89BDe~d%>JKybpt1|~JiJ6+Y zSUz&&t4%!>Z59KZNrKDn^c>nZGViHC;OZ$`EsaRdpBLO+$(Iu_0V3S1Rf1q9*sgbb z%Tit5UGS932_RaWGV9iI?MVBn%dy7fXN4$BO#uw?!tv_!@TouPh|>#hs;RYCH-SKq zeF7TVSRFYfFS-LH`dQ|GbJ_1-@a+kb$iubL7~o-*=Ie)AS%jTIumC@6FVAYgVMVF( z(0-vwJim)YtJc7A!A{%=g6?Y<${E3?=L{)zCYy>s)tw6EOxzTi$eMgn zneipg@4ijep4XS3byxqdvHCyjtAG9Zi#z|d=J-=i&uFHSj86`Ko+i+t8AH$4;;3fi zZP-DO)RGn|um<5gyGsKnR}ZOZ^~N~oj;rTo-61?KH3VhrJ#z&uSOv^-Xv!K=*dDa5 z?&W2QlTI9$k0o``z)(wu(;`!FaAkd@*HvoD- zg})$H(nO?fop7C1BL9#2LCIN53`_X)<0 z`SMFcYCh5=IQ-`5YOBY!c@F_Hz>>G1wo-~O7^Hp-KcO1DCFsmStL0L?zQjY&baK+g zf-oIjt`6Wqe=%6?^~adeqwy;zvNOCaeh$0gGuQdm2n+2%CesZ{zK*BT*HKYRAQkuJ;8kY0(5LWN7@x^)j0q-h)l4KuuNAV8 z9_@MzBo8WPA8F&X>Rz4t^Fo`fxL=dXJ7!w&duAS0+%@T$n)9k2H*Ll5qStuE-Q3tp z8lBBne+%~`ct21YhH_kWmk*>hPaq}BOs&W5`(So4oUA0HOYs9%Ic0u;MD`oByw?nc zqgsb~3Rf!Rb?e}I0MvWxAucblRW=I?Cbd6hx5sep$ee@AT1tiXvddhCP$B9#_B08C zp-Av5C$?$86&uxY|D_<$tw0z3_yyypxS1Xmf8)c#fX%)`H6?Ve;!XjO+a~q?L~orK zNN$H~DhnM@ixwdvUV)(*Z!8HC!SETL(9+Bx;A|ERi)QAUe=QG969%y2hZnz~rZ@-m zJUZanvqbu!^pM|p!e^)>nkWEa=@twuKGZeYOuVBf%C?LW{j~ow?d^!egTq{~3<(Wo zf63rm1d_Uxd95@El0*Z|ppmd7Hzhr*{{B4#LyMJtrvx?H7-@@r3mrt#u|bzyMGFhM zffj^3rWibo`CLo?-Rqs@T-;d*at&(*KXGO_CG>p}B{Jf&ZG(<&Mym;hY;Tk|SypBS zzxczi`n|FZ-}RC31)a-$g*?hW^vRr+e^6(Z;3c)!Ny0;rsU1@i{`2wb7ClrnAgp;%MjgVe+wG{+;2*b=I4lc#vP3h5 zl1(8QnW~-Rr0@0NtPfvVZ{=IIf5_`nL(A9AIg1m})~CT8wUwy$giwcm4;P%UCN3}G zIv%SSTHHuei`6B}1Z`BenX7n2|FxynFP;x& zv2?=1RPsxsJuPj@VmSvABm-~zBV|-6narhnEXs65BI5J$l`Hsg;WOm7f7@;yBpt|W zC%{B5gk@}9 zEjO7RW9*mLSKul*gy}L{oj5@FWjQqy>o;H^fh{1xHc7}k9{0>251Od$h%EgEI3W`y zcqB}e{N|V_Lo%A08Kilfe?{`RMT@M`&s(oDND-IVw%yz)Ea|xLbE~7)&oR{{Nn$om zSyi|7Hrp8|)jb_{1%Ys=%ZhGnc*M`G(RT6$tL9?IQU-4y8P z+)+E<$@v%;f=qmX3q)6#B*qmS!FMh>%+BV7v*G~;ShQ*ETu>2`O2r7Xk<0v~e1-bM zVKe$W<_#2oF(hkMe;Xb|iue;75Vf8P**v3K9^=W|=#-e;5gx0#rPf)H@lM)BBZNlI zG_^pq(pq?jT98u8cBUd>L4D)R9njuRD${qHQXaz~3_PygapD^zveVo?Fddb)QFPi{i;^YpauOxNf6KP3w}$VwL$kXs~>jJ zoJwY7BR$YM|22@xsh0t@gkvAb629GA2uwM+P-`lH5uowV)*}WvVH6)MZfb=kcqjU5 zI2eKVPP_2tf9Ne93+GHC#~fRxIq^&)1G;1Ui^-YJX*~|%b$KgoJ%6I**TQbni{04; zg3P?U98rywCzE<}f4{wd)Y#kGX>B$RTJ7DVt@aPQJMG5S(RQP?)7%ojG~L5Vm8WoG zkSmFA4d_B^f)AD+idN9k)sG$F7=v#=)UaY#b%6+6f3z#n$)@T--9{U`qv89~^DB4|m^k7^Au$_sDgVV@yZrhuFrz3Q+anJ?i%MY+IEL-XqMvy~cjy zX%iPz-);(qRX>8EJ2_8JULXXTB^tFJ?5TX|>ZV_XgC}SdkKBwBO}Ea_$*^c5HWlS2 zmrtlifB2R=XXg%YV$_T9teutk7Q7*a!ee(;Y@`jmDAR~wBQ|1MNaeE}e1aw?#?QeD zE#7Apnas;~^3~`7W>b`DRIXtWO0Ru_EqjHHY8aVh?gFeY?tMfi6 z#l4BtGS7f79s*F^*()lkvui3R4bZUC>{R;mQ!< z5y9nfj#4$3Hf%%RYvVK-Ws8KtC}UChM8XS7jD0DhD2>zQnt7z86fJOcCX7s07~4|* zjSSqwfU9RZ26Ves7>sbt0%MIpuaiF1(5R1jJ3KAqw!5-p)M6;d)(pDB>Q48!O}LlY ze~G_&R0N|ATMiuT*Nzd1>bLIT^1S;SjHJKz)2rWlboW@hlgms1^p=bYyZP~Ljc`@`P(N_QwYul>3=_o^#)O0G z+-nAe#Cbj=MXak?QtSVU`eMq3_?@K7z54N}_X^TM8j#_M4b`>d*%@rF{*i+aF&|$~ zwy9d$Vx!ag*SbEf`(%{JkCw4589f2@YYq{Zbw}8uSzdt^pMzO~hZK&{kcaP!e?|9~ zx4?phb6D`Qaj_hCXrIj+WfVb)NSBHAwi zH+?LYwMHjtb!y3@MyJ(LFKXt7ZXX^bKQ#9D8@mUsW+y>poz3>{R*Ne5c`ch9}q-wc};Y#=#p^X|qZNb0zsI}hazN6NVYmVlIqbvt+ z8>oIxdGNL`UgzyU%HCC;e@bX^Bdm~QKL10nFIv@|&ldX0yi9EqU?_>%00I*{`;q7@M*Dk(NLkiN-flu% z|6^2qQQ-@MHLVGG;E=vkk1O9U^(5{Yw&hh&&ssrj4{ci@j}@SNwVs^4hrMFndf0mp94puGNt1`Qlm3pSMC+qZynxt&0-Z99ZKXSAaJG*0|m5qJD zp(NEaSl`ft_MpAhhN{YlwLpwk#sWi#jk%$YDbB{BaWJ{@L0nH5onYO7h0L5U(vTtu zz_jrxa#^1n#>qqQ9&hd=v@EQKjJLNcwlY4p4{UhB+9I;{e@XDNIBy?=0iJ^?=&K92 z07S*Uzn&nF;o4u!%rW~CK3n``f!1Y@`cE3A3be8ZSVi&p%?(X7Xbv{)6#zd5rq4qQEywjIEdYC?0CS0 zhyld=5kxy2#RP2a>@*)Yc8+!rpFV2tXMh8c4`Pr|f5FeNrf52=7)yX^?zc9N+TS<# zw|Ck6qg-ipcc>e9&I}oWHiuUML^*vC3vbcdkk``$@A^j zRt8KtGQjie2xJdeEL>nyml$ar!=}qa>*?N3^C^OoHnS!I*nf>+bB{!$lxT=)FNPVM zse4EVe=zUHGbeCMh(RJ0^`q9-R?{PBo}upM=FbQj;*iZ^7=sHq{^;q`#-5@XVi?b% zfaPg4M5ejR81!a)fB$d~q&(W}d|%r6cs89(ex*6_WHcVnE~hcf(7_}F8loG|Cy~n> zs#AK-#4tA-yBzx;_FD(dBQ{{bhA`s^WwtxCf0iTblye3wr&Its1RGB(1D12D z9Q46Yd(9%j7lMwb7WKPgiL%q){O;(W^|T3Y$Y>hP)VuM#8jMa}NJ2SqLrLd1_nQq6 zb*r`C+&mDG8lo6aC)0b4n@z7*a|yqgvj|n{<|ZGM=ohJ?8R} zQv}GC{t)*S`Z>_1Ke7(&9{qq7R)s+bI-am|`ojYW1P|+uU*HtOB@v-%P15L*vT|Ml z|1+G3>=g2$2)yQxt~M&6WseJX>Z%P2r2+U%9~$kOga91TyAkki2-E6L`+6F(YLJFXqtn_CIc&XWc(cY~M*8Y7(vLXo`gwoD29t;Rt^yWj1?r~3#g1a`1|)5n{NM?`YaB%Xw`;S1z8g>ZwyQ34x!!PZfG zcgJnAVwB^F$Uue&lQqa~u*|@19jYgK^QZ;g_@K4j;?^jJ8qdbwOpe0o#b*S(yQ%~#We8@vqjC;v zUZ;Z(7mOGbBv3(-ZjX^oOQ2^{-C`e81k4d_n2cTz70Gs>1h}1v&YQVtHNJayJ)S#u zLSpUBh@LqS7cR19h_n7=ET8XDJejf{dFNb_!fG1e_R13j@gU#Lf6XLrt4aj90m*p} zGYE9xqwT{Tm>EL8xw{@uBo41Jft(`9Lkaa^@%d*PnTnj@A_g1JBv^ZXLGDy09Vza+ zWs#%C4(HELM^>qcA;)tl(AwbyDG>=Q^SJzRh_M&uD4v4`wj)Q}@`#=iH(xZ*B-eo3 zjc|L)y-%s&%(y4pfB9V7?RX{@c01!R*YOOk8}oP8gssZOte33bvmtG?2O}vV(H~BgZNq4nM%FHwiA==Nn>{l z*PF2a$+s1YG`o^G+95kC?n;*M(bL9{t*6*CcCi0BI%v0#I{1~7#~bUhc*7A!9|4e& z)bamPnvsnZf5n*;4yEv-RGvD8XBW49atg!7dQOlzU5661q!)J8H8A59YGXYXQDKD zZalf2f9T+B9w1&~*}U^chhmp2X=AIXEAg!M2Ipdik%8rGCijd>`{6YucI2{!DrfKY zni5lTi5bm^T(QmR&0u@t7gH;q_hJU<;)2V3bpy)=3>cmc6T!{dedP+vH9+0ye%Jh| zaCz8>r?ur*H^xZPQ6i!O;D@`-ANR1IE*Ra7e|XuRA&DAer*gYwB4!|zbZIl#qEhuB z2l2?ENE6%08Dxz`C$EIbEaxG_oNcQ)J_6BCH@Mk>+q-vi4}rSbRod2a9k>^(^dnf>B%7evX*2*X7?9m z;@IF4k&Jakny1&AVLsyY#<4|nzk&0pe4pY8Xa^nqY8^XD%^|jl=GNopQRCoXzxC*l zM#N}J+>2M)w1B?M!Mf0VBA zoU~#QR+~_)a^tRNr0G#Oh~aOJO-L-0M+A*UCT|#;G(4RJ7hjYg&A$#6mk44KxcY>QX z#RgU%X9HD_S)ouB7@qIv4TlQ6e?P<(8YB_u7Z{!k+Sr7?o>yz{=WK`ub>u%8<~3R$ z?oPXH{7GUKyuTicgu!TZiR105s5|l0@quOv6fy|!f0wuO-_LEbJv~Z~W9PxQOd`Q; zFrMZtC?3yP3Rq5&>vb5|!V{sAeqiIe+iA!dODt~g=eOL(V1ym(aKa4qf4I&N*wYFvDRRF#k5GcG$<CpPInI4dwY4E z|9);$?^Ak$j1-r7Den(2f5aphbpHVB;^ucb=E-g8X0@I_K*KtpBTNST~&31c#tF=o-?C1%O1PUhdgIF9}HUDIU zL<{|)Y!)>ra#>$C+lNR1t_v-^oc4AaIFyb%6wBtULt>ytN~9rmf1&wZ^44{D;uIfm z+jf8MeVXB%sZDE8g3#LN0*T%i1>cT4&h>w#Gxjk}eH3Hr)DUr$px$K5>K-={qq zCykvVq4FRW^;y$$tc!z2N$rJJaqR*pJd#T3I%3;l&57OwV&&HS(lyGNdqQ6 zF$cw~fjM*_*PIMsf0%&)ar>jPHnL&ehXeBWv}wAN_g2}k=G8<7*`bDLa#(r8Dh}y4 z9oPa4%s}S}9IqM~flH7u<9t0O%;?%(D7L%B?EU2&nI!26-R_e^ax)r4ZRfiEWh|Yt zZX3R`d+zJ|X-53|ewK?WLu%WmUO%{5PYYTv8|yFg0xV*>Br#opuN3e9_eXGAEtPe04rg^lPHF!|<;t(N$=Ye_J@sgsO7{mGTEj5Alt zu3MNQ9P+KlQp=5jZfwLkQzBdQT&`<)jl<%MHD&Yqe{dJhYJ2T{dygRM_gAs7nhl*Z zV75#!;DtNyENh8ARB)ui&^u)+*U_(HIVI79-Eu^K26|Q@ni{-f@fCgb^()9rJkUu| zh6eQj4ms5;r#r^IjzyRF7GaqJ+kxlyZm4A0b^ib=JwlKAt7N|C<-!U#_lMZe@bK@t zsnz(`e-7yT^eIjnHP&gqomfn1*Sy8w2@}S&z_Fv*N^yb%d`#B(*qT#I!f_r!S1y`g z%J#Vv&--7+!p)lVvLkb{nM~|xzUd^$orc-jo+&F^j5YZbCvR}Q%Tp#6blDooy}st& zxOhcJbJ0%l6)HE*!x=U%CJWAa_aRStNR5`Ve^1D0dGA#mTEdm>1y5{p{ZW{5rsRW+ zMAd_waqCYxIjE4V|6VzE@ib8E%1mMkwX?b3+RJ=Y06gw<%;{in>Y!?0N|ydKL43OK zf{H@cTVzM(ActPCIdj{CoB>F0k@3bSMI(dM<;-ph{rkp#i^ot$bSNl0t9X#x^5fc~ zf800K^fN?0L4q3w6|%+vOdQx)i@W3+-EVF+H*r*(-*!L9ZTel4(i%p?q~+@+7qh{% zk1JkcKQ0+{*QE5*c+SR?;X!V%Z#`v$#)~`U?FHnzPO+u^LGG9mPWDukupy_QU6uW8 zCi0RpHs&GsQ-osj_8>V;;z91blE>T(f4Aic)e?dgoM6lut=w6Y6Ju^E78d7H_EzJz zjWt9(o9B+({oH!Zu&HEyJAgK*8nIZuQ!>?DV{jfY9$a#TlV>-DM-30|$1AsGe>(x8 zm)InXqAW&uAcmGbKQ5^85OH9K{R>9-{u7c6h$oW%C}zPt{&NpX9^8*5oyFebf2?V^ zxk^&$1B*uJ7o%Yfn)|qaq)tVVEW97fLffv~OsASND-l!Y0d(@gC$XVb}<%Zfe4v;iQ$yL@!0WpfP@gjn7#CA_Nfg zyG&+2h{v;_jpPb)nrgg51jEZ)e@?Q>6%S~HLD40H2RXZ0QQOfPVRU!R_Fmky200e;EWMb&L}{ z#dPQDg}arWA{WiDFXPP_Yb^f>(Ud7G%G9{bJ+I_A{6TK(MT59?Hq1Qr#G)V*iqCNP zCm|KM`Nx0d$`p@V51K#XA~_u%ODA(~L*^sF6WD3`k~UEK3}%?P7pgGMMZ|I)>`BcM ze)}rs2g}s3-*e%A+AF-^KK6{a`UzSUjXMSt*BEKs^9xCRJy@szfC+ANhp&Ca}-woU`G^NVU@ zu4`Y%>Y|-lpe5W8e{Cj~BA02UVXm3Y_EteNWeY~wjK*gv+WNU>oOvPNl~_oGuvOd5 zYzfy;4Hg@jbS9WgB=WzG#YWgxu%U&UgIZCcrCJ9a^Az*dw?V{^f8()G$XCz~pkZO>!^`@- z-Hv$mIne`ieh0Rr9Qt7!`OCQ)2dx};1NYHk#~v0dSz@>`RSaCAnTP4R>d@DUnVvhCO_r!7=myrv-KfcT<*`7@H z7uX4I%lagk*Kp%enHl`c2k~0&^(E;Z7v7D>6mfT}#HeH@OgL^|D2>Vp;^z#Tw~T&OFuSq;!3l*4U@qdiXef(Xc#33JxwF5o za=U6fnin`x%vl$GxKXyVcpiV1o5w!VHXldXJqItV8g6-IIo0y5#N+F?g8N=szPXrz za40F;e^7{5xv8P2lraN+T{@3=45nLr@d+yhPk(Fc3X@xlzs_0J<#cU8tr}O)UqbBV zR(XdwA$v0*oKIip+${;Yl<{*w^-@_(@2_)ymV^pkCt$rxHkS}Yx8$Ve>zs|9pw)sw z=q0ByImGoOAA&2UM|=+;xobYns;Spx6e-^U5$H3$LignW}v{xK7I^Q|Av+;ZK zyiq#+r`^d5#A}EtEnuCXm9wZKTys-C6SVUHdz>av3-FC4xPU8VxySpBy(f+g@=F$n zkhFiz%@8Z0&c@x#^Oyz-G&`Cz9xMiW3_3a|%j%(71xRrR$c&(^!=)6`eg?JrAm;D%gJZmh4cp>D5 z^ikk3;QXH6y6BjJy-^EFo8lJY&3leAq#Y>Sm_Q3O z58{ZhY{Z-kpW4l!W91si-B=WZ8C859Bgp+APxHqHPafgA>a}g6HOQDFZCd)ACwA`0 zFmBK~rP?jWHLb%J1V%?=fHgXL#G$!^L%U#z#F10qlCBxxjUB`Wdy1`;T(**nf4`DJ zCQsT}4B<*W&yKNqvfaQL7*)yQ2J>=1?n*3*Oc%;F`^tE3opKw37;G$i6s#SJV%e&&0VPE(%5CrGb{(* z&bGKIjsqCEy}t*sq79)oWPz6?A{xeMPS+O>R^?vhy&?6FZh6*P-%O zC|D1lZIDI%4)SY2?t-SppulaQo-~b90mJ2ohGiXb+j$q@CEw#%^4RvA!=sXaKKyL+ z5RYxF0a@_*Z9~kXGXFABe^WrJSils_dKEU482gSM!XUhZMAj>l{kffw^)i{@z@lKK zvS4w{gFw3w9_AAfCAaf2;CQryNW0#Ksv~i*k2ZH&yw+jk0NN1n0a(OGitXtZ+Y`yd z6q{c|*xpt}-LxZ40r*%Dd8%f1*+{RNX7ny=MeY*k+sKO{t1xR2e`W}Po3=nt*n9)A z7Ls*>whncDj9bvy`-mcBR2{fuwYC|Pm^XW)CUB!S9)?WOfk#&Vlwn(V!#AUm!nbqP zH*VRM@{PoU5rEdy2eHw`tyqYHdv-bAYKi%V;t{b5qHEAOe#K3hxZ5~|-^Y#0Bfnq! z?RKo)gK+WKWFB)ke}y08f+Y=($#{e%2v=!ydu~g>?e>p9W+%GQei+TfGQMw?o72(D zmvH)~3Yrrb>g0!TQm~;lHxW(X$U1@slMv8jbx{MhaplsZEnJm28Ta!6)e%zdpz))I zf~C|egCEOlL{^)2UmEXHs8_|%Ep5d5D#0BJcEZ3u7T02af7QSaa-vnpQ&2F3=HeLb zgkGNTvAo`epBZVco)tK_m%}r99T#l_z(2m3(aP4)+<`8{x?lr5L#?Io#7}@Wn_CRa zRDK;7H|pa_ZK2wGufEha@}j+UNPk->dI4cVhA9Zl=>qc6{R3VVv%IX(RELNRlJSht zJ%$}iiI`dDe?n($>K|Yn!zon}v)s*Db~9GLf=z5b>YPxA`;eaY6QdprgA6$4E3W;_ z2XB{3iM>$Z$969t2+^*V5`Cd4q>Lf@UgO{i_VEz^kD%W^>a=(A!9@T*COsvV^H%8| zBhfQbxW*#WGy%z}o5c`G0adPg<=Atz16ifB`f09U>34&|U-S~2Kz|`uiEAd-3^+OhR9c@qX<&|xD{VVx_38chRH&^ zD#t?U@1ON^mI4D+gQ_C{Cbo-ZEyTl2Dtgw1cg4k6ofBL( zLL(BpL0^eRJpMi!x*l;YwHU-B#%03>yYo97e>6jlJnk(ru2KJktwkI@K~btS)|iC; zPs^Mt5m_Xh=9qXDt_VcX|+Jp_VBkV2z8$v4Jn; zzI(Jex_kvOc0NtOjQ3YJ*6-eft^V3<)&ksQ^Y*ihHy|5f+Ba`jlJ5;0Z`9Y3wGeM= z<`uJ<5y4lZ8E!M^c`p|yQSfAeO<$g*f0tqpq@U)X&wMSK^Mr5=7)>w!lL0b1o>Ii| zPUI!bJ`hG(N!$c=o#w!wPp6j;*VeACuIgPuy3TyK10)`gitm}IAxD=&&y!RsApVvJ{qtTeCH%uZko+#10de;B;TS_Z4%6@LE^>D!}hfItzs z%@_DlfE~R|zq*=`duC^k%D$mmCLr3If zS+ij#I1Yw-kPc3f(UOaRCZipvxS_>cN&QLPbm-N02uNCo{GFYo-ZVl&9mH&&O;#9n z)xu0b1%3PsPk#nzwjkdXegbJOE!cAU_zf_9V-w19g36n{P}P41F6@hqqFg7e|Bk~Tw3zhuA2kE6M5)>ksbAcP9M3RkfK`vZQ8%J4l*ym7bqeWTQ-fQjxhu#St64 zgb-&1S}FG(X-_v9os_#1xATCt7`IjN+g$2BLD2Z&*^G9fGv;HGe?YxhfaNp<=LO6T zFZ}kgsK|jPy#CQ>!c+q=1h`Q!Db0etaC!Qk691`~;6vfEXo>%^^;s4k$L7g5ugN1uQDt!&aIm4Lm@RS{TA zu{wVQZ{_js?823>5Avm+Le^4fT3AxjJk-)}nD*YFWwO?zv|uqEsi)7f>Vr_!3yHz4 zgIdN=5eC+z$zf+Dz%C$OR=$3;2alu!RLiI-Hu{%SC7Ah9e@A?sON7|@q5v`239o6y zcEfANY>Px15?LjtblRt-d!LapD`TJi_M1}65KpLN)bH9ek3Hcc^o5QnTl*rZ(P_v$ zv9R#;=Njl%@t&wNNYl&4u(!`FHZ!qcRyRYV#==<|y~Gfi$r!yLuZFWVSHNS==-pc| zT%u=0FQ@ZZe@=|kH)^h&_1xCD_AJ6SnQ(NJIfUEfHyOsV#v6##1uq8gxkM*sslt54 z3CeK#do%7#&v}H0d3mgs&IQi~D+K*!!0PLm=H60<#11%kJW?;kaGFFF%^V3TlLfJCY1_Zu0+#b=4+xNc?Tg`)zXtt8o3DrMb3g*e>gAr|Kp*@Kv7+k;3#t4N| z0Xtdwe`K2|CK~QNK8Cus6%x#=V`yf}<>{5ZshG7aQWerl(n70hZRLr_V3KVb{x2b| zygG(fwp^Z8*_*0qrH9BBlFE8pe4EsalNWScf91nP8OG!ZiIvr|e5IxGq%zejpMi*o zGUb)23Q1*~zzi&*6|#{rqRRn&p+kasbq&S*f3kV9g>Nh7vg23Nbkc!xu!XzqfYX)W>wEW1-FJ1A_nC!l{I4&hE77U8XS*$_(%15Lepc#%*IQg-dQ?%lNkPJ<; z%ZheUR_*m#0l{mLaw18k4)+iZH{M`{^$cD8;(1brZ$UlkjD>i>dR(i83w+pKtxiiJ zH}xNw^AO9RXa7gL1OZ1wAN(c(U4j`9vQLXI(c&COWX>n7AW=m8|uwHsRJL{xpr(Hy|sh-8QnvV`2V+;CtyMdrPA(I8D zghUIg6_YJ4b325aZg=~G#w}6~H#~8ju~AGrgH18*qatGZwdc_?EO#rU><$knx6GQn zjLYaF8?6$fUQh#I%3dW%$%+aWU;jL^EYe2<6^ZOdJ!f zp(DW>s;7_%D-jYXz#*iPDPK$^_p)Ld;jYJ~<_Q*0p2;mNxsRKO+-lMse;d0{NV6PH zA>9h<7t^q?;4RW~atU9STi9TP{p{?uaWAr*qKef#k}8Co(A1W!n5ej(kXCwXtqp)C z*5ZV_ut=*r@kv(Mj8XF z@}u#K-h=8%^K|P$NEEah(gP)mDIqT^=8>~>xQ}ZnqYL#Ttk{spe@XGUxqAc$rLFc; z<24u=^kR%cV&!WW)2^u8ZIQAuK(NveLC?kx;;UXmRUf%h(guL8C2&;ww#eM+-iD#e zVB+e((URy711!}w&C5^1pgSpy;3u<~TweD&be^b&zsF-#LzkD0Je*}h( zxBJp^$Y)Zjm>lNSZBS#|1iMoxu;1E@HUKa{geXPC%T+HSVnMlziHXotw_q3N<|$+| zwi^uMD-23|et&jxmN zIg;R6DM{pA^(5JN@a3(L1nuNVf@e9B;8`h2$R0(DDRmId`ru*uN!K)Y{E!b{I3YICRgubbm5Ley) zEgVJv&}c=QPPQ8of@O*cp>HZC1VUUP)Y9hU*W1}UAzMv*ALsL(?+Z3i0WKkxqI$&y z%N4p6f7<<)sxYr>nhW=VuV6E<|-G{ zv7lJRbYw{N+oa-?gM+*r2 zBXZ}6&OcN||KdZGR$0U-op1j%^4TkMlaBxuy>SlxETCRL+`=UP>+#Z*I*V@@ZO12^v zfAVcYhe%vhNVgD~kaAJQV%p^jRZP8cdWQ3kbbQdA zyr_P0-)}y~Ne4_R2aV2mp?>5e64EWGR7|y~NX0ap4Si&*r`q9e(7%vwAu=K5qKd_| z%N44adT`+-v)#f08@;phjAq&oDP@Zmf0HPCTQO}AW@owwqeJyPg}^xnM>IHu++-05 zspAS4lgE2qF@5@z)?W3rK?<){WU*w!Ax)%EF+I#Hp~c4)-r*8i2bmbtI@@y+E*Qhb z4-eE#o5y7~>`xCcN2(AW)`i8jf$_FA-wz-f2tD$ z7y;VePtxh3CBVL@;frt1Mc&Le7SIDh`ex=n5w>Yl( zcXM=s?8`l*wYvnFosC&9^d+iST0~iLq~# zf;!-f@3-U3>8LS2`!(Q3muqq*?4K@fjG)1ej82z>-rq^SMWCJ~CS#L0?@L-d31P4y zjX8_Z(eQm^T=8F1y74j`T_PLiWj;h!9+J)BVxh5l_ppB6op?8xnB(V;e=V3KEJ`qf zml?{=Ri6nWCk{JOpY2^>AC8!C#Drmw?4WQ1FZlHFV*Q(>pZs@*ljL`*57Ob;^qjB0 z_#$hZ00La4@U#BUrhM|Z#2gLVrhrF!Qoo!{&a)2MN^JnmzlQX_ZmcHfpkW8*2pF}xAJ0fK8yoyDGFG;6_`$KY; zmSrlVxTx2WQmi?smPk6lIqdn^^`ORvm?%>V>%Tq#|9b(b43P9Le}t6PwcqqF|KQ@SPN4Y8->#XV{-m5v`N)&J#6W11}?bB1}1v?S zP*Howl0#uCJ2^Q+0zZQ+PVS;%u1I8VPu!yu&lDUHI1LKt(0gr28P@gSXEjJ0pS5)P^I6O1f2qO|UdpYUwu+21WVPr> zc3}lgbtSiiAk#!;bdl3R5EjGct_aWX(~}}pi`L|TL9iD4OEFk2-*2qMhPzb|MF?zX zim8oi?w8JqrErC_<&|9iyFyy|1(Z-;(;QhL7N>51NGt)wF(03T-gu-F zE})brb5xHZf5&9nOGYsf3$D8WrmQ9UnXXmfX=yv_8i^t47?nnu>Ht65KmQq6+mBz! z3L2D=nTmzkn;KZ4&>bCEAdykQhz6wS_MREhpsdfv1S7ADkdFNbmn88gngP4M0=53K!RY@h%Hi{2w!kIbrd~Y9U@vH4w8f9R1u^PxT3Y3=&O_FIpi9AwpC-)kN$ zB|qn5uAGbpqj9#*h9mb(-cpZUT2k4^gvC%0!eVtDslCJ9&4WXDUAK2pqp*nJ@lA1c zrUcl1Tvqdu^r)n&CUSbGs>rg^{PCS?9_$}B->KquW2f_OHFpnpcHXJUL-caHwcFgf zf3Eh&B9QIb$M0Ss|9dvV5zYzX997}4P7Rhx$Ga!+3iubB+GI-@W$H9b&ySZL;$Qq( zNw6?BI-9Ll^7Tsc2&us)mt9ilO|NK|moleX z<}@e+1$rAfTu#%pCxymZXdD!}w~}mjf5%vCkvel<6e1~G)3UWC26RFX^e6sSer_Wo zuZklp87oR#<^v9;W5q{Nvq`$ihAU7D*eMGh-7-7HoL+F`UtIUf`+9*XQ=%QXw{lQh zoe2-f?Li}-zS^TISRKW@MvCdSx8FQC_({{Y>iQg_hFXSte#t!b!nZ=b1uOCIf2MNh zB)qjFRiSc|O=T%TMw{7qf`gcfr<{m=24wzhe|>#j)J|@eol(Mq#zC38ADgQ;x7z*nzm~KYR^t*H zK{f^O!XSz>FpE&#rl4I$cQ_CEB3hV1H1y3QgrTo}Qn7H$xKb>Q8HN>bB}bg?aTkp~ zuRVMI{CVy9%k}lu=P&P`{=9YuMhH2VJgeqCIf6ATYbdl-GY4t)afgy}z*kE7 z{tge|Y8bPM$tsd%B1iE39ulv~Df6YQA}Vz-B`ct?qn@67QHZ_NSvFMxr=>R&JiO>;2F zB4*<^IHLZ=Ru2Fq2>@_9squ@m!+$iKB^=lGZgaGFH3zd1eV>3Z2qrQbCZp4&JA_Gk z+^r&2Za8KQwt};^<6qJf9LD8`&Qp~vz3d|=N42)Kh|^l?PU$G_ZTW0iEToL`s`KWz z@pi~$!&S#Ih{HcV^(3Bz+Vb5xyJI`$;xx0`$iF86U z5pi^v%|+Lqs7^*^r5Cu3^MB_*N3^h0@Ne08vtTyyz}+VDmJ-i)s;)oX;Y5bLA+ql? zBnp>55QYeT=M7J-WI}f?YvE#%VaWX8W{f#!G~Q|Qzs2lau#~wSbpWe~&dth~{#LO@?HVZrmZ{X$_%2!HU>nowj+$FGvt zGD-LZGDT@x=Px4`WO`D4f$P}GIdTb(o!uNe;AZDb1`~hz$_)A>>5Ya<(_}KcWMBeu z2TO-=U>%E^;Wvd4n1_-caBT+;K`GTKbfIB{02r7xxy2 zx@=3oKLMyGEote=E2OH3x8$8?#&{E9e^*^-Wgt0 z5VB01*b?_ec-VKxy~KR;J+UL>On%gHWKl^{rmw*1t zoxeX{etsu;{yKU7YzPVZD@VH+n}v%a5IqpW07r~2AP$$w)!;@n||Ch2Rpa=n8Fyv%%nwvzcZKsdP^~ z?rq<=ENAZpb#=nCy`hkI8v)`Uun4g+10)dZdOn~7WLedX51aCf+5LuH$oO8Gc;9W! z%{Mk#-+yxwp4d>z`+uF)SGoa<6r2nZG~X~rBXoesFO?z&0~VjBa`?+PV`TyjboAk}$aYA-TPRextZ?op=$C(Yk}bEs;` z91Wj#FKNi~@xPg7$C9?Ox10Mu_so%W9F^(PB)J?-CVd_{OwZxHoNd2vnVk(@xgm(>7$+oGvOIISDk@2_X1PwPf(n8CdEzg$;fShw z&;{&CeR4VIPnT(HkGPi2pQ1?j*}C1pk$;-}@YMx{glJB6##dQB_2oMYk)tle=U5gh zvt{HP{mA=g=01a4=3_)zHX1-E*GqQdCa)7;Gy6GtBZpW5yo)sZ;BUB1NWr*kq>A!B2R5RnYqd@waVcZNIb&L8NSSXy!r{xl- zVie%#ngvgp5qigFJv*0W%c!%uocr6S8m2##A#dOEj*Y7eajwIJ=Ix4oE`N+(Vfj{u zHupsWel??HN*JjHN5}v)&X*u{3a6$aY@YnFrBNEn7V&o^#ygF~@o0n`-q1i?&u`wk z(&z6G&vbG$r^(_a{V;qc4$!$#%G1RN#Scgh80?SJ@jFo?pn^K6e|%jwEDgaEYKAu- z^r)LVJ0DFa*Zz|HGC5}y#DAffY(}RK=*$z;m#UQDuS=y^G+ViLQ}Vy5+++KAc6yp(2X1ziG=rpF7_U#= zHX9qm#hcJG?=?lBtx33+RdjM=)|a915AG74+~Gc_1hR3*dr5qfXMd(;Rx&u!qkESb zWO7#79A+`-*EP;;vmQk&aaPl<|C!vk)!nON7zL9@4HIti_=l@x3ImwFS9M+Z`=_sr zI*=>PgFZ#+fioFrYXW2bimVg$9QcB5MvXNbkN@3pEgd z(TZV;P|cP>c;sC1>Y$<(ob$3fFWxM?H7Qua^`To03V?@4wb^)UI`dm#rM4{;Kd zl~ts1;9bj}@qh3GPyRpuQRbKWkSA^4y@{+I&sjp~zQygKn$WZ2_H<4FZcSzra@X^#>V9>SOe z&Klm)(iTEeS}h@~0sWH;x?1a8)z2-SoI(7KoP>9JjSt_FV3Z9 zjpGK)^iAlshLdV9Y~3!;;iVT^)>lZWkNTcwp?~`@-hecG?-WpFIKxcri}0Bvuk_lH zfc53Q6OzJ;?y)TXUpe}C03xjHl_Eh3R9||w z*?%9O%m&?YXu^Jz5AYIKjl>6aYa=rJ&Z=&}j@WPdSN|0@E%AIHw-b_^=MgWHRMDe4 zH2}-g1yZHSLsVOjWkuDIr$JTQRe7jl!JlCASUYLx#J0*<1EHtf)Xc=7Yr=brmR=L9 zhlTxuZeYnMBr#%9IS}_*AeE|I+#sCkR)4hkHrzU7S^yO+BWKRW8bE2nu>}>1w981d zG!K)vH2O)^z5Rx-U?PQHp8>75h-8H`Ysq~Cxd zlxdM3mfm@b!He_6ElUM`kHl8ZL$T&WgjFBCmt=lJKJTfUmXVgKvMJI}4WC-zN`I{C z`E??=omRlFoa|nJN^}@(B%#&@v+|I?cD#*e~nRPoN1bEXv z(Qyf8c}P36Pcg9S-AnklESq2OtFU%0o?%uk^aR(6Sjep20a+fwy9cR53(rb}f?}2d z4Fy5@L9Pml;BD~Rz$SyaW9Ohi1b+^TOqJ`2VBQvGX7TNW%%-i_?&&X&A^Vff?j?ex zrBC%@xm|sXjn&96ODg3~86n>yTRksIfmdKga z6?!HiEEjVObu|y%XL4g?A2?qUTPYhZMf)~J3{i*o5Xq;CNHbYKZ6m=rfs9;oVh!M+ zfh?_i2(`8!u4FQg1XV!s6@jcmi8A09s8|r=&cJ2$(KbxnC%g3$iLN*JcbT1LcBUap#+Q zd?0(z&_s^L)zP_Xbxc?_>vW|nAeb#{X)bvqVq8nyUVp-4vEJLzS2lmQBwOXIVy~jW zQ~?8LEd>M?Zx7g#JT{ii1!B(WU7y!jbrS3Zy2GglNJp-$mkr!pd0x>vkDq z5xrM^gCg$sh=KAHZZdVKSiKRh$KU{Wz5XEid$Nw`5r2IP-!FNJdv4?9u+m@HJmOGc z9r+7uRlPq*hrd>^Cm7Bn@ktSZOa|QHALDi55tE zZP7Qm+y38_Y^Q~EJN*EJJ3>6weigoPKJ~Pb9OIeC9{V}_cLDR6KzS5O+=<8_I8V%C z!YhxuLbfWFJOJ@Mp>E)s&*kPL_TY_tAE@nzo_`E{61h6?QRrF0Cprd^Z*FFD3p_4Z z-YUDf7lC8P2lJ=JSXX&oDwdBUHOb-+1i|8)`^?Oxd|UpMDtPOTN^_DNmoGx2IJKdw z^+4K*Z;ez@Qz50|mvadfn4E8iP8gdb*|8Z#7l=9i9xx2O6-d^2q?KBsU zAtCOJ;2NBKZ>Trrv8TV_e)!E!>w4OHi-J{LX<*RZ3 z?0lMRtgqi+-B`bS52u5D<{|4Ok1vj&AQcbHS!YAUFM6CJPSH>zptF9mgOt6)34cz; zxV=VJU*s5SAb}A6m^UlQ_qc<}0O}j{b?nOVreA_ml}h)3q}|F z^yNudiwmi%OZjE<*JT5;j*1ij*2Pqt`ECS6&9rBO2N z`E+{uaBc1C>IynHk*<%%XKMrP(tl)ar?m+RG*^MRqt)RMx&J111Jp~7acd6VZv7Lv zHaF;AB`|<@&&J4Y#IR1l5q_cS9lAB)u#KVoc zTBDP+I<@3cqtoiFNGE=19Xvq>o#cnc{(fWkpw;Xo?R^}N?QXSnf8X9t8h^V#CEvlE zzLKOM9L5N<0UpS>7K@9hB&xYdmvmB+J|h;DVE(2PasRY`k_>QoH)B4gGla4l59PcW z?9fM8CHPA-w3Q$wF1QlRcH(h`>6#3d6wA2o93Cye3!T0x*ZreAL*&VEvNf(J+c0>& zNH%de2 zus}PgSU8>|{f05`af9eGcrI?72`TV0YRFOd=4d#C3qIzDDn{1m7{3Koj3OVu$s5}8 zC19207SuqXA+7;&@VFhe*%gekma=mBHvD&D^IR~8KJPxZSsqYwnPp*Rr|hVabNuR*(eOM_IDV*68IlOrqUzVkZ2V|>Ua^Z?n^P%lyuNpM zuv}X^>h_@Zt)X*k(toYLdkB2X><&Z=@pt|lH)LL-!!kwt3Pf=gbhGDYF$g8%IyZ@bbm1F_B13x<6k?}A2nPw zWo{MO8ZDu;;l{rQ+xCbQoScom4sZEqN9xv`+%0DnRga?g4@jNL$^3zQy!_R+F5Z`EV$lV1>PW^yv_V|P#UL;_mNUNaqI zYgwTNWZLgYI|0p)M?K@JRxY)RS$r=L-lhdGw?O2A`ysg->Lt^Sa?h1c)RZzC4|u|L zq1KR!R83e#(qV5CZS9+;eX*@?Qp0Sc|Iep5Mw|eO zNl?;Ec4rmebaSj3S<;AfGP8=73lbm+iv&0TD2dVQ@BThdUAn8!IRHV4l$9OhXN$l& zeW|Xls;;iCs@|wjThX{tQCEf`$<-!mkFa9E%V&-&TdBzK3GQ%3st5ly#;%gzIiKzh z!Z}f|2TNuBhyK$GrmArLw& zaRBO)Xv`CZF#1?f-34(_4R)X3{cEoU8LrJq$Gp*G^FNn)brIhNFMquKzX-Qpb`dQE z0)IcZjd~Fi0)OM-{U3K8?rz_I{^;2bGM+Abzw`XjlRr1#-~ayM{eN3p`^P7bc6N6j zZtrY2YyRu@?&C*KcF>{WFzo1RGcHBsaP6o~cYZg=-! zzPlR*_dy~hFEQIckRn>P|I>6l>Dl+A=?QYM;@H*#oPV$(ob8L0C;uo1S<%s3#81yr zQJM>kfEn^o{L$<2v8I;cDU3GZP?%#*goIR>8uY_Kq}hf&4Uba=;|!M}dU_ZniFK5O z1S+cH-AC;Aq}OrM!qDzizhex9ofeMVpN37!foPtPGSgavZWP+(g@kyP6p9qIq(~;C zB?XL@_<#0igiI{evC1>;MKDsGP@_+l%IPm-jNeR^kuMWV?-~5JqHFG12 z8l7VudJs!w2eYK{_+A8CB73Vv^JS53MeXf18!;r=lO{Ig+H$2IMVa*Qc=UQCkzjC+ zyZU|rwVPWPICq_0#~C%}RvZ7*Z(I-6-yjCPkF6iCWTqoR(EOkYrqaBB3Ht1(%0qto z`hO4NrI4oH*^CK9uIaRzM1a;o!!(Q7u9c}_9zXqa+BA#9x$F~VkN5`R)76`i?26M) z8h++*4&XkrwmIHH(LJ?+91QkHARBf1E&JleqTJmW5G1U0PX!3928(sp-i6P5<&ML+ zsAdi$vu}rk$4*j>m$}- zSW%}E*}hlTD+Uv0F_(Wv$p2|ZvAb^LjiWsXOa!i?z_sIq@(gw_Nz6JvxQ=`~2?OW@ zu@0lV^kT*__o2lvld-ms2B)JT<4EH2>hp!gGZ!HJvr0M@eeqI^Q6y339cIJkw0|Ak z$i)5l=1Za3`W-mhl6pmVV1*Ex6r+QcZuIWqNvN_>z0-ud&zNu5@(zc) zT7XG@QXsU$7q1s$0eOy;KWE3s4SxssqH+KcUJ4^#T2zDl`RMTB+tVi0*-P9cg4>h= zc(&5Q+iNi;MqwU)=HH(lkfLs|$GfxH;2iJduRLvbcUdF}HArAOPU4gQd?u6}F^Tt| z`Un#~CQ+Wz%VxfTxDXd;5ceX;T*Ium0H7V)H`FhZ4$@SGsZk^1sk6~hI9!_< zarxD-N_0O@5c|5+>x^cz=}g0g&=#ut)}*Vr!5vG}R~Z8ud<0@g*{fZ%-PWaEh(jb< zI=uQGQjQ;KznFKG7o5run|~9XV>M;dkiE{tXq}eX5iry2d=#WV#u3hS?5CXNWJuD< zr;2`IX8;E}!2TTx341B3m#@acCMgIDE?DA>HSnOZD!OE4M)Rp0c<9yjA1e;W*Aa@B zCURW3?)Fr_Q8voM9#0OYAYfm6tq?@bbrZ7)wri9i(*CDP!WsXie1HEaNWX3gB18H| zl_0IVizGUNGiP%OKceI~97!(uYha(69R;b3a0vfUrG`ru>mAG$tRPmBi)7Ohl3t3L z?P?VhBEhYVvQ@tZtfY~Pu^_6WpO9J->=c+8LaJ6?CfU-IIhkfn>|+W22%=tKq0{@| z6ge2KdwNnwpT6)fW`6-uX?f0CC-Ayg2k9TzMO^m`p^KKeSu*!?(AYeFM6CqN%QbQjTE_(XO3cw+vyB5C zUN>oa7qx*&x7R#6o_=2AY_a)*-;M`+qhr;U!oih1)k7-?d4ElJ`c4dFnmwGi-ae!W ztk>0|CuhhJyNA;|xwVMtQIlDQY&2KLu&+E)-5kYg{~Yq9kZX2}LGPTN$P%>NTOf`6aEaZ@JfPL-ywB!J-=()TejcAPDwgk+!6lWk5~U;s1znHm@`jTNJa z8F_o%-{Ibb-wjXZ-3{%1qw;QON4)Meaxvq<^VM#eV9iaoR%t&_foBXN1z<0aH+dEW z*?8FJm7RFg-63!i%gCpGsJyO$JQ`z#&0&f^#eL%=1b;T|zmm3lXcsp_;kxwMV%`^6 z1qfd>*)7iC_FvU)fp3nOw!8P);Dww1KnAy7I(-fLr&9~hr5TvbjVVelZ8-e+>n#1W zuaO?u{1S5bgiP;*66?iBGrqIG>sAL+AD=4vo$0RD^q!}(rmX&&ZtT-cH>PGk%kZ;N z-GlVqn}1H^LdkTonuW}D@&%K0HLR>s|L%B3i4H>d+I_gqj*j~yNkPz4B@huy103FC z`PJXBV|m3#4|rwM%?(i&@%%BC{l(c37dchs^XcT!U&QivkK4=dKvDQR22*e62^Ks) z;|C|Uoz(Gt+=$iwVtO{gxv{(}YCO7s_i1a52Y=f;{=DpC=kKDxR0x zEH}KnfYQ%9CNU&x6u_zs3^}=a;P7*4xmC*tsVW5%m*1vZ!O!RY!B2y? zM%sK}Fu*#V$cYEih|{b=fs4v#2o-B!V~a`6kr@}9^W*bJ_i+U&D0i}u9J_sh2vv62 zLGT$&z*}&7FmPjMQ>5;hEOrzb$PNmB2!GL^w|;`(S15?u^bKU5lLl;qIqqa@JT-4Z zJh%I&dPGJ>4-p{f0WI;bV+l@1j(qqTaqss&O&H3vW0iRWNsrobPdgOCR28xaD{1rtIMzRwRn!mNnYui3B&g+B&uIJ&Fn0X>~S-DfcU$PuVEWY;4%T1a~ zmqGaCwl0Jf?N+Rn$={S?B1%6Ik$+6(kQc*ZIb3H!boWP{m2zdx4!n(pF+sqtT|@J; z{02>ohk1eI2q<&41wR@4`gzU`0nAOZe*gUcq5oi!#ft~V^8pNN6_EV4vUY_vj6y}7v6241CEQ+DLL7=OpKb*F?p zGfq}MzW{OqeQ%Vt`%I$|n8xh2BddKjZ60wIZa3pRPG1(#qR*BBS`;CNGsuSvrzCE7 zEMLQu>4Nvfi-Ozh=0W4qb;ZNbV_yW78QKfxsimujdT0^)kT#0;ZQ7g_eNuQ|Y_8Wn zA>_CD==cD-GtuSqs>!{X_kZsY`t1BKMF}i^9 z3|Un?^Gv_r*BA?qeA#r9rZZBmZMKPk%gi(p(MOKg9)d`?&4W#_!!~dSa={HeWH1cz zYA7BP@ER;6g=GB4Z!NTU6q-y;V6|9za`2232dCC< zWGXIPB6e_>iQbyJ150l{vhZ*-A|fCK2L2GRKzz~ zdiytDqJu_7K(tGz?ENFySC>%sn*)Ru{WLwBO$Nu?Akc4SEEI`GuHKJ z8)N~PEM5nQVd7fF$tcz+v`Ae)uwc`)s+`UX$8bJP*A_(b zDsyCXeH127gnu5%<5w0|v=|HX*nv!b(LoB&O@3p_-~+G)bADfRAcCfsoph`|C#fIE zsGu3opN!t*T|tuQ_0maJCB7Cd(@Yd@lh=Ee5jM!fw~cCgDrqQv5pK3gF%<4*?wp;1 z&Z8{ymsLm2NjUY(GF3Oo`N)sJSaS^!SWibBmt1lck$;XQ74OSqARLGNhLiZ4lrl_b zDxXl6hhQ7kZk$iu#XXqri&x4;vx-Tz6sqlqTy@k5@-dR)Tx)2ZiGolLrmA-1k=8Cu z%lWu!7ng6^k(9KHGmLGVrjBq1=BF)r`(B4cSDD7{k&+(GaviatZvN_tiZJkVx;awj zprdqjh=0ThxJt^&MO!|;g(iwEv7fD_cE{s`xH zyfGCEex8e087Sg!G<@-j4uv)3;-R+U`i23oRe$&jL5V8~yg1i&5~ve^Z)W8@Sndk| zD9euFWmI*##i2fel65}nWLt?6nQ1i{c=zGDIXy|bFbsuf;aqi@1a`Rm=Ca7K&qwLJ za>WShVglwo=BS2Gf$$D~%H_HIO$^JhR`E87L?;0^jqWjZCXy;hX4vI&Cjz~V&XF5* zynjzl^U*b(A4;?;R3ZqSs4f=#JT4xdj3-+huXZWYcpW10MJ_}8V1&yW#$DAGW304exu}4Ngm1D|{-% zS3+5Y?~Pf01d&{3!eF3Ajm!lD?hEjE@I=FmD;_kDev0Sg1nOuwF)@zL56rE*Um?3y?$T&=} z$pof~;-Vn0Z)g^nuq|n}QL_$fz1VKEiV}egUb0_5L)HXjfePznkM|6}N$8|dPk#!t zX-)!j&AiaI?J#$a;vj2n%Yxw896UI(*1`JDp>=QZ4jV2Gg?lOfg+lA)*W70;HzhO; z2?QZeI7!HMt$e{feA*xTf?HeEauF47FyLM|JC~S*yF2&4PixIT_$&wkD*6(xa8=K2 z5RVjT!GT%f#O@w$Sn*d;>@S9_j(-S2q(E_ln2w@@VRY``pP#RQh9mZT>2^oCEcCO) zZ#c#+^I^m-OR(=P9@v&-<*Ha7SdvG$i`m-OCR~>iIiJOR&6ef@z0P2wwm>aRn^#-w zEWvwDG2Xt`?fR~W%U#gymAe~*7qu5>9?xkaMKDf`hUQf$8)7ltgHI^7bbq78(R8>$ zOVDCNZewR(o@C6F|IvS;jdwCju-2{T;Iv#)sSwtVb>?-2pc$7yp|A9{ zpvs#s>IpqLF)bKfUk{UqKk!lS#?Lk$?SrWKFReNo4bS#Rk_0I3132j$*f~J;-QaF3 zOHi9!7Jx0d<;Yq}!%F-WO@GEM@1;??`gMOV@fcKPtL`^`;)uLKeXKDUSJImXgV_)u zzuMx!aHj(5Vl{+QF2bX>*o*vtwHmi}e}RGZC0kMt2Z;E7JenLXju=v5TRAT3d(+{0 znJ6s|@W1+`dq7Y#im{e8qFXZ)^8ooqA2$_DdPW>U{Xs*yX&QNTc7J=!hlcPRzScPr zjh?fL&<-^|i-+>~43m1>g?SDz#rX?)mVyxV|5TwrF43c2RTvtC%ULk~TQr*=juAP1!}uxhaYs@kXA`<|z2$WvZ_tD<|;ED<^>>g=sYhNvSr9+a8|D# zJ~*{c=@pBwZj)55^!~^5d$Z}Q(Gnj}lcp^=nT$rmISf%e-CO2CYPD@|qy1pJjpaff zNfY;F`YqZpynlp4!H;mrCT+l{c=%v+O8^|j64Hpw?CMiXV-3C z+=ouU`e6$850d&vwzHae+BZ!@&W{qFnZ}YYEvej4WOqOsNXZ4W!MtL4mja%gQi6^r zdB_QLJY5btUqaT1u?D^z>yH9-UCdtu-ItOKOp|ys&41$r(w3W~!hl(^6n=&`xd~2& z(2lsN=*)rOi*?GSG0Vyh8BY1gE9&s*$)EQeHp(pTg)~}nNwYuq_i(r-6vRtxBUyN$go}%J-iKx4`Usty)--f&7$OH`?dD_f zPNHUk3q(_c$Poy?!fmmdM#SkJ_kCAOH7`{iQ%b~6RJ2$l8-TEbwK|vzs@|pgUSsCC z>3Sbg1%(*YQ0mBc_-H8?)?}C?W5E$(8kXq_DSx&rZ2_{_imSaSJf@=6@Hn0?;e!<| zMXIeeH-rvM=etN4xg}G>;Z~3~KTtWhc87a1-+H=6=l2JY#oRMKf%OMk2m`&$=wI92 zZFz@Ve;=QIBRX9Uhlq+|&z&wDV5pMR0+MxMd5mFUK(OM1V6dN@3U=ydHQ&vS27yvPmPwpT_@P~W9*%R>v=Y|gAJ=48=03{yfH z+~Uha9XRo+G((Wm9)LWP>%?QpNVaSN6TWGT>Nq;} z;4&Gi)^U`~O9XS>$!YNrhUnt=bTK%-D{D9(>qt%LLb3y{Z81v*{>r>Ge=`<`*t`x1 z5DXK~3(h{x(6{bL%N$5rH#-k$Z-4CQV#nuF@^)LvzgmWtTG@YUDO+_OG38RN^xxR`B2gbr>&@28dG7F-Pb`9F|cTbPD6Y(3B7|v6vvudB2ID#OR!~}h)i_ZYKW1GnIiXm`NLTQ;1~;_(il{a#J|p5xSUW#M z*UJ>(X9HY{g((iPUXgUNG)u=&G7es$n&^Q)=5Qy6bDCvB!7VIVG~k)kflNSeDCJwZ zrammvfXzWebVoOO?SFk9e#KZ|Zn^DY^|gkiadYx`z{ugl(UY^2J%&g{36ncq zUOqbQsn+ch!qu?Y@s~J?s@}6VqqT$j<(F@(6%vkY&; z+&fy3of~5g!ee0drm0%i1XFD|(ordtb;8KqbBU7$b9^|N&cXj5uq)hDfcHdn zkxMoPnNrhr1u%%JFj8TROh5u$WERK?3b%5AV96am4ejJ6qGczvRJP!d{4j>Ne>!Pr zjXE%!o7PCfZS@0I6<)kB$UUe_Nr+}PAzpL$N}j}phh6DegJUjuONZ@Rt0CiES|zH=l?f(( z9Kfl+8fa>=xtogKd1|pc)u8X+aiURu5n55f!pLe%HztMs$3{iu@DcxRRLmL1U;K+G z1lVEti+_JsZGVN$W!EQ&p!M8hRwt-vIPt-al#UXGI5h`$zMx$eUVQm{v1h0$YtVrj z0od5zr}s(*iW5IU)L*h-o3lo}87GVw8J&eJzGagHOvEuSRC6G{uzT+=!$6YTa73WJ z_`Bor;ZYQ|2eawP282x8fyPHA#pe%qetiC<+W!9O^M9R(+dI2BZTPm&&1(%{e({h*LQ6bpz^KyX{|3tczFH^Li|a*JswGSHKdi119R9D@9`uOp~`#W^C5&ysbE^aHOZ8^*x zDB-VD|^6h7jAMNyng6Vg5S7j_Ut_m6A@|9w!+!@{hcmq)x(3_L>Y%?%F@mi`<&x+V zBt^q-LjpS912JAGe?!^-281gysCQ}^Vy{xc&Wg3G+IoJZawWO5wF`$Kdm)GbG-D>B|P-DjrP)gUS3Dwly__0|CBYt$I*T;INz5QfRMc5O2OQ>-NoP zTy_gm1^>I*?CcZA9}wmuXfg4C=XpW3VH);_mfUrtEntPMcG={PR%j)HvmlbnW*=jXmulX zNJaj(uw=myKK8yeN(eV=zeZgySmlcecq+X}OIf_dV~ikvcHMT1C&#OfoqsHWtA8b- zs4g})#AaO|h?gH%UspHd2&JXU;MCUS!jTLvOJuUo4He*t;k9~~MxxEyD6LtTQ!P<| zzAc;0U8HmdX;Kj*D#l>`i)>F~%ayh*eSsKRtnV;I#nifwT>w($s0Dz&r~+`xlAK!A zIj99mfiyr`gxr`IwG;70=SqB+NUk@C_S$Oq7t_bnH>25o=sBf53E90~jS&Y1V@ZWO zVqgh6<^4L2Nm{cqxM)58ghlN17^Qn#f17`?b%^+?3Ky`ahrR!Uw=J6yo&o`zx6GXp z*#>_8t{aZ+=hl;jz1y3G&9uv%(P#A~T}%(-B0p<8A>G{DOd znGsRiryu3=ydDiLmxF9^;c44EC-95h<%An6<|T)OoigK>5=-1P~q6QTHdfiCmzT3xEq~9>NB5UN}*dDY@kwU_dZsUJN z-v;(PC_Y0&TUG&)UDnb#5i~^Pm^Y^pau|GFk!lIY!PR$<9`8JSo`@apEDMSsbw7z6 zg;XI2aQMj(se>a3NZNbb|G((~R92D-QF6#20u<>C5N#~X;JN=>wUwQoHcM9D()H-1 zS$v$!I-O@fQcKaqDL>unfHI1jwihi?o&v|LndX7 z_?h4;kWrZ{O9@fAWE%y0@>+X#dJfDN+Q}G>(}3}~qk~sJnYQao;2TUD?0#7UFa=8d z)yzMUsAC&i7;Xb1p*$b43;Tf!WO3b-YV~abU`dTfPqrT-nT7O_ zD6VKVVzC5Kag~9TWCzQDw8EDHGuCl>oaZNJ7nPnO|gJMqYUNkbKC=RB)=z5 zMVMsgG~IB!_0t^DxVgKFZ6^}+gSEg)9-JLRc9BbQ^!#RkZia%OGzEVx8WaU_yB5Va z?a1MqRs`|IN+hwsN<`fbh+^Tjk;TI6AdKa>dNySq-{{BRWwP@(zIyuaHiA8Z?X+GK zLfWhF??opWT6W#WF&W}4V5V995fj$>?P?i>j_=A86x^$jo{*i$S|gm?OGw=G?06{A zF?%DUu3f#avX7yo})-IFWT{DoKA#v6@REU`Ml>=A!}R z!qF{NF2YTNs6*~r2d8Cgk%FH1sD8qw;%L(&#BTpl6zwrc6Y3+9Sn!o2EY~Fvh$UxM zS_XFwW_x4A*w3H}k)}@u=OAU?-&lRWv-6DUL=Fzd`*8P0F>6F{npbd1kClgBJ$|@D zKu}=&@uT|>dv||#cAh`F_am~o_1+@59rJnnk2gxSfy%BR2O48d+0QDzPY1@&-3`E` z85|pu$?-V@3JvzOJ-{@`CL4x_FST#C0A#&V<)P0SJ4I=U z>g1juagSMJFsc!)T~mGSJl%cr;}7>9KJUHl(_mR^2K#?#wpHEa#fS~5L1)fp1^DK# z(P~0%=1>R~rg2^cZX1w}@!U`f(Ip<8FW@bP-L}N6OA_0N7o`TyB4g-R8pD#oX_%;M-OcBF^)VWhaOF#!TdZx zyc)L14Um5p1xV6}DUewbc$aO;qb?8a1h!~6Ck7Q zIZ6|K)sa2x>pommGSTZR@F>!5fH(1$`8N_rrq__D`kLGF=4+dF7OA~-^}|~#e@C1M zK9WfnGwjTgxt}V(U8h^1wvABg>TFPDFIHpMY4Bq8b)^ocS^{r|M6St8YjMSCd!ff= z`7VD;lvrn6t#=)8?`(VwUpc+!%T?-sS4(=b-sOhs8l28dwsT~QN>YPdm=*$V&4nN< zQ$hh~!b~PBtr4HBmZF1@MOLzmu3F2Jcn_6qoqG$-;c6E(Yb{z0lV0tVa&}5%xRc1d zNVkKfE(9x*NL1-_er+sKZSH|-N3On)NqT>9JDz@+?P7ew5SVY+%vZR!dHVaTMSRuG zIj>thw}cgP=|>N4dMSq+Vf^|0JfZAySu<;MK}q> zR%4_PR?~fng@G06Y$mA!1^l3TvxT_!#P9BWUcV*xXI2WIM4etaFKyXKk3EnMj)hoY zjlk@+&vZYpC;n8&d-SyIr1q{DTyTF4(`626kxCK)6M;XEr?`7nu7|=&EHNTi7;saJ zmBIe2ICF-qY|+4Bp>eWiRcY-vGgWl%7Bm_xwdRnv&94{B4NA`+Ys`m;ONWIqR#+@ zKy?bDM@E?RJ(gs9;|VUEn~#6grsS34L~d3+JrR|bcpXW-xuoe5mt}ij!axDJpL!SU zYIB(-C2wCICFE-jrj$egdnmo_CNyF6_Pg8(%Ose5ifTpxYbOB~(UNqWtu2fw;-aTV zB%&F^{6b@tq*Q|4Ng)IM+^UdPKrCQp{BjcCX6cU+H{5FjTCQ67^mge0lv`i<4ey^Ykwe+ieO z+}>D@=DqjUs6d&*R(T|{011zO8ghxe2??5(=XAo`E*n=mq_QhGFTnkNMNe|eGn_jKLzc)fLhpPPM*jWF_5 z|G9WBBqY?c;wlP)4+oa&I8@>UkNN~$WT4m*GJvsco0{tN)riBr7pShRq-u`B3BcJ~ zQ992lOS*ihe|O!oY&)0sZ+Yc6w$3P$CT$AnYnrz$V&b3Y6^ps^(B<#<4FQi zIff1NMyrL#&^eSXHifKW6ESCb{I3BCm)ZKvQGi-;Xf_UNR`3YTO z;sG~e;*jT{rCgCuAtROF3_NC^q+doegQgW|>|)zbohieadh71a{qMtBc$@!p>C-37 z#v_Pj+txtFSv{pJX{76VXCM=$LYz5c5+6C56;Gg)P}~WR>qYK=Wo>Kjs?BiI(pyr$ zQk@f3xiN)w63FpS-DtO}k%BTaH->39QV)GA!MivlO*|5F!@oDUO6&m15=l4=$PZ_- zHoK!Zl3aAidPyoRuby5-q{4bzY6cRg)Au0L(s1%oh^h^db&GJjHF<54Td#{j)5YN- z%^JN93F|zc?i0~})OB$1mi-pg;x!tsJlH4sk+j!0Ev%jILC3g}k}`;Hrw@7UtS50$ z<={C|P>->~A<`O4z)Fp+($v5y^INDYOPg%bI{p6E;B>r22?>#kQR1}Zv0fn^Y-Bmx zK(RzAKiBxeq;&MKZWHI)y*i3BhqjGs3#$3yXtqfk8}rJ4sc2f0o|lWrHuh@@&AMWl zL>F+)cWJ?PxatCP?FM9AzF5`;CA$$8!Cc&h5185@v(E7mXG2`jew_~PVP$3epg0j{ zSKrc+y-mW=%8W!aIkor*Ze)ObkC1QxVt$%;T4*wL{}3S8dYB5Uj}A8 zEi;L70?e|ViY3}CR-P?{)p-8Ua0u3$?){{SDE1M5*r|*EJ)TJ(P#WQ9otC87TU)AT z<|ecJY)eVXb*)TD%9h*HZL@4G9qIDINns7RS(c2{26s^^Qr$?T!kVkJJq@WM0c+}b zlE+{52rl<+NK!bM&)-aEDcVQZcMGr17p~YE-;tK!5~`%qez15lS{zMb>o0R8U$C2U zi0;sTkxgL}YUKLwFy2Yu>{Z@JvGpC@9*U>56sTE{+2+ajaby?qgF@+h;Sh+taP9Q*HCul+2|FyO{IF1RB~q1G^4n}BsY>(f-qAk!Kn&1 zwGEpaof_9aY9Ip-dE(_AhUo#5ITP{eDe}jEy&fMzPwRDDdA8-ub6X;6jAz^G8=;V+ zr5`cFS?c6z$%!R+1*mw!`wp}QqSx-{DuCMRWR$b-Wu1A;B=}${(~19Zm6lYzY%f>0 zoVhmn3u(DEa2&VJ4r1j<{NS*z)_j$1l)h}*vDv?hsc73uxLxSSowQ*n^nJPhgib(z z$d`h|a`bPSe`X9`Uy3d}XYFFmO+(92n+4Yg&-q2W7@(ihscGCP_bSa9TdpaY^e>hQ zKUcoctc;Z#F7?iRZn{^qq`gyObLnJqHH%s$C_O{S642tO)wQ7}E@E$@KGfb@hk~d) zszMaJ*O`TjwhIzkQC1`d6Cgfx!THU9Rcu$9O6uSk!5^?saN|D#xL z(f8|GEbGhi*{WP3VyI9rW#23qOnfcdp8+n3z{I}VIzV%yxmr5tL*)8qprhsa>fwXu z({vfF4q6gqY0h+iLhs{v)mKfIY`jmJ-ntp;SN6BMx761vtumt-t9iRpgVTe5%yq(U zElLdv8SB{;L&JYG!Cn=?3!Hd~5Umao3v;#y{pwV&hex3?a$zxcWAye^<8yFoO-YK3 ztvJ3X8YhRrI1Bv*OUVeLD6OiS+m5p9Cy&A=^-uNfcEp|3qlBKwH+>pu!9 z7dm1uc{t0ffVB*7UBAKaOb109d=r{*EZQ?&tRxt-N!e<+uI9KfLsOD}Ur5^Av|T{k z+idMRNL#@CmAKWi_A7CN37oitWc}Y`B)3R<4^O3@h@IiXCF|eEr@s>4y2SSm*!m90 z$6VMHm5l?cr!L!WBfPpj z#ZJqOeC1XP3Wr(U{yZChoF0A1W=k6QpxqV>`iHoY4`!D4++!6xB?~gfEigGr5q0p| z7N)Hjw?KpTyE0jOul?2KwsmQ*wC=tvRrp0VS1ksetkQDiyn{^d$ji@@U7PQ)Z#X?l z*M6DF2=qr&&HA1Z?@9fw3Gx!{$D9@)!UC}!-3>s~!=92`$m<$^=H)CZ;?wfOU;?lB z6Ie9w%0V7TdgbAu>`F?neL3dK?feif1e75sB`y<#(XY9%N&{Qw)Mt*^t`WW(A0IzI zn@n)pA@ByBkg0Ng1D2a6TQ|(`Et^mQtpK3=MawQ5>Fe@dPPeGdn?RZxj2am;RK-Sb z)h_Qk*MJWqk8Rw4h<*`qaFpxN2FocosN0Sbz#Kieu-Cg@*r&|;_i#CwGIeC4r4O8V zv8Mxsk2|+l$NA2q8`Z;q-42dkr4K*6wMU3jgcAF3f`eNGzqH&CS`R?uQS zFhI`lgJdL6$)*-2|gB!7(#`232*+6 ze@}(?!ho7huvq4=JcRa=`|vV-m1m+?q*B{D{d*#D}7LYr*A^Yxd< zqR;5Nwbn zuL&8m@!`=5Y%D{E#TZ@n7G`MIVMO=!?KcB|x^VwE-l&d_e`4%eq0L-QoxOWHUaiEC zm`04N`>k0uJ*dumg^Oa*f8TC&vWGpS*_1B&qo3v->>31vt&xs-@fWc=_i=*j5dvMM zaTke!hU57@HL3F-Wgm&oK-T-n8C)jx#3AwN_}@m51T3?0G{Uam^s>|gX6gyB^o&agR4o=z;&BCOHa@i}h z7)~Y4t)!+zej}LcPe-%k^Nt5>Yo|4-h|v_?E1VY;ssWWyvj^|n%T-O|spZ3emD7WI zTc7tjzip-a8#aUIeU+4sY?Z^b_OFTWP6OL>As;~v+Ad#;vs-t7m z$%Oe`roh9Io0s0ZpEKyCbm(UfNKS{@P*_Ga1(D2a%H_l3=^i}T@-`CbN!(2*MnN@Y z?!QjKW4kSWJ6(7m;RKqO)53;-0~)tYBm++@Cg;Hjjupq(EQY%hYNDY{xkC!&t_x)( z6`3rOpL$hwMW3sX=x;RXVg=w|fSvLH`Fj&#D52k4%KR3+Q>q?}57`pq0q@JN2QXz% z59>`z@!{xn?u8%V`--CTH)F`oO&VEPV}Tf_%G_?6}P z+m^*vSf%_7%gKr0g+HI`uLLs=j^`tw2nGTH+_2)UKY++1RJnPnfNVtwIIdS1)L*CaVI$NCbw z#S-1?%Jb|$X8cOeHuEqME01;1lhPrqKf;??ozk>q_g;%tRocpOt}a6LW*_C7)=`xs z(Sm0&=yl;2 zUp<>mGvjeJcbXc1W?8-odf>u2W%SVgeBSF~3jk~GIaTNJf#objG$iG?IJ7qC@pt^SVR@bQzt)Z=b(o0V017*(wWTq6sEdt zK$?Eu)52y}+7Yu0v`Jh)gPF=JZ62W*#|AJ&KrT?$pph4UX)j?$C;=vEWTr-h5;)YWwzImuh!f`Y{0PF05@Z*Yt!js4<_a^E#O6E`5U zoFj=#MjN~2$8^%yOmr1;2$qVq7`3&${(CY%gq;0>IoOf@{|!O}H<5k(1p5%SQ6UjI zw%CjFXrcLk`DH?!Z&8rNM4Ka;)mX$(#|tsMt?ozn#Jtq&K0lk-91|seOi&J$JpgfR z-gu-r8_Mj(j>4+QpAtcQR1|GcLo**j5MPO~drB0NLkad02fymUw-lMuB!^Nt6y3Gb zyT;L{NTjT5xT^9Mi(=f79JNOG%hRuSu%$ExIe?~rj~Rr%dIT40O`Q;DP%C{Qy;vg5 z`_O8!^!B<{Pcr7yXb2eM+b^o_4P=W4xpaNrwITkCmv_G0I<1-V?9G>8>aV@U6I}d4 zD=TWC0$(I@(&mcE0KuvkG?CJd#0&6Z+^BWuYXDi>(rQI#+S@lS3wX)M3E0|{A^U|p z<1x2?_IY2BS<;1zSw&NWOsRO+NdtN&WZDh|pX|b1BiAM%tDXy8@}32w9WfW%cT7>I z5N)h>1`X!`>t7=|_T^uYo{PyZrrtGEc3P|~RwW6Y3ox-92SMOe^>HIhsy++69yNE8 zK}3#8y^P>RSZxeq8=mWyVPo~atD*pB){Cxx@7Y?q(GA&^^kO@`S|<>LvQK^AE-2P* ze^5v`vdNcf-1_>jcb`9b^yJTAVS7+v!QhSp#$jxi?bZ(odqxIq1Qo$-s*W{t>?1Zu z2M35V;q^EB$7e%UqozKXIoj?msKh*T)fVxq%gItFQ7fj9=V)FHut zBG+(fX%BUjZOiEf%R_brGOB63aZzv-AS@)Z@@g#XzzhY;^C^RA0HR<72ynCowN^Yt z68gfZMSxe24zOID`=u+2)PXn%i@_3I{H;6J8&&Q;d&Fnwg7m!+g0P6C2~ss+laFK- zlBc4;MpY&5c0u;x+Je9sl!bERne1SHS+l!nEf*s0y3n(# zoQ;kpUxXV^E)>BnBW`(QJXbQU%jkwhnP6m&UC*qXa0(8>VGh`}FQdsbKHS59{h~1g zmhEgFKtfTj#9NkF^^S0|wJTO@`~JCLNV-60IIe1XeM{|VKgzqe@QSt+zOYKRZOMpKoyYNS=HRfbWaJyKv51OSAF&N2 zP|RYyIL3bWM*je(L+QE`?<84&lv}&Gq?CGq>&6x%-_q!>AfZx-vod+u&b(WU5a9|l z=$*8)QNVT~)OYCT-}WcC*o-V1YGqF2N*nb*7MG&{;>sLG~|1KqQnbSL!vh- zV(V;5?-R3o)3@zg|F$W~d`yj6lmwm0ZwjGaKgI2CA4v{7P8!#5F0MY!u8w0x|K1@c(*~xfp5!2Lx z?qc}o(=$=ZzNxU|#cw%(L51#kUhNI`U*SeQ**WE=h;>7QQH`@ba3|;ad8?ku+r*NQ zZAyhQ1%*Pjf|9tkJKWoHwXroR>1uiIQ)4%z1zA-b4Fp(^&()^AR7mX~@Fe?P5(t*Y zA;<*Tz^FYK2Xe_qK^d{ZTYB^O)i&|@h;h6;0R!8mPSoMW+5iz60^a2Nzn+1x*CS*hHOYWL+ZbFNl`VWiYjrEskL`gG8uGw!TS$V* z=Db{>1vY4Eb!^ZcUD%+Nt2L;(xELM{0o8S{w6_aU9@51IDosz2&Volu=O`-LRAy&^ zje3We&C_y!ZNde^St30fZ)(ig2411x1Q6i`oACw^<1a|+8pO=nB1be4mp(ad#aE!d zSv*RjVvH@~p>2%m=%yIo3W#|DMuVK{ayp|YPyr;$*$msnMMT6(q9S6gK&AjRBlF+P z?GC~73!nZJhN3L(utH_qJO`DDv{*3eZ)!Ap(YWD%_0-oTt%tpju0;5T6-rLe@D&MR zVEV?fMArJaOVG2e?+4JTr##()iQTGSen9PO>IE}aK>i-^+U36&K^s>$(Y6YNd*a0! z)`1@J8ZAZFGs`4d7hk0^vd)a@>imB5B(7|e!{y^n%efEN1y9Mw)bxN0-W@rH`-9}? zY1zhqM!C%0LJL!#P3A}AgGJ#K?0m^thS?ND^^T&oCKKWgw|NKS5we!kP-{S~G01W+ zlGKD3c>-S+#$xPic7v|Yg*7rp{dW{!v7E|(JqiM+#aB^~#^(u>@u5;nnzAH1vmoK> z_x`8G*o_|3FGI8>jNSK1(MDyxr-ikla+QaFXN@DHs#_>?=*`c23iE<>gCWW{*Te)U z+Pzv;FjaI;x$ft6h02H*c&dTQ^RBngg!lr}Gzl#vRrL3US)qrTTde zOVt;H&7M%~B7hu~yv97NP<_#6vfS0oKFYCiJ3^s# zF-+@cX}g){toto32P#!?fIQ~%-M0p^$o2h%0(7JBfZG`2S>EUMJ!8yvO|@@ z;v(kP91?-Zw6d=vL`~cnLo`H3qal8ao9O{#hstC8ApAv54CW;M15HLLKHn?Ti+o3- z6N&~c|C*LjUy*88cQ#s@jZP3F z2v>Iape}8MtShRLfTu%jg->5y34p1o_kfV|*9u>r*eijtXl^Yy8~A5h0NI3b8tx-{ z7ssR;h%B?Qxj&xmBM^BCOIG?$*oVVZIQt8y))Vrsr}<*sSK38k)uuIn+W3Yy%-{&T z`&)_$7wtZ97yE(bv(yhq*VG(aGW}%A7C{2NO+EcHFS?=^&!%=Q^`wNeQXI$KLgDHB z8X3PBb%kh7NKQyT0ivIq&rF-X2~36D@YAVsuz4olZ^W!$4wz4_YP_de#Ku9hi!{>O zW^9cyD{;4uH&3M&DuRK zQL9uE4>`?#R=p;zTG@36Tl3w2-KW+0c*Gkx9!hAWQ>Us-*1F6_$R{ILKL=}6GYeJ} z+K4L0HL|uJK*+f8Snh|bt`smw(uCe@^>fm4mQgLln_3U4?8d@>>zW)7@_NT?8a7^q zHzg@5Bh8UZ8=@-?P$p2vg@zc%Z-#~MP*9Vram)c>DOnbqa?OPBL0uD-@Q$Fwz|pzj zYkmZ{<`7=6slq{xCY8B@<*ZUir0gyS$GEt<6^Y7)4f#lH0a*%8=2RED(TJJfnt*D5 znV7sd=8?+r`WGO7!c$9TRk9UwE}%rnjtFe5vnsi5sg;|nK=SZk@?m%dUy`08bpf^~ zxtp*{aUhz?aDYX0>r5r`b7^>y(F-At0hoq)RoN5~ai6HLJ2VYn!Q8nZGVm|+=#v3$ z3bXf{=8lo#tD@82Q`#^RKM~Vo_~_!+Ef73*s=e191fP$8&z)9{X_twqq$&ydwP=Hx z1f@hV(t)Oow~Wr8<(MCrytXJ8<@l&PlE$3jEpn z11@<$G!p%Pbj4xmbc(YzcKL_&4}LW4yR{SYY?JCpE1S|x+GQd?-VeOZAwG!T8S}&# zMY^Jk2mBkPtmILjG&UOcD?9zer4h3Qph3~Ce)UL`Zpg7Aj)ibK7~k*49=1--akuJe zctrV`7mODit$p5w@9}Ub87bY^)oTCiJedYe;=&AnXajvubip1VX1u4Wa8X*)*Wu`G zZ|nd3ZR^GV*?qayb~LKE6^zdnH@k2`rh_5wvUv@}aB_KKimTj?d8OMGfYSp!gU!F+ z-TdD-H~-h}-!^~u@{1c^e10)_M@$7!n<&xB_Hn8^ogAM_K6G3iQibNxdV#=%znAt+ zobZr;Ph$~ zkI*(%9B2mKZ=b*WWunN%;P44-`mnJu9gY%|!SRjjK(? ziPp^8+UN#3d8~)#^M2@qqe|;88A2BJU_x0%?9=u`>_Y%fMuFXoSyY`lf+u$=@o+<>`h3m6IxX3+n5o5 z2HiZzawsA5FRiIg&9f*R%IVZY>9ip zW;cj0lNLu+CPlc}xfB>4Ze!D4YG{b5 znIf#k0}X;9Rp-6X(e=keR_Vd*er8<4@R6^u7zG3R5-0-LZgu2sh+$4s6I z%oN;jm7x3tvKJ3#T{XNlA4lydCs)^9C3Zw3WEOG~+|)+Oz=kAXWIrf2^_K3juYj?g z6J;3Wc=VyhLXcZ%1qq^z4gNGeqtd+%yO6^Uq{DOgU6|xh2wev!`1VnM%+VOO$?z}$ z%Krd&{M-L*f6}6wXBy}I%oK@5GlB;5SPW7uDAj_dvBV4GwLZWVGJi(W-S4l|PM#(ae)L{KA`+Ht9cNIv5y;>`u!F!wg z^0JFsf#lv@mRdp6oeYX5QNg|m3%_<+P*EGw%4sYp{LO*quh~C;stcR>`DEWIHIJKo zp=F6;8~4;^eoA+k|0RTf7||3$;?xNPD3c*{z!fhs6OvDpG!D5K2>ie;k8y;qJy6cP{JZvoG{@s za$LL%;Jhy<+%6`6H+PZ0HM+VGRIjUlsfy|vv9%@2Ds~P`={eVjOSkbgmCME|yp&e= zNAt(B24e#4?8Az+5rnVjvUqoN@$N)IIt_+c?f)e*1jT?Wd!5pqj=wlG*j4H z`Q$|y41bq2%qJ}lqB8_A(jIE&!G=YY)x=3ON-{1-)d`cM4UQ3EJdbu_WR8I;X*4U0 zqHLv5#QETT;DdGaZ=1U>|IjdvvO#rbeM+n6_W8-)^mtx%cI`&lP5gxo*KFHGbOEcr zFK`+`Q8!$FCtzs2&ZIA~d@UAi0ic+?m*JO3L>Gx->^*rgx9_YK84m_ENhNBrKDed^ zXN(A!#~A?qfhz0QiI{TfGh{#7BYTHXb4Yy8MVmXpET@d*xp0a%gRA|Imx2g)- zDpdYLdn-s2#1%_s>Pn4W1KCKAzD=slOy?1|W4=?Uy^Nri)7K%{==QI%-H?MNa#xTU zZA2q~2Rz8LHGP9EC8+N9CqYHGKt(SuOG?$DSdx*A1PVWPn7rA(99f!Q5?ZOLRn<~C znQB4)S?biPa|TDkQ<%?SX60_eBK>p=lS!HaPd6ef1l^m#c=6qIwvA>oDZUQ{Zj04e z;tKPjF9+J9U=ZjUp>_TWK!k2uUUIjS5Fu?t5?<`Mk%ml84Pi5WmD8szU|V7S6fr>$ zDph|d$TY-W<(u1f>m>K$oov^kS;`e3xVUJKH>x*&zZ7wn-u>sdiqjE?0e@z- zi;R<-B%S-TtkkSf=TGr$L$A<&1;%Qi|@wAu*Lj^Cn+(zB*ATT-C}87GNjuW zlL(izQYJ`=E1l4%l8A%`eStO;0e>#9<%HY&WW=kN!uC(09}Rm&4Q8vHJsj*Gg~Xjo z=}7P3hm+9;QX54{g9;s!dz!~D4p-cim>D4YlC`_oud~1sypmKYsyMKWC&A>=h zUd>^h5=Ru4q9ghUUZSE?S)b#BWmHWPC@uiGp$E5m2S%{%)sgRh?;1AJ=J#%WTN0gj z2~o>h%8_aG zcG0V$o zj5WQ#^scq$1G|E0MhT*=NTJ{BD(W z4{lWJ#K_j3&LF;9;D5{S>Rko-t&u=p8(nEc5H*zg#8KjIie<%%JEV?`d(*ctstAa# z9(jU9Um0x;YH_;Kwfp$MmTZ@k^@aJpg6w>W^G35J&%HwhU;swgp9z zRIBF_U38h%(NyFlL2QPnZ~&q^C)_qiSUV3P2aQ08P2n4u8-Ks5MxNSEFJV9D*v8YlyxT~JeVPNJ6LtZW3L+w(mu;TQ1C>mm8_0lULMk+8w#qE2MGh60HktKg8r;upXmyIqYxmN4vT zA_hLVI)t&c_kTc_OXXhxW#08_w0Wrlb^h?`(C00_2MTp5{RI%H9j`{8mMM^@kFE}N z+TMF0&UJ}j0CnE=YUFvT0)77Q>JaEHUJiw>g^SkZ?i%Nw-vFIuczui(6kr8$raDT&r{f(|T^EvjzuwZM46)qGC`(>t( zL4U+sngmpZy?-CRo07q1U^T6lO;MT*?wswF&Z>qVwglS`@48 zwNwl*>5JZB?S0`*TVL}d+-$|Ou3OHMBJlY19`CiFv$`@G<$|4Hukch)?X_S@-_@be zunDgRQQ0XR@Il!P5VH*~yiEaKTE2EajeiJbZ3qEjd2Ttj;ygfqXtZWxE|%&%k=QqS zlNm&aVK(pNd=r5Ne(56yPlf@k=gAL&TuVYh#JjMy&Og4Br5 z3IVSW9Pkpnjcj`G;O)@;Yk_nTIpa-0^}TaD)e%$H%@QHjqIxuSb|C;`8@??0-+!&G z$y6lVT+-OYBR*tQ8{iUhq+G*cE*!Z1;;yYNQrUQ}Y7)pyoWaRoxZ7|KXBoYlm_Iw2 z+s)yIoJCromzPXuE-R+B3+Hz6uje%r5b7Gk4zFe$Le6j$H=2ExyKGL7kGnR6BGDG# zsV}C$OZP<$F`>~gBh$wtGUDs1n16=ym`)F4O_qevP-25mYZ0K%w2@OjY5=IxucOMx zsS=c0U=bm^lmR(Y`NToP5F{XVG`wJnjCDB=%3#P-4LZ{$BCQO4uu@(pvLCC{*ajyN zv35qNa8ogK>o*E%97c;+vA_4ut>?53aO?>LyMJB6D8+uf4!!2u5_kTCUVpfrI&dV* z*jf)w@}ksmL28SYU$%rUT^!BJNR|sfFoNs)aGH;Bb>6*rUQSk=%%ZP zZ3?I-B$tP4MO0IWX_{+H6MvSYwSt=72dZV^Op2uzDbh^G6-8xq&=3BKI$f8iL3K>H zkP4~U6;x)<(}_Pom$mnFf1#!brG&09K~^FjO8K~Scu(%`h;?^YcQ+A4hxdQVuW5&X zyL*D7fe=c#i#5X)XiJWJ;^`?aZVG!V^8yPs_Eia7pazAuMK0H$)_;GOVJ+GcwK_vy z^`E$&6gkP5u|s{7WDThX2T&7m)AVrOucB&45f?VW|D4^hnrl^+7I$YfTU?#io+s?FJn#LFm2gJ)(r)5$rS{*T9!ZA?S>ArkIm# zdoos2Z9p#eW=0-fZP;MIe_}A!+Wu8C)Yfa95TwKX9I^#*31;F%VH!qv)+P zuwykoeF?RNtcK9WqN%iTX&33%9p?ou(u(=Eg>gL~TREt~KTsfxNn9RS*dl`8;t;}4u7{B<$RXEt}B`DMYU9CZf!G6Y1@$G@leCnZ6RLs*npe`o z`PB4inJlK$#BV84&#wvS-NzbH-^Xg@&Jhe!$LoT-hNHDk z25nf)rx*0}dOTae%1T36+k7=&b1>oQ`pvfuB7Zbw11O)gw_fno-e3l@N1EZxR*UIk za7@|pz_n+|o|yHY&VQYa&PMeT))@!L^we++Usgf@fa2oI6OG0@NC!7R7|oXUxpxjp zwG9@DB|@L_9=o3r(p?YR%6PBs!+&@@!mdd?paUva4HOQ<|4uxl#d!6oQT+b&1n~%x z9e*}eS~VX5@j9Y_IM0SOKm{Fu|JhKpnZ zP)v}uk>TtvmbDDf$)ab!u?kD&p(+;;z<+3zF^vk73`rmMv^Om3MoQl4_qy^inj7E7 z`}16qK-y{aP*&1EQ-k@=@v1GR1{?YzjildAr`YimOzh5=YLd~M+OiLCQ#1vXTAZgL z#dO|`zN8Ob!6QMN>H>zyjMCK@u#*m}#e+Vv+iYqMFPuXm?Q$2GfTn;v&`I43iGM+{ znDYV~Et9R&b{7HXs-@NFC$BNVoBNcRn>wYCcw$jc)0mMsK0M-{;B&K5A^Y%%k0fp8 z&Hn%N+4Kr;#zWjIAjhbE9oZP_z|8u=_@n^AHWWaEdJeY=9=?gqLJVuTuJ$#qCcrHP zIA5aq=+%T#Ja3Lh6PPhXGBas~b$@CtIS8o*0i*Hs1|ptP@5(ostWgE_F;~;`p@ysS z1`MkmEhI93iZTYYyw{bIv8CM1;1&3BA zxFOiF3A@Kln9dWTd|Sd}4}bEMBnkssM0&I=6>>$bFB6G;?A~OkQj&C% zYLi)!DbY9oKAoOmKRN`5=9ZDq{l`)u`ha!3M!A1HbMI5M|EfK$wj>M=2G&XWEGuj zi{rUZWMZpW7zzWl%E^Mu(CP{b?@qG3WPR!B-cL|D`aEmVCV$k{bD1#P=h$PY>7SP7F6zY zg$}8&Ng^_Sqeb3C@$}8avO%8fJLRJr)$f0wWFtu+)+?lIy^%pJUpQe{TKUD`<%?U% z&CV>9>`vXaUVm3#mX1Nt$|AykJG}YFfBxrxNqCFr*o{2BWzGLN9Q@0z{~2mlioq|! zBPVpK+3Ihvkf9jae?nw@Jut)>!vD@FdcM|g%ujm zSG?_nw<>f4&c6s_{i6G)&evTudy4;Gv-#hBxy81>&VSxok!GbCCE5qLg5s}Y|Bgf} z+(Pdj)q90`GerqyV%}tBMt$ffP#9=T$qdLcds7BcKOP+*i;aGN&dr4j3esEA1BeRl zfmr#mj5$=hx!Wo-nFFbPfuf-UJndV(phkdQ{RP)eKFP)oEc08SoW{0kne}C@=|GZ9uWI^!*bd>3eq)Lt@onR;% z>Zr=}Fi95cG(|;?6wkwwLQj`n_A*^PVGes@30&q~L5gJzTlc`J40+=-6^x}a4|z{B z&JK=nXdHuzoCiYMFW2HiWTIc@4X#qETF4%V%f)$R6WG?f&#j2GtTC6JE|+(r!DmnD zI)6NeBUleW7m9LRn1q#%xMpNQf(GYFXCqDrCMaYGw?*e7^t4Pzu{i2d@)?C0DFaJR zIkqNBi$Q4hfw{1PgXhIIm{XGASHFZLHFJ+I#xL#QE8qIXnl3T;y|G}mHEbh5dr4O* z+uzKgFdGex z9EBS)+gz=_93Xox|4ZGu-tzTV4G1}+Jsdo}$_q={A*|4^AOMiJYkVMg?6M7~8h;mv zilqlCyIPQSA*QrZ4pxhT#u$H*$k-Z4WBh+bR+{9~r1-dK6=|?GMO-HS2}0Tm7pm`N zWU~;UPL<73FHtcOp4g$z1hU?>Osff(EX!&ffE6&!7^QA+j5)per)mtH+UoX&?LEa+ z^~D!q%{2RG%WBJ;Y$%4f#5yS_LVp(8&|#Jo$yyZ$8g#moI?o%ewYE)@TR=++0Mc#Kgg2nzSwRQ30)*pDGp2TETx!0x)6&{vVYpK= z%Aj%|bo1rQY75~Y;W8^(GbGWz@+kimfNwkET^R62;e+Xk0FY2Q)CfNCk1M=Ke8GZA&l)-{tzp zCpMzy6;S#fNC%R<;Kj41@jo}r$^`W zF}$3RKK%q9G6w!q82VoR2Y)G!xv^eqFC1UX8$#@8GW8g}gw|T#Uam$@C_Ejs%R|}d<8jL(DzE0S zheWG(M--+xYUEznQ0$4n-JzZ4+@eRmls1s1RY?V><#|#ZgTf90`hO@`vWF+0X5bpF=*EU#qnPGXkk|7&fUfSPCPsoTlI@!bFIIbyJ=#@HFN+y_3v6~~UBv8_`KS@bf z;~LB!EdWdnFy7-9DKmT`0WSQ=68xGgS)LP{5dkAfjOb(XA~(vlC(o-IqgK*roVGxr zjv>TezvdeHp3p!%Uw;ak$T4luD59}8xEf?sQNsY^is3Zm!J(T_0V-IEzJz53Up6-j z?dbI_FMbLa(;~gBv7%reMuf+_RUs{7CDM^#j@PS?izTe&)^;GV0W>-TOD5S5PQU%Z zU;+D=1dBBkckN*PY@oVb?DZ|uhpo0w|Bk6h_KKZ-Y+m7il7F=pQOo)6g}o|v^wvw~ zYo1KUQV<8()?9Ivc!p5a6MvcjJKvz_Z1EKe*zk#PS>u!J%9ByCbF2G>nfg;P@4~TNvvCwPm+cUw zzbMjVUa37B4pvi>88WuXg zXK312g6H2qxThU_MS`q%=tqW$(3*SB`Uy*DqIT9IZ-3f$su-ysG?IvYI?}f7^Zwwc z!Q1RFLwfomPi&UP@5F5x>I*!)T1YUVU1$px^=bL6tw6XU$P#IRrWleknpMFh~EWh zRmknIG=IVDB0LB~+w!*y2em3^%+>b(&J{s41nxhcP7X6~TN&lxM1_KR9eqxNQ1Rtoor39hscd|L-dm$?xiKnQCwT2S2bgh zrhnG{99wJR<5>a9dZ;P(r|c-AWeA%H+I*46x4hAsNuxk@8V435YHb)tHtA1Z_YrU_ zC#W&~R9HAjK59?EF7Gw{W`V>0$=UH@4C~GJ)7kj%B$Q*JnO?RxRaO6OXtK6i`eIZK z`?90(fs-|UE*d#ss}a%Amp7u0l$i_E(|@<<$6PT(8GTX|IvLCku>!oa=~qUE*Vr9q znP#^BY!9LlC9zNkzS9T=n|<&8$(!`LSXtiSffBS;-Of4+yPVMv0YPfz)4l0pF+KUX zknrLJ020tqP9Ai`H-FK)UQ{CqCFR1F|GfJachR)J`;R5>7K~+qTjBKoXYXy>+J8!N zb>Z*lSFCn=4^9VcAn%zZ`y!BZXLert1bXHW$&DLo;8i77fXZ8F7IfhUAGlu1&jghLi zsdx&V1y2tHFOQRv{n0rmyzv|8AAfHZet9+;ANQsO09Qb$zYPa1uFw7WZ>>MparUzJ z=_Tka_uB&3BT;oeaU8*3Q7w+$zZpVC!G*s@WYy%u;ZlYzaGJB@*=|2MHzx>LYs!Xg zfh?U9@Rzt4ga~8jN{6 z?ESfjJXH$oCKsV_-5(qsAqK@cGlq9M9oMgk3ofKvsl^n&p;wj6qV*C-eL7Yyd?N@8 z{Jh6=3%n9^R!FY-MGpiq;JmkV9Ppx-bFFs)!@ovyp^&HQSK%z4ucuNO1uTC$vKm!! zof{jM72}57?F^Wu%U`QT{3EKKQB&1+hAA~oC9wdViyT%Hpy|Q*i=!dQ#=;R5B4Y3 zpWFUaCdmdJWqq|Q(B1YR+mvM;RV&iExizX!ah{F=s9CI9hDhyMS5l~IMnmDndIq|m zt!ad@XXzTDc(%5I3b=pM+aLU&Hu&{gCXtyYP-+~Z&sl1Lvi0*FFw_ZeFr)Z|1W6FI z&iPjlxH<38oVUG9MRQ|0bhACW=s}G<8=fI%?<>W zCmUu&{vUM6cocZK6#(-4JVh&+P}=RjI>+eW;id&=zZyqG8OwjbN;pz1jK;;-7bs6} ze|c9lXx5kHB)^219oax8Xk&LIF(wnWoi4(Kw8@ALagmfgN6!9YNgEKmEg219+~&sq z`IFQ!!zf-s#&>#N?oN_}h=u-2#7mCaja&o%6khu^^}^GDk{&h+yHjYQ#h>1V?$*{{ zt>}c00jP<0yS1<^rX|&DHIq$Kq*XGpW52m1c_QY)u$KBNs2y9ou`(-hM=a9pAT`o zK)oD(*hMC~xb%l&dw{l?+N-GOVF~9~Xk>JgREzYmdvuzp+-bNIB644&*1AwiXnP@$2+Xb)K^I0jj&b>!2cKI>8%?aJ5+OCxRyQzN zoHe#LoRNRF^70I=WgXQ&cN$)58uOB&GL~Zd_Sftsu`D;!Ga@Mtbs%`OA(Q|DNd(7+ z3Z|gr;e^lGr7E{z?`#T}2JC5hLe0w?dlpQ^eUFKJ(SwFu-`L+r6loh<)+#kmxIq*S zi>bFY{Lo;!VkL}+Q)#s(ROx>UYmP@Bo9iIAv4r?TX-Io5^XFJg z55X3Sw}cF~`j{bH`v_5w7##0=ACOi$;*Nn{KQIOy*G1AzcOG`p%VT?k7+09_NUk_E zqQ_Q~kHhKydk**4rLcs5UE;5kfj%^eJFOW2rJw9pN=PX`0&I^2sM+Y(|3yakYnvMi zQT=~@#w!XqcI*MapeS`=VA#G`a&|)JN$hM|P_!gO0@Sk!3^jx#SdL-yLa4#*k3A&f z9{+?(%=bq>!=vllGT30wZI-J)jfNOI9&xgt0dp;4U^o_yj4zJb$L)e(6^s?AhhZ7U zPl(3AS%3}d{*lPUgP-yEDTFmCQqc#rg~ESef8Bbb{;x7*8GFx?@haop3j5TOD+8gNgA9Ll&vHiHaA@M2V>4_h2+%?k5i6@R?0ME zK{47joye9%fQgmhY8GZ#6cnwEdA%8Ze10NH){%{;#nupq5#b?r7~8>L8POW9^#gxa zwo{rXAc&*Nhv-~v>yX#qmPo%c&IR>%B&)pP9{p>OqwT?z!6hb^>$e zaj)kx>!!0OoV#!cC*k0rgMK;X3;=&BC*cL3q#a}|^1?3ii?e9|jc^7kuw^i4KMW_s zJwyb_JkNw57Yu#6CpfM!dpcU(q_?lQ334P>2Fcf-$ZZq*S z?cOlSEFTPZ{U*g=BwVAmdj@}Y5!ti#=Jbsn8pfwm~Y2{r-T!0z;G9PSEO4~USiE{k;E$PgqbpPMXR&u7H!48x`ATOeoB zX}GoJ5cz=)V<6q%ZAtAk(9lVeO)GWSh603j1o^>A2!V2s=~oitCy9S+4e><3wVGW3 zWVE5bXtJ)>))U??8vJxz4_%A#s&~YAx98OWhRf-sLyF;q_{SS%5-rxi$eeU90^|7! zurcgc;!=v>bz=yPmmcwELdu+UR$=1LPbOyv2SY|sR;xNPQ#}1NfJ?qc&Z`c_qvNPQ z_QNt?1eGnM%m$m=&`W!dar@lKy5R=$rl?3|W8BSlivdz3r|1ePiW6 z--UmX@@Mz2EAPJhwwp;m7h%unMj$-yog@AN*eEq>nDd~h@%h-f z6zIU0lCWiTo9j=BVlSOha-$zv72LzAE zobPYLrG;G5_^N+i&FD*)^6<{5`qP^i^u3X>;>rg_ngQNKqPCF1=rGhVyfx{MZc=HB z7sg+sF@Bb{mU&9TOe29;AkzG_2(yCH&a%|vCw!Sz^GAe}`iRg=skVJ7TaXE)@m?eMS#t-EaR#wo4{7K+(brGG5 zlZJJMr3Pc_o@bdVxoX&PP0jw8Ua`WthV@O3j`D1<0b4Z8WjCddz2Wo$w^$ld64E)k zAU9sF@HG(##}G@tlLgwS5mMnv?eH^`)!=O>a26>Rj601sITN#GFBa<@cb8F)ErBK_N7(rUS>RR)X;+gNC0` zAq|nfrXw|TfWXR4k8r}{LHn~3jY?8BAeJ_?gQFhBdAO^dw?E4&imCuwA0Iv76R*=@ z*Ur&y>qe~`swOj08qoO#xSG2l#*j=ks)?sHJvV=-giji^zD;NnP6RB^$)Ft3J&H6@2|W}V>y#9tknN_eKodmI&A6jmP2-?*`4rGDzHvnq1vD0n91U@6b- zBD1^O9lGwcM@ZUw$5x$@!hM}0sNu=s^nLn-+mth8?c9uqMRb8sJBRcuI|4Souu-?A zb16x7fy^vIK`5#8u0CWRtfB2t>S@LBw$y*g8UwkB@Ac~MFxzK-B~0h5&iKHo-6H$M zXeNbw@HFoCit`0DB8|NM%WOxrStWdXIA9|3zotsY7@v@QF18~Hc^3AOu*YHCU{*um z8QKUfR?7$#q7m(xF|LK+I+C3uR9A2oUUL}a(AfcQk0kdW#*nO)IP#hJXn2C090-3D zI5_HC_eOto1c+3t6k*|-tg0)Q0TRu)raT2{Lbg-<4TWP^8jQ?wbr^mu_LRexV?K$V zK)xLq%Xda^Gy?}HN&JT!?x|JM9Ue1OrIJmgqEJME7Udl=8cAXgW6)Y*GG>PNR0F?z zCFxrsXnb`3J;j?U;R7EOg1%`QH1>ZxP{7VVI2gck`h|Ov!Y5H(se!`rf3U)vp%v*V zEDT8!epmWZV*~L!+O1E=M<ai6f z{;{w~&n$_>)2a~-vf+VFRKWYP3A}Dp4G(n<#GqZWmX=^|&|yuQ2SDwpQZ0Y1#=9Lf zja)p6*#s+OlLKHrUb{~zCq@_s-r;Kmd2AS;&3k0Hhj$uI!NEmIx zTE+#TK9!w75q9`UOV*i50YsDmlFS{HRXI{MRZZgAq?wkUw((Ai-@@tGBtR$U2?O20 zX0!BjoJ8#^CWE{tkp^&w6CQv6{Q$7Rn52F?8fxw7U79AS*-LiVSCROoMZ!rot;FR6 zc5}acXJXuT>RNC`}^)DGkhzON%Lb3^BM^$T? zE3Us`PVNZ838m3v#K_Q?NNR`c1shk#65NqMGcA|Des)OU?-!>CUo3wW_qL|u{zqow zHo;KML%(Yt?wJJm6YMD&VYT>$>z92M*@?E7iG)<4dkMniq_3Ti??)TQ&mnW;s&9;h zQSQ1AwE5%F08UtD&87ic&DoN?8~#UznNGC>9RlQn?h%qxD$-iYk!cg>U1Cl>c=;2q zfMEclXBRJ~2v_WrPGo=d@Pc&_G4N>oV>ssN+4uzRVz^tc0&sAW8q_Zc-c~SK?jXgSkCDxz#}t_ropHjZ%rRqVIXHi4==iy$T1Un<^won2 zeR#z5ZN!W%*bsLkSIGh5I6*;&3fMN7{H7FMA0iI#4K z<0#1|22GMmB3yqp2o{zabTEdN6+cf0(`DoadiGMZ{uJ<3jzd|u4Dp($zY9+ITFx6 z9`QmmL5YX(#X|D~QT@aE%3ao+99NjZ=9?z>k46)if}wx17E?j^pFL=vLQp8Oqy37?vTd3PUIy{h z_bfCli?vhBvNst8?&17&WQ0ESnnTzgpW=j>y6XqKrlg6`=0Tm|YwfzUyZn8uc;fD+ zJ!nX>y}5sJyvb+{yna19fu`I$La1r%&g7YEE+Df!bGHy8cY&SR?Y`XjvD*Ie>E`oi z&o`?-Z@hWF@#MwRZNVa*;zRAn6&Eh6*f9B)y-R- z)ph)f|JhIXC;HRFeE401bzYL)et`St$x-Oeg%%g_9~+Lqq*t9JZ%1tN$6 z-S2-4bwr~_+&U0(=jQVIDnPvTV(l)w@7%eyzk(0zw*l6z_4_O9n6Lc|l)SjtS-lAa zNSjbI163NWcGhkKJGbxO!xY0$?*ZKX^*fvEw>oQU81-i7*3I>0{C4-=z2)`w&N@Ny z5arXr(&N3#$)KFX8bHQs-b1HH0QT-(t`2|xK9V)O%emZH+h6V6yt9s*1*`%KPwef8d&Ol%ERR_|bS zG2=DNdv#rKBE75<$#?GECroQx6a0V8^;y4zpYeCz@7nqr;JbT|3jn0c0^H&H+`7%S z{2MFDRajeHLn&6zcOZ+(VL=2!5cdELr~@_eH--gTP)g(wBV-fz1a45vZ6NMG$@Mn& zo4R>U8HjoVJdS^WWBPHI ztNhT?zg_pjR%m9WRrY=v#{4yIN! zT1aX&F!!~4_pT>BHLr0CBcaBv+jDBH-M_PpcmlJ#Si605`PSO33ODa8uL(+LRR9^@ zy|cVNqnMrFUSGa7s~EJ3&2fJxVvA2&h@^MH_p>(~pTg-?unk%6+PeG+0(2<+0dcgB z7)vYGdiLzr(_2rAS|em=h&2ul?j78`jT$mq=x7@cbl?<%l*76rdH>V*vHU*X$xFlG zF`@@iLIEKd$atc#GkSqYjxTzUXgxVV*KB1?7<8woCKDH@*@HOc&y`P1Y!*ZnAozM`#AqJAs5{<~O|u2U$@a zi1RZYK&L23l`PUvEDI6Y79 z0eRUjC@7T?WdVOyfg#LhGtzW%_lhg0fm0;mA*UMz(~}~+VffSb>sP!n4&4S<7P;JG z)JwOMD!Ep8V10BrbK{Q03#XAv`I|50L{ce#^QA-h^##~EEQ`<>k*Jy|pN-s0omtl? zw3K_^h9zFiU7=KIb*POGuy@jC%T10W#i5PE*#lG{H(r0flKA3WSSiw9_(4KVrBI_` z@k8O_>pE{`m1g<3jj1=3;kURS6~$It=qsMUn3H_4_xCuI+t!=wKUD*1Th22?i%EKp*bm6FDWw|p1@9N>$`3KOmV7l zjx{HTnpooGnA9o|UC@*QqA*MPUJd)frP3(am`gKEX`@wbT42-i=HB!XGc^dC1t*>( zn#(T$ON*h;?#IE*ORS8-K4Xl)lv)puhH!s(dbGp`Wb6j{Tu3>5MYbgQREm!eyGO&v zPNoYG)kZN~Z{gP0uveKrYG^Fw=!8JWox>S3m#>66^ZAOL*=p71fqwquh==jFZ79Mu zwjEwMJOBmaJvQQMRN=B<$yjd^(n#OIcAom>6R_3n$(6u(H0t%kW~HLrZc+8D5u<;+ z>z>)|+5+8DH@#%H>kD*C<+axBOh9ig&?6Pw#e2N9K#x><7w-{oj-u9wa9~*O@Pd%9 zG{(~(nHt8<*dU^C4fXWe!iJG$EXFhXhPbkS#@It)$$6eQ8V}qroxBMY(kgQKAZVSP z#t?%L{Td(YoG(;HO>NS_KL)duNiTm^*83ENe-JZ+^pnK5!D6t1#&t@T+2^DE&qR&zTC!gn7)iu zr4xmK4!cp1nh>VNofKL@nO=!Gh*%AnGa0?mWu~KfDh#j^DZpUbR$iJg)Rxg40&$Ry zq!!Y*;dW;o(SKbpLKuY-L@2aP)(zR&5GlR##l4gEnQkkn6g#6+n#x4)a%0V&v|Q|@ z3y*Br#17+Opq!CnXdi#p!W9Vch-|h(=QK#7A>BK5uI!vp)1_;Gx=}D@d^JkOu2}k8 zdaO~?l8^yIO2VIPZp0M)Vdv!wPzRIuC=!5l_xa)8_ zhkIiY!(%7#8xkoK{Ati<@G|s7;k`}9AsnTPDAB77SMqH52~K}juO z6*~2OzLH1jOpl9@Ljn`b;h}54x_J*4sD(3Zg)R>CW+k?EOet^dhbMX5ejso;T8ukV zIF2nNxCacbBs*b9I17s6JB(cW$1;DXZjZpdDYapBgw*Q{o$t~AqHj&rjOq7yvQTo? zaZRz6T;J+8LyLbY`X`Mj4Nz~?N<3^NjnoCraiL1^=!W5$NtK+FWM0NdvLl{S&kR2K&nao};CBqoA5P(oA0GHImtZ(;^3zJb z{!0wOG2rPCI0|A&5bx`92-ChUq+q3z{CnMEC7(C=3wVo8(nYO4#v5lL|elh8c2|M^csF~ zFRghyc2vxQL3o1L7aVeC&EiYJIh$S#O}8u5fXV*w^#9v@z4f#jbPhY!wP*52SV1xe zl!P-xCf|MDy24B$vDn_oV+1F*`fK#)VBmkG+`tagUdj!}h$~3N-P01;QD_BA3dRQL z@~&<8oSFdVfK_oXghU_CT*wNWQkp_S23h=CT zZWef>y(KL&C>!{~r+*OECSV7&oDqcI2WgF#Mu!kbFr<0Pf?@YXgTNICsZJ*%WCnlY z5n4{uPn9Ejc*Pzni@&N>P8!|}K`?iIGsLHCyCQ{_WU6zn`106;<9oFe6aNe z+sWFiBhY7ex|fbvUW~@g)o^;&2ie+YgA=ZN$!fvtt*mCBd_BB(`4I+WMs@*G;{z98 zMfPy0;FrkPk)_G&$jW4O!mX_o6ghu^CA(;v5#81(;8t&)kSs1~{QAz!Z-#)<2hLc& zP*M)n579-s4jP@x;P!}PCoV;zsGvW=G88?Z-`e<;&fb9v{1PJ1eVPwlrRz&X-)ZZ@ z)-a7+C+bLWCBcLhYT;~vk#RLTzN#BPovt&;0=e*eb(^m&;GtgK##@D3>+65?N;me4 z<_5Ra#Y=^?bv#d~Zi1iQymPmD7pwkiKPH3)F(m@6^RYdrFI!a!m4~@$=e6nmO~W?R zp3>(XkHSpM(H}*QOD7YL5IOGs;xN$&UOE2=OB5Vckf#ovriZWaa=Ea@bd;Iy!hAAJ zdh|qG5Ph}I-*WtS9U#=>x2b>PbX2RBtqE4eEnqfkQ+Hw9USTI_swyM*rdgN8&|#ml zQ`w(tK*fy&AvJ&moPBkTder~#Q)KXd9#0o7r0HkCaR|$XHQE~*qtcTiD zxE-=f0`QP@!3kY3TsvA_68bk{b%8vKAPNJg>adQynuPbtXpGPT2(+LP0-&KBi1k0e z8?jC~RqGDpXWc7eSyPPutg4;{_~&74<*oo`*wuty9>oT9XPTTI4eN8!yCAmoLOH*hs=L~X3LDsrTK1?x=lJ)+XlOW8SKKQ>p2i*qy-?C4v&uDogK_b zJ`jq#t8$kQb_Iat!!CSGq7QdhMvvhV%eJT+>$kkO(j*;x^<&pz1+GBi>(Rc|1l)|< zD*@g2H1Zt#8zVjwHpYVc8&1U zaY?Y^I)3T3m7p?hUUv~XPcXLO9r?)w=V)Ms1|6Nw-Dy5sgf;+W5Ve_PlC(Vv?|_xb z)1>?Z)}GQq)(b$zvc!7F@a2$)<;WwKE}(HA^*Qc<>G>&yz7`rfu?af!M`x3GeIjBb zCdG}Kc5{E+JA8lHLr&RzOGCCn2(1Y`8HcoJpm$9vy250!ZWO*V-x)op8h|a*LIk>Q z?-+n|T^*_skYPT+G=W@M32ZtRVPL$5@2%5++BJz%U&3nw8CrZ8PfDY7=4;>_+dyEE z$updmae5J9kl<_!NtS!mP_v9%bHJwG5L%h>2hw@VraXVfVhy};l1N7JFsBEyFSQ*` zb3>Mmz`BwVkRNw=F#V6gIh)JW3i+>(x?q5KUu9A6oI<)4~f8S9oKIu zkuay}fpcY~>smmVfAXb0)I6wN$7xQWdf$g_iVS3e5x61wSGEQP;OW>gGYfliOTS0^ z9ckN>WUqh!GfbgR5E4B;L(O*v+y}K?(9Cd`EPpcUjoJ)#nM|8u(i=pJ8o%lFhiBL_ zSt@6QT|JuDEz38K@c3C?zh+JM1mc|}g)(YDq;df5XVkiO@7~7ht@|0wS|fIU%eS7q z@4=#JWxnJ9xd+q&wU#BH*5jgg^ds&C;o$$Ey6JygNrpvcElA~eBCu|W5XT?67DF1Z zVxi8aqyNMkg&IeT3&c2OU@!I}GFy9L)y*BpwX?^^e7JD;&ieh$TMGP~^s89Uto zN>G2|mBErE069|!ZrdmLMGg4eCBx*SwD%-k4q0yu+#Q?BL=7x@}j?;t;EYDgpo zCTd(suXLjDB-Bxu+yfA_yzo!buo^3izaD>YE`k)9KYWUy7H!EP!Z_edb89s?1ajUH z)3q6w(_sg*eEjrG5Ok0tzD9_y6fEfJpSC4NkUk+Vvv&SG89~h-B4i%4_mCP`LkDH~ zK~rAPU4Bo&gTlj=TI?WFm|CK?LQ2sWh^U3LG;Yas!NIzsgra!ZclxNFwZSIQ0tbH# zYCzYR=Z$J`vX3{wKfQUrIXXVYRFGdqy27QMs6UHTU3&+lgR!Y^b$DuTV9$?y#O+kZ z3E(%tN=tJ%dw{+0o3KyA^TiLr1L`Ct#R37$u1$~u*8qPa(RwvcrTZKYS9^!AZ$KJa zZsPZ}cS(s5RdIKU-GGvKC(XUi4{|lPME!UvwPL_| zwgLGHgGq$S>)ofQtVUEJ3Uo|9h52IxBw$Ful@GWqpKJhMpy!uR68Csu6bLlXJCYr${4S5a9cv?W z4;E}iL0r+%Q&=5zx1^h>>6?F$OvTsJ39EQ2{qI@bsOH(OA&iY5Gue){x^Evo{=-u1 zokq`T2woYGwHN|)9?E{&aaMusGe+S8XW9iqq=XuFX*p;w3AT4ExHbY)gaIm}RD251 z=BpYyHr9}nN9UwPwHu%2jv)8oE_?@i*dv+nK?&@v#!2y z+65pbqa&51vkS}v5pJBMf=$~Xqu4n?AqYFU3)UdV;iS8^lop`22k1xRIbx{5>^lYm zQl8m43S%4`XPLHL?P!0dZP?1%UPvvBV%&ZxPRCRiGiAaZ4clm;MQt7w_L9g>45o&O z4@VyQg%hyD#DUHInFit-fpY+4LwqtQj}b35avfIOr3VhH2M57npDE$FLHLI^(pfQn z&&tPx4_P^W&&nzAWEDgL@*~I{O&TA<4&Vy_NdDI-24Rv2xG{f)ML`7_Bb}_)5IK9b z4rUf-npMFZVjcY4TnQ72mGESF|(Xvjfq2q6#=M*ea^MU97>5$$q>c2?WzC=M|j5~(z^`<*m{jJbY}Xv6Y! z$XDeF)(XUIrqX|ugo!y1$OWJzH@U5lZv#G)LOi&z6V#GJk%cKc|6_2D;3Q=3iGx8F zlN}e?cP!={di#T2LJv_NSQCUS(Kxq4Pb{2BYip+{&<>3s zQ77HhHn?IqIpnJ^li15Z34;^L0^3k_s4i% zMy?Xplbe8+>45g^dt6%-8YPO}p!t}@FO;IAoDV7#8^Uz2XuKTybtdxJ7rgmte-_Jl z9kqZGcvs#=13Z&4mDeudMbJr>rsDyYEY{^$*x25N@6{4D@uhd6Jh~P*A_0glm|ZeG zbQq*7$oqd09m|$^GojHG08nU7F?BLdQ%7_@@wrXgAat|a86D%ITuYbX5GAhQ$dUs# z$*f1h(&PtlVE#@{PE!GqWwh!wZa-!kEu1}rqvfC`#??o59=BvfXWW-zQ$c-9XOnRX zWO&$rp9Q@Oq$gq?HV!p%II`ePb^w+D%QDO%-co=3i^e&Fi))0N6{ZeDhKRO&PD{fx zK!&)gVC)eYc@Vuu6>zG{xXdAr+@uQ8?5jz~1SV}VqVKntjXCBV$@uF|ex`tYnVE;3 zUMxZ>AItiM{E}BC&is^X=&X6`c^OC9OVtr3hLh+77qkd=@OiJd|I6VR@5-3@5L!~T zbZvk0&a-DvR+kWa6%Krn+OF7{Sg%uG0cTB}6-VV)0dVm?3ph#h#^Y*y<*QY9K#0s?7)RNfOJSR#465{ZY*$rc! zcDPf#uU&d5R8!b?CYm<>2Z)s-|A&ALfsw#&_>hqsBv<33RssXD6>qpYJyB~OwXP+} ze$uj5npgY@CD+ztu)&}lPabxAc`tzF#2Oiig=Pk*go&EXRSO8by&MJeiDChX)FyU8b#6-{+?hLScqV*3z#)Xx>&2n7Ti4?Ek;6k zsnt96x=z)Whc-!+41%kCMbtXPmfs(=yMO2&LOT6J@A&kO2oMlIKh)1h)9mYG{d&l+ zfjm-^mKOfk*(h(cq~EXIypL8v{zZS|uXR`HEtty{a+!Ra(wXFCc5`OQP5v|*!rVI@ z^%l64jK-!dv$ch*yv9B%cOetLsId02`M}FsDSWE;ZLV@bIJ>v z?mp$pgmP4zkJ#&~0>_3#J0Rw)M89B9= z1%e6a&FJIi5uO|b4URt|Ro)(6p2`<{-5S)<2rjKhZ{SAyVc=Tp>05tqY|Do>oAIoY z-Ivw^KvQ4DJ{%-JgD`5E5Qj}&Ai4w^MR}hmcDTRvOvstWHcp2-u)r4W1SvW&R$YI{ z7fJ4s!=-4zsV@Ed!Tv7^p6zKvG&To3j046Ug4IsHOg7;ONVTSpx*7(!)uYiN^{u2Q z_HU0A!+bGL+62xz*X@7)fXfOb{f70hOO`}b1O^)>?UkU(F6%&k-G>O;`Y@af_l9`J zaL!!_i)VjuVkeJEMz(<_yE4LJ4F$_^E&eDQB3Vb|yIKl=j6gnB`&&%#Ws{$gJkAML z;OHNi0s()()ya<1qShQC64GCROQmMyS#z4{nd2&i(Q4mqXPbWy#c^-^OC*~x9Kj^x zPv6T{5*xc1jjhV>wRUjIkpwJ(r^tY8SAH)W4n8$EtbH#VDgw4~cH88187BCm$6aj+ z=yfN@=yRM*)(Sx8-;04DHIZKx4biIhy=Yh-Gh8?!l>GR?T1;w?X2+2>l&1cBV?!rN z=!wT^>J)9!!3uwRN3{|ACM@YbQ|zFj>^f^&2Q)R~whlN&Gyb+nD{h+9ioY$=ihCxt z;%~EC!Ol!O>6V=NPo^i*4iIMFOLTO2*=Kl<|Dx5&C_Qq}q$u@jQXh3yiU*UJOa}cQ zkgygR`O-ib0Y1$qRp-ALvzdOAh_Z2dCi6mLCGS7;0X~0jYgjWil}7{BHQigfoE}Cx zP&}7?*SypKXfWkL?m-uL?R!bdhO5!O_G>s4=Xn(uYtZQiPU~V=kv3bH4~0zEN-i?0 zYmjE1<5A)#9=HY{V8f*b;#H@T8idekrvoXsRzmlBt*GCNHXYrE^){fwQze(ib~peW zMM)J$R=$7JVn8P+t8T!k=(=!*ed!IM(~j#qZAh%BaiF?}ZLYAfIT}w#hX`W-D&S7m zwj4Zbzu!CAAHXjQU5bO<-1cE*`XyRm~K?&hC>g9X#m#-!e6#Hrh zT%rQ{?RUL%Ope=LV*Aok#&KNbOZUn4WuI;_8vBz=N~{#5Rxg>+Ng6oh%e!_f1&F`S z&>@8gm1G%8*0%Bzv^t8_D(ObKoib)*2C6j_(q&zWjfjs#GJ8HCqK#(J-XI47gO6zmK)rx<{ei{ylsrWKJm7#L{HcVIa~!P zHytPrBgH#0&Qc$C0f0@&|KiiSc9YM$;LyWIWznf;I6>eyQRD;0vUmF>tXEh{b4Ajp zYfWHz91?Usv&=XxnQU}F(#v@`?8u}V?gM`V%#Kqh8cx8(`zErZIulID^;$nMCES!( zP2{y8Fm2mz9Z(92dw@0VK$}}ppp|o3c(R-T1}}C2p@Za+z|rMPC{u*O)^o~e4LuFM z>pGAg;<=yt@zd&d_Yu_+5klcLB9aIbvEb0f3uDReHA&i>6o+lKWb8-uHEm)=j~;)e z!Z1Zjup0>H9p&(-cjfwC;6~iI4dh3b!y0WG8WLRTgq@>hiq3h2__e02dnPzn&8)Q) z$ehTn#yi@8oa=H4zAS^z-&Uxmt|Q7tufH?G1GS0m z^pp%ZQh<|@5A9{|7%HS3q9SC;4B$D7eyGy^vXrsJ40k%Yi;M4#P21rVKQV}+QB#R zJW0Q2=Sccoo*%(VjhHJ)W@wLI+AV3&#oFTi0lY|6eC{%~56$B3!f8WlU&ntRTRQV8 zk>>@U1H5y5id!~E^{%CL22aF}`jQ*ThL3JcleC#4N0l+0f{;+|nGSKTlQKw$Qa zJUj@ShEi3K?-Je2d8wiM!KN1sY9#rHD?OtWDtYcEBpc1na#YZF&PkSj=+1`ID4u%HY2zuwhC*_UM<=!#*S}S6=2h%fmP?c+q^C3CM z5tGXGhoY{=MFHPX$F`Jg!a4bd=i|nv%rzO3EBO{=xIu?+{&#q%dH`Q}`EKOp8e^Li z94(K*9}T2Mc$rNgd`Wqu#(}KzyhS%&{eiOXZB{yt=nZL z4`@{gtMLmih+qmBLAW`LtYlL45JZ6u5&u*2~2iFgDzEv47m^u>UHJtI%xuEwLv7=N8hS%8=&y`<8=8yX zd6|g=K@v(+%x%`8IQKDJ)ID*IZhi@j?T=3Jt~!6gOH4GN>-Cv?<)=t3@zqepkb;;F z^0ro9fv4w6b?kVH)5XX!w2DJ!{SMaTAEQ@T;GYF0Qy%+zicPdiaZYy!FB0BXA+d_S zV}+a-q`t2&=y71&8Np{;FSnD>CtvBd52-J|4kkm$pJ?)n^&*ya7^o(L;H96I*>J<^ zaHxL`&o#&6ga<9LuD0b-Wn(wajG>pGOV<+UPF@wr#Z-fPx6iH>LLkesgy3s=5y6Pv zLC+#Xh`*~ie8bRUej^Gx|7Q4iI#`5;_UqD|COYE>io^^`Gl6RNw*3+&?MpCohDj;T zjRup8-wd5mSYlx{p>{;8eM!JcLniIefE#~m+B&OPlpGnvFs^$bwUtWP%x1!lH-Xvp znosmmfR~~ZBFLU6Ad-_(54!1l6<{j*xpZo0-OLQa($TcgK=VK{8?7Yu`a`Z zTBmaU@Ko3tJ=0(TaVM9Ru5eKoSk){^*cLzFO=mWn`?!T<9v`sI0ki3(%c+h=Wbm6gSXySi2}r%ENU=HVpB>o8jTY(K}{Lqf2LkP3>7 zznn0SUquW(ToZMs?WL-7A^~9~Gw7*-OMra_5R{2J!g4gEa+r}Ud2Z3jifU~lneGZ* zHZ+|@uYAxTi+tloBuWIl>H;I!_oIJF#3%e4CL>xU5fU41>?R_jS@4*?CzN6rM)2nE zBHKGgve~N4U|9(AifS;4N@P)kPwA6+(XgTH)Fhumh9=PLjT;#i8^_|pY0IdsgvW$S zm48Gix5VOk8h_g8<7J?GP^i>h|9k17_<%5xbSq*d8deBhdX!jitzVW}@-~0sQHv5y ztCCl4??*>?{rIT0Vf;!S11<;>mX7`^JT4!#jK*35qx}YoiYq+}E`h!Rbm6U~qH-JW2=j@po>KUY3&al9ZVaQk9NuK#vk0xb=VG!g@(|Ox|oy zl)Fm|EuKFLvhjCiNM!GO64Mp49CV6vzGcdpqVPa;G0JrL}DmQDj$y*yWs&u|mA=LWHB`RcWIeg;CTd!Y+THm(A zjMOvWsXoy%Yk{ptz7Bu6S7EjmX>Ex&$+8Zdz8IVwBHgGeiaM=$URoXaBxtHrJ6qWS z6j)uVpuaw<*8a!@D2QUl1n#kGe7tcZjjdvlUlviJ3g-u#T$0&5^#j`cWwL?dDtU3% zPz2e+R1SBqi-xOojs)2v*CIf8rKAs4UaY$1n zA5QRk0WLC-1xCyO&X`+JrGZG?6ps#^geJm*5$0%r;U}B&KvYa(hAVD=Sa-AsNYW|J zZ|EMX2;tb&*knaC)aZdCZv8YvhREtW5M!R6z><)=nk>PlxgsInNa!n+mRxWx64H`H zpejEWzsFbOj9Y*BAiCaFP$BTJh^Qh%!G^*^TuBo(_=H5Ya3BPmJ%m!hlxL%p>+yMp zQg9UgZH)q9r&s3sp{m|S+~}9j#qYQ{J7e-cJk<};qr{)*zs`nuf8Ne~Gqi)_3DPpO zUX3aZDHx^5>Tn3(^p1u8w((6d)!*N_(Jj7#xZK3=zsY|JBHCY$s3n9!EI$>$Uuoe+ zXVb&cKmEdC%l?m8Hk|a$`wj)gYR%XXEp9Gu;t8xTL#Rs?nzmJ#?;Ry9AQ8j>@x3ZU z*hl_No)7eKIUL{}6FqO(s@Q=`;DFW-lJ{NIx&T+qOF2o_Hfr}f>z~TV5WbOM1hQKv z0^!f2;dhr*E)r$|7q`1E5}*MF+uPpC-#3?GFcLO@uPeLnzWa6td`qtp7{1y*Ki(T1 z!6viYs(2aMTEV}#jFdM`i11}04HcHF05!`X5X}K;u@p~D<^bdP1mj&qj2Qxwq~0vj z%^=4@MV|m;|_4NT~k&3o(pIQOw$gm8IaFp zDbtaEY_M6J!l)4UB<3e!pQa;6;pIUFfgng@5?=yNhqYZEWxOyEo@RU)!U$*JT=oFX z9k#(^AQ8+}f=rNvD8ZCokP>7kiJVa|JbeRjAWgJ&tc`6a8z&oYtc`8kwv&l%bHj~o z+Z)@~#y0-E@74ROx@xMXx_a*IbGmz~Z}+(pt7g7wZzo|SCl!a7#Nsjxgy@)^0^-(f z?oM&pik=*czdVQYMKf-1>BoX$@2^~8#HEJK1knJ?+Q%TCM0^HLgN`@Dqapq^>RYH8 z+tD@4q7|x4Jjg_JYfRUdom%6D#sIm$_rwFjTM*BwWw$dL_qA@!zg}sy!}Ku>-{%L_ z{vKfDeQKV`nFM|B6)Nb)c$4Gz>~j#&JL*z9^5c^4%jkbx@X#lCNjJ7rW(rM_pgWmb z#@YcQ_(YQWT9kzAx$xwXO<4lSdkZ4RU8D)zmY;u7k3I!Z7*i*mxW<+Emi7ppCDs%^ z%LFUSWeqxzGvi$4iCbQ{(ALH|i%c!3&z|?qb1LlRSm^}I%&N7kyK?uNx|p$Fa|!cA zrFO9T`s@-m)i$Lzf~&~@U#g=lTA~{xX@@7d4;4E zZ7`pY7+O$Nem#)OU6woSxle|Of*gp%Ex+pv9(4@fY=U_-bjGftxk-0{YEfxqlB)w= zzjJpSjBkQ*E<)^@?y7bdNbtcBm^5F*m=o!i2e5B@n8?0&g>x&&O;O@+x#%w)oS(Kx zBjydK9H)Xh#LF5?_A;LrH*offEvGe3&d2?EJcAWeX;0l|?#E+jqb_}LWc=0<#u+e7 zd=}G^5%Z%sjj)R4=bEr()D|T;w;0v=j&(1l;(UEy4<%2#wjBA*;dPW)8Aom-e|CTY&sJKbOl_L=|Lt9@~sg zTQL@#Iw2~K9mFTB*O{3M@ABwOZV}o|#2vHBNj9M6LP0pHdM*kJOnMR0eWe_*f&OVB zMr86FT(9BV@BOd#VAb0Sh1jgTCu5qKJNHk2hKf360zSf7$%wlTPgOLHiIc9gw$wp- zXrl|;*{~8vLIpn*>U*5n`1bpO{OwPm4@qL;D*M3>ygSDxGdLI3y%n6l?jKXLdl_6V z>{_GJy`l8qbj?W)1C1p5F47)As113Suz&?|5#XC|bE-pWwyhtc2&R^Q3gxbpGBz02 zpSknaV45V8up<=P*D%MAcP5YfQmEWyq`;IH9oc)Br)SX81wSVn{c~paYYAlawl_LWphZ!#m8Jlbk&1ukX+H2Y zwi(SDwBp+$4g zDfHQPo0Dzd=Ka{5i>DDgf5ksmQ#z%8*R{Mq#IZhBzq9eoQ?O6mFy= zij_T^RDmM+HgV@4HAK_mR3}pB=!d&I*RSoqsXS(DxH%_JswUZy^(;Kh`7D<0?~fiy zv^bmc3zFJ(3=;rSQj~wvhF&&7D5b$Rt_oY>r@1zvEwu(z#w5qy{S0l(WLc7+X!dc? z*4%2DH0gv-9JU@wN%P4|){9&nJGF$T-?qqQklD?^d@7z+9q{dt)eb7@y#S>iw1V|V z9FcfEpSupP7@J30v0y5T>d6rb;b>`poy{z#Mr@Vhm>fW-VP>5r#38;%qf7r@vwo&s zL)+S_M=Ve0jkUg*6i&Hs6Vf5EBl;bqaGjAqhEiC949`t+CX}r1NGnfqHCPeHaKz~< zOfH;r|CSKFK{Lhpywd=yMZ@_T-Apt7idF~d5_VE*9VFy#p@CmAWNZTkM=Z?o_(8l+ zN+2zSX&*RvJP^WOoLZps&9g~rVL1VpV(p5A?oxzrlSD0vpYK0(P~awb=vCih4xzN& zN>|@j(BHc3G47AG$fh>4WTfp+1RqVWT3^3^{PVU6TEUILiSRR|FZ=*Pj|3LOk>jD* zp3zR~J1w4{NfF!pn{w3K9*vYDSEEw&;uSe1SyjK)7bz8WPl@uAz4IOg!HFF z&JP{wTV|9AhLhxw`(dbj7Wz%_GWJbWr85Ae)g3o#9y8Vg8nJZIzTVB!CUrcerXi~| zgPETm4SQu>9l|_nT#RM>GKzg@Z?hFzF9E^4B#9g&q1+r3>}=Axbms(0>wcD5zrQ`Q zxZ^C0k4$lDP%3_ldJO?u>|(mkEWn+{OKO`aFsrQC7GtprY^gq@!20xLp^vtseF$*l|KMX>^I7&TsZ`O`Zg$ zm@^}XfMp9GrjqupE}wL``c{(|1YMADWJ|(e-wphq;M?du)(jn6?~1Pkiz1y5Kemaw zkkC-Hnik`4RXn>*>o=lQV=mM{4Bws!ZBg`tg!;ZSHYBu}?!0Uig zUgaFAcjbeiL)|LjGG#_C+r6 zSBz>h&qDLjof&f^HA}fGOh-HCfFc-g@u2?YTOgY-tzpAAIcff6?Ckji^Yz&O1xl%Ot3 z3=74qlH?2hWg8BtEzCdy(IjSC+qyK>T{u4DbF)_6h$rNdbccs1qu4h=M=;g%rHycOt>#-j)bw&jo1%Ja&pZkg!*Wj~u8y znCi>sI<84B&h;D$m^Ogek{sBcI`A+B^I2O9vGIyiuWbwTqM#{J>*a%5GyE!1^{N~A z<-|AB2&t9UJWfSJvV@=j$Abt0-4U-YsP1cgM~4eEB1L|@XyikEz9kY;X#MywGy2Ay zJ380heQz+rpiX#zr*_f)=4IP&M=;orr9y$;dvk^Ly)nEq|>HvDXHa%F{8 zut=ByLyt@>PL8YsePmH1dFxg0@Q?kbfHfnQ%Nl!U92|9KrDVw|17>V);q)Y&go^$iV+LQEM+jT&j7P|yG;!*pW`S03WsYkNS}F?Ts_+EYQwKWf>BS;TM5^r2M6xkM}0P1-BLJQ z71i~YV58V7&5wi_w!V^DS^aI!oq9YUf_pq1_Uk)*Z`YKTLqvAUfO2+bnZ^Aa$nWE2 z-8W;vgoBcAfxP^g-MhA5_^2@>Ok;ur%#z4d8)B#KOvpF%H2qzfic0;zt;?{i#tZ$` z2=`7Btq`DE()>Hvhc3eTXd?2qlu0ed*qN-m!{{(Z!8JwF%Lak03i0&sMnNkKYM8|( zL9w3(_CXLocPa&HuxT3=h39gxEjm3qa2 z7#TTFqTeU|SPjD(-V>r;3$ILtFmVV)A{nbsgAKai$Z;f|Mn*ru^hM<~*FcJMJZz}& z=y;yhS5-{oJknNky?eB-8-f%JongLJbuH2Onc0ltRn+wrGsb0;gKvlK7`Jfn1gIqV zqwP17Jzg+JGZ*l7;2R{w4GI6m>byza9D|HAIh&Kr@k+8C_?`6KC)iq+H`YNg`24 zxwpzxNK#ryWgE8c&G43B%7erxifhUfk%Au9HLK~zzZ)(S`#K~dAU9`|XA7T1 z<{FlOE{NG-=Gzo;oIPG1!a?iLbu)hOj~$Xtwo{P-CJO8CX#op*!-B%uuv6k&EF-h* z$Z-#0KjHtHv?k^Zd}~^Oc8t;7)Z%2OfwbmaF-)GJ4qWY_yYwU$V1^X@DdNZ4Q7hs9 z(-HLPjNN^=iJ0YnO2ncP6v$ueMnSC`?Qqu;`Mm`tYLdwIv<`>(y?f$`q_T!SoKIF+R;FRHzWk0Gq;J^vtmn`V0wHUPVS2gKEdo;<7~ zf}U~4%oXfZsNh+9Jd@o0Jh8&B&vNDa^O;kN8(E>8e#4CQKRe$b#6%-v(Gv3p&}0!`{i#gjyKAGLiV`$Q8hPnz|3Ih;72fB8lprZ#Bq z{ks)^@yV`NYu#OL!MgVppP%t7SKjt$_N!)_BGhL54Bq$!qeoMA-&&BGnsgB}u2UZA z2F?)JAO&e$&hH*K@`eJ94;IfOB2#A}^?+E~p23K$-wJl2!8rvzpRadOwJ-r1^8{-O zJYIO7MzM=5fG7}LG%tA%f&MlhLe{P4* zLbI>C7#1+uIhJu1zPkVR13~XCdTy>d+F~zxq$-$uc?)f=aH=u#pAw6o4wMywV}G9* zl*{WD8Z6}Kk6HoJrbAY65?GK;5mVfixWp3k82Gq&WU`kgw!3>o_qSBZPR+ph?O64K?H~ZIjmJ za3FYzMem$Dy}I3sf5y`vUb2;6$BSn%kuT91SgupDNW-07PW~Arlem6khZ7g50*x9_ zK7gMh?Nd7o6_to(kBtuzGZ8K;&xA0fx|Hl1{kLfONWPxa919P3Y~$Hzj@}X!nA!S) z(hNu$c>yfYqL$6cGhVJV!c^N5s9MrMwGzth1Jt;rr8tD#Hy=(X(5^*+^pHP6Bs`)c zRznH8SaT^Fn!%id%*6bIHYqT0%|CiIVF0Iffj_7+s<2q_z82BGwNms@L@9Q!Wa~~B za@1k6^i=b7a88k9)P)lSXE3aaJi)Y_OxeZ=*Jf#Kk`eAcd4<7sm%{cyqW%mKn5#wWm*}ddVnd zBdE}=$KgrUGOWLp8eG4F7Lv%2LiR}F;(e#GCf&I`Zq&1wt!!{Hx0rKf7`J5zH2JJXfdByfm$+ zRZ z5{8u|jcCA4S!1fQ&I{^Q)`|YF$A;4OB`ozJT=q22MaT-8kkk*0j z%a{)%@Del!3DR&}98*_pjJam;X0ly*K8nSI!W~fN3uOrWHV=l(HcpqG(YK6*DHxxl z=_fP@d$Imz0#;?m)#BE(A)_T8(``kJ!^6nPYEi$yieop+7jB2hb9e_T7*0Pl6T~K8 z5#OQw#8~qsp29Qmtqpswm!4@n8A)X$HSEyY55KYdpw^?+-;YI$;F*IThn|sp9{w7f zb3#^BnBn>I54Kd=$LHVX4QbRzP|)}01zA*2P}t$lxyQnb-lyVJb@?x$+4M`#^-|(s z$CWVf{rWdm70SiqE=*&^8jH6;qhYoBz3-A7Jr)sE!35mDo_0pt3eoFhW+07%j;nt` zFDZN1mPHeTK+=o<$bHTK#zVlzU0FqNcv=wJ)H3}?BQG*M>*X4RjhwY*4Zv(qEKG_Q<<0{rRNM)%1;<#~r9_?14Hzk%XAwvxs`fm+ zGJF9Fub?`k2&fQwy#x1Gzeh*GG}8^tzH$7T*g$41@uNV>m%qBR%c{CHi&C@pq*B5K ziS4U&ztvGx^t;1AKB)`WiLYijt;Y5LMlE3{R!V&JP0BeUA$%L`W5SCd(g7)ZiM7_BCNIhT4Idg)~ZaTD&WsDk1?(0z!x ze`ez)Ts+V}pYt@^35-JPFp_e!?$m6?+IwL8T9RFAOc)A~M@%E6Q8hpkB93Zy^|87B zY4ch${hBA-Oz25}5c_45{94)Z3i&?8AWVXFmh)q1mU1$&*WK!A2fB2)pN%!;o*OTp zLYjNw@dG`ubxiQV6{B>A#rwuQXtM?%>d|9NcAKm7oe=9Qp23!AuSgoDo~-KoU2|*7MFl=a-_mo9r94_Yj*ovSc50mnl3Iw5-0b(p}>{ zk#LL+l6}m_49JTT;l(KLSsti3ud=g(;Anu_do)K!74zX>s-tEIs+P$Hq5?*O)e)W|M{j?*~7fc>7V0*7e8 z?}kyVoLt5S3#S7!=6r#VYvKb_D;?<4>-^3AS*Fi`(VAx$h^{`~fny%aJQ>CoG}eJX z9sIo9gOmiv4b1+34~H`lE~1{-@QL|mYItbvIiK!)qkt>(JqJFn?}$^D;k{9#?fP;h zxLfSv&WH1Cg8sK8Ct7oK&UGZo3w7t!-6OC5?5o@X8pf7Q9zrZy*Ul|PqoxX_$c3nn zEb42W^}<)((+J-Q6BG;y2jj!U6WL+8Z0I&%*wTmacOtD7;DewPNP2gFV-Poiod<~j zqbhDSuLj0fLI#koN7;wb`0SWLTl}%9jNUYukS^53e9tcLsUeLD6+*BL;Dw2Nr0gVW zR6U?OY350KVz7lRT;yVl$jD18VTDdRNP5U3{9PAyW3Rd3DGVZ_&57M2vfC{X<120i z@0zZiH8X1{DS|{qN~w{u42NwF85Oqbkn?{wxBxpCR>P$%@~7?~xDdxzb^HJYxd0X} zxH$d4X6)iS@{F0G6%>4X#h*Z{?eS7|^fIFZj;?O74GOrzNSy88V4}Z^+GcK^#ls%o zcsa0UgT|EaGB~3x(MZ_og@QEFBs^FN1$J>IpxLyi!V>hX!=g&+)#7bGIhi~AY{|dx z=kST&hbLif#za>lxLypy-%(k?m@2dRSe+DNZ(@gE6a0%G4~hnQd@&KUoJ|@H>zL{+ zwlG@aj~VB#*9<<}Q$1BswLxK;msGyOwZP>SYBEPCGRc8Z1obNPJ5Wu?D=LIC19t7} zQUeW^a=K8{+S}Vp`D3G1JEmgd0ZWmQG~_#Ox^?;~gI zUkQ$rA`3ZW?V$a=@ANS>S+V3l;5AROzUiRefTgxoP>MofOWYYQA=$6L4ruMzAOO)Z z-&B9tR{X*~KSarbbHhIS8?#eV(ay3gM)BJT;;;APUK5f64C&z?b%>yBlnF#vWh8TW zCZB9duo9MFsDGW3S1-0p)(;jMrGAoIi{+utWo_%>R7iT*28|D5(*LN-MwNip^R&{(^ev?@yIbM^y)HZq8Rng@6D9 zqEbt=QC(pfBQXcNwU1v?Q@`t=y21c{k)+x!-9*iQbWnvsL5WiT>7sUl{%$VOLq!1v ztxj#zM~wmvZx%B^jQ|D031O*O=pO&|Ik5`8nWb%5YR@!4JA3{Vdj`xM8_6<`PG|i7 z)#r>koIG1qIx49AQ_1)_qh-f?##B33=~@DFq?3linoV2pWzM6C>q?pZbN|@L+N;a` zOJj*pDd9yZ+7T>cj+{TilwZZ|yOK%=@n02K9;;!L`=5Ncu;askY^lA0I=A(z#>=`< z=kkcxkWqjp3*W)j5#Rw1YQEW*`klbZ+j943P8)*0YsoKZuP%^Z_>a+aqniT*r8~cA zW_4bu*V_(iz!Cq5?`FDSiCgk=`x;aA{*@fC_LAR7<=3FJjy!15_VF+uJvf=_N9vRs zPBl&_F8`H+j)rsz*v65iI&`MoAgM+0TTH9Ri5qm%^lC9NCH_4OQqLn6{W?e}(#B3% zpO#tjc=V+j?3y7b$}kR7G%(eeE)RcJBiIf zvj@9wA#4*EVT>t@eUm`JE9$5{f2hBd~GQHLdK=%Mx$Wl=&hD4Q#EBt`#Qh_1u^ z3adX+Z+3eY5QV}jQgNn)Wcs%+$g)chUu!?lO(eK6m2wvBO%}UBWG&G#A*fef+$pEP z_VW*T-OEk@Z&jsdeLALX3=}jpmDYJhRn?{wPb2>YL0g}T8U!nVEju-1X;N8lJ0dkN zP=a%gbW=LLdQ$Awx%on0C=i@8<<${L5Q~KL_#h+|c;#yS|6#@hISEog)pyP)oxJaIZ9Zne`WZn7&032VITJMh96=BM@Y)z{eY2 z{cFkQl2nRxfpvlJj4tMXT2M0N)FhTT4)_edqJdFNl{>9HHm4AmBu@+3)lTXSrxgkZ zr7dFwyoj-9?*avQEv~J>6wSK}4Mm<6bSIm9o>Ey(m|~x{U0(LzJoG&B8lo$<8t{il zYZj+cV+N&zTZZRAdEDgWrW|&Hop-~G<*B7oJ9c-Tk^1ToV&xWieW#K3{cZKP^ATRm zTR1MFrw%G{y@vXa6VawQrhJ1IM4njX*X&n;QhPfFoUs`y7iI$Hw{?(vi_IZnrMDb? zeJ2u9al20}s0dCTO@k!a)%jx~BH8R|SS)goY?Q(VG^CGW8f>u!n#-uj@@NvZUhB|I z-f4ZsZ7DFJ0iKR>A`;b`nPd4;+B)hW&UNn9Br10nZje=PXeq4%mKF{37G6G_ZFf$f zn%Zvn`=xha%MGr9-A-4t|NO7l80hR7J2P)e(DYeJf551cpNWLa-G}XIo=hR=Cf7p0 z{6b%_7n=+*yTa;H;1MdcKQV{A%4qc>j?7|i&r5myTd@242H$-GaBV)t>+-hIefgXLm1Mc%5 zq8TTyIvnIR7H3gGSlwq~h@`_Cp8+^hLMfMWLt^~!#RyKPoD^DOaWOGu70^mF%v7I$ zk+ad+*Tl;k=8hxh( zg%+O`h#Gb^3ww9;+a8+ZhuWEciEAT{aB@sS3VhdsBP(BcePa@;`E3N#Y4ZW$%<2+C zSo*gKDb^LhCoz9HgqfP)&Osh>Yjk?`yeGgP%aF27qBvq%8%PK}b|&bY41h@TYIv2N zbnd=j*>3VW#~Ey#46FY9ySWC~HM{IT<$pdZolR?qIg=`UjEA-*@-+*FrUlP)D?yEH5Y2+hzo{aoboVHp>yiouoUC%3 ziytHEmzI@6(b(-Oyf>mKvsh=yQMaCFdQFA0VuaY=l^4HdFtboEaXPCVm_NE;IM@># zz;NiSM;WyxQAR-bh8L!pbT#C^*q>rmLmdBGM+*?H5-WR{mnRJ zR#?*5-h&M0ybKql;!hKoASdsWl^Rd-B~Pvw=QzoZKTy8*7jtYeTA)Ir8+H*5cV==K zlpm%Lk^VZow;xPQ?e49>67CHAg+|Cx`8k9BkKbOn)$6F&eVx}1aIs5aT0^YX_o9^^ z&dqgS%NED9vyK67LW@ky+S+==T}oaPZA#(L>^*fEC*O!xC^5$qkygY4>YfL&8trl~ zZT2Jm{8mC=WGQ~GP$2*GrWUxn4PREFQB{BrNW@Y+oejIFW;%Zo=DMbVs-UpZTVShz z74@_0v!pl}8hcif_VIs$#6m&H!l2lyg4`2{PYJ z7GF6-pr}RIhd9FK{DIXvRp=F(;0@7$*1UtG)F%I3CC*H+aGcH<8FMeMrg`Ze;k9UO zb?eOo)^G_p{hM!Zn2LlaTO$X~sUzvn1%>x~0`&7Q|A}6w)#C|C>GifkuUfvaD4ae) za7C?~*>;)h=Lcw$at;c$8 za&_|kV|!7P$wa*}UNyg_v!rEPkCTv+ySH7ssHNf3iU5q_47~ho7`tdUbcO<+(a#EQ zxLakd_21sWn296q4H-EV#0#N0Ma;Yt?nu{q29G7e@v10q*^EUy@G@qP`W(?*ocEA(1?@m^6k_0H!KeGncJc69H4!gx zbxH?HA(rkN`+JZm%c3bgu!J0{JUv65fEeQat(c+W^zjjKt0@sb=7y(3?Pxv>2W{%L z!|9kyDx&)zB|^kllx+cR=6f;Vr`rs-Aqoueh49nK5ZjVZyFhO7^LRYyGftYOSc61+ znpE6g@s9`B+!`MhXBQv)+a^PZzu1t7FWCHBC20pgzMROX@DmeFMsO4AdwX8lEB2b^ zc%nl8_1ioZ!AVQVa9sIzb4SA5bT%ZaCmc<8a^SSnxga9=+n`Ek8`#hww%+3muM%LB z4H3txS*wrPFY;1!N53`rG9jg9LLXAIXr;@Te?|ArddNy3A?>$>5S*{_Ig)nR^XZo5 zk8z=NO^jL5_(QHzvOw=V`UbTvk#5%J=XZI8Iq;@KB;wsTZ8%ip7z5aaPAO9blO}d|SCLEM`mM8MM)MOPYMdgTa6aY@ zmEFk)p(-%UOnBy^ayM|ef5@%*Gb{?}-UYI);>Vqg z_J!*PF=WWA6t~Tpzj$aWQdh_CX}miJm5gngfpk?jcSJibZC{>s4F8f<;XnZ0Snerw z^67$}p{8zblpA8_IC?U7=kGIi?W&<|U5a06Mi+s%);1kj(%`D@s7JTsuH)d@5MXSG2Ibs`&<1^&(Ouv-7C%XR;|MAB zH>3OvoG}-T0mw?&tA8aPSGPu+odd7q>Rvp<h)L8!onk@&AD@LZ1qG7d|bGd#Or)}wzHi50EvOG~P?6dwn z*#GdXj$DwjJ z^5l(%-otAY0rr!Wh=4J;<*nxgQ+BQwMngv!dWOM~Y6!+++zYV$M;`RedW6L2E*Cly zIGP^#!Rjrp=U`9?5q6s0jmo^y5vA!J`#|5?dNV!EnSGbb%s+bk{GI4;2Gg@4A z7}$+JoC2X^rVec}blKnjgzF`Kyxi=(zh8=(s>?XZFb8aAYIHmqG~|ZXq+)&os-b&) zn+G_LTf{kGsf3T+ZC;NT*>=X2&MI{oDjBaNE^|y0XgIFa9**n$+18sMCl8f&-JQVa zY4zp$?)Lm#w({R2K7!VK_@uCuj%EQ#U--g~jPD~ipn=3Xs4H7_-lCPdW{` z8#|c|DS#f}lS=27qi0RfDC7hC{JvZ6_L*sS>Fx8FSq(1CSnr7w)J#hd9DJ+y`SV+< zU@I%(QFVg!%jVbK(aQ-Q%CY|{r^Vw!USAh`#gunh*PHmQnY}hCXD2DbCE)eB$+5NB z>GOEX9lohJ2(=uoLzA#`%DuJO=5)Du-u`&W4v2@GBr&hVg-G30%<2e~f42Gcm60*j zYP0tjR?x>bZy8Y>Dk-3;VpTqnmb}`DO2}?};=Y``do}ZJm;1xp*5l=tE1siyyI;>N4A=01g8E!A?KC|- z|6%ng%C2d<9a?fY(*7brTA+da$=1# z(fdDORKBUu0?932GB+7OzM~4Qi)>OaTMJ*x`d7w`-TaA5%gM{gI|$W#wDX>-9FRD94g^y;S#Kgtm$TnQy+P&^ z%2NefZqz`%1iQ5d)hzZ+278qi7S%q=B;DU{P_$eaa;ga`-c&wG72OW1cU|I$$g|G( z-q>0bHdM^wOerXbgcq87j(J9$Q{id0JTdfw6Dv=CQYH2Lg;1h&n=}awJWN#8);#z9 zC!QCnsFooH{O6;C%C_d98a>gmvR=kB_a05x*v0XCvP0>1=9kl7-$BS<@DbR&)N$u` zIjFWYaYH`3?1-+)Dc?{lmwGc*v2!81a(tx6qBlQ8cya#z{?)mpZDodfBPnHV+NvKk zK7~B%=(^A4X`Q|6^54#GlxKeOrFNzN)T8YN#<6b?lm{Eypc3t7;HxlEe*o;sR7G;% zUA}xy?xxxIYh88GoEufWR%smPyo;MKdpyO`ZNh(!w{?{I!ZC7jKLcOP<<#V(%TcC( zvbcGCwDZhl!^F(_PcKvKf7WY0mosF^*?h6$xm>@ca<`m3ai_RG>wggizN#3s{a_Ip zXLv*ZP2^<#)#msd56i?!GW^>!)ZmyN2I@XsOgY0Fk#Lf9GFDYYWS}j z<*OhruJzOhWy<%sdcQQLS}Eq1X^~aA;bKHD5nqqA_d7JRR^L>Y_S(PW)eozN%p8nMl~Cc-Ps+=lh&LC!eGYz?aV-rIZx|X{XobAZ@d2|5a)n z|C=pZFgo)^;R&GZkt^R5{uD#+cucSHMlC(i;-LCO_SIg&+_d@skO96r;9|!k#qfe%M9@iY4|;G@32IUI)kCD0M568k5p>+dE{&2KScapb|9r}S=8o< za1s-(!cl=mIHR+7eESZghUlj0>ZnF&|KZI*bl-3$!oWZKhV#}EQLWjDRI*D!7EGt1 zevYuE;*Iggu}B$EF+};|)&=eo#}-3}e$##;LTc=O1|uS)Q*|Z7nA!)8acq~*Lh3_R zzf+6&y@qepuREtkZ$+2?Kj&klH$_xi{?CGLo9QwgR~eO^?1UQCS@=_(^v{}10UyUU+wZl|ku%W<;>zMz6d(gisF zj_NIIF>^6QYJc(ls~;s-W7htIF?mH7i~afQ4dth}34hBuc!LnUBk*?T^(szNLw|md zc`4kHu<-@dhAxBE#D9<>wDWB!pPwy~domeUJxe~&04nafx0{{r@>gnnD{5FKw{By! zqcUOp{|Dz+>tD>D1p6AiNR`dv^x9o^{`9(L)oXeSP$ieP>_WbGYA!4)h#x9Mr>FkoE7Fde%h=^*bwtXEqq28@=R7_z0q}8-mw0URS07 zE8S9LcK1aU)`o+dJL^j=zCeK{o#5QE?w!riGWfEr_Kd@ z>`OoD-dmoJJ3G(z;LF3rE_kk$L5m^tV05>|Y3!30_X)hH`IS_+x0*K=^u^Vs?6a>X zqL)n*eS~9;O2q~zHo~<{TN7c|M(^;X!^(N`-qSflH$jZ3(laH-YySs28p0JiC^4~h zwz=?;-ON8@sh<6<%F&e%2>{SsN8a|uj+WCLRGmra)|~CrTy5~*f(OkGbbz%!3y!t1 zDW7|>nQg;?A~Xun#s{YtQbo^cE*^fDD8^qu!(`H?w$H$(*9)X<$0$7#HN zVBZS_CF*R}uulhZfkh9`F3cagxoq*KR<}Ry^y!(9G&TZf^yT3asfbz_Y{o1II2liS zGE0HEcl9#+7*9#r2rN41Szw?}Q2YZuzFY3Ck{Nq@)_3EKb_^?$DvwC`gG$!w; zE{hcNcQY_?W+e_aCZ8t^bF70;{H>c6X;)}&REwoob_XVGqNC;>?BHG);&%3?BEkHv0naZqyOu2hyrIVx)c_bu}z$)zj# z5S%W+KbKs6jo8o%CY7maTmX6tC+Yh$;jau!l^XmXKY?>OXbSd*)LF=*tGfG=b$)Kk z%D-R_`;Tgpx|(lRZafghA#j&{dK$^u*Y2!{7?RJtw7xt%_`$P$zyusooH6Nj2b}%C zsn{m*!ZWdhef@R*Kf7`4`>V!e(E2XcRh1(0zfMtH^$?$wex}FSk}}PQ`lWdri@P{n zKKz#YcLi88!7we9EI1{uUDiaqIJ0@a;3;%W}W#8XBQ>CY#DcTh4l7UW$oTiKfkgox+5V=*>a_fdeMtQ3T(haOcTRs$UM@$Md5XT{Fcy@MWAT{vqRs& zLg&YhZ9gLPW8g1jBfl7$BPq*EOs!sw1dq5)05&ukUqWJqOK8sd_#|&9bMXmfV)HuI zKLDc{#x60PxAkT54I$WgS-p@8U5&Za_prUbp_dyeydg@wdA@V99904>UsqVLnSqlM zNer-iRhaPy;{2{Mv0#^MLEAU@I+*fYWr>hf4CMV)I(`ZR-K72e3pH1yn1WX22Dugj zFLD%=EKF0TpgfV4qGT>)=<`PEvzpNcFTkza*29fe_%4+)3Z#z159 zmPlgQBHmNjAzcurOs98owU+BynU|+z=JJWK8k1DbqFTsIMROyb)nKZi$ zT2&Huz(f;4!wSseYL4f7^RMnlg5&}1M0&&)SYPPo{C|^p;GA%pTb~waHeGT>iPAFP zlRd>z4T^qnF&xqB=|5_46H*7vBLf}ZMpUUysdCc35J5gL*1adW9PD+B z^Ep@H{AX*RtZzQ<{!Pn9C0H+m-w6cxfI^6(5~R4{(Z~ZnWCfUGtiJIInXfz@%l7SH@3553rBYN zsJ+J5FY{t%phl2b?6n)zzaE8Dz!u|%Os0;iB@=c(KPkJ{$q5F|wGErAh!)JZ>C!nu zB*p^CdIEOJitb(y7dpZIb~+@O0241ISa+EqaS1X20N40Wxsp@-VHWHh?r zDs!Tb=FV;UV5W>q>EMtV0v?fX^+~X8R49L4YQ;MHA4w2n@MhnqB1NB^Kk%KyiJ-A+&sYw zmLUGQGUrFJy;7Ap6F*B~>@gCv)mI1B!8|jl?3CQ?t+89!tn~(ifR$nfJOO?5j#oo3 zFEcl+JxBx&uAnCzAOTI6bI1XcQ zE*r~hiipRc{>GZ?VzyBvEz2iA(X;n0(0@ z3yE|v81_4=qGPHjJb&kHd=xvq*)wT8vo+P61jLU_fc0Zy@)FLE{*E6q!25u(|Gm!s zzGQiNz4t;uXKCQ&@UZ5!2@qLx@Z=%PCLqA7qv<8G`i_^G8F*u_*)ze4lMb3JuQ$wN zHKp!e+iE?{OQ6K2*3wg`L%!Xxo0+-yF>{RyB7Xl@AQyoJIcOf?U?Pq?*-tbUlfywRRq*JK{p6J1V!{(FJ6w3q8 ze(e%I{FnnKGOnv^a?9F!Q_>y5yNDG1gbUOq07YM6`DT(SDE2U7{+UkBZl$=Sq0Y>Y zs#?aiEGJNN((8*l9L^IZbGve0rgu+z+deH4;E3}708T)$zo!D&REXunK6R?awTngMP;%$gOSFQlqRZuHbqBOX*&nhi%<*$bgRXkl*rM)W`GPehY!9yg6i zlI~@7AsBz>Q*sVLl+bxE9s85}Ty(cb6kDl+*Mzs{P!FF$Jrw_dW6M6=22I|HXsnud zA)g~mq&P8idpPghq+^&Go$w9l8B%h-iQS6rSQW{Xal)X-t1Sg!2DS!32$ue<@7ticxc?ij1%T zvp8cGb<~J;ogEnd-b+eNCHy#T2~3a<7tPv+Pvhyd?K|dezZ$vQ z#EG2%Eoz0|tkQg}Jd<<%Dpvfyn&1gNeTXdU{qE)hqI`fueM^57|L6ZWx4d{Jxh

imJtjEtC=Gw!c83RLFMhx_Iqp7|0}71}T`z_sl=`C; z6<$E2S>0Tx$@JlL7R#Ym8@Iy^xVTa?oezMX%G zS|h$!-L)GK;FUL7!$<~dn(WUQLDl4jA#`bgZ(u37O8EycxzFehuAAXIAJ5Die&yUg zt3sO(1~>cTAtD>$tl+X1-3b^81M~`B$SlNSc5?{?k=C|zIyz13!a;3a;?YR&V8y zG0uF;P>{IZ`_hH7(}z?kENeWG#CnGT-EsHpjzm|4DLZE+j!OG}X_c6W{rYNeX{-04eP# zt#@#CaI_}r)17CfeoMZD(lWl0q6Ak!t5#-ha{-7Ab`!3$~gEy^gP|s`g z&#6j*k&|F~DiG znu3uq#IJl~?MrsY_@hwn)|^Yl)9)=tnIVP=$K`_lB&Jz|s@X1dlY`@jBgC=0<58CK z-w6)HPR>rAmlNC;fiHg@R|i;qtJt`mclEB{o8oip?%l6W-)H26PP*^e$*#--h+zPT z0_M;73E($wib-rVQXL6MbwH0a*_HG&$WMPsOCY5@+U3#9j>O2PO+OMr6muIrgzAru z!11!W?H2JxArqk7+|+a0aCmbp=eU!id&nqJjeA1ucF~_e^-+KJ2n`9lLh4U|MRBX0 zGe|vEJ*r1e33e>DTuaKk%Y1RhxRtTP8FLMXI-)<|N~1+gA;j+xb`K5(H{?nVr`mnn z?ZajO)oy%WbkC+EIa$G#9b6hHAfy8dD3-NEFB=Jl1HvK25W~}JuSwVWp^UWg(5B$7 z7^_*?gy#>Hs6&5QR0f!#jgun`XswsSSvc}#UE+FCf2{Yp)_QsCRl{ipDQoK!5ALGtYqFC?qa)1it%ofxy9SVPv&o5r=PNFr){hT12=vhjb%0{iU2adz1-0caSGbLyO^5mTqk5z`^&Y zY9xQ{wLhI&yte>im$1HP+&SR*vRM1m=BW$%R4#KxK`H8g2%#3 zNI|t$T8&sU!%L$G;4)^Hxvsd9)fLjdbLy)u5cf>g5BCt+i3@dk^@KgoucED4+~sII z(HkH_g+lOd>RHtoqNxoq|5(!o62zMCRWyHq0GHeP6AhD>7?H{dnb)0@?y2gf4m7{# zrFP~fDBh;&rU|mwuoTj7cX-~GQ6jYDs!+psx)gOSrYy(fb*idS)D;I;&E3&;PMQq> zgt|dOe-`ke(!f^mAom?NE@DO^peEov8QMXK$?8Nha*LapwC~JERTbND0n=hP_w0XQ zu&K~lI2-=TL=#!fHpkeZ`Fu$Jgz0)SZJ0kuy+x8z!|ty8t5>))5{(ZF^2x7^#Cz*c zHSiBR<@|7M%38g&9%A3n;$fHhG=yr@vQ0t22xn#duHEq7ju{Np=;m#0i=lgX9=@3Y zA1-+Frc+)I&YWn;w{V$#Qeu09Y1@D4L8LR@l+|eyKeE4Lmr@&~`?kz$bID?DnTb(H zQ{=7TlE@G;W1@vLH_(`T4ToW!ywrA8sS>X0K6+Sf6AQBHy?w<|S|;A`3&Hk}9%hBk z>yi>jz^P7y+#tg>fi7L~h93lV=@qX~FG3MSLWR3HF)V(d7zfIWRN%nK@eqH8$UioZ z<0HiDgZUsYmbwvVPTcpH7Or`8T$Y@|W!*n$oGPzC`cgM~#O5P}kLSzXJd(QA5L>@L z>W)MFeN2X71gVvDsUL;)OX90WniY~Uw=kub6~X+?g}aFtKt2CzMUnwTyxonE$<4c8 z*LWmkLm7l00*;_8Pj=5ID6W4ZQSP(0tTbBv?l?z~Zqp1*WBoT`An>y%51E;mj|b(A!9*em&t!FO!!iKV!z^k zPTBqtUTn2g6TSVz0VB01grbFYaR{JR!_ONWl=1!9c@QpzWalR4+6+1gk&=^abr)&o z2r7V9b8iHhO9bkUnWh!Cq2TOmsjS?Zz>H#q2E4A&hm#uM@MAr41v3jT*fo8}&b1@Tc9-`=OKi4G8bP0T*_n(F zf^n&Rs)?H>$33gN4^O`plVE%?g3ntmzv#XYxJPT;2A)pGZS3{9@M}s_vSpfj#7*Eg zsG8AI>juBRjtT(I9$-0_d!r*{qG{i8zDTGqGm}l3^~Db76d?5krGYT9UG z^eXEr-hYDhdMtaBIWUotA$&`qQrMwq9uXIVKBQgd9nc&v`FTRU5A|_~PsI9nc4V~= zC0#?SSB5<@e=mO_pe#$NV)&)>rFf{Y?INbeR#o9<-4QO%u}wf!xwZmDwODhb2lLhsn4?-Te>D8 zOX`SbSz;%$LS5o>c8Oh=mgO_YsV)EI2QpQ3k*L1N2y%a@_B*;37CRH5HimuSsk?U* z47PdKzw2HDNed?;b96K+M8|!7+-uR`#y^<%Q`y=5ILRfTiQy2&lkOE$L>HaIE_*<0 z6~FUZ-_R=XoBCQ4$?Q3!NVH~SwF|iol6k6^CR^|}BNj?jeziEV!L<@g&0q`WO06G- z@S3{9N%ntIJsAqB_+M;IRu(L?Cxg?;Re|MXZYQ%Hml~pGves$J3&|vYD9}>UEm}**SE!2X{oO~T@Aq6DKvV1ddCckD-tH9xC3^|~p%$)^*mp`_gI;AWc+R&0nly%JpIRjva=-Sc#{mm*)*$3AvS8t~9Jf;he8gi*Sa`l|HQ38y_A0XJ z&~evfr6l4Ug)&MEGh7tmM#-9Wj_pr8R1ss;<)j9u)oudbw$UUW5n7hR6(qUGkXwJA zrcUGd7ZXEKvWeNj(_Nwa4apJH5H11RBvsPIu;A>qKk1@ayo3I=5pvvouh%yIw5gw6 z#DgO&t`P;WCn3gq%o#Nhg5ffwQ*@^w#$|O#k!6WHCC8AV%K?+dGtKzPRhfgZcx z=QYC32s+CVQAYm6|KeXN9;&(jUZYy}kb;S2JMsPPZ)YX*-XXl~0+|7$VfGKU`l&kv zAka0Z^KCP-r>fl{+}+e|%}`$HYgyPok3p>(<*kj#F@TR9a)0woX$RM@UdYkcyqj~GpSubS{T zu;JkH2H}!UeuV!N*&f9RZ!Uk5!0=i(x(0PP5DX5Vzy>Z8oJ}?k`eVd;xW1pC4VmLy zn=yx6o{|e*EX*Sukhtt(F8g?WM6`&|$t^cDd>I55)2{0h@;+2o_~sv2;eI(u3CUTB z_+S+-ZLAPFc_lwh(gMaTv18n%YJ^^|{6tXSmD)jDPe+_w3W(@4Cj7rnko!u&c zLKMCQtX&Kdk3^O|6s5eq_HTfmF{f1JI1|6n-p?0CN@Ld0EJ}Y`1aeJ7D{ZrK*pMNM z48N{4OeG=DuXGIvdKP4$ri7GywrMmxGB3j#C}1!+m-YHHsZM$`300lDqwk~_1}=>m z(5sD9E#=oh|1%J~9qy-k1RM9&@M`KL$zc|>*5N#;=WU?D4WW*TeEYT`=j?Nhqy9^A zGj}Rwqn)8v|m%$$R--WZ4&yBa6m(LSmjk#)+cwr9Lp^F^r z%QLyB_-6PUDX+?<%}te8xx~V&#z7t8{zo$O8fu{VRWkEwofKcdy*od2o(%uEw&s zVw-;jOvSAkYG(d^L#CSB&YP_%4mB_fDmD;+*ifVUe=*|fN^L?QuDFYJk#<<_8g#1# z?~-vKKU0JEFQSC`P~X;GM8~c=_A0_4^xM%E$sVNISXL7@f-f!T=HIo}zJz)O5g;$NP+9+S zt(AM)GNV=9Z26#uQXMF+qAIH|9q6o38O?~%fON&8Wv|V9#s&H~-}(f(PDelV-#^RmVl{*JRrE=+8^(V?xMI?5xV;Iiww{hM0|9*0X?a9( zZ9c2ALx4{2fQDX3bfT5ix`+pEY{vc)vct1W40Xy*5?M3VYJO)&N3SkLE7PLbPtzBN zkD{oc%Ogu%=~XX*J*X1_%>Y$9J4bQ=mG8@gpYbLUyhqrMmVJN{?^@y%^Z3Evo+RoJVLyw4btjP7QQHLP zD(jneG0SnOH;6aXX1XXv9?q?~79M}93|J0z*D8)rgzL*ctBp4~26*CQM(w<= zrsC%e&(*(x&ez<>D0eHJS6YN2=+)|EfiliN;YVl6%HJrX}2(N6&`{#yz4zkAVY>^1$OZL|loYA?u{vp%uph!v< z7A6{j=M_6E-X6en`D(G4n_V*~RraaofQWyM$!T|JMSZvt zUaS1=?Z3v8FvFf0o-N!%iP++-uv`4-ejknFsKU#0WO^=G zUg*e0jNm#5$@sLx~$NfPMzw==c<}AZc z1|TIxn8Hvp#pt$-eh_HVApq@G+^o&L2F;(EidIFQzUePaoUFcC_#B+@m4b)o1g#x` zti+!qcvn;pq|S()Mz*E=mxe(-(fgCBE9IJS5)u!2+Zw-Nigka5w-`II7mbUg?nKuS zkpY;h{wxMb1(zd;1yNZJtCINDsZO!4V49+V7&GcXQBuh|uw_YCTOtmsvLVWkL=ahu zD%#j(2g=qqyg=e#yM5PlvXFZanV=*?p~-A1mPF+gv9fd(1ZIT^h!}6E4lRxlX%eC8 z`QBH#2uqlY)PjGPyF%*Yzfn1D#a%lDL^pM|mQJPX_jiK4+1wQ1k+LZza}jEiy$rd! z0SI+eunm&6OZEw#65~m=jma@ydwa*jV{DDFJ4p={(xB-16Q&&r0U4O4=bX0%J z%%wPvS}UDGlM#3%5~IN6CLLmmSgs4Q5?p3@%}`E} zZ^Ol=QTajp(!DM{nr59U#w#tOFL^CA3r4(Of`$P_=&Zev%`H`JN?LOfP%k!S4b=E7 z+}s%|sAK^Ls4S(4XJ^kPCh&VSR~%`KJM|h@RjkqB=J1AxF+YkjBi%VBFicZrzH$ewiM= zBL#mmijo$GPf46kv_c1tV&qRU~3ld1Lk-zO{ zgM{bo*Z!m_IhgzMti)Lv4wqmPNmyY>1Ipv3iix7it4b?FGMS6!@UN7x5e~{ts0iieZxiN{u$?t)iON5~{2~_Ht=r6~J+q!}H?r?J zY`9G)+b9~gG*^||SK1}&5TkVh#J8IRudhaTHS&W_Vm(?9BCff@JA^HN!|Lyf@VfFSwZV$5HR*CeV(Qs?;cgw+Opj%%kmA zRb&X(Q)C$$c`YOo2zN-W$a}DSn}~ngWcm_4GWq8`fs9`@EUprn^byC2r?I|ng@EWM z$Mhuutl9|M@|Z3BMW(-J_L!POuERyd8|)|5Y*5)X&4}5!OzR`v8eY_`S6ASE4(}x- zF{`bnqc`OcjV3x8``_cI2e?`*9nzS*Y7*#t{`&vRJM#!zyA9e>D5=&2A z;)R_(C4s=MYxW60GKs`xz-|D^a`rmFmjZiRnYRLT#Eu#E+}(vCjUR`4w}{swaHS{K zr|W|ogJ;AF2`cL(bHH2_YAb&VOFh$*G#Z)Mf~n6rsivRnPASvKQiM=C7I`8UL$woxsvQ1U z4sZt)&bRk_;Z+kjlVoW7d%fsn{!-E-A29*5g_WTe6}P$q(NN`U8mWJl;Tg)%!I=o} zP@g)Oy1joa<;iO*V)_Abe)0(}n~mbmxA#qwWJ53pTWe*#Y!tV@jS?Vgc5%5InxrXs zGO8lfuaFXrU^`4kb_egdOM*;_RM*z+30kY)#iTrX8T~ME8hI55Wda>X>_2s}7r#3` zXYRXqCGJvTYlAyzilcu>>|T7K3)&#hxhMS00|t78PQXuZ5rG_6v85hO1Wdq(D8~>H z4iPG1J~5uc6<4wFH(GvrBu7N};^YNg69Tg!fH;V|pPpN)`R1FL&N=qrSJE{6?Ol}` zHw$jat+@YY$!SP|DsjHct}$|#VNw-jZc8o)&wboKv>|(so#%hN9}N)j^IvzLJ*B&Q zQfj+6S@OSko*AWsc>~h)r`fc*+;cb(TqXdPLxjJ>Nzq!LJT7B$3VH_DKRj1$$4OX$ z)}SOKI1)%;df_KFSlx{+;vEMiqjxV(c}xuKiMnr?Axme6wU7hV%xBJb5ggpG8cW^) zvcm_6I)0E;fZTs=_i!O~awsAY-)$_{7;ObIX(tKq!}^3eImFx}tP|UOB68%MJ)J^` ziy~=eX$^@WwQ2QQI6$Bvuzp2};mJ-mH0aU7RU?2(=Yzq1cixj9B4nUJnf`cK;^Jca zLw9mMq_WOof>2`Vm$ljB(0xd&RT zE*y@Et{DYY&~-djXibWywKbA>`a6oM{4))fM0fE*HC~+=hO??oCB#je-=;nZa{!zA z#q-C|@J@e`(-dcU`_oakT@e)@6o9P&2ZF$>a-$YAnQ0~Z#}41^XoowR@|FTs5ah!d z^d!@(PEx__Bw?K|52C;jsd7Qyqiu}KRwE5>0p^i?124m|2Ol#|`irlaDHC}QW3syJ zg%lipd1SjD_4w_B8s%^40g}TMc~m7n{mK-rDcOH2Hi}4!9@I$aE$Cq5F5>(?#7_vT zCAPq;`0R#{72@6#8Rqj&_qXo*c1zR!{`vKHT>nRi0YD})gtHDH#G^>Z&YMg!S5P#~#= z${N}LOBd2~ipR3LJ=(sFRktO^0KI3m)jDf)aq#CnRCJ~gwl@Z^=j0>t-FR$N zVF6&t9wMrBpjfWZM1%wXzB&SCueb9!kh6bsAYf!2k`Y2U1(Hx*;}8AHc{<(P)a^+` z82Cn?Rzm=xK9D&$WF}F8t+5-2lr%Zak2@# zbWa+sP*q z_n$D5+jKD1ztI}Yp$b}S>YMK2jO~B9&a%^N71o9BJf3-3Nq4JQhkr)2vpnrj^}lp^ zffp{i%e&SgCLlM$#5sYWS-P&dJ6H!!?d2%;Z*!ARV`&VS7`ys3wO?4*VUe%6h93l5 zXx5@*ez6C)#R!?s(~T2HD0CI3$SfFgh1Mch0b7khR56+={^A0FEPhAA2Ec!`5oY#1 z9X-O{gLpQJ{D_E$nKbN${P()f2@b!mRjyRj!N;l{*Q7)mVDUmPL}hl-Tm@gn#gf@7 zauC`in(E7SK{1t>Sn=R#1vqsnCITRi?IbcQ>PI}I$~1A~Q{QFK65|q**mZHFIgNt0 zK2}f(kPYnYYRQ+(nd?_I{hoiQmFqQ+R*_jBZo!}NI87JH2ZJ^fL0zzqz8mAwqX zm(uDPO627P%;qM%rf=|6^$$quxABWUxQX+XjRNQ6$on`5))omPqMv{87z#SrLr!3k zGEj?0!yjTT^GG$0OO!B5l@Vx*Y*F#(%R8ftXX_5e&{@y1hatcitE_K@#!=ZZ;=0*u z=I?=VukY5^c`NO5Mf(kmqICOz5ZeU94k|WrnV~?7`}hV+EM6&KFxMZg`Hesl=sck zQl>4uIubjcuZINtvAzaz+R|rzb4gp!MK-Wz&EDo6WmXc@v?zb&Wuc%vExnfolmA1U z2f)M=w>T90%g&xV7K6P8$xM~@&c?Xe()w+(sUDn7oDNyM)1)Jj7@lkbwe0B_ zh=)O*blE{PXv0@Un#uzl2*dx-Z5Y-Y0KQej)%dzUB5b%pj|T0rN}?2yt?yF&P#&{Q z9X2?#d^Y9a)1rSjOMF~7!hvrZs%V!tNsEarV$8(n-jN}a6Xhn-&uAd|y3VmloRu2w z?m_+sH$>0<Rr0(c+j_vv9BOh}AqBsX zJv0Fk{|*BQ2l&l>_weeOLXe>Ul2AuV6Y?+*B(j$@T#t#9Op9KlC%^7BCP4s?oa zFQa0I)i_lKbjn<1P7%ixQbIl%xx>XgJVI>k_tk&w9raOY5ucq8H}bMaPTH~|7WomS;)yPYzd7VYjp;TT z-VN@J(#90Wv{VA0WK4G6Fs2JR`y|7L3)zj~pmE|(Ow9s9$UX2bko_9>o5s_Jcrlv? z>XCn^*J$LVfbg&fXS7;toRzK@l`fLx?d}I*is;(3)q0V;`9f@9t?ZmDkMbd zG0yQ36UoaFdVIty4p|FHu-r&ckv>BrdajCU_tgL*v6M`nrDZ!VyVH~IDQs>$s&0Q* zci2no#@*X@zxwvRquJJtd-uP-zke_L^z}XXDsE?=y8FFv%Wtz!<*mcJhu>tM4)JgQ zF#lARx4ylVf9iG1uk!8>?|s#~cQ>om`}*#!J6~s?x;QPn^Hu!xDxMmL87C=V_dL?# z1`LXD$`JJOr|$H)b2u0wG(z;-;tPMS6|R00Wnhvx3a)-3q)Hg#XS8vn@uYkmAr#OZ zz4Re5zQN%>qp$5*0d~pnc+Y4Xv9Kt?l^TBJKdJmu`aygYH1$^~XXmL3+xB%Va^-sQ z8`43Qr>O${gzY}s-Tq_IFaD%Z1x4hK#g||9J%sRj188=H27(*dIXwKpvn+qZrzqNy z3>OMf|5cdd%l^jgSGZAw%-+o9!FhN|l1-y;)3AXOq&)3E#kkgc2Y>QRcX$Bh*jG!q zvQF~BeO;OUZ|L>bAB*2Gee~%j|64wJ!#FCv{O#4Nc->o%2W+rxZb^Km-vVs~Fb$eS zI88Wp)WdPsDL1gU2rivW;&Ok}&4USjh-8AJc#r!n!C;OOQ<_LsvGUU~PvRgFIAW?F zKKmx>rIKp=)fd@`7_a?Bh@7a>;8X;ia11uiQGS5u%Ew0hVt>NVVfMvZJ(+W-O0D0oqE>5aSZ_QoZBgR{2ZDT;BDfrqq(>?1ZwJ3-W; zz)Lc4Qcw5`{n6y)B#etO4@q8v9kM2Qbqg3SVVPl-h1L zAX-nl?*k8{o0qzQ5KXAxyW7FjPCzUUqe_H}bf|W;UkcFcSbl$^`J&J>05PomILwGf4&u|kj50im%zQ5pYG zROZc3xskM6m`vM4_W87X&%n5cZzwj|jBjJLgtk z{t%fvxYvxC9ke@9j~?zO*y!z#jQc@4dx~HtilnfGM9Zd!6^tH9F_7{wS71 z90Zem3UuQ96t{%A|Kbiz*+c68Qz%xkmQ1g9omWRdr-Xlw3IJI0i{hJGX)%EK`go5@ zJP41dF+nP&`~UlY<3NT>^az>_#Qp$j16oId)|@7&Lo42r%S3>R{gEK$oUcdMX|@fs zh+i=j6ssia_&te7{w4k)to)BEr=gd0YT-mMM^g==<9tz%CLP$F-!kh^T1|HAYt9=X zs5P9RuSS2X(ILmd{N;DWS5AJ>-4m`rZK&jjbWv8uePzRi?+ug$g%bf=aa|Mr*s^K` z)fzj{n94DPUU1JfGdxITf=g&cizJw@zTOq|5+UxgLi%o=(Fm)^3~)u16{KUxjhn3s z#d2VQI|3SB6UrD+fx!bnv_IU)2nRXG-MSX9?W2D%gD|X7*yh{$;uf2>f86|IwrX{F z7=+P;n%;XN?p9;bIg2)K-)|~pe;eK50kS@NkU^LM;?_yO*Fy#fV#?1|qCv7Ln*8aB zHVNv*K79amJmqSx;*4%yOVSTX-j4aHi1`q%1AQ?*8myOGBV=$jhB+WM3K9C{7}ososMB#tL>-L? z0$u8Fz*~!7tNHHLMbY~C*=`<56a9bo%tX1_?T&ju$D2)=_GVbZ&FDkqd?>p@;?B(D zoh#f+xc29J_Alnx&lWJ*%7nFp9IXy}oC3+9ldc7~G^V?f9g!9JuW9}2QE#DB2pRFV zw>?2sMrWjfUHJJMUFgp>B{2k7cym<;*8htt48IW44H;QWBtpv=FuP!^ZLEKy7lJJD zN_J!>7F^^c1TyWsrp}A30~3P=-9-aIJCKSidXti;78MNO$^@*+qftl#kX^SkP7si= z`7nN~BY!+SJE`>J=fj{doGMgeM>x4`TZR9InC~)dT?jO+YSF)B~yhq@t zgfVgvFf*5c8_a$8u!gBT81|ko9)lC}lMX&P*?)i`#TRf4&uc=REm=gUOorV=ghgu~ zMRI$Nb@|VhK0!>44Um8G>>#1THY|^6(ru#{V}ajZ0r*0F4GO$uCncd`=m@y)C#elS z&swtrAX!RcFHqoQBcH3j#o9~gjv^X_FW}X{rPvJVN*n137~tU=^uQRu@h>XKBN|Cw zqJDspF?FcWK@&&HbV)G>!{6br!YA#Uo6Mp}|5Gt(c@n1|Zk~T~&)##|S2#?%6P8Mc z+;BuEf+{rbG9z31EA9$2KF_pCIsZ5&e2FdFY_{m~X#IWs_aXnQfTH?4j57cdhpzjX z-+4~tNc@+L_L8H#!wpKL)W&c)?8cjF{9><#;p18(0BIA@ZcRq$U&K`$NK)xED7di# z=PiQ}h9FkvO+SAhtC{;#=S>kL+&&>e>c?#gzW!ggbbIBf{V!u+EvqSICL#KR4+|T!+~Pk?t&_>|K*NG-Co{`uNyGrH_k3 z_TSHR()lIT#J%yAbQ7OIN(H?~-vxCK*{Yqd%IjdUOvQhf282fEM2bCt3s*%?^ixD- zdSPZh?vpMoFM~Q}(DPQW02Q4Xu4x=Ip)DAGLZ=CDqKU`NI!-c}_Xz>caIIC656!3u zgErwpTIK#RpB+mV(M{<(u+b0>3YBvYvAt2r4bLYa6&{YZCAmd`z*uC@U?KdXRyst0&UWEhl8SO8DVfxV{O3-*#}r4!~tGyf#>4?I2r0LVU%IpuHacbbfyn&V8)(Xn*MH>(Klu|hx_*dk3LB3#4E0BWa zQe1xn3NS;gD9j#4eQk1AmuELvdxZaurIg;p)TfwJLJN=G`LuI|K#AtXY)!aVxt^_y z`m%ua29k1#2K$#fOY-UiC9=o_FJd~G#X#uTugQ{Ps zl}zx8y@EM zb_7vt2SxHWNkD#8vxZmB!|g(;5LT>r_K{7T3!OtxJ4L|D9Al5*c(pI;exb`{@^|rX>%uCv;)%E{@(&~RO zX3V%o6H1gwC;hAF4o_T<(Wvd?#BzAHkrLzBl zjB{BUS;`Tq)YSW=;57tI#4_zzEwzu5&gl=EU;H*X?&H*RA4$M)v>fshV;Ab<(lvKj zeWEwiIvXOF5HEG|j&}BV??dD@+(&=5w)MhZ1y+wbgyjJ~{`L>dnl45JvdNk2m=SG* zQzU;!&PR%2Y_^+U91TYMh|;3M&49F>AzXzekE2sKmM(n@aKKGC?jLA+w&1>>pifC* z01;ylb@aK5_q?tWQWJr|`u~L;D@-If2}{fv`5#q~<5@x>83P5#$bjnT#{L!l1Mx}?#(wN_EUs%PptOJ!x4q|Q5SzS*2TU3@lb-AaSVzGecAWN<)1D3WybcA@;NIokr;9{ zUW7!bk!U`j){q=A;p11+={bIY^g#zuESRMf1>9`;@)-54lwJo42&Sr0JChWW8?cW_ z;vpgEYD~ojd_cLystjBXj zZ@=@}LBoQN@nmc~220@Yn3VI6+)@H;A<~G0={9B>zT(NNbxEdTLV$zn5nc1Z*93Ft z{V%X-=$AtKGt3Fs+@vQ=GPMsbXDa|N)>U;Snh**&D`oe6=N{)4Q=#$Z)ZKCE>tJM_ z)F2Iw`E4aUO6br_(^7wXOGuc3q~ZP0b_+{IvUcxlB3FSi=pCTe{)lqnN zenn=bvc2}*ci)Q#BzDpS3;ZO1AL6x$wcnsn95B&_cSEF2Zf<`kenN@l)0${hDJ0Gi z{4+eDzbp3lK#rs3%*!_jO**j3p1m9X43hy7Rp;%NIAek*r*$)Lfh!rdfdw4k?ua`~ zgVGo$E8qQ8(}4+5TFX+?)OT{XUaZ@M&06<$z$F(D0LE@d&D!~PXAforfFR|A0E^F zVAnxxAfs9Xw<&snY_|FG?=S!U;qUENpKo@ixW^J9O`vkEg7my?-TIXbWl=)ekm0)% zHA&=#om->M#`Dl6+*fOuQ0sTT8M`KNjaVMZk)>GGGv0r|*cX>(tO;|K+kumMqw!Hl z$kW>ozf6vkF~dfP$mNy@tK-*lfF;7}!n_r(oE&#R38&|J38H;)6HWpKk34!<{N-f- zM+gqXc@UV9jL{vpf=GJU1Y%iRM}*Az>+X*bQ7{gnXndcbs%*MZROo)IlkEJs^W^7r zpB89*z&n4|*b+(OaPJg+zUa&UH1dq2cb?;98;>53cf&jH?X~}OujM$^&$GOAuKbfU z^}@8|^eG*%0HUApq&<--JjA120cqzVAnhy$iM{WQcAzf1Z6K)a=~Duzjse^!#T_|3 zv%U6#JHSW&Z+{H6G|9zzjoPe#lmC+&NEd7LlJ$RI*+_57DVqgi2g*XICwx>Ylnhrw zsA`gcw9GFN1p*=$C<*wFf+I9muL`vA(~1p^w`a6_^aZ_JUKnrxy=6rIcc|qguk8FT zwP1${!Cu-_$3{BtK7!R9beeUPmJ~EHW_`*#inEBOwCbH`oO6^$l1Vi1lr2St#3W52scf#Ty0m?o+i~l~=e(JP)EDny zXVxr>8FuFG6mk{!PY)h;$22do+H=fJH7uc^#5QJKijs}ETO+cT8uY~tC76^lZWlHb zOkG6254&&sNQsFIT;ZEV54FUlSinKIpVxnb7eJpbv;D*{u-K+`Ap1unWli}yM_(^I zHSbFzY{T__$n|jjQXd1HbYg)DdV?)oZP@+gFR9b^=lv6BUdYaMa`gBSx@3volw0ff zlAH)t#L<@5lGylK#TU1?KOOJBTJ_bdNe-a5jnt9Jh*RuRKi`1=?ANlnh?f| z9F9j@04mV~hhMY`b6H_S^LCir2_X6aE!#O+U`owwFa)18oYlf@h9#`SGT`Vs2}IKR z%e9DtjesJR%9N6E>X7r#%M)&nFui|a3Bbz2*~!2E^hCYuIER6afQ$TTeBuc*-G5NUft z5_ERXjyb8s3yhynd~gA!?_y4+IMe<_lRH8Z(3FonsmXt>G+uM@&L}8hk^D)eF5Z#QU-m|LtRi^W)KO~skgcB8e0UB4>|u7<04N0@uK}&SD5P%* zLHz9KxrkDP9&1>SGCeeNmlA)eANXRhT8p=TkmoUOF6!jw*VjE*y^L1Jj3?j_XnRLT z@D%6Iyp`|`$OiRD(*h*Km}O+ZnV4vTVv3jG>QKnnPX)&1){W<<%@f9ok}Xv|(Ovhc zk^!_Wzp@F}bBRwk`I@f5F&Y*+aExvbi%2#GHZDoD5IRoy$aIw}eky;5XUv%4r-^G) z^36|ojVvOb(?K65nLh|w(}OOPZmLMv`_K?Qx+G$mJT}XltL<7JN^+k_MN|UPYYOQc z0;(dF&7>p-i!Rp@fxAF|VEaKiUpo{;UsxRj%WH>r#6Wrp30@cKa-m)X%K8uxk}j9l z+1abIIpBb38@Y7fY}p!a!LU{{IQ z#ha-Rs)%njS)(Vb>%|Z7xjt7n-7=z$KGXS_;#ABfl7;rmSUlFu`#-DRHujLp&}g zm9@|vwKdkkQ{JRQ0%?A8r-~9pI#xMwxG(eo?RXN1{ajKKgl_bIj3{c!px^pXtomTW zTY@r^SlKki$}z=)fm=TSC^=W1oSpLFyt4OMa_RbcA5vG(nDv@m!JM$>e>LYUB-Z z**4fXIqSe-^3_~jd8rvq4GlZlW2th4WNLXh%+9;gIO5+}bj3(DpdHN1gps|s) zP0Kcdg?b}L43w1#Q?oYB51E9j#||Zw)%^dVRSu0Diw$*uqq~pig9msV8)u2FZjw#4 z`J-mY?A3?A!Dyk$a3V@`AdRF}&K`xz%zH!KF2CRLW0VJ~uMALI)EPSU2MkE!}h4RFkXEcw!@2~K_5 ztM*YXb9@$mS(7RUN8k$#6xtXXNT~)-f)Y1~H7|5%(J0%}8*uDkD^4qkxU3uA+-!fq zjpU=U_jm{q&2uPUH=x9gtZqw{gEu8%yMYa-gWzOlWfZ5n5iPaqT9O#o^ckWBk0AMD z3LCP8ukob(HRdyVJwc+lLFaUM6wd)ank`vTj1=mB7CqJzxU46gqjC2wP7B7kqj$2Y zzse)Ztccrkf1Z4I=U(bn_)i@!pULBHe#rvXsQ%o=%^YeOf?a+@to02Qynh#ncVKBia|;t^0c424-F??(^ydpC zNxw=~aR#BrEMFIK_)~X?qbb^% z%bSM8P&v560NlK*z2mc!{b9F1m^?->nVK|zOX)5-RGA7>SB1qlbwfjYUtmhPmPjB) zS9BGOM1#-jhF&+5z?-t(1NGXoecZBf71sZNQ!DvreW>57-dby+5B07}g?eip;1M`s zIu8O@p)!XKA32^iy39XTsJ84Qdb$Z`5%O6r1KxIKj2!V6D^y0VQjMHvBuLO+pL`&H zWhN^GPpIR;mP*^*vO7LF4xR`A&avfFYUiwpL|)o%SC*F}&u&LwnN8$pc()O>-OFG# zEXBg=Y;}!i^-;st1^U@e`!_;5=mZcqOd6=6LItYM!DO-_uivD}=)%kY0Tn{558mKC z0K6EV+6MQ}8Q5(Xrv0OGa!_l}8KDe+5k)N(0Vcc6cKoG3>BBh=`K_0Us-LdH=1g4!T zyO4+YqhrLWmBs$q5mL|w@To)!&0=aiY7Efr#cYJ39^Ei&Uxu1AXyB^1Q$GWLA*@3h z-(i$m5c}|J3FlEC;q6-jI?q_s##+ZKR6f!G)|q6045??#%AiDKs#Zlqs-mvah0ufR zBXs5=O)PAF1B3akQdI-Y6}saZ1J(#?HOg0jthW*1VxvEp!%k|4p2cn$Zs3AGXa(Ymfmgy2D+i`Jezv-%!Jv=Vz{@{n_%`m#pgEKV&^aMeEJpHEHkUeXU zcUpP6Q3D}T>_?t~OZrQHJV!T(ONU4w&KrM2yEaTvWa?~1>%b~73?-XCjA3Hq=i@Oh zsm9*w4dn`YqB|}c`odDxt7f4t&BZR|Wpf4e5vCGUSZ`tA1myi5qCcknQ)~bo>V~hi zytluOOQN!TqA?;)oB8IGfhp!R9!su?wyGeE$9?Aug5@SZy(H_s4H zP*M642Sl=UHlvDYlfk+ajT>NM5?RS+!Q{S9$4}&Syz~hVqMaekFOgt`$5BXFPcl!E z0J}mVfr4yP(MCZaCTqU2RWFL;1~^BQ2GAZ zVW4yc@@B!iPa6$?S1ugYi|DxI-cg%X!hMD;-hED+NtmE_IBafq4|#r}Y>o|Qy@2=v zd*f{v2$L3c05OI`Q|(Qb=ih@rJHNivbWQ^mP_ zX9ZiCQiv18X_?GqJi(np^K1~cPEw^gJXuQ-OjacwKIO~k@=t{%mhJ^U(>E0aal{Lo zi0ex0)$LPL6UK?-HQ(?rj-Y}I4WLc0nKqq{phaQ|UqB}J5l}3) z|Ks7|2yuabaI?j^>Td=B7m&kc8eWs*ThFhd*s|$?)mBIB&N;5N34{n%W=l!pkI+LKrS$w*zR1%8Zb`>-MKxRNGwlytL=Ygpt?l z%%Pc!tIf?H`tMamh?mUd{23nCK1|#}83$o#G(zQn4soB5cV%}tKpP!0w;vEIorm9f z9FAn)m|7$$_yiMhwXDb*817~i@*L>xev)Yti+y1Bqykd9I5{a>*#e81Co^PO5>bb~%^E zlQ$%P#fRC7c)`{_@)7VQ*&(-5d4K_4Gk4+^x1@>`QJK)2h^)&n8s|jqXUvx9VnQ#FW6{45uTl z+^Aa(d%rTDLi+>TrehHs6kBCz-GO~L9gohLYacSNa#XfJ7zjq2mc>MhEuFa~XYA;I z%_|c{oo%=(8G`)@(iIXz{chwdND7%l$VNN z1U2`b-5oN?Xz*TcWlRpL!fU6P4W6Xgrc9#~N%g9o;3rqDDAIl*^3v;*q{)Du- zhMjZ9uH!N)dOS%uL(GwTB6Fn+(dP(%x2s+OUn?d@bn`@-Yc)@4eqEeNhWS-C!Q}OR z0ZQ}aZp4&kM=}W{O&giZNlKoh*{Mp$iZgY(0G7ygnS*W1+5!rAO=+{iW1m;p6iv<< zE7ai-X63ZAjn7~R2)ITFF2;-!#Dz$4Tcso@H#d1e&YhRpS&(lJMh%pgQSqjK#QUqX z*(iz1%-h8lxIhOAP(m~k!}qjrNHIEVf54Soq~FEpA8<$W1W$VM|L|;}dTR^+gX^ai z*lJ7HFM+4MK>L}|O+#B=KSCraPDXxyu($nVD|L2V;@)WP1u($5B<4;kUg852c&z!~ zQSsw$9wH^U8l1)~ZE9JyFA7nAoS*-ShtrP=Ln)&5TK4-gdSUD_isf1QtWImDHfC#V z_Ml&5G2n1C>C#3o?B{8PPKd^wMrP1Qt>>g;iS${#9)B+`u82qc{p+rX%5lFQLFi|u zmVRsCw}8(^bD@T7+s)G%c^cPg+2SRd;wS-FkJ94c0M%#jSHdQ)@p%IQqwrAI>p#JN8kO1SWmtue(dwI7|W!=JEdN4Tam0CM8e(dFiME763AFE&QN$&(-6dtWz?`5Zld+HaQ z6YJJ{coeR!T(lRfpY=q4Vx?4C*a<5>JQw%#8h6%YU=YPD<;{(Yb|Yz5o4a|&L~$4D zM`{X0e7RAnCRo@;t4t*3Ehw+7!X$)_BWX;N3?{jX;~lyUD&Xa09C4W=UhCRWK~Aui z_5vq&8xKoM^8gUx5Xh*{ax1f)!~x>j<|4{TZsS;ob3DK_D=sj9Hm8nk!_r|7*i=Ov zUxGc#Ybq;sAkU8SFRcZ{PdlB1KgBO!dN1~HTE#6Tu%KYr-}6tMK|}H&^T=IBDZbAvem(e=fC81sgL&fCt@w34vUJ;;M{)v$-kD!WW$3SDxtl=Q@+% zdGP4j(OwzpR66jg4rE4TR5FwcVI?#Ps@0$Xc?5T*r~4%5u!zK?Ct#f zUTTMb1RC9ahH|yYluhFkE?>WoGwqgfan?XGbn!h49@c1o5vogpy8YwM_P;%R_V0dp z1NVVG3gC+Z!pzI)i$oeTbGxp*FN*U~kArD-iIrX%5d;dEz5e|vL$F(VqLra$25E#I zJCAmr?CkA$s4SmE$jhLcMLJhY7h5%+fs3?%m@Wc*yKuBF1KsY6?d_f2-G$(p8L|Ml zKob$IHHMMc(Uvgz9(hqNt-w>r{>60&w_zi!Wz)P#i(B4&5W)tYzB(e}5Ha zf)Q+3HV7^!d6z{g@u(uqL>Y2{BUz!`hlro#&ubXh6gyo`j%{D)()PbQ80^<;7+>rv z_#M;uL3&|ylZ^4WC1OEBxC8nl(oF_`U5JEtHIw;6*(=*E6priQkeOxap=G z#;@_nEUwr7il;DUNZc6g;=E6Z;q=|A0643t1=J8DJ2;)-6Uv0=(6pW*7$z)azxUdJ z!bBZ6NB(k{BsX1=X}FI&3xZa_k6t^i|yFF!zl z)3j*+grKyWStYDw)`m6k@(@zD;EgRf0H+hGpiHTWPbI>TXxcNj6z_qJ3%g`&BUGdr z?itG)TGrt^y#C8GRT%kikxO6hPvLB!D?_LZ?G#C`;G&@muDYDO5)iG02psJRPa4DQ zfwqdnS{}}xB=9@gJXi(6B3Nmj2uIduF_pIozNG6TE?W0-Dy*@G`N(J+YQ1wOSKzg|FB z^|G+AO9`sWiviDLpH2Y8d7E_0T@7Zu(7vGerkW^W_S<7BjU>at!}tuDsR5qF(0qH-s?_(j`v61agTSt*0snYK#^3B{XV&W(4!T)KbCKppsMvjiIw=@FWNqxz*slUWl zsjJN`{NC?v8g?g}Tc=3+fapxZ6wYh??d~{=wcJ9jym}g6-gjbuPx?z7UmhOhcl{;* zo`M5n4fiS5?Vk2o&L8m`qyHJ%EBH!(#B!ISPpV{pH`dzRLWZ)TBr}H%qM_x{y!)BlwWCh?)ZbU(+c@(N=*F6&?v<|l1edM?Uo5PvLe)yP;60d_A zq*BVXPmf{qdbO?A3AgDW*B=BhIW+xPWrsSP8r@Xrda)p(?||8coZu5_S#gl9q|&Q z)sap#|3E|U7o3OT#UrDRgToOX+O`*B9QuEV-#x&8DiNHyS?4fsj3(69I|*VX$M(~h zv|d=+`#o**3mg{k61GQ^?_B&yPoZY~+gF0w9!=&1C2!Q?o}4e_1bxGt*}@R{$4F## zY>Re~#>*%FKzQ|Uc>cJbrF#f`l2)oFs6&k?s?+762ulz=a?0`xqyd~MX-z&ll^RSE z8ZGmGsHxsYdM?knx_*sRZEKL>DUJN@nzlV|i9%vILSz0wInZR%z|_P|ooUtD)B>O( z&U*TS1QO0OMLO74XPa^+8Ph~8grIg;j5^2cxqK$w#Yy8qQ)N^sn9V5Qid{?)=WY&LxWK(p}$nUE9hB3I^I5)B!GHO%$Rk6ck)OZlDA& zt5C1U1&lQ-%UP-0$BM+N`SMh1zEcdx$~BBv>f^F8?=%N^D=3U2DrrfEC1D>!Oik*4 zNokaMRrOTfZ)wy|Yi5sUU@?vo%O!SPii_ui<^Y&P2m>0T2s9NkBt;O>cPjxFHwD#l zZL`l*pLq8(9q*<2R9>0z$==l%B-!P8m1I^9_*Ad5k)^!xsftsVaVDwBX{5tAQRJp* z_sRnly?Fk38&6r{v39&Mtt(>gL-o9WP>fg2m`1=lG7`XBW+>y#+4D78T$^YP%c=oP zWkVj#)cy7Dva*jR4OCz;NrHg%dMsE%oCB#5eUzasvS+Gc4 zHn%eQ5L?$Sq35<=NaK)T5_l`Cqzh?yt2qc<<0$2{Ns>n<^G!jF4mvNB(NP~qZR*BL zBG9b~BRQ#7E~jC|!5SAbE6tbD?6modi0#f?Ho;mk?_(aMVFStXW@~TbNQvK59ct^X zwiA(Eh+=GfU1FG_sRO(wk|RHV6ODPpiqTPB(S`*@`@W0Qy|(q7yPPa+UQL$F7jF47 zE`?lnjzeD%G6t8Qji{7rf)`YipR=nagezB3s4kv@62B(7X6ue( zz<;9YOW%#tk0tr^fjASKD)zX*Mm>a#JD zx@4UO+~gHzVky2rdm+^1oi2%_*_4H2pGAmS$^=Q$6g@ZMFnrJP1`)x^GZ-o~xwc80 zQ}24UJ5D{5fHn+#CZl(MNZhHB@e*t295RBjaPSiRidDRsuyn;a`fMb@;fF|16wuW7 zF;C&KT=(}oyFWe3b%8LZ>oYNMV&Mh|YpWIN%v9WL63IB#4d!EGz87|*uD2U=?UMN- zH=ZVE5`^RON{T`B6l38c4D)BL_4*Tpv!5d^?b;BQqM2Y#O?Ksf=xSj@-8)QbMToAI zEiZ=!lBTqbK#{=2ClG~KZPTpO&5jU#2tg(nd*^bnEAb?790j*=_SKWCEzEpUO@x|l z&l!LfDz#P6W9I8$0_k@zJrd}Y^}q12+KQ4O6#Qq+Dj+XnD{1={>sF34BG0Cpc9(0N zbJ`6AiZn`9!lhY%=5>niqTs2bDzBKioMRhuWzs{%6=<|2=uYZMZX5YlsZK_1>9d~S zxiO8};Mz7d+CI&i=QXcs41Vyd$-v#jt!Zg4xxcSgl+>jgYXdHtSG1`j-<}j|BvZhd zAnRm=^Z&JXWj$>JLHMt@5o#ip#z=jugsK2hh13HHsy_68A#xH9bJ!6{o6=w3Z>~M; zHKu~czJarzot>SX+4X)i!wS>sGMU^XYdiQj`SN=mW-aW2`0sHJ?dG9>nD{TakALIf zuI&r1TX`M!zS$>chD6>lv7IswUr!p)R7%8f-93BF#X6Ac&cpB2lyvdRm&iw=LQ-@*tj7-xrj79O zdb+|LWpPV}NHc|p5Gsx5864HsaD&_3o2hTH3^T^>^Aw5!(_Z+% zWp5|UD3HqJ2PB8!IzxeqB&*=N?z4`a8bU-j$d!n zjb{FKNszale7vC|*b&1q2T=#*B^Cp+@5)MpJ|X!($aHm-a*LzLfrJL8X(`lyg}6;N zM&V`I&@&pBdiKzl(&NPR)8oZ`4Q;6rs|s*Rs2lX-ro1~xG|>C(-QM0_^BbRPB5B{s zsUN*1THI;U5x!fmOTelDX*Df}{k&QYvNwSQ2OpU7exxR^Rpk3b(EV2 zQRmoSD0GV|(E4DjCe5GHn}C-n$V9@x{O-ZU jhru3VIv=QDNLVh<(}~ZJs>v#N+aCV~LI=4W<)lXd_kpG< diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js b/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js index 6d52c8353818..9de0768a5eb0 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js @@ -61,17 +61,17 @@ e.importCssString(q,"ace_editor");var r=function(a,b){var c=this;this.container= g=b.end.row,h=new d(g,0,g,b.end.column),this.drawSingleLineMarker(a,h,c,e,0,f),g=b.start.row+1;g"),h=this.$getTop(b.end.row,d);var j=b.end.column*d.characterWidth;a.push("
"),g=(b.end.row-b.start.row-1)*d.lineHeight,0>g||(h=this.$getTop(b.start.row+1,d),a.push("
"))},this.drawSingleLineMarker=function(a,b,c,d,e,f){var g=d.lineHeight,h=(b.end.column+(e||0)-b.start.column)*d.characterWidth,i=this.$getTop(b.start.row,d),j=this.$padding+b.start.column*d.characterWidth;a.push("
")},this.drawFullLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;b.start.row!=b.end.row&&(g+=this.$getTop(b.end.row,d)-f),a.push("
")},this.drawScreenLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;a.push("
")}}).call(f.prototype),b.Marker=f}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=(a("../lib/useragent"),a("../lib/event_emitter").EventEmitter),h=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_text-layer",a.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){d.implement(this,g),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var a="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;return this.EOL_CHAR!=a?(this.EOL_CHAR=a,!0):void 0},this.setPadding=function(a){this.$padding=a,this.element.style.padding="0 "+a+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(a){this.$fontMetrics=a,this.$fontMetrics.on("changeCharacterSize",function(a){this._signal("changeCharacterSize",a)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(a){this.session=a,this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(a){return this.showInvisibles==a?!1:(this.showInvisibles=a,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(a){return this.displayIndentGuides==a?!1:(this.displayIndentGuides=a,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var a=this.session.getTabSize();this.tabSize=a;for(var b=this.$tabStrings=[0],c=1;a+1>c;c++)this.showInvisibles?b.push(""+this.TAB_CHAR+f.stringRepeat(" ",c-1)+""):b.push(f.stringRepeat(" ",c));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var d="ace_indent-guide",e="",g="";if(this.showInvisibles){d+=" ace_invisible",e=" ace_invisible_space",g=" ace_invisible_tab";var h=f.stringRepeat(this.SPACE_CHAR,this.tabSize),i=this.TAB_CHAR+f.stringRepeat(" ",this.tabSize-1)}else var h=f.stringRepeat(" ",this.tabSize),i=h;this.$tabStrings[" "]=""+h+"",this.$tabStrings[" "]=""+i+""}},this.updateLines=function(a,b,c){(this.config.lastRow!=a.lastRow||this.config.firstRow!=a.firstRow)&&this.scrollLines(a),this.config=a;for(var d=Math.max(b,a.firstRow),f=Math.min(c,a.lastRow),g=this.element.childNodes,h=0,i=a.firstRow;d>i;i++){var j=this.session.getFoldLine(i);if(j){if(j.containsRow(d)){d=j.start.row;break}i=j.end.row}h++}for(var i=d,j=this.session.getNextFoldLine(i),k=j?j.start.row:1/0;;){if(i>k&&(i=j.end.row+1,j=this.session.getNextFoldLine(i,j),k=j?j.start.row:1/0),i>f)break;var l=g[h++];if(l){var m=[];this.$renderLine(m,i,!this.$useLineGroups(),i==k?j:!1),l.style.height=a.lineHeight*this.session.getRowLength(i)+"px",e.setInnerHtml(l,m.join(""))}i++}},this.scrollLines=function(a){var b=this.config;if(this.config=a,!b||b.lastRow0;d--)c.removeChild(c.firstChild);if(b.lastRow>a.lastRow)for(var d=this.session.getFoldedRowCount(a.lastRow+1,b.lastRow);d>0;d--)c.removeChild(c.lastChild);if(a.firstRowb.lastRow){var e=this.$renderLinesFragment(a,b.lastRow+1,a.lastRow);c.appendChild(e)}},this.$renderLinesFragment=function(a,b,c){for(var d=this.element.ownerDocument.createDocumentFragment(),f=b,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>c)break;var i=e.createElement("div"),j=[];if(this.$renderLine(j,f,!1,f==h?g:!1),i.innerHTML=j.join(""),this.$useLineGroups())i.className="ace_line_group",d.appendChild(i),i.style.height=a.lineHeight*this.session.getRowLength(f)+"px";else for(;i.firstChild;)d.appendChild(i.firstChild);f++}return d},this.update=function(a){this.config=a;for(var b=[],c=a.firstRow,d=a.lastRow,f=c,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>d)break;this.$useLineGroups()&&b.push("
"),this.$renderLine(b,f,!1,f==h?g:!1),this.$useLineGroups()&&b.push("
"),f++}this.element=e.setInnerHtml(this.element,b.join(""))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(a,b,c,d){var e=this,g=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,h=function(a,c,d,g,h){if(c)return e.showInvisibles?""+f.stringRepeat(e.SPACE_CHAR,a.length)+"":f.stringRepeat(" ",a.length);if("&"==a)return"&";if("<"==a)return"<";if(" "==a){var i=e.session.getScreenTabSize(b+g);return b+=i-1,e.$tabStrings[i]}if(" "==a){var j=e.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",k=e.showInvisibles?e.SPACE_CHAR:"";return b+=1,""+k+""}return d?""+e.SPACE_CHAR+"":(b+=1,""+a+"")},i=d.replace(g,h);if(this.$textToken[c.type])a.push(i);else{var j="ace_"+c.type.replace(/\./g," ace_"),k="";"fold"==c.type&&(k=" style='width:"+c.value.length*this.config.characterWidth+"px;' "),a.push("",i,"")}return b+d.length},this.renderIndentGuide=function(a,b,c){var d=b.search(this.$indentGuideRe);return 0>=d||d>=c?b:" "==b[0]?(d-=d%this.tabSize,a.push(f.stringRepeat(this.$tabStrings[" "],d/this.tabSize)),b.substr(d)):" "==b[0]?(a.push(f.stringRepeat(this.$tabStrings[" "],d)),b.substr(d)):b},this.$renderWrappedLine=function(a,b,c,d){for(var e=0,f=0,g=c[0],h=0,i=0;i=g;)h=this.$renderToken(a,h,j,k.substring(0,g-e)),k=k.substring(g-e),e=g,d||a.push("","
"),f++,h=0,g=c[f]||Number.MAX_VALUE;0!=k.length&&(e+=k.length,h=this.$renderToken(a,h,j,k))}}},this.$renderSimpleLine=function(a,b){var c=0,d=b[0],e=d.value;this.displayIndentGuides&&(e=this.renderIndentGuide(a,e)),e&&(c=this.$renderToken(a,c,d,e));for(var f=1;f"),e.length){var f=this.session.getRowSplitData(b);f&&f.length?this.$renderWrappedLine(a,e,f,c):this.$renderSimpleLine(a,e)}this.showInvisibles&&(d&&(b=d.end.row),a.push("",b==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"")),c||a.push("
")},this.$getFoldLineTokens=function(a,b){function c(a,b,c){for(var d=0,f=0;f+a[d].value.lengthc-b&&(g=g.substring(0,c-b)),e.push({type:a[d].type,value:g}),f=b+g.length,d+=1}for(;c>f&&dc?e.push({type:a[d].type,value:g.substring(0,c-f)}):e.push(a[d]),f+=g.length,d+=1}}var d=this.session,e=[],f=d.getTokens(a);return b.walk(function(a,b,g,h,i){null!=a?e.push({type:"fold",value:a}):(i&&(f=d.getTokens(b)),f.length&&c(f,h,g))},b.end.row,this.session.getLine(b.end.row).length),e},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(h.prototype),b.Text=h}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(a,b,c){var d,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),void 0===d&&(d="opacity"in this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),e.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateVisibility.bind(this)};(function(){this.$updateVisibility=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.visibility=a?"":"hidden"},this.$updateOpacity=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.opacity=a?"":"0"},this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},this.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},this.setSmoothBlinking=function(a){a==this.smoothBlinking||d||(this.smoothBlinking=a,e.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.$updateCursors=(a?this.$updateOpacity:this.$updateVisibility).bind(this),this.restartTimer())},this.addCursor=function(){var a=e.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},this.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},this.hideCursor=function(){this.isVisible=!1,e.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,e.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&e.removeCssClass(this.element,"ace_smooth-blinking"),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){e.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var b=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),b()},this.blinkInterval),b()}},this.getPixelPosition=function(a,b){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var c=this.session.documentToScreenPosition(a),d=this.$padding+c.column*this.config.characterWidth,e=(c.row-(b?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:d,top:e}},this.update=function(a){this.config=a;var b=this.session.$selectionMarkers,c=0,d=0;(void 0===b||0===b.length)&&(b=[{cursor:null}]);for(var c=0,e=b.length;e>c;c++){var f=this.getPixelPosition(b[c].cursor,!0);if(!((f.top>a.height+a.offset||f.top<0)&&c>1)){var g=(this.cursors[d++]||this.addCursor()).style;g.left=f.left+"px",g.top=f.top+"px",g.width=a.characterWidth+"px",g.height=a.lineHeight+"px"}}for(;this.cursors.length>d;)this.removeCursor();var h=this.session.getOverwrite();this.$setOverwrite(h),this.$pixelPos=f,this.restartTimer()},this.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?e.addCssClass(this.element,"ace_overwrite-cursors"):e.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(f.prototype),b.Cursor=f}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/event"),g=a("./lib/event_emitter").EventEmitter,h=function(a){this.element=e.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=e.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),a.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,f.addListener(this.element,"scroll",this.onScroll.bind(this)),f.addListener(this.element,"mousedown",f.preventDefault)};(function(){d.implement(this,g),this.setVisible=function(a){this.element.style.display=a?"":"none",this.isVisible=a}}).call(h.prototype);var i=function(a,b){h.call(this,a),this.scrollTop=0,b.$scrollbarWidth=this.width=e.scrollbarWidth(a.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};d.inherits(i,h),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(a){this.element.style.height=a+"px"},this.setInnerHeight=function(a){this.inner.style.height=a+"px"},this.setScrollHeight=function(a){this.inner.style.height=a+"px"},this.setScrollTop=function(a){this.scrollTop!=a&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=a)}}.call(i.prototype);var j=function(a,b){h.call(this,a),this.scrollLeft=0,this.height=b.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};d.inherits(j,h),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(a){this.element.style.width=a+"px"},this.setInnerWidth=function(a){this.inner.style.width=a+"px"},this.setScrollWidth=function(a){this.inner.style.width=a+"px"},this.setScrollLeft=function(a){this.scrollLeft!=a&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=a)}}.call(j.prototype),b.ScrollBar=i,b.ScrollBarV=i,b.ScrollBarH=j,b.VScrollBar=i,b.HScrollBar=j}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(a,b,c){var d=a("./lib/event"),e=function(a,b){this.onRender=a,this.pending=!1,this.changes=0,this.window=b||window};(function(){this.schedule=function(a){if(this.changes=this.changes|a,!this.pending&&this.changes){this.pending=!0;var b=this;d.nextFrame(function(){b.pending=!1;for(var a;a=b.changes;)b.changes=0,b.onRender(a)},this.window)}}}).call(e.prototype),b.RenderLoop=e}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=0,i=b.FontMetrics=function(a,b){this.el=e.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=e.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=e.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),a.appendChild(this.el),h||this.$testFractionalRect(),this.$measureNode.innerHTML=f.stringRepeat("X",h),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){d.implement(this,g),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var a=e.createElement("div");this.$setMeasureNodeStyles(a.style),a.style.width="0.2px",document.documentElement.appendChild(a);var b=a.getBoundingClientRect().width;h=b>0&&1>b?1:100,a.parentNode.removeChild(a)},this.$setMeasureNodeStyles=function(a,b){a.width=a.height="auto",a.left=a.top="-100px",a.visibility="hidden",a.position="fixed",a.whiteSpace="pre",a.font="inherit",a.overflow=b?"hidden":"visible"},this.checkForSizeChanges=function(){var a=this.$measureSizes();if(a&&(this.$characterSize.width!==a.width||this.$characterSize.height!==a.height)){this.$measureNode.style.fontWeight="bold";var b=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=a,this.charSizes=Object.create(null),this.allowBoldFonts=b&&b.width===a.width&&b.height===a.height,this._emit("changeCharacterSize",{data:a})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var a=this;return this.$pollSizeChangesTimer=setInterval(function(){a.checkForSizeChanges()},500)},this.setPolling=function(a){a?this.$pollSizeChanges():this.$pollSizeChangesTimer&&this.$pollSizeChangesTimer},this.$measureSizes=function(){if(1===h)var a=this.$measureNode.getBoundingClientRect(),b={height:a.height,width:a.width};else var b={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/h};return 0===b.width||0===b.height?null:b},this.$measureCharWidth=function(a){this.$main.innerHTML=f.stringRepeat(a,h);var b=this.$main.getBoundingClientRect();return b.width/h},this.getCharacterWidth=function(a){var b=this.charSizes[a];return void 0===b&&(this.charSizes[a]=this.$measureCharWidth(a)/this.$characterSize.width),b},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(i.prototype)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(a,b,c){function d(a,b,c){return p.$options.wrap=!0,p.$options.needle=b,p.$options.backwards=-1==c,p.find(a)}function e(a,b){return a.row==b.row&&a.column==b.column}function f(a){a.$multiselectOnSessionChange||(a.$onAddRange=a.$onAddRange.bind(a),a.$onRemoveRange=a.$onRemoveRange.bind(a),a.$onMultiSelect=a.$onMultiSelect.bind(a),a.$onSingleSelect=a.$onSingleSelect.bind(a),a.$multiselectOnSessionChange=b.onSessionChange.bind(a),a.$multiselectOnSessionChange(a),a.on("changeSession",a.$multiselectOnSessionChange),a.on("mousedown",k),a.commands.addCommands(n.defaultCommands),g(a))}function g(a){function b(b){d&&(a.renderer.setMouseCursor(""),d=!1)}var c=a.textInput.getElement(),d=!1;l.addListener(c,"keydown",function(c){18!=c.keyCode||c.ctrlKey||c.shiftKey||c.metaKey?d&&b():d||(a.renderer.setMouseCursor("crosshair"),d=!0)}),l.addListener(c,"keyup",b),l.addListener(c,"blur",b)}var h=a("./range_list").RangeList,i=a("./range").Range,j=a("./selection").Selection,k=a("./mouse/multi_select_handler").onMouseDown,l=a("./lib/event"),m=a("./lib/lang"),n=a("./commands/multi_select_commands");b.commands=n.defaultCommands.concat(n.multiSelectCommands);var o=a("./search").Search,p=new o,q=a("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(q.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(a,b){if(a){if(!this.inMultiSelectMode&&0==this.rangeCount){var c=this.toOrientedRange();if(this.rangeList.add(c),this.rangeList.add(a),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),b||this.fromOrientedRange(a);this.rangeList.removeAll(),this.rangeList.add(c),this.$onAddRange(c)}a.cursor||(a.cursor=a.end);var d=this.rangeList.add(a);return this.$onAddRange(a),d.length&&this.$onRemoveRange(d),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),b||this.fromOrientedRange(a)}},this.toSingleRange=function(a){a=a||this.ranges[0];var b=this.rangeList.removeAll();b.length&&this.$onRemoveRange(b),a&&this.fromOrientedRange(a)},this.substractPoint=function(a){var b=this.rangeList.substractPoint(a);return b?(this.$onRemoveRange(b),b[0]):void 0},this.mergeOverlappingRanges=function(){var a=this.rangeList.merge();a.length?this.$onRemoveRange(a):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(a){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(a),this._signal("addRange",{range:a})},this.$onRemoveRange=function(a){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var b=this.rangeList.ranges.pop();a.push(b),this.rangeCount=0}for(var c=a.length;c--;){var d=this.ranges.indexOf(a[c]);this.ranges.splice(d,1)}this._signal("removeRange",{ranges:a}),0==this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),b=b||this.ranges[0],b&&!b.isEqual(this.getRange())&&this.fromOrientedRange(b)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new h,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var c=this.getRange(),d=this.isBackwards(),e=c.start.row,f=c.end.row;if(e==f){if(d)var g=c.end,h=c.start;else var g=c.start,h=c.end;return this.addRange(i.fromPoints(h,h)),void this.addRange(i.fromPoints(g,g))}var j=[],k=this.getLineRange(e,!0);k.start.column=c.start.column,j.push(k);for(var l=e+1;f>l;l++)j.push(this.getLineRange(l,!0));k=this.getLineRange(f,!0),k.end.column=c.end.column,j.push(k),j.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var d=this.session.documentToScreenPosition(this.selectionLead),e=this.session.documentToScreenPosition(this.selectionAnchor),f=this.rectangularRangeBlock(d,e);f.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(a,b,c){var d=[],f=a.columng&&(g=0),0>k&&(k=0),k==l&&(c=!0);for(var m=k;l>=m;m++){var n=i.fromPoints(this.session.screenToDocumentPosition(m,g),this.session.screenToDocumentPosition(m,h));if(n.isEmpty()){if(o&&e(n.end,o))break;var o=n.end}n.cursor=f?n.start:n.end,d.push(n)}if(j&&d.reverse(),!c){for(var p=d.length-1;d[p].isEmpty()&&p>0;)p--;if(p>0)for(var q=0;d[q].isEmpty();)q++;for(var r=p;r>=q;r--)d[r].isEmpty()&&d.splice(r,1)}return d}}.call(j.prototype);var r=a("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(a){a.cursor||(a.cursor=a.end);var b=this.getSelectionStyle();return a.marker=this.session.addMarker(a,"ace_selection",b),this.session.$selectionMarkers.push(a),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,a},this.removeSelectionMarker=function(a){if(a.marker){this.session.removeMarker(a.marker);var b=this.session.$selectionMarkers.indexOf(a);-1!=b&&this.session.$selectionMarkers.splice(b,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(a){for(var b=this.session.$selectionMarkers,c=a.length;c--;){var d=a[c];if(d.marker){this.session.removeMarker(d.marker);var e=b.indexOf(d);-1!=e&&b.splice(e,1)}}this.session.selectionMarkerCount=b.length},this.$onAddRange=function(a){this.addSelectionMarker(a.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(a){this.removeSelectionMarkers(a.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(a){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(n.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(a){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(n.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(a){var b=a.command,c=a.editor;if(c.multiSelect){if(b.multiSelectAction)"forEach"==b.multiSelectAction?d=c.forEachSelection(b,a.args):"forEachLine"==b.multiSelectAction?d=c.forEachSelection(b,a.args,!0):"single"==b.multiSelectAction?(c.exitMultiSelectMode(),d=b.exec(c,a.args||{})):d=b.multiSelectAction(c,a.args||{});else{var d=b.exec(c,a.args||{});c.multiSelect.addRange(c.multiSelect.toOrientedRange()),c.multiSelect.mergeOverlappingRanges()}return d}},this.forEachSelection=function(a,b,c){if(!this.inVirtualSelectionMode){var d,e=this.session,f=this.selection,g=f.rangeList,h=f._eventRegistry;f._eventRegistry={};var i=new j(e);this.inVirtualSelectionMode=!0;for(var k=g.ranges.length;k--;){if(c)for(;k>0&&g.ranges[k].start.row==g.ranges[k-1].end.row;)k--;i.fromOrientedRange(g.ranges[k]),i.id=g.ranges[k].marker,this.selection=e.selection=i;var l=a.exec(this,b||{});void 0!==d&&(d=l),i.toOrientedRange(g.ranges[k])}i.detach(),this.selection=e.selection=f,this.inVirtualSelectionMode=!1,f._eventRegistry=h,f.mergeOverlappingRanges();var m=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),m&&m.from==m.to&&this.renderer.animateScrolling(m.from),d}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var a="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var b=this.multiSelect.rangeList.ranges,c=[],d=0;dd.length||c.length<2||!c[1])return this.commands.exec("insertstring",this,a);for(var e=d.length;e--;){var f=d[e];f.isEmpty()||this.session.remove(f),this.session.insert(f.start,c[e])}}},this.findAll=function(a,b,c){b=b||{},b.needle=a||b.needle,this.$search.set(b);var d=this.$search.findAll(this.session);if(!d.length)return 0;this.$blockScrolling+=1;var e=this.multiSelect;c||e.toSingleRange(d[0]);for(var f=d.length;f--;)e.addRange(d[f],!0);return this.$blockScrolling-=1,d.length},this.selectMoreLines=function(a,b){var c=this.selection.toOrientedRange(),d=c.cursor==c.end,e=this.session.documentToScreenPosition(c.cursor);this.selection.$desiredColumn&&(e.column=this.selection.$desiredColumn);var f=this.session.screenToDocumentPosition(e.row+a,e.column);if(c.isEmpty())var g=f;else var h=this.session.documentToScreenPosition(d?c.end:c.start),g=this.session.screenToDocumentPosition(h.row+a,h.column);if(d){var j=i.fromPoints(f,g);j.cursor=j.start}else{var j=i.fromPoints(g,f);j.cursor=j.end}if(j.desiredColumn=e.column,this.selection.inMultiSelectMode){if(b)var k=c.cursor}else this.selection.addRange(c);this.selection.addRange(j),k&&this.selection.substractPoint(k)},this.transposeSelections=function(a){for(var b=this.session,c=b.multiSelect,d=c.ranges,e=d.length;e--;){var f=d[e];if(f.isEmpty()){var g=b.getWordRange(f.start.row,f.start.column);f.start.row=g.start.row,f.start.column=g.start.column,f.end.row=g.end.row,f.end.column=g.end.column}}c.mergeOverlappingRanges();for(var h=[],e=d.length;e--;){var f=d[e];h.unshift(b.getTextRange(f))}0>a?h.unshift(h.pop()):h.push(h.shift());for(var e=d.length;e--;){var f=d[e],g=f.clone();b.replace(f,h[e]),f.start.row=g.start.row,f.start.column=g.start.column}},this.selectMore=function(a,b){var c=this.session,e=c.multiSelect,f=e.toOrientedRange();f.isEmpty()&&(f=c.getWordRange(f.start.row,f.start.column),f.cursor=-1==a?f.start:f.end,this.multiSelect.addRange(f));var g=c.getTextRange(f),h=d(c,g,a);h&&(h.cursor=-1==a?h.start:h.end,this.$blockScrolling+=1,this.session.unfold(h),this.multiSelect.addRange(h),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),b&&this.multiSelect.substractPoint(f.cursor)},this.alignCursors=function(){var a=this.session,b=a.multiSelect,c=b.ranges;if(c.length){var d=-1,e=c.filter(function(a){return a.cursor.row==d?!0:void(d=a.cursor.row)});b.$onRemoveRange(e);var f=0,g=1/0,h=c.map(function(b){var c=b.cursor,d=a.getLine(c.row),e=d.substr(c.column).search(/\S/g);return-1==e&&(e=0),c.column>f&&(f=c.column),g>e&&(g=e),e});c.forEach(function(b,c){var d=b.cursor,e=f-d.column,j=h[c]-g;e>j?a.insert(d,m.stringRepeat(" ",e-j)):a.remove(new i(d.row,d.column,d.row,d.column-e+j)),b.start.column=b.end.column=f,b.start.row=b.end.row=d.row,b.cursor=b.end}),b.fromOrientedRange(c[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var j=this.selection.getRange(),k=j.start.row,l=j.end.row,n=k==l;if(n){var o,p=this.session.getLength();do o=this.session.getLine(l);while(/[=:]/.test(o)&&++l0);0>k&&(k=0),l>=p&&(l=p-1)}var q=this.session.doc.removeLines(k,l);q=this.$reAlignText(q,n), this.session.doc.insert({row:k,column:0},q.join("\n")+"\n"),n||(j.start.column=0,j.end.column=q[q.length-1].length),this.selection.setRange(j)}},this.$reAlignText=function(a,b){function c(a){return m.stringRepeat(" ",a)}function d(a){return a[2]?c(g)+a[2]+c(h-a[2].length+i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function e(a){return a[2]?c(g+h-a[2].length)+a[2]+c(i," ")+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function f(a){return a[2]?c(g)+a[2]+c(i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}var g,h,i,j=!0,k=!0;return a.map(function(a){var b=a.match(/(\s*)(.*?)(\s*)([=:].*)/);return b?null==g?(g=b[1].length,h=b[2].length,i=b[3].length,b):(g+h+i!=b[1].length+b[2].length+b[3].length&&(k=!1),g!=b[1].length&&(j=!1),g>b[1].length&&(g=b[1].length),hb[3].length&&(i=b[3].length),b):[a]}).map(b?d:j?k?e:d:f)}}).call(r.prototype),b.onSessionChange=function(a){var b=a.session;b.multiSelect||(b.$selectionMarkers=[],b.selection.$initRangeList(),b.multiSelect=b.selection),this.multiSelect=b.multiSelect;var c=a.oldSession;c&&(c.multiSelect.removeEventListener("addRange",this.$onAddRange),c.multiSelect.removeEventListener("removeRange",this.$onRemoveRange),c.multiSelect.removeEventListener("multiSelect",this.$onMultiSelect),c.multiSelect.removeEventListener("singleSelect",this.$onSingleSelect)),b.multiSelect.on("addRange",this.$onAddRange),b.multiSelect.on("removeRange",this.$onRemoveRange),b.multiSelect.on("multiSelect",this.$onMultiSelect),b.multiSelect.on("singleSelect",this.$onSingleSelect),this.inMultiSelectMode!=b.selection.inMultiSelectMode&&(b.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},b.MultiSelect=f,a("./config").defineOptions(r.prototype,"editor",{enableMultiselect:{set:function(a){f(this),a?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",k)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",k))},value:!0}})}),define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event"],function(a,b,c){function d(a,b){return a.row==b.row&&a.column==b.column}function e(a){var b=a.domEvent,c=b.altKey,e=b.shiftKey,g=a.getAccelKey(),h=a.getButton();if(a.editor.inMultiSelectMode&&2==h)return void a.editor.textInput.onContextMenu(a.domEvent);if(!g&&!c)return void(0===h&&a.editor.inMultiSelectMode&&a.editor.exitMultiSelectMode());var i=a.editor,j=i.selection,k=i.inMultiSelectMode,l=a.getDocumentPosition(),m=j.getCursor(),n=a.inSelection()||j.isEmpty()&&d(l,m),o=a.x,p=a.y,q=function(a){o=a.clientX,p=a.clientY},r=function(){var a=i.renderer.pixelToScreenCoordinates(o,p),b=s.screenToDocumentPosition(a.row,a.column);d(u,a)&&d(b,j.selectionLead)||(u=a,i.selection.moveToPosition(b),i.renderer.scrollCursorIntoView(),i.removeSelectionMarkers(v),v=j.rectangularRangeBlock(u,t),v.forEach(i.addSelectionMarker,i),i.updateSelectionMarkers())},s=i.session,t=i.renderer.pixelToScreenCoordinates(o,p),u=t;if(!g||c||e||0!==h){if(c&&0===h){a.stop(),k&&!g?j.toSingleRange():!k&&g&&j.addRange();var v=[];e?(t=s.documentToScreenPosition(j.lead),r()):j.moveToPosition(l);var w=function(a){clearInterval(y),i.removeSelectionMarkers(v);for(var b=0;b20&&a.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:a}))},this.$workerBlob=function(a){var b="importScripts('"+e.qualifyURL(a)+"');";try{return new Blob([b],{type:"application/javascript"})}catch(c){var d=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,f=new d;return f.append(b),f.getBlob("application/javascript")}}}).call(h.prototype);var i=function(a,b,c){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var d=null,e=!1,h=Object.create(f),i=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(a){i.messageBuffer.push(a),d&&(e?setTimeout(j):j())},this.setEmitSync=function(a){e=a};var j=function(){var a=i.messageBuffer.shift();a.command?d[a.command].apply(d,a.args):a.event&&h._signal(a.event,a.data)};h.postMessage=function(a){i.onMessage({data:a})},h.callback=function(a,b){this.postMessage({type:"call",id:b,data:a})},h.emit=function(a,b){this.postMessage({type:"event",name:a,data:b})},g.loadModule(["worker",b],function(a){for(d=new a[c](h);i.messageBuffer.length;)j()})};i.prototype=h.prototype,b.UIWorkerClient=i,b.WorkerClient=h}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(a,b,c){var d=a("./range").Range,e=a("./lib/event_emitter").EventEmitter,f=a("./lib/oop"),g=function(a,b,c,d,e,f){var g=this;this.length=b,this.session=a,this.doc=a.getDocument(),this.mainClass=e,this.othersClass=f,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=d,this.$onCursorChange=function(){setTimeout(function(){g.onCursorChange()})},this.$pos=c;var h=a.getUndoManager().$undoStack||a.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=h.length,this.setup(),a.selection.on("changeCursor",this.$onCursorChange)};(function(){f.implement(this,e),this.setup=function(){var a=this,b=this.doc,c=this.session,e=this.$pos;this.pos=b.createAnchor(e.row,e.column),this.markerId=c.addMarker(new d(e.row,e.column,e.row,e.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(b){c.removeMarker(a.markerId),a.markerId=c.addMarker(new d(b.value.row,b.value.column,b.value.row,b.value.column+a.length),a.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(c){var d=b.createAnchor(c.row,c.column);a.others.push(d)}),c.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var a=this.session,b=this;this.othersActive=!0,this.others.forEach(function(c){c.markerId=a.addMarker(new d(c.row,c.column,c.row,c.column+b.length),b.othersClass,null,!1),c.on("change",function(e){a.removeMarker(c.markerId),c.markerId=a.addMarker(new d(e.value.row,e.value.column,e.value.row,e.value.column+b.length),b.othersClass,null,!1)})})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var a=0;a=this.pos.column&&c.start.column<=this.pos.column+this.length+1){var f=c.start.column-this.pos.column;if(this.length+=e,!this.session.$fromUndo){if("insertText"===b.action)for(var g=this.others.length-1;g>=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=this.pos.column&&b.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",a)):(this.hideOtherMarkers(),this._emit("cursorLeave",a))}},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var a=0;ac;c++)a.undo(!0)}}).call(g.prototype),b.PlaceHolder=g}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(a,b,c){var d=a("../../range").Range,e=b.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(a,b,c){var d=a.getLine(c);return this.foldingStartMarker.test(d)?"start":"markbeginend"==b&&this.foldingStopMarker&&this.foldingStopMarker.test(d)?"end":""},this.getFoldWidgetRange=function(a,b,c){return null},this.indentationBlock=function(a,b,c){var e=/\S/,f=a.getLine(b),g=f.search(e);if(-1!=g){for(var h=c||f.length,i=a.getLength(),j=b,k=b;++b=l)break;k=b}}if(k>j){var m=a.getLine(k).length;return new d(j,h,k,m)}}},this.openingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e+1},h=a.$findClosingBracket(b,g,f);if(h){var i=a.foldWidgets[h.row];return null==i&&(i=a.getFoldWidget(h.row)),"start"==i&&h.row>g.row&&(h.row--,h.column=a.getLine(h.row).length),d.fromPoints(g,h)}},this.closingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e},h=a.$findOpeningBracket(b,g);return h?(h.column++,g.column--,d.fromPoints(h,g)):void 0}}).call(e.prototype)}),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(a,b,c){function d(a,b,c){for(var d=0,e=a.length-1;e>=d;){var f=d+e>>1,g=c(b,a[f]);if(g>0)d=f+1;else{if(!(0>g))return f;e=f-1}}return-(d+1)}function e(a,b,c){var e=a.getAnnotations().sort(h.comparePoints);if(e.length){var f=d(e,{row:b,column:-1},h.comparePoints);0>f&&(f=-f-1),f>=e.length-1?f=c>0?0:e.length-1:0===f&&0>c&&(f=e.length-1);var g=e[f];if(g&&c){if(g.row===b){do g=e[f+=c];while(g&&g.row===b);if(!g)return e.slice()}var i=[];b=g.row;do i[0>c?"unshift":"push"](g),g=e[f+=c];while(g&&g.row==b);return i.length&&i}}}var f=a("ace/line_widgets").LineWidgets,g=a("ace/lib/dom"),h=a("ace/range").Range;b.showErrorMarker=function(a,b){var c=a.session;c.widgetManager||(c.widgetManager=new f(c),c.widgetManager.attach(a));var d=a.getCursorPosition(),h=d.row,i=c.lineWidgets&&c.lineWidgets[h];i?i.destroy():h-=b;var j,k=e(c,h,b);if(k){var l=k[0];d.column=(l.pos&&"number"!=typeof l.column?l.pos.sc:l.column)||0,d.row=l.row,j=a.renderer.$gutterLayer.$annotations[d.row]}else{if(i)return;j={text:["Looks good!"],className:"ace_ok"}}a.session.unfold(d.row),a.selection.moveToPosition(d);var m={row:d.row,fixedWidth:!0,coverGutter:!0,el:g.createElement("div")},n=m.el.appendChild(g.createElement("div")),o=m.el.appendChild(g.createElement("div"));o.className="error_widget_arrow "+j.className;var p=a.renderer.$cursorLayer.getPixelPosition(d).left;o.style.left=p+a.renderer.gutterWidth-5+"px",m.el.className="error_widget_wrapper",n.className="error_widget "+j.className,n.innerHTML=j.text.join("
"),n.appendChild(g.createElement("div"));var q=function(a,b,c){return 0!==b||"esc"!==c&&"return"!==c?void 0:(m.destroy(),{command:"null"})};m.destroy=function(){a.$mouseHandler.isMousePressed||(a.keyBinding.removeKeyboardHandler(q),c.widgetManager.removeLineWidget(m),a.off("changeSelection",m.destroy),a.off("changeSession",m.destroy),a.off("mouseup",m.destroy),a.off("change",m.destroy))},a.keyBinding.addKeyboardHandler(q),a.on("changeSelection",m.destroy),a.on("changeSession",m.destroy),a.on("mouseup",m.destroy),a.on("change",m.destroy),a.session.widgetManager.addLineWidget(m),m.el.onmousedown=a.focus.bind(a),a.renderer.scrollCursorIntoView(null,.5,{bottom:m.el.offsetHeight})},g.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(a,b,c){function d(a){this.session=a,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.detach=this.detach.bind(this),this.session.on("change",this.updateOnChange)}var e=(a("./lib/oop"),a("./lib/dom"));a("./range").Range;(function(){this.getRowLength=function(a){var b;return b=this.lineWidgets?this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0:0,this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.$getWidgetScreenLength=function(){var a=0;return this.lineWidgets.forEach(function(b){b&&b.rowCount&&(a+=b.rowCount)}),a},this.attach=function(a){a.widgetManager&&a.widgetManager!=this&&a.widgetManager.detach(),this.editor!=a&&(this.detach(),this.editor=a,this.editor.on("changeSession",this.detach),a.widgetManager=this,a.setOption("enableLineWidgets",!0),a.renderer.on("beforeRender",this.measureWidgets),a.renderer.on("afterRender",this.renderWidgets))},this.detach=function(a){if(!a||a.session!=this.session){var b=this.editor;if(b){b.off("changeSession",this.detach),this.editor=null,b.widgetManager=null,b.renderer.off("beforeRender",this.measureWidgets),b.renderer.off("afterRender",this.renderWidgets);var c=this.session.lineWidgets;c&&c.forEach(function(a){a&&a.el&&a.el.parentNode&&(a._inDocument=!1,a.el.parentNode.removeChild(a.el))})}}},this.updateOnChange=function(a){var b=this.session.lineWidgets;if(b){var c=a.data,d=c.range,e=d.start.row,f=d.end.row-e;if(0===f);else if("removeText"==c.action||"removeLines"==c.action){var g=b.splice(e+1,f);g.forEach(function(a){a&&this.removeLineWidget(a)},this),this.$updateRows()}else{var h=new Array(f);h.unshift(e,0),b.splice.apply(b,h),this.$updateRows()}}},this.$updateRows=function(){var a=this.session.lineWidgets;if(a){var b=!0;a.forEach(function(a,c){a&&(b=!1,a.row=c)}),b&&(this.session.lineWidgets=null)}},this.addLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[a.row]=a;var b=this.editor.renderer;return a.html&&!a.el&&(a.el=e.createElement("div"),a.el.innerHTML=a.html),a.el&&(e.addCssClass(a.el,"ace_lineWidgetContainer"),a.el.style.position="absolute",a.el.style.zIndex=5,b.container.appendChild(a.el),a._inDocument=!0),a.coverGutter||(a.el.style.zIndex=3),a.pixelHeight||(a.pixelHeight=a.el.offsetHeight),null==a.rowCount&&(a.rowCount=a.pixelHeight/b.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,b),a},this.removeLineWidget=function(a){if(a._inDocument=!1,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch(b){}this.session.lineWidgets&&(this.session.lineWidgets[a.row]=void 0),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},this.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(a,b){var c=this.session._changedWidgets,d=b.layerConfig;if(c&&c.length){for(var e=1/0,f=0;fh&&(h=0)),g.rowCount!=h&&(g.rowCount=h,g.row0&&!d[e];)e--;this.firstRow=c.firstRow,this.lastRow=c.lastRow,b.$cursorLayer.config=c;for(var g=e;f>=g;g++){var h=d[g];if(h&&h.el){h._inDocument||(h._inDocument=!0,b.container.appendChild(h.el));var i=b.$cursorLayer.getPixelPosition({row:g,column:0},!0).top;h.coverLine||(i+=c.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=i-c.offset+"px";var j=h.coverGutter?0:b.gutterWidth;h.fixedWidth||(j-=b.scrollLeft),h.el.style.left=j+"px",h.fixedWidth?h.el.style.right=b.scrollBar.getWidth()+"px":h.el.style.right=""}}}}}).call(d.prototype),b.LineWidgets=d}),function(){window.require(["ace/ace"],function(a){a&&a.config.init(),window.ace||(window.ace={});for(var b in a)a.hasOwnProperty(b)&&(ace[b]=a[b])})}(),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm .ace_scroller {background-color: #FFFFFF;}.ace-tm .ace_cursor {border-left: 2px solid black;}.ace-tm .ace_overwrite-cursors .ace_cursor {border-left: 0px;border-bottom: 1px solid black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_markup.ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_markup.ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./json_highlight_rules").JsonHighlightRules,h=a("./matching_brace_outdent").MatchingBraceOutdent,i=a("./behaviour/cstyle").CstyleBehaviour,j=a("./folding/cstyle").FoldMode,k=a("../worker/worker_client").WorkerClient,l=function(){this.$tokenizer=new f((new g).getRules()),this.$outdent=new h,this.$behaviour=new i,this.foldingRules=new j};d.inherits(l,e),function(){this.getNextLineIndent=function(a,b,c){var d=this.$getIndent(b);if("start"==a){var e=b.match(/^.*[\{\(\[]\s*$/);e&&(d+=c)}return d},this.checkOutdent=function(a,b,c){return this.$outdent.checkOutdent(b,c)},this.autoOutdent=function(a,b,c){this.$outdent.autoOutdent(b,c)},this.createWorker=function(a){var b=new k(["ace"],"ace/mode/json_worker","JsonWorker");return b.attachToDocument(a.getDocument()),b.on("error",function(b){a.setAnnotations([b.data])}),b.on("ok",function(){a.clearAnnotations()}),b}}.call(l.prototype),b.Mode=l}),define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};d.inherits(f,e),b.JsonHighlightRules=f}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(a,b,c){var d=a("../range").Range,e=function(){};(function(){this.checkOutdent=function(a,b){return/^\s+$/.test(a)?/^\s*\}/.test(b):!1},this.autoOutdent=function(a,b){var c=a.getLine(b),e=c.match(/^(\s*\})/);if(!e)return 0;var f=e[1].length,g=a.findMatchingBracket({row:b,column:f});if(!g||g.row==b)return 0;var h=this.$getIndent(a.getLine(g.row));a.replace(new d(b,0,b,f-1),h)},this.$getIndent=function(a){var b=a.match(/^(\s+)/);return b?b[1]:""}}).call(e.prototype),b.MatchingBraceOutdent=e}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(a,b,c){var d=a("../../lib/oop"),e=a("../behaviour").Behaviour,f=a("../../token_iterator").TokenIterator,g=a("../../lib/lang"),h=["text","paren.rparen","punctuation.operator"],i=["text","paren.rparen","punctuation.operator","comment"],j=0,k=-1,l="",m=0,n=-1,o="",p="",q=function(){q.isSaneInsertion=function(a,b){var c=a.getCursorPosition(),d=new f(b,c.row,c.column);if(!this.$matchTokenType(d.getCurrentToken()||"text",h)){var e=new f(b,c.row,c.column+1);if(!this.$matchTokenType(e.getCurrentToken()||"text",h))return!1}return d.stepForward(),d.getCurrentTokenRow()!==c.row||this.$matchTokenType(d.getCurrentToken()||"text",i)},q.$matchTokenType=function(a,b){return b.indexOf(a.type||a)>-1},q.recordAutoInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isAutoInsertedClosing(d,e,l[0])||(j=0),k=d.row,l=c+e.substr(d.column),j++},q.recordMaybeInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isMaybeInsertedClosing(d,e)||(m=0),n=d.row,o=e.substr(0,d.column)+c,p=e.substr(d.column),m++},q.isAutoInsertedClosing=function(a,b,c){return j>0&&a.row===k&&c===l[0]&&b.substr(a.column)===l},q.isMaybeInsertedClosing=function(a,b){return m>0&&a.row===n&&b.substr(a.column)===p&&b.substr(0,a.column)==o; },q.popAutoInsertedClosing=function(){l=l.substr(1),j--},q.clearMaybeInsertedClosing=function(){m=0,n=-1},this.add("braces","insertion",function(a,b,c,d,e){var f=c.getCursorPosition(),h=d.doc.getLine(f.row);if("{"==e){var i=c.getSelectionRange(),j=d.doc.getTextRange(i);if(""!==j&&"{"!==j&&c.getWrapBehavioursEnabled())return{text:"{"+j+"}",selection:!1};if(q.isSaneInsertion(c,d))return/[\]\}\)]/.test(h[f.column])?(q.recordAutoInsert(c,d,"}"),{text:"{}",selection:[1,1]}):(q.recordMaybeInsert(c,d,"{"),{text:"{",selection:[1,1]})}else if("}"==e){var k=h.substring(f.column,f.column+1);if("}"==k){var l=d.$findOpeningBracket("}",{column:f.column+1,row:f.row});if(null!==l&&q.isAutoInsertedClosing(f,h,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if("\n"==e||"\r\n"==e){var n="";q.isMaybeInsertedClosing(f,h)&&(n=g.stringRepeat("}",m),q.clearMaybeInsertedClosing());var k=h.substring(f.column,f.column+1);if("}"==k||""!==n){var o=d.findMatchingBracket({row:f.row,column:f.column},"}");if(!o)return null;var p=this.getNextLineIndent(a,h.substring(0,f.column),d.getTabString()),r=this.$getIndent(h);return{text:"\n"+p+"\n"+r+n,selection:[1,p.length,1,p.length]}}}}),this.add("braces","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"{"==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.end.column,e.end.column+1);if("}"==h)return e.end.column++,e;m--}}),this.add("parens","insertion",function(a,b,c,d,e){if("("==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"("+g+")",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,")"),{text:"()",selection:[1,1]}}else if(")"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if(")"==j){var k=d.$findOpeningBracket(")",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"("==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(")"==h)return e.end.column++,e}}),this.add("brackets","insertion",function(a,b,c,d,e){if("["==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"["+g+"]",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,"]"),{text:"[]",selection:[1,1]}}else if("]"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if("]"==j){var k=d.$findOpeningBracket("]",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"["==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if("]"==h)return e.end.column++,e}}),this.add("string_dquotes","insertion",function(a,b,c,d,e){if('"'==e||"'"==e){var f=e,g=c.getSelectionRange(),h=d.doc.getTextRange(g);if(""!==h&&"'"!==h&&'"'!=h&&c.getWrapBehavioursEnabled())return{text:f+h+f,selection:!1};var i=c.getCursorPosition(),j=d.doc.getLine(i.row),k=j.substring(i.column-1,i.column);if("\\"==k)return null;for(var l,m=d.getTokens(g.start.row),n=0,o=-1,p=0;po&&(o=l.value.indexOf(f)),!(l.value.length+n>g.start.column));p++)n+=m[p].value.length;if(!l||0>o&&"comment"!==l.type&&("string"!==l.type||g.start.column!==l.value.length+n-1&&l.value.lastIndexOf(f)===l.value.length-1)){if(!q.isSaneInsertion(c,d))return;return{text:f+f,selection:[1,1]}}if(l&&"string"===l.type){var r=j.substring(i.column,i.column+1);if(r==f)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&('"'==f||"'"==f)){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(h==f)return e.end.column++,e}})};d.inherits(q,e),b.CstyleBehaviour=q}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(a,b,c){var d=a("../../lib/oop"),e=(a("../../range").Range,a("./fold_mode").FoldMode),f=b.FoldMode=function(){};d.inherits(f,e),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(a,b,c){var d=a.getLine(c),e=d.match(this.foldingStartMarker);if(e){var f=e.index;return e[1]?this.openingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f+e[0].length,1)}if("markbeginend"===b){var e=d.match(this.foldingStopMarker);if(e){var f=e.index+e[0].length;return e[1]?this.closingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f,-1)}}}}.call(f.prototype)}),define("ace/mode/aql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/aql_highlight_rules","ace/range"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./aql_highlight_rules").AqlHighlightRules,h=a("../range").Range,i=function(){this.$tokenizer=new f((new g).getRules())};d.inherits(i,e),function(){this.toggleCommentLines=function(a,b,c,d){for(var e=!0,f=/^(\s*)\/\//,g=c;d>=g;g++)if(!f.test(b.getLine(g))){e=!1;break}if(e)for(var i=new h(0,0,0,0),g=c;d>=g;g++){var j=b.getLine(g),k=j.match(f);i.start.row=g,i.end.row=g,i.end.column=k[0].length,b.replace(i,k[1])}else b.indentRows(c,d,"//")}}.call(i.prototype),b.Mode=i}),define("ace/mode/aql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){var a="for|return|filter|sort|limit|let|collect|asc|desc|if|in|into|insert|update|remove|replace|options|with|and|or|not|distinct",b="(to_bool|to_number|to_string|to_list|is_null|is_bool|is_number|is_string|is_list|is_document|concat|concat_separator|char_length|lower|upper|substring|left|right|trim|reverse|contains|like|floor|ceil|round|abs|rand|sqrt|length|min|max|average|sum|median|variance_population|variance_sample|first|last|unique|matches|merge|merge_recursive|has|attributes|values|unset|keep|near|within|within_rectangle|is_in_polygon|fulltext|paths|traversal|traversal_tree|edges|stddev_sample|stddev_population|slice|nth|position|translate|zip|call|apply|push|append|pop|shift|unshift|remove_value|remove_values|remove_nth|graph_paths|shortest_path|graph_shortest_path|graph_distance_to|graph_traversal|graph_traversal_tree|graph_edges|graph_vertices|neighbors|graph_neighbors|graph_common_neighbors|graph_common_properties|graph_eccentricity|graph_betweenness|graph_closeness|graph_absolute_eccentricity|graph_absolute_betweenness|graph_absolute_closeness|graph_diameter|graph_radius|date_now|date_timestamp|date_iso8601|date_dayofweek|date_year|date_month|date_day|date_hour|date_minute|date_second|date_millisecond|fail|passthru|sleep|not_null|first_list|first_document|parse_identifier|current_user|current_database|collections|document|union|union_distinct|intersection|flatten|ltrim|rtrim|find_first|find_last|split|substitute|assemble|md5|sha1|random_token|AQL_LAST_ENTRY)",c=this.createKeywordMapper({"support.function":b,keyword:a,"constant.language":"null","constant.language.boolean":"true|false"},"identifier",!0);this.$rules={start:[{token:"comment",regex:/\/\/.*$/},{token:"comment",regex:/\/\*/,next:"comment_ml"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"string",regex:"`.*?`"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:c,regex:"[a-zA-Z_][a-zA-Z0-9_]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|@>|<@|&&|\\||!|<|>|<=|=>|==|!=|="},{token:"paren.lparen",regex:"[\\(\\{]"},{token:"paren.rparen",regex:"[\\)\\}]"},{token:"text",regex:"\\s+"}],comment_ml:[{token:"comment",regex:/\*\//,next:"start"},{defaultToken:"comment"}]}};d.inherits(f,e),b.AqlHighlightRules=f}),EdgeShaper.shapes=Object.freeze({NONE:0,ARROW:1}),NodeShaper.shapes=Object.freeze({NONE:0,CIRCLE:1,RECT:2,IMAGE:3});var modalDialogHelper=modalDialogHelper||{};!function(){"use strict";var a,b=function(a){$(document).bind("keypress.key13",function(b){b.which&&13===b.which&&$(a).click()})},c=function(){$(document).unbind("keypress.key13")},d=function(a,b,c,d,e){var f,g,h=function(){e(f)},i=modalDialogHelper.modalDivTemplate(a,b,c,h),j=document.createElement("tr"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("th"),n=document.createElement("button"),o=1;f=function(){var a={};return _.each($("#"+c+"table tr:not(#first_row)"),function(b){var c=$(".keyCell input",b).val(),d=$(".valueCell input",b).val();a[c]=d}),a},i.appendChild(j),j.id="first_row",j.appendChild(k),k.className="keyCell",j.appendChild(l),l.className="valueCell",j.appendChild(m),m.className="actionCell",m.appendChild(n),n.id=c+"new",n.className="graphViewer-icon-button gv-icon-small add",g=function(a,b){var d,e,f,g=/^_(id|rev|key|from|to)/,h=document.createElement("tr"),j=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th");g.test(b)||(i.appendChild(h),h.appendChild(k),k.className="keyCell",e=document.createElement("input"),e.type="text",e.id=c+b+"_key",e.value=b,k.appendChild(e),h.appendChild(l),l.className="valueCell",f=document.createElement("input"),f.type="text",f.id=c+b+"_value","object"==typeof a?f.value=JSON.stringify(a):f.value=a,l.appendChild(f),h.appendChild(j),j.className="actionCell",d=document.createElement("button"),d.id=c+b+"_delete",d.className="graphViewer-icon-button gv-icon-small delete",j.appendChild(d),d.onclick=function(){i.removeChild(h)})},n.onclick=function(){g("","new_"+o),o++},_.each(d,g),$("#"+c+"modal").modal("show")},e=function(a,b,c,d,e){var f=modalDialogHelper.modalDivTemplate(a,b,c,e),g=document.createElement("tr"),h=document.createElement("th"),i=document.createElement("pre");f.appendChild(g),g.appendChild(h),h.appendChild(i),i.className="gv-object-view",i.innerHTML=JSON.stringify(d,null,2),$("#"+c+"modal").modal("show")},f=function(a,b){var c=document.createElement("input");return c.type="text",c.id=a,c.value=b,c},g=function(a,b){var c=document.createElement("input");return c.type="checkbox",c.id=a,c.checked=b,c},h=function(a,b,c){var d=document.createElement("select");return d.id=a,_.each(_.sortBy(b,function(a){return a.toLowerCase()}),function(a){var b=document.createElement("option");b.value=a,b.selected=a===c,b.appendChild(document.createTextNode(a)),d.appendChild(b)}),d},i=function(a){var b=$(".decission_"+a),c=$("input[type='radio'][name='"+a+"']:checked").attr("id");b.each(function(){$(this).attr("decider")===c?$(this).css("display",""):$(this).css("display","none")})},j=function(b,c,d,e,f,g,h,j){var k=document.createElement("input"),l=b+c,m=document.createElement("label"),n=document.createElement("tbody");k.id=l,k.type="radio",k.name=d,k.className="gv-radio-button",m.className="radio",h.appendChild(m),m.appendChild(k),m.appendChild(document.createTextNode(e)),j.appendChild(n),$(n).toggleClass("decission_"+d,!0),$(n).attr("decider",l),_.each(g,function(c){a(n,b,c)}),f?k.checked=!0:k.checked=!1,m.onclick=function(a){i(d),a.stopPropagation()},i(d)},k=function(a,b,c,d,e,f){var g,h=[],i=a+b,j=1,k=document.createElement("th"),l=document.createElement("button"),m=document.createElement("input"),n=function(a){j++;var c,d=document.createElement("tr"),g=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("input"),n=document.createElement("button");m.type="text",m.id=i+"_"+j,m.value=a||"",c=0===h.length?$(f):$(h[h.length-1]),c.after(d),d.appendChild(g),g.className="collectionTh capitalize",g.appendChild(document.createTextNode(b+" "+j+":")),d.appendChild(k),k.className="collectionTh",k.appendChild(m),n.id=i+"_"+j+"_remove",n.className="graphViewer-icon-button gv-icon-small delete",n.onclick=function(){e.removeChild(d),h.splice(h.indexOf(d),1)},l.appendChild(n),d.appendChild(l),h.push(d)};for(m.type="text",m.id=i+"_1",d.appendChild(m),k.appendChild(l),f.appendChild(k),l.onclick=function(){n()},l.id=i+"_addLine",l.className="graphViewer-icon-button gv-icon-small add","string"==typeof c&&c.length>0&&(c=[c]),c.length>0&&(m.value=c[0]),g=1;ga?"0"+a:a};return a.getUTCFullYear()+"-"+b(a.getUTCMonth()+1)+"-"+b(a.getUTCDate())+" "+b(a.getUTCHours())+":"+b(a.getUTCMinutes())+":"+b(a.getUTCSeconds())},escapeHtml:function(a){return String(a).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}}}(),function(){"use strict";if(!window.hasOwnProperty("TEST_BUILD")){var a=function(){var a={};return a.createTemplate=function(a){var b=$("#"+a.replace(".","\\.")).html();return{render:function(a){return _.template(b,a)}}},a};window.templateEngine=new a}}(),Module.prototype.moduleCache={},Module.prototype.moduleCache["/internal"]=new Module("/internal"),"undefined"==typeof global&&"undefined"!=typeof window&&(global=window),global.module=Module.prototype.moduleCache["/"]=new Module("/"),Module.prototype.normalise=function(a){var b,c,d,e,f;if(""===a)return this.id;for(d=a.split("/"),"."===d[0]||".."===d[0]?(e=this.id.split("/"),e.pop(),e=e.concat(d)):e=d,c=[],b=0;b "+a.browserOutputBuffer,"jssuccess"),a.browserOutputBuffer=""},$(document).ajaxSend(function(b,c,d){d.url=a.arango.databasePrefix(d.url)})}(),function(){"use strict";window.dygraphConfig={defaultFrame:12e5,zeropad:function(a){return 10>a?"0"+a:a},xAxisFormat:function(a){if(-1===a)return"";var b=new Date(a);return this.zeropad(b.getHours())+":"+this.zeropad(b.getMinutes())+":"+this.zeropad(b.getSeconds())},mergeObjects:function(a,b,c){c||(c=[]);var d,e={};return c.forEach(function(c){var d=a[c],f=b[c];void 0===d&&(d={}),void 0===f&&(f={}),e[c]=_.extend(d,f)}),d=_.extend(a,b),Object.keys(e).forEach(function(a){d[a]=e[a]}),d},mapStatToFigure:{residentSize:["times","residentSizePercent"],pageFaults:["times","majorPageFaultsPerSecond","minorPageFaultsPerSecond"],systemUserTime:["times","systemTimePerSecond","userTimePerSecond"],totalTime:["times","avgQueueTime","avgRequestTime","avgIoTime"],dataTransfer:["times","bytesSentPerSecond","bytesReceivedPerSecond"],requests:["times","getsPerSecond","putsPerSecond","postsPerSecond","deletesPerSecond","patchesPerSecond","headsPerSecond","optionsPerSecond","othersPerSecond"]},colors:["#617e2b","#296e9c","#81ccd8","#7ca530","#3c3c3c","#aa90bd","#e1811d","#c7d4b2","#d0b2d4"],figureDependedOptions:{clusterRequestsPerSecond:{showLabelsOnHighlight:!0,title:"",header:"Cluster Requests per Second",stackedGraph:!0,div:"lineGraphLegend",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},residentSize:{header:"Resident Size",axes:{y:{labelsKMG2:!1,axisLabelFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"},valueFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"}}}},pageFaults:{header:"Page Faults",visibility:[!0,!1],labels:["datetime","Major Page","Minor Page"],div:"pageFaultsChart",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},systemUserTime:{div:"systemUserTimeChart",header:"System and User Time",labels:["datetime","System Time","User Time"],stackedGraph:!0,labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},totalTime:{div:"totalTimeChart",header:"Total Time",labels:["datetime","Queue","Computation","I/O"],labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}},stackedGraph:!0},dataTransfer:{header:"Data Transfer",labels:["datetime","Bytes sent","Bytes received"],stackedGraph:!0,div:"dataTransferChart"},requests:{header:"Requests",labels:["datetime","GET","PUT","POST","DELETE","PATCH","HEAD","OPTIONS","OTHER"],stackedGraph:!0,div:"requestsChart",axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}}},getDashBoardFigures:function(a){var b=[],c=this;return Object.keys(this.figureDependedOptions).forEach(function(d){"clusterRequestsPerSecond"!==d&&(c.figureDependedOptions[d].div||a)&&b.push(d)}),b},getDefaultConfig:function(a){var b=this,c={digitsAfterDecimal:1,drawGapPoints:!0,fillGraph:!0,showLabelsOnHighlight:!1,strokeWidth:1,lineWidth:1,strokeBorderWidth:1,includeZero:!0,highlightCircleSize:2.5,labelsSeparateLines:!0,strokeBorderColor:"#ffffff",interactionModel:{},maxNumberWidth:10,colors:[this.colors[0]],xAxisLabelWidth:"50",rightGap:15,showRangeSelector:!1,rangeSelectorHeight:50,rangeSelectorPlotStrokeColor:"#365300",rangeSelectorPlotFillColor:"",pixelsPerLabel:50,labelsKMG2:!0,dateWindow:[(new Date).getTime()-this.defaultFrame,(new Date).getTime()],axes:{x:{valueFormatter:function(a){return b.xAxisFormat(a)}},y:{ticker:Dygraph.numericLinearTicks}}};return this.figureDependedOptions[a]&&(c=this.mergeObjects(c,this.figureDependedOptions[a],["axes"]),c.div&&c.labels&&(c.colors=this.getColors(c.labels),c.labelsDiv=document.getElementById(c.div+"Legend"),c.legend="always",c.showLabelsOnHighlight=!0)),c},getDetailChartConfig:function(a){var b=_.extend(this.getDefaultConfig(a),{showRangeSelector:!0,interactionModel:null,showLabelsOnHighlight:!0,highlightCircleSize:2.5,legend:"always",labelsDiv:"div#detailLegend.dashboard-legend-inner"});return"pageFaults"===a&&(b.visibility=[!0,!0]),b.labels||(b.labels=["datetime",b.header],b.colors=this.getColors(b.labels)),b},getColors:function(a){var b;return b=this.colors.concat([]),b.slice(0,a.length-1)}}}(),module.define("underscore",function(a,b){(function(){function c(a){function b(b,c,d,e,f,g){for(;f>=0&&g>f;f+=a){var h=e?e[f]:f;d=c(d,b[h],h,b)}return d}return function(c,d,e,f){d=v(d,f,4);var g=!C(c)&&u.keys(c),h=(g||c).length,i=a>0?0:h-1;return arguments.length<3&&(e=c[g?g[i]:i],i+=a),b(c,d,e,g,i,h)}}function d(a){return function(b,c,d){c=w(c,d);for(var e=B(b),f=a>0?0:e-1;f>=0&&e>f;f+=a)if(c(b[f],f,b))return f;return-1}}function e(a,b,c){return function(d,e,f){var g=0,h=B(d);if("number"==typeof f)a>0?g=f>=0?f:Math.max(f+h,g):h=f>=0?Math.min(f+1,h):f+h+1;else if(c&&f&&h)return f=c(d,e),d[f]===e?f:-1;if(e!==e)return f=b(m.call(d,g,h),u.isNaN),f>=0?f+g:-1;for(f=a>0?g:h-1;f>=0&&h>f;f+=a)if(d[f]===e)return f;return-1}}function f(a,b){var c=H.length,d=a.constructor,e=u.isFunction(d)&&d.prototype||j,f="constructor";for(u.has(a,f)&&!u.contains(b,f)&&b.push(f);c--;)f=H[c],f in a&&a[f]!==e[f]&&!u.contains(b,f)&&b.push(f)}var g=this,h=g._,i=Array.prototype,j=Object.prototype,k=Function.prototype,l=i.push,m=i.slice,n=j.toString,o=j.hasOwnProperty,p=Array.isArray,q=Object.keys,r=k.bind,s=Object.create,t=function(){},u=function(a){return a instanceof u?a:this instanceof u?void(this._wrapped=a):new u(a)};"undefined"!=typeof a?("undefined"!=typeof b&&b.exports&&(a=b.exports=u),a._=u):g._=u,u.VERSION="1.8.3";var v=function(a,b,c){if(void 0===b)return a;switch(null==c?3:c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)};case 4:return function(c,d,e,f){return a.call(b,c,d,e,f)}}return function(){return a.apply(b,arguments)}},w=function(a,b,c){return null==a?u.identity:u.isFunction(a)?v(a,b,c):u.isObject(a)?u.matcher(a):u.property(a)};u.iteratee=function(a,b){return w(a,b,1/0)};var x=function(a,b){return function(c){var d=arguments.length;if(2>d||null==c)return c;for(var e=1;d>e;e++)for(var f=arguments[e],g=a(f),h=g.length,i=0;h>i;i++){var j=g[i];b&&void 0!==c[j]||(c[j]=f[j])}return c}},y=function(a){if(!u.isObject(a))return{};if(s)return s(a);t.prototype=a;var b=new t;return t.prototype=null,b},z=function(a){return function(b){return null==b?void 0:b[a]}},A=Math.pow(2,53)-1,B=z("length"),C=function(a){var b=B(a);return"number"==typeof b&&b>=0&&A>=b};u.each=u.forEach=function(a,b,c){b=v(b,c);var d,e;if(C(a))for(d=0,e=a.length;e>d;d++)b(a[d],d,a);else{var f=u.keys(a);for(d=0,e=f.length;e>d;d++)b(a[f[d]],f[d],a)}return a},u.map=u.collect=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=Array(e),g=0;e>g;g++){ -var h=d?d[g]:g;f[g]=b(a[h],h,a)}return f},u.reduce=u.foldl=u.inject=c(1),u.reduceRight=u.foldr=c(-1),u.find=u.detect=function(a,b,c){var d;return d=C(a)?u.findIndex(a,b,c):u.findKey(a,b,c),void 0!==d&&-1!==d?a[d]:void 0},u.filter=u.select=function(a,b,c){var d=[];return b=w(b,c),u.each(a,function(a,c,e){b(a,c,e)&&d.push(a)}),d},u.reject=function(a,b,c){return u.filter(a,u.negate(w(b)),c)},u.every=u.all=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(!b(a[g],g,a))return!1}return!0},u.some=u.any=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(b(a[g],g,a))return!0}return!1},u.contains=u.includes=u.include=function(a,b,c,d){return C(a)||(a=u.values(a)),("number"!=typeof c||d)&&(c=0),u.indexOf(a,b,c)>=0},u.invoke=function(a,b){var c=m.call(arguments,2),d=u.isFunction(b);return u.map(a,function(a){var e=d?b:a[b];return null==e?e:e.apply(a,c)})},u.pluck=function(a,b){return u.map(a,u.property(b))},u.where=function(a,b){return u.filter(a,u.matcher(b))},u.findWhere=function(a,b){return u.find(a,u.matcher(b))},u.max=function(a,b,c){var d,e,f=-(1/0),g=-(1/0);if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],d>f&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(e>g||e===-(1/0)&&f===-(1/0))&&(f=a,g=e)});return f},u.min=function(a,b,c){var d,e,f=1/0,g=1/0;if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],f>d&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(g>e||e===1/0&&f===1/0)&&(f=a,g=e)});return f},u.shuffle=function(a){for(var b,c=C(a)?a:u.values(a),d=c.length,e=Array(d),f=0;d>f;f++)b=u.random(0,f),b!==f&&(e[f]=e[b]),e[b]=c[f];return e},u.sample=function(a,b,c){return null==b||c?(C(a)||(a=u.values(a)),a[u.random(a.length-1)]):u.shuffle(a).slice(0,Math.max(0,b))},u.sortBy=function(a,b,c){return b=w(b,c),u.pluck(u.map(a,function(a,c,d){return{value:a,index:c,criteria:b(a,c,d)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;if(c!==d){if(c>d||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.index-b.index}),"value")};var D=function(a){return function(b,c,d){var e={};return c=w(c,d),u.each(b,function(d,f){var g=c(d,f,b);a(e,d,g)}),e}};u.groupBy=D(function(a,b,c){u.has(a,c)?a[c].push(b):a[c]=[b]}),u.indexBy=D(function(a,b,c){a[c]=b}),u.countBy=D(function(a,b,c){u.has(a,c)?a[c]++:a[c]=1}),u.toArray=function(a){return a?u.isArray(a)?m.call(a):C(a)?u.map(a,u.identity):u.values(a):[]},u.size=function(a){return null==a?0:C(a)?a.length:u.keys(a).length},u.partition=function(a,b,c){b=w(b,c);var d=[],e=[];return u.each(a,function(a,c,f){(b(a,c,f)?d:e).push(a)}),[d,e]},u.first=u.head=u.take=function(a,b,c){return null==a?void 0:null==b||c?a[0]:u.initial(a,a.length-b)},u.initial=function(a,b,c){return m.call(a,0,Math.max(0,a.length-(null==b||c?1:b)))},u.last=function(a,b,c){return null==a?void 0:null==b||c?a[a.length-1]:u.rest(a,Math.max(0,a.length-b))},u.rest=u.tail=u.drop=function(a,b,c){return m.call(a,null==b||c?1:b)},u.compact=function(a){return u.filter(a,u.identity)};var E=function(a,b,c,d){for(var e=[],f=0,g=d||0,h=B(a);h>g;g++){var i=a[g];if(C(i)&&(u.isArray(i)||u.isArguments(i))){b||(i=E(i,b,c));var j=0,k=i.length;for(e.length+=k;k>j;)e[f++]=i[j++]}else c||(e[f++]=i)}return e};u.flatten=function(a,b){return E(a,b,!1)},u.without=function(a){return u.difference(a,m.call(arguments,1))},u.uniq=u.unique=function(a,b,c,d){u.isBoolean(b)||(d=c,c=b,b=!1),null!=c&&(c=w(c,d));for(var e=[],f=[],g=0,h=B(a);h>g;g++){var i=a[g],j=c?c(i,g,a):i;b?(g&&f===j||e.push(i),f=j):c?u.contains(f,j)||(f.push(j),e.push(i)):u.contains(e,i)||e.push(i)}return e},u.union=function(){return u.uniq(E(arguments,!0,!0))},u.intersection=function(a){for(var b=[],c=arguments.length,d=0,e=B(a);e>d;d++){var f=a[d];if(!u.contains(b,f)){for(var g=1;c>g&&u.contains(arguments[g],f);g++);g===c&&b.push(f)}}return b},u.difference=function(a){var b=E(arguments,!0,!0,1);return u.filter(a,function(a){return!u.contains(b,a)})},u.zip=function(){return u.unzip(arguments)},u.unzip=function(a){for(var b=a&&u.max(a,B).length||0,c=Array(b),d=0;b>d;d++)c[d]=u.pluck(a,d);return c},u.object=function(a,b){for(var c={},d=0,e=B(a);e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},u.findIndex=d(1),u.findLastIndex=d(-1),u.sortedIndex=function(a,b,c,d){c=w(c,d,1);for(var e=c(b),f=0,g=B(a);g>f;){var h=Math.floor((f+g)/2);c(a[h])f;f++,a+=c)e[f]=a;return e};var F=function(a,b,c,d,e){if(!(d instanceof b))return a.apply(c,e);var f=y(a.prototype),g=a.apply(f,e);return u.isObject(g)?g:f};u.bind=function(a,b){if(r&&a.bind===r)return r.apply(a,m.call(arguments,1));if(!u.isFunction(a))throw new TypeError("Bind must be called on a function");var c=m.call(arguments,2),d=function(){return F(a,d,b,this,c.concat(m.call(arguments)))};return d},u.partial=function(a){var b=m.call(arguments,1),c=function(){for(var d=0,e=b.length,f=Array(e),g=0;e>g;g++)f[g]=b[g]===u?arguments[d++]:b[g];for(;d=d)throw new Error("bindAll must be passed function names");for(b=1;d>b;b++)c=arguments[b],a[c]=u.bind(a[c],a);return a},u.memoize=function(a,b){var c=function(d){var e=c.cache,f=""+(b?b.apply(this,arguments):d);return u.has(e,f)||(e[f]=a.apply(this,arguments)),e[f]};return c.cache={},c},u.delay=function(a,b){var c=m.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},u.defer=u.partial(u.delay,u,1),u.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:u.now(),g=null,f=a.apply(d,e),g||(d=e=null)};return function(){var j=u.now();h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k||k>b?(g&&(clearTimeout(g),g=null),h=j,f=a.apply(d,e),g||(d=e=null)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},u.debounce=function(a,b,c){var d,e,f,g,h,i=function(){var j=u.now()-g;b>j&&j>=0?d=setTimeout(i,b-j):(d=null,c||(h=a.apply(f,e),d||(f=e=null)))};return function(){f=this,e=arguments,g=u.now();var j=c&&!d;return d||(d=setTimeout(i,b)),j&&(h=a.apply(f,e),f=e=null),h}},u.wrap=function(a,b){return u.partial(b,a)},u.negate=function(a){return function(){return!a.apply(this,arguments)}},u.compose=function(){var a=arguments,b=a.length-1;return function(){for(var c=b,d=a[b].apply(this,arguments);c--;)d=a[c].call(this,d);return d}},u.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},u.before=function(a,b){var c;return function(){return--a>0&&(c=b.apply(this,arguments)),1>=a&&(b=null),c}},u.once=u.partial(u.before,2);var G=!{toString:null}.propertyIsEnumerable("toString"),H=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];u.keys=function(a){if(!u.isObject(a))return[];if(q)return q(a);var b=[];for(var c in a)u.has(a,c)&&b.push(c);return G&&f(a,b),b},u.allKeys=function(a){if(!u.isObject(a))return[];var b=[];for(var c in a)b.push(c);return G&&f(a,b),b},u.values=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=a[b[e]];return d},u.mapObject=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=e.length,g={},h=0;f>h;h++)d=e[h],g[d]=b(a[d],d,a);return g},u.pairs=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=[b[e],a[b[e]]];return d},u.invert=function(a){for(var b={},c=u.keys(a),d=0,e=c.length;e>d;d++)b[a[c[d]]]=c[d];return b},u.functions=u.methods=function(a){var b=[];for(var c in a)u.isFunction(a[c])&&b.push(c);return b.sort()},u.extend=x(u.allKeys),u.extendOwn=u.assign=x(u.keys),u.findKey=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=0,g=e.length;g>f;f++)if(d=e[f],b(a[d],d,a))return d},u.pick=function(a,b,c){var d,e,f={},g=a;if(null==g)return f;u.isFunction(b)?(e=u.allKeys(g),d=v(b,c)):(e=E(arguments,!1,!1,1),d=function(a,b,c){return b in c},g=Object(g));for(var h=0,i=e.length;i>h;h++){var j=e[h],k=g[j];d(k,j,g)&&(f[j]=k)}return f},u.omit=function(a,b,c){if(u.isFunction(b))b=u.negate(b);else{var d=u.map(E(arguments,!1,!1,1),String);b=function(a,b){return!u.contains(d,b)}}return u.pick(a,b,c)},u.defaults=x(u.allKeys,!0),u.create=function(a,b){var c=y(a);return b&&u.extendOwn(c,b),c},u.clone=function(a){return u.isObject(a)?u.isArray(a)?a.slice():u.extend({},a):a},u.tap=function(a,b){return b(a),a},u.isMatch=function(a,b){var c=u.keys(b),d=c.length;if(null==a)return!d;for(var e=Object(a),f=0;d>f;f++){var g=c[f];if(b[g]!==e[g]||!(g in e))return!1}return!0};var I=function(a,b,c,d){if(a===b)return 0!==a||1/a===1/b;if(null==a||null==b)return a===b;a instanceof u&&(a=a._wrapped),b instanceof u&&(b=b._wrapped);var e=n.call(a);if(e!==n.call(b))return!1;switch(e){case"[object RegExp]":case"[object String]":return""+a==""+b;case"[object Number]":return+a!==+a?+b!==+b:0===+a?1/+a===1/b:+a===+b;case"[object Date]":case"[object Boolean]":return+a===+b}var f="[object Array]"===e;if(!f){if("object"!=typeof a||"object"!=typeof b)return!1;var g=a.constructor,h=b.constructor;if(g!==h&&!(u.isFunction(g)&&g instanceof g&&u.isFunction(h)&&h instanceof h)&&"constructor"in a&&"constructor"in b)return!1}c=c||[],d=d||[];for(var i=c.length;i--;)if(c[i]===a)return d[i]===b;if(c.push(a),d.push(b),f){if(i=a.length,i!==b.length)return!1;for(;i--;)if(!I(a[i],b[i],c,d))return!1}else{var j,k=u.keys(a);if(i=k.length,u.keys(b).length!==i)return!1;for(;i--;)if(j=k[i],!u.has(b,j)||!I(a[j],b[j],c,d))return!1}return c.pop(),d.pop(),!0};u.isEqual=function(a,b){return I(a,b)},u.isEmpty=function(a){return null==a?!0:C(a)&&(u.isArray(a)||u.isString(a)||u.isArguments(a))?0===a.length:0===u.keys(a).length},u.isElement=function(a){return!(!a||1!==a.nodeType)},u.isArray=p||function(a){return"[object Array]"===n.call(a)},u.isObject=function(a){var b=typeof a;return"function"===b||"object"===b&&!!a},u.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(a){u["is"+a]=function(b){return n.call(b)==="[object "+a+"]"}}),u.isArguments(arguments)||(u.isArguments=function(a){return u.has(a,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(u.isFunction=function(a){return"function"==typeof a||!1}),u.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},u.isNaN=function(a){return u.isNumber(a)&&a!==+a},u.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"===n.call(a)},u.isNull=function(a){return null===a},u.isUndefined=function(a){return void 0===a},u.has=function(a,b){return null!=a&&o.call(a,b)},u.noConflict=function(){return g._=h,this},u.identity=function(a){return a},u.constant=function(a){return function(){return a}},u.noop=function(){},u.property=z,u.propertyOf=function(a){return null==a?function(){}:function(b){return a[b]}},u.matcher=u.matches=function(a){return a=u.extendOwn({},a),function(b){return u.isMatch(b,a)}},u.times=function(a,b,c){var d=Array(Math.max(0,a));b=v(b,c,1);for(var e=0;a>e;e++)d[e]=b(e);return d},u.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))},u.now=Date.now||function(){return(new Date).getTime()};var J={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},K=u.invert(J),L=function(a){var b=function(b){return a[b]},c="(?:"+u.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}};u.escape=L(J),u.unescape=L(K),u.result=function(a,b,c){var d=null==a?void 0:a[b];return void 0===d&&(d=c),u.isFunction(d)?d.call(a):d};var M=0;u.uniqueId=function(a){var b=++M+"";return a?a+b:b},u.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var N=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},P=/\\|'|\r|\n|\u2028|\u2029/g,Q=function(a){return"\\"+O[a]};u.template=function(a,b,c){!b&&c&&(b=c),b=u.defaults({},b,u.templateSettings);var d=RegExp([(b.escape||N).source,(b.interpolate||N).source,(b.evaluate||N).source].join("|")+"|$","g"),e=0,f="__p+='";a.replace(d,function(b,c,d,g,h){return f+=a.slice(e,h).replace(P,Q),e=h+b.length,c?f+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'":d?f+="'+\n((__t=("+d+"))==null?'':__t)+\n'":g&&(f+="';\n"+g+"\n__p+='"),b}),f+="';\n",b.variable||(f="with(obj||{}){\n"+f+"}\n"),f="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+f+"return __p;\n";try{var g=new Function(b.variable||"obj","_",f)}catch(h){throw h.source=f,h}var i=function(a){return g.call(this,a,u)},j=b.variable||"obj";return i.source="function("+j+"){\n"+f+"}",i},u.chain=function(a){var b=u(a);return b._chain=!0,b};var R=function(a,b){return a._chain?u(b).chain():b};u.mixin=function(a){u.each(u.functions(a),function(b){var c=u[b]=a[b];u.prototype[b]=function(){var a=[this._wrapped];return l.apply(a,arguments),R(this,c.apply(u,a))}})},u.mixin(u),u.each(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=i[a];u.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!==a&&"splice"!==a||0!==c.length||delete c[0],R(this,c)}}),u.each(["concat","join","slice"],function(a){var b=i[a];u.prototype[a]=function(){return R(this,b.apply(this._wrapped,arguments))}}),u.prototype.value=function(){return this._wrapped},u.prototype.valueOf=u.prototype.toJSON=u.prototype.value,u.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return u})}).call(this)}),module.define("org/arangodb/aql/explainer",function(a,b){function c(a){"use strict";["COLOR_RESET","COLOR_CYAN","COLOR_BLUE","COLOR_GREEN","COLOR_MAGENTA","COLOR_YELLOW","COLOR_RED","COLOR_WHITE","COLOR_BOLD_CYAN","COLOR_BOLD_BLUE","COLOR_BOLD_GREEN","COLOR_BOLD_MAGENTA","COLOR_BOLD_YELLOW","COLOR_BOLD_RED","COLOR_BOLD_WHITE"].forEach(function(b){A[b]=a?y[b]:""})}function d(a){"use strict";return"`"+a+"`"}function e(a){"use strict";return A.COLOR_CYAN+a+A.COLOR_RESET}function f(a){"use strict";return A.COLOR_BLUE+a+A.COLOR_RESET}function g(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function h(a){"use strict";return"#"===a[0]?A.COLOR_MAGENTA+a+A.COLOR_RESET:A.COLOR_YELLOW+a+A.COLOR_RESET}function i(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function j(a){"use strict";return A.COLOR_RED+a+A.COLOR_RESET}function k(a){"use strict";return"`"+A.COLOR_YELLOW+a+A.COLOR_RESET+"`"}function l(a){"use strict";return A.COLOR_MAGENTA+a+A.COLOR_RESET}function m(a){"use strict";return A.COLOR_BOLD_BLUE+a+A.COLOR_RESET}function n(a){"use strict";return 0>a&&(a=0),new Array(a).join(" ")}function o(a,b){"use strict";var c=".{1,"+b+"}(\\s|$)|\\S+?(\\s|$)";return a.match(new RegExp(c,"g")).join("\n")}function p(a){"use strict";B.appendLine(m("Query string:")),B.appendLine(" "+g(o(a,100).replace(/\n+/g,"\n ",a))),B.appendLine()}function q(a){"use strict";if(void 0!==a){B.appendLine(m("Write query options:"));var b=Object.keys(a),c="Option".length;b.forEach(function(a){a.length>c&&(c=a.length)}),B.appendLine(" "+l("Option")+n(1+c-"Option".length)+" "+l("Value")),b.forEach(function(b){B.appendLine(" "+e(b)+n(1+c-b.length)+" "+g(JSON.stringify(a[b])))}),B.appendLine()}}function r(a){"use strict";if(B.appendLine(m("Optimization rules applied:")),0===a.length)B.appendLine(" "+g("none"));else{var b=String("Id").length;B.appendLine(" "+n(1+b-String("Id").length)+l("Id")+" "+l("RuleName"));for(var c=0;cb&&(b=e),e=a.type.length,e>o&&(o=e),e=a.fields.map(d).join(", ").length,e>q&&(q=e),e=a.collection.length,e>c&&(c=e)});var r=" "+n(1+b-String("Id").length)+l("Id")+" "+l("Type")+n(1+o-"Type".length)+" "+l("Collection")+n(1+c-"Collection".length)+" "+l("Unique")+n(1+f-"Unique".length)+" "+l("Sparse")+n(1+i-"Sparse".length)+" "+l("Selectivity Est.")+" "+l("Fields")+n(1+q-"Fields".length)+" "+l("Ranges");B.appendLine(r);for(var s=0;sv&&(v=String(a.id).length),String(a.type).length>u&&(u=String(a.type).length),String(a.estimatedNrItems).length>w&&(w=String(a.estimatedNrItems).length)})};y(x.nodes,0);var z,A={},C={},D={},E=[],F=!0,G=function(a){return/^[0-9_]/.test(a.name)?h("#"+a.name):(C.hasOwnProperty(a.id)&&(D[a.name]=C[a.id]),h(a.name))},H=function(a){switch(F=F&&-1!==["value","object","object element","array"].indexOf(a.type),a.type){case"reference":if(A.hasOwnProperty(a.name)){var b=A[a.name];if(delete A[a.name],Array.isArray(b)){var c=H(b[1])+"["+new Array(b[0]+1).join("*");return"no-op"!==b[2].type&&(c+=" "+e("FILTER")+" "+H(b[2])),"no-op"!==b[3].type&&(c+=" "+e("LIMIT ")+" "+H(b[3])),"no-op"!==b[4].type&&(c+=" "+e("RETURN ")+" "+H(b[4])),c+="]"}return H(b)+"[*]"}return G(a);case"collection":return j(a.name)+" "+f("/* all collection documents */");case"value":return g(JSON.stringify(a.value));case"object":return a.hasOwnProperty("subNodes")?"{ "+a.subNodes.map(H).join(", ")+" }":"{ }";case"object element":return g(JSON.stringify(a.name))+" : "+H(a.subNodes[0]);case"calculated object element":return"[ "+H(a.subNodes[0])+" ] : "+H(a.subNodes[1]);case"array":return a.hasOwnProperty("subNodes")?"[ "+a.subNodes.map(H).join(", ")+" ]":"[ ]";case"unary not":return"! "+H(a.subNodes[0]);case"unary plus":return"+ "+H(a.subNodes[0]);case"unary minus":return"- "+H(a.subNodes[0]);case"array limit":return H(a.subNodes[0])+", "+H(a.subNodes[1]);case"attribute access":return H(a.subNodes[0])+"."+k(a.name);case"indexed access":return H(a.subNodes[0])+"["+H(a.subNodes[1])+"]";case"range":return H(a.subNodes[0])+" .. "+H(a.subNodes[1])+" "+f("/* range */");case"expand":case"expansion":return a.subNodes.length>2?A[a.subNodes[0].subNodes[0].name]=[a.levels,a.subNodes[0].subNodes[1],a.subNodes[2],a.subNodes[3],a.subNodes[4]]:A[a.subNodes[0].subNodes[0].name]=a.subNodes[0].subNodes[1],H(a.subNodes[1]);case"verticalizer":return H(a.subNodes[0]);case"user function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+") "+f("/* user-defined function */");case"function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+")";case"plus":return H(a.subNodes[0])+" + "+H(a.subNodes[1]);case"minus":return H(a.subNodes[0])+" - "+H(a.subNodes[1]);case"times":return H(a.subNodes[0])+" * "+H(a.subNodes[1]);case"division":return H(a.subNodes[0])+" / "+H(a.subNodes[1]);case"modulus":return H(a.subNodes[0])+" % "+H(a.subNodes[1]);case"compare not in":return H(a.subNodes[0])+" not in "+H(a.subNodes[1]);case"compare in":return H(a.subNodes[0])+" in "+H(a.subNodes[1]);case"compare ==":return H(a.subNodes[0])+" == "+H(a.subNodes[1]);case"compare !=":return H(a.subNodes[0])+" != "+H(a.subNodes[1]);case"compare >":return H(a.subNodes[0])+" > "+H(a.subNodes[1]);case"compare >=":return H(a.subNodes[0])+" >= "+H(a.subNodes[1]);case"compare <":return H(a.subNodes[0])+" < "+H(a.subNodes[1]);case"compare <=":return H(a.subNodes[0])+" <= "+H(a.subNodes[1]);case"logical or":return H(a.subNodes[0])+" || "+H(a.subNodes[1]);case"logical and":return H(a.subNodes[0])+" && "+H(a.subNodes[1]);case"ternary":return H(a.subNodes[0])+" ? "+H(a.subNodes[1])+" : "+H(a.subNodes[2]);default:return"unhandled node type ("+a.type+")"}},I=function(a,b,c){var d=c.isConstant?g(JSON.stringify(c.bound)):H(c.bound);return k(a)+" "+b[c.include?1:0]+" "+d},J=function(a){var b=[];return a.forEach(function(a){var c=a.attr;a.lowConst.hasOwnProperty("bound")&&a.highConst.hasOwnProperty("bound")&&JSON.stringify(a.lowConst.bound)===JSON.stringify(a.highConst.bound)&&(a.equality=!0),a.equality?a.lowConst.hasOwnProperty("bound")?b.push(I(c,["==","=="],a.lowConst)):a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,["==","=="],a))}):(a.lowConst.hasOwnProperty("bound")&&b.push(I(c,[">",">="],a.lowConst)),a.highConst.hasOwnProperty("bound")&&b.push(I(c,["<","<="],a.highConst)),a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,[">",">="],a))}),a.hasOwnProperty("highs")&&a.highs.forEach(function(a){b.push(I(c,["<","<="],a))}))}),b.length>1?"("+b.join(" && ")+")":b[0]},K=function(a){switch(a.type){case"SingletonNode":return e("ROOT");case"NoResultsNode":return e("EMPTY")+" "+f("/* empty result set */");case"EnumerateCollectionNode":return C[a.outVariable.id]=a.collection,e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* full collection scan"+(a.random?", random order":"")+" */");case"EnumerateListNode":return e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+G(a.inVariable)+" "+f("/* list iteration */");case"IndexRangeNode":C[a.outVariable.id]=a.collection;var b=a.index;return b.ranges=a.ranges.map(J).join(" || "),b.collection=a.collection,b.node=a.id,E.push(b),e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* "+(a.reverse?"reverse ":"")+a.index.type+" index scan */");case"CalculationNode":return e("LET")+" "+G(a.outVariable)+" = "+H(a.expression)+" "+f("/* "+a.expressionType+" expression */");case"FilterNode":return e("FILTER")+" "+G(a.inVariable);case"AggregateNode":return e("COLLECT")+" "+a.aggregates.map(function(a){return G(a.outVariable)+" = "+G(a.inVariable)}).join(", ")+(a.count?" "+e("WITH COUNT"):"")+(a.outVariable?" "+e("INTO")+" "+G(a.outVariable):"")+(a.keepVariables?" "+e("KEEP")+" "+a.keepVariables.map(function(a){return G(a)}).join(", "):"")+" "+f("/* "+a.aggregationOptions.method+"*/");case"SortNode":return e("SORT")+" "+a.elements.map(function(a){return G(a.inVariable)+" "+e(a.ascending?"ASC":"DESC")}).join(", ");case"LimitNode":return e("LIMIT")+" "+g(JSON.stringify(a.offset))+", "+g(JSON.stringify(a.limit));case"ReturnNode":return e("RETURN")+" "+G(a.inVariable);case"SubqueryNode":return e("LET")+" "+G(a.outVariable)+" = ... "+f("/* subquery */");case"InsertNode":return z=a.modificationFlags,e("INSERT")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"UpdateNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("UPDATE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("UPDATE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"ReplaceNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("REPLACE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("REPLACE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"UpsertNode":return z=a.modificationFlags,e("UPSERT")+" "+G(a.inDocVariable)+" "+e("INSERT")+" "+G(a.insertVariable)+" "+e(a.isReplace?"REPLACE":"UPDATE")+G(a.updateVariable)+" "+e("IN")+" "+j(a.collection);case"RemoveNode":return z=a.modificationFlags,e("REMOVE")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"RemoteNode":return e("REMOTE");case"DistributeNode":return e("DISTRIBUTE");case"ScatterNode":return e("SCATTER");case"GatherNode":return e("GATHER")}return"unhandled node type ("+a.type+")"},L=0,M=[],N=function(a,b){return n(1+a+a)+(b?"* ":"- ")},O=function(a){D={},F=!0,"SubqueryNode"===a.type&&M.push(L)},P=function(a){-1!==["EnumerateCollectionNode","EnumerateListNode","IndexRangeNode","SubqueryNode"].indexOf(a.type)?L++:"ReturnNode"===a.type&&M.length>0?L=M.pop():"SingletonNode"===a.type&&L++},Q=function(){return F?" "+f("/* const assignment */"):""},R=function(){var a=[];for(var b in D)D.hasOwnProperty(b)&&a.push(h(b)+" : "+j(D[b]));return a.length>0?" "+f("/* collections used:")+" "+a.join(", ")+" "+f("*/"):""},S=function(a){O(a);var b=" "+n(1+v-String(a.id).length)+h(a.id)+" "+e(a.type)+n(1+u-String(a.type).length)+" "+n(1+w-String(a.estimatedNrItems).length)+g(a.estimatedNrItems)+" "+N(L,"SingletonNode"===a.type)+K(a);"CalculationNode"===a.type&&(b+=R()+Q()),B.appendLine(b),P(a)};p(a),B.appendLine(m("Execution plan:"));var T=" "+n(1+v-String("Id").length)+l("Id")+" "+l("NodeType")+n(1+u-String("NodeType").length)+" "+n(1+w-String("Est.").length)+l("Est.")+" "+l("Comment");B.appendLine(T);for(var U=[o];U.length>0;){var V=U.pop(),W=c[V];S(W),d.hasOwnProperty(V)&&(U=U.concat(d[V])),"SubqueryNode"===W.type&&(U=U.concat([W.subquery.nodes[0].id]))}B.appendLine(),t(E),B.appendLine(),r(x.rules),q(z),s(b.warnings)}function v(a,b,d){"use strict";if("string"==typeof a&&(a={query:a}),!(a instanceof Object))throw"ArangoStatement needs initial data";b=b||{},c(void 0===b.colors?!0:b.colors);var e=w._createStatement(a),f=e.explain(b);return B.clearOutput(),u(a.query,f,!0),void 0===d||d?void z(B.getOutput()):B.getOutput()}var w=require("org/arangodb").db,x=require("internal"),y=x.COLORS,z=x.print,A={};"function"==typeof x.printBrowser&&(z=x.printBrowser);var B={output:"",appendLine:function(a){a?this.output+=a+"\n":this.output+="\n"},getOutput:function(){return this.output},clearOutput:function(){this.output=""}};a.explain=v}),module.define("org/arangodb/aql/functions",function(a,b){var c=require("internal"),d=require("org/arangodb"),e=d.db,f=d.ArangoError,g=function(){"use strict";var a=e._collection("_aqlfunctions");if(null===a){var b=new f;throw b.errorNum=d.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code,b.errorMessage="collection '_aqlfunctions' not found",b}return a},h=function(a){"use strict";var b=[];if(null!==a&&void 0!==a&&a.length>0){var c=a.toUpperCase();a.length>1&&"::"!==a.substr(a.length-2,2)&&(c+="::"),g().toArray().forEach(function(a){a.name.toUpperCase().substr(0,c.length)===c&&b.push(a)})}else b=g().toArray();return b},i=function(a){"use strict";if("string"!=typeof a||!a.match(/^[a-zA-Z0-9_]+(::[a-zA-Z0-9_]+)+$/)||"_"===a.substr(0,1)){var b=new f;throw b.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.code,b.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.message,b}},j=function(a,b){"use strict";if("function"==typeof a&&(a=String(a)+"\n"),"string"==typeof a){if(a="("+a+"\n)",!c.parse)return a;try{if(c.parse(a,b))return a}catch(e){}}var g=new f;throw g.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,g.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,g},k=function(a){"use strict";var b=null;i(a);try{b=g().document(a.toUpperCase())}catch(e){}if(null===b){var h=new f;throw h.errorNum=d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.code,h.errorMessage=c.sprintf(d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.message,a),h}return g().remove(b._id),c.reloadAqlFunctions(),!0},l=function(a){"use strict";if(0===a.length){var b=new f;throw b.errorNum=d.errors.ERROR_BAD_PARAMETER.code,b.errorMessage=d.errors.ERROR_BAD_PARAMETER.message,b}var e=0;return h(a).forEach(function(a){g().remove(a._id),e++}),e>0&&c.reloadAqlFunctions(),e},m=function(a,b,h){i(a),b=j(b,a);var k,l="(function() { var callback = "+b+"; return callback; })()";try{if(c&&c.hasOwnProperty("executeScript")){var m=c.executeScript(l,void 0,"(user function "+a+")");if("function"!=typeof m)throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message+": code must be contained in function",k}}catch(n){throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,k}var o=e._executeTransaction({collections:{write:g().name()},action:function(a){var b=!1,c=require("internal").db._collection(a.collection),d=a.name;try{var e=c.document(d.toUpperCase());null!==e&&(c.remove(e._key),b=!0)}catch(f){}var g={_key:d.toUpperCase(),name:d,code:a.code,isDeterministic:a.isDeterministic||!1};return c.save(g),b},params:{name:a,code:b,isDeterministic:h,collection:g().name()}});return c.reloadAqlFunctions(),o},n=function(a){"use strict";var b=[];return h(a).forEach(function(a){b.push({name:a.name,code:a.code.substr(1,a.code.length-2).trim()})}),b};a.unregister=k,a.unregisterGroup=l,a.register=m,a.toArray=n}),module.define("org/arangodb/aql/queries",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh");a.clearSlow=function(){var a=c.db,b=a._connection.DELETE("/_api/query/slow","");return d.checkRequestResult(b),b},a.slow=function(){var a=c.db,b=a._connection.GET("/_api/query/slow","");return d.checkRequestResult(b),b},a.current=function(){var a=c.db,b=a._connection.GET("/_api/query/current","");return d.checkRequestResult(b),b},a.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/query/properties"):e._connection.PUT("/_api/query/properties",JSON.stringify(a)),d.checkRequestResult(b),b},a.kill=function(a){"object"==typeof a&&a.hasOwnProperty("id")&&(a=a.id);var b=c.db,e=b._connection.DELETE("/_api/query/"+encodeURIComponent(a),"");return d.checkRequestResult(e),e}}),module.define("org/arangodb/graph/traversal",function(a,b){function c(a){if(null===a||"object"!=typeof a)return a;var b;if(Array.isArray(a))b=[],a.forEach(function(a){b.push(c(a))});else if(a instanceof Object){if(J&&a instanceof J)return a;b={},Object.keys(a).forEach(function(d){b[d]=c(a[d])})}return b}function d(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function e(a){var b=a;"string"==typeof b&&(b=K._collection(b));var c="object"==typeof ArangoClusterComm;return c&&require("org/arangodb/cluster").isCoordinator()&&(c=!1),{edgeCollection:b,useBuiltIn:c,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from)},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.useBuiltIn?this.edgeCollection.EDGES(a._id):this.edgeCollection.edges(a._id)},getInEdges:function(a){return this.useBuiltIn?this.edgeCollection.INEDGES(a._id):this.edgeCollection.inEdges(a._id)},getOutEdges:function(a){return this.useBuiltIn?this.edgeCollection.OUTEDGES(a._id):this.edgeCollection.outEdges(a._id)}}}function f(a){var b=a;return"string"==typeof b&&(b=F._graph(b)),{graph:b,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from); +var h=d?d[g]:g;f[g]=b(a[h],h,a)}return f},u.reduce=u.foldl=u.inject=c(1),u.reduceRight=u.foldr=c(-1),u.find=u.detect=function(a,b,c){var d;return d=C(a)?u.findIndex(a,b,c):u.findKey(a,b,c),void 0!==d&&-1!==d?a[d]:void 0},u.filter=u.select=function(a,b,c){var d=[];return b=w(b,c),u.each(a,function(a,c,e){b(a,c,e)&&d.push(a)}),d},u.reject=function(a,b,c){return u.filter(a,u.negate(w(b)),c)},u.every=u.all=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(!b(a[g],g,a))return!1}return!0},u.some=u.any=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(b(a[g],g,a))return!0}return!1},u.contains=u.includes=u.include=function(a,b,c,d){return C(a)||(a=u.values(a)),("number"!=typeof c||d)&&(c=0),u.indexOf(a,b,c)>=0},u.invoke=function(a,b){var c=m.call(arguments,2),d=u.isFunction(b);return u.map(a,function(a){var e=d?b:a[b];return null==e?e:e.apply(a,c)})},u.pluck=function(a,b){return u.map(a,u.property(b))},u.where=function(a,b){return u.filter(a,u.matcher(b))},u.findWhere=function(a,b){return u.find(a,u.matcher(b))},u.max=function(a,b,c){var d,e,f=-(1/0),g=-(1/0);if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],d>f&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(e>g||e===-(1/0)&&f===-(1/0))&&(f=a,g=e)});return f},u.min=function(a,b,c){var d,e,f=1/0,g=1/0;if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],f>d&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(g>e||e===1/0&&f===1/0)&&(f=a,g=e)});return f},u.shuffle=function(a){for(var b,c=C(a)?a:u.values(a),d=c.length,e=Array(d),f=0;d>f;f++)b=u.random(0,f),b!==f&&(e[f]=e[b]),e[b]=c[f];return e},u.sample=function(a,b,c){return null==b||c?(C(a)||(a=u.values(a)),a[u.random(a.length-1)]):u.shuffle(a).slice(0,Math.max(0,b))},u.sortBy=function(a,b,c){return b=w(b,c),u.pluck(u.map(a,function(a,c,d){return{value:a,index:c,criteria:b(a,c,d)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;if(c!==d){if(c>d||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.index-b.index}),"value")};var D=function(a){return function(b,c,d){var e={};return c=w(c,d),u.each(b,function(d,f){var g=c(d,f,b);a(e,d,g)}),e}};u.groupBy=D(function(a,b,c){u.has(a,c)?a[c].push(b):a[c]=[b]}),u.indexBy=D(function(a,b,c){a[c]=b}),u.countBy=D(function(a,b,c){u.has(a,c)?a[c]++:a[c]=1}),u.toArray=function(a){return a?u.isArray(a)?m.call(a):C(a)?u.map(a,u.identity):u.values(a):[]},u.size=function(a){return null==a?0:C(a)?a.length:u.keys(a).length},u.partition=function(a,b,c){b=w(b,c);var d=[],e=[];return u.each(a,function(a,c,f){(b(a,c,f)?d:e).push(a)}),[d,e]},u.first=u.head=u.take=function(a,b,c){return null==a?void 0:null==b||c?a[0]:u.initial(a,a.length-b)},u.initial=function(a,b,c){return m.call(a,0,Math.max(0,a.length-(null==b||c?1:b)))},u.last=function(a,b,c){return null==a?void 0:null==b||c?a[a.length-1]:u.rest(a,Math.max(0,a.length-b))},u.rest=u.tail=u.drop=function(a,b,c){return m.call(a,null==b||c?1:b)},u.compact=function(a){return u.filter(a,u.identity)};var E=function(a,b,c,d){for(var e=[],f=0,g=d||0,h=B(a);h>g;g++){var i=a[g];if(C(i)&&(u.isArray(i)||u.isArguments(i))){b||(i=E(i,b,c));var j=0,k=i.length;for(e.length+=k;k>j;)e[f++]=i[j++]}else c||(e[f++]=i)}return e};u.flatten=function(a,b){return E(a,b,!1)},u.without=function(a){return u.difference(a,m.call(arguments,1))},u.uniq=u.unique=function(a,b,c,d){u.isBoolean(b)||(d=c,c=b,b=!1),null!=c&&(c=w(c,d));for(var e=[],f=[],g=0,h=B(a);h>g;g++){var i=a[g],j=c?c(i,g,a):i;b?(g&&f===j||e.push(i),f=j):c?u.contains(f,j)||(f.push(j),e.push(i)):u.contains(e,i)||e.push(i)}return e},u.union=function(){return u.uniq(E(arguments,!0,!0))},u.intersection=function(a){for(var b=[],c=arguments.length,d=0,e=B(a);e>d;d++){var f=a[d];if(!u.contains(b,f)){for(var g=1;c>g&&u.contains(arguments[g],f);g++);g===c&&b.push(f)}}return b},u.difference=function(a){var b=E(arguments,!0,!0,1);return u.filter(a,function(a){return!u.contains(b,a)})},u.zip=function(){return u.unzip(arguments)},u.unzip=function(a){for(var b=a&&u.max(a,B).length||0,c=Array(b),d=0;b>d;d++)c[d]=u.pluck(a,d);return c},u.object=function(a,b){for(var c={},d=0,e=B(a);e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},u.findIndex=d(1),u.findLastIndex=d(-1),u.sortedIndex=function(a,b,c,d){c=w(c,d,1);for(var e=c(b),f=0,g=B(a);g>f;){var h=Math.floor((f+g)/2);c(a[h])f;f++,a+=c)e[f]=a;return e};var F=function(a,b,c,d,e){if(!(d instanceof b))return a.apply(c,e);var f=y(a.prototype),g=a.apply(f,e);return u.isObject(g)?g:f};u.bind=function(a,b){if(r&&a.bind===r)return r.apply(a,m.call(arguments,1));if(!u.isFunction(a))throw new TypeError("Bind must be called on a function");var c=m.call(arguments,2),d=function(){return F(a,d,b,this,c.concat(m.call(arguments)))};return d},u.partial=function(a){var b=m.call(arguments,1),c=function(){for(var d=0,e=b.length,f=Array(e),g=0;e>g;g++)f[g]=b[g]===u?arguments[d++]:b[g];for(;d=d)throw new Error("bindAll must be passed function names");for(b=1;d>b;b++)c=arguments[b],a[c]=u.bind(a[c],a);return a},u.memoize=function(a,b){var c=function(d){var e=c.cache,f=""+(b?b.apply(this,arguments):d);return u.has(e,f)||(e[f]=a.apply(this,arguments)),e[f]};return c.cache={},c},u.delay=function(a,b){var c=m.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},u.defer=u.partial(u.delay,u,1),u.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:u.now(),g=null,f=a.apply(d,e),g||(d=e=null)};return function(){var j=u.now();h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k||k>b?(g&&(clearTimeout(g),g=null),h=j,f=a.apply(d,e),g||(d=e=null)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},u.debounce=function(a,b,c){var d,e,f,g,h,i=function(){var j=u.now()-g;b>j&&j>=0?d=setTimeout(i,b-j):(d=null,c||(h=a.apply(f,e),d||(f=e=null)))};return function(){f=this,e=arguments,g=u.now();var j=c&&!d;return d||(d=setTimeout(i,b)),j&&(h=a.apply(f,e),f=e=null),h}},u.wrap=function(a,b){return u.partial(b,a)},u.negate=function(a){return function(){return!a.apply(this,arguments)}},u.compose=function(){var a=arguments,b=a.length-1;return function(){for(var c=b,d=a[b].apply(this,arguments);c--;)d=a[c].call(this,d);return d}},u.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},u.before=function(a,b){var c;return function(){return--a>0&&(c=b.apply(this,arguments)),1>=a&&(b=null),c}},u.once=u.partial(u.before,2);var G=!{toString:null}.propertyIsEnumerable("toString"),H=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];u.keys=function(a){if(!u.isObject(a))return[];if(q)return q(a);var b=[];for(var c in a)u.has(a,c)&&b.push(c);return G&&f(a,b),b},u.allKeys=function(a){if(!u.isObject(a))return[];var b=[];for(var c in a)b.push(c);return G&&f(a,b),b},u.values=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=a[b[e]];return d},u.mapObject=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=e.length,g={},h=0;f>h;h++)d=e[h],g[d]=b(a[d],d,a);return g},u.pairs=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=[b[e],a[b[e]]];return d},u.invert=function(a){for(var b={},c=u.keys(a),d=0,e=c.length;e>d;d++)b[a[c[d]]]=c[d];return b},u.functions=u.methods=function(a){var b=[];for(var c in a)u.isFunction(a[c])&&b.push(c);return b.sort()},u.extend=x(u.allKeys),u.extendOwn=u.assign=x(u.keys),u.findKey=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=0,g=e.length;g>f;f++)if(d=e[f],b(a[d],d,a))return d},u.pick=function(a,b,c){var d,e,f={},g=a;if(null==g)return f;u.isFunction(b)?(e=u.allKeys(g),d=v(b,c)):(e=E(arguments,!1,!1,1),d=function(a,b,c){return b in c},g=Object(g));for(var h=0,i=e.length;i>h;h++){var j=e[h],k=g[j];d(k,j,g)&&(f[j]=k)}return f},u.omit=function(a,b,c){if(u.isFunction(b))b=u.negate(b);else{var d=u.map(E(arguments,!1,!1,1),String);b=function(a,b){return!u.contains(d,b)}}return u.pick(a,b,c)},u.defaults=x(u.allKeys,!0),u.create=function(a,b){var c=y(a);return b&&u.extendOwn(c,b),c},u.clone=function(a){return u.isObject(a)?u.isArray(a)?a.slice():u.extend({},a):a},u.tap=function(a,b){return b(a),a},u.isMatch=function(a,b){var c=u.keys(b),d=c.length;if(null==a)return!d;for(var e=Object(a),f=0;d>f;f++){var g=c[f];if(b[g]!==e[g]||!(g in e))return!1}return!0};var I=function(a,b,c,d){if(a===b)return 0!==a||1/a===1/b;if(null==a||null==b)return a===b;a instanceof u&&(a=a._wrapped),b instanceof u&&(b=b._wrapped);var e=n.call(a);if(e!==n.call(b))return!1;switch(e){case"[object RegExp]":case"[object String]":return""+a==""+b;case"[object Number]":return+a!==+a?+b!==+b:0===+a?1/+a===1/b:+a===+b;case"[object Date]":case"[object Boolean]":return+a===+b}var f="[object Array]"===e;if(!f){if("object"!=typeof a||"object"!=typeof b)return!1;var g=a.constructor,h=b.constructor;if(g!==h&&!(u.isFunction(g)&&g instanceof g&&u.isFunction(h)&&h instanceof h)&&"constructor"in a&&"constructor"in b)return!1}c=c||[],d=d||[];for(var i=c.length;i--;)if(c[i]===a)return d[i]===b;if(c.push(a),d.push(b),f){if(i=a.length,i!==b.length)return!1;for(;i--;)if(!I(a[i],b[i],c,d))return!1}else{var j,k=u.keys(a);if(i=k.length,u.keys(b).length!==i)return!1;for(;i--;)if(j=k[i],!u.has(b,j)||!I(a[j],b[j],c,d))return!1}return c.pop(),d.pop(),!0};u.isEqual=function(a,b){return I(a,b)},u.isEmpty=function(a){return null==a?!0:C(a)&&(u.isArray(a)||u.isString(a)||u.isArguments(a))?0===a.length:0===u.keys(a).length},u.isElement=function(a){return!(!a||1!==a.nodeType)},u.isArray=p||function(a){return"[object Array]"===n.call(a)},u.isObject=function(a){var b=typeof a;return"function"===b||"object"===b&&!!a},u.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(a){u["is"+a]=function(b){return n.call(b)==="[object "+a+"]"}}),u.isArguments(arguments)||(u.isArguments=function(a){return u.has(a,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(u.isFunction=function(a){return"function"==typeof a||!1}),u.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},u.isNaN=function(a){return u.isNumber(a)&&a!==+a},u.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"===n.call(a)},u.isNull=function(a){return null===a},u.isUndefined=function(a){return void 0===a},u.has=function(a,b){return null!=a&&o.call(a,b)},u.noConflict=function(){return g._=h,this},u.identity=function(a){return a},u.constant=function(a){return function(){return a}},u.noop=function(){},u.property=z,u.propertyOf=function(a){return null==a?function(){}:function(b){return a[b]}},u.matcher=u.matches=function(a){return a=u.extendOwn({},a),function(b){return u.isMatch(b,a)}},u.times=function(a,b,c){var d=Array(Math.max(0,a));b=v(b,c,1);for(var e=0;a>e;e++)d[e]=b(e);return d},u.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))},u.now=Date.now||function(){return(new Date).getTime()};var J={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},K=u.invert(J),L=function(a){var b=function(b){return a[b]},c="(?:"+u.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}};u.escape=L(J),u.unescape=L(K),u.result=function(a,b,c){var d=null==a?void 0:a[b];return void 0===d&&(d=c),u.isFunction(d)?d.call(a):d};var M=0;u.uniqueId=function(a){var b=++M+"";return a?a+b:b},u.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var N=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},P=/\\|'|\r|\n|\u2028|\u2029/g,Q=function(a){return"\\"+O[a]};u.template=function(a,b,c){!b&&c&&(b=c),b=u.defaults({},b,u.templateSettings);var d=RegExp([(b.escape||N).source,(b.interpolate||N).source,(b.evaluate||N).source].join("|")+"|$","g"),e=0,f="__p+='";a.replace(d,function(b,c,d,g,h){return f+=a.slice(e,h).replace(P,Q),e=h+b.length,c?f+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'":d?f+="'+\n((__t=("+d+"))==null?'':__t)+\n'":g&&(f+="';\n"+g+"\n__p+='"),b}),f+="';\n",b.variable||(f="with(obj||{}){\n"+f+"}\n"),f="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+f+"return __p;\n";try{var g=new Function(b.variable||"obj","_",f)}catch(h){throw h.source=f,h}var i=function(a){return g.call(this,a,u)},j=b.variable||"obj";return i.source="function("+j+"){\n"+f+"}",i},u.chain=function(a){var b=u(a);return b._chain=!0,b};var R=function(a,b){return a._chain?u(b).chain():b};u.mixin=function(a){u.each(u.functions(a),function(b){var c=u[b]=a[b];u.prototype[b]=function(){var a=[this._wrapped];return l.apply(a,arguments),R(this,c.apply(u,a))}})},u.mixin(u),u.each(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=i[a];u.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!==a&&"splice"!==a||0!==c.length||delete c[0],R(this,c)}}),u.each(["concat","join","slice"],function(a){var b=i[a];u.prototype[a]=function(){return R(this,b.apply(this._wrapped,arguments))}}),u.prototype.value=function(){return this._wrapped},u.prototype.valueOf=u.prototype.toJSON=u.prototype.value,u.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return u})}).call(this)}),module.define("org/arangodb/aql/explainer",function(a,b){function c(a){"use strict";["COLOR_RESET","COLOR_CYAN","COLOR_BLUE","COLOR_GREEN","COLOR_MAGENTA","COLOR_YELLOW","COLOR_RED","COLOR_WHITE","COLOR_BOLD_CYAN","COLOR_BOLD_BLUE","COLOR_BOLD_GREEN","COLOR_BOLD_MAGENTA","COLOR_BOLD_YELLOW","COLOR_BOLD_RED","COLOR_BOLD_WHITE"].forEach(function(b){A[b]=a?y[b]:""})}function d(a){"use strict";return"`"+a+"`"}function e(a){"use strict";return A.COLOR_CYAN+a+A.COLOR_RESET}function f(a){"use strict";return A.COLOR_BLUE+a+A.COLOR_RESET}function g(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function h(a){"use strict";return"#"===a[0]?A.COLOR_MAGENTA+a+A.COLOR_RESET:A.COLOR_YELLOW+a+A.COLOR_RESET}function i(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function j(a){"use strict";return A.COLOR_RED+a+A.COLOR_RESET}function k(a){"use strict";return"`"+A.COLOR_YELLOW+a+A.COLOR_RESET+"`"}function l(a){"use strict";return A.COLOR_MAGENTA+a+A.COLOR_RESET}function m(a){"use strict";return A.COLOR_BOLD_BLUE+a+A.COLOR_RESET}function n(a){"use strict";return 0>a&&(a=0),new Array(a).join(" ")}function o(a,b){"use strict";var c=".{1,"+b+"}(\\s|$)|\\S+?(\\s|$)";return a.match(new RegExp(c,"g")).join("\n")}function p(a){"use strict";B.appendLine(m("Query string:")),B.appendLine(" "+g(o(a,100).replace(/\n+/g,"\n ",a))),B.appendLine()}function q(a){"use strict";if(void 0!==a){B.appendLine(m("Write query options:"));var b=Object.keys(a),c="Option".length;b.forEach(function(a){a.length>c&&(c=a.length)}),B.appendLine(" "+l("Option")+n(1+c-"Option".length)+" "+l("Value")),b.forEach(function(b){B.appendLine(" "+e(b)+n(1+c-b.length)+" "+g(JSON.stringify(a[b])))}),B.appendLine()}}function r(a){"use strict";if(B.appendLine(m("Optimization rules applied:")),0===a.length)B.appendLine(" "+g("none"));else{var b=String("Id").length;B.appendLine(" "+n(1+b-String("Id").length)+l("Id")+" "+l("RuleName"));for(var c=0;cb&&(b=e),e=a.type.length,e>o&&(o=e),e=a.fields.map(d).join(", ").length,e>q&&(q=e),e=a.collection.length,e>c&&(c=e)});var r=" "+n(1+b-String("Id").length)+l("Id")+" "+l("Type")+n(1+o-"Type".length)+" "+l("Collection")+n(1+c-"Collection".length)+" "+l("Unique")+n(1+f-"Unique".length)+" "+l("Sparse")+n(1+i-"Sparse".length)+" "+l("Selectivity Est.")+" "+l("Fields")+n(1+q-"Fields".length)+" "+l("Ranges");B.appendLine(r);for(var s=0;sv&&(v=String(a.id).length),String(a.type).length>u&&(u=String(a.type).length),String(a.estimatedNrItems).length>w&&(w=String(a.estimatedNrItems).length)})};y(x.nodes,0);var z,A={},C={},D={},E=[],F=!0,G=function(a){return/^[0-9_]/.test(a.name)?h("#"+a.name):(C.hasOwnProperty(a.id)&&(D[a.name]=C[a.id]),h(a.name))},H=function(a){switch(F=F&&-1!==["value","object","object element","array"].indexOf(a.type),a.type){case"reference":if(A.hasOwnProperty(a.name)){var b=A[a.name];if(delete A[a.name],Array.isArray(b)){var c=H(b[1])+"["+new Array(b[0]+1).join("*");return"no-op"!==b[2].type&&(c+=" "+e("FILTER")+" "+H(b[2])),"no-op"!==b[3].type&&(c+=" "+e("LIMIT ")+" "+H(b[3])),"no-op"!==b[4].type&&(c+=" "+e("RETURN ")+" "+H(b[4])),c+="]"}return H(b)+"[*]"}return G(a);case"collection":return j(a.name)+" "+f("/* all collection documents */");case"value":return g(JSON.stringify(a.value));case"object":return a.hasOwnProperty("subNodes")?"{ "+a.subNodes.map(H).join(", ")+" }":"{ }";case"object element":return g(JSON.stringify(a.name))+" : "+H(a.subNodes[0]);case"calculated object element":return"[ "+H(a.subNodes[0])+" ] : "+H(a.subNodes[1]);case"array":return a.hasOwnProperty("subNodes")?"[ "+a.subNodes.map(H).join(", ")+" ]":"[ ]";case"unary not":return"! "+H(a.subNodes[0]);case"unary plus":return"+ "+H(a.subNodes[0]);case"unary minus":return"- "+H(a.subNodes[0]);case"array limit":return H(a.subNodes[0])+", "+H(a.subNodes[1]);case"attribute access":return H(a.subNodes[0])+"."+k(a.name);case"indexed access":return H(a.subNodes[0])+"["+H(a.subNodes[1])+"]";case"range":return H(a.subNodes[0])+" .. "+H(a.subNodes[1])+" "+f("/* range */");case"expand":case"expansion":return a.subNodes.length>2?A[a.subNodes[0].subNodes[0].name]=[a.levels,a.subNodes[0].subNodes[1],a.subNodes[2],a.subNodes[3],a.subNodes[4]]:A[a.subNodes[0].subNodes[0].name]=a.subNodes[0].subNodes[1],H(a.subNodes[1]);case"verticalizer":return H(a.subNodes[0]);case"user function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+") "+f("/* user-defined function */");case"function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+")";case"plus":return H(a.subNodes[0])+" + "+H(a.subNodes[1]);case"minus":return H(a.subNodes[0])+" - "+H(a.subNodes[1]);case"times":return H(a.subNodes[0])+" * "+H(a.subNodes[1]);case"division":return H(a.subNodes[0])+" / "+H(a.subNodes[1]);case"modulus":return H(a.subNodes[0])+" % "+H(a.subNodes[1]);case"compare not in":return H(a.subNodes[0])+" not in "+H(a.subNodes[1]);case"compare in":return H(a.subNodes[0])+" in "+H(a.subNodes[1]);case"compare ==":return H(a.subNodes[0])+" == "+H(a.subNodes[1]);case"compare !=":return H(a.subNodes[0])+" != "+H(a.subNodes[1]);case"compare >":return H(a.subNodes[0])+" > "+H(a.subNodes[1]);case"compare >=":return H(a.subNodes[0])+" >= "+H(a.subNodes[1]);case"compare <":return H(a.subNodes[0])+" < "+H(a.subNodes[1]);case"compare <=":return H(a.subNodes[0])+" <= "+H(a.subNodes[1]);case"logical or":return H(a.subNodes[0])+" || "+H(a.subNodes[1]);case"logical and":return H(a.subNodes[0])+" && "+H(a.subNodes[1]);case"ternary":return H(a.subNodes[0])+" ? "+H(a.subNodes[1])+" : "+H(a.subNodes[2]);default:return"unhandled node type ("+a.type+")"}},I=function(a,b,c){var d=c.isConstant?g(JSON.stringify(c.bound)):H(c.bound);return k(a)+" "+b[c.include?1:0]+" "+d},J=function(a){var b=[];return a.forEach(function(a){var c=a.attr;a.lowConst.hasOwnProperty("bound")&&a.highConst.hasOwnProperty("bound")&&JSON.stringify(a.lowConst.bound)===JSON.stringify(a.highConst.bound)&&(a.equality=!0),a.equality?a.lowConst.hasOwnProperty("bound")?b.push(I(c,["==","=="],a.lowConst)):a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,["==","=="],a))}):(a.lowConst.hasOwnProperty("bound")&&b.push(I(c,[">",">="],a.lowConst)),a.highConst.hasOwnProperty("bound")&&b.push(I(c,["<","<="],a.highConst)),a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,[">",">="],a))}),a.hasOwnProperty("highs")&&a.highs.forEach(function(a){b.push(I(c,["<","<="],a))}))}),b.length>1?"("+b.join(" && ")+")":b[0]},K=function(a){switch(a.type){case"SingletonNode":return e("ROOT");case"NoResultsNode":return e("EMPTY")+" "+f("/* empty result set */");case"EnumerateCollectionNode":return C[a.outVariable.id]=a.collection,e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* full collection scan"+(a.random?", random order":"")+" */");case"EnumerateListNode":return e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+G(a.inVariable)+" "+f("/* list iteration */");case"IndexRangeNode":C[a.outVariable.id]=a.collection;var b=a.index;return b.ranges=a.ranges.map(J).join(" || "),b.collection=a.collection,b.node=a.id,E.push(b),e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* "+(a.reverse?"reverse ":"")+a.index.type+" index scan */");case"CalculationNode":return e("LET")+" "+G(a.outVariable)+" = "+H(a.expression)+" "+f("/* "+a.expressionType+" expression */");case"FilterNode":return e("FILTER")+" "+G(a.inVariable);case"AggregateNode":return e("COLLECT")+" "+a.aggregates.map(function(a){return G(a.outVariable)+" = "+G(a.inVariable)}).join(", ")+(a.count?" "+e("WITH COUNT"):"")+(a.outVariable?" "+e("INTO")+" "+G(a.outVariable):"")+(a.keepVariables?" "+e("KEEP")+" "+a.keepVariables.map(function(a){return G(a)}).join(", "):"")+" "+f("/* "+a.aggregationOptions.method+"*/");case"SortNode":return e("SORT")+" "+a.elements.map(function(a){return G(a.inVariable)+" "+e(a.ascending?"ASC":"DESC")}).join(", ");case"LimitNode":return e("LIMIT")+" "+g(JSON.stringify(a.offset))+", "+g(JSON.stringify(a.limit));case"ReturnNode":return e("RETURN")+" "+G(a.inVariable);case"SubqueryNode":return e("LET")+" "+G(a.outVariable)+" = ... "+f("/* subquery */");case"InsertNode":return z=a.modificationFlags,e("INSERT")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"UpdateNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("UPDATE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("UPDATE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"ReplaceNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("REPLACE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("REPLACE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"UpsertNode":return z=a.modificationFlags,e("UPSERT")+" "+G(a.inDocVariable)+" "+e("INSERT")+" "+G(a.insertVariable)+" "+e(a.isReplace?"REPLACE":"UPDATE")+" "+G(a.updateVariable)+" "+e("IN")+" "+j(a.collection);case"RemoveNode":return z=a.modificationFlags,e("REMOVE")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"RemoteNode":return e("REMOTE");case"DistributeNode":return e("DISTRIBUTE");case"ScatterNode":return e("SCATTER");case"GatherNode":return e("GATHER")}return"unhandled node type ("+a.type+")"},L=0,M=[],N=function(a,b){return n(1+a+a)+(b?"* ":"- ")},O=function(a){D={},F=!0,"SubqueryNode"===a.type&&M.push(L)},P=function(a){-1!==["EnumerateCollectionNode","EnumerateListNode","IndexRangeNode","SubqueryNode"].indexOf(a.type)?L++:"ReturnNode"===a.type&&M.length>0?L=M.pop():"SingletonNode"===a.type&&L++},Q=function(){return F?" "+f("/* const assignment */"):""},R=function(){var a=[];for(var b in D)D.hasOwnProperty(b)&&a.push(h(b)+" : "+j(D[b]));return a.length>0?" "+f("/* collections used:")+" "+a.join(", ")+" "+f("*/"):""},S=function(a){O(a);var b=" "+n(1+v-String(a.id).length)+h(a.id)+" "+e(a.type)+n(1+u-String(a.type).length)+" "+n(1+w-String(a.estimatedNrItems).length)+g(a.estimatedNrItems)+" "+N(L,"SingletonNode"===a.type)+K(a);"CalculationNode"===a.type&&(b+=R()+Q()),B.appendLine(b),P(a)};p(a),B.appendLine(m("Execution plan:"));var T=" "+n(1+v-String("Id").length)+l("Id")+" "+l("NodeType")+n(1+u-String("NodeType").length)+" "+n(1+w-String("Est.").length)+l("Est.")+" "+l("Comment");B.appendLine(T);for(var U=[o];U.length>0;){var V=U.pop(),W=c[V];S(W),d.hasOwnProperty(V)&&(U=U.concat(d[V])),"SubqueryNode"===W.type&&(U=U.concat([W.subquery.nodes[0].id]))}B.appendLine(),t(E),B.appendLine(),r(x.rules),q(z),s(b.warnings)}function v(a,b,d){"use strict";if("string"==typeof a&&(a={query:a}),!(a instanceof Object))throw"ArangoStatement needs initial data";b=b||{},c(void 0===b.colors?!0:b.colors);var e=w._createStatement(a),f=e.explain(b);return B.clearOutput(),u(a.query,f,!0),void 0===d||d?void z(B.getOutput()):B.getOutput()}var w=require("org/arangodb").db,x=require("internal"),y=x.COLORS,z=x.print,A={};"function"==typeof x.printBrowser&&(z=x.printBrowser);var B={output:"",appendLine:function(a){a?this.output+=a+"\n":this.output+="\n"},getOutput:function(){return this.output},clearOutput:function(){this.output=""}};a.explain=v}),module.define("org/arangodb/aql/functions",function(a,b){var c=require("internal"),d=require("org/arangodb"),e=d.db,f=d.ArangoError,g=function(){"use strict";var a=e._collection("_aqlfunctions");if(null===a){var b=new f;throw b.errorNum=d.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code,b.errorMessage="collection '_aqlfunctions' not found",b}return a},h=function(a){"use strict";var b=[];if(null!==a&&void 0!==a&&a.length>0){var c=a.toUpperCase();a.length>1&&"::"!==a.substr(a.length-2,2)&&(c+="::"),g().toArray().forEach(function(a){a.name.toUpperCase().substr(0,c.length)===c&&b.push(a)})}else b=g().toArray();return b},i=function(a){"use strict";if("string"!=typeof a||!a.match(/^[a-zA-Z0-9_]+(::[a-zA-Z0-9_]+)+$/)||"_"===a.substr(0,1)){var b=new f;throw b.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.code,b.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.message,b}},j=function(a,b){"use strict";if("function"==typeof a&&(a=String(a)+"\n"),"string"==typeof a){if(a="("+a+"\n)",!c.parse)return a;try{if(c.parse(a,b))return a}catch(e){}}var g=new f;throw g.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,g.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,g},k=function(a){"use strict";var b=null;i(a);try{b=g().document(a.toUpperCase())}catch(e){}if(null===b){var h=new f;throw h.errorNum=d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.code,h.errorMessage=c.sprintf(d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.message,a),h}return g().remove(b._id),c.reloadAqlFunctions(),!0},l=function(a){"use strict";if(0===a.length){var b=new f;throw b.errorNum=d.errors.ERROR_BAD_PARAMETER.code,b.errorMessage=d.errors.ERROR_BAD_PARAMETER.message,b}var e=0;return h(a).forEach(function(a){g().remove(a._id),e++}),e>0&&c.reloadAqlFunctions(),e},m=function(a,b,h){i(a),b=j(b,a);var k,l="(function() { var callback = "+b+"; return callback; })()";try{if(c&&c.hasOwnProperty("executeScript")){var m=c.executeScript(l,void 0,"(user function "+a+")");if("function"!=typeof m)throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message+": code must be contained in function",k}}catch(n){throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,k}var o=e._executeTransaction({collections:{write:g().name()},action:function(a){var b=!1,c=require("internal").db._collection(a.collection),d=a.name;try{var e=c.document(d.toUpperCase());null!==e&&(c.remove(e._key),b=!0)}catch(f){}var g={_key:d.toUpperCase(),name:d,code:a.code,isDeterministic:a.isDeterministic||!1};return c.save(g),b},params:{name:a,code:b,isDeterministic:h,collection:g().name()}});return c.reloadAqlFunctions(),o},n=function(a){"use strict";var b=[];return h(a).forEach(function(a){b.push({name:a.name,code:a.code.substr(1,a.code.length-2).trim()})}),b};a.unregister=k,a.unregisterGroup=l,a.register=m,a.toArray=n}),module.define("org/arangodb/aql/queries",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh");a.clearSlow=function(){var a=c.db,b=a._connection.DELETE("/_api/query/slow","");return d.checkRequestResult(b),b},a.slow=function(){var a=c.db,b=a._connection.GET("/_api/query/slow","");return d.checkRequestResult(b),b},a.current=function(){var a=c.db,b=a._connection.GET("/_api/query/current","");return d.checkRequestResult(b),b},a.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/query/properties"):e._connection.PUT("/_api/query/properties",JSON.stringify(a)),d.checkRequestResult(b),b},a.kill=function(a){"object"==typeof a&&a.hasOwnProperty("id")&&(a=a.id);var b=c.db,e=b._connection.DELETE("/_api/query/"+encodeURIComponent(a),"");return d.checkRequestResult(e),e}}),module.define("org/arangodb/graph/traversal",function(a,b){function c(a){if(null===a||"object"!=typeof a)return a;var b;if(Array.isArray(a))b=[],a.forEach(function(a){b.push(c(a))});else if(a instanceof Object){if(J&&a instanceof J)return a;b={},Object.keys(a).forEach(function(d){b[d]=c(a[d])})}return b}function d(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function e(a){var b=a;"string"==typeof b&&(b=K._collection(b));var c="object"==typeof ArangoClusterComm;return c&&require("org/arangodb/cluster").isCoordinator()&&(c=!1),{edgeCollection:b,useBuiltIn:c,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from)},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.useBuiltIn?this.edgeCollection.EDGES(a._id):this.edgeCollection.edges(a._id)},getInEdges:function(a){return this.useBuiltIn?this.edgeCollection.INEDGES(a._id):this.edgeCollection.inEdges(a._id)},getOutEdges:function(a){return this.useBuiltIn?this.edgeCollection.OUTEDGES(a._id):this.edgeCollection.outEdges(a._id)}}}function f(a){var b=a;return"string"==typeof b&&(b=F._graph(b)),{graph:b,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from); },getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.graph._EDGES(a._id)},getInEdges:function(a){return this.graph._INEDGES(a._id)},getOutEdges:function(a){return this.graph._OUTEDGES(a._id)}}}function g(a){return{graph:new E.Graph(a),getVertexId:function(a){return a.getId()},getPeerVertex:function(a,b){return a.getPeerVertex(b)},getInVertex:function(a){return a.getInVertex()},getOutVertex:function(a){return a.getOutVertex()},getEdgeId:function(a){return a.getId()},getEdgeFrom:function(a){return a._properties._from},getEdgeTo:function(a){return a._properties._to},getLabel:function(a){return a.getLabel()},getAllEdges:function(a){return a.edges()},getInEdges:function(a){return a.inbound()},getOutEdges:function(a){return a.outbound()}}}function h(a,b,c){var d,e=a.datasource,f=[],g=e.getOutEdges(b);return g.length>1&&a.sort&&g.sort(a.sort),d=a.buildVertices?a.expandFilter?function(b){try{var d=e.getInVertex(b);a.expandFilter(a,d,b,c)&&f.push({edge:b,vertex:d})}catch(g){}}:function(a){try{var b=e.getInVertex(a);f.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var d=e.getEdgeTo(b),g={_id:d,_key:d.substr(d.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&f.push({edge:b,vertex:g})}:function(a){var b=e.getEdgeTo(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};f.push({edge:a,vertex:c})},g.forEach(d),f}function i(a,b,c){var d=a.datasource,e=[],f=d.getInEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(b){try{var f=d.getOutVertex(b);a.expandFilter(a,f,b,c)&&e.push({edge:b,vertex:f})}catch(g){}}:function(a){try{var b=d.getOutVertex(a);e.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var f=d.getEdgeFrom(b),g={_id:f,_key:f.substr(f.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&e.push({edge:b,vertex:g})}:function(a){var b=d.getEdgeFrom(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};e.push({edge:a,vertex:c})},f.forEach(g),e}function j(a,b,c){var d=a.datasource,e=[],f=d.getAllEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(f){try{var g=d.getPeerVertex(f,b);a.expandFilter(a,g,f,c)&&e.push({edge:f,vertex:g})}catch(h){}}:function(a){try{var c=d.getPeerVertex(a,b);e.push({edge:a,vertex:c})}catch(f){}}:a.expandFilter?function(f){var g=d.getEdgeFrom(f);g===b._id&&(g=d.getEdgeTo(f));var h={_id:g,_key:g.substr(g.indexOf("/")+1)};a.expandFilter(a,h,f,c)&&e.push({edge:f,vertex:h})}:function(a){var c=d.getEdgeFrom(a);c===b._id&&(c=d.getEdgeTo(a));var f={_id:c,_key:c.substr(c.indexOf("/")+1)};e.push({edge:a,vertex:f})},f.forEach(g),e}function k(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=e.getOutEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getInVertex(h)})}return f}function l(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getInEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getOutVertex(h)})}return f}function m(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getAllEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getPeerVertex(h,b)})}return f}function n(a,b,d,e){b&&b.visited&&(b.visited.vertices&&b.visited.vertices.push(c(d)),b.visited.paths&&b.visited.paths.push(c(e)))}function o(a,b,c,d){b&&(b.hasOwnProperty("count")?++b.count:b.count=1)}function p(){}function q(){return""}function r(a,b,c){return c&&c.vertices&&c.vertices.length>a.maxDepth?D.PRUNE:void 0}function s(a,b,c){return c&&c.vertices&&c.vertices.length<=a.minDepth?D.EXCLUDE:void 0}function t(a,b,c){Array.isArray(a.matchingAttributes)||(a.matchingAttributes=[a.matchingAttributes]);var d=!1;a.matchingAttributes.forEach(function(a){var c=0,e=Object.keys(a);e.forEach(function(d){b[d]&&b[d]===a[d]&&c++}),c>0&&c===e.length&&(d=!0)});var e;return d||(e="exclude"),e}function u(a,b,c,d){var e=[];return a.forEach(function(a){var f=a(b,c,d);Array.isArray(f)||(f=[f]),e=e.concat(f)}),e}function v(a){function b(a){if(void 0!==a&&null!==a){var d=!1;if("string"==typeof a)a===D.EXCLUDE?(c.visit=!1,d=!0):a===D.PRUNE?(c.expand=!1,d=!0):""===a&&(d=!0);else if(Array.isArray(a)){var e;for(e=0;eb)break;d=a[b]}return c},run:function(a,b,c){for(var d=a.maxIterations,e=0,f=[{edge:null,vertex:c,parentIndex:-1}],g={edges:{},vertices:{}},h=0,i=1,j=x(a);1===i&&h=0;){var k,l=f[h],m=l.vertex,n=l.edge;if(e++>d){var o=new I;throw o.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,o.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,o}if(L(),null===l.visit||void 0===l.visit){if(l.visit=!1,k=this.createPath(f,h),a.uniqueness.vertices===D.UNIQUE_PATH&&(g.vertices=this.getPathItems(a.datasource.getVertexId,k.vertices)),a.uniqueness.edges===D.UNIQUE_PATH&&(g.edges=this.getPathItems(a.datasource.getEdgeId,k.edges)),!w(a,g,m,n)){h0;){if(e++>d){var l=new I;throw l.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,l.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,l}L();var m=f[f.length-1],n=m.vertex,o=m.edge;if(null===m.visit||void 0===m.visit){if(m.visit=!1,k&&(j.vertices===D.UNIQUE_PATH&&(h.vertices=this.getPathItems(a.datasource.getVertexId,g.vertices)),j.edges===D.UNIQUE_PATH&&(h.edges=this.getPathItems(a.datasource.getEdgeId,g.edges)),!w(a,h,n,o))){f.pop();continue}null!==o&&g.edges.push(o),g.vertices.push(n);var p=v(a.filter(a,n,g));if(a.order===D.PRE_ORDER&&p.visit?a.visitor(a,b,n,g):m.visit=p.visit||!1,p.expand){var q,r=a.expander(a,n,g);for(i&&r.reverse(),a.order===D.PRE_ORDER_EXPANDER&&p.visit&&a.visitor(a,b,n,g,r),q=0;q0&&g.edges.pop(),g.vertices.pop()}}}}function A(){return{nodes:{},requiresEndVertex:function(){return!0},makeNode:function(a){var b=a._id;return this.nodes.hasOwnProperty(b)||(this.nodes[b]={vertex:a,dist:1/0}),this.nodes[b]},vertexList:function(a){for(var b=[];a;)b.push(a),a=a.parent;return b},buildPath:function(a){for(var b={vertices:[a.vertex],edges:[]},c=a;c.parent;)b.vertices.unshift(c.parent.vertex),b.edges.unshift(c.parentEdge),c=c.parent;return b},run:function(a,b,c,d){var e=a.maxIterations,f=0,g=new H(function(a){return a.dist}),h=this.makeNode(c);for(h.dist=0,g.push(h);g.size()>0;){if(f++>e){var i=new I;throw i.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,i.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,i}L();var j,k,l=g.pop();if(l.vertex._id===d._id){var m=this.vertexList(l).reverse();for(k=m.length,j=0;k>j;++j)m[j].hide||a.visitor(a,b,m[j].vertex,this.buildPath(m[j]));return}if(!l.visited){if(l.dist===1/0)break;l.visited=!0;var n=this.buildPath(l),o=v(a.filter(a,l.vertex,n));if(o.visit||(l.hide=!0),o.expand){var p=l.dist,q=a.expander(a,l.vertex,n);for(k=q.length,j=0;k>j;++j){var r=this.makeNode(q[j].vertex);if(!r.visited){var s=q[j].edge,t=1;a.distance?t=a.distance(a,l.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(g++>f){var j=new I;throw j.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,j.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,j}var k,l,m=h.pop();if(e.hasOwnProperty(m.vertex._id)&&(delete e[m.vertex._id],a.visitor(a,b,m,this.buildPath(m)),d(e)))return;if(!m.visited){if(m.dist===1/0)break;m.visited=!0;var n=this.buildPath(m),o=v(a.filter(a,m.vertex,n));if(o.visit||(m.hide=!0),o.expand){var p=m.dist,q=a.expander(a,m.vertex,n);for(l=q.length,k=0;l>k;++k){var r=this.makeNode(q[k].vertex);if(!r.visited){var s=q[k].edge,t=1;a.distance?t=a.distance(a,m.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(f++>e){var h=new I;throw h.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,h.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,h}L();var i,j,k=g.pop();if(k.vertex._id===d._id){var l=this.vertexList(k);for(a.order!==D.PRE_ORDER&&l.reverse(),j=l.length,i=0;j>i;++i)a.visitor(a,b,l[i].vertex,this.buildPath(l[i]));return}k.closed=!0;var m=this.buildPath(k),n=a.expander(a,k.vertex,m);for(j=n.length,i=0;j>i;++i){var o=this.makeNode(n[i].vertex);if(!o.closed){var p=k.g+1,q=o.visited;if(!q||p0&&f.push(s),void 0!==a.maxDepth&&null!==a.maxDepth&&a.maxDepth>0&&f.push(r),Array.isArray(a.filter)||("function"==typeof a.filter?a.filter=[a.filter]:a.filter=[]),a.filter.forEach(function(a){if("function"!=typeof a)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid filter function",d;f.push(a)}),f.length>1?a.filter=function(a,b,c){return u(f,a,b,c)}:1===f.length?a.filter=f[0]:a.filter=q,"function"!=typeof a.expander&&(a.expander=b(a.expander,{outbound:h,inbound:i,any:j},"expander")),"function"!=typeof a.expander)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid expander function",d;if("object"!=typeof a.datasource)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid datasource",d;this.config=a},D.prototype.traverse=function(a,b,c){var d;if(d=this.config.strategy===D.ASTAR_SEARCH?C():this.config.strategy===D.DIJKSTRA_SEARCH?A():this.config.strategy===D.DIJKSTRA_SEARCH_MULTI?B():this.config.strategy===D.BREADTH_FIRST?y():z(),void 0===b||null===b||"object"!=typeof b){var e=new I;throw e.errorNum=G.errors.ERROR_BAD_PARAMETER.code,e.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid startVertex specified for traversal",e}if(d.requiresEndVertex()&&(void 0===c||null===c||"object"!=typeof c)){var f=new I;throw f.errorNum=G.errors.ERROR_BAD_PARAMETER.code,f.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid endVertex specified for traversal",f}try{d.run(this.config,a,b,c)}catch(g){if("object"!=typeof g||!g._intentionallyAborted)throw g}},D.UNIQUE_NONE=0,D.UNIQUE_PATH=1,D.UNIQUE_GLOBAL=2,D.BREADTH_FIRST=0,D.DEPTH_FIRST=1,D.ASTAR_SEARCH=2,D.DIJKSTRA_SEARCH=3,D.DIJKSTRA_SEARCH_MULTI=4,D.PRE_ORDER=0,D.POST_ORDER=1,D.PRE_ORDER_EXPANDER=2,D.FORWARD=0,D.BACKWARD=1,D.PRUNE="prune",D.EXCLUDE="exclude",a.collectionDatasourceFactory=e,a.generalGraphDatasourceFactory=f,a.graphDatasourceFactory=g,a.outboundExpander=h,a.inboundExpander=i,a.anyExpander=j,a.expandOutEdgesWithLabels=k,a.expandInEdgesWithLabels=l,a.expandEdgesWithLabels=m,a.trackingVisitor=n,a.countingVisitor=o,a.doNothingVisitor=p,a.visitAllFilter=q,a.maxDepthFilter=r,a.minDepthFilter=s,a.includeMatchingAttributesFilter=t,a.abortedException=N,a.Traverser=D}),module.define("org/arangodb/arango-collection-common",function(a,b){var c=require("org/arangodb/arango-collection").ArangoCollection,d=require("org/arangodb"),e=d.ArangoError,f=d.sprintf,g=d.db,h=require("org/arangodb/simple-query"),i=h.SimpleQueryAll,j=h.SimpleQueryByExample,k=h.SimpleQueryByCondition,l=h.SimpleQueryRange,m=h.SimpleQueryGeo,n=h.SimpleQueryNear,o=h.SimpleQueryWithin,p=h.SimpleQueryWithinRectangle,q=h.SimpleQueryFulltext;c.STATUS_CORRUPTED=0,c.STATUS_NEW_BORN=1,c.STATUS_UNLOADED=2,c.STATUS_LOADED=3,c.STATUS_UNLOADING=4,c.STATUS_DELETED=5,c.STATUS_LOADING=6,c.TYPE_DOCUMENT=2,c.TYPE_EDGE=3,c.prototype._PRINT=function(a){var b="unknown",d="unknown",e=this.name();switch(this.status()){case c.STATUS_NEW_BORN:b="new born";break;case c.STATUS_UNLOADED:b="unloaded";break;case c.STATUS_UNLOADING:b="unloading";break;case c.STATUS_LOADED:b="loaded";break;case c.STATUS_CORRUPTED:b="corrupted";break;case c.STATUS_DELETED:b="deleted"}switch(this.type()){case c.TYPE_DOCUMENT:d="document";break;case c.TYPE_EDGE:d="edge"}var f=require("internal").COLORS,g=a.useColor;a.output+="[ArangoCollection ",g&&(a.output+=f.COLOR_NUMBER),a.output+=this._id,g&&(a.output+=f.COLOR_RESET),a.output+=', "',g&&(a.output+=f.COLOR_STRING),a.output+=e||"unknown",g&&(a.output+=f.COLOR_RESET),a.output+='" (type '+d+", status "+b+")]"},c.prototype.toString=function(){return"[ArangoCollection: "+this._id+"]"},c.prototype.all=function(){return new i(this)},c.prototype.byExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c=1?h=this.all():(c=f("FOR d IN %s FILTER rand() >= @prob RETURN d",this.name()),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute());else{if("number"!=typeof k){var l=new e;throw l.errorNum=d.errors.ERROR_ILLEGAL_NUMBER.code,l.errorMessage="expecting a number, got "+String(k),l}j>=1?h=this.all().limit(k):(c=f("FOR d IN %s FILTER rand() >= @prob LIMIT %d RETURN d",this.name(),k),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute())}for(i=0;h.hasNext();){var m=h.next();a(m,i),i++}},c.prototype.removeByExample=function(a,b,c){throw"cannot call abstract removeByExample function"},c.prototype.replaceByExample=function(a,b,c,d){throw"cannot call abstract replaceByExample function"},c.prototype.updateByExample=function(a,b,c,d,e){throw"cannot call abstract updateExample function"}}),module.define("org/arangodb/arango-collection",function(a,b){function c(a,b){a.fields=[];var c,d=function(d){a.hasOwnProperty(d)||(a[d]=b[c][d])};for(c=0;c col = db.mycoll; \n > col = db._create("mycoll"); \n \nAdministration Functions: \n name() collection name \n status() status of the collection \n type() type of the collection \n truncate() delete all documents \n properties() show collection properties \n drop() delete a collection \n load() load a collection into memory \n unload() unload a collection from memory \n rename() renames a collection \n getIndexes() return defined indexes \n refresh() refreshes the status and name \n _help() this help \n \nDocument Functions: \n count() return number of documents \n save() create document and return handle \n document() get document by handle (_id or _key)\n replace(, , ) overwrite document \n update(, , , partially update document \n ) \n remove() delete document \n exists() checks whether a document exists \n first() first inserted/updated document \n last() last inserted/updated document \n \nAttributes: \n _database database object \n _id collection identifier ';d.prototype._help=function(){e.print(h)},d.prototype.name=function(){return null===this._name&&this.refresh(),this._name},d.prototype.status=function(){var a;return null===this._status&&this.refresh(),a=this._status,this._status===d.STATUS_UNLOADING&&(this._status=null),a},d.prototype.type=function(){return null===this._type&&this.refresh(),this._type},d.prototype.properties=function(a){var b,c,d={doCompact:!0,journalSize:!0,isSystem:!1,isVolatile:!1,waitForSync:!0,shardKeys:!1,numberOfShards:!1,keyOptions:!1,indexBuckets:!0};if(void 0===a)c=this._database._connection.GET(this._baseurl("properties")),f.checkRequestResult(c);else{var e={};for(b in d)d.hasOwnProperty(b)&&d[b]&&a.hasOwnProperty(b)&&(e[b]=a[b]);c=this._database._connection.PUT(this._baseurl("properties"),JSON.stringify(e)),f.checkRequestResult(c)}var g={};for(b in d)d.hasOwnProperty(b)&&c.hasOwnProperty(b)&&void 0!==c[b]&&(g[b]=c[b]);return g},d.prototype.rotate=function(){var a=this._database._connection.PUT(this._baseurl("rotate"),"");return f.checkRequestResult(a),a.result},d.prototype.figures=function(){var a=this._database._connection.GET(this._baseurl("figures"));return f.checkRequestResult(a),a.figures},d.prototype.checksum=function(a,b){var c="";a&&(c+="?withRevisions=true"),b&&(c+=(""===c?"?":"&")+"withData=true");var d=this._database._connection.GET(this._baseurl("checksum")+c);return f.checkRequestResult(d),{checksum:d.checksum,revision:d.revision}},d.prototype.revision=function(){var a=this._database._connection.GET(this._baseurl("revision"));return f.checkRequestResult(a),a.revision},d.prototype.drop=function(){var a=this._database._connection.DELETE(this._baseurl());f.checkRequestResult(a),this._status=d.STATUS_DELETED;var b,c=this._database;for(b in c)if(c.hasOwnProperty(b)){var e=c[b];e instanceof d&&e.name()===this.name()&&delete c[b]}},d.prototype.truncate=function(){var a=this._database._connection.PUT(this._baseurl("truncate"),"");f.checkRequestResult(a),this._status=null},d.prototype.load=function(a){var b={count:!0};void 0!==a&&(b.count=a);var c=this._database._connection.PUT(this._baseurl("load"),JSON.stringify(b));f.checkRequestResult(c),this._status=null},d.prototype.unload=function(){var a=this._database._connection.PUT(this._baseurl("unload"),"");f.checkRequestResult(a),this._status=null},d.prototype.rename=function(a){var b={name:a},c=this._database._connection.PUT(this._baseurl("rename"),JSON.stringify(b));f.checkRequestResult(c),delete this._database[this._name],this._database[a]=this,this._status=null,this._name=null},d.prototype.refresh=function(){var a=this._database._connection.GET(this._database._collectionurl(this._id)+"?useId=true");f.checkRequestResult(a),this._name=a.name,this._status=a.status,this._type=a.type},d.prototype.getIndexes=function(a){var b=this._database._connection.GET(this._indexurl()+"&withStats="+(a||!1));return f.checkRequestResult(b),b.indexes},d.prototype.index=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.GET(this._database._indexurl(a,this.name()));return f.checkRequestResult(b),b},d.prototype.dropIndex=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.DELETE(this._database._indexurl(a,this.name()));return null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_INDEX_NOT_FOUND.code?!1:(f.checkRequestResult(b),!0)},d.prototype.ensureCapConstraint=function(a,b){var c={type:"cap",size:a||void 0,byteSize:b||void 0},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueSkiplist=function(){var a=c({type:"skiplist",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureSkiplist=function(){var a=c({type:"skiplist",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureFulltextIndex=function(a,b){var c={type:"fulltext",minLength:b||void 0,fields:[a]},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueConstraint=function(){var a=c({type:"hash",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureHashIndex=function(){var a=c({type:"hash",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureGeoIndex=function(a,b){var c;if("string"!=typeof a)throw"usage: ensureGeoIndex(, ) or ensureGeoIndex([, ])";c="boolean"==typeof b?{type:"geo",fields:[a],geoJson:b}:void 0===b?{type:"geo",fields:[a],geoJson:!1}:{type:"geo",fields:[a,b],geoJson:!1};var d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureGeoConstraint=function(a,b){return this.ensureGeoIndex(a,b)},d.prototype.ensureIndex=function(a){if("object"!=typeof a||Array.isArray(a))throw"usage: ensureIndex()";var b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.count=function(){var a=this._database._connection.GET(this._baseurl("count"));return f.checkRequestResult(a),a.count},d.prototype.document=function(a){var b,c=null;if(a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.GET(this._documenturl(a)):this._database._connection.GET(this._documenturl(a),{"if-match":JSON.stringify(c)}),null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code)throw new g(b);return f.checkRequestResult(b),b},d.prototype.exists=function(a){var b,c=null;if(void 0===a||null===a)throw new g({errorNum:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,errorMessage:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message});return a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.HEAD(this._documenturl(a)):this._database._connection.HEAD(this._documenturl(a),{"if-match":JSON.stringify(c)}),null===b||b.error!==!0||b.errorNum!==e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_PRECONDITION_FAILED.code?(f.checkRequestResult(b),!0):!1},d.prototype.any=function(){var a=this._database._connection.PUT(this._prefixurl("/_api/simple/any"),JSON.stringify({collection:this._name}));return f.checkRequestResult(a),a.document},d.prototype.firstExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c) get collection by identifier/name \n _create(, ) creates a new collection \n _createEdgeCollection() creates a new edge collection \n _drop() delete a collection \n \nDocument Functions: \n _document() get document by handle (_id) \n _replace(, , ) overwrite document \n _update(, , , partially update document \n ) \n _remove() delete document \n _exists() checks whether a document exists \n _truncate() delete all documents \n \nDatabase Management Functions: \n _createDatabase() creates a new database \n _dropDatabase() drops an existing database \n _useDatabase() switches into an existing database\n _drop() delete a collection \n _name() name of the current database \n \nQuery / Transaction Functions: \n _executeTransaction() execute transaction \n _query() execute AQL query \n _createStatement() create and return AQL query ";c.prototype._help=function(){e.print(i)},c.prototype.toString=function(){return'[object ArangoDatabase "'+this._name()+'"]'},c.prototype._collections=function(){var a=this._connection.GET(this._collectionurl());if(f.checkRequestResult(a),void 0!==a.collections){var b,c=a.collections,d=[];for(b=0;b)"});if(!a.collections||"object"!=typeof a.collections)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid collections definition for transaction"});if(!a.action||"string"!=typeof a.action&&"function"!=typeof a.action)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid action definition for transaction"});"function"==typeof a.action&&(a.action=String(a.action));var b=this._connection.POST("/_api/transaction",JSON.stringify(a));if(null!==b&&b.error===!0)throw new g(b);return f.checkRequestResult(b),b.result}}),module.define("org/arangodb/arango-query-cursor",function(a,b){function c(a,b){this._database=a,this._dbName=a._name(),this.data=b,this._hasNext=!1,this._hasMore=!1,this._pos=0,this._count=0,this._total=0,void 0!==b.result&&(this._count=b.result.length,this._pos0){if(a)d.print(b);else{var f=d.startCaptureMode();d.print(b),e+="\n\n"+d.stopCaptureMode(f)}this.hasNext()&&(e+="\ntype 'more' to show more documents\n",more=this)}return a||(d.print(e),e=""),e},c.prototype.toArray=function(){for(var a=[];this.hasNext();)a.push(this.next());return a};var f=e.createHelpHeadline("ArangoQueryCursor help")+'ArangoQueryCursor constructor: \n > cursor = stmt.execute() \nFunctions: \n hasNext() returns true if there are \n more results to fetch \n next() returns the next document \n toArray() returns all data from the cursor\n _help() this help \nAttributes: \n _database database object \nExample: \n > stmt = db._createStatement({ "query": "FOR c IN coll RETURN c" })\n > cursor = stmt.execute() \n > documents = cursor.toArray() \n > cursor = stmt.execute() \n > while (cursor.hasNext()) { print(cursor.next()) } ';c.prototype._help=function(){d.print(f)},c.prototype.hasNext=function(){return this._hasNext},c.prototype.next=function(){if(!this._hasNext)throw"No more results";var a=this.data.result[this._pos];if(this._pos++,this._pos===this._count&&(this._hasNext=!1,this._pos=0,this._hasMore&&this.data.id)){this._hasMore=!1;var b=this._database._connection.PUT(this._baseurl(),"");e.checkRequestResult(b),this.data=b,this._count=b.result.length,this._pos0&&(this._batchSize=b)},c.prototype.setOptions=function(a){this._options=a},c.prototype.setQuery=function(a){this._query=a&&"function"==typeof a.toAQL?a.toAQL():a},c.prototype.parse=function(){throw"cannot call abstract method parse()"},c.prototype.explain=function(){throw"cannot call abstract method explain()"},c.prototype.execute=function(){throw"cannot call abstract method execute()"},a.ArangoStatement=c}),module.define("org/arangodb/arango-statement",function(a,b){var c=require("internal"),d=require("org/arangodb/arangosh"),e=require("org/arangodb/arango-statement-common").ArangoStatement,f=require("org/arangodb/arango-query-cursor").ArangoQueryCursor;e.prototype.toString=function(){return d.getIdString(this,"ArangoStatement")};var g=d.createHelpHeadline("ArangoStatement help")+'Create an AQL query: \n > stmt = new ArangoStatement(db, { "query": "FOR..." }) \n > stmt = db._createStatement({ "query": "FOR..." }) \nSet query options: \n > stmt.setBatchSize() set the max. number of results \n to be transferred per roundtrip \n > stmt.setCount() set count flag (return number of\n results in "count" attribute) \nGet query options: \n > stmt.setBatchSize() return the max. number of results\n to be transferred per roundtrip \n > stmt.getCount() return count flag (return number\n of results in "count" attribute)\n > stmt.getQuery() return query string \n results in "count" attribute) \nBind parameters to a query: \n > stmt.bind(, ) bind single variable \n > stmt.bind() bind multiple variables \nExecute query: \n > cursor = stmt.execute() returns a cursor \nGet all results in an array: \n > docs = cursor.toArray() \nOr loop over the result set: \n > while (cursor.hasNext()) { print(cursor.next()) } ';e.prototype._help=function(){c.print(g)},e.prototype.parse=function(){var a={query:this._query},b=this._database._connection.POST("/_api/query",JSON.stringify(a));d.checkRequestResult(b);var c={bindVars:b.bindVars,collections:b.collections,ast:b.ast};return c},e.prototype.explain=function(a){var b=this._options||{};"object"==typeof b&&"object"==typeof a&&Object.keys(a).forEach(function(c){b[c]=a[c]});var c={query:this._query,bindVars:this._bindVars,options:b},e=this._database._connection.POST("/_api/explain",JSON.stringify(c));return d.checkRequestResult(e),b&&b.allPlans?{plans:e.plans,warnings:e.warnings,stats:e.stats}:{plan:e.plan,warnings:e.warnings,stats:e.stats}},e.prototype.execute=function(){var a={query:this._query,count:this._doCount,bindVars:this._bindVars};this._batchSize&&(a.batchSize=this._batchSize),this._options&&(a.options=this._options),void 0!==this._cache&&(a.cache=this._cache);var b=this._database._connection.POST("/_api/cursor",JSON.stringify(a));return d.checkRequestResult(b),new f(this._database,b)},a.ArangoStatement=e}),module.define("org/arangodb/arangosh",function(a,b){var c=require("internal");a.getIdString=function(a,b){var c="[object "+b;return a._id?c+=":"+a._id:a.data&&a.data._id&&(c+=":"+a.data._id),c+="]"},a.createHelpHeadline=function(a){var b,c="",d=Math.abs(78-a.length)/2;for(b=0;d>b;++b)c+="-";return"\n"+c+" "+a+" "+c+"\n"};var d=require("org/arangodb"),e=d.ArangoError;a.checkRequestResult=function(a){if(void 0===a)throw new e({error:!0,code:500,errorNum:d.ERROR_INTERNAL,errorMessage:"Unknown error. Request result is empty"});if(a.hasOwnProperty("error")){if(a.error){if(a.errorNum===d.ERROR_TYPE_ERROR)throw new TypeError(a.errorMessage);throw new e(a)}delete a.error}return a},a.HELP=a.createHelpHeadline("Help")+"Predefined objects: \n arango: ArangoConnection \n db: ArangoDatabase \n fm: FoxxManager \nExamples: \n > db._collections() list all collections \n > db._create() create a new collection \n > db._drop() drop a collection \n > db..toArray() list all documents \n > id = db..save({ ... }) save a document \n > db..remove(<_id>) delete a document \n > db..document(<_id>) retrieve a document \n > db..replace(<_id>, {...}) overwrite a document \n > db..update(<_id>, {...}) partially update a document\n > db..exists(<_id>) check if document exists \n > db._query().toArray() execute an AQL query \n > db._useDatabase() switch database \n > db._createDatabase() create a new database \n > db._listDatabases() list existing databases \n > help show help pages \n > exit \nNote: collection names and statuses may be cached in arangosh. \nTo refresh the list of collections and their statuses, issue: \n > db._collections(); \n \n"+(c.printBrowser?"To cancel the current prompt, press CTRL + z. \n \nPlease note that all variables defined with the var keyword will \ndisappear when the command is finished. To introduce variables that\nare persisting until the next command, omit the var keyword. \n\nType 'tutorial' for a tutorial or 'help' to see common examples":"To cancel the current prompt, press CTRL + d. \n"),a.helpExtended=a.createHelpHeadline("More help")+"Pager: \n > stop_pager() stop the pager output \n > start_pager() start the pager \nPretty printing: \n > stop_pretty_print() stop pretty printing \n > start_pretty_print() start pretty printing \nColor output: \n > stop_color_print() stop color printing \n > start_color_print() start color printing \nPrint function: \n > print(x) std. print function \n > print_plain(x) print without prettifying \n and without colors \n > clear() clear screen "}),module.define("org/arangodb/general-graph",function(a,b){var c=require("org/arangodb"),d=require("internal"),e=c.ArangoCollection,f=c.ArangoError,g=c.db,h=c.errors,i=require("underscore"),j=function(a){return"string"==typeof a?[a]:i.clone(a)},k=function(a){return a?Array.isArray(a)&&0===a.length?!1:"string"==typeof a||Array.isArray(a)?!0:!1:!1},l=function(a,b,d){var h=g._collection(a),i=!1;if(null!==h||d){if(!(h instanceof e)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.code,j.errorMessage=a+c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.message, -j}}else h=b===e.TYPE_DOCUMENT?g._create(a):g._createEdgeCollection(a),i=!0;return i},m=function(a,b){var d={},h={};return a.forEach(function(a){if(!(a.hasOwnProperty("collection")&&a.hasOwnProperty("from")&&a.hasOwnProperty("to")&&Array.isArray(a.from)&&Array.isArray(a.to))){var i=new f;throw i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i}a.from.concat(a.to).forEach(function(a){l(a,e.TYPE_DOCUMENT,b),d[a]=g[a]}),l(a.collection,e.TYPE_EDGE,b),h[a.collection]=g[a.collection]}),[d,h]},n=function(){var a=g._graphs;if(null===a||void 0===a){var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.code,b.errorMessage=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.message,b}return a},o=function(a){return i.map(a,function(a){var b=a.collection;return b+=": [",b+=a.from.join(", "),b+="] -> [",b+=a.to.join(", "),b+="]"})},p=function(a){var b={};return i.each(i.functions(a),function(c){b[c]=function(){return a[c].apply(a,arguments)}}),b},q=function(a){if(void 0===a)return{};if("string"==typeof a)return{_id:a};if("object"==typeof a)return Array.isArray(a)?i.map(a,function(a){return"string"==typeof a?{_id:a}:a}):a;var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.code,b.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.message,b},r=function(a,b,d){var e=[],g=i.map(a,function(a){return a.name()});if(i.each(b,function(a){i.contains(g,a)||e.push(a)}),e.length>0){var h=new f;throw h.errorNum=c.errors.ERROR_BAD_PARAMETER.code,h.errorMessage=d+": "+e.join(" and ")+" are not known to the graph",h}return!0},s=function(a,b){this.query=a,b&&(this.type=b)};s.prototype.printQuery=function(){return this.query},s.prototype.isPathQuery=function(){return"path"===this.type},s.prototype.isPathVerticesQuery=function(){return"pathVertices"===this.type},s.prototype.isPathEdgesQuery=function(){return"pathEdges"===this.type},s.prototype.isEdgeQuery=function(){return"edge"===this.type},s.prototype.isVertexQuery=function(){return"vertex"===this.type},s.prototype.isNeighborQuery=function(){return"neighbor"===this.type},s.prototype.allowsRestrict=function(){return this.isEdgeQuery()||this.isVertexQuery()||this.isNeighborQuery()};var t=function(a){this.stack=[],this.callStack=[],this.bindVars={graphName:a.__name},this.graph=a,this.cursor=null,this.lastVar="",this._path=[],this._pathVertices=[],this._pathEdges=[],this._getPath=!1};t.prototype._addToPrint=function(a){var b=Array.prototype.slice.call(arguments);b.shift();var c={};c.name=a,b.length>0&&void 0!==b[0]?c.params=b:c.params=[],this.callStack.push(c)},t.prototype._PRINT=function(a){a.output="[ GraphAQL ",a.output+=this.graph.__name,i.each(this.callStack,function(b){a.prettyPrint&&(a.output+="\n"),a.output+=".",a.output+=b.name,a.output+="(";var c=0;for(c=0;c0&&(a.output+=", "),d.printRecursive(b.params[c],a);a.output+=")"}),a.output+=" ] "},t.prototype._clearCursor=function(){this.cursor&&(this.cursor.dispose(),this.cursor=null)},t.prototype._createCursor=function(){this.cursor||(this.cursor=this.execute())},t.prototype._edges=function(a,b){this._clearCursor(),this.options=b||{};var c=q(a),d="edges_"+this.stack.length,e="FOR "+d+" IN GRAPH_EDGES(@graphName";e+=this.getLastVar()?","+this.getLastVar():",{}",e+=",@options_"+this.stack.length+")",Array.isArray(c)||(c=[c]),this.options.edgeExamples=c,this.options.includeData=!0,this.bindVars["options_"+this.stack.length]=this.options;var f=new s(e,"edge");return this.stack.push(f),this.lastVar=d,this._path.push(d),this._pathEdges.push(d),this},t.prototype.edges=function(a){return this._addToPrint("edges",a),this._edges(a,{direction:"any"})},t.prototype.outEdges=function(a){return this._addToPrint("outEdges",a),this._edges(a,{direction:"outbound"})},t.prototype.inEdges=function(a){return this._addToPrint("inEdges",a),this._edges(a,{direction:"inbound"})},t.prototype._vertices=function(a,b,c){this._clearCursor(),this.options=b||{};var d=q(a),e="vertices_"+this.stack.length,f="FOR "+e+" IN GRAPH_VERTICES(@graphName,";if(void 0!==c)if(Array.isArray(c)){var g;for(f+="[",g=0;g0&&(f+=","),f+="MERGE(@vertexExample_"+this.stack.length+","+c[g]+")";f+="]"}else f+="MERGE(@vertexExample_"+this.stack.length+","+c+")";else f+="@vertexExample_"+this.stack.length;f+=",@options_"+this.stack.length+")",this.bindVars["vertexExample_"+this.stack.length]=d,this.bindVars["options_"+this.stack.length]=this.options;var h=new s(f,"vertex");return this.stack.push(h),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype.vertices=function(a){if(this._addToPrint("vertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,["{'_id': "+b+"._from}","{'_id': "+b+"._to}"])},t.prototype.fromVertices=function(a){if(this._addToPrint("fromVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._from}")},t.prototype.toVertices=function(a){if(this._addToPrint("toVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._to}")},t.prototype.getLastVar=function(){return""===this.lastVar?!1:this.lastVar},t.prototype.path=function(){this._clearCursor();var a=new s("","path");return this.stack.push(a),this},t.prototype.pathVertices=function(){this._clearCursor();var a=new s("","pathVertices");return this.stack.push(a),this},t.prototype.pathEdges=function(){this._clearCursor();var a=new s("","pathEdges");return this.stack.push(a),this},t.prototype.neighbors=function(a,b){this._addToPrint("neighbors",a,b);var c,d=q(a),e="neighbors_"+this.stack.length,f="FOR "+e+" IN GRAPH_NEIGHBORS(@graphName,"+this.getLastVar()+",@options_"+this.stack.length+")";c=b?i.clone(b):{},c.neighborExamples=d,c.includeData=!0,this.bindVars["options_"+this.stack.length]=c;var g=new s(f,"neighbor");return this.stack.push(g),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype._getLastRestrictableStatementInfo=function(){for(var a=this.stack.length-1;!this.stack[a].allowsRestrict();)a--;return{statement:this.stack[a],options:this.bindVars["options_"+a]}},t.prototype.restrict=function(a){var b=j(a);if(0===b.length)return this;this._addToPrint("restrict",a),this._clearCursor();var c,d=this._getLastRestrictableStatementInfo(),e=d.statement,f=d.options;return e.isEdgeQuery()?(r(this.graph._edgeCollections(),b,"edge collections"),c=f.edgeCollectionRestriction||[],f.edgeCollectionRestriction=c.concat(a)):(e.isVertexQuery()||e.isNeighborQuery())&&(r(this.graph._vertexCollections(),b,"vertex collections"),c=f.vertexCollectionRestriction||[],f.vertexCollectionRestriction=c.concat(a)),this},t.prototype.filter=function(a){this._addToPrint("filter",a),this._clearCursor();var b=[];if("[object Array]"!==Object.prototype.toString.call(a)){if("[object Object]"!==Object.prototype.toString.call(a)){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.message,d}b=[a]}else b=a;var e="FILTER MATCHES("+this.getLastVar()+","+JSON.stringify(b)+")";return this.stack.push(new s(e)),this},t.prototype.printQuery=function(){return this.stack.map(function(a){return a.printQuery()}).join(" ")},t.prototype.execute=function(){this._clearCursor();var a=this.printQuery(),b=this.bindVars;return a+=this.stack[this.stack.length-1].isPathQuery()?" RETURN ["+this._path+"]":this.stack[this.stack.length-1].isPathVerticesQuery()?" RETURN FLATTEN(["+this._pathVertices+"])":this.stack[this.stack.length-1].isPathEdgesQuery()?" RETURN FLATTEN(["+this._pathEdges+"])":" RETURN "+this.getLastVar(),g._query(a,b,{count:!0})},t.prototype.toArray=function(){return this._createCursor(),this.cursor.toArray()},t.prototype.count=function(){return this._createCursor(),this.cursor.count()},t.prototype.hasNext=function(){return this._createCursor(),this.cursor.hasNext()},t.prototype.next=function(){return this._createCursor(),this.cursor.next()};var u=function(a,b){var d;if(arguments.length<2)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"2",d;if("string"!=typeof a||""===a)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must not be empty",d;if(!k(b))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must not be empty",d;return{collection:a,from:j(b),to:j(b)}},v=function(a,b,d){var e;if(arguments.length<3)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"3",e;if("string"!=typeof a||""===a)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must be non empty string",e;if(!k(b))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must be non empty string or array",e;if(!k(d))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg3 must be non empty string or array",e;return{collection:a,from:j(b),to:j(d)}},w=function(){var a=n();return i.pluck(a.toArray(),"_key")},x=function(){return n().toArray()},y=function(){var a=[],b=arguments;return Object.keys(b).forEach(function(c){a.push(b[c])}),a},z=function(a){var b=arguments,c=0;Object.keys(b).forEach(function(d){c++,1!==c&&a.push(b[d])})},A=function(a){return a.from=a.from.sort(),a.to=a.to.sort(),a},B=function(a,b,d,g){Array.isArray(d)||(d=[]);var i,j,k,o=n(),p=!0;if(!a)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.message,i;if(b=b||[],!Array.isArray(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i;var q=[],r={};b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,i.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,i;q.push(b),r[b]=a}),o.toArray().forEach(function(a){var b=a.edgeDefinitions;b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b)&&JSON.stringify(a)!==JSON.stringify(r[b]))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,i.errorMessage=b+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,i})});try{o.document(a)}catch(s){if(s.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw s;p=!1}if(p)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_DUPLICATE.code,i.errorMessage=c.errors.ERROR_GRAPH_DUPLICATE.message,i;j=m(b,!1),d.forEach(function(a){l(a,e.TYPE_DOCUMENT)}),b.forEach(function(a,c){var d=A(a);b[c]=d}),d=d.sort();var t=o.save({orphanCollections:d,edgeDefinitions:b,_key:a},g);return k=new H(a,b,j[0],j[1],d,t._rev,t._id)},C=function(a,b,c){Object.defineProperty(a,b,{enumerable:!1,writable:!0}),a[b]=c},D=function(a,b,c,d){d.__idsToRemove[c]=1,a.forEach(function(e){var f=e.edgeDefinitions;e.edgeDefinitions&&f.forEach(function(e){var f=e.from,h=e.to,i=e.collection;if(-1!==f.indexOf(b)||-1!==h.indexOf(b)){var j=g._collection(i).edges(c);j.forEach(function(b){d.__idsToRemove.hasOwnProperty(b._id)||(d.__collectionsToLock[i]=1,D(a,i,b._id,d))})}})})},E=function(a,b){i.each(b,function(b){var d=g._collection(b),e=p(d),h=e.save;e.save=function(d,e,g){if("string"!=typeof d||-1===d.indexOf("/")||"string"!=typeof e||-1===e.indexOf("/")){var j=new f;throw j.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,j.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,j}return a.__edgeDefinitions.forEach(function(a){if(a.collection===b){var g=d.split("/")[0],h=e.split("/")[0];if(!i.contains(a.from,g)||!i.contains(a.to,h)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_INVALID_EDGE.code,j.errorMessage=c.errors.ERROR_GRAPH_INVALID_EDGE.message+" between "+d+" and "+e+".",j}}}),h(d,e,g)},e.remove=function(c,d){-1===c.indexOf("/")&&(c=b+"/"+c);var e=n().toArray(),f=c.split("/")[0];a.__collectionsToLock[f]=1,D(e,f,c,a);try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)})},params:{ids:Object.keys(a.__idsToRemove),options:d}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=e})},F=function(a,b){i.each(b,function(b){var c=g._collection(b),d=p(c);d.remove=function(c,d){var e=n().toArray(),f=b;-1===c.indexOf("/")&&(c=b+"/"+c),a.__collectionsToLock[f]=1,e.forEach(function(b){var d=b.edgeDefinitions;b.edgeDefinitions&&d.forEach(function(b){var d=b.from,h=b.to,i=b.collection;if(-1!==d.indexOf(f)||-1!==h.indexOf(f)){var j=g._collection(i).edges(c);j.length>0&&(a.__collectionsToLock[i]=1,j.forEach(function(b){D(e,i,b._id,a)}))}})});try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)}),a.options?b._remove(a.vertexId,a.options):b._remove(a.vertexId)},params:{ids:Object.keys(a.__idsToRemove),options:d,vertexId:c}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=d})},G=function(a){Object.keys(a).forEach(function(b){"_"!==b.substring(0,1)&&delete a[b]}),a.__edgeDefinitions.forEach(function(b){E(a,[b.collection]),F(a,b.from),F(a,b.to)}),F(a,a.__orphanCollections)},H=function(a,b,c,d,e,f,g){b.forEach(function(a,c){var d=A(a);b[c]=d}),e||(e=[]);var h="object"==typeof ArangoClusterComm;h&&require("org/arangodb/cluster").isCoordinator()&&(h=!1);var i=this;C(this,"__useBuiltIn",h),C(this,"__name",a),C(this,"__vertexCollections",c),C(this,"__edgeCollections",d),C(this,"__edgeDefinitions",b),C(this,"__idsToRemove",{}),C(this,"__collectionsToLock",{}),C(this,"__id",g),C(this,"__rev",f),C(this,"__orphanCollections",e),G(i)},I=function(a){var b,d,e,g=n();try{b=g.document(a)}catch(i){if(i.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw i;var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,j.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,j}return d=m(b.edgeDefinitions,!0),e=b.orphanCollections,e||(e=[]),new H(a,b.edgeDefinitions,d[0],d[1],e,b._rev,b._id)},J=function(a){var b=n();return b.exists(a)},K=function(a,b,c){var d=!0;return c.forEach(function(c){if(c._key!==b){var e=c.edgeDefinitions;e&&e.forEach(function(b){var c=b.from,e=b.to,f=b.collection;(f===a||-1!==c.indexOf(a)||-1!==e.indexOf(a))&&(d=!1)});var f=c.orphanCollections;f&&-1!==f.indexOf(a)&&(d=!1)}}),d},L=function(a,b){var d,e=n();if(!e.exists(a)){var h=new f;throw h.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,h.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,h}if(b===!0){var i=e.document(a),j=i.edgeDefinitions;j.forEach(function(a){var b=a.from,c=a.to,e=a.collection;d=n().toArray(),K(e,i._key,d)&&g._drop(e),b.forEach(function(a){K(a,i._key,d)&&g._drop(a)}),c.forEach(function(a){K(a,i._key,d)&&g._drop(a)})}),d=n().toArray(),i.orphanCollections||(i.orphanCollections=[]),i.orphanCollections.forEach(function(a){if(K(a,i._key,d))try{g._drop(a)}catch(b){}})}return e.remove(a),!0};H.prototype._edgeCollections=function(){return i.values(this.__edgeCollections)},H.prototype._vertexCollections=function(){var a=[];return i.each(this.__orphanCollections,function(b){a.push(g[b])}),i.union(i.values(this.__vertexCollections),a)},H.prototype._EDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].EDGES(a)):e.concat(this.__edgeCollections[d].edges(a)));return e},H.prototype._INEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].INEDGES(a)):e.concat(this.__edgeCollections[d].inEdges(a)));return e},H.prototype._OUTEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].OUTEDGES(a)):e.concat(this.__edgeCollections[d].outEdges(a)));return e},H.prototype._edges=function(a){var b=new t(this);return b.outEdges(a)},H.prototype._vertices=function(a){var b=new t(this);return b.vertices(a)},H.prototype._fromVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._from,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._toVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._to,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._getEdgeCollectionByName=function(a){if(this.__edgeCollections[a])return this.__edgeCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._getVertexCollectionByName=function(a){if(this.__vertexCollections[a])return this.__vertexCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._neighbors=function(a,b){var c=new t(this);return b||(b={}),c.vertices(a).neighbors(b.neighborExamples,b).toArray()},H.prototype._commonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN e";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f};return g._query(h,i,{count:!0}).toArray()},H.prototype._countCommonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN [e.left, e.right, LENGTH(e.neighbors)]";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f},j=g._query(h,i,{count:!0}).toArray(),k={},l={},m=[];return j.forEach(function(a){k[a[0]]||(k[a[0]]=[]),l={},l[a[1]]=a[2],k[a[0]].push(l)}),Object.keys(k).forEach(function(a){l={},l[a]=k[a],m.push(l)}),m},H.prototype._commonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) SORT ATTRIBUTES(e)[0] RETURN e";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e};return g._query(f,h,{count:!0}).toArray()},H.prototype._countCommonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) FOR a in ATTRIBUTES(e) SORT ATTRIBUTES(e)[0] RETURN [ ATTRIBUTES(e)[0], LENGTH(e[a]) ]";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h,{count:!0}).toArray(),j=[];return i.forEach(function(a){var b={};b[a[0]]=a[1],j.push(b)}),j},H.prototype._paths=function(a){var b="RETURN GRAPH_PATHS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return d},H.prototype._shortestPath=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_SHORTEST_PATH(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i},H.prototype._distanceTo=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_DISTANCE_TO(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i[0]},H.prototype._absoluteEccentricity=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_ECCENTRICITY(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._eccentricity=function(a){var b="RETURN GRAPH_ECCENTRICITY(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteCloseness=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_CLOSENESS(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._closeness=function(a){var b="RETURN GRAPH_CLOSENESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteBetweenness=function(a,b){var c="RETURN GRAPH_ABSOLUTE_BETWEENNESS(@graphName,@example,@options)";b=b||{};var d={example:a,graphName:this.__name,options:b},e=g._query(c,d).toArray();return 1===e.length?e[0]:e},H.prototype._betweenness=function(a){var b="RETURN GRAPH_BETWEENNESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._radius=function(a){var b="RETURN GRAPH_RADIUS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._diameter=function(a){var b="RETURN GRAPH_DIAMETER(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._extendEdgeDefinitions=function(a){a=A(a);var b,d=this,e=a.collection;if(void 0!==this.__edgeCollections[e])throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,b.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,b;g._graphs.toArray().forEach(function(d){var g=d.edgeDefinitions;g.forEach(function(d){var g=d.collection;if(g===e&&JSON.stringify(d)!==JSON.stringify(a))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,b.errorMessage=g+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,b})}),m([a]),this.__edgeDefinitions.push(a),g._graphs.update(this.__name,{edgeDefinitions:this.__edgeDefinitions}),this.__edgeCollections[a.collection]=g[a.collection],a.from.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),a.to.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),G(this)};var M=function(a,b,c,d,e){var f=[],h=I(a._key),j=a.edgeDefinitions,k=!1;j.forEach(function(c,d){c.collection===b.collection?(k=!0,j[d].from=b.from,j[d].to=b.to,g._graphs.update(a._key,{edgeDefinitions:j}),a._key===e.__name&&(e.__edgeDefinitions[d].from=b.from,e.__edgeDefinitions[d].to=b.to)):(f=i.union(f,c.from),f=i.union(f,c.to))}),k&&(a._key===e.__name?(c.forEach(function(a){void 0===e.__vertexCollections[a]&&(e.__vertexCollections[a]=g[a]);try{e._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete e.__vertexCollections[a],e._addVertexCollection(a))})):(c.forEach(function(a){try{h._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete h.__vertexCollections[a],h._addVertexCollection(a))})))};H.prototype._editEdgeDefinitions=function(a){a=A(a);var b=this;if(void 0===this.__edgeCollections[a.collection]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}m([a]);var e,g=[];this.__edgeDefinitions.forEach(function(b){a.collection===b.collection&&(e=b)});var h=i.union(e.from,e.to),j=i.union(a.from,a.to);h.forEach(function(a){-1===j.indexOf(a)&&g.push(a)});var k=n().toArray();k.forEach(function(c){M(c,a,j,g,b)}),G(this)},H.prototype._deleteEdgeDefinition=function(a,b){if(void 0===this.__edgeCollections[a]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}var e,h=this.__edgeDefinitions,j=this,k=[],l=[];h.forEach(function(b,c){b.collection===a?(e=c,l=b.from,l=i.union(l,b.to)):(k=i.union(k,b.from),k=i.union(k,b.to))}),this.__edgeDefinitions.splice(e,1),l.forEach(function(a){-1===k.indexOf(a)&&j.__orphanCollections.push(a)}),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections,edgeDefinitions:this.__edgeDefinitions}),b&&g._drop(a)},H.prototype._addVertexCollection=function(a,b){var d,e=g._collection(a);if(null===e){if(b===!1)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=a+c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;g._create(a)}else if(2!==e.type())throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.code,d.errorMessage=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.message,d;if(void 0!==this.__vertexCollections[a])throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.message,d;if(i.contains(this.__orphanCollections,a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.message,d;this.__orphanCollections.push(a),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections})},H.prototype._orphanCollections=function(){return this.__orphanCollections},H.prototype._removeVertexCollection=function(a,b){var d;if(null===g._collection(a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;var e=this.__orphanCollections.indexOf(a);if(-1===e)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.code,d.errorMessage=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.message,d;if(this.__orphanCollections.splice(e,1),delete this[a],g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections}),b===!0){var h=n().toArray();K(a,null,h)&&g._drop(a)}G(this)},H.prototype._getConnectingEdges=function(a,b,c){c=c||{};var d={includeData:!0};c.vertex1CollectionRestriction&&(d.startVertexCollectionRestriction=c.vertex1CollectionRestriction),c.vertex2CollectionRestriction&&(d.endVertexCollectionRestriction=c.vertex2CollectionRestriction),c.edgeCollectionRestriction&&(d.edgeCollectionRestriction=c.edgeCollectionRestriction),c.edgeExamples&&(d.edgeExamples=c.edgeExamples),b&&(d.neighborExamples=b);var e="RETURN GRAPH_EDGES(@graphName,@vertexExample,@options)",f={graphName:this.__name,vertexExample:a,options:d},h=g._query(e,f).toArray();return h[0]},H.prototype._PRINT=function(a){var b=this.__name,c=o(this.__edgeDefinitions);a.output+="[ Graph ",a.output+=b,a.output+=" EdgeDefinitions: ",d.printRecursive(c,a),a.output+=" VertexCollections: ",d.printRecursive(this.__orphanCollections,a),a.output+=" ]"},a._undirectedRelation=u,a._directedRelation=function(){return v.apply(this,arguments)},a._relation=v,a._graph=I,a._edgeDefinitions=y,a._extendEdgeDefinitions=z,a._create=B,a._drop=L,a._exists=J,a._list=w,a._listObjects=x}),module.define("org/arangodb/graph-blueprint",function(a,b){var c=require("org/arangodb"),d=require("org/arangodb/is"),e=require("org/arangodb/graph-common"),f=e.Edge,g=e.Graph,h=e.Vertex,i=e.GraphArray,j=e.Iterator,k=require("org/arangodb/api/graph").GraphAPI;f.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,this._graph.emptyCachedPredecessors(),c=k.putEdge(this._graph._properties._key,this._properties._key,d),this._properties=c.edge,a},h.prototype.edges=function(a,b){var c,d,e=new i;for(d=k.postEdges(this._graph._vertices._database,this._graph._properties._key,this,{filter:{direction:a,labels:b}});d.hasNext();)c=new f(this._graph,d.next()),e.push(c);return e},h.prototype.getInEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("in",a)},h.prototype.getOutEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("out",a)},h.prototype.getEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("any",a)},h.prototype.inbound=function(){return this.getInEdges()},h.prototype.outbound=function(){return this.getOutEdges()},h.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,c=k.putVertex(this._graph._properties._key,this._properties._key,d),this._properties=c.vertex,a},g.prototype.initialize=function(a,b,e){var f;return d.notExisty(b)&&d.notExisty(e)?f=k.getGraph(a):("object"==typeof b&&"function"==typeof b.name&&(b=b.name()),"object"==typeof e&&"function"==typeof e.name&&(e=e.name()),f=k.postGraph({_key:a,vertices:b,edges:e})),this._properties=f.graph,this._vertices=c.db._collection(this._properties.edgeDefinitions[0].from[0]),this._edges=c.db._collection(this._properties.edgeDefinitions[0].collection),this._verticesCache={},this._edgesCache={},this.predecessors={},this.distances={},this},g.getAll=function(){return k.getAllGraphs()},g.drop=function(a){k.deleteGraph(a)},g.prototype.drop=function(){k.deleteGraph(this._properties._key)},g.prototype._saveEdge=function(a,b,c,d){var e;return this.emptyCachedPredecessors(),d._key=a,d._from=b,d._to=c,e=k.postEdge(this._properties._key,d),new f(this,e.edge)},g.prototype._saveVertex=function(a,b){var c;return d.existy(a)&&(b._key=a),c=k.postVertex(this._properties._key,b),new h(this,c.vertex)},g.prototype._replaceVertex=function(a,b){k.putVertex(this._properties._key,a,b)},g.prototype._replaceEdge=function(a,b){k.putEdge(this._properties._key,a,b)},g.prototype.getVertex=function(a){var b=k.getVertex(this._properties._key,a);return d.notExisty(b)?null:new h(this,b.vertex)},g.prototype.getVertices=function(){var a=k.getVertices(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new h(b,a)};return new j(c,a,"[vertex iterator]")},g.prototype.getEdge=function(a){var b=k.getEdge(this._properties._key,a);return d.notExisty(b)?null:new f(this,b.edge)},g.prototype.getEdges=function(){var a=k.getEdges(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new f(b,a)};return new j(c,a,"[edge iterator]")},g.prototype.removeVertex=function(a){this.emptyCachedPredecessors(),k.deleteVertex(this._properties._key,a._properties._key),a._properties=void 0},g.prototype.removeEdge=function(a){this.emptyCachedPredecessors(),k.deleteEdge(this._properties._key,a._properties._key),this._edgesCache[a._properties._id]=void 0,a._properties=void 0},a.Edge=f,a.Graph=g,a.Vertex=h,a.GraphArray=i,require("org/arangodb/graph/algorithms-common")}),module.define("org/arangodb/graph-common",function(a,b){var c,d,e,f,g,h=require("org/arangodb/is");g=function(a,b,c){this.next=function(){return b.hasNext()?a(b.next()):void 0},this.hasNext=function(){return b.hasNext()},this._PRINT=function(a){a.output+=c}},f=function(a){void 0!==a&&(this.length=a); +j}}else h=b===e.TYPE_DOCUMENT?g._create(a):g._createEdgeCollection(a),i=!0;return i},m=function(a,b){var d={},h={};return a.forEach(function(a){if(!(a.hasOwnProperty("collection")&&a.hasOwnProperty("from")&&a.hasOwnProperty("to")&&Array.isArray(a.from)&&Array.isArray(a.to))){var i=new f;throw i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i}a.from.concat(a.to).forEach(function(a){l(a,e.TYPE_DOCUMENT,b),d[a]=g[a]}),l(a.collection,e.TYPE_EDGE,b),h[a.collection]=g[a.collection]}),[d,h]},n=function(){var a=g._graphs;if(null===a||void 0===a){var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.code,b.errorMessage=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.message,b}return a},o=function(a){return i.map(a,function(a){var b=a.collection;return b+=": [",b+=a.from.join(", "),b+="] -> [",b+=a.to.join(", "),b+="]"})},p=function(a){var b={};return i.each(i.functions(a),function(c){b[c]=function(){return a[c].apply(a,arguments)}}),b},q=function(a){if(void 0===a)return{};if("string"==typeof a)return{_id:a};if("object"==typeof a)return Array.isArray(a)?i.map(a,function(a){return"string"==typeof a?{_id:a}:a}):a;var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.code,b.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.message,b},r=function(a,b,d){var e=[],g=i.map(a,function(a){return a.name()});if(i.each(b,function(a){i.contains(g,a)||e.push(a)}),e.length>0){var h=new f;throw h.errorNum=c.errors.ERROR_BAD_PARAMETER.code,h.errorMessage=d+": "+e.join(" and ")+" are not known to the graph",h}return!0},s=function(a,b){this.query=a,b&&(this.type=b)};s.prototype.printQuery=function(){return this.query},s.prototype.isPathQuery=function(){return"path"===this.type},s.prototype.isPathVerticesQuery=function(){return"pathVertices"===this.type},s.prototype.isPathEdgesQuery=function(){return"pathEdges"===this.type},s.prototype.isEdgeQuery=function(){return"edge"===this.type},s.prototype.isVertexQuery=function(){return"vertex"===this.type},s.prototype.isNeighborQuery=function(){return"neighbor"===this.type},s.prototype.allowsRestrict=function(){return this.isEdgeQuery()||this.isVertexQuery()||this.isNeighborQuery()};var t=function(a){this.stack=[],this.callStack=[],this.bindVars={graphName:a.__name},this.graph=a,this.cursor=null,this.lastVar="",this._path=[],this._pathVertices=[],this._pathEdges=[],this._getPath=!1};t.prototype._addToPrint=function(a){var b=Array.prototype.slice.call(arguments);b.shift();var c={};c.name=a,b.length>0&&void 0!==b[0]?c.params=b:c.params=[],this.callStack.push(c)},t.prototype._PRINT=function(a){a.output="[ GraphAQL ",a.output+=this.graph.__name,i.each(this.callStack,function(b){a.prettyPrint&&(a.output+="\n"),a.output+=".",a.output+=b.name,a.output+="(";var c=0;for(c=0;c0&&(a.output+=", "),d.printRecursive(b.params[c],a);a.output+=")"}),a.output+=" ] "},t.prototype._clearCursor=function(){this.cursor&&(this.cursor.dispose(),this.cursor=null)},t.prototype._createCursor=function(){this.cursor||(this.cursor=this.execute())},t.prototype._edges=function(a,b){this._clearCursor(),this.options=b||{};var c=q(a),d="edges_"+this.stack.length,e="FOR "+d+" IN GRAPH_EDGES(@graphName";e+=this.getLastVar()?","+this.getLastVar():",{}",e+=",@options_"+this.stack.length+")",Array.isArray(c)||(c=[c]),this.options.edgeExamples=c,this.options.includeData=!0,this.bindVars["options_"+this.stack.length]=this.options;var f=new s(e,"edge");return this.stack.push(f),this.lastVar=d,this._path.push(d),this._pathEdges.push(d),this},t.prototype.edges=function(a){return this._addToPrint("edges",a),this._edges(a,{direction:"any"})},t.prototype.outEdges=function(a){return this._addToPrint("outEdges",a),this._edges(a,{direction:"outbound"})},t.prototype.inEdges=function(a){return this._addToPrint("inEdges",a),this._edges(a,{direction:"inbound"})},t.prototype._vertices=function(a,b,c){this._clearCursor(),this.options=b||{};var d=q(a),e="vertices_"+this.stack.length,f="FOR "+e+" IN GRAPH_VERTICES(@graphName,";if(void 0!==c)if(Array.isArray(c)){var g;for(f+="[",g=0;g0&&(f+=","),f+="MERGE(@vertexExample_"+this.stack.length+","+c[g]+")";f+="]"}else f+="MERGE(@vertexExample_"+this.stack.length+","+c+")";else f+="@vertexExample_"+this.stack.length;f+=",@options_"+this.stack.length+")",this.bindVars["vertexExample_"+this.stack.length]=d,this.bindVars["options_"+this.stack.length]=this.options;var h=new s(f,"vertex");return this.stack.push(h),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype.vertices=function(a){if(this._addToPrint("vertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,["{'_id': "+b+"._from}","{'_id': "+b+"._to}"])},t.prototype.fromVertices=function(a){if(this._addToPrint("fromVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._from}")},t.prototype.toVertices=function(a){if(this._addToPrint("toVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._to}")},t.prototype.getLastVar=function(){return""===this.lastVar?!1:this.lastVar},t.prototype.path=function(){this._clearCursor();var a=new s("","path");return this.stack.push(a),this},t.prototype.pathVertices=function(){this._clearCursor();var a=new s("","pathVertices");return this.stack.push(a),this},t.prototype.pathEdges=function(){this._clearCursor();var a=new s("","pathEdges");return this.stack.push(a),this},t.prototype.neighbors=function(a,b){this._addToPrint("neighbors",a,b);var c,d=q(a),e="neighbors_"+this.stack.length,f="FOR "+e+" IN GRAPH_NEIGHBORS(@graphName,"+this.getLastVar()+",@options_"+this.stack.length+")";c=b?i.clone(b):{},c.neighborExamples=d,c.includeData=!0,this.bindVars["options_"+this.stack.length]=c;var g=new s(f,"neighbor");return this.stack.push(g),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype._getLastRestrictableStatementInfo=function(){for(var a=this.stack.length-1;!this.stack[a].allowsRestrict();)a--;return{statement:this.stack[a],options:this.bindVars["options_"+a]}},t.prototype.restrict=function(a){var b=j(a);if(0===b.length)return this;this._addToPrint("restrict",a),this._clearCursor();var c,d=this._getLastRestrictableStatementInfo(),e=d.statement,f=d.options;return e.isEdgeQuery()?(r(this.graph._edgeCollections(),b,"edge collections"),c=f.edgeCollectionRestriction||[],f.edgeCollectionRestriction=c.concat(a)):(e.isVertexQuery()||e.isNeighborQuery())&&(r(this.graph._vertexCollections(),b,"vertex collections"),c=f.vertexCollectionRestriction||[],f.vertexCollectionRestriction=c.concat(a)),this},t.prototype.filter=function(a){this._addToPrint("filter",a),this._clearCursor();var b=[];if("[object Array]"!==Object.prototype.toString.call(a)){if("[object Object]"!==Object.prototype.toString.call(a)){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.message,d}b=[a]}else b=a;var e="FILTER MATCHES("+this.getLastVar()+","+JSON.stringify(b)+")";return this.stack.push(new s(e)),this},t.prototype.printQuery=function(){return this.stack.map(function(a){return a.printQuery()}).join(" ")},t.prototype.execute=function(){this._clearCursor();var a=this.printQuery(),b=this.bindVars;return a+=this.stack[this.stack.length-1].isPathQuery()?" RETURN ["+this._path+"]":this.stack[this.stack.length-1].isPathVerticesQuery()?" RETURN FLATTEN(["+this._pathVertices+"])":this.stack[this.stack.length-1].isPathEdgesQuery()?" RETURN FLATTEN(["+this._pathEdges+"])":" RETURN "+this.getLastVar(),g._query(a,b,{count:!0})},t.prototype.toArray=function(){return this._createCursor(),this.cursor.toArray()},t.prototype.count=function(){return this._createCursor(),this.cursor.count()},t.prototype.hasNext=function(){return this._createCursor(),this.cursor.hasNext()},t.prototype.next=function(){return this._createCursor(),this.cursor.next()};var u=function(a,b){var d;if(arguments.length<2)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"2",d;if("string"!=typeof a||""===a)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must not be empty",d;if(!k(b))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must not be empty",d;return{collection:a,from:j(b),to:j(b)}},v=function(a,b,d){var e;if(arguments.length<3)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"3",e;if("string"!=typeof a||""===a)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must be non empty string",e;if(!k(b))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must be non empty string or array",e;if(!k(d))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg3 must be non empty string or array",e;return{collection:a,from:j(b),to:j(d)}},w=function(){var a=n();return i.pluck(a.toArray(),"_key")},x=function(){return n().toArray()},y=function(){var a=[],b=arguments;return Object.keys(b).forEach(function(c){a.push(b[c])}),a},z=function(a){var b=arguments,c=0;Object.keys(b).forEach(function(d){c++,1!==c&&a.push(b[d])})},A=function(a){return a.from=a.from.sort(),a.to=a.to.sort(),a},B=function(a,b,d,g){Array.isArray(d)||(d=[]);var i,j,k,o=n(),p=!0;if(!a)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.message,i;if(b=b||[],!Array.isArray(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i;var q=[],r={};b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,i.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,i;q.push(b),r[b]=a}),o.toArray().forEach(function(a){var b=a.edgeDefinitions;b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b)&&JSON.stringify(a)!==JSON.stringify(r[b]))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,i.errorMessage=b+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,i})});try{o.document(a)}catch(s){if(s.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw s;p=!1}if(p)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_DUPLICATE.code,i.errorMessage=c.errors.ERROR_GRAPH_DUPLICATE.message,i;j=m(b,!1),d.forEach(function(a){l(a,e.TYPE_DOCUMENT)}),b.forEach(function(a,c){var d=A(a);b[c]=d}),d=d.sort();var t=o.save({orphanCollections:d,edgeDefinitions:b,_key:a},g);return k=new H(a,b,j[0],j[1],d,t._rev,t._id)},C=function(a,b,c){Object.defineProperty(a,b,{enumerable:!1,writable:!0}),a[b]=c},D=function(a,b,c,d){d.__idsToRemove[c]=1,a.forEach(function(e){var f=e.edgeDefinitions;e.edgeDefinitions&&f.forEach(function(e){var f=e.from,h=e.to,i=e.collection;if(-1!==f.indexOf(b)||-1!==h.indexOf(b)){var j=g._collection(i).edges(c);j.forEach(function(b){d.__idsToRemove.hasOwnProperty(b._id)||(d.__collectionsToLock[i]=1,D(a,i,b._id,d))})}})})},E=function(a,b){i.each(b,function(b){var d=g._collection(b),e=p(d),h=e.save;e.save=function(d,e,g){if("string"!=typeof d||-1===d.indexOf("/")||"string"!=typeof e||-1===e.indexOf("/")){var j=new f;throw j.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,j.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,j}return a.__edgeDefinitions.forEach(function(a){if(a.collection===b){var g=d.split("/")[0],h=e.split("/")[0];if(!i.contains(a.from,g)||!i.contains(a.to,h)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_INVALID_EDGE.code,j.errorMessage=c.errors.ERROR_GRAPH_INVALID_EDGE.message+" between "+d+" and "+e+".",j}}}),h(d,e,g)},e.remove=function(c,d){-1===c.indexOf("/")&&(c=b+"/"+c);var e=n().toArray(),f=c.split("/")[0];a.__collectionsToLock[f]=1,D(e,f,c,a);try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)})},params:{ids:Object.keys(a.__idsToRemove),options:d}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=e})},F=function(a,b){i.each(b,function(b){var c=g._collection(b),d=p(c);d.remove=function(c,d){var e=n().toArray(),f=b;-1===c.indexOf("/")&&(c=b+"/"+c),a.__collectionsToLock[f]=1,e.forEach(function(b){var d=b.edgeDefinitions;b.edgeDefinitions&&d.forEach(function(b){var d=b.from,h=b.to,i=b.collection;if(-1!==d.indexOf(f)||-1!==h.indexOf(f)){var j=g._collection(i).edges(c);j.length>0&&(a.__collectionsToLock[i]=1,j.forEach(function(b){D(e,i,b._id,a)}))}})});try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)}),a.options?b._remove(a.vertexId,a.options):b._remove(a.vertexId)},params:{ids:Object.keys(a.__idsToRemove),options:d,vertexId:c}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=d})},G=function(a){Object.keys(a).forEach(function(b){"_"!==b.substring(0,1)&&delete a[b]}),a.__edgeDefinitions.forEach(function(b){E(a,[b.collection]),F(a,b.from),F(a,b.to)}),F(a,a.__orphanCollections)},H=function(a,b,c,d,e,f,g){b.forEach(function(a,c){var d=A(a);b[c]=d}),e||(e=[]);var h="object"==typeof ArangoClusterComm;h&&require("org/arangodb/cluster").isCoordinator()&&(h=!1);var i=this;C(this,"__useBuiltIn",h),C(this,"__name",a),C(this,"__vertexCollections",c),C(this,"__edgeCollections",d),C(this,"__edgeDefinitions",b),C(this,"__idsToRemove",{}),C(this,"__collectionsToLock",{}),C(this,"__id",g),C(this,"__rev",f),C(this,"__orphanCollections",e),G(i)},I=function(a){var b,d,e,g=n();try{b=g.document(a)}catch(i){if(i.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw i;var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,j.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,j}return d=m(b.edgeDefinitions,!0),e=b.orphanCollections,e||(e=[]),new H(a,b.edgeDefinitions,d[0],d[1],e,b._rev,b._id)},J=function(a){var b=n();return b.exists(a)},K=function(a,b,c){var d=!0;return c.forEach(function(c){if(c._key!==b){var e=c.edgeDefinitions;e&&e.forEach(function(b){var c=b.from,e=b.to,f=b.collection;(f===a||-1!==c.indexOf(a)||-1!==e.indexOf(a))&&(d=!1)});var f=c.orphanCollections;f&&-1!==f.indexOf(a)&&(d=!1)}}),d},L=function(a,b){var d,e=n();if(!e.exists(a)){var h=new f;throw h.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,h.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,h}if(b===!0){var i=e.document(a),j=i.edgeDefinitions;j.forEach(function(a){var b=a.from,c=a.to,e=a.collection;d=n().toArray(),K(e,i._key,d)&&g._drop(e),b.forEach(function(a){K(a,i._key,d)&&g._drop(a)}),c.forEach(function(a){K(a,i._key,d)&&g._drop(a)})}),d=n().toArray(),i.orphanCollections||(i.orphanCollections=[]),i.orphanCollections.forEach(function(a){if(K(a,i._key,d))try{g._drop(a)}catch(b){}})}return e.remove(a),!0};H.prototype._edgeCollections=function(){return i.values(this.__edgeCollections)},H.prototype._vertexCollections=function(){var a=[];return i.each(this.__orphanCollections,function(b){a.push(g[b])}),i.union(i.values(this.__vertexCollections),a)},H.prototype._EDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].EDGES(a)):e.concat(this.__edgeCollections[d].edges(a)));return e},H.prototype._INEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].INEDGES(a)):e.concat(this.__edgeCollections[d].inEdges(a)));return e},H.prototype._OUTEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].OUTEDGES(a)):e.concat(this.__edgeCollections[d].outEdges(a)));return e},H.prototype._edges=function(a){var b=new t(this);return b.outEdges(a)},H.prototype._vertices=function(a){var b=new t(this);return b.vertices(a)},H.prototype._fromVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._from,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._toVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._to,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._getEdgeCollectionByName=function(a){if(this.__edgeCollections[a])return this.__edgeCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._getVertexCollectionByName=function(a){if(this.__vertexCollections[a])return this.__vertexCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._neighbors=function(a,b){var c=new t(this);return b||(b={}),c.vertices(a).neighbors(b.neighborExamples,b).toArray()},H.prototype._commonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN e";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f};return g._query(h,i,{count:!0}).toArray()},H.prototype._countCommonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN [e.left, e.right, LENGTH(e.neighbors)]";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f},j=g._query(h,i,{count:!0}).toArray(),k={},l={},m=[];return j.forEach(function(a){k[a[0]]||(k[a[0]]=[]),l={},l[a[1]]=a[2],k[a[0]].push(l)}),Object.keys(k).forEach(function(a){l={},l[a]=k[a],m.push(l)}),m},H.prototype._commonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) SORT ATTRIBUTES(e)[0] RETURN e";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e};return g._query(f,h,{count:!0}).toArray()},H.prototype._countCommonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) FOR a in ATTRIBUTES(e) SORT ATTRIBUTES(e)[0] RETURN [ ATTRIBUTES(e)[0], LENGTH(e[a]) ]";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h,{count:!0}).toArray(),j=[];return i.forEach(function(a){var b={};b[a[0]]=a[1],j.push(b)}),j},H.prototype._paths=function(a){var b="RETURN GRAPH_PATHS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return d},H.prototype._shortestPath=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_SHORTEST_PATH(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i},H.prototype._distanceTo=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_DISTANCE_TO(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i[0]},H.prototype._absoluteEccentricity=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_ECCENTRICITY(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._eccentricity=function(a){var b="RETURN GRAPH_ECCENTRICITY(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteCloseness=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_CLOSENESS(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._closeness=function(a){var b="RETURN GRAPH_CLOSENESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteBetweenness=function(a,b){var c="RETURN GRAPH_ABSOLUTE_BETWEENNESS(@graphName,@example,@options)";b=b||{};var d={example:a,graphName:this.__name,options:b},e=g._query(c,d).toArray();return 1===e.length?e[0]:e},H.prototype._betweenness=function(a){var b="RETURN GRAPH_BETWEENNESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._radius=function(a){var b="RETURN GRAPH_RADIUS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._diameter=function(a){var b="RETURN GRAPH_DIAMETER(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._extendEdgeDefinitions=function(a){a=A(a);var b,d=this,e=a.collection;if(void 0!==this.__edgeCollections[e])throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,b.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,b;g._graphs.toArray().forEach(function(d){var g=d.edgeDefinitions;g.forEach(function(d){var g=d.collection;if(g===e&&JSON.stringify(d)!==JSON.stringify(a))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,b.errorMessage=g+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,b})}),m([a]),this.__edgeDefinitions.push(a),g._graphs.update(this.__name,{edgeDefinitions:this.__edgeDefinitions}),this.__edgeCollections[a.collection]=g[a.collection],a.from.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),a.to.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),G(this)};var M=function(a,b,c,d,e){var f=[],h=I(a._key),j=a.edgeDefinitions,k=!1;j.forEach(function(c,d){c.collection===b.collection?(k=!0,j[d].from=b.from,j[d].to=b.to,g._graphs.update(a._key,{edgeDefinitions:j}),a._key===e.__name&&(e.__edgeDefinitions[d].from=b.from,e.__edgeDefinitions[d].to=b.to)):(f=i.union(f,c.from),f=i.union(f,c.to))}),k&&(a._key===e.__name?(c.forEach(function(a){void 0===e.__vertexCollections[a]&&(e.__vertexCollections[a]=g[a]);try{e._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete e.__vertexCollections[a],e._addVertexCollection(a))})):(c.forEach(function(a){try{h._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete h.__vertexCollections[a],h._addVertexCollection(a))})))};H.prototype._editEdgeDefinitions=function(a){a=A(a);var b=this;if(void 0===this.__edgeCollections[a.collection]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}m([a]);var e,g=[];this.__edgeDefinitions.forEach(function(b){a.collection===b.collection&&(e=b)});var h=i.union(e.from,e.to),j=i.union(a.from,a.to);h.forEach(function(a){-1===j.indexOf(a)&&g.push(a)});var k=n().toArray();k.forEach(function(c){M(c,a,j,g,b)}),G(this)},H.prototype._deleteEdgeDefinition=function(a,b){if(void 0===this.__edgeCollections[a]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}var e,h=this.__edgeDefinitions,j=this,k=[],l=[];h.forEach(function(b,c){b.collection===a?(e=c,l=b.from,l=i.union(l,b.to)):(k=i.union(k,b.from),k=i.union(k,b.to))}),this.__edgeDefinitions.splice(e,1),l.forEach(function(a){-1===k.indexOf(a)&&j.__orphanCollections.push(a)}),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections,edgeDefinitions:this.__edgeDefinitions}),b&&g._drop(a)},H.prototype._addVertexCollection=function(a,b){var d,e=g._collection(a);if(null===e){if(b===!1)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=a+c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;g._create(a)}else if(2!==e.type())throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.code,d.errorMessage=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.message,d;if(void 0!==this.__vertexCollections[a])throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.message,d;if(i.contains(this.__orphanCollections,a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.message,d;this.__orphanCollections.push(a),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections})},H.prototype._orphanCollections=function(){return this.__orphanCollections},H.prototype._removeVertexCollection=function(a,b){var d;if(null===g._collection(a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;var e=this.__orphanCollections.indexOf(a);if(-1===e)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.code,d.errorMessage=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.message,d;if(this.__orphanCollections.splice(e,1),delete this[a],g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections}),b===!0){var h=n().toArray();K(a,null,h)&&g._drop(a)}G(this)},H.prototype._getConnectingEdges=function(a,b,c){c=c||{};var d={includeData:!0};c.vertex1CollectionRestriction&&(d.startVertexCollectionRestriction=c.vertex1CollectionRestriction),c.vertex2CollectionRestriction&&(d.endVertexCollectionRestriction=c.vertex2CollectionRestriction),c.edgeCollectionRestriction&&(d.edgeCollectionRestriction=c.edgeCollectionRestriction),c.edgeExamples&&(d.edgeExamples=c.edgeExamples),b&&(d.neighborExamples=b);var e="RETURN GRAPH_EDGES(@graphName,@vertexExample,@options)",f={graphName:this.__name,vertexExample:a,options:d},h=g._query(e,f).toArray();return h[0]},H.prototype._PRINT=function(a){var b=this.__name,c=o(this.__edgeDefinitions);a.output+="[ Graph ",a.output+=b,a.output+=" EdgeDefinitions: ",d.printRecursive(c,a),a.output+=" VertexCollections: ",d.printRecursive(this.__orphanCollections,a),a.output+=" ]"},a._undirectedRelation=u,a._directedRelation=function(){return v.apply(this,arguments)},a._relation=v,a._graph=I,a._edgeDefinitions=y,a._extendEdgeDefinitions=z,a._create=B,a._drop=L,a._exists=J,a._list=w,a._listObjects=x}),module.define("org/arangodb/graph-blueprint",function(a,b){var c=require("org/arangodb"),d=require("org/arangodb/is"),e=require("org/arangodb/graph-common"),f=e.Edge,g=e.Graph,h=e.Vertex,i=e.GraphArray,j=e.Iterator,k=require("org/arangodb/api/graph").GraphAPI;f.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,this._graph.emptyCachedPredecessors(),c=k.putEdge(this._graph._properties._key,this._properties._key,d),this._properties=c.edge,a},h.prototype.edges=function(a,b){var c,d,e=new i;for(d=k.postEdges(this._graph._vertices._database,this._graph._properties._key,this,{filter:{direction:a,labels:b}});d.hasNext();)c=new f(this._graph,d.next()),e.push(c);return e},h.prototype.getInEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("in",a)},h.prototype.getOutEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("out",a)},h.prototype.getEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("any",a)},h.prototype.inbound=function(){return this.getInEdges()},h.prototype.outbound=function(){return this.getOutEdges()},h.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,c=k.putVertex(this._graph._properties._key,this._properties._key,d),this._properties=c.vertex,a},g.prototype.initialize=function(a,b,e){var f;return d.notExisty(b)&&d.notExisty(e)?f=k.getGraph(a):("object"==typeof b&&"function"==typeof b.name&&(b=b.name()),"object"==typeof e&&"function"==typeof e.name&&(e=e.name()),f=k.postGraph({_key:a,vertices:b,edges:e})),this._properties=f.graph,this._vertices=c.db._collection(this._properties.edgeDefinitions[0].from[0]),this._edges=c.db._collection(this._properties.edgeDefinitions[0].collection),this._verticesCache={},this._edgesCache={},this.predecessors={},this.distances={},this},g.getAll=function(){return k.getAllGraphs()},g.drop=function(a){k.deleteGraph(a)},g.prototype.drop=function(){k.deleteGraph(this._properties._key)},g.prototype._saveEdge=function(a,b,c,d){var e;return this.emptyCachedPredecessors(),d._key=a,d._from=b,d._to=c,e=k.postEdge(this._properties._key,d),new f(this,e.edge)},g.prototype._saveVertex=function(a,b){var c;return d.existy(a)&&(b._key=a),c=k.postVertex(this._properties._key,b),new h(this,c.vertex)},g.prototype._replaceVertex=function(a,b){k.putVertex(this._properties._key,a,b)},g.prototype._replaceEdge=function(a,b){k.putEdge(this._properties._key,a,b)},g.prototype.getVertex=function(a){var b=k.getVertex(this._properties._key,a);return d.notExisty(b)?null:new h(this,b.vertex)},g.prototype.getVertices=function(){var a=k.getVertices(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new h(b,a)};return new j(c,a,"[vertex iterator]")},g.prototype.getEdge=function(a){var b=k.getEdge(this._properties._key,a);return d.notExisty(b)?null:new f(this,b.edge)},g.prototype.getEdges=function(){var a=k.getEdges(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new f(b,a)};return new j(c,a,"[edge iterator]")},g.prototype.removeVertex=function(a){this.emptyCachedPredecessors(),k.deleteVertex(this._properties._key,a._properties._key),a._properties=void 0},g.prototype.removeEdge=function(a){this.emptyCachedPredecessors(),k.deleteEdge(this._properties._key,a._properties._key),this._edgesCache[a._properties._id]=void 0,a._properties=void 0},a.Edge=f,a.Graph=g,a.Vertex=h,a.GraphArray=i,require("org/arangodb/graph/algorithms-common")}),module.define("org/arangodb/graph-common",function(a,b){var c,d,e,f,g,h=require("org/arangodb/is");g=function(a,b,c){this.next=function(){return b.hasNext()?a(b.next()):void 0},this.hasNext=function(){return b.hasNext()},this._PRINT=function(a){a.output+=c}},f=function(a){void 0!==a&&(this.length=a); },f.prototype=new Array(0),f.prototype.map=function(a,b){var c,d=this.length;if("function"!=typeof a)throw new TypeError;var e=new f(d);for(c=0;d>c;c++)this.hasOwnProperty(c)&&(e[c]=a.call(b,this[c],c,this));return e},f.prototype.getInVertex=function(){return this.map(function(a){return a.getInVertex()})},f.prototype.getOutVertex=function(){return this.map(function(a){return a.getOutVertex()})},f.prototype.getPeerVertex=function(a){return this.map(function(b){return b.getPeerVertex(a)})},f.prototype.setProperty=function(a,b){return this.map(function(c){return c.setProperty(a,b)})},f.prototype.edges=function(){return this.map(function(a){return a.edges()})},f.prototype.outbound=function(){return this.map(function(a){return a.outbound()})},f.prototype.inbound=function(){return this.map(function(a){return a.inbound()})},f.prototype.getInEdges=function(){var a=arguments;return this.map(function(b){return b.getInEdges.apply(b,a)})},f.prototype.getOutEdges=function(){var a=arguments;return this.map(function(b){return b.getOutEdges.apply(b,a)})},f.prototype.getEdges=function(){var a=arguments;return this.map(function(b){return b.getEdges.apply(b,a)})},f.prototype.degree=function(){return this.map(function(a){return a.degree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.inDegree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.outDegree()})},f.prototype.properties=function(){return this.map(function(a){return a.properties()})},c=function(a,b){this._graph=a,this._id=b._key,this._properties=b},c.prototype.getId=function(){return this._properties._key},c.prototype.getLabel=function(){return this._properties.$label},c.prototype.getProperty=function(a){return this._properties[a]},c.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},c.prototype.properties=function(){return this._properties._shallowCopy},c.prototype.getInVertex=function(){return this._graph.getVertex(this._properties._to)},c.prototype.getOutVertex=function(){return this._graph.getVertex(this._properties._from)},c.prototype.getPeerVertex=function(a){return a._properties._id===this._properties._to?this._graph.getVertex(this._properties._from):a._properties._id===this._properties._from?this._graph.getVertex(this._properties._to):null},c.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Edge("'+this._properties._key+'")':a.output+="Edge("+this._properties._key+")":a.output+="Edge(<"+this._id+">)":a.output+="[deleted Edge]"},e=function(a,b){this._graph=a,this._id=b._key,this._properties=b},e.prototype.addInEdge=function(a,b,c,d){return this._graph.addEdge(a,this,b,c,d)},e.prototype.addOutEdge=function(a,b,c,d){return this._graph.addEdge(this,a,b,c,d)},e.prototype.degree=function(){return this.getEdges().length},e.prototype.inDegree=function(){return this.getInEdges().length},e.prototype.outDegree=function(){return this.getOutEdges().length},e.prototype.getId=function(){return this._properties._key},e.prototype.getProperty=function(a){return this._properties[a]},e.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},e.prototype.properties=function(){return this._properties._shallowCopy},e.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Vertex("'+this._properties._key+'")':a.output+="Vertex("+this._properties._key+")":a.output+="Vertex(<"+this._id+">)":a.output+="[deleted Vertex]"},d=function(a,b,c,d){this.initialize(a,b,c,d)},d.prototype._prepareEdgeData=function(a,b){var c;return h.notExisty(a)&&h.object(b)&&(a=b,b=null),h.notExisty(b)&&h.existy(a)&&h.existy(a.$label)&&(b=a.$label),c=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{},c.$label=b,c},d.prototype._prepareVertexData=function(a){var b;return b=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{}},d.prototype.getOrAddVertex=function(a){var b=this.getVertex(a);return null===b&&(b=this.addVertex(a)),b},d.prototype.addEdge=function(a,b,c,d,e,f){var g,i;return g=h.string(a)?a:a._properties._id,i=h.string(b)?b:b._properties._id,this._saveEdge(c,g,i,this._prepareEdgeData(e,d),f)},d.prototype.addVertex=function(a,b,c){return this._saveVertex(a,this._prepareVertexData(b),c)},d.prototype.replaceVertex=function(a,b){this._replaceVertex(a,b)},d.prototype.replaceEdge=function(a,b){this._replaceEdge(a,b)},d.prototype.order=function(){return this._vertices.count()},d.prototype.size=function(){return this._edges.count()},d.prototype.emptyCachedPredecessors=function(){this.predecessors={}},d.prototype.getCachedPredecessors=function(a,b){var c;return this.predecessors[a.getId()]&&(c=this.predecessors[a.getId()][b.getId()]),c},d.prototype.setCachedPredecessors=function(a,b,c){this.predecessors[a.getId()]||(this.predecessors[a.getId()]={}),this.predecessors[a.getId()][b.getId()]=c},d.prototype.constructVertex=function(a){var b,c;"string"==typeof a?b=a:(b=a._id,c=a._rev);var d=this._verticesCache[b];if(void 0===d||d._rev!==c){var f=this._vertices.document(b);if(!f)throw"accessing a deleted vertex";this._verticesCache[b]=d=new e(this,f)}return d},d.prototype.constructEdge=function(a){var b,d,e,f;if("string"==typeof a?b=a:(b=a._id,d=a._rev),e=this._edgesCache[b],void 0===e||e._rev!==d){if(f=this._edges.document(b),!f)throw"accessing a deleted edge";this._edgesCache[b]=e=new c(this,f)}return e},d.prototype._PRINT=function(a){a.output+='Graph("'+this._properties._key+'")'},a.Edge=c,a.Graph=d,a.Vertex=e,a.GraphArray=f,a.Iterator=g}),module.define("org/arangodb/graph",function(a,b){var c=require("org/arangodb/graph-blueprint");Object.keys(c).forEach(function(b){a[b]=c[b]})}),module.define("org/arangodb/is",function(a,b){"use strict";function c(a){return null!==a&&void 0!==a}function d(a){return!c(a)}function e(a){return a!==!1&&c(a)}function f(a){return!e(a)}["Object","Array","Boolean","Date","Function","Number","String","RegExp"].forEach(function(b){a[b.toLowerCase()]=function(a){return Object.prototype.toString.call(a)==="[object "+b+"]"},a["no"+b]=function(a){return Object.prototype.toString.call(a)!=="[object "+b+"]"}}),a.existy=c,a.notExisty=d,a.truthy=e,a.falsy=f}),module.define("org/arangodb/mimetypes",function(a,b){a.mimeTypes={gif:["image/gif",!1],jpg:["image/jpg",!1],png:["image/png",!1],tiff:["image/tiff",!1],ico:["image/x-icon",!1],css:["text/css",!0],js:["text/javascript",!0],json:["application/json",!0],html:["text/html",!0],htm:["text/html",!0],pdf:["application/pdf",!1],ps:["application/postscript",!1],txt:["text/plain",!0],text:["text/plain",!0],xml:["application/xml",!0],dtd:["application/xml-dtd",!0],svg:["image/svg+xml",!0],ttf:["application/x-font-ttf",!1],otf:["application/x-font-opentype",!1],woff:["application/font-woff",!1],eot:["application/vnd.ms-fontobject",!1],bz2:["application/x-bzip2",!1],gz:["application/x-gzip",!1],tgz:["application/x-tar",!1],zip:["application/x-compressed-zip",!1],doc:["application/msword",!1],docx:["application/vnd.openxmlformats-officedocument.wordprocessingml.document",!1],dotx:["application/vnd.openxmlformats-officedocument.wordprocessingml.template",!1],potx:["application/vnd.openxmlformats-officedocument.presentationml.template",!1],ppsx:["application/vnd.openxmlformats-officedocument.presentationml.slideshow",!1],ppt:["application/vnd.ms-powerpoint",!1],pptx:["application/vnd.openxmlformats-officedocument.presentationml.presentation",!1],xls:["application/vnd.ms-excel",!1],xlsb:["application/vnd.ms-excel.sheet.binary.macroEnabled.12",!1],xlsx:["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",!1],xltx:["application/vnd.openxmlformats-officedocument.spreadsheetml.template",!1],swf:["application/x-shockwave-flash",!1]},a.extensions={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"image/svg+xml":["svg"],"application/postscript":["ps"],"image/png":["png"],"application/x-font-ttf":["ttf"],"application/vnd.ms-excel.sheet.binary.macroEnabled.12":["xlsb"],"application/x-font-opentype":["otf"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/x-bzip2":["bz2"],"application/json":["json"],"application/pdf":["pdf"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.ms-fontobject":["eot"],"application/xml-dtd":["dtd"],"application/x-shockwave-flash":["swf"],"image/gif":["gif"],"image/jpg":["jpg"],"application/xml":["xml"],"application/vnd.ms-excel":["xls"],"image/tiff":["tiff"],"application/vnd.ms-powerpoint":["ppt"],"application/font-woff":["woff"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"text/plain":["txt","text"],"application/x-tar":["tgz"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/x-gzip":["gz"],"text/javascript":["js"],"text/html":["html","htm"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"image/x-icon":["ico"],"application/x-compressed-zip":["zip"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"text/css":["css"],"application/msword":["doc"]}}),module.define("org/arangodb/replication",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh"),e={},f={};e.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/logger-state");return d.checkRequestResult(b),b},f.start=function(a){var b=c.db,e="";void 0!==a&&(e="?from="+encodeURIComponent(a));var f=b._connection.PUT("/_api/replication/applier-start"+e,"");return d.checkRequestResult(f),f},f.stop=f.shutdown=function(){var a=c.db,b=a._connection.PUT("/_api/replication/applier-stop","");return d.checkRequestResult(b),b},f.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.forget=function(){var a=c.db,b=a._connection.DELETE("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/replication/applier-config"):e._connection.PUT("/_api/replication/applier-config",JSON.stringify(a)),d.checkRequestResult(b),b};var g=function(a){var b=c.db,e=JSON.stringify(a||{}),f=b._connection.PUT("/_api/replication/sync",e);return d.checkRequestResult(f),f},h=function(){var a=c.db,b=a._connection.GET("/_api/replication/server-id");return d.checkRequestResult(b),b.serverId};a.logger=e,a.applier=f,a.sync=g,a.serverId=h}),module.define("org/arangodb/simple-query-common",function(a,b){function c(a,b,c,d){this._documents=a,this._countTotal=a.length,this._skip=b,this._limit=c,this._cached=!1,this._extra={};var e=this;null!==d&&void 0!==d&&"object"==typeof d&&(["stats","warnings","profile"].forEach(function(a){d.hasOwnProperty(a)&&(e._extra[a]=d[a])}),this._cached=d.cached||!1),this.execute()}function d(){this._execution=null,this._skip=0,this._limit=null,this._countQuery=null,this._countTotal=null,this._batchSize=null}function e(a,b){return 0===a._limit?a=a.clone():0===b?(a=a.clone(),a._limit=0):null===a._limit?(a=a.clone(),a._limit=b):(a=a.clone(),bc&&(b=c);else if(this._skip<0){var d=-this._skip;c>d&&(b=c-d)}null!==this._limit&&b+this._limita){var b=new q;throw b.errorNum=p.ERROR_BAD_PARAMETER,b.errorMessage="limit must be non-negative",b}return e(this,a)},d.prototype.skip=function(a){var b,c;if((void 0===a||null===a)&&(a=0),null!==this._execution)throw"query is already executing";return null===this._limit?(b=this.clone(),null===this._skip||0===this._skip?b._skip=a:b._skip+=a):(c=this.clone().toArray(),b=new l(c),b._skip=a,b._countTotal=c._countTotal),b},d.prototype.toArray=function(){var a;for(this.execute(),a=[];this.hasNext();)a.push(this.next());return a},d.prototype.getBatchSize=function(){return this._batchSize},d.prototype.setBatchSize=function(a){a>=1&&(this._batchSize=a)},d.prototype.count=function(a){return this.execute(),void 0!==a&&a?this._countQuery:this._countTotal},d.prototype.hasNext=function(){return this.execute(),this._execution.hasNext()},d.prototype.next=function(){return this.execute(),this._execution.next()},d.prototype.dispose=function(){null!==this._execution&&this._execution.dispose(),this._execution=null,this._countQuery=null,this._countTotal=null},f.prototype=new d,f.prototype.constructor=f,f.prototype.clone=function(){var a;return a=new f(this._collection),a._skip=this._skip,a._limit=this._limit,a},f.prototype._PRINT=function(a){var b;b="SimpleQueryAll("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},l=function(a){this._documents=a},l.prototype=new d,l.prototype.constructor=l,l.prototype.clone=function(){var a;return a=new l(this._documents),a._skip=this._skip,a._limit=this._limit,a},l.prototype.execute=function(){null===this._execution&&(null===this._skip&&(this._skip=0),this._execution=new c(this._documents,this._skip,this._limit))},l.prototype._PRINT=function(a){var b;b="SimpleQueryArray(documents)",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},g.prototype=new d,g.prototype.constructor=g,g.prototype.clone=function(){var a;return a=new g(this._collection,this._example),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},g.prototype._PRINT=function(a){var b;b="SimpleQueryByExample("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},h.prototype=new d,h.prototype.constructor=h,h.prototype.clone=function(){var a;return a=new h(this._collection,this._condition),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},h.prototype._PRINT=function(a){var b;b="SimpleQueryByCondition("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},i.prototype=new d,i.prototype.constructor=i,i.prototype.clone=function(){var a;return a=new i(this._collection,this._attribute,this._left,this._right,this._type),a._skip=this._skip,a._limit=this._limit,a},i.prototype._PRINT=function(a){var b;b="SimpleQueryRange("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},j.prototype._PRINT=function(a){var b;b="GeoIndex("+this._collection.name()+", "+this._index+")",a.output+=b},j.prototype.near=function(a,b){return new m(this._collection,a,b,this._index)},j.prototype.within=function(a,b,c){return new n(this._collection,a,b,c,this._index)},j.prototype.withinRectangle=function(a,b,c,d){return new o(this._collection,a,b,c,d,this._index)},m=function(a,b,c,d){var e,f;if(this._collection=a,this._latitude=b,this._longitude=c,this._index=void 0===d?null:d,this._distance=null,void 0===d)for(e=a.getIndexes(),f=0;f0&&(this._batchSize=a);var b={collection:this._collection.name()};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/all",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},i.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),example:this._example};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-example";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"hash":e="by-example-hash";break;case"skiplist":e="by-example-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},j.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),condition:this._condition};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-condition";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"skiplist":e="by-condition-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},n.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,right:this._right,left:this._left,closed:1===this._type};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/range",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},m.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/near",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},o.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude,radius:this._radius};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},p.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude1:this._latitude1,longitude1:this._longitude1,latitude2:this._latitude2,longitude2:this._longitude2};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within-rectangle",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},k.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,query:this._query};null!==this._limit&&(b.limit=this._limit),null!==this._index&&(b.index=this._index),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/fulltext",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},a.GeneralArrayCursor=f,a.SimpleQueryAll=g,a.SimpleQueryArray=h,a.SimpleQueryByExample=i,a.SimpleQueryByCondition=j,a.SimpleQueryFulltext=k,a.SimpleQueryGeo=l,a.SimpleQueryNear=m,a.SimpleQueryRange=n,a.SimpleQueryWithin=o,a.SimpleQueryWithinRectangle=p}),module.define("org/arangodb/tutorial",function(a,b){var c=0,d="Type 'tutorial' again to get to the next chapter.",e=[{title:"Welcome to the tutorial!",text:"This is a user-interactive tutorial on ArangoDB and the ArangoDB shell.\nIt will give you a first look into ArangoDB and how it works."},{title:"JavaScript Shell",text:"On this shell's prompt, you can issue arbitrary JavaScript commands.\nSo you are able to do things like...:\n\n number = 123;\n number = number * 10;"},{title:"Running Complex Instructions",text:"You can also run more complex instructions, such as for loops:\n\n for (i = 0; i < 10; i++) { number = number + 1; }"},{title:"Printing Results",text:'As you can see, the result of the last command executed is printed automatically. To explicitly print a value at any other time, there is the print function:\n\n for (i = 0; i < 5; ++i) { print("I am a JavaScript shell"); }'},{title:"Creating Collections",text:"ArangoDB is a document database. This means that we store data as documents (which are similar to JavaScript objects) in so-called 'collections'. Let's create a collection named 'places' now:\n\n db._create('places');\n\nNote: each collection is identified by a unique name. Trying to create a collection that already exists will produce an error."},{title:"Displaying Collections",text:"Now you can take a look at the collection(s) you just created:\n\n db._collections();\n\nPlease note that all collections will be returned, including ArangoDB's pre-defined system collections."},{title:"Creating Documents",text:'Now we have a collection, but it is stil empty. So let\'s create some documents!\n\n db.places.save({ _key : "foo", city : "foo-city" });\n for (i = 0; i <= 10; i++) { db.places.save({ _key: "example" + i, zipcode: i }) };'},{title:"Displaying All Documents",text:"You want to take a look at your docs? No problem:\n\n db.places.toArray();"},{title:"Counting Documents",text:"To see how many documents there are in a collection, use the 'count' method:\n\n db.places.count();"},{title:"Retrieving Single Documents",text:"As you can see, each document has some meta attributes '_id', '_key' and '_rev'.\nThe '_key' attribute can be used to quickly retrieve a single document from a collection:\n\n db.places.document(\"foo\");\n db.places.document(\"example5\");"},{title:"Retrieving Single Documents",text:"The '_id' attribute can also be used to retrieve documents using the 'db' object:\n\n db._document(\"places/foo\");\n db._document(\"places/example5\");"},{title:"Modifying Documents",text:'You can modify existing documents. Try to add a new attribute to a document and verify whether it has been added:\n\n db._update("places/foo", { zipcode: 39535 });\n db._document("places/foo");'},{title:"Document Revisions",text:"Note that after updating the document, its '_rev' attribute changed automatically.\nThe '_rev' attribute contains a document revision number, and it can be used for conditional modifications. Here's an example of how to avoid lost updates in case multiple clients are accessing the documents in parallel:\n\n doc = db._document(\"places/example1\");\n db._update(\"places/example1\", { someValue: 23 });\n db._update(doc, { someValue: 42 });\n\nNote that the first update will succeed because it was unconditional. The second update however is conditional because we're also passing the document's revision id in the first parameter to _update. As the revision id we're passing to update does not match the document's current revision anymore, the update is rejected."},{title:"Removing Documents",text:'Deleting single documents can be achieved by providing the document _id or _key:\n\n db._remove("places/example7");\n db.places.remove("example8");\n db.places.count();'},{title:"Searching Documents",text:'Searching for documents with specific attributes can be done by using the byExample method:\n\n db._create("users");\n for (i = 0; i < 10; ++i) { db.users.save({ name: "username" + i, active: (i % 3 == 0), age: 30 + i }); }\n db.users.byExample({ active: false }).toArray();\n db.users.byExample({ name: "username3", active: true }).toArray();\n'},{title:"Running AQL Queries",text:'ArangoDB also provides a query language for more complex matching:\n\n db._query("FOR u IN users FILTER u.active == true && u.age >= 33 RETURN { username: u.name, age: u.age }").toArray();'},{title:"Using Databases",text:"By default, the ArangoShell connects to the default database. The default database is named '_system'. To create another database, use the '_createDatabase' method of the 'db' object. To switch into an existing database, use '_useDatabase'. To get rid of a database and all of its collections, use '_dropDatabase':\n\n db._createDatabase(\"mydb\");\n db._useDatabase(\"mydb\");\n db._dropDatabase(\"mydb\");"}];a._PRINT=function(a){function b(a){return a.replace(/\n {2}(.+?)(?=\n)/g,"\n "+f.COLOR_MAGENTA+"$1"+f.COLOR_RESET)}var f=require("internal").COLORS,g=f.COLOR_BOLD_BLUE+(c+1)+". "+e[c].title+f.COLOR_RESET;a.output+="\n\n"+g+"\n\n"+b(e[c].text+"\n")+"\n",++c,c>=e.length?(a.output+="Congratulations! You finished the tutorial.\n",c=0):a.output+=d+"\n"}}),module.define("org/arangodb-common",function(a,b){"use strict";var c=require("internal"),d=require("fs"),e=require("org/arangodb/mimetypes").mimeTypes;Object.keys(c.errors).forEach(function(b){ -a[b]=c.errors[b].code}),a.errors=c.errors,a.ArangoError=c.ArangoError,a.defineModule=function(a,e){var f,g,h;f=d.read(e),h=c.db._collection("_modules"),null===h&&(h=c.db._create("_modules",{isSystem:!0})),a=b.normalize(a),g=h.firstExample({path:a}),null===g?h.save({path:a,content:f}):h.replace(g,{path:a,content:f})},a.guessContentType=function(a,b){var c=/\.([a-zA-Z0-9]+)$/,d=c.exec(a);if(null!==d){var f=d[1];if(e.hasOwnProperty(f)){var g=e[f];return g[1]?g[0]+"; charset=utf-8":g[0]}}return b?b:"text/plain; charset=utf-8"},a.normalizeURL=function(a){var b,c,d,e,f,g;if(""===a)return"./";for(d=a.split("/"),"."===d[0]||".."===d[0]?(f=d[0]+"/",d.shift(),e=d):""===d[0]?(f="/",d.shift(),e=d):(f="./",e=d),c=[],b=0;b0&&(l=d[h]>=k.length?d[h]:k.length);var m=h;e.hasOwnProperty("rename")&&e.rename.hasOwnProperty(h)&&(m=e.rename[h]),f.push({id:h,fixedLength:l,length:l||m.length}),g[0][j++]=m}b.forEach(function(a,b){g[b+1]=[],f.forEach(function(c){if(a.hasOwnProperty(c.id)){var d;d=e.prettyStrings&&"string"==typeof a[c.id]?a[c.id]:JSON.stringify(a[c.id])||"",g[b+1].push(d),d.length>c.length&&!c.fixedLength&&(c.length=Math.min(d.length,100))}else g[b+1].push("")})});var n=function(){var b=[];return f.forEach(function(c){b.push(a.stringPadding("",c.length,"-","r"))}),e.framed?"+-"+b.join("-+-")+"-+\n":b.join(" ")+"\n"},o=function(){var d="";return e.framed&&(d+=n()),g.forEach(function(b,c){var g=[];b.forEach(function(c,d){var e=f[d].length,h=b[d];h.length>e&&(h=h.substr(0,e-k.length)+k),g.push(a.stringPadding(h,e," ","r"))}),d+=e.framed?"| "+g.join(" | ")+" |\n":g.join(" ")+"\n",0===c&&(d+=n())}),d+=n(),e.hideTotal||(d+=c.sprintf(e.totalString,String(b.length))),d};Array.isArray(b)&&(0===b.length?a.print(e.emptyString||"no document(s)"):a.print(o()))},a.stringPadding=function(a,b,c,d){function e(a,b){var c,d="";for(c=0;a>c;++c)d+=b;return d}if("undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=" "),b+1>=a.length)switch(d||"r"){case"l":a=e(b+1-a.length,c)+a;break;case"b":var f=b-a.length,g=Math.ceil(f/2),h=f-g;a=e(h+1,c)+a+e(g+1,c);break;default:a+=e(b+1-a.length,c)}return a},a.throwDownloadError=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.code,errorMessage:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.message+": "+String(b)})},a.throwFileNotFound=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_FILE_NOT_FOUND.code,errorMessage:a.errors.ERROR_FILE_NOT_FOUND.message+": "+String(b)})},a.throwBadParameter=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_BAD_PARAMETER.code,errorMessage:a.errors.ERROR_BAD_PARAMETER.message+": "+String(b)})},a.checkParameter=function(b,c,d){var e;for(e=0;ec?"\\u000":256>c?"\\u00":4096>c?"\\u0":"\\u",b+=c.toString(16),i[a]=b,b}function b(b){return'"'+b.replace(n,a)+'"'}function c(a){var b,c="";if(a.prettyPrint)for(c+="\n",b=0;b=b.emit&&(h.output(b.output),b.output=""),b.path=i,g=", "}b.level=f-1,b.output+=" ",c(b),d&&(b.output+=j.COLOR_PUNCTUATION),b.output+="]",d&&(b.output+=j.COLOR_RESET)}}function e(a,d){var e=d.useColor,f=" ";e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="{",e&&(d.output+=j.COLOR_RESET);var g=d.level+1;d.level=g;var i;try{i=Object.keys(a)}catch(k){i=[]}var l,n=i.length;for(l=0;n>l;++l){var o=i[l],p=a[o];e&&(d.output+=j.COLOR_PUNCTUATION),d.output+=f,e&&(d.output+=j.COLOR_RESET),c(d),e&&(d.output+=j.COLOR_INDEX),d.output+=b(o),e&&(d.output+=j.COLOR_RESET),d.output+=" : ";var q=d.path;d.path+="["+o+"]",m(p,d),d.path=q,f=", ",d.emit&&d.output.length>=d.emit&&(h.output(d.output),d.output="")}d.level=g-1,d.output+=" ",c(d),e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="}",e&&(d.output+=j.COLOR_RESET)}function f(){var a;for(a=0;a0&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var c={customInspect:!0,emit:16384,level:0,limitString:80,names:[],output:"",path:"~",prettyPrint:l,seen:[],showFunction:!1,useColor:k,useToString:!0};m(arguments[a],c),b(c.output)}b("\n")}var h=require("internal");global.ArangoError?(h.ArangoError=global.ArangoError,delete global.ArangoError):(h.ArangoError=function(a){void 0!==a&&(this.error=a.error,this.code=a.code,this.errorNum=a.errorNum,this.errorMessage=a.errorMessage),this.message=this.toString()},h.ArangoError.prototype=new Error),h.ArangoError.prototype._PRINT=function(a){a.output+=this.toString()},h.ArangoError.prototype.toString=function(){var a=this.errorNum,b=this.errorMessage||this.message;return"[ArangoError "+a+": "+b+"]"},global.SleepAndRequeue&&(h.SleepAndRequeue=global.SleepAndRequeue,delete global.SleepAndRequeue,h.SleepAndRequeue.prototype._PRINT=function(a){a.output+=this.toString()},h.SleepAndRequeue.prototype.toString=function(){return"[SleepAndRequeue sleep: "+this.sleep+"]"}),h.threadNumber=0,global.THREAD_NUMBER&&(h.threadNumber=global.THREAD_NUMBER,delete global.THREAD_NUMBER),h.developmentMode=!1,global.LOGFILE_PATH&&(h.logfilePath=global.LOGFILE_PATH,delete global.LOGFILE_PATH),h.quiet=!1,global.ARANGO_QUIET&&(h.quiet=global.ARANGO_QUIET,delete global.ARANGO_QUIET),h.valgrind=!1,global.VALGRIND&&(h.valgrind=global.VALGRIND,delete global.VALGRIND),h.coverage=!1,global.COVERAGE&&(h.coverage=global.COVERAGE,delete global.COVERAGE),h.version="unknown",global.VERSION&&(h.version=global.VERSION,delete global.VERSION),h.platform="unknown",global.SYS_PLATFORM&&(h.platform=global.SYS_PLATFORM,delete global.SYS_PLATFORM),h.bytesSentDistribution=[],global.BYTES_SENT_DISTRIBUTION&&(h.bytesSentDistribution=global.BYTES_SENT_DISTRIBUTION,delete global.BYTES_SENT_DISTRIBUTION),h.bytesReceivedDistribution=[],global.BYTES_RECEIVED_DISTRIBUTION&&(h.bytesReceivedDistribution=global.BYTES_RECEIVED_DISTRIBUTION,delete global.BYTES_RECEIVED_DISTRIBUTION),h.connectionTimeDistribution=[],global.CONNECTION_TIME_DISTRIBUTION&&(h.connectionTimeDistribution=global.CONNECTION_TIME_DISTRIBUTION,delete global.CONNECTION_TIME_DISTRIBUTION),h.requestTimeDistribution=[],global.REQUEST_TIME_DISTRIBUTION&&(h.requestTimeDistribution=global.REQUEST_TIME_DISTRIBUTION,delete global.REQUEST_TIME_DISTRIBUTION),h.startupPath="",global.STARTUP_PATH&&(h.startupPath=global.STARTUP_PATH,delete global.STARTUP_PATH),""===h.startupPath&&(h.startupPath="."),global.CONFIGURE_ENDPOINT&&(h.configureEndpoint=global.CONFIGURE_ENDPOINT,delete global.CONFIGURE_ENDPOINT),global.REMOVE_ENDPOINT&&(h.removeEndpoint=global.REMOVE_ENDPOINT,delete global.REMOVE_ENDPOINT),global.LIST_ENDPOINTS&&(h.listEndpoints=global.LIST_ENDPOINTS,delete global.LIST_ENDPOINTS),global.SYS_BASE64DECODE&&(h.base64Decode=global.SYS_BASE64DECODE,delete global.SYS_BASE64DECODE),global.SYS_BASE64ENCODE&&(h.base64Encode=global.SYS_BASE64ENCODE,delete global.SYS_BASE64ENCODE),global.SYS_DEBUG_SEGFAULT&&(h.debugSegfault=global.SYS_DEBUG_SEGFAULT,delete global.SYS_DEBUG_SEGFAULT),global.SYS_DEBUG_SET_FAILAT&&(h.debugSetFailAt=global.SYS_DEBUG_SET_FAILAT,delete global.SYS_DEBUG_SET_FAILAT),global.SYS_DEBUG_REMOVE_FAILAT&&(h.debugRemoveFailAt=global.SYS_DEBUG_REMOVE_FAILAT,delete global.SYS_DEBUG_REMOVE_FAILAT), -global.SYS_DEBUG_CLEAR_FAILAT&&(h.debugClearFailAt=global.SYS_DEBUG_CLEAR_FAILAT,delete global.SYS_DEBUG_CLEAR_FAILAT),global.SYS_DEBUG_CAN_USE_FAILAT&&(h.debugCanUseFailAt=global.SYS_DEBUG_CAN_USE_FAILAT,delete global.SYS_DEBUG_CAN_USE_FAILAT),global.SYS_DOWNLOAD&&(h.download=global.SYS_DOWNLOAD,delete global.SYS_DOWNLOAD),global.SYS_EXECUTE&&(h.executeScript=global.SYS_EXECUTE,delete global.SYS_EXECUTE),global.SYS_GET_CURRENT_REQUEST&&(h.getCurrentRequest=global.SYS_GET_CURRENT_REQUEST,delete global.SYS_GET_CURRENT_REQUEST),global.SYS_GET_CURRENT_RESPONSE&&(h.getCurrentResponse=global.SYS_GET_CURRENT_RESPONSE,delete global.SYS_GET_CURRENT_RESPONSE),h.extend=function(a,b){return Object.getOwnPropertyNames(b).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))}),a},global.SYS_LOAD&&(h.load=global.SYS_LOAD,delete global.SYS_LOAD),global.SYS_LOG_LEVEL&&(h.logLevel=global.SYS_LOG_LEVEL,delete global.SYS_LOG_LEVEL),global.SYS_MD5&&(h.md5=global.SYS_MD5,delete global.SYS_MD5),global.SYS_GEN_RANDOM_NUMBERS&&(h.genRandomNumbers=global.SYS_GEN_RANDOM_NUMBERS,delete global.SYS_GEN_RANDOM_NUMBERS),global.SYS_GEN_RANDOM_ALPHA_NUMBERS&&(h.genRandomAlphaNumbers=global.SYS_GEN_RANDOM_ALPHA_NUMBERS,delete global.SYS_GEN_RANDOM_ALPHA_NUMBERS),global.SYS_GEN_RANDOM_SALT&&(h.genRandomSalt=global.SYS_GEN_RANDOM_SALT,delete global.SYS_GEN_RANDOM_SALT),global.SYS_HMAC&&(h.hmac=global.SYS_HMAC,delete global.SYS_HMAC),global.SYS_PBKDF2&&(h.pbkdf2=global.SYS_PBKDF2,delete global.SYS_PBKDF2),global.SYS_CREATE_NONCE&&(h.createNonce=global.SYS_CREATE_NONCE,delete global.SYS_CREATE_NONCE),global.SYS_CHECK_AND_MARK_NONCE&&(h.checkAndMarkNonce=global.SYS_CHECK_AND_MARK_NONCE,delete global.SYS_CHECK_AND_MARK_NONCE),global.SYS_OUTPUT&&(h.stdOutput=global.SYS_OUTPUT,h.output=h.stdOutput,delete global.SYS_OUTPUT),global.SYS_PARSE&&(h.parse=global.SYS_PARSE,delete global.SYS_PARSE),global.SYS_PARSE_FILE&&(h.parseFile=global.SYS_PARSE_FILE,delete global.SYS_PARSE_FILE),global.SYS_PROCESS_STATISTICS&&(h.processStatistics=global.SYS_PROCESS_STATISTICS,delete global.SYS_PROCESS_STATISTICS),global.SYS_RAND&&(h.rand=global.SYS_RAND,delete global.SYS_RAND),global.SYS_SHA512&&(h.sha512=global.SYS_SHA512,delete global.SYS_SHA512),global.SYS_SHA384&&(h.sha384=global.SYS_SHA384,delete global.SYS_SHA384),global.SYS_SHA256&&(h.sha256=global.SYS_SHA256,delete global.SYS_SHA256),global.SYS_SHA224&&(h.sha224=global.SYS_SHA224,delete global.SYS_SHA224),global.SYS_SHA1&&(h.sha1=global.SYS_SHA1,delete global.SYS_SHA1),global.SYS_SERVER_STATISTICS&&(h.serverStatistics=global.SYS_SERVER_STATISTICS,delete global.SYS_SERVER_STATISTICS),global.SYS_SLEEP&&(h.sleep=global.SYS_SLEEP,delete global.SYS_SLEEP),global.SYS_TIME&&(h.time=global.SYS_TIME,delete global.SYS_TIME),global.SYS_WAIT&&(h.wait=global.SYS_WAIT,delete global.SYS_WAIT),global.SYS_IMPORT_CSV_FILE&&(h.importCsvFile=global.SYS_IMPORT_CSV_FILE,delete global.SYS_IMPORT_CSV_FILE),global.SYS_IMPORT_JSON_FILE&&(h.importJsonFile=global.SYS_IMPORT_JSON_FILE,delete global.SYS_IMPORT_JSON_FILE),global.SYS_PROCESS_CSV_FILE&&(h.processCsvFile=global.SYS_PROCESS_CSV_FILE,delete global.SYS_PROCESS_CSV_FILE),global.SYS_PROCESS_JSON_FILE&&(h.processJsonFile=global.SYS_PROCESS_JSON_FILE,delete global.SYS_PROCESS_JSON_FILE),global.SYS_CLIENT_STATISTICS&&(h.clientStatistics=global.SYS_CLIENT_STATISTICS,delete global.SYS_CLIENT_STATISTICS),global.SYS_HTTP_STATISTICS&&(h.httpStatistics=global.SYS_HTTP_STATISTICS,delete global.SYS_HTTP_STATISTICS),global.SYS_EXECUTE_EXTERNAL&&(h.executeExternal=global.SYS_EXECUTE_EXTERNAL,delete global.SYS_EXECUTE_EXTERNAL),global.SYS_EXECUTE_EXTERNAL_AND_WAIT&&(h.executeExternalAndWait=global.SYS_EXECUTE_EXTERNAL_AND_WAIT,delete global.SYS_EXECUTE_EXTERNAL_AND_WAIT),global.SYS_KILL_EXTERNAL&&(h.killExternal=global.SYS_KILL_EXTERNAL,delete global.SYS_KILL_EXTERNAL),global.SYS_STATUS_EXTERNAL&&(h.statusExternal=global.SYS_STATUS_EXTERNAL,delete global.SYS_STATUS_EXTERNAL),global.SYS_REGISTER_TASK&&(h.registerTask=global.SYS_REGISTER_TASK,delete global.SYS_REGISTER_TASK),global.SYS_UNREGISTER_TASK&&(h.unregisterTask=global.SYS_UNREGISTER_TASK,delete global.SYS_UNREGISTER_TASK),global.SYS_GET_TASK&&(h.getTask=global.SYS_GET_TASK,delete global.SYS_GET_TASK),global.SYS_TEST_PORT&&(h.testPort=global.SYS_TEST_PORT,delete global.SYS_TEST_PORT),global.SYS_IS_IP&&(h.isIP=global.SYS_IS_IP,delete global.SYS_IS_IP),h.unitTests=function(){return global.SYS_UNIT_TESTS},h.setUnitTestsResult=function(a){global.SYS_UNIT_TESTS_RESULT=a},h.toArgv=function(a,b){"undefined"==typeof b&&(b=!1);var c=[];for(var d in a)if(a.hasOwnProperty(d))if("commandSwitches"===d){for(var e="",f=0;f1?c.push(a[d][f]):e+=a[d][f];e.length>0&&c.push(e)}else"flatCommands"===d?c=c.concat(a[d]):b?c.push("--"+d+"="+a[d]):(c.push("--"+d),a[d]!==!1?a[d]!==!0?c.push(a[d]):c.push("true"):c.push("false"));return c},h.parseArgv=function(a,b){function c(b,d,e){if(d.indexOf(":")>0){var f=d.indexOf(":"),g=d.slice(0,f);b.hasOwnProperty(g)||(b[g]={}),c(b[g],d.slice(f+1,d.length),e)}else"true"===a[i+1]?b[d]=!0:"false"===a[i+1]?b[d]=!1:isNaN(a[i+1])?b[d]=a[i+1]:b[d]=parseInt(a[i+1])}function d(a,b){a.hasOwnProperty("commandSwitches")||(a.commandSwitches=[]),a.commandSwitches.push(b)}function e(a,b){for(var c=0;c2&&"--"===j.slice(0,2)){var k=j.slice(2,j.length);a.length>i&&"-"!==a[i+1].slice(0,1)?(c(h,k,a[i+1]),i++):d(h,k)}else"--"===j?g=!0:j.length>1&&"-"===j.slice(0,1)?e(h,j.slice(1,j.length)):f(h,j)}return h},h.COLORS={},global.COLORS?(h.COLORS=global.COLORS,delete global.COLORS):["COLOR_RED","COLOR_BOLD_RED","COLOR_GREEN","COLOR_BOLD_GREEN","COLOR_BLUE","COLOR_BOLD_BLUE","COLOR_YELLOW","COLOR_BOLD_YELLOW","COLOR_WHITE","COLOR_BOLD_WHITE","COLOR_CYAN","COLOR_BOLD_CYAN","COLOR_MAGENTA","COLOR_BOLD_MAGENTA","COLOR_BLACK","COLOR_BOLD_BLACK","COLOR_BLINK","COLOR_BRIGHT","COLOR_RESET"].forEach(function(a){h.COLORS[a]=""}),h.COLORS.COLOR_PUNCTUATION=h.COLORS.COLOR_RESET,h.COLORS.COLOR_STRING=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NUMBER=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_INDEX=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_TRUE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_FALSE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NULL=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_UNDEFINED=h.COLORS.COLOR_BRIGHT;var i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},j=h.COLORS,k=!1;global.COLOR_OUTPUT&&(k=global.COLOR_OUTPUT,delete global.COLOR_OUTPUT);var l=!1;global.PRETTY_PRINT&&(l=global.PRETTY_PRINT,delete global.PRETTY_PRINT);var m,n=/[\\\"\x00-\x1f]/g,o=/function ([^\(]*)?\(\) \{ \[native code\] \}/,p=/function ([^\(]*)?\((.*)\) \{/;h.printRecursive=m=function(a,c){var f=c.useColor,g=c.customInspect,i=c.useToString,k=c.limitString,l=c.showFunction;"undefined"==typeof c.seen&&(c.seen=[],c.names=[]);var m=c.seen.indexOf(a);if(m>=0)c.output+=c.names[m];else if(a&&(a instanceof Object||"object"==typeof a&&null===Object.getPrototypeOf(a)))if(c.seen.push(a),c.names.push(c.path),g&&"function"==typeof a._PRINT)a._PRINT(c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="");else if(a instanceof Array)d(a,c);else if(a.toString===Object.prototype.toString||"object"==typeof a&&null===Object.getPrototypeOf(a)){var n=!1;try{(a instanceof Set||a instanceof Map||a instanceof WeakSet||a instanceof WeakMap||"function"==typeof a[Symbol.iterator])&&(c.output+=a.toString(),n=!0)}catch(q){}n||e(a,c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="")}else if("function"==typeof a)try{var r=a.toString();if(00&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var d={names:[],seen:[],path:"~",level:0,output:"",prettyPrint:!1,useColor:!1,customInspect:!0};c(arguments[a],d),b(d.output)}b("\n")},global.start_pretty_print=function(){require("internal").startPrettyPrint()},global.stop_pretty_print=function(){require("internal").stopPrettyPrint()},global.start_color_print=function(a){require("internal").startColorPrint(a,!1)},global.stop_color_print=function(){require("internal").stopColorPrint()}}(),function(){var a=require("internal");global.ArangoConnection&&(a.ArangoConnection=global.ArangoConnection,delete global.ArangoConnection),global.SYS_ARANGO&&(a.arango=global.SYS_ARANGO,delete global.SYS_ARANGO),a.wal={flush:function(b,c){if(a.arango){var d=b?"true":"false",e=c?"true":"false";return void a.arango.PUT("/_admin/wal/flush?waitForSync="+d+"&waitForCollector="+e,"")}throw"not connected"},properties:function(b){if(a.arango)return void 0!==b?a.arango.PUT("/_admin/wal/properties",JSON.stringify(b)):a.arango.GET("/_admin/wal/properties","");throw"not connected"}},a.reloadAqlFunctions=function(){if(a.arango)return void a.arango.POST("/_admin/aql/reload","");throw"not connected"},a.reloadRouting=function(){if(a.arango)return void a.arango.POST("/_admin/routing/reload","");throw"not connected"},a.routingCache=function(){if(a.arango)return a.arango.GET("/_admin/routing/routes","");throw"not connected"},a.reloadAuth=function(){if(a.arango)return void a.arango.POST("/_admin/auth/reload","");throw"not connected"},a.executeServer=function(b){if(a.arango)return a.arango.POST("/_admin/execute",b);throw"not connected"},a.appendCurlRequest=function(b){return function(c,d,e,f){var g,h,i;if("string"!=typeof e&&void 0!==e&&(e=a.inspect(e)),h="shell> curl ","POST"===c?(g=a.arango.POST_RAW(d,e,f),h+="-X "+c+" "):"PUT"===c?(g=a.arango.PUT_RAW(d,e,f),h+="-X "+c+" "):"GET"===c?g=a.arango.GET_RAW(d,f):"DELETE"===c?(g=a.arango.DELETE_RAW(d,f),h+="-X "+c+" "):"PATCH"===c?(g=a.arango.PATCH_RAW(d,e,f),h+="-X "+c+" "):"HEAD"===c?(g=a.arango.HEAD_RAW(d,f),h+="-X "+c+" "):"OPTION"===c&&(g=a.arango.OPTION_RAW(d,e,f),h+="-X "+c+" "),void 0!==f&&""!==f)for(i in f)f.hasOwnProperty(i)&&(h+="--header '"+i+": "+f[i]+"' ");return void 0!==e&&""!==e&&(h+="--data-binary @- "),h+="--dump - http://localhost:8529"+d,b(h),void 0!==e&&""!==e&&e&&(b(" <=b)return String(a);var c,d=[];for(c=1;cc;++c)b+="\n";a.print(b)},global.console=global.console||require("console"),global.db=require("org/arangodb").db,global.arango=require("org/arangodb").arango,global.fm=require("org/arangodb/foxx/manager"),global.ArangoStatement=require("org/arangodb/arango-statement").ArangoStatement,global.tutorial=require("org/arangodb/tutorial");var initHelp=function(){var a=require("internal");if(a.db)try{a.db._collections()}catch(b){}a.quiet!==!0&&(require("org/arangodb").checkAvailableVersions(),a.arango&&a.arango.isConnected&&a.arango.isConnected()&&a.print("Type 'tutorial' for a tutorial or 'help' to see common examples"))};if("undefined"==typeof window){if(initHelp(),global.IS_EXECUTE_SCRIPT||global.IS_EXECUTE_STRING||global.IS_CHECK_SCRIPT||global.IS_UNIT_TESTS||global.IS_JS_LINT)try{var __fs__=require("fs"),__rcf__=__fs__.join(__fs__.home(),".arangosh.rc");if(__fs__.exists(__rcf__)){var __content__=__fs__.read(__rcf__);eval(__content__)}}catch(e){require("console").warn("arangosh.rc: %s",String(e))}try{delete global.IS_EXECUTE_SCRIPT,delete global.IS_EXECUTE_STRING,delete global.IS_CHECK_SCRIPT,delete global.IS_UNIT_TESTS,delete global.IS_JS_LINT}catch(e){}}!function(){function a(a,b){i(a,g+b)}function b(a){var b=require("internal").ShapedJson,c=[];0a?-1:1}),c={};return _.each(b,function(b){c[b]=a.attributes[b]}),c}}),function(){"use strict";window.ArangoQuery=Backbone.Model.extend({urlRoot:"/_api/user",defaults:{name:"",type:"custom",value:""}})}(),window.Replication=Backbone.Model.extend({defaults:{state:{},server:{}},initialize:function(){}}),window.Statistics=Backbone.Model.extend({defaults:{},url:function(){"use strict";return"/_admin/statistics"}}),window.StatisticsDescription=Backbone.Model.extend({defaults:{figures:"",groups:""},url:function(){"use strict";return"/_admin/statistics-description"}}),window.Users=Backbone.Model.extend({defaults:{user:"",active:!1,extra:{}},idAttribute:"user",parse:function(a){return this.isNotNew=!0,a},isNew:function(){return!this.isNotNew},url:function(){return this.isNew()?"/_api/user":""!==this.get("user")?"/_api/user/"+this.get("user"):"/_api/user"},checkPassword:function(a){var b=!1;return $.ajax({cache:!1,type:"POST",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1,success:function(a){b=a.result}}),b},setPassword:function(a){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1})},setExtras:function(a,b){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({extra:{name:a,img:b}}),contentType:"application/json",processData:!1})}}),function(){"use strict";window.CurrentDatabase=Backbone.Model.extend({url:"/_api/database/current",parse:function(a){return a.result}})}(),function(){"use strict";var a=function(a,b,c,d,e,f){var g={contentType:"application/json",processData:!1,type:c};b=b||function(){},f=_.extend({mount:a.encodedMount()},f);var h=_.reduce(f,function(a,b,c){return a+encodeURIComponent(c)+"="+encodeURIComponent(b)+"&"},"?");g.url="/_admin/aardvark/foxxes"+(d?"/"+d:"")+h.slice(0,h.length-1),void 0!==e&&(g.data=JSON.stringify(e)),$.ajax(g).then(function(a){b(null,a)},function(a){window.xhr=a,b(_.extend(a.status?new Error(a.responseJSON?a.responseJSON.errorMessage:a.responseText):new Error("Network Error"),{statusCode:a.status}))})};window.Foxx=Backbone.Model.extend({idAttribute:"mount",defaults:{author:"Unknown Author",name:"",version:"Unknown Version",description:"No description",license:"Unknown License",contributors:[],scripts:{},config:{},deps:{},git:"",system:!1,development:!1},isNew:function(){return!1},encodedMount:function(){return encodeURIComponent(this.get("mount"))},destroy:function(b,c){a(this,c,"DELETE",void 0,void 0,b)},isBroken:function(){return!1},needsAttention:function(){return this.isBroken()||this.needsConfiguration()||this.hasUnconfiguredDependencies()},needsConfiguration:function(){return _.any(this.get("config"),function(a){return void 0===a.current&&a.required!==!1})},hasUnconfiguredDependencies:function(){return _.any(this.get("deps"),function(a){return void 0===a.current&&a.definition.required!==!1})},getConfiguration:function(b){a(this,function(a,c){a||this.set("config",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","config")},setConfiguration:function(b,c){a(this,c,"PATCH","config",b)},getDependencies:function(b){a(this,function(a,c){a||this.set("deps",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","deps")},setDependencies:function(b,c){a(this,c,"PATCH","deps",b)},toggleDevelopment:function(b,c){a(this,function(a,d){a||this.set("development",b),"function"==typeof c&&c(a,d)}.bind(this),"PATCH","devel",b)},runScript:function(b,c,d){a(this,d,"POST","scripts/"+b,c)},runTests:function(b,c){a(this,function(a,b){"function"==typeof c&&c(a?a.responseJSON:a,b)}.bind(this),"POST","tests",b)},isSystem:function(){return this.get("system")},isDevelopment:function(){return this.get("development")},download:function(){window.open("/_db/"+arango.getDatabaseName()+"/_admin/aardvark/foxxes/download/zip?mount="+this.encodedMount())}})}(),function(){"use strict";window.Graph=Backbone.Model.extend({idAttribute:"_key",urlRoot:"/_api/gharial",isNew:function(){return!this.get("_id")},parse:function(a){return a.graph||a},addEdgeDefinition:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/edge",data:JSON.stringify(a)})},deleteEdgeDefinition:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a})},modifyEdgeDefinition:function(a){$.ajax({async:!1,type:"PUT",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a.collection,data:JSON.stringify(a)})},addVertexCollection:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/vertex",data:JSON.stringify({collection:a})})},deleteVertexCollection:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/vertex/"+a})},defaults:{name:"",edgeDefinitions:[],orphanCollections:[]}})}(),function(){"use strict";window.newArangoLog=Backbone.Model.extend({defaults:{lid:"",level:"",timestamp:"",text:"",totalAmount:""},getLogStatus:function(){switch(this.get("level")){case 1:return"Error";case 2:return"Warning";case 3:return"Info";case 4:return"Debug";default:return"Unknown"}}})}(),function(){"use strict";window.Notification=Backbone.Model.extend({defaults:{title:"",date:0,content:"",priority:"",tags:"",seen:!1}})}(),function(){"use strict";window.queryManagementModel=Backbone.Model.extend({defaults:{id:"",query:"",started:"",runTime:""}})}(),function(){"use strict";window.PaginatedCollection=Backbone.Collection.extend({page:0,pagesize:10,totalAmount:0,getPage:function(){return this.page+1},setPage:function(a){return a>=this.getLastPageNumber()?void(this.page=this.getLastPageNumber()-1):1>a?void(this.page=0):void(this.page=a-1)},getLastPageNumber:function(){return Math.max(Math.ceil(this.totalAmount/this.pagesize),1)},getOffset:function(){return this.page*this.pagesize},getPageSize:function(){return this.pagesize},setPageSize:function(a){if("all"===a)this.pagesize="all";else try{a=parseInt(a,10),this.pagesize=a}catch(b){}},setToFirst:function(){this.page=0},setToLast:function(){this.setPage(this.getLastPageNumber())},setToPrev:function(){this.setPage(this.getPage()-1)},setToNext:function(){this.setPage(this.getPage()+1)},setTotal:function(a){this.totalAmount=a},getTotal:function(){return this.totalAmount},setTotalMinusOne:function(){this.totalAmount--}})}(),function(){"use strict";window.Airports=Backbone.Collection.extend({initialize:function(a){this.collectionName=a.collectionName},getAirports:function(a){var b=this;$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for a in airports return {Latitude: a.Latitude, Longitude: a.Longitude, Name: a.Name, City: a.City, _key: a._key}"}),contentType:"application/json",processData:!1,success:function(c){_.each(c.result,function(a){b.add(a)}),a&&a()},error:function(a){}})},getShortestFlight:function(a,b,c){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"RETURN SHORTEST_PATH(@@airports,@@flights,@start,@dest,'outbound',{})",bindVars:{"@flights":this.collectionName,"@airports":"airports",start:"airports/"+a,dest:"airports/"+b}}),contentType:"application/json",processData:!1,success:function(a){c(a.result[0])},error:function(a){}})},getFlightDistribution:function(a){$.ajax({type:"POST",url:"/_api/cursor", -data:JSON.stringify({query:"FOR f IN @@flights COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(b){a(b.result)},error:function(a){}})},getFlightsForAirport:function(a,b){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for f in @@flights filter f._from == @airport COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{airport:"airports/"+a,"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(a){b(a.result)},error:function(a){}})},model:window.Airport})}(),function(){"use strict";window.arangoCollections=Backbone.Collection.extend({url:"/_api/collection",model:arangoCollectionModel,searchOptions:{searchPhrase:null,includeSystem:!1,includeDocument:!0,includeEdge:!0,includeLoaded:!0,includeUnloaded:!0,sortBy:"name",sortOrder:1},translateStatus:function(a){switch(a){case 0:return"corrupted";case 1:return"new born collection";case 2:return"unloaded";case 3:return"loaded";case 4:return"in the process of being unloaded";case 5:return"deleted";case 6:return"loading";default:return}},translateTypePicture:function(a){var b="";switch(a){case"document":b+="fa-file-text-o";break;case"edge":b+="fa-share-alt";break;case"unknown":b+="fa-question";break;default:b+="fa-cogs"}return b},parse:function(a){var b=this;return _.each(a.collections,function(a){a.isSystem=arangoHelper.isSystemCollection(a),a.type=arangoHelper.collectionType(a),a.status=b.translateStatus(a.status),a.picture=b.translateTypePicture(a.type)}),a.collections},getPosition:function(a){var b,c=this.getFiltered(this.searchOptions),d=null,e=null;for(b=0;b0&&(d=c[b-1]),b0){var e,f=d.get("name").toLowerCase();for(e=0;ed?-1:1):0}),b},newCollection:function(a,b,c,d,e,f,g){var h={},i={};return i.name=a,i.waitForSync=b,d>0&&(i.journalSize=d),i.isSystem=c,i.type=parseInt(e,10),f&&(i.numberOfShards=f,i.shardKeys=g),h.status=!1,$.ajax({cache:!1,type:"POST",url:"/_api/collection",data:JSON.stringify(i),contentType:"application/json",processData:!1,async:!1,success:function(a){h.status=!0,h.data=a},error:function(a){h.status=!1,h.errorMessage=JSON.parse(a.responseText).errorMessage}}),h}})}(),function(){"use strict";window.ArangoDatabase=Backbone.Collection.extend({model:window.DatabaseModel,sortOptions:{desc:!1},url:"/_api/database",comparator:function(a,b){var c=a.get("name").toLowerCase(),d=b.get("name").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},parse:function(a){return a?_.map(a.result,function(a){return{name:a}}):void 0},initialize:function(){var a=this;this.fetch().done(function(){a.sort()})},setSortingDesc:function(a){this.sortOptions.desc=a},getDatabases:function(){var a=this;return this.fetch().done(function(){a.sort()}),this.models},getDatabasesForUser:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/user",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b.result},error:function(){a=[]}}),a.sort()},createDatabaseURL:function(a,b,c){var d=window.location,e=window.location.hash;b=b?"SSL"===b||"https:"===b?"https:":"http:":d.protocol,c=c||d.port;var f=b+"//"+window.location.hostname+":"+c+"/_db/"+encodeURIComponent(a)+"/_admin/aardvark/standalone.html";if(e){var g=e.split("/")[0];0===g.indexOf("#collection")&&(g="#collections"),0===g.indexOf("#application")&&(g="#applications"),f+=g}return f},getCurrentDatabase:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/current",contentType:"application/json",processData:!1,async:!1,success:function(b){return 200===b.code?void(a=b.result.name):void(a=b)},error:function(b){a=b}}),a},hasSystemAccess:function(){var a=this.getDatabasesForUser();return _.contains(a,"_system")}})}(),window.arangoDocument=Backbone.Collection.extend({url:"/_api/document/",model:arangoDocumentModel,collectionInfo:{},deleteEdge:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/edge/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},deleteDocument:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/document/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},addDocument:function(a,b){var c=this;c.createTypeDocument(a,b)},createTypeEdge:function(a,b,c,d){var e,f=!1;return e=d?JSON.stringify({_key:d}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/edge?collection="+a+"&from="+b+"&to="+c,data:e,contentType:"application/json",processData:!1,success:function(a){f=a._id},error:function(a){f=!1}}),f},createTypeDocument:function(a,b){var c,d=!1;return c=b?JSON.stringify({_key:b}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/document?collection="+encodeURIComponent(a),data:c,contentType:"application/json",processData:!1,success:function(a){d=a._id},error:function(a){d=!1}}),d},getCollectionInfo:function(a){var b=this;return $.ajax({cache:!1,type:"GET",url:"/_api/collection/"+a+"?"+arangoHelper.getRandomToken(),contentType:"application/json",processData:!1,async:!1,success:function(a){b.collectionInfo=a},error:function(a){}}),b.collectionInfo},getEdge:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/edge/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},getDocument:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/document/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},saveEdge:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/edge/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},saveDocument:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/document/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},updateLocalDocument:function(a){this.clearDocument(),this.add(a)},clearDocument:function(){this.reset()}}),function(){"use strict";window.arangoDocuments=window.PaginatedCollection.extend({collectionID:1,filters:[],MAX_SORT:12e3,lastQuery:{},sortAttribute:"_key",url:"/_api/documents",model:window.arangoDocumentModel,loadTotal:function(){var a=this;$.ajax({cache:!1,type:"GET",url:"/_api/collection/"+this.collectionID+"/count",contentType:"application/json",processData:!1,async:!1,success:function(b){a.setTotal(b.count)}})},setCollection:function(a){this.resetFilter(),this.collectionID=a,this.setPage(1),this.loadTotal()},setSort:function(a){this.sortAttribute=a},getSort:function(){return this.sortAttribute},addFilter:function(a,b,c){this.filters.push({attr:a,op:b,val:c})},setFiltersForQuery:function(a){if(0===this.filters.length)return"";var b=" FILTER",c=_.map(this.filters,function(b,c){var d=" x.`";return d+=b.attr,d+="` ",d+=b.op,d+=" @param",d+=c,a["param"+c]=b.val,d});return b+c.join(" &&")},setPagesize:function(a){this.setPageSize(a)},resetFilter:function(){this.filters=[]},moveDocument:function(a,b,c,d){var e,f,g,h,i={"@collection":b,filterid:a};e="FOR x IN @@collection",e+=" FILTER x._key == @filterid",e+=" INSERT x IN ",e+=c,f="FOR x in @@collection",f+=" FILTER x._key == @filterid",f+=" REMOVE x IN @@collection",g={query:e,bindVars:i},h={query:f,bindVars:i},window.progressView.show(),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(g),contentType:"application/json",success:function(a){$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(h),contentType:"application/json",success:function(a){d&&d(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Documents inserted, but could not be removed.")}})},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not move selected documents.")}})},getDocuments:function(a){window.progressView.showWithDelay(300,"Fetching documents...");var b,c,d,e,f=this;c={"@collection":this.collectionID,offset:this.getOffset(),count:this.getPageSize()},b="FOR x IN @@collection LET att = SLICE(ATTRIBUTES(x), 0, 25)",b+=this.setFiltersForQuery(c),this.getTotal()0)&&(e.options={fullCount:!0}),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(e),contentType:"application/json",success:function(b){window.progressView.toShow=!1,f.clearDocuments(),b.extra&&void 0!==b.extra.stats.fullCount&&f.setTotal(b.extra.stats.fullCount),0!==f.getTotal()&&_.each(b.result,function(a){f.add({id:a._id,rev:a._rev,key:a._key,content:a})}),f.lastQuery=e,a(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not fetch requested documents.")}})},clearDocuments:function(){this.reset()},buildDownloadDocumentQuery:function(){var a,b,c;return c={"@collection":this.collectionID},a="FOR x in @@collection",a+=this.setFiltersForQuery(c),this.getTotal()0&&(b="At least one error occurred during upload")}catch(d){}}}),b}})}(),function(){"use strict";window.ArangoLogs=window.PaginatedCollection.extend({upto:!1,loglevel:0,totalPages:0,parse:function(a){var b=[];return _.each(a.lid,function(c,d){b.push({level:a.level[d],lid:c,text:a.text[d],timestamp:a.timestamp[d],totalAmount:a.totalAmount})}),this.totalAmount=a.totalAmount,this.totalPages=Math.ceil(this.totalAmount/this.pagesize),b},initialize:function(a){a.upto===!0&&(this.upto=!0),this.loglevel=a.loglevel},model:window.newArangoLog,url:function(){var a,b,c,d;c=this.page*this.pagesize;var e=this.totalAmount-(this.page+1)*this.pagesize;return 0>e&&this.page===this.totalPages-1?(e=0,d=this.totalAmount%this.pagesize):d=this.pagesize,0===this.totalAmount&&(d=1),a=this.upto?"upto":"level",b="/_admin/log?"+a+"="+this.loglevel+"&size="+d+"&offset="+e}})}(),function(){"use strict";window.ArangoQueries=Backbone.Collection.extend({initialize:function(a,b){var c;$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser===!1&&(this.activeUser="root")},url:"/_api/user/",model:ArangoQuery,activeUser:null,parse:function(a){var b,c=this;return _.each(a.result,function(a){if(a.user===c.activeUser)try{a.extra.queries&&(b=a.extra.queries)}catch(d){}}),b},saveCollectionQueries:function(){if(0===this.activeUser)return!1;var a=!1,b=[];return this.each(function(a){b.push({value:a.attributes.value,name:a.attributes.name})}),$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+encodeURIComponent(this.activeUser),data:JSON.stringify({extra:{queries:b}}),contentType:"application/json",processData:!1,success:function(){a=!0},error:function(){a=!1}}),a},saveImportQueries:function(a,b){return 0===this.activeUser?!1:(window.progressView.show("Fetching documents..."),void $.ajax({cache:!1,type:"POST",async:!1,url:"query/upload/"+encodeURIComponent(this.activeUser),data:a,contentType:"application/json",processData:!1,success:function(){window.progressView.hide(),b()},error:function(){window.progressView.hide(),arangoHelper.arangoError("Query error","queries could not be imported")}}))}})}(),window.ArangoReplication=Backbone.Collection.extend({model:window.Replication,url:"../api/user",getLogState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/logger-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a},getApplyState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/applier-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a}}),window.StatisticsCollection=Backbone.Collection.extend({model:window.Statistics,url:"/_admin/statistics"}),window.StatisticsDescriptionCollection=Backbone.Collection.extend({model:window.StatisticsDescription,url:"/_admin/statistics-description",parse:function(a){return a}}),window.ArangoUsers=Backbone.Collection.extend({model:window.Users,activeUser:null,activeUserSettings:{query:{},shell:{},testing:!0},sortOptions:{desc:!1},url:"/_api/user",comparator:function(a,b){var c=a.get("user").toLowerCase(),d=b.get("user").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},login:function(a,b){var c=null;return $.ajax("login",{async:!1,method:"POST",data:JSON.stringify({username:a,password:b}),dataType:"json"}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser},setSortingDesc:function(a){this.sortOptions.desc=a},logout:function(){$.ajax("logout",{async:!1,method:"POST"}),this.activeUser=null,this.reset(),window.App.navigate(""),window.location.reload()},setUserSettings:function(a,b){this.activeUserSettings.identifier=b},loadUserSettings:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),contentType:"application/json",processData:!1,async:!1,success:function(b){a.activeUserSettings=b.extra},error:function(a){}})},saveUserSettings:function(){var a=this;$.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),data:JSON.stringify({extra:a.activeUserSettings}),contentType:"application/json",processData:!1,success:function(a){},error:function(a){}})},parse:function(a){var b=[];return _.each(a.result,function(a){b.push(a)}),b},whoAmI:function(){if(this.activeUser)return this.activeUser;var a;return $.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user}),this.activeUser=a,this.activeUser}}),function(){"use strict";window.FoxxCollection=Backbone.Collection.extend({model:window.Foxx,sortOptions:{desc:!1},url:"/_admin/aardvark/foxxes",comparator:function(a,b){var c,d;return this.sortOptions.desc===!0?(c=a.get("mount"),d=b.get("mount"),d>c?1:c>d?-1:0):(c=a.get("mount"),d=b.get("mount"),c>d?1:d>c?-1:0)},setSortingDesc:function(a){this.sortOptions.desc=a},installFromGithub:function(a,b,c,d){var e="/_admin/aardvark/foxxes/git?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromStore:function(a,b,c,d){var e="/_admin/aardvark/foxxes/store?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromZip:function(a,b,c,d){var e="/_admin/aardvark/foxxes/zip?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify({zipFile:a}),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},generate:function(a,b,c,d){var e="/_admin/aardvark/foxxes/generate?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})}})}(),function(){"use strict";window.GraphCollection=Backbone.Collection.extend({model:window.Graph,sortOptions:{desc:!1},url:"/_api/gharial",comparator:function(a,b){var c=a.get("_key")||"",d=b.get("_key")||"";return c=c.toLowerCase(),d=d.toLowerCase(),this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},setSortingDesc:function(a){this.sortOptions.desc=a},parse:function(a){return a.error?void 0:a.graphs}})}(),function(){"use strict";window.NotificationCollection=Backbone.Collection.extend({model:window.Notification,url:""})}(),function(){"use strict";window.QueryManagementActive=Backbone.Collection.extend({model:window.queryManagementModel,url:function(){return"/_api/query/current"},killRunningQuery:function(a,b){$.ajax({url:"/_api/query/"+encodeURIComponent(a),type:"DELETE",success:function(a){b()}})}})}(),function(){"use strict";window.QueryManagementSlow=Backbone.Collection.extend({model:window.queryManagementModel,url:"/_api/query/slow",deleteSlowQueryHistory:function(a){var b=this;$.ajax({url:b.url,type:"DELETE",success:function(b){a()}})}})}(),function(){"use strict";window.PaginationView=Backbone.View.extend({collection:null,paginationDiv:"",idPrefix:"",rerender:function(){},jumpTo:function(a){this.collection.setPage(a),this.rerender()},firstPage:function(){this.jumpTo(1)},lastPage:function(){this.jumpTo(this.collection.getLastPageNumber())},firstDocuments:function(){this.jumpTo(1)},lastDocuments:function(){this.jumpTo(this.collection.getLastPageNumber())},prevDocuments:function(){this.jumpTo(this.collection.getPage()-1)},nextDocuments:function(){this.jumpTo(this.collection.getPage()+1)},renderPagination:function(){$(this.paginationDiv).html("");var a=this,b=this.collection.getPage(),c=this.collection.getLastPageNumber(),d=$(this.paginationDiv),e={page:b,lastPage:c,click:function(b){a.jumpTo(b),e.page=b}};d.html(""),d.pagination(e),$(this.paginationDiv).prepend('
'),$(this.paginationDiv).append('
')}})}(),function(){"use strict";window.ApiView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("apiView.ejs"),initialize:function(){this.swaggerUi=new SwaggerUi({discoveryUrl:"api-docs.json",apiKey:!1,dom_id:"swagger-ui-container",supportHeaderParams:!0,supportedSubmitMethods:["get","post","put","delete","patch","head"],onComplete:function(){$("pre code").each(function(a,b){hljs.highlightBlock(b)})},onFailure:function(a){var b=document.createElement("div"),c=document.createElement("strong");c.appendChild(document.createTextNode("Sorry the code is not documented properly")),b.appendChild(c),b.appendChild(document.createElement("br")),b.appendChild(document.createTextNode(JSON.stringify(a))),$("#swagger-ui-container").append(b)},docExpansion:"none"})},render:function(){return $(this.el).html(this.template.render({})),this.swaggerUi.load(),this}})}(),function(){"use strict";window.ApplicationDetailView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationDetailView.ejs"),events:{"click .open":"openApp","click .delete":"deleteApp","click #app-config":"showConfigDialog","click #app-deps":"showDepsDialog","click #app-switch-mode":"toggleDevelopment","click #app-scripts [data-script]":"runScript","click #app-tests":"runTests","click #app-upgrade":"upgradeApp","click #download-app":"downloadApp","click #app-show-swagger":"showSwagger","click #app-show-readme":"showReadme","mouseenter #app-scripts":"showDropdown","mouseleave #app-scripts":"hideDropdown"},downloadApp:function(){this.model.isSystem()||this.model.download()},upgradeApp:function(){var a=this.model.get("mount");window.foxxInstallView.upgrade(a,function(){window.App.applicationDetail(encodeURIComponent(a))})},updateConfig:function(){this.model.getConfiguration(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-config")[this.model.needsConfiguration()?"show":"hide"]()}.bind(this))},updateDeps:function(){this.model.getDependencies(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-deps")[this.model.hasUnconfiguredDependencies()?"show":"hide"]()}.bind(this))},toggleDevelopment:function(){this.model.toggleDevelopment(!this.model.isDevelopment(),function(){this.model.isDevelopment()?($("#app-switch-mode").val("Set Pro"),$("#app-development-indicator").css("display","inline"),$("#app-development-path").css("display","inline")):($("#app-switch-mode").val("Set Dev"),$("#app-development-indicator").css("display","none"),$("#app-development-path").css("display","none"))}.bind(this))},runScript:function(a){a.preventDefault();var b=$(a.currentTarget).attr("data-script"),c=[window.modalView.createBlobEntry("app_script_arguments","Script arguments","",null,"optional",!1,[{rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty"}])],d=[window.modalView.createSuccessButton("Run script",function(){var a=$("#app_script_arguments").val();a=a&&JSON.parse(a),window.modalView.hide(),this.model.runScript(b,a,function(a,c){var d;d=a?"

The script failed with an error"+(a.statusCode?" (HTTP "+a.statusCode+")":"")+":

"+a.message+"
":c?"

Script results:

"+JSON.stringify(c,null,2)+"
":"

The script ran successfully.

",window.modalView.show("modalTable.ejs",'Result of script "'+b+'"',void 0,void 0,void 0,d)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run script "'+b+'" on "'+this.model.get("mount")+'"',d,c)},showSwagger:function(a){a.preventDefault(),this.render("swagger")},showReadme:function(a){a.preventDefault(),this.render("readme")},runTests:function(a){a.preventDefault();var b="

WARNING: Running tests may result in destructive side-effects including data loss. Please make sure not to run tests on a production database.

";this.model.isDevelopment()&&(b+="

WARNING: This app is running in development mode. If any of the tests access the app's HTTP API they may become non-deterministic.

");var c=[window.modalView.createSuccessButton("Run tests",function(){window.modalView.hide(),this.model.runTests({reporter:"suite"},function(a,b){window.modalView.show("modalTestResults.ejs","Test results",void 0,void 0,void 0,a||b)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run tests for app "'+this.model.get("mount")+'"',c,void 0,void 0,b)},render:function(a){return $(this.el).html(this.template.render({app:this.model,db:arangoHelper.currentDatabase(),mode:a})),$.get(this.appUrl()).success(function(){$(".open",this.el).prop("disabled",!1)}.bind(this)),this.updateConfig(),this.updateDeps(),$(this.el)},openApp:function(){window.open(this.appUrl(),this.model.get("title")).focus()},deleteApp:function(){var a=[window.modalView.createDeleteButton("Delete",function(){var a={teardown:$("#app_delete_run_teardown").is(":checked")};this.model.destroy(a,function(a,b){a||b.error!==!1||(window.modalView.hide(),window.App.navigate("applications",{trigger:!0}))})}.bind(this))],b=[window.modalView.createCheckboxEntry("app_delete_run_teardown","Run teardown?",!0,"Should this app's teardown script be executed before removing the app?",!0)];window.modalView.show("modalTable.ejs",'Delete Foxx App mounted at "'+this.model.get("mount")+'"',a,b,void 0,"

Are you sure? There is no way back...

",!0)},appUrl:function(){return window.location.origin+"/_db/"+encodeURIComponent(arangoHelper.currentDatabase())+this.model.get("mount")},applyConfig:function(){var a={};_.each(this.model.get("config"),function(b,c){var d=$("#app_config_"+c),e=d.val();if("boolean"===b.type||"bool"===b.type)return void(a[c]=d.is(":checked"));if(""===e&&b.hasOwnProperty("default"))return a[c]=b["default"],void("json"===b.type&&(a[c]=JSON.stringify(b["default"])));if("number"===b.type)a[c]=parseFloat(e);else if("integer"===b.type||"int"===b.type)a[c]=parseInt(e,10);else{if("json"!==b.type)return void(a[c]=window.arangoHelper.escapeHtml(e));a[c]=e&&JSON.stringify(JSON.parse(e))}}),this.model.setConfiguration(a,function(){window.modalView.hide(),this.updateConfig()}.bind(this))},showConfigDialog:function(){if(!_.isEmpty(this.model.get("config"))){var a=_.map(this.model.get("config"),function(a,b){var c=void 0===a["default"]?"":String(a["default"]),d=void 0===a.current?"":String(a.current),e="createTextEntry",f=!1,g=[];return"boolean"===a.type||"bool"===a.type?(e="createCheckboxEntry",a["default"]=a["default"]||!1,c=a["default"]||!1,d=a.current||!1):"json"===a.type?(e="createBlobEntry",c=void 0===a["default"]?"":JSON.stringify(a["default"]),d=void 0===a.current?"":a.current,g.push({rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty."})):"integer"===a.type||"int"===a.type?g.push({rule:Joi.number().integer().optional().allow(""),msg:"Has to be an integer."}):"number"===a.type?g.push({rule:Joi.number().optional().allow(""),msg:"Has to be a number."}):("password"===a.type&&(e="createPasswordEntry"),g.push({rule:Joi.string().optional().allow(""),msg:"Has to be a string."})),void 0===a["default"]&&a.required!==!1&&(f=!0,g.unshift({rule:Joi.any().required(),msg:"This field is required."})),window.modalView[e]("app_config_"+b,b,d,a.description,c,f,g)}),b=[window.modalView.createSuccessButton("Apply",this.applyConfig.bind(this))];window.modalView.show("modalTable.ejs","Configuration",b,a)}},applyDeps:function(){var a={};_.each(this.model.get("deps"),function(b,c){var d=$("#app_deps_"+c);a[c]=window.arangoHelper.escapeHtml(d.val())}),this.model.setDependencies(a,function(){window.modalView.hide(),this.updateDeps()}.bind(this))},showDepsDialog:function(){if(!_.isEmpty(this.model.get("deps"))){var a=_.map(this.model.get("deps"),function(a,b){var c=void 0===a.current?"":String(a.current),d="",e=a.definition.name;"*"!==a.definition.version&&(e+="@"+a.definition.version);var f=[{rule:Joi.string().optional().allow(""),msg:"Has to be a string."}];return a.definition.required&&f.push({rule:Joi.string().required(),msg:"This value is required."}),window.modalView.createTextEntry("app_deps_"+b,a.title,c,e,d,a.definition.required,f)}),b=[window.modalView.createSuccessButton("Apply",this.applyDeps.bind(this))];window.modalView.show("modalTable.ejs","Dependencies",b,a)}},showDropdown:function(){_.isEmpty(this.model.get("scripts"))||$("#scripts_dropdown").show(200)},hideDropdown:function(){$("#scripts_dropdown").hide()}})}(),function(){"use strict";window.ApplicationsView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationsView.ejs"),events:{"click #addApp":"createInstallModal","click #foxxToggle":"slideToggle","click #checkDevel":"toggleDevel","click #checkProduction":"toggleProduction","click #checkSystem":"toggleSystem"},fixCheckboxes:function(){this._showDevel?$("#checkDevel").attr("checked","checked"):$("#checkDevel").removeAttr("checked"),this._showSystem?$("#checkSystem").attr("checked","checked"):$("#checkSystem").removeAttr("checked"),this._showProd?$("#checkProduction").attr("checked","checked"):$("#checkProduction").removeAttr("checked"),$("#checkDevel").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkSystem").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkProduction").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),arangoHelper.setCheckboxStatus("#foxxDropdown")},toggleDevel:function(){var a=this;this._showDevel=!this._showDevel,_.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel)}),this.fixCheckboxes()},toggleProduction:function(){var a=this;this._showProd=!this._showProd,_.each(this._installedSubViews,function(b){b.toggle("production",a._showProd)}),this.fixCheckboxes()},toggleSystem:function(){this._showSystem=!this._showSystem;var a=this;_.each(this._installedSubViews,function(b){b.toggle("system",a._showSystem)}),this.fixCheckboxes()},reload:function(){var a=this;_.each(this._installedSubViews,function(a){a.undelegateEvents()}),this.collection.fetch({success:function(){a.createSubViews(),a.render()}})},createSubViews:function(){var a=this;this._installedSubViews={},a.collection.each(function(b){var c=new window.FoxxActiveView({model:b,appsView:a});a._installedSubViews[b.get("mount")]=c})},initialize:function(){this._installedSubViews={},this._showDevel=!0,this._showProd=!0,this._showSystem=!1,this.reload()},slideToggle:function(){$("#foxxToggle").toggleClass("activated"),$("#foxxDropdownOut").slideToggle(200)},createInstallModal:function(a){a.preventDefault(),window.foxxInstallView.install(this.reload.bind(this))},render:function(){this.collection.sort(),$(this.el).html(this.template.render({})),_.each(this._installedSubViews,function(a){$("#installedList").append(a.render())}),this.delegateEvents(),$("#checkDevel").attr("checked",this._showDevel),$("#checkProduction").attr("checked",this._showProd),$("#checkSystem").attr("checked",this._showSystem),arangoHelper.setCheckboxStatus("#foxxDropdown");var a=this;return _.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel),b.toggle("system",a._showSystem)}),arangoHelper.fixTooltips("icon_arangodb","left"),this}})}(),function(){"use strict";window.CollectionListItemView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("collectionsItemView.ejs"),initialize:function(){this.collectionsView=this.options.collectionsView},events:{"click .iconSet.icon_arangodb_settings2":"createEditPropertiesModal","click .pull-left":"noop","click .icon_arangodb_settings2":"editProperties","click .spanInfo":"showProperties",click:"selectCollection"},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el).attr("id","collection_"+this.model.get("name")),this},editProperties:function(a){a.stopPropagation(),this.createEditPropertiesModal()},showProperties:function(a){a.stopPropagation(),this.createInfoModal()},selectCollection:function(a){return $(a.target).hasClass("disabled")?0:void window.App.navigate("collection/"+encodeURIComponent(this.model.get("name"))+"/documents/1",{trigger:!0})},noop:function(a){a.stopPropagation()},unloadCollection:function(){this.model.unloadCollection(),window.modalView.hide()},loadCollection:function(){this.model.loadCollection(),window.modalView.hide()},truncateCollection:function(){this.model.truncateCollection(),this.render(),window.modalView.hide()},deleteCollection:function(){this.model.destroy({error:function(){arangoHelper.arangoError("Could not delete collection.")},success:function(){window.modalView.hide()}}),this.collectionsView.render()},saveModifiedCollection:function(){ -var a;a=window.isCoordinator()?this.model.get("name"):$("#change-collection-name").val();var b=this.model.get("status");if("loaded"===b){var c;try{c=JSON.parse(1024*$("#change-collection-size").val()*1024)}catch(d){return arangoHelper.arangoError("Please enter a valid number"),0}var e;try{if(e=JSON.parse($("#change-index-buckets").val()),1>e||parseInt(e)!==Math.pow(2,Math.log2(e)))throw"invalid indexBuckets value"}catch(d){return arangoHelper.arangoError("Please enter a valid number of index buckets"),0}var f;if(this.model.get("name")!==a&&(f=this.model.renameCollection(a)),f!==!0&&void 0!==f)return arangoHelper.arangoError("Collection error: "+f),0;var g=$("#change-collection-sync").val(),h=this.model.changeCollection(g,c,e);if(h!==!0)return arangoHelper.arangoNotification("Collection error",h),0;this.collectionsView.render(),window.modalView.hide()}else if("unloaded"===b)if(this.model.get("name")!==a){var i=this.model.renameCollection(a);i===!0?(this.collectionsView.render(),window.modalView.hide()):arangoHelper.arangoError("Collection error: "+i)}else window.modalView.hide()},createEditPropertiesModal:function(){var a=!1;"loaded"===this.model.get("status")&&(a=!0);var b=[],c=[];if(window.isCoordinator()||c.push(window.modalView.createTextEntry("change-collection-name","Name",this.model.get("name"),!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a){var d=this.model.getProperties().journalSize;d/=1048576,c.push(window.modalView.createTextEntry("change-collection-size","Journal size",d,"The maximal size of a journal or datafile (in MB). Must be at least 1.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}]));var e=this.model.getProperties().indexBuckets;c.push(window.modalView.createTextEntry("change-index-buckets","Index buckets",e,"The number of index buckets for this collection. Must be at least 1 and a power of 2.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[1-9][0-9]*$/),msg:"Must be a number greater than 1 and a power of 2."}]));var f=this.model.getProperties().waitForSync;c.push(window.modalView.createSelectEntry("change-collection-sync","Wait for sync",f,"Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}]))}c.push(window.modalView.createReadOnlyEntry("change-collection-id","ID",this.model.get("id"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-type","Type",this.model.get("type"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-status","Status",this.model.get("status"),"")),b.push(window.modalView.createDeleteButton("Delete",this.deleteCollection.bind(this))),b.push(window.modalView.createDeleteButton("Truncate",this.truncateCollection.bind(this))),a?b.push(window.modalView.createNotificationButton("Unload",this.unloadCollection.bind(this))):b.push(window.modalView.createNotificationButton("Load",this.loadCollection.bind(this))),b.push(window.modalView.createSuccessButton("Save",this.saveModifiedCollection.bind(this))),window.modalView.show("modalTable.ejs","Modify Collection",b,c)},createInfoModal:function(){var a=[],b=this.model;window.modalView.show("modalCollectionInfo.ejs","Collection: "+this.model.get("name"),a,b)}})}(),function(){"use strict";window.CollectionsView=Backbone.View.extend({el:"#content",el2:"#collectionsThumbnailsIn",searchTimeout:null,initialize:function(){},template:templateEngine.createTemplate("collectionsView.ejs"),render:function(){var a=!1;$("#collectionsDropdown").is(":visible")&&(a=!0),$(this.el).html(this.template.render({})),this.setFilterValues(),a===!0&&$("#collectionsDropdown2").show();var b=this.collection.searchOptions;this.collection.getFiltered(b).forEach(function(a){$("#collectionsThumbnailsIn",this.el).append(new window.CollectionListItemView({model:a,collectionsView:this}).render().el)},this),"none"===$("#collectionsDropdown2").css("display")?$("#collectionsToggle").removeClass("activated"):$("#collectionsToggle").addClass("activated");var c;arangoHelper.setCheckboxStatus("#collectionsDropdown");try{c=b.searchPhrase.length}catch(d){}return $("#searchInput").val(b.searchPhrase),$("#searchInput").focus(),$("#searchInput")[0].setSelectionRange(c,c),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","left"),this},events:{"click #createCollection":"createCollection","keydown #searchInput":"restrictToSearchPhraseKey","change #searchInput":"restrictToSearchPhrase","click #searchSubmit":"restrictToSearchPhrase","click .checkSystemCollections":"checkSystem","click #checkLoaded":"checkLoaded","click #checkUnloaded":"checkUnloaded","click #checkDocument":"checkDocument","click #checkEdge":"checkEdge","click #sortName":"sortName","click #sortType":"sortType","click #sortOrder":"sortOrder","click #collectionsToggle":"toggleView","click .css-label":"checkBoxes"},updateCollectionsView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},toggleView:function(){$("#collectionsToggle").toggleClass("activated"),$("#collectionsDropdown2").slideToggle(200)},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},checkSystem:function(){var a=this.collection.searchOptions,b=a.includeSystem;a.includeSystem=$(".checkSystemCollections").is(":checked")===!0,b!==a.includeSystem&&this.render()},checkEdge:function(){var a=this.collection.searchOptions,b=a.includeEdge;a.includeEdge=$("#checkEdge").is(":checked")===!0,b!==a.includeEdge&&this.render()},checkDocument:function(){var a=this.collection.searchOptions,b=a.includeDocument;a.includeDocument=$("#checkDocument").is(":checked")===!0,b!==a.includeDocument&&this.render()},checkLoaded:function(){var a=this.collection.searchOptions,b=a.includeLoaded;a.includeLoaded=$("#checkLoaded").is(":checked")===!0,b!==a.includeLoaded&&this.render()},checkUnloaded:function(){var a=this.collection.searchOptions,b=a.includeUnloaded;a.includeUnloaded=$("#checkUnloaded").is(":checked")===!0,b!==a.includeUnloaded&&this.render()},sortName:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortName").is(":checked")===!0?"name":"type",b!==a.sortBy&&this.render()},sortType:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortType").is(":checked")===!0?"type":"name",b!==a.sortBy&&this.render()},sortOrder:function(){var a=this.collection.searchOptions,b=a.sortOrder;a.sortOrder=$("#sortOrder").is(":checked")===!0?-1:1,b!==a.sortOrder&&this.render()},setFilterValues:function(){var a=this.collection.searchOptions;$("#checkLoaded").attr("checked",a.includeLoaded),$("#checkUnloaded").attr("checked",a.includeUnloaded),$(".checkSystemCollections").attr("checked",a.includeSystem),$("#checkEdge").attr("checked",a.includeEdge),$("#checkDocument").attr("checked",a.includeDocument),$("#sortName").attr("checked","type"!==a.sortBy),$("#sortType").attr("checked","type"===a.sortBy),$("#sortOrder").attr("checked",1!==a.sortOrder)},search:function(){var a=this.collection.searchOptions,b=$("#searchInput").val();b!==a.searchPhrase&&(a.searchPhrase=b,this.render())},resetSearch:function(){this.searchTimeout&&(clearTimeout(this.searchTimeout),this.searchTimeout=null);var a=this.collection.searchOptions;a.searchPhrase=null},restrictToSearchPhraseKey:function(a){var b=this;this.resetSearch(),b.searchTimeout=setTimeout(function(){b.search()},200)},restrictToSearchPhrase:function(){this.resetSearch(),this.search()},createCollection:function(a){a.preventDefault(),this.createNewCollectionModal()},submitCreateCollection:function(){var a=$("#new-collection-name").val(),b=$("#new-collection-size").val(),c=$("#new-collection-type").val(),d=$("#new-collection-sync").val(),e=1,f=[];if(window.isCoordinator()){if(e=$("#new-collection-shards").val(),""===e&&(e=1),e=parseInt(e,10),1>e)return arangoHelper.arangoError("Number of shards has to be an integer value greater or equal 1"),0;f=_.pluck($("#new-collection-shardBy").select2("data"),"text"),0===f.length&&f.push("_key")}if("_"===a.substr(0,1))return arangoHelper.arangoError('No "_" allowed as first character!'),0;var g=!1,h="true"===d;if(b>0)try{b=1024*JSON.parse(b)*1024}catch(i){return arangoHelper.arangoError("Please enter a valid number"),0}if(""===a)return arangoHelper.arangoError("No collection name entered!"),0;var j=this.collection.newCollection(a,h,g,b,c,e,f);j.status!==!0&&arangoHelper.arangoError(j.errorMessage),this.updateCollectionsView(),window.modalView.hide()},createNewCollectionModal:function(){var a=[],b=[],c={},d=[];b.push(window.modalView.createTextEntry("new-collection-name","Name","",!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only symbols, "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),b.push(window.modalView.createSelectEntry("new-collection-type","Type","","The type of the collection to create.",[{value:2,label:"Document"},{value:3,label:"Edge"}])),window.isCoordinator()&&(b.push(window.modalView.createTextEntry("new-collection-shards","Shards","","The number of shards to create. You cannot change this afterwards. Recommended: DBServers squared","",!0)),b.push(window.modalView.createSelect2Entry("new-collection-shardBy","shardBy","","The keys used to distribute documents on shards. Type the key and press return to add it.","_key",!1))),a.push(window.modalView.createSuccessButton("Save",this.submitCreateCollection.bind(this))),d.push(window.modalView.createTextEntry("new-collection-size","Journal size","","The maximal size of a journal or datafile (in MB). Must be at least 1.","",!1,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}])),d.push(window.modalView.createSelectEntry("new-collection-sync","Sync","","Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}])),c.header="Advanced",c.content=d,window.modalView.show("modalTable.ejs","New Collection",a,b,c)}})}(),function(){"use strict";function a(a,b){return(void 0===a||null===a)&&(a=0),a.toFixed(b)}window.DashboardView=Backbone.View.extend({el:"#content",interval:1e4,defaultTimeFrame:12e5,defaultDetailFrame:1728e5,history:{},graphs:{},events:{},tendencies:{asyncPerSecondCurrent:["asyncPerSecondCurrent","asyncPerSecondPercentChange"],syncPerSecondCurrent:["syncPerSecondCurrent","syncPerSecondPercentChange"],clientConnectionsCurrent:["clientConnectionsCurrent","clientConnectionsPercentChange"],clientConnectionsAverage:["clientConnections15M","clientConnections15MPercentChange"],numberOfThreadsCurrent:["numberOfThreadsCurrent","numberOfThreadsPercentChange"],numberOfThreadsAverage:["numberOfThreads15M","numberOfThreads15MPercentChange"],virtualSizeCurrent:["virtualSizeCurrent","virtualSizePercentChange"],virtualSizeAverage:["virtualSize15M","virtualSize15MPercentChange"]},barCharts:{totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]},barChartsElementNames:{queueTimeDistributionPercent:"Queue",requestTimeDistributionPercent:"Computation",bytesSentDistributionPercent:"Bytes sent",bytesReceivedDistributionPercent:"Bytes received"},getDetailFigure:function(a){var b=$(a.currentTarget).attr("id").replace(/ChartButton/g,"");return b},showDetail:function(a){var b,c=this,d=this.getDetailFigure(a);b=this.dygraphConfig.getDetailChartConfig(d),this.getHistoryStatistics(d),this.detailGraphFigure=d,window.modalView.hideFooter=!0,window.modalView.hide(),window.modalView.show("modalGraph.ejs",b.header,void 0,void 0,void 0,void 0,this.events),window.modalView.hideFooter=!1,$("#modal-dialog").on("hidden",function(){c.hidden()}),$("#modal-dialog").toggleClass("modal-chart-detail",!0),b.height=.7*$(window).height(),b.width=$(".modal-inner-detail").width(),b.labelsDiv=$(b.labelsDiv)[0],this.detailGraph=new Dygraph(document.getElementById("lineChartDetail"),this.history[this.server][d],b)},hidden:function(){this.detailGraph.destroy(),delete this.detailGraph,delete this.detailGraphFigure},getCurrentSize:function(a){"#"!==a.substr(0,1)&&(a="#"+a);var b,c;return $(a).attr("style",""),b=$(a).height(),c=$(a).width(),{height:b,width:c}},prepareDygraphs:function(){var a,b=this;this.dygraphConfig.getDashBoardFigures().forEach(function(c){a=b.dygraphConfig.getDefaultConfig(c);var d=b.getCurrentSize(a.div);a.height=d.height,a.width=d.width,b.graphs[c]=new Dygraph(document.getElementById(a.div),b.history[b.server][c]||[],a)})},initialize:function(){this.dygraphConfig=this.options.dygraphConfig,this.d3NotInitialised=!0,this.events["click .dashboard-sub-bar-menu-sign"]=this.showDetail.bind(this),this.events["mousedown .dygraph-rangesel-zoomhandle"]=this.stopUpdating.bind(this),this.events["mouseup .dygraph-rangesel-zoomhandle"]=this.startUpdating.bind(this),this.serverInfo=this.options.serverToShow,this.serverInfo?this.server=this.serverInfo.target:this.server="-local-",this.history[this.server]={}},updateCharts:function(){var a=this;return this.detailGraph?void this.updateLineChart(this.detailGraphFigure,!0):(this.prepareD3Charts(this.isUpdating),this.prepareResidentSize(this.isUpdating),this.updateTendencies(),void Object.keys(this.graphs).forEach(function(b){a.updateLineChart(b,!1)}))},updateTendencies:function(){var a=this,b=this.tendencies,c="";Object.keys(b).forEach(function(b){var d="",e=0;a.history.hasOwnProperty(a.server)&&a.history[a.server].hasOwnProperty(b)&&(e=a.history[a.server][b][1]),0>e?c="#d05448":(c="#7da817",d="+"),$("#"+b).html(a.history[a.server][b][0]+'
'+d+e+"%")})},updateDateWindow:function(a,b){var c,d,e=(new Date).getTime();return b&&a.dateWindow_?(c=a.dateWindow_[0],d=e-a.dateWindow_[1]-5*this.interval>0?a.dateWindow_[1]:e,[c,d]):[e-this.defaultTimeFrame,e]},updateLineChart:function(a,b){var c=b?this.detailGraph:this.graphs[a],d={file:this.history[this.server][a],dateWindow:this.updateDateWindow(c,b)};c.updateOptions(d)},mergeDygraphHistory:function(a,b){var c,d=this;this.dygraphConfig.getDashBoardFigures(!0).forEach(function(e){d.dygraphConfig.mapStatToFigure[e]&&(d.history[d.server][e]||(d.history[d.server][e]=[]),c=[],d.dygraphConfig.mapStatToFigure[e].forEach(function(d){a[d]&&("times"===d?c.push(new Date(1e3*a[d][b])):c.push(a[d][b]))}),c.length>1&&d.history[d.server][e].push(c))})},cutOffHistory:function(a,b){for(var c=this;0!==c.history[c.server][a].length;){var d=c.history[c.server][a][0][0];if(d>=b)break;c.history[c.server][a].shift()}},cutOffDygraphHistory:function(a){var b=this,c=new Date(a);this.dygraphConfig.getDashBoardFigures(!0).forEach(function(a){b.dygraphConfig.mapStatToFigure[a]&&b.history[b.server][a]&&b.cutOffHistory(a,c)})},mergeHistory:function(b){var c,d=this;for(c=0;c=0;--c)d.values.push({label:this.getLabel(b[a[0]].cuts,c),value:b[a[0]].values[c]}),e.values.push({label:this.getLabel(b[a[1]].cuts,c),value:b[a[1]].values[c]});return[d,e]},getLabel:function(a,b){return a[b]?0===b?"0 - "+a[b]:a[b-1]+" - "+a[b]:">"+a[b-1]},getStatistics:function(a){var b=this,c="/_db/_system/_admin/aardvark/statistics/short",d="?start=";d+=b.nextStart?b.nextStart:((new Date).getTime()-b.defaultTimeFrame)/1e3,"-local-"!==b.server&&(c=b.serverInfo.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=short&DBserver="+b.serverInfo.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){c.times.length>0&&(b.isUpdating=!0,b.mergeHistory(c)),b.isUpdating!==!1&&(a&&a(),b.updateCharts())})},getHistoryStatistics:function(a){var b=this,c="statistics/long",d="?filter="+this.dygraphConfig.mapStatToFigure[a].join();"-local-"!==b.server&&(c=b.server.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=long&DBserver="+b.server.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){var d;for(b.history[b.server][a]=[],d=0;de?a(e,2)+" MB":a(e/1024,2)+" GB";var g=a(100*c.history[c.server].residentSizePercent,2),h=[a(c.history[c.server].physicalMemory/1024/1024/1024,0)+" GB"];nv.addGraph(function(){var a=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,right:1,bottom:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,left:1}).showValues(!1).showYAxis(!1).showXAxis(!1).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).stacked(!0);return a.yAxis.tickFormat(function(a){return a+"%"}).showMaxMin(!1),a.xAxis.showMaxMin(!1),d3.select("#residentSizeChart svg").datum(c.history[c.server].residentSizeChart).call(a),d3.select("#residentSizeChart svg").select(".nv-zeroLine").remove(),b&&(d3.select("#residentSizeChart svg").select("#total").remove(),d3.select("#residentSizeChart svg").select("#percentage").remove()),d3.select(".dashboard-bar-chart-title .percentage").html(f+" ("+g+" %)"),d3.select(".dashboard-bar-chart-title .absolut").html(h[0]),nv.utils.windowResize(a.update),a},function(){d3.selectAll("#residentSizeChart .nv-bar").on("click",function(){})})},prepareD3Charts:function(b){var c=this,d={totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]};this.d3NotInitialised&&(b=!1,this.d3NotInitialised=!1),_.each(Object.keys(d),function(b){var d=c.getCurrentSize("#"+b+"Container .dashboard-interior-chart"),e="#"+b+"Container svg";nv.addGraph(function(){var f=[0,.25,.5,.75,1],g=75,h=23,i=6;d.width<219?(f=[0,.5,1],g=72,h=21,i=5):d.width<299?(f=[0,.3334,.6667,1],g=77):d.width<379?g=87:d.width<459?g=95:d.width<539?g=100:d.width<619&&(g=105);var j=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:5,right:20,bottom:h,left:g}).showValues(!1).showYAxis(!0).showXAxis(!0).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).forceY([0,1]);j.yAxis.showMaxMin(!1);d3.select(".nv-y.nv-axis").selectAll("text").attr("transform","translate (0, "+i+")");return j.yAxis.tickValues(f).tickFormat(function(b){return a(100*b*100/100,0)+"%"}),d3.select(e).datum(c.history[c.server][b]).call(j),nv.utils.windowResize(j.update),j},function(){d3.selectAll(e+" .nv-bar").on("click",function(){})})})},stopUpdating:function(){this.isUpdating=!1},startUpdating:function(){var a=this;a.timer||(a.timer=window.setInterval(function(){a.getStatistics()},a.interval))},resize:function(){if(this.isUpdating){var a,b=this;_.each(this.graphs,function(c){a=b.getCurrentSize(c.maindiv_.id),c.resize(a.width,a.height)}),this.detailGraph&&(a=this.getCurrentSize(this.detailGraph.maindiv_.id),this.detailGraph.resize(a.width,a.height)),this.prepareD3Charts(!0),this.prepareResidentSize(!0)}},template:templateEngine.createTemplate("dashboardView.ejs"),render:function(a){a||$(this.el).html(this.template.render());var b=function(){this.prepareDygraphs(),this.isUpdating&&(this.prepareD3Charts(),this.prepareResidentSize(),this.updateTendencies()),this.startUpdating()}.bind(this),c=this.options.database.hasSystemAccess();c?this.getStatistics(b):($(".contentDiv").remove(),$(".headerBar").remove(),$(".dashboard-headerbar").remove(),$(".dashboard-row").remove(),$("#content").append('
You do not have permission to view this page.
'),$("#content").append("
You can switch to '_system' to see the dashboard.
"))}})}(),function(){"use strict";window.databaseView=Backbone.View.extend({users:null,el:"#content",template:templateEngine.createTemplate("databaseView.ejs"),dropdownVisible:!1,currentDB:"",events:{"click #createDatabase":"createDatabase","click #submitCreateDatabase":"submitCreateDatabase","click .editDatabase":"editDatabase","click .icon":"editDatabase","click #selectDatabase":"updateDatabase","click #submitDeleteDatabase":"submitDeleteDatabase","click .contentRowInactive a":"changeDatabase","keyup #databaseSearchInput":"search","click #databaseSearchSubmit":"search","click #databaseToggle":"toggleSettingsDropdown","click .css-label":"checkBoxes","click #dbSortDesc":"sorting","click svg":"switchDatabase"},sorting:function(){$("#dbSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#databaseDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},initialize:function(){this.collection.fetch({async:!1})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},render:function(){return this.currentDatabase(),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:"",currentDB:this.currentDB})),this.dropdownVisible===!0&&($("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").show()),arangoHelper.setCheckboxStatus("#databaseDropdown"),this.replaceSVGs(),this},toggleSettingsDropdown:function(){$("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").slideToggle(200)},selectedDatabase:function(){return $("#selectDatabases").val()},handleError:function(a,b,c){return 409===a?void arangoHelper.arangoError("DB","Database "+c+" already exists."):400===a?void arangoHelper.arangoError("DB","Invalid Parameters"):403===a?void arangoHelper.arangoError("DB","Insufficent rights. Execute this from _system database"):void 0},validateDatabaseInfo:function(a,b,c){return""===b?(arangoHelper.arangoError("DB","You have to define an owner for the new database"),!1):""===a?(arangoHelper.arangoError("DB","You have to define a name for the new database"),!1):0===a.indexOf("_")?(arangoHelper.arangoError("DB ","Databasename should not start with _"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("DB","Databasename may only contain numbers, letters, _ and -"),!1)},createDatabase:function(a){a.preventDefault(),this.createAddDatabaseModal()},switchDatabase:function(a){var b=$(a.currentTarget).parent().find("h5").text(),c=this.collection.createDatabaseURL(b);window.location.replace(c)},submitCreateDatabase:function(){var a=this,b=$("#newDatabaseName").val(),c=$("#newUser").val(),d=$("#newPassword").val();if(this.validateDatabaseInfo(b,c,d)){var e={name:b,users:[{username:c,passwd:d,active:!0}]};this.collection.create(e,{wait:!0,error:function(c,d){a.handleError(d.status,d.statusText,b)},success:function(b){a.updateDatabases(),window.modalView.hide(),window.App.naviView.dbSelectionView.render($("#dbSelect"))}})}},submitDeleteDatabase:function(a){var b=this.collection.where({name:a});b[0].destroy({wait:!0,url:"/_api/database/"+a}),this.updateDatabases(),window.App.naviView.dbSelectionView.render($("#dbSelect")),window.modalView.hide()},currentDatabase:function(){this.currentDB=this.collection.getCurrentDatabase()},changeDatabase:function(a){var b=$(a.currentTarget).attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},updateDatabases:function(){var a=this;this.collection.fetch({success:function(){a.render(),window.App.handleSelectDatabase()}})},editDatabase:function(a){var b=this.evaluateDatabaseName($(a.currentTarget).attr("id"),"_edit-database"),c=!0;b===this.currentDB&&(c=!1),this.createEditDatabaseModal(b,c)},search:function(){var a,b,c,d;a=$("#databaseSearchInput"),b=$("#databaseSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("name").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b,currentDB:this.currentDB})),this.replaceSVGs(),a=$("#databaseSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},replaceSVGs:function(){$(".svgToReplace").each(function(){var a=$(this),b=a.attr("id"),c=a.attr("src");$.get(c,function(c){var d=$(c).find("svg");d.attr("id",b).attr("class","tile-icon-svg").removeAttr("xmlns:a"),a.replaceWith(d)},"xml")})},evaluateDatabaseName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},createEditDatabaseModal:function(a,b){var c=[],d=[];d.push(window.modalView.createReadOnlyEntry("id_name","Name",a,"")),b?c.push(window.modalView.createDeleteButton("Delete",this.submitDeleteDatabase.bind(this,a))):c.push(window.modalView.createDisabledButton("Delete")),window.modalView.show("modalTable.ejs","Edit database",c,d)},createAddDatabaseModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newDatabaseName","Name","",!1,"Database Name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Database name must start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No database name given."}])),b.push(window.modalView.createTextEntry("newUser","Username",null!==this.users?this.users.whoAmI():"root","Please define the owner of this database. This will be the only user having initial access to this database if authentication is turned on. Please note that if you specify a username different to your account you will not be able to access the database with your account after having creating it. Specifying a username is mandatory even with authentication turned off. If there is a failure you will be informed.","Database Owner",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateDatabase.bind(this))),window.modalView.show("modalTable.ejs","Create Database",a,b)}})}(),function(){"use strict";window.DBSelectionView=Backbone.View.extend({template:templateEngine.createTemplate("dbSelectionView.ejs"),events:{"click .dbSelectionLink":"changeDatabase"},initialize:function(a){this.current=a.current},changeDatabase:function(a){var b=$(a.currentTarget).closest(".dbSelectionLink.tab").attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},render:function(a){return this.$el=a,this.$el.html(this.template.render({list:this.collection.getDatabasesForUser(),current:this.current.get("name")})),this.delegateEvents(),this.el}})}(),function(){"use strict";window.DemoView=Backbone.View.extend({MAPtarget:"M9,0C4.029,0,0,4.029,0,9s4.029,9,9,9s9-4.029,9-9S13.971,0,9,0z M9,15.93 c-3.83,0-6.93-3.1-6.93-6.93S5.17,2.07,9,2.07s6.93,3.1,6.93,6.93S12.83,15.93,9,15.93 M12.5,9c0,1.933-1.567,3.5-3.5,3.5S5.5,10.933,5.5,9S7.067,5.5,9,5.5 S12.5,7.067,12.5,9z",lineColors:["rgb(255,255,229)"],airportColor:"#222222",airportHighlightColor:"#FF4E4E",airportHoverColor:"#ff8f35",airportScale:.7,airportHighligthScale:.95,imageData:[],keyToLongLat:{},queries:[{name:"All Flights from SFO"},{name:"All Flights from JFK"},{name:"All Flights from DFW"},{name:"All Flights from ATL"},{name:"All Flights from CWA"},{name:"Flight distribution"}],el:"#content",initialize:function(a){var b=a.collectionName;this.airportCollection=new window.Airports({collectionName:b})},events:{"change #flightQuerySelect":"runSelectedQuery","keyup #demoSearchInput":"searchInput"},selectAirport:function(a){this.showAirportBalloon(a.currentTarget.id),$("#searchResults").slideUp(function(){$("#searchResults ul").html("")})},template:templateEngine.createTemplate("demoView.ejs"),generateIndex:function(){var a,b=this;b.index=lunr(function(){this.field("Name",{boost:10}),this.field("City"),this.field("_key")}),this.airportCollection.each(function(c){a=c.toJSON(),b.index.add({Name:a.Name,City:a.City,_key:a._key,id:a._key})})},render:function(){$(this.el).html(this.template.render({})),this.renderAvailableQueries();var a=function(){var a,b=[];this.airportCollection.each(function(c){a=c.toJSON(),b.push(a)}),this.imageData=this.prepareData(b),this.renderMap(),this.generateIndex()}.bind(this);return this.airportCollection.getAirports(a),this},renderAvailableQueries:function(){var a=0;_.each(this.queries,function(b){$("#flightQuerySelect").append('"),a++})},searchInput:function(a){var b=this,c=this.index.search($(a.currentTarget).val());b.resetDataHighlighting(),b.removeFlightLines(!0),_.each(c,function(a){b.setAirportColor(a.ref,b.airportHighlightColor,!1),b.setAirportSize(a.ref,b.airportHighligthScale,!1)}),1===c.length&&b.showAirportBalloon(c[0].ref),b.map.validateData()},insertAirportSelection:function(a){},runSelectedQuery:function(){this.resetDataHighlighting(),this.removeFlightLines(!0);var a=$("#flightQuerySelect option:selected").attr("position");"0"===a?this.loadAirportData("SFO"):"1"===a?this.loadAirportData("JFK"):"2"===a&&this.loadAirportData("DFW"),"3"===a&&this.loadAirportData("ATL"),"4"===a&&this.loadAirportData("CWA"),"5"===a&&(delete this.startPoint,this.loadFlightDistData())},calculateAirportSize:function(a,b){var c=this.getMinMax(b),d=(c.min,c.max),e=d/10,f=0,g=0;for(g=0;10>g;g++)if(a.countc&&(c=a.count)}),{min:b,max:c}},loadFlightDistData:function(){var a=this,b=new Date;this.airportCollection.getFlightDistribution(function(c){var d=new Date-b;a.removeFlightLines(!1);var e=0,f=0;a.resetDataHighlighting();var g=Math.pow(c[0].count,3),h=Math.pow(c[c.length-1].count,3),i=2.625/(h-g),j=function(a){return i*a-i*g};for(f=0;fc.length-6&&a.setAirportColor(k,"rgb(153,52,4)")}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var n="";for(n="Aggregation - Flight distribution
Query needed: "+(d/1e3).toFixed(3)+" sec
Number destinations: "+c.length+"
Number flights: "+e+"
Top 5:
",f=c.length-1;f>Math.max(c.length-6,0);--f){var o=a.airportCollection.findWhere({_key:c[f].Dest});n+=o.get("Name")+" - "+o.get("_key")+": "+c[f].count+"",f>c.length-5&&(n+="
")}$("#demo-mapdiv-info").html(n), -a.map.validateData()})},loadAirportData:function(a){$("#flightQuerySelect :nth-child(1)").prop("selected",!0);var b=this,c=new Date,d=this.airportCollection.findWhere({_key:a});this.airportCollection.getFlightsForAirport(a,function(e){var f=new Date-c;b.removeFlightLines(!1);var g=0,h=0;b.resetDataHighlighting();var i=Math.pow(e[0].count,3),j=Math.pow(e[e.length-1].count,3),k=2.625/(j-i),l=function(a){return k*a-k*i};for(h=0;he.length-6),g+=e[h].count}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var o="";for(o=""+d.get("Name").substr(0,25)+" - "+a+"
Query needed: "+(f/1e3).toFixed(3)+" sec
Number destinations: "+e.length+"
Number flights: "+g+"
Top 5:
",h=e.length-1;h>=Math.max(e.length-5,0);--h)d=b.airportCollection.findWhere({_key:e[h].Dest}),o+=d.get("Name").substr(0,25)+" - "+d.get("_key")+": "+e[h].count+"",h>e.length-5&&(o+="
");$("#demo-mapdiv-info").html(o),b.map.validateData()})},calculateFlightWidth:function(a,b){return 2},calculateFlightColor:function(a,b){return this.lineColors[0]},zoomToAirport:function(a){this.map.zoomToSelectedObject(this.map.getObjectById(a))},showAirportBalloon:function(a){this.map.allowMultipleDescriptionWindows=!0;var b=this.map.getObjectById(a);this.map.rollOverMapObject(b)},hideAirportBalloon:function(a){var b=this.map.getObjectById(a);this.map.rollOutMapObject(b)},setAirportColor:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.color=b)}),c&&this.map.validateData()},setAirportSize:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.scale=b)}),c&&this.map.validateData()},resetDataHighlighting:function(){var a=this;_.each(this.imageData,function(b){b.color=a.airportColor,b.scale=a.airportScale}),$("#demo-mapdiv-info").html("")},prepareData:function(a){var b=this,c=[];return _.each(a,function(a){c.push({id:a._key,latitude:a.Latitude,longitude:a.Longitude,svgPath:b.MAPtarget,color:b.airportColor,scale:b.airportScale,selectedScale:1,title:a.City+" ["+a._key+"]
"+a.Name,rollOverColor:b.airportHoverColor,selectable:!0}),b.keyToLongLat[a._key]={lon:a.Longitude,lat:a.Latitude}}),c.push({color:"#FF0000",lines:[{latitudes:[51.5002,50.4422],longitudes:[-.1262,30.5367]}]}),c},createFlightEntry:function(a,b,c,d,e){return this.keyToLongLat.hasOwnProperty(a)&&this.keyToLongLat.hasOwnProperty(b)?{longitudes:[this.keyToLongLat[a].lon,this.keyToLongLat[b].lon],latitudes:[this.keyToLongLat[a].lat,this.keyToLongLat[b].lat],title:a+" - "+b+"
"+c,color:d,thickness:e}:void 0},loadShortestPath:function(a,b){var c=this,d=new Date;this.airportCollection.getShortestFlight(a,b,function(a){var b=new Date-d;a.vertices||alert("Sorry there is no flight");for(var e=a.vertices,f=0;f
Number switches: "+(e.length-2)+"
Number flights: "+a.edges.length+"
Airports:
",f=0;f"}$("#demo-mapdiv-info").html(i),c.map.validateData()})},renderMap:function(){var a=this;a.lines=[],AmCharts.theme=AmCharts.themes.light,a.map=AmCharts.makeChart("demo-mapdiv",{type:"map",showDescriptionOnHover:!1,dragMap:!0,creditsPosition:"bottom-left",pathToImages:"img/ammap/",dataProvider:{map:"usa2High",lines:a.lines,images:a.imageData,getAreasFromMap:!0},clickMapObject:function(b,c){void 0!==b.id&&3===b.id.length&&(c.shiftKey&&a.hasOwnProperty("startPoint")?(a.resetDataHighlighting(),a.removeFlightLines(!0),a.loadShortestPath(a.startPoint,b.id)):(a.startPoint=b.id,a.loadAirportData(b.id)))},balloon:{adjustBorderColor:!0,balloonColor:"#ffffff",color:"#000000",cornerRadius:5,fillColor:"#ffffff",fillAlpha:.75,borderThickness:1.5,borderColor:"#88A049",borderAlpha:.4,shadowAlpha:0,fontSize:10,verticalPadding:3,horizontalPadding:6},areasSettings:{autoZoom:!1,balloonText:""},linesSettings:{color:"#ff8f35",alpha:.75,thickness:2},linesAboveImages:!1})},removeFlightLines:function(a){this.lines.length=0,a&&this.map.validateData()},addFlightLines:function(a){_.each(a,function(a){this.addFlightLine(a.from,a.to,a.count,a.lineColor,a.lineWidth,!1)})},addFlightLine:function(a,b,c,d,e,f,g,h){var i=this.createFlightEntry(a,b,c,d,e);void 0!==i&&this.lines.push(i),this.setAirportColor(a,"#FFFFFF"),this.setAirportColor(b,this.airportHighlightColor),this.setAirportSize(a,1.5),this.setAirportSize(b,f),g&&this.setAirportColor(b,"rgb(153,52,4)")}})}(),function(){"use strict";var a=function(a){var b=a.split("/");return"collection/"+encodeURIComponent(b[0])+"/"+encodeURIComponent(b[1])};window.DocumentView=Backbone.View.extend({el:"#content",colid:0,docid:0,template:templateEngine.createTemplate("documentView.ejs"),events:{"click #saveDocumentButton":"saveDocument","click #deleteDocumentButton":"deleteDocumentModal","click #confirmDeleteDocument":"deleteDocument","click #document-from":"navigateToDocument","click #document-to":"navigateToDocument"},editor:0,setType:function(a){var b,c;return"edge"===a?(b=this.collection.getEdge(this.colid,this.docid),c="Edge: "):"document"===a&&(b=this.collection.getDocument(this.colid,this.docid),c="Document: "),b===!0?(this.type=a,this.fillInfo(c),this.fillEditor(),!0):void 0},deleteDocumentModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry("doc-delete-button","Delete","Delete this "+this.type+"?",void 0,void 0,!1,/[<>&'"]/)),a.push(window.modalView.createDeleteButton("Delete",this.deleteDocument.bind(this))),window.modalView.show("modalTable.ejs","Delete Document",a,b)},deleteDocument:function(){var a;if("document"===this.type){if(a=this.collection.deleteDocument(this.colid,this.docid),a===!1)return void arangoHelper.arangoError("Document error:","Could not delete")}else if("edge"===this.type&&(a=this.collection.deleteEdge(this.colid,this.docid),a===!1))return void arangoHelper.arangoError("Edge error:","Could not delete");if(a===!0){var b="collection/"+encodeURIComponent(this.colid)+"/documents/1";window.modalView.hide(),window.App.navigate(b,{trigger:!0})}},navigateToDocument:function(a){var b=$(a.target).attr("documentLink");b&&window.App.navigate(b,{trigger:!0})},fillInfo:function(b){var c=this.collection.first(),d=c.get("_id"),e=c.get("_key"),f=c.get("_rev"),g=c.get("_from"),h=c.get("_to");if($("#document-type").text(b),$("#document-id").text(d),$("#document-key").text(e),$("#document-rev").text(f),g&&h){var i=a(g),j=a(h);$("#document-from").text(g),$("#document-from").attr("documentLink",i),$("#document-to").text(h),$("#document-to").attr("documentLink",j)}else $(".edge-info-container").hide()},fillEditor:function(){var a=this.removeReadonlyKeys(this.collection.first().attributes);this.editor.set(a),$(".ace_content").attr("font-size","11pt")},jsonContentChanged:function(){this.enableSaveButton()},render:function(){$(this.el).html(this.template.render({})),this.disableSaveButton(),this.breadcrumb();var a=this,b=document.getElementById("documentEditor"),c={change:function(){a.jsonContentChanged()},search:!0,mode:"tree",modes:["tree","code"]};return this.editor=new window.jsoneditor.JSONEditor(b,c),this},removeReadonlyKeys:function(a){return _.omit(a,["_key","_id","_from","_to","_rev"])},saveDocument:function(){var a,b;try{a=this.editor.get()}catch(c){return this.errorConfirmation(),void this.disableSaveButton()}if(a=JSON.stringify(a),"document"===this.type){if(b=this.collection.saveDocument(this.colid,this.docid,a),b===!1)return void arangoHelper.arangoError("Document error:","Could not save")}else if("edge"===this.type&&(b=this.collection.saveEdge(this.colid,this.docid,a),b===!1))return void arangoHelper.arangoError("Edge error:","Could not save");b===!0&&(this.successConfirmation(),this.disableSaveButton())},successConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},errorConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},enableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!1),$("#saveDocumentButton").addClass("button-success"),$("#saveDocumentButton").removeClass("button-close")},disableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!0),$("#saveDocumentButton").addClass("button-close"),$("#saveDocumentButton").removeClass("button-success")},breadcrumb:function(){var a=window.location.hash.split("/");$("#transparentHeader").append('")},escaped:function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}})}(),function(){"use strict";window.DocumentsView=window.PaginationView.extend({filters:{0:!0},filterId:0,paginationDiv:"#documentsToolbarF",idPrefix:"documents",addDocumentSwitch:!0,activeFilter:!1,lastCollectionName:void 0,restoredFilters:[],editMode:!1,allowUpload:!1,el:"#content",table:"#documentsTableID",template:templateEngine.createTemplate("documentsView.ejs"),collectionContext:{prev:null,next:null},editButtons:["#deleteSelected","#moveSelected"],initialize:function(){this.documentStore=this.options.documentStore,this.collectionsStore=this.options.collectionsStore,this.tableView=new window.TableView({el:this.table,collection:this.collection}),this.tableView.setRowClick(this.clicked.bind(this)),this.tableView.setRemoveClick(this.remove.bind(this))},setCollectionId:function(a,b){this.collection.setCollection(a);var c=arangoHelper.collectionApiType(a);this.pageid=b,this.type=c,this.checkCollectionState(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.collectionModel=this.collectionsStore.get(a)},getDocsCallback:function(){$("#documents_last").css("visibility","hidden"),$("#documents_first").css("visibility","hidden"),this.drawTable(),this.renderPaginationElements()},events:{"click #collectionPrev":"prevCollection","click #collectionNext":"nextCollection","click #filterCollection":"filterCollection","click #markDocuments":"editDocuments","click #indexCollection":"indexCollection","click #importCollection":"importCollection","click #exportCollection":"exportCollection","click #filterSend":"sendFilter","click #addFilterItem":"addFilterItem","click .removeFilterItem":"removeFilterItem","click #deleteSelected":"deleteSelectedDocs","click #moveSelected":"moveSelectedDocs","click #addDocumentButton":"addDocumentModal","click #documents_first":"firstDocuments","click #documents_last":"lastDocuments","click #documents_prev":"prevDocuments","click #documents_next":"nextDocuments","click #confirmDeleteBtn":"confirmDelete","click .key":"nop",keyup:"returnPressedHandler","keydown .queryline input":"filterValueKeydown","click #importModal":"showImportModal","click #resetView":"resetView","click #confirmDocImport":"startUpload","click #exportDocuments":"startDownload","change #newIndexType":"selectIndexType","click #createIndex":"createIndex","click .deleteIndex":"prepDeleteIndex","click #confirmDeleteIndexBtn":"deleteIndex","click #documentsToolbar ul":"resetIndexForms","click #indexHeader #addIndex":"toggleNewIndexView","click #indexHeader #cancelIndex":"toggleNewIndexView","change #documentSize":"setPagesize","change #docsSort":"setSorting"},showSpinner:function(){$("#uploadIndicator").show()},hideSpinner:function(){$("#uploadIndicator").hide()},showImportModal:function(){$("#docImportModal").modal("show")},hideImportModal:function(){$("#docImportModal").modal("hide")},setPagesize:function(){var a=$("#documentSize").find(":selected").val();this.collection.setPagesize(a),this.collection.getDocuments(this.getDocsCallback.bind(this))},setSorting:function(){var a=$("#docsSort").val();(""===a||void 0===a||null===a)&&(a="_key"),this.collection.setSort(a)},returnPressedHandler:function(a){13===a.keyCode&&$(a.target).is($("#docsSort"))&&this.collection.getDocuments(this.getDocsCallback.bind(this)),13===a.keyCode&&$("#confirmDeleteBtn").attr("disabled")===!1&&this.confirmDelete()},toggleNewIndexView:function(){$("#indexEditView").toggle("fast"),$("#newIndexView").toggle("fast"),this.resetIndexForms()},nop:function(a){a.stopPropagation()},resetView:function(){$("input").val(""),$("select").val("=="),this.removeAllFilterItems(),$("#documentSize").val(this.collection.getPageSize()),$("#documents_last").css("visibility","visible"),$("#documents_first").css("visibility","visible"),this.addDocumentSwitch=!0,this.collection.resetFilter(),this.collection.loadTotal(),this.restoredFilters=[],this.allowUpload=!1,this.files=void 0,this.file=void 0,$("#confirmDocImport").attr("disabled",!0),this.markFilterToggle(),this.collection.getDocuments(this.getDocsCallback.bind(this))},startDownload:function(){var a=this.collection.buildDownloadDocumentQuery();""!==a||void 0!==a||null!==a?window.open(encodeURI("query/result/download/"+btoa(JSON.stringify(a)))):arangoHelper.arangoError("Document error","could not download documents")},startUpload:function(){var a;return this.allowUpload===!0?(this.showSpinner(),a=this.collection.uploadDocuments(this.file),a!==!0?(this.hideSpinner(),this.hideImportModal(),this.resetView(),void arangoHelper.arangoError(a)):(this.hideSpinner(),this.hideImportModal(),void this.resetView())):void 0},uploadSetup:function(){var a=this;$("#importDocuments").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],$("#confirmDocImport").attr("disabled",!1),a.allowUpload=!0})},buildCollectionLink:function(a){return"collection/"+encodeURIComponent(a.get("name"))+"/documents/1"},markFilterToggle:function(){this.restoredFilters.length>0?$("#filterCollection").addClass("activated"):$("#filterCollection").removeClass("activated")},editDocuments:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),this.markFilterToggle(),$("#markDocuments").toggleClass("activated"),this.changeEditMode(),$("#filterHeader").hide(),$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").slideToggle(200),$("#exportHeader").hide()},filterCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),this.markFilterToggle(),this.activeFilter=!0,$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide(),$("#filterHeader").slideToggle(200);var a;for(a in this.filters)if(this.filters.hasOwnProperty(a))return void $("#attribute_name"+a).focus()},exportCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#filterHeader").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#exportCollection").toggleClass("activated"),this.markFilterToggle(),$("#exportHeader").slideToggle(200),$("#importHeader").hide(),$("#indexHeader").hide(),$("#filterHeader").hide(),$("#editHeader").hide()},importCollection:function(){this.markFilterToggle(),$("#indexCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#importCollection").toggleClass("activated"),$("#exportCollection").removeClass("activated"),$("#importHeader").slideToggle(200),$("#filterHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide()},indexCollection:function(){this.markFilterToggle(),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#indexCollection").toggleClass("activated"),$("#newIndexView").hide(),$("#indexEditView").show(),$("#indexHeader").slideToggle(200),$("#importHeader").hide(),$("#editHeader").hide(),$("#filterHeader").hide(),$("#exportHeader").hide()},changeEditMode:function(a){a===!1||this.editMode===!0?($("#documentsTableID tbody tr").css("cursor","default"),$(".deleteButton").fadeIn(),$(".addButton").fadeIn(),$(".selected-row").removeClass("selected-row"),this.editMode=!1,this.tableView.setRowClick(this.clicked.bind(this))):($("#documentsTableID tbody tr").css("cursor","copy"),$(".deleteButton").fadeOut(),$(".addButton").fadeOut(),$(".selectedCount").text(0),this.editMode=!0,this.tableView.setRowClick(this.editModeClick.bind(this)))},getFilterContent:function(){var a,b=[];for(a in this.filters)if(this.filters.hasOwnProperty(a)){var c=$("#attribute_value"+a).val();try{c=JSON.parse(c)}catch(d){c=String(c)}""!==$("#attribute_name"+a).val()&&b.push({attribute:$("#attribute_name"+a).val(),operator:$("#operator"+a).val(),value:c})}return b},sendFilter:function(){this.restoredFilters=this.getFilterContent();var a=this;this.collection.resetFilter(),this.addDocumentSwitch=!1,_.each(this.restoredFilters,function(b){void 0!==b.operator&&a.collection.addFilter(b.attribute,b.operator,b.value)}),this.collection.setToFirst(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.markFilterToggle()},restoreFilter:function(){var a=this,b=0;this.filterId=0,$("#docsSort").val(this.collection.getSort()),_.each(this.restoredFilters,function(c){0!==b&&a.addFilterItem(),void 0!==c.operator&&($("#attribute_name"+b).val(c.attribute),$("#operator"+b).val(c.operator),$("#attribute_value"+b).val(c.value)),b++,a.collection.addFilter(c.attribute,c.operator,c.value)})},addFilterItem:function(){var a=++this.filterId;$("#filterHeader").append('
'),this.filters[a]=!0},filterValueKeydown:function(a){13===a.keyCode&&this.sendFilter()},removeFilterItem:function(a){var b=a.currentTarget,c=b.id.replace(/^removeFilter/,"");delete this.filters[c],delete this.restoredFilters[c],$(b.parentElement).remove()},removeAllFilterItems:function(){var a,b=$("#filterHeader").children().length;for(a=1;b>=a;a++)$("#removeFilter"+a).parent().remove();this.filters={0:!0},this.filterId=0},addDocumentModal:function(){var a=window.location.hash.split("/")[1],b=[],c=[],d=arangoHelper.collectionApiType(a,!0);return"edge"===d?(c.push(window.modalView.createTextEntry("new-edge-from-attr","_from","","document _id: document handle of the linked vertex (incoming relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _from attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-to","_to","","document _id: document handle of the linked vertex (outgoing relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _to attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-key-attr","_key",void 0,"the edges unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addEdge.bind(this))),void window.modalView.show("modalTable.ejs","Create edge",b,c)):(c.push(window.modalView.createTextEntry("new-document-key-attr","_key",void 0,"the documents unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addDocument.bind(this))),window.modalView.show("modalTable.ejs","Create document",b,c),void 0)},addEdge:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-edge-from-attr").last().val(),d=$(".modal-body #new-edge-to").last().val(),e=$(".modal-body #new-edge-key-attr").last().val();a=""!==e||void 0!==e?this.documentStore.createTypeEdge(b,c,d,e):this.documentStore.createTypeEdge(b,c,d),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating edge failed")},addDocument:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-document-key-attr").last().val();a=""!==c||void 0!==c?this.documentStore.createTypeDocument(b,c):this.documentStore.createTypeDocument(b),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating document failed")},moveSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createTextEntry("move-documents-to","Move to","",!1,"collection-name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a.push(window.modalView.createSuccessButton("Move",this.confirmMoveSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Move documents",a,b))},confirmMoveSelectedDocs:function(){var a=this.getSelectedDocs(),b=this,c=$(".modal-body").last().find("#move-documents-to").val(),d=function(){this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()}.bind(this);_.each(a,function(a){b.collection.moveDocument(a,b.collection.collectionID,c,d)})},deleteSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createReadOnlyEntry(void 0,c.length+" documents selected","Do you want to delete all selected documents?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.confirmDeleteSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Delete documents",a,b))},confirmDeleteSelectedDocs:function(){var a=this.getSelectedDocs(),b=[],c=this;_.each(a,function(a){var d=!1;"document"===c.type?(d=c.documentStore.deleteDocument(c.collection.collectionID,a),d?(b.push(!0),c.collection.setTotalMinusOne()):(b.push(!1),arangoHelper.arangoError("Document error","Could not delete document."))):"edge"===c.type&&(d=c.documentStore.deleteEdge(c.collection.collectionID,a),d===!0?(c.collection.setTotalMinusOne(),b.push(!0)):(b.push(!1),arangoHelper.arangoError("Edge error","Could not delete edge")))}),this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()},getSelectedDocs:function(){var a=[];return _.each($("#documentsTableID tbody tr"),function(b){$(b).hasClass("selected-row")&&a.push($($(b).children()[1]).find(".key").text())}),a},remove:function(a){this.docid=$(a.currentTarget).closest("tr").attr("id").substr(4),$("#confirmDeleteBtn").attr("disabled",!1),$("#docDeleteModal").modal("show")},confirmDelete:function(){$("#confirmDeleteBtn").attr("disabled",!0);var a=window.location.hash.split("/"),b=a[3];"source"!==b&&this.reallyDelete()},reallyDelete:function(){var a,b=this,c=($(b.target).closest("tr").get(0),!1);"document"===this.type?(a=this.documentStore.deleteDocument(this.collection.collectionID,this.docid),a?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Doc error")):"edge"===this.type&&(a=this.documentStore.deleteEdge(this.collection.collectionID,this.docid),a===!0?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Edge error")),c===!0&&(this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#docDeleteModal").modal("hide"))},editModeClick:function(a){var b=$(a.currentTarget);b.hasClass("selected-row")?b.removeClass("selected-row"):b.addClass("selected-row");var c=this.getSelectedDocs();$(".selectedCount").text(c.length),_.each(this.editButtons,function(a){c.length>0?($(a).prop("disabled",!1),$(a).removeClass("button-neutral"),$(a).removeClass("disabled"),"#moveSelected"===a?$(a).addClass("button-success"):$(a).addClass("button-danger")):($(a).prop("disabled",!0),$(a).addClass("disabled"),$(a).addClass("button-neutral"),"#moveSelected"===a?$(a).removeClass("button-success"):$(a).removeClass("button-danger"))})},clicked:function(a){var b=a.currentTarget;window.App.navigate("collection/"+this.collection.collectionID+"/"+$(b).attr("id").substr(4),!0)},drawTable:function(){this.tableView.setElement($(this.table)).render(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),$(".prettify").snippet("javascript",{style:"nedit",menu:!1,startText:!1,transparent:!0,showNum:!1})},checkCollectionState:function(){this.lastCollectionName===this.collectionName?this.activeFilter&&(this.filterCollection(),this.restoreFilter()):void 0!==this.lastCollectionName&&(this.collection.resetFilter(),this.collection.setSort("_key"),this.restoredFilters=[],this.activeFilter=!1)},render:function(){return $(this.el).html(this.template.render({})),this.tableView.setElement($(this.table)).drawLoading(),this.collectionContext=this.collectionsStore.getPosition(this.collection.collectionID),this.getIndex(),this.breadcrumb(),this.checkCollectionState(),this.lastCollectionName=this.collectionName,this.uploadSetup(),$("[data-toggle=tooltip]").tooltip(),$(".upload-info").tooltip(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),this.renderPaginationElements(),this.selectActivePagesize(),this.markFilterToggle(),this},rerender:function(){this.collection.getDocuments(this.getDocsCallback.bind(this))},selectActivePagesize:function(){$("#documentSize").val(this.collection.getPageSize())},renderPaginationElements:function(){this.renderPagination();var a=$("#totalDocuments");0===a.length&&($("#documentsToolbarFL").append(''),a=$("#totalDocuments")),"document"===this.type&&a.html(this.collection.getTotal()+" document(s)"),"edge"===this.type&&a.html(this.collection.getTotal()+" edge(s)")},breadcrumb:function(){this.collectionName=window.location.hash.split("/")[1],$("#transparentHeader").append('")},resetIndexForms:function(){$("#indexHeader input").val("").prop("checked",!1),$("#newIndexType").val("Cap").prop("selected",!0),this.selectIndexType()},stringToArray:function(a){var b=[];return a.split(",").forEach(function(a){a=a.replace(/(^\s+|\s+$)/g,""),""!==a&&b.push(a)}),b},createIndex:function(){var a,b,c,d,e=this,f=$("#newIndexType").val(),g={};switch(f){case"Cap":var h=parseInt($("#newCapSize").val(),10)||0,i=parseInt($("#newCapByteSize").val(),10)||0;g={type:"cap",size:h,byteSize:i};break;case"Geo":b=$("#newGeoFields").val();var j=e.checkboxToValue("#newGeoJson"),k=e.checkboxToValue("#newGeoConstraint"),l=e.checkboxToValue("#newGeoIgnoreNull");g={type:"geo",fields:e.stringToArray(b),geoJson:j,constraint:k,ignoreNull:l};break;case"Hash":b=$("#newHashFields").val(),c=e.checkboxToValue("#newHashUnique"),d=e.checkboxToValue("#newHashSparse"),g={type:"hash",fields:e.stringToArray(b),unique:c,sparse:d};break;case"Fulltext":b=$("#newFulltextFields").val();var m=parseInt($("#newFulltextMinLength").val(),10)||0;g={type:"fulltext",fields:e.stringToArray(b),minLength:m};break;case"Skiplist":b=$("#newSkiplistFields").val(),c=e.checkboxToValue("#newSkiplistUnique"),d=e.checkboxToValue("#newSkiplistSparse"),g={type:"skiplist",fields:e.stringToArray(b),unique:c,sparse:d}}if(a=e.collectionModel.createIndex(g),a===!0)$("#collectionEditIndexTable tbody tr").remove(),e.getIndex(),e.toggleNewIndexView(),e.resetIndexForms();else if(a.responseText){var n=JSON.parse(a.responseText);arangoHelper.arangoNotification("Document error",n.errorMessage)}else arangoHelper.arangoNotification("Document error","Could not create index.")},prepDeleteIndex:function(a){this.lastTarget=a,this.lastId=$(this.lastTarget.currentTarget).parent().parent().first().children().first().text(),$("#indexDeleteModal").modal("show")},deleteIndex:function(){var a=this.collectionModel.deleteIndex(this.lastId);a===!0?$(this.lastTarget.currentTarget).parent().parent().remove():arangoHelper.arangoError("Could not delete index"),$("#indexDeleteModal").modal("hide")},selectIndexType:function(){$(".newIndexClass").hide();var a=$("#newIndexType").val();$("#newIndexType"+a).show()},checkboxToValue:function(a){return $(a).prop("checked")},getIndex:function(){this.index=this.collectionModel.getIndex();var a="collectionInfoTh modal-text";if(this.index){var b="",c="";$.each(this.index.indexes,function(d,e){c="primary"===e.type||"edge"===e.type?'':'',void 0!==e.fields&&(b=e.fields.join(", "));var f=e.id.indexOf("/"),g=e.id.substr(f+1,e.id.length),h=e.hasOwnProperty("selectivityEstimate")?(100*e.selectivityEstimate).toFixed(2)+"%":"n/a",i=e.hasOwnProperty("sparse")?e.sparse:"n/a";$("#collectionEditIndexTable").append(""+g+""+e.type+""+e.unique+""+i+""+h+""+b+""+c+"")}),arangoHelper.fixTooltips("deleteIndex","left")}}})}(),function(){"use strict";window.EditListEntryView=Backbone.View.extend({template:templateEngine.createTemplate("editListEntryView.ejs"),initialize:function(a){this.key=a.key,this.value=a.value,this.render()},events:{"click .deleteAttribute":"removeRow"},render:function(){$(this.el).html(this.template.render({key:this.key,value:JSON.stringify(this.value),isReadOnly:this.isReadOnly()}))},isReadOnly:function(){return 0===this.key.indexOf("_")},getKey:function(){return $(".key").val()},getValue:function(){var val=$(".val").val();try{val=JSON.parse(val)}catch(e){try{return eval("val = "+val),val}catch(e2){return $(".val").val()}}return val},removeRow:function(){this.remove()}})}(),function(){"use strict";window.FooterView=Backbone.View.extend({el:"#footerBar",system:{},isOffline:!0,isOfflineCounter:0,firstLogin:!0,events:{"click .footer-center p":"showShortcutModal"},initialize:function(){var a=this;window.setInterval(function(){a.getVersion()},15e3),a.getVersion()},template:templateEngine.createTemplate("footerView.ejs"),showServerStatus:function(a){a===!0?($(".serverStatusIndicator").addClass("isOnline"),$(".serverStatusIndicator").addClass("fa-check-circle-o"),$(".serverStatusIndicator").removeClass("fa-times-circle-o")):($(".serverStatusIndicator").removeClass("isOnline"),$(".serverStatusIndicator").removeClass("fa-check-circle-o"), -$(".serverStatusIndicator").addClass("fa-times-circle-o"))},showShortcutModal:function(){window.arangoHelper.hotkeysFunctions.showHotkeysModal()},getVersion:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(b){a.showServerStatus(!0),a.isOffline===!0&&(a.isOffline=!1,a.isOfflineCounter=0,a.firstLogin?a.firstLogin=!1:window.setTimeout(function(){a.showServerStatus(!0)},1e3),a.system.name=b.server,a.system.version=b.version,a.render())},error:function(b){a.isOffline=!0,a.isOfflineCounter++,a.isOfflineCounter>=1&&a.showServerStatus(!1)}}),a.system.hasOwnProperty("database")||$.ajax({type:"GET",cache:!1,url:"/_api/database/current",contentType:"application/json",processData:!1,async:!0,success:function(b){var c=b.result.name;a.system.database=c;var d=window.setInterval(function(){var b=$("#databaseNavi");b&&(window.clearTimeout(d),d=null,"_system"===c?($(".logs-menu").css("visibility","visible"),$(".logs-menu").css("display","inline"),$("#databaseNavi").css("display","inline")):($(".logs-menu").css("visibility","hidden"),$(".logs-menu").css("display","none")),a.render())},50)}})},renderVersion:function(){this.system.hasOwnProperty("database")&&this.system.hasOwnProperty("name")&&$(this.el).html(this.template.render({name:this.system.name,version:this.system.version,database:this.system.database}))},render:function(){return this.system.version||this.getVersion(),$(this.el).html(this.template.render({name:this.system.name,version:this.system.version})),this}})}(),function(){"use strict";window.FoxxActiveView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("foxxActiveView.ejs"),_show:!0,events:{click:"openAppDetailView"},openAppDetailView:function(){window.App.navigate("applications/"+encodeURIComponent(this.model.get("mount")),{trigger:!0})},toggle:function(a,b){switch(a){case"devel":this.model.isDevelopment()&&(this._show=b);break;case"production":this.model.isDevelopment()||this.model.isSystem()||(this._show=b);break;case"system":this.model.isSystem()&&(this._show=b)}this._show?$(this.el).show():$(this.el).hide()},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el)}})}(),function(){"use strict";var a=require("internal").errors,b=templateEngine.createTemplate("applicationListView.ejs"),c=function(a){this.collection=a.collection},d=function(b){if(window.hass=b,b.error===!1)this.collection.fetch({async:!1}),window.modalView.hide(),this.reload();else{var c=b;switch(b.hasOwnProperty("responseJSON")&&(c=b.responseJSON),c.errorNum){case a.ERROR_APPLICATION_DOWNLOAD_FAILED.code:alert("Unable to download application from the given repository.");break;default:alert("Error: "+c.errorNum+". "+c.errorMessage)}}},e=function(){window.modalView.modalBindValidation({id:"new-app-mount",validateInput:function(){return[{rule:Joi.string().regex(/^(\/(APP[^\/]+|(?!APP)[a-zA-Z0-9_\-%]+))+$/i),msg:"May not contain /APP"},{rule:Joi.string().regex(/^(\/[a-zA-Z0-9_\-%]+)+$/),msg:"Can only contain [a-zA-Z0-9_-%]"},{rule:Joi.string().regex(/^\/[^_]/),msg:"Mountpoints with _ are reserved for internal use"},{rule:Joi.string().regex(/[^\/]$/),msg:"May not end with /"},{rule:Joi.string().regex(/^\//),msg:"Has to start with /"},{rule:Joi.string().required().min(2),msg:"Has to be non-empty"}]}})},f=function(){window.modalView.modalBindValidation({id:"repository",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/),msg:"No valid github account and repository."}]}})},g=function(){window.modalView.modalBindValidation({id:"new-app-author",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-name",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z\-_][a-zA-Z0-9\-_]*$/),msg:"Can only contain a to z, A to Z, 0-9, '-' and '_'."}]}}),window.modalView.modalBindValidation({id:"new-app-description",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-license",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9 \.,;\-]+$/),msg:"Has to be non empty."}]}}),window.modalView.modalTestAll()},h=function(a){window.modalView.clearValidators();var b=$(a.currentTarget).attr("href").substr(1),c=$("#modalButton1");switch(this._upgrade||e(),b){case"newApp":c.html("Generate"),c.prop("disabled",!1),g();break;case"appstore":c.html("Install"),c.prop("disabled",!0);break;case"github":f(),c.html("Install"),c.prop("disabled",!1);break;case"zip":c.html("Install"),c.prop("disabled",!1)}c.prop("disabled")||window.modalView.modalTestAll()||c.prop("disabled",!0)},i=function(a){if(window.modalView.modalTestAll()){var b,c;this._upgrade?(b=this.mount,c=$("#new-app-teardown").prop("checked")):b=window.arangoHelper.escapeHtml($("#new-app-mount").val());var e=$(a.currentTarget).attr("appId"),f=$(a.currentTarget).attr("appVersion");void 0!==c?this.collection.installFromStore({name:e,version:f},b,d.bind(this),c):this.collection.installFromStore({name:e,version:f},b,d.bind(this))}},j=function(a,b){if(void 0===b?b=this._uploadData:this._uploadData=b,b&&window.modalView.modalTestAll()){var c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),void 0!==e?this.collection.installFromZip(b.filename,c,d.bind(this),e):this.collection.installFromZip(b.filename,c,d.bind(this))}},k=function(){if(window.modalView.modalTestAll()){var a,b,c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),a=window.arangoHelper.escapeHtml($("#repository").val()),b=window.arangoHelper.escapeHtml($("#tag").val()),""===b&&(b="master");var f={url:window.arangoHelper.escapeHtml($("#repository").val()),version:window.arangoHelper.escapeHtml($("#tag").val())};try{Joi.assert(a,Joi.string().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/))}catch(g){return}void 0!==e?this.collection.installFromGithub(f,c,d.bind(this),e):this.collection.installFromGithub(f,c,d.bind(this))}},l=function(){if(window.modalView.modalTestAll()){var a,b;this._upgrade?(a=this.mount,b=$("#new-app-teardown").prop("checked")):a=window.arangoHelper.escapeHtml($("#new-app-mount").val());var c={name:window.arangoHelper.escapeHtml($("#new-app-name").val()),collectionNames:_.map($("#new-app-collections").select2("data"),function(a){return window.arangoHelper.escapeHtml(a.text)}),author:window.arangoHelper.escapeHtml($("#new-app-author").val()),license:window.arangoHelper.escapeHtml($("#new-app-license").val()),description:window.arangoHelper.escapeHtml($("#new-app-description").val())};void 0!==b?this.collection.generate(c,a,d.bind(this),b):this.collection.generate(c,a,d.bind(this))}},m=function(){var a=$(".modal-body .tab-pane.active").attr("id");switch(a){case"newApp":l.apply(this);break;case"github":k.apply(this);break;case"zip":j.apply(this)}},n=function(a,c){var d=[],e={"click #infoTab a":h.bind(a),"click .install-app":i.bind(a)};d.push(window.modalView.createSuccessButton("Generate",m.bind(a))),window.modalView.show("modalApplicationMount.ejs","Install Service",d,c,void 0,void 0,e),$("#new-app-collections").select2({tags:[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px"}),$("#upload-foxx-zip").uploadFile({url:"/_api/upload?multipart=true",allowedTypes:"zip",multiple:!1,onSuccess:j.bind(a)}),$.get("foxxes/fishbowl",function(a){var c=$("#appstore-content");_.each(_.sortBy(a,"name"),function(a){c.append(b.render(a))})}).fail(function(){var a=$("#appstore-content");a.append("Store is not available. ArangoDB is not able to connect to github.com")})};c.prototype.install=function(a){this.reload=a,this._upgrade=!1,this._uploadData=void 0,delete this.mount,n(this,!1),window.modalView.clearValidators(),e(),g()},c.prototype.upgrade=function(a,b){this.reload=b,this._upgrade=!0,this._uploadData=void 0,this.mount=a,n(this,!0),window.modalView.clearValidators(),g()},window.FoxxInstallView=c}(),function(){"use strict";window.GraphManagementView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("graphManagementView.ejs"),edgeDefintionTemplate:templateEngine.createTemplate("edgeDefinitionTable.ejs"),eCollList:[],removedECollList:[],dropdownVisible:!1,events:{"click #deleteGraph":"deleteGraph","click .icon_arangodb_settings2.editGraph":"editGraph","click #createGraph":"addNewGraph","keyup #graphManagementSearchInput":"search","click #graphManagementSearchSubmit":"search","click .tile-graph":"redirectToGraphViewer","click #graphManagementToggle":"toggleGraphDropdown","click .css-label":"checkBoxes","change #graphSortDesc":"sorting"},redirectToGraphViewer:function(a){var b=$(a.currentTarget).attr("id");b=b.substr(0,b.length-5),window.location=window.location+"/"+encodeURIComponent(b)},loadGraphViewer:function(a){var b=this.collection.get(a).get("edgeDefinitions");if(b&&0!==b.length){var c={type:"gharial",graphName:a,baseUrl:require("internal").arango.databasePrefix("/")},d=$("#content").width()-75;$("#content").html("");var e=arangoHelper.calculateCenterDivHeight();this.ui=new GraphViewerUI($("#content")[0],c,d,e,{nodeShaper:{label:"_key",color:{type:"attribute",key:"_key"}}},!0),$(".contentDiv").height(e)}},handleResize:function(a){this.width&&this.width===a||(this.width=a,this.ui&&this.ui.changeWidth(a))},addNewGraph:function(a){a.preventDefault(),this.createEditGraphModal()},deleteGraph:function(){var a=this,b=$("#editGraphName")[0].value;this.collection.get(b).destroy({success:function(){a.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;arangoHelper.arangoError(d),window.modalView.hide()}})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},toggleGraphDropdown:function(){$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown2").slideToggle(200)},sorting:function(){$("#graphSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#graphManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(){return this.collection.fetch({async:!1}),this.collection.sort(),$(this.el).html(this.template.render({graphs:this.collection,searchString:""})),this.dropdownVisible===!0&&($("#graphManagementDropdown2").show(),$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown").show()),this.events["click .tableRow"]=this.showHideDefinition.bind(this),this.events['change tr[id*="newEdgeDefinitions"]']=this.setFromAndTo.bind(this),this.events["click .graphViewer-icon-button"]=this.addRemoveDefinition.bind(this),arangoHelper.setCheckboxStatus("#graphManagementDropdown"),this},setFromAndTo:function(a){a.stopPropagation();var b,c=this.calculateEdgeDefinitionMap();if(a.added){if(-1===this.eCollList.indexOf(a.added.id)&&-1!==this.removedECollList.indexOf(a.added.id))return b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$('input[id*="newEdgeDefinitions'+b+'"]').select2("val",null),void $('input[id*="newEdgeDefinitions'+b+'"]').attr("placeholder","The collection "+a.added.id+" is already used.");this.removedECollList.push(a.added.id),this.eCollList.splice(this.eCollList.indexOf(a.added.id),1)}else this.eCollList.push(a.removed.id),this.removedECollList.splice(this.removedECollList.indexOf(a.removed.id),1);c[a.val]?(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",c[a.val].from),$("#fromCollections"+b).attr("disabled",!0),$("#s2id_toCollections"+b).select2("val",c[a.val].to),$("#toCollections"+b).attr("disabled",!0)):(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",null),$("#fromCollections"+b).attr("disabled",!1),$("#s2id_toCollections"+b).select2("val",null),$("#toCollections"+b).attr("disabled",!1))},editGraph:function(a){a.stopPropagation(),this.collection.fetch(),this.graphToEdit=this.evaluateGraphName($(a.currentTarget).attr("id"),"_settings");var b=this.collection.findWhere({_key:this.graphToEdit});this.createEditGraphModal(b)},saveEditedGraph:function(){var a,b,c,d,e,f=$("#editGraphName")[0].value,g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i={};if(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){if(d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),0!==b.length&&0!==c.length)){var f={collection:a,from:b,to:c};h.push(f),i[a]=f}}),0===h.length)return void $("#s2id_newEdgeDefinitions0 .select2-choices").css("border-color","red");var j=this.collection.findWhere({_key:f}),k=j.get("edgeDefinitions"),l=j.get("orphanCollections"),m=[];l.forEach(function(a){-1===g.indexOf(a)&&j.deleteVertexCollection(a)}),g.forEach(function(a){-1===l.indexOf(a)&&j.addVertexCollection(a)});var n=[],o=[],p=[];k.forEach(function(a){var b=a.collection;m.push(b);var c=i[b];void 0===c?p.push(b):JSON.stringify(c)!==JSON.stringify(a)&&o.push(b)}),h.forEach(function(a){var b=a.collection;-1===m.indexOf(b)&&n.push(b)}),n.forEach(function(a){j.addEdgeDefinition(i[a])}),o.forEach(function(a){j.modifyEdgeDefinition(i[a])}),p.forEach(function(a){j.deleteEdgeDefinition(a)}),this.updateGraphManagementView(),window.modalView.hide()},evaluateGraphName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},search:function(){var a,b,c,d;a=$("#graphManagementSearchInput"),b=$("#graphManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("_key").indexOf(b)}),$(this.el).html(this.template.render({graphs:d,searchString:b})),a=$("#graphManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},updateGraphManagementView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},createNewGraph:function(){var a,b,c,d,e,f=$("#createNewGraphName").val(),g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i=this;return f?this.collection.findWhere({_key:f})?(arangoHelper.arangoError("The graph '"+f+"' already exists."),0):(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),1!==b&&1!==c&&h.push({collection:a,from:b,to:c}))}),void this.collection.create({name:f,edgeDefinitions:h,orphanCollections:g},{success:function(){i.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;d=d.replace("<",""),d=d.replace(">",""),arangoHelper.arangoError(d)}})):(arangoHelper.arangoError("A name for the graph has to be provided."),0)},createEditGraphModal:function(a){var b,c=[],d=[],e=[],f=this.options.collectionCollection.models,g=this,h="",i=[{collection:"",from:"",to:""}],j="",k=function(a,b){return a=a.toLowerCase(),b=b.toLowerCase(),b>a?-1:a>b?1:0};if(this.eCollList=[],this.removedECollList=[],f.forEach(function(a){a.get("isSystem")||("edge"===a.get("type")?g.eCollList.push(a.id):d.push(a.id))}),window.modalView.enableHotKeys=!1,this.counter=0,a?(b="Edit Graph",h=a.get("_key"),i=a.get("edgeDefinitions"),i&&0!==i.length||(i=[{collection:"",from:"",to:""}]),j=a.get("orphanCollections"),e.push(window.modalView.createReadOnlyEntry("editGraphName","Name",h,"The name to identify the graph. Has to be unique")),c.push(window.modalView.createDeleteButton("Delete",this.deleteGraph.bind(this))),c.push(window.modalView.createSuccessButton("Save",this.saveEditedGraph.bind(this)))):(b="Create Graph",e.push(window.modalView.createTextEntry("createNewGraphName","Name","","The name to identify the graph. Has to be unique.","graphName",!0)),c.push(window.modalView.createSuccessButton("Create",this.createNewGraph.bind(this)))),i.forEach(function(a){0===g.counter?(a.collection&&(g.removedECollList.push(a.collection),g.eCollList.splice(g.eCollList.indexOf(a.collection),1)),e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!0,!1,!0,1,g.eCollList.sort(k)))):e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!1,!0,!1,1,g.eCollList.sort(k))),e.push(window.modalView.createSelect2Entry("fromCollections"+g.counter,"fromCollections",a.from,"The collections that contain the start vertices of the relation.","fromCollections",!0,!1,!1,10,d.sort(k))),e.push(window.modalView.createSelect2Entry("toCollections"+g.counter,"toCollections",a.to,"The collections that contain the end vertices of the relation.","toCollections",!0,!1,!1,10,d.sort(k))),g.counter++}),e.push(window.modalView.createSelect2Entry("newVertexCollections","Vertex collections",j,"Collections that are part of a graph but not used in an edge definition","Vertex Collections",!1,!1,!1,10,d.sort(k))),window.modalView.show("modalGraphTable.ejs",b,c,e,void 0,void 0,this.events),a){var l;for(l=0;l<=this.counter;l++)$("#row_fromCollections"+l).hide(),$("#row_toCollections"+l).hide()}},showHideDefinition:function(a){a.stopPropagation();var b,c=$(a.currentTarget).attr("id");-1!==c.indexOf("row_newEdgeDefinitions")&&(b=c.split("row_newEdgeDefinitions")[1],$("#row_fromCollections"+b).toggle(),$("#row_toCollections"+b).toggle())},addRemoveDefinition:function(a){var b=[],c=this.options.collectionCollection.models;c.forEach(function(a){a.get("isSystem")||b.push(a.id)}),a.stopPropagation();var d,e=$(a.currentTarget).attr("id");return-1!==e.indexOf("addAfter_newEdgeDefinitions")?(this.counter++,$("#row_newVertexCollections").before(this.edgeDefintionTemplate.render({number:this.counter})),$("#newEdgeDefinitions"+this.counter).select2({tags:this.eCollList,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:1}),$("#fromCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),$("#toCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),window.modalView.undelegateEvents(),void window.modalView.delegateEvents(this.events)):void(-1!==e.indexOf("remove_newEdgeDefinitions")&&(d=e.split("remove_newEdgeDefinitions")[1],$("#row_newEdgeDefinitions"+d).remove(),$("#row_fromCollections"+d).remove(),$("#row_toCollections"+d).remove()))},calculateEdgeDefinitionMap:function(){var a={};return this.collection.models.forEach(function(b){b.get("edgeDefinitions").forEach(function(b){a[b.collection]={from:b.from,to:b.to}})}),a}})}(),function(){"use strict";window.GraphTestView=Backbone.View.extend({el:"#content",graphContainer:"graphContainer",template:templateEngine.createTemplate("graphTestView.ejs"),events:{},render:function(){var a=this;$(this.el).html(this.template.render({})),_.each(this.jsonRequestDummy,function(b){a.parseResultOfTraversal(b)}),$("#"+this.graphContainer).height(arangoHelper.calculateCenterDivHeight());var b=Viva.Graph.generator(),c=b.grid(10,10);c=Viva.Graph.graph(),c.Name="ArangoDB Test Graph";for(var d=0;d0&&(m-=1),a.id0&&n.webglUtils.copyArrayPart(l,a.id*i,m*i,i)},replaceProperties:function(a,b){}}},parseResultOfTraversal:function(a,b){var c=this;if(0===a.length||0===a[0].length||0===a[0][0].length)return void(b&&b({errorCode:404}));a=a[0][0];a[0].vertex;_.each(a,function(a){var b=(a.vertex,a.path);_.each(b.vertices,function(a){var b=a;c.jsonNodes.push(b)}),_.each(b.edges,function(a){c.jsonEdges.push(a)})}),b&&b()},jsonNodes:[],jsonEdges:[],jsonRequestDummy:[[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624", -_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko" -},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]]]})}(),function(){"use strict";window.loginView=Backbone.View.extend({el:"#content",el2:".header",el3:".footer",init:function(){},events:{"submit #loginForm":"login"},template:templateEngine.createTemplate("loginView.ejs"),render:function(){return $(this.el).html(this.template.render({})),$(this.el2).hide(),$(this.el3).hide(),$("#loginUsername").focus(),this},login:function(a){a.preventDefault();var b=$("#loginUsername").val(),c=$("#loginPassword").val();b&&(b=this.collection.login(b,c),b&&($(this.el2).show(),$(this.el3).show(),window.location.reload(),$("#currentUser").text(b),this.collection.loadUserSettings()))}})}(),function(){"use strict";window.LogsView=window.PaginationView.extend({el:"#content",id:"#logContent",paginationDiv:"#logPaginationDiv",idPrefix:"logTable",fetchedAmount:!1,initialize:function(){this.convertModelToJSON()},currentLoglevel:"logall",events:{"click #arangoLogTabbar button":"setActiveLoglevel","click #logTable_first":"firstPage","click #logTable_last":"lastPage"},template:templateEngine.createTemplate("logsView.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbarElements:{id:"arangoLogTabbar",titles:[["Debug","logdebug"],["Warning","logwarning"],["Error","logerror"],["Info","loginfo"],["All","logall"]]},tableDescription:{id:"arangoLogTable",titles:["Loglevel","Date","Message"],rows:[]},convertedRows:null,setActiveLoglevel:function(a){$(".arangodb-tabbar").removeClass("arango-active-tab"),this.currentLoglevel!==a.currentTarget.id&&(this.currentLoglevel=a.currentTarget.id,this.convertModelToJSON())},initTotalAmount:function(){var a=this;this.collection=this.options[this.currentLoglevel],this.collection.fetch({data:$.param({test:!0}),success:function(){a.convertModelToJSON()}}),this.fetchedAmount=!0},invertArray:function(a){var b,c=[],d=0;for(b=a.length-1;b>=0;b--)c[d]=a[b],d++;return c},convertModelToJSON:function(){if(!this.fetchedAmount)return void this.initTotalAmount();var a,b=this,c=[];this.collection=this.options[this.currentLoglevel],this.collection.fetch({success:function(){b.collection.each(function(b){a=new Date(1e3*b.get("timestamp")),c.push([b.getLogStatus(),arangoHelper.formatDT(a),b.get("text")])}),b.tableDescription.rows=b.invertArray(c),b.render()}})},render:function(){return $(this.el).html(this.template.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#"+this.currentLoglevel).addClass("arango-active-tab"),$("#logContent").append('
'),this.renderPagination(),this},rerender:function(){this.convertModelToJSON()}})}(),function(){"use strict";var a=function(a,b,c,d){return{type:a,title:b,callback:c,confirm:d}},b=function(a,b,c,d,e,f,g,h,i,j,k){var l={type:a,label:b};return void 0!==c&&(l.value=c),void 0!==d&&(l.info=d),void 0!==e&&(l.placeholder=e),void 0!==f&&(l.mandatory=f),void 0!==h&&(l.addDelete=h),void 0!==i&&(l.addAdd=i),void 0!==j&&(l.maxEntrySize=j),void 0!==k&&(l.tags=k),g&&(l.validateInput=function(){return g}),l};window.ModalView=Backbone.View.extend({_validators:[],_validateWatchers:[],baseTemplate:templateEngine.createTemplate("modalBase.ejs"),tableTemplate:templateEngine.createTemplate("modalTable.ejs"),el:"#modalPlaceholder",contentEl:"#modalContent",hideFooter:!1,confirm:{list:"#modal-delete-confirmation",yes:"#modal-confirm-delete",no:"#modal-abort-delete"},enabledHotkey:!1,enableHotKeys:!0,buttons:{SUCCESS:"success",NOTIFICATION:"notification",DELETE:"danger",NEUTRAL:"neutral",CLOSE:"close"},tables:{READONLY:"readonly",TEXT:"text",BLOB:"blob",PASSWORD:"password",SELECT:"select",SELECT2:"select2",CHECKBOX:"checkbox"},initialize:function(){Object.freeze(this.buttons),Object.freeze(this.tables)},createModalHotkeys:function(){$(this.el).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("input",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("select",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()})},createInitModalHotkeys:function(){var a=this;$(this.el).bind("keydown","left",function(){a.navigateThroughButtons("left")}),$(this.el).bind("keydown","right",function(){a.navigateThroughButtons("right")})},navigateThroughButtons:function(a){var b=$(".modal-footer button").is(":focus");b===!1?"left"===a?$(".modal-footer button").first().focus():"right"===a&&$(".modal-footer button").last().focus():b===!0&&("left"===a?$(":focus").prev().focus():"right"===a&&$(":focus").next().focus())},createCloseButton:function(b,c){var d=this;return a(this.buttons.CLOSE,b,function(){d.hide(),c&&c()})},createSuccessButton:function(b,c){return a(this.buttons.SUCCESS,b,c)},createNotificationButton:function(b,c){return a(this.buttons.NOTIFICATION,b,c)},createDeleteButton:function(b,c,d){return a(this.buttons.DELETE,b,c,d)},createNeutralButton:function(b,c){return a(this.buttons.NEUTRAL,b,c)},createDisabledButton:function(b){var c=a(this.buttons.NEUTRAL,b);return c.disabled=!0,c},createReadOnlyEntry:function(a,c,d,e,f,g){var h=b(this.tables.READONLY,c,d,e,void 0,void 0,void 0,f,g);return h.id=a,h},createTextEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.TEXT,c,d,e,f,g,h);return i.id=a,i},createBlobEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.BLOB,c,d,e,f,g,h);return i.id=a,i},createSelect2Entry:function(a,c,d,e,f,g,h,i,j,k){var l=b(this.tables.SELECT2,c,d,e,f,g,void 0,h,i,j,k);return l.id=a,l},createPasswordEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.PASSWORD,c,d,e,f,g,h);return i.id=a,i},createCheckboxEntry:function(a,c,d,e,f){var g=b(this.tables.CHECKBOX,c,d,e);return g.id=a,f&&(g.checked=f),g},createSelectEntry:function(a,c,d,e,f){var g=b(this.tables.SELECT,c,null,e);return g.id=a,d&&(g.selected=d),g.options=f,g},createOptionEntry:function(a,b){return{label:a,value:b||a}},show:function(a,b,c,d,e,f,g,h){var i,j,k=this,l=!1;c=c||[],h=Boolean(h),this.clearValidators(),c.length>0?(c.forEach(function(a){a.type===k.buttons.CLOSE&&(l=!0),a.type===k.buttons.DELETE&&(j=j||a.confirm)}),l||(i=c.pop(),c.push(k.createCloseButton("Cancel")),c.push(i))):c.push(k.createCloseButton("Dismiss")),$(this.el).html(this.baseTemplate.render({title:b,buttons:c,hideFooter:this.hideFooter,confirm:j})),_.each(c,function(a,b){return!a.disabled&&a.callback?a.type!==k.buttons.DELETE||h?void $("#modalButton"+b).bind("click",a.callback):void $("#modalButton"+b).bind("click",function(){$(k.confirm.yes).unbind("click"),$(k.confirm.yes).bind("click",a.callback),$(k.confirm.list).css("display","block")}):void 0}),$(this.confirm.no).bind("click",function(){$(k.confirm.list).css("display","none")});var m=templateEngine.createTemplate(a);$(".modal-body").html(m.render({content:d,advancedContent:e,info:f})),$(".modalTooltips").tooltip({position:{my:"left top",at:"right+55 top-1"}});var n=d||[];e&&e.content&&(n=n.concat(e.content)),_.each(n,function(a){k.modalBindValidation(a),a.type===k.tables.SELECT2&&$("#"+a.id).select2({tags:a.tags||[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:a.maxEntrySize||8})}),g&&(this.events=g,this.delegateEvents()),$("#modal-dialog").modal("show"),this.enabledHotkey===!1&&(this.createInitModalHotkeys(),this.enabledHotkey=!0),this.enableHotKeys&&this.createModalHotkeys();var o=$("#modal-dialog").find("input");o&&setTimeout(function(){var a=$("#modal-dialog");a.length>0&&(a=a.find("input"),a.length>0&&$(a[0]).focus())},800)},modalBindValidation:function(a){var b=this;if(a.hasOwnProperty("id")&&a.hasOwnProperty("validateInput")){var c=function(){var b=$("#"+a.id),c=a.validateInput(b),d=!1;return _.each(c,function(a){var c=b.val();if(a.rule||(a={rule:a}),"function"==typeof a.rule)try{a.rule(c)}catch(e){d=a.msg||e.message}else{var f=Joi.validate(c,a.rule);f.error&&(d=a.msg||f.error.message)}return d?!1:void 0}),d?d:void 0},d=$("#"+a.id);d.on("keyup focusout",function(){var a=c(),e=d.next()[0];a?(d.addClass("invalid-input"),e?$(e).text(a):d.after('

'+a+"

"),$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled")):(d.removeClass("invalid-input"),e&&$(e).remove(),b.modalTestAll())}),this._validators.push(c),this._validateWatchers.push(d)}},modalTestAll:function(){var a=_.map(this._validators,function(a){return a()}),b=_.any(a);return b?$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled"):$(".modal-footer .button-success").prop("disabled",!1).removeClass("disabled"),!b},clearValidators:function(){this._validators=[],_.each(this._validateWatchers,function(a){a.unbind("keyup focusout")}),this._validateWatchers=[]},hide:function(){this.clearValidators(),$("#modal-dialog").modal("hide")}})}(),function(){"use strict";window.NavigationView=Backbone.View.extend({el:"#navigationBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown"},initialize:function(){this.userCollection=this.options.userCollection,this.currentDB=this.options.currentDB,this.dbSelectionView=new window.DBSelectionView({collection:this.options.database,current:this.currentDB}),this.userBarView=new window.UserBarView({userCollection:this.userCollection}),this.notificationView=new window.NotificationView({collection:this.options.notificationCollection}),this.statisticBarView=new window.StatisticBarView({currentDB:this.currentDB}),this.handleKeyboardHotkeys()},handleSelectDatabase:function(){this.dbSelectionView.render($("#dbSelect"))},template:templateEngine.createTemplate("navigationView.ejs"),render:function(){return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),this.dbSelectionView.render($("#dbSelect")),this.notificationView.render($("#notificationBar")),this.userCollection.whoAmI()&&this.userBarView.render(),this.statisticBarView.render($("#statisticBar")),window.App.arangoCollectionsStore.findWhere({name:"arangodbflightsdemo"})||$(".demo-menu").css("display","none"),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},handleKeyboardHotkeys:function(){arangoHelper.enableKeyboardHotkeys(!0)},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return""===c&&(c=$(b).attr("class")),"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):"dbselection"===c?($("#dbs_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){var a=this;$("#arangoCollectionSelect").change(function(){a.navigateBySelect()})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c||"link_dropdown"===c?void $("#link_dropdown").show(200):"tools"===c||"tools_dropdown"===c?void $("#tools_dropdown").show(200):"dbselection"===c||"dbs_dropdown"===c?void $("#dbs_dropdown").show(200):void 0},hideDropdown:function(a){var b=a.target||a.srcElement;b=$(b).closest(".dropdown");var c=b.attr("id");return"linkDropdown"===c?void $("#link_dropdown").hide():"toolsDropdown"===c?void $("#tools_dropdown").hide():"dbSelect"===c?void $("#dbs_dropdown").hide():void 0}})}(),function(){"use strict";window.NotificationView=Backbone.View.extend({events:{"click .navlogo #stat_hd":"toggleNotification","click .notificationItem .fa":"removeNotification","click #removeAllNotifications":"removeAllNotifications"},initialize:function(){this.collection.bind("add",this.renderNotifications.bind(this)),this.collection.bind("remove",this.renderNotifications.bind(this)),this.collection.bind("reset",this.renderNotifications.bind(this))},notificationItem:templateEngine.createTemplate("notificationItem.ejs"),el:"#notificationBar",template:templateEngine.createTemplate("notificationView.ejs"),toggleNotification:function(){var a=this.collection.length;0!==a&&$("#notification_menu").toggle()},removeAllNotifications:function(){this.collection.reset(),$("#notification_menu").hide()},removeNotification:function(a){var b=a.target.id;this.collection.get(b).destroy()},renderNotifications:function(){$("#stat_hd_counter").text(this.collection.length),0===this.collection.length?($("#stat_hd").removeClass("fullNotification"),$("#notification_menu").hide()):$("#stat_hd").addClass("fullNotification"),$(".innerDropdownInnerUL").html(this.notificationItem.render({notifications:this.collection}))},render:function(){return $(this.el).html(this.template.render({notifications:this.collection})),this.renderNotifications(),this.delegateEvents(),this.el}})}(),function(){"use strict";window.ProgressView=Backbone.View.extend({template:templateEngine.createTemplate("progressBase.ejs"),el:"#progressPlaceholder",el2:"#progressPlaceholderIcon",toShow:!1,lastDelay:0,action:function(){},events:{"click .progress-action button":"performAction"},performAction:function(){window.progressView.hide()},initialize:function(){},showWithDelay:function(a,b,c,d){var e=this;e.toShow=!0,e.lastDelay=a,setTimeout(function(){e.toShow===!0&&e.show(b,c,d)},e.lastDelay)},show:function(a,b,c){$(this.el).html(this.template.render({})),$(".progress-text").text(a),$(".progress-action").html(''),this.action=this.hide(),$(this.el).show()},hide:function(){var a=this;a.toShow=!1,$(this.el).hide(),this.action=function(){}}})}(),function(){"use strict";window.queryManagementView=Backbone.View.extend({el:"#content",id:"#queryManagementContent",templateActive:templateEngine.createTemplate("queryManagementViewActive.ejs"),templateSlow:templateEngine.createTemplate("queryManagementViewSlow.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),initialize:function(){this.activeCollection=new window.QueryManagementActive,this.slowCollection=new window.QueryManagementSlow,this.convertModelToJSON(!0)},events:{"click #arangoQueryManagementTabbar button":"switchTab","click #deleteSlowQueryHistory":"deleteSlowQueryHistoryModal","click #arangoQueryManagementTable .fa-minus-circle":"deleteRunningQueryModal"},tabbarElements:{id:"arangoQueryManagementTabbar",titles:[["Active","activequeries"],["Slow","slowqueries"]]},tableDescription:{id:"arangoQueryManagementTable",titles:["ID","Query String","Runtime","Started",""],rows:[],unescaped:[!1,!1,!1,!1,!0]},switchTab:function(a){"activequeries"===a.currentTarget.id?this.convertModelToJSON(!0):"slowqueries"===a.currentTarget.id&&this.convertModelToJSON(!1)},deleteRunningQueryModal:function(a){this.killQueryId=$(a.currentTarget).attr("data-id");var b=[],c=[];c.push(window.modalView.createReadOnlyEntry(void 0,"Running Query","Do you want to kill the running query?",void 0,void 0,!1,void 0)),b.push(window.modalView.createDeleteButton("Kill",this.killRunningQuery.bind(this))),window.modalView.show("modalTable.ejs","Kill Running Query",b,c),$(".modal-delete-confirmation strong").html("Really kill?")},killRunningQuery:function(){this.collection.killRunningQuery(this.killQueryId,this.killRunningQueryCallback.bind(this)),window.modalView.hide()},killRunningQueryCallback:function(){this.convertModelToJSON(!0),this.renderActive()},deleteSlowQueryHistoryModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry(void 0,"Slow Query Log","Do you want to delete the slow query log entries?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.deleteSlowQueryHistory.bind(this))),window.modalView.show("modalTable.ejs","Delete Slow Query Log",a,b)},deleteSlowQueryHistory:function(){this.collection.deleteSlowQueryHistory(this.slowQueryCallback.bind(this)),window.modalView.hide()},slowQueryCallback:function(){this.convertModelToJSON(!1),this.renderSlow()},render:function(){this.convertModelToJSON(!0)},renderActive:function(){this.$el.html(this.templateActive.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#activequeries").addClass("arango-active-tab")},renderSlow:function(){this.$el.html(this.templateSlow.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#slowqueries").addClass("arango-active-tab")},convertModelToJSON:function(a){var b=this,c=[];a===!0?this.collection=this.activeCollection:this.collection=this.slowCollection,this.collection.fetch({success:function(){b.collection.each(function(b){var d="";a&&(d=''),c.push([b.get("id"),b.get("query"),b.get("runTime").toFixed(2)+" s",b.get("started"),d])});var d="No running queries.";a||(d="No slow queries."),0===c.length&&c.push([d,"","",""]),b.tableDescription.rows=c,a?b.renderActive():b.renderSlow()}})}})}(),function(){"use strict";window.queryView=Backbone.View.extend({el:"#content",id:"#customsDiv",warningTemplate:templateEngine.createTemplate("warningList.ejs"),tabArray:[],execPending:!1,initialize:function(){this.refreshAQL(),this.tableDescription.rows=this.customQueries},events:{"click #result-switch":"switchTab","click #query-switch":"switchTab","click #customs-switch":"switchTab","click #submitQueryButton":"submitQuery","click #explainQueryButton":"explainQuery","click #commentText":"commentText","click #uncommentText":"uncommentText","click #undoText":"undoText","click #redoText":"redoText","click #smallOutput":"smallOutput","click #bigOutput":"bigOutput","click #clearOutput":"clearOutput","click #clearInput":"clearInput","click #clearQueryButton":"clearInput","click #addAQL":"addAQL","mouseover #querySelect":function(){this.refreshAQL(!0)},"change #querySelect":"importSelected","keypress #aqlEditor":"aqlShortcuts","click #arangoQueryTable .table-cell0":"editCustomQuery","click #arangoQueryTable .table-cell1":"editCustomQuery","click #arangoQueryTable .table-cell2 a":"deleteAQL","click #confirmQueryImport":"importCustomQueries","click #confirmQueryExport":"exportCustomQueries","click #downloadQueryResult":"downloadQueryResult","click #importQueriesToggle":"showImportMenu"},showImportMenu:function(a){$("#importQueriesToggle").toggleClass("activated"),$("#importHeader").slideToggle(200)},createCustomQueryModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("new-query-name","Name","",void 0,void 0,!1,[{rule:Joi.string().required(),msg:"No query name given."}])),a.push(window.modalView.createSuccessButton("Save",this.saveAQL.bind(this))),window.modalView.show("modalTable.ejs","Save Query",a,b,void 0,void 0,{"keyup #new-query-name":this.listenKey.bind(this)})},updateTable:function(){this.tableDescription.rows=this.customQueries,_.each(this.tableDescription.rows,function(a){a.thirdRow=''}),this.tableDescription.unescaped=[!1,!1,!0],this.$(this.id).html(this.table.render({content:this.tableDescription}))},editCustomQuery:function(a){var b=$(a.target).parent().children().first().text(),c=ace.edit("aqlEditor");c.setValue(this.getCustomQueryValueByName(b)),this.deselect(c),$("#querySelect").val(b),this.switchTab("query-switch")},initTabArray:function(){var a=this;$(".arango-tab").children().each(function(){a.tabArray.push($(this).children().first().attr("id"))})},listenKey:function(a){13===a.keyCode&&this.saveAQL(a),this.checkSaveName()},checkSaveName:function(){var a=$("#new-query-name").val();if("Insert Query"===a)return void $("#new-query-name").val("");var b=this.customQueries.some(function(b){return b.name===a});b?($("#modalButton1").removeClass("button-success"),$("#modalButton1").addClass("button-warning"),$("#modalButton1").text("Update")):($("#modalButton1").removeClass("button-warning"),$("#modalButton1").addClass("button-success"),$("#modalButton1").text("Save"))},clearOutput:function(){var a=ace.edit("queryOutput");a.setValue("")},clearInput:function(){var a=ace.edit("aqlEditor");this.setCachedQuery(a.getValue()),a.setValue("")},smallOutput:function(){var a=ace.edit("queryOutput");a.getSession().foldAll()},bigOutput:function(){var a=ace.edit("queryOutput");a.getSession().unfold()},aqlShortcuts:function(a){a.ctrlKey&&13===a.keyCode?this.submitQuery():a.metaKey&&!a.ctrlKey&&13===a.keyCode&&this.submitQuery()},queries:[],customQueries:[],tableDescription:{id:"arangoQueryTable",titles:["Name","Content",""],rows:[]},template:templateEngine.createTemplate("queryView.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),render:function(){var a=this;this.$el.html(this.template.render({})),this.$(this.id).html(this.table.render({content:this.tableDescription}));var b=1e3,c=$("#querySize");c.empty(),[100,250,500,1e3,2500,5e3,1e4].forEach(function(a){c.append('")});var d=ace.edit("queryOutput");d.setReadOnly(!0),d.setHighlightActiveLine(!1),d.getSession().setMode("ace/mode/json"),d.setFontSize("16px"),d.setValue("");var e=ace.edit("aqlEditor");e.getSession().setMode("ace/mode/aql"),e.setFontSize("16px"),e.commands.addCommand({name:"togglecomment",bindKey:{win:"Ctrl-Shift-C",linux:"Ctrl-Shift-C",mac:"Command-Shift-C"},exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEach"});var f=this.getCachedQuery();null!==f&&void 0!==f&&""!==f&&e.setValue(f),e.getSession().selection.on("changeCursor",function(b){var c=ace.edit("aqlEditor"),d=c.getSession(),e=c.getCursorPosition(),f=d.getTokenAt(e.row,e.column);f&&("comment"===f.type?$("#commentText i").removeClass("fa-comment").addClass("fa-comment-o").attr("data-original-title","Uncomment"):$("#commentText i").removeClass("fa-comment-o").addClass("fa-comment").attr("data-original-title","Comment")),a.setCachedQuery(c.getValue())}),$("#queryOutput").resizable({handles:"s",ghost:!0,stop:function(){setTimeout(function(){var a=ace.edit("queryOutput");a.resize()},200)}}),arangoHelper.fixTooltips(".queryTooltips, .icon_arangodb","top"),$("#aqlEditor .ace_text-input").focus();var g=$(window).height()-295;return $("#aqlEditor").height(g-19),$("#queryOutput").height(g),e.resize(),d.resize(),this.initTabArray(),this.renderSelectboxes(),this.deselect(d),this.deselect(e),$("#queryDiv").show(),$("#customsDiv").show(),this.initQueryImport(),this.switchTab("query-switch"),this},getCachedQuery:function(){if("undefined"!=typeof Storage){var a=localStorage.getItem("cachedQuery");if(void 0!==a){var b=JSON.parse(a);return b}}},setCachedQuery:function(a){"undefined"!=typeof Storage&&localStorage.setItem("cachedQuery",JSON.stringify(a))},initQueryImport:function(){var a=this;a.allowUpload=!1,$("#importQueries").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],a.allowUpload=!0})},importCustomQueries:function(){var a=this;if(this.allowUpload===!0){var b=function(){this.collection.fetch({async:!1}),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable(),a.allowUpload=!1,$("#customs-switch").click()};a.collection.saveImportQueries(a.file,b.bind(this))}},downloadQueryResult:function(){var a=ace.edit("aqlEditor"),b=a.getValue();""!==b||void 0!==b||null!==b?window.open("query/result/download/"+encodeURIComponent(btoa(JSON.stringify({query:b})))):arangoHelper.arangoError("Query error","could not query result.")},exportCustomQueries:function(){var a,b={},c=[];_.each(this.customQueries,function(a,b){c.push({name:a.name,value:a.value})}),b={extra:{queries:c}},$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user,(null===a||a===!1)&&(a="root")}),window.open("query/download/"+encodeURIComponent(a))},deselect:function(a){var b=a.getSelection(),c=b.lead.row,d=b.lead.column;b.setSelectionRange({start:{row:c,column:d},end:{row:c,column:d}}),a.focus()},addAQL:function(){this.refreshAQL(!0),this.createCustomQueryModal(),$("#new-query-name").val($("#querySelect").val()),setTimeout(function(){$("#new-query-name").focus()},500),this.checkSaveName()},getAQL:function(){var a,b=this;this.collection.fetch({async:!1});var c=localStorage.getItem("customQueries");if(c){var d=JSON.parse(c);_.each(d,function(a){b.collection.add({value:a.value,name:a.name})}),a=b.collection.saveCollectionQueries(),a===!0&&localStorage.removeItem("customQueries")}this.updateLocalQueries()},deleteAQL:function(a){var b=$(a.target).parent().parent().parent().children().first().text(),c=this.collection.findWhere({name:b});this.collection.remove(c),this.collection.saveCollectionQueries(),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable()},updateLocalQueries:function(){var a=this;this.customQueries=[],this.collection.each(function(b){a.customQueries.push({name:b.get("name"),value:b.get("value")})})},saveAQL:function(a){a.stopPropagation(),this.refreshAQL();var b=ace.edit("aqlEditor"),c=$("#new-query-name").val(),d="Update"===$("#modalButton1").text();if(!$("#new-query-name").hasClass("invalid-input")&&""!==c.trim()){var e=b.getValue(),f=!1;if($.each(this.customQueries,function(a,b){return b.name===c?(b.value=e,void(f=!d)):void 0}),f===!0)return void window.modalView.hide();if(d){var g=this.collection.findWhere({name:c});g.set("value",e)}else this.collection.add({name:c,value:e});this.collection.saveCollectionQueries(),window.modalView.hide(),this.updateLocalQueries(),this.renderSelectboxes(),$("#querySelect").val(c)}},getSystemQueries:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"js/arango/aqltemplates.json",contentType:"application/json",processData:!1,async:!1,success:function(b){a.queries=b},error:function(a){arangoHelper.arangoNotification("Query","Error while loading system templates")}})},getCustomQueryValueByName:function(a){var b;return $.each(this.customQueries,function(c,d){a===d.name&&(b=d.value)}),b},refreshAQL:function(a){if(this.getAQL(),this.getSystemQueries(),this.updateLocalQueries(),a){var b=$("#querySelect").val();this.renderSelectboxes(),$("#querySelect").val(b)}},importSelected:function(a){var b=ace.edit("aqlEditor");$.each(this.queries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),$.each(this.customQueries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),this.deselect(ace.edit("aqlEditor"))},renderSelectboxes:function(){this.sortQueries();var a="";a="#querySelect",$(a).empty(),$(a).append(''),$(a).append(''),jQuery.each(this.queries,function(b,c){$(a).append('")}),$(a).append(""),this.customQueries.length>0&&($(a).append(''),jQuery.each(this.customQueries,function(b,c){$(a).append('")}),$(a).append(""))},undoText:function(){var a=ace.edit("aqlEditor");a.undo()},redoText:function(){var a=ace.edit("aqlEditor");a.redo()},commentText:function(){var a=ace.edit("aqlEditor");a.toggleCommentLines()},sortQueries:function(){this.queries=_.sortBy(this.queries,"name"),this.customQueries=_.sortBy(this.customQueries,"name")},abortQuery:function(){},readQueryData:function(){var a=ace.edit("aqlEditor"),b=a.session.getTextRange(a.getSelectionRange()),c=$("#querySize"),d={query:b||a.getValue(),batchSize:parseInt(c.val(),10),id:"currentFrontendQuery"};return JSON.stringify(d)},heatmapColors:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"],heatmap:function(a){return this.heatmapColors[Math.floor(10*a)]},followQueryPath:function(a,b){var c={},d=0;c[b[0].id]=a;var e,f,g,h;for(e=1;e0&&(f+="Warnings:\r\n\r\n",d.extra.warnings.forEach(function(a){f+="["+a.code+"], '"+a.message+"'\r\n"})),""!==f&&(f+="\r\nResult:\r\n\r\n"),c.setValue(f+JSON.stringify(d.result,void 0,2)),b.switchTab("result-switch"),window.progressView.hide(),b.deselect(c),$("#downloadQueryResult").show(),"function"==typeof a&&a()},error:function(d){b.switchTab("result-switch"),$("#downloadQueryResult").hide();try{var e=JSON.parse(d.responseText);c.setValue("["+e.errorNum+"] "+e.errorMessage),arangoHelper.arangoError("Query error",e.errorNum)}catch(f){c.setValue("ERROR"),arangoHelper.arangoError("Query error","ERROR")}window.progressView.hide(),"function"==typeof a&&a()}})},submitQuery:function(){var a=ace.edit("queryOutput");this.fillResult(this.switchTab.bind(this,"result-switch")), -a.resize();var b=ace.edit("aqlEditor");this.deselect(b)},explainQuery:function(){this.fillExplain()},switchTab:function(a){var b;b="string"==typeof a?a:a.target.id;var c=this,d=function(a){var d="#"+a.replace("-switch",""),e="#tabContent"+d.charAt(1).toUpperCase()+d.substr(2);a===b?($("#"+a).parent().addClass("active"),$(d).addClass("active"),$(e).show(),"query-switch"===b?$("#aqlEditor .ace_text-input").focus():"result-switch"===b&&c.execPending&&c.fillResult()):($("#"+a).parent().removeClass("active"),$(d).removeClass("active"),$(e).hide())};this.tabArray.forEach(d),this.updateTable()}})}(),function(){"use strict";window.shellView=Backbone.View.extend({resizing:!1,el:"#content",template:templateEngine.createTemplate("shellView.ejs"),render:function(){$(this.el).html(this.template.render({})),this.replShell(),$("#shell_workspace").trigger("resize",[150]),this.resize();var a=this;return $(window).resize(function(){a.resize()}),this.executeJs("start_pretty_print(); try { db._collections(); } catch (err) { } undefined;"),this},resize:function(){if(!this.resizing){this.resizing=!0;var a=$(window).height()-250;$("#shell_workspace").height(a),this.resizing=!1}},executeJs:function(a){var b=require("internal");try{var c=window.eval(a);void 0!==c&&(b.browserOutputBuffer="",b.printShell.apply(b.printShell,[c]),jqconsole.Write("==> "+b.browserOutputBuffer+"\n","jssuccess")),b.browserOutputBuffer=""}catch(d){d instanceof b.ArangoError?d.hasOwnProperty("errorMessage")?jqconsole.Write(d.errorMessage+"\n","jserror"):jqconsole.Write(d.message+"\n","jserror"):jqconsole.Write(d.name+": "+d.message+"\n","jserror")}},replShellPromptHelper:function(a){try{new Function(a)}catch(b){return/[\[\{\(]$/.test(a)?1:0}return!1},replShellHandlerHelper:function(a){},replShell:function(){var a=this,b=require("internal"),c=require("org/arangodb/arangosh"),d="Welcome to arangosh. Copyright (c) ArangoDB GmbH\n";window.jqconsole=$("#replShell").jqconsole(d,"JSH> ","...>"),this.executeJs(b.print(c.HELP)),jqconsole.RegisterShortcut("Z",function(){jqconsole.AbortPrompt(),e()}),jqconsole.RegisterShortcut("E",function(){jqconsole.MoveToEnd(),e()}),jqconsole.RegisterMatching("{","}","brace"),jqconsole.RegisterMatching("(",")","paren"),jqconsole.RegisterMatching("[","]","bracket");var e=function(b){"help"===b&&(b=help()),"exit"===b&&location.reload(),a.executeJs(b),jqconsole.Prompt(!0,e,a.replShellPromptHelper(b))};e()}})}(),function(){"use strict";window.StatisticBarView=Backbone.View.extend({el:"#statisticBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab"},template:templateEngine.createTemplate("statisticBarView.ejs"),initialize:function(){this.currentDB=this.options.currentDB},replaceSVG:function(a){var b=a.attr("id"),c=a.attr("class"),d=a.attr("src");$.get(d,function(d){var e=$(d).find("svg");void 0===b&&(e=e.attr("id",b)),void 0===c&&(e=e.attr("class",c+" replaced-svg")),e=e.removeAttr("xmlns:a"),a.replaceWith(e)},"xml")},render:function(){var a=this;return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),$("img.svg").each(function(){a.replaceSVG($(this))}),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){$("#arangoCollectionSelect").change(function(){var a=$(this).find("option:selected").val();window.App.navigate(a,{trigger:!0})})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")}})}(),function(){"use strict";window.TableView=Backbone.View.extend({template:templateEngine.createTemplate("tableView.ejs"),loading:templateEngine.createTemplate("loadingTableView.ejs"),initialize:function(){this.rowClickCallback=this.options.rowClick},events:{"click tbody tr":"rowClick","click .deleteButton":"removeClick"},rowClick:function(a){this.hasOwnProperty("rowClickCallback")&&this.rowClickCallback(a)},removeClick:function(a){this.hasOwnProperty("removeClickCallback")&&(this.removeClickCallback(a),a.stopPropagation())},setRowClick:function(a){this.rowClickCallback=a},setRemoveClick:function(a){this.removeClickCallback=a},render:function(){$(this.el).html(this.template.render({docs:this.collection}))},drawLoading:function(){$(this.el).html(this.loading.render({}))}})}(),function(){"use strict";window.testView=Backbone.View.extend({el:"#content",events:{"change #fileInput":"readJSON"},template:templateEngine.createTemplate("testView.ejs"),readJSON:function(){var a=document.getElementById("fileInput"),b=a.files[0],c="application/json";if(b.type.match(c)){var d=new FileReader;d.onload=function(a){$("#fileDisplayArea pre").text(d.result)},d.readAsText(b)}else $("#fileDisplayArea pre").text("File not supported!")},render:function(){return $(this.el).html(this.template.render()),this}})}(),function(){"use strict";window.UserBarView=Backbone.View.extend({events:{"change #userBarSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown","click #userLogout":"userLogout"},initialize:function(){this.userCollection=this.options.userCollection,this.userCollection.fetch({async:!1}),this.userCollection.bind("change:extra",this.render.bind(this))},template:templateEngine.createTemplate("userBarView.ejs"),navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement;b=$(b).closest("a");var c=b.attr("id");return"user"===c?($("#user_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"user"===c?void $("#user_dropdown").show(200):void 0},hideDropdown:function(a){$("#user_dropdown").hide()},render:function(a){var b=this.userCollection.whoAmI(),c=null,d=null,e=!1,f=null;return b&&(f=this.userCollection.findWhere({user:b}),f.set({loggedIn:!0}),d=f.get("extra").name,c=f.get("extra").img,e=f.get("active")),c=c?"https://s.gravatar.com/avatar/"+c+"?s=24":"img/arangodb_logo_small.png",d||(d=""),this.$el=$("#userBar"),this.$el.html(this.template.render({img:c,name:d,username:b,active:e})),this.delegateEvents(),this.$el},userLogout:function(){this.userCollection.whoAmI(),this.userCollection.logout()}})}(),function(){"use strict";window.userManagementView=Backbone.View.extend({el:"#content",el2:"#userManagementThumbnailsIn",template:templateEngine.createTemplate("userManagementView.ejs"),events:{"click #createUser":"createUser","click #submitCreateUser":"submitCreateUser","click .editUser":"editUser","click .icon":"editUser","click #submitEditUser":"submitEditUser","click #userManagementToggle":"toggleView","keyup #userManagementSearchInput":"search","click #userManagementSearchSubmit":"search","click #callEditUserPassword":"editUserPassword","click #submitEditUserPassword":"submitEditUserPassword","click #submitEditCurrentUserProfile":"submitEditCurrentUserProfile","click .css-label":"checkBoxes","change #userSortDesc":"sorting"},dropdownVisible:!1,initialize:function(){this.collection.fetch({async:!1}),this.currentUser=this.collection.findWhere({user:this.collection.whoAmI()})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},sorting:function(){$("#userSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#userManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(a){var b=!1;return $("#userManagementDropdown").is(":visible")&&(b=!0),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:""})),b===!0&&($("#userManagementDropdown2").show(),$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown").show()),a&&this.editCurrentUser(),arangoHelper.setCheckboxStatus("#userManagementDropdown"),this},search:function(){var a,b,c,d;a=$("#userManagementSearchInput"),b=$("#userManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("user").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b})),a=$("#userManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},createUser:function(a){a.preventDefault(),this.createCreateUserModal()},submitCreateUser:function(){var a=this,b=$("#newUsername").val(),c=$("#newName").val(),d=$("#newPassword").val(),e=$("#newStatus").is(":checked");if(this.validateUserInfo(c,b,d,e)){var f={user:b,passwd:d,active:e,extra:{name:c}};this.collection.create(f,{wait:!0,error:function(a,b){},success:function(b){a.updateUserManagement(),window.modalView.hide()}})}},validateUserInfo:function(a,b,c,d){return""===b?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):!0},updateUserManagement:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},submitDeleteUser:function(a){var b=this.collection.findWhere({user:a});b.destroy({wait:!0}),window.modalView.hide(),this.updateUserManagement()},editUser:function(a){this.collection.fetch();var b=this.evaluateUserName($(a.currentTarget).attr("id"),"_edit-user");""===b&&(b=$(a.currentTarget).attr("id"));var c=this.collection.findWhere({user:b});c.get("loggedIn")?this.editCurrentUser():this.createEditUserModal(c.get("user"),c.get("extra").name,c.get("active"))},editCurrentUser:function(){this.createEditCurrentUserModal(this.currentUser.get("user"),this.currentUser.get("extra").name,this.currentUser.get("extra").img)},submitEditUser:function(a){var b=$("#editName").val(),c=$("#editStatus").is(":checked");if(!this.validateStatus(c))return void $("#editStatus").closest("th").css("backgroundColor","red");if(!this.validateName(b))return void $("#editName").closest("th").css("backgroundColor","red");var d=this.collection.findWhere({user:a});d.save({extra:{name:b},active:c},{type:"PATCH"}),window.modalView.hide(),this.updateUserManagement()},validateUsername:function(a){return""===a?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validatePassword:function(a){return!0},validateName:function(a){return""===a?!0:a.match(/^[a-zA-Z][a-zA-Z0-9_\-\ ]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validateStatus:function(a){return""===a?!1:!0},toggleView:function(){$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown2").slideToggle(200)},setFilterValues:function(){},evaluateUserName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},editUserPassword:function(){window.modalView.hide(),this.createEditUserPasswordModal()},submitEditUserPassword:function(){var a=$("#oldCurrentPassword").val(),b=$("#newCurrentPassword").val(),c=$("#confirmCurrentPassword").val();$("#oldCurrentPassword").val(""),$("#newCurrentPassword").val(""),$("#confirmCurrentPassword").val(""),$("#oldCurrentPassword").closest("th").css("backgroundColor","white"),$("#newCurrentPassword").closest("th").css("backgroundColor","white"),$("#confirmCurrentPassword").closest("th").css("backgroundColor","white");var d=!1;this.validateCurrentPassword(a)||($("#oldCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),b!==c&&($("#confirmCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),this.validatePassword(b)||($("#newCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),d||(this.currentUser.setPassword(b),window.modalView.hide())},validateCurrentPassword:function(a){return this.currentUser.checkPassword(a)},submitEditCurrentUserProfile:function(){var a=$("#editCurrentName").val(),b=$("#editCurrentUserProfileImg").val();b=this.parseImgString(b),this.currentUser.setExtras(a,b),this.updateUserProfile(),window.modalView.hide()},updateUserProfile:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},parseImgString:function(a){return-1===a.indexOf("@")?a:CryptoJS.MD5(a).toString()},createEditUserModal:function(a,b,c){var d,e;e=[{type:window.modalView.tables.READONLY,label:"Username",value:_.escape(a)},{type:window.modalView.tables.TEXT,label:"Name",value:b,id:"editName",placeholder:"Name"},{type:window.modalView.tables.CHECKBOX,label:"Active",value:"active",checked:c,id:"editStatus"}],d=[{title:"Delete",type:window.modalView.buttons.DELETE,callback:this.submitDeleteUser.bind(this,a)},{title:"Save",type:window.modalView.buttons.SUCCESS,callback:this.submitEditUser.bind(this,a)}],window.modalView.show("modalTable.ejs","Edit User",d,e)},createCreateUserModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newUsername","Username","",!1,"Username",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createTextEntry("newName","Name","",!1,"Name",!1)),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),b.push(window.modalView.createCheckboxEntry("newStatus","Active","active",!1,!0)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateUser.bind(this))),window.modalView.show("modalTable.ejs","Create New User",a,b)},createEditCurrentUserModal:function(a,b,c){var d=[],e=[];e.push(window.modalView.createReadOnlyEntry("id_username","Username",a)),e.push(window.modalView.createTextEntry("editCurrentName","Name",b,!1,"Name",!1)),e.push(window.modalView.createTextEntry("editCurrentUserProfileImg","Gravatar account (Mail)",c,"Mailaddress or its md5 representation of your gravatar account. The address will be converted into a md5 string. Only the md5 string will be stored, not the mailaddress.","myAccount(at)gravatar.com")),d.push(window.modalView.createNotificationButton("Change Password",this.editUserPassword.bind(this))),d.push(window.modalView.createSuccessButton("Save",this.submitEditCurrentUserProfile.bind(this))),window.modalView.show("modalTable.ejs","Edit User Profile",d,e)},createEditUserPasswordModal:function(){var a=[],b=[];b.push(window.modalView.createPasswordEntry("oldCurrentPassword","Old Password","",!1,"old password",!1)),b.push(window.modalView.createPasswordEntry("newCurrentPassword","New Password","",!1,"new password",!1)),b.push(window.modalView.createPasswordEntry("confirmCurrentPassword","Confirm New Password","",!1,"confirm new password",!1)),a.push(window.modalView.createSuccessButton("Save",this.submitEditUserPassword.bind(this))),window.modalView.show("modalTable.ejs","Edit User Password",a,b)}})}(),function(){"use strict";window.Router=Backbone.Router.extend({routes:{"":"dashboard",dashboard:"dashboard",collections:"collections","new":"newCollection",login:"login","collection/:colid/documents/:pageid":"documents","collection/:colid/:docid":"document",shell:"shell",query:"query",queryManagement:"queryManagement",api:"api",databases:"databases",applications:"applications","applications/:mount":"applicationDetail",graph:"graphManagement",graph2:"graph2","graph/:name":"showGraph",userManagement:"userManagement",userProfile:"userProfile",logs:"logs",demo:"demo","demo/:collection":"demo"},demo:function(a){a||(a="flights"),this.demoView||(this.demoView=new window.DemoView({collectionName:a})),this.demoView.render(),this.naviView.selectMenuItem("demo-menu")},initialize:function(){window.modalView=new window.ModalView,this.foxxList=new window.FoxxCollection,window.foxxInstallView=new window.FoxxInstallView({collection:this.foxxList}),window.progressView=new window.ProgressView;var a=this;this.userCollection=new window.ArangoUsers,this.initOnce=function(){this.initOnce=function(){},this.arangoDatabase=new window.ArangoDatabase,this.currentDB=new window.CurrentDatabase,this.currentDB.fetch({async:!1}),this.arangoCollectionsStore=new window.arangoCollections,this.arangoDocumentStore=new window.arangoDocument,arangoHelper.setDocumentStore(this.arangoDocumentStore),this.arangoCollectionsStore.fetch({async:!1}),this.footerView=new window.FooterView,this.notificationList=new window.NotificationCollection,this.naviView=new window.NavigationView({database:this.arangoDatabase,currentDB:this.currentDB,notificationCollection:a.notificationList,userCollection:this.userCollection}),this.queryCollection=new window.ArangoQueries,this.footerView.render(),this.naviView.render(),window.checkVersion()}.bind(this),$(window).resize(function(){a.handleResize()})},checkUser:function(){return null===this.userCollection.whoAmI()?(this.navigate("login",{trigger:!0}),!1):(this.initOnce(),!0)},logs:function(){if(this.checkUser()){if(!this.logsView){var a=new window.ArangoLogs({upto:!0,loglevel:4}),b=new window.ArangoLogs({loglevel:4}),c=new window.ArangoLogs({loglevel:3}),d=new window.ArangoLogs({loglevel:2}),e=new window.ArangoLogs({loglevel:1});this.logsView=new window.LogsView({logall:a,logdebug:b,loginfo:c,logwarning:d,logerror:e})}this.logsView.render(),this.naviView.selectMenuItem("tools-menu")}},applicationDetail:function(a){this.checkUser()&&(this.naviView.selectMenuItem("applications-menu"),0===this.foxxList.length&&this.foxxList.fetch({async:!1}),this.hasOwnProperty("applicationDetailView")||(this.applicationDetailView=new window.ApplicationDetailView({model:this.foxxList.get(decodeURIComponent(a))})),this.applicationDetailView.model=this.foxxList.get(decodeURIComponent(a)),this.applicationDetailView.render("swagger"))},login:function(){return null!==this.userCollection.whoAmI()?(this.navigate("",{trigger:!0}),!1):(this.loginView||(this.loginView=new window.loginView({collection:this.userCollection})),void this.loginView.render())},collections:function(){if(this.checkUser()){var a=this.naviView,b=this;this.collectionsView||(this.collectionsView=new window.CollectionsView({collection:this.arangoCollectionsStore})),this.arangoCollectionsStore.fetch({success:function(){b.collectionsView.render(),a.selectMenuItem("collections-menu")}})}},documents:function(a,b){this.checkUser()&&(this.documentsView||(this.documentsView=new window.DocumentsView({collection:new window.arangoDocuments,documentStore:this.arangoDocumentStore,collectionsStore:this.arangoCollectionsStore})),this.documentsView.setCollectionId(a,b),this.documentsView.render())},document:function(a,b){if(this.checkUser()){this.documentView||(this.documentView=new window.DocumentView({collection:this.arangoDocumentStore})),this.documentView.colid=a,this.documentView.docid=b,this.documentView.render();var c=arangoHelper.collectionApiType(a);this.documentView.setType(c)}},shell:function(){this.checkUser()&&(this.shellView||(this.shellView=new window.shellView),this.shellView.render(),this.naviView.selectMenuItem("tools-menu"))},query:function(){this.checkUser()&&(this.queryView||(this.queryView=new window.queryView({collection:this.queryCollection})),this.queryView.render(),this.naviView.selectMenuItem("query-menu"))},queryManagement:function(){this.queryManagementView||(this.queryManagementView=new window.queryManagementView({collection:void 0})),this.queryManagementView.render(),this.naviView.selectMenuItem("tools-menu")},api:function(){this.checkUser()&&(this.apiView||(this.apiView=new window.ApiView),this.apiView.render(),this.naviView.selectMenuItem("tools-menu"))},databases:function(){this.checkUser()&&(arangoHelper.databaseAllowed()===!0?(this.databaseView||(this.databaseView=new window.databaseView({users:this.userCollection,collection:this.arangoDatabase})),this.databaseView.render(),this.naviView.selectMenuItem("databases-menu")):(this.navigate("#",{trigger:!0}),this.naviView.selectMenuItem("dashboard-menu"),$("#databaseNavi").css("display","none"),$("#databaseNaviSelect").css("display","none")))},dashboard:function(){this.checkUser()&&(this.naviView.selectMenuItem("dashboard-menu"),void 0===this.dashboardView&&(this.dashboardView=new window.DashboardView({dygraphConfig:window.dygraphConfig,database:this.arangoDatabase})),this.dashboardView.render())},graph2:function(){this.checkUser()&&(this.graphTestView=new window.GraphTestView,this.graphTestView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},graphManagement:function(){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},showGraph:function(a){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.graphManagementView.loadGraphViewer(a),this.naviView.selectMenuItem("graphviewer-menu"))},applications:function(){this.checkUser()&&(void 0===this.applicationsView&&(this.applicationsView=new window.ApplicationsView({collection:this.foxxList})),this.applicationsView.reload(),this.naviView.selectMenuItem("applications-menu"))},handleSelectDatabase:function(){this.checkUser()&&this.naviView.handleSelectDatabase()},handleResize:function(){this.dashboardView&&this.dashboardView.resize(),this.graphManagementView&&this.graphManagementView.handleResize($("#content").width()),this.queryView&&this.queryView.resize()},userManagement:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(),this.naviView.selectMenuItem("tools-menu"))},userProfile:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(!0),this.naviView.selectMenuItem("tools-menu"))}})}(),function(){"use strict";var a=function(){$.ajax({type:"POST",url:"/_admin/aardvark/disableVersionCheck"})},b=function(a){$.ajax({type:"GET",url:"/_admin/aardvark/shouldCheckVersion",success:function(b){b===!0&&a()}})},c=function(b,c){var d=[];d.push(window.modalView.createNotificationButton("Don't ask again",function(){a(),window.modalView.hide()})),d.push(window.modalView.createSuccessButton("Download Page",function(){window.open("https://www.arangodb.com/download","_blank"),window.modalView.hide()}));var e=[],f=window.modalView.createReadOnlyEntry.bind(window.modalView);e.push(f("current","Current",b.toString())),c.major&&e.push(f("major","Major",c.major.version)),c.minor&&e.push(f("minor","Minor",c.minor.version)),c.bugfix&&e.push(f("bugfix","Bugfix",c.bugfix.version)),window.modalView.show("modalTable.ejs","New Version Available",d,e)};window.checkVersion=function(){$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(a){var d=window.versionHelper.fromString(a.version);window.parseVersions=function(e){_.isEmpty(e)||/-devel$/.test(a.version)||b(c.bind(window,d,e))},$.ajax({type:"GET",async:!0,crossDomain:!0,timeout:3e3,dataType:"jsonp",url:"https://www.arangodb.com/repositories/versions.php?jsonp=parseVersions&version="+encodeURIComponent(d.toString())})}})}}(),function(){"use strict";window.hasOwnProperty("TEST_BUILD")||$(document).ready(function(){window.App=new window.Router,Backbone.history.start(),window.App.handleResize()})}(); \ No newline at end of file +a[b]=c.errors[b].code}),a.errors=c.errors,a.ArangoError=c.ArangoError,a.defineModule=function(a,e){var f,g,h;f=d.read(e),h=c.db._collection("_modules"),null===h&&(h=c.db._create("_modules",{isSystem:!0})),a=b.normalize(a),g=h.firstExample({path:a}),null===g?h.save({path:a,content:f}):h.replace(g,{path:a,content:f})},a.guessContentType=function(a,b){var c=/\.([a-zA-Z0-9]+)$/,d=c.exec(a);if(null!==d){var f=d[1];if(e.hasOwnProperty(f)){var g=e[f];return g[1]?g[0]+"; charset=utf-8":g[0]}}return b?b:"text/plain; charset=utf-8"},a.normalizeURL=function(a){var b,c,d,e,f,g;if(""===a)return"./";for(d=a.split("/"),"."===d[0]||".."===d[0]?(f=d[0]+"/",d.shift(),e=d):""===d[0]?(f="/",d.shift(),e=d):(f="./",e=d),c=[],b=0;b0&&(l=d[h]>=k.length?d[h]:k.length);var m=h;e.hasOwnProperty("rename")&&e.rename.hasOwnProperty(h)&&(m=e.rename[h]),f.push({id:h,fixedLength:l,length:l||m.length}),g[0][j++]=m}b.forEach(function(a,b){g[b+1]=[],f.forEach(function(c){if(a.hasOwnProperty(c.id)){var d;d=e.prettyStrings&&"string"==typeof a[c.id]?a[c.id]:JSON.stringify(a[c.id])||"",g[b+1].push(d),d.length>c.length&&!c.fixedLength&&(c.length=Math.min(d.length,100))}else g[b+1].push("")})});var n=function(){var b=[];return f.forEach(function(c){b.push(a.stringPadding("",c.length,"-","r"))}),e.framed?"+-"+b.join("-+-")+"-+\n":b.join(" ")+"\n"},o=function(){var d="";return e.framed&&(d+=n()),g.forEach(function(b,c){var g=[];b.forEach(function(c,d){var e=f[d].length,h=b[d];h.length>e&&(h=h.substr(0,e-k.length)+k),g.push(a.stringPadding(h,e," ","r"))}),d+=e.framed?"| "+g.join(" | ")+" |\n":g.join(" ")+"\n",0===c&&(d+=n())}),d+=n(),e.hideTotal||(d+=c.sprintf(e.totalString,String(b.length))),d};Array.isArray(b)&&(0===b.length?a.print(e.emptyString||"no document(s)"):a.print(o()))},a.stringPadding=function(a,b,c,d){function e(a,b){var c,d="";for(c=0;a>c;++c)d+=b;return d}if("undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=" "),b+1>=a.length)switch(d||"r"){case"l":a=e(b+1-a.length,c)+a;break;case"b":var f=b-a.length,g=Math.ceil(f/2),h=f-g;a=e(h+1,c)+a+e(g+1,c);break;default:a+=e(b+1-a.length,c)}return a},a.throwDownloadError=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.code,errorMessage:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.message+": "+String(b)})},a.throwFileNotFound=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_FILE_NOT_FOUND.code,errorMessage:a.errors.ERROR_FILE_NOT_FOUND.message+": "+String(b)})},a.throwBadParameter=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_BAD_PARAMETER.code,errorMessage:a.errors.ERROR_BAD_PARAMETER.message+": "+String(b)})},a.checkParameter=function(b,c,d){var e;for(e=0;ec?"\\u000":256>c?"\\u00":4096>c?"\\u0":"\\u",b+=c.toString(16),i[a]=b,b}function b(b){return'"'+b.replace(n,a)+'"'}function c(a){var b,c="";if(a.prettyPrint)for(c+="\n",b=0;b=b.emit&&(h.output(b.output),b.output=""),b.path=i,g=", "}b.level=f-1,b.output+=" ",c(b),d&&(b.output+=j.COLOR_PUNCTUATION),b.output+="]",d&&(b.output+=j.COLOR_RESET)}}function e(a,d){var e=d.useColor,f=" ";e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="{",e&&(d.output+=j.COLOR_RESET);var g=d.level+1;d.level=g;var i;try{i=Object.keys(a)}catch(k){i=[]}var l,n=i.length;for(l=0;n>l;++l){var o=i[l],p=a[o];e&&(d.output+=j.COLOR_PUNCTUATION),d.output+=f,e&&(d.output+=j.COLOR_RESET),c(d),e&&(d.output+=j.COLOR_INDEX),d.output+=b(o),e&&(d.output+=j.COLOR_RESET),d.output+=" : ";var q=d.path;d.path+="["+o+"]",m(p,d),d.path=q,f=", ",d.emit&&d.output.length>=d.emit&&(h.output(d.output),d.output="")}d.level=g-1,d.output+=" ",c(d),e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="}",e&&(d.output+=j.COLOR_RESET)}function f(){var a;for(a=0;a0&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var c={customInspect:!0,emit:16384,level:0,limitString:80,names:[],output:"",path:"~",prettyPrint:l,seen:[],showFunction:!1,useColor:k,useToString:!0};m(arguments[a],c),b(c.output)}b("\n")}var h=require("internal");global.ArangoError?(h.ArangoError=global.ArangoError,delete global.ArangoError):(h.ArangoError=function(a){void 0!==a&&(this.error=a.error,this.code=a.code,this.errorNum=a.errorNum,this.errorMessage=a.errorMessage),this.message=this.toString()},h.ArangoError.prototype=new Error),h.ArangoError.prototype._PRINT=function(a){a.output+=this.toString()},h.ArangoError.prototype.toString=function(){var a=this.errorNum,b=this.errorMessage||this.message;return"[ArangoError "+a+": "+b+"]"},global.SleepAndRequeue&&(h.SleepAndRequeue=global.SleepAndRequeue,delete global.SleepAndRequeue,h.SleepAndRequeue.prototype._PRINT=function(a){a.output+=this.toString()},h.SleepAndRequeue.prototype.toString=function(){return"[SleepAndRequeue sleep: "+this.sleep+"]"}),h.threadNumber=0,global.THREAD_NUMBER&&(h.threadNumber=global.THREAD_NUMBER,delete global.THREAD_NUMBER),h.developmentMode=!1,global.LOGFILE_PATH&&(h.logfilePath=global.LOGFILE_PATH,delete global.LOGFILE_PATH),h.quiet=!1,global.ARANGO_QUIET&&(h.quiet=global.ARANGO_QUIET,delete global.ARANGO_QUIET),h.valgrind=!1,global.VALGRIND&&(h.valgrind=global.VALGRIND,delete global.VALGRIND),h.coverage=!1,global.COVERAGE&&(h.coverage=global.COVERAGE,delete global.COVERAGE),h.version="unknown",global.VERSION&&(h.version=global.VERSION,delete global.VERSION),h.platform="unknown",global.SYS_PLATFORM&&(h.platform=global.SYS_PLATFORM,delete global.SYS_PLATFORM),h.bytesSentDistribution=[],global.BYTES_SENT_DISTRIBUTION&&(h.bytesSentDistribution=global.BYTES_SENT_DISTRIBUTION,delete global.BYTES_SENT_DISTRIBUTION),h.bytesReceivedDistribution=[],global.BYTES_RECEIVED_DISTRIBUTION&&(h.bytesReceivedDistribution=global.BYTES_RECEIVED_DISTRIBUTION,delete global.BYTES_RECEIVED_DISTRIBUTION),h.connectionTimeDistribution=[],global.CONNECTION_TIME_DISTRIBUTION&&(h.connectionTimeDistribution=global.CONNECTION_TIME_DISTRIBUTION,delete global.CONNECTION_TIME_DISTRIBUTION),h.requestTimeDistribution=[],global.REQUEST_TIME_DISTRIBUTION&&(h.requestTimeDistribution=global.REQUEST_TIME_DISTRIBUTION,delete global.REQUEST_TIME_DISTRIBUTION),h.startupPath="",global.STARTUP_PATH&&(h.startupPath=global.STARTUP_PATH,delete global.STARTUP_PATH),""===h.startupPath&&(h.startupPath="."),global.CONFIGURE_ENDPOINT&&(h.configureEndpoint=global.CONFIGURE_ENDPOINT,delete global.CONFIGURE_ENDPOINT),global.REMOVE_ENDPOINT&&(h.removeEndpoint=global.REMOVE_ENDPOINT,delete global.REMOVE_ENDPOINT),global.LIST_ENDPOINTS&&(h.listEndpoints=global.LIST_ENDPOINTS,delete global.LIST_ENDPOINTS),global.SYS_BASE64DECODE&&(h.base64Decode=global.SYS_BASE64DECODE,delete global.SYS_BASE64DECODE),global.SYS_BASE64ENCODE&&(h.base64Encode=global.SYS_BASE64ENCODE,delete global.SYS_BASE64ENCODE),global.SYS_DEBUG_SEGFAULT&&(h.debugSegfault=global.SYS_DEBUG_SEGFAULT,delete global.SYS_DEBUG_SEGFAULT), +global.SYS_DEBUG_SET_FAILAT&&(h.debugSetFailAt=global.SYS_DEBUG_SET_FAILAT,delete global.SYS_DEBUG_SET_FAILAT),global.SYS_DEBUG_REMOVE_FAILAT&&(h.debugRemoveFailAt=global.SYS_DEBUG_REMOVE_FAILAT,delete global.SYS_DEBUG_REMOVE_FAILAT),global.SYS_DEBUG_CLEAR_FAILAT&&(h.debugClearFailAt=global.SYS_DEBUG_CLEAR_FAILAT,delete global.SYS_DEBUG_CLEAR_FAILAT),global.SYS_DEBUG_CAN_USE_FAILAT&&(h.debugCanUseFailAt=global.SYS_DEBUG_CAN_USE_FAILAT,delete global.SYS_DEBUG_CAN_USE_FAILAT),global.SYS_DOWNLOAD&&(h.download=global.SYS_DOWNLOAD,delete global.SYS_DOWNLOAD),global.SYS_EXECUTE&&(h.executeScript=global.SYS_EXECUTE,delete global.SYS_EXECUTE),global.SYS_GET_CURRENT_REQUEST&&(h.getCurrentRequest=global.SYS_GET_CURRENT_REQUEST,delete global.SYS_GET_CURRENT_REQUEST),global.SYS_GET_CURRENT_RESPONSE&&(h.getCurrentResponse=global.SYS_GET_CURRENT_RESPONSE,delete global.SYS_GET_CURRENT_RESPONSE),h.extend=function(a,b){return Object.getOwnPropertyNames(b).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))}),a},global.SYS_LOAD&&(h.load=global.SYS_LOAD,delete global.SYS_LOAD),global.SYS_LOG_LEVEL&&(h.logLevel=global.SYS_LOG_LEVEL,delete global.SYS_LOG_LEVEL),global.SYS_MD5&&(h.md5=global.SYS_MD5,delete global.SYS_MD5),global.SYS_GEN_RANDOM_NUMBERS&&(h.genRandomNumbers=global.SYS_GEN_RANDOM_NUMBERS,delete global.SYS_GEN_RANDOM_NUMBERS),global.SYS_GEN_RANDOM_ALPHA_NUMBERS&&(h.genRandomAlphaNumbers=global.SYS_GEN_RANDOM_ALPHA_NUMBERS,delete global.SYS_GEN_RANDOM_ALPHA_NUMBERS),global.SYS_GEN_RANDOM_SALT&&(h.genRandomSalt=global.SYS_GEN_RANDOM_SALT,delete global.SYS_GEN_RANDOM_SALT),global.SYS_HMAC&&(h.hmac=global.SYS_HMAC,delete global.SYS_HMAC),global.SYS_PBKDF2&&(h.pbkdf2=global.SYS_PBKDF2,delete global.SYS_PBKDF2),global.SYS_CREATE_NONCE&&(h.createNonce=global.SYS_CREATE_NONCE,delete global.SYS_CREATE_NONCE),global.SYS_CHECK_AND_MARK_NONCE&&(h.checkAndMarkNonce=global.SYS_CHECK_AND_MARK_NONCE,delete global.SYS_CHECK_AND_MARK_NONCE),global.SYS_OUTPUT&&(h.stdOutput=global.SYS_OUTPUT,h.output=h.stdOutput,delete global.SYS_OUTPUT),global.SYS_PARSE&&(h.parse=global.SYS_PARSE,delete global.SYS_PARSE),global.SYS_PARSE_FILE&&(h.parseFile=global.SYS_PARSE_FILE,delete global.SYS_PARSE_FILE),global.SYS_PROCESS_STATISTICS&&(h.processStatistics=global.SYS_PROCESS_STATISTICS,delete global.SYS_PROCESS_STATISTICS),global.SYS_RAND&&(h.rand=global.SYS_RAND,delete global.SYS_RAND),global.SYS_SHA512&&(h.sha512=global.SYS_SHA512,delete global.SYS_SHA512),global.SYS_SHA384&&(h.sha384=global.SYS_SHA384,delete global.SYS_SHA384),global.SYS_SHA256&&(h.sha256=global.SYS_SHA256,delete global.SYS_SHA256),global.SYS_SHA224&&(h.sha224=global.SYS_SHA224,delete global.SYS_SHA224),global.SYS_SHA1&&(h.sha1=global.SYS_SHA1,delete global.SYS_SHA1),global.SYS_SERVER_STATISTICS&&(h.serverStatistics=global.SYS_SERVER_STATISTICS,delete global.SYS_SERVER_STATISTICS),global.SYS_SLEEP&&(h.sleep=global.SYS_SLEEP,delete global.SYS_SLEEP),global.SYS_TIME&&(h.time=global.SYS_TIME,delete global.SYS_TIME),global.SYS_WAIT&&(h.wait=global.SYS_WAIT,delete global.SYS_WAIT),global.SYS_IMPORT_CSV_FILE&&(h.importCsvFile=global.SYS_IMPORT_CSV_FILE,delete global.SYS_IMPORT_CSV_FILE),global.SYS_IMPORT_JSON_FILE&&(h.importJsonFile=global.SYS_IMPORT_JSON_FILE,delete global.SYS_IMPORT_JSON_FILE),global.SYS_PROCESS_CSV_FILE&&(h.processCsvFile=global.SYS_PROCESS_CSV_FILE,delete global.SYS_PROCESS_CSV_FILE),global.SYS_PROCESS_JSON_FILE&&(h.processJsonFile=global.SYS_PROCESS_JSON_FILE,delete global.SYS_PROCESS_JSON_FILE),global.SYS_CLIENT_STATISTICS&&(h.clientStatistics=global.SYS_CLIENT_STATISTICS,delete global.SYS_CLIENT_STATISTICS),global.SYS_HTTP_STATISTICS&&(h.httpStatistics=global.SYS_HTTP_STATISTICS,delete global.SYS_HTTP_STATISTICS),global.SYS_EXECUTE_EXTERNAL&&(h.executeExternal=global.SYS_EXECUTE_EXTERNAL,delete global.SYS_EXECUTE_EXTERNAL),global.SYS_EXECUTE_EXTERNAL_AND_WAIT&&(h.executeExternalAndWait=global.SYS_EXECUTE_EXTERNAL_AND_WAIT,delete global.SYS_EXECUTE_EXTERNAL_AND_WAIT),global.SYS_KILL_EXTERNAL&&(h.killExternal=global.SYS_KILL_EXTERNAL,delete global.SYS_KILL_EXTERNAL),global.SYS_STATUS_EXTERNAL&&(h.statusExternal=global.SYS_STATUS_EXTERNAL,delete global.SYS_STATUS_EXTERNAL),global.SYS_REGISTER_TASK&&(h.registerTask=global.SYS_REGISTER_TASK,delete global.SYS_REGISTER_TASK),global.SYS_UNREGISTER_TASK&&(h.unregisterTask=global.SYS_UNREGISTER_TASK,delete global.SYS_UNREGISTER_TASK),global.SYS_GET_TASK&&(h.getTask=global.SYS_GET_TASK,delete global.SYS_GET_TASK),global.SYS_TEST_PORT&&(h.testPort=global.SYS_TEST_PORT,delete global.SYS_TEST_PORT),global.SYS_IS_IP&&(h.isIP=global.SYS_IS_IP,delete global.SYS_IS_IP),h.unitTests=function(){return global.SYS_UNIT_TESTS},h.setUnitTestsResult=function(a){global.SYS_UNIT_TESTS_RESULT=a},h.toArgv=function(a,b){"undefined"==typeof b&&(b=!1);var c=[];for(var d in a)if(a.hasOwnProperty(d))if("commandSwitches"===d){for(var e="",f=0;f1?c.push(a[d][f]):e+=a[d][f];e.length>0&&c.push(e)}else"flatCommands"===d?c=c.concat(a[d]):b?c.push("--"+d+"="+a[d]):(c.push("--"+d),a[d]!==!1?a[d]!==!0?c.push(a[d]):c.push("true"):c.push("false"));return c},h.parseArgv=function(a,b){function c(b,d,e){if(d.indexOf(":")>0){var f=d.indexOf(":"),g=d.slice(0,f);b.hasOwnProperty(g)||(b[g]={}),c(b[g],d.slice(f+1,d.length),e)}else"true"===a[i+1]?b[d]=!0:"false"===a[i+1]?b[d]=!1:isNaN(a[i+1])?b[d]=a[i+1]:b[d]=parseInt(a[i+1])}function d(a,b){a.hasOwnProperty("commandSwitches")||(a.commandSwitches=[]),a.commandSwitches.push(b)}function e(a,b){for(var c=0;c2&&"--"===j.slice(0,2)){var k=j.slice(2,j.length);a.length>i&&"-"!==a[i+1].slice(0,1)?(c(h,k,a[i+1]),i++):d(h,k)}else"--"===j?g=!0:j.length>1&&"-"===j.slice(0,1)?e(h,j.slice(1,j.length)):f(h,j)}return h},h.COLORS={},global.COLORS?(h.COLORS=global.COLORS,delete global.COLORS):["COLOR_RED","COLOR_BOLD_RED","COLOR_GREEN","COLOR_BOLD_GREEN","COLOR_BLUE","COLOR_BOLD_BLUE","COLOR_YELLOW","COLOR_BOLD_YELLOW","COLOR_WHITE","COLOR_BOLD_WHITE","COLOR_CYAN","COLOR_BOLD_CYAN","COLOR_MAGENTA","COLOR_BOLD_MAGENTA","COLOR_BLACK","COLOR_BOLD_BLACK","COLOR_BLINK","COLOR_BRIGHT","COLOR_RESET"].forEach(function(a){h.COLORS[a]=""}),h.COLORS.COLOR_PUNCTUATION=h.COLORS.COLOR_RESET,h.COLORS.COLOR_STRING=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NUMBER=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_INDEX=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_TRUE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_FALSE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NULL=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_UNDEFINED=h.COLORS.COLOR_BRIGHT;var i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},j=h.COLORS,k=!1;global.COLOR_OUTPUT&&(k=global.COLOR_OUTPUT,delete global.COLOR_OUTPUT);var l=!1;global.PRETTY_PRINT&&(l=global.PRETTY_PRINT,delete global.PRETTY_PRINT);var m,n=/[\\\"\x00-\x1f]/g,o=/function ([^\(]*)?\(\) \{ \[native code\] \}/,p=/function ([^\(]*)?\((.*)\) \{/;h.printRecursive=m=function(a,c){var f=c.useColor,g=c.customInspect,i=c.useToString,k=c.limitString,l=c.showFunction;"undefined"==typeof c.seen&&(c.seen=[],c.names=[]);var m=c.seen.indexOf(a);if(m>=0)c.output+=c.names[m];else if(a&&(a instanceof Object||"object"==typeof a&&null===Object.getPrototypeOf(a)))if(c.seen.push(a),c.names.push(c.path),g&&"function"==typeof a._PRINT)a._PRINT(c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="");else if(a instanceof Array)d(a,c);else if(a.toString===Object.prototype.toString||"object"==typeof a&&null===Object.getPrototypeOf(a)){var n=!1;try{(a instanceof Set||a instanceof Map||a instanceof WeakSet||a instanceof WeakMap||"function"==typeof a[Symbol.iterator])&&(c.output+=a.toString(),n=!0)}catch(q){}n||e(a,c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="")}else if("function"==typeof a)try{var r=a.toString();if(00&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var d={names:[],seen:[],path:"~",level:0,output:"",prettyPrint:!1,useColor:!1,customInspect:!0};c(arguments[a],d),b(d.output)}b("\n")},global.start_pretty_print=function(){require("internal").startPrettyPrint()},global.stop_pretty_print=function(){require("internal").stopPrettyPrint()},global.start_color_print=function(a){require("internal").startColorPrint(a,!1)},global.stop_color_print=function(){require("internal").stopColorPrint()}}(),function(){var a=require("internal");global.ArangoConnection&&(a.ArangoConnection=global.ArangoConnection,delete global.ArangoConnection),global.SYS_ARANGO&&(a.arango=global.SYS_ARANGO,delete global.SYS_ARANGO),a.wal={flush:function(b,c){if(a.arango){var d=b?"true":"false",e=c?"true":"false";return void a.arango.PUT("/_admin/wal/flush?waitForSync="+d+"&waitForCollector="+e,"")}throw"not connected"},properties:function(b){if(a.arango)return void 0!==b?a.arango.PUT("/_admin/wal/properties",JSON.stringify(b)):a.arango.GET("/_admin/wal/properties","");throw"not connected"}},a.reloadAqlFunctions=function(){if(a.arango)return void a.arango.POST("/_admin/aql/reload","");throw"not connected"},a.reloadRouting=function(){if(a.arango)return void a.arango.POST("/_admin/routing/reload","");throw"not connected"},a.routingCache=function(){if(a.arango)return a.arango.GET("/_admin/routing/routes","");throw"not connected"},a.reloadAuth=function(){if(a.arango)return void a.arango.POST("/_admin/auth/reload","");throw"not connected"},a.executeServer=function(b){if(a.arango)return a.arango.POST("/_admin/execute",b);throw"not connected"},a.appendCurlRequest=function(b){return function(c,d,e,f){var g,h,i;if("string"!=typeof e&&void 0!==e&&(e=a.inspect(e)),h="shell> curl ","POST"===c?(g=a.arango.POST_RAW(d,e,f),h+="-X "+c+" "):"PUT"===c?(g=a.arango.PUT_RAW(d,e,f),h+="-X "+c+" "):"GET"===c?g=a.arango.GET_RAW(d,f):"DELETE"===c?(g=a.arango.DELETE_RAW(d,f),h+="-X "+c+" "):"PATCH"===c?(g=a.arango.PATCH_RAW(d,e,f),h+="-X "+c+" "):"HEAD"===c?(g=a.arango.HEAD_RAW(d,f),h+="-X "+c+" "):"OPTION"===c&&(g=a.arango.OPTION_RAW(d,e,f),h+="-X "+c+" "),void 0!==f&&""!==f)for(i in f)f.hasOwnProperty(i)&&(h+="--header '"+i+": "+f[i]+"' ");return void 0!==e&&""!==e&&(h+="--data-binary @- "),h+="--dump - http://localhost:8529"+d,b(h),void 0!==e&&""!==e&&e&&(b(" <=b)return String(a);var c,d=[];for(c=1;cc;++c)b+="\n";a.print(b)},global.console=global.console||require("console"),global.db=require("org/arangodb").db,global.arango=require("org/arangodb").arango,global.fm=require("org/arangodb/foxx/manager"),global.ArangoStatement=require("org/arangodb/arango-statement").ArangoStatement,global.tutorial=require("org/arangodb/tutorial");var initHelp=function(){var a=require("internal");if(a.db)try{a.db._collections()}catch(b){}a.quiet!==!0&&(require("org/arangodb").checkAvailableVersions(),a.arango&&a.arango.isConnected&&a.arango.isConnected()&&a.print("Type 'tutorial' for a tutorial or 'help' to see common examples"))};if("undefined"==typeof window){if(initHelp(),global.IS_EXECUTE_SCRIPT||global.IS_EXECUTE_STRING||global.IS_CHECK_SCRIPT||global.IS_UNIT_TESTS||global.IS_JS_LINT)try{var __fs__=require("fs"),__rcf__=__fs__.join(__fs__.home(),".arangosh.rc");if(__fs__.exists(__rcf__)){var __content__=__fs__.read(__rcf__);eval(__content__)}}catch(e){require("console").warn("arangosh.rc: %s",String(e))}try{delete global.IS_EXECUTE_SCRIPT,delete global.IS_EXECUTE_STRING,delete global.IS_CHECK_SCRIPT,delete global.IS_UNIT_TESTS,delete global.IS_JS_LINT}catch(e){}}!function(){function a(a,b){i(a,g+b)}function b(a){var b=require("internal").ShapedJson,c=[];0a?-1:1}),c={};return _.each(b,function(b){c[b]=a.attributes[b]}),c}}),function(){"use strict";window.ArangoQuery=Backbone.Model.extend({urlRoot:"/_api/user",defaults:{name:"",type:"custom",value:""}})}(),window.Replication=Backbone.Model.extend({defaults:{state:{},server:{}},initialize:function(){}}),window.Statistics=Backbone.Model.extend({defaults:{},url:function(){"use strict";return"/_admin/statistics"}}),window.StatisticsDescription=Backbone.Model.extend({defaults:{figures:"",groups:""},url:function(){"use strict";return"/_admin/statistics-description"}}),window.Users=Backbone.Model.extend({defaults:{user:"",active:!1,extra:{}},idAttribute:"user",parse:function(a){return this.isNotNew=!0,a},isNew:function(){return!this.isNotNew},url:function(){return this.isNew()?"/_api/user":""!==this.get("user")?"/_api/user/"+this.get("user"):"/_api/user"},checkPassword:function(a){var b=!1;return $.ajax({cache:!1,type:"POST",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1,success:function(a){b=a.result}}),b},setPassword:function(a){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1})},setExtras:function(a,b){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({extra:{name:a,img:b}}),contentType:"application/json",processData:!1})}}),function(){"use strict";window.CurrentDatabase=Backbone.Model.extend({url:"/_api/database/current",parse:function(a){return a.result}})}(),function(){"use strict";var a=function(a,b,c,d,e,f){var g={contentType:"application/json",processData:!1,type:c};b=b||function(){},f=_.extend({mount:a.encodedMount()},f);var h=_.reduce(f,function(a,b,c){return a+encodeURIComponent(c)+"="+encodeURIComponent(b)+"&"},"?");g.url="/_admin/aardvark/foxxes"+(d?"/"+d:"")+h.slice(0,h.length-1),void 0!==e&&(g.data=JSON.stringify(e)),$.ajax(g).then(function(a){b(null,a)},function(a){window.xhr=a,b(_.extend(a.status?new Error(a.responseJSON?a.responseJSON.errorMessage:a.responseText):new Error("Network Error"),{statusCode:a.status}))})};window.Foxx=Backbone.Model.extend({idAttribute:"mount",defaults:{author:"Unknown Author",name:"",version:"Unknown Version",description:"No description",license:"Unknown License",contributors:[],scripts:{},config:{},deps:{},git:"",system:!1,development:!1},isNew:function(){return!1},encodedMount:function(){return encodeURIComponent(this.get("mount"))},destroy:function(b,c){a(this,c,"DELETE",void 0,void 0,b)},isBroken:function(){return!1},needsAttention:function(){return this.isBroken()||this.needsConfiguration()||this.hasUnconfiguredDependencies()},needsConfiguration:function(){return _.any(this.get("config"),function(a){return void 0===a.current&&a.required!==!1})},hasUnconfiguredDependencies:function(){return _.any(this.get("deps"),function(a){return void 0===a.current&&a.definition.required!==!1})},getConfiguration:function(b){a(this,function(a,c){a||this.set("config",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","config")},setConfiguration:function(b,c){a(this,c,"PATCH","config",b)},getDependencies:function(b){a(this,function(a,c){a||this.set("deps",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","deps")},setDependencies:function(b,c){a(this,c,"PATCH","deps",b)},toggleDevelopment:function(b,c){a(this,function(a,d){a||this.set("development",b),"function"==typeof c&&c(a,d)}.bind(this),"PATCH","devel",b)},runScript:function(b,c,d){a(this,d,"POST","scripts/"+b,c)},runTests:function(b,c){a(this,function(a,b){"function"==typeof c&&c(a?a.responseJSON:a,b)}.bind(this),"POST","tests",b)},isSystem:function(){return this.get("system")},isDevelopment:function(){return this.get("development")},download:function(){window.open("/_db/"+arango.getDatabaseName()+"/_admin/aardvark/foxxes/download/zip?mount="+this.encodedMount())}})}(),function(){"use strict";window.Graph=Backbone.Model.extend({idAttribute:"_key",urlRoot:"/_api/gharial",isNew:function(){return!this.get("_id")},parse:function(a){return a.graph||a},addEdgeDefinition:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/edge",data:JSON.stringify(a)})},deleteEdgeDefinition:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a})},modifyEdgeDefinition:function(a){$.ajax({async:!1,type:"PUT",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a.collection,data:JSON.stringify(a)})},addVertexCollection:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/vertex",data:JSON.stringify({collection:a})})},deleteVertexCollection:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/vertex/"+a})},defaults:{name:"",edgeDefinitions:[],orphanCollections:[]}})}(),function(){"use strict";window.newArangoLog=Backbone.Model.extend({defaults:{lid:"",level:"",timestamp:"",text:"",totalAmount:""},getLogStatus:function(){switch(this.get("level")){case 1:return"Error";case 2:return"Warning";case 3:return"Info";case 4:return"Debug";default:return"Unknown"}}})}(),function(){"use strict";window.Notification=Backbone.Model.extend({defaults:{title:"",date:0,content:"",priority:"",tags:"",seen:!1}})}(),function(){"use strict";window.queryManagementModel=Backbone.Model.extend({defaults:{id:"",query:"",started:"",runTime:""}})}(),function(){"use strict";window.PaginatedCollection=Backbone.Collection.extend({page:0,pagesize:10,totalAmount:0,getPage:function(){return this.page+1},setPage:function(a){return a>=this.getLastPageNumber()?void(this.page=this.getLastPageNumber()-1):1>a?void(this.page=0):void(this.page=a-1)},getLastPageNumber:function(){return Math.max(Math.ceil(this.totalAmount/this.pagesize),1)},getOffset:function(){return this.page*this.pagesize},getPageSize:function(){return this.pagesize},setPageSize:function(a){if("all"===a)this.pagesize="all";else try{a=parseInt(a,10),this.pagesize=a}catch(b){}},setToFirst:function(){this.page=0},setToLast:function(){this.setPage(this.getLastPageNumber())},setToPrev:function(){this.setPage(this.getPage()-1)},setToNext:function(){this.setPage(this.getPage()+1)},setTotal:function(a){this.totalAmount=a},getTotal:function(){return this.totalAmount},setTotalMinusOne:function(){this.totalAmount--}})}(),function(){"use strict";window.Airports=Backbone.Collection.extend({initialize:function(a){this.collectionName=a.collectionName},getAirports:function(a){var b=this;$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for a in airports return {Latitude: a.Latitude, Longitude: a.Longitude, Name: a.Name, City: a.City, _key: a._key}"}),contentType:"application/json",processData:!1,success:function(c){_.each(c.result,function(a){b.add(a)}),a&&a()},error:function(a){}})},getShortestFlight:function(a,b,c){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"RETURN SHORTEST_PATH(@@airports,@@flights,@start,@dest,'outbound',{})",bindVars:{"@flights":this.collectionName,"@airports":"airports", +start:"airports/"+a,dest:"airports/"+b}}),contentType:"application/json",processData:!1,success:function(a){c(a.result[0])},error:function(a){}})},getFlightDistribution:function(a){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"FOR f IN @@flights COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(b){a(b.result)},error:function(a){}})},getFlightsForAirport:function(a,b){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for f in @@flights filter f._from == @airport COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{airport:"airports/"+a,"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(a){b(a.result)},error:function(a){}})},model:window.Airport})}(),function(){"use strict";window.arangoCollections=Backbone.Collection.extend({url:"/_api/collection",model:arangoCollectionModel,searchOptions:{searchPhrase:null,includeSystem:!1,includeDocument:!0,includeEdge:!0,includeLoaded:!0,includeUnloaded:!0,sortBy:"name",sortOrder:1},translateStatus:function(a){switch(a){case 0:return"corrupted";case 1:return"new born collection";case 2:return"unloaded";case 3:return"loaded";case 4:return"in the process of being unloaded";case 5:return"deleted";case 6:return"loading";default:return}},translateTypePicture:function(a){var b="";switch(a){case"document":b+="fa-file-text-o";break;case"edge":b+="fa-share-alt";break;case"unknown":b+="fa-question";break;default:b+="fa-cogs"}return b},parse:function(a){var b=this;return _.each(a.collections,function(a){a.isSystem=arangoHelper.isSystemCollection(a),a.type=arangoHelper.collectionType(a),a.status=b.translateStatus(a.status),a.picture=b.translateTypePicture(a.type)}),a.collections},getPosition:function(a){var b,c=this.getFiltered(this.searchOptions),d=null,e=null;for(b=0;b0&&(d=c[b-1]),b0){var e,f=d.get("name").toLowerCase();for(e=0;ed?-1:1):0}),b},newCollection:function(a,b,c,d,e,f,g){var h={},i={};return i.name=a,i.waitForSync=b,d>0&&(i.journalSize=d),i.isSystem=c,i.type=parseInt(e,10),f&&(i.numberOfShards=f,i.shardKeys=g),h.status=!1,$.ajax({cache:!1,type:"POST",url:"/_api/collection",data:JSON.stringify(i),contentType:"application/json",processData:!1,async:!1,success:function(a){h.status=!0,h.data=a},error:function(a){h.status=!1,h.errorMessage=JSON.parse(a.responseText).errorMessage}}),h}})}(),function(){"use strict";window.ArangoDatabase=Backbone.Collection.extend({model:window.DatabaseModel,sortOptions:{desc:!1},url:"/_api/database",comparator:function(a,b){var c=a.get("name").toLowerCase(),d=b.get("name").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},parse:function(a){return a?_.map(a.result,function(a){return{name:a}}):void 0},initialize:function(){var a=this;this.fetch().done(function(){a.sort()})},setSortingDesc:function(a){this.sortOptions.desc=a},getDatabases:function(){var a=this;return this.fetch().done(function(){a.sort()}),this.models},getDatabasesForUser:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/user",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b.result},error:function(){a=[]}}),a.sort()},createDatabaseURL:function(a,b,c){var d=window.location,e=window.location.hash;b=b?"SSL"===b||"https:"===b?"https:":"http:":d.protocol,c=c||d.port;var f=b+"//"+window.location.hostname+":"+c+"/_db/"+encodeURIComponent(a)+"/_admin/aardvark/standalone.html";if(e){var g=e.split("/")[0];0===g.indexOf("#collection")&&(g="#collections"),0===g.indexOf("#application")&&(g="#applications"),f+=g}return f},getCurrentDatabase:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/current",contentType:"application/json",processData:!1,async:!1,success:function(b){return 200===b.code?void(a=b.result.name):void(a=b)},error:function(b){a=b}}),a},hasSystemAccess:function(){var a=this.getDatabasesForUser();return _.contains(a,"_system")}})}(),window.arangoDocument=Backbone.Collection.extend({url:"/_api/document/",model:arangoDocumentModel,collectionInfo:{},deleteEdge:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/edge/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},deleteDocument:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/document/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},addDocument:function(a,b){var c=this;c.createTypeDocument(a,b)},createTypeEdge:function(a,b,c,d){var e,f=!1;return e=d?JSON.stringify({_key:d}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/edge?collection="+a+"&from="+b+"&to="+c,data:e,contentType:"application/json",processData:!1,success:function(a){f=a._id},error:function(a){f=!1}}),f},createTypeDocument:function(a,b){var c,d=!1;return c=b?JSON.stringify({_key:b}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/document?collection="+encodeURIComponent(a),data:c,contentType:"application/json",processData:!1,success:function(a){d=a._id},error:function(a){d=!1}}),d},getCollectionInfo:function(a){var b=this;return $.ajax({cache:!1,type:"GET",url:"/_api/collection/"+a+"?"+arangoHelper.getRandomToken(),contentType:"application/json",processData:!1,async:!1,success:function(a){b.collectionInfo=a},error:function(a){}}),b.collectionInfo},getEdge:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/edge/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},getDocument:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/document/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},saveEdge:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/edge/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},saveDocument:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/document/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},updateLocalDocument:function(a){this.clearDocument(),this.add(a)},clearDocument:function(){this.reset()}}),function(){"use strict";window.arangoDocuments=window.PaginatedCollection.extend({collectionID:1,filters:[],MAX_SORT:12e3,lastQuery:{},sortAttribute:"_key",url:"/_api/documents",model:window.arangoDocumentModel,loadTotal:function(){var a=this;$.ajax({cache:!1,type:"GET",url:"/_api/collection/"+this.collectionID+"/count",contentType:"application/json",processData:!1,async:!1,success:function(b){a.setTotal(b.count)}})},setCollection:function(a){this.resetFilter(),this.collectionID=a,this.setPage(1),this.loadTotal()},setSort:function(a){this.sortAttribute=a},getSort:function(){return this.sortAttribute},addFilter:function(a,b,c){this.filters.push({attr:a,op:b,val:c})},setFiltersForQuery:function(a){if(0===this.filters.length)return"";var b=" FILTER",c=_.map(this.filters,function(b,c){var d=" x.`";return d+=b.attr,d+="` ",d+=b.op,d+=" @param",d+=c,a["param"+c]=b.val,d});return b+c.join(" &&")},setPagesize:function(a){this.setPageSize(a)},resetFilter:function(){this.filters=[]},moveDocument:function(a,b,c,d){var e,f,g,h,i={"@collection":b,filterid:a};e="FOR x IN @@collection",e+=" FILTER x._key == @filterid",e+=" INSERT x IN ",e+=c,f="FOR x in @@collection",f+=" FILTER x._key == @filterid",f+=" REMOVE x IN @@collection",g={query:e,bindVars:i},h={query:f,bindVars:i},window.progressView.show(),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(g),contentType:"application/json",success:function(a){$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(h),contentType:"application/json",success:function(a){d&&d(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Documents inserted, but could not be removed.")}})},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not move selected documents.")}})},getDocuments:function(a){window.progressView.showWithDelay(300,"Fetching documents...");var b,c,d,e,f=this;c={"@collection":this.collectionID,offset:this.getOffset(),count:this.getPageSize()},b="FOR x IN @@collection LET att = SLICE(ATTRIBUTES(x), 0, 25)",b+=this.setFiltersForQuery(c),this.getTotal()0)&&(e.options={fullCount:!0}),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(e),contentType:"application/json",success:function(b){window.progressView.toShow=!1,f.clearDocuments(),b.extra&&void 0!==b.extra.stats.fullCount&&f.setTotal(b.extra.stats.fullCount),0!==f.getTotal()&&_.each(b.result,function(a){f.add({id:a._id,rev:a._rev,key:a._key,content:a})}),f.lastQuery=e,a(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not fetch requested documents.")}})},clearDocuments:function(){this.reset()},buildDownloadDocumentQuery:function(){var a,b,c;return c={"@collection":this.collectionID},a="FOR x in @@collection",a+=this.setFiltersForQuery(c),this.getTotal()0&&(b="At least one error occurred during upload")}catch(d){}}}),b}})}(),function(){"use strict";window.ArangoLogs=window.PaginatedCollection.extend({upto:!1,loglevel:0,totalPages:0,parse:function(a){var b=[];return _.each(a.lid,function(c,d){b.push({level:a.level[d],lid:c,text:a.text[d],timestamp:a.timestamp[d],totalAmount:a.totalAmount})}),this.totalAmount=a.totalAmount,this.totalPages=Math.ceil(this.totalAmount/this.pagesize),b},initialize:function(a){a.upto===!0&&(this.upto=!0),this.loglevel=a.loglevel},model:window.newArangoLog,url:function(){var a,b,c,d;c=this.page*this.pagesize;var e=this.totalAmount-(this.page+1)*this.pagesize;return 0>e&&this.page===this.totalPages-1?(e=0,d=this.totalAmount%this.pagesize):d=this.pagesize,0===this.totalAmount&&(d=1),a=this.upto?"upto":"level",b="/_admin/log?"+a+"="+this.loglevel+"&size="+d+"&offset="+e}})}(),function(){"use strict";window.ArangoQueries=Backbone.Collection.extend({initialize:function(a,b){var c;$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser===!1&&(this.activeUser="root")},url:"/_api/user/",model:ArangoQuery,activeUser:null,parse:function(a){var b,c=this;return _.each(a.result,function(a){if(a.user===c.activeUser)try{a.extra.queries&&(b=a.extra.queries)}catch(d){}}),b},saveCollectionQueries:function(){if(0===this.activeUser)return!1;var a=!1,b=[];return this.each(function(a){b.push({value:a.attributes.value,name:a.attributes.name})}),$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+encodeURIComponent(this.activeUser),data:JSON.stringify({extra:{queries:b}}),contentType:"application/json",processData:!1,success:function(){a=!0},error:function(){a=!1}}),a},saveImportQueries:function(a,b){return 0===this.activeUser?!1:(window.progressView.show("Fetching documents..."),void $.ajax({cache:!1,type:"POST",async:!1,url:"query/upload/"+encodeURIComponent(this.activeUser),data:a,contentType:"application/json",processData:!1,success:function(){window.progressView.hide(),b()},error:function(){window.progressView.hide(),arangoHelper.arangoError("Query error","queries could not be imported")}}))}})}(),window.ArangoReplication=Backbone.Collection.extend({model:window.Replication,url:"../api/user",getLogState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/logger-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a},getApplyState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/applier-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a}}),window.StatisticsCollection=Backbone.Collection.extend({model:window.Statistics,url:"/_admin/statistics"}),window.StatisticsDescriptionCollection=Backbone.Collection.extend({model:window.StatisticsDescription,url:"/_admin/statistics-description",parse:function(a){return a}}),window.ArangoUsers=Backbone.Collection.extend({model:window.Users,activeUser:null,activeUserSettings:{query:{},shell:{},testing:!0},sortOptions:{desc:!1},url:"/_api/user",comparator:function(a,b){var c=a.get("user").toLowerCase(),d=b.get("user").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},login:function(a,b){var c=null;return $.ajax("login",{async:!1,method:"POST",data:JSON.stringify({username:a,password:b}),dataType:"json"}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser},setSortingDesc:function(a){this.sortOptions.desc=a},logout:function(){$.ajax("logout",{async:!1,method:"POST"}),this.activeUser=null,this.reset(),window.App.navigate(""),window.location.reload()},setUserSettings:function(a,b){this.activeUserSettings.identifier=b},loadUserSettings:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),contentType:"application/json",processData:!1,async:!1,success:function(b){a.activeUserSettings=b.extra},error:function(a){}})},saveUserSettings:function(){var a=this;$.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),data:JSON.stringify({extra:a.activeUserSettings}),contentType:"application/json",processData:!1,success:function(a){},error:function(a){}})},parse:function(a){var b=[];return _.each(a.result,function(a){b.push(a)}),b},whoAmI:function(){if(this.activeUser)return this.activeUser;var a;return $.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user}),this.activeUser=a,this.activeUser}}),function(){"use strict";window.FoxxCollection=Backbone.Collection.extend({model:window.Foxx,sortOptions:{desc:!1},url:"/_admin/aardvark/foxxes",comparator:function(a,b){var c,d;return this.sortOptions.desc===!0?(c=a.get("mount"),d=b.get("mount"),d>c?1:c>d?-1:0):(c=a.get("mount"),d=b.get("mount"),c>d?1:d>c?-1:0)},setSortingDesc:function(a){this.sortOptions.desc=a},installFromGithub:function(a,b,c,d){var e="/_admin/aardvark/foxxes/git?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromStore:function(a,b,c,d){var e="/_admin/aardvark/foxxes/store?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromZip:function(a,b,c,d){var e="/_admin/aardvark/foxxes/zip?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify({zipFile:a}),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},generate:function(a,b,c,d){var e="/_admin/aardvark/foxxes/generate?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})}})}(),function(){"use strict";window.GraphCollection=Backbone.Collection.extend({model:window.Graph,sortOptions:{desc:!1},url:"/_api/gharial",comparator:function(a,b){var c=a.get("_key")||"",d=b.get("_key")||"";return c=c.toLowerCase(),d=d.toLowerCase(),this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},setSortingDesc:function(a){this.sortOptions.desc=a},parse:function(a){return a.error?void 0:a.graphs}})}(),function(){"use strict";window.NotificationCollection=Backbone.Collection.extend({model:window.Notification,url:""})}(),function(){"use strict";window.QueryManagementActive=Backbone.Collection.extend({model:window.queryManagementModel,url:function(){return"/_api/query/current"},killRunningQuery:function(a,b){$.ajax({url:"/_api/query/"+encodeURIComponent(a),type:"DELETE",success:function(a){b()}})}})}(),function(){"use strict";window.QueryManagementSlow=Backbone.Collection.extend({model:window.queryManagementModel,url:"/_api/query/slow",deleteSlowQueryHistory:function(a){var b=this;$.ajax({url:b.url,type:"DELETE",success:function(b){a()}})}})}(),function(){"use strict";window.PaginationView=Backbone.View.extend({collection:null,paginationDiv:"",idPrefix:"",rerender:function(){},jumpTo:function(a){this.collection.setPage(a),this.rerender()},firstPage:function(){this.jumpTo(1)},lastPage:function(){this.jumpTo(this.collection.getLastPageNumber())},firstDocuments:function(){this.jumpTo(1)},lastDocuments:function(){this.jumpTo(this.collection.getLastPageNumber())},prevDocuments:function(){this.jumpTo(this.collection.getPage()-1)},nextDocuments:function(){this.jumpTo(this.collection.getPage()+1)},renderPagination:function(){$(this.paginationDiv).html("");var a=this,b=this.collection.getPage(),c=this.collection.getLastPageNumber(),d=$(this.paginationDiv),e={page:b,lastPage:c,click:function(b){a.jumpTo(b),e.page=b}};d.html(""),d.pagination(e),$(this.paginationDiv).prepend('
'),$(this.paginationDiv).append('
')}})}(),function(){"use strict";window.ApiView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("apiView.ejs"),initialize:function(){this.swaggerUi=new SwaggerUi({discoveryUrl:"api-docs.json",apiKey:!1,dom_id:"swagger-ui-container",supportHeaderParams:!0,supportedSubmitMethods:["get","post","put","delete","patch","head"],onComplete:function(){$("pre code").each(function(a,b){hljs.highlightBlock(b)})},onFailure:function(a){var b=document.createElement("div"),c=document.createElement("strong");c.appendChild(document.createTextNode("Sorry the code is not documented properly")),b.appendChild(c),b.appendChild(document.createElement("br")),b.appendChild(document.createTextNode(JSON.stringify(a))),$("#swagger-ui-container").append(b)},docExpansion:"none"})},render:function(){return $(this.el).html(this.template.render({})),this.swaggerUi.load(),this}})}(),function(){"use strict";window.ApplicationDetailView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationDetailView.ejs"),events:{"click .open":"openApp","click .delete":"deleteApp","click #app-config":"showConfigDialog","click #app-deps":"showDepsDialog","click #app-switch-mode":"toggleDevelopment","click #app-scripts [data-script]":"runScript","click #app-tests":"runTests","click #app-upgrade":"upgradeApp","click #download-app":"downloadApp","click #app-show-swagger":"showSwagger","click #app-show-readme":"showReadme","mouseenter #app-scripts":"showDropdown","mouseleave #app-scripts":"hideDropdown"},downloadApp:function(){this.model.isSystem()||this.model.download()},upgradeApp:function(){var a=this.model.get("mount");window.foxxInstallView.upgrade(a,function(){window.App.applicationDetail(encodeURIComponent(a))})},updateConfig:function(){this.model.getConfiguration(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-config")[this.model.needsConfiguration()?"show":"hide"]()}.bind(this))},updateDeps:function(){this.model.getDependencies(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-deps")[this.model.hasUnconfiguredDependencies()?"show":"hide"]()}.bind(this))},toggleDevelopment:function(){this.model.toggleDevelopment(!this.model.isDevelopment(),function(){this.model.isDevelopment()?($("#app-switch-mode").val("Set Pro"),$("#app-development-indicator").css("display","inline"),$("#app-development-path").css("display","inline")):($("#app-switch-mode").val("Set Dev"),$("#app-development-indicator").css("display","none"),$("#app-development-path").css("display","none"))}.bind(this))},runScript:function(a){a.preventDefault();var b=$(a.currentTarget).attr("data-script"),c=[window.modalView.createBlobEntry("app_script_arguments","Script arguments","",null,"optional",!1,[{rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty"}])],d=[window.modalView.createSuccessButton("Run script",function(){var a=$("#app_script_arguments").val();a=a&&JSON.parse(a),window.modalView.hide(),this.model.runScript(b,a,function(a,c){var d;d=a?"

The script failed with an error"+(a.statusCode?" (HTTP "+a.statusCode+")":"")+":

"+a.message+"
":c?"

Script results:

"+JSON.stringify(c,null,2)+"
":"

The script ran successfully.

",window.modalView.show("modalTable.ejs",'Result of script "'+b+'"',void 0,void 0,void 0,d)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run script "'+b+'" on "'+this.model.get("mount")+'"',d,c)},showSwagger:function(a){a.preventDefault(),this.render("swagger")},showReadme:function(a){a.preventDefault(),this.render("readme")},runTests:function(a){a.preventDefault();var b="

WARNING: Running tests may result in destructive side-effects including data loss. Please make sure not to run tests on a production database.

";this.model.isDevelopment()&&(b+="

WARNING: This app is running in development mode. If any of the tests access the app's HTTP API they may become non-deterministic.

");var c=[window.modalView.createSuccessButton("Run tests",function(){window.modalView.hide(),this.model.runTests({reporter:"suite"},function(a,b){window.modalView.show("modalTestResults.ejs","Test results",void 0,void 0,void 0,a||b)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run tests for app "'+this.model.get("mount")+'"',c,void 0,void 0,b)},render:function(a){return $(this.el).html(this.template.render({app:this.model,db:arangoHelper.currentDatabase(),mode:a})),$.get(this.appUrl()).success(function(){$(".open",this.el).prop("disabled",!1)}.bind(this)),this.updateConfig(),this.updateDeps(),$(this.el)},openApp:function(){window.open(this.appUrl(),this.model.get("title")).focus()},deleteApp:function(){var a=[window.modalView.createDeleteButton("Delete",function(){var a={teardown:$("#app_delete_run_teardown").is(":checked")};this.model.destroy(a,function(a,b){a||b.error!==!1||(window.modalView.hide(),window.App.navigate("applications",{trigger:!0}))})}.bind(this))],b=[window.modalView.createCheckboxEntry("app_delete_run_teardown","Run teardown?",!0,"Should this app's teardown script be executed before removing the app?",!0)];window.modalView.show("modalTable.ejs",'Delete Foxx App mounted at "'+this.model.get("mount")+'"',a,b,void 0,"

Are you sure? There is no way back...

",!0)},appUrl:function(){return window.location.origin+"/_db/"+encodeURIComponent(arangoHelper.currentDatabase())+this.model.get("mount")},applyConfig:function(){var a={};_.each(this.model.get("config"),function(b,c){var d=$("#app_config_"+c),e=d.val();if("boolean"===b.type||"bool"===b.type)return void(a[c]=d.is(":checked"));if(""===e&&b.hasOwnProperty("default"))return a[c]=b["default"],void("json"===b.type&&(a[c]=JSON.stringify(b["default"])));if("number"===b.type)a[c]=parseFloat(e);else if("integer"===b.type||"int"===b.type)a[c]=parseInt(e,10);else{if("json"!==b.type)return void(a[c]=window.arangoHelper.escapeHtml(e));a[c]=e&&JSON.stringify(JSON.parse(e))}}),this.model.setConfiguration(a,function(){window.modalView.hide(),this.updateConfig()}.bind(this))},showConfigDialog:function(){if(!_.isEmpty(this.model.get("config"))){var a=_.map(this.model.get("config"),function(a,b){var c=void 0===a["default"]?"":String(a["default"]),d=void 0===a.current?"":String(a.current),e="createTextEntry",f=!1,g=[];return"boolean"===a.type||"bool"===a.type?(e="createCheckboxEntry",a["default"]=a["default"]||!1,c=a["default"]||!1,d=a.current||!1):"json"===a.type?(e="createBlobEntry",c=void 0===a["default"]?"":JSON.stringify(a["default"]),d=void 0===a.current?"":a.current,g.push({rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty."})):"integer"===a.type||"int"===a.type?g.push({rule:Joi.number().integer().optional().allow(""),msg:"Has to be an integer."}):"number"===a.type?g.push({rule:Joi.number().optional().allow(""),msg:"Has to be a number."}):("password"===a.type&&(e="createPasswordEntry"),g.push({rule:Joi.string().optional().allow(""),msg:"Has to be a string."})),void 0===a["default"]&&a.required!==!1&&(f=!0,g.unshift({rule:Joi.any().required(),msg:"This field is required."})),window.modalView[e]("app_config_"+b,b,d,a.description,c,f,g)}),b=[window.modalView.createSuccessButton("Apply",this.applyConfig.bind(this))];window.modalView.show("modalTable.ejs","Configuration",b,a)}},applyDeps:function(){var a={};_.each(this.model.get("deps"),function(b,c){var d=$("#app_deps_"+c);a[c]=window.arangoHelper.escapeHtml(d.val())}),this.model.setDependencies(a,function(){window.modalView.hide(),this.updateDeps()}.bind(this))},showDepsDialog:function(){if(!_.isEmpty(this.model.get("deps"))){var a=_.map(this.model.get("deps"),function(a,b){var c=void 0===a.current?"":String(a.current),d="",e=a.definition.name;"*"!==a.definition.version&&(e+="@"+a.definition.version);var f=[{rule:Joi.string().optional().allow(""),msg:"Has to be a string."}];return a.definition.required&&f.push({rule:Joi.string().required(),msg:"This value is required."}),window.modalView.createTextEntry("app_deps_"+b,a.title,c,e,d,a.definition.required,f)}),b=[window.modalView.createSuccessButton("Apply",this.applyDeps.bind(this))];window.modalView.show("modalTable.ejs","Dependencies",b,a)}},showDropdown:function(){_.isEmpty(this.model.get("scripts"))||$("#scripts_dropdown").show(200)},hideDropdown:function(){$("#scripts_dropdown").hide()}})}(),function(){"use strict";window.ApplicationsView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationsView.ejs"),events:{"click #addApp":"createInstallModal","click #foxxToggle":"slideToggle","click #checkDevel":"toggleDevel","click #checkProduction":"toggleProduction","click #checkSystem":"toggleSystem"},fixCheckboxes:function(){this._showDevel?$("#checkDevel").attr("checked","checked"):$("#checkDevel").removeAttr("checked"),this._showSystem?$("#checkSystem").attr("checked","checked"):$("#checkSystem").removeAttr("checked"),this._showProd?$("#checkProduction").attr("checked","checked"):$("#checkProduction").removeAttr("checked"),$("#checkDevel").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkSystem").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkProduction").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),arangoHelper.setCheckboxStatus("#foxxDropdown")},toggleDevel:function(){var a=this;this._showDevel=!this._showDevel,_.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel)}),this.fixCheckboxes()},toggleProduction:function(){var a=this;this._showProd=!this._showProd,_.each(this._installedSubViews,function(b){b.toggle("production",a._showProd)}),this.fixCheckboxes()},toggleSystem:function(){this._showSystem=!this._showSystem;var a=this;_.each(this._installedSubViews,function(b){b.toggle("system",a._showSystem)}),this.fixCheckboxes()},reload:function(){var a=this;_.each(this._installedSubViews,function(a){a.undelegateEvents()}),this.collection.fetch({success:function(){a.createSubViews(),a.render()}})},createSubViews:function(){var a=this;this._installedSubViews={},a.collection.each(function(b){var c=new window.FoxxActiveView({model:b,appsView:a});a._installedSubViews[b.get("mount")]=c})},initialize:function(){this._installedSubViews={},this._showDevel=!0,this._showProd=!0,this._showSystem=!1,this.reload()},slideToggle:function(){$("#foxxToggle").toggleClass("activated"),$("#foxxDropdownOut").slideToggle(200)},createInstallModal:function(a){a.preventDefault(),window.foxxInstallView.install(this.reload.bind(this))},render:function(){this.collection.sort(),$(this.el).html(this.template.render({})),_.each(this._installedSubViews,function(a){$("#installedList").append(a.render())}),this.delegateEvents(),$("#checkDevel").attr("checked",this._showDevel),$("#checkProduction").attr("checked",this._showProd),$("#checkSystem").attr("checked",this._showSystem),arangoHelper.setCheckboxStatus("#foxxDropdown");var a=this;return _.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel),b.toggle("system",a._showSystem)}),arangoHelper.fixTooltips("icon_arangodb","left"),this}})}(),function(){"use strict";window.CollectionListItemView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("collectionsItemView.ejs"),initialize:function(){this.collectionsView=this.options.collectionsView},events:{"click .iconSet.icon_arangodb_settings2":"createEditPropertiesModal","click .pull-left":"noop","click .icon_arangodb_settings2":"editProperties","click .spanInfo":"showProperties",click:"selectCollection"},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el).attr("id","collection_"+this.model.get("name")),this},editProperties:function(a){a.stopPropagation(),this.createEditPropertiesModal()},showProperties:function(a){a.stopPropagation(),this.createInfoModal()},selectCollection:function(a){return $(a.target).hasClass("disabled")?0:void window.App.navigate("collection/"+encodeURIComponent(this.model.get("name"))+"/documents/1",{trigger:!0})},noop:function(a){a.stopPropagation()},unloadCollection:function(){this.model.unloadCollection(),window.modalView.hide()},loadCollection:function(){this.model.loadCollection(),window.modalView.hide()},truncateCollection:function(){this.model.truncateCollection(),this.render(),window.modalView.hide()},deleteCollection:function(){ +this.model.destroy({error:function(){arangoHelper.arangoError("Could not delete collection.")},success:function(){window.modalView.hide()}}),this.collectionsView.render()},saveModifiedCollection:function(){var a;a=window.isCoordinator()?this.model.get("name"):$("#change-collection-name").val();var b=this.model.get("status");if("loaded"===b){var c;try{c=JSON.parse(1024*$("#change-collection-size").val()*1024)}catch(d){return arangoHelper.arangoError("Please enter a valid number"),0}var e;try{if(e=JSON.parse($("#change-index-buckets").val()),1>e||parseInt(e)!==Math.pow(2,Math.log2(e)))throw"invalid indexBuckets value"}catch(d){return arangoHelper.arangoError("Please enter a valid number of index buckets"),0}var f;if(this.model.get("name")!==a&&(f=this.model.renameCollection(a)),f!==!0&&void 0!==f)return arangoHelper.arangoError("Collection error: "+f),0;var g=$("#change-collection-sync").val(),h=this.model.changeCollection(g,c,e);if(h!==!0)return arangoHelper.arangoNotification("Collection error",h),0;this.collectionsView.render(),window.modalView.hide()}else if("unloaded"===b)if(this.model.get("name")!==a){var i=this.model.renameCollection(a);i===!0?(this.collectionsView.render(),window.modalView.hide()):arangoHelper.arangoError("Collection error: "+i)}else window.modalView.hide()},createEditPropertiesModal:function(){var a=!1;"loaded"===this.model.get("status")&&(a=!0);var b=[],c=[];if(window.isCoordinator()||c.push(window.modalView.createTextEntry("change-collection-name","Name",this.model.get("name"),!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a){var d=this.model.getProperties().journalSize;d/=1048576,c.push(window.modalView.createTextEntry("change-collection-size","Journal size",d,"The maximal size of a journal or datafile (in MB). Must be at least 1.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}]));var e=this.model.getProperties().indexBuckets;c.push(window.modalView.createTextEntry("change-index-buckets","Index buckets",e,"The number of index buckets for this collection. Must be at least 1 and a power of 2.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[1-9][0-9]*$/),msg:"Must be a number greater than 1 and a power of 2."}]));var f=this.model.getProperties().waitForSync;c.push(window.modalView.createSelectEntry("change-collection-sync","Wait for sync",f,"Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}]))}c.push(window.modalView.createReadOnlyEntry("change-collection-id","ID",this.model.get("id"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-type","Type",this.model.get("type"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-status","Status",this.model.get("status"),"")),b.push(window.modalView.createDeleteButton("Delete",this.deleteCollection.bind(this))),b.push(window.modalView.createDeleteButton("Truncate",this.truncateCollection.bind(this))),a?b.push(window.modalView.createNotificationButton("Unload",this.unloadCollection.bind(this))):b.push(window.modalView.createNotificationButton("Load",this.loadCollection.bind(this))),b.push(window.modalView.createSuccessButton("Save",this.saveModifiedCollection.bind(this))),window.modalView.show("modalTable.ejs","Modify Collection",b,c)},createInfoModal:function(){var a=[],b=this.model;window.modalView.show("modalCollectionInfo.ejs","Collection: "+this.model.get("name"),a,b)}})}(),function(){"use strict";window.CollectionsView=Backbone.View.extend({el:"#content",el2:"#collectionsThumbnailsIn",searchTimeout:null,template:templateEngine.createTemplate("collectionsView.ejs"),render:function(){var a=!1;$("#collectionsDropdown").is(":visible")&&(a=!0),$(this.el).html(this.template.render({})),this.setFilterValues(),a===!0&&$("#collectionsDropdown2").show();var b=this.collection.searchOptions;this.collection.getFiltered(b).forEach(function(a){$("#collectionsThumbnailsIn",this.el).append(new window.CollectionListItemView({model:a,collectionsView:this}).render().el)},this),"none"===$("#collectionsDropdown2").css("display")?$("#collectionsToggle").removeClass("activated"):$("#collectionsToggle").addClass("activated");var c;arangoHelper.setCheckboxStatus("#collectionsDropdown");try{c=b.searchPhrase.length}catch(d){}return $("#searchInput").val(b.searchPhrase),$("#searchInput").focus(),$("#searchInput")[0].setSelectionRange(c,c),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","left"),this},events:{"click #createCollection":"createCollection","keydown #searchInput":"restrictToSearchPhraseKey","change #searchInput":"restrictToSearchPhrase","click #searchSubmit":"restrictToSearchPhrase","click .checkSystemCollections":"checkSystem","click #checkLoaded":"checkLoaded","click #checkUnloaded":"checkUnloaded","click #checkDocument":"checkDocument","click #checkEdge":"checkEdge","click #sortName":"sortName","click #sortType":"sortType","click #sortOrder":"sortOrder","click #collectionsToggle":"toggleView","click .css-label":"checkBoxes"},updateCollectionsView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},toggleView:function(){$("#collectionsToggle").toggleClass("activated"),$("#collectionsDropdown2").slideToggle(200)},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},checkSystem:function(){var a=this.collection.searchOptions,b=a.includeSystem;a.includeSystem=$(".checkSystemCollections").is(":checked")===!0,b!==a.includeSystem&&this.render()},checkEdge:function(){var a=this.collection.searchOptions,b=a.includeEdge;a.includeEdge=$("#checkEdge").is(":checked")===!0,b!==a.includeEdge&&this.render()},checkDocument:function(){var a=this.collection.searchOptions,b=a.includeDocument;a.includeDocument=$("#checkDocument").is(":checked")===!0,b!==a.includeDocument&&this.render()},checkLoaded:function(){var a=this.collection.searchOptions,b=a.includeLoaded;a.includeLoaded=$("#checkLoaded").is(":checked")===!0,b!==a.includeLoaded&&this.render()},checkUnloaded:function(){var a=this.collection.searchOptions,b=a.includeUnloaded;a.includeUnloaded=$("#checkUnloaded").is(":checked")===!0,b!==a.includeUnloaded&&this.render()},sortName:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortName").is(":checked")===!0?"name":"type",b!==a.sortBy&&this.render()},sortType:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortType").is(":checked")===!0?"type":"name",b!==a.sortBy&&this.render()},sortOrder:function(){var a=this.collection.searchOptions,b=a.sortOrder;a.sortOrder=$("#sortOrder").is(":checked")===!0?-1:1,b!==a.sortOrder&&this.render()},setFilterValues:function(){var a=this.collection.searchOptions;$("#checkLoaded").attr("checked",a.includeLoaded),$("#checkUnloaded").attr("checked",a.includeUnloaded),$(".checkSystemCollections").attr("checked",a.includeSystem),$("#checkEdge").attr("checked",a.includeEdge),$("#checkDocument").attr("checked",a.includeDocument),$("#sortName").attr("checked","type"!==a.sortBy),$("#sortType").attr("checked","type"===a.sortBy),$("#sortOrder").attr("checked",1!==a.sortOrder)},search:function(){var a=this.collection.searchOptions,b=$("#searchInput").val();b!==a.searchPhrase&&(a.searchPhrase=b,this.render())},resetSearch:function(){this.searchTimeout&&(clearTimeout(this.searchTimeout),this.searchTimeout=null);var a=this.collection.searchOptions;a.searchPhrase=null},restrictToSearchPhraseKey:function(){var a=this;this.resetSearch(),a.searchTimeout=setTimeout(function(){a.search()},200)},restrictToSearchPhrase:function(){this.resetSearch(),this.search()},createCollection:function(a){a.preventDefault(),this.createNewCollectionModal()},submitCreateCollection:function(){var a=$("#new-collection-name").val(),b=$("#new-collection-size").val(),c=$("#new-collection-type").val(),d=$("#new-collection-sync").val(),e=1,f=[];if(window.isCoordinator()){if(e=$("#new-collection-shards").val(),""===e&&(e=1),e=parseInt(e,10),1>e)return arangoHelper.arangoError("Number of shards has to be an integer value greater or equal 1"),0;f=_.pluck($("#new-collection-shardBy").select2("data"),"text"),0===f.length&&f.push("_key")}if("_"===a.substr(0,1))return arangoHelper.arangoError('No "_" allowed as first character!'),0;var g=!1,h="true"===d;if(b>0)try{b=1024*JSON.parse(b)*1024}catch(i){return arangoHelper.arangoError("Please enter a valid number"),0}if(""===a)return arangoHelper.arangoError("No collection name entered!"),0;var j=this.collection.newCollection(a,h,g,b,c,e,f);j.status!==!0&&arangoHelper.arangoError(j.errorMessage),this.updateCollectionsView(),window.modalView.hide()},createNewCollectionModal:function(){var a=[],b=[],c={},d=[];b.push(window.modalView.createTextEntry("new-collection-name","Name","",!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only symbols, "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),b.push(window.modalView.createSelectEntry("new-collection-type","Type","","The type of the collection to create.",[{value:2,label:"Document"},{value:3,label:"Edge"}])),window.isCoordinator()&&(b.push(window.modalView.createTextEntry("new-collection-shards","Shards","","The number of shards to create. You cannot change this afterwards. Recommended: DBServers squared","",!0)),b.push(window.modalView.createSelect2Entry("new-collection-shardBy","shardBy","","The keys used to distribute documents on shards. Type the key and press return to add it.","_key",!1))),a.push(window.modalView.createSuccessButton("Save",this.submitCreateCollection.bind(this))),d.push(window.modalView.createTextEntry("new-collection-size","Journal size","","The maximal size of a journal or datafile (in MB). Must be at least 1.","",!1,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}])),d.push(window.modalView.createSelectEntry("new-collection-sync","Sync","","Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}])),c.header="Advanced",c.content=d,window.modalView.show("modalTable.ejs","New Collection",a,b,c)}})}(),function(){"use strict";function a(a,b){return(void 0===a||null===a)&&(a=0),a.toFixed(b)}window.DashboardView=Backbone.View.extend({el:"#content",interval:1e4,defaultTimeFrame:12e5,defaultDetailFrame:1728e5,history:{},graphs:{},events:{},tendencies:{asyncPerSecondCurrent:["asyncPerSecondCurrent","asyncPerSecondPercentChange"],syncPerSecondCurrent:["syncPerSecondCurrent","syncPerSecondPercentChange"],clientConnectionsCurrent:["clientConnectionsCurrent","clientConnectionsPercentChange"],clientConnectionsAverage:["clientConnections15M","clientConnections15MPercentChange"],numberOfThreadsCurrent:["numberOfThreadsCurrent","numberOfThreadsPercentChange"],numberOfThreadsAverage:["numberOfThreads15M","numberOfThreads15MPercentChange"],virtualSizeCurrent:["virtualSizeCurrent","virtualSizePercentChange"],virtualSizeAverage:["virtualSize15M","virtualSize15MPercentChange"]},barCharts:{totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]},barChartsElementNames:{queueTimeDistributionPercent:"Queue",requestTimeDistributionPercent:"Computation",bytesSentDistributionPercent:"Bytes sent",bytesReceivedDistributionPercent:"Bytes received"},getDetailFigure:function(a){var b=$(a.currentTarget).attr("id").replace(/ChartButton/g,"");return b},showDetail:function(a){var b,c=this,d=this.getDetailFigure(a);b=this.dygraphConfig.getDetailChartConfig(d),this.getHistoryStatistics(d),this.detailGraphFigure=d,window.modalView.hideFooter=!0,window.modalView.hide(),window.modalView.show("modalGraph.ejs",b.header,void 0,void 0,void 0,void 0,this.events),window.modalView.hideFooter=!1,$("#modal-dialog").on("hidden",function(){c.hidden()}),$("#modal-dialog").toggleClass("modal-chart-detail",!0),b.height=.7*$(window).height(),b.width=$(".modal-inner-detail").width(),b.labelsDiv=$(b.labelsDiv)[0],this.detailGraph=new Dygraph(document.getElementById("lineChartDetail"),this.history[this.server][d],b)},hidden:function(){this.detailGraph.destroy(),delete this.detailGraph,delete this.detailGraphFigure},getCurrentSize:function(a){"#"!==a.substr(0,1)&&(a="#"+a);var b,c;return $(a).attr("style",""),b=$(a).height(),c=$(a).width(),{height:b,width:c}},prepareDygraphs:function(){var a,b=this;this.dygraphConfig.getDashBoardFigures().forEach(function(c){a=b.dygraphConfig.getDefaultConfig(c);var d=b.getCurrentSize(a.div);a.height=d.height,a.width=d.width,b.graphs[c]=new Dygraph(document.getElementById(a.div),b.history[b.server][c]||[],a)})},initialize:function(){this.dygraphConfig=this.options.dygraphConfig,this.d3NotInitialised=!0,this.events["click .dashboard-sub-bar-menu-sign"]=this.showDetail.bind(this),this.events["mousedown .dygraph-rangesel-zoomhandle"]=this.stopUpdating.bind(this),this.events["mouseup .dygraph-rangesel-zoomhandle"]=this.startUpdating.bind(this),this.serverInfo=this.options.serverToShow,this.serverInfo?this.server=this.serverInfo.target:this.server="-local-",this.history[this.server]={}},updateCharts:function(){var a=this;return this.detailGraph?void this.updateLineChart(this.detailGraphFigure,!0):(this.prepareD3Charts(this.isUpdating),this.prepareResidentSize(this.isUpdating),this.updateTendencies(),void Object.keys(this.graphs).forEach(function(b){a.updateLineChart(b,!1)}))},updateTendencies:function(){var a=this,b=this.tendencies,c="";Object.keys(b).forEach(function(b){var d="",e=0;a.history.hasOwnProperty(a.server)&&a.history[a.server].hasOwnProperty(b)&&(e=a.history[a.server][b][1]),0>e?c="#d05448":(c="#7da817",d="+"),$("#"+b).html(a.history[a.server][b][0]+'
'+d+e+"%")})},updateDateWindow:function(a,b){var c,d,e=(new Date).getTime();return b&&a.dateWindow_?(c=a.dateWindow_[0],d=e-a.dateWindow_[1]-5*this.interval>0?a.dateWindow_[1]:e,[c,d]):[e-this.defaultTimeFrame,e]},updateLineChart:function(a,b){var c=b?this.detailGraph:this.graphs[a],d={file:this.history[this.server][a],dateWindow:this.updateDateWindow(c,b)};c.updateOptions(d)},mergeDygraphHistory:function(a,b){var c,d=this;this.dygraphConfig.getDashBoardFigures(!0).forEach(function(e){d.dygraphConfig.mapStatToFigure[e]&&(d.history[d.server][e]||(d.history[d.server][e]=[]),c=[],d.dygraphConfig.mapStatToFigure[e].forEach(function(d){a[d]&&("times"===d?c.push(new Date(1e3*a[d][b])):c.push(a[d][b]))}),c.length>1&&d.history[d.server][e].push(c))})},cutOffHistory:function(a,b){for(var c=this;0!==c.history[c.server][a].length;){var d=c.history[c.server][a][0][0];if(d>=b)break;c.history[c.server][a].shift()}},cutOffDygraphHistory:function(a){var b=this,c=new Date(a);this.dygraphConfig.getDashBoardFigures(!0).forEach(function(a){b.dygraphConfig.mapStatToFigure[a]&&b.history[b.server][a]&&b.cutOffHistory(a,c)})},mergeHistory:function(b){var c,d=this;for(c=0;c=0;--c)d.values.push({label:this.getLabel(b[a[0]].cuts,c),value:b[a[0]].values[c]}),e.values.push({label:this.getLabel(b[a[1]].cuts,c),value:b[a[1]].values[c]});return[d,e]},getLabel:function(a,b){return a[b]?0===b?"0 - "+a[b]:a[b-1]+" - "+a[b]:">"+a[b-1]},getStatistics:function(a){var b=this,c="/_db/_system/_admin/aardvark/statistics/short",d="?start=";d+=b.nextStart?b.nextStart:((new Date).getTime()-b.defaultTimeFrame)/1e3,"-local-"!==b.server&&(c=b.serverInfo.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=short&DBserver="+b.serverInfo.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){c.times.length>0&&(b.isUpdating=!0,b.mergeHistory(c)),b.isUpdating!==!1&&(a&&a(),b.updateCharts())})},getHistoryStatistics:function(a){var b=this,c="statistics/long",d="?filter="+this.dygraphConfig.mapStatToFigure[a].join();"-local-"!==b.server&&(c=b.server.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=long&DBserver="+b.server.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){var d;for(b.history[b.server][a]=[],d=0;de?a(e,2)+" MB":a(e/1024,2)+" GB";var g=a(100*c.history[c.server].residentSizePercent,2),h=[a(c.history[c.server].physicalMemory/1024/1024/1024,0)+" GB"];nv.addGraph(function(){var a=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,right:1,bottom:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,left:1}).showValues(!1).showYAxis(!1).showXAxis(!1).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).stacked(!0);return a.yAxis.tickFormat(function(a){return a+"%"}).showMaxMin(!1),a.xAxis.showMaxMin(!1),d3.select("#residentSizeChart svg").datum(c.history[c.server].residentSizeChart).call(a),d3.select("#residentSizeChart svg").select(".nv-zeroLine").remove(),b&&(d3.select("#residentSizeChart svg").select("#total").remove(),d3.select("#residentSizeChart svg").select("#percentage").remove()),d3.select(".dashboard-bar-chart-title .percentage").html(f+" ("+g+" %)"),d3.select(".dashboard-bar-chart-title .absolut").html(h[0]),nv.utils.windowResize(a.update),a},function(){d3.selectAll("#residentSizeChart .nv-bar").on("click",function(){})})},prepareD3Charts:function(b){var c=this,d={totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]};this.d3NotInitialised&&(b=!1,this.d3NotInitialised=!1),_.each(Object.keys(d),function(b){var d=c.getCurrentSize("#"+b+"Container .dashboard-interior-chart"),e="#"+b+"Container svg";nv.addGraph(function(){var f=[0,.25,.5,.75,1],g=75,h=23,i=6;d.width<219?(f=[0,.5,1],g=72,h=21,i=5):d.width<299?(f=[0,.3334,.6667,1],g=77):d.width<379?g=87:d.width<459?g=95:d.width<539?g=100:d.width<619&&(g=105);var j=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:5,right:20,bottom:h,left:g}).showValues(!1).showYAxis(!0).showXAxis(!0).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).forceY([0,1]);j.yAxis.showMaxMin(!1);d3.select(".nv-y.nv-axis").selectAll("text").attr("transform","translate (0, "+i+")");return j.yAxis.tickValues(f).tickFormat(function(b){return a(100*b*100/100,0)+"%"}),d3.select(e).datum(c.history[c.server][b]).call(j),nv.utils.windowResize(j.update),j},function(){d3.selectAll(e+" .nv-bar").on("click",function(){})})})},stopUpdating:function(){this.isUpdating=!1},startUpdating:function(){var a=this;a.timer||(a.timer=window.setInterval(function(){a.getStatistics()},a.interval))},resize:function(){if(this.isUpdating){var a,b=this;_.each(this.graphs,function(c){a=b.getCurrentSize(c.maindiv_.id),c.resize(a.width,a.height)}),this.detailGraph&&(a=this.getCurrentSize(this.detailGraph.maindiv_.id),this.detailGraph.resize(a.width,a.height)),this.prepareD3Charts(!0),this.prepareResidentSize(!0)}},template:templateEngine.createTemplate("dashboardView.ejs"),render:function(a){a||$(this.el).html(this.template.render());var b=function(){this.prepareDygraphs(),this.isUpdating&&(this.prepareD3Charts(),this.prepareResidentSize(),this.updateTendencies()),this.startUpdating()}.bind(this),c=this.options.database.hasSystemAccess();c?this.getStatistics(b):($(".contentDiv").remove(),$(".headerBar").remove(),$(".dashboard-headerbar").remove(),$(".dashboard-row").remove(),$("#content").append('
You do not have permission to view this page.
'),$("#content").append("
You can switch to '_system' to see the dashboard.
"))}})}(),function(){"use strict";window.databaseView=Backbone.View.extend({users:null,el:"#content",template:templateEngine.createTemplate("databaseView.ejs"),dropdownVisible:!1,currentDB:"",events:{"click #createDatabase":"createDatabase","click #submitCreateDatabase":"submitCreateDatabase","click .editDatabase":"editDatabase","click .icon":"editDatabase","click #selectDatabase":"updateDatabase","click #submitDeleteDatabase":"submitDeleteDatabase","click .contentRowInactive a":"changeDatabase","keyup #databaseSearchInput":"search","click #databaseSearchSubmit":"search","click #databaseToggle":"toggleSettingsDropdown","click .css-label":"checkBoxes","click #dbSortDesc":"sorting","click svg":"switchDatabase"},sorting:function(){$("#dbSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#databaseDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},initialize:function(){this.collection.fetch({async:!1})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},render:function(){return this.currentDatabase(),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:"",currentDB:this.currentDB})),this.dropdownVisible===!0&&($("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").show()),arangoHelper.setCheckboxStatus("#databaseDropdown"),this.replaceSVGs(),this},toggleSettingsDropdown:function(){$("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").slideToggle(200)},selectedDatabase:function(){return $("#selectDatabases").val()},handleError:function(a,b,c){return 409===a?void arangoHelper.arangoError("DB","Database "+c+" already exists."):400===a?void arangoHelper.arangoError("DB","Invalid Parameters"):403===a?void arangoHelper.arangoError("DB","Insufficent rights. Execute this from _system database"):void 0},validateDatabaseInfo:function(a,b,c){return""===b?(arangoHelper.arangoError("DB","You have to define an owner for the new database"),!1):""===a?(arangoHelper.arangoError("DB","You have to define a name for the new database"),!1):0===a.indexOf("_")?(arangoHelper.arangoError("DB ","Databasename should not start with _"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("DB","Databasename may only contain numbers, letters, _ and -"),!1)},createDatabase:function(a){a.preventDefault(),this.createAddDatabaseModal()},switchDatabase:function(a){var b=$(a.currentTarget).parent().find("h5").text(),c=this.collection.createDatabaseURL(b);window.location.replace(c)},submitCreateDatabase:function(){var a=this,b=$("#newDatabaseName").val(),c=$("#newUser").val(),d=$("#newPassword").val();if(this.validateDatabaseInfo(b,c,d)){var e={name:b,users:[{username:c,passwd:d,active:!0}]};this.collection.create(e,{wait:!0,error:function(c,d){a.handleError(d.status,d.statusText,b)},success:function(b){a.updateDatabases(),window.modalView.hide(),window.App.naviView.dbSelectionView.render($("#dbSelect"))}})}},submitDeleteDatabase:function(a){var b=this.collection.where({name:a});b[0].destroy({wait:!0,url:"/_api/database/"+a}),this.updateDatabases(),window.App.naviView.dbSelectionView.render($("#dbSelect")),window.modalView.hide()},currentDatabase:function(){this.currentDB=this.collection.getCurrentDatabase()},changeDatabase:function(a){var b=$(a.currentTarget).attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},updateDatabases:function(){var a=this;this.collection.fetch({success:function(){a.render(),window.App.handleSelectDatabase()}})},editDatabase:function(a){var b=this.evaluateDatabaseName($(a.currentTarget).attr("id"),"_edit-database"),c=!0;b===this.currentDB&&(c=!1),this.createEditDatabaseModal(b,c)},search:function(){var a,b,c,d;a=$("#databaseSearchInput"),b=$("#databaseSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("name").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b,currentDB:this.currentDB})),this.replaceSVGs(),a=$("#databaseSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},replaceSVGs:function(){$(".svgToReplace").each(function(){var a=$(this),b=a.attr("id"),c=a.attr("src");$.get(c,function(c){var d=$(c).find("svg");d.attr("id",b).attr("class","tile-icon-svg").removeAttr("xmlns:a"),a.replaceWith(d)},"xml")})},evaluateDatabaseName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},createEditDatabaseModal:function(a,b){var c=[],d=[];d.push(window.modalView.createReadOnlyEntry("id_name","Name",a,"")),b?c.push(window.modalView.createDeleteButton("Delete",this.submitDeleteDatabase.bind(this,a))):c.push(window.modalView.createDisabledButton("Delete")),window.modalView.show("modalTable.ejs","Edit database",c,d)},createAddDatabaseModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newDatabaseName","Name","",!1,"Database Name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Database name must start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No database name given."}])),b.push(window.modalView.createTextEntry("newUser","Username",null!==this.users?this.users.whoAmI():"root","Please define the owner of this database. This will be the only user having initial access to this database if authentication is turned on. Please note that if you specify a username different to your account you will not be able to access the database with your account after having creating it. Specifying a username is mandatory even with authentication turned off. If there is a failure you will be informed.","Database Owner",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateDatabase.bind(this))),window.modalView.show("modalTable.ejs","Create Database",a,b)}})}(),function(){"use strict";window.DBSelectionView=Backbone.View.extend({template:templateEngine.createTemplate("dbSelectionView.ejs"),events:{"click .dbSelectionLink":"changeDatabase"},initialize:function(a){this.current=a.current},changeDatabase:function(a){var b=$(a.currentTarget).closest(".dbSelectionLink.tab").attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},render:function(a){return this.$el=a,this.$el.html(this.template.render({list:this.collection.getDatabasesForUser(),current:this.current.get("name")})),this.delegateEvents(),this.el}})}(),function(){"use strict";window.DemoView=Backbone.View.extend({MAPtarget:"M9,0C4.029,0,0,4.029,0,9s4.029,9,9,9s9-4.029,9-9S13.971,0,9,0z M9,15.93 c-3.83,0-6.93-3.1-6.93-6.93S5.17,2.07,9,2.07s6.93,3.1,6.93,6.93S12.83,15.93,9,15.93 M12.5,9c0,1.933-1.567,3.5-3.5,3.5S5.5,10.933,5.5,9S7.067,5.5,9,5.5 S12.5,7.067,12.5,9z",lineColors:["rgb(255,255,229)"],airportColor:"#222222",airportHighlightColor:"#FF4E4E",airportHoverColor:"#ff8f35",airportScale:.7,airportHighligthScale:.95,imageData:[],keyToLongLat:{},queries:[{name:"All Flights from SFO"},{name:"All Flights from JFK"},{name:"All Flights from DFW"},{name:"All Flights from ATL"},{name:"All Flights from CWA"},{name:"Flight distribution"}],el:"#content",initialize:function(a){var b=a.collectionName;this.airportCollection=new window.Airports({collectionName:b})},events:{"change #flightQuerySelect":"runSelectedQuery","keyup #demoSearchInput":"searchInput"},selectAirport:function(a){this.showAirportBalloon(a.currentTarget.id),$("#searchResults").slideUp(function(){$("#searchResults ul").html("")})},template:templateEngine.createTemplate("demoView.ejs"),generateIndex:function(){var a,b=this;b.index=lunr(function(){this.field("Name",{boost:10}),this.field("City"),this.field("_key")}),this.airportCollection.each(function(c){a=c.toJSON(),b.index.add({Name:a.Name,City:a.City,_key:a._key,id:a._key})})},render:function(){$(this.el).html(this.template.render({})),this.renderAvailableQueries();var a=function(){var a,b=[];this.airportCollection.each(function(c){a=c.toJSON(),b.push(a)}),this.imageData=this.prepareData(b),this.renderMap(),this.generateIndex()}.bind(this);return this.airportCollection.getAirports(a),this},renderAvailableQueries:function(){var a=0;_.each(this.queries,function(b){$("#flightQuerySelect").append('"),a++})},searchInput:function(a){var b=this,c=this.index.search($(a.currentTarget).val());b.resetDataHighlighting(),b.removeFlightLines(!0),_.each(c,function(a){b.setAirportColor(a.ref,b.airportHighlightColor,!1),b.setAirportSize(a.ref,b.airportHighligthScale,!1)}),1===c.length&&b.showAirportBalloon(c[0].ref),b.map.validateData()},insertAirportSelection:function(a){},runSelectedQuery:function(){this.resetDataHighlighting(),this.removeFlightLines(!0);var a=$("#flightQuerySelect option:selected").attr("position");"0"===a?this.loadAirportData("SFO"):"1"===a?this.loadAirportData("JFK"):"2"===a&&this.loadAirportData("DFW"),"3"===a&&this.loadAirportData("ATL"),"4"===a&&this.loadAirportData("CWA"),"5"===a&&(delete this.startPoint,this.loadFlightDistData())},calculateAirportSize:function(a,b){var c=this.getMinMax(b),d=(c.min,c.max),e=d/10,f=0,g=0;for(g=0;10>g;g++)if(a.countc&&(c=a.count)}),{min:b,max:c}},loadFlightDistData:function(){var a=this,b=new Date;this.airportCollection.getFlightDistribution(function(c){var d=new Date-b;a.removeFlightLines(!1);var e=0,f=0;a.resetDataHighlighting();var g=Math.pow(c[0].count,3),h=Math.pow(c[c.length-1].count,3),i=2.625/(h-g),j=function(a){return i*a-i*g};for(f=0;fc.length-6&&a.setAirportColor(k,"rgb(153,52,4)")}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var n="";for(n="Aggregation - Flight distribution
Query needed: "+(d/1e3).toFixed(3)+" sec
Number destinations: "+c.length+"
Number flights: "+e+"
Top 5:
",f=c.length-1;f>Math.max(c.length-6,0);--f){ +var o=a.airportCollection.findWhere({_key:c[f].Dest});n+=o.get("Name")+" - "+o.get("_key")+": "+c[f].count+"",f>c.length-5&&(n+="
")}$("#demo-mapdiv-info").html(n),a.map.validateData()})},loadAirportData:function(a){$("#flightQuerySelect :nth-child(1)").prop("selected",!0);var b=this,c=new Date,d=this.airportCollection.findWhere({_key:a});this.airportCollection.getFlightsForAirport(a,function(e){var f=new Date-c;b.removeFlightLines(!1);var g=0,h=0;b.resetDataHighlighting();var i=Math.pow(e[0].count,3),j=Math.pow(e[e.length-1].count,3),k=2.625/(j-i),l=function(a){return k*a-k*i};for(h=0;he.length-6),g+=e[h].count}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var o="";for(o=""+d.get("Name").substr(0,25)+" - "+a+"
Query needed: "+(f/1e3).toFixed(3)+" sec
Number destinations: "+e.length+"
Number flights: "+g+"
Top 5:
",h=e.length-1;h>=Math.max(e.length-5,0);--h)d=b.airportCollection.findWhere({_key:e[h].Dest}),o+=d.get("Name").substr(0,25)+" - "+d.get("_key")+": "+e[h].count+"",h>e.length-5&&(o+="
");$("#demo-mapdiv-info").html(o),b.map.validateData()})},calculateFlightWidth:function(a,b){return 2},calculateFlightColor:function(a,b){return this.lineColors[0]},zoomToAirport:function(a){this.map.zoomToSelectedObject(this.map.getObjectById(a))},showAirportBalloon:function(a){this.map.allowMultipleDescriptionWindows=!0;var b=this.map.getObjectById(a);this.map.rollOverMapObject(b)},hideAirportBalloon:function(a){var b=this.map.getObjectById(a);this.map.rollOutMapObject(b)},setAirportColor:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.color=b)}),c&&this.map.validateData()},setAirportSize:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.scale=b)}),c&&this.map.validateData()},resetDataHighlighting:function(){var a=this;_.each(this.imageData,function(b){b.color=a.airportColor,b.scale=a.airportScale}),$("#demo-mapdiv-info").html("")},prepareData:function(a){var b=this,c=[];return _.each(a,function(a){c.push({id:a._key,latitude:a.Latitude,longitude:a.Longitude,svgPath:b.MAPtarget,color:b.airportColor,scale:b.airportScale,selectedScale:1,title:a.City+" ["+a._key+"]
"+a.Name,rollOverColor:b.airportHoverColor,selectable:!0}),b.keyToLongLat[a._key]={lon:a.Longitude,lat:a.Latitude}}),c.push({color:"#FF0000",lines:[{latitudes:[51.5002,50.4422],longitudes:[-.1262,30.5367]}]}),c},createFlightEntry:function(a,b,c,d,e){return this.keyToLongLat.hasOwnProperty(a)&&this.keyToLongLat.hasOwnProperty(b)?{longitudes:[this.keyToLongLat[a].lon,this.keyToLongLat[b].lon],latitudes:[this.keyToLongLat[a].lat,this.keyToLongLat[b].lat],title:a+" - "+b+"
"+c,color:d,thickness:e}:void 0},loadShortestPath:function(a,b){var c=this,d=new Date;this.airportCollection.getShortestFlight(a,b,function(a){var b=new Date-d;a.vertices||alert("Sorry there is no flight");for(var e=a.vertices,f=0;f
Number switches: "+(e.length-2)+"
Number flights: "+a.edges.length+"
Airports:
",f=0;f"}$("#demo-mapdiv-info").html(i),c.map.validateData()})},renderMap:function(){var a=this;a.lines=[],AmCharts.theme=AmCharts.themes.light,a.map=AmCharts.makeChart("demo-mapdiv",{type:"map",showDescriptionOnHover:!1,dragMap:!0,creditsPosition:"bottom-left",pathToImages:"img/ammap/",dataProvider:{map:"usa2High",lines:a.lines,images:a.imageData,getAreasFromMap:!0},clickMapObject:function(b,c){void 0!==b.id&&3===b.id.length&&(c.shiftKey&&a.hasOwnProperty("startPoint")?(a.resetDataHighlighting(),a.removeFlightLines(!0),a.loadShortestPath(a.startPoint,b.id)):(a.startPoint=b.id,a.loadAirportData(b.id)))},balloon:{adjustBorderColor:!0,balloonColor:"#ffffff",color:"#000000",cornerRadius:5,fillColor:"#ffffff",fillAlpha:.75,borderThickness:1.5,borderColor:"#88A049",borderAlpha:.4,shadowAlpha:0,fontSize:10,verticalPadding:3,horizontalPadding:6},areasSettings:{autoZoom:!1,balloonText:""},linesSettings:{color:"#ff8f35",alpha:.75,thickness:2},linesAboveImages:!1})},removeFlightLines:function(a){this.lines.length=0,a&&this.map.validateData()},addFlightLines:function(a){_.each(a,function(a){this.addFlightLine(a.from,a.to,a.count,a.lineColor,a.lineWidth,!1)})},addFlightLine:function(a,b,c,d,e,f,g,h){var i=this.createFlightEntry(a,b,c,d,e);void 0!==i&&this.lines.push(i),this.setAirportColor(a,"#FFFFFF"),this.setAirportColor(b,this.airportHighlightColor),this.setAirportSize(a,1.5),this.setAirportSize(b,f),g&&this.setAirportColor(b,"rgb(153,52,4)")}})}(),function(){"use strict";var a=function(a){var b=a.split("/");return"collection/"+encodeURIComponent(b[0])+"/"+encodeURIComponent(b[1])};window.DocumentView=Backbone.View.extend({el:"#content",colid:0,docid:0,template:templateEngine.createTemplate("documentView.ejs"),events:{"click #saveDocumentButton":"saveDocument","click #deleteDocumentButton":"deleteDocumentModal","click #confirmDeleteDocument":"deleteDocument","click #document-from":"navigateToDocument","click #document-to":"navigateToDocument"},editor:0,setType:function(a){var b,c;return"edge"===a?(b=this.collection.getEdge(this.colid,this.docid),c="Edge: "):"document"===a&&(b=this.collection.getDocument(this.colid,this.docid),c="Document: "),b===!0?(this.type=a,this.fillInfo(c),this.fillEditor(),!0):void 0},deleteDocumentModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry("doc-delete-button","Delete","Delete this "+this.type+"?",void 0,void 0,!1,/[<>&'"]/)),a.push(window.modalView.createDeleteButton("Delete",this.deleteDocument.bind(this))),window.modalView.show("modalTable.ejs","Delete Document",a,b)},deleteDocument:function(){var a;if("document"===this.type){if(a=this.collection.deleteDocument(this.colid,this.docid),a===!1)return void arangoHelper.arangoError("Document error:","Could not delete")}else if("edge"===this.type&&(a=this.collection.deleteEdge(this.colid,this.docid),a===!1))return void arangoHelper.arangoError("Edge error:","Could not delete");if(a===!0){var b="collection/"+encodeURIComponent(this.colid)+"/documents/1";window.modalView.hide(),window.App.navigate(b,{trigger:!0})}},navigateToDocument:function(a){var b=$(a.target).attr("documentLink");b&&window.App.navigate(b,{trigger:!0})},fillInfo:function(b){var c=this.collection.first(),d=c.get("_id"),e=c.get("_key"),f=c.get("_rev"),g=c.get("_from"),h=c.get("_to");if($("#document-type").text(b),$("#document-id").text(d),$("#document-key").text(e),$("#document-rev").text(f),g&&h){var i=a(g),j=a(h);$("#document-from").text(g),$("#document-from").attr("documentLink",i),$("#document-to").text(h),$("#document-to").attr("documentLink",j)}else $(".edge-info-container").hide()},fillEditor:function(){var a=this.removeReadonlyKeys(this.collection.first().attributes);this.editor.set(a),$(".ace_content").attr("font-size","11pt")},jsonContentChanged:function(){this.enableSaveButton()},render:function(){$(this.el).html(this.template.render({})),this.disableSaveButton(),this.breadcrumb();var a=this,b=document.getElementById("documentEditor"),c={change:function(){a.jsonContentChanged()},search:!0,mode:"tree",modes:["tree","code"]};return this.editor=new window.jsoneditor.JSONEditor(b,c),this},removeReadonlyKeys:function(a){return _.omit(a,["_key","_id","_from","_to","_rev"])},saveDocument:function(){var a,b;try{a=this.editor.get()}catch(c){return this.errorConfirmation(),void this.disableSaveButton()}if(a=JSON.stringify(a),"document"===this.type){if(b=this.collection.saveDocument(this.colid,this.docid,a),b===!1)return void arangoHelper.arangoError("Document error:","Could not save")}else if("edge"===this.type&&(b=this.collection.saveEdge(this.colid,this.docid,a),b===!1))return void arangoHelper.arangoError("Edge error:","Could not save");b===!0&&(this.successConfirmation(),this.disableSaveButton())},successConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},errorConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},enableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!1),$("#saveDocumentButton").addClass("button-success"),$("#saveDocumentButton").removeClass("button-close")},disableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!0),$("#saveDocumentButton").addClass("button-close"),$("#saveDocumentButton").removeClass("button-success")},breadcrumb:function(){var a=window.location.hash.split("/");$("#transparentHeader").append('")},escaped:function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}})}(),function(){"use strict";window.DocumentsView=window.PaginationView.extend({filters:{0:!0},filterId:0,paginationDiv:"#documentsToolbarF",idPrefix:"documents",addDocumentSwitch:!0,activeFilter:!1,lastCollectionName:void 0,restoredFilters:[],editMode:!1,allowUpload:!1,el:"#content",table:"#documentsTableID",template:templateEngine.createTemplate("documentsView.ejs"),collectionContext:{prev:null,next:null},editButtons:["#deleteSelected","#moveSelected"],initialize:function(){this.documentStore=this.options.documentStore,this.collectionsStore=this.options.collectionsStore,this.tableView=new window.TableView({el:this.table,collection:this.collection}),this.tableView.setRowClick(this.clicked.bind(this)),this.tableView.setRemoveClick(this.remove.bind(this))},setCollectionId:function(a,b){this.collection.setCollection(a);var c=arangoHelper.collectionApiType(a);this.pageid=b,this.type=c,this.checkCollectionState(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.collectionModel=this.collectionsStore.get(a)},getDocsCallback:function(){$("#documents_last").css("visibility","hidden"),$("#documents_first").css("visibility","hidden"),this.drawTable(),this.renderPaginationElements()},events:{"click #collectionPrev":"prevCollection","click #collectionNext":"nextCollection","click #filterCollection":"filterCollection","click #markDocuments":"editDocuments","click #indexCollection":"indexCollection","click #importCollection":"importCollection","click #exportCollection":"exportCollection","click #filterSend":"sendFilter","click #addFilterItem":"addFilterItem","click .removeFilterItem":"removeFilterItem","click #deleteSelected":"deleteSelectedDocs","click #moveSelected":"moveSelectedDocs","click #addDocumentButton":"addDocumentModal","click #documents_first":"firstDocuments","click #documents_last":"lastDocuments","click #documents_prev":"prevDocuments","click #documents_next":"nextDocuments","click #confirmDeleteBtn":"confirmDelete","click .key":"nop",keyup:"returnPressedHandler","keydown .queryline input":"filterValueKeydown","click #importModal":"showImportModal","click #resetView":"resetView","click #confirmDocImport":"startUpload","click #exportDocuments":"startDownload","change #newIndexType":"selectIndexType","click #createIndex":"createIndex","click .deleteIndex":"prepDeleteIndex","click #confirmDeleteIndexBtn":"deleteIndex","click #documentsToolbar ul":"resetIndexForms","click #indexHeader #addIndex":"toggleNewIndexView","click #indexHeader #cancelIndex":"toggleNewIndexView","change #documentSize":"setPagesize","change #docsSort":"setSorting"},showSpinner:function(){$("#uploadIndicator").show()},hideSpinner:function(){$("#uploadIndicator").hide()},showImportModal:function(){$("#docImportModal").modal("show")},hideImportModal:function(){$("#docImportModal").modal("hide")},setPagesize:function(){var a=$("#documentSize").find(":selected").val();this.collection.setPagesize(a),this.collection.getDocuments(this.getDocsCallback.bind(this))},setSorting:function(){var a=$("#docsSort").val();(""===a||void 0===a||null===a)&&(a="_key"),this.collection.setSort(a)},returnPressedHandler:function(a){13===a.keyCode&&$(a.target).is($("#docsSort"))&&this.collection.getDocuments(this.getDocsCallback.bind(this)),13===a.keyCode&&$("#confirmDeleteBtn").attr("disabled")===!1&&this.confirmDelete()},toggleNewIndexView:function(){$("#indexEditView").toggle("fast"),$("#newIndexView").toggle("fast"),this.resetIndexForms()},nop:function(a){a.stopPropagation()},resetView:function(){$("input").val(""),$("select").val("=="),this.removeAllFilterItems(),$("#documentSize").val(this.collection.getPageSize()),$("#documents_last").css("visibility","visible"),$("#documents_first").css("visibility","visible"),this.addDocumentSwitch=!0,this.collection.resetFilter(),this.collection.loadTotal(),this.restoredFilters=[],this.allowUpload=!1,this.files=void 0,this.file=void 0,$("#confirmDocImport").attr("disabled",!0),this.markFilterToggle(),this.collection.getDocuments(this.getDocsCallback.bind(this))},startDownload:function(){var a=this.collection.buildDownloadDocumentQuery();""!==a||void 0!==a||null!==a?window.open(encodeURI("query/result/download/"+btoa(JSON.stringify(a)))):arangoHelper.arangoError("Document error","could not download documents")},startUpload:function(){var a;return this.allowUpload===!0?(this.showSpinner(),a=this.collection.uploadDocuments(this.file),a!==!0?(this.hideSpinner(),this.hideImportModal(),this.resetView(),void arangoHelper.arangoError(a)):(this.hideSpinner(),this.hideImportModal(),void this.resetView())):void 0},uploadSetup:function(){var a=this;$("#importDocuments").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],$("#confirmDocImport").attr("disabled",!1),a.allowUpload=!0})},buildCollectionLink:function(a){return"collection/"+encodeURIComponent(a.get("name"))+"/documents/1"},markFilterToggle:function(){this.restoredFilters.length>0?$("#filterCollection").addClass("activated"):$("#filterCollection").removeClass("activated")},editDocuments:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),this.markFilterToggle(),$("#markDocuments").toggleClass("activated"),this.changeEditMode(),$("#filterHeader").hide(),$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").slideToggle(200),$("#exportHeader").hide()},filterCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),this.markFilterToggle(),this.activeFilter=!0,$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide(),$("#filterHeader").slideToggle(200);var a;for(a in this.filters)if(this.filters.hasOwnProperty(a))return void $("#attribute_name"+a).focus()},exportCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#filterHeader").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#exportCollection").toggleClass("activated"),this.markFilterToggle(),$("#exportHeader").slideToggle(200),$("#importHeader").hide(),$("#indexHeader").hide(),$("#filterHeader").hide(),$("#editHeader").hide()},importCollection:function(){this.markFilterToggle(),$("#indexCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#importCollection").toggleClass("activated"),$("#exportCollection").removeClass("activated"),$("#importHeader").slideToggle(200),$("#filterHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide()},indexCollection:function(){this.markFilterToggle(),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#indexCollection").toggleClass("activated"),$("#newIndexView").hide(),$("#indexEditView").show(),$("#indexHeader").slideToggle(200),$("#importHeader").hide(),$("#editHeader").hide(),$("#filterHeader").hide(),$("#exportHeader").hide()},changeEditMode:function(a){a===!1||this.editMode===!0?($("#documentsTableID tbody tr").css("cursor","default"),$(".deleteButton").fadeIn(),$(".addButton").fadeIn(),$(".selected-row").removeClass("selected-row"),this.editMode=!1,this.tableView.setRowClick(this.clicked.bind(this))):($("#documentsTableID tbody tr").css("cursor","copy"),$(".deleteButton").fadeOut(),$(".addButton").fadeOut(),$(".selectedCount").text(0),this.editMode=!0,this.tableView.setRowClick(this.editModeClick.bind(this)))},getFilterContent:function(){var a,b=[];for(a in this.filters)if(this.filters.hasOwnProperty(a)){var c=$("#attribute_value"+a).val();try{c=JSON.parse(c)}catch(d){c=String(c)}""!==$("#attribute_name"+a).val()&&b.push({attribute:$("#attribute_name"+a).val(),operator:$("#operator"+a).val(),value:c})}return b},sendFilter:function(){this.restoredFilters=this.getFilterContent();var a=this;this.collection.resetFilter(),this.addDocumentSwitch=!1,_.each(this.restoredFilters,function(b){void 0!==b.operator&&a.collection.addFilter(b.attribute,b.operator,b.value)}),this.collection.setToFirst(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.markFilterToggle()},restoreFilter:function(){var a=this,b=0;this.filterId=0,$("#docsSort").val(this.collection.getSort()),_.each(this.restoredFilters,function(c){0!==b&&a.addFilterItem(),void 0!==c.operator&&($("#attribute_name"+b).val(c.attribute),$("#operator"+b).val(c.operator),$("#attribute_value"+b).val(c.value)),b++,a.collection.addFilter(c.attribute,c.operator,c.value)})},addFilterItem:function(){var a=++this.filterId;$("#filterHeader").append('
'),this.filters[a]=!0},filterValueKeydown:function(a){13===a.keyCode&&this.sendFilter()},removeFilterItem:function(a){var b=a.currentTarget,c=b.id.replace(/^removeFilter/,"");delete this.filters[c],delete this.restoredFilters[c],$(b.parentElement).remove()},removeAllFilterItems:function(){var a,b=$("#filterHeader").children().length;for(a=1;b>=a;a++)$("#removeFilter"+a).parent().remove();this.filters={0:!0},this.filterId=0},addDocumentModal:function(){var a=window.location.hash.split("/")[1],b=[],c=[],d=arangoHelper.collectionApiType(a,!0);return"edge"===d?(c.push(window.modalView.createTextEntry("new-edge-from-attr","_from","","document _id: document handle of the linked vertex (incoming relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _from attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-to","_to","","document _id: document handle of the linked vertex (outgoing relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _to attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-key-attr","_key",void 0,"the edges unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addEdge.bind(this))),void window.modalView.show("modalTable.ejs","Create edge",b,c)):(c.push(window.modalView.createTextEntry("new-document-key-attr","_key",void 0,"the documents unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addDocument.bind(this))),window.modalView.show("modalTable.ejs","Create document",b,c),void 0)},addEdge:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-edge-from-attr").last().val(),d=$(".modal-body #new-edge-to").last().val(),e=$(".modal-body #new-edge-key-attr").last().val();a=""!==e||void 0!==e?this.documentStore.createTypeEdge(b,c,d,e):this.documentStore.createTypeEdge(b,c,d),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating edge failed")},addDocument:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-document-key-attr").last().val();a=""!==c||void 0!==c?this.documentStore.createTypeDocument(b,c):this.documentStore.createTypeDocument(b),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating document failed")},moveSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createTextEntry("move-documents-to","Move to","",!1,"collection-name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a.push(window.modalView.createSuccessButton("Move",this.confirmMoveSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Move documents",a,b))},confirmMoveSelectedDocs:function(){var a=this.getSelectedDocs(),b=this,c=$(".modal-body").last().find("#move-documents-to").val(),d=function(){this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()}.bind(this);_.each(a,function(a){b.collection.moveDocument(a,b.collection.collectionID,c,d)})},deleteSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createReadOnlyEntry(void 0,c.length+" documents selected","Do you want to delete all selected documents?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.confirmDeleteSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Delete documents",a,b))},confirmDeleteSelectedDocs:function(){var a=this.getSelectedDocs(),b=[],c=this;_.each(a,function(a){var d=!1;"document"===c.type?(d=c.documentStore.deleteDocument(c.collection.collectionID,a),d?(b.push(!0),c.collection.setTotalMinusOne()):(b.push(!1),arangoHelper.arangoError("Document error","Could not delete document."))):"edge"===c.type&&(d=c.documentStore.deleteEdge(c.collection.collectionID,a),d===!0?(c.collection.setTotalMinusOne(),b.push(!0)):(b.push(!1),arangoHelper.arangoError("Edge error","Could not delete edge")))}),this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()},getSelectedDocs:function(){var a=[];return _.each($("#documentsTableID tbody tr"),function(b){$(b).hasClass("selected-row")&&a.push($($(b).children()[1]).find(".key").text())}),a},remove:function(a){this.docid=$(a.currentTarget).closest("tr").attr("id").substr(4),$("#confirmDeleteBtn").attr("disabled",!1),$("#docDeleteModal").modal("show")},confirmDelete:function(){$("#confirmDeleteBtn").attr("disabled",!0);var a=window.location.hash.split("/"),b=a[3];"source"!==b&&this.reallyDelete()},reallyDelete:function(){var a,b=this,c=($(b.target).closest("tr").get(0),!1);"document"===this.type?(a=this.documentStore.deleteDocument(this.collection.collectionID,this.docid),a?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Doc error")):"edge"===this.type&&(a=this.documentStore.deleteEdge(this.collection.collectionID,this.docid),a===!0?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Edge error")),c===!0&&(this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#docDeleteModal").modal("hide"))},editModeClick:function(a){var b=$(a.currentTarget);b.hasClass("selected-row")?b.removeClass("selected-row"):b.addClass("selected-row");var c=this.getSelectedDocs();$(".selectedCount").text(c.length),_.each(this.editButtons,function(a){c.length>0?($(a).prop("disabled",!1),$(a).removeClass("button-neutral"),$(a).removeClass("disabled"),"#moveSelected"===a?$(a).addClass("button-success"):$(a).addClass("button-danger")):($(a).prop("disabled",!0),$(a).addClass("disabled"),$(a).addClass("button-neutral"),"#moveSelected"===a?$(a).removeClass("button-success"):$(a).removeClass("button-danger"))})},clicked:function(a){var b=a.currentTarget;window.App.navigate("collection/"+this.collection.collectionID+"/"+$(b).attr("id").substr(4),!0)},drawTable:function(){this.tableView.setElement($(this.table)).render(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),$(".prettify").snippet("javascript",{style:"nedit",menu:!1,startText:!1,transparent:!0,showNum:!1})},checkCollectionState:function(){this.lastCollectionName===this.collectionName?this.activeFilter&&(this.filterCollection(),this.restoreFilter()):void 0!==this.lastCollectionName&&(this.collection.resetFilter(),this.collection.setSort("_key"),this.restoredFilters=[],this.activeFilter=!1)},render:function(){return $(this.el).html(this.template.render({})),this.tableView.setElement($(this.table)).drawLoading(),this.collectionContext=this.collectionsStore.getPosition(this.collection.collectionID),this.getIndex(),this.breadcrumb(),this.checkCollectionState(),this.lastCollectionName=this.collectionName,this.uploadSetup(),$("[data-toggle=tooltip]").tooltip(),$(".upload-info").tooltip(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),this.renderPaginationElements(),this.selectActivePagesize(),this.markFilterToggle(),this},rerender:function(){this.collection.getDocuments(this.getDocsCallback.bind(this))},selectActivePagesize:function(){$("#documentSize").val(this.collection.getPageSize())},renderPaginationElements:function(){this.renderPagination();var a=$("#totalDocuments");0===a.length&&($("#documentsToolbarFL").append(''),a=$("#totalDocuments")),"document"===this.type&&a.html(this.collection.getTotal()+" document(s)"),"edge"===this.type&&a.html(this.collection.getTotal()+" edge(s)")},breadcrumb:function(){this.collectionName=window.location.hash.split("/")[1],$("#transparentHeader").append('")},resetIndexForms:function(){$("#indexHeader input").val("").prop("checked",!1),$("#newIndexType").val("Cap").prop("selected",!0),this.selectIndexType()},stringToArray:function(a){var b=[];return a.split(",").forEach(function(a){a=a.replace(/(^\s+|\s+$)/g,""),""!==a&&b.push(a)}),b},createIndex:function(){var a,b,c,d,e=this,f=$("#newIndexType").val(),g={};switch(f){case"Cap":var h=parseInt($("#newCapSize").val(),10)||0,i=parseInt($("#newCapByteSize").val(),10)||0;g={type:"cap",size:h,byteSize:i};break;case"Geo":b=$("#newGeoFields").val();var j=e.checkboxToValue("#newGeoJson"),k=e.checkboxToValue("#newGeoConstraint"),l=e.checkboxToValue("#newGeoIgnoreNull");g={type:"geo",fields:e.stringToArray(b),geoJson:j,constraint:k,ignoreNull:l};break;case"Hash":b=$("#newHashFields").val(),c=e.checkboxToValue("#newHashUnique"),d=e.checkboxToValue("#newHashSparse"),g={type:"hash",fields:e.stringToArray(b),unique:c,sparse:d};break;case"Fulltext":b=$("#newFulltextFields").val();var m=parseInt($("#newFulltextMinLength").val(),10)||0;g={type:"fulltext",fields:e.stringToArray(b),minLength:m};break;case"Skiplist":b=$("#newSkiplistFields").val(),c=e.checkboxToValue("#newSkiplistUnique"),d=e.checkboxToValue("#newSkiplistSparse"),g={type:"skiplist",fields:e.stringToArray(b),unique:c,sparse:d}}if(a=e.collectionModel.createIndex(g),a===!0)$("#collectionEditIndexTable tbody tr").remove(),e.getIndex(),e.toggleNewIndexView(),e.resetIndexForms();else if(a.responseText){var n=JSON.parse(a.responseText);arangoHelper.arangoNotification("Document error",n.errorMessage)}else arangoHelper.arangoNotification("Document error","Could not create index.")},prepDeleteIndex:function(a){this.lastTarget=a,this.lastId=$(this.lastTarget.currentTarget).parent().parent().first().children().first().text(),$("#indexDeleteModal").modal("show")},deleteIndex:function(){var a=this.collectionModel.deleteIndex(this.lastId);a===!0?$(this.lastTarget.currentTarget).parent().parent().remove():arangoHelper.arangoError("Could not delete index"),$("#indexDeleteModal").modal("hide")},selectIndexType:function(){$(".newIndexClass").hide();var a=$("#newIndexType").val();$("#newIndexType"+a).show()},checkboxToValue:function(a){return $(a).prop("checked")},getIndex:function(){this.index=this.collectionModel.getIndex();var a="collectionInfoTh modal-text";if(this.index){var b="",c="";$.each(this.index.indexes,function(d,e){c="primary"===e.type||"edge"===e.type?'':'',void 0!==e.fields&&(b=e.fields.join(", "));var f=e.id.indexOf("/"),g=e.id.substr(f+1,e.id.length),h=e.hasOwnProperty("selectivityEstimate")?(100*e.selectivityEstimate).toFixed(2)+"%":"n/a",i=e.hasOwnProperty("sparse")?e.sparse:"n/a";$("#collectionEditIndexTable").append(""+g+""+e.type+""+e.unique+""+i+""+h+""+b+""+c+"")}),arangoHelper.fixTooltips("deleteIndex","left")}}})}(),function(){"use strict";window.EditListEntryView=Backbone.View.extend({template:templateEngine.createTemplate("editListEntryView.ejs"),initialize:function(a){this.key=a.key,this.value=a.value,this.render()},events:{"click .deleteAttribute":"removeRow"},render:function(){$(this.el).html(this.template.render({key:this.key,value:JSON.stringify(this.value),isReadOnly:this.isReadOnly()}))},isReadOnly:function(){return 0===this.key.indexOf("_")},getKey:function(){return $(".key").val()},getValue:function(){var val=$(".val").val();try{val=JSON.parse(val)}catch(e){try{return eval("val = "+val),val}catch(e2){return $(".val").val()}}return val},removeRow:function(){this.remove()}})}(),function(){"use strict";window.FooterView=Backbone.View.extend({el:"#footerBar",system:{},isOffline:!0,isOfflineCounter:0,firstLogin:!0,events:{"click .footer-center p":"showShortcutModal"},initialize:function(){var a=this;window.setInterval(function(){a.getVersion()},15e3),a.getVersion()},template:templateEngine.createTemplate("footerView.ejs"),showServerStatus:function(a){a===!0?($(".serverStatusIndicator").addClass("isOnline"),$(".serverStatusIndicator").addClass("fa-check-circle-o"), +$(".serverStatusIndicator").removeClass("fa-times-circle-o")):($(".serverStatusIndicator").removeClass("isOnline"),$(".serverStatusIndicator").removeClass("fa-check-circle-o"),$(".serverStatusIndicator").addClass("fa-times-circle-o"))},showShortcutModal:function(){window.arangoHelper.hotkeysFunctions.showHotkeysModal()},getVersion:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(b){a.showServerStatus(!0),a.isOffline===!0&&(a.isOffline=!1,a.isOfflineCounter=0,a.firstLogin?a.firstLogin=!1:window.setTimeout(function(){a.showServerStatus(!0)},1e3),a.system.name=b.server,a.system.version=b.version,a.render())},error:function(b){a.isOffline=!0,a.isOfflineCounter++,a.isOfflineCounter>=1&&a.showServerStatus(!1)}}),a.system.hasOwnProperty("database")||$.ajax({type:"GET",cache:!1,url:"/_api/database/current",contentType:"application/json",processData:!1,async:!0,success:function(b){var c=b.result.name;a.system.database=c;var d=window.setInterval(function(){var b=$("#databaseNavi");b&&(window.clearTimeout(d),d=null,"_system"===c?($(".logs-menu").css("visibility","visible"),$(".logs-menu").css("display","inline"),$("#databaseNavi").css("display","inline")):($(".logs-menu").css("visibility","hidden"),$(".logs-menu").css("display","none")),a.render())},50)}})},renderVersion:function(){this.system.hasOwnProperty("database")&&this.system.hasOwnProperty("name")&&$(this.el).html(this.template.render({name:this.system.name,version:this.system.version,database:this.system.database}))},render:function(){return this.system.version||this.getVersion(),$(this.el).html(this.template.render({name:this.system.name,version:this.system.version})),this}})}(),function(){"use strict";window.FoxxActiveView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("foxxActiveView.ejs"),_show:!0,events:{click:"openAppDetailView"},openAppDetailView:function(){window.App.navigate("applications/"+encodeURIComponent(this.model.get("mount")),{trigger:!0})},toggle:function(a,b){switch(a){case"devel":this.model.isDevelopment()&&(this._show=b);break;case"production":this.model.isDevelopment()||this.model.isSystem()||(this._show=b);break;case"system":this.model.isSystem()&&(this._show=b)}this._show?$(this.el).show():$(this.el).hide()},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el)}})}(),function(){"use strict";var a=require("internal").errors,b=templateEngine.createTemplate("applicationListView.ejs"),c=function(a){this.collection=a.collection},d=function(b){if(window.hass=b,b.error===!1)this.collection.fetch({async:!1}),window.modalView.hide(),this.reload();else{var c=b;switch(b.hasOwnProperty("responseJSON")&&(c=b.responseJSON),c.errorNum){case a.ERROR_APPLICATION_DOWNLOAD_FAILED.code:alert("Unable to download application from the given repository.");break;default:alert("Error: "+c.errorNum+". "+c.errorMessage)}}},e=function(){window.modalView.modalBindValidation({id:"new-app-mount",validateInput:function(){return[{rule:Joi.string().regex(/^(\/(APP[^\/]+|(?!APP)[a-zA-Z0-9_\-%]+))+$/i),msg:"May not contain /APP"},{rule:Joi.string().regex(/^(\/[a-zA-Z0-9_\-%]+)+$/),msg:"Can only contain [a-zA-Z0-9_-%]"},{rule:Joi.string().regex(/^\/[^_]/),msg:"Mountpoints with _ are reserved for internal use"},{rule:Joi.string().regex(/[^\/]$/),msg:"May not end with /"},{rule:Joi.string().regex(/^\//),msg:"Has to start with /"},{rule:Joi.string().required().min(2),msg:"Has to be non-empty"}]}})},f=function(){window.modalView.modalBindValidation({id:"repository",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/),msg:"No valid github account and repository."}]}})},g=function(){window.modalView.modalBindValidation({id:"new-app-author",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-name",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z\-_][a-zA-Z0-9\-_]*$/),msg:"Can only contain a to z, A to Z, 0-9, '-' and '_'."}]}}),window.modalView.modalBindValidation({id:"new-app-description",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-license",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9 \.,;\-]+$/),msg:"Has to be non empty."}]}}),window.modalView.modalTestAll()},h=function(a){window.modalView.clearValidators();var b=$(a.currentTarget).attr("href").substr(1),c=$("#modalButton1");switch(this._upgrade||e(),b){case"newApp":c.html("Generate"),c.prop("disabled",!1),g();break;case"appstore":c.html("Install"),c.prop("disabled",!0);break;case"github":f(),c.html("Install"),c.prop("disabled",!1);break;case"zip":c.html("Install"),c.prop("disabled",!1)}c.prop("disabled")||window.modalView.modalTestAll()||c.prop("disabled",!0)},i=function(a){if(window.modalView.modalTestAll()){var b,c;this._upgrade?(b=this.mount,c=$("#new-app-teardown").prop("checked")):b=window.arangoHelper.escapeHtml($("#new-app-mount").val());var e=$(a.currentTarget).attr("appId"),f=$(a.currentTarget).attr("appVersion");void 0!==c?this.collection.installFromStore({name:e,version:f},b,d.bind(this),c):this.collection.installFromStore({name:e,version:f},b,d.bind(this))}},j=function(a,b){if(void 0===b?b=this._uploadData:this._uploadData=b,b&&window.modalView.modalTestAll()){var c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),void 0!==e?this.collection.installFromZip(b.filename,c,d.bind(this),e):this.collection.installFromZip(b.filename,c,d.bind(this))}},k=function(){if(window.modalView.modalTestAll()){var a,b,c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),a=window.arangoHelper.escapeHtml($("#repository").val()),b=window.arangoHelper.escapeHtml($("#tag").val()),""===b&&(b="master");var f={url:window.arangoHelper.escapeHtml($("#repository").val()),version:window.arangoHelper.escapeHtml($("#tag").val())};try{Joi.assert(a,Joi.string().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/))}catch(g){return}void 0!==e?this.collection.installFromGithub(f,c,d.bind(this),e):this.collection.installFromGithub(f,c,d.bind(this))}},l=function(){if(window.modalView.modalTestAll()){var a,b;this._upgrade?(a=this.mount,b=$("#new-app-teardown").prop("checked")):a=window.arangoHelper.escapeHtml($("#new-app-mount").val());var c={name:window.arangoHelper.escapeHtml($("#new-app-name").val()),collectionNames:_.map($("#new-app-collections").select2("data"),function(a){return window.arangoHelper.escapeHtml(a.text)}),author:window.arangoHelper.escapeHtml($("#new-app-author").val()),license:window.arangoHelper.escapeHtml($("#new-app-license").val()),description:window.arangoHelper.escapeHtml($("#new-app-description").val())};void 0!==b?this.collection.generate(c,a,d.bind(this),b):this.collection.generate(c,a,d.bind(this))}},m=function(){var a=$(".modal-body .tab-pane.active").attr("id");switch(a){case"newApp":l.apply(this);break;case"github":k.apply(this);break;case"zip":j.apply(this)}},n=function(a,c){var d=[],e={"click #infoTab a":h.bind(a),"click .install-app":i.bind(a)};d.push(window.modalView.createSuccessButton("Generate",m.bind(a))),window.modalView.show("modalApplicationMount.ejs","Install Service",d,c,void 0,void 0,e),$("#new-app-collections").select2({tags:[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px"}),$("#upload-foxx-zip").uploadFile({url:"/_api/upload?multipart=true",allowedTypes:"zip",multiple:!1,onSuccess:j.bind(a)}),$.get("foxxes/fishbowl",function(a){var c=$("#appstore-content");_.each(_.sortBy(a,"name"),function(a){c.append(b.render(a))})}).fail(function(){var a=$("#appstore-content");a.append("Store is not available. ArangoDB is not able to connect to github.com")})};c.prototype.install=function(a){this.reload=a,this._upgrade=!1,this._uploadData=void 0,delete this.mount,n(this,!1),window.modalView.clearValidators(),e(),g()},c.prototype.upgrade=function(a,b){this.reload=b,this._upgrade=!0,this._uploadData=void 0,this.mount=a,n(this,!0),window.modalView.clearValidators(),g()},window.FoxxInstallView=c}(),function(){"use strict";window.GraphManagementView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("graphManagementView.ejs"),edgeDefintionTemplate:templateEngine.createTemplate("edgeDefinitionTable.ejs"),eCollList:[],removedECollList:[],dropdownVisible:!1,events:{"click #deleteGraph":"deleteGraph","click .icon_arangodb_settings2.editGraph":"editGraph","click #createGraph":"addNewGraph","keyup #graphManagementSearchInput":"search","click #graphManagementSearchSubmit":"search","click .tile-graph":"redirectToGraphViewer","click #graphManagementToggle":"toggleGraphDropdown","click .css-label":"checkBoxes","change #graphSortDesc":"sorting"},redirectToGraphViewer:function(a){var b=$(a.currentTarget).attr("id");b=b.substr(0,b.length-5),window.location=window.location+"/"+encodeURIComponent(b)},loadGraphViewer:function(a){var b=this.collection.get(a).get("edgeDefinitions");if(b&&0!==b.length){var c={type:"gharial",graphName:a,baseUrl:require("internal").arango.databasePrefix("/")},d=$("#content").width()-75;$("#content").html("");var e=arangoHelper.calculateCenterDivHeight();this.ui=new GraphViewerUI($("#content")[0],c,d,e,{nodeShaper:{label:"_key",color:{type:"attribute",key:"_key"}}},!0),$(".contentDiv").height(e)}},handleResize:function(a){this.width&&this.width===a||(this.width=a,this.ui&&this.ui.changeWidth(a))},addNewGraph:function(a){a.preventDefault(),this.createEditGraphModal()},deleteGraph:function(){var a=this,b=$("#editGraphName")[0].value;this.collection.get(b).destroy({success:function(){a.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;arangoHelper.arangoError(d),window.modalView.hide()}})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},toggleGraphDropdown:function(){$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown2").slideToggle(200)},sorting:function(){$("#graphSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#graphManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(){return this.collection.fetch({async:!1}),this.collection.sort(),$(this.el).html(this.template.render({graphs:this.collection,searchString:""})),this.dropdownVisible===!0&&($("#graphManagementDropdown2").show(),$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown").show()),this.events["click .tableRow"]=this.showHideDefinition.bind(this),this.events['change tr[id*="newEdgeDefinitions"]']=this.setFromAndTo.bind(this),this.events["click .graphViewer-icon-button"]=this.addRemoveDefinition.bind(this),arangoHelper.setCheckboxStatus("#graphManagementDropdown"),this},setFromAndTo:function(a){a.stopPropagation();var b,c=this.calculateEdgeDefinitionMap();if(a.added){if(-1===this.eCollList.indexOf(a.added.id)&&-1!==this.removedECollList.indexOf(a.added.id))return b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$('input[id*="newEdgeDefinitions'+b+'"]').select2("val",null),void $('input[id*="newEdgeDefinitions'+b+'"]').attr("placeholder","The collection "+a.added.id+" is already used.");this.removedECollList.push(a.added.id),this.eCollList.splice(this.eCollList.indexOf(a.added.id),1)}else this.eCollList.push(a.removed.id),this.removedECollList.splice(this.removedECollList.indexOf(a.removed.id),1);c[a.val]?(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",c[a.val].from),$("#fromCollections"+b).attr("disabled",!0),$("#s2id_toCollections"+b).select2("val",c[a.val].to),$("#toCollections"+b).attr("disabled",!0)):(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",null),$("#fromCollections"+b).attr("disabled",!1),$("#s2id_toCollections"+b).select2("val",null),$("#toCollections"+b).attr("disabled",!1))},editGraph:function(a){a.stopPropagation(),this.collection.fetch(),this.graphToEdit=this.evaluateGraphName($(a.currentTarget).attr("id"),"_settings");var b=this.collection.findWhere({_key:this.graphToEdit});this.createEditGraphModal(b)},saveEditedGraph:function(){var a,b,c,d,e,f=$("#editGraphName")[0].value,g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i={};if(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){if(d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),0!==b.length&&0!==c.length)){var f={collection:a,from:b,to:c};h.push(f),i[a]=f}}),0===h.length)return void $("#s2id_newEdgeDefinitions0 .select2-choices").css("border-color","red");var j=this.collection.findWhere({_key:f}),k=j.get("edgeDefinitions"),l=j.get("orphanCollections"),m=[];l.forEach(function(a){-1===g.indexOf(a)&&j.deleteVertexCollection(a)}),g.forEach(function(a){-1===l.indexOf(a)&&j.addVertexCollection(a)});var n=[],o=[],p=[];k.forEach(function(a){var b=a.collection;m.push(b);var c=i[b];void 0===c?p.push(b):JSON.stringify(c)!==JSON.stringify(a)&&o.push(b)}),h.forEach(function(a){var b=a.collection;-1===m.indexOf(b)&&n.push(b)}),n.forEach(function(a){j.addEdgeDefinition(i[a])}),o.forEach(function(a){j.modifyEdgeDefinition(i[a])}),p.forEach(function(a){j.deleteEdgeDefinition(a)}),this.updateGraphManagementView(),window.modalView.hide()},evaluateGraphName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},search:function(){var a,b,c,d;a=$("#graphManagementSearchInput"),b=$("#graphManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("_key").indexOf(b)}),$(this.el).html(this.template.render({graphs:d,searchString:b})),a=$("#graphManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},updateGraphManagementView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},createNewGraph:function(){var a,b,c,d,e,f=$("#createNewGraphName").val(),g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i=this;return f?this.collection.findWhere({_key:f})?(arangoHelper.arangoError("The graph '"+f+"' already exists."),0):(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),1!==b&&1!==c&&h.push({collection:a,from:b,to:c}))}),void this.collection.create({name:f,edgeDefinitions:h,orphanCollections:g},{success:function(){i.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;d=d.replace("<",""),d=d.replace(">",""),arangoHelper.arangoError(d)}})):(arangoHelper.arangoError("A name for the graph has to be provided."),0)},createEditGraphModal:function(a){var b,c=[],d=[],e=[],f=this.options.collectionCollection.models,g=this,h="",i=[{collection:"",from:"",to:""}],j="",k=function(a,b){return a=a.toLowerCase(),b=b.toLowerCase(),b>a?-1:a>b?1:0};if(this.eCollList=[],this.removedECollList=[],f.forEach(function(a){a.get("isSystem")||("edge"===a.get("type")?g.eCollList.push(a.id):d.push(a.id))}),window.modalView.enableHotKeys=!1,this.counter=0,a?(b="Edit Graph",h=a.get("_key"),i=a.get("edgeDefinitions"),i&&0!==i.length||(i=[{collection:"",from:"",to:""}]),j=a.get("orphanCollections"),e.push(window.modalView.createReadOnlyEntry("editGraphName","Name",h,"The name to identify the graph. Has to be unique")),c.push(window.modalView.createDeleteButton("Delete",this.deleteGraph.bind(this))),c.push(window.modalView.createSuccessButton("Save",this.saveEditedGraph.bind(this)))):(b="Create Graph",e.push(window.modalView.createTextEntry("createNewGraphName","Name","","The name to identify the graph. Has to be unique.","graphName",!0)),c.push(window.modalView.createSuccessButton("Create",this.createNewGraph.bind(this)))),i.forEach(function(a){0===g.counter?(a.collection&&(g.removedECollList.push(a.collection),g.eCollList.splice(g.eCollList.indexOf(a.collection),1)),e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!0,!1,!0,1,g.eCollList.sort(k)))):e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!1,!0,!1,1,g.eCollList.sort(k))),e.push(window.modalView.createSelect2Entry("fromCollections"+g.counter,"fromCollections",a.from,"The collections that contain the start vertices of the relation.","fromCollections",!0,!1,!1,10,d.sort(k))),e.push(window.modalView.createSelect2Entry("toCollections"+g.counter,"toCollections",a.to,"The collections that contain the end vertices of the relation.","toCollections",!0,!1,!1,10,d.sort(k))),g.counter++}),e.push(window.modalView.createSelect2Entry("newVertexCollections","Vertex collections",j,"Collections that are part of a graph but not used in an edge definition","Vertex Collections",!1,!1,!1,10,d.sort(k))),window.modalView.show("modalGraphTable.ejs",b,c,e,void 0,void 0,this.events),a){var l;for(l=0;l<=this.counter;l++)$("#row_fromCollections"+l).hide(),$("#row_toCollections"+l).hide()}},showHideDefinition:function(a){a.stopPropagation();var b,c=$(a.currentTarget).attr("id");-1!==c.indexOf("row_newEdgeDefinitions")&&(b=c.split("row_newEdgeDefinitions")[1],$("#row_fromCollections"+b).toggle(),$("#row_toCollections"+b).toggle())},addRemoveDefinition:function(a){var b=[],c=this.options.collectionCollection.models;c.forEach(function(a){a.get("isSystem")||b.push(a.id)}),a.stopPropagation();var d,e=$(a.currentTarget).attr("id");return-1!==e.indexOf("addAfter_newEdgeDefinitions")?(this.counter++,$("#row_newVertexCollections").before(this.edgeDefintionTemplate.render({number:this.counter})),$("#newEdgeDefinitions"+this.counter).select2({tags:this.eCollList,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:1}),$("#fromCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),$("#toCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),window.modalView.undelegateEvents(),void window.modalView.delegateEvents(this.events)):void(-1!==e.indexOf("remove_newEdgeDefinitions")&&(d=e.split("remove_newEdgeDefinitions")[1],$("#row_newEdgeDefinitions"+d).remove(),$("#row_fromCollections"+d).remove(),$("#row_toCollections"+d).remove()))},calculateEdgeDefinitionMap:function(){var a={};return this.collection.models.forEach(function(b){b.get("edgeDefinitions").forEach(function(b){a[b.collection]={from:b.from,to:b.to}})}),a}})}(),function(){"use strict";window.GraphTestView=Backbone.View.extend({el:"#content",graphContainer:"graphContainer",template:templateEngine.createTemplate("graphTestView.ejs"),events:{},render:function(){var a=this;$(this.el).html(this.template.render({})),_.each(this.jsonRequestDummy,function(b){a.parseResultOfTraversal(b)}),$("#"+this.graphContainer).height(arangoHelper.calculateCenterDivHeight());var b=Viva.Graph.generator(),c=b.grid(10,10);c=Viva.Graph.graph(),c.Name="ArangoDB Test Graph";for(var d=0;d0&&(m-=1),a.id0&&n.webglUtils.copyArrayPart(l,a.id*i,m*i,i)},replaceProperties:function(a,b){}}},parseResultOfTraversal:function(a,b){var c=this;if(0===a.length||0===a[0].length||0===a[0][0].length)return void(b&&b({errorCode:404}));a=a[0][0];a[0].vertex;_.each(a,function(a){var b=(a.vertex,a.path);_.each(b.vertices,function(a){var b=a;c.jsonNodes.push(b)}),_.each(b.edges,function(a){c.jsonEdges.push(a)})}),b&&b()},jsonNodes:[],jsonEdges:[],jsonRequestDummy:[[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25, +name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949", +_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]]]})}(),function(){"use strict";window.loginView=Backbone.View.extend({el:"#content",el2:".header",el3:".footer",init:function(){},events:{"submit #loginForm":"login"},template:templateEngine.createTemplate("loginView.ejs"),render:function(){return $(this.el).html(this.template.render({})),$(this.el2).hide(),$(this.el3).hide(),$("#loginUsername").focus(),this},login:function(a){a.preventDefault();var b=$("#loginUsername").val(),c=$("#loginPassword").val();b&&(b=this.collection.login(b,c),b&&($(this.el2).show(),$(this.el3).show(),window.location.reload(),$("#currentUser").text(b),this.collection.loadUserSettings()))}})}(),function(){"use strict";window.LogsView=window.PaginationView.extend({el:"#content",id:"#logContent",paginationDiv:"#logPaginationDiv",idPrefix:"logTable",fetchedAmount:!1,initialize:function(){this.convertModelToJSON()},currentLoglevel:"logall",events:{"click #arangoLogTabbar button":"setActiveLoglevel","click #logTable_first":"firstPage","click #logTable_last":"lastPage"},template:templateEngine.createTemplate("logsView.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbarElements:{id:"arangoLogTabbar",titles:[["Debug","logdebug"],["Warning","logwarning"],["Error","logerror"],["Info","loginfo"],["All","logall"]]},tableDescription:{id:"arangoLogTable",titles:["Loglevel","Date","Message"],rows:[]},convertedRows:null,setActiveLoglevel:function(a){$(".arangodb-tabbar").removeClass("arango-active-tab"),this.currentLoglevel!==a.currentTarget.id&&(this.currentLoglevel=a.currentTarget.id,this.convertModelToJSON())},initTotalAmount:function(){var a=this;this.collection=this.options[this.currentLoglevel],this.collection.fetch({data:$.param({test:!0}),success:function(){a.convertModelToJSON()}}),this.fetchedAmount=!0},invertArray:function(a){var b,c=[],d=0;for(b=a.length-1;b>=0;b--)c[d]=a[b],d++;return c},convertModelToJSON:function(){if(!this.fetchedAmount)return void this.initTotalAmount();var a,b=this,c=[];this.collection=this.options[this.currentLoglevel],this.collection.fetch({success:function(){b.collection.each(function(b){a=new Date(1e3*b.get("timestamp")),c.push([b.getLogStatus(),arangoHelper.formatDT(a),b.get("text")])}),b.tableDescription.rows=b.invertArray(c),b.render()}})},render:function(){return $(this.el).html(this.template.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#"+this.currentLoglevel).addClass("arango-active-tab"),$("#logContent").append('
'),this.renderPagination(),this},rerender:function(){this.convertModelToJSON()}})}(),function(){"use strict";var a=function(a,b,c,d){return{type:a,title:b,callback:c,confirm:d}},b=function(a,b,c,d,e,f,g,h,i,j,k){var l={type:a,label:b};return void 0!==c&&(l.value=c),void 0!==d&&(l.info=d),void 0!==e&&(l.placeholder=e),void 0!==f&&(l.mandatory=f),void 0!==h&&(l.addDelete=h),void 0!==i&&(l.addAdd=i),void 0!==j&&(l.maxEntrySize=j),void 0!==k&&(l.tags=k),g&&(l.validateInput=function(){return g}),l};window.ModalView=Backbone.View.extend({_validators:[],_validateWatchers:[],baseTemplate:templateEngine.createTemplate("modalBase.ejs"),tableTemplate:templateEngine.createTemplate("modalTable.ejs"),el:"#modalPlaceholder",contentEl:"#modalContent",hideFooter:!1,confirm:{list:"#modal-delete-confirmation",yes:"#modal-confirm-delete",no:"#modal-abort-delete"},enabledHotkey:!1,enableHotKeys:!0,buttons:{SUCCESS:"success",NOTIFICATION:"notification",DELETE:"danger",NEUTRAL:"neutral",CLOSE:"close"},tables:{READONLY:"readonly",TEXT:"text",BLOB:"blob",PASSWORD:"password",SELECT:"select",SELECT2:"select2",CHECKBOX:"checkbox"},initialize:function(){Object.freeze(this.buttons),Object.freeze(this.tables)},createModalHotkeys:function(){$(this.el).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("input",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("select",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()})},createInitModalHotkeys:function(){var a=this;$(this.el).bind("keydown","left",function(){a.navigateThroughButtons("left")}),$(this.el).bind("keydown","right",function(){a.navigateThroughButtons("right")})},navigateThroughButtons:function(a){var b=$(".modal-footer button").is(":focus");b===!1?"left"===a?$(".modal-footer button").first().focus():"right"===a&&$(".modal-footer button").last().focus():b===!0&&("left"===a?$(":focus").prev().focus():"right"===a&&$(":focus").next().focus())},createCloseButton:function(b,c){var d=this;return a(this.buttons.CLOSE,b,function(){d.hide(),c&&c()})},createSuccessButton:function(b,c){return a(this.buttons.SUCCESS,b,c)},createNotificationButton:function(b,c){return a(this.buttons.NOTIFICATION,b,c)},createDeleteButton:function(b,c,d){return a(this.buttons.DELETE,b,c,d)},createNeutralButton:function(b,c){return a(this.buttons.NEUTRAL,b,c)},createDisabledButton:function(b){var c=a(this.buttons.NEUTRAL,b);return c.disabled=!0,c},createReadOnlyEntry:function(a,c,d,e,f,g){var h=b(this.tables.READONLY,c,d,e,void 0,void 0,void 0,f,g);return h.id=a,h},createTextEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.TEXT,c,d,e,f,g,h);return i.id=a,i},createBlobEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.BLOB,c,d,e,f,g,h);return i.id=a,i},createSelect2Entry:function(a,c,d,e,f,g,h,i,j,k){var l=b(this.tables.SELECT2,c,d,e,f,g,void 0,h,i,j,k);return l.id=a,l},createPasswordEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.PASSWORD,c,d,e,f,g,h);return i.id=a,i},createCheckboxEntry:function(a,c,d,e,f){var g=b(this.tables.CHECKBOX,c,d,e);return g.id=a,f&&(g.checked=f),g},createSelectEntry:function(a,c,d,e,f){var g=b(this.tables.SELECT,c,null,e);return g.id=a,d&&(g.selected=d),g.options=f,g},createOptionEntry:function(a,b){return{label:a,value:b||a}},show:function(a,b,c,d,e,f,g,h){var i,j,k=this,l=!1;c=c||[],h=Boolean(h),this.clearValidators(),c.length>0?(c.forEach(function(a){a.type===k.buttons.CLOSE&&(l=!0),a.type===k.buttons.DELETE&&(j=j||a.confirm)}),l||(i=c.pop(),c.push(k.createCloseButton("Cancel")),c.push(i))):c.push(k.createCloseButton("Dismiss")),$(this.el).html(this.baseTemplate.render({title:b,buttons:c,hideFooter:this.hideFooter,confirm:j})),_.each(c,function(a,b){return!a.disabled&&a.callback?a.type!==k.buttons.DELETE||h?void $("#modalButton"+b).bind("click",a.callback):void $("#modalButton"+b).bind("click",function(){$(k.confirm.yes).unbind("click"),$(k.confirm.yes).bind("click",a.callback),$(k.confirm.list).css("display","block")}):void 0}),$(this.confirm.no).bind("click",function(){$(k.confirm.list).css("display","none")});var m=templateEngine.createTemplate(a);$(".modal-body").html(m.render({content:d,advancedContent:e,info:f})),$(".modalTooltips").tooltip({position:{my:"left top",at:"right+55 top-1"}});var n=d||[];e&&e.content&&(n=n.concat(e.content)),_.each(n,function(a){k.modalBindValidation(a),a.type===k.tables.SELECT2&&$("#"+a.id).select2({tags:a.tags||[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:a.maxEntrySize||8})}),g&&(this.events=g,this.delegateEvents()),$("#modal-dialog").modal("show"),this.enabledHotkey===!1&&(this.createInitModalHotkeys(),this.enabledHotkey=!0),this.enableHotKeys&&this.createModalHotkeys();var o=$("#modal-dialog").find("input");o&&setTimeout(function(){var a=$("#modal-dialog");a.length>0&&(a=a.find("input"),a.length>0&&$(a[0]).focus())},800)},modalBindValidation:function(a){var b=this;if(a.hasOwnProperty("id")&&a.hasOwnProperty("validateInput")){var c=function(){var b=$("#"+a.id),c=a.validateInput(b),d=!1;return _.each(c,function(a){var c=b.val();if(a.rule||(a={rule:a}),"function"==typeof a.rule)try{a.rule(c)}catch(e){d=a.msg||e.message}else{var f=Joi.validate(c,a.rule);f.error&&(d=a.msg||f.error.message)}return d?!1:void 0}),d?d:void 0},d=$("#"+a.id);d.on("keyup focusout",function(){var a=c(),e=d.next()[0];a?(d.addClass("invalid-input"),e?$(e).text(a):d.after('

'+a+"

"),$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled")):(d.removeClass("invalid-input"),e&&$(e).remove(),b.modalTestAll())}),this._validators.push(c),this._validateWatchers.push(d)}},modalTestAll:function(){var a=_.map(this._validators,function(a){return a()}),b=_.any(a);return b?$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled"):$(".modal-footer .button-success").prop("disabled",!1).removeClass("disabled"),!b},clearValidators:function(){this._validators=[],_.each(this._validateWatchers,function(a){a.unbind("keyup focusout")}),this._validateWatchers=[]},hide:function(){this.clearValidators(),$("#modal-dialog").modal("hide")}})}(),function(){"use strict";window.NavigationView=Backbone.View.extend({el:"#navigationBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown"},initialize:function(){this.userCollection=this.options.userCollection,this.currentDB=this.options.currentDB,this.dbSelectionView=new window.DBSelectionView({collection:this.options.database,current:this.currentDB}),this.userBarView=new window.UserBarView({userCollection:this.userCollection}),this.notificationView=new window.NotificationView({collection:this.options.notificationCollection}),this.statisticBarView=new window.StatisticBarView({currentDB:this.currentDB}),this.handleKeyboardHotkeys()},handleSelectDatabase:function(){this.dbSelectionView.render($("#dbSelect"))},template:templateEngine.createTemplate("navigationView.ejs"),render:function(){return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),this.dbSelectionView.render($("#dbSelect")),this.notificationView.render($("#notificationBar")),this.userCollection.whoAmI()&&this.userBarView.render(),this.statisticBarView.render($("#statisticBar")),window.App.arangoCollectionsStore.findWhere({name:"arangodbflightsdemo"})||$(".demo-menu").css("display","none"),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},handleKeyboardHotkeys:function(){arangoHelper.enableKeyboardHotkeys(!0)},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return""===c&&(c=$(b).attr("class")),"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):"dbselection"===c?($("#dbs_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){var a=this;$("#arangoCollectionSelect").change(function(){a.navigateBySelect()})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c||"link_dropdown"===c?void $("#link_dropdown").show(200):"tools"===c||"tools_dropdown"===c?void $("#tools_dropdown").show(200):"dbselection"===c||"dbs_dropdown"===c?void $("#dbs_dropdown").show(200):void 0},hideDropdown:function(a){var b=a.target||a.srcElement;b=$(b).closest(".dropdown");var c=b.attr("id");return"linkDropdown"===c?void $("#link_dropdown").hide():"toolsDropdown"===c?void $("#tools_dropdown").hide():"dbSelect"===c?void $("#dbs_dropdown").hide():void 0}})}(),function(){"use strict";window.NotificationView=Backbone.View.extend({events:{"click .navlogo #stat_hd":"toggleNotification","click .notificationItem .fa":"removeNotification","click #removeAllNotifications":"removeAllNotifications"},initialize:function(){this.collection.bind("add",this.renderNotifications.bind(this)),this.collection.bind("remove",this.renderNotifications.bind(this)),this.collection.bind("reset",this.renderNotifications.bind(this))},notificationItem:templateEngine.createTemplate("notificationItem.ejs"),el:"#notificationBar",template:templateEngine.createTemplate("notificationView.ejs"),toggleNotification:function(){var a=this.collection.length;0!==a&&$("#notification_menu").toggle()},removeAllNotifications:function(){this.collection.reset(),$("#notification_menu").hide()},removeNotification:function(a){var b=a.target.id;this.collection.get(b).destroy()},renderNotifications:function(){$("#stat_hd_counter").text(this.collection.length),0===this.collection.length?($("#stat_hd").removeClass("fullNotification"),$("#notification_menu").hide()):$("#stat_hd").addClass("fullNotification"),$(".innerDropdownInnerUL").html(this.notificationItem.render({notifications:this.collection}))},render:function(){return $(this.el).html(this.template.render({notifications:this.collection})),this.renderNotifications(),this.delegateEvents(),this.el}})}(),function(){"use strict";window.ProgressView=Backbone.View.extend({template:templateEngine.createTemplate("progressBase.ejs"),el:"#progressPlaceholder",el2:"#progressPlaceholderIcon",toShow:!1,lastDelay:0,action:function(){},events:{"click .progress-action button":"performAction"},performAction:function(){window.progressView.hide()},initialize:function(){},showWithDelay:function(a,b,c,d){var e=this;e.toShow=!0,e.lastDelay=a,setTimeout(function(){e.toShow===!0&&e.show(b,c,d)},e.lastDelay)},show:function(a,b,c){$(this.el).html(this.template.render({})),$(".progress-text").text(a),$(".progress-action").html(''),this.action=this.hide(),$(this.el).show()},hide:function(){var a=this;a.toShow=!1,$(this.el).hide(),this.action=function(){}}})}(),function(){"use strict";window.queryManagementView=Backbone.View.extend({el:"#content",id:"#queryManagementContent",templateActive:templateEngine.createTemplate("queryManagementViewActive.ejs"),templateSlow:templateEngine.createTemplate("queryManagementViewSlow.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),initialize:function(){this.activeCollection=new window.QueryManagementActive,this.slowCollection=new window.QueryManagementSlow,this.convertModelToJSON(!0)},events:{"click #arangoQueryManagementTabbar button":"switchTab","click #deleteSlowQueryHistory":"deleteSlowQueryHistoryModal","click #arangoQueryManagementTable .fa-minus-circle":"deleteRunningQueryModal"},tabbarElements:{id:"arangoQueryManagementTabbar",titles:[["Active","activequeries"],["Slow","slowqueries"]]},tableDescription:{id:"arangoQueryManagementTable",titles:["ID","Query String","Runtime","Started",""],rows:[],unescaped:[!1,!1,!1,!1,!0]},switchTab:function(a){"activequeries"===a.currentTarget.id?this.convertModelToJSON(!0):"slowqueries"===a.currentTarget.id&&this.convertModelToJSON(!1)},deleteRunningQueryModal:function(a){this.killQueryId=$(a.currentTarget).attr("data-id");var b=[],c=[];c.push(window.modalView.createReadOnlyEntry(void 0,"Running Query","Do you want to kill the running query?",void 0,void 0,!1,void 0)),b.push(window.modalView.createDeleteButton("Kill",this.killRunningQuery.bind(this))),window.modalView.show("modalTable.ejs","Kill Running Query",b,c),$(".modal-delete-confirmation strong").html("Really kill?")},killRunningQuery:function(){this.collection.killRunningQuery(this.killQueryId,this.killRunningQueryCallback.bind(this)),window.modalView.hide()},killRunningQueryCallback:function(){this.convertModelToJSON(!0),this.renderActive()},deleteSlowQueryHistoryModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry(void 0,"Slow Query Log","Do you want to delete the slow query log entries?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.deleteSlowQueryHistory.bind(this))),window.modalView.show("modalTable.ejs","Delete Slow Query Log",a,b)},deleteSlowQueryHistory:function(){this.collection.deleteSlowQueryHistory(this.slowQueryCallback.bind(this)),window.modalView.hide()},slowQueryCallback:function(){this.convertModelToJSON(!1),this.renderSlow()},render:function(){this.convertModelToJSON(!0)},renderActive:function(){this.$el.html(this.templateActive.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#activequeries").addClass("arango-active-tab")},renderSlow:function(){this.$el.html(this.templateSlow.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#slowqueries").addClass("arango-active-tab")},convertModelToJSON:function(a){var b=this,c=[];a===!0?this.collection=this.activeCollection:this.collection=this.slowCollection,this.collection.fetch({success:function(){b.collection.each(function(b){var d="";a&&(d=''),c.push([b.get("id"),b.get("query"),b.get("runTime").toFixed(2)+" s",b.get("started"),d])});var d="No running queries.";a||(d="No slow queries."),0===c.length&&c.push([d,"","",""]),b.tableDescription.rows=c,a?b.renderActive():b.renderSlow()}})}})}(),function(){"use strict";window.queryView=Backbone.View.extend({el:"#content",id:"#customsDiv",warningTemplate:templateEngine.createTemplate("warningList.ejs"),tabArray:[],execPending:!1,initialize:function(){this.refreshAQL(),this.tableDescription.rows=this.customQueries},events:{"click #result-switch":"switchTab","click #query-switch":"switchTab","click #customs-switch":"switchTab","click #submitQueryButton":"submitQuery","click #explainQueryButton":"explainQuery","click #commentText":"commentText","click #uncommentText":"uncommentText","click #undoText":"undoText","click #redoText":"redoText","click #smallOutput":"smallOutput","click #bigOutput":"bigOutput","click #clearOutput":"clearOutput","click #clearInput":"clearInput","click #clearQueryButton":"clearInput","click #addAQL":"addAQL","mouseover #querySelect":function(){this.refreshAQL(!0)},"change #querySelect":"importSelected","keypress #aqlEditor":"aqlShortcuts","click #arangoQueryTable .table-cell0":"editCustomQuery","click #arangoQueryTable .table-cell1":"editCustomQuery","click #arangoQueryTable .table-cell2 a":"deleteAQL","click #confirmQueryImport":"importCustomQueries","click #confirmQueryExport":"exportCustomQueries","click #downloadQueryResult":"downloadQueryResult","click #importQueriesToggle":"showImportMenu"},showImportMenu:function(a){$("#importQueriesToggle").toggleClass("activated"),$("#importHeader").slideToggle(200)},createCustomQueryModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("new-query-name","Name","",void 0,void 0,!1,[{rule:Joi.string().required(),msg:"No query name given."}])),a.push(window.modalView.createSuccessButton("Save",this.saveAQL.bind(this))),window.modalView.show("modalTable.ejs","Save Query",a,b,void 0,void 0,{"keyup #new-query-name":this.listenKey.bind(this)})},updateTable:function(){this.tableDescription.rows=this.customQueries,_.each(this.tableDescription.rows,function(a){a.thirdRow=''}),this.tableDescription.unescaped=[!1,!1,!0],this.$(this.id).html(this.table.render({content:this.tableDescription}))},editCustomQuery:function(a){var b=$(a.target).parent().children().first().text(),c=ace.edit("aqlEditor");c.setValue(this.getCustomQueryValueByName(b)),this.deselect(c),$("#querySelect").val(b),this.switchTab("query-switch")},initTabArray:function(){var a=this;$(".arango-tab").children().each(function(){a.tabArray.push($(this).children().first().attr("id"))})},listenKey:function(a){13===a.keyCode&&this.saveAQL(a),this.checkSaveName()},checkSaveName:function(){var a=$("#new-query-name").val();if("Insert Query"===a)return void $("#new-query-name").val("");var b=this.customQueries.some(function(b){return b.name===a});b?($("#modalButton1").removeClass("button-success"),$("#modalButton1").addClass("button-warning"),$("#modalButton1").text("Update")):($("#modalButton1").removeClass("button-warning"),$("#modalButton1").addClass("button-success"),$("#modalButton1").text("Save"))},clearOutput:function(){var a=ace.edit("queryOutput");a.setValue("")},clearInput:function(){var a=ace.edit("aqlEditor");this.setCachedQuery(a.getValue()),a.setValue("")},smallOutput:function(){var a=ace.edit("queryOutput");a.getSession().foldAll()},bigOutput:function(){var a=ace.edit("queryOutput");a.getSession().unfold()},aqlShortcuts:function(a){a.ctrlKey&&13===a.keyCode?this.submitQuery():a.metaKey&&!a.ctrlKey&&13===a.keyCode&&this.submitQuery()},queries:[],customQueries:[],tableDescription:{id:"arangoQueryTable",titles:["Name","Content",""],rows:[]},template:templateEngine.createTemplate("queryView.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),render:function(){var a=this;this.$el.html(this.template.render({})),this.$(this.id).html(this.table.render({content:this.tableDescription}));var b=1e3,c=$("#querySize");c.empty(),[100,250,500,1e3,2500,5e3,1e4].forEach(function(a){c.append('")});var d=ace.edit("queryOutput");d.setReadOnly(!0),d.setHighlightActiveLine(!1),d.getSession().setMode("ace/mode/json"),d.setFontSize("16px"),d.setValue("");var e=ace.edit("aqlEditor");e.getSession().setMode("ace/mode/aql"),e.setFontSize("16px"),e.commands.addCommand({name:"togglecomment",bindKey:{win:"Ctrl-Shift-C",linux:"Ctrl-Shift-C",mac:"Command-Shift-C"},exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEach"});var f=this.getCachedQuery();null!==f&&void 0!==f&&""!==f&&e.setValue(f),e.getSession().selection.on("changeCursor",function(b){var c=ace.edit("aqlEditor"),d=c.getSession(),e=c.getCursorPosition(),f=d.getTokenAt(e.row,e.column);f&&("comment"===f.type?$("#commentText i").removeClass("fa-comment").addClass("fa-comment-o").attr("data-original-title","Uncomment"):$("#commentText i").removeClass("fa-comment-o").addClass("fa-comment").attr("data-original-title","Comment")),a.setCachedQuery(c.getValue())}),$("#queryOutput").resizable({handles:"s",ghost:!0,stop:function(){setTimeout(function(){var a=ace.edit("queryOutput");a.resize()},200)}}),arangoHelper.fixTooltips(".queryTooltips, .icon_arangodb","top"),$("#aqlEditor .ace_text-input").focus();var g=$(window).height()-295;return $("#aqlEditor").height(g-19),$("#queryOutput").height(g),e.resize(),d.resize(),this.initTabArray(),this.renderSelectboxes(),this.deselect(d),this.deselect(e),$("#queryDiv").show(),$("#customsDiv").show(),this.initQueryImport(),this.switchTab("query-switch"),this},getCachedQuery:function(){if("undefined"!=typeof Storage){var a=localStorage.getItem("cachedQuery");if(void 0!==a){var b=JSON.parse(a);return b}}},setCachedQuery:function(a){"undefined"!=typeof Storage&&localStorage.setItem("cachedQuery",JSON.stringify(a))},initQueryImport:function(){var a=this;a.allowUpload=!1,$("#importQueries").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],a.allowUpload=!0})},importCustomQueries:function(){var a=this;if(this.allowUpload===!0){var b=function(){this.collection.fetch({async:!1}),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable(),a.allowUpload=!1,$("#customs-switch").click()};a.collection.saveImportQueries(a.file,b.bind(this))}},downloadQueryResult:function(){var a=ace.edit("aqlEditor"),b=a.getValue();""!==b||void 0!==b||null!==b?window.open("query/result/download/"+encodeURIComponent(btoa(JSON.stringify({query:b})))):arangoHelper.arangoError("Query error","could not query result.")},exportCustomQueries:function(){var a,b={},c=[];_.each(this.customQueries,function(a,b){c.push({name:a.name,value:a.value})}),b={extra:{queries:c}},$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user,(null===a||a===!1)&&(a="root")}),window.open("query/download/"+encodeURIComponent(a))},deselect:function(a){var b=a.getSelection(),c=b.lead.row,d=b.lead.column;b.setSelectionRange({start:{row:c,column:d},end:{row:c,column:d}}),a.focus()},addAQL:function(){this.refreshAQL(!0),this.createCustomQueryModal(),$("#new-query-name").val($("#querySelect").val()),setTimeout(function(){$("#new-query-name").focus()},500),this.checkSaveName()},getAQL:function(){var a,b=this;this.collection.fetch({async:!1});var c=localStorage.getItem("customQueries");if(c){var d=JSON.parse(c);_.each(d,function(a){b.collection.add({value:a.value,name:a.name})}),a=b.collection.saveCollectionQueries(),a===!0&&localStorage.removeItem("customQueries")}this.updateLocalQueries()},deleteAQL:function(a){var b=$(a.target).parent().parent().parent().children().first().text(),c=this.collection.findWhere({name:b});this.collection.remove(c),this.collection.saveCollectionQueries(),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable()},updateLocalQueries:function(){var a=this;this.customQueries=[],this.collection.each(function(b){a.customQueries.push({name:b.get("name"),value:b.get("value")})})},saveAQL:function(a){a.stopPropagation(),this.refreshAQL();var b=ace.edit("aqlEditor"),c=$("#new-query-name").val(),d="Update"===$("#modalButton1").text();if(!$("#new-query-name").hasClass("invalid-input")&&""!==c.trim()){var e=b.getValue(),f=!1;if($.each(this.customQueries,function(a,b){return b.name===c?(b.value=e,void(f=!d)):void 0}),f===!0)return void window.modalView.hide();if(d){var g=this.collection.findWhere({name:c});g.set("value",e)}else this.collection.add({name:c,value:e});this.collection.saveCollectionQueries(),window.modalView.hide(),this.updateLocalQueries(),this.renderSelectboxes(),$("#querySelect").val(c)}},getSystemQueries:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"js/arango/aqltemplates.json",contentType:"application/json",processData:!1,async:!1,success:function(b){a.queries=b},error:function(a){arangoHelper.arangoNotification("Query","Error while loading system templates")}})},getCustomQueryValueByName:function(a){var b;return $.each(this.customQueries,function(c,d){a===d.name&&(b=d.value)}),b},refreshAQL:function(a){if(this.getAQL(),this.getSystemQueries(),this.updateLocalQueries(),a){var b=$("#querySelect").val();this.renderSelectboxes(),$("#querySelect").val(b)}},importSelected:function(a){var b=ace.edit("aqlEditor");$.each(this.queries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),$.each(this.customQueries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),this.deselect(ace.edit("aqlEditor"))},renderSelectboxes:function(){this.sortQueries();var a="";a="#querySelect",$(a).empty(),$(a).append(''),$(a).append(''),jQuery.each(this.queries,function(b,c){$(a).append('")}),$(a).append(""),this.customQueries.length>0&&($(a).append(''),jQuery.each(this.customQueries,function(b,c){$(a).append('")}),$(a).append(""))},undoText:function(){var a=ace.edit("aqlEditor");a.undo()},redoText:function(){var a=ace.edit("aqlEditor");a.redo()},commentText:function(){var a=ace.edit("aqlEditor");a.toggleCommentLines()},sortQueries:function(){this.queries=_.sortBy(this.queries,"name"),this.customQueries=_.sortBy(this.customQueries,"name")},abortQuery:function(){},readQueryData:function(){var a=ace.edit("aqlEditor"),b=a.session.getTextRange(a.getSelectionRange()),c=$("#querySize"),d={query:b||a.getValue(),batchSize:parseInt(c.val(),10),id:"currentFrontendQuery"};return JSON.stringify(d)},heatmapColors:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"],heatmap:function(a){return this.heatmapColors[Math.floor(10*a)]},followQueryPath:function(a,b){var c={},d=0;c[b[0].id]=a;var e,f,g,h;for(e=1;e0&&(f+="Warnings:\r\n\r\n",d.extra.warnings.forEach(function(a){f+="["+a.code+"], '"+a.message+"'\r\n"})),""!==f&&(f+="\r\nResult:\r\n\r\n"),c.setValue(f+JSON.stringify(d.result,void 0,2)),b.switchTab("result-switch"),window.progressView.hide(),b.deselect(c),$("#downloadQueryResult").show(),"function"==typeof a&&a()},error:function(d){b.switchTab("result-switch"),$("#downloadQueryResult").hide();try{var e=JSON.parse(d.responseText);c.setValue("["+e.errorNum+"] "+e.errorMessage),arangoHelper.arangoError("Query error",e.errorNum)}catch(f){c.setValue("ERROR"),arangoHelper.arangoError("Query error","ERROR")}window.progressView.hide(), +"function"==typeof a&&a()}})},submitQuery:function(){var a=ace.edit("queryOutput");this.fillResult(this.switchTab.bind(this,"result-switch")),a.resize();var b=ace.edit("aqlEditor");this.deselect(b)},explainQuery:function(){this.fillExplain()},switchTab:function(a){var b;b="string"==typeof a?a:a.target.id;var c=this,d=function(a){var d="#"+a.replace("-switch",""),e="#tabContent"+d.charAt(1).toUpperCase()+d.substr(2);a===b?($("#"+a).parent().addClass("active"),$(d).addClass("active"),$(e).show(),"query-switch"===b?$("#aqlEditor .ace_text-input").focus():"result-switch"===b&&c.execPending&&c.fillResult()):($("#"+a).parent().removeClass("active"),$(d).removeClass("active"),$(e).hide())};this.tabArray.forEach(d),this.updateTable()}})}(),function(){"use strict";window.shellView=Backbone.View.extend({resizing:!1,el:"#content",template:templateEngine.createTemplate("shellView.ejs"),render:function(){$(this.el).html(this.template.render({})),this.replShell(),$("#shell_workspace").trigger("resize",[150]),this.resize();var a=this;return $(window).resize(function(){a.resize()}),this.executeJs("start_pretty_print(); try { db._collections(); } catch (err) { } undefined;"),this},resize:function(){if(!this.resizing){this.resizing=!0;var a=$(window).height()-250;$("#shell_workspace").height(a),this.resizing=!1}},executeJs:function(a){var b=require("internal");try{var c=window.eval(a);void 0!==c&&(b.browserOutputBuffer="",b.printShell.apply(b.printShell,[c]),jqconsole.Write("==> "+b.browserOutputBuffer+"\n","jssuccess")),b.browserOutputBuffer=""}catch(d){d instanceof b.ArangoError?d.hasOwnProperty("errorMessage")?jqconsole.Write(d.errorMessage+"\n","jserror"):jqconsole.Write(d.message+"\n","jserror"):jqconsole.Write(d.name+": "+d.message+"\n","jserror")}},replShellPromptHelper:function(a){try{new Function(a)}catch(b){return/[\[\{\(]$/.test(a)?1:0}return!1},replShellHandlerHelper:function(a){},replShell:function(){var a=this,b=require("internal"),c=require("org/arangodb/arangosh"),d="Welcome to arangosh. Copyright (c) ArangoDB GmbH\n";window.jqconsole=$("#replShell").jqconsole(d,"JSH> ","...>"),this.executeJs(b.print(c.HELP)),jqconsole.RegisterShortcut("Z",function(){jqconsole.AbortPrompt(),e()}),jqconsole.RegisterShortcut("E",function(){jqconsole.MoveToEnd(),e()}),jqconsole.RegisterMatching("{","}","brace"),jqconsole.RegisterMatching("(",")","paren"),jqconsole.RegisterMatching("[","]","bracket");var e=function(b){"help"===b&&(b=help()),"exit"===b&&location.reload(),a.executeJs(b),jqconsole.Prompt(!0,e,a.replShellPromptHelper(b))};e()}})}(),function(){"use strict";window.StatisticBarView=Backbone.View.extend({el:"#statisticBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab"},template:templateEngine.createTemplate("statisticBarView.ejs"),initialize:function(){this.currentDB=this.options.currentDB},replaceSVG:function(a){var b=a.attr("id"),c=a.attr("class"),d=a.attr("src");$.get(d,function(d){var e=$(d).find("svg");void 0===b&&(e=e.attr("id",b)),void 0===c&&(e=e.attr("class",c+" replaced-svg")),e=e.removeAttr("xmlns:a"),a.replaceWith(e)},"xml")},render:function(){var a=this;return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),$("img.svg").each(function(){a.replaceSVG($(this))}),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){$("#arangoCollectionSelect").change(function(){var a=$(this).find("option:selected").val();window.App.navigate(a,{trigger:!0})})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")}})}(),function(){"use strict";window.TableView=Backbone.View.extend({template:templateEngine.createTemplate("tableView.ejs"),loading:templateEngine.createTemplate("loadingTableView.ejs"),initialize:function(){this.rowClickCallback=this.options.rowClick},events:{"click tbody tr":"rowClick","click .deleteButton":"removeClick"},rowClick:function(a){this.hasOwnProperty("rowClickCallback")&&this.rowClickCallback(a)},removeClick:function(a){this.hasOwnProperty("removeClickCallback")&&(this.removeClickCallback(a),a.stopPropagation())},setRowClick:function(a){this.rowClickCallback=a},setRemoveClick:function(a){this.removeClickCallback=a},render:function(){$(this.el).html(this.template.render({docs:this.collection}))},drawLoading:function(){$(this.el).html(this.loading.render({}))}})}(),function(){"use strict";window.testView=Backbone.View.extend({el:"#content",events:{"change #fileInput":"readJSON"},template:templateEngine.createTemplate("testView.ejs"),readJSON:function(){var a=document.getElementById("fileInput"),b=a.files[0],c="application/json";if(b.type.match(c)){var d=new FileReader;d.onload=function(a){$("#fileDisplayArea pre").text(d.result)},d.readAsText(b)}else $("#fileDisplayArea pre").text("File not supported!")},render:function(){return $(this.el).html(this.template.render()),this}})}(),function(){"use strict";window.UserBarView=Backbone.View.extend({events:{"change #userBarSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown","click #userLogout":"userLogout"},initialize:function(){this.userCollection=this.options.userCollection,this.userCollection.fetch({async:!1}),this.userCollection.bind("change:extra",this.render.bind(this))},template:templateEngine.createTemplate("userBarView.ejs"),navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement;b=$(b).closest("a");var c=b.attr("id");return"user"===c?($("#user_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"user"===c?void $("#user_dropdown").show(200):void 0},hideDropdown:function(a){$("#user_dropdown").hide()},render:function(a){var b=this.userCollection.whoAmI(),c=null,d=null,e=!1,f=null;return b&&(f=this.userCollection.findWhere({user:b}),f.set({loggedIn:!0}),d=f.get("extra").name,c=f.get("extra").img,e=f.get("active")),c=c?"https://s.gravatar.com/avatar/"+c+"?s=24":"img/arangodb_logo_small.png",d||(d=""),this.$el=$("#userBar"),this.$el.html(this.template.render({img:c,name:d,username:b,active:e})),this.delegateEvents(),this.$el},userLogout:function(){this.userCollection.whoAmI(),this.userCollection.logout()}})}(),function(){"use strict";window.userManagementView=Backbone.View.extend({el:"#content",el2:"#userManagementThumbnailsIn",template:templateEngine.createTemplate("userManagementView.ejs"),events:{"click #createUser":"createUser","click #submitCreateUser":"submitCreateUser","click .editUser":"editUser","click .icon":"editUser","click #submitEditUser":"submitEditUser","click #userManagementToggle":"toggleView","keyup #userManagementSearchInput":"search","click #userManagementSearchSubmit":"search","click #callEditUserPassword":"editUserPassword","click #submitEditUserPassword":"submitEditUserPassword","click #submitEditCurrentUserProfile":"submitEditCurrentUserProfile","click .css-label":"checkBoxes","change #userSortDesc":"sorting"},dropdownVisible:!1,initialize:function(){this.collection.fetch({async:!1}),this.currentUser=this.collection.findWhere({user:this.collection.whoAmI()})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},sorting:function(){$("#userSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#userManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(a){var b=!1;return $("#userManagementDropdown").is(":visible")&&(b=!0),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:""})),b===!0&&($("#userManagementDropdown2").show(),$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown").show()),a&&this.editCurrentUser(),arangoHelper.setCheckboxStatus("#userManagementDropdown"),this},search:function(){var a,b,c,d;a=$("#userManagementSearchInput"),b=$("#userManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("user").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b})),a=$("#userManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},createUser:function(a){a.preventDefault(),this.createCreateUserModal()},submitCreateUser:function(){var a=this,b=$("#newUsername").val(),c=$("#newName").val(),d=$("#newPassword").val(),e=$("#newStatus").is(":checked");if(this.validateUserInfo(c,b,d,e)){var f={user:b,passwd:d,active:e,extra:{name:c}};this.collection.create(f,{wait:!0,error:function(a,b){},success:function(b){a.updateUserManagement(),window.modalView.hide()}})}},validateUserInfo:function(a,b,c,d){return""===b?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):!0},updateUserManagement:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},submitDeleteUser:function(a){var b=this.collection.findWhere({user:a});b.destroy({wait:!0}),window.modalView.hide(),this.updateUserManagement()},editUser:function(a){this.collection.fetch();var b=this.evaluateUserName($(a.currentTarget).attr("id"),"_edit-user");""===b&&(b=$(a.currentTarget).attr("id"));var c=this.collection.findWhere({user:b});c.get("loggedIn")?this.editCurrentUser():this.createEditUserModal(c.get("user"),c.get("extra").name,c.get("active"))},editCurrentUser:function(){this.createEditCurrentUserModal(this.currentUser.get("user"),this.currentUser.get("extra").name,this.currentUser.get("extra").img)},submitEditUser:function(a){var b=$("#editName").val(),c=$("#editStatus").is(":checked");if(!this.validateStatus(c))return void $("#editStatus").closest("th").css("backgroundColor","red");if(!this.validateName(b))return void $("#editName").closest("th").css("backgroundColor","red");var d=this.collection.findWhere({user:a});d.save({extra:{name:b},active:c},{type:"PATCH"}),window.modalView.hide(),this.updateUserManagement()},validateUsername:function(a){return""===a?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validatePassword:function(a){return!0},validateName:function(a){return""===a?!0:a.match(/^[a-zA-Z][a-zA-Z0-9_\-\ ]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validateStatus:function(a){return""===a?!1:!0},toggleView:function(){$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown2").slideToggle(200)},setFilterValues:function(){},evaluateUserName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},editUserPassword:function(){window.modalView.hide(),this.createEditUserPasswordModal()},submitEditUserPassword:function(){var a=$("#oldCurrentPassword").val(),b=$("#newCurrentPassword").val(),c=$("#confirmCurrentPassword").val();$("#oldCurrentPassword").val(""),$("#newCurrentPassword").val(""),$("#confirmCurrentPassword").val(""),$("#oldCurrentPassword").closest("th").css("backgroundColor","white"),$("#newCurrentPassword").closest("th").css("backgroundColor","white"),$("#confirmCurrentPassword").closest("th").css("backgroundColor","white");var d=!1;this.validateCurrentPassword(a)||($("#oldCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),b!==c&&($("#confirmCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),this.validatePassword(b)||($("#newCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),d||(this.currentUser.setPassword(b),window.modalView.hide())},validateCurrentPassword:function(a){return this.currentUser.checkPassword(a)},submitEditCurrentUserProfile:function(){var a=$("#editCurrentName").val(),b=$("#editCurrentUserProfileImg").val();b=this.parseImgString(b),this.currentUser.setExtras(a,b),this.updateUserProfile(),window.modalView.hide()},updateUserProfile:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},parseImgString:function(a){return-1===a.indexOf("@")?a:CryptoJS.MD5(a).toString()},createEditUserModal:function(a,b,c){var d,e;e=[{type:window.modalView.tables.READONLY,label:"Username",value:_.escape(a)},{type:window.modalView.tables.TEXT,label:"Name",value:b,id:"editName",placeholder:"Name"},{type:window.modalView.tables.CHECKBOX,label:"Active",value:"active",checked:c,id:"editStatus"}],d=[{title:"Delete",type:window.modalView.buttons.DELETE,callback:this.submitDeleteUser.bind(this,a)},{title:"Save",type:window.modalView.buttons.SUCCESS,callback:this.submitEditUser.bind(this,a)}],window.modalView.show("modalTable.ejs","Edit User",d,e)},createCreateUserModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newUsername","Username","",!1,"Username",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createTextEntry("newName","Name","",!1,"Name",!1)),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),b.push(window.modalView.createCheckboxEntry("newStatus","Active","active",!1,!0)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateUser.bind(this))),window.modalView.show("modalTable.ejs","Create New User",a,b)},createEditCurrentUserModal:function(a,b,c){var d=[],e=[];e.push(window.modalView.createReadOnlyEntry("id_username","Username",a)),e.push(window.modalView.createTextEntry("editCurrentName","Name",b,!1,"Name",!1)),e.push(window.modalView.createTextEntry("editCurrentUserProfileImg","Gravatar account (Mail)",c,"Mailaddress or its md5 representation of your gravatar account. The address will be converted into a md5 string. Only the md5 string will be stored, not the mailaddress.","myAccount(at)gravatar.com")),d.push(window.modalView.createNotificationButton("Change Password",this.editUserPassword.bind(this))),d.push(window.modalView.createSuccessButton("Save",this.submitEditCurrentUserProfile.bind(this))),window.modalView.show("modalTable.ejs","Edit User Profile",d,e)},createEditUserPasswordModal:function(){var a=[],b=[];b.push(window.modalView.createPasswordEntry("oldCurrentPassword","Old Password","",!1,"old password",!1)),b.push(window.modalView.createPasswordEntry("newCurrentPassword","New Password","",!1,"new password",!1)),b.push(window.modalView.createPasswordEntry("confirmCurrentPassword","Confirm New Password","",!1,"confirm new password",!1)),a.push(window.modalView.createSuccessButton("Save",this.submitEditUserPassword.bind(this))),window.modalView.show("modalTable.ejs","Edit User Password",a,b)}})}(),function(){"use strict";window.Router=Backbone.Router.extend({routes:{"":"dashboard",dashboard:"dashboard",collections:"collections","new":"newCollection",login:"login","collection/:colid/documents/:pageid":"documents","collection/:colid/:docid":"document",shell:"shell",query:"query",queryManagement:"queryManagement",api:"api",databases:"databases",applications:"applications","applications/:mount":"applicationDetail",graph:"graphManagement",graph2:"graph2","graph/:name":"showGraph",userManagement:"userManagement",userProfile:"userProfile",logs:"logs",demo:"demo","demo/:collection":"demo"},demo:function(a){a||(a="flights"),this.demoView||(this.demoView=new window.DemoView({collectionName:a})),this.demoView.render(),this.naviView.selectMenuItem("demo-menu")},initialize:function(){window.modalView=new window.ModalView,this.foxxList=new window.FoxxCollection,window.foxxInstallView=new window.FoxxInstallView({collection:this.foxxList}),window.progressView=new window.ProgressView;var a=this;this.userCollection=new window.ArangoUsers,this.initOnce=function(){this.initOnce=function(){},this.arangoDatabase=new window.ArangoDatabase,this.currentDB=new window.CurrentDatabase,this.currentDB.fetch({async:!1}),this.arangoCollectionsStore=new window.arangoCollections,this.arangoDocumentStore=new window.arangoDocument,arangoHelper.setDocumentStore(this.arangoDocumentStore),this.arangoCollectionsStore.fetch({async:!1}),this.footerView=new window.FooterView,this.notificationList=new window.NotificationCollection,this.naviView=new window.NavigationView({database:this.arangoDatabase,currentDB:this.currentDB,notificationCollection:a.notificationList,userCollection:this.userCollection}),this.queryCollection=new window.ArangoQueries,this.footerView.render(),this.naviView.render(),window.checkVersion()}.bind(this),$(window).resize(function(){a.handleResize()})},checkUser:function(){return null===this.userCollection.whoAmI()?(this.navigate("login",{trigger:!0}),!1):(this.initOnce(),!0)},logs:function(){if(this.checkUser()){if(!this.logsView){var a=new window.ArangoLogs({upto:!0,loglevel:4}),b=new window.ArangoLogs({loglevel:4}),c=new window.ArangoLogs({loglevel:3}),d=new window.ArangoLogs({loglevel:2}),e=new window.ArangoLogs({loglevel:1});this.logsView=new window.LogsView({logall:a,logdebug:b,loginfo:c,logwarning:d,logerror:e})}this.logsView.render(),this.naviView.selectMenuItem("tools-menu")}},applicationDetail:function(a){this.checkUser()&&(this.naviView.selectMenuItem("applications-menu"),0===this.foxxList.length&&this.foxxList.fetch({async:!1}),this.hasOwnProperty("applicationDetailView")||(this.applicationDetailView=new window.ApplicationDetailView({model:this.foxxList.get(decodeURIComponent(a))})),this.applicationDetailView.model=this.foxxList.get(decodeURIComponent(a)),this.applicationDetailView.render("swagger"))},login:function(){return null!==this.userCollection.whoAmI()?(this.navigate("",{trigger:!0}),!1):(this.loginView||(this.loginView=new window.loginView({collection:this.userCollection})),void this.loginView.render())},collections:function(){if(this.checkUser()){var a=this.naviView,b=this;this.collectionsView||(this.collectionsView=new window.CollectionsView({collection:this.arangoCollectionsStore})),this.arangoCollectionsStore.fetch({success:function(){b.collectionsView.render(),a.selectMenuItem("collections-menu")}})}},documents:function(a,b){this.checkUser()&&(this.documentsView||(this.documentsView=new window.DocumentsView({collection:new window.arangoDocuments,documentStore:this.arangoDocumentStore,collectionsStore:this.arangoCollectionsStore})),this.documentsView.setCollectionId(a,b),this.documentsView.render())},document:function(a,b){if(this.checkUser()){this.documentView||(this.documentView=new window.DocumentView({collection:this.arangoDocumentStore})),this.documentView.colid=a,this.documentView.docid=b,this.documentView.render();var c=arangoHelper.collectionApiType(a);this.documentView.setType(c)}},shell:function(){this.checkUser()&&(this.shellView||(this.shellView=new window.shellView),this.shellView.render(),this.naviView.selectMenuItem("tools-menu"))},query:function(){this.checkUser()&&(this.queryView||(this.queryView=new window.queryView({collection:this.queryCollection})),this.queryView.render(),this.naviView.selectMenuItem("query-menu"))},queryManagement:function(){this.queryManagementView||(this.queryManagementView=new window.queryManagementView({collection:void 0})),this.queryManagementView.render(),this.naviView.selectMenuItem("tools-menu")},api:function(){this.checkUser()&&(this.apiView||(this.apiView=new window.ApiView),this.apiView.render(),this.naviView.selectMenuItem("tools-menu"))},databases:function(){this.checkUser()&&(arangoHelper.databaseAllowed()===!0?(this.databaseView||(this.databaseView=new window.databaseView({users:this.userCollection,collection:this.arangoDatabase})),this.databaseView.render(),this.naviView.selectMenuItem("databases-menu")):(this.navigate("#",{trigger:!0}),this.naviView.selectMenuItem("dashboard-menu"),$("#databaseNavi").css("display","none"),$("#databaseNaviSelect").css("display","none")))},dashboard:function(){this.checkUser()&&(this.naviView.selectMenuItem("dashboard-menu"),void 0===this.dashboardView&&(this.dashboardView=new window.DashboardView({dygraphConfig:window.dygraphConfig,database:this.arangoDatabase})),this.dashboardView.render())},graph2:function(){this.checkUser()&&(this.graphTestView=new window.GraphTestView,this.graphTestView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},graphManagement:function(){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},showGraph:function(a){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.graphManagementView.loadGraphViewer(a),this.naviView.selectMenuItem("graphviewer-menu"))},applications:function(){this.checkUser()&&(void 0===this.applicationsView&&(this.applicationsView=new window.ApplicationsView({collection:this.foxxList})),this.applicationsView.reload(),this.naviView.selectMenuItem("applications-menu"))},handleSelectDatabase:function(){this.checkUser()&&this.naviView.handleSelectDatabase()},handleResize:function(){this.dashboardView&&this.dashboardView.resize(),this.graphManagementView&&this.graphManagementView.handleResize($("#content").width()),this.queryView&&this.queryView.resize()},userManagement:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(),this.naviView.selectMenuItem("tools-menu"))},userProfile:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(!0),this.naviView.selectMenuItem("tools-menu"))}})}(),function(){"use strict";var a=function(){$.ajax({type:"POST",url:"/_admin/aardvark/disableVersionCheck"})},b=function(a){$.ajax({type:"GET",url:"/_admin/aardvark/shouldCheckVersion",success:function(b){b===!0&&a()}})},c=function(b,c){var d=[];d.push(window.modalView.createNotificationButton("Don't ask again",function(){a(),window.modalView.hide()})),d.push(window.modalView.createSuccessButton("Download Page",function(){window.open("https://www.arangodb.com/download","_blank"),window.modalView.hide()}));var e=[],f=window.modalView.createReadOnlyEntry.bind(window.modalView);e.push(f("current","Current",b.toString())),c.major&&e.push(f("major","Major",c.major.version)),c.minor&&e.push(f("minor","Minor",c.minor.version)),c.bugfix&&e.push(f("bugfix","Bugfix",c.bugfix.version)),window.modalView.show("modalTable.ejs","New Version Available",d,e)};window.checkVersion=function(){$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(a){var d=window.versionHelper.fromString(a.version);window.parseVersions=function(e){_.isEmpty(e)||/-devel$/.test(a.version)||b(c.bind(window,d,e))},$.ajax({type:"GET",async:!0,crossDomain:!0,timeout:3e3,dataType:"jsonp",url:"https://www.arangodb.com/repositories/versions.php?jsonp=parseVersions&version="+encodeURIComponent(d.toString())})}})}}(),function(){"use strict";window.hasOwnProperty("TEST_BUILD")||$(document).ready(function(){window.App=new window.Router,Backbone.history.start(),window.App.handleResize()})}(); \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js.gz index f953d377d203e7b2797c5ea7a894228b85b9b6fe..0c2915092ab50a6c53022c4508480c9b68912d3b 100644 GIT binary patch delta 106853 zcmV($K;yr{%rK12Fo1*sgaU*Egam{Iga(8Mgb0KQvLd0GbRa5H8CmKR`KZ=&KGY_vwxU4$DqE;PY z6Dp#Y8R@JVe=Aj1P1OdzFbe27bzfz5ok}SXj0NHs*G-Efb4jW`M@o{sQwX(4;T4pS zCAHJ)b3y{+3>wgUqNaS|C9(HcpSKyMc=xvIIpLoar=`!S4@_98C*0Q&t78HVacUtq zL?xzF57+SLW@7MfY&_QXG1iO*qu7|+DDrz+;TKg$ zO+Q z&D@T%9%0Gq@q^pt%4Mr(765Z%re|;5@~FwqnQCbZwl1%ut;?JC+wtDYn*dEN66g2r zH_rS02jX3Pzqhj6_(2^13o?c8#f$w7WjO>Ae^#+iQ5Lg=8h&tw0%_T|KZvA1u^AAJ z2sR1u_1R|3H7^^Rg&Ut0kBz_2HF57>eD5sz5(`1gXGExt%!U`Oa$WHB z=n&zKfG0_@%qaL;$Af#~T=PyN3$F1}RfaBXCEn@qoa0?m467QPFqVV<1m;VFVAr6s zf3Sz?iicXuQJ!l9@T~FeOq$v4llT^QZEWj z(fZxyhxk#Q@J5|eyv9DZKbQ^wE_sPQf8brhH??nAsqp-8-yh?@1*rh!gevZpEyd&Z zH9Qp)135LL^>cJqMuO8>RYwymhijhrz|}RWneb!OMRm>_LjCwD$Lax(Crz+R5;o9Q zCoP(kA%qEDtIF}pcC>#2NN#dI@hls;J^fF!0TKk;t6b84e4FnAhJ=0D2@+2%e;WL0 zr~{%Ig{BK|E}e7$p#3PTXw>&{it!Z?zln*3In#=Hx8Z%Uo;X-BM>`xbFD}Lxc=^+< z{+ujs?(ER#nglpix0&}PxK5fS;Iqf+ z-~$XdoiLW$CS()IdhkacZ{ys>aT-Po@gpPx1gxaE@i(v{>MZ9o3EI->2JBr8{W zpad1Hh#!(pvfCC|?2mg_LPiLIm!2Q*lq++MSOktju*i{Svh!Hv=(h7Npb%HjPn!J5 zdc|NBmgAzr>cv+4+__3a)Nq;81>uB$!oOp29}1Q;c`-O0clv8Tf1W-Gj zjua1F=8o}2N9FO_#{Mf%=!;F5z1tj)yn>&X1+|g@j}B`dv3HeNDVa4P!erK@N#qI} zNVw1`3qXE>vjk#r-Nyl2paZA=V~yppB71$pD%GQD{9Nt2Ca+QEo_0IElbXnpag|y@ z86tdH_^?v@JlB{re_wDpPcn`Ig;~e(0BU=%+q)Q^U*bBUi+qMYH2csvbu>@2-pK7v z^c>IGJs0spK$2%Jp!JD?YxCr`fa-BuJfNi1>;7k8=5YFr+k*tDa#B3T?H9+F+5}M`5&`|8oL^y>|vFNYkorM`1tfsrtw|e*hKrbiCyk~=X|)N{M*um>S*L?&n-K#YK{iIlN~rSq$H+(h7%O< zfL6VIXHPd@|D2wBR~Mw=$)bM9YE7A0sWVso_A_(Atk|)*m>wm-2+4Z-6(TScsjF*x z6|X9@e-l=?G>+ITvah`Ct2c!OO3F5iW+wOSbOd(DmUtuVAcGsp3461%wJzb&M@q9n<=y~I;-e-}EoL#Zhs1b4S|T{U#PNXj zFR-&7i&!j$NDRV*_?d?*H$<0oDUXE%&29Q|e^J)#L)ErN4&RU#Mod7|(X~bsRnnSk z-v1d+koz-4*!*)K)sfI3o-x6WkDy&9oe&;Lz8uolNTg%IR_(G_byiBOiTM-$CA;%zPk{u-YG;Ta;L9Wg>)3;XP63BA ze}7z{vMR+qOFb)#xJOLQu=W^^I+rBvQ0`YVWnB;Yhl$AwcM-JK<12LgTO+b3B5U~` z70}?rRzJJP-Fhk2sS=r2gTaNBOv)vy2udDYjL%eH2Bo^nq{G$Cx684ZVDV>K0jW&t zdhT@XZfjKPEXaV$O?#Qqt?OuST5FT#f4OPyQsxQcOJ*JhXNIQ)qdXT z4o<6!{Q6YBX{oi-Q|WY4RZzuSaT86dmhbZ7=El>_U0_*w1{1Lr3dkd_*jhk)+#3C? z4!5>%>~d&5q@5zW`&qrdL^XHQOpz^WAHLtjw~x~v53fP|lq39PabK}1xAP*GJX^oq)F+)*Y?M6Kdea~VFD8UNy!hQe|ma;{ZPcP z*~RC3Av8nQ3lh()v5s$yh>DK+XPsy)A4@g^;fUPm4S1Lq3wX`ViBP}^44iPiZziZO z#V->D@G{!wyk%y2ICGYV3@n?PaqK!R*FEQ)Y>?7@*SaTgo6BrFj_0 zV#y;ODON;*3H;>HadRkZ*^2VvW1!BC+afGBJ2Yk|m(UlvWURsu!`wvVis?c>20fKfKIa9E~*knALM0@6VMBqUse2uPSK-U^UB=KN(L2`QgP6J%Z%NQxIAe;IqLfaws;yC9@& z?gt)+$Qqko2>JOGgw!kbB*7x4z>_SdH7F9v=}3vMf)(5>!gflUUC%rrZ%97B9ybmg zQ+Z^V_QN|Ajx8ZAIxm zMN$w#tR2pY7(p@t_aFKTmS9>gvE>m7h)AI|w7bhl3UVX*F2b~jbL12(+>S>c81sAY zD3NF+nEmt@ntV!N6mEup#xg{Da>_aoitrZ!g5o-)i0z-Te-H_RI|A)+E}YaRfeAt? zvKEr#^BQ3kag^~ICYk~WB>Y|!3QP#SB$cA-78v?9Ltwb89#9%aS#g)d7`ki?uz z12S6fBo&91w1w)efqD8ou3-9G&8)5vTti@aVzY+b=XHGgktfHnCqYZG0I`jC>!8ZX zIJ;h)l{3T?e^ZMO8-w%9qt%VYS37UEH(Pe9V^0W4zNpQI&_3vme50HHwf_9gM!8uO z^VVz;9jWaHR&HxP0E0tK<@bW7%5NRY>LdIE$CST^%iOQ5mw^xr5PX?SR=LSa#xhQ} z3b2TT73&-RpafREbWioty!09);Ea)=iZety@D!rte?lF!Q4}MG$PKK9WnOds1=YP71Sxq{FAKM$E7T&Ik}U?mKKm`#d~v;a9^c!+kyLC7 z9hlaM)=^>&l8a&j>z1Nv(Ni3RV~@6YWAV-Qe-@S}*u8CU>K+f;hjOVI(}DCvvLA#R zl6X@R-$WHa{>>KGfd*KWRT18QR!2fD(G5%)wsumus*mu24h)&`BY@`ze`Zm0d!Y=RN#B{a`*NA%bktQ9hi6U{n^X#2^Z8K)^;}J0#Im#>PhPDY+5xE{Zzf)-~6vv ze{0(`s~WFD%a7OA|6)xeNX||I?e1Kc;hlgUq$^K1 zFzSn|Q8ru=H2DFGeFpa>OJ_d4c(`d^j~cVj`r&oTU# zbz+VTTWGOQpMoabz0qxVzvWsuf6=7iF2|?96YT7fc>71J7dBtdo5OIg@HYZ5593GG z90_Oa4*-WhvPUTv#HPyc5rkjXmBL?TKlbJ3PBs+-irJQ+Kia<|Nd2&R)*NxI#f@KB zUOk#`4_m`F$B=uQWIa~{y)w?pD+Mi}4$4$LlN9f=>y=3B?%i`+YH*=0e>u#W5MNTO z<=5F25xbt|xx14MBmCIB0PgK#8c0p4r`IlN)-Nz_VWGq_nN_Mlqyb}wQHYUqVHnK| zJR$(?A0J*gNgM1VX|Lb@NFc>{j>uN#n$&Wu zN%g5fTbMe#FMA9r5Rv-de}4(29_WcOMGNYW*xQizH$#IuT~li(D6oj}5!>il03YVK zai};E)R-PYFv4*-o<&mQ)2CxQSH%xeiYquYN0Fx)iUf;#_kl{Xt_sVk*_^BR)hP1x zGx$*@E?BU>_4t2*z-FWNna&t2Kjx<_mYjEoO8HhmrS6T+)BRRde+p#ArK><D~@mMidJ;yXCKJTsQd^EpHlzJj^lVQFGKB!&_g21;h_B;zUOz5Tn{vF;;wxCL>J9 zUX5&h3kY;XX6!FVpi-;lSN97LsMJ#g$~FHD5Gc*fLZAv77NYl?VNdB2?5W9brx4zE z@4A&K;(M9B;Bn1Uf9to)$s>^e`8WQ%zlN;slDT{@3Ey`=Gu5sY@;!M<7cQy*f>+=q3XjRw6(l+A7q*pG3++@Aily`*Pg^w zIedbDt-CV zfpqpCUERQ{l?uo~6@8trkc_c>g#@0pL`Rdc9Qs(u)MwEoKNtf5VX~ks=8@qJzkBei zdXA3tyR>149Pu)uf5JUB<{mj@e*irUw<0X_FhlmkuSNE*;#VX4VLyQx&Nn)J@e;)0tm6DGA%oe~t3lud@#V>?sbq*6SI^lk>~e~^tCZJIQtka5!fv1&1NEiVed z^kZBI9mbst8;49*;AYa+5^{{1$YvoOW%iv>Z?H;~{qO*V97aJ4x{=L^SpU5r5Iqco zgT`gMPSk)dk*R{|Qx zq69=MB0U$keegE@AYle`u1)Xsh|$iVdi!`!e|ke{!C`kC_2V$*nXO`qDMNv&nDVTI zDgCg@nDT5ornJ6`m@;WfG39B*lqXypr;kp!Hckxll`-XszcQv`N=n=UQ-)FeYhlW> zBBpe}Uxg{x|79`dK?{nA|37N|KSI=J`S2{}5G@H8y!1+j^H zfALeplRij+>7J%a84CWzx3263u}6XM95x|6Q^M1vo`Vl%!t>N_2Sb-icse1V6QHTI z<&{^T+`W4msZz+$Q%{5qK`qCRhM<<=T#i*w-wr)aDUzY`DUzWl_^gdd>gCa422V8yBv@e^DHl;kvQw-xH!Ii-+^eU{^=A4*H7zfBf|6 z{NZ>JJ3JvBFWTCSAjFkWjtM~3ntT)ALH|=}vkM-N&q z*+&c@gz{ngoPQ4((cwI$n?J4|vKy1$_+qeWDNq`Cqc{j2d)iONxj|x=YDXKjf8Ji` zl8aEC+0j@(nO1TzLO*i4pfxD>w7MK$o>hNYIvRA&@#uMsFVDrtXFL#L`e_zEQUqbr?d@b#4-Cl^s>eF9e;!P!;>u1Tbh7gP_;w_Fwb{|VU{bPe#pr06gQ%e> z%c>{oqR9c~9OCdWyF>zjr*r4@^kc2l#r_$;?e0fOnn&tkt?3eEy0}34YCo&DX4Qb^ z&nw$8SFyoxR3CSXlo~*0MgChT#!x6&} z)tVQXh^;c7yAvro5@a@Dry1vk$W*5JM*-5s9+9 zB?diCo81h`X5Kmlc+;z>e|eQ?nVV6m){2}?W;NghN#UL7*$`}r1bTeY8Z}KVr80kK z&%kJono-eapE53`wLJLGrZ*dcWbtN6tp~sVgGsx-2giw#mfA+hHaq9R#6|Plt#aW` z&9}uL#J<8pPe5}pS7I&1uoit>AvA=%jYc)3z!bAf{D|y!D7aH`DI5L5byNJBV!L zaIEdVUfbE<-CWyQe}9I&_V`2^mWH8Lt`$F>5kh@f{=WYLi=Zur?#IP)d7YvR zSI;8raxo~M%JcDr6XVWm&>}W{S+8=X({Pf5I+Y%^s&*HScU!s)Pt9x40|DmxwBS#@ z#5QrSyuAudg(@@`FUWYbJpbzgk9=E1W{4w+71Cdk8$mpIe}t5Z$0gVmMq{+(6><+} zb|^-8PSr8-apgemDi~3_#I(M%f0P5|kxo({#dN{&%xT@lUOKK+ASJv~9yy(%K`~Oa zUwg>%{JT8?5_>4CW6ks~HXgU(msoxqMYj5G?IgSxiW;YyS&mbRw|Qn6dWBtv8FhYc ziNT7mnp7lQe_~vPAFDylgT10p|Db^FADR+tPd&r9R-8jwYuN0JKDLelW?ziJJF|QE zC6?27o-JtQb(L72{1O9+*KNJo$J}u^5!26uA@+gfaEx>s0Zo(~93(_qB+HbU=^IOA z)dK=n1#gN)SCNF6uXR<)0$yE3d3Wo=hGbWfNl&kme_{Dm?BZIOQN*B2SWcnib9z9@G*{S@X}2LDBy^Ie=HyaxCYZI!`Jgu>WiI)^pzZ>-UdKil zKY@~5EG_DmcZX*qmf8<^ zlR=o)N$6&+lb!~xQULn)cQjLYXRzJ=9bdvNuZ>3=R&6_c3?zW|;O=#;;V*Po9&7$~ z{hT!<({r%LjyC7qKrsf>M)070LQt#m#mDx5fA5FJ%B%l%xdhmLQJMVmr$at@9KES( zI}CG=cFHoF)4v@{>vOMT0I~ zK=$BN@V(I*?GdHb)gpN}=3RfhJqF-n!E;_JXM?ZH6E(MM|Hvy(DY#b`^2!k(?v*4% ze{_kfUPy37+Ke6zuFNH69Miq|p$9b!C*I!Xz6)_9`FVCm zO2N{X#?4di^LLQbYYWQDHjsv0R6NTH*R12KwZQ`bov_o^{Be? z(qwpcemYptC{naEL|3z`ul`EltB))>f1<N99?dLDoHYoQXzH@KBi*Kyd*7j4dMyP6mf4Mf= zzmKn^rj+^vuU`M{)#m=j%k?)eHn(4E^ZG^tK!BAn-?$iGjwP)0;{K~0a=|3jfXTSJ zZMd_O(fB>E)lYs8j5x56cq=YTl_G8Kw9BiB$jBt?ZY_+|PrOBwV)B9fXhh^`wa3m& z`sI+4S0f2_Iq1(S$z)?uPF!_ae_K!~IIG35XHpQ+>BZGK!m;WW-P%h@(;)WipVO6) zbxqbG+lv;9=>r87S`RxUWrQEDtCZ&;o~A_jNl4?DJG-1X1OpQZcr=zIcOYR4Ed924 zqHFc$p_16X$bkjL-rs)n;xP^mpdtT7cN0^TDHZUF*?gUrzeiS^ds7Nae?p1vr)g;n zQX*tk52@Tkz1EOLt=*gNOA;LeHH+9eN3!V*pfAU}8bUXMwD*UomsUm67WnB(Cf>Xy z#H8g$h@<|#HdHzVX+?UHx*l7_O3r%g-hyO9BQCipSzwYVjXjO5@Q~X_JwEK zO7CH@;0n>5AIu?>^bH_Ef7*-9z3t5}2fr~H;;{}<{3NRf`K&WZLsv(K5M7Tj7x7~E z?u9~T;j`Q(%p;+#*pGG{dDl^0-9HkP5-RVW49`!+WGH1J4ZrjZkA$K(^fPfSRrD2Z zf|Wvd|$e<#!0z#lYg<8Uy} z>bjN0B`jTEX;JQfkqx^DHf$QvuS^+ce%sz*5zU-4cOr^Eo{a*gb^2Krue<}75&`e? z;o!7Cft}|qUabd^iepi{@YwUQ>JC2pd00@hZ$GF9Hw?;+a#=<>Wmq!5UJS-a8ku5H zIv2KIAszpm)`8#Ee>=;hBI%CD1mPb=L$2;>D9}a8<_mX&-;3J~Qw9&5BVwWqu8hI^ zbn_+7h#Q;#wf|ykcNYw5>Z5`xIFM+`y)ZNQbh%kC+}1;HmwFO~TA=#OrbN7gegPau zP*B+>XOL{HobYgkYVVcE$|@EP!8oiUAMzt$l>;qSXhjtLe;x=K`gzh0pYoO@sicr? zg(k8FeoPuDR7Zp=E`M2Ve;$!iLCK0IlgJ({onYrmP)%*$0% zXEx?)WL^G0f6`~oGR@UUbC3Z=55s{{_79hfgis&Nfck9h#vEU6+ zu%U?bqPrFpTf3TST`HS~i2n4ZTI1*sk26Vyb z26AHcHnJC;##wU+Z-sw)4(}FC{&5A3V&Xs5rqxNxDOt=VEIJBeQF8Py35hO&=tI>g z>n!%5D%MagI~(TUKC_d&_OxCs3)}Qg#7T8VH&)%Tl}R68%6Jz!Zhr$ybXlRLMBXoV zrf4;ke;bF3@?~&_=6m5p_cbJo#26q6_8xzUwk11m)S!3J<-YETUc99BmP(k|Sf^&X zsjq@Ved(f;&sdq{`VOrV^dmV*||B#oAS(REp2Jz!sw7Pg)|R zSU+pYLV;Ul*BtT3l#_Mkw8^fe4QovwQ!>U`!%~iJP{q+f#fAI4LSEzIcNf{ZHby`u zAI=jZm8CphQe@`iht-`0QIN`ZR&b+^aso?pwEJ}Aq}=KFRmmi2C9mzOH`u=!w**%2^$u? zL|R`dkj_C^Xb3;w zMYk<`}a7fBOI< z%9*;F94&I1PCqszP?2Yw`kza8LLDhgh_=pee|FvUwROOxBBXjc=lS}oSqxS$k4vX{ zw?DkFp#K!>N{(jlewA!5nm(TyK;qUHw?(`v9TGUG$_aoQKP-$0>~kRYNfP|+5lpOW z+Jh3XK9fR&dr^)S!V4E8;Mw5xe;l*H{^@W;TDT&HtR3;0=#}?MAD9dT&XwptTBL`( z{eSO9wMUYVo}@7(_&ED00Jw7d>RHLWEk|HC>egs|?u(kGt#9_8v z{kYQhd@J@>+7cQ1&2333*sf&J5mAh5XD|{MAGI-Q%VhjFwPvOA)+C;NY)#rC`U*5j z;~^r81^M-;5<0BZByTL6f26d97yOn`Ewk6&Av*l?z&n!uNNc2x*|-j{#Xh=WlF&I) zYA{h)b&yL4;&=+At$jgdH?#z-V*8;;FC9wuTiW_o|GgV+xYTR4pMfE4G%_w#)805o zxAw-?%fT$2Bxy_26g?E$s~Q@tR|{MeTBymgyY`RxeLB$d=sRdUe;oFww+7_IhA^yl z4K%pBYZ!NEvL+dsw?>x6nl&3Df8nw(H0_l25FTTjg>93zjHA_YRW{YsI`|!24#7DX zdutl=a+A`Q`|sh&U~s+-8#R5VzG(Gdo1><$o4H=#rokzkM0qr^U1@9Zfs1G|d+mW8 z$wD-#y+0aAK5`DZf8R7$-!QA1klqMkT8cw03F8O-C0n$9Y|+{}#k};!rfO1ZW>X4b zamGLI7dLl^rTFD{b>6qEeIWnxPlYGX;nYl?Uid1H+7{>F=Ks=bqc0u{NHs39YWH&1 zRPbV?-w9F%-^zv4AYf|7P|C%SmJ4V^BUBkRD`oE9)!z;)e`8k`KjjTNRzIOzg*5GW zB3Oh1Fj`jI%9fh$WS?D6u3d=*;A{$l5dhp_+MY^3N}RI_Es{}HO;pO1Mq^FOr+lK3 zu!!pym7B=6uKQz2=!CdX;u;>0$)VUe-NkQM9*2|NkL36{YY}Z~IQf2j+PNH_@@2W1 z2mz$vYqV)nm`Fk5`)UmoD+bJ5o~q_caeW;6PvH}2!B-pSxHxCsQaxXzr@ zFb43=a#Ka_#j)-xvvw4hSdv!qFZf6kJ9*$(JUonq2h?0j{kc-&@h-yoK5;_C)VLt) zlTVF-#1QH5k3^BSb@zuT8>%Gzvd@)6E$02gL1x3`im_~vi55x#If6yb=zXc#UJVtx(*gvuofVmpV%0}^+JL%KuQgcMGF#3m}@ zuQ-FYUZfV}(5;A98XXXiMCe}$>#rQpoWF4Fe+e996qeK}Y>4Mqzi1^Y(2;M)ozYvZ ziCm5Oo(RtvN8&G+Hc45Djje8A0RgFq)GRv52(QaoT+EwLsPx8o3rQ2Z)3%f-xwiLi zOUuJIHZ@M*7O-8hl-A16TS#Ma<4EFC3P`k&U4Q9fS&Lt`Tn_B=i|wsF$~gAig8FL! ze`iZQ59M`sZ={k^J2}`mA}vn$77HJdyYIbHFfS5Ugs0foZGlf!MRCJ{*D+dF-+Uh8 z$R_5I?yb^ixTu!stSEYj6AJs6uVn_|aYjlNiEe?R-<7LjmyRdMbQ}2DV#6{UyLZLb zz=<;Qb=H^Jph{#-J&{&>VRe-Tq(X)qfA=AbKUW{zJnVe9g5kH+S}k6-6*c$H z{x3_rDw_F&M}n}c`mF`vXP>uH4@}n;IV}bzf)&@J96H_;mXs;RtDx7D(}pFjG&hMP(><}*)Mxkj47 zf>I(y&p1=Jnu4TxnME$ifvTFqR}G$c-v1JV_a^Vf16BehZ)8;$XYc2O(IGy_0fO)x z7Yhku7ViD?fvM_fl)wo#4r|wce>G5g#;6KAal^>}Rp1D>jKaVpL!_3dU@Nif4`yPW zIWz6Knsg2at(qY=-%8^las?5mo{mQdE|IsEzK?s4-crC>uRhwFtHXO&8Ff1RK|u_C z0+ zmW4%?9jiic#f`0Y-{XeK4UoX66SF$3b`^5!zm84LLn!`Yf0e6a`ZCefVUxG!TOkc|evTzaZnd zB&9_ly;rgnL4{tn2k?Uve~$G1CpY=-hcA)&Gv>`kQ(5rf5&0sjxdePDqicVqL{fMQ8*cVb{#@H zCI!7i*ZwoIl04ts$N5%A-qd=|8Tkw9I_qy@oVf%3j|G`$SB%_Uka%K(tic*_cR(uE2Bd;?jmvRc3C`M6c{<_vV> z1R{PD)b`7JQpw$de^#S7Ihh;!pnc1Hv{kAyrw$a1=n7Ab;(2L&!%G`ahW^J zSV;F&$wF4Z->S4Tg?S`W`yo!zJ@rs4-0C{eY(M_P?%!!^WOBRPOPi)aopxMa84=aZ zV!V*p^(wUiqK(bw@sF8?bo&iwA+`-@2cvzisj8ESiCI61e{+<#7k?B5Q{nJ&8{i0q z%LuoP#xYH0ZmQ&U08Ct$S*3%4qggzR6Yk>sHRDeA zg=UeP7@hOOUH7S{I{yJbP9Ah91AcHXPqS>eNT(no;z^X(V9|c z)=3*CCyj8)&O_QxT6#Rl5i{#}h-X56I?Up)e{?ufit69>s*&_-6<5v4w?7`I91oJd zbS5v~k6xL@`^QGzTc6g&CGvF9KfLvb#{TW+_UAYK+%$h#}cuB|&U|r7*F^*(#Bn@rrBJ ze-Ap?oWVNCd9G+)khROYQ#{Wna-RLSs`ES&n$z$+N9K6ud0ue_hMkPXJh%lADnu6QVjCnDf1S+avfI?i0j=I=fs`^cHTB*r(U91eBO1Xc zbW$hFZb>Fk9E1xqjsV4Z#LghNZWf~0$}Dt0-b#>CDbOXY*m&Lce+wzJT~hH{r|1QM*j#>JHblQmN485|nh?!U z64lDhr^c3X<|f_b&?zW((fLN?2-8!RIm(o26XU9SSFrA$h{=hiEc{sr;dDGcxjL7r zNuysScEh0EFP2%+xYUJMR# zB_b_E&{|~osP!hci0)>RC|V)HLX5NYCD9r-eDn+QHpI3nVm!=_$*GLnf34y+z@dd9 zS9K$%h=Vg6YeKjOu@Tfa1hE{7)!feDkU(!s|I>KeS@`?f!hhdi_|vF%&*v-l;c<8Ng&mz^nw>x|5#A6sFAwb`6@3-E!P%tu89a@ z?O=KusnVoX3qc@ZDJ0@%(rOr-%~9JDG17XVUP~j)+Y*shf3ZPx>Xw)w(`RQLJ0G4b zkVhDj{*bo5)qmeQlthq*&Wsx{BV>aMA)@Q$BoWiYEJ)!X7f#~@WXq#%8N)oiDUI0h zMFAUXKR057o8v7aHaM8@uU!iQ%e*NiDXg zZQ=ZOV^cK?eoyoojq+2~W*FC$nZ+sG4(GVIk+E9kFGa&X0Myk5Zj6Ly$yQCq^{xJU zH&Wd}ZK*~=kI{rs2)J+m9GDP>;_7mcwAOft`<8Foe=ZPLND>G64}}To+T$a3@v-qx z|0Fk0Uevcm?$er<%s=y_Z5bE_nE`hBtZA`PE0jjlDYlC5MPk3E6i;N&V-OECycuUb zJ-+|Fw=VdIg?jUFOLhVmArE+K!r4}GvkVhlQeJmrMp6EjFE=#AQY$A9C8Rn0eSb^ME)ZE2R9HcUvy(1VI%YKaPL_eNv+eNd_}*@LJJL&apPPJyWlp9?ecthLeeUhA{D>Iel`wEL0|t(62LtF~3je2chVaZmihB>lvgCK(k-_Nt8PjXUO_Du?WBMa?4Znjmh6JX zxgjNRS=G_6f3~lYH`jIwXFv&}SFC}B<&5)WOM$FtW?XE{Pt40y9Ra%3Gm4ayHqI)% ze6LmFn-Gg68E~z!g+m38?H*BB|TNQABhw% zv>+L%zhE3vywHN)I01ai19;mKoiK|K&V8XBQHA3knUf|RW{po6An#ZeTT%#=kOajFef`O z)tl5CD&MB;t@eO(^>6HXn(eO{h9vtNS(4zQ^HrPs|D0ePV$5;C{8u``B(UwhS}MTa zf0_m5|FRA*1-R54Lj}O}e;zLb?>+Vp0nINk>n!%V{BYtg`J(*HR3)fcqN?kO>hpFhIagw`ef0P>zsyK1cD7#oq zbI~}R<)TrTSmU(PMMH<1dw>XgeO8UR)#b{6tFVqEog1)aZmmG2cezS|UR^BCZg)VY zm7R4&zNw2gd;k$ z4%OfYF(oeZvWLi1f3;5ps*>mM`_9EA31?;j4^#lHKPB8^vn$!)HFBPQ2#-FDUenuj z_rn{twrHu_sQ&aHK6_zIGQ`1L9AW|g*y4I6NMV_b&B9SbSZb!@M*)R;{ke(KkD1|u zE~eN%mr)9G65OvK&ZrjwP(oL*6K>UiCTg8I zZ~{Ym$XuBH#~0)G08F+fvyC1_WU%$()$>isPVa)-SPUb?4MmI9>4jemCK?B>zMl*d zBLVWCND|A*f7SWm>~T9?8}1O#1+037B9K;NuX zT*r6r<9a=uWC1THg-R@VlsguMYU0UgEkwa-Dv)GPZ|nfkQ7J@pU3Z^Fta}^OUgjh| zdt1K1jCfknuq7^$C>s+s?)S)OH($TU$~%F%c%)~*eFp#}`k;9i+hi>WQk0FE|-rYR-M*KDbDU`{l7W9-6kCNO~LvAns14fUcSdCe&V6 zGWlmt>TEcfV6n0^9R1WeMTMCRi-a=dV;ZXI1uB-*EFwQeY$(M?xoT( zZbrv_fBaXPxid1EJ?S`?sEiL2B}||-(%#izo8g)JPiUSB{HQupcM&CKCnXBt7r8=j z=UJo(cL5E{WPCBpyGZ;o4Ab_VS|)fG^@}-bwVV_S324zcZc7Sr=satL7cX#yiZ9N` zllFc0QHjFvbV+iIQ=Wply6cDpIBbvm34H(mO|kc;&21dX+UWQ9SF{mlMDP-XL`w2P z8s?!$NaC2=aPe{^1_Db1gaiUK09vAD{`dPlSzA_j0|aHy*zdh(BE}-RyRx#fva+(W zazVE@vI@!qe;-u2oaY$Rq$+1-%$rHxmbkwrazfoKe8ft~hJ8wKL_884T8QkG`-0*S0LW7vtDi(+=Y`a8hoX4br5M zv?pSJP;6}>Uxx^M7CmsbjqqBZl*3a>=zr})Zw!siBN(}mh)`-Kf_%me(`4v!dH;>? z{=JBrf5Q!Ja#g_&hk3Y~yI)qa6~k&K#%dt#lBO$`S~4mo?0El@SP2W5Dz~G&_DD2X zTdBnl%Hcb z{%%UjG^n9PVc}+JyBQJ3Z*%bB=f=}qnQR__1P`HYX9NMFsQQHsy;)hq!IrS- ze-wtxwep-bvp3Igxwe+yXSTGfAlFXT+3E+Pf}=-}UH7)NMPYcl5^6Xt71 zcZ)3aJt61>EIG*7*bm zoKiff^dsDF`jNBe{h(~40$>sx_b|My66sIR(+>V*;vk^e@{xHRp9|=5_PSGVRl3@+T?ZK2xdtbdB6%r)M@fse~qnE zg}mD9SW(DTRmo}>$XqDedJlG}*%p|v$FqJnD$g$MNI(jMQhlrdLqNR0;Afp>^%<6z z<(Y{_-i8WJY|%NkTCMWjnmMk~-tdsq@C+z~`gVAVi~%wUiCw^-H8!z<7@VqD@m}(j zzlBzF6Xz+rJ&4lBHs>Q{d*~% z;}&OinnU!(hqpM%u^tV{3lJhLEs1AReQ}%=^Au9uFBi%Pku9^VbQUMG979RBiH8&9I z&GEQ-`yi4FPA~v|w(ZYj_I7wQPJfWD@mi8}$O1LUQ6N1Wr-vE>vvxqiYbn}ta{=(w zO=(l?K{wQUb50*K*Jt*WZq!^^S9c54H?_7A`M&T17dv>7@l5vjcI^}S^9S*R^QUCw zsqwhhYBT_S1F04`6zje-2mK)?_cPNVZM43Fyb2(tK8fVrvR*OJ1qb=-Rl z!^yBWg7MS*!J@R`r0Y^lwrd3^kwA0oA|t*~D#ssf64Y2Z+g&~} z%ZmAU-9&!FA)xbJOEO^)`fACdi5uXA61)J!WQLfXAI{8hVZu5OMDhj924PZAQHk^lLVh@= zIW1Gv9g7C!hkq09i5(ch1nz;gq|>TeNUWQOJ8T@(^=Y3^fr$g*0PtTo9NXT6HkQAI zyvwTVZe0|B$pCTv6oA3rG47{@*kpkCjC4c=_6!Wk*)M$XOMXllATAYM9tICgyc-(a zCgvjrD+9#kdMlubNK!hKxFMT#V?4h&APv#3d}^wKxqr4+yT~qNr^o}*9^i#MXL6JU zXJiY2|9BvVtKCX3NL3cGJ@>dE5j>E{tA8fP=CZEIkxqcn8m6!-{!@IfD%GqXo?c+YH>1Dgc;*-vV}$of=^&rx}{x6bSZJOcM3^WdU-oM8(|0Q z;-qycM}IC^tS}-3s0JX6RQ<6BTfufWL75DLsVA&z1lPaChT*;fkU#!EsuxHLBd0PO z^srUJ2w@3trvn)vv_i=;2TLlp>k7O=5TlUnoSp0^E6Hz$Dmg^{B;<|G1 zCkb7vCzolbnqb&Cn~tHIwu6ZSrWN%2c1XW5*as&zu^^5CeM26)q&Rq$WOM}{We*Ay zM|O#xPh)=+E6u-0uXxmbe0pFJfvCMaDf_Om_lZ^#PNEF%|v~la5;G zReyE_9|lAjq|Du3q~Xwu#kmrejhjf}b}g8IhTnj|CIsafT^>ibW$|`Y!$30HpzYLw{JF3CjSWRKiS9U{0s~?ya#0 z1ImK`qkwWSggR)$IJ(RN=%8#QuO$!0SHtXR8<=p(apVj8ZlQ!fM zz`cvkupl$sV_g7@_uOf2!J}fMUu_RYFg7sa_I*J!Q@svCASxl=VGJ8`x(kz;$q zuCjD4e+rpyWT9yNdUb8nh;Mla%W*Y6tuqT!b9L3q=TG>`bYT{!Yvi4j1%A=q2a|NX zw&1yckTD1NW9>U`6wpU_<>L;hdPji)pV<*LUpiHSOW{T9x zocFk8a#sb*%Nr<1)t^x2Sc4A@CVX_LO*p83B8TH+jO(w`CWozgT!3%(`#i>TzKC!Z z{Ul}#R0qZ#W!NH|Ehn09^U>VdW_B+zR6B=bQEx90y-Pi6D@ zqAh8F?L-FH&OKKj^Q_FqR&60Tt8C#d(_ARdNZq*uS+EvGQ^o~{h%z3r_x9m7oE$KJ zfiunt1*c|F*8h2mdoL4Cg-di~`VzHUAJU9$ks~N=&^W2u+G6n}-*4MBfOs?G_xW%h zq~!-DF}w8cmYsPzt8!SwMPMekrxmFRA{sPY7vJLKnOpfyYicmkPnsEQP42YSwF@jd zn)94!D7oZCZ!BTu%)Nr+juxYH0R3Qpb@v>=m;2jiXZ6E!1lWCz4we_~LDYuDz{{rw zwjWpl!&Goh_=}{vfTmFSWWqIYC6Lhyt?#X#BF#_suG*NaoF&QHy}a9Q%v;ja=fIPO zuqH>R2b=robKu#gS%}%hNsA7b?VPRqCg4Lo?2`x`N;_}&wf3`b*R2n}6-g+6#V5Y} z1-C)QvgX9d;rYRf`bp#HC2r7Ooimg2>BD7F5fCeiR!ZxL#1H{(1d2+lVY98c;D?8z zehmMLgF58d!x0WmJ({@c>a8VLH>mB-3orPinotRY{1@*b1wWI-p)(ZQ;(+NEAZ5io}~=If!iClww@h>X0N{+l;jR+hc2ll5c})mi&E4p^j;t0dfv2qkHz639Z5C6; zpVChN8C`x0xcl>#hb+l(?*j{WxHgjVtwE1Q%?aNF$_I06-;Us0k{CZ3=PrYs$=Jtm z2{s+!5gcUPgS*NL)f!5FL#NVP{uEoKJG_Bm@oHmx=vUrV-d9GXKU`{%I3HW!7jECM z{$9LEWYpWtEzkL9?VX;&JEU=l&BN>*w&7fnRMgn6@k*cQv{;u7Gx$Y35Wj0Y6wCjl zKbjm5ej)#jd2QS(bnhdNW_+bE>{T+zFR-(q)Z`JU;H1IA!#&!6--pW%9PJth=lf@S zjq}ro%t}$~FfG3rBRDp{F)H^W)6sHe6xQI}QSz+5>yyAw{uoUjJ<6P@n#-VC<{44^ z1JncE5EN>OC_0{1kqqov?Ge9xXHdeIzQZ%WoWmN$tD)~+8tnA+b4^%((d{3{@xCp zITv5mp@|>d=DXTexmEdMjiu~iQLEEKPoGT-d@?C?ixv$p|BRhro3<{=575E49U7fP zJj%+O)*u`uqHr|6zHBn0zk?#hKSd=NNH8x!L0-T zS-XH-omLy;^jH3aWT*SlVM#mY6<;ILW0$c$SQ5aD-=d<-@p-I5qx_ zqg|!R<%FaQyBUDgB|Gr!=yxV(qm%RsA%xhIYHQd9a->WRZJ1v>Gejh`$UJ%Us5=(` zwOn{8GvgG0JiFl=<0(kdEHbLAWYq7!%cD#6$RP7B<0#%=7EC5(lzxAg#{eg?%xJ3_ z?`MS4g7T7ry`enNL7n|k`~90fX|oG@_rX8-67=Kt$^~{;sYk@6Z=iU}D2G9JBFtb7 zd6(9%%eeU`Nyu5CDE|on!B*UKK^*4<>I;pagw!g3OIsn4z7^`F$1JLr`!Ka1!uF^> zbcEEdiL?FXvm)X3_TetPIpMKr7IDT`J|ni~w07(Hop%ccTV}W_KcUc-Koac_Oxv^> z64Q`Pt_S@oYF3q&xyXdN`U#os3+2LT6e18BMZBWNVAIRbiY#y^BRa+`LZSGuFRd(P zunn|-(&-0=s2Hak#=gJ>6t}LW3PKC8$}h`?O_;nRTZ~moqzRw!lErNPqzjDBxST<< zT7pJRq$lej!PaDLeP>8sF)<}a%Id^B+4w|B zm2PPDwh%rRSc+6;9SF3FfwQ5dywP@i3`_`rs6m_z5Qc!ubB}1^)(>C{>)A$m1ABL= zu#CJl{;@1_<9oL82>^3AD=7-a#iV)N=ukSCt@e^;P9|000M*CP;m~CPP5Huk?LMdx zU3^96BbCTquH&-M<*)sTThUrT}Xn=*3;Ylg|k^r}JVMuhlT1i(<2ZzS5<}@(?u}3QCz#8D<~4tmRUDnVc*;0~meN z@eTsiH!mMO@-knCS3ZVsCqF7Jb6Y!wTs&{?$Q3bv%t0(E z_~HgPoqNL)cKk|sLC0*l*9?ygA1UR(g!6-HLctWhg@PAaXT%l)m-Jh;JJ2mwzX~$P zYNgo^`W-j~>J~UsAXSuplAA-=2bU|aAjIw}dulF?CPj-6)K9UdaaV6)o5&v|`=X24 z(<_WR4?Rfsc}X0%VETQSztG|8!)9iAk!J4}UD8xaLl&C#sl`Bjp8 z$!RXvxgbL7vyZ9ZLaI@Tn&W$*KL)j;Ta>-yQ zc@&Nt$dZQD2c*{^Ph_?k*PNs4X7|w}X&H`yj5M|lu@*XamHmhwmKs11s;emVIFUNy znU{;kUS*j?t`suSR}1phC5<925CTDT7ZxKhY5P z1y8vF0FxYB6yg91M~E-mQ-_Sz+ql5U-0JO0afc%;EG+K3&DT1xCnK~2oB4Zze%0h{ zHEu=bkgCKycS8*@w@YY{)Sr2e;1;pf%#Alxey7cb*)Y8aU=-sd04B?stipJ>W z`iFLq#ZkgG0$z^cj6%%S9UU31na{?5f}Q4@@q@r!IKDG9@rPe}7(*`+se#>yGy_kT zZIxg8or$$TPlTmnW=69XA1)4P9roj}|8LPMCE?!1aNcw-swUh8VhxEk@BNr~P?(2Q zkqC2)SY_|8WMgG56uWG>_|Dwt7u1g zIVwuQqG9xNY^Mvz)j6%58r-@wS06^)!4p7HlsA)@_KFL198d?95!6aEer2-ec$bU;0P%r{((JL;V>Xl3ffl zcF*R8b{)^}-tdN%y?)W;|qy8@osKQ@O9K|Fm~{W-RYkQ8}3B$utWzKIdm2qd_B;k^HF%lj-6g*kE9GVqkL` zf|_@Z4i4b%P#6#M-|5G-3jVY1V_@*pn*P_9oqutET0#U&o9XL$l`LuONrS%5Z(!F6 z?M&|OU~QxA{#@t9^2fD}6#re{==zK_-kJ9jCS&EyJBK95%ShANX!zID3?dz#sed!&hgo5i#MWd9r-*rxOnc@B8V76lj>P0snKQPH4sF^Y?F>u=8AieeGXz zh?T~F1H4+hfHTXR^^1yqYusFr24K0O@4em^c#C02b6_rNXns+-QmwBF8Q%H@^b10p z%@%LN!i3*#XmXz4k57({8K4};C+8U+*#b|GPR@`q`wVG(UO;U=#SR2=1KyFqx2arg)xq z_K!~MhxOA~M9A_AWBbb{38BrokrmHS@i@W|{=(^bVf>3`PSA`M^rC+DW4(TVSTHxu zE0izu`fz3uAxmlcQNBRf%Y2OhITF*bkf^xlB|5p#CEVLe$%R?-s&${r46k^WW{v4D zou_fL)4$Pcrx^E>?cKfec$xgAXm|QJ(_~|ZjTRAe)b1W!{1G1(iQ&H#b%gdI_d5+? z%C}qzFNAW`#8p^^1GR&vxa`e;94t~kq0bC!NP6+WOBLn%opHlo#L7|F+S>s)p(e_D zoP<@DzkIWYXL?!EG^^-?_Bp*#eckpxQ?wQKxNLL&_MHNMd)W4k_uQfvPimA!?(s!d z)7~F;wr}B{5gEhFRM>5npPU=3%@E2+TuWzLkVV@7K4qxtj!K!w=xhdmPwCs?Tq0q3 z^3Z;rpD3I+eYRpzP+OSb0;eB;BM47VxvWRh(BcniFK#3E9^8~{+8|6hKP|Fw@tS|e zD@mYC;!1E*j>G;hK>U@trZC5t10_bNj?>4+$n!3aU@$}N!PZXC4d!r1ZLfHZ!8(C_ z=mo|Iv1&2>gbPUkv9-H@##R|EpCH}<*O%k~=i4C<5cws3kvYaRm>|X=#$w~0Ob4-) z-PdI32!%U`AkyILT&zeO%H3wo2H;iV=Wg zH}h@e`y?Gevf?4rC*tzoiZ7rS60Cw3v++fO*ys?RcKUMZq_{>cl6bF`ot7JjpU*|a zpjluxa2@$-=!|_|{2-b&#G92v@C)&da5R2Fe$N1!E+*<3A*ik&e!{Z`6aPhaDcq)#mzoN^k z3YZ%50i->)gaO&2U{b`Eqh&mJpt%K~mNuGL*S&$C;sG3gb|^PDuo1Xve@~w<@B>6? z^vufF8LVhG_LLj@AV0;9SKddw@(z+B@7m@0$FadZx={{-(~fd4a^ZNzg8>6Vfx*7# z9LHidERbOtF62C72j?j@?7g_VqKIP3Uv4wimQ)tY-f)gz^BZOvDD47k! z%OR@%z6yzd$wmbH*Wo-0NrAlV$Wmp6rpcsqZ`zU{PmU0}tu%3|jbSh`x3U@B3w>)wpM(}=pMu_xPL2_~ z_ki3nb6|u4%tG015P$meW(-B7L*%Fx)~Wa4oP}iz22`)F{g(D1=?mY}NwLLPL&nKyM(ae4qL3)6PjcXinh~ zU%TP++*5za>$inpZG|TGsEahQ`Pc#bmA^!K)b{vihHkZ6d01#R{*AAUc2#@9zo~21 z_Dusu`qci(zgaD}_QCyS{6i+Sj}SIjsJl8q2#FL@FPEZtH$iE&HMmKCh3ts;x*19l zHwYmdk~sJ6T4AVMiLn}mZyxt2c$v<4X?ip+R``s0A;<-CCP(4 zlx#aV)}+-vTnR8F4`+_z-kaC`$I=Oc_)Od5z0IzQt(c%Xi%o%1uq(q7W|{rkd<1_O zfBlbbpw_aMQ|Y5BS-y6EkUS*q9J5$GT+fj5g9&2WwfE3p#4=%5i)n$XpCi<}odT|j zn=!1KeHscn_|L7hVdAGtH6HR(EcNZg(KaXwci#j(5TVh;)MbcKq7b3i9GJ`2sg4F& zh;rqVN!z-iNmHKW8$ic}~A{iY)xHmb#Sb1YmTwor_PAQ+mN>*y#~y5bM_1d&(R)t@~g zR^rGF$yTxmyzWJp5F?P5sVy~Q0c)v&F{h=YRkrCLUSoFk7&#C#Yj&kPWc`rQ(~n$1 zus(T?L7{3^ukZhVrc$TS*~MAb9aDl|N7FhZ1eq>$0a@F6 zhfSsAE2hF&P;wGhJ(UVZP%hwyU~9)A$y~NAuDc4_!sQXyq++i#f8wkSp=wsT!Q_)k zBqRasT;xbCBntpH-8P$VRV{G1m6*k8$m%2mWKRbXsBM3LL15=ZO$LFg-5k1wScmYh zyKItfKMzvq*a35xiSVVrr9oKwh@YXZlo!nYL+9W$aZkt+n7wTnUECCfN{lkGcqJ5t zbmzyi5BpDHw|b8~mUei@05OxrpJ%@=WMb(iuxW$Ied?fcK#*K2cQ_2D?{j(2L^7-A!bO_GLmFIa(=JWVyLye#lz!&hN4Z&9?mjDvAt6wgh_Hco$x!m z=W9Cyzs^z;vLmG@eoK@nC_#FG*ge?b*5XFxSb>k;iDkd^hW(@;6QuVMMel-{Hnp?{ z;u-QsMB}>|JOjI`MPU}nELX!DBG1*f-&xdRzyB6eAsT!ZsfgulLTO7>G!OU42Peno zv!C97H0+Htjv;{;YUYY9o;!mQN%c7hvE8hx)m>Y3vKzvi2tOubyRb;|*i?XdQ;sIJ zE?$dFuc270J(|=m-9u47YyC>`X+-wY$IU@+gnU((SCdtD@>%F$WRcE&5k{WL2iTVAaOOnBB`Zp>U8=f_>Mb(iNIBU^avK?6bs7@VFT#Oo7@RXsEOrHrg49GavP!G)Ddf$;L zB7%nJ8s1rkog*|gMoj>}A)J(gP|nCw&;nxH>0&!5(z zgEha$Kdn0fG^ejl+8d{8H}jmAr<|T|(=0zZ{o(HC0dx)jM3CS~gG?T#+AO^QUvT81 zsR651M2c&no3)iT?V+yU!O2*(X!AC}sKLn_6^;E-p3L2uB{|g|FVJ#L_i4R{6o-JEQB{ z7>)>wtYpuONpu{Far0e)h6az299XR5KMYsAPjZmMZW5+auf1sGU@dp;A85wY@Rnl4 zxq}lVSZG|gp8=NNE({n{+u&h;E*@YbuTy0g1y$QEuT16N;+(zZvQ2o~RPkp)U0b3g zESHu{3Fc_9fVZ+#T3!MXAT!M6j`@1V$EXmS`}SK`O{tIC(BH)$yfKEAj@%gW%0>xX zo~u7YXu#s^g$Dd|%r>U@#TizjrDr%DpUdcsbg~};rx>E$ryd59lfYVkjAGP@LC)W3 zu=-@D!d0?SapT5rcL>w;-*xxMbV4J7*Zr25GiQRP% zh@B#xs~ARiaeEaeMI?iNTwyx1&!sZh)983vHCA@9=9il=gd$1=5*PU#)R#2%BbQ&W zRfZo`qX_W0$D$eb7tCI|J#!lJx4D$X31{om9rp{x8It6oZQBD4#DEr!(aI`kNSKuo<*TJqv;$c6!7?@373lcW-J1(w^{THxQQDA?*zKdFE<^dh~@k&qfH&wogax?fymcwjLf5 z-s)nVnNj`f48XpBw4QD|iLTEwO;a8>;lzb3BGCGyK4;uh1OnULJ#&i_0|77QFX01- zyd)56Xpk@t0?1ycynF%XZ5!sD@d0ulyKgavF(xoK+=B^Y=;w8hbRhFy1bM5QZ+LR-VlYswjdbR0pTl^TqM+Z{R~ zdJTzxCH{whWI$viM(L3*+Nt#xv3ozj4avCrC=aIPO|#8baVTLy zmwbc)jti!+4cHX+yZH`Mu%c(I?TiTv6vWH+yrPHkDj(n;E@f4nZ?syWVRS|@g0S$YSJ zEL(qn84|!(UoNenYKS=9y(tYx`1N@pL7f~(%p~lxqNNF6dfyD;O^Che<*o2$w>g*~ z=f^!Wf7M6$IW7Tm4A89d74HY&JJ9QQH{O)`SIu7f7=M=##fPjm*FFCbf18Kb!|)J) zn}^eWH?-#u^SIw0c>o_*@e9*Q!0pKd&msGNrjPL_p0Ng$fAp^TYje^b_pjk>WZsO1 z_`G?|P+Dq;NITj0F0*}rw$-4 z&gpSQ%s7IA#~%eH4GvFCi_Wx@=?Sk^@zlJY{2GXhzgK*_=`@S`$JOp=I9n&Ju(dctIqc2+$QY&4ngt|lL#`xz*B`!VyH10gv; zR>+B~=5(@(VZ%4TZCO<|hXk;D_0_K>Y|`%tD?_KekgYE$|z@ zY0delI=M{KX%%JDo8wztueQgd`j9o^I@LAHv4HS!+$X@c*%9EF2>I9H^BMDh8bgbx zb@CxE129AF_aER-wb~stCzsMQwHis?F@gU#WP5Hc&tC#D3T8l{D~VIOsMtNi2`9Y3 zpM0(b2HkV5^u!0(lhBSk1|Q*{OdBQ7@BzhI<^wB*WX9)DCfbu3vH)xkULN8z2+izQ ze?&$ABBf3iq!WvH4VjsJD|;D#Udg|iF>`~$EB=#tb3dAT6@fGLPl0(o%^_+@tOPwe z$9|CQ-0fL-%dIPe+Q-!_SK>P`FTV>K2A)yT@Xx4V;2HnP!o%i?H{1&|Z!}BDCj-T5 zqK2TI{9D{m2`_vI8JF!KY>jv?TVw&C`O8VuT}x_q2+7YLMG-P;1@ZlV2vI7}veF% z8WLKzK= z&7di+%`EOsN9o}ZuHV>5s;}y2s3qB8T#CZ;@nF>JrQ=nB1Wzqzq^Kg4r2YOR{pALE zB@qF4Gnmp+2*YWYy^fXNmNVLzZqr(+v>6VZFk<1!7B3uYsP{O3WFY7{@)cr=M?+{p zI6b;zI^x&u(LFvdL|3*cgYS3>fR)lcNTYHTauO10ge&2n%bRIu^kEoIkaLN4FBT&x z#P^|~==MivOAR0T=VH?ZRT*Z&1qZxa-$xR&B1ZX~u7lY-bnn;&j7(>K$8jy|1Bp|5 z6V*!=;9Q3gc)Z(x@0D0PL$|tT>TIh@rY<&b2RbvEU!3r?Go!WAIo8ht<9!O_AQocn z$?dRRLa>LUNFf@Aoi779=d$mNH9twmuvV_3)Y|;c$hdG^1DCf{!S-aXW8D3Jx;yPn5IbNjonp~H8%>)7 z2t9N0Y~M`Y_pg1d+@OEepTa0(8%ekv%v<(1bnbDJa+TuQ*ibjE4XyL&kr!$BI~Np# zXJzO}kjAivls+`aLs*LWCl&z0)6yct7S@48rX7749@|T02t&$CmYoGEjPhePGuj3t zjKLU!I_ms?B6*3tvUO^4so}|nD+KG0U|uqql*6&GgfLI+4?`IBRtWkp&W>)Q$gI9? zu@d_!uU+^sAOOoCeIo3R@`MYU@u8T4EqM4T6GyGF7Kp9&Y*Ht8CFJ> z>!5(@SZrvRzW}@`R%$%YwPT|dG&RTY5Hit#DONynLpdX3jDFX&~<@2`}?_ z#r5Rd&~DjY+&2iM()z9qs4ZOEZ6dB0!6qg`2F?q3`>m}|*r~0C_M7eRD3#G~&-oIxNbka(Hli_H%I!t@GF8CF<4lURwPMVS^hSkR3K;E$vqM?^kOF5^H>P^ zi{Z_aptFIQNr)j8h)J@4Ykr|WdX&Y@HpTR3-e^G=NR)eOPNwWF3WgI2(TT$2a6Ev> zgJ;xejFYtvoXg2eF6yRdGlAulBAulGhaXu@26O%yj#uWHtW%teqVDFYE~j#M7j8f< z0%k z4V^5bI0eU?hz^T#3e)41J@CH)XQ*I)JMrpCH1WMk^oE8DJrM;fvFCJhpQyysT#AM~ zfDaG^#IwAa0scvU7BZ(!^GyEc`qfA-I4du1ZIZXY`6^cVfb3kUC(&FXaaUN-3oTNU zyMr2nvjN$;^0u0P%WP>h7oM#hXFmFy&sRUpft@e)B$}^2YQK8{ywH60XRR%7Aaml1 z)fvqiF$EgK8hXHt-bDy5I8!IMu0xcXJ}dU9Lfm0KoE7#4$c zCLBSz5Ge9LqWoNMpv1kui%=-LJd|OcUGQ86?W<_mDrJ&!@it=&Q2hM{b3smTI?D1p z8urYSXb|Cl4z1%1tp=t`Gi6lMV2)kJibxZ!XCMO4=EZl!llWXOrM;|g{n3EamNhC9d`rCzMM!`v717emDlL}~EtlW+?6o44mP>;<3P-=W z)S{)I6)on$0-~i)(Zc`C5iNW@U$nf7M9aIyMT`B^-4Q%cF?k2kGRlb-^&}E4BmM1v zLZYQW364dJ^Rw}D?jKm~cHMG-|G+&k8sFj?OEl2AXB(xK7^&hl{)dT|H7z(i{_#^c z%EC|A_0zwPI)iMY8U0l~i5TX6C3*uIs6&%ki5YA4`<#+u=RbRnmn%0d9UgRg*Jv%c z!Muc}o?a!3@qkBnWeIAkOH3n3OFEi=zuW|l*w~!20c3Kss<kpsW4d?Nsz(bOMuB0eW zkef`YTA&Dy$&~U1`Vl8n3K^(}eln$`LG;2;CJG#+no%5WD}(qs=Cg7YKjM7iq!Kk3 zUZ{-Xhh~!DkraKJ5y+_SWn7lwB8gHw1XANuFw zcj%H#d_LtM$;zzjCeC|CenSWZPAi^%PfIb+Q(vN#)Sb)msIYiG__C~MdEn470J@aso~$6{0S6J-A=o#E_~ zEV&Ptl4cLt>XPXwLF5SknO-6q2v-wH`?7hB(qvU+45+<-`2>MKNHaKK#yzUaalpuQ~5&#TY+zjbKenk_DTQV9Z#!9{WB54jg(xZQXbW(#s_3dzP zntbRF21$=iZ$~%CirVdu5v(*Ajov4KJBooI5g7`ECCCx;eo{psmqYlU$Q5`hxdM|@ zf_8`=Va&vTRr*_+B(VHmT~9006+*-?hRIEuG{>zz0>s9*iGl+HTmkP1usj_Z+{XA6 znZihx4oS%1{AAF7pH{2Yjkm+M!z39>O3I{`tgS!Yj2_rG|4*{^WK&^&ax)w<9V|1M z3{WR-&&CNLQVfCrygk||{S3koTO@iMCF7f6ay0^fDnL+L^i_*WGP!AACe29#hddGy z84V3${9Wz?u_v2JKlzqeBz@F-N~jL~66$JyfXgFro5Ie2WL}&sV{s&t(JJW%GA;#c=wzvy?59&O zyQ#7bl)}q|> zrw=4o@GRztt~8#!X{Um@X%B8XB!J@$kv-|EsaoDiCbtu$wbD@ZNIkRdx)>TO36?lY zaL*+&{YCRyNs!Qik`ePVnf3>Xq#>_=CXiex;rcc(!-Qhpv)dO&Hel`zLsXeczWga+ zZK4E$;oZ>)E|XY{?$;{+E+wdjP1%-_DG+)=s1(8kNO!%EtR($Pf`nYmCE+PJmO8Da#0cFm3Lo4C{LK_Tj)zh3 z!HjVnj5__U2({hpVt3pAm3)GY5pt4fc{D}La!ydk0rX~wf}dx3>_3%%X-4`bbd`L# z1QTKlg|r}#w9*t@+v&jc?WIBE<{DcQ0#Cx=AO}8$<@)rS=TDzIF~F_E;S@Dlj@Gkd z%oA|6q$G9f4R;tTS-Vgq6Y1R1-vNeD#U^1mRgDtrD-7FNJ;HG^*;;>$%*9ZHqg@)G z2sTy=stBb(8tx;GM=0li{8dkL0QC!VW)t*Hs>y3Ce@IyFStgMWwI9j}&WyMW;AUZJ zhLvL990EAx!WHx+TzFz{8uXdMLL^A24?yN~gO^6A3d7BQ;HGKRhBg<`-ZP`cV@)kA zH>CyNaAqkfexRDQk*q(}6KgpEm}EYCwr)N%8iJWW;%xMH)68st>QG7BDYb;O-K0RI z0uRPR;EszzYYwO+LFGyL$Wn?VgnR*`LX`<$dN3c-C5m0@#MezzQ$f=VGvenKUK>39 zcLx;f&rQYKuJ;e_%bymrfI+z6`B} z&-iD_s4eEKyTJq1Ka!_O4X3JQNRA#pefor-aA_oWc26?^J&w??TzjVOPw{QYLgDto ze47j=Pa%*U7)1K#pr|QuN6hVi?I&~@>$3=eoGh1|dTN)EFbz1nX)>iG0|?g}3`;b< z=+G&Ak6Be*BzClNf9d7XNph3y9a3Q!Pm-5=NJE7uRcjvrtpwdikN6CrzpEurpC%{u zv-6Wf2qH)64ZP-%Em_UCcW`|RYMUD3x$M`w_Qd6eS9$?8E$ucTXwA|y!xakwMG8}z zV$B@qVuEui)Ist<4@pg{ zSwQX$6rQWwPAl420tN+dHCXk!ba#O~kOh9U?);v#LUE9!S+#|r%8#+8KCR!Ct1DZ} z<*nM=;qv2Nf2G8QR$A#+caHXv0PSG=RsHa6d!_VWYvJKZ{j`3zY`rtQtE5=2hOne9 zo3^KLfplPA9PRHmUhJROSIX^`HRQu$R;?68ud8Au^W6z#493@rq#9LP>8$`Q{?RI% zMlj{@Q3;Un-^$8LyVCv+u8JnlBr+EU2s^kK88@dle*@SYUJ-A1);qtB&R`ml{y~(4GUfVX2oe==(2?^(1^%`P84B%0YkQizj!? z8Hoh0Ll&GEAj>7#8_afzB!jSb){Wv={&d}(UT!ooK-)oY3pL>6P;TB-AhxE^7B^7u z1<`44S@bHlrGC!>06pYgo`9X$hBjdpL&&6>e`baszpa+vG*^GyUj3gZtKVF#EdSSI z%rGeXF=fFX2J8?W_`TXJiy+jSH7Saf^ULfm8>l@K<7;dpNe`cI^^i$%rL;+t^B75p zYB$sF>er6!1e94ar z-t#GXlaH}H-&`QO)RWDYj)iV5gRG=d3(3MwuRT6u7OS=u3jB?CkBMJ*8OhpiCYR-& z$z4c4W%hwtamB@;2T~`+mXIt}t4rM3f6__2iJJfO zGa*_G+HYLftC%p~;RgO1UBf^jpR&syve#DaAO16!MX0;duD(Mp5Fsz83}-H=bI393 z{=zdOF2e-EQ`A1Q<;mU8im&31*m|VMqA?nfmKla$VOb_k^RekWlB4_e^1RX z_wJ0A{eVr&M8YEXsnoLcVPq-v52Ob+2@|pSqu;gCKY}e6c18+&aR(Rig3^rd-~|s# zS6yavvfWm{)&e7KNE)(ge`3;+b(XiveP(FyBz6F2t(Rs#O4y?476e{Q&6 zW{_94OQe#ANkL~KE+OM3^=1G|A+7j#_7iqgrpv#14Zw7x6;}Vm5Zp?)|1s_Cr^6mZ zBXTF%KYsuH$|3`4Ng49y9Woo%uI^d|6r-%`y=kqiU64lI{1>R>2Rb#gf4G5R5rrpW zva{I%jwmQFo!*-1M{3u6bwMnke&=GVY5v{FINaICsGwRZ0cj#+MvCH`9Xp)w+!93Q z*fzEYKX{PIy{a8xpTLefEW1{fwI@#yFDO|}HDDx_XH__1Lly09r6s807i}R?U>T;& z!J?89YsWAYLF+FAdxuJ;f3%7O)nhn>V;<6KmnZAaR%vAwnvazNtM~z}XLSV&0?GJ{ zXh@*48C3{jc46UJVl(@{-8&pi48OBd8zLzlG893K*Kyu0J9V)P!Ec&k0bFbr@IV^{ zP-P;q%HMP@EU~fAxA1H8(h(ntf3c%u)0G6i3y zw@SZ5aqPKa;|GSF{7zcTyv5!+kUlW1uJ05)qw#5HXZV=)0mVY(U2YAeK^8Ih(L}wBTS@EaN?#Y zv5CAz=inW+*^HsQe{MFvYa`IMy^K-$oCX~x>?qwJV+<7Ew1X{>{31;`$j-R3_8m5QO9dOPfZCnpRTGtfdNR#gigdJVtL{5+(MnSXCA3N#L>RgE!#6#% z{Mu=MQ0_inr?S{x?QIg)<;t3XSV_x0`P0I(=g5sF_#)e(f75-C2BTS(+@rgwEHM~0 zJ4Tmv1VrHsB%Wi|XR-8Z4Y&MBv|uC_!2B46*rs&eK0e;x+u1(bJ34Ia9{qT@e}sIY zFSqyh>${>$SLACO3;dAAHXZazNhJ_Q0bXGV!SW>%*2A>>5;q^J9QNmo0XBqs5FFPxM?kdfq_2<(nHbeE3iW*TVGxMoaiuupG~5(x+=sI(cjX zPO8_J*IV{S4Gu#X66@Abx|GwECW_9`iRLPWI==Dr3681IAVq0`jT|*nyVcgHbGwY7 z$*f}6y6HhTp<;(2=I_WwMwxH?;4rpc)jV@_f5lM6ZNg15IL=lAGrroKPd z%)>clxh&>3oezk0T;wwk$v5<%Xpg@&A>8wUiFJJyH%rLy@8PM|S{wSpsY-1tAeJdU zn)U}MWM~T{IwtA0n-n)voHNWPs0Yt)fB2#0V@7luSs8fOSkh^3fXN@6t2BZXIwIKC zt1!!-a%|ZQ0}mEP*i(%fQ~PA9S{xoVNWBNyYA#8`MzcQ(U5%PmOkCKU@nR zcCnE_k#wJ({(KsNTn}Gb_na8)(fL{9=w;)eesFa1vxWXNw1EJn%)Ux-Pjc%!f7v_4 z?Z@HvzWx4L_}+~*gZ$q9e*M+}nlCDAtgDl~+Drt~{o;yu`-7B{jLde}m)w`T@-JbqC;^0DwAygqCxSsTqsZCEM?s;)E9a z1>?%quI~;PQZM#)ck6CwYnmlSaQ%euLl{;x%Z-DB?PJ%G;*V&qX=Q<{=(X=~=ji0* z{1_u^?417KS}RUzPkuFb+T-yJYE8O%h_zPNPH_w?K#9K8rAqDF?Q9>Cf1*F0?48vc z1mc=1uCbQE592;uEu@l^>(#a<-{c`E_OTGiJq1wCem<^8i)l?U5Ouo@m+v3#eBU_R zJE())4qe4T15~pW7f%p6JIGOYh>P>g@zJ_s!3@|w?-(H+QaEkk?jQO+mo9XCL;Ap@d&iCKf8AZ&l$`?p58L}* zY^*CL-8-fq5-WCcdGv>H`$cIvH)$3<5gvz)A0Z+Yudgdkor5DU{+saG7{BKot@Giy z#f_=luaYQqmzY3;Bh3!KyX2_#u0ik@p?d*(2jN@i6Fh#Y{Pg^o z+wl3(`Dx?y{N>BNox0he}MB<(`Y}%Ssls)R}VID6dU3t zc@{)qe20yj6_6%qXYG;bE!fN)Mp;0PU42<1EvnbnH0L?Sgw_7e+?8eV2;tZ7+E%`PixY*VfT93r4UNVUCyf?`CH-JT{GaF?YNPBs5L zg5#4ve;|N5iV1PFc?Vy1I;dpOb~Du2-Y4t*+=w)`a~ z!<`%lC~fkJWoc)y0H=X8Ifq?+=X)&xKp3@Tf6T?asI^=)F^#f>7KAd&@tQuh2tw9q zmu-w)^d$`bUaMY@m+r8O;Hsd0+PQGUh;_5I^=PFUeJr??c>-rq*ge|8Y4q?cr=S9$ zTAl7%so+SHXOXOK0#ItBP}85+Q}V!qT(V^`-O^pxdx$?t>gXzlOl1`zM?^R5*V~7? zf4H!K;uqkmMeRhMA3t2!JNX^qVEd=N18BLYQ2rWcM@NlQ{Bm{#3|}qqtLDc(oQmKW z{98&Jgq0aE$iO0l7kTO7cfrH$1HbpKM@!l7e{z4H5kF4C$IaC$b%QKw4524QNdtA% zYJdov8@WeQiq{`SeMz_n{?CHOT()<^Ipavo&>DQa?VD7d$GHHvCG zQ^a%?6mR6_Bu_~NR%{_zNxG)ih5{?5k?cv=PL3Rt&BbkWAX;13whlRoG;!%OV~2vQ z!{&0r^UB(wIjcw|x0XN*+@0Ol*0s698UcY=?z|Qa zHoM1YTZO$@oj**suM{%Yy5d*MNC8^W!HIkQi|tc&q3*@Wx?)mKteMg&e*nTBk}>Om zQc9)=Skydcu=_bsvf8wR>=Apabg2=J%;FX;=R4@EBH3uVv3j=aEz5y0ZXF+Sr^w6X zr%JNJmURu^#p&#g-mdKimjp~^^^T#c>k?9zo)TAra3XyBxUs?yGuZ`|Rvw z@5OmI<*z?gGCu7fU?Q0De=PT82Wq6c=RptB6#);ZYAFv#n~$I()(Xvzh|n5KUV_zp zf26frm&JXHWtB(!jNp2ze<@GZx>69ivUm@l z-%Ypx#LmJh?hY~B&W95PnOu(aMW;%!Av6dCXOqxeG5KtXi1S)(UpT1;2O?;0u;Cs< z>GIoeWXgo{2J`JTcJ;9D>h_M+^FS1CZqdwzbg+$ccWmcdd!|npSI9g8BX4Zz(70F# z#@vlN!Zm*grb**Gy3P>ca`c#?-B&2IY(#sT%C`|9s@o`YaB7?go6>^qbUn^my=K_)eTyk;-5xw)hpH+Q6 z;lXa&93x)?fAR+u;u8SK7L6-`Q&xQ*w&y^Yx5ETm&e}eMi*AF+cVpP>$giFHMF8J)Z z(k9eagbP7;0L$EA<#Dywrn;NM4DM>C0`B%YR`rT8a4flL3v>}H|IYcz3C&3`Z=dR= z{ak4ip&K#%!^lmqJyOX9W6vX)n}*!bJo7zQnnvg=H>BK9G8)UX=SsP-3W^{(KsFkP zA+Ox#e*kHk9Kh1A%>sK_`YT}?kTucU+Cm_CI_{l;g5Kv6$cs}9@<;K{iD+$ z+rQLH*{%hDRm)phZqO9bT-2@c=)LmTaj*{{^F^4R!nCmW@@JmU!j!7@E4Cae-zLYv ztx0!8-vG%K7X(y}MPEU;$G#5*W)~)Q?9L5nGCx8rg?`lf?x72y4K=0%n>&vr&}ZP> ze~IL5Opt>dB3)z-!AVmn7K{jPK-?H$@@)wDr89RpJZ-$%`yn_qJ^NBEcn*w_-U3uQ zb(wr7l4dV2Zav|Q?poAe7@u0{o{mPN71s%vqmYXLHfUr85(r^F>BUaKO z2z;Km#_%FXs-D{f8j`G9{0Sutmn{q%@crN};sgSR*CHNjNv=R%g zL*==?a{EV+3FgztIpDcI?i%>Hf5W?JcDi%2ckG4jbA59LMxh#F&dJHrKPF3=F&RJ9 zhBb!L9mQ_~&-HDY%^hitq6|w2CIExQ58EeuG|@JAX_U1WKGz2)1aR3^&MOisJYOmCl6jAgJ#Sg)I*F}NXbN+WQp&=e+&NBkHycM zzSePmD^W)oWR?0X&XBRC?723t!^?~NDh?+U9jkH%2%A)r;}Twx9Bd!{tW-q5K|R-Y zc3zT5F1r9NJLm!{VgYrvebz5lFZG43C}0<(^GirO@e3-X^E16WFdT`SjU%{oGiQ(G zoL7u4cpO}l7he*%2|Ozjiy6z>=uTiduNDfUc~)l8oixDwjCi-Hy#h@~3# zuMnn}`~!I+<>J=-$goEq*Ft0E^Ji*%ahN*%#BWMY7t{y9J{eRqT{?5h3H(5R@_hYF zZ7{BbF+4s$nyjoD7%yOZZuslLHvk2Dw2Ge&JcN+6)O6SUI0(BoKYR~onjxQf2j!T zxs;21;-2e6dr?13VQK-o@;eM@VaG)@TJ9o63f2lNIzAyg+iDXUs-AwD? zLXf%od#+Vm+QXcqL+~aL7hB;}K7&~cVfW_L1C_L3d*%hfe_8z}1XO@Mf6A>0t?=p& zUGjHG2VVPxUi}NBP!xCSrX9!5dS=44y6ZRyC)%`dst?Zh&-NMzN4q$!`Dy-22^>k0 zxGL!uZwptAX-fma>G=!c@Bl|?u@-{T_HkQy(<)krbbe>JF%35j6A}|PPpy<%0!dH| zvO6=IFdW~xe?!Y|jXc5T3tk)05=)gL!zlHicIpyzlkZ3=q;W@XcgcWK>I5!Q>BUd> zr^CInm_7eWole7^Z}w+ojX@es-2Qx|HC3!e>QV8dH$7JgeFyH(v+N`w3--3 zu_uxYef)mvc$dnBNBL`|R5-3>BD%0+Mt)3&4mprJN4pASf#i!pGLCH)mj1XDP*l<{ zhGTS{a5kC+6Q@XFY8^(m_WWzL++w)V(E$2NZZn1hHa*}Y+uZYS6e$_mU@Cy{h$v=j zHpn2De;?~Nigt$kar)v$8V4Y_9jyV5_jLM3(aE%x*cUnNGwg+dCCrfIk$}DI6lc;L z7LmuliMuSo!M1*Je(EJyM|^Isi|Qd zA`U5>dcKSlBJ3qt;R+6N6=iP}H7q){ze2Q2e;o?HI!ZW7f2p+}`fm4-p%C^gMgqBz zT@u=)UM;xF(|swKa)elg=nC&kt^O#1qNVu+sZsRM{OsyZwqHbsrZ1nX9YT=>H6G#s z6|mO{W=Z_9f z0ti@_Z5s<9OSyyG5OgAvLSn{jZ_fF0wP{UE5lxGr9Uwc1w{m=?dEe3Xidon_X*7&X zY7|dl&Ey&xmqQ`vx1!Rmz{xfwTL}=Az||1pZwp_Lm)IK%Do$mFVh}l&`dXW#2qn)^ z5e@`kym%dHzSc}h2w)=uG0wZQ(a4w%zt(0cf-&bILdu#4a|oH68^1We);<_9D06`l zR;UMsJLl*O^tJZCmrxuF76FWxXB-PE0vS!0lN<{sf8;>E51%X`CH8U%-3L)TgLsP_ zp{DHI3Zn7sD1_+7NPodFLUmwpBc!+BedCLPM8^YnRcOgQADS6k3{9N_aw98%=FOIf zV>cRrKX`qky?DIU60z*YUuTl6V)KW*7!p@sy1}e_7?qY_XWR212eV+z!Em_axdUe= z97{c6Ewx?R5f+YjfX34~GE3(u?A;5^@fO>t2d3Sw{NOabX0i+Z}^vG z9SbZk7=)rIrxq_M5%ZaXUwCA^% zz#R)3f2~$Ol|zI$+ysDXU7FRb)ngxmF3@?YWw$(BZ~7WqMRM-PlOxF;j(Ko6IM z$Q^|;RDqUYSf~hMwCgzlNkh~R8LYO84*KZC#Z8M1j@TMj7=*2(bbpa2(6Xj9( zjrJ_xv(bIFw1b$AQP~9cAed@k*E*H-pA`&?W>YY#NeT6U-UGqZ9(rH5i*@JjC|_c@ zf97T<2tw_0?s_Y@n5iapdu@Z{MJ{B>%#b6gzt#vNQH$Hb_KpdLgfn0TCGVT3YSVQ< zlzx}x5*j;X5t&7*2C9~(T0@Sv%`y$jyn*YM&MfiuR4vTx%8B`KA>nmu?2*v>B?*8h zq*ip@UEahPAw2)S`f3#sD%{7(eQ%N+`*xBEs2cb(opiN-wI*)?u z+?3?;hL#wLQd*D1oym>^p|(mED3vF8mm0tO99{vU1Uv+IktA>mnaRI{b$Kr|I;I3* zYIhCD@uX)w8$2|VMGMiUcDu%1^4?1(xM4_w1@}}_E$r2}P40JLXo}k%`(CH~2xWAzGU~Mua+^3wtKfR&xJvlmZN+AL< z6e+{)JPJIp3M&1vlko`q3RCub*p3JvWI!{=(#!Ue6 zz&OL#cMvDkh@3kBNog=9riK#Sf7W46CQ>8S%rBny^j=OL$Xsg>9*FynXf>rydBT7f^6soF46mc)6!hq698L ze>K-^Au;UDG#rU7I4pXjf4H9_idmtg2xQ|eu$L}USiz|e7XI!Dd^HtmKJIG+|caznk^b5R3Nkrp6?h=uGYhAXf`_j~=|{%IkY{8UI@ z0i8SxO>tU)c8z4D;&)RB&N~e4A-kf=Wdq!lWWrrEJ!5suhDGN9f5H4R9o)NAMDNoz zt;O33kyE{~bac))R4U1@eugre^g2hIIl8rd1rKeiv-N5 z*|njdFsXI3#w$x#1A%`d>#BkGJtEFgEQ5uTGxZN_#e~+I_C*b)CQx+-6|9kx9T`{` z#Y}gS$INzMfx#j^DHAoM1QwH6KnJP0&9|intHdyucXPZwEk8jP=hA;=9tnmSN;+~R zP1XS`s$tUf4~e!}4MhrEpa_KRY6q9=mpda18Gm7d{%2`}AC*u)0GV>9BXjaCuYI{( zk*X^#5Y;2sVorWD(52E63SPK^Ov6fZc?FNcr>vx8)0MYb`#{Q#z|{ifM2?wyd>Q60 z6dJ2ZaWGRYh(!sIQ5;F!Tg!ZdDiNyASUbS(lu>QLK<}W&6!xi|(O@)YA1w0ViW@8= z1AjH@LcmA&`ewRPduQvV9n<0RT<%;^HNn3wy-6-m_^7Z61Qx2PNjV^smYgMI9s>Fv zz+3?+xnRbRIto1u-js{5&uU%NR(i6Te(T1znWC6IQ*1AeMQ`rlDs9ZIa1{#lRJkvs zstEtVM7%*ExRny9b5(94|2=3Ax}{hBDSuLwyCO!W?!ztVY4gye~{Ge+NU;r6-WOsd2im=R(7Qe z|NZu-kWVGHR0uJ+T!XMou)!&JduoGIolDW&Bk2fa3q&Mgn_%u|f1hWqwTClEfbArG zf47G++Go$hnun8Tr;?KmsR^6B6z#Pi@BjQmQ(hvXtB-~#)5W!69Y^A4+D7UuT@v!& zHF@RQf64#B9|4CUJ=YZJ#90yfK0ZE$7ZUmMHnIRXoYa2LKlco+GBM%?fM_&Vq|a$~ z>n{0Q;|j}V9yNLB$CaVtk4EDzGDxe$eTR`PHvw#;pPh1zW*<~E`0nzTM!V41A$!5! zV>pMclAr-h5TZ;Rq<~@N-=-ANu#aR2{?P*YfA;eH#8tze(T5ihbb_C9AMGa+tdQoz zw#!HP;fWC>*~u-Cq@j|Q9i|47JwR5Xcn?CARz=oTmyT~qsLnw3%pb_t>G=Jz$E#hq zHRFPZeX_NE{v5B(D70ihIx!^7LKYO}5$F=oT{Z2Tc1KxuwsqQn!!X+C1iQzrLYX`4 ze?oELz>8l?-F(G<75a{Pat9dinUTr+g;upGm&zTGy^>$D6+Bl&xq;Xg*QlFKkoeCw z2Vru+Gh5~W*_vFvs#=9z$@Rd2B%{svjNI)D-fBE#>jn-4BF3RGM#h4l0GaUDq+u%R z6h?}hbD+PS50McxbZ`2$|9tywXHUA)ZSC9X?2hBJmc_3y#HIRsIUw!}2@uK}Qc4ZwSfC1O})U6?3uh4n^qwkx5hJgxy`~i-4aIKKue;GL$1&Ct~ zY~&8AP_fW`v7d?o5F#i)zz(8)RSlpO=MJEsa|1|%4}iZvKiz^^nXEzbdF*CKgB0dt z@gnkdD@MszXf*#V+5z_sYFcP&wsJ$wo+9xN)VbVWBOe;azdbPtw!3)45Bgjw!U7 zKX$HKess&-sW-?n_~kB-RjBIRKIJ+z{jv0C>fv3{4#%BZrHVf7ORmd5?;t#i1#2>( zEZsxA{p5VYP$xpSPjeTsqEW?g6}1)&tsx3aV{2r>czyY9wb`|!e`_@&7ijzuE;LZ{ zB863g-VCH#So^Dwr>{+P|B`$(q<7`~#mHV=PNsTikRY2L6~&tV!_ zJ@^)Lfi9jwuJz)1xrD!@k!c?kBc8F z`eJdegV&G$WBcj4baB>w-yf{Uo#@AkZuCR0BXbXU`3fnvf22FLN`E;oGT9S-)sSg1gWxW*Xo931_Hxhqb*W9&c%@3YaS2IeC2&s6!AE|m=#Is? z4iLxa!J6Ke`6~+@e+k;q5k3?cx&=WnVcXR4sP2 z=H|0j=mffjoD|j;wU+NdGkO&+hZ-wZ-wn$F7FtvdQ|vWA=JTDM*E(xT;d0aFr>YKF zp6i4>uk=CB|F{c&sOW*kxek8YdZsYpV>--{O#D#M0gH1Tf57(j6+*Hi3uSn<$g2tO z)+f^s#g|*CT+x4_M%7T_4^FwDEL_L>_v!d_&S1X!{Ly@s+;Hys=ayywqhf8v>J`Hk zt5go>CnL+V@v7G6dh-nyjOgp+hBS-iaEWC|wM(wP_N5jTW0vaV#?%aYc__?maba%JPg4*#TKir}y~L6zf+ESFEydJi+z;g%t({zW=T8=8B#B z_BWV_ubZ0@qs76BH(EZ!!&R+4SF>Wg-1poVygtZ5m>XpZgnB-$8mCaZVx&Ti+*mGJ zz#&~y6{ihiV=yeqt_ zXM32$G_bGEl*wsDiI3r;jcvfxcd2unX0x}h-5YU#46UJ-kC@NU&O9nRU{0aA8gEUG zK17XZf42m!hfDj@ajDC@*rhHsENX(&gF->{<1`Ntr^U2EeRvC@uOjvuwh1gw7@HC_ z-7Z3Zz+!Mp`7E^cG_Yd(3?>dRl~~;vJWTid2hOly00Sca-XFN4M{AqNb$&iQhLw+$ zH`>_}Oi1MKjm()2&kXcSDS+dtfUHua@6?z zf4Sb>KRW2Z7LmqF_!Cwo+GGIhE?S$M9?gzn9Ag_OOQGf3{%~pSV6%%Y=-gRtC%UHM zhqd-_`Z9fqon`HYR@WbGX)3FJcFMh%8drX~W;s{7NTn;pHBhIYyI8oDIGvV7;O3-}|!l zrfblE^`e=@4cS!8K;=Yy^R>oiy@%o6}}1{6dh#FnDv$F;&!4@Fe=5LP;nzK1Uu@ozgR(3Xn8fWlY?%P90XAGg*=7~e z5Z!$HB;6M4tLtmA>SLKuv97w4-mI?J_}#23!Z`2Ttmf0L=eswo`V#T~Zq_N|S4uX% z>gsB7*||)9?}`C*7svGf$zL=41q&=%MW6D|f&4k(pA-3Wk~CrI+`jkwfA7gX6#g!S z_~)wm&X3i64~Vl7KOlw_R-u=t4fW-iuq!Vbh(9SwFp4@vpu4@jzp7mm=myU?#N~ze z8h_FbPhds5vj00K{`;rZ)#cwmtql%Vj+*1nipLi9{r~>Ge(-%`^Y{AijoR;*wcq!V z;Dg>fR2Tk!Q2YIA1xBWoe+}xb?;Fx+1(tzlwD^Wu!8yDxK4hJfm>_~CfB<*^ioqGp z0mXuRh|Tr@x8<`lq{II9T9MISbA;cq4c7CKYu1Q^eqlRO>S{Bs^%!hyL?BJ+-ZA^|X=l=!A}Q2N zjZK@g&UAnEpn2XIL&ul(>a)fMuPDgy^G$C_e7+CT)ZGYJe@DBESG%mmVBw&4m4GPM zixXE%me|8mQdPfx-Z^taH*Ya?ot>_u(*}BNwOZGXUDcpI>&#k+j|zLP`p?aoy^Q6x z)kX^zUMD!!u$+7QPtD4=1_ziKd|o*0!M%oAM2DIav)unc?C#YZb+e%U(1?3Ye6KM6 zbP$C!qub;7e{nmjN;&c{UVII0=#P!d@IBdAa08=ue-$8|h|!kb4x) zRl=j;+;Rg0+^lY<{sE14+3I`VKuYm6n(y!4eedae!eqP$JKI&z)JqAD3&u%dp)ehX zPg~{W{VclUF$^tEqf;nOBi(c>Cfx%%T`{f9tpx8d)MU3U7{)31&k>G@0~Q@tUDgt#?LgAHjLLw34(JtX&Vmk{wr_?1>$wc5hykAbV!d)LNpiLYVb_VBb2T=-pi)iuVyv))u6ka zW6j!?6a2}%3NpDQ^4dw1e2YqOL84y`x;ZMvruflINJL@#8n*O%PjO(t>cZCyVmb7# zelBodQA1@jCb(DD+ObE2u;-*0bm;n|e+B>a(M5gI^iKn%Ml;-3PxTv@^>{M=2yHRN zI5NB4<7@;55l1UOF|Pb;)f#PA?rSK#>14bN(pf2E07r zeV}WtZo(^+Vsu@XJ1h5FoyI7rb|vt56$v`M-z&RxZgIX(?PGq=N~{2`q?>+_e-!K2 z8Sy}zEeid}Z8fjq_%Ml2CVv?u2k2|aj^5~n;09=uNH+j264cUCtLk2auWG$}s_4R!r!T~b}ApMCnDkyZf=1)LeyI)g)5Y3E|VgpJklP`_?-S(xDT#;KQ z4p+){bD}b>X2Ic?C^rizJ`X`vcPbpUK|Kk+pz75X$&~k>KZ6SKCnV3AsoM}=4I%KN z^A2?X=g*FcY@{9j>BR(P(jCHmVNRcqkrnWljyDS?Kyiv+d*;g6+CB#i6*ZoeDNH$6bqh>DHC z&bj$lt-9|cG_3r$&V2>`8{lil(IJrJYg}f~CT?`$X!ri=>I&jZ|DY=$VB->uR`q)> z-4@D1fBBpdrfz%+tLR}mdW@htuLcpyi%p3c!=bym+Ll-j_?IMHy7>YUuNF<$#^A^w zwjSU^w=IPOqzj+abKk$Or%P*%#`gf^ks#31b~`WsBJesp{U9Es202k&0GB9%!%JXS zeGkOwmM%qlvcP3ADPW%qJw^?^YFl1bxOfWMf6_|l-&E1JQ3duZq76KHl0KsizCovh ze6K*j&QBQ>hi#E`dkFuzVZ+VO1JDQhpls6fhIVVhg_T%AjRBy1xNt`8nz7n z*2vTJSkLVSPm0khZi-eO`!kvzdsYfU^rg zNEk%;$rU;3R}i#o--6z$o~#_EePrWX!H6p|;3n-XpN=QH7pI8OLz|4dR)Vb`fe9Q> zP>kqJh(-X<>hZ^f5d^_sGBL4)|AS1Q5ub*LmEf5Jm6W)lot(qd-rY_2sXVLDe_hg~ zPy_@yj$fisbQ=wDt-2j8m>cDn6E~!$qH?xZ*zHM1-;k}pjhu)mXAMN?;l~i&{u<;j@J)6T&2O|cf3scO%_a!q76z=ocYblNb4O==An4Vc%YtJA-wkIc zIC72NF!}<#xcuTUmaWJanY>P)DtPJUkVLJcfj!v(k(Pf7_`A+97$$P5XOO`hcakX? z_D417N=FdYC!9E?T)oZu5h~jgU@2UKeyfX=5bdC7S^h6XPv}9v0;8w|e^0)m)!W65 z@UXN|G!kw5bf5vc-9~gk*jbe3qvgJ0#e5j}uG~)I;VoRquZZzbZpYFEqbcbn&9KSQ zYV^Z`0h|7KC>5lnaUhY(hLFzH@Mn?89#WVjyT5#l7!?TDcQ08QYAlZdEQ*$rdpM6A zSY|vGiZ)HCX{{xr8zj^ze-bXvLaD4kH^zl`{xJizW`{1 zynr6qPde(C*Nd@p9zNW8^^_rHP&MO!VBLTc2rl(+`E+ze@Tgb*P5KeGjv&?HIOFek z)s;8AL^RaW#ZNcTJ>=0joE&}iSt*2t>93BhshdQaW~1ne}xvZ4EKsxk zGW-La&i&(elrXa9vYJ|1DX1Fk)o%7`RSq z@F3BRSFtT0p#m9yf5eKR6cc(g;t;$*%~PNOC>OH55YxeRMS_fB9jD2Nk$2Fxs1{e--hp@fWKyJq9>4797v^*PZ9^i0T@f0WDw3=ndf4o#D$Nrvz&PSH;L| zfU*UZcHzDt;dU3)`Oougasf(ZI-XS23Nz&RbcBHUc|UBo9BjN(&Th9-0)gFvl%6KN zh!^{)hnRziFbC=bu-)$kY=PZb0yrZKwf6_JpPxVbe-~sW;brtADMGyIcx3&q>sHSw zoMxe-es+}yC)E{K7+ZY>mh-%7VFFtsQ1<&ir>zdLj0>#CgXt9-y5VQ%;G`h)n$wZ{ zjJw2_!n8lX-t_7cGN;%UF$LitEi&!o-EgUp52i&BV5L3Q1=V7Xk~i3Yw1zzoZK@IzPl|3+)p+WuP=)Ya;`C!7pD6w2Y!h zI6U|p;9nqw5tGw8bnsND$P^?EZqtw~_>(Kz+~qA*OWRuzcf{Xilgr=ZtuB8J8(#iq z+a4Bmb$@jy!kq3;234lUXo!D~5M21mf1vTtC7)dcbOL5*?H;FRS)WuNARb7X)yT4_ z#M`AXq4TaW3GxRkt;^ok5W;x_0A~7#vvg_Ma25&vLX&p)G(Gg$S!^57-2`1;&zhGi zHxv;W1d~^dwy9z=RM2ps?Oa0|p1>S2?(0o;7o*yG65WzyV)+t+H1>tjNf@;XKc=d$#zHfca3Zv?w@iu6 zX6%|A!zvDL4>E_L6Btq|hxi|x^`WDYtfX-1thCV{28=0ptBRO>_cwc6cklW?Tfa?U zM}JyJoJU~HX7X-2J@1iLgpdu6K}duPfm-NV1%Y?WM!JvX>(&RNLfnd4G?NLE=O*09 zYh#cKHGA8vZttS$_5`lCZO~1Q36N>NO*Ktzhg8GP$*gcPU z5Pdp5+wpiTPx1RPapQX(L;}iOtQP`fQR4}OyMz6x3 zs9W5TV|13528}SKBe=%ttcH0(6RHeP2V;2EfzOZ{vVq~)zRAYeq3FiQk8i#)j?$y? zeY7>$s@097hl8*!N8A>h&;b5yShOKgJ_yK&fcZkn&E?kPq@3ADP|?7<=2`d^0j2BE-c*9d(YJQR=$f zA2y6DeC>@dESlYa^UHJFSEZZd9~Gq;^sF3=u}S!$^V1Uf8^sbz!Xay-Y7j(ayxS0Y zf6a#it|uT~vr))|!)zg9s3H_L7=M@w8d7ciHxGNIw8Mq3;lp&T9!^32c6#<-mVCFeMzJIyHIMhHx zVlD>WsrO!*5_Q0c9-RbYNPrD%#2{zm&S2lco8`5G4M9&*AVjJMU-wa|~si{k=8v#gr5M9X+DPOInvgJn&>V zyO4jGfPNx>K6|qDibdPId;BNa`+JSAyT+FApi7XnpX!&|8!#g-9MyMXb1)f|r?vw5 z`Y9dp-oAMT?|Zea(J1X05hO|Kz)>=izTdZk5QJlaCLn?rGha7oPWO6J7i7{TIvK zrt&Q<8{j9Lq(D&un@X631$4QGrpMawEP&wV}mX{o_@HE zxit`8Vg+t2KzQZMkcw zv7$L}W0RIEp?~*yQlvUlNju??J>d8e;O_JqV$R5D0c9Ju$-bDu1At6r;3R-{_VNeA5=XYU75=q907nkvr`r_le zcO6M{b_VAbw*p-(qV7To4^gVs$?e4Pun#Hgw>XUR(|>Py9B-w!fBb>ytZ#HATJ`^~ zL&4dDHmiCg9>f!3L6mzvq~}HV@Farx;l5SD4xIsLMne62mr7i=;V7KKQTXcKEx~>T z{ORh;QKFT2WDfMF^p9Y{(mAPR0qx(^u46Cz1Q+if{GJ5DSe_b_4vM4>@?^qZ1W`gJ z!_%YcU4I2b=_HffQZ+>sW9=04a%PGwfM^Is7TqfATt=pc?X>xB3|qT&v`b3e$1Va} zEa>&|dGCETn}!dN<6MWQzwGp4Lb(cW!+Pd+c)Q{Nk(i|tUEk=ynC!6Pz;Fi4_aX<@ zC$0$KkCZ&M(2Mz`GCx$!I>me?*r@5t>|>0F;(yO}LNxprCL#!N^wLz+P0r7->lv-K z^u8oYt^qH2rj>nBmm|D*^elN?TxZO#@%|bXP-MG3?wz~TKBL<)jq!A^iriw~`i%!a zRA%uI2Z>U4u44sEP9dz;H^?X`CIQ7V5BE2 z#NG8UoQs$b9`*XA85hmVDiUi-HokB+%Y6&gkAdTvy~VCgub&A|lha6H#qdGIAHY_V zR5v>YReJ1#Fv6Ar)f*Eh+zEixcm_BHu-k+`X$fX&-8;FurDYd7%pd{YG)a-n0e`c_ zI|xE@EQO^vDy)`c;4zV3gquyZFD7`6X` zKgk~=swZc3jH)j0c-TdyJ{*uqt7Nb}$Pwr|QafsHr7OJfQC=oWMI*as-e8-63y1IeIb0#~{f*j+t>SEEwT|6ZALhKIz~Jx*bewT6O&DF?VCZ{7T5~H68QHxE<->|Os`_A-8bPt z+M$!=Wi|ukd#}knLGoP^yMLX-!VIbhHz=Z1;7U6o$5UAE&AY8R5x*RBOdq81H5miP zyw&W3HM*`q)8|F|a4ZqQuCHKraO^{q&`|7~Kra{lPLM>lm%(U0^!r>3RCFu30>=~e zI+RQ{P__W>kC_LJfAzC7DS?iK=x^$E2~k!`2;=7?F?@<|a(Is(C4W}j$bhwUn?ykf zZ`csgi^a0Mx&GQ&m z`>4avNMCq~)3_3LSnze8Kdl=~fEVF5!-GB*A{2JSrI|oclH0j3 zJXJV)qG6q6=MnEgc3nhtwihU`3OT|^E8xb!kZWuuwnIhHUC}KA7n`zA^fYe{GN8X# z;td3Opc|Dp3JZu&^_KIOt^AVN>lw)0=L}yxbsdlspN)@>Mt|8h1Mg`@*=Xuf+i3G4 zc*$*k^zP}YR&@eB7#!jRV4jsb0k@IT1KVCTAwk!CXSr#hrMm@v^EE@JZG}!iJ<4aJ zsYFiCwe;j0m1g6nB7VrY3KA2U0(n7!{j1*5>1s@fIM(m)^p9}W9T*Dx2*~N^WG_uE>eA#WjenyT4N^E;Sp~N@L;t|O6sr~( z77#8xK}oE0`&l?lM(Xya^Wa6`m?z`@aBy+^G3lBq>Zscc7%4gyYy(aLq{=M&G)D;j zP0j+;5k{y!4Up+hA43*09L<+Z>$ZoZ6LZHCq&7|*#7h(|sSsl036j{IhTUS}&7LAi z*DVoLJ%5KC+qH6?k%|K~xCDqhn!bR*Jvk$#husv45Aku+(Uw376btG@=alEb&Ln~i zQ_1rXQ7qCej6E)U5P{a#+WMN49ol3i8&bIL3V$G&LKz|94T4V{_72!ssc15%FNGxw8dIw0Z z8_fhx+>?tJ;_Y*-6gXTSJveF0S>Vt_dW%1a7IBO`svC`us9tdIh3Ge2x3D3h%yXw_ za7)4#@SiEAi)*W(DZ&j|6}uwViLORWN3-D)q55j0T_{OWQ}1+cq>9-~B%c%5LdhSrNRJTG#4=698M9QTW8jh za*c^a6;Imn`mMBy0K?6E?bK9oAfzB!#(!{oY+sO ze6eBD7_nqNT-%siRBy-uN~4#ASj9ONN7P0L!(=1j>V`JhHCae>rp%ZF+GCG*JXFk6 zZ&CHo>x<#(`ScYG5Q{U4YA-L}?2(%BVB0UiJ94NW}0`VyfZ(V~#Nzwep zX(qmFn9I6RlIFij=b?n;55-i#nXVFwZZA77TR&lU!E4&dz}F2MEyBIrEq`|Vulv3Y z^_0lHa^fCz^bPj^>8m%jLG9Vgn&0ReBHTUSd9p{T+^p8A4O)lrCH?K$-mm!b_T?Tb z@4c#>)^>4X_{R?La+{k~+kO4~*|Aa{AgXxbiN_a zT0~og$FP4OBL)&0zg|sXrPl^=3dP##6!F%xBAbKFHa>@NhkVVd<3M`j$>jWuA;^?r z@eB{u3EeTmc10VaRXqFS?b@{5^FL;SsHL6*!nKFO1d&h0EWU=^D&34`dWBvdxS6RK z!p-YPSIo}oK~i9)K!4)-&G#GHd1eVG)D8ScnnAtUrHND(9h2Dr?OnaaIE+Tze@8&1y> zI~TwfIRI8Sx*=%(68zO^Ohc(-U0+bcETp;&g<0>zcdQGSDd^XIt7Yb(W~lux69hVI z9y*MFX!oHN0e|(*kV4VqBE;b?9kV0R=^fk+CkN#Qc1<9Nf()$(W1?JXKD6vcA3lB) znAk`hpWmlT$S}nKWudJ8-zfcz|NldS-=Oz^o3Qf?Lrr(lWH$x4OB7la)I=W({ zs0d2pEbd^pZ5(%rCG@_pNmwbmAtWD=_lO_XfOiX$8`?*@ejTuNE&Nko*h&GgYh&On zw9xBb7|FqC*UE#n%669b0lEf;u*ut>iGq;N9`WeRE-aCyiKHp%25-O$Ix;p(So;4&kL3B5!t^eR;=21O)MBu*lzvYVJ05dicRT2-1U0 zqz6n}gKi~N%&P&SRZRMDoJVB>`u=}p7t_v>#eaAw9E2yABfN`-Hlll(LsC?U-G{fO za=rM!#P$JXO0a#I;VR-pb36(I%G^b$hjgAfQ`k6yTEWU7SC3@iF`1O>C6_AR-8Re8 zg`&C~$>&-a%|&X*QCwgz=uf8xX2#8PwQ9PGh&RBcDWV1CE|y*=7!{eRQ(>R1XG zZk&)S5g#5JW^E?ByU!^zg^88~eS}D#zc$^Ew*1jf+6WcM05qWRKpgZwf5vajN`Gv$ z1|39FS%HM3Gzx-b63ipYi9|&;6>fzEOj@PC1-?A(rz2dw*759Ql#mKS&?K($2vJom zSjI}yfFNXp!4Z!5#+zaRN z<(JGG^xaO9xA30XTUuY05RxFF`+u1#3&I5y#Apfwl$Kd*y{?4ac)u{NQ3iEO0_T+0 z?FnypSt%dkGek52o6I4maXLc``zeekl0$Dopm@QqlJd}w8e0heBgE;bwUs<8?z&N= z5O@{p-PHJNl+7|>sy(oviGO ze;K%X09+h{n|jqNLB)T>lHGIomo0mmey9SZdeAXsm~-338tVp!DWLD$yyfbnj2<%A zRC$)P8&xtpK)lcjO(1sun?px=nG(W8?>M(K9g?-$w|M{b6uuh zC#Z&ARl{1K^obukoF-tu%u9|_CFsB`rK!R>Mas~Nn47Fw9luXxUGb4Zf^z4%f0Hru zlYGs*^+~S2*uCn^qMp^eS>|N7L&Mx((svg|&*QUpm!7EY9(WDTOnV@Uq8BDc+2A?J zH063z5qF5h&%;MVyV}!d&-ZrT;K<;#M2Sq?C`e_3oEA+!wf=YFIHLX%!~vXR6MrTD z8*vk*WPB#SYk#6(>O=~A&2&G}f1gXe1GK_wKz(@Ls=L(F(8fs(A@+5VJR6!&MH}S= zGb_#H_-;klt^QwPpG;6EP z+WG^UZY?Qj_7KZMai(r@6H%PkcqqRenE<^FS}QH!AUtMAz`U7 z*p}8=N*V-4tF=vlrt-&HyLL@$h(&dja&veZ(V7+7Fo-dTsW&;-+Vf{Gp6%8Cr2E{g z0i@!Sv!eQsot@Y9e@{(rTO*+!?z-~=ci%zwB6e(sSh+5kBF8{oH^4NoIo_bv?dw|h zgL$kugzL4yRD!o$X3on2l-Ri2Fz5mS{*58v^`T)(5D+v`)w7+AVY-NL1)wflIZBsF z7!dx2uINz`F)I;s1}Mhe67Sv}#PpW5D%OD*8b>^!R>}7Af9_qg({P%BKsex4BRweW zFE5ETDU1NB{=mQRPZOw-f8rm92-N!nYw)CSCqpRae<`fR;Tud9)e^v}Sh`e!w*1bQ zC=thGG`r`+5yXM&KIUL~fsj*{O_U^#+PWT`fx2|isYFDiUj=v2dcn(=ul69}N;oz8hdWB##y1 zwGslLXT1sxpLl+vGe}1g6o|5>v>4trN3&=ERC2-;&9)Jkp8-*+lBHli+yFd;Zs!NU zY-*X){sj$+kgj2URk9SDSZoePsJbr=xJ+KL(V4{ zvqBH09o5D?QPKb%pEIU)O-~|mq5UC0mN-x}_`R`?8(u~?Vt-+DH>SuA(Yjrl+!?L) zg}fJ6m0}nOAf0=Wpk`IxK3_gWl*bhU>Q6Ww-`lUEKEU9yI2NalwRB5$wThbP{4Hri8?#Q*3 zf;-Op!|f*K;{Fup!eB%i`g7hN&3W5myC{s7U>nkt+dqH;jtR)YthP$A5RBaBQ4oqFjKD&@U*(ZQ z%cEMm4Fi73$K&zV$+OKvOaW4Fiy_~>4mNV zm!{VW^Ri@BN|OKsbC*dEW5v0$97q%6E6PO!aJK^rpjnIny}%?IP_HsXrd$H!5aJRA zm?XO?V97r#0(q0$Xwl z4K>uryzQ+BfW_-|v7$HQ?p3IOcsgY+e|}+u z3c11#oqOvE_x-|46S!QQe_nc^q!mNC0{n>tA&}t;0V-qQg@@+F-#PJg)JSh~tF^+| z`GhctA(zdbtM76|I~lfez{8!R(uN|V_Ae%qJkfmEg{cRCN3K52x<~3vyn~fsyY`Iy zyDJ?Q#nU&4X1|4a`AYA_Fh^j@e^)F?=KU{O6L5>YKoYSUNidxHLd2K538A$IX_9Fk zHdH=7VZ~6i*qaQ+6!GgujXIh)fm}$!1?G%+A#P9fX%HbUrU7zWA=OK`G=P`gY(`^6 zc>4)t67|qA@_q9Ux+~%vr4#BSv&d>xU)jwpMx}1iw%S{aR(*BXSx_Uje;#JRdUK0W zJk((n1xm01UrJ9M9Skuz0!eBofg)<2WQfRxz-P)Z3P>*6xp3aZxa8|x*hCn42>gy% zxUVIyy!r@7b8{P0EC_y{F_?&!iZ655T0!rLgNU4ji5>h6Mf~&A^uzE7G-aKh6ZV?D zrR4;nhmZ~u$Oau6Z{SPs_w+#x>ANWgz7xL zYK#n;N+N%9tZSwEH#R0AjE_2YI|2Qb&`woSb#eQg)8$uQeWmuQ zmV@haJET~`g&=+B?!_FQAflzcpH~GxU=%g9d_v4CQxrcDFbsv8f9Udy7mAgRcR#6JREYeYXfJW*S)1WU{0t~soAkimnwsqUViA=p(P@)Q1^ zuQ_mWow7SWa*i?b$A_MMQkxbjy%^eUkk@yJ`Pxcy{|+ z76*6x7vHi=%mpSTpo+c;D!BH(9c8B(0MHlQGuQI}sjG%3e+uUN8Z;tN{=Ni{NW*Io z2{?2g2JmL=gBYwK7AvE2In)r!9EyQsPTsv1m67^!{CxZ|n>>O4KGwYe4PE1a2Kx2Z z=%Y-n7&e5Qk-`)4LP1mk_|-9#;gs<6`ooFsIlknK;`Yj|B67|R#uY(Nh+eiOB=XI9 zbYV9`bG0U~ zK6aifRk)5)GHlJ4?9T28Ds&%|FC0^~Bx~;8dUYg%b-fZ0gg1^MJUBKJ993^RTW zJs8ue9oHEnjD`Y>>J$g0gwdL~n00Qb3cYmoc-L0E*`SQ8@FiWzhG|%}Q=Hb9cOgO6 z^x)8^f1Pf;*?;hwzHsyn@oc2v!1N+qEHon(Yu1UH?k94|pzTQU5CHcpN25W{8Sg+h z95w9eA=-T(W-45|T?#}z&O}=X;ltHN-_I5qh0%|#15TOE%HiNLD#5_(_a2^)YCYVp zX(vJ1GTSDP9*%~O9;US+vNhk+JcjNSEZsYlfBTyFMt-nmSmw=O7Vzld^ejDn^l<2^ z4AL4xu)y{YF8(jWmKDe z<%}ncls13LHv`05XTt@c2r6y5!iv?YdvcZakd!V9PkUcuRv;^oLXGOY)m_Fj)V|11rG{*=*e_J#(LG-RVFD#TfeQ=$cWGUbo%I%Iv@20I| z9Ge81dkneX`+8UW;>V{?)8U8-h(im9nXq(8gJt`?Gs+kawVw2cAF#c!%A50@IROyF z2zldLdQYDm!}zIQsJ;h4_7XF$Cm`6MnqvGUuAnxYiaD#R4y!B3?vO@vbb+WOmj`7F z4u2^(F4XlCDhQC%1`}h{lkX}|yJ7R;e&SyAc0S?7Yf^|)7~_y;1FkG$N+;Gife^VzUg!Gy0PsH7j^UxczhKj*i(ds&M7kUT_ys> zYcRFUP9ZPhKU-&KxZYN7*S>A{KmPU|j(?qxjHv?f@SyyCB0shfr+kc@>(+%-li2!N z2{HMnRaG=f)-rW6=&lrkKi{9lxv%Y0$hxe*4$#bp%FkEV!1VHY52_j_F4gtPB!cj$x4*p?^;% zW~;Pn+jw&v9oeGVz*4vfMHkSKGYyX z-iI~;(5!Q2$STxuiCzW}k3Lgbpb)m!75u3^aP!)8%#knGDU9_|)GLHCc>a9D>W-#& zE}mF^O8VU;ABjdK{NTBLw5ZyR{eP%oKHUlJx_N9k2<~rkfQMda?jAz9m;40EJ;j+6 z{Hpj!=C27~35YaT%0F&N@@R7lT96#2VvhI!LbyUws8|1Qi5IdF=j(|BvxIHjS08a?SpTc4c zF*%f9{sWA~Ed0n`Isq5}28KHtwkiN;Ay4*A%ZZar1>G4<0P?51bBZV#BpA;Q73>|N zDJS%qmj#c3?SO@a)kZC_0@T zm>!6l`!(bvIIg9qW`?wclcec~ChvkXOa0fqz1Il!78k>R1%QwV*V_+Q&K^C)t$4&5 zNQ*F~IckDZ7PWgarX8JX6{m5N0#(=316@bQu7|>$Ve?osaTDDoE?OKvDQ^*BHBk|6 z*9Hb9??gq=(93 zJo;_x&C6#m|BO?%f*KwK1&=i$!D=Vz1$;MXZ_2pDeb8c)bAJ(s)}}zL%h_N6hc!CX zF-#+y5rou6o$)4k^gJfw-oyCs>C#}zKs*f>Yr*;(p;PWrfej%flu*6ZSsmATz zpzbxmx*Xg!@2^*w1=+_UpBV6oNv^J86mhodzsM^AUw`Yag?BbTQ^T6uc27ahupSkF zK;jZJQ0^>xf%F5ZrdkI5;+T3sD$2bnJm7@LoeQBt;0I@CWN*&_GOZcY&&IjJY9DU~ znRd?TvKE$j1?P8R3{9)77?q$Uq_fS&9fZIp(S7dZ1OQCG#R-P+SBsuRw zZ;SZe;eT2EmAlN^{Bnjkx8z>h4%_Njhj_Dx?i&cRAxOElWbPI7+88(pSQ=l%Oo}K< zcpp{&1e=39Yo9+mD`+g$=ox!I_7t$b$jS?+=y)64_)A3Br^HJ<8cUdlR_>+uWG+(7 zHryS5iU_8v6*h$waSPtWC4k%R?y>mM@lx?c0DtVb3JxWL6v{qjy>ogEcQd>kb72+` z4(Nqe($_5>q8?R^mNGT$2%sZaM0B6duEU75doWl)*t~_wT#U~J_;1!g%iy<&rfMI7 zR=R2LeXC_80X%fzh9~zizOqIO+Rl1oJ0vH9^b)Z%G*?^|%NcuzmtJjS9$uF@j4sMN zs(;hg#_n(Y@$$+ZS%8!Dxp`cRU8NJe8P? z5`7jbV3vgfXP(9Ft*85l2GK7(3GIn3;6>DB=*L$dPr)Za?l%LWZjr_DsvUvNPP+U4 z!+{)KUA^(p3nF>LI}eyvMk~;MaXSe2WPcGF8#kJ=G!**%DWq*P=nphI4_7?ImBMQZ zwXtH9h2M?P`WZx~5`6R2W$8HQH$00}nY@pM#>{o=C#7scDbNyIf zVP*1DnGV!~XfTG3(7ffv0}=V|0c;7n$Ysex?;Lnn3Q#*%Nn88|u-rR`IO`p9H-8Ga zBT(%w9x{^Y9gRYgR8$N1Qy?Up^g8-vapZ_L;;zZTW|Fjb0rO6eZ~;OwjDDl~j*W~f zyE5MK#OW74%>?`b{?jGsD3~$ES04_7xN*_d*8)1dSw~M|Sc(kn(Zq6-|NI%Fz;rJ9 zE=3IPX3&7Y8|Hh;rOVjSP@czy>3?6e;;2V1x^Q{o0q5_OpF{J=JfFTb6WoH(9E*z{ zncrJ`WVYVi1pa;O0$d{$u(icsj$y~2FcBoD2H}7(b|BOO6O43m=SvDp9Y2QlDMq*dgB`TP39WG#PC|*aAh^EE?a8Yt$*-TN_mMf z8{Bhbjcc8sPLGF!8HjO;IXE~IATuWa-_D0jRA4)~M+^_^Z#d19U9qn^W|6KygnX5| zczlAe4G4&ywm=9uHxIb3JrqO=?tqFN8vG(^KFNVeIJYzFxnb9$ ztn@nEs$$ImxhgO#s|a3IsDFM9^f%1Q&57_hU^`|O(ojd|5;gJIFi?$but?B8pk$lgfB)M`Zb*Yu(Qv>h)CyJ1w zR`yld+(E|#dtdY1yeE5Z9QQUDcH``PdK^71|E^t~-0Koo(&FnX%YUK@7)xIocN+H# zw-_GqNSle*1KqMaO6RsVBZD#LYajqCIusce>MMe4EG%&ZXXFq8H z_Q{b+a8LG=tu1nYOSkbwdpfsmzxi4fm_Kw;DrkVIipA^Q&V$t&ZmAU96GEt zL2e5Yq9l2PA-~iFBV6|Vyr0-XM`D^Tu+J-Z!Rdd7yCS%VJW43iyB(M4L6c*bT9J=y zz;W@O5ne{Pkbcldu+ucyC;ojn4Max}&3z0pUcqJ$WJT!KsEabz4dYd+xE(>q&J9^} ztHI8SgPY1vbRjX3Rn{CBzKo8SPJKBkyPC<$)>K-Y-Qucq=lr2RhuVl(LoHOpjrEtm z_$Ys5I|ZXCiBZCT;gF?*?!PqPp{w?dBj)gV;c7&U^j<7#U?3tNrSp2U5ko2yQ{HqF zuSEhdb96XjIuD-ZupF?(9%QhyA^5sv2xc1=4iqQ$yP%E4=J+<|gHJr1;PF1gh2g!N z<3}({k6zN>UJONHxD7%>f6rh9aC2+kaCv{HZa^b*7eJ1vk<3u;jtXg}5wsI{1^4BG zT_X2sH=DI``*nzumskwzAXoKC@AQW=+&v1X5k)0WPlK<6afj?MBuV3OWZpQx+bq|i zr>l`ZC_QC@28>M7H;f6no*2X@8g(_C4-}cL>Bs?UFn zQH_(Z*%!Er@;xUfgnK@8?>8`MM2JbAjZ zR#4y}yCCk>b!&#r;wkNf!`%oiaz=ld#cJ69qSOw?y zg07plw`Jl`S$nrYbOsY#+*}6Qm~*N^_rb8s#u!eYjK>q0w$P*yHj~j}Me%>9Z`2rM zV22EbrEdDm`qA`!?ASbh1SsemSL-bp;8Lr_QwMnj@vW=cdwwjX`Q-2#{nPXnfk@H$3K#-LQq z8h#9%igM9AaQ8-y``R$$8(`;!COQ%&a__iw+A*|E%S z!Hi%m1F(=)vi=FQ`=9D7 z|Gl3s|9xxue;urtqAR*g?51`?d){;egODi{ZRuoY7On`!JA>^SG+@o3JBtMTx!zZo zfBAj+@ZkGD*eLg2osKSQyB8;NwvOehc00qw$Z|TA)kk zo~zdY$7*4J*f@WPa0=d5I}O@fY?;6_3y@pAUop^!2b^emZhVRJD5#k{BTDi>9%>ue zBt>i`Bv7O2As=9L=2crH_X(z}47k8f*1uxU*05*$i#M)@oFX9cI5jBR*D6NmU6hR- z#849OBX<#_T-ev_>#h*>bHT%uXs4O{hTPh+W%_#ngEfDA00M{MD-37HHBk8PgIU@P zIk#z-#$<=MmI{V=E7dkeFRP>3v7`HVTEO@c20QK2q4njM@W4t};oK~xf6b=y7_S!J z6`EKRFw9+*aAeQ6%K#4_kf?#I*jJ7~`xflmp8Qh;^z!lBjAJ+h=ONUuG%gjo?>vVH*=P?E2Oi6{&9~(HE*+m}X-jSu$qVv77qx(isVk-{ zgFZ;l+?NRz&>S%bv$1Hz&^1un~p1xb5dA*QFfl-wOx>Wxdv*}O{?NNmqOwdh=i<){mNHSycR0?-}!3W7Hh)w z<$vd^F^{jSB7ghO)PKDsLkLN_`!n}Z$Qu2q6pr5}RDU&r*43Ko-@a{hvF&L&8yUXk zX#1wqWg+?8{2q@#k@WMPkEm+94nW;*wq5Om(1E;{T8;%Rmvc`9^b8BhFH>x}c+q;EZ6HV?DqFOz?tVLRng z-(Y&IS3NoRa=v0iT^C`Jt|UykcTou4Z9($%e=u!4=Rn67pZCab^0R1GfOV4_;H zdYTS!eZ@pw7h$TdBuv(o++<%}-O_{|1pJb@vhCvwOi}-knYsR|C$*UfZ49s|oTEM? zZCyDtg5PgBGXdw7r@N_Bf}Vd?M1|MROhEsaPE8uyzRBNy>lC9@&v1DS`J=+PLS#(gt{6^!UK>|MTFr;J^O`$j48c{Lq=CSB_4zrP zpo1+7Cg`dd?dYh3(u(x52oliS8yeUZE6hn70N}aD5*oN8FSJ5eZ4re2xI`bd>{hSPioPZAdzq{8Ky?W7Hz16P-y)MB_nKouO;6BG2AM ztt8ijvTc^oD-aoZyw3L%&0QMG^r~s&c(SUl2xL^WCNh`Sug$W9^}01gq?oHk;zTXT ztEuLAT-l`jV9~w_nInG!(m+&)*40*G(p;H|ml@(aEDo*AY z{?}ev3xObB8{Iz9Ctdi0+P1ldGIkrO8=#(jVaHaO6Pwy*nE^6#Z;Z^McWVq z!|Mrpi#5nvS2qU8t$sFwYF6UzR89FYg4yB5(NthvL)TD9%cO+VcI-Vx zGzW0wit5Kh^&P`8gD0%7HrIk*Y|OXDdcb>71&J<+PH^;xrpFedt=7OhPQcG+lRJnu z>GZYGjvaRr$T5F2j@0MLbRVrsLbfhcKv3dGo~B*Z*Biq=^yWr69y*>&a-F)KYm_D4 z;IzsbF0lg0`gi0g`0C%4LY3l3!n1+v{V@{2LyQOo%b>CG&Z5!)7E=vAcNy>0J^zJ9 zqA|GUJZ0UR6logZOG(=3ENbSx;{XKQYZU>eXii}aix_`F2OEney^)Tza0QjzF$F2r zW&gvKp;J|cHvh5O(8ar%Qz{kqQvjaRj9@=SOUFV&5r$z2=!}p=kGvIhMC(o&?)ra-q4S0@We_tIGN5*C`|)lzp`TrC3P=g>QH()FE#$q6=dByRZi=tM&da<2 zOq;Ne#Gvw*O&)TzX$>I``=-kSg@CZUSx6$!C`r1mR*eLloD^D#h7v)gru1c{+K(MT z_*omyaApdJ8Rdiu^o6RH1sah`1fAE2AbK%91WSK_LvPQ5(-eJrLA~xy^jqoIeekoK zkL1_u*BP^U!KxQMLR0Hfi7Qv@U#rfAvXwD=kr6A|>VHU2d%W;H$g5zYb~-~w`_j42 zQFy(C14h7AaAP5&x=zL9NY+{key4Wr*R$Lysmd`-98H~I7RaFk61?*@bZ)!s{zvSFWx0yB; zJOKFrMN@CX%JKvnIRHXHy}z;EhdzG6T-(WGeyvTh6sx&l+OGD*RtB;NYFYyv!=vi3 z<#Pjs(hvq(PsCI0W%U&~Otr39Iie+rOHk8)1^-O9a|x3jsBovb0Lx242L!mV;f49Y zfOf;I4Eh%W!vF~ovzqE&r4UjK6_yp6W28dGbi5%>_a=lUVtPH*q)P}Ke>yz&il}ZL_gOCg;U&3uCgAIzry&k+i zCpewXF6i&YfIE~&qTC+=#YXro=YWmA)DQ3_m6CQ3(N;i!Lwb|hhUQ`ch$IhxeR8u@ zC0c%KAY2}kaM1dYY!Aw9m1?m!+S4UkMyqI(AT>oM1bV#MZA0b}xniKC z^n&&EUtBnW1XITB0{>FG?viN7yv7O?;6LlGMDO79XNUlp8Ll(y>B5gU@_3@J92OtqNinG#AR@I=gZUK(P?s^qXf_y zaWnbOB%ZvOIJmuErql`|=F#%s$Kw+aWqn*6*CCw4-ZD@mj4u~=d47f&>be(q2zW8K zN8M;zedTve%VB&0)S$}=HPx?1f7>p|3l`fk^&Hc5NcgPEDP_o~PaM-UXq&>b?Vo+#;K*z|LQ3Sa& z1Bx&}fL`%d8N6r(CIXm$JV`d_XxC%my(L#ur5`YMY-3aJ|)+y+DC>+HM2gJSJ2 z`7XvTa;NWW?spIN*A5_yeUxothTrv9AN=sc&k3`sCg1(kPk&zfi3#=+M8+1xDkc-h z3=BA@v(chIZWgPwv*v!U**|Es_p@cGTx3U^8OY+o`>0w* zr>ieKdNul<4XmesoZ}@u6SUYJsSK)@;$WYZ{6e*!4jr}-rf0zSFmBfmW~m55@Ctd( z5$fLX#;=kAF-2~b(F>S8PcA_B=L@RV4Pil`ZfrBru%h(Z)+VYcw6@Y~TMH$I zsDz+@m6&@|(R0NMmJd^)$EJ80A-UY8c^Od;g24CUktBzeTZPTz3h3~rV*oE-Gsg0w zag2RtcrRd<$qXCg|2AwFpYj}BCzF+Z@OK~u`qbN0Cgc%cZ6bpAHf;|eFk2Ta)PeHWW(EaP);ZcRj@^OKy1|! zdH@NF@kwc0<1LlU!gaFdH@X7RDUXq3P%{6d0~FR(pijkJ0KOD@9KfglFn`n=OH2KR9c`Yx1e4OIw15_D5mvy#6nQHo@N$R*ohtz_rVK({IgzL)?sxPdqLm<1%%6d~0 z3DdlJjBLp#|HzT(mepRv$^lzH{zV-MVZk9k|GM=F9t!T)fB9cCYT_V&U>%=syM&IQ zXc!jI!m7C@&k-%+wC{W11)d;ugBHw?Ci1CX`%{wZ?6A-9B=?L}t^ zc?*Kk%M4$npI+cNFdjt9pQJI@5f%6E1M1V55C)y4?XOKgAR8~mEaxYcx3<&*E;umd zfP}tzlaAfUt<#z}$W5Ja6UQ5+xdIpDPIU{1QFXA~ajXFAq&f}!U+;Z?PMZc89ia5K33TT} z=>Izv+a}5=s4z&W_}HKQ!bf~)xWKnDYYKg=e~N~_D6c6YEr?u~m?S_ERjd~gdE{_x zmkPH9(p2cla@F}97hwR{La#Pk>kpbO{NGOxnqcRSI{5dvvwpuh?EHun_X5BluCM*F ziChh=?P{&F)*5PmJ!rIjwO@R-`}gnv&}{wqhgpu-5}aGV35z70Vnq1sNPILR)B$8ikr`kOb(qR$T4iT zfwe{uG}mAk&QMQGpy_ds8AB-jvZ{9ou*x*q1vu3M9S1Zs{D5o;fNVV>oCVzo_`sBm-oshS*pYsN9Gj{#3!N4# z=Eo>~)rDf)3Pa|#hz>Q8Owy@Ta2EUsk+%z0+;)F|?3{vD%`8~9!;pD45@#YPIrLwX4aZouMjBUm_}s`bJzDnze!} zDSq&OJHD({lrqsU6WA8E4OJK?(Z!(9kKgrxP-zzCLulN4h|62hNz!oq5pB==V@b(+ zoFXkfh_;jAl=)p~s{H}Bs$u|BLqu7oV?{5I;M{@=vyX~ zzi5OO2B_+(`Rw*%N|&9zt`WzHRgOom<%#LQ6Ktje1YrbJDrF|Zt`E<{0hack$VSk#vh-ZO4t*G;FAb{ z4zyVDy-3s!*q?mYw{22iNsUv2A;e`7*jY&QVy#`-Aapvfn#E;saV2&w9<__U;QM9d zm#P>OVchO6q@vqMw8hczCv0kbYm%iXMUL*?v0oVQqgD$*Q{&+DLsvz|Wd$pckGnv) z^c~e+I5gq7iq{uZ0e#Nr>bBD_)yDFF(S=MgpTE)&OX>iHtM2&$=h?c@gesbyh1n1r za=aHZRT7%wtAbk;k&!331Y5W#Y4^#Ym1t5t7=fHp|C-dmpC+Ki z4=#`h7`7ABR?=wyuuA38%{qI3W}%i}W1JJ_Eyujk!TnowFg+g(hV%xhi98a1Yde~g zSZN4}_h@+E=Xl2;Y7~7%{o4>X$>RblY36K`__TI6>(^`$sT(0{Kx9acI>}IpkWh%B z2`*3E)M(1#?l0~w~j?powsL>4{#eOaQiZUU%Zw>EdRWXKbwX&y6_F6l}zLKeq$ z+O+7r_~TGq{g!nWfay8HCOSlNbRgfEEn-_Wf*u}AldZmgTra#2eh!i5IwNN(7SZ__ zNR1W^o)KdlHWAor*vCJA04+>TAEOyrAK5s)aP!s~S`Qy0Q#;#lY;3*GeDaHVgk0XZsA zU(sNmjE+|M1*@5Vw?TMwMr~B!CS8@IMpPOR-Txq%a3?`I3xxR*VP3IU3*Cdh#WO4H zTbM%p!bSFO{6@cj18nDW!MS^@o4}nx3{hyTjp>If4$@@6*!)>-wh`eUPf4JnN$;bgP>k{Zr`fRE~ z82PjH@p!y-@~jSaWCC|oT$h}Z3mboQUzi-B-q|hLA-qB4yb*`DS}G!J3Sl`3-vv^$ z)Y5YdaSDx=I3qJ-HY0c-2nZ4~)od={LO1}DMxen3xUK0~)?-xhl<`7jl?eVnfEPBo zLX3hs&;|8+<8%CG1DPe68O)Sfz*xym3M+JLQZ6UgTH>R)^~l?mh0R*EU7ddfe@64b z0#3kxGl3I$WN;wbXJMIcje|j}_Dn*~AXNyOGQ00^1ec94Ys`2E7IkuhBq9-)R(nPM zlK!)EUPCFdh~KK4Uo6KN?7%|i0+=@96>w3IC-CEVVsT+KA`ybD0KzYf2y!lW!GWeH zLT%(ApB8P~TL_Sk@mp>RzqEgkn(IWOaNJPJ&$u@x2wfoPzp*^Oz&vP}_JYX1<@gA& z7%;|pUzS%_3qC;(Daoe93DBZZEnh}f_eSF>cn+$4!mK%;7IYGzGCc18CfsdNoa$*i zff21gWTQ^16e<2(6oGyOIaE!`& zI+1L2GeyxhD4zv)=f&1*=mRmscJktv=IWClTC3~$7ys-2`emwr{nEt$PJdapU(3Jj zuHA3_^3xisqQT#5XukHK^~?QQZ~1=f=ljjogY8Uw`nRDgVFzO9Qc8(&6L`qGqXr zwfB6%*C)Sig|9jzX2bEZPLQysnb${FxuScHGtM*p5-U~a zH=K)sNAXWHh`fKLr!%cbOck59yTal6ysg6R*S;Ibt|3^-Kpt|k=-*jiJ^?2g9(jccn;LS$c`3}=XDsUXdY4zbgmyB3yCy1-zH`3mgM z#|$b7uxeAHiFEx^PCae$pC(6Yr!D@| z2hdKW?s$KF@J?Yep*BIDvkhAb_C!Xw{ZfUvVLS)jD-SS~zIH|7wH+c zN(Rjxblx1qak6tJ2c%&)c}irDs@m8NW*5Bb;Cx<79I&XFh1RM+;$4a09cr019W1y z!gnrTskFhj&_-e?R5vk{q9G5OYY@3PPiDH=Rsf_P1wj~`Bf$NI@*=OLqL>uv+L654 z&fb3$sJZRLMJPbf@Yx8(dD|wpt#aq=1yx>*nx1r9!7uE59Es?z2ZT$>s%p7pgb~t< z*b+#b)f3`NaGq<6>JV$9&brjGNb04Ih&&OG_x{34#G$D4!@^2LrKt44D%D8|3ik;Q z0FfKKrjMAuV@^YF8bf%=l4vXlDx-H!lTLqkTshOhNQ@<$f+r1U0r&=##+ztN{Au&VWCQ7pxlLq*Jdg3IA-Xt9eN7dNJJ&_>WM96;t z>Wt_|5Y@EeNBP=-qnB7PR7hB`1QIImYM84NF$vJ<3IT#`pGTmOv=8Uw0>1^M=>?tC z&a$87?grm8<(4@JvZj~>F4;T^sZ$Am%saFQn*$g9mW2)a_!8VQ0Pd zoKy!9fewJG15} z9uY@950I7!qE?FAIRZ=T?eJ#y1o{*l2#LLE1T z(EMu;z%#5je}Jv?6>k**OdlJ+4B!Xzzh#O%08d;@?ZRh58bwKJ4mj+0?iGJq-+QEn zgaAUM0#3!v4DSbjJnTN&IzpC9O<(_TrTYjzu6p1(vKc{G9tkO0JIyi)ii?)XQXOwH zyHCd=4ZnGxZer7{$Bx+Kr3NIY{*IZv!PHONHEHR#hG;TZcc5H^RTDI--}lC6wFhnX z3P%x-MBsuvcqEqzj|LD!w`qU*|7Y(_yW2>Pbm8ywE6}CB5@3Shq8${ZLy?qQwp!AN zZ1ALCg!S}p%X%y#u3({v>1PxGH`&L%alqj z8cca2-yoTG_zqUMpW|}_VH=RJq^X&kvBIPvxmoY?S-OAojFb`dEY-I!jWjD*cN)9r z%Mb)RumLe1kD@F%D9n?n>ICA1v?^b5Vp*lkk4pLHdk3A;I(hw|g(ra@JCu-9`hLN* zLAzk1GS^U27*D9?3N-GqSV)16MF%;pU$(>ml_3ulP7}Yr&@y0sS)^u|LSUE9OoTfX zknTJ0CNO^+!4@ljLO4Jok$q_Yt|Ru~eLU;qQe|gmH>F=fwuC9l1kud!Dw&|MBqm+? zg-mxzGBy@02tyyio5g~)79ERZgP&sPvLr9(l<)K>XN)#I(>f)kJAh#r!kl&aqjr1T zy2PwFNjD$NJeV~64^R!YK8!3J4CJp~ZQ?&_SJ!_ELW&^#{SY?$&CTul!_CHn2ix1n z9%p#D-q_lHv|Ycy*?4&W(c@zT=b>-w4{Ne>M^R`rG>gvT+f3XrE6q3 zn7VRJGBO;RY}3IF!`l^MA6RJ$e?Xcd&W+4uac8u+GU=(kl=P%2HSqJO(&l9xmLajy zkx}v#zqVC!;Zj6$`rQz!ayMzthGLcGL(NI zW%JC6O+wZSl`&`mG(F|cI&gMp#`X*$b=V*%i}qGlsM$T!dO;14;#ty4{{(vIzf+~p zzdMURYoTqVf_g(hRKH}6rDg<}a9=v4nLs#sHxdTRjJPiDR)9#r_+bQTAbM%~-q@&{ zktUL_%T>>aN}lzP#;@t-n>M4t+39~qe1^U^P?ZQr7Wme0kW(hjOFU~v^J%ab0uT71QjkX*Ln$vcA3-Wo4Z3&lG6MpBl&&** zKn#((k$+7tq(E(&uSVV$88NoMOhE*e3+!2Pdq|djp%dRJ&L`v`BeyhsC;)$=$BbIe z5>sdk5^1Y@4Yz%CKcP(4OGJlQXDk-Ryaj24r^3-7|A`EbjqdOi<2lwDBmQUdA?^<5 z)8@lEVnB!4Pxx$ic;1iU%zcPL0UYMYv1lB6=9&HO$&=m92Tu{RC@syG4?s>agj@Xy z%O27WM2>^ORXJold=JhB&q9CmejR+?l=QLB9wAAbD}HFw`!MVIZ2aF4;z^KZvW#*= zrUy(J+#9}W$05OZsNHP*Q3HiSzS?a=j4%|d$!xhL^|XbPLXJ=Q(hw7@2#{;#F~~Y6 z#-_M;5Ne993a!A>QR*X53H{$7joBFgr%JqT7Fhz)4CXKFU40_JU1)y@2;jFeM!knS z-i&!+U?P?!SSS!pC;kUE|H2mL zYE8qH(+;8BC+ZMFxWvQaS2)mNg)rb{VQJ&S5d=eohEX`r;L~za1xouPh70*PyjEUo zVZ|wnjmp^AvF_A1Vm5#Cq|I@HjDcj-LAk15KD_2FAgCaR3>GFF;BYH@iSid$HdV!5 zdA1V(;gNKMAuqnLa$H_HT z_l|umk?#H*#4_W~#k2j?rx+pqk#CO~&QV~0w$9Cfb|XYVGKzobXlw^4XgeDhx754< zaLP^S4l~|&7HkruPq}LxkcW-(Nz`9ae%5Rjx8#%ycpIG>3S>Ey*a5E;nrKCQ-K@~h zX6Io2UxmHd=`85cHes&_U0}}X3vDhn6HRCr895X15NNI-@d1O6A+6SEtaZY68t1Z5 z9v@Z?SuXPULppzg8#BgLBJ}dDx92EqHo_w5lDj`NY}M2%B>Zd93sh$nj${7;&)@j? z?D^e$(eVZ%6&FWAYX3F}(vBt^NI|jayIuIBc382UnD9q)r-*%;Lm%_LQtL19aJo|N zB!AOy8q_jkh`IP%_GVB)+Jb~ivxO>}1%?&abBTyL9E^VqD7A;6SO9CO-T?~hO&OSr zc7OqKNf_DFBKU|$>2cF+Qz_8DkpIdAWM`5KgCd2GOgFY7%XZJ0rzotDhBRyr8+e7> zBFkrxn|F!B;q(*&EVAubeZ{`=EXXgrQ!1H9q!EeMgKr^t!)R0lT-?38%y1&BrSoZ1 zdN6HGUaNn>Www}xsn>-&awR#16(q$JtSXE6y!1EHIl)Oz-FxA&bgJ49z(}D7^)#>D za$-_1th|zx3IDp7uk1SxsBchhC-nwK0{hC`O>PmgE@0?adYC&AC9aCkHm>%OQ$u&A z9Y-P6Z_uRZorc!hF9hp#2ra3moS$~mFM3nd#V3EWSJ01Wrs8+Q?a`(X8v0XWLKP>+ zcRhVrt}4W-A}3iVqx_+im`gzNODb`~a&_m_ILfGxjVE*kGiZsx;6|?#f`P*lKq%;x zzi~CqKbcFjwRMgcSM^WR@n}!mL8Ba<;$qT391_5i5shkxIP?uWb*gIE^o9Xt2%gOL zs^@)-DrZ-607kaFLhC8iG&3X(0j2rp6GVn)(p{Un_ z13(X+O%fo8f5X&eenGtJ;{Kg0YgARd2-3yVX!b4#FiXL}J#)-b8I`$F!>1!MTw@O* zn1wUhj&WHzWap3OYE{{~xMx-99RGq)@&A9^C=eU#p*ZHdGqhE2?;x|_((r5p9QS+8 z+)fQe*$k_bnoP!s?iI02JnP^fa-zuFf>q=7+i^=Szt+4kq>YdW7o2l>i6@*w@hOL_ zEERHok8_U0U3bbA16h8?1pt2MDW}j$8YyqvR(zPe>&(iOEefeZ(?G%xLgEM+pVEJ6 z1ttAJ`Ct|!7+q$_mTsd`>*)khNZmc7Oz%B<_3Gs&lx-Nj(=2lNK2#fA&_#xIeGfEC zcNGE!y&$^@z8`bM+rJOyu7~Efn9H0MS;U1K-RP4xgv9U`hLD(AM}>`H)!0LB>a-fE zE`f{JB;N^apEOqKk| zF}i{m@E7$%g9Wi9H8Hie#!onIrDlZ-L1u|LNjYvsew^s}v$%pgaZyYhCF87+IgM;f zEkW^;a7E9-E{qg9eYO#2ZrQS_v)c68!1mB%Y91nslHVrCaF)t57<6NR|M7p8E{<=Y z3dhRBw1J3e_)^yHrKEfWQ0vn_0w7DeX8Igz8}~ZMP*Q7;bOx7yd>)Ed{=laR*<8YU zmshXejnB?^z=_?{XYzD7OFeup4^Pt%BYF6b`8fUfo;<#D|0#M{GR4ZONMeRE0?zvw zl_fx7e8OqB!zl|=7asgZ!k$)QEhsJn&Bvi_$orG z!h4X_;H$TcOrcJrevAR&P|C(oKGSu7CB4%E%oKG`YIGADV+Q0b-a3`wu1f_BW($fw zFlxX#yj7Q2j9<=aW#`YdH4UkFa8-t&^1r2+p z(MpEAc0>MBlaw+>N}q_>q}jxVqd@ArLjltLKCTy~85sk$#q}Xkp(ZPhCr1rTi(9@@ zx!VIcE%+e&R=*Kc34PFOYG~w$=;FibB@inTinOB}!f=IbG9mopzMW7OG#L~a+@pKP z$b8;b0g}|)c+L6i+rzMX-3KyRI2OMM&Dhzi z8`QI!1J(7AZG`RN^4v%dD8=cP22A8P*m=3BJXQgnu}=GjZ?V~E5XL`64V8HXZ<T!RXK?{oD3qy`5o8-DSbYwsDq!ST_jr90h3E^+N^8;2UwsQU7QCd?3f=Un#@LH%ZgHj2RBcn!l{%?nI3;ejFU!#>c zzV*oUqbad^gqUXg0EuTa8;VV;!Xj#~nUqQ9%HDr)EOxX!jXd!qL#j0SooI$Y1^3G~ zY3PwEy`c$K?tEVkS$$%gfwKgzDS4+06MpU*cP)t-v4$C|1~c+0g4NFgIva2*DtK4! zfS7e?Tg~>ZnXBN}4Uzf=MVLDY{5t3c<7g?)>}LjZ7Bsp}(H6%UII9#}573K7Qx>Gv z2Bv>BE!2Dxz~Q-E2A@3`<{~};1Qr$}UWmBt%@uBUJ^3 zLMdFco1nq6pYt<*9$+Q>R28bwR3cckC7Z&$JVdU-UYR|;gMMif%f7zR;Vw{`r6~nc zSJ9Lu+^K2>%x~Y+kw)+3w{I*~!@qdla@>DX3u7KMK+drMHLaGcrjlkc9s;N_TT)$= z%xMo2$KAW3y8|}~83Y>GY`mgBktvJp+a09ho<4C>NlM7ck0w>jy(5_$)!MwRY8KVR zNoGO=Qk$DJo8Llyf+`5f{-c#kwk30uPEUtPHR_32B$~WsQpGJ~@r7B+z7>|hp}~L5 z{a8RIs=7G999Qt#bB@7Fw zn;#aCD*1*4U_kT^zgi#~x~kNf56Wdj|Ajyhob;*(!poi8MuHrjm6ag_;^IkiG{#L~ z_8pps$|1w)bSy^b>k;MZV&kktz@2~bLrW_@u@8s^OG=hOJKebr4#CI+W)r#}#i2S7SiGxsS$Hw#-HZ;JV$+M)gDZJpYh~m@vTSn=i-`Fjv^WJdk7w z&T1`2EJ&qrjWk)iHo!xyfMI;@f$>eC?wmvSM zxoe}}S~I6d;J@*D6yd#;IP}mE^}*qtE*W{A-5Hj%g|=Cq(L#{IPBM7YH%l!>xJY8@ zDC$Z#n|qU8Krz?FlAM1LLj%^*XZp>Q#T{f)=661|CgsWHlo&`Mkr!H%bS>s>?Hyd6 z0M?Y-OX8c7_MF! zy8@#-cZKOK?0wcmyoavMFBIH*02jWGs(`_TC~GH zZ?#g*HkWp>3poKtm$0!5B!5S+V-5K`(0~f71b9Hx&H)dsKf1|& zbcx&+m0Dnk*}x@Trb?b1?yaqz_VZS}gA%1Reicqb4n%jgm%g#yGwpraGO=XAx{wJA zPq7v-aZ2Z)yep7i^H>4=P~8_`e~XInGb>qYdq_?H zb$_N&NzURr850Cn8_G}F)tIy^$j@my12-;27J{ZwJrbn>-Q9gI3i z5x~6&lZ16S#-o}`mcvnAe0fLix&ncr;y7g`ytUxwv(uae`Ttu^YCNBvqV(r?PKx(V zIClPhQ-VL!trz}wD2{k%2bXkOnU4lIgMTV`Th-XQc<6`cy?V$rs32@`b|IGuGJoCH zChqbppbD2#*iW0wd>{*abqo<>@tq}y3+{oyDb7rWldtH?odiC@7*O>bs zhy`T*Bf|v>&5el0lKuKZEZbK9FJs!Wt2DN6h-ixlMYa(Rp>LU$%yB`mI5R?7Ab&Xd zV25QvHI`ysbZc4~vfK)M9X@WbcbwFaOXXI>;%_8@F4Z_GAHc19x_?}8CTdv{I3g2s zsj=ad5}#_Xw?{w_Nm*}AM41AOEw$(>Z)$vaTQ91)l`!UxBK&0%P2)xWOxYsjXWS%m z?F^khsT1sXT{b&szoUvV+X*mhZhySDpJvguZ!k{mUV~ZR^k0Zs3wMCsY}8;5#XS1W z`7go+v`UrRaUU?WJIEna$!y72s9cNLY;e+Z=yeOybY0HEpYaTLA%V|F$ZMfb+Xg|e zi>|@yOU38)Y4SC={&k~PKbzt<>OJ?pXeWBzRy_O?UrfV$WdE&h-STr*n191ld2tqh z<_se;%}qweh0G`6>fMgV$|AXi(`0^Z)RHms6je+|pfbM5FXHC}<8x59T!U3-WY}!hPL9Jb=KvLY$L@MJ*@U=o%HzqV2c(7mZ z>t%PquPQ9z^5s$c`)<|`NPkcAR|~3z1r`g{TTs!<(EzGVb6PBDjJOoND=gNl&y1Rd z&;-}We^*qrLWhC8wwTuUMSWA_G=gE|SDM)MS%|M-fzW?$8O0fpm)*1<4|JB`^W)^# zrIh4FvEtieilNfmg}rgd={+!wfZNhG^P^P_B1 zBDSQU%uUERLsE_MQ?ZHwX1(mJIJS$k%FRfozdHf^(XFYMh4Hgu22l%nkzgETnBv@vKi)syiKe(DvVW5>st^WlK?maThrGMaN2aFV}P3N z`DSh!vv&(gmw$>FZ+>^lo8ocwgo0hBM%4TULq-3xP5#2(VN}QhSXscv4ox&#d zPv)CpQqUTxN!#`*7ps*o(mo+NQT4E&dj5n7+17|91lhx#^An?xy`MRU)9TGYfr%TQ90elrQ#N>1>2g*JIxA!;|Q1Qlp#T$Z~#gR}Z2M*Sc#Ws7a&NLkja0LvC6Mu?-i?v=oip5T67fg?q zIyWejlZ@s}p_Vvws>1vcR2N{{HV+^a^Tiv%dO_Z6Zqn3`_ME2s7A`!HXa>i8s&=6; z_R#VpbtCvbfE@YWI7ZYZLn+X?S><(pVB4WzQGcKt%+vOu-3D**PJF9W*l`K>w2JI(^bjRml${!h)4r2^sdRsHy5XT^I z^M9u{YUpR{=2j&C?)!F>AvvySQ9iRmtcS*~P=d|Pvoojgtdw>XW{i+b@`RGvAU87* zFb;)^RT_?v4nry1DH%(4g%y+&}SM?mJw9FCh;hcTfL%8j)YO1?VF z^bfBNW5o-F0CisqFp;gzA{<>9l%(Z_q)CKGkfl1jO%}Bp=-`Yu0uRd8usj8Aynn)U zT*T%P6P8WuJyck?A6Q8dU)T^leI!uuE9ysDQ4LqtOeXP#hsw#lUK4gTiR%~w4)}u@ z7koP7AwGz)TU<~<^?&|8UHgXr{a9mR7}B96f4O)!xqcO~X+Z|HAKrxn(2`fz(jurM zNle*5)nM8zDS3Idqc#7lxH_#9Pk)n$xM)(^>bE3D?=@;9n-1_QU@x`$)@JS7w@qB# zSJ3d~1*)Skv)Niqweb#y&YFU_+Ql!u>jy%Vk~4WP7-(omM8*tWkO z&9-G8)l&<`f+^(Dt)(2X@=o%GDJdBmPpisrD6cAE+nW;9<69m;omJMw@;_muwhiy8 zClpAu7u>sQaz)+-#SS3!Br04>D`CYD0&Fp2xq<=Z)Tap*4P`>3Fn`Q9(_kkhyXlX& zV<bsY9md zc`7)xoKqBaH4?04DtPk=LZ6KI@873&RGcfgD*;S2_(QU+@xWU#k%lRuwZ?cUr@a7I zXnwJlL(l+cE1*lF~>0idc--h0C(evwskz^l0sDaAJ3OMbM9W zU%hY8kY-6>%Hov~2)0Lo6;uxG9 z9}uwTa(`bM|J6s|<4T44e=HhH>B4xi@HNh{WEy-ej(??cP*a~T32o||B7hgc>v2;AETl+yJ5uE0 zv0uA1oH(UY^v5%>gXydJNJN>bNQXb^L!mdj>6Ko>?zrs@!Ts2XKjF4$WA*s+!4V`i zn1H0*?R+w9MjI#b`CtPyL88M;z4Ji?-3Z4v%4v#Hw81+JB3v>%#RXuY$$QjPN0ANsBK!gONYmht zzH5*P5(d({st6A3F5O(pA#jxooJqKSSHQ(+=CMHx-k87e${t17p`sUNX6>g3K9Zk{ zWX`!ZW`fUKTeR=y0fp;_=e`98wttd$!6mN|CDb`>|cl)vBBA3CGo_rIWCjwwpf`8 zc{Dnt#E{Wn9^vZ5)9E_hk~jqOwQ7BNvBI{n9V0PNvN8g;cP9;(cAIZ%IDge*0H8H? z6PgRJ8Gi(^4C+Ff3LnB%OdqNe=HK!RK~7q;3gskZ@5hrPGpAK>gG4COx19LI)+!2_ zVflc!JCe<$Uf6wQk(qjFABqg6)APH{i5}tfOn0VwKzMQjwbC#dLP>Y-7<-!9U440D z$N`&(sLM()U%#p^ZGjXsi+@kw5`htF?qh$#N;1{oGgQr50JlI$zrNsjZyb(g#PAa` znNY-$c!ws_Sx1Ou*iUBhK<>MO@SJ-VBHu9Gbo4`TWK4@MHIy}gMF9pxtPWF%r0hT~ zbAy&Cz32y&D%{3f0C`1B^j(N)sHhrrIhgMA+4!8-0ajVdQeMiWam9OR-^YJh)}5=F zU_lRtkQCs-^iVcO73{XWW5avWo!Sqx5M6or5NaboNT6J#Dl37xCu&!+o805Y?Simv zIeE)O0?y76=aVf#8@jU zR)TF;;cZaJ_DwW#6RDu*ypVZ3xqzkF(7&mRVmmzGy*9Wna?OLb7B&2DXZXgwc8N#5 zlUqSk=88P|>m>|We}fhT=1oQB68Wo$3;MDSAlG%bQ-kDd7>`kVI#0`sGGD5H->3pp zAOGj?8^>$ksxN-PkJ^97c>SNd>;JvE{`BPU>;LO`tyWw6absX|V}6b=)ank|7QVL1 z2EG7uyPV7svGkYmza|4UXhod@{yC z@M9=1;`o}fK#=d@HKHnzs8HO&X6j?*9#OLgfGhwDKS$z15R3B9K>+wQ-(BTq18Ft4 z41zwlYTtjpjfzdNb(olw`2Tx(v>v zSwsAdfjng!(>t?%qLd4LS(4MeaAD$el&+X)UP4#+;x!VlB|@pZiP5G(VJ;%rBu9IJ z6gGPygjbNfBqO7$TBKKadkDv?hqn~Dyy@@i1!{kP{Zp_)q;;&3LJIM>{lZ*Vi5)>P zcAs`TyD;_v1!i~6@Zxpt)RXMGcGPpB>ndseZaEgMYv=as8hBMT&bt_e|2;TIb`avd zaZfEw4+u#MvLanUfLnY^q<{8E5A~15*nZWE@^;XqQ4?QtR-oQ&qHvo#Pvm)ADSYH<{%%r zPyz4~3G|6#@z8q9POSodD&>A&;c%G<_2Ac5Nt0ZhB`_L^JspHex}Wn##wxxIv0EkMsI2a#CBDT z=j8v!!-6~}>+`&Zs&HvLBh6@-7kT|Aup0^AL2rb*n{;92K-Whgyxydr;4`-*SC?ShF%yo`+C6el54T4R;*mWJrp$u_Vv|HcVUsR zOmzzo=qO z_aB{qjj(e#j7hGcnR=ZIP&4T^$ZWwi(}8C#y_ zZAR>&u1#Rq0W{;0!DRE3MH~lKvoi-xrW?J%wBH_o!L@K98&ESJLBz_5(7$dRqd2@w z1<#WPY7Ea_;!^W^f20g4)dk96B1>-6g$!c+g}Ax{P8vkv!@eH+Cms104Tk!k+D-IK zVyC*#MZm0}Iv4{M(_Vz5f1x>AdQi`mk?c)LhsaTI zPBW}ieS;Q;h)8M%20o+Q1@KYq6{*%hXs*@t5SrS>1rW+-0vhIJfrFQN3E%`U)9w|h z$!sri>vWcgyZZAaKJWh=j}TH!XT<_{Q05}qC9j)>3Y_iVxPX`>w2!-WM>Ka>+x&I6 z*Se1o;)1V)f9Mj4D@pbc7*1cCceg82q`E*Y>m>5 z{_@NelL&b_SrzM$s@yats8XMtxNwBm)0Fjf3O#i#sUCW9O7_U&zjkX&ooC- zKG`>zbRW^_ybcaPHyCb3M79xFaUypLqEaM^c__ThJl%)Z%=zF?AP&Z0T!fql#~b5u zxL#wKVPT4$HlrryZRD3!H{p5F%)9l6ZVTBub5?V(za{S!Le|*q_)Kdwt^vi1zdfm9ZRY?-D>X##U zj}H5|W_;4T6k=&=7Ba$phVc9tBv8JROHAYvQPTuLq>_q;DdFG{$N>wE>b`=5bO@OI zq$nwl{Z!-|2uPMm=5K-vSkn%hq@A6eGA4cg9Lih=Mw<(k()k6SHa z9yUpzwVVQlLyJ=d`z14GIGkGJ0%FQGF?pjUzyeko(#0?7keLG)RcCaZ+;bzkf7yt( z1Y5yq~<#>8z~f+<;6 z391m)Lt6biksYZ{z%w&c0qLXFB%uut6GpTjtG$(Ne?l1?5#vN6Qx%7cknZ80xhr`# z`8eqQsYOrxftCN{!)bJU&-RM?e-*G{?~ZUYW?6q0BEg`FFzd|CS=TBp7C><84-)iU z3}Nc51I_Po&mf6bBa_RQ5%wBRky%+DRKF|1o)B)By(d-9SJ++^b?#(Mqv2;5jYLwA zD;E-62?D8MeG6xm5VjL?U4Xu62hN8$kM*q|Ov9`IT-4s)AC@cg&eR@+e;N)D7d07w zIVo7Hnr7qQlRFK{R`lLld+i>UH86JJ=!)tLjx;w&{8(MK3pKk07b8IUJVJPhXIh99 z@yI|a11P8Qkd-_x7_-oAK*A9m=1?Ow)%>THaQBQpA*kpiCI-qqwfRxuhlrDve9+8V znE}keTq-?La*z<|cBI@(e?MT@5j=FAk1=I}W4gEU2jX%o8Qqy~54uuxoil`b0QG7r z=cuz(%Hr9<8VvB!bB}*zKhov0)ef|d0QsVfG8<=`my9tR>j?P|3i@Yt!9RZfO1zxP zQqwjE=Tg)5T`w`;En9i)&r}<)<2^YEMh{Lyhr&dU#uQQwo1utle+5Mfo;cGolx1Zk zYF~_WHj1!OBaFkZ<46fEuu=EdKI+0$FHfNG>KPjhd}Z$^FOrw3jZIOko)9Lglld7N zp;_Eo$m=w<9?Ilqq%xi~&WH2PXKS2?Zxx30kRk(y1#vm%1SRd1iH*VD{Np3h3JtEbA(>r8&0>}=NV#N@NuXbtDKmC zHDPBPMX(f z?ePS)l3;{|x(f8ea$(5*lR4AN$-M_)KDR!VmVcRc zlEJAz+#v&eGO37JvWEH!7*5N(8D_eH>{Qr?$T1^sgfai`oX~wP>{bmoU>puFJ7>B` zZM8OZT7!@6e`Dk9!BTZzoZI)=JjYHAqD?0EF~)Sq_5)0=zbq7jwlg>1Hu@O_{fr9x zfnP>1rtq?4m6S%bj!V9PV+7^u(juPw=)B}3H4S7wlGPKr;&wWGmZN+A8R+vUS;cw| zBNT){<~J6}Y#B(iVq1gC2=f~5rZXy$?9QAnXce+LQ;nuv$Gwu$=gVMvf!dm3Ui z1#D5?d4YYPaEkbAF3;v6L%r0^1*>!;C9s=T``Xm{mY7!uA_#DeFkZDmB1gvD!CQ}M zyrE{T$?xOQ2iivAnIu9>S2c%Y!H0^nAyPD;ywK|76l<}k$N~G-n4fdKXO2;|Tie!Z zgE9;Ae|sFHTv|(Hy_}&UD>HzJzNn^jHvOS?BvA)MqNv=9)_Q9Z0y2&KpL~U1UeJt>&gk;zCN!Ho|$xldKBO7rnwm*Blx)vxc?vx1lOr2#w zt@)kV8d&Cmipv9Y=m7d_*P(`mF#Y8=e-?U7baJ_A=q~+`x~c-0GPETJL_N}f`f8yO zT7};qBnek<4_72JD~L4PsQ3tPt%<^*xBh<90Mmm+$scMmif4w0G z*-fz4z&C|mtUxv_?M`lM7h4r zN?}%;2sIR65*O%3lgZdWf~ln6U?Q{e64PKR-J(fkdM%rRgJW$C$JGr9e=chnV5o;a z3k>pj_^BS;31*grsf7%m;{wEb5LDo`kw`Kc>QU4TnN-=0<_GZd2L|9ilK*BFD0glJ zfr%mo`OqQJc#tF^SBKkwRHC3iAC4>|A`RtY_#rOe9zL^5sc^iVp}j^H-jXa0tufIb zXP-DBanmfCq*ur{Knz3Pf1{R?)E2pw7Mf^xL^tj@eYn)IBQf%wWt|3`O>V+%>+&w2 za?k_jxPyY;uhZ*fC#kJXpNkufi>VfBpD$)Jnkr4R(+a8EU) zCd)<*e`;T?XxB!-6NyGM6v2U*!X@!L-Dh!wlYR^1$vssAWdF?Wi=%qa$47+<$zmK>=Kq-83h?(ir zw9Y5*Cu0nCRvpkGG$K0PW&=eTP5?y^6;FQU5ZYJuwB7?v$@D+vU{SiqIG8s|Z~-69 ze?+5n0UJz{M$N#+vlqFMeH`e8NG~s5cXew3uJgXzlqBKL;ZQPTiTF0G9v#=?L+a;9S2IayFf0H8J_A$0k11gLi;Htij3V2ubU@1HY7t^4u zI%9fm&IdH|@uby8GIJ3r_^(qwDFz1APwRb<(F0h%KBDw<(m^J`cvLxq`D%W4Ug;s= zd$t2b1M|HAB}2>VJfJ=^p2$-w2xq9YBALy#$|YJ>DwRR6Qmvj2Pu{bB%H9|*f8xg1 z%6et9@vv6;Q>E<9TK3IF={N4pGjzI*Ud_Oj3Pyb;TMQ7QE~z zIW0EEKUdMQsRaG^5zK#|fgu-(O+;*0;uG**82xdx62Hs6?aUGKcD8H7x1|xRdLW=P z?O=X_>J~{dqTI(G>`Rn}eo&d8f5^pLY|VE!S^~j7sta*3TVYRF0GVk3`bG!^YIoEt zyqrA|_p`Z99J0r+C=rMp44n6$Wd@kfu=@ftITFD|c+GqvKCfG@3`{APoRzf~R z7uar{4f9OF(l1VL`~^wk`Z1JhDjO{T^02XK=AvW9=wVBrWyoVFVgIkVe_`%#Yk%=gV$Ylcpd8V6eT#0#wEmlh90!jPYiAfsars0Msh%aqD>;$0Ty)P1qI zS(cnsuuyaB%XzQIV+@xtf3Qv#DA{8z<)BA|`|xAuPlIE~Bwy?D=h_y3T$mr*$1v;5 z`k4p!`GEYhNPNrUu`Tvq15LZJ`{Bdxf1SMi<<+Z$4>*f}g|-075)Q~IOuZiB?f!qg z-TnFX-pT%l-CuG1LW}6r)qzoz5&Rq@i2Cb;-fz`z!=aZJ9NgUDe;REgB&y+A1vxil zMyY)YG%Mc8UEN?6HOxPgims*3aq?jn39uTO47LF0TdDh ztgsXEa_LMrw9TV-mtkXl)jF1l|pU#lVM?^F) zWex;@LlF_pkAK8yDCJiF|HEvCgDI}T@ayt$>%o)zkG3D!buhduR7Xe!liY5GZh;js=VD}0Rw6*#4>BEPQA8&7>YcX*-4w9N5BRwo@2?w_mPxYgO5cZ82kuuhi z8b(>wf6{2Ir@2r8VBmTWZ-cu<3lxt&+qHT8_&ztpL%%NaGP5Lnw#;fgeDZYr@%<-{ zb&D;%8UZ|8=`M63!e{@gg$Q7}0glSCE)#pO_4v`FCuEaKC!Cmn<|k{PWpG|jgSYFw z9NIq0y{5U(!>11)Jb8M5>;B_yODn!n2F}8rfBJa)>E`x>&8_ZDha?_o^Sn zA}!sKA}xHjfI>3kEV~HlO`3;jF>d}SESFQm?+M}HGj7sUa((z1^4G%$TYmlJWr|mT z8RCNsJuHIscKw&*v!7%9i`r+8#(;?a{QPq!eJJlcG0$wJ}g8^7voSK0^{kEaK^t2ltmh z-U}js$>S$a9&SHyXS03#JsZyUp*#8}Ba}mJm*>WGn$pdRD8fOTrU&;pB#0CgTU$?_ zY(Bcb315youFO{ph{E+NGr0+JGICrBmK*HcavYz+kR9X33nMsC7v9{4(sAES&$dWW z$Dj4H%;qcS$F`GO4pR>Qtv1TC%KNQ42du|G$H(=R{lRIIpju;bNzu?x|9;k#Tbl=# zrKnpEP`(3hXCYV?;M?_H4lNdaWq(K`zvzHk*&jl?YiPSEC#~C;AKwci0dJQ=-wPuc zn^}*_c}3r7*59XEl*_xf?Y|u26gRoSmwn$0CIQ=*q~8l5f15{h{Kvm-ILEE+1L*z_;tY9NM2&28d;3mX!fwWq@#TE#I|gRQ~ZHGAjebDgZ*GRS?sd ziOl@{)cc$DwCrJ&H`**VAC(_NzmINFe$L;v|8j^^ivP+0fk@)pVx%0$w-Wf%#9O3p zy1<2H3_Jl0f5CUF00;!DFADT_D*cUp{N?0u+f95uML1|z28fjbqWlyIc)^XrkX8W@ z|Bt4V+}b>lW;x{)b?X7jx#aCE1j_<^yWY#8{VrW<=sZ0}_$asT>;pk$&c5NnCnI`6j-p2D`*gO~);ye+9}6_@N^?4@tVCRRF{)03yuW zy{)#r1O=}GAWUxbt>pdd5ggbN((J)1xFKH%U}_J`tn94q_7D*j;=|6t1AtO`H`btP5_7)AAqG79|4{!o0Z+zw5v_=i;i z2o@V!f7u^a_J<5F2&^DC^1POmiF5w`8%HOktvlt8z1xql$XI>5DlTc5i`+{N+O$2& zJq`_0)<~si->LwFB>b%G4=ek_{|C!y-r78nW;x|-^40^CbIIF9C@c%`?RqbV_IqLz zmWBCy#wdq;75@-z-M;R??^e8X(E{Brw;)Yce?{VgsCTwfLpF#uMQx$rkn&h&y6{eW z+wIE!u(Cgdl`L2B53BfxRs4g?)RpR=%A5bVT(Vnf-Pa!<^3tdb7F!gIBhs>=X+MhNQGLHR&#|)UNU`WY48=7|JdM ze<>Y#gI$QQuI0aKA#P`*DYyFE()GUNR=!>D<Q4h<=sZ!^-~PE}mT3A66G|)`PoJ zv#zR@{b6N)@RxEfeQ{Psfmeg&s{TXvn(f=6DWh}bEh39;Gk=tor#yP__k=JI>TjZ^ zEonEqtr}R4(^NFos{Z7v{$z0`)@=zd!wZ5aj8*={jcqw8Cb6xz>f+vrkJbAeN;9+DU4eeW2>)U=;UzN%eS zYxUlI)R_&&qiXFknopC;bT%1uX3@@(Rog3QpQcf*J^^^i zBph&(%;u9(<;Uu*KbSU>VXe`hoelMu?YyC%RWGkUSt+rb-t8kB|r&ebJ2Rddm?T^1?W@8??W$(nK z3gBZnj=Rzp>pY(Te?K!$6k|hopH=WHV-6}8V9yfax%+B=07a7Td`EZ$QtZB;B)!2`p|Yd6Jxro{FPU}vNq6^b zJRi-PKWquT4&ve9pNU_(+NDAAh_;KL$K7OjH2%xsySLTae-(oJ1v{9;5NnHlfq~=U z5c|N=d1pB2e6HMyC-LZXjCL5h&1Ij@X5$fPewxg7v39>DwvVVDnQzdS0D96JOr|rm zm47iWfSzkJjHL3noD{=?z5Th@IyO#Ej+$iXlcKY~>`N0S%Qdr$2R2y;7KX`wGVM$T=iC&{%Pd?ZAPZI$EZ#m?6#Du(nNGP<$Mwnh z3vUSrv5bX;lI{mS8O?{odT#YS-GOC*Gc*(x-S)b!e+%~DBsm-Zmh54rr&WWg^;k%V zZNLVVUelEML#q`x47DD`lhb6@7<9oQirN;mG=1s>QhNZKfL#7)Jd1~BBLxhf94;0v zwUc30%DTpa-08<6Fplk@j=RZztzLHHS={`waSqg+RWE1B6nl5`s#c%QI~`!%qmWG3 zAUy>$e>ju&oninjbb`5Xm+wv{@rCaPOChWp3>oKgx3#&`8&AM}t zPXdAOcSLjnLfawNPvTC$>Q=iAbhk#ymkM`4e|0Ol|EG2XbXJXKgEOpAe0Cn;fbBHS z=hJ@mqrAhmIh@5aIX9Kie@ccBD{+`k&f?krQ8mUvW_rQV6V;AuSi5#3yFDA+WUY21 zSiUOHKzp{!Ve~u72ZL@(k`R_@$GSA4QBzh-x2=6oisE_^i@dm3VH!YxkheKmg1-mv|sPkyR}Q*E0?p2^Q0LoXKvyZ zPUAMD*k*_97YFEBvwL-g{gUmVp45Bwf75!uKB#}Hf7T5@Y}xLHaT}+5`^s);*^!%I zsvYpqAw{xz(gMM`=j5$JkYjJ$>IRP!c?{vUlk~?!2&=6mc-xb=XYmLeZaleY^@4YO zd54wVPlm}XY4wA51N&~b+ieYk7oSXrUk^sJ$;Bb$n%1Y_^=ElKi%+Mm&$argfBeE! z1{gkhJvyJyJeDkeE2r3h!z-&QfStud5#Necg%i`=c)}yFZht1f#+1DDVLP5Wnf^Ml z$7fNiXi0e=w?##_mj~8qWs3feQFhegELi!O=l8 z>Ov@`p7!?Om!l86Z_q56&n7Wsp}jZn4$+`998VK!WCR4md^p(MfA{vye}6S2sAApm zXm}CTj}HF#Q8S`u5Y=D4dH1pzwTI(&RDZvFc=+qP5Bmt^vC2#R5CiX_^%O{g#%X>- zfz$`v82G1yy}!PE_rEcAKcV*d6~pt`%gg2O+Mm!#qc=&Ce(3O?ghtj?=dCmpgmt?PwT4LZP!_03 zMgwlE$m^7~KV%e(UO$)LeHe?z*I1e|R0h(Yha`v9VbTLe0-VN;QT*HBl&XGzGM=CI zUy8B>X;+#mCgu2`LZ4ft!D)Zl{wC5E9bO^)sAx!kU|AWEDtUUve|5njm=6G9Q_KKS zZKvI8wSL%op&;Y$_(l1LqSsZO2?3i+;Nn+z@0Nc?T`%}bM%)AwPmgIK67xgQJUfVM zH=>U3fN}d}kE}pf!efP&29b@sD&!l1HBRluhA{dt#t(lXos7_($k^xufl^7@ z$AW36Qjigb>_3pM-0*!UpRKswx8ojxg+Le;zWlva=g#_XFGgOPohH z@1AGbQr#cQVYaHsbq^;vfr&TVX#k)Lil5S zh%;fQ)9QTt25Gq8dO02slXz5xFt6$meog+S5;#O==uaJEVtBs!qS~Qae2|xd?F%s> zF2jqq{@Iw`gEOES?Zu-`G7NP30gS#)qu&>Pu|Jre4VTpI3nL^+Lktuhf9^n8w5$0; z>{#I4yTE|a6JIE{pxJqJDz?6T>%Wkf8}17m0kM}i?h8a-SGlmhB&yKLUX2_*LM>GAidU-ycLX)65 z_YC!+DNa^q<8v$-^fwW@)*e3Oll83#W(b$q?h79U{Hy@IgqQs83n_mHmeJ|I9Dk*P zcm_@BY<~73nZm;~gCDKc2q(GI~E5!&W-GfK~~=Ah}rfxv{>eF$Zi{MD>98*Ioi?OEOk zM1NnG=avz_3)rgdxNV%10_0>q1PuWrm;9?4gOno6KB88OhtjxLi5q-dgLw+Zdj1K! z?G<(vEXzsl67o*tY(~@6^gB0?BRr;XJ9!$M*cugTDb^=6(dUFfr zzQ+JpB4mH%pvXW8GAQTyl*(}W;|M`ByYEXPPTs2V1?SKLTe4VdjhO~5U&b(8dN+HY zrcCQ+-*XWWdceVVZtXiSFU%wBLZ>e&_5KLI>k(oCrU|5tWKwB#v5mw82sQxoqD(hcWhn3Nc8uYSKAh$6N`qm9(w>yEvQe=nu#XqiIrYE8urJvc}LNj%?%h0C7 zcjcgmy?Er>G2n`vK^h)(3c#i}GJJ+yr2FGMXO3Hs3x`CThQ5q5-F&50pGQ(DL1{!@|o6ENEzW&z)yV#&WuhihG8f)KTIc`1C9TI^a&?^*BpP_ z5yV9Curd&?4bf#bn^fVGf;)+e6u}4mc`9vQAk+;}U-*6Em^Jh!h+4_f_!Ple)olpc zYKqJU;?>~3f`%A&CBJXkSGTRW#|8+1!_(XKS1nq&PI}==XJ%JaY2>XtXZ?y;A&a|* zDtI}0b>xfqENp)}9<)K?o3n3h4%YWQZo+N#>;q$Rt_9 z51XMF^pzr)bWf>QVLxg&R@v>w$brX7Hkr75;aCFKvT}|ZLbx?`2U6X%TahF*3L?tqmfUlRX1hk%%0{kqlnalz>j5;qmFXB1gwb zzY7s^CY&Y|Qy@o**{;$E4>RtGN~0I!6D9t_PwwbDC|BX@srxARVxgSrr99&>MI;I0 z7a0|;M{a5mZNsm0v^~t4EYHAqGYjjzdk6j%o0hh1huEL7scwmIoA_S%2PmS_7`+gYu? z2^LuVPLF;HaNLEN^Q4C$+Yk&jn-rp2(NUvv@AhfBfOkh%AJB&uVJspULPOg_@=R(@e^?DBhq)XPRRmp0Vk={ zE`wYZ!^3Tt5^X&m`51m!VHvQxD}5kbDfK(-(@1i*BVi$S8y3ensigDkVAfYi9e^(G zkpfR5dt)boql1&9Pd{n6>A`1QY|?h^5vl^~bfP&THew;@0knTe!-t=Wj80)r=wzw9 zng{_Xx{B)(E9R`8V#svwbRp~xy7x@oe%2bQzt&CM+H-Y5KHJd8E)G@uP=2B4#TX7! z&O{V+h$DVRA)kgx-y(7={L=I#J()4wdVpY-+ZO+rCzFex;}LAx%y?KNa-{OCBF?0ij90vg+=3x(!f{v$RW}>*KhtZX$WU%K#blQHh_lvDz-F?kLZT99L`b7( zWyS^?FdffZre6l|h2W`^CGU_e&k~L&-~I$u3emz442yqXh#$;^mc@X`uv!D-)IOLbvZnWUw{+~x&8y#A0$(x z%6yDCE4(1q-D6mzK@h13_{GDeQgdGKqdx(uatK?8WC>wDOiI8D82nI>2BL6;;Z3Ga zeLh0sPkeu#bekV>O!)t90ur|#o^?P-%FG193W5OCa_F*cUI-Z$69){-!Hf$(x4z8+ z;@Sd#*0s+qR0>J~;PYTO6m-0%iz@@BwXx9nyDn;;>eFyJF!yE0M0c2NBW_DM#0tX4 zs;Y$5BLh=K1_h$`$CZomyz(U;(fM8>JVa(J4r0G90IZ1HDF`aS>UQUmyMRH3{i>-GG}k80Ene+Z$fBb;vJoY?3UZ9{ zM5llV*>U43%~cSyP{EN*X0(w0U_oRK(^B-O)MzNMc>dvnEKi5paV0xbhB%cWI>fPI zMvkb8K~vHqiiET*5rhzzlThxng7NdTvt@sj52YPW&uf%RbwKNLNO-xAeoTgeerDwx zrBdq@2$RA8J(9iBXJx3F>WQAp0ks$)`j(tOoBsRGp0vb+fpWsNbI+f#9tX~%!405? zT8#7dhfRAt+a00mgJRtafLT3VTM;_n#!7*U7v`5@Bqq8(U>5X*A!*`R-7 z4(3*LZ_VUI@|0e?7g-Id7gw@U9J2HV)QwW9ml`yLqf}Bf<;;a~#Qelj%m^r8dNzJF z_?mR9+qJc*GL38lm|H|_LS)b}Jbw}>2T0$JQ>QoIL3*Wd`&v#kiujy=3=g^k z=&Kz5A46EHCbQ0b2F_v$EznOz?5-#WSVye+a1&o8_$V?mSLmiu z;fP3cqv4EU$h=_twagdobmAU5o>qll9DF5)2$cL$@&#j#Sc*jk`5=FLl)w}`b%Q7b z`~YLC>l>d?l~Ew+lZEo0e&E+x9kh3fdf{0>PrA)4r|ORIUz|P?1g4+-q-B8eu6LVc z;b(gBGc_wev^BsjC-!r19x$o7ik#Ii>q39)Qi-P?y=6fjo*+hb^cv(x4Mk<#C~F># zPLby}N&Yb(U`Ki32CA4r?OZJOrxMqy(IH~OjMP8HpP-#k zXkK2-XFpbTrqwk)r%Mx)dMASf6;tSBPeusO2!_UqSf8Imj7Vg6h4_~(zU(2A3PCLV z$Orv_s$fy=4<@X90x>4G!iw%Ia}qp%Ha(9=_SFCz>_oS8w|#$tG|*93OjA)s>_{yX zf}xtPYsEqY{22el&+pkluN+j)uG6x1olR3@#F&S3l0LM4RV5f~20squ_^{VTtec8VQWdLwhfcA2FI$}cI|l%x}h`z zs>xJGu^X3&ksJ=Aj{yA;AcNVZ%Y_I{n9fx4(?v*qViDrw4j^r!x|SvE6ppvW8GD)8e9X3xm6Mz^ZYseK`bs_U{n=R&S((jcOK^W7${n?Y5a>8F8q$;8N#{09FvVfB?Y6O{>_H zUpv2hgxr6PbX9|U$L$|1gy}?NsYQK+J5W{)o$MhSFVXWETO0dOccmN_=`jMCaM2)H zK+)wP1Sj|=$sSNL1YsYvhd2rH)}76fF*U@gcU2GNFyEap?apj6#QAaeZhCL2t{e#N z2>olKD3+Ci~IzDlLq0lLP#gv34DK$W#T!@KNwQV-p_rF(|=FdHRS+j z*k3-5R+d35+pZ|uZTwhzc6gjxrXs9TXsFm0n^vowFff_ zwJuM7LOia-mTY{QB3{6B@(Sd{q_}Fd z#r!$*RCl{&=1IwMom@8%HXwS0`#qWE#$kVQ;TcN;O(kxcb8Z??V{;m91#QT#Cd@GS1&k@o4D!aM*YgeO{+-c^1I&$59YrdR1psEo^^vl|*e# zxxv>XlM;;JR^jmWcfHa`=^MZ=(}Hy>?%c05F!l)r5SzaTZioZRB$u9osj7cV2u{9) zNdVQ_`u5X@HV2JpaeV>Zrp@X4*3%-K+1I3hJ2UVs_oo~mp+s)YfO_cYu0;7H?o<_h z5um3!04gBJ*X{v|khw*pP16Jw>r*|F#n$PbyTSjHh95O8*kPRUFsnewpjY)YF9?^N z0yXqJlxZE|VEDnNh%(^<(K3Jb@I=yjJT%X^HyKoiP3YMRjx+S+_=?lMShSUD*E9(; z0}-~v@Th>GJxKU;0YG=}ra(a_c~I&ys2UpvJ*FgrJh^HC;{14aibOA@RM-^9Uw%2K z2?+VOvP3D%4AvY{O+QHoI2}A8ssoRdN2!mfj$}VuOSW!4!^G3Nm zhCJ&E_yC;Tq2{n7XCQxyi#Ynl-{!Pzzc4Om>l1{eZP;SCGGMzogTXy_)t ze0U9}eU2Iourjn~%)T^!Ax*Pl#>szKVoI<`qWU}mg)-;& z5{!8gH)UER&<>X6$42}q{#uPRN$kZ*D_Yx!=?mfbtc88)X{~``c4?(M#s*@lS-nc^ zQ))%368?ecD0%+T1cd-8m0AaQxG0NPLzsYNz8*!6Q3*XL0~f^)_-Z3yJO=lN^wG6H zR0u(Q1UQdt{egc5`Rb)O=$e;kFO@GTt)TEF3J7*{4|z`7gAB@`I0rmXW}l`l|HhOe z^%^`^P>U|`%Cn@kuSI)mq1MZnK za0YA+hPTVK|0Wi1>SQQJg06qm`c8`C5b?o&;{jr_ot^o#^P(z+N?@VDM@fR(+Ew(} z#TlqaF8EOqQ$*~ zFNH5~;laIi;c?34m&OGQB!A#2LQ!T|O&Q)WpCH8j({w}SjSWaeHX3W%5bKMr#e2l6 z&JoIGBl%9qS&cJwqz$m-JI?f&{n_(8UkYA!8U-Fm1})Uv5OKys4E9za0KE-zqKq5_ z%}~Um$`^QT5=0Ef4ArPiB}2aApvTta&ZMg22=hYdR~<8{kx4vlr++10Pt;QGn*1Jx zW5{AB#y}vKG{%gBXM>=cG&=Oy))pl47@ZTVlSfS zp`XjyWD!%A`}h>D+VhH(N^C_3mmmiWgaUb?m!<~{QxI$D{vB1a>RV8kn51Kv;VYL3 z2n-y5bARjpqo)sX6yAC8@bSa;1OD~+0c4gf{uQ^oPm`zoE7|Pb?>*sPJ^ZKLlfRN= z^XaDi)s2%!@s!Z{>j(@b zBq<;~eb)B?oZ_~b{>RhfV;5zi>O;>~XQ)8sF9NI>2dUAZkC!wF3@HW9+uWTOmtqMF zF9GY9k_ikfe;mNSHm6c%gRB|u123YrB-vzGaX@Ptk{Przm{wTy5r`U{HX1Oy>ERWG z4U45%&0a?4e*f+eLbu4;8z(Wts5WBMssiPI-Vk^;V7cRzHljM6O&a2q;%tx!P5jf6 zl6WrG9ZFIVw$x=+M@DxC&H}Y0I*V)}GE4?8Oxf0#e_`U8tikO+Nl_m(R1z*0sW?(t zb`s?>c{pYC0H_J9M5#<6Fy=6_d93=M4#uWf6s}gtb!S1MwMJxD*0~`OE-Xqq)sLBll zUaK|ym36tfQ_&@vfM@vD3vtax4G4Adt`ur3*ptvZ)WKM~)8U-q%D_s4rLY>; z4R-PQU<2p4_`LtfEz6C7I1V=r1Yg1?Q9;dXe*=GJ{i?MMgp5e4$TjQ^RodBkkNQcM zSBp-Ni{z)j9_tskW=D%t4?~}ie_&=~P?ag&k7_!1|KZqyyn#o@<%ROB;;q-Hp74D9qLY zJ^9cF*;8;R7KRPW2=3s7<%J$Qmt_+|f9hZ{r4=^@}odz;AFXF03RtmuGV@2iY4#EI!MBiGMUhfH_aZpot zHvR=Rg2^5P%4!X7APxc&q^s@FKxTqurHY($O+Zfxa~Nn_{}DFapfIu~{mFBbe>}Fk zNtVk3CY^IzI8SbQbO_6Qg)7EyneG;_d;Sd8-iFqu0Z&EN1~3BlvR43K#e~|GT91K8 z3Ey^1(Z+(LeCEsL%}x7A$yty$hglE)X%g9_T#peUkruIJuACdeWXh=p%oE^ED$oc` zlfVuMHjZ4bo(yn;i5Y;vpZRWV^MH^I1wBu>y#X{m~D7 z05>Bt%rly21r9F#e3twL*D;6$Z~`rDHoL$-1Lg$mRKQRxmz8e2fdW}J8i9dEm8*(~ zk(DagUky#JDlTGX$7lopr@AX`ZtFU-e+7YE9&iGJvK)UHxHuY;fF&ief0Pm_JBg%W zVIzr{1Q-G|#bNZ{b51XJdk-KeCFMz#E#lpM>D#xvZ!dMM3twVv1$0xwyRLrX?NE*= zJ=`m?85ESD#PsbW-sUx{WlBn}T<<#$9t0#KEf%l1^kj|^SrXYHc#QnH2oncQAo&s2K*x8d? ztk0Y734&e~j{D^fbMNk3Ps-7Olwn0H5XK{k(EFJu zW3>S)v72Y&H2JEgpQKRi-|tjHHl%7bKm~R@q|UES?WJivv>%HzoEh9cKTXadrkv0p ziIN?Qvrgk+et9cFe?b~}cW&rL_Vyc3FNV*sydDBGY=XRlh6MvE2{|p8H2?na833)_ z1k)Zw&f$PKph8yntpDPVxY9%2&TFu4Fyp#9G*ih|^Dl{>>(*T?xknkLZWPcP`L^}# z^jEa=11v$0=KUE>;#Rc+IU58#FraJRVNxIQ|L{r>XwArDf7uqwZQ*~pi?Q-?>^{p_ z_ASc2w|0MqpGf5wCXsdkd^Lf}FR6FSVE4maeo>nQR+ZDGB~u@Qq86ZFKGtDMkXr@p zJ50x5OGoEvLQ>gPk%B%Asy=?lMFE|MwgMqTMZv{{US6h%Yw56YShy44-G~2`AvBFT zYFqGu0@&7_mnjeo3m4`l5b1alONccV=_XiS>6>1UFreh{$CpbG3?zRiIESE!)ED;R z7r5N9`@_HlkN&YEs0VmFTx9cliPD(0ye;jKBBf3)!?5qkkUw0U&ma)R zxOvqJ4f_*Z_90-#$95B$kl+BvmChW=|5|YLf0aXa+}hI%s2p$^^vNwOmy#tiR_q5} zxrjso-AbXP4!reYHtv6zV_hMC<$A-@fN4wy#jbyXFLL)%zJCiFpV)l@Fv?!6bs-MB zhyRB@!rgb!9vsa3G$GE;oUyCKpvGJICO*B_?oFvQ95+;8z|PL+_>rf`P;|{{Z_ej} zZ2K@c&iXTbfNz9>#X4*akFqHz0>0^dlAu9T{J76Wp%n|GxZi(GA!yqJdYE=sOZvK` zdjVg~mJ8xq!fti%%=^KTA=AJ$z?{m<;O;cXrJ0$vJDrwZ;0nNtXFDXULP@N8NgoGL6Vj{6FmUcR#e;s?3S->k*eL61BE3mRZm~X-fQZ_ zOz)l5s_5KI^zMIghB}^)>Ye?LuLd_SRGlaeVg-Y1V1>JecS?)Ssx~7?NPe$54LO${ zK@3Ja46XwSg@qC$5DmtZ_0bdLhTOb&9+-J;A)T#WiCCj+S{w0(?`vR){oCi`Rx=I& zoLFkKFxssuhfy^TVrqz^5I&0W#73r0INlY81(SI#?kayIx)+x;(w4Ymh(XyOf>z>^ zyxqfu8{pC@BH(kK2sa_u1<3K|V7#~B(+~(m)#$sYdh>g#k5P?&aeYZ&Ad~TL>Zyc> zkOm-Tcpx`}g*P!o&nmh!;1~k{>cj635LA%2Jy4BbT^{`*q8#AMEFTyUng6_?N{-vU z;E>?rZ!Uk1cajgavZ)4*7lg%fk!HzJY@Vm$nmo<@dAYWs3w4T8VjyDniCuZ%Fn=I= zYNJFKhj-&M#6GYC$xT%5LG?Hh6qT!ubN=<|v`V}Qkk2M1u8T9liIb&+@-FAY&ls)) zLfVZ(y?iF=MQO0Rdyh-~Fq$;ZMI>9b^P!V!2@Zc^O34zCt+wO3>MHcD-cn(lHOC-C zQUdcOfs}zKVfg}P2b#4f^4o=-WVcQ4g>#8uC8VRNJTr&ZMeP$&dA@^p&C|*F`Ai}W ziFykeIPmIt`U6&_Kngvd2wN9Y!M$Jrmgq8XvWKH5&9mk5a?#z{S#(aX2Jl4$FVGO; z?C5__*g=7Fd$QPl{5v2bG!sNW#~8@`So|?`F6j;!@m=Yl4&0lp3QY1vl*94ks3plY zUL(U5j2@t?%}F3WEvw4Up*WU@M{cNZTk|Bw(zvOiQ)uU*n&PquSth4tRG^-+IUVh9NEYO6B$zGI9};rq3w1L52IIw! zCLiH0P=^!;xQ&++D^^MJ!s1rP3em%k{0y1221X~9j4!mkzE^PXbs@o95Cj#MHF)Au zy+%$F*C9OBKv%XXsu6qL&D%nv`-Xe9w(OxiH)6PD;SsDbePkXiKABZW3WLsP7xI70 zS%!?7iU;cTn#&2n83`y3Oh(9|)MR@jjEuG|io>WOUU?AISRJS(JoGI7q8RqmFCjmkvP#7Ue^5oJBm)0R>mp z(&dpw;)x66CaqnQ}!HIVyk~M#XC}0I-@_f(vvCCFAHO>xN`K2Q5khv1pYDn zUWrib*AK9@^!SS|xA$1=0-lt#n@alEinfeG6Ze#)E{1fccgzT^ue$)&Y=VJ57zCzaf`T{kDXhl-vr@?*}1kEFF=#udw47#o=E(ILPru^Ad`jJwAV*oy;L69k$0X zoYR4w>`HXm?y!A{sE{{f5MN3qb|-j$7JG0Z#9$0wF`v`LYn`<3ZU)mO$kI|9R20Oy zI3pUF#WfLQGF6!1up+qPjI6M|BTN2~rhM6CVv}_3C?-n^mJ<0A+AGx& zBZR^k3_tl~sU9;LaGrli5Y~MW^qucii0rq-tEa{xWjp|yv&^8C4()!>8L-*_#S0^M zlIi9tGM{7|bP5}l)m`oMnr|c`w-O4~V6O-8R;n$wAFhECktc?goH1j|!wepHQ38

|=d>F9H@VpgNys99;l5A|@_ThRGDa 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 delta 106776 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

Out of order

@@ -237,7 +238,8 @@

Out of order

<%});%> -
\ No newline at end of file + <% } %>
\ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html.gz index e9b3343047f0d318a8316c65398ea1de3550fbba..4bf7eed64e9688f21b3bc78129958f407d009591 100644 GIT binary patch literal 23604 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 LuxRa68jb+~-Rjst literal 23444 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 HhKvCK)1IgG diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html index 2d11a64f2ea8..ec2e9bc4f881 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html @@ -235,6 +235,7 @@

Out of order

@@ -277,6 +278,7 @@

Out of order

+ diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css b/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css index d2529e27a25e..da0d115a67a9 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css @@ -1,4 +1,4 @@ @charset "UTF-8";.arango-tab,.contentDiv,div .bigtile,div .tile,ul.navlist{list-style:none}body{background:#F5F8F0!important;color:#333;display:block;font-size:14px;line-height:20px;margin:0}.fa,.fa-stack{display:inline-block}.page-title span,.pingback a.url,body,input,textarea{font-family:'Open Sans',sans-serif!important;font-weight:400}@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(../fonts/opensans/OpenSansLight.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:local('Open Sans'),local('OpenSans'),url(../fonts/opensans/OpenSans.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:local('Open Sans Bold'),local('OpenSans-Bold'),url(../fonts/opensans/OpenSansBold.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300;src:local('Open Sans Light Italic'),local('OpenSansLight-Italic'),url(../fonts/opensans/OpenSansLightItalic.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:400;src:local('Open Sans Italic'),local('OpenSans-Italic'),url(../fonts/opensans/OpenSansItalic.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:700;src:local('Open Sans Bold Italic'),local('OpenSans-BoldItalic'),url(../fonts/opensans/OpenSansBoldItalic.woff) format('woff')}/*! * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome/fontawesome-webfont.eot?v=4.3.0);src:url(../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.3.0) format('embedded-opentype'),url(../fonts/fontawesome/fontawesome-webfont.woff2?v=4.3.0) format('woff2'),url(../fonts/fontawesome/fontawesome-webfont.woff?v=4.3.0) format('woff'),url(../fonts/fontawesome/fontawesome-webfont.ttf?v=4.3.0) format('truetype'),url(../fonts/fontawesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular) format('svg');font-weight:400;font-style:normal}.fa{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0,0)}.modal-body,button{font-family:'Open Sans',sans-serif!important}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857em;text-align:center}.fa-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.fa-li.fa-lg{left:-1.8571428571em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.pull-right{float:right}.contentDiv li,.dashboard-bar-chart-container,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage,.dashboard-half-height-legend,.dashboard-large-chart,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-legend,.dashboard-medium-chart,.dashboard-medium-chart .dashboard-interior-chart,.dashboard-small-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart,.dashboard-sub-bar,.dashboard-sub-bar .dashboard-sub-bar-title,.dashboard-tendency-container,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar,.dashboard-title-bar .dashboard-half-title-bar,.dashboardModal,.fixedDropdown .notificationItem i,.fixedDropdown .notificationItemContent,.innerDropdownInnerUL,.modal-chart-detail,.modal-chart-detail .modal-body,.modal-chart-detail .modal-dashboard-legend,.modal-chart-detail .modal-inner-detail,.pagination-line li a,.pull-left,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.add-Icon,div .tile,div .tile a span.add-Icon,div.centralContent,div.dropdownInner ul,div.footer-center,div.footer-left,div.footer-left p,div.navlogo,ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.navlist li,ul.script-dropdown-menu,ul.user-dropdown-menu{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before,.fa-genderless:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.arango-tab li,.dashboard-sub-bar-menu,.docsThirdCol,.fixedDropdown button,.query-button,.search-field,.show-save-state,div .bigtile div.iconSet span,div .tile div.iconSet span,div.footer-right,div.footer-right p,div.gv_colour_list,div.headerBar>div.headerButtonBar,div.navmenu,ul.headerButtonList li{float:right}#distributionChartDiv:after,.arango-tab:after,.dashboard-bar-chart-container .dashboard-bar-chart:after,.dashboard-medium-chart .dashboard-medium-chart-inner:after,.dashboard-medium-chart .dashboard-medium-chart-menu:after,.dashboard-row:after,.dashboard-sub-bar:after,.dashboard-tendency-container .dashboard-tendency-chart:after,.detail-chart:after,.document-info .document-info-container .document-inner-info-container .document-attribute:after,.lineChartDiv:after,.pagination-line li:after,div.headerBar>div.headerButtonBar:after,div.resizecontainer:after,div.tileList:after{clear:both;content:'.';display:block;font-size:0;height:0;visibility:hidden}.caret,.contentDiv:after,.contentDiv:before,.form-actions:after,.form-actions:before{content:''}.addButton,.arango-tab a,.arango-tab li,.arangoicon,.clusterDownBtn button,.contentDiv .icon,.contentTables tr.contentRowInactive a,.deleteButton,.edit-index-table .icon_arangodb_roundminus,.fixedDropdown .notificationItem i,.fullNotification:hover,.gv-search-submit-icon,.icon-info-sign,.link>line,.node,.pagination-line li a,.search-submit-icon,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.icon,div .bigtile a svg,div .bigtile div.iconSet span,div .tile a span.icon,div .tile a svg,div .tile div.iconSet span,div.demo-dropdown-menu,div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label,div.toolbox div.gv_action_button,ul.script-dropdown-menu li.dropdown-item{cursor:pointer}footer.footer,nav.navbar{background-color:rgba(245,248,240,.95);color:#fff;left:0;position:fixed;right:0;width:100%;z-index:1000}.ajax-file-upload-red,.button-danger{background-color:#da4f49}.ajax-file-upload-red:focus,.ajax-file-upload-red:hover,.button-danger:focus,.button-danger:hover{background-color:#be342e}.contentTables td span,.deleteButton,.edit-index-table .icon_arangodb_roundminus{color:#da4f49}.contentTables td span:focus,.contentTables td span:hover,.deleteButton:focus,.deleteButton:hover,.edit-index-table .icon_arangodb_roundminus:focus,.edit-index-table .icon_arangodb_roundminus:hover{color:#be342e}.ajax-file-upload,.button-success{background-color:#8aa051}.ajax-file-upload:focus,.ajax-file-upload:hover,.button-success:focus,.button-success:hover{background-color:#788f3d}.addButton,.contentTables td.dbThSecond span{color:#8aa051}.addButton:focus,.addButton:hover,.contentTables td.dbThSecond span:focus,.contentTables td.dbThSecond span:hover{color:#788f3d}.button-warning{background-color:#faa732}.button-warning:focus,.button-warning:hover{background-color:#f89406}.button-close,.button-neutral{background-color:#8f8d8c}.button-close:focus,.button-close:hover,.button-neutral:focus,.button-neutral:hover{background-color:#736b68}.dashboard-sub-bar-menu{color:#8f8d8c}.dashboard-sub-bar-menu:focus,.dashboard-sub-bar-menu:hover{color:#736b68}.button-primary{background-color:#564e4a}.button-primary:focus,.button-primary:hover{background-color:#3a322e}.button-header,a.button-gui,a.headerButton{background-color:#fff;border:1px solid #fff;color:#555}.button-header:focus,.button-header:hover,a.button-gui:focus,a.button-gui:hover,a.headerButton:focus,a.headerButton:hover{border:1px solid #8aa051;background-color:#8aa051;color:#fff}.button-notification{background-color:#faa020}.button-notification:focus,.button-notification:hover{background-color:#f87c0f}.button-inactive,.button-inactive:focus,.button-inactive:hover,[class*=' button-']:disabled,[class*=' button-']:focus:disabled,[class*=' button-']:hover:disabled,[class^=button-]:disabled,[class^=button-]:focus:disabled,[class^=button-]:hover:disabled{background-color:#d3d3d3}a.headerButton.disabled,a.headerButton.disabled:focus,a.headerButton.disabled:hover{color:#d3d3d3}ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.script-dropdown-menu,ul.user-dropdown-menu{background-color:#F5F8F0;border-color:#666;border-style:solid;border-width:1px;border-radius:3px;display:none;list-style:none;margin:5px 0 0;padding:5px 0;position:absolute;right:0;top:80%;z-index:1000}a.tab,ul.script-dropdown-menu li.dropdown-item a{display:block}ul.gv-dropdown-menu li,ul.link-dropdown-menu li,ul.script-dropdown-menu li,ul.user-dropdown-menu li{line-height:23px;white-space:nowrap;width:100%}ul.gv-dropdown-menu li.dropdown-header,ul.link-dropdown-menu li.dropdown-header,ul.script-dropdown-menu li.dropdown-header,ul.user-dropdown-menu li.dropdown-header{color:#999;font-size:15px;font-weight:600;font-variant:small-caps;padding:0 15px}ul.gv-dropdown-menu li.dropdown-header:hover,ul.link-dropdown-menu li.dropdown-header:hover,ul.script-dropdown-menu li.dropdown-header:hover,ul.user-dropdown-menu li.dropdown-header:hover{cursor:default}ul.gv-dropdown-menu li.divider,ul.link-dropdown-menu li.divider,ul.script-dropdown-menu li.divider,ul.user-dropdown-menu li.divider{background-color:#666;height:1px;margin:10px 0}ul.gv-dropdown-menu a,ul.link-dropdown-menu a,ul.script-dropdown-menu a,ul.user-dropdown-menu a{color:#fff;padding:0 20px}.navbar{-webkit-font-smoothing:subpixel-antialiased}.navbar .nav li.dropdown .active>.dropdown-toggle,.navbar .nav li.dropdown .open.active>.dropdown-toggle,.navbar .nav li.dropdown .open>.dropdown-toggle{background:#788f3d}nav.navbar{padding-top:6px;height:44px;margin-bottom:3px;top:0}nav.navbar .arangodbLogo{height:auto;margin-left:-5px;margin-top:-1px;width:40%}nav.navbar .nav>.active>a{background-color:#fff;color:#000;-webkit-box-shadow:0 0 0 transparent inset;-moz-box-shadow:0 0 0 transparent inset;box-shadow:0 0 0 transparent inset}nav.navbar .nav>li>a:focus{background-color:#fff}nav.navbar .nav>li>a:hover{background-color:#000;color:#686766}ul.navlist li.dropdown-item:hover a,ul.navlist>li.active a,ul.navlist>li.active:hover a,ul.navlist>li:hover a{color:#000}div.navlogo{margin-left:5px;margin-right:-1px;padding-top:3px}ul.navlist li{margin-left:1px}ul.navlist li.navbar-spacer{background-color:#a0a0a0;height:21px;margin-top:9px;width:1px}ul.navlist li.navbar-spacer.big{margin-left:15px;margin-right:15px}ul.navlist li.navbar-spacer.med{margin-left:5px;margin-right:5px}ul.navlist li.dropdown-item,ul.script-dropdown-menu li.dropdown-item{margin-left:0}ul.navlist li.navbar-spacer:hover{background-color:#a0a0a0}ul.navlist>li.active,ul.navlist>li.active:hover{background-color:transparent}ul.navlist li.active{font-weight:700}ul.navlist li.active .tab{border-bottom:2px solid #8aa051;padding-bottom:4px}ul.navlist li.divider,ul.navlist li.navbar-spacer{border:none}ul.navlist li.divider{background-color:rgba(0,0,0,.2)}ul.navlist li{border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent}ul.navlist li.dropdown:hover{border-top:1px solid rgba(0,0,0,.2);border-left:1px solid rgba(0,0,0,.2);border-right:1px solid rgba(0,0,0,.2);border-bottom-left-radius:0;border-bottom-right-radius:0}ul.navlist li.dropdown-item:hover,ul.navlist>li:hover{background-color:#fff;border-radius:3px}ul.navlist li.dropdown-item a{display:block;border-bottom:0}ul.navlist li.dropdown-item a:hover{color:#686766;background-color:#dee9cf}a.tab{color:#686766;font-size:12pt;font-weight:100;padding:9px 10px 10px}a.tab.userImg{padding-bottom:5px}.dropdown-item a{border-bottom:0!important;font-weight:300}ul.link-dropdown-menu{background-color:#fff;z-index:-10;margin-top:7px;margin-right:-1px;border:1px solid rgba(0,0,0,.2);border-top-right-radius:0}ul.script-dropdown-menu li.dropdown-item a:hover{color:#fff}ul.script-dropdown-menu li.dropdown-item:hover{background-color:#8aa051}ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:rgba(0,0,0,.7);border:1px solid #c2c2c2;margin-right:-20px;margin-top:6px}ul.gv-dropdown-menu:after{border-bottom-color:#fff}ul.gv-dropdown-menu li:hover{background-color:#fff;background-image:none}ul.gv-dropdown-menu li a{padding:0}ul.gv-dropdown-menu li a label{color:#fff;padding-left:5px}ul.gv-dropdown-menu li a:focus{background-color:#8aa051!important;background-image:none}#arangoCollectionSelect{display:none;float:right;margin-bottom:0;margin-right:15px;padding-bottom:0}.caret{border-left:5px solid transparent;border-top:5px solid #686766;border-right:5px solid transparent;display:inline-block;height:0;vertical-align:top;width:0}.applications-menu{display:block}.arango-logo{height:34px;padding:0!important}.arango-logo img{margin-left:22px}.footer{bottom:0;font-size:14px;left:0;position:fixed;right:0;text-align:center;z-index:1000}footer.footer{bottom:0;height:40px}footer.footer p{margin-bottom:0;padding-bottom:10px;padding-top:10px;font-weight:100;font-size:10pt}div.footer-left{background:none;color:#686766;width:45%}div.footer-left .social-icons{margin-top:5px}div.footer-left .social-icons a{width:25px;display:block;height:25px;float:left}div.footer-left .social-icons p{font-size:12pt;background:#fff;border:1px solid rgba(104,103,102,.1);border-radius:20px;height:25px;width:25px;padding:0;margin-right:10px}div.footer-left .social-icons p:hover{cursor:pointer;background:#8c8a89}div.footer-left .social-icons p:hover i{color:#fff}div.footer-left .social-icons i{color:#000;position:absolute;margin-top:4px}div.footer-left .social-icons i.fa-twitter{margin-left:-7px}div.footer-left .social-icons i.fa-envelope{margin-left:-20px}div.footer-left .social-icons i.fa-google{margin-top:6px;margin-left:-18px}div.footer-left .social-icons i.fa-stack-overflow{margin-left:-18px}div.footer-center{background:none;color:#686766;width:10%}div.footer-center i{background-color:#fff;border-radius:20px;border:1px solid rgba(104,103,102,.1);width:20px;padding:6px 3px 6px 2px}div.footer-center i:hover{color:#fff;background-color:#8c8a89}div.footer-center p{padding-top:5px}div.footer-center p:hover{cursor:pointer}[class*=' button-']:disabled,[class^=button-]:disabled,a.headerButton.disabled{cursor:not-allowed}div.footer-right{background:none;color:#686766;width:45%}div.footer-right p{color:#fff}div.footer-right i{color:#da4f49;font-size:18px}div.footer-right a{color:#686766;margin-left:5px;position:relative;top:-1px}div.footer-right .isOnline{color:#8aa051!important}.ajax-file-upload,.ajax-file-upload-red,.button-close,.button-danger,.button-header,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;font-size:14px;font-weight:300!important}.ajax-file-upload,.ajax-file-upload-red,.button-close,.button-danger,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{border:0;color:#fff;margin-left:10px;padding:5px 16px}.button-header{margin-top:5px}.addButton{font-size:22px;margin-right:7px;margin-top:2px;position:relative}.deleteButton{font-size:22px;padding-right:3px;position:relative;top:3px}#closeBtnInfoView{margin-left:0!important}button.large-distance{margin-left:12px}button.short-distance{margin-left:6px}ul.headerButtonList{display:inline-block;margin-bottom:0;margin-left:0;padding-left:0!important}ul.headerButtonList li{display:inline}button.shutdown{margin-top:6px;padding:3px 14px}a.button-gui,a.headerButton{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;margin-left:5px;margin-right:5px}a.headerButton{margin-top:2px;position:relative}a.headerButton .fa,a.headerButton [class*=" icon_"],a.headerButton [class^=icon_]{display:block;height:23px;line-height:23px;position:static;right:0;text-align:center;top:0;width:27px}a.headerButton .icon_arangodb_arrowleft,a.headerButton .icon_arangodb_arrowright{font-weight:700}a.headerButton.activated{background-color:#788f3d;color:#fff;border:1px solid #788f3d}a.headerButton.activated:hover{background-color:#fff;color:#788f3d}div.toolbox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);margin-right:5px;margin-top:-3px;padding-top:5px;padding-bottom:5px;position:absolute}div.toolbox div.gv_action_button{background-color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;color:#000;height:50px;margin:5px;position:relative;text-align:center;width:50px}div.toolbox div.gv_action_button.active{background-color:#8aa051;color:#fff}div.toolbox div.gv_action_button:first-child{margin-top:0}div.toolbox div.gv_action_button:last-child{margin-bottom:0}h6.gv_button_title,h6.gv_icon_icon{left:0;margin:0;position:absolute;right:0}h6.gv_icon_icon{font-size:22px;top:6px}h6.gv_button_title{bottom:1px}button.graphViewer-icon-button{background-color:transparent;border:0;height:20px;margin-left:5px;margin-top:-2px;padding:0;width:20px}button.graphViewer-icon-button>img{height:20px;padding-bottom:10px;width:20px}button.gv_dropdown_entry{height:30px;margin:4px 4px 4px 30px;width:160px}button.gv_context_button{width:65px}.btn-icon{background-color:#383434;padding:4px}button.gv-icon-small{background-size:16px 16px;height:16px;width:16px}button.gv-icon-small.delete{background-image:url(../img/icon_delete.png)}button.gv-icon-small.add{background-image:url(../img/plus_icon.png)}button.gv-icon-btn{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;background-size:36px 36px;height:36px;width:36px}button.gv-icon-btn.active{background-color:#8aa051}button.btn-zoom:hover{background:inherit}button.btn-zoom{background:0 0;height:16px;margin:0;padding:0;position:absolute;width:16px}button.btn-zoom-top{border:0;box-shadow:none;left:13px;top:1}button.btn-zoom-left{border:0;box-shadow:none;left:0;top:13px}button.btn-zoom-bottom{border:0;box-shadow:none;left:13px;top:25px}button.btn-zoom-right{border:0;box-shadow:none;right:0;top:13px}button.gv-zoom-btn{background-size:14px 14px;height:14px;vertical-align:baseline;width:14px}button.gv-zoom-btn.pan-right{background-image:url(../img/gv_arrow_right.png)}button.gv-zoom-btn.pan-left{background-image:url(../img/gv_arrow_left.png)}button.gv-zoom-btn.pan-top{background-image:url(../img/gv_arrow_top.png)}button.gv-zoom-btn.pan-bottom{background-image:url(../img/gv_arrow_bottom.png)}a.pagination-button,ul.arango-pagination a{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.badge,.btn,.label{text-shadow:none!important}.navbar-inner,.thumbnail{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0}.modal-body th.actionCell>button{margin-top:-12px}.btn-old-padding{padding-bottom:4px!important;padding-top:4px!important}button.btn-overview,button.btn-server{margin:5px}button.btn-server{width:120px}a.button-gui{height:auto;margin-bottom:0;margin-top:0;padding-top:1px;padding-bottom:1px;position:absolute;right:2px;text-decoration:none!important;top:2px;width:auto}a.button-gui.button-gui-disabled{display:none}.clusterDownBtn{padding-bottom:10px;padding-top:10px;text-align:center}.clusterDownBtn button{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#f1f1f1;border:1px solid rgba(0,0,0,.1875);color:#333;font-size:20px;font-weight:300;margin:0;padding:12px 18px;text-align:center;text-decoration:none!important;width:250px}.clusterDownBtn button:hover{background-color:#e8e8e8;color:#4a6c30;-webkit-transition-delay:0;-webkit-transition-duration:.2s;-webkit-transition-property:all;-webkit-transition-timing-function:ease-in}.clusterDownBtn button.green{background-color:#617e2b;color:#fff}.clusterDownBtn button.green:hover{background-color:#8ba142}.bottomButtonBar{border-top:1px solid rgba(104,103,102,.1);background-color:#fff;height:30px;padding:10px}div.tileList{margin-left:-6px;margin-right:-6px}div.tileList legend{padding-left:5px}div .bigtile,div .tile{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);font-size:14px;margin-bottom:13px;margin-left:6px;margin-right:6px;position:relative;text-align:center}div .bigtile .warning-icons,div .tile .warning-icons{background-color:#da4f49;color:#fff;font-size:11px;height:17px;left:0;line-height:13px;padding-left:9px;padding-right:4px;position:absolute;top:0}div .bigtile a svg.icon,div .bigtile img.icon,div .tile a svg.icon,div .tile img.icon{height:50px;width:50px}div .bigtile .warning-icons:before,div .tile .warning-icons:before{border-right:17px solid transparent;border-top:17px solid #da4f49;content:'';position:absolute;right:-17px}div .bigtile .warning-icons .fa+.fa,div .tile .warning-icons .fa+.fa{margin-left:1px}div .bigtile .warning-icons .fa:before,div .tile .warning-icons .fa:before{font-size:8px}div .bigtile .collection-type-icon,div .tile .collection-type-icon{color:#666;font-size:30pt;margin-top:12pt}div .bigtile .collection-type-icon:hover,div .tile .collection-type-icon:hover{cursor:pointer}div .bigtile a span.add-Icon,div .tile a span.add-Icon{font-size:22px;margin-left:22px;margin-right:10px;margin-top:-5px;position:relative;right:4px;top:2px}div .bigtile a span.icon,div .tile a span.icon{font-size:50px}div .bigtile svg.tile-icon-svg,div .tile svg.tile-icon-svg{cursor:pointer;fill:#686766;height:50px;margin-left:90px;margin-top:10px;width:50px}div .bigtile span.tile-icon,div .tile span.tile-icon{color:#686766;font-size:50px;line-height:1.2}div .bigtile span.icon_arangodb_edge5-2,div .tile span.icon_arangodb_edge5-2{position:relative;top:15px;-webkit-transform:rotate(80deg);-moz-transform:rotate(80deg);-o-transform:rotate(80deg);display:inline-block}div .bigtile h5,div .tile h5{background:#8c8a89;color:#fff;font-size:12px;margin:0;overflow:hidden!important;padding:4px 8px;text-overflow:ellipsis!important;white-space:nowrap!important}div .bigtile div.tileSelects,div .tile div.tileSelects{margin-left:40px;position:relative;z-index:9999}div .bigtile div.tileSelects select,div .tile div.tileSelects select{float:right;height:20px;margin-right:5px;margin-top:16px;width:70px}div .bigtile div.iconSet,div .tile div.iconSet{position:absolute;right:5px;top:5px}div .bigtile div.iconSet span,div .tile div.iconSet span{border-radius:3px;color:#000;font-size:18px;padding:2px 3px}div .bigtile div.iconSet span:hover,div .tile div.iconSet span:hover{background-color:#8aa051;color:#fff}div .bigtile div.iconSet span.disabled,div .tile div.iconSet span.disabled{cursor:default;opacity:.2}div .bigtile div.iconSet span.disabled:hover,div .tile div.iconSet span.disabled:hover{background-color:#fff;color:#000;cursor:default;opacity:.2}div .bigtile .badge-success,div .tile .badge-success{font-weight:300}div .bigtile .unloaded div,div .tile .unloaded div{border-bottom:16px solid #ff8f35}div .bigtile .deleted div,div .tile .deleted div{border-bottom:16px solid #700}div .bigtile div.tileBadge,div .tile div.tileBadge{bottom:29px;font-size:11px;font-weight:300;position:absolute;right:0}div .bigtile div.tileBadge button,div .tile div.tileBadge button{margin-left:0;margin-right:5px}div .bigtile div.tileBadge span,div .tile div.tileBadge span{display:inline-block;line-height:15px}div .bigtile div.tileBadge span div.corneredBadge,div .tile div.tileBadge span div.corneredBadge{border-left:5px solid transparent;border-bottom-style:solid;border-bottom-width:17px;border-radius:3px;margin-bottom:4px;margin-right:5px;color:#fff;height:0;padding-left:1px;padding-right:6px}div .bigtile div.tileBadge span div.corneredBadge.loading,div .tile div.tileBadge span div.corneredBadge.loading{border-bottom-color:#ff8f35}div .bigtile div.tileBadge span div.corneredBadge.loaded,div .tile div.tileBadge span div.corneredBadge.loaded{border-bottom-color:#8aa051}div .bigtile div.tileBadge span div.corneredBadge.development,div .bigtile div.tileBadge span div.corneredBadge.unloaded,div .tile div.tileBadge span div.corneredBadge.development,div .tile div.tileBadge span div.corneredBadge.unloaded{border-bottom-color:#ff8f35}div .tile{height:100px;width:226px}div .tile-graph .tile-icon:hover{cursor:pointer}div .bigtile{height:309px;width:452px}div .bigtile div.shardContainer{font-size:30px}div .bigtile div.shardContainer span{padding:2px}.collectionName{bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px;font-weight:300;left:0;position:absolute;right:0;text-align:left}div.resizecontainer{margin:0 auto}@media (max-width:798px){#arangoCollectionUl{display:none}#collectionsDropdown ul{width:auto!important}#arangoCollectionSelect{display:inline-block}}@media (min-width:799px) and (max-width:1041px){#arangoCollectionUl a{font-size:12px;padding:10px 5px}}@media (min-width:1042px) and (max-width:1284px){#arangoCollectionUl a{font-size:14px}}@media (min-width:250px) and (max-width:489px){div.resizecontainer{width:228px}.dashboard-large-chart{width:146px}.dashboard-large-chart .dashboard-sub-bar{width:134px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:136px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:106px;float:left}.dashboard-medium-chart{width:96px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:95px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:96px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:79px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:66px}.dashboard-small-chart .dashboard-sub-bar{width:54px}.dashboard-small-chart .dashboard-small-chart-inner{width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:54px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:56px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:40px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-114px;width:228px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:208px}.modal-body .dashboard-large-chart{width:143px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:131px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:133px}.modal-body .dashboard-medium-chart-outer{width:91px;float:left}.modal-body .dashboard-medium-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:89px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:74px}.modal-body .dashboard-small-chart{width:61px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:49px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:51px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:6.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:51px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:56px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:40px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:228px}.application-detail-view aside.meta{display:none}}@media (min-width:490px) and (max-width:729px){div.resizecontainer{width:468px}.dashboard-large-chart{width:306px}.dashboard-large-chart .dashboard-sub-bar{width:294px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:296px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:226px;float:left}.dashboard-medium-chart{width:216px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:215px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:216px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:199px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:146px}.dashboard-small-chart .dashboard-sub-bar{width:134px}.dashboard-small-chart .dashboard-small-chart-inner{width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:48px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:134px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:136px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:120px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-234px;width:468px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:448px}.modal-body .dashboard-large-chart{width:303px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:291px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:293px}.modal-body .dashboard-medium-chart-outer{width:211px;float:left}.modal-body .dashboard-medium-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:194px}.modal-body .dashboard-small-chart{width:141px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:129px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:131px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:46.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:131px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:136px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:120px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:468px}.application-detail-view aside.meta{display:none}}@media (min-width:730px) and (max-width:969px){div.resizecontainer{width:708px}.dashboard-large-chart{width:466px}.dashboard-large-chart .dashboard-sub-bar{width:454px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:456px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:346px;float:left}.dashboard-medium-chart{width:336px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:335px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:319px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:226px}.dashboard-small-chart .dashboard-sub-bar{width:214px}.dashboard-small-chart .dashboard-small-chart-inner{width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:88px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:214px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:216px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:200px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-354px;width:708px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:688px}.modal-body .dashboard-large-chart{width:463px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:451px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:453px}.modal-body .dashboard-medium-chart-outer{width:331px;float:left}.modal-body .dashboard-medium-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:329px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:314px}.modal-body .dashboard-small-chart{width:221px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:211px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:86.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:211px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:216px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:200px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:508px}}@media (min-width:970px) and (max-width:1209px){div.resizecontainer{width:948px}.dashboard-large-chart{width:626px}.dashboard-large-chart .dashboard-sub-bar{width:614px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:220px;width:496px}.dashboard-sub-bar-menu{font-size:13px}.dashboard-medium-chart-outer{width:466px;float:left}.dashboard-medium-chart{width:456px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:455px}.dashboard-medium-chart .dashboard-interior-chart{height:220px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:13px;left:438px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:220px;width:456px}.dashboard-medium-chart #clusterGraphs svg text{font-size:11px}.dashboard-small-chart{width:306px}.dashboard-small-chart .dashboard-sub-bar{width:294px}.dashboard-small-chart .dashboard-small-chart-inner{width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:229px;width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:11px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:96.5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:128px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:31.17px;line-height:31.17px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:52.33px;line-height:25.17px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:294px}.dashboard-bar-chart-container{height:98px}.dashboard-bar-chart-container .dashboard-bar-chart{height:96px;width:296px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:31.33px;line-height:31.33px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:45.67px;line-height:45.67px;padding:5px 8px 10px;width:280px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:50.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-474px;width:948px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:13px;min-height:225px;width:130px}.absolut,.percentage{font-size:15px}.modal-chart-detail .modal-inner-detail{width:808px}.modal-body .dashboard-large-chart{width:623px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:611px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:493px}.modal-body .dashboard-medium-chart-outer{width:451px;float:left}.modal-body .dashboard-medium-chart{width:451px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:433px}.modal-body .dashboard-small-chart{width:301px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:289px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:291px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:126.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:291px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:296px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:280px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:11px;font-weight:400}.dashboard-subtitle-bar{font-size:15px;font-weight:300}.dashboard-figure{font-size:18px;font-weight:400}.dashboard-figurePer{font-size:16px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:11px}.dashboard-legend{height:225px;margin-top:-3px;width:120px}.dashboard-half-height-legend{font-size:11px;height:117.5px;width:60px}.application-detail-view section.info{width:748px}}@media (min-width:1210px) and (max-width:1449px){div.resizecontainer{width:1188px}.dashboard-large-chart{width:786px}.dashboard-large-chart .dashboard-sub-bar{width:774px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:255px;width:646px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:586px;float:left}.dashboard-medium-chart{width:576px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:575px}.dashboard-medium-chart .dashboard-interior-chart{height:255px;width:446px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:16px;left:555px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:255px;width:576px}.dashboard-medium-chart #clusterGraphs svg text{font-size:12px}.dashboard-small-chart{width:386px}.dashboard-small-chart .dashboard-sub-bar{width:374px}.dashboard-small-chart .dashboard-small-chart-inner{width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:264px;width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:114px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:168px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:37px;line-height:37px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:64px;line-height:31px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:374px}.dashboard-bar-chart-container{height:115.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:113.5px;width:376px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:37.17px;line-height:37.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:57.33px;line-height:57.33px;padding:5px 8px 10px;width:360px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:62.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-594px;width:1188px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:14px;min-height:260px;width:140px}.absolut,.percentage{font-size:18px}.modal-chart-detail .modal-inner-detail{width:1038px}.modal-body .dashboard-large-chart{width:783px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:771px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:643px}.modal-body .dashboard-medium-chart-outer{width:571px;float:left}.modal-body .dashboard-medium-chart{width:571px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:569px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:441px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:550px}.modal-body .dashboard-small-chart{width:381px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:369px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:371px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:166.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:371px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:376px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:360px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:18px;font-weight:300}.dashboard-figure{font-size:22px;font-weight:400}.dashboard-figurePer{font-size:20px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:13px;font-weight:400}.dashboard-legend{font-size:12px;font-weight:400;height:260px;margin-top:-3px;width:130px}.dashboard-half-height-legend{font-size:12px;height:135px;width:65px}.application-detail-view section.info{width:988px}}@media (min-width:1450px) and (max-width:1689px){div.resizecontainer{width:1428px}.dashboard-large-chart{width:946px}.dashboard-large-chart .dashboard-sub-bar{width:934px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:796px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:706px;float:left}.dashboard-medium-chart{width:696px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:695px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:556px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:18px;left:673px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:696px}.dashboard-medium-chart #clusterGraphs svg text{font-size:13px}.dashboard-small-chart{width:466px}.dashboard-small-chart .dashboard-sub-bar{width:454px}.dashboard-small-chart .dashboard-small-chart-inner{width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:208px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:454px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:456px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:440px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-714px;width:1428px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:15px;min-height:290px;width:150px}.absolut,.percentage{font-size:20px}.modal-chart-detail .modal-inner-detail{width:1268px}.modal-body .dashboard-large-chart{width:943px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:931px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:793px}.modal-body .dashboard-medium-chart-outer{width:691px;float:left}.modal-body .dashboard-medium-chart{width:691px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:551px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:668px}.modal-body .dashboard-small-chart{width:461px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:451px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:206.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:451px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:456px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:440px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:20px;font-weight:300}.dashboard-figure{font-size:26px;font-weight:400}.dashboard-figurePer{font-size:24px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:13px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:13px;height:150px;width:70px}.application-detail-view section.info{width:1228px}}@media (min-width:1690px) and (max-width:1929px){div.resizecontainer{width:1668px}.dashboard-large-chart{width:1106px}.dashboard-large-chart .dashboard-sub-bar{width:1094px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:325px;width:936px}.dashboard-sub-bar-menu{font-size:16px}.dashboard-medium-chart-outer{width:826px;float:left}.dashboard-medium-chart{width:816px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:815px}.dashboard-medium-chart .dashboard-interior-chart{height:325px;width:656px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:22px;left:789px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:325px;width:816px}.dashboard-medium-chart #clusterGraphs svg text{font-size:14px}.dashboard-small-chart{width:546px}.dashboard-small-chart .dashboard-sub-bar{width:534px}.dashboard-small-chart .dashboard-small-chart-inner{width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:334px;width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:149px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:248px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:48.67px;line-height:48.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:87.33px;line-height:42.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:534px}.dashboard-bar-chart-container{height:150.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:148.5px;width:536px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:48.83px;line-height:48.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:80.67px;line-height:80.67px;padding:5px 8px 10px;width:520px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:85.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-834px;width:1668px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:16px;min-height:330px;width:170px}.absolut,.percentage{font-size:24px}.modal-chart-detail .modal-inner-detail{width:1488px}.modal-body .dashboard-large-chart{width:1103px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1091px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:933px}.modal-body .dashboard-medium-chart-outer{width:811px;float:left}.modal-body .dashboard-medium-chart{width:811px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:809px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:651px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:784px}.modal-body .dashboard-small-chart{width:541px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:529px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:531px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:246.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:531px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:536px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:520px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:14px;font-weight:400}.dashboard-subtitle-bar{font-size:24px;font-weight:300}.dashboard-figure{font-size:30px;font-weight:400}.dashboard-figurePer{font-size:28px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:14px}.dashboard-legend{height:330px;margin-top:-3px;width:160px}.dashboard-half-height-legend{font-size:14px;height:170px;width:80px}.application-detail-view section.info{width:1468px}}@media (min-width:1930px) and (max-width:2169px){div.resizecontainer{width:1908px}.dashboard-large-chart{width:1266px}.dashboard-large-chart .dashboard-sub-bar{width:1254px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:385px;width:1086px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:946px;float:left}.dashboard-medium-chart{width:936px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:935px}.dashboard-medium-chart .dashboard-interior-chart{height:385px;width:766px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:26px;left:905px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:385px;width:936px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:626px}.dashboard-small-chart .dashboard-sub-bar{width:614px}.dashboard-small-chart .dashboard-small-chart-inner{width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:394px;width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:179px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:288px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:58.67px;line-height:58.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:107.33px;line-height:52.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:614px}.dashboard-bar-chart-container{height:180.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:178.5px;width:616px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:58.83px;line-height:58.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:100.67px;line-height:100.67px;padding:5px 8px 10px;width:600px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:105.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-954px;width:1908px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:390px;width:180px}.absolut,.percentage{font-size:28px}.modal-chart-detail .modal-inner-detail{width:1718px}.modal-body .dashboard-large-chart{width:1263px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1251px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1083px}.modal-body .dashboard-medium-chart-outer{width:931px;float:left}.modal-body .dashboard-medium-chart{width:931px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:929px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:761px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:900px}.modal-body .dashboard-small-chart{width:621px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:609px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:611px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:286.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:611px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:616px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:600px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:28px;font-weight:300}.dashboard-figure{font-size:34px;font-weight:400}.dashboard-figurePer{font-size:32px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:14px;font-weight:400}.dashboard-legend{font-size:15px;font-weight:400;height:390px;margin-top:-3px;width:170px}.dashboard-half-height-legend{font-size:15px;height:200px;width:85px}.application-detail-view section.info{width:1708px}}@media (min-width:2170px) and (max-width:2409px){div.resizecontainer{width:2148px}.dashboard-large-chart{width:1426px}.dashboard-large-chart .dashboard-sub-bar{width:1414px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1276px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1066px;float:left}.dashboard-medium-chart{width:1056px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1055px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:916px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1031px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1056px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:706px}.dashboard-small-chart .dashboard-sub-bar{width:694px}.dashboard-small-chart .dashboard-small-chart-inner{width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:328px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:694px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:696px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:680px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1074px;width:2148px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:1988px}.modal-body .dashboard-large-chart{width:1423px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1411px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1273px}.modal-body .dashboard-medium-chart-outer{width:1051px;float:left}.modal-body .dashboard-medium-chart{width:1051px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1049px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:911px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1026px}.modal-body .dashboard-small-chart{width:701px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:691px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:326.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:691px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:696px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:680px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:1948px}}@media (min-width:2410px) and (max-width:2649px){div.resizecontainer{width:2388px}.dashboard-large-chart{width:1586px}.dashboard-large-chart .dashboard-sub-bar{width:1574px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1436px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1186px;float:left}.dashboard-medium-chart{width:1176px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1175px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1036px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1151px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1176px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:786px}.dashboard-small-chart .dashboard-sub-bar{width:774px}.dashboard-small-chart .dashboard-small-chart-inner{width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:368px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:774px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:776px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:760px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1194px;width:2388px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2228px}.modal-body .dashboard-large-chart{width:1583px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1571px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1433px}.modal-body .dashboard-medium-chart-outer{width:1171px;float:left}.modal-body .dashboard-medium-chart{width:1171px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1169px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1031px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1146px}.modal-body .dashboard-small-chart{width:781px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:769px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:771px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:366.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:771px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:776px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:760px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2188px}}@media (min-width:2650px) and (max-width:2889px){div.resizecontainer{width:2628px}.dashboard-large-chart{width:1746px}.dashboard-large-chart .dashboard-sub-bar{width:1734px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1596px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1306px;float:left}.dashboard-medium-chart{width:1296px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1295px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1156px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1271px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1296px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:866px}.dashboard-small-chart .dashboard-sub-bar{width:854px}.dashboard-small-chart .dashboard-small-chart-inner{width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:408px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:854px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:856px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:840px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1314px;width:2628px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2468px}.modal-body .dashboard-large-chart{width:1743px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1731px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1593px}.modal-body .dashboard-medium-chart-outer{width:1291px;float:left}.modal-body .dashboard-medium-chart{width:1291px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1289px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1151px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1266px}.modal-body .dashboard-small-chart{width:861px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:849px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:851px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:406.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:851px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:856px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:840px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2428px}}div.centralRow{margin-top:40px;margin-bottom:40px}div.centralContent{background-color:transparent;height:100%;margin-left:-5px;margin-right:-5px;min-height:80px;padding:5px;width:100%}.contentDiv{padding:13px 0 0}.contentDiv li{background-color:rgba(0,0,0,.05)}.contentDiv a.add{display:block;font-weight:400;padding:40px 0;text-align:left}.modal-body th .valueCell,.modal-body th th.actionCell,.modal-body th th.keyCell,.waitModal{text-align:center}.contentDiv .icon{padding-left:5px;padding-right:5px;padding-top:10px}.contentDiv:after{clear:both}.contentDiv:after,.contentDiv:before{display:table;line-height:0}.clusterInfoIcon{float:left;padding-left:5px;padding-top:2px}.waitModal.icon{font-size:100px;height:120px}.waitModal.message{font-size:20px}.icon_arangodb_info{color:#333;font-size:23px}li a [class*=" icon_arangodb"],li a [class^=icon_arangodb]{font-size:18px;position:absolute;right:4px;top:2px}.fa-minus-circle{color:#da4f49;font-size:14pt}.fa-minus-circle:hover{cursor:pointer}div.headerDropdown{background-color:#fff;border:1px solid rgba(104,103,102,.1);border-radius:3px;display:none;padding:10px;position:relative;width:auto}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox{display:none}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.dropdown-title{margin-bottom:10px}div.dropdownInner{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;min-height:125px;position:relative;width:auto}div.dropdownInner>.nav-header{color:#000;font-size:13px;font-weight:400}div.dropdownInner>label{color:#000;font-weight:300}div.dropdownInner ul{border-left:1px solid #c2c2c2;display:inline;margin-top:10px;min-height:105px;width:238px}div.dropdownInner ul:first-of-type{border:0}div.dropdownInner ul label{color:#000;padding-left:35px}div.dropdownInner ul li .fa{margin-right:5px;color:#8c8a89}div.dropdownInner ul li .fa.fa-check-circle-o,div.dropdownInner ul li .fa.fa-dot-circle-o{color:#8aa051}div.queryline{color:#000;height:35px}div.queryline .textDiv{margin-right:10px;margin-top:4px}div.queryline input,div.queryline select{margin-bottom:5px}div.queryline.querylineAdd span{color:#fff;padding-left:10px;position:relative;top:-21px}div.queryline .removeFilterItem i{margin-left:5px!important;margin-top:0!important}div.queryline div.searchByAttribute{margin-left:6px;margin-right:6px;position:relative}div.queryline div.searchByAttribute>ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:#fff;color:#fff;display:none;left:0;position:absolute;top:20px;width:247px}div.dropdownImport{background-color:#fff;border-radius:3px;display:none;position:relative;padding:10px 10px 5px}div.dropdownImport input{line-height:0;margin-bottom:-15px;margin-top:5px}select.filterSelect{margin-left:10px;margin-right:10px;width:100px}#filterHeader button{float:right;margin-left:10px!important;margin-top:1px}div.input-append button.gv_example_toggle{-moz-border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;background-color:#8f8d8c;height:30px;margin-left:-1px;padding-left:10px;padding-right:10px;padding-top:12px;vertical-align:top}div.input-append button.gv_example_toggle:hover{background-color:#8aa051}.searchEqualsLabel{margin-left:6px;margin-right:6px}img.gv-throbber{background-image:url(../img/swagger/throbber.gif)}span.gv_caret{margin-top:2px!important}input.search-input{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:14px;line-height:18px;margin-top:6px;margin-right:-1px;width:120px;outline:transparent 0}input.search-input:focus{border-color:#999;box-shadow:none;outline:transparent 0}.search-field{margin-left:10px}.search-field .fa-search{color:#D2D2D2;font-size:13pt;opacity:.5;position:absolute;right:7px;top:9px}.search-field .fa-search:hover{opacity:1;cursor:pointer}.gv-search-submit-icon,.search-submit-icon{background-image:url(../img/enter_icon.png);background-size:14px;height:14px;margin-left:-18px;opacity:.2;position:absolute;width:14px}.gv-search-submit-icon:hover,.search-submit-icon:hover{opacity:.8}.search-submit-icon{margin-top:11px}.gv-search-submit-icon{margin-top:6px}div.headerBar{background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);color:#fff;font-size:16px;height:36px;margin-top:15px;margin-bottom:5px;padding-left:5px;padding-right:5px;position:relative}div.headerBar .infoField{background-color:#f5f8f0;border:1px solid #d3d3d3;border-radius:3px!important;color:#000;float:right;font-size:12px;margin-top:7px;margin-right:7px;padding-left:5px;padding-right:5px}div.headerBar .infoField .fa{cursor:pointer;margin-left:5px}div.headerBar input[type=checkbox].css-checkbox{display:none}div.headerBar input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;cursor:pointer;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerBar input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.headerBar input[type=radio]{display:none}div.headerBar input[type=radio]+label span{background:url(../img/check_radio_sheet.png) -38px top no-repeat;cursor:pointer;display:inline-block;height:19px;margin:-1px 4px 0 0;vertical-align:middle;width:19px}#transparentHeader input[type=checkbox].css-checkbox,.contentTables tr.contentRowActive span,.display-none,.modal-delete-confirmation,.query-div,.query-output .ace_cursor-layer,.query-output .ace_replace_form{display:none}div.headerBar input[type=radio]:checked+label span{background:url(../img/check_radio_sheet.png) -57px top no-repeat}div.headerBar a.arangoHeader{color:#000;font-size:13pt;font-weight:100;left:0;position:relative;top:7px}div.headerBar>div.headerButtonBar{margin:4px 0;margin-bottom:0!important}.breadcrumb{background:0 0;border:0;border-radius:0;padding:7px 0}.breadcrumb .disabledBread{font-size:13pt;font-weight:100;color:#666;float:left;padding-right:5px;position:relative}.breadcrumb .disabledBread i{font-size:10pt;margin-left:10px}.breadcrumb .activeBread{font-size:13pt;font-weight:100;color:#7da817;float:left}.arangoHeader{font-weight:400}.checkboxLabel{margin-top:4px;padding-left:0}.css-label{background-image:url(../img/dark-check-green.png)}.css-label-round{background-image:url(../img/dark-check-green-round.png)}.modal-dashboard-header,.modal-header{background-color:#fff;border-radius:3px;border-bottom:0!important;margin-top:5px;padding-left:5px;padding-right:10px;padding-top:4px}.modal-dashboard-header .arangoHeader,.modal-header .arangoHeader{color:#000;font-size:13pt;font-weight:100;left:5px;position:relative;top:2px}.modal-dashboard-header a,.modal-header a{top:2px!important}.modal-dashboard-header .close,.modal-header .close{color:#fff;font-weight:300;margin-top:2px;opacity:.5}.modal-dashboard-header .close:hover,.modal-header .close:hover{opacity:1}.modal-body{color:#736b68;font-size:14px;font-weight:300}.dygraph-label.dygraph-title,.editor-label h6{font-family:'Open Sans',sans-serif}.modal-body .select2-choices{border-radius:3px;border:1px solid #aaa;box-shadow:none;-webkit-box-shadow:none;background-image:none!important}.modal-body .select2-choices input{box-shadow:none;-webkit-box-shadow:none;outline:transparent!important}.modal-body .select2-choices input:active{box-shadow:none;-webkit-box-shadow:none;outline:0!important}.modal-body .select2-choices .select2-search-choice{margin:5px 0 3px 5px!important}.modal-body .select2-choices li{color:#000;background-color:#fff!important;background-image:none!important}.modal-body .select2-choices li a{margin-top:-1px;margin-left:1px}.modal-body .select2-choices:active{outline:transparent!important;border:1px solid #aaa;box-shadow:none!important;-webkit-box-shadow:none!important}.modal-body .nav-tabs{margin-top:15px}.modal-body input,.modal-body select,.modal-body textarea{margin-top:10px;border-radius:3px;box-shadow:none}.modal-body input[type=checkbox]{margin-bottom:10px}.modal-body input[type=text].invalid-input{border-color:rgba(234,23,23,.6)}.modal-body input[type=text].invalid-input:focus{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6)}.modal-body input[type=file]{line-height:17px}.modal-body th.actionCell{width:30px}.modal-body th.keyCell{width:170px}.modal-body th.keyCell input{width:150px}.modal-body th .valueCell{width:300px}.modal-body th .valueCell input{width:290px}.modal-body th div.select2-container{margin-bottom:10px;margin-top:10px}.modal-body .icon-info-sign{margin-bottom:10px;margin-left:10px;opacity:.7;padding-bottom:5px}.modal-body .icon-info-sign:hover{opacity:1}.modal-body .icon_arangodb_info{color:#736b68;font-size:18px;margin-top:-10px;position:absolute;right:12px}.modal-body .icon_arangodb_info:hover{color:#000}.modal-body .collapse{margin-right:-14px;position:relative}.modal-body .accordion-inner{border-top:0;margin-left:0;padding-left:0;padding-right:0}.modal-body .accordion-toggle span b.caret{border-top-color:#000;float:right;margin-top:5px}.modal-body .accordion-toggle.collapsed span b.caret{-ms-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.modal-body input{width:384px}.modal-body select{width:398px}.modal-body .collectionTh{height:55px}.modal-body .tab-content{min-height:200px}.modal-body .tab-content .tab-pane{border-top:1px solid #666!important;margin-left:0!important;padding-top:10px}.modal-body .tab-content #appstore{max-height:290px}.modal-body .errorMessage{background-color:#fff;color:red;font-size:9pt;font-weight:400;margin-bottom:5px;margin-top:-9px;position:absolute}.modal-body .nav img.tab-icon{margin-right:5px;margin-top:-3px;width:20px}.modal-text{font-weight:300;padding-bottom:3px;padding-top:3px}.modal-backdrop,.modal-backdrop.fade.in{opacity:.4}.modal{box-shadow:none;border:0!important;border-radius:3px!important}.modal .fade.in{top:12.1%!important}.modal table tr:last-child{border-bottom:0!important}.waitModal{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background:0 0;border:0;color:#fff}.waitModalBackdrop{opacity:.7!important}.modalTooltips span{color:#736b68;font-size:20px}.fixedDropdown .notificationItem,.modalTooltips span:hover{color:#000}pre.gv-object-view{text-align:left;white-space:pre}.capitalize{text-transform:capitalize}.modal-footer{border-top:0!important;padding-right:17px}.modal-header{margin-left:5px;margin-right:5px}.modal-dashboard-header{margin-left:0;margin-right:0;padding-bottom:9px}.modal table tr,.thBorderBottom{border-bottom:1px solid #f7f3f2!important}.fixedDropdown .dropdown-header,.fixedDropdown .dropdown-item,.innerDropdownInnerUL{border-bottom:1px solid rgba(0,0,0,.2)}.modal-delete-confirmation button{margin-right:10px;margin-top:-4px}.modal-delete-confirmation button .modal-confirm-delete{margin-right:-18px}.createModalDialog table{width:100%}.createModalDialog .collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.createModalDialog .figures1,.createModalDialog .figures2{margin-bottom:20px;width:255px}.createModalDialog .figures2{margin-left:20px!important}.createModalDialog .figures3{margin-bottom:0;width:100%}.foxx-store-row .foxx-name{font-weight:700}.foxx-store-row .foxx-author{font-size:10pt;font-weight:300;margin-top:-4px}.foxx-store-row .foxx-version{font-weight:400}#new-app-mount{margin-right:24px;width:360px}#control_event_edge_delete_modal,#control_event_edge_edit_modal,#control_event_new_node_modal,#control_event_node_delete_modal,#control_event_node_edit_modal{margin-left:-320px;width:640px}.navlogo .stat_cpu,.navlogo .stat_ram{height:26px;width:26px}.navlogo .stat_cpu{margin-top:1px}.navlogo .stat_cpu path{fill:#aa0}.navlogo .stat_ram path{fill:#070}.navlogo .stat_req{height:22px;width:22px}.navlogo .stat_req path{fill:#aa0}.fixedDropdown{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;margin:37px 0 0!important;width:210px}.fixedDropdown:after{visibility:hidden}.fixedDropdown .dropdown-header{padding:0!important}.fixedDropdown a{padding-left:5px!important}.fixedDropdown .notificationItemContent{font-weight:300;margin-left:15px;max-width:155px;min-height:15px;white-space:normal;width:155px;word-wrap:break-word}.fixedDropdown button{margin-right:5px;margin-top:5px}.fixedDropdown .notificationItem .notificationItemTitle{max-width:165px;overflow-wrap:break-word;white-space:normal;word-wrap:break-word}.fixedDropdown .notificationItem .notificationItemTitle:hover{color:#000;cursor:default}.fixedDropdown .notificationItem i{color:rgba(0,0,0,.2);font-size:20px;position:relative;right:4px;top:-9px}.fixedDropdown .notificationItem i:hover{color:#000}.innerDropdownInnerUL{height:220px!important;min-height:220px;overflow-x:hidden;overflow-y:scroll;width:100%}.innerDropdownInnerUL .dropdown-item:hover{background-color:#e1e1e1!important}.innerDropdownInnerUL li{width:auto!important}#stat_hd{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);height:24px;margin-top:3px;text-align:center;width:24px}.contentButtons,.contentTables{width:100%;margin-bottom:10px}#stat_hd #stat_hd_counter{color:#c2c2c2;line-height:24px;margin-left:1px}.contentTables tr.contentRowActive a,.contentTables tr.contentRowInactive a{color:#000!important}.contentButtons #createDatabase,.contentButtons #createUser,.dashboard-bar-chart-container:first-child,.dashboard-large-chart .dashboard-large-chart-inner:first-child,.dashboard-medium-chart:first-child,.dashboard-small-chart .dashboard-small-chart-inner:first-child,.dashboard-tendency-container:first-child{margin-left:0}.fullNotification{background-color:#c00!important;border:2px solid #c00!important}.contentButtons{clear:both}.contentTables thead{text-align:left}.contentTables thead tr{background-color:#fff;border-bottom:1px solid #c2c2c2}.contentTables tbody tr:nth-child(odd){background-color:#d9d9d9}.contentTables tbody tr:nth-child(even){background-color:#fff}.contentTables tr.contentRowActive{background-color:#bdcc92!important;font-weight:400}.contentTables .dbThFirst{width:90%}.contentTables .dbThSecond{width:10%}.contentTables td{padding:12px 18px}.contentTables td span{float:right;font-size:22px}.contentTables .collectionThSec{margin-right:0;width:80%}.contentTables .collectionTh{margin-right:0;width:5%}.user-menu-img{background-color:#d3d3d3;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:2px solid #8aa051;margin-top:-4px}.tooltip-inner{max-width:300px!important;white-space:normal!important;word-wrap:break-word!important}.index-tooltip{color:#736b68}.index-tooltip:hover{color:#000}.index-tooltip span.arangoicon{font-size:18px!important}.tooltipInfoTh{width:10%}.dbselection{float:left;margin-right:3px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-bar-chart-container,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-medium-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-tendency-container{border-top-left-radius:3px;border-top-right-radius:3px}.dashboard-bar-chart-container,.dashboard-large-chart,.dashboard-medium-chart,.dashboard-small-chart,.dashboard-tendency-container{margin-bottom:10px;position:relative}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-medium-chart .dashboard-interior-chart{margin-bottom:0}.dashboard-sub-bar-menu{cursor:pointer;position:absolute;right:9px;top:6px}.dashboard-large-chart{margin-right:12px;border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-large-chart .dashboard-large-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:12px;padding-bottom:10px}.dashboard-small-chart{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-small-chart .dashboard-small-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:10px;padding-top:5px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart-outer:first-child{margin-right:10px}.dashboard-medium-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:10px;margin-bottom:0}.dashboard-medium-chart:first-child{margin-right:12px}.dashboard-medium-chart .dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart .dashboard-medium-chart-menu{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:0 solid rgba(0,0,0,.3);color:rgba(0,0,0,.3);cursor:pointer;padding:0 4px;position:absolute;z-index:1000}.dashboard-medium-chart .dashboard-medium-chart-menu:hover{color:rgba(0,0,0,.7)}.dashboard-medium-chart .dashboard-medium-chart-inner{padding-bottom:10px}.dashboard-medium-chart .clusterChart .slice path{fill-opacity:.15;stroke-opacity:1;stroke-width:1.5px}.dashboard-tendency-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-tendency-container .dashboard-tendency-chart{background-color:#fff;border-top-left-radius:3px;border-top-right-radius:3px;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{background-color:#fff;margin-top:5px;padding:0 8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency:first-child{border-right:1px solid #e1e1e1}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar{border-bottom:1px solid #e1e1e1;text-align:right}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure{text-align:center}.dashboard-bar-chart-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-bar-chart-container .dashboard-bar-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;border-top-left-radius:3px;border-top-right-radius:3px;padding-bottom:5px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{margin-top:5px;padding:0 8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{font-weight:400}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{text-align:right}#dashboardDetailedChart .dygraph-axis-label-y,.dashboardDetailChart .dygraph-axis-label-y,.innerDashboardChart .dygraph-axis-label-y{text-align:left}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-legend .dashboard-legend-inner{padding:0 5px 5px 0}.dashboard-sub-bar{background-color:#686766;border-bottom-left-radius:3px;border-bottom-right-radius:3px;color:#fff;height:24px;line-height:24px;margin:0;padding:0 6px}.dashboard-spacer{margin:0 12px}.headerBar.dashboard-headerbar{margin:15px 0 10px}.modal-chart-detail .modal-dashboard-legend .dashboard-legend-inner{padding-left:20px}.dashboard-half-height-legend .dashboard-legend-inner{padding-top:20px}.dashboard-title-bar{background-color:#686766;color:#fff;font-size:14.5px;font-weight:400;height:30px;line-height:30px;padding:0 5px 0 10px}.dashboard-title-bar .dashboard-half-title-bar{border-left:1px solid #000;margin-left:-1px;width:50%}.dashboard-title-bar .dashboard-half-title-bar:first-child{border-left:0;margin-left:0}.dashboard-row{margin-bottom:0;margin-left:0;margin-right:0}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{color:#666}.dashboardModal{-moz-border-radius:8px!important;-webkit-border-radius:8px!important;border-radius:8px!important;height:80%;margin-left:-45%;min-width:780px;overflow:auto;padding:10px;top:10%;width:90%!important}#dashboardHttpGroup{border:6px solid #000;height:100%;width:100%}#dashboardDetailedChart{border:1px solid #000;height:300px;width:100%}.innerDashboardChart{bottom:5px;left:5px;position:absolute;right:5px;top:5px}.dashboardChart{background-color:#fff;border:1px solid rgba(0,0,0,.2);float:left;height:210px;margin:1.05%;position:relative;width:31%}.dygraph-label.dygraph-title{color:#000;font-size:15px;font-weight:400;text-align:left}#dashboardDetailedLineChart{padding-top:10px}.dashboardDistribution{float:left;width:270px}.dashboardDistribution svg{height:220px;width:250px}.showHotkeyHelp{cursor:pointer}.shortcuts{font-size:14px;font-weight:200}.shortcuts b{border-left:1px solid rgba(0,0,0,.34);margin-left:5px;padding-left:5px}.shortcuts .clearShortcut,.shortcuts b:first-child{border-left:0;margin-left:0;padding-left:0}.loginFixedWindow{background:#dee8d0;height:100%;left:0;position:fixed;top:0;width:100%}.login-window{background-color:#fff;border-radius:5px;height:280px;left:50%;margin-left:-220px!important;margin-top:-150px;padding-left:10px;padding-right:10px;position:absolute;top:50%;width:400px}.login-window img{margin-left:12px}.login-window .fa{color:rgba(0,0,0,.4);float:right;font-size:14pt;margin-right:5px;margin-top:-34px}.login-space{height:50px}.login-input{width:387px}toolbar{background-color:#f0f0f0;border-bottom:0;border-style:solid;border-width:1px;font-size:20px;height:27px;margin-left:0;margin-right:0}toolbar span:hover{background-color:red;color:#fff}.queryBottomActions{padding:10px;border-top:1px solid #c2c2c2}#queryManagementContent{margin-top:18px}.queryManagementBottomActions{margin-top:-2px;border-top:1px solid #c2c2c2;height:40px;padding-top:10px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;background-color:#fff}.queryManagementBottomActions button{margin-right:10px}.editor-toolbar{border-color:#a0a0a0;margin-top:3px}.editor-toolbar span{border-radius:3px;float:right;width:25px;height:18px;position:relative;margin-left:3px;top:0;padding:3px 0 6px 5px}.aql-editor,.query-output{height:200px;min-height:100px}.editor-toolbar span:hover{background-color:#8aa051;color:#fff}.editor-toolbar i{margin-right:5px;margin-top:3px}.editor-toolbar i:hover{cursor:pointer}.editor-toolbar .icon_arangodb{font-size:14pt}.editor-toolbar .icon_arangodb_trash{margin-left:5px;margin-right:10px}.editor-toolbar .fa-comment,.editor-toolbar .fa-comment-o{font-size:15px;position:relative;right:-2px;top:-2px}.editor-toolbar .arango-icon-disk{margin-top:1px}.queryMethods button a{color:#fff}.aql-editor{border-color:#a0a0a0;border-left:0!important;border-top:0!important;margin-bottom:5px;min-width:99.8%;width:auto}.aql-editor .ace_error,.aql-editor .ace_info{background:0 0}.queryTH{width:20%!important}.queryTH2{width:75%!important}.query-output{background-color:#fff;border:0;border-top-width:0;margin-left:0;margin-right:0;overflow-y:hidden;width:auto}.query-output .ace_error,.query-output .ace_info{background:0 0}.ace_print-margin{visibility:hidden!important}#documentsTableID_filter,#documentsTableID_length,#documentsTableID_paginate,#documentsTableID_wrapper .fg-toolbar,.jsoneditor .outer .tree>table>tbody>tr:first-of-type{visibility:hidden}.styled-select{float:right;height:30px;overflow:hidden;width:220px}.styled-select select{background:#fff;border:1px solid #c2c2c2!important;border-radius:3px!important;font-size:14px;font-weight:300;height:30px;line-height:1;padding:5px;padding-left:5px!important;padding-top:3px!important}.querySizeDiv,.querySizeDiv select{height:30px!important}.query-select,.query-size{line-height:20px!important;z-index:9999!important}.querySizeDiv{margin-right:10px;width:130px!important}.wide-button-div{margin-top:-10px;height:36px;margin-bottom:15px;padding-top:5px;width:100%}.shortcut-div{float:left;margin-top:-5px;padding-left:45px;width:auto}.query-dropdown-left{margin-top:10px;width:100%}.query-dropdown-right{width:100%}.query-dropdown-right textarea{padding:5px 0 0;resize:vertical;width:100%}.query-dropdown-right textarea:focus{border-color:#8aa051;box-shadow:0 0 3px #8aa051;outline:0}.query-modal-select{padding-left:0;width:100%}.output-toolbar{border-color:silver;border-top:0;position:relative;width:auto}.output-toolbar span{float:right;margin-left:5px;margin-right:5px;position:relative;top:2px}.query-select{border:0!important;border-radius:0!important;margin-bottom:0}.query-select option{z-index:9999!important}.editor-label{background-color:#ddd;height:1px;width:100%}.editor-label h6{font-size:16px;font-weight:400;margin-bottom:5px}.query-dropdown{background-color:#d9d9d9;margin-left:0;margin-right:0;padding-left:5px;padding-right:5px}.tooltip-margin{margin-top:1px}.query-dropdown-in{background-color:#fff;padding:10px}.query-dropdown-in a{color:#686766;font-size:16px;font-weight:bolder;margin-bottom:5px;width:100%}.query-dropdown-in #save-edit-query{margin-left:7px!important}.query-dropdown-in #delete-edit-query{margin-left:0!important}.query-size{border-radius:0!important;width:130px!important}.query-div .arango-table,.query-div .arango-table tbody,.query-div .arango-table tr{max-width:100%;width:100%}#queryContent{margin-top:18px}#queryContent .arango-tab a{border-bottom-color:#ddd}#queryContent .arango-tab .active{border-bottom-color:#fff!important}.query-div{min-height:360px}.query-div>*{border:0!important}.query-div .icon_arangodb{cursor:pointer;margin-bottom:5px}.query-div .arango-table{table-layout:fixed}.query-div .arango-table .table-cell0{cursor:pointer;min-width:250px;overflow:hidden;text-overflow:ellipsis!important;white-space:nowrap!important;width:20%}.query-div .arango-table .table-cell1,.query-div .arango-table .table-cell2{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.query-div .arango-table .table-cell1{cursor:pointer;width:73%}.query-div .arango-table .table-cell2{max-width:40px;min-width:40px;width:40px}.queryImport{margin-bottom:10px}.tab-content,svg.explain-tree{width:100%}svg.explain-tree .node text{font-size:14px}svg.explain-tree .link{fill:none;stroke:#ccc;stroke-width:1.5px}.row{margin:0 0 20px}.innerContent{min-height:200px;background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);padding-top:13px}.container{margin-left:20px;margin-right:20px;width:auto!important}.arango-tab{border-bottom:1px solid #ddd;margin-left:0;padding-right:10px;padding-bottom:0}.arango-tab a{-moz-border-radius:0;-webkit-border-radius:0;border-radius:3px 3px 0 0;background-color:#8c8a89;border:1px solid transparent;border-bottom-color:#888;color:#fff;display:block;font-size:13px;line-height:20px;margin-right:2px;min-width:50px;padding:2px 15px;text-align:center}.arango-tab li{background-color:transparent;border:0;margin-bottom:-1px;margin-left:2px;position:relative;z-index:900}.arango-tab li.active a{background:#fff;border-bottom-color:#fff!important;border-left-color:#c2c2c2;border-right-color:#c2c2c2;border-top-color:#c2c2c2;color:#000;height:21px;margin-top:-1px}.jsoneditor,.jsoneditor .menu{background-color:#fff!important}.jsoneditor{border:0 solid rgba(0,0,0,.2)!important}.jsoneditor .menu{border-left:0!important;border-right:0!important;border-top:0!important;border-bottom:1px solid #c2c2c2!important}.jsoneditor .menu button{border:0!important}.jsoneditor .menu button:hover{background-color:#8aa051;color:#fff}.jsoneditor .search .frame{border:0!important;margin:3px!important}.jsoneditor .search .frame input{border:1px solid #c2c2c2!important;border-radius:3px;margin-top:-2px;margin-left:5px;margin-right:5px}.jsoneditor .search .results{color:#fff!important;margin-top:3px!important}.show-save-state{color:green;display:none;font-weight:300;margin-top:5px}.document-editor-extra{margin-top:10px}.document-editor{height:500px;margin-top:-10px;margin-bottom:5px;width:100%}.disabledPag,.disabledPag a{cursor:default!important;opacity:.5!important}.pagination-line{margin:0;padding-top:12px;text-align:center;border-top:1px solid rgba(104,103,102,.1);background-color:#fff;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.pagination-line li a:hover,.pagination-line li.active a,.pagination-line li.active span{background-color:#8f8d8c;color:#fff}.pagination-line li a{background-color:#fff;border:1px solid #fff;font-size:11.9px;line-height:20px;padding:2px 10px;text-decoration:none;border-width:0;min-width:12pt}.pagination-line ul{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;margin-bottom:0;margin-left:0}.pagination-line li{display:inline-block;margin-left:11px}.pagination-line li span{color:#000;font-size:14px;position:relative;top:2px}.pagination-line li:first-child a,.pagination-line li:first-child span,.pagination-line li:last-child a,.pagination-line li:last-child span{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;background:#8f8d8c;border:0;color:#000;height:21px;position:relative;width:14px}.pagination-line li.disabled:first-child a,.pagination-line li.disabled:first-child span,.pagination-line li.disabled:last-child a,.pagination-line li.disabled:last-child span{background-color:#777;color:#666;cursor:default;pointer-events:none}.collection-pagination{margin-left:23px!important}.arango-pagination i.fa,.las-pagi i.fa,.pre-pagi i.fa{font-size:19px;position:relative;top:-2px}.arango-pagination li:first-child{margin-right:20px}.arango-pagination li:last-child{margin-left:30px}.pre-pagi{margin-right:-5px!important}.accordion-group{border:0}.accordion-heading a{border:1px solid #ccc;color:#000;font-weight:400;width:397px!important}.shell_workspace{margin-top:13px}.shell_workspace ::-webkit-scrollbar{display:none}.replShell{background-color:#fff;float:left;height:100%;min-width:100px;position:relative;overflow-y:hidden;width:100%}.replShell>div{border-radius:3px}.replShell pre{border-bottom:0;border-left:0;border-right:1px solid #a0a0a0;border-top:1px solid #a0a0a0}.jqconsole{background-color:#000;border-radius:0;padding:10px}.jqconsole-header{color:#fff}.jserror{color:#f06;margin-left:-10px}.jssuccess{color:#6f0}.jqconsole-cursor{background-color:grey}.jqconsole-blurred .jqconsole-header .jqconsole-cursor{color:#c4cccc}.jqconsole-prompt{color:#b91}.jqconsole-old-prompt{color:#f60;font-weight:400}.jqconsole-input{color:#dd0}.jqconsole-old-input{color:#bb0;font-weight:400}.jqconsole-output{color:#fff}.query-output .ace_gutter-cell{background-color:#f0f0f0}.swagger-ui-wrap{background-color:#fff;border-radius:3px}.swagger-ui-wrap #resources li.resource{background-color:#f4f3f3}.centralContent .api-actions{margin:0!important;padding:0}.centralContent .api-actions .container{padding-bottom:10px!important;padding-top:13px!important;margin:0 5px!important}.centralContent .api-actions .resource{border-bottom:0!important;padding-left:5px!important}.centralContent .api-actions .resource .heading h2 a{color:#000!important;font-weight:300!important}.centralContent .api-actions .active .heading h2 a{color:#000!important}.centralContent .api-actions .endpoints{margin-right:5px!important}.centralContent .api-actions .endpoints .endpoint:last-child{padding-bottom:5px!important}.centralContent .api-actions .endpoint .operations .content,.centralContent .api-actions .endpoint .operations .heading{border-radius:0!important;font-weight:300!important}.centralContent .api-actions .endpoint .operations .content{margin:0!important}.centralContent .api-actions .endpoint .operations .content h4{font-weight:700!important}.centralContent .api-actions .http_method,.centralContent .api-actions .toggleOperation{border-radius:0!important}.centralContent .api-actions .required,.centralContent .api-actions em,.centralContent .api-actions strong{font-weight:400!important}.centralContent .api-actions input[type=button]{background:#8f8d8c!important;border:none!important;box-shadow:none!important;color:#fff!important;float:right!important;font-size:14px!important;font-weight:300!important;margin-top:10px!important;padding:8px 16px!important}.collectionInfoTh2,.collectionTh,.figuresHeader th{font-family:'Open Sans',sans-serif!important;font-weight:400!important}.centralContent .api-actions .resource>.heading>.options{margin:11px 10px 0 0!important}.form-actions{background:0 0;border:0}div.gv-colour-list ul ul,div.gv-colour-list ul ul:first-child,div.gv-colour-list ul ul:last-child{border-left:1px solid rgba(104,103,102,.1);border-right:1px solid rgba(104,103,102,.1)}.form-actions:after,.form-actions:before{display:table;line-height:0}.form-actions:after{clear:both}.alert{padding:15px 35px 15px 14px}.alert,textarea{border-radius:0!important}.log-content{word-break:break-all;word-wrap:break-word}.log-content-id{margin-top:20px;padding-bottom:0!important}.log-content-id .dataTable{border-collapse:separate;border-spacing:0 5px;table-layout:fixed!important}.log-content-id .arango-tab{border-bottom:0!important}.log-content-id .tab-content{margin-top:1px!important}.tab-content{min-height:390px}.crit-table-id,.debug-table-id,.info-table-id,.log-table-id,.warn-table-id{border-spacing:0 0;font-size:15px!important;margin-top:-5px!important}.crit-table-id thead,.debug-table-id thead,.info-table-id thead,.log-table-id thead,.warn-table-id thead{background-color:#f9f9f9;border-top:6px solid #888!important;text-align:center}.crit-table-id thead tr th,.debug-table-id thead tr th,.info-table-id thead tr th,.log-table-id thead tr th,.warn-table-id thead tr th{background-color:#fff!important;border-bottom:1px solid #c2c2c2;border-top:2px solid #888}.crit-table-id .firstcol,.debug-table-id .firstcol,.info-table-id .firstcol,.log-table-id .firstcol,.warn-table-id .firstcol{cursor:default!important;max-width:80px!important;width:80px!important}.crit-table-id tbody .firstcol,.debug-table-id tbody .firstcol,.info-table-id tbody .firstcol,.log-table-id tbody .firstcol,.warn-table-id tbody .firstcol{background-color:transparent!important}.crit-table-id tbody tr td,.debug-table-id tbody tr td,.info-table-id tbody tr td,.log-table-id tbody tr td,.warn-table-id tbody tr td{padding-bottom:8px!important;padding-top:8px!important}div.gv-colour-list li,div.gv_colour_list li{float:none;padding:2px 6px}.thirdcol{cursor:default!important;max-width:500px!important}.dataTables_empty,.seccol{cursor:default!important;margin-bottom:5px;width:100px!important}.dataTables_info{display:none}#arangoLogTable tbody td:nth-child(1),#arangoLogTable tbody td:nth-child(2){text-align:center;width:80px}#arangoLogTable tbody td:nth-child(3){width:auto}div.gv_zoom_widget{height:300px;left:82px;position:absolute;top:20px;width:40px;z-index:1}div.gv_zoom_widget div.gv_zoom_buttons_bg{background-image:url(../img/gv_button_bg_reverse.png);background-size:contain;height:40px;margin-bottom:20px}div.gv_zoom_widget div.gv_zoom_slider{background:#fff;height:200px;margin:0 17px;width:4px;border-radius:3px}div.gv_zoom_widget a.ui-slider-handle{border:1px solid rgba(104,103,102,.1);background-color:#000;height:.5em;left:-.55em;outline:0}div.gv_zoom_widget a.ui-slider-handle.ui-state-hover{outline-color:#fff}div.gv_zoom_widget a.ui-slider-handle:hover{cursor:pointer}div.gv_zoom_widget .ui-state-default{background:#f6f6f6}div.gv_colour_list{max-height:680px;overflow:auto;position:absolute;right:26px;text-align:right;top:20px;z-index:1}div.gv_colour_list li{background-color:transparent}svg.graph-viewer{background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);left:74px;position:absolute;top:10px;z-index:0}svg.graph-viewer text{font-size:16px;pointer-events:none}div.gv-background{position:relative}.link>line{stroke-width:1}div.gv-colour-list{border-radius:3px;position:absolute;right:8px;text-align:right;top:20px;z-index:1;max-height:350px;overflow-y:auto;overflow-x:none;max-width:130px}div.gv-colour-list ul ul:first-child{border-top:1px solid rgba(104,103,102,.1);border-top-left-radius:3px;border-top-right-radius:3px}div.gv-colour-list ul ul:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom:1px solid rgba(104,103,102,.1)}div.gv-manage-button-container{margin-top:10px}legend.gv-inner{font-size:16px}input.gv-radio-button{display:block;margin-top:3px;width:auto}.addCollection .accordion,.collectionTh select,.collectionTh textarea{margin-top:10px}.collectionTh{font-size:14px;text-align:left;width:20%!important}.collectionInfoTh{min-width:60px;text-align:left;width:320px}.addCollection table tr{border-bottom:0!important;height:53px}.addCollection .icon_arangodb_info{margin-left:20px!important;position:relative;top:2px!important}.addCollection .collectionThSec{width:320px!important}.addCollection .collectionTh{width:96px}.addCollection .modalInput{width:320px}.addCollection .modalSelect{width:334px}.addCollection .accordion-toggle{width:457px!important}.change-collection .tab-content{min-height:230px}.change-collection input{width:384px!important}.change-collection select{width:398px!important}.show-collection .tab-content{min-height:200px}.collectionInfoTh2{text-align:left;width:150px}.collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.figuresHeader{border-bottom:1px solid #c2c2c2}.document-info .document-bold-font,.document-info .document-thin-font{font-family:droid sans mono,monospace,courier new,courier,sans-serif;font-size:11pt}#collectionIndexTable{margin-left:0;width:100%}#collectionTab,#infoTab{border-bottom:0;margin-bottom:1px;padding-bottom:0;padding-right:10px}#collectionTab li,#infoTab li{float:right}#collectionTab a,#infoTab a{background-color:#8c8a89;border-bottom:1px solid #666;border-top-left-radius:3px!important;border-top-right-radius:3px!important;color:#fff;font-size:13px!important;height:21px;margin-bottom:-1px;margin-right:4px;padding:2px 15px!important}#collectionTab .active>a,#infoTab .active>a{color:#000;background-color:#fff;border-color:#888 #888 transparent!important}#confirmCreateEdge{margin-left:20px}.collection-info-figures .icon_arangodb_info{position:relative!important;right:-4px!important}.snippet-wrap .snippet-num li{list-style:decimal-leading-zero}.snippet-no-num{list-style-type:none;padding-left:0}.snippet-no-num .prettify{font-size:1.2em}.snippet-no-num .sh_number{color:#044;font-weight:100;margin-left:5px}.snippet-no-num .sh_symbol{color:#00f;font-weight:100;margin-left:5px}.snippet-no-num .sh_cbracket{color:#c7a317;font-weight:100;margin-left:5px}.snippet-no-num .sh_keyword{color:#c12dad;font-weight:100;margin-left:5px}.snippet-no-num .sh_string{color:#ce2f30;font-weight:100;margin-left:5px}.snippet-no-num .sh_array,.snippet-no-num .sh_object{color:#00f;font-weight:100;margin-left:5px}@media (max-width:798px){.arango-collection-ul{display:none}.collection-dropdown ul{width:auto!important}.arango-collection-select{display:inline-block}}@media (min-width:799px) and (max-width:1041px){.arango-collection-ul a{font-size:11px;padding:7px 5px 10px}}@media (min-width:1042px) and (max-width:1284px){.arango-collection-ul a{font-size:13px}}#documentsDiv{padding-top:1px}.document-info-div{margin-top:20px;min-height:0}.document-content-div{margin-top:10px}.document-info{background-color:#fff;border-radius:3px;margin-bottom:8px;margin-top:-13px;min-height:65px;padding:5px}.document-info .document-info-container{clear:both;width:100%}.document-info .document-info-container .document-inner-info-container{float:left;margin-left:10px;margin-top:5px}.document-info .document-info-container .document-inner-info-container .document-attribute{margin-right:20px}.document-info .document-info-container .document-inner-info-container .document-attribute div{float:left}.document-info .document-bold-font{min-width:55px}.document-info .document-thin-font{color:green}.document-info .document-type-container div{float:left}.document-info .document-type-container #document-id{margin-left:10px}.document-link:hover{cursor:pointer;text-decoration:underline}.jsoneditor .tree div{font-size:11pt}#progressPlaceholder{background-color:rgba(0,0,0,.4);bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.progress-view{background-color:#363c39;border-radius:2px;color:#fff;height:188px;left:50%;margin:-100px 0 0 -150px;position:absolute;top:50%;width:300px}.progress-view .progress-content{margin-left:90px;margin-top:10px}.progress-view .progress-content .fa-spinner{font-size:100pt}.progress-view .progress-message{background-color:#fff;border-radius:0 0 2px 2px;color:#fff;font-weight:200;height:44px;margin-top:33px;padding-top:3px;text-align:center}.progress-view .progress-text{color:#000;float:left;margin-left:5px;margin-top:10px}.progress-view .progress-action{float:right;margin-right:5px;margin-top:5px}#progressPlaceholderIcon{color:#8aa051;float:left;font-size:22px;margin-left:10px;margin-top:7px}.pong-loader{margin-top:35px;margin-left:17px}@-moz-keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@-webkit-keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@-moz-keyframes pong-loader-paddle-1{0%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-moz-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-webkit-keyframes pong-loader-paddle-1{0%{-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-webkit-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-webkit-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@keyframes pong-loader-paddle-1{0%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-moz-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-moz-keyframes pong-loader-paddle-2{0%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-webkit-keyframes pong-loader-paddle-2{0%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-webkit-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-webkit-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@keyframes pong-loader-paddle-2{0%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}.pong-loader:not(:required){width:80px;height:60px;background:#353c39;position:relative;display:inline-block;overflow:hidden;text-indent:100%;-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-moz-animation:pong-loader-paddle-1 1500ms infinite linear;-webkit-animation:pong-loader-paddle-1 1500ms infinite linear;animation:pong-loader-paddle-1 1500ms infinite linear}.pong-loader:not(:required):after,.pong-loader:not(:required):before{content:"";display:block;position:absolute;top:0;width:10px;left:0}.pong-loader:not(:required):before{-moz-animation:pong-loader-paddle-2 1500ms infinite linear;-webkit-animation:pong-loader-paddle-2 1500ms infinite linear;animation:pong-loader-paddle-2 1500ms infinite linear;height:100%;-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}.pong-loader:not(:required):after{-moz-animation:pong-loader 1500ms infinite linear;-webkit-animation:pong-loader 1500ms infinite linear;animation:pong-loader 1500ms infinite linear;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;height:10px;background:#8cdb8b}.application-detail-view section.info{float:left;padding:13px 0 0}.application-detail-view section.info .header{height:200px;margin-bottom:10px;position:relative}.application-detail-view section.info .header div.header-icon-container{height:160px;left:0;margin:0 0 4px;position:absolute;width:160px}.application-detail-view section.info .header div.header-icon-container img.icon{border:1px solid rgba(104,103,102,.1);border-radius:3px;height:auto;max-height:160px;max-width:160px;width:auto}.application-detail-view section.info .header .header_left{left:170px;position:absolute;width:120px;padding-top:1px}.application-detail-view section.info .header .header_left input.delete,.application-detail-view section.info .header .header_left input.switch-mode,.application-detail-view section.info .header .header_left input.upgrade{margin-top:13.33px}.application-detail-view section.info .header .header_left input{width:90px}.application-detail-view section.info .header .header_right{margin-left:300px;padding:5px}.application-detail-view section.info .header .header_right input{margin-left:0}.application-detail-view section.info .header .header_right .header_line h3{float:left;padding-right:5px}.application-detail-view section.info .header .header_right .header_line .license,.application-detail-view section.info .header .header_right .header_line .version{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid #a0a0a0;color:#a0a0a0;font-size:.6em;padding:0 8px 2px;position:relative;top:-2px}.application-detail-view section.info .header .header_right .header_line:after{content:'';display:table;clear:both}.application-detail-view section.info .header .app-warning{position:absolute;top:0;right:20px;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;border:1px solid #be342e;color:#da4f49;background:#e0d8d8;padding:4px 8px}.application-detail-view section.info .header .app-warning h4,.application-detail-view section.info .header .app-warning p{margin:0;font-size:1em}.application-detail-view section.info .swagger iframe{border:1px solid rgba(104,103,102,.1);border-radius:3px;height:600px;width:100%}.application-detail-view section.info .readme{border:1px solid #000;background:#fff;padding:1em 2em}.application-detail-view aside.meta{background-color:#fff;border:1px solid rgba(104,103,102,.1);border-radius:3px;clear:right;float:left;width:198px}.application-detail-view aside.meta dl{padding-left:7px;padding-top:5px;margin-top:0}.tests-result .stack{border-color:#f04;margin:5px 0;line-height:1.5;font-size:12px;color:#802}.tests-result-stats .fail,.tests-result-stats .pass,.tests-result-stats .pending{padding:0 2px}.tests-result-spec{margin-bottom:0}.tests-result-spec-suites .tests-result-spec-suites{margin-left:20px}.tests-result-spec-suites dd{margin-left:0;margin-bottom:20px}.tests-result-spec-tests{margin-left:20px}.tests-result-spec-test-title{padding-left:20px}.tests-result-spec-test-title .fa{position:absolute;margin-left:-20px;margin-top:2px;line-height:18px}.tests-result-spec-test-title .fa-circle{font-size:50%;margin-left:-16px}.tests-result .pass{color:#4c0}.tests-result .fail{color:#f04}.tests-result .pending{color:#888}.hotkeysList .hotkeysLabel{clear:both;color:#000;font-size:16px;font-weight:400}.hotkeysList .hotkeysContent{padding-left:10px}.hotkeysList li{line-height:25px}.hotkeysList li .hotkeysDiv{float:left}.hotkeysList .hotkeysicons{background-color:#686766;border:1px solid #000;border-radius:2px;color:#fff;display:inline;height:19px;margin-left:10px;text-align:center;width:19px}.arango-table tbody tr:nth-child(even),.arango-table thead{background-color:#fff}.hotkeysContentLabel{float:left;width:30%}.arango-table{border-top:1px solid #c2c2c2;width:100%}.arango-table thead th{border-bottom:1px solid #c2c2c2;height:43px}.arango-table tbody tr:nth-child(odd){background:rgba(104,103,102,.05)}.arango-table tbody td{padding:10px 18px}.arango-tabbar{height:27px;width:100%}.arango-tabbar button{background-color:#8c8a89;color:#fff;border:0;float:right;height:27px;width:82px;margin-right:5px;border-top-left-radius:3px;border-top-right-radius:3px}.arango-tabbar button:first-child{margin-right:10px}.arango-tabbar .arango-active-tab{background-color:#fff;color:#000;border-left:1px solid #c2c2c2;border-right:1px solid #c2c2c2;border-top:1px solid #c2c2c2;border-bottom:1px solid #fff;margin-bottom:-1px;height:28px}.docsSecCol,.docsThirdCol{height:26px}.arangoDataTable{border-spacing:0 0;position:relative;table-layout:fixed!important;width:100%!important}.arangoDataTable thead{background-color:#fff!important;font-weight:400!important;text-align:left}.arangoDataTable thead th{border-bottom:0;cursor:default!important;font-weight:400!important;padding:10px 14px!important}.arangoDataTable thead tr{border-bottom:1px solid #c2c2c2}.arangoDataTable tr{cursor:pointer}.arangoDataTable td{padding:10px 18px!important}.arangoDataTable .key{font-weight:100;margin-top:4px}.arangoDataTable .dataTable .noPointer tr{cursor:default}.arangoDataTable .selected-row{background-color:#8aa051!important}.arangoDataTable .selected-row div,.arangoDataTable .selected-row li,.arangoDataTable .selected-row span{color:#fff!important}.api-container #resources>li.resource:nth-child(even),table.arangoDataTable tr.even{background-color:#fff}.api-container #resources>li.resource:nth-child(odd),table.arangoDataTable tr.odd{background-color:rgba(104,103,102,.05)}#tableDiv table.dataTable td{padding:12px 18px!important}#documentsTableID_filter,#documentsTableID_length{display:none}#documentsTableID_wrapper{min-height:513px!important;padding-bottom:0!important}.snippet-no-num{font-family:'Open Sans',sans-serif;font-size:1em;font-weight:400;margin-bottom:0}.cuttedContent,.prettify ul li,.writeable a{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.totalDocuments{color:#666;font-weight:100;float:left;margin-top:-37px!important;padding-left:10px}.prettify{border:none!important;font-size:1em!important;margin:0!important;padding:0!important}table .sorting{background:0 0!important}.sorting_asc,.sorting_desc{background:#e4e0dd}#documentsDiv{margin-top:20px}.new-index-view input[type=checkbox]{float:left;margin-top:-9px}.new-index-view table tr{width:600px!important}.new-index-view table tr th:last-child{width:50px!important}.new-index-view table th{font-weight:300!important;width:200px!important}.edit-index-table{margin-top:5px;min-width:auto!important}.edit-index-table th{padding-bottom:5px;padding-left:5px;padding-top:5px}.edit-index-table .icon_arangodb_locked{color:rgba(0,0,0,.5);cursor:default;font-size:20px;margin-left:10px}.edit-index-table .icon_arangodb_roundminus{font-size:20px;margin-left:10px}.contentIn>div{padding:10px}.contentIn .arangoicon{font-size:25px;position:relative;top:-3px!important}.index-button-bar{margin-top:15px}.index-button-bar button{margin-left:0}.docsFirstCol,.docsSecCol,.docsThirdCol{border:0!important}.docsFirstCol{height:26px;width:80%}.docsSecCol{min-width:400px!important;width:10%}.add-filter-item{margin-left:5px}.add-filter-item i{margin-top:0!important}.upload-indicator{display:none;margin-top:-3px;padding-right:10px}.documentsDropdown .dropdownImport,.documentsDropdown .headerDropdown{margin-bottom:5px}.documents-size{float:right;border-radius:2px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:28px;line-height:18px;margin-right:-2px;margin-left:10px;margin-top:0;width:115px;outline:transparent 0}.queryline .fa-info-circle:hover{cursor:pointer}.ace_error{background:0 0!important}#exportHeader .fa-exclamation-circle{color:#fff;font-size:13pt;margin-right:10px}.totalDocuments:hover{color:#000}.ajax-file-upload-statusbar{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid rgba(0,0,0,.7);margin:10px 10px 5px 5px;padding:5px;width:420px}.ajax-file-upload-filename{color:grey;height:auto;margin:0 5px 5px 10px;width:100%}.ajax-file-upload-progress{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid #d9d9d9;display:inline-block;margin:0 10px 5px;padding:1px;position:relative;width:250px}.ajax-file-upload-bar{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-color:rgba(0,0,0,.7);color:#fff;height:20px;width:0}.ajax-file-upload-percent{display:inline-block;left:48%;position:absolute;top:3px}.ajax-file-upload-red{font-size:13px;font-weight:400;margin-right:5px;padding:4px 15px;vertical-align:top}.ajax-file-upload{display:inline-block;font-size:16px;font-weight:700;height:25px;margin:0 10px 10px 0;padding:6px 10px 4px}.ajax-upload-dragdrop{border:1px dotted #8f8d8c;color:#736b68;padding:10px 10px 0;text-align:left;vertical-align:middle;width:506px}.ajax-upload-dragdrop span{position:relative;top:-22px}div.demo-dropdown-menu{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;background-color:#686766;margin-bottom:5px;margin-left:5px;position:absolute;top:32px;width:222px;z-index:100}#flightQuerySelect.query-select{height:25px;margin-top:6px;font-size:13px;line-height:1.1em}#demo-mapdiv{position:relative}#demo-mapdiv-info{position:absolute;right:20px;width:225px;height:150px;bottom:20px;border:1.5px solid #222;border-radius:3px;background-color:rgba(255,255,255,.75);padding:6px 6px 3px;font-size:11px;line-height:1.3em}.amcharts-balloon-div{line-height:1.1em} \ No newline at end of file + */@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome/fontawesome-webfont.eot?v=4.3.0);src:url(../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.3.0) format('embedded-opentype'),url(../fonts/fontawesome/fontawesome-webfont.woff2?v=4.3.0) format('woff2'),url(../fonts/fontawesome/fontawesome-webfont.woff?v=4.3.0) format('woff'),url(../fonts/fontawesome/fontawesome-webfont.ttf?v=4.3.0) format('truetype'),url(../fonts/fontawesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular) format('svg');font-weight:400;font-style:normal}.fa{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0,0)}.modal-body,button{font-family:'Open Sans',sans-serif!important}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857em;text-align:center}.fa-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.fa-li.fa-lg{left:-1.8571428571em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.pull-right{float:right}.contentDiv li,.dashboard-bar-chart-container,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut,.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage,.dashboard-half-height-legend,.dashboard-large-chart,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-legend,.dashboard-medium-chart,.dashboard-medium-chart .dashboard-interior-chart,.dashboard-small-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart,.dashboard-sub-bar,.dashboard-sub-bar .dashboard-sub-bar-title,.dashboard-tendency-container,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar,.dashboard-title-bar .dashboard-half-title-bar,.dashboardModal,.fixedDropdown .notificationItem i,.fixedDropdown .notificationItemContent,.innerDropdownInnerUL,.modal-chart-detail,.modal-chart-detail .modal-body,.modal-chart-detail .modal-dashboard-legend,.modal-chart-detail .modal-inner-detail,.pagination-line li a,.pull-left,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.add-Icon,div .tile,div .tile a span.add-Icon,div.centralContent,div.dropdownInner ul,div.footer-center,div.footer-left,div.footer-left p,div.navlogo,ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.navlist li,ul.script-dropdown-menu,ul.user-dropdown-menu{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before,.fa-genderless:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-bed:before,.fa-hotel:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.arango-tab li,.dashboard-sub-bar-menu,.docsThirdCol,.fixedDropdown button,.query-button,.search-field,.show-save-state,div .bigtile div.iconSet span,div .tile div.iconSet span,div.footer-right,div.footer-right p,div.gv_colour_list,div.headerBar>div.headerButtonBar,div.navmenu,ul.headerButtonList li{float:right}#distributionChartDiv:after,.arango-tab:after,.dashboard-bar-chart-container .dashboard-bar-chart:after,.dashboard-medium-chart .dashboard-medium-chart-inner:after,.dashboard-medium-chart .dashboard-medium-chart-menu:after,.dashboard-row:after,.dashboard-sub-bar:after,.dashboard-tendency-container .dashboard-tendency-chart:after,.detail-chart:after,.document-info .document-info-container .document-inner-info-container .document-attribute:after,.lineChartDiv:after,.pagination-line li:after,div.headerBar>div.headerButtonBar:after,div.resizecontainer:after,div.tileList:after{clear:both;content:'.';display:block;font-size:0;height:0;visibility:hidden}.caret,.contentDiv:after,.contentDiv:before,.form-actions:after,.form-actions:before{content:''}.addButton,.arango-tab a,.arango-tab li,.arangoicon,.clusterDownBtn button,.contentDiv .icon,.contentTables tr.contentRowInactive a,.deleteButton,.edit-index-table .icon_arangodb_roundminus,.fixedDropdown .notificationItem i,.fullNotification:hover,.gv-search-submit-icon,.icon-info-sign,.link>line,.node,.pagination-line li a,.search-submit-icon,a.button-gui,a.headerButton,div .bigtile,div .bigtile a span.icon,div .bigtile a svg,div .bigtile div.iconSet span,div .tile a span.icon,div .tile a svg,div .tile div.iconSet span,div.demo-dropdown-menu,div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label,div.toolbox div.gv_action_button,ul.script-dropdown-menu li.dropdown-item{cursor:pointer}footer.footer,nav.navbar{background-color:rgba(245,248,240,.95);color:#fff;left:0;position:fixed;right:0;width:100%;z-index:1000}.ajax-file-upload-red,.button-danger{background-color:#da4f49}.ajax-file-upload-red:focus,.ajax-file-upload-red:hover,.button-danger:focus,.button-danger:hover{background-color:#be342e}.contentTables td span,.deleteButton,.edit-index-table .icon_arangodb_roundminus{color:#da4f49}.contentTables td span:focus,.contentTables td span:hover,.deleteButton:focus,.deleteButton:hover,.edit-index-table .icon_arangodb_roundminus:focus,.edit-index-table .icon_arangodb_roundminus:hover{color:#be342e}.ajax-file-upload,.button-success{background-color:#8aa051}.ajax-file-upload:focus,.ajax-file-upload:hover,.button-success:focus,.button-success:hover{background-color:#788f3d}.addButton,.contentTables td.dbThSecond span{color:#8aa051}.addButton:focus,.addButton:hover,.contentTables td.dbThSecond span:focus,.contentTables td.dbThSecond span:hover{color:#788f3d}.button-warning{background-color:#faa732}.button-warning:focus,.button-warning:hover{background-color:#f89406}.button-close,.button-neutral{background-color:#8f8d8c}.button-close:focus,.button-close:hover,.button-neutral:focus,.button-neutral:hover{background-color:#736b68}.dashboard-sub-bar-menu{color:#8f8d8c}.dashboard-sub-bar-menu:focus,.dashboard-sub-bar-menu:hover{color:#736b68}.button-primary{background-color:#564e4a}.button-primary:focus,.button-primary:hover{background-color:#3a322e}.button-header,a.button-gui,a.headerButton{background-color:#fff;border:1px solid #fff;color:#555}.button-header:focus,.button-header:hover,a.button-gui:focus,a.button-gui:hover,a.headerButton:focus,a.headerButton:hover{border:1px solid #8aa051;background-color:#8aa051;color:#fff}.button-notification{background-color:#faa020}.button-notification:focus,.button-notification:hover{background-color:#f87c0f}.button-inactive,.button-inactive:focus,.button-inactive:hover,[class*=' button-']:disabled,[class*=' button-']:focus:disabled,[class*=' button-']:hover:disabled,[class^=button-]:disabled,[class^=button-]:focus:disabled,[class^=button-]:hover:disabled{background-color:#d3d3d3}a.headerButton.disabled,a.headerButton.disabled:focus,a.headerButton.disabled:hover{color:#d3d3d3}ul.gv-dropdown-menu,ul.link-dropdown-menu,ul.script-dropdown-menu,ul.user-dropdown-menu{background-color:#F5F8F0;border-color:#666;border-style:solid;border-width:1px;border-radius:3px;display:none;list-style:none;margin:5px 0 0;padding:5px 0;position:absolute;right:0;top:80%;z-index:1000}a.tab,ul.script-dropdown-menu li.dropdown-item a{display:block}ul.gv-dropdown-menu li,ul.link-dropdown-menu li,ul.script-dropdown-menu li,ul.user-dropdown-menu li{line-height:23px;white-space:nowrap;width:100%}ul.gv-dropdown-menu li.dropdown-header,ul.link-dropdown-menu li.dropdown-header,ul.script-dropdown-menu li.dropdown-header,ul.user-dropdown-menu li.dropdown-header{color:#999;font-size:15px;font-weight:600;font-variant:small-caps;padding:0 15px}ul.gv-dropdown-menu li.dropdown-header:hover,ul.link-dropdown-menu li.dropdown-header:hover,ul.script-dropdown-menu li.dropdown-header:hover,ul.user-dropdown-menu li.dropdown-header:hover{cursor:default}ul.gv-dropdown-menu li.divider,ul.link-dropdown-menu li.divider,ul.script-dropdown-menu li.divider,ul.user-dropdown-menu li.divider{background-color:#666;height:1px;margin:10px 0}ul.gv-dropdown-menu a,ul.link-dropdown-menu a,ul.script-dropdown-menu a,ul.user-dropdown-menu a{color:#fff;padding:0 20px}.navbar{-webkit-font-smoothing:subpixel-antialiased}.navbar .nav li.dropdown .active>.dropdown-toggle,.navbar .nav li.dropdown .open.active>.dropdown-toggle,.navbar .nav li.dropdown .open>.dropdown-toggle{background:#788f3d}nav.navbar{padding-top:6px;height:44px;margin-bottom:3px;top:0}nav.navbar .arangodbLogo{height:auto;margin-left:-5px;margin-top:-1px;width:40%}nav.navbar .nav>.active>a{background-color:#fff;color:#000;-webkit-box-shadow:0 0 0 transparent inset;-moz-box-shadow:0 0 0 transparent inset;box-shadow:0 0 0 transparent inset}nav.navbar .nav>li>a:focus{background-color:#fff}nav.navbar .nav>li>a:hover{background-color:#000;color:#686766}ul.navlist li.dropdown-item:hover a,ul.navlist>li.active a,ul.navlist>li.active:hover a,ul.navlist>li:hover a{color:#000}div.navlogo{margin-left:5px;margin-right:-1px;padding-top:3px}ul.navlist li{margin-left:1px}ul.navlist li.navbar-spacer{background-color:#a0a0a0;height:21px;margin-top:9px;width:1px}ul.navlist li.navbar-spacer.big{margin-left:15px;margin-right:15px}ul.navlist li.navbar-spacer.med{margin-left:5px;margin-right:5px}ul.navlist li.dropdown-item,ul.script-dropdown-menu li.dropdown-item{margin-left:0}ul.navlist li.navbar-spacer:hover{background-color:#a0a0a0}ul.navlist>li.active,ul.navlist>li.active:hover{background-color:transparent}ul.navlist li.active{font-weight:700}ul.navlist li.active .tab{border-bottom:2px solid #8aa051;padding-bottom:4px}ul.navlist li.divider,ul.navlist li.navbar-spacer{border:none}ul.navlist li.divider{background-color:rgba(0,0,0,.2)}ul.navlist li{border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent}ul.navlist li.dropdown:hover{border-top:1px solid rgba(0,0,0,.2);border-left:1px solid rgba(0,0,0,.2);border-right:1px solid rgba(0,0,0,.2);border-bottom-left-radius:0;border-bottom-right-radius:0}ul.navlist li.dropdown-item:hover,ul.navlist>li:hover{background-color:#fff;border-radius:3px}ul.navlist li.dropdown-item a{display:block;border-bottom:0}ul.navlist li.dropdown-item a:hover{color:#686766;background-color:#dee9cf}a.tab{color:#686766;font-size:12pt;font-weight:100;padding:9px 10px 10px}a.tab.userImg{padding-bottom:5px}.dropdown-item a{border-bottom:0!important;font-weight:300}ul.link-dropdown-menu{background-color:#fff;z-index:-10;margin-top:7px;margin-right:-1px;border:1px solid rgba(0,0,0,.2);border-top-right-radius:0}ul.script-dropdown-menu li.dropdown-item a:hover{color:#fff}ul.script-dropdown-menu li.dropdown-item:hover{background-color:#8aa051}ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:rgba(0,0,0,.7);border:1px solid #c2c2c2;margin-right:-20px;margin-top:6px}ul.gv-dropdown-menu:after{border-bottom-color:#fff}ul.gv-dropdown-menu li:hover{background-color:#fff;background-image:none}ul.gv-dropdown-menu li a{padding:0}ul.gv-dropdown-menu li a label{color:#fff;padding-left:5px}ul.gv-dropdown-menu li a:focus{background-color:#8aa051!important;background-image:none}#arangoCollectionSelect{display:none;float:right;margin-bottom:0;margin-right:15px;padding-bottom:0}.caret{border-left:5px solid transparent;border-top:5px solid #686766;border-right:5px solid transparent;display:inline-block;height:0;vertical-align:top;width:0}.applications-menu{display:block}.arango-logo{height:34px;padding:0!important}.arango-logo img{margin-left:22px}.footer{bottom:0;font-size:14px;left:0;position:fixed;right:0;text-align:center;z-index:1000}footer.footer{bottom:0;height:40px}footer.footer p{margin-bottom:0;padding-bottom:10px;padding-top:10px;font-weight:100;font-size:10pt}div.footer-left{background:none;color:#686766;width:45%}div.footer-left .social-icons{margin-top:5px}div.footer-left .social-icons a{width:25px;display:block;height:25px;float:left}div.footer-left .social-icons p{font-size:12pt;background:#fff;border:1px solid rgba(104,103,102,.1);border-radius:20px;height:25px;width:25px;padding:0;margin-right:10px}div.footer-left .social-icons p:hover{cursor:pointer;background:#8c8a89}div.footer-left .social-icons p:hover i{color:#fff}div.footer-left .social-icons i{color:#000;position:absolute;margin-top:4px}div.footer-left .social-icons i.fa-twitter{margin-left:-7px}div.footer-left .social-icons i.fa-envelope{margin-left:-20px}div.footer-left .social-icons i.fa-google{margin-top:6px;margin-left:-18px}div.footer-left .social-icons i.fa-stack-overflow{margin-left:-18px}div.footer-center{background:none;color:#686766;width:10%}div.footer-center i{background-color:#fff;border-radius:20px;border:1px solid rgba(104,103,102,.1);width:20px;padding:6px 3px 6px 2px}div.footer-center i:hover{color:#fff;background-color:#8c8a89}div.footer-center p{padding-top:5px}div.footer-center p:hover{cursor:pointer}[class*=' button-']:disabled,[class^=button-]:disabled,a.headerButton.disabled{cursor:not-allowed}div.footer-right{background:none;color:#686766;width:45%}div.footer-right p{color:#fff}div.footer-right i{color:#da4f49;font-size:18px}div.footer-right a{color:#686766;margin-left:5px;position:relative;top:-1px}div.footer-right .isOnline{color:#8aa051!important}.ajax-file-upload,.ajax-file-upload-red,.button-close,.button-danger,.button-header,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;font-size:14px;font-weight:300!important}.ajax-file-upload,.ajax-file-upload-red,.button-close,.button-danger,.button-inactive,.button-neutral,.button-notification,.button-primary,.button-success,.button-warning{border:0;color:#fff;margin-left:10px;padding:5px 16px}.button-header{margin-top:5px}.addButton{font-size:22px;margin-right:7px;margin-top:2px;position:relative}.deleteButton{font-size:22px;padding-right:3px;position:relative;top:3px}#closeBtnInfoView{margin-left:0!important}button.large-distance{margin-left:12px}button.short-distance{margin-left:6px}ul.headerButtonList{display:inline-block;margin-bottom:0;margin-left:0;padding-left:0!important}ul.headerButtonList li{display:inline}button.shutdown{margin-top:6px;padding:3px 14px}a.button-gui,a.headerButton{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;margin-left:5px;margin-right:5px}a.headerButton{margin-top:2px;position:relative}a.headerButton .fa,a.headerButton [class*=" icon_"],a.headerButton [class^=icon_]{display:block;height:23px;line-height:23px;position:static;right:0;text-align:center;top:0;width:27px}a.headerButton .icon_arangodb_arrowleft,a.headerButton .icon_arangodb_arrowright{font-weight:700}a.headerButton.activated{background-color:#788f3d;color:#fff;border:1px solid #788f3d}a.headerButton.activated:hover{background-color:#fff;color:#788f3d}div.toolbox{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);margin-right:5px;margin-top:-3px;padding-top:5px;padding-bottom:5px;position:absolute}div.toolbox div.gv_action_button{background-color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;color:#000;height:50px;margin:5px;position:relative;text-align:center;width:50px}div.toolbox div.gv_action_button.active{background-color:#8aa051;color:#fff}div.toolbox div.gv_action_button:first-child{margin-top:0}div.toolbox div.gv_action_button:last-child{margin-bottom:0}h6.gv_button_title,h6.gv_icon_icon{left:0;margin:0;position:absolute;right:0}h6.gv_icon_icon{font-size:22px;top:6px}h6.gv_button_title{bottom:1px}button.graphViewer-icon-button{background-color:transparent;border:0;height:20px;margin-left:5px;margin-top:-2px;padding:0;width:20px}button.graphViewer-icon-button>img{height:20px;padding-bottom:10px;width:20px}button.gv_dropdown_entry{height:30px;margin:4px 4px 4px 30px;width:160px}button.gv_context_button{width:65px}.btn-icon{background-color:#383434;padding:4px}button.gv-icon-small{background-size:16px 16px;height:16px;width:16px}button.gv-icon-small.delete{background-image:url(../img/icon_delete.png)}button.gv-icon-small.add{background-image:url(../img/plus_icon.png)}button.gv-icon-btn{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;background-size:36px 36px;height:36px;width:36px}button.gv-icon-btn.active{background-color:#8aa051}button.btn-zoom:hover{background:inherit}button.btn-zoom{background:0 0;height:16px;margin:0;padding:0;position:absolute;width:16px}button.btn-zoom-top{border:0;box-shadow:none;left:13px;top:1}button.btn-zoom-left{border:0;box-shadow:none;left:0;top:13px}button.btn-zoom-bottom{border:0;box-shadow:none;left:13px;top:25px}button.btn-zoom-right{border:0;box-shadow:none;right:0;top:13px}button.gv-zoom-btn{background-size:14px 14px;height:14px;vertical-align:baseline;width:14px}button.gv-zoom-btn.pan-right{background-image:url(../img/gv_arrow_right.png)}button.gv-zoom-btn.pan-left{background-image:url(../img/gv_arrow_left.png)}button.gv-zoom-btn.pan-top{background-image:url(../img/gv_arrow_top.png)}button.gv-zoom-btn.pan-bottom{background-image:url(../img/gv_arrow_bottom.png)}a.pagination-button,ul.arango-pagination a{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.badge,.btn,.label{text-shadow:none!important}.navbar-inner,.thumbnail{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0}.modal-body th.actionCell>button{margin-top:-12px}.btn-old-padding{padding-bottom:4px!important;padding-top:4px!important}button.btn-overview,button.btn-server{margin:5px}button.btn-server{width:120px}a.button-gui{height:auto;margin-bottom:0;margin-top:0;padding-top:1px;padding-bottom:1px;position:absolute;right:2px;text-decoration:none!important;top:2px;width:auto}a.button-gui.button-gui-disabled{display:none}.clusterDownBtn{padding-bottom:10px;padding-top:10px;text-align:center}.clusterDownBtn button{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#f1f1f1;border:1px solid rgba(0,0,0,.1875);color:#333;font-size:20px;font-weight:300;margin:0;padding:12px 18px;text-align:center;text-decoration:none!important;width:250px}.clusterDownBtn button:hover{background-color:#e8e8e8;color:#4a6c30;-webkit-transition-delay:0;-webkit-transition-duration:.2s;-webkit-transition-property:all;-webkit-transition-timing-function:ease-in}.clusterDownBtn button.green{background-color:#617e2b;color:#fff}.clusterDownBtn button.green:hover{background-color:#8ba142}.bottomButtonBar{border-top:1px solid rgba(104,103,102,.1);background-color:#fff;height:30px;padding:10px}div.tileList{margin-left:-6px;margin-right:-6px}div.tileList legend{padding-left:5px}div .bigtile,div .tile{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background-color:#fff;border-radius:3px;border:1px solid #F5F8F0;font-size:14px;margin-bottom:13px;margin-left:6px;margin-right:6px;position:relative;text-align:center}div .bigtile .warning-icons,div .tile .warning-icons{background-color:#da4f49;color:#fff;font-size:11px;height:17px;left:0;line-height:13px;padding-left:9px;padding-right:4px;position:absolute;top:0}div .bigtile a svg.icon,div .bigtile img.icon,div .tile a svg.icon,div .tile img.icon{height:50px;width:50px}div .bigtile .warning-icons:before,div .tile .warning-icons:before{border-right:17px solid transparent;border-top:17px solid #da4f49;content:'';position:absolute;right:-17px}div .bigtile .warning-icons .fa+.fa,div .tile .warning-icons .fa+.fa{margin-left:1px}div .bigtile .warning-icons .fa:before,div .tile .warning-icons .fa:before{font-size:8px}div .bigtile .collection-type-icon,div .tile .collection-type-icon{color:#666;font-size:30pt;margin-top:12pt}div .bigtile .collection-type-icon:hover,div .tile .collection-type-icon:hover{cursor:pointer}div .bigtile a span.add-Icon,div .tile a span.add-Icon{font-size:22px;margin-left:22px;margin-right:10px;margin-top:-5px;position:relative;right:4px;top:2px}div .bigtile a span.icon,div .tile a span.icon{font-size:50px}div .bigtile svg.tile-icon-svg,div .tile svg.tile-icon-svg{cursor:pointer;fill:#686766;height:50px;margin-left:90px;margin-top:10px;width:50px}div .bigtile span.tile-icon,div .tile span.tile-icon{color:#686766;font-size:50px;line-height:1.2}div .bigtile span.icon_arangodb_edge5-2,div .tile span.icon_arangodb_edge5-2{position:relative;top:15px;-webkit-transform:rotate(80deg);-moz-transform:rotate(80deg);-o-transform:rotate(80deg);display:inline-block}div .bigtile h5,div .tile h5{background:#8c8a89;color:#fff;font-size:12px;margin:0;overflow:hidden!important;padding:4px 8px;text-overflow:ellipsis!important;white-space:nowrap!important}div .bigtile div.tileSelects,div .tile div.tileSelects{margin-left:40px;position:relative;z-index:9999}div .bigtile div.tileSelects select,div .tile div.tileSelects select{float:right;height:20px;margin-right:5px;margin-top:16px;width:70px}div .bigtile div.fullBorderBox,div .tile div.fullBorderBox{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:100%;position:absolute;width:100%}div .bigtile div.borderBox,div .tile div.borderBox{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:75px;position:absolute;width:224px}div .bigtile div.iconSet,div .tile div.iconSet{position:absolute;right:5px;top:5px}div .bigtile div.iconSet span,div .tile div.iconSet span{border-radius:3px;color:#000;font-size:18px;padding:2px 3px}div .bigtile div.iconSet span:hover,div .tile div.iconSet span:hover{background-color:#8aa051;color:#fff}div .bigtile div.iconSet span.disabled,div .tile div.iconSet span.disabled{cursor:default;opacity:.2}div .bigtile div.iconSet span.disabled:hover,div .tile div.iconSet span.disabled:hover{background-color:#fff;color:#000;cursor:default;opacity:.2}div .bigtile .badge-success,div .tile .badge-success{font-weight:300}div .bigtile .unloaded div,div .tile .unloaded div{border-bottom:16px solid #ff8f35}div .bigtile .deleted div,div .tile .deleted div{border-bottom:16px solid #700}div .bigtile div.tileBadge,div .tile div.tileBadge{bottom:29px;font-size:11px;font-weight:300;position:absolute;right:0}div .bigtile div.tileBadge button,div .tile div.tileBadge button{margin-left:0;margin-right:5px}div .bigtile div.tileBadge span,div .tile div.tileBadge span{display:inline-block;line-height:15px}div .bigtile div.tileBadge span div.corneredBadge,div .tile div.tileBadge span div.corneredBadge{border-left:5px solid transparent;border-bottom-style:solid;border-bottom-width:17px;border-radius:3px;margin-bottom:4px;margin-right:5px;color:#fff;height:0;padding-left:1px;padding-right:6px}div .bigtile div.tileBadge span div.corneredBadge.loading,div .tile div.tileBadge span div.corneredBadge.loading{border-bottom-color:#ff8f35}div .bigtile div.tileBadge span div.corneredBadge.loaded,div .tile div.tileBadge span div.corneredBadge.loaded{border-bottom-color:#8aa051}div .bigtile div.tileBadge span div.corneredBadge.development,div .bigtile div.tileBadge span div.corneredBadge.unloaded,div .tile div.tileBadge span div.corneredBadge.development,div .tile div.tileBadge span div.corneredBadge.unloaded{border-bottom-color:#ff8f35}div .tile{height:100px;width:226px}div .tile-graph .tile-icon:hover{cursor:pointer}div .bigtile{height:309px;width:452px}div .bigtile div.shardContainer{font-size:30px}div .bigtile div.shardContainer span{padding:2px}.collectionName{bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px;font-weight:300;left:0;position:absolute;right:0;text-align:left}div.resizecontainer{margin:0 auto}@media (max-width:798px){#arangoCollectionUl{display:none}#collectionsDropdown ul{width:auto!important}#arangoCollectionSelect{display:inline-block}}@media (min-width:799px) and (max-width:1041px){#arangoCollectionUl a{font-size:12px;padding:10px 5px}}@media (min-width:1042px) and (max-width:1284px){#arangoCollectionUl a{font-size:14px}}@media (min-width:250px) and (max-width:489px){div.resizecontainer{width:228px}.dashboard-large-chart{width:146px}.dashboard-large-chart .dashboard-sub-bar{width:134px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:136px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:106px;float:left}.dashboard-medium-chart{width:96px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:95px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:96px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:79px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:66px}.dashboard-small-chart .dashboard-sub-bar{width:54px}.dashboard-small-chart .dashboard-small-chart-inner{width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:56px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:54px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:56px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:40px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-114px;width:228px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:208px}.modal-body .dashboard-large-chart{width:143px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:131px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:133px}.modal-body .dashboard-medium-chart-outer{width:91px;float:left}.modal-body .dashboard-medium-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:89px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:91px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:74px}.modal-body .dashboard-small-chart{width:61px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:49px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:51px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:6.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:51px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:56px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:28px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:10.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:40px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:54px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:228px}.application-detail-view aside.meta{display:none}}@media (min-width:490px) and (max-width:729px){div.resizecontainer{width:468px}.dashboard-large-chart{width:306px}.dashboard-large-chart .dashboard-sub-bar{width:294px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:296px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:226px;float:left}.dashboard-medium-chart{width:216px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:215px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:216px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:199px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:146px}.dashboard-small-chart .dashboard-sub-bar{width:134px}.dashboard-small-chart .dashboard-small-chart-inner{width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:136px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:48px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:134px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:136px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:120px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-234px;width:468px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:448px}.modal-body .dashboard-large-chart{width:303px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:291px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:293px}.modal-body .dashboard-medium-chart-outer{width:211px;float:left}.modal-body .dashboard-medium-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:211px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:194px}.modal-body .dashboard-small-chart{width:141px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:129px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:131px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:46.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:131px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:136px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:84px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:34.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:120px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:134px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:468px}.application-detail-view aside.meta{display:none}}@media (min-width:730px) and (max-width:969px){div.resizecontainer{width:708px}.dashboard-large-chart{width:466px}.dashboard-large-chart .dashboard-sub-bar{width:454px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:185px;width:456px}.dashboard-sub-bar-menu{font-size:12px}.dashboard-medium-chart-outer{width:346px;float:left}.dashboard-medium-chart{width:336px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:335px}.dashboard-medium-chart #clusterGraphs svg,.dashboard-medium-chart .dashboard-interior-chart{height:185px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:12px;left:319px;top:0}.dashboard-medium-chart #clusterGraphs svg text{font-size:10px}.dashboard-small-chart{width:226px}.dashboard-small-chart .dashboard-sub-bar{width:214px}.dashboard-small-chart .dashboard-small-chart-inner{width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:197px;width:216px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:10px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:78.25px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:88px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:25.08px;line-height:25.08px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:40.17px;line-height:19.08px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:214px}.dashboard-bar-chart-container{height:79.75px}.dashboard-bar-chart-container .dashboard-bar-chart{height:77.75px;width:216px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:25.25px;line-height:25.25px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:33.5px;line-height:33.5px;padding:5px 8px 10px;width:200px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:38.5px}.dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-354px;width:708px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{display:none;font-size:12px;min-height:190px;width:10px}.absolut,.percentage{font-size:14px}.modal-chart-detail .modal-inner-detail{width:688px}.modal-body .dashboard-large-chart{width:463px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:451px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:453px}.modal-body .dashboard-medium-chart-outer{width:331px;float:left}.modal-body .dashboard-medium-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:329px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:314px}.modal-body .dashboard-small-chart{width:221px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:209px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:211px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:86.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:211px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:216px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:140px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:58.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:200px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:214px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:10px;font-weight:400}.dashboard-subtitle-bar{font-size:14px;font-weight:300}.dashboard-figure{font-size:16px;font-weight:400}.dashboard-figurePer{font-size:14px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:10px}.dashboard-legend{display:none;height:190px;margin-top:-3px;width:0}.dashboard-half-height-legend{display:none;font-size:10px;height:100px;width:0}.application-detail-view section.info{width:508px}}@media (min-width:970px) and (max-width:1209px){div.resizecontainer{width:948px}.dashboard-large-chart{width:626px}.dashboard-large-chart .dashboard-sub-bar{width:614px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:220px;width:496px}.dashboard-sub-bar-menu{font-size:13px}.dashboard-medium-chart-outer{width:466px;float:left}.dashboard-medium-chart{width:456px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:455px}.dashboard-medium-chart .dashboard-interior-chart{height:220px;width:336px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:13px;left:438px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:220px;width:456px}.dashboard-medium-chart #clusterGraphs svg text{font-size:11px}.dashboard-small-chart{width:306px}.dashboard-small-chart .dashboard-sub-bar{width:294px}.dashboard-small-chart .dashboard-small-chart-inner{width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:229px;width:296px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:11px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:96.5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:128px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:31.17px;line-height:31.17px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:52.33px;line-height:25.17px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:294px}.dashboard-bar-chart-container{height:98px}.dashboard-bar-chart-container .dashboard-bar-chart{height:96px;width:296px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:31.33px;line-height:31.33px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:45.67px;line-height:45.67px;padding:5px 8px 10px;width:280px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:50.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-474px;width:948px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:13px;min-height:225px;width:130px}.absolut,.percentage{font-size:15px}.modal-chart-detail .modal-inner-detail{width:808px}.modal-body .dashboard-large-chart{width:623px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:611px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:493px}.modal-body .dashboard-medium-chart-outer{width:451px;float:left}.modal-body .dashboard-medium-chart{width:451px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:331px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:433px}.modal-body .dashboard-small-chart{width:301px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:289px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:291px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:126.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:291px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:296px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:196px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:82.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:280px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:294px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:11px;font-weight:400}.dashboard-subtitle-bar{font-size:15px;font-weight:300}.dashboard-figure{font-size:18px;font-weight:400}.dashboard-figurePer{font-size:16px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:11px}.dashboard-legend{height:225px;margin-top:-3px;width:120px}.dashboard-half-height-legend{font-size:11px;height:117.5px;width:60px}.application-detail-view section.info{width:748px}}@media (min-width:1210px) and (max-width:1449px){div.resizecontainer{width:1188px}.dashboard-large-chart{width:786px}.dashboard-large-chart .dashboard-sub-bar{width:774px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:255px;width:646px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:586px;float:left}.dashboard-medium-chart{width:576px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:575px}.dashboard-medium-chart .dashboard-interior-chart{height:255px;width:446px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:16px;left:555px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:255px;width:576px}.dashboard-medium-chart #clusterGraphs svg text{font-size:12px}.dashboard-small-chart{width:386px}.dashboard-small-chart .dashboard-sub-bar{width:374px}.dashboard-small-chart .dashboard-small-chart-inner{width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:264px;width:376px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:114px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:168px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:37px;line-height:37px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:64px;line-height:31px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:374px}.dashboard-bar-chart-container{height:115.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:113.5px;width:376px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:37.17px;line-height:37.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:57.33px;line-height:57.33px;padding:5px 8px 10px;width:360px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:62.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-594px;width:1188px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:14px;min-height:260px;width:140px}.absolut,.percentage{font-size:18px}.modal-chart-detail .modal-inner-detail{width:1038px}.modal-body .dashboard-large-chart{width:783px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:771px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:643px}.modal-body .dashboard-medium-chart-outer{width:571px;float:left}.modal-body .dashboard-medium-chart{width:571px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:569px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:441px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:550px}.modal-body .dashboard-small-chart{width:381px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:369px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:371px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:166.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:371px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:376px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:252px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:106.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:360px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:374px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:18px;font-weight:300}.dashboard-figure{font-size:22px;font-weight:400}.dashboard-figurePer{font-size:20px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:13px;font-weight:400}.dashboard-legend{font-size:12px;font-weight:400;height:260px;margin-top:-3px;width:130px}.dashboard-half-height-legend{font-size:12px;height:135px;width:65px}.application-detail-view section.info{width:988px}}@media (min-width:1450px) and (max-width:1689px){div.resizecontainer{width:1428px}.dashboard-large-chart{width:946px}.dashboard-large-chart .dashboard-sub-bar{width:934px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:796px}.dashboard-sub-bar-menu{font-size:15px}.dashboard-medium-chart-outer{width:706px;float:left}.dashboard-medium-chart{width:696px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:695px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:556px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:18px;left:673px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:696px}.dashboard-medium-chart #clusterGraphs svg text{font-size:13px}.dashboard-small-chart{width:466px}.dashboard-small-chart .dashboard-sub-bar{width:454px}.dashboard-small-chart .dashboard-small-chart-inner{width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:456px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:13px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:208px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:454px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:456px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:440px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-714px;width:1428px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:15px;min-height:290px;width:150px}.absolut,.percentage{font-size:20px}.modal-chart-detail .modal-inner-detail{width:1268px}.modal-body .dashboard-large-chart{width:943px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:931px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:793px}.modal-body .dashboard-medium-chart-outer{width:691px;float:left}.modal-body .dashboard-medium-chart{width:691px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:551px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:668px}.modal-body .dashboard-small-chart{width:461px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:449px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:451px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:206.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:451px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:456px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:308px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:130.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:440px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:454px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:13px;font-weight:400}.dashboard-subtitle-bar{font-size:20px;font-weight:300}.dashboard-figure{font-size:26px;font-weight:400}.dashboard-figurePer{font-size:24px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:13px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:13px;height:150px;width:70px}.application-detail-view section.info{width:1228px}}@media (min-width:1690px) and (max-width:1929px){div.resizecontainer{width:1668px}.dashboard-large-chart{width:1106px}.dashboard-large-chart .dashboard-sub-bar{width:1094px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:325px;width:936px}.dashboard-sub-bar-menu{font-size:16px}.dashboard-medium-chart-outer{width:826px;float:left}.dashboard-medium-chart{width:816px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:815px}.dashboard-medium-chart .dashboard-interior-chart{height:325px;width:656px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:22px;left:789px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:325px;width:816px}.dashboard-medium-chart #clusterGraphs svg text{font-size:14px}.dashboard-small-chart{width:546px}.dashboard-small-chart .dashboard-sub-bar{width:534px}.dashboard-small-chart .dashboard-small-chart-inner{width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:334px;width:536px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:149px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:248px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:48.67px;line-height:48.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:87.33px;line-height:42.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:534px}.dashboard-bar-chart-container{height:150.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:148.5px;width:536px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:48.83px;line-height:48.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:80.67px;line-height:80.67px;padding:5px 8px 10px;width:520px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:85.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-834px;width:1668px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:16px;min-height:330px;width:170px}.absolut,.percentage{font-size:24px}.modal-chart-detail .modal-inner-detail{width:1488px}.modal-body .dashboard-large-chart{width:1103px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1091px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:933px}.modal-body .dashboard-medium-chart-outer{width:811px;float:left}.modal-body .dashboard-medium-chart{width:811px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:809px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:651px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:784px}.modal-body .dashboard-small-chart{width:541px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:529px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:531px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:246.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:531px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:536px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:364px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:154.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:520px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:534px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:14px;font-weight:400}.dashboard-subtitle-bar{font-size:24px;font-weight:300}.dashboard-figure{font-size:30px;font-weight:400}.dashboard-figurePer{font-size:28px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:14px}.dashboard-legend{height:330px;margin-top:-3px;width:160px}.dashboard-half-height-legend{font-size:14px;height:170px;width:80px}.application-detail-view section.info{width:1468px}}@media (min-width:1930px) and (max-width:2169px){div.resizecontainer{width:1908px}.dashboard-large-chart{width:1266px}.dashboard-large-chart .dashboard-sub-bar{width:1254px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:385px;width:1086px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:946px;float:left}.dashboard-medium-chart{width:936px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:935px}.dashboard-medium-chart .dashboard-interior-chart{height:385px;width:766px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:26px;left:905px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:385px;width:936px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:626px}.dashboard-small-chart .dashboard-sub-bar{width:614px}.dashboard-small-chart .dashboard-small-chart-inner{width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:394px;width:616px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:14px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:179px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:288px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:58.67px;line-height:58.67px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:107.33px;line-height:52.67px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:614px}.dashboard-bar-chart-container{height:180.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:178.5px;width:616px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:58.83px;line-height:58.83px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:100.67px;line-height:100.67px;padding:5px 8px 10px;width:600px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:105.67px}.dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-954px;width:1908px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:390px;width:180px}.absolut,.percentage{font-size:28px}.modal-chart-detail .modal-inner-detail{width:1718px}.modal-body .dashboard-large-chart{width:1263px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1251px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1083px}.modal-body .dashboard-medium-chart-outer{width:931px;float:left}.modal-body .dashboard-medium-chart{width:931px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:929px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:761px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:900px}.modal-body .dashboard-small-chart{width:621px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:609px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:611px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:286.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:611px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:616px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:420px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:178.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:600px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:614px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:28px;font-weight:300}.dashboard-figure{font-size:34px;font-weight:400}.dashboard-figurePer{font-size:32px;font-weight:300}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-size:14px;font-weight:400}.dashboard-legend{font-size:15px;font-weight:400;height:390px;margin-top:-3px;width:170px}.dashboard-half-height-legend{font-size:15px;height:200px;width:85px}.application-detail-view section.info{width:1708px}}@media (min-width:2170px) and (max-width:2409px){div.resizecontainer{width:2148px}.dashboard-large-chart{width:1426px}.dashboard-large-chart .dashboard-sub-bar{width:1414px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1276px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1066px;float:left}.dashboard-medium-chart{width:1056px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1055px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:916px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1031px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1056px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:706px}.dashboard-small-chart .dashboard-sub-bar{width:694px}.dashboard-small-chart .dashboard-small-chart-inner{width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:696px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:328px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:694px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:696px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:680px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1074px;width:2148px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:1988px}.modal-body .dashboard-large-chart{width:1423px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1411px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1273px}.modal-body .dashboard-medium-chart-outer{width:1051px;float:left}.modal-body .dashboard-medium-chart{width:1051px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1049px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:911px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1026px}.modal-body .dashboard-small-chart{width:701px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:689px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:691px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:326.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:691px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:696px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:476px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:202.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:680px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:694px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:1948px}}@media (min-width:2410px) and (max-width:2649px){div.resizecontainer{width:2388px}.dashboard-large-chart{width:1586px}.dashboard-large-chart .dashboard-sub-bar{width:1574px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1436px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1186px;float:left}.dashboard-medium-chart{width:1176px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1175px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1036px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1151px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1176px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:786px}.dashboard-small-chart .dashboard-sub-bar{width:774px}.dashboard-small-chart .dashboard-small-chart-inner{width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:776px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:368px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:774px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:776px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:760px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1194px;width:2388px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2228px}.modal-body .dashboard-large-chart{width:1583px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1571px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1433px}.modal-body .dashboard-medium-chart-outer{width:1171px;float:left}.modal-body .dashboard-medium-chart{width:1171px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1169px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1031px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1146px}.modal-body .dashboard-small-chart{width:781px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:769px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:771px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:366.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:771px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:776px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:532px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:226.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:760px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:774px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2188px}}@media (min-width:2650px) and (max-width:2889px){div.resizecontainer{width:2628px}.dashboard-large-chart{width:1746px}.dashboard-large-chart .dashboard-sub-bar{width:1734px}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{height:285px;width:1596px}.dashboard-sub-bar-menu{font-size:17px}.dashboard-medium-chart-outer{width:1306px;float:left}.dashboard-medium-chart{width:1296px}.dashboard-medium-chart .dashboard-sub-bar{margin-left:-5px;width:1295px}.dashboard-medium-chart .dashboard-interior-chart{height:285px;width:1156px}.dashboard-medium-chart .dashboard-medium-chart-menu{font-size:20px;left:1271px;top:0}.dashboard-medium-chart #clusterGraphs svg{height:285px;width:1296px}.dashboard-medium-chart #clusterGraphs svg text{font-size:15px}.dashboard-small-chart{width:866px}.dashboard-small-chart .dashboard-sub-bar{width:854px}.dashboard-small-chart .dashboard-small-chart-inner{width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{height:294px;width:856px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-axis text{fill:#666;font-size:15px;font-weight:400}.dashboard-tendency-container .dashboard-tendency-chart{height:129px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:408px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar{height:42px;line-height:42px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure{height:74px;line-height:36px;padding-top:5px}.dashboard-tendency-container .dashboard-sub-bar{width:854px}.dashboard-bar-chart-container{height:130.5px}.dashboard-bar-chart-container .dashboard-bar-chart{height:128.5px;width:856px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{height:42.17px;line-height:42.17px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart{height:67.33px;line-height:67.33px;padding:5px 8px 10px;width:840px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart #residentSizeChart{height:72.33px}.dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.modal-chart-detail{bottom:12.1%!important;left:50%;margin-left:-1314px;width:2628px}.modal-chart-detail .modal-body{height:95%;max-height:none;padding:5px}.modal-chart-detail .modal-dashboard-legend{font-size:17px;min-height:290px;width:150px}.absolut,.percentage{font-size:22px}.modal-chart-detail .modal-inner-detail{width:2468px}.modal-body .dashboard-large-chart{width:1743px}.modal-body .dashboard-large-chart .dashboard-sub-bar{width:1731px}.modal-body .dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart{width:1593px}.modal-body .dashboard-medium-chart-outer{width:1291px;float:left}.modal-body .dashboard-medium-chart{width:1291px}.modal-body .dashboard-medium-chart .dashboard-sub-bar{width:1289px}.modal-body .dashboard-medium-chart .dashboard-interior-chart{width:1151px}.modal-body .dashboard-medium-chart .dashboard-medium-chart-menu{left:1266px}.modal-body .dashboard-small-chart{width:861px}.modal-body .dashboard-small-chart .dashboard-sub-bar{width:849px}.modal-body .dashboard-small-chart .dashboard-small-chart-inner,.modal-body .dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart{width:851px}.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-figure,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-subtitle-bar,.modal-body .dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{width:406.5px}.modal-body .dashboard-tendency-container .dashboard-sub-bar{width:851px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart{width:856px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{width:588px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{width:250.8px}.modal-body .dashboard-bar-chart-container .dashboard-bar-chart-chart{width:840px}.modal-body .dashboard-bar-chart-container .dashboard-sub-bar{width:854px}.absolut{font-weight:300}.dashboard-sub-bar{font-size:15px;font-weight:400}.dashboard-subtitle-bar{font-size:22px;font-weight:300}.dashboard-figure{font-size:36px;font-weight:400}.dashboard-figurePer{font-size:34px;font-weight:300}.dashboard-legend,.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{font-weight:400;font-size:15px}.dashboard-legend{height:290px;margin-top:-3px;width:140px}.dashboard-half-height-legend{font-size:15px;height:150px;width:70px}.application-detail-view section.info{width:2428px}}div.centralRow{margin-top:40px;margin-bottom:40px}div.centralContent{background-color:transparent;height:100%;margin-left:-5px;margin-right:-5px;min-height:80px;padding:5px;width:100%}.contentDiv{padding:13px 0 0}.contentDiv li{background-color:rgba(0,0,0,.05)}.contentDiv a.add{display:block;font-weight:400;padding:40px 0;text-align:left}.modal-body th .valueCell,.modal-body th th.actionCell,.modal-body th th.keyCell,.waitModal{text-align:center}.contentDiv .icon{padding-left:5px;padding-right:5px;padding-top:10px}.contentDiv:after{clear:both}.contentDiv:after,.contentDiv:before{display:table;line-height:0}.clusterInfoIcon{float:left;padding-left:5px;padding-top:2px}.waitModal.icon{font-size:100px;height:120px}.waitModal.message{font-size:20px}.icon_arangodb_info{color:#333;font-size:23px}li a [class*=" icon_arangodb"],li a [class^=icon_arangodb]{font-size:18px;position:absolute;right:4px;top:2px}.fa-minus-circle{color:#da4f49;font-size:14pt}.fa-minus-circle:hover{cursor:pointer}div.headerDropdown{background-color:#fff;border:1px solid rgba(104,103,102,.1);border-radius:3px;display:none;padding:10px;position:relative;width:auto}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox{display:none}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerDropdown.headerDropdown input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.dropdown-title{margin-bottom:10px}div.dropdownInner{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;min-height:125px;position:relative;width:auto}div.dropdownInner>.nav-header{color:#000;font-size:13px;font-weight:400}div.dropdownInner>label{color:#000;font-weight:300}div.dropdownInner ul{border-left:1px solid #c2c2c2;display:inline;margin-top:10px;min-height:105px;width:238px}div.dropdownInner ul:first-of-type{border:0}div.dropdownInner ul label{color:#000;padding-left:35px}div.dropdownInner ul li .fa{margin-right:5px;color:#8c8a89}div.dropdownInner ul li .fa.fa-check-circle-o,div.dropdownInner ul li .fa.fa-dot-circle-o{color:#8aa051}div.queryline{color:#000;height:35px}div.queryline .textDiv{margin-right:10px;margin-top:4px}div.queryline input,div.queryline select{margin-bottom:5px}div.queryline.querylineAdd span{color:#fff;padding-left:10px;position:relative;top:-21px}div.queryline .removeFilterItem i{margin-left:5px!important;margin-top:0!important}div.queryline div.searchByAttribute{margin-left:6px;margin-right:6px;position:relative}div.queryline div.searchByAttribute>ul.gv-dropdown-menu{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background-color:#fff;color:#fff;display:none;left:0;position:absolute;top:20px;width:247px}div.dropdownImport{background-color:#fff;border-radius:3px;display:none;position:relative;padding:10px 10px 5px}div.dropdownImport input{line-height:0;margin-bottom:-15px;margin-top:5px}select.filterSelect{margin-left:10px;margin-right:10px;width:100px}#filterHeader button{float:right;margin-left:10px!important;margin-top:1px}div.input-append button.gv_example_toggle{-moz-border-radius:0 4px 4px 0;-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0;background-color:#8f8d8c;height:30px;margin-left:-1px;padding-left:10px;padding-right:10px;padding-top:12px;vertical-align:top}div.input-append button.gv_example_toggle:hover{background-color:#8aa051}.searchEqualsLabel{margin-left:6px;margin-right:6px}img.gv-throbber{background-image:url(../img/swagger/throbber.gif)}span.gv_caret{margin-top:2px!important}input.search-input{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:14px;line-height:18px;margin-top:6px;margin-right:-1px;width:120px;outline:transparent 0}input.search-input:focus{border-color:#999;box-shadow:none;outline:transparent 0}.search-field{margin-left:10px}.search-field .fa-search{color:#D2D2D2;font-size:13pt;opacity:.5;position:absolute;right:7px;top:9px}.search-field .fa-search:hover{opacity:1;cursor:pointer}.gv-search-submit-icon,.search-submit-icon{background-image:url(../img/enter_icon.png);background-size:14px;height:14px;margin-left:-18px;opacity:.2;position:absolute;width:14px}.gv-search-submit-icon:hover,.search-submit-icon:hover{opacity:.8}.search-submit-icon{margin-top:11px}.gv-search-submit-icon{margin-top:6px}div.headerBar{background-color:#fff;border-radius:3px;border:1px solid rgba(140,138,137,.25);color:#fff;font-size:16px;height:36px;margin-top:15px;margin-bottom:5px;padding-left:5px;padding-right:5px;position:relative}div.headerBar .infoField{background-color:#f5f8f0;border:1px solid #d3d3d3;border-radius:3px!important;color:#000;float:right;font-size:12px;margin-top:7px;margin-right:7px;padding-left:5px;padding-right:5px}div.headerBar .infoField .fa{cursor:pointer;margin-left:5px}div.headerBar input[type=checkbox].css-checkbox{display:none}div.headerBar input[type=checkbox].css-checkbox+label.css-label{background-position:0 0;background-repeat:no-repeat;cursor:pointer;display:inline-block;font-size:15px;height:15px;margin-top:0;padding-left:20px;vertical-align:middle}div.headerBar input[type=checkbox].css-checkbox:checked+label.css-label{background-position:0 -15px}div.headerBar input[type=radio]{display:none}div.headerBar input[type=radio]+label span{background:url(../img/check_radio_sheet.png) -38px top no-repeat;cursor:pointer;display:inline-block;height:19px;margin:-1px 4px 0 0;vertical-align:middle;width:19px}#transparentHeader input[type=checkbox].css-checkbox,.contentTables tr.contentRowActive span,.display-none,.modal-delete-confirmation,.query-div,.query-output .ace_cursor-layer,.query-output .ace_replace_form{display:none}div.headerBar input[type=radio]:checked+label span{background:url(../img/check_radio_sheet.png) -57px top no-repeat}div.headerBar a.arangoHeader{color:#000;font-size:13pt;font-weight:100;left:0;position:relative;top:7px}div.headerBar>div.headerButtonBar{margin:4px 0;margin-bottom:0!important}.breadcrumb{background:0 0;border:0;border-radius:0;padding:7px 0}.breadcrumb .disabledBread{font-size:13pt;font-weight:100;color:#666;float:left;padding-right:5px;position:relative}.breadcrumb .disabledBread i{font-size:10pt;margin-left:10px}.breadcrumb .activeBread{font-size:13pt;font-weight:100;color:#7da817;float:left}.arangoHeader{font-weight:400}.checkboxLabel{margin-top:4px;padding-left:0}.css-label{background-image:url(../img/dark-check-green.png)}.css-label-round{background-image:url(../img/dark-check-green-round.png)}.modal-dashboard-header,.modal-header{background-color:#fff;border-radius:3px;border-bottom:0!important;margin-top:5px;padding-left:5px;padding-right:10px;padding-top:4px}.modal-dashboard-header .arangoHeader,.modal-header .arangoHeader{color:#000;font-size:13pt;font-weight:100;left:5px;position:relative;top:2px}.modal-dashboard-header a,.modal-header a{top:2px!important}.modal-dashboard-header .close,.modal-header .close{color:#fff;font-weight:300;margin-top:2px;opacity:.5}.modal-dashboard-header .close:hover,.modal-header .close:hover{opacity:1}.modal-body{color:#736b68;font-size:14px;font-weight:300}.dygraph-label.dygraph-title,.editor-label h6{font-family:'Open Sans',sans-serif}.modal-body .select2-choices{border-radius:3px;border:1px solid #aaa;box-shadow:none;-webkit-box-shadow:none;background-image:none!important}.modal-body .select2-choices input{box-shadow:none;-webkit-box-shadow:none;outline:transparent!important}.modal-body .select2-choices input:active{box-shadow:none;-webkit-box-shadow:none;outline:0!important}.modal-body .select2-choices .select2-search-choice{margin:5px 0 3px 5px!important}.modal-body .select2-choices li{color:#000;background-color:#fff!important;background-image:none!important}.modal-body .select2-choices li a{margin-top:-1px;margin-left:1px}.modal-body .select2-choices:active{outline:transparent!important;border:1px solid #aaa;box-shadow:none!important;-webkit-box-shadow:none!important}.modal-body .nav-tabs{margin-top:15px}.modal-body input,.modal-body select,.modal-body textarea{margin-top:10px;border-radius:3px;box-shadow:none}.modal-body input[type=checkbox]{margin-bottom:10px}.modal-body input[type=text].invalid-input{border-color:rgba(234,23,23,.6)}.modal-body input[type=text].invalid-input:focus{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(234,23,23,.6)}.modal-body input[type=file]{line-height:17px}.modal-body th.actionCell{width:30px}.modal-body th.keyCell{width:170px}.modal-body th.keyCell input{width:150px}.modal-body th .valueCell{width:300px}.modal-body th .valueCell input{width:290px}.modal-body th div.select2-container{margin-bottom:10px;margin-top:10px}.modal-body .icon-info-sign{margin-bottom:10px;margin-left:10px;opacity:.7;padding-bottom:5px}.modal-body .icon-info-sign:hover{opacity:1}.modal-body .icon_arangodb_info{color:#736b68;font-size:18px;margin-top:-10px;position:absolute;right:12px}.modal-body .icon_arangodb_info:hover{color:#000}.modal-body .collapse{margin-right:-14px;position:relative}.modal-body .accordion-inner{border-top:0;margin-left:0;padding-left:0;padding-right:0}.modal-body .accordion-toggle span b.caret{border-top-color:#000;float:right;margin-top:5px}.modal-body .accordion-toggle.collapsed span b.caret{-ms-transform:rotate(90deg);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.modal-body input{width:384px}.modal-body select{width:398px}.modal-body .collectionTh{height:55px}.modal-body .tab-content{min-height:200px}.modal-body .tab-content .tab-pane{border-top:1px solid #666!important;margin-left:0!important;padding-top:10px}.modal-body .tab-content #appstore{max-height:290px}.modal-body .errorMessage{background-color:#fff;color:red;font-size:9pt;font-weight:400;margin-bottom:5px;margin-top:-9px;position:absolute}.modal-body .nav img.tab-icon{margin-right:5px;margin-top:-3px;width:20px}.modal-text{font-weight:300;padding-bottom:3px;padding-top:3px}.modal-backdrop,.modal-backdrop.fade.in{opacity:.4}.modal{box-shadow:none;border:0!important;border-radius:3px!important}.modal .fade.in{top:12.1%!important}.modal table tr:last-child{border-bottom:0!important}.waitModal{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background:0 0;border:0;color:#fff}.waitModalBackdrop{opacity:.7!important}.modalTooltips span{color:#736b68;font-size:20px}.fixedDropdown .notificationItem,.modalTooltips span:hover{color:#000}pre.gv-object-view{text-align:left;white-space:pre}.capitalize{text-transform:capitalize}.modal-footer{border-top:0!important;padding-right:17px}.modal-header{margin-left:5px;margin-right:5px}.modal-dashboard-header{margin-left:0;margin-right:0;padding-bottom:9px}.modal table tr,.thBorderBottom{border-bottom:1px solid #f7f3f2!important}.fixedDropdown .dropdown-header,.fixedDropdown .dropdown-item,.innerDropdownInnerUL{border-bottom:1px solid rgba(0,0,0,.2)}.modal-delete-confirmation button{margin-right:10px;margin-top:-4px}.modal-delete-confirmation button .modal-confirm-delete{margin-right:-18px}.createModalDialog table{width:100%}.createModalDialog .collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.createModalDialog .figures1,.createModalDialog .figures2{margin-bottom:20px;width:255px}.createModalDialog .figures2{margin-left:20px!important}.createModalDialog .figures3{margin-bottom:0;width:100%}.foxx-store-row .foxx-name{font-weight:700}.foxx-store-row .foxx-author{font-size:10pt;font-weight:300;margin-top:-4px}.foxx-store-row .foxx-version{font-weight:400}#new-app-mount{margin-right:24px;width:360px}#control_event_edge_delete_modal,#control_event_edge_edit_modal,#control_event_new_node_modal,#control_event_node_delete_modal,#control_event_node_edit_modal{margin-left:-320px;width:640px}.navlogo .stat_cpu,.navlogo .stat_ram{height:26px;width:26px}.navlogo .stat_cpu{margin-top:1px}.navlogo .stat_cpu path{fill:#aa0}.navlogo .stat_ram path{fill:#070}.navlogo .stat_req{height:22px;width:22px}.navlogo .stat_req path{fill:#aa0}.fixedDropdown{-moz-border-radius:0!important;-webkit-border-radius:0!important;border-radius:0!important;margin:37px 0 0!important;width:210px}.fixedDropdown:after{visibility:hidden}.fixedDropdown .dropdown-header{padding:0!important}.fixedDropdown a{padding-left:5px!important}.fixedDropdown .notificationItemContent{font-weight:300;margin-left:15px;max-width:155px;min-height:15px;white-space:normal;width:155px;word-wrap:break-word}.fixedDropdown button{margin-right:5px;margin-top:5px}.fixedDropdown .notificationItem .notificationItemTitle{max-width:165px;overflow-wrap:break-word;white-space:normal;word-wrap:break-word}.fixedDropdown .notificationItem .notificationItemTitle:hover{color:#000;cursor:default}.fixedDropdown .notificationItem i{color:rgba(0,0,0,.2);font-size:20px;position:relative;right:4px;top:-9px}.fixedDropdown .notificationItem i:hover{color:#000}.innerDropdownInnerUL{height:220px!important;min-height:220px;overflow-x:hidden;overflow-y:scroll;width:100%}.innerDropdownInnerUL .dropdown-item:hover{background-color:#e1e1e1!important}.innerDropdownInnerUL li{width:auto!important}#stat_hd{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid rgba(104,103,102,.1);height:24px;margin-top:3px;text-align:center;width:24px}.contentButtons,.contentTables{width:100%;margin-bottom:10px}#stat_hd #stat_hd_counter{color:#c2c2c2;line-height:24px;margin-left:1px}.contentTables tr.contentRowActive a,.contentTables tr.contentRowInactive a{color:#000!important}.contentButtons #createDatabase,.contentButtons #createUser,.dashboard-bar-chart-container:first-child,.dashboard-large-chart .dashboard-large-chart-inner:first-child,.dashboard-medium-chart:first-child,.dashboard-small-chart .dashboard-small-chart-inner:first-child,.dashboard-tendency-container:first-child{margin-left:0}.fullNotification{background-color:#c00!important;border:2px solid #c00!important}.contentButtons{clear:both}.contentTables thead{text-align:left}.contentTables thead tr{background-color:#fff;border-bottom:1px solid #c2c2c2}.contentTables tbody tr:nth-child(odd){background-color:#d9d9d9}.contentTables tbody tr:nth-child(even){background-color:#fff}.contentTables tr.contentRowActive{background-color:#bdcc92!important;font-weight:400}.contentTables .dbThFirst{width:90%}.contentTables .dbThSecond{width:10%}.contentTables td{padding:12px 18px}.contentTables td span{float:right;font-size:22px}.contentTables .collectionThSec{margin-right:0;width:80%}.contentTables .collectionTh{margin-right:0;width:5%}.user-menu-img{background-color:#d3d3d3;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:2px solid #8aa051;margin-top:-4px}.tooltip-inner{max-width:300px!important;white-space:normal!important;word-wrap:break-word!important}.index-tooltip{color:#736b68}.index-tooltip:hover{color:#000}.index-tooltip span.arangoicon{font-size:18px!important}.tooltipInfoTh{width:10%}.dbselection{float:left;margin-right:3px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-bar-chart-container,.dashboard-large-chart .dashboard-large-chart-inner,.dashboard-medium-chart,.dashboard-small-chart .dashboard-small-chart-inner,.dashboard-tendency-container{border-top-left-radius:3px;border-top-right-radius:3px}.dashboard-bar-chart-container,.dashboard-large-chart,.dashboard-medium-chart,.dashboard-small-chart,.dashboard-tendency-container{margin-bottom:10px;position:relative}.dashboard-large-chart .dashboard-large-chart-inner .dashboard-interior-chart,.dashboard-medium-chart .dashboard-interior-chart{margin-bottom:0}.dashboard-sub-bar-menu{cursor:pointer;position:absolute;right:9px;top:6px}.dashboard-large-chart{margin-right:12px;border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-large-chart .dashboard-large-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:12px;padding-bottom:10px}.dashboard-small-chart{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-small-chart .dashboard-small-chart-inner{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:10px;padding-top:5px}.dashboard-small-chart .dashboard-small-chart-inner .dashboard-interior-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart-outer:first-child{margin-right:10px}.dashboard-medium-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-top:10px;margin-bottom:0}.dashboard-medium-chart:first-child{margin-right:12px}.dashboard-medium-chart .dashboard-medium-chart-outer{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-medium-chart .dashboard-medium-chart-menu{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:0 solid rgba(0,0,0,.3);color:rgba(0,0,0,.3);cursor:pointer;padding:0 4px;position:absolute;z-index:1000}.dashboard-medium-chart .dashboard-medium-chart-menu:hover{color:rgba(0,0,0,.7)}.dashboard-medium-chart .dashboard-medium-chart-inner{padding-bottom:10px}.dashboard-medium-chart .clusterChart .slice path{fill-opacity:.15;stroke-opacity:1;stroke-width:1.5px}.dashboard-tendency-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-tendency-container .dashboard-tendency-chart{background-color:#fff;border-top-left-radius:3px;border-top-right-radius:3px;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;padding-bottom:5px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency{background-color:#fff;margin-top:5px;padding:0 8px}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency:first-child{border-right:1px solid #e1e1e1}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-subtitle-bar{border-bottom:1px solid #e1e1e1;text-align:right}.dashboard-tendency-container .dashboard-tendency-chart .dashboard-tendency .dashboard-figure{text-align:center}.dashboard-bar-chart-container{border:1px solid rgba(104,103,102,.1);border-radius:3px}.dashboard-bar-chart-container .dashboard-bar-chart{background-color:#fff;border-left:5px solid #fff;border-right:5px solid #fff;border-top:5px solid #fff;border-top-left-radius:3px;border-top-right-radius:3px;padding-bottom:5px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title{margin-top:5px;padding:0 8px}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .percentage{font-weight:400}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-title .absolut{text-align:right}#dashboardDetailedChart .dygraph-axis-label-y,.dashboardDetailChart .dygraph-axis-label-y,.innerDashboardChart .dygraph-axis-label-y{text-align:left}.dashboard-bar-chart-container .dashboard-bar-chart .dashboard-bar-chart-chart .nv-bar rect{fill-opacity:.15;stroke-opacity:.8;stroke-width:.5px}.dashboard-legend .dashboard-legend-inner{padding:0 5px 5px 0}.dashboard-sub-bar{background-color:#686766;border-bottom-left-radius:3px;border-bottom-right-radius:3px;color:#fff;height:24px;line-height:24px;margin:0;padding:0 6px}.dashboard-spacer{margin:0 12px}.headerBar.dashboard-headerbar{margin:15px 0 10px}.modal-chart-detail .modal-dashboard-legend .dashboard-legend-inner{padding-left:20px}.dashboard-half-height-legend .dashboard-legend-inner{padding-top:20px}.dashboard-title-bar{background-color:#686766;color:#fff;font-size:14.5px;font-weight:400;height:30px;line-height:30px;padding:0 5px 0 10px}.dashboard-title-bar .dashboard-half-title-bar{border-left:1px solid #000;margin-left:-1px;width:50%}.dashboard-title-bar .dashboard-half-title-bar:first-child{border-left:0;margin-left:0}.dashboard-row{margin-bottom:0;margin-left:0;margin-right:0}.dygraph-axis-label.dygraph-axis-label-x,.dygraph-axis-label.dygraph-axis-label-y{color:#666}.dashboardModal{-moz-border-radius:8px!important;-webkit-border-radius:8px!important;border-radius:8px!important;height:80%;margin-left:-45%;min-width:780px;overflow:auto;padding:10px;top:10%;width:90%!important}#dashboardHttpGroup{border:6px solid #000;height:100%;width:100%}#dashboardDetailedChart{border:1px solid #000;height:300px;width:100%}.innerDashboardChart{bottom:5px;left:5px;position:absolute;right:5px;top:5px}.dashboardChart{background-color:#fff;border:1px solid rgba(0,0,0,.2);float:left;height:210px;margin:1.05%;position:relative;width:31%}.dygraph-label.dygraph-title{color:#000;font-size:15px;font-weight:400;text-align:left}#dashboardDetailedLineChart{padding-top:10px}.dashboardDistribution{float:left;width:270px}.dashboardDistribution svg{height:220px;width:250px}.showHotkeyHelp{cursor:pointer}.shortcuts{font-size:14px;font-weight:200}.shortcuts b{border-left:1px solid rgba(0,0,0,.34);margin-left:5px;padding-left:5px}.shortcuts .clearShortcut,.shortcuts b:first-child{border-left:0;margin-left:0;padding-left:0}.loginFixedWindow{background:#dee8d0;height:100%;left:0;position:fixed;top:0;width:100%}.login-window{background-color:#fff;border-radius:5px;height:280px;left:50%;margin-left:-220px!important;margin-top:-150px;padding-left:10px;padding-right:10px;position:absolute;top:50%;width:400px}.login-window img{margin-left:12px}.login-window .fa{color:rgba(0,0,0,.4);float:right;font-size:14pt;margin-right:5px;margin-top:-34px}.login-space{height:50px}.login-input{width:387px}toolbar{background-color:#f0f0f0;border-bottom:0;border-style:solid;border-width:1px;font-size:20px;height:27px;margin-left:0;margin-right:0}toolbar span:hover{background-color:red;color:#fff}.queryBottomActions{padding:10px;border-top:1px solid #c2c2c2}#queryManagementContent{margin-top:18px}.queryManagementBottomActions{margin-top:-2px;border-top:1px solid #c2c2c2;height:40px;padding-top:10px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;background-color:#fff}.queryManagementBottomActions button{margin-right:10px}.editor-toolbar{border-color:#a0a0a0;margin-top:3px}.editor-toolbar span{border-radius:3px;float:right;width:25px;height:18px;position:relative;margin-left:3px;top:0;padding:3px 0 6px 5px}.aql-editor,.query-output{height:200px;min-height:100px}.editor-toolbar span:hover{background-color:#8aa051;color:#fff}.editor-toolbar i{margin-right:5px;margin-top:3px}.editor-toolbar i:hover{cursor:pointer}.editor-toolbar .icon_arangodb{font-size:14pt}.editor-toolbar .icon_arangodb_trash{margin-left:5px;margin-right:10px}.editor-toolbar .fa-comment,.editor-toolbar .fa-comment-o{font-size:15px;position:relative;right:-2px;top:-2px}.editor-toolbar .arango-icon-disk{margin-top:1px}.queryMethods button a{color:#fff}.aql-editor{border-color:#a0a0a0;border-left:0!important;border-top:0!important;margin-bottom:5px;min-width:99.8%;width:auto}.aql-editor .ace_error,.aql-editor .ace_info{background:0 0}.queryTH{width:20%!important}.queryTH2{width:75%!important}.query-output{background-color:#fff;border:0;border-top-width:0;margin-left:0;margin-right:0;overflow-y:hidden;width:auto}.query-output .ace_error,.query-output .ace_info{background:0 0}.ace_print-margin{visibility:hidden!important}#documentsTableID_filter,#documentsTableID_length,#documentsTableID_paginate,#documentsTableID_wrapper .fg-toolbar,.jsoneditor .outer .tree>table>tbody>tr:first-of-type{visibility:hidden}.styled-select{float:right;height:30px;overflow:hidden;width:220px}.styled-select select{background:#fff;border:1px solid #c2c2c2!important;border-radius:3px!important;font-size:14px;font-weight:300;height:30px;line-height:1;padding:5px;padding-left:5px!important;padding-top:3px!important}.querySizeDiv,.querySizeDiv select{height:30px!important}.query-select,.query-size{line-height:20px!important;z-index:9999!important}.querySizeDiv{margin-right:10px;width:130px!important}.wide-button-div{margin-top:-10px;height:36px;margin-bottom:15px;padding-top:5px;width:100%}.shortcut-div{float:left;margin-top:-5px;padding-left:45px;width:auto}.query-dropdown-left{margin-top:10px;width:100%}.query-dropdown-right{width:100%}.query-dropdown-right textarea{padding:5px 0 0;resize:vertical;width:100%}.query-dropdown-right textarea:focus{border-color:#8aa051;box-shadow:0 0 3px #8aa051;outline:0}.query-modal-select{padding-left:0;width:100%}.output-toolbar{border-color:silver;border-top:0;position:relative;width:auto}.output-toolbar span{float:right;margin-left:5px;margin-right:5px;position:relative;top:2px}.query-select{border:0!important;border-radius:0!important;margin-bottom:0}.query-select option{z-index:9999!important}.editor-label{background-color:#ddd;height:1px;width:100%}.editor-label h6{font-size:16px;font-weight:400;margin-bottom:5px}.query-dropdown{background-color:#d9d9d9;margin-left:0;margin-right:0;padding-left:5px;padding-right:5px}.tooltip-margin{margin-top:1px}.query-dropdown-in{background-color:#fff;padding:10px}.query-dropdown-in a{color:#686766;font-size:16px;font-weight:bolder;margin-bottom:5px;width:100%}.query-dropdown-in #save-edit-query{margin-left:7px!important}.query-dropdown-in #delete-edit-query{margin-left:0!important}.query-size{border-radius:0!important;width:130px!important}.query-div .arango-table,.query-div .arango-table tbody,.query-div .arango-table tr{max-width:100%;width:100%}#queryContent{margin-top:18px}#queryContent .arango-tab a{border-bottom-color:#ddd}#queryContent .arango-tab .active{border-bottom-color:#fff!important}.query-div{min-height:360px}.query-div>*{border:0!important}.query-div .icon_arangodb{cursor:pointer;margin-bottom:5px}.query-div .arango-table{table-layout:fixed}.query-div .arango-table .table-cell0{cursor:pointer;min-width:250px;overflow:hidden;text-overflow:ellipsis!important;white-space:nowrap!important;width:20%}.query-div .arango-table .table-cell1,.query-div .arango-table .table-cell2{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.query-div .arango-table .table-cell1{cursor:pointer;width:73%}.query-div .arango-table .table-cell2{max-width:40px;min-width:40px;width:40px}.queryImport{margin-bottom:10px}.tab-content,svg.explain-tree{width:100%}svg.explain-tree .node text{font-size:14px}svg.explain-tree .link{fill:none;stroke:#ccc;stroke-width:1.5px}.row{margin:0 0 20px}.innerContent{min-height:200px;background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);padding-top:13px}.container{margin-left:20px;margin-right:20px;width:auto!important}.arango-tab{border-bottom:1px solid #ddd;margin-left:0;padding-right:10px;padding-bottom:0}.arango-tab a{-moz-border-radius:0;-webkit-border-radius:0;border-radius:3px 3px 0 0;background-color:#8c8a89;border:1px solid transparent;border-bottom-color:#888;color:#fff;display:block;font-size:13px;line-height:20px;margin-right:2px;min-width:50px;padding:2px 15px;text-align:center}.arango-tab li{background-color:transparent;border:0;margin-bottom:-1px;margin-left:2px;position:relative;z-index:900}.arango-tab li.active a{background:#fff;border-bottom-color:#fff!important;border-left-color:#c2c2c2;border-right-color:#c2c2c2;border-top-color:#c2c2c2;color:#000;height:21px;margin-top:-1px}.jsoneditor,.jsoneditor .menu{background-color:#fff!important}.jsoneditor{border:0 solid rgba(0,0,0,.2)!important}.jsoneditor .menu{border-left:0!important;border-right:0!important;border-top:0!important;border-bottom:1px solid #c2c2c2!important}.jsoneditor .menu button{border:0!important}.jsoneditor .menu button:hover{background-color:#8aa051;color:#fff}.jsoneditor .search .frame{border:0!important;margin:3px!important}.jsoneditor .search .frame input{border:1px solid #c2c2c2!important;border-radius:3px;margin-top:-2px;margin-left:5px;margin-right:5px}.jsoneditor .search .results{color:#fff!important;margin-top:3px!important}.show-save-state{color:green;display:none;font-weight:300;margin-top:5px}.document-editor-extra{margin-top:10px}.document-editor{height:500px;margin-top:-10px;margin-bottom:5px;width:100%}.disabledPag,.disabledPag a{cursor:default!important;opacity:.5!important}.pagination-line{margin:0;padding-top:12px;text-align:center;border-top:1px solid rgba(104,103,102,.1);background-color:#fff;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.pagination-line li a:hover,.pagination-line li.active a,.pagination-line li.active span{background-color:#8f8d8c;color:#fff}.pagination-line li a{background-color:#fff;border:1px solid #fff;font-size:11.9px;line-height:20px;padding:2px 10px;text-decoration:none;border-width:0;min-width:12pt}.pagination-line ul{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;margin-bottom:0;margin-left:0}.pagination-line li{display:inline-block;margin-left:11px}.pagination-line li span{color:#000;font-size:14px;position:relative;top:2px}.pagination-line li:first-child a,.pagination-line li:first-child span,.pagination-line li:last-child a,.pagination-line li:last-child span{-webkit-box-shadow:0;-moz-box-shadow:0;box-shadow:0;background:#8f8d8c;border:0;color:#000;height:21px;position:relative;width:14px}.pagination-line li.disabled:first-child a,.pagination-line li.disabled:first-child span,.pagination-line li.disabled:last-child a,.pagination-line li.disabled:last-child span{background-color:#777;color:#666;cursor:default;pointer-events:none}.collection-pagination{margin-left:23px!important}.arango-pagination i.fa,.las-pagi i.fa,.pre-pagi i.fa{font-size:19px;position:relative;top:-2px}.arango-pagination li:first-child{margin-right:20px}.arango-pagination li:last-child{margin-left:30px}.pre-pagi{margin-right:-5px!important}.accordion-group{border:0}.accordion-heading a{border:1px solid #ccc;color:#000;font-weight:400;width:397px!important}.shell_workspace{margin-top:13px}.shell_workspace ::-webkit-scrollbar{display:none}.replShell{background-color:#fff;float:left;height:100%;min-width:100px;position:relative;overflow-y:hidden;width:100%}.replShell>div{border-radius:3px}.replShell pre{border-bottom:0;border-left:0;border-right:1px solid #a0a0a0;border-top:1px solid #a0a0a0}.jqconsole{background-color:#000;border-radius:0;padding:10px}.jqconsole-header{color:#fff}.jserror{color:#f06;margin-left:-10px}.jssuccess{color:#6f0}.jqconsole-cursor{background-color:grey}.jqconsole-blurred .jqconsole-header .jqconsole-cursor{color:#c4cccc}.jqconsole-prompt{color:#b91}.jqconsole-old-prompt{color:#f60;font-weight:400}.jqconsole-input{color:#dd0}.jqconsole-old-input{color:#bb0;font-weight:400}.jqconsole-output{color:#fff}.query-output .ace_gutter-cell{background-color:#f0f0f0}.swagger-ui-wrap{background-color:#fff;border-radius:3px}.swagger-ui-wrap #resources li.resource{background-color:#f4f3f3}.centralContent .api-actions{margin:0!important;padding:0}.centralContent .api-actions .container{padding-bottom:10px!important;padding-top:13px!important;margin:0 5px!important}.centralContent .api-actions .resource{border-bottom:0!important;padding-left:5px!important}.centralContent .api-actions .resource .heading h2 a{color:#000!important;font-weight:300!important}.centralContent .api-actions .active .heading h2 a{color:#000!important}.centralContent .api-actions .endpoints{margin-right:5px!important}.centralContent .api-actions .endpoints .endpoint:last-child{padding-bottom:5px!important}.centralContent .api-actions .endpoint .operations .content,.centralContent .api-actions .endpoint .operations .heading{border-radius:0!important;font-weight:300!important}.centralContent .api-actions .endpoint .operations .content{margin:0!important}.centralContent .api-actions .endpoint .operations .content h4{font-weight:700!important}.centralContent .api-actions .http_method,.centralContent .api-actions .toggleOperation{border-radius:0!important}.centralContent .api-actions .required,.centralContent .api-actions em,.centralContent .api-actions strong{font-weight:400!important}.centralContent .api-actions input[type=button]{background:#8f8d8c!important;border:none!important;box-shadow:none!important;color:#fff!important;float:right!important;font-size:14px!important;font-weight:300!important;margin-top:10px!important;padding:8px 16px!important}.collectionInfoTh2,.collectionTh,.figuresHeader th{font-family:'Open Sans',sans-serif!important;font-weight:400!important}.centralContent .api-actions .resource>.heading>.options{margin:11px 10px 0 0!important}.form-actions{background:0 0;border:0}div.gv-colour-list ul ul,div.gv-colour-list ul ul:first-child,div.gv-colour-list ul ul:last-child{border-left:1px solid rgba(104,103,102,.1);border-right:1px solid rgba(104,103,102,.1)}.form-actions:after,.form-actions:before{display:table;line-height:0}.form-actions:after{clear:both}.alert{padding:15px 35px 15px 14px}.alert,textarea{border-radius:0!important}.log-content{word-break:break-all;word-wrap:break-word}.log-content-id{margin-top:20px;padding-bottom:0!important}.log-content-id .dataTable{border-collapse:separate;border-spacing:0 5px;table-layout:fixed!important}.log-content-id .arango-tab{border-bottom:0!important}.log-content-id .tab-content{margin-top:1px!important}.tab-content{min-height:390px}.crit-table-id,.debug-table-id,.info-table-id,.log-table-id,.warn-table-id{border-spacing:0 0;font-size:15px!important;margin-top:-5px!important}.crit-table-id thead,.debug-table-id thead,.info-table-id thead,.log-table-id thead,.warn-table-id thead{background-color:#f9f9f9;border-top:6px solid #888!important;text-align:center}.crit-table-id thead tr th,.debug-table-id thead tr th,.info-table-id thead tr th,.log-table-id thead tr th,.warn-table-id thead tr th{background-color:#fff!important;border-bottom:1px solid #c2c2c2;border-top:2px solid #888}.crit-table-id .firstcol,.debug-table-id .firstcol,.info-table-id .firstcol,.log-table-id .firstcol,.warn-table-id .firstcol{cursor:default!important;max-width:80px!important;width:80px!important}.crit-table-id tbody .firstcol,.debug-table-id tbody .firstcol,.info-table-id tbody .firstcol,.log-table-id tbody .firstcol,.warn-table-id tbody .firstcol{background-color:transparent!important}.crit-table-id tbody tr td,.debug-table-id tbody tr td,.info-table-id tbody tr td,.log-table-id tbody tr td,.warn-table-id tbody tr td{padding-bottom:8px!important;padding-top:8px!important}div.gv-colour-list li,div.gv_colour_list li{float:none;padding:2px 6px}.thirdcol{cursor:default!important;max-width:500px!important}.dataTables_empty,.seccol{cursor:default!important;margin-bottom:5px;width:100px!important}.dataTables_info{display:none}#arangoLogTable tbody td:nth-child(1),#arangoLogTable tbody td:nth-child(2){text-align:center;width:80px}#arangoLogTable tbody td:nth-child(3){width:auto}div.gv_zoom_widget{height:300px;left:82px;position:absolute;top:20px;width:40px;z-index:1}div.gv_zoom_widget div.gv_zoom_buttons_bg{background-image:url(../img/gv_button_bg_reverse.png);background-size:contain;height:40px;margin-bottom:20px}div.gv_zoom_widget div.gv_zoom_slider{background:#fff;height:200px;margin:0 17px;width:4px;border-radius:3px}div.gv_zoom_widget a.ui-slider-handle{border:1px solid rgba(104,103,102,.1);background-color:#000;height:.5em;left:-.55em;outline:0}div.gv_zoom_widget a.ui-slider-handle.ui-state-hover{outline-color:#fff}div.gv_zoom_widget a.ui-slider-handle:hover{cursor:pointer}div.gv_zoom_widget .ui-state-default{background:#f6f6f6}div.gv_colour_list{max-height:680px;overflow:auto;position:absolute;right:26px;text-align:right;top:20px;z-index:1}div.gv_colour_list li{background-color:transparent}svg.graph-viewer{background-color:#fff;border-radius:3px;border:1px solid rgba(104,103,102,.1);left:74px;position:absolute;top:10px;z-index:0}svg.graph-viewer text{font-size:16px;pointer-events:none}div.gv-background{position:relative}.link>line{stroke-width:1}div.gv-colour-list{border-radius:3px;position:absolute;right:8px;text-align:right;top:20px;z-index:1;max-height:350px;overflow-y:auto;overflow-x:none;max-width:130px}div.gv-colour-list ul ul:first-child{border-top:1px solid rgba(104,103,102,.1);border-top-left-radius:3px;border-top-right-radius:3px}div.gv-colour-list ul ul:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom:1px solid rgba(104,103,102,.1)}div.gv-manage-button-container{margin-top:10px}legend.gv-inner{font-size:16px}input.gv-radio-button{display:block;margin-top:3px;width:auto}.addCollection .accordion,.collectionTh select,.collectionTh textarea{margin-top:10px}.collectionTh{font-size:14px;text-align:left;width:20%!important}.collectionInfoTh{min-width:60px;text-align:left;width:320px}.addCollection table tr{border-bottom:0!important;height:53px}.addCollection .icon_arangodb_info{margin-left:20px!important;position:relative;top:2px!important}.addCollection .collectionThSec{width:320px!important}.addCollection .collectionTh{width:96px}.addCollection .modalInput{width:320px}.addCollection .modalSelect{width:334px}.addCollection .accordion-toggle{width:457px!important}.change-collection .tab-content{min-height:230px}.change-collection input{width:384px!important}.change-collection select{width:398px!important}.show-collection .tab-content{min-height:200px}.collectionInfoTh2{text-align:left;width:150px}.collection-info-figures table{float:left;margin-left:0;margin-right:0;margin-top:0;min-width:200px;padding:3px;text-align:left}.figuresHeader{border-bottom:1px solid #c2c2c2}.document-info .document-bold-font,.document-info .document-thin-font{font-family:droid sans mono,monospace,courier new,courier,sans-serif;font-size:11pt}#collectionIndexTable{margin-left:0;width:100%}#collectionTab,#infoTab{border-bottom:0;margin-bottom:1px;padding-bottom:0;padding-right:10px}#collectionTab li,#infoTab li{float:right}#collectionTab a,#infoTab a{background-color:#8c8a89;border-bottom:1px solid #666;border-top-left-radius:3px!important;border-top-right-radius:3px!important;color:#fff;font-size:13px!important;height:21px;margin-bottom:-1px;margin-right:4px;padding:2px 15px!important}#collectionTab .active>a,#infoTab .active>a{color:#000;background-color:#fff;border-color:#888 #888 transparent!important}#confirmCreateEdge{margin-left:20px}.collection-info-figures .icon_arangodb_info{position:relative!important;right:-4px!important}.snippet-wrap .snippet-num li{list-style:decimal-leading-zero}.snippet-no-num{list-style-type:none;padding-left:0}.snippet-no-num .prettify{font-size:1.2em}.snippet-no-num .sh_number{color:#044;font-weight:100;margin-left:5px}.snippet-no-num .sh_symbol{color:#00f;font-weight:100;margin-left:5px}.snippet-no-num .sh_cbracket{color:#c7a317;font-weight:100;margin-left:5px}.snippet-no-num .sh_keyword{color:#c12dad;font-weight:100;margin-left:5px}.snippet-no-num .sh_string{color:#ce2f30;font-weight:100;margin-left:5px}.snippet-no-num .sh_array,.snippet-no-num .sh_object{color:#00f;font-weight:100;margin-left:5px}@media (max-width:798px){.arango-collection-ul{display:none}.collection-dropdown ul{width:auto!important}.arango-collection-select{display:inline-block}}@media (min-width:799px) and (max-width:1041px){.arango-collection-ul a{font-size:11px;padding:7px 5px 10px}}@media (min-width:1042px) and (max-width:1284px){.arango-collection-ul a{font-size:13px}}#documentsDiv{padding-top:1px}.document-info-div{margin-top:20px;min-height:0}.document-content-div{margin-top:10px}.document-info{background-color:#fff;border-radius:3px;margin-bottom:8px;margin-top:-13px;min-height:65px;padding:5px}.document-info .document-info-container{clear:both;width:100%}.document-info .document-info-container .document-inner-info-container{float:left;margin-left:10px;margin-top:5px}.document-info .document-info-container .document-inner-info-container .document-attribute{margin-right:20px}.document-info .document-info-container .document-inner-info-container .document-attribute div{float:left}.document-info .document-bold-font{min-width:55px}.document-info .document-thin-font{color:green}.document-info .document-type-container div{float:left}.document-info .document-type-container #document-id{margin-left:10px}.document-link:hover{cursor:pointer;text-decoration:underline}.jsoneditor .tree div{font-size:11pt}#progressPlaceholder{background-color:rgba(0,0,0,.4);bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.progress-view{background-color:#363c39;border-radius:2px;color:#fff;height:188px;left:50%;margin:-100px 0 0 -150px;position:absolute;top:50%;width:300px}.progress-view .progress-content{margin-left:90px;margin-top:10px}.progress-view .progress-content .fa-spinner{font-size:100pt}.progress-view .progress-message{background-color:#fff;border-radius:0 0 2px 2px;color:#fff;font-weight:200;height:44px;margin-top:33px;padding-top:3px;text-align:center}.progress-view .progress-text{color:#000;float:left;margin-left:5px;margin-top:10px}.progress-view .progress-action{float:right;margin-right:5px;margin-top:5px}#progressPlaceholderIcon{color:#8aa051;float:left;font-size:22px;margin-left:10px;margin-top:7px}.pong-loader{margin-top:35px;margin-left:17px}@-moz-keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@-webkit-keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@keyframes pong-loader{0%{left:5px;top:0}25%{left:65px;top:20px}50%{left:5px}62.5%{top:50px}75%{left:65px;top:70%}100%{left:5px;top:0}}@-moz-keyframes pong-loader-paddle-1{0%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-moz-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-webkit-keyframes pong-loader-paddle-1{0%{-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-webkit-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-webkit-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@keyframes pong-loader-paddle-1{0%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}25%{-moz-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 15px 0 0,inset #353c39 0 -25px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 10px 0 0,inset #353c39 0 -30px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 5px 0 0,inset #353c39 0 -35px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-moz-keyframes pong-loader-paddle-2{0%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@-webkit-keyframes pong-loader-paddle-2{0%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-webkit-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-webkit-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}@keyframes pong-loader-paddle-2{0%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}50%{-moz-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 30px 0 0,inset #353c39 0 -10px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}62.5%{-moz-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 40px 0 0,inset #353c39 0 0 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}75%{-moz-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 20px 0 0,inset #353c39 0 -20px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}100%{-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 3px 0 0 0,inset #8cdb8b -10px 0 0 0}}.pong-loader:not(:required){width:80px;height:60px;background:#353c39;position:relative;display:inline-block;overflow:hidden;text-indent:100%;-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-moz-animation:pong-loader-paddle-1 1500ms infinite linear;-webkit-animation:pong-loader-paddle-1 1500ms infinite linear;animation:pong-loader-paddle-1 1500ms infinite linear}.pong-loader:not(:required):after,.pong-loader:not(:required):before{content:"";display:block;position:absolute;top:0;width:10px;left:0}.pong-loader:not(:required):before{-moz-animation:pong-loader-paddle-2 1500ms infinite linear;-webkit-animation:pong-loader-paddle-2 1500ms infinite linear;animation:pong-loader-paddle-2 1500ms infinite linear;height:100%;-moz-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;-webkit-box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0;box-shadow:inset #353c39 0 0 0 0,inset #353c39 0 -40px 0 0,inset #353c39 -3px 0 0 0,inset #8cdb8b -10px 0 0 0}.pong-loader:not(:required):after{-moz-animation:pong-loader 1500ms infinite linear;-webkit-animation:pong-loader 1500ms infinite linear;animation:pong-loader 1500ms infinite linear;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;height:10px;background:#8cdb8b}.application-detail-view section.info{float:left;padding:13px 0 0}.application-detail-view section.info .header{height:200px;margin-bottom:10px;position:relative}.application-detail-view section.info .header div.header-icon-container{height:160px;left:0;margin:0 0 4px;position:absolute;width:160px}.application-detail-view section.info .header div.header-icon-container img.icon{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:auto;max-height:160px;max-width:160px;width:auto}.application-detail-view section.info .header .header_left{left:170px;position:absolute;width:120px;padding-top:1px}.application-detail-view section.info .header .header_left input.delete,.application-detail-view section.info .header .header_left input.switch-mode,.application-detail-view section.info .header .header_left input.upgrade{margin-top:13.33px}.application-detail-view section.info .header .header_left input{width:90px}.application-detail-view section.info .header .header_right{margin-left:300px;padding:5px}.application-detail-view section.info .header .header_right input{margin-left:0}.application-detail-view section.info .header .header_right .header_line h3{float:left;padding-right:5px}.application-detail-view section.info .header .header_right .header_line .license,.application-detail-view section.info .header .header_right .header_line .version{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;border:1px solid #a0a0a0;color:#a0a0a0;font-size:.6em;padding:0 8px 2px;position:relative;top:-2px}.application-detail-view section.info .header .header_right .header_line:after{content:'';display:table;clear:both}.application-detail-view section.info .header .app-warning{position:absolute;top:0;right:20px;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;border:1px solid #be342e;color:#da4f49;background:#e0d8d8;padding:4px 8px}.application-detail-view section.info .header .app-warning h4,.application-detail-view section.info .header .app-warning p{margin:0;font-size:1em}.application-detail-view section.info .swagger iframe{border:1px solid rgba(140,138,137,.25);border-radius:3px;height:600px;width:100%}.application-detail-view section.info .readme{border:1px solid #000;background:#fff;padding:1em 2em}.application-detail-view aside.meta{background-color:#fff;border:1px solid rgba(140,138,137,.25);border-radius:3px;clear:right;float:left;width:198px}.application-detail-view aside.meta dl{padding-left:7px;padding-top:5px;margin-top:0}.tests-result .stack{border-color:#f04;margin:5px 0;line-height:1.5;font-size:12px;color:#802}.tests-result-stats .fail,.tests-result-stats .pass,.tests-result-stats .pending{padding:0 2px}.tests-result-spec{margin-bottom:0}.tests-result-spec-suites .tests-result-spec-suites{margin-left:20px}.tests-result-spec-suites dd{margin-left:0;margin-bottom:20px}.tests-result-spec-tests{margin-left:20px}.tests-result-spec-test-title{padding-left:20px}.tests-result-spec-test-title .fa{position:absolute;margin-left:-20px;margin-top:2px;line-height:18px}.tests-result-spec-test-title .fa-circle{font-size:50%;margin-left:-16px}.tests-result .pass{color:#4c0}.tests-result .fail{color:#f04}.tests-result .pending{color:#888}.hotkeysList .hotkeysLabel{clear:both;color:#000;font-size:16px;font-weight:400}.hotkeysList .hotkeysContent{padding-left:10px}.hotkeysList li{line-height:25px}.hotkeysList li .hotkeysDiv{float:left}.hotkeysList .hotkeysicons{background-color:#686766;border:1px solid #000;border-radius:2px;color:#fff;display:inline;height:19px;margin-left:10px;text-align:center;width:19px}.arango-table tbody tr:nth-child(even),.arango-table thead{background-color:#fff}.hotkeysContentLabel{float:left;width:30%}.arango-table{border-top:1px solid #c2c2c2;width:100%}.arango-table thead th{border-bottom:1px solid #c2c2c2;height:43px}.arango-table tbody tr:nth-child(odd){background:rgba(104,103,102,.05)}.arango-table tbody td{padding:10px 18px}.arango-tabbar{height:27px;width:100%}.arango-tabbar button{background-color:#8c8a89;color:#fff;border:0;float:right;height:27px;width:82px;margin-right:5px;border-top-left-radius:3px;border-top-right-radius:3px}.arango-tabbar button:first-child{margin-right:10px}.arango-tabbar .arango-active-tab{background-color:#fff;color:#000;border-left:1px solid #c2c2c2;border-right:1px solid #c2c2c2;border-top:1px solid #c2c2c2;border-bottom:1px solid #fff;margin-bottom:-1px;height:28px}.docsSecCol,.docsThirdCol{height:26px}.arangoDataTable{border-spacing:0 0;position:relative;table-layout:fixed!important;width:100%!important}.arangoDataTable thead{background-color:#fff!important;font-weight:400!important;text-align:left}.arangoDataTable thead th{border-bottom:0;cursor:default!important;font-weight:400!important;padding:10px 14px!important}.arangoDataTable thead tr{border-bottom:1px solid #c2c2c2}.arangoDataTable tr{cursor:pointer}.arangoDataTable td{padding:10px 18px!important}.arangoDataTable .key{font-weight:100;margin-top:4px}.arangoDataTable .dataTable .noPointer tr{cursor:default}.arangoDataTable .selected-row{background-color:#8aa051!important}.arangoDataTable .selected-row div,.arangoDataTable .selected-row li,.arangoDataTable .selected-row span{color:#fff!important}.api-container #resources>li.resource:nth-child(even),table.arangoDataTable tr.even{background-color:#fff}.api-container #resources>li.resource:nth-child(odd),table.arangoDataTable tr.odd{background-color:rgba(104,103,102,.05)}#tableDiv table.dataTable td{padding:12px 18px!important}#documentsTableID_filter,#documentsTableID_length{display:none}#documentsTableID_wrapper{min-height:513px!important;padding-bottom:0!important}.snippet-no-num{font-family:'Open Sans',sans-serif;font-size:1em;font-weight:400;margin-bottom:0}.cuttedContent,.prettify ul li,.writeable a{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.totalDocuments{color:#666;font-weight:100;float:left;margin-top:-37px!important;padding-left:10px}.prettify{border:none!important;font-size:1em!important;margin:0!important;padding:0!important}table .sorting{background:0 0!important}.sorting_asc,.sorting_desc{background:#e4e0dd}#documentsDiv{margin-top:20px}.new-index-view input[type=checkbox]{float:left;margin-top:-9px}.new-index-view table tr{width:600px!important}.new-index-view table tr th:last-child{width:50px!important}.new-index-view table th{font-weight:300!important;width:200px!important}.edit-index-table{margin-top:5px;min-width:auto!important}.edit-index-table th{padding-bottom:5px;padding-left:5px;padding-top:5px}.edit-index-table .icon_arangodb_locked{color:rgba(0,0,0,.5);cursor:default;font-size:20px;margin-left:10px}.edit-index-table .icon_arangodb_roundminus{font-size:20px;margin-left:10px}.contentIn>div{padding:10px}.contentIn .arangoicon{font-size:25px;position:relative;top:-3px!important}.index-button-bar{margin-top:15px}.index-button-bar button{margin-left:0}.docsFirstCol,.docsSecCol,.docsThirdCol{border:0!important}.docsFirstCol{height:26px;width:80%}.docsSecCol{min-width:400px!important;width:10%}.add-filter-item{margin-left:5px}.add-filter-item i{margin-top:0!important}.upload-indicator{display:none;margin-top:-3px;padding-right:10px}.documentsDropdown .dropdownImport,.documentsDropdown .headerDropdown{margin-bottom:5px}.documents-size{float:right;border-radius:2px;background-color:#fff!important;border:1px solid #eee;box-shadow:none;height:28px;line-height:18px;margin-right:-2px;margin-left:10px;margin-top:0;width:115px;outline:transparent 0}.queryline .fa-info-circle:hover{cursor:pointer}.ace_error{background:0 0!important}#exportHeader .fa-exclamation-circle{color:#fff;font-size:13pt;margin-right:10px}.totalDocuments:hover{color:#000}.ajax-file-upload-statusbar{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid rgba(0,0,0,.7);margin:10px 10px 5px 5px;padding:5px;width:420px}.ajax-file-upload-filename{color:grey;height:auto;margin:0 5px 5px 10px;width:100%}.ajax-file-upload-progress{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;border:1px solid #d9d9d9;display:inline-block;margin:0 10px 5px;padding:1px;position:relative;width:250px}.ajax-file-upload-bar{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-color:rgba(0,0,0,.7);color:#fff;height:20px;width:0}.ajax-file-upload-percent{display:inline-block;left:48%;position:absolute;top:3px}.ajax-file-upload-red{font-size:13px;font-weight:400;margin-right:5px;padding:4px 15px;vertical-align:top}.ajax-file-upload{display:inline-block;font-size:16px;font-weight:700;height:25px;margin:0 10px 10px 0;padding:6px 10px 4px}.ajax-upload-dragdrop{border:1px dotted #8f8d8c;color:#736b68;padding:10px 10px 0;text-align:left;vertical-align:middle;width:506px}.ajax-upload-dragdrop span{position:relative;top:-22px}div.demo-dropdown-menu{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;background-color:#686766;margin-bottom:5px;margin-left:5px;position:absolute;top:32px;width:222px;z-index:100}#flightQuerySelect.query-select{height:25px;margin-top:6px;font-size:13px;line-height:1.1em}#demo-mapdiv{position:relative}#demo-mapdiv-info{position:absolute;right:20px;width:225px;height:150px;bottom:20px;border:1.5px solid #222;border-radius:3px;background-color:rgba(255,255,255,.75);padding:6px 6px 3px;font-size:11px;line-height:1.3em}.amcharts-balloon-div{line-height:1.1em} \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/style-minified.css.gz index 20f61649f7766cebaa8fed7e86f5c6d4731ec8ca..cd7d08e3f1cbb8a7cba7d86227aca4ccac5f3210 100644 GIT binary patch delta 22332 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 U%Lu&bdnBO$0kfn1T~mkx08mX1VE_OC delta 22208 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%0DO3R@FU9)4t`!;$=vG<8q7FHUW@pvcUo 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 Me@p^mUnz$I02A*J^8f$< diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/style.css b/js/apps/system/_admin/aardvark/APP/frontend/build/style.css index 3a8d08ead4b8..690c2345c09e 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/style.css +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/style.css @@ -4,6 +4,7 @@ $c-lightgreen-2-bg: #e4ecd9;; $c-lightgreen-transp-bg: rgba(222, 233, 207, 0.8); $c-lightgreen-2-transp-bg: rgba(228, 236, 217, 0.8); */ +/*$c-content-border: rgba(104, 103, 102, 0.1);*/ body { /*background: #DEE8D0 !important;*/ background: #F5F8F0 !important; @@ -2483,7 +2484,8 @@ div .tile, div .bigtile { box-shadow: none; background-color: #fff; border-radius: 3px; - border: 1px solid rgba(104, 103, 102, 0.1); + /*border: 1px solid $c-content-border;*/ + border: 1px solid #F5F8F0; font-size: 14px; list-style: none; margin-bottom: 13px; @@ -2571,6 +2573,18 @@ div .tile, div .bigtile { margin-right: 5px; margin-top: 16px; width: 70px; } + div .tile div.fullBorderBox, div .bigtile div.fullBorderBox { + border: 1px solid rgba(140, 138, 137, 0.25); + border-radius: 3px; + height: 100%; + position: absolute; + width: 100%; } + div .tile div.borderBox, div .bigtile div.borderBox { + border: 1px solid rgba(140, 138, 137, 0.25); + border-radius: 3px; + height: 75px; + position: absolute; + width: 224px; } div .tile div.iconSet, div .bigtile div.iconSet { position: absolute; right: 5px; @@ -4769,7 +4783,7 @@ input.search-input { div.headerBar { background-color: #fff; border-radius: 3px; - border: 1px solid rgba(104, 103, 102, 0.1); + border: 1px solid rgba(140, 138, 137, 0.25); color: #fff; font-size: 16px; height: 36px; @@ -6890,7 +6904,7 @@ input.gv-radio-button { position: absolute; width: 160px; } .application-detail-view section.info .header div.header-icon-container img.icon { - border: 1px solid rgba(104, 103, 102, 0.1); + border: 1px solid rgba(140, 138, 137, 0.25); border-radius: 3px; height: auto; max-height: 160px; @@ -6943,7 +6957,7 @@ input.gv-radio-button { margin: 0; font-size: 1em; } .application-detail-view section.info .swagger iframe { - border: 1px solid rgba(104, 103, 102, 0.1); + border: 1px solid rgba(140, 138, 137, 0.25); border-radius: 3px; height: 600px; width: 100%; } @@ -6953,7 +6967,7 @@ input.gv-radio-button { padding: 1em 2em; } .application-detail-view aside.meta { background-color: #fff; - border: 1px solid rgba(104, 103, 102, 0.1); + border: 1px solid rgba(140, 138, 137, 0.25); border-radius: 3px; clear: right; float: left; diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/style.css.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/style.css.gz index 7b282b6075d47d2fa7674c5ca3b5ea04268b58a0..7c3cd2de85df8bae45673281d858c3d4151f1c4b 100644 GIT binary patch delta 39060 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 delta 38921 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

>Zj>BfO|I`e1ilO2ALj1ftL3#zdBGA&o%w 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 diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/templates/applicationsView.ejs b/js/apps/system/_admin/aardvark/APP/frontend/js/templates/applicationsView.ejs index bd2756d4dad1..17600eb7f7b1 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/templates/applicationsView.ejs +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/templates/applicationsView.ejs @@ -47,6 +47,7 @@

diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/templates/collectionsItemView.ejs b/js/apps/system/_admin/aardvark/APP/frontend/js/templates/collectionsItemView.ejs index 631bad3af149..fbccc27138e7 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/templates/collectionsItemView.ejs +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/templates/collectionsItemView.ejs @@ -1,4 +1,5 @@ ",rE:!0,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},{cN:"tag",b:"",c:[{cN:"title",b:"[^ />]+"},c]}]}}(hljs),hljs.LANGUAGES.json=function(a){var b={literal:"true false null"},c=[a.QSM,a.CNM],d={cN:"value",e:",",eW:!0,eE:!0,c:c,k:b},e={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:!0,eE:!0,c:[a.BE],i:"\\n",starts:d}],i:"\\S"},f={b:"\\[",e:"\\]",c:[a.inherit(d,{cN:null})],i:"\\S"};return c.splice(c.length,0,e,f),{c:c,k:b,i:"\\S"}}(hljs),!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;"undefined"!=typeof window?b=window:"undefined"!=typeof global?b=global:"undefined"!=typeof self&&(b=self),b.Joi=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;ge;++e){var g=this._inner.matches[e],i=g.schema;if(!i){var j=g.is._validate(g.ref(b.parent,c),null,c,b.parent).errors;if(i=j?g.otherwise:g.then,!i)continue}var k=i._validate(a,b,c);if(!k.errors)return k;d=d.concat(k.errors)}return{errors:d.length?d:h.create("alternatives.base",null,b,c)}},i.Alternatives.prototype["try"]=function(){var a=d.flatten(Array.prototype.slice.call(arguments));d.assert(a.length,"Cannot add other alternatives without at least one schema");for(var b=this.clone(),c=0,e=a.length;e>c;++c){var g=f.schema(a[c]);g._refs.length&&(b._refs=b._refs.concat(g._refs)),b._inner.matches.push({schema:g})}return b},i.Alternatives.prototype.when=function(a,b){d.assert(g.isRef(a)||"string"==typeof a,"Invalid reference:",a),d.assert(b,"Missing options"),d.assert("object"==typeof b,"Invalid options"),d.assert(b.hasOwnProperty("is"),'Missing "is" directive'),d.assert(void 0!==b.then||void 0!==b.otherwise,'options must have at least one of "then" or "otherwise"');var c=this.clone(),e={ref:f.ref(a),is:f.schema(b.is),then:void 0!==b.then?f.schema(b.then):void 0,otherwise:void 0!==b.otherwise?f.schema(b.otherwise):void 0};return g.push(c._refs,e.ref),c._refs=c._refs.concat(e.is._refs),e.then&&e.then._refs&&(c._refs=c._refs.concat(e.then._refs)),e.otherwise&&e.otherwise._refs&&(c._refs=c._refs.concat(e.otherwise._refs)),c._inner.matches.push(e),c},i.Alternatives.prototype.describe=function(){for(var a=[],b=0,c=this._inner.matches.length;c>b;++b){var d=this._inner.matches[b];if(d.schema)a.push(d.schema.describe());else{var e={ref:d.ref.toString(),is:d.is.describe()};d.then&&(e.then=d.then.describe()),d.otherwise&&(e.otherwise=d.otherwise.describe()),a.push(e)}}return a},b.exports=new i.Alternatives},{"./any":2,"./cast":6,"./errors":8,"./ref":14,hoek:16}],2:[function(a,b,c){(function(c){var d=(a("path"),a("hoek")),e=a("./ref"),f=a("./errors"),g=null,h=null,i={};i.defaults={abortEarly:!0,convert:!0,allowUnknown:!1,skipFunctions:!1,stripUnknown:!1,language:{}},b.exports=i.Any=function(){this.isJoi=!0,this._type="any",this._settings=null,this._valids=new i.Set,this._invalids=new i.Set,this._tests=[],this._refs=[],this._flags={},this._description=null,this._unit=null,this._notes=[],this._tags=[],this._examples=[],this._meta=[],this._inner={}},i.Any.prototype.isImmutable=!0,i.Any.prototype.clone=function(){var a={};a.__proto__=Object.getPrototypeOf(this),a.isJoi=!0,a._type=this._type,a._settings=i.concatSettings(this._settings),a._valids=d.clone(this._valids),a._invalids=d.clone(this._invalids),a._tests=this._tests.slice(),a._refs=this._refs.slice(),a._flags=d.clone(this._flags),a._description=this._description,a._unit=this._unit,a._notes=this._notes.slice(),a._tags=this._tags.slice(),a._examples=this._examples.slice(),a._meta=this._meta.slice(),a._inner={};for(var b=Object.keys(this._inner),c=0,e=b.length;e>c;++c){var f=b[c];a._inner[f]=this._inner[f]?this._inner[f].slice():null}return a},i.Any.prototype.concat=function(a){d.assert(a&&a.isJoi,"Invalid schema object"),d.assert("any"===a._type||a._type===this._type,"Cannot merge with another type:",a._type);var b=this.clone();b._settings=b._settings?i.concatSettings(b._settings,a._settings):a._settings,b._valids.merge(a._valids,a._invalids),b._invalids.merge(a._invalids,a._valids),b._tests=b._tests.concat(a._tests),b._refs=b._refs.concat(a._refs),d.merge(b._flags,a._flags),b._description=a._description||b._description,b._unit=a._unit||b._unit,b._notes=b._notes.concat(a._notes),b._tags=b._tags.concat(a._tags),b._examples=b._examples.concat(a._examples),b._meta=b._meta.concat(a._meta);for(var c=Object.keys(a._inner),e=0,f=c.length;f>e;++e){var g=c[e];a._inner[g]&&(b._inner[g]=b._inner[g]?b._inner[g].concat(a._inner[g]):a._inner[g].slice())}return b},i.Any.prototype._test=function(a,b,c){d.assert(!this._flags.allowOnly,"Cannot define rules when valid values specified");var e=this.clone();return e._tests.push({func:c,name:a,arg:b}),e},i.Any.prototype.options=function(a){d.assert(!a.context,"Cannot override context");var b=this.clone();return b._settings=i.concatSettings(b._settings,a),b},i.Any.prototype.strict=function(){var a=this.clone();return a._settings=a._settings||{},a._settings.convert=!1,a},i.Any.prototype._allow=function(){for(var a=d.flatten(Array.prototype.slice.call(arguments)),b=0,c=a.length;c>b;++b){var e=a[b];this._invalids.remove(e),this._valids.add(e,this._refs)}},i.Any.prototype.allow=function(){var a=this.clone();return a._allow.apply(a,arguments),a},i.Any.prototype.valid=i.Any.prototype.equal=function(){d.assert(!this._tests.length,"Cannot set valid values when rules specified");var a=this.allow.apply(this,arguments);return a._flags.allowOnly=!0,a},i.Any.prototype.invalid=i.Any.prototype.not=function(a){for(var b=this.clone(),c=d.flatten(Array.prototype.slice.call(arguments)),e=0,f=c.length;f>e;++e){var a=c[e];b._valids.remove(a),b._invalids.add(a,this._refs)}return b},i.Any.prototype.required=i.Any.prototype.exist=function(){var a=this.clone();return a._flags.presence="required",a},i.Any.prototype.optional=function(){var a=this.clone();return delete a._flags.presence,a},i.Any.prototype["default"]=function(a){var b=this.clone();return b._flags["default"]=a,e.push(b._refs,a),b},i.Any.prototype.forbidden=function(){var a=this.clone();return a._flags.presence="forbidden",a},i.Any.prototype.when=function(b,c){d.assert(c&&"object"==typeof c,"Invalid options"),d.assert(void 0!==c.then||void 0!==c.otherwise,'options must have at least one of "then" or "otherwise"'),h=h||a("./cast");var e=c.then?this.concat(h.schema(c.then)):this,f=c.otherwise?this.concat(h.schema(c.otherwise)):this;g=g||a("./alternatives");var i=g.when(b,{is:c.is,then:e,otherwise:f});return i._flags.presence="ignore",i},i.Any.prototype.description=function(a){d.assert(a&&"string"==typeof a,"Description must be a non-empty string");var b=this.clone();return b._description=a,b},i.Any.prototype.notes=function(a){d.assert(a&&("string"==typeof a||Array.isArray(a)),"Notes must be a non-empty string or array");var b=this.clone();return b._notes=b._notes.concat(a),b},i.Any.prototype.tags=function(a){d.assert(a&&("string"==typeof a||Array.isArray(a)),"Tags must be a non-empty string or array");var b=this.clone();return b._tags=b._tags.concat(a),b},i.Any.prototype.meta=function(a){d.assert(void 0!==a,"Meta cannot be undefined");var b=this.clone();return b._meta=b._meta.concat(a),b},i.Any.prototype.example=function(a){d.assert(arguments.length,"Missing example");var b=this._validate(a,null,i.defaults);d.assert(!b.errors,"Bad example:",b.errors&&f.process(b.errors,a));var c=this.clone();return c._examples=c._examples.concat(a),c},i.Any.prototype.unit=function(a){d.assert(a&&"string"==typeof a,"Unit name must be a non-empty string");var b=this.clone();return b._unit=a,b},i.Any.prototype._validate=function(a,b,c,d){var g=this;b=b||{key:"",path:"",parent:null,reference:d},this._settings&&(c=i.concatSettings(c,this._settings));var h=[],j=function(){return{value:void 0!==a?a:e.isRef(g._flags["default"])?g._flags["default"](b.parent,c):g._flags["default"],errors:h.length?h:null}};if(this._flags.presence){if("required"===this._flags.presence&&void 0===a)return h.push(f.create("any.required",null,b,c)),j();if("forbidden"===this._flags.presence)return void 0===a?j():(h.push(f.create("any.unknown",null,b,c)),j())}else if(void 0===a)return j();if(this._valids.has(a,b,c,this._flags.insensitive))return j();if(this._invalids.has(a,b,c,this._flags.insensitive)&&(h.push(f.create(""===a?"any.empty":"any.invalid",null,b,c)),c.abortEarly||void 0===a))return j();if(this._base){var k=this._base.call(this,a,b,c);if(k.errors)return a=k.value,h=h.concat(k.errors),j();if(k.value!==a){if(a=k.value,this._valids.has(a,b,c,this._flags.insensitive))return j();if(this._invalids.has(a,b,c,this._flags.insensitive)&&(h.push(f.create("any.invalid",null,b,c)),c.abortEarly))return j()}}if(this._flags.allowOnly&&(h.push(f.create("any.allowOnly",{valids:this._valids.toString(!1)},b,c)),c.abortEarly))return j();for(var l=0,m=this._tests.length;m>l;++l){var n=this._tests[l],o=n.func.call(this,a,b,c);if(o&&(h.push(o),c.abortEarly))return j()}return j()},i.Any.prototype._validateWithOptions=function(a,b,c){var d=i.concatSettings(i.defaults,b),e=this._validate(a,null,d),g=f.process(e.errors,a);return c?c(g,e.value):{error:g,value:e.value}},i.Any.prototype.validate=function(a,b){var c=this._validate(a,null,i.defaults),d=f.process(c.errors,a);return b?b(d,c.value):{error:d,value:c.value}},i.Any.prototype.describe=function(){var a={type:this._type};Object.keys(this._flags).length&&(a.flags=this._flags),this._description&&(a.description=this._description),this._notes.length&&(a.notes=this._notes),this._tags.length&&(a.tags=this._tags),this._meta.length&&(a.meta=this._meta),this._examples.length&&(a.examples=this._examples),this._unit&&(a.unit=this._unit);var b=this._valids.values();b.length&&(a.valids=b);var c=this._invalids.values();c.length&&(a.invalids=c),a.rules=[];for(var d=0,e=this._tests.length;e>d;++d){var f=this._tests[d],g={name:f.name};f.arg&&(g.arg=f.arg),a.rules.push(g)}return a.rules.length||delete a.rules,a},i.Set=function(){this._set=[]},i.Set.prototype.add=function(a,b){d.assert(null===a||void 0===a||a instanceof Date||c.isBuffer(a)||e.isRef(a)||"function"!=typeof a&&"object"!=typeof a,"Value cannot be an object or function"),"function"!=typeof a&&this.has(a,null,null,!1)||(e.push(b,a),this._set.push(a))},i.Set.prototype.merge=function(a,b){for(var c=0,d=a._set.length;d>c;++c)this.add(a._set[c]);for(c=0,d=b._set.length;d>c;++c)this.remove(b._set[c])},i.Set.prototype.remove=function(a){this._set=this._set.filter(function(b){return a!==b})},i.Set.prototype.has=function(a,b,d,f){for(var g=0,h=this._set.length;h>g;++g){var i=this._set[g];if(e.isRef(i)&&(i=i(b.reference||b.parent,d)),typeof a==typeof i&&(a===i||a instanceof Date&&i instanceof Date&&a.getTime()===i.getTime()||f&&"string"==typeof a&&a.toLowerCase()===i.toLowerCase()||c.isBuffer(a)&&c.isBuffer(i)&&a.length===i.length&&a.toString("binary")===i.toString("binary")))return!0}return!1},i.Set.prototype.values=function(){return this._set.slice()},i.Set.prototype.toString=function(a){for(var b="",c=0,d=this._set.length;d>c;++c){var e=this._set[c];(void 0!==e||a)&&(b+=(b?", ":"")+i.stringify(e))}return b},i.stringify=function(a){return void 0===a?"undefined":null===a?"null":"string"==typeof a?a:a.toString()},i.concatSettings=function(a,b){if(!a&&!b)return null;var c={};if(a)for(var e=Object.keys(a),f=0,g=e.length;g>f;++f){var h=e[f];c[h]=a[h]}if(b)for(var i=Object.keys(b),j=0,k=i.length;k>j;++j){var h=i[j];"language"===h&&c.hasOwnProperty(h)?c[h]=d.applyToDefaults(c[h],b[h]):c[h]=b[h]}return c}}).call(this,a("buffer").Buffer)},{"./alternatives":1,"./cast":6,"./errors":8,"./ref":14,buffer:24,hoek:16,path:28}],3:[function(a,b,c){var d=a("./any"),e=a("./cast"),f=a("./errors"),g=a("hoek"),h={};h.Array=function(){d.call(this),this._type="array",this._inner.inclusions=[],this._inner.exclusions=[]},g.inherits(h.Array,d),h.Array.prototype._base=function(a,b,c){var d={value:a};if("string"==typeof a&&c.convert)try{var e=JSON.parse(a);Array.isArray(e)&&(d.value=e)}catch(g){}if(!Array.isArray(d.value))return d.errors=f.create("array.base",null,b,c),d;if(this._inner.inclusions.length||this._inner.exclusions.length)for(var h=0,i=d.value.length;i>h;++h){for(var j=d.value[h],k=!1,l={key:h,path:(b.path?b.path+".":"")+h,parent:d.value,reference:b.reference},m=0,n=this._inner.exclusions.length;n>m;++m){var o=this._inner.exclusions[m]._validate(j,l,{});if(!o.errors)return d.errors=f.create("array.excludes",{pos:h},{key:b.key,path:l.path},c),d}for(m=0,n=this._inner.inclusions.length;n>m;++m){var o=this._inner.inclusions[m]._validate(j,l,c);if(!o.errors){d.value[h]=o.value,k=!0;break}if(1===n)return d.errors=f.create("array.includesOne",{pos:h,reason:o.errors},{key:b.key,path:l.path},c),d}if(this._inner.inclusions.length&&!k)return d.errors=f.create("array.includes",{pos:h},{key:b.key,path:l.path},c),d}return d},h.Array.prototype.describe=function(){var a=d.prototype.describe.call(this);if(this._inner.inclusions.length){a.includes=[];for(var b=0,c=this._inner.inclusions.length;c>b;++b)a.includes.push(this._inner.inclusions[b].describe())}if(this._inner.exclusions.length){a.excludes=[];for(var b=0,c=this._inner.exclusions.length;c>b;++b)a.excludes.push(this._inner.exclusions[b].describe())}return a},h.Array.prototype.includes=function(){var a=g.flatten(Array.prototype.slice.call(arguments)).map(function(a){return e.schema(a)}),b=this.clone();return b._inner.inclusions=b._inner.inclusions.concat(a),b},h.Array.prototype.excludes=function(){var a=g.flatten(Array.prototype.slice.call(arguments)).map(function(a){return e.schema(a)}),b=this.clone();return b._inner.exclusions=b._inner.exclusions.concat(a),b},h.Array.prototype.min=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return b.length>=a?null:f.create("array.min",{limit:a},c,d)})},h.Array.prototype.max=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return b.length<=a?null:f.create("array.max",{limit:a},c,d)})},h.Array.prototype.length=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return b.length===a?null:f.create("array.length",{limit:a},c,d)})},b.exports=new h.Array},{"./any":2,"./cast":6,"./errors":8,hoek:16}],4:[function(a,b,c){(function(c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Binary=function(){d.call(this),this._type="binary"},f.inherits(g.Binary,d),g.Binary.prototype._base=function(a,b,d){var f={value:a};if("string"==typeof a&&d.convert)try{var g=new c(a,this._flags.encoding);f.value=g}catch(h){}return f.errors=c.isBuffer(f.value)?null:e.create("binary.base",null,b,d),f},g.Binary.prototype.encoding=function(a){f.assert(c.isEncoding(a),"Invalid encoding:",a);var b=this.clone();return b._flags.encoding=a,b},g.Binary.prototype.min=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return b.length>=a?null:e.create("binary.min",{limit:a},c,d)})},g.Binary.prototype.max=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return b.length<=a?null:e.create("binary.max",{limit:a},c,d)})},g.Binary.prototype.length=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return b.length===a?null:e.create("binary.length",{limit:a},c,d)})},b.exports=new g.Binary}).call(this,a("buffer").Buffer)},{"./any":2,"./errors":8,buffer:24,hoek:16}],5:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Boolean=function(){d.call(this),this._type="boolean"},f.inherits(g.Boolean,d),g.Boolean.prototype._base=function(a,b,c){var d={value:a};if("string"==typeof a&&c.convert){var f=a.toLowerCase();d.value="true"===f||"yes"===f||"on"===f?!0:"false"===f||"no"===f||"off"===f?!1:a}return d.errors="boolean"==typeof d.value?null:e.create("boolean.base",null,b,c),d},b.exports=new g.Boolean},{"./any":2,"./errors":8,hoek:16}],6:[function(a,b,c){var d=a("hoek"),e=a("./ref"),f={any:null,date:a("./date"),string:a("./string"),number:a("./number"),"boolean":a("./boolean"),alt:null,object:null};c.schema=function(b){return f.any=f.any||new(a("./any")),f.alt=f.alt||a("./alternatives"),f.object=f.object||a("./object"),b&&"object"==typeof b?b.isJoi?b:Array.isArray(b)?f.alt["try"](b):b instanceof RegExp?f.string.regex(b):b instanceof Date?f.date.valid(b):f.object.keys(b):"string"==typeof b?f.string.valid(b):"number"==typeof b?f.number.valid(b):"boolean"==typeof b?f["boolean"].valid(b):e.isRef(b)?f.any.valid(b):(d.assert(null===b,"Invalid schema content:",b),f.any.valid(null))},c.ref=function(a){return e.isRef(a)?a:e.create(a)}},{"./alternatives":1,"./any":2,"./boolean":5,"./date":7,"./number":12,"./object":13,"./ref":14,"./string":15,hoek:16}],7:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Date=function(){d.call(this),this._type="date"},f.inherits(g.Date,d),g.Date.prototype._base=function(a,b,c){var d={value:c.convert&&g.toDate(a)||a};return d.errors=d.value instanceof Date&&!isNaN(d.value.getTime())?null:e.create("date.base",null,b,c),d},g.toDate=function(a){if(a instanceof Date)return a;if("string"==typeof a||f.isInteger(a)){"string"==typeof a&&/^\d+$/.test(a)&&(a=parseInt(a,10));var b=new Date(a);if(!isNaN(b.getTime()))return b}return null},g.Date.prototype.min=function(a){return a=g.toDate(a),f.assert(a,"Invalid date format"),this._test("min",a,function(b,c,d){return b.getTime()>=a.getTime()?null:e.create("date.min",{limit:a},c,d)})},g.Date.prototype.max=function(a){return a=g.toDate(a),f.assert(a,"Invalid date format"),this._test("max",a,function(b,c,d){return b.getTime()<=a.getTime()?null:e.create("date.max",{limit:a},c,d)})},b.exports=new g.Date},{"./any":2,"./errors":8,hoek:16}],8:[function(a,b,c){var d=a("hoek"),e=a("./language"),f={};f.Err=function(a,b,c,d){this.type=a,this.context=b||{},this.context.key=c.key,this.path=c.path,this.options=d},f.Err.prototype.toString=function(){var a=this,b=this.options.language;this.context.key=this.context.key||b.root||e.errors.root;var c=d.reach(b,this.type)||d.reach(e.errors,this.type),f=/\{\{\!?key\}\}/.test(c);c=f?c:"{{!key}} "+c;var g=c.replace(/\{\{(\!?)([^}]+)\}\}/g,function(b,c,e){var f=d.reach(a.context,e),g=Array.isArray(f)?f.join(", "):f.toString();return c?d.escapeHtml(g):g});return g},c.create=function(a,b,c,d){return new f.Err(a,b,c,d)},c.process=function(a,b){if(!a||!a.length)return null;for(var c=[],d=0,e=a.length;e>d;++d){var g=a[d];c.push({message:g.toString(),path:g.path||g.context.key,type:g.type})}var h="";c.forEach(function(a){h+=(h?". ":"")+a.message});var i=new Error(h);return i.name="ValidationError",i.details=c,i._object=b,i.annotate=f.annotate,i},f.annotate=function(){for(var a=d.clone(this._object||{}),b={},c=this.details.length,e=c-1;e>=0;--e)for(var f=c-e,g=this.details[e],h=g.path.split("."),i=a,j=0,k=h.length;k>j&&i;++j){var l=h[j];if(k>j+1)i=i[l];else{var m=i[l];if(void 0!==m){delete i[l];var n=l+"_$key$_"+f+"_$end$_";i[n]=m,b[g.path]=n}else if(b[g.path]){var o=b[g.path],p=o.replace("_$end$_",", "+f+"_$end$_");i[p]=i[o],b[g.path]=p,delete i[o]}else i["_$miss$_"+l+"|"+f+"_$end$_"]="__missing__"}}var q=JSON.stringify(a,null,2);q=q.replace(/_\$key\$_([, \d]+)_\$end\$_\"/g,function(a,b){return'" ['+b+"]"});var r=q.replace(/\"_\$miss\$_([^\|]+)\|(\d+)_\$end\$_\"\: \"__missing__\"/g,function(a,b,c){return'"'+b+'" ['+c+"]: -- missing --"});for(r+="\n",e=0;c>e;++e)r+="\n["+(e+1)+"] "+this.details[e].message;return r+=""}},{"./language":11,hoek:16}],9:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Function=function(){d.call(this),this._type="func"},f.inherits(g.Function,d),g.Function.prototype._base=function(a,b,c){return{value:a,errors:"function"==typeof a?null:e.create("function.base",null,b,c)}},b.exports=new g.Function},{"./any":2,"./errors":8,hoek:16}],10:[function(a,b,c){var d=(a("hoek"),a("./any")),e=a("./cast"),f=a("./ref"),g={alternatives:a("./alternatives"),array:a("./array"),"boolean":a("./boolean"),binary:a("./binary"),date:a("./date"),func:a("./function"),number:a("./number"),object:a("./object"),string:a("./string")};g.root=function(){var a=new d,b=a.clone();return b.any=function(){return a},b.alternatives=b.alt=function(){return arguments.length?g.alternatives["try"].apply(g.alternatives,arguments):g.alternatives},b.array=function(){return g.array},b["boolean"]=b.bool=function(){return g["boolean"]},b.binary=function(){return g.binary},b.date=function(){return g.date},b.func=function(){return g.func},b.number=function(){return g.number},b.object=function(){return arguments.length?g.object.keys.apply(g.object,arguments):g.object},b.string=function(){return g.string},b.ref=function(){return f.create.apply(null,arguments)},b.isRef=function(a){return f.isRef(a)},b.validate=function(b){var c=arguments[arguments.length-1],d="function"==typeof c?c:null,f=arguments.length-(d?1:0);if(1===f)return a.validate(b,d);var g=3===f?arguments[2]:{},h=e.schema(arguments[1]);return h._validateWithOptions(b,g,d)},b.describe=function(){var b=arguments.length?e.schema(arguments[0]):a;return b.describe()},b.compile=function(a){return e.schema(a)},b.assert=function(a,c){var d=b.validate(a,c).error;if(d)throw new Error(d.annotate())},b},b.exports=g.root()},{"./alternatives":1,"./any":2,"./array":3,"./binary":4,"./boolean":5,"./cast":6,"./date":7,"./function":9,"./number":12,"./object":13,"./ref":14,"./string":15,hoek:16}],11:[function(a,b,c){c.errors={root:"value",any:{unknown:"is not allowed",invalid:"contains an invalid value",empty:"is not allowed to be empty",required:"is required",allowOnly:"must be one of {{valids}}"},alternatives:{base:"not matching any of the allowed alternatives"},array:{base:"must be an array",includes:"position {{pos}} does not match any of the allowed types",includesOne:"position {{pos}} fails because {{reason}}",excludes:"position {{pos}} contains an excluded value",min:"must contain at least {{limit}} items",max:"must contain less than or equal to {{limit}} items",length:"must contain {{limit}} items"},"boolean":{base:"must be a boolean"},binary:{base:"must be a buffer or a string",min:"must be at least {{limit}} bytes",max:"must be less than or equal to {{limit}} bytes",length:"must be {{limit}} bytes"},date:{base:"must be a number of milliseconds or valid date string",min:"must be larger than or equal to {{limit}}",max:"must be less than or equal to {{limit}}"},"function":{base:"must be a Function"},object:{base:"must be an object",min:"must have at least {{limit}} children",max:"must have less than or equal to {{limit}} children",length:"must have {{limit}} children",allowUnknown:"is not allowed","with":"missing required peer {{peer}}",without:"conflict with forbidden peer {{peer}}",missing:"must contain at least one of {{peers}}",xor:"contains a conflict between exclusive peers {{peers}}",or:"must contain at least one of {{peers}}",and:"contains {{present}} without its required peers {{missing}}",assert:"validation failed because {{ref}} failed to {{message}}",rename:{multiple:"cannot rename child {{from}} because multiple renames are disabled and another key was already renamed to {{to}}",override:"cannot rename child {{from}} because override is disabled and target {{to}} exists"}},number:{base:"must be a number",min:"must be larger than or equal to {{limit}}",max:"must be less than or equal to {{limit}}","float":"must be a float or double",integer:"must be an integer",negative:"must be a negative number",positive:"must be a positive number"},string:{base:"must be a string",min:"length must be at least {{limit}} characters long",max:"length must be less than or equal to {{limit}} characters long",length:"length must be {{limit}} characters long",alphanum:"must only contain alpha-numeric characters",token:"must only contain alpha-numeric and underscore characters",regex:"fails to match the required pattern",email:"must be a valid email",isoDate:"must be a valid ISO 8601 date",guid:"must be a valid GUID",hostname:"must be a valid hostname",lowercase:"must only contain lowercase characters",uppercase:"must only contain uppercase characters",trim:"must not have leading or trailing whitespace"}}},{}],12:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Number=function(){d.call(this),this._type="number"},f.inherits(g.Number,d),g.Number.prototype._base=function(a,b,c){var d={errors:null,value:a};if("string"==typeof a&&c.convert){ -var f=parseFloat(a);d.value=isNaN(f)||!isFinite(a)?NaN:f}return d.errors="number"!=typeof d.value||isNaN(d.value)?e.create("number.base",null,b,c):null,d},g.Number.prototype.min=function(a){return f.assert(f.isInteger(a),"limit must be an integer"),this._test("min",a,function(b,c,d){return b>=a?null:e.create("number.min",{limit:a},c,d)})},g.Number.prototype.max=function(a){return f.assert(f.isInteger(a),"limit must be an integer"),this._test("max",a,function(b,c,d){return a>=b?null:e.create("number.max",{limit:a},c,d)})},g.Number.prototype.integer=function(){return this._test("integer",void 0,function(a,b,c){return f.isInteger(a)?null:e.create("number.integer",null,b,c)})},g.Number.prototype.negative=function(){return this._test("negative",void 0,function(a,b,c){return 0>a?null:e.create("number.negative",null,b,c)})},g.Number.prototype.positive=function(){return this._test("positive",void 0,function(a,b,c){return a>0?null:e.create("number.positive",null,b,c)})},b.exports=new g.Number},{"./any":2,"./errors":8,hoek:16}],13:[function(a,b,c){var d=a("hoek"),e=a("topo"),f=a("./any"),g=a("./cast"),h=(a("./ref"),a("./errors")),i={};i.Object=function(){f.call(this),this._type="object",this._inner.children=null,this._inner.renames=[],this._inner.dependencies=[],this._inner.patterns=[]},d.inherits(i.Object,f),i.Object.prototype._base=function(a,b,c){var e=a,f=[],g=function(){return{value:e,errors:f.length?f:null}};if("string"==typeof a&&c.convert)try{a=JSON.parse(a)}catch(j){}if(!a||"object"!=typeof a||Array.isArray(a))return f.push(h.create("object.base",null,b,c)),g();if(e===a){e={},e.__proto__=Object.getPrototypeOf(a);for(var k=Object.keys(a),l=0,m=k.length;m>l;++l)e[k[l]]=a[k[l]]}else e=a;for(var n={},o=0,p=this._inner.renames.length;p>o;++o){var q=this._inner.renames[o];if(void 0!==e[q.from]){if(!q.options.multiple&&n[q.to]&&(f.push(h.create("object.rename.multiple",{from:q.from,to:q.to},b,c)),c.abortEarly))return g();if(e.hasOwnProperty(q.to)&&!q.options.override&&!n[q.to]&&(f.push(h.create("object.rename.override",{from:q.from,to:q.to},b,c)),c.abortEarly))return g();e[q.to]=e[q.from],n[q.to]=!0,q.options.alias||delete e[q.from]}}for(var r=0,s=this._inner.dependencies.length;s>r;++r){var t=this._inner.dependencies[r],j=i[t.type](null!==t.key&&a[t.key],t.peers,e,{key:t.key,path:(b.path?b.path+".":"")+t.key},c);if(j&&(f.push(j),c.abortEarly))return g()}if(!this._inner.children&&!this._inner.patterns.length)return g();var u,v=d.mapToObject(Object.keys(e));if(this._inner.children)for(var w=0,x=this._inner.children.length;x>w;++w){var y=this._inner.children[w],u=y.key,q=e[u];delete v[u];var z={key:u,path:(b.path?b.path+".":"")+u,parent:e,reference:b.reference},A=y.schema._validate(q,z,c);if(A.errors&&(f=f.concat(A.errors),c.abortEarly))return g();void 0!==A.value&&(e[u]=A.value)}var B=Object.keys(v);if(B.length&&this._inner.patterns.length){for(w=0,x=B.length;x>w;++w)for(var u=B[w],C=0,D=this._inner.patterns.length;D>C;++C){var E=this._inner.patterns[C];if(E.regex.test(u)){delete v[u];var q=e[u],z={key:u,path:(b.path?b.path+".":"")+u,parent:e,reference:b.reference},A=E.rule._validate(q,z,c);if(A.errors&&(f=f.concat(A.errors),c.abortEarly))return g();void 0!==A.value&&(e[u]=A.value)}}B=Object.keys(v)}if(B.length){if(c.stripUnknown||c.skipFunctions){for(var F=!1,G=0,H=B.length;H>G;++G)u=B[G],c.stripUnknown?delete e[u]:"function"==typeof e[u]&&(delete v[u],F=!0);if(c.stripUnknown)return g();F&&(B=Object.keys(v))}if(B.length&&(void 0!==this._flags.allowUnknown?!this._flags.allowUnknown:!c.allowUnknown))for(var I=0,J=B.length;J>I;++I)f.push(h.create("object.allowUnknown",null,{key:B[I],path:b.path},c))}return g()},i.Object.prototype.keys=function(a){d.assert(null===a||void 0===a||"object"==typeof a,"Object schema must be a valid object"),d.assert(!a||!a.isJoi,"Object schema cannot be a joi schema");var b=this.clone();if(!a)return b._inner.children=null,b;var c=Object.keys(a);if(!c.length)return b._inner.children=[],b;var f=new e;if(b._inner.children)for(var h=0,i=b._inner.children.length;i>h;++h){var j=b._inner.children[h];f.add(j,{after:j._refs,group:j.key})}for(var k=0,l=c.length;l>k;++k){var m=c[k],j=a[m],n=g.schema(j);f.add({key:m,schema:n},{after:n._refs,group:m})}return b._inner.children=f.nodes,b},i.Object.prototype.unknown=function(a){var b=this.clone();return b._flags.allowUnknown=a!==!1,b},i.Object.prototype.length=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return Object.keys(b).length===a?null:h.create("object.length",{limit:a},c,d)})},i.Object.prototype.min=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return Object.keys(b).length>=a?null:h.create("object.min",{limit:a},c,d)})},i.Object.prototype.max=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return Object.keys(b).length<=a?null:h.create("object.max",{limit:a},c,d)})},i.Object.prototype.pattern=function(a,b){d.assert(a instanceof RegExp,"Invalid regular expression"),d.assert(void 0!==b,"Invalid rule");var c=this.clone();return c._inner.patterns.push({regex:a,rule:g.schema(b)}),c},i.Object.prototype["with"]=function(a,b){return this._dependency("with",a,b)},i.Object.prototype.without=function(a,b){return this._dependency("without",a,b)},i.Object.prototype.xor=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("xor",null,a)},i.Object.prototype.or=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("or",null,a)},i.Object.prototype.and=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("and",null,a)},i.renameDefaults={alias:!1,multiple:!1,override:!1},i.Object.prototype.rename=function(a,b,c){d.assert("string"==typeof a,"Rename missing the from argument"),d.assert("string"==typeof b,"Rename missing the to argument"),d.assert(b!==a,"Cannot rename key to same name:",a);for(var e=0,f=this._inner.renames.length;f>e;++e)d.assert(this._inner.renames[e].from!==a,"Cannot rename the same key multiple times");var g=this.clone();return g._inner.renames.push({from:a,to:b,options:d.applyToDefaults(i.renameDefaults,c||{})}),g},i.Object.prototype._dependency=function(a,b,c){c=[].concat(c);for(var e=0,f=c.length;f>e;e++)d.assert("string"==typeof c[e],a,"peers must be a string or array of strings");var g=this.clone();return g._inner.dependencies.push({type:a,key:b,peers:c}),g},i["with"]=function(a,b,c,d,e){if(void 0===a)return null;for(var f=0,g=b.length;g>f;++f){var i=b[f];if(!c.hasOwnProperty(i)||void 0===c[i])return h.create("object.with",{peer:i},d,e)}return null},i.without=function(a,b,c,d,e){if(void 0===a)return null;for(var f=0,g=b.length;g>f;++f){var i=b[f];if(c.hasOwnProperty(i)&&void 0!==c[i])return h.create("object.without",{peer:i},d,e)}return null},i.xor=function(a,b,c,d,e){for(var f=[],g=0,i=b.length;i>g;++g){var j=b[g];c.hasOwnProperty(j)&&void 0!==c[j]&&f.push(j)}return 1===f.length?null:0===f.length?h.create("object.missing",{peers:b},d,e):h.create("object.xor",{peers:b},d,e)},i.or=function(a,b,c,d,e){for(var f=0,g=b.length;g>f;++f){var i=b[f];if(c.hasOwnProperty(i)&&void 0!==c[i])return null}return h.create("object.missing",{peers:b},d,e)},i.and=function(a,b,c,d,e){for(var f=[],g=[],i=b.length,j=0;i>j;++j){var k=b[j];c.hasOwnProperty(k)&&void 0!==c[k]?g.push(k):f.push(k)}var l=f.length===i||g.length===i;return l?null:h.create("object.and",{present:g,missing:f},d,e)},i.Object.prototype.describe=function(a){var b=f.prototype.describe.call(this);if(this._inner.children&&!a){b.children={};for(var c=0,e=this._inner.children.length;e>c;++c){var g=this._inner.children[c];b.children[g.key]=g.schema.describe()}}return this._inner.dependencies.length&&(b.dependencies=d.clone(this._inner.dependencies)),b},i.Object.prototype.assert=function(a,b,c){a=g.ref(a),d.assert(a.isContext||a.depth>1,"Cannot use assertions for root level references - use direct key rules instead");var e=g.schema(b);return this._test("assert",{cast:e,ref:a},function(b,d,f){var g=e._validate(a(b),null,f,b);return g.errors?h.create("object.assert",{ref:a.path.join("."),message:c},d,f):null})},b.exports=new i.Object},{"./any":2,"./cast":6,"./errors":8,"./ref":14,hoek:16,topo:21}],14:[function(a,b,c){var d=a("hoek");c.create=function(a,b){d.assert("string"==typeof a,"Invalid reference key:",a);var c=d.clone(b),e=function(a,b){return d.reach(e.isContext?b.context:a,e.key,c)};return e.isContext=a[0]===(c&&c.contextPrefix||"$"),e.key=e.isContext?a.slice(1):a,e.path=e.key.split(c&&c.separator||"."),e.depth=e.path.length,e.root=e.path[0],e.isJoi=!0,e.toString=function(){return(e.isContext?"context:":"ref:")+e.key},e},c.isRef=function(a){return"function"==typeof a&&a.isJoi},c.push=function(a,b){c.isRef(b)&&!b.isContext&&a.push(b.root)}},{hoek:16}],15:[function(a,b,c){(function(c){var d=a("net"),e=a("hoek"),f=a("isemail"),g=a("./any"),h=a("./errors"),i={};i.String=function(){g.call(this),this._type="string",this._invalids.add("")},e.inherits(i.String,g),i.String.prototype._base=function(a,b,c){return"string"==typeof a&&c.convert&&(this._flags["case"]&&(a="upper"===this._flags["case"]?a.toLocaleUpperCase():a.toLocaleLowerCase()),this._flags.trim&&(a=a.trim())),{value:a,errors:"string"==typeof a?null:h.create("string.base",null,b,c)}},i.String.prototype.insensitive=function(){var a=this.clone();return a._flags.insensitive=!0,a},i.String.prototype.min=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("min",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return g>=a?null:h.create("string.min",{limit:a},e,f)})},i.String.prototype.max=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("max",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return a>=g?null:h.create("string.max",{limit:a},e,f)})},i.String.prototype.length=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("length",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return g===a?null:h.create("string.length",{limit:a},e,f)})},i.String.prototype.regex=function(a){return e.assert(a instanceof RegExp,"pattern must be a RegExp"),this._test("regex",a,function(b,c,d){return a.test(b)?null:h.create("string.regex",null,c,d)})},i.String.prototype.alphanum=function(){return this._test("alphanum",void 0,function(a,b,c){return/^[a-zA-Z0-9]+$/.test(a)?null:h.create("string.alphanum",null,b,c)})},i.String.prototype.token=function(){return this._test("token",void 0,function(a,b,c){return/^\w+$/.test(a)?null:h.create("string.token",null,b,c)})},i.String.prototype.email=function(){return this._test("email",void 0,function(a,b,c){return f(a)?null:h.create("string.email",null,b,c)})},i.String.prototype.isoDate=function(){var a=/^(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))$/;return this._test("isoDate",void 0,function(b,c,d){return a.test(b)?null:h.create("string.isoDate",null,c,d)})},i.String.prototype.guid=function(){var a=/^[A-F0-9]{8}(?:-?[A-F0-9]{4}){3}-?[A-F0-9]{12}$/i,b=/^\{[A-F0-9]{8}(?:-?[A-F0-9]{4}){3}-?[A-F0-9]{12}\}$/i;return this._test("guid",void 0,function(c,d,e){return a.test(c)||b.test(c)?null:h.create("string.guid",null,d,e)})},i.String.prototype.hostname=function(){var a=/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$/;return this._test("hostname",void 0,function(b,c,e){return b.length<=255&&a.test(b)||d.isIPv6(b)?null:h.create("string.hostname",null,c,e)})},i.String.prototype.lowercase=function(){var a=this._test("lowercase",void 0,function(a,b,c){return c.convert||a===a.toLocaleLowerCase()?null:h.create("string.lowercase",null,b,c)});return a._flags["case"]="lower",a},i.String.prototype.uppercase=function(a){var b=this._test("uppercase",void 0,function(a,b,c){return c.convert||a===a.toLocaleUpperCase()?null:h.create("string.uppercase",null,b,c)});return b._flags["case"]="upper",b},i.String.prototype.trim=function(){var a=this._test("trim",void 0,function(a,b,c){return c.convert||a===a.trim()?null:h.create("string.trim",null,b,c)});return a._flags.trim=!0,a},b.exports=new i.String}).call(this,a("buffer").Buffer)},{"./any":2,"./errors":8,buffer:24,hoek:16,isemail:19,net:23}],16:[function(a,b,c){b.exports=a("./lib")},{"./lib":18}],17:[function(a,b,c){(function(a){var b={};c.escapeJavaScript=function(a){if(!a)return"";for(var c="",d=0,e=a.length;e>d;++d){var f=a.charCodeAt(d);c+=b.isSafe(f)?a[d]:b.escapeJavaScriptChar(f)}return c},c.escapeHtml=function(a){if(!a)return"";for(var c="",d=0,e=a.length;e>d;++d){var f=a.charCodeAt(d);c+=b.isSafe(f)?a[d]:b.escapeHtmlChar(f)}return c},b.escapeJavaScriptChar=function(c){if(c>=256)return"\\u"+b.padLeft(""+c,4);var d=new a(String.fromCharCode(c),"ascii").toString("hex");return"\\x"+b.padLeft(d,2)},b.escapeHtmlChar=function(c){var d=b.namedHtml[c];if("undefined"!=typeof d)return d;if(c>=256)return"&#"+c+";";var e=new a(String.fromCharCode(c),"ascii").toString("hex");return"&#x"+b.padLeft(e,2)+";"},b.padLeft=function(a,b){for(;a.lengthb;++b)(b>=97||b>=65&&90>=b||b>=48&&57>=b||32===b||46===b||44===b||45===b||58===b||95===b)&&(a[b]=null);return a}()}).call(this,a("buffer").Buffer)},{buffer:24}],18:[function(a,b,c){(function(b,d){var e=a("path"),f=a("util"),g=a("./escape"),h={};c.clone=function(a,b){if("object"!=typeof a||null===a)return a;b=b||{orig:[],copy:[]};var e=b.orig.indexOf(a);if(-1!==e)return b.copy[e];var f,g=!1;if(Array.isArray(a))f=[],g=!0;else if(d.isBuffer(a))f=new d(a);else if(a instanceof Date)f=new Date(a.getTime());else if(a instanceof RegExp)f=new RegExp(a);else{var h=Object.getPrototypeOf(a);!h||h.isImmutable?f=a:(f={},f.__proto__=h,g=!0)}if(b.orig.push(a),b.copy.push(f),g)for(var i in a)a.hasOwnProperty(i)&&(f[i]=c.clone(a[i],b));return f},c.merge=function(a,b,e,f){if(c.assert(a&&"object"==typeof a,"Invalid target value: must be an object"),c.assert(null===b||void 0===b||"object"==typeof b,"Invalid source value: must be null, undefined, or an object"),!b)return a;if(Array.isArray(b)){c.assert(Array.isArray(a),"Cannot merge array onto an object"),f===!1&&(a.length=0);for(var g=0,h=b.length;h>g;++g)a.push(c.clone(b[g]));return a}for(var i=Object.keys(b),j=0,k=i.length;k>j;++j){var l=i[j],m=b[l];m&&"object"==typeof m?!a[l]||"object"!=typeof a[l]||Array.isArray(a[l])^Array.isArray(m)||m instanceof Date||d.isBuffer(m)||m instanceof RegExp?a[l]=c.clone(m):c.merge(a[l],m,e,f):null!==m&&void 0!==m?a[l]=m:e!==!1&&(a[l]=m)}return a},c.applyToDefaults=function(a,b){if(c.assert(a&&"object"==typeof a,"Invalid defaults value: must be an object"),c.assert(!b||b===!0||"object"==typeof b,"Invalid options value: must be true, falsy or an object"),!b)return null;var d=c.clone(a);return b===!0?d:c.merge(d,b,!1,!1)},c.cloneWithShallow=function(a,b){return a&&"object"==typeof a?h.shallow(a,b,function(){return c.clone(a)}):a},c.applyToDefaultsWithShallow=function(a,b,d){return h.shallow(b,d,function(){return c.applyToDefaults(a,b)})},h.shallow=function(a,b,c){for(var d={},e=0,f=b.length;f>e;++e){var g=b[e];a.hasOwnProperty(g)&&(d[g]=a[g],a[g]=void 0)}var h=c();for(e=0;f>e;++e){var g=b[e];d.hasOwnProperty(g)&&(a[g]=d[g],h[g]=d[g])}return h},c.unique=function(a,b){for(var c={},d=[],e=0,f=a.length;f>e;++e){var g=b?a[e][b]:a[e];c[g]!==!0&&(d.push(a[e]),c[g]=!0)}return d},c.mapToObject=function(a,b){if(!a)return null;for(var c={},d=0,e=a.length;e>d;++d)b?a[d][b]&&(c[a[d][b]]=!0):c[a[d]]=!0;return c},c.intersect=function(a,b,d){if(!a||!b)return[];for(var e=[],f=Array.isArray(a)?c.mapToObject(a):a,g={},h=0,i=b.length;i>h;++h)if(f[b[h]]&&!g[b[h]]){if(d)return b[h];e.push(b[h]),g[b[h]]=!0}return d?null:e},c.flatten=function(a,b){for(var d=b||[],e=0,f=a.length;f>e;++e)Array.isArray(a[e])?c.flatten(a[e],d):d.push(a[e]);return d},c.reach=function(a,b,d){d=d||{},"string"==typeof d&&(d={separator:d});for(var e=b.split(d.separator||"."),f=a,g=0,h=e.length;h>g;++g){if(!f||!f.hasOwnProperty(e[g])||"object"!=typeof f&&d.functions===!1){c.assert(!d.strict||g+1===h,"Missing segment",e[g],"in reach path ",b),c.assert("object"==typeof f||d.functions===!0||"function"!=typeof f,"Invalid segment",e[g],"in reach path ",b),f=d["default"]||void 0;break}f=f[e[g]]}return f},c.formatStack=function(a){for(var b=[],c=0,d=a.length;d>c;++c){var e=a[c];b.push([e.getFileName(),e.getLineNumber(),e.getColumnNumber(),e.getFunctionName(),e.isConstructor()])}return b},c.formatTrace=function(a){for(var b=[],c=0,d=a.length;d>c;++c){var e=a[c];b.push((e[4]?"new ":"")+e[3]+" ("+e[0]+":"+e[1]+":"+e[2]+")")}return b},c.callStack=function(a){var b=Error.prepareStackTrace;Error.prepareStackTrace=function(a,b){return b};var d={};Error.captureStackTrace(d,arguments.callee);var e=d.stack;Error.prepareStackTrace=b;var f=c.formatStack(e);return a?f.slice(a):f},c.displayStack=function(a){var b=c.callStack(void 0===a?1:a+1);return c.formatTrace(b)},c.abortThrow=!1,c.abort=function(a,d){if("test"===b.env.NODE_ENV||c.abortThrow===!0)throw new Error(a||"Unknown error");var e="";d||(e=c.displayStack(1).join("\n ")),console.log("ABORT: "+a+"\n "+e),b.exit(1)},c.assert=function(a){if(!a){for(var b=[],c=1,d=arguments.length;d>c;++c)b.push(arguments[c]);throw b=b.map(function(a){return"string"==typeof a?a:a instanceof Error?a.message:JSON.stringify(a)}),new Error(b.join(" ")||"Unknown error")}},c.Timer=function(){this.ts=0,this.reset()},c.Timer.prototype.reset=function(){this.ts=Date.now()},c.Timer.prototype.elapsed=function(){return Date.now()-this.ts},c.Bench=function(){this.ts=0,this.reset()},c.Bench.prototype.reset=function(){this.ts=c.Bench.now()},c.Bench.prototype.elapsed=function(){return c.Bench.now()-this.ts},c.Bench.now=function(){var a=b.hrtime();return 1e3*a[0]+a[1]/1e6},c.escapeRegex=function(a){return a.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")},c.base64urlEncode=function(a,b){var c=d.isBuffer(a)?a:new d(a,b||"binary");return c.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")},c.base64urlDecode=function(a,b){if(a&&!/^[\w\-]*$/.test(a))return new Error("Invalid character");try{var c=new d(a,"base64");return"buffer"===b?c:c.toString(b||"binary")}catch(e){return e}},c.escapeHeaderAttribute=function(a){return c.assert(/^[ \w\!#\$%&'\(\)\*\+,\-\.\/\:;<\=>\?@\[\]\^`\{\|\}~\"\\]*$/.test(a),"Bad attribute value ("+a+")"),a.replace(/\\/g,"\\\\").replace(/\"/g,'\\"')},c.escapeHtml=function(a){return g.escapeHtml(a)},c.escapeJavaScript=function(a){return g.escapeJavaScript(a)},c.nextTick=function(a){return function(){var c=arguments;b.nextTick(function(){a.apply(null,c)})}},c.once=function(a){if(a._hoekOnce)return a;var b=!1,c=function(){b||(b=!0,a.apply(null,arguments))};return c._hoekOnce=!0,c},c.isAbsolutePath=function(a,c){return a?e.isAbsolute?e.isAbsolute(a):(c=c||b.platform,"win32"!==c?"/"===a[0]:!!/^(?:[a-zA-Z]:[\\\/])|(?:[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/])/.test(a)):!1},c.isInteger=function(a){return"number"==typeof a&&parseFloat(a)===parseInt(a,10)&&!isNaN(a)},c.ignore=function(){},c.inherits=f.inherits,c.transform=function(a,b,d){c.assert(null==a||"object"==typeof a,"Invalid source object: must be null, undefined, or an object");for(var e={},f=Object.keys(b),g=0,h=f.length;h>g;++g){var i=f[g],j=i.split("."),k=b[i];c.assert("string"==typeof k,'All mappings must be "." delineated strings');for(var l,m=e;j.length>1;)l=j.shift(),m[l]||(m[l]={}),m=m[l];l=j.shift(),m[l]=c.reach(a,k,d)}return e}}).call(this,a("_process"),a("buffer").Buffer)},{"./escape":17,_process:29,buffer:24,path:28,util:31}],19:[function(a,b,c){b.exports=a("./lib/isemail")},{"./lib/isemail":20}],20:[function(a,b,c){(function(c){function d(a){for(var b=-(1/0),c=0,d=a.length;d>c;c++)a[c]>b&&(b=a[c]);return b}function e(b,e,ta){function ua(){if(!Pa&&d(xa)=48&&57>=a&&xa.push(p)}for(var b={},c=0;ce&&(e=l),e=wa?e:ja>e,ta&&ta(e),e}"function"==typeof e&&(ta=e,e={}),e||(e={});var va,wa;"number"==typeof e.errorLevel?(wa=!0,va=e.errorLevel):(wa=!!e.errorLevel,va=l);var xa=[l],ya={now:ka,prev:ka,stack:[ka]},za="",Aa="",Ba=0,Ca={},Da={};Ca[ka]="",Ca[la]="",Da[ka]=[""],Da[la]=[""];for(var Ea=0,Fa=0,Ga=!1,Ha=!1,Ia=0,Ja=0;Ja64?xa.push(E):(ya.prev===na||ya.prev===oa)&&xa.push(B),ya.now=la,ya.stack=[la],Ea=0,Fa=0,Ha=!1;break;default:if(Ha)switch(ya.prev){case na:case oa:xa.push(T);break;case pa:xa.push(U);break;default:throw new Error("more atext found where none is allowed, but unrecognized prev context: "+ya.prev)}else ya.prev=ya.now,Ba=za.charCodeAt(0),(33>Ba||Ba>126||10===Ba||~ra.indexOf(za))&&xa.push(X),Ca[ka]+=za,Da[ka][Ea]+=za,Fa++}break;case la:switch(za){case"(":0===Fa?xa.push(0===Ea?B:z):(xa.push(t),Ha=!0),ya.stack.push(ya.now),ya.now=na;break;case".":0===Fa?xa.push(0===Ea?_:S):Ga?xa.push(ca):Fa>63&&xa.push(G),Ha=!1,Fa=0,Ea++,Da[la][Ea]="",Ca[la]+=za;break;case"[":0===Ca[la].length?(Ha=!0,Fa++,ya.stack.push(ya.now),ya.now=ma,Ca[la]+=za,Da[la][Ea]+=za,Ca[ma]=""):xa.push(X);break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}0===Fa?xa.push(0===Ea?B:w):(xa.push(u),Ha=!0),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ha)switch(ya.prev){case na:case oa:xa.push(T);break;case ma:xa.push(V);break;default:throw new Error("more atext found where none is allowed, but unrecognized prev context: "+ya.prev)}Ba=za.charCodeAt(0),Ga=!1,33>Ba||Ba>126||~ra.indexOf(za)?xa.push(X):"-"===za?(0===Fa&&xa.push(ba),Ga=!0):Ba>47&&58>Ba||Ba>64&&91>Ba||Ba>96&&123>Ba||xa.push(C),Ca[la]+=za,Da[la][Ea]+=za,Fa++}break;case ma:switch(za){case"]":if(d(xa)La?xa.push(M):Ka.length===La&&xa.push(s)):Ka.length!==La&&xa.push(J),":"===Oa[0]&&":"!==Oa[1]?xa.push(N):":"===Oa[Oa.length-1]&&":"!==Oa[Oa.length-2]?xa.push(O):Ka.every(g)?xa.push(r):xa.push(L)}}else xa.push(H);Ca[la]+=za,Da[la][Ea]+=za,Fa++,ya.prev=ya.now,ya.now=ya.stack.pop();break;case"\\":xa.push(I),ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ba=za.charCodeAt(0),Ba>127||0===Ba||"["===za){xa.push(P);break}(33>Ba||127===Ba)&&xa.push(I),Ca[ma]+=za,Ca[la]+=za,Da[la][Ea]+=za,Fa++}break;case pa:switch(za){case"\\":ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}Ca[ka]+=" ",Da[ka][Ea]+=" ",Fa++,xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;case'"':Ca[ka]+=za,Da[ka][Ea]+=za,Fa++,ya.prev=ya.now,ya.now=ya.stack.pop();break;default:Ba=za.charCodeAt(0),Ba>127||0===Ba||10===Ba?xa.push(Y):(32>Ba||127===Ba)&&xa.push(x),Ca[ka]+=za,Da[ka][Ea]+=za,Fa++}break;case qa:switch(Ba=za.charCodeAt(0),Ba>127?xa.push(W):(31>Ba&&9!==Ba||127===Ba)&&xa.push(y),ya.prev=ya.now,ya.now=ya.stack.pop(),za="\\"+za,ya.now){case na:break;case pa:Ca[ka]+=za,Da[ka][Ea]+=za,Fa+=2;break;case ma:Ca[la]+=za,Da[la][Ea]+=za,Fa+=2;break;default:throw new Error("quoted pair logic invoked in an invalid context: "+ya.now)}break;case na:switch(za){case"(":ya.stack.push(ya.now),ya.now=na;break;case")":ya.prev=ya.now,ya.now=ya.stack.pop();break;case"\\":ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ba=za.charCodeAt(0),Ba>127||0===Ba||10===Ba){xa.push(Z);break}(32>Ba||127===Ba)&&xa.push(A)}break;case oa:if("\r"===Aa){if("\r"===za){xa.push(ga);break}++Ia>1?xa.push(w):Ia=1}switch(za){case"\r":(++Ja===b.length||"\n"!==b[Ja])&&xa.push(ia);break;case" ":case" ":break;default:"\r"===Aa&&xa.push(ha),Ia=0,ya.prev=ya.now,ya.now=ya.stack.pop(),Ja--}Aa=za;break;default:throw new Error("unknown context: "+ya.now)}if(d(xa)>k)break}d(xa)255?xa.push(F):Ca[ka].length+Ca[la].length+1>254?xa.push(D):Fa>63&&xa.push(G));var Pa=!1;if(e.checkDNS&&d(xa)[]:;@\\,."',sa=/\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ta=/^[a-fA-F\d]{0,4}$/;window.hasOwnProperty("TEST_BUILD")||(g=ta.test.bind(ta)),b.exports=e}).call(this,a("_process"))},{_process:29,dns:23}],21:[function(a,b,c){arguments[4][16][0].apply(c,arguments)},{"./lib":22}],22:[function(a,b,c){var d=a("hoek"),e={};c=b.exports=e.Topo=function(){this._items=[],this.nodes=[]},e.Topo.prototype.add=function(a,b){var c=this;b=b||{};var e=[].concat(b.before||[]),f=[].concat(b.after||[]),g=b.group||"?";d.assert(-1===e.indexOf(g),"Item cannot come before itself:",g),d.assert(-1===e.indexOf("?"),"Item cannot come before unassociated items"),d.assert(-1===f.indexOf(g),"Item cannot come after itself:",g),d.assert(-1===f.indexOf("?"),"Item cannot come after unassociated items"),[].concat(a).forEach(function(a,b){var d={seq:c._items.length,before:e,after:f,group:g,node:a};c._items.push(d)});var h=this._sort();return d.assert(!h,"item","?"!==g?"added into group "+g:"","created a dependencies error"),this.nodes},e.Topo.prototype._sort=function(){for(var a={},b={},c={},d=0,e=this._items.length;e>d;++d){var f=this._items[d],g=f.seq,h=f.group;a[h]=a[h]||[],a[h].push(g),b[g]=[f.before];for(var i=f.after,j=0,k=i.length;k>j;++j)c[i[j]]=(c[i[j]]||[]).concat(g)}var l=Object.keys(b);for(d=0,e=l.length;e>d;++d){var m=l[d],n=[],o=Object.keys(b[m]);for(j=0,k=o.length;k>j;++j){var h=b[m][o[j]];a[h]=a[h]||[],a[h].forEach(function(a){n.push(a)})}b[m]=n}var p=Object.keys(c);for(d=0,e=p.length;e>d;++d){var h=p[d];if(a[h])for(j=0,k=a[h].length;k>j;++j){var m=a[h][j];b[m]=b[m].concat(c[h])}}var q={};for(l=Object.keys(b),d=0,e=l.length;e>d;++d){var m=l[d],r=b[m];for(j=0,k=r.length;k>j;++j)q[r[j]]=(q[r[j]]||[]).concat(m)}var s={},t=[];for(d=0,e=this._items.length;e>d;++d){var u=d;if(q[d])for(u=null,j=0,k=this._items.length;k>j;++j)if(s[j]!==!0){q[j]||(q[j]=[]);for(var v=q[j].length,w=0,x=0,y=v;y>x;++x)t.indexOf(q[j][x])>=0&&++w;if(w===v){u=j;break}}null!==u&&(u=u.toString(),s[u]=!0,t.push(u))}if(t.length!==this._items.length)return new Error("Invalid dependencies");var z={};this._items.forEach(function(a){z[a.seq]=a});var A=[];this._items=t.map(function(a){var b=z[a];return A.push(b.node),b}),this.nodes=A}},{hoek:16}],23:[function(a,b,c){},{}],24:[function(a,b,c){function d(a,b,c){if(!(this instanceof d))return new d(a,b,c);var e,f=typeof a;if("number"===f)e=a>0?a>>>0:0;else if("string"===f)"base64"===b&&(a=C(a)),e=d.byteLength(a,b);else{if("object"!==f||null===a)throw new Error("First argument needs to be a number, array or string.");"Buffer"===a.type&&E(a.data)&&(a=a.data),e=+a.length>0?Math.floor(+a.length):0}var g;T?g=d._augment(new Uint8Array(e)):(g=this,g.length=e,g._isBuffer=!0);var h;if(T&&"number"==typeof a.byteLength)g._set(a);else if(F(a))if(d.isBuffer(a))for(h=0;e>h;h++)g[h]=a.readUInt8(h);else for(h=0;e>h;h++)g[h]=(a[h]%256+256)%256;else if("string"===f)g.write(a,0,b);else if("number"===f&&!T&&!c)for(h=0;e>h;h++)g[h]=0;return g}function e(a,b,c,d){c=Number(c)||0;var e=a.length-c;d?(d=Number(d),d>e&&(d=e)):d=e;var f=b.length;Q(f%2===0,"Invalid hex string"),d>f/2&&(d=f/2);for(var g=0;d>g;g++){var h=parseInt(b.substr(2*g,2),16);Q(!isNaN(h),"Invalid hex string"),a[c+g]=h}return g}function f(a,b,c,d){var e=L(H(b),a,c,d);return e}function g(a,b,c,d){var e=L(I(b),a,c,d);return e}function h(a,b,c,d){return g(a,b,c,d)}function i(a,b,c,d){var e=L(K(b),a,c,d);return e}function j(a,b,c,d){var e=L(J(b),a,c,d);return e}function k(a,b,c){return 0===b&&c===a.length?R.fromByteArray(a):R.fromByteArray(a.slice(b,c))}function l(a,b,c){var d="",e="";c=Math.min(a.length,c);for(var f=b;c>f;f++)a[f]<=127?(d+=M(e)+String.fromCharCode(a[f]),e=""):e+="%"+a[f].toString(16);return d+M(e)}function m(a,b,c){var d="";c=Math.min(a.length,c);for(var e=b;c>e;e++)d+=String.fromCharCode(a[e]);return d}function n(a,b,c){return m(a,b,c)}function o(a,b,c){var d=a.length;(!b||0>b)&&(b=0),(!c||0>c||c>d)&&(c=d);for(var e="",f=b;c>f;f++)e+=G(a[f]);return e}function p(a,b,c){for(var d=a.slice(b,c),e="",f=0;f=e)){var f;return c?(f=a[b],e>b+1&&(f|=a[b+1]<<8)):(f=a[b]<<8,e>b+1&&(f|=a[b+1])),f}}function r(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+3=e)){var f;return c?(e>b+2&&(f=a[b+2]<<16),e>b+1&&(f|=a[b+1]<<8),f|=a[b],e>b+3&&(f+=a[b+3]<<24>>>0)):(e>b+1&&(f=a[b+1]<<16),e>b+2&&(f|=a[b+2]<<8),e>b+3&&(f|=a[b+3]),f+=a[b]<<24>>>0),f}}function s(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+1=e)){var f=q(a,b,c,!0),g=32768&f;return g?-1*(65535-f+1):f}}function t(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+3=e)){var f=r(a,b,c,!0),g=2147483648&f;return g?-1*(4294967295-f+1):f; -}}function u(a,b,c,d){return d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(b+3=f)){for(var g=0,h=Math.min(f-c,2);h>g;g++)a[c+g]=(b&255<<8*(d?g:1-g))>>>8*(d?g:1-g);return c+2}}function x(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f)){for(var g=0,h=Math.min(f-c,4);h>g;g++)a[c+g]=b>>>8*(d?g:3-g)&255;return c+4}}function y(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+1=f))return b>=0?w(a,b,c,d,e):w(a,65535+b+1,c,d,e),c+2}function z(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f))return b>=0?x(a,b,c,d,e):x(a,4294967295+b+1,c,d,e),c+4}function A(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f))return S.write(a,b,c,d,23,4),c+4}function B(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+7=f))return S.write(a,b,c,d,52,8),c+8}function C(a){for(a=D(a).replace(V,"");a.length%4!==0;)a+="=";return a}function D(a){return a.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function E(a){return(Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)})(a)}function F(a){return E(a)||d.isBuffer(a)||a&&"object"==typeof a&&"number"==typeof a.length}function G(a){return 16>a?"0"+a.toString(16):a.toString(16)}function H(a){for(var b=[],c=0;c=d)b.push(d);else{var e=c;d>=55296&&57343>=d&&c++;for(var f=encodeURIComponent(a.slice(e,c+1)).substr(1).split("%"),g=0;g>8,d=b%256,e.push(d),e.push(c);return e}function K(a){return R.toByteArray(a)}function L(a,b,c,d){for(var e=0;d>e&&!(e+c>=b.length||e>=a.length);e++)b[e+c]=a[e];return e}function M(a){try{return decodeURIComponent(a)}catch(b){return String.fromCharCode(65533)}}function N(a,b){Q("number"==typeof a,"cannot write a non-number as a number"),Q(a>=0,"specified a negative value for writing an unsigned value"),Q(b>=a,"value is larger than maximum value for type"),Q(Math.floor(a)===a,"value has a fractional component")}function O(a,b,c){Q("number"==typeof a,"cannot write a non-number as a number"),Q(b>=a,"value larger than maximum allowed value"),Q(a>=c,"value smaller than minimum allowed value"),Q(Math.floor(a)===a,"value has a fractional component")}function P(a,b,c){Q("number"==typeof a,"cannot write a non-number as a number"),Q(b>=a,"value larger than maximum allowed value"),Q(a>=c,"value smaller than minimum allowed value")}function Q(a,b){if(!a)throw new Error(b||"Failed assertion")}var R=a("base64-js"),S=a("ieee754");c.Buffer=d,c.SlowBuffer=d,c.INSPECT_MAX_BYTES=50,d.poolSize=8192;var T=function(){try{var a=new ArrayBuffer(0),b=new Uint8Array(a);return b.foo=function(){return 42},42===b.foo()&&"function"==typeof b.subarray&&0===new Uint8Array(1).subarray(1,1).byteLength}catch(c){return!1}}();d.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},d.isBuffer=function(a){return!(null==a||!a._isBuffer)},d.byteLength=function(a,b){var c;switch(a=a.toString(),b||"utf8"){case"hex":c=a.length/2;break;case"utf8":case"utf-8":c=H(a).length;break;case"ascii":case"binary":case"raw":c=a.length;break;case"base64":c=K(a).length;break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":c=2*a.length;break;default:throw new Error("Unknown encoding")}return c},d.concat=function(a,b){if(Q(E(a),"Usage: Buffer.concat(list[, length])"),0===a.length)return new d(0);if(1===a.length)return a[0];var c;if(void 0===b)for(b=0,c=0;cf&&a[f]===b[f];f++);return f!==g&&(c=a[f],e=b[f]),e>c?-1:c>e?1:0},d.prototype.write=function(a,b,c,d){if(isFinite(b))isFinite(c)||(d=c,c=void 0);else{var k=d;d=b,b=c,c=k}b=Number(b)||0;var l=this.length-b;c?(c=Number(c),c>l&&(c=l)):c=l,d=String(d||"utf8").toLowerCase();var m;switch(d){case"hex":m=e(this,a,b,c);break;case"utf8":case"utf-8":m=f(this,a,b,c);break;case"ascii":m=g(this,a,b,c);break;case"binary":m=h(this,a,b,c);break;case"base64":m=i(this,a,b,c);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":m=j(this,a,b,c);break;default:throw new Error("Unknown encoding")}return m},d.prototype.toString=function(a,b,c){var d=this;if(a=String(a||"utf8").toLowerCase(),b=Number(b)||0,c=void 0===c?d.length:Number(c),c===b)return"";var e;switch(a){case"hex":e=o(d,b,c);break;case"utf8":case"utf-8":e=l(d,b,c);break;case"ascii":e=m(d,b,c);break;case"binary":e=n(d,b,c);break;case"base64":e=k(d,b,c);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":e=p(d,b,c);break;default:throw new Error("Unknown encoding")}return e},d.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},d.prototype.equals=function(a){return Q(d.isBuffer(a),"Argument must be a Buffer"),0===d.compare(this,a)},d.prototype.compare=function(a){return Q(d.isBuffer(a),"Argument must be a Buffer"),d.compare(this,a)},d.prototype.copy=function(a,b,c,d){var e=this;if(c||(c=0),d||0===d||(d=this.length),b||(b=0),d!==c&&0!==a.length&&0!==e.length){Q(d>=c,"sourceEnd < sourceStart"),Q(b>=0&&b=0&&c=0&&d<=e.length,"sourceEnd out of bounds"),d>this.length&&(d=this.length),a.length-bf||!T)for(var g=0;f>g;g++)a[g+b]=this[g+c];else a._set(this.subarray(c,c+f),b)}},d.prototype.slice=function(a,b){var c=this.length;if(a=~~a,b=void 0===b?c:~~b,0>a?(a+=c,0>a&&(a=0)):a>c&&(a=c),0>b?(b+=c,0>b&&(b=0)):b>c&&(b=c),a>b&&(b=a),T)return d._augment(this.subarray(a,b));for(var e=b-a,f=new d(e,void 0,!0),g=0;e>g;g++)f[g]=this[g+a];return f},d.prototype.get=function(a){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(a)},d.prototype.set=function(a,b){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(a,b)},d.prototype.readUInt8=function(a,b){return b||(Q(void 0!==a&&null!==a,"missing offset"),Q(a=this.length?void 0:this[a]},d.prototype.readUInt16LE=function(a,b){return q(this,a,!0,b)},d.prototype.readUInt16BE=function(a,b){return q(this,a,!1,b)},d.prototype.readUInt32LE=function(a,b){return r(this,a,!0,b)},d.prototype.readUInt32BE=function(a,b){return r(this,a,!1,b)},d.prototype.readInt8=function(a,b){if(b||(Q(void 0!==a&&null!==a,"missing offset"),Q(a=this.length)){var c=128&this[a];return c?-1*(255-this[a]+1):this[a]}},d.prototype.readInt16LE=function(a,b){return s(this,a,!0,b)},d.prototype.readInt16BE=function(a,b){return s(this,a,!1,b)},d.prototype.readInt32LE=function(a,b){return t(this,a,!0,b)},d.prototype.readInt32BE=function(a,b){return t(this,a,!1,b)},d.prototype.readFloatLE=function(a,b){return u(this,a,!0,b)},d.prototype.readFloatBE=function(a,b){return u(this,a,!1,b)},d.prototype.readDoubleLE=function(a,b){return v(this,a,!0,b)},d.prototype.readDoubleBE=function(a,b){return v(this,a,!1,b)},d.prototype.writeUInt8=function(a,b,c){return c||(Q(void 0!==a&&null!==a,"missing value"),Q(void 0!==b&&null!==b,"missing offset"),Q(b=this.length?void 0:(this[b]=a,b+1)},d.prototype.writeUInt16LE=function(a,b,c){return w(this,a,b,!0,c)},d.prototype.writeUInt16BE=function(a,b,c){return w(this,a,b,!1,c)},d.prototype.writeUInt32LE=function(a,b,c){return x(this,a,b,!0,c)},d.prototype.writeUInt32BE=function(a,b,c){return x(this,a,b,!1,c)},d.prototype.writeInt8=function(a,b,c){return c||(Q(void 0!==a&&null!==a,"missing value"),Q(void 0!==b&&null!==b,"missing offset"),Q(b=this.length?void 0:(a>=0?this.writeUInt8(a,b,c):this.writeUInt8(255+a+1,b,c),b+1)},d.prototype.writeInt16LE=function(a,b,c){return y(this,a,b,!0,c)},d.prototype.writeInt16BE=function(a,b,c){return y(this,a,b,!1,c)},d.prototype.writeInt32LE=function(a,b,c){return z(this,a,b,!0,c)},d.prototype.writeInt32BE=function(a,b,c){return z(this,a,b,!1,c)},d.prototype.writeFloatLE=function(a,b,c){return A(this,a,b,!0,c)},d.prototype.writeFloatBE=function(a,b,c){return A(this,a,b,!1,c)},d.prototype.writeDoubleLE=function(a,b,c){return B(this,a,b,!0,c)},d.prototype.writeDoubleBE=function(a,b,c){return B(this,a,b,!1,c)},d.prototype.fill=function(a,b,c){if(a||(a=0),b||(b=0),c||(c=this.length),Q(c>=b,"end < start"),c!==b&&0!==this.length){Q(b>=0&&b=0&&c<=this.length,"end out of bounds");var d;if("number"==typeof a)for(d=b;c>d;d++)this[d]=a;else{var e=H(a.toString()),f=e.length;for(d=b;c>d;d++)this[d]=e[d%f]}return this}},d.prototype.inspect=function(){for(var a=[],b=this.length,d=0;b>d;d++)if(a[d]=G(this[d]),d===c.INSPECT_MAX_BYTES){a[d+1]="...";break}return""},d.prototype.toArrayBuffer=function(){if("undefined"!=typeof Uint8Array){if(T)return new d(this).buffer;for(var a=new Uint8Array(this.length),b=0,c=a.length;c>b;b+=1)a[b]=this[b];return a.buffer}throw new Error("Buffer.toArrayBuffer not supported in this browser")};var U=d.prototype;d._augment=function(a){return a._isBuffer=!0,a._get=a.get,a._set=a.set,a.get=U.get,a.set=U.set,a.write=U.write,a.toString=U.toString,a.toLocaleString=U.toString,a.toJSON=U.toJSON,a.equals=U.equals,a.compare=U.compare,a.copy=U.copy,a.slice=U.slice,a.readUInt8=U.readUInt8,a.readUInt16LE=U.readUInt16LE,a.readUInt16BE=U.readUInt16BE,a.readUInt32LE=U.readUInt32LE,a.readUInt32BE=U.readUInt32BE,a.readInt8=U.readInt8,a.readInt16LE=U.readInt16LE,a.readInt16BE=U.readInt16BE,a.readInt32LE=U.readInt32LE,a.readInt32BE=U.readInt32BE,a.readFloatLE=U.readFloatLE,a.readFloatBE=U.readFloatBE,a.readDoubleLE=U.readDoubleLE,a.readDoubleBE=U.readDoubleBE,a.writeUInt8=U.writeUInt8,a.writeUInt16LE=U.writeUInt16LE,a.writeUInt16BE=U.writeUInt16BE,a.writeUInt32LE=U.writeUInt32LE,a.writeUInt32BE=U.writeUInt32BE,a.writeInt8=U.writeInt8,a.writeInt16LE=U.writeInt16LE,a.writeInt16BE=U.writeInt16BE,a.writeInt32LE=U.writeInt32LE,a.writeInt32BE=U.writeInt32BE,a.writeFloatLE=U.writeFloatLE,a.writeFloatBE=U.writeFloatBE,a.writeDoubleLE=U.writeDoubleLE,a.writeDoubleBE=U.writeDoubleBE,a.fill=U.fill,a.inspect=U.inspect,a.toArrayBuffer=U.toArrayBuffer,a};var V=/[^+\/0-9A-z]/g},{"base64-js":25,ieee754:26}],25:[function(a,b,c){var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";!function(a){"use strict";function b(a){var b=a.charCodeAt(0);return b===g?62:b===h?63:i>b?-1:i+10>b?b-i+26+26:k+26>b?b-k:j+26>b?b-j+26:void 0}function c(a){function c(a){j[l++]=a}var d,e,g,h,i,j;if(a.length%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var k=a.length;i="="===a.charAt(k-2)?2:"="===a.charAt(k-1)?1:0,j=new f(3*a.length/4-i),g=i>0?a.length-4:a.length;var l=0;for(d=0,e=0;g>d;d+=4,e+=3)h=b(a.charAt(d))<<18|b(a.charAt(d+1))<<12|b(a.charAt(d+2))<<6|b(a.charAt(d+3)),c((16711680&h)>>16),c((65280&h)>>8),c(255&h);return 2===i?(h=b(a.charAt(d))<<2|b(a.charAt(d+1))>>4,c(255&h)):1===i&&(h=b(a.charAt(d))<<10|b(a.charAt(d+1))<<4|b(a.charAt(d+2))>>2,c(h>>8&255),c(255&h)),j}function e(a){function b(a){return d.charAt(a)}function c(a){return b(a>>18&63)+b(a>>12&63)+b(a>>6&63)+b(63&a)}var e,f,g,h=a.length%3,i="";for(e=0,g=a.length-h;g>e;e+=3)f=(a[e]<<16)+(a[e+1]<<8)+a[e+2],i+=c(f);switch(h){case 1:f=a[a.length-1],i+=b(f>>2),i+=b(f<<4&63),i+="==";break;case 2:f=(a[a.length-2]<<8)+a[a.length-1],i+=b(f>>10),i+=b(f>>4&63),i+=b(f<<2&63),i+="="}return i}var f="undefined"!=typeof Uint8Array?Uint8Array:Array,g="+".charCodeAt(0),h="/".charCodeAt(0),i="0".charCodeAt(0),j="a".charCodeAt(0),k="A".charCodeAt(0);a.toByteArray=c,a.fromByteArray=e}("undefined"==typeof c?this.base64js={}:c)},{}],26:[function(a,b,c){c.read=function(a,b,c,d,e){var f,g,h=8*e-d-1,i=(1<>1,k=-7,l=c?e-1:0,m=c?-1:1,n=a[b+l];for(l+=m,f=n&(1<<-k)-1,n>>=-k,k+=h;k>0;f=256*f+a[b+l],l+=m,k-=8);for(g=f&(1<<-k)-1,f>>=-k,k+=d;k>0;g=256*g+a[b+l],l+=m,k-=8);if(0===f)f=1-j;else{if(f===i)return g?NaN:(n?-1:1)*(1/0);g+=Math.pow(2,d),f-=j}return(n?-1:1)*g*Math.pow(2,f-d)},c.write=function(a,b,c,d,e,f){var g,h,i,j=8*f-e-1,k=(1<>1,m=23===e?Math.pow(2,-24)-Math.pow(2,-77):0,n=d?0:f-1,o=d?1:-1,p=0>b||0===b&&0>1/b?1:0;for(b=Math.abs(b),isNaN(b)||b===1/0?(h=isNaN(b)?1:0,g=k):(g=Math.floor(Math.log(b)/Math.LN2),b*(i=Math.pow(2,-g))<1&&(g--,i*=2),b+=g+l>=1?m/i:m*Math.pow(2,1-l),b*i>=2&&(g++,i/=2),g+l>=k?(h=0,g=k):g+l>=1?(h=(b*i-1)*Math.pow(2,e),g+=l):(h=b*Math.pow(2,l-1)*Math.pow(2,e),g=0));e>=8;a[c+n]=255&h,n+=o,h/=256,e-=8);for(g=g<0;a[c+n]=255&g,n+=o,g/=256,j-=8);a[c+n-o]|=128*p}},{}],27:[function(a,b,c){"function"==typeof Object.create?b.exports=function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})}:b.exports=function(a,b){a.super_=b;var c=function(){};c.prototype=b.prototype,a.prototype=new c,a.prototype.constructor=a}},{}],28:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a,b){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("_process"))},{_process:29}],29:[function(a,b,c){function d(){}var e=b.exports={};e.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),e.title="browser",e.browser=!0,e.env={},e.argv=[],e.on=d,e.addListener=d,e.once=d,e.off=d,e.removeListener=d,e.removeAllListeners=d,e.emit=d,e.binding=function(a){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(a){throw new Error("process.chdir is not supported")}},{}],30:[function(a,b,c){b.exports=function(a){return a&&"object"==typeof a&&"function"==typeof a.copy&&"function"==typeof a.fill&&"function"==typeof a.readUInt8}},{}],31:[function(a,b,c){(function(b,d){function e(a,b){var d={seen:[],stylize:g};return arguments.length>=3&&(d.depth=arguments[2]),arguments.length>=4&&(d.colors=arguments[3]),p(b)?d.showHidden=b:b&&c._extend(d,b),v(d.showHidden)&&(d.showHidden=!1),v(d.depth)&&(d.depth=2),v(d.colors)&&(d.colors=!1),v(d.customInspect)&&(d.customInspect=!0),d.colors&&(d.stylize=f),i(d,a,d.depth)}function f(a,b){var c=e.styles[b];return c?"["+e.colors[c][0]+"m"+a+"["+e.colors[c][1]+"m":a}function g(a,b){return a}function h(a){var b={};return a.forEach(function(a,c){b[a]=!0}),b}function i(a,b,d){if(a.customInspect&&b&&A(b.inspect)&&b.inspect!==c.inspect&&(!b.constructor||b.constructor.prototype!==b)){var e=b.inspect(d,a);return t(e)||(e=i(a,e,d)),e}var f=j(a,b);if(f)return f;var g=Object.keys(b),p=h(g);if(a.showHidden&&(g=Object.getOwnPropertyNames(b)),z(b)&&(g.indexOf("message")>=0||g.indexOf("description")>=0))return k(b);if(0===g.length){if(A(b)){var q=b.name?": "+b.name:"";return a.stylize("[Function"+q+"]","special")}if(w(b))return a.stylize(RegExp.prototype.toString.call(b),"regexp");if(y(b))return a.stylize(Date.prototype.toString.call(b),"date");if(z(b))return k(b)}var r="",s=!1,u=["{","}"];if(o(b)&&(s=!0,u=["[","]"]),A(b)){var v=b.name?": "+b.name:"";r=" [Function"+v+"]"}if(w(b)&&(r=" "+RegExp.prototype.toString.call(b)),y(b)&&(r=" "+Date.prototype.toUTCString.call(b)),z(b)&&(r=" "+k(b)),0===g.length&&(!s||0==b.length))return u[0]+r+u[1];if(0>d)return w(b)?a.stylize(RegExp.prototype.toString.call(b),"regexp"):a.stylize("[Object]","special");a.seen.push(b);var x;return x=s?l(a,b,d,p,g):g.map(function(c){return m(a,b,d,p,c,s)}),a.seen.pop(),n(x,r,u)}function j(a,b){if(v(b))return a.stylize("undefined","undefined");if(t(b)){var c="'"+JSON.stringify(b).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return a.stylize(c,"string")}return s(b)?a.stylize(""+b,"number"):p(b)?a.stylize(""+b,"boolean"):q(b)?a.stylize("null","null"):void 0}function k(a){return"["+Error.prototype.toString.call(a)+"]"}function l(a,b,c,d,e){for(var f=[],g=0,h=b.length;h>g;++g)F(b,String(g))?f.push(m(a,b,c,d,String(g),!0)):f.push("");return e.forEach(function(e){e.match(/^\d+$/)||f.push(m(a,b,c,d,e,!0))}),f}function m(a,b,c,d,e,f){var g,h,j;if(j=Object.getOwnPropertyDescriptor(b,e)||{value:b[e]},j.get?h=j.set?a.stylize("[Getter/Setter]","special"):a.stylize("[Getter]","special"):j.set&&(h=a.stylize("[Setter]","special")),F(d,e)||(g="["+e+"]"),h||(a.seen.indexOf(j.value)<0?(h=q(c)?i(a,j.value,null):i(a,j.value,c-1),h.indexOf("\n")>-1&&(h=f?h.split("\n").map(function(a){return" "+a}).join("\n").substr(2):"\n"+h.split("\n").map(function(a){return" "+a}).join("\n"))):h=a.stylize("[Circular]","special")),v(g)){if(f&&e.match(/^\d+$/))return h;g=JSON.stringify(""+e),g.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(g=g.substr(1,g.length-2),g=a.stylize(g,"name")):(g=g.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),g=a.stylize(g,"string"))}return g+": "+h}function n(a,b,c){var d=0,e=a.reduce(function(a,b){return d++,b.indexOf("\n")>=0&&d++,a+b.replace(/\u001b\[\d\d?m/g,"").length+1},0);return e>60?c[0]+(""===b?"":b+"\n ")+" "+a.join(",\n ")+" "+c[1]:c[0]+b+" "+a.join(", ")+" "+c[1]}function o(a){return Array.isArray(a)}function p(a){return"boolean"==typeof a}function q(a){return null===a}function r(a){return null==a}function s(a){return"number"==typeof a}function t(a){return"string"==typeof a}function u(a){return"symbol"==typeof a}function v(a){return void 0===a}function w(a){return x(a)&&"[object RegExp]"===C(a)}function x(a){return"object"==typeof a&&null!==a}function y(a){return x(a)&&"[object Date]"===C(a)}function z(a){return x(a)&&("[object Error]"===C(a)||a instanceof Error)}function A(a){return"function"==typeof a}function B(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||"undefined"==typeof a}function C(a){return Object.prototype.toString.call(a)}function D(a){return 10>a?"0"+a.toString(10):a.toString(10)}function E(){var a=new Date,b=[D(a.getHours()),D(a.getMinutes()),D(a.getSeconds())].join(":");return[a.getDate(),J[a.getMonth()],b].join(" ")}function F(a,b){return Object.prototype.hasOwnProperty.call(a,b)}var G=/%[sdj%]/g;c.format=function(a){if(!t(a)){for(var b=[],c=0;c=f)return a;switch(a){case"%s":return String(d[c++]);case"%d":return Number(d[c++]);case"%j":try{return JSON.stringify(d[c++])}catch(b){return"[Circular]"}default:return a}}),h=d[c];f>c;h=d[++c])g+=q(h)||!x(h)?" "+h:" "+e(h);return g},c.deprecate=function(a,e){function f(){if(!g){if(b.throwDeprecation)throw new Error(e);b.traceDeprecation?console.trace(e):console.error(e),g=!0}return a.apply(this,arguments)}if(v(d.process))return function(){return c.deprecate(a,e).apply(this,arguments)};if(b.noDeprecation===!0)return a;var g=!1;return f};var H,I={};c.debuglog=function(a){if(v(H)&&(H=b.env.NODE_DEBUG||""),a=a.toUpperCase(),!I[a])if(new RegExp("\\b"+a+"\\b","i").test(H)){var d=b.pid;I[a]=function(){var b=c.format.apply(c,arguments);console.error("%s %d: %s",a,d,b)}}else I[a]=function(){};return I[a]},c.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"},c.isArray=o,c.isBoolean=p,c.isNull=q,c.isNullOrUndefined=r,c.isNumber=s,c.isString=t,c.isSymbol=u,c.isUndefined=v,c.isRegExp=w,c.isObject=x,c.isDate=y,c.isError=z,c.isFunction=A,c.isPrimitive=B,c.isBuffer=a("./support/isBuffer");var J=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];c.log=function(){console.log("%s - %s",E(),c.format.apply(c,arguments))},c.inherits=a("inherits"),c._extend=function(a,b){if(!b||!x(b))return a;for(var c=Object.keys(b),d=c.length;d--;)a[c[d]]=b[c[d]];return a}}).call(this,a("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":30,_process:29,inherits:27}],joi:[function(a,b,c){arguments[4][16][0].apply(c,arguments)},{"./lib":10}]},{},[])("joi")});var CryptoJS=CryptoJS||function(a,b){var c={},d=c.lib={},e=function(){},f=d.Base={extend:function(a){e.prototype=this;var b=new e;return a&&b.mixIn(a),b.hasOwnProperty("init")||(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var a=this.extend();return a.init.apply(a,arguments),a},init:function(){},mixIn:function(a){for(var b in a)a.hasOwnProperty(b)&&(this[b]=a[b]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},g=d.WordArray=f.extend({init:function(a,c){a=this.words=a||[],this.sigBytes=c!=b?c:4*a.length},toString:function(a){return(a||i).stringify(this)},concat:function(a){var b=this.words,c=a.words,d=this.sigBytes;if(a=a.sigBytes,this.clamp(),d%4)for(var e=0;a>e;e++)b[d+e>>>2]|=(c[e>>>2]>>>24-8*(e%4)&255)<<24-8*((d+e)%4);else if(65535e;e+=4)b[d+e>>>2]=c[e>>>2];else b.push.apply(b,c);return this.sigBytes+=a,this},clamp:function(){var b=this.words,c=this.sigBytes;b[c>>>2]&=4294967295<<32-8*(c%4),b.length=a.ceil(c/4)},clone:function(){var a=f.clone.call(this);return a.words=this.words.slice(0),a},random:function(b){for(var c=[],d=0;b>d;d+=4)c.push(4294967296*a.random()|0);return new g.init(c,b)}}),h=c.enc={},i=h.Hex={stringify:function(a){var b=a.words;a=a.sigBytes;for(var c=[],d=0;a>d;d++){var e=b[d>>>2]>>>24-8*(d%4)&255;c.push((e>>>4).toString(16)),c.push((15&e).toString(16))}return c.join("")},parse:function(a){for(var b=a.length,c=[],d=0;b>d;d+=2)c[d>>>3]|=parseInt(a.substr(d,2),16)<<24-4*(d%8);return new g.init(c,b/2)}},j=h.Latin1={stringify:function(a){var b=a.words;a=a.sigBytes;for(var c=[],d=0;a>d;d++)c.push(String.fromCharCode(b[d>>>2]>>>24-8*(d%4)&255));return c.join("")},parse:function(a){for(var b=a.length,c=[],d=0;b>d;d++)c[d>>>2]|=(255&a.charCodeAt(d))<<24-8*(d%4);return new g.init(c,b)}},k=h.Utf8={stringify:function(a){try{return decodeURIComponent(escape(j.stringify(a)))}catch(b){throw Error("Malformed UTF-8 data")}},parse:function(a){return j.parse(unescape(encodeURIComponent(a)))}},l=d.BufferedBlockAlgorithm=f.extend({reset:function(){this._data=new g.init,this._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=k.parse(a)),this._data.concat(a),this._nDataBytes+=a.sigBytes},_process:function(b){var c=this._data,d=c.words,e=c.sigBytes,f=this.blockSize,h=e/(4*f),h=b?a.ceil(h):a.max((0|h)-this._minBufferSize,0);if(b=h*f,e=a.min(4*b,e),b){for(var i=0;b>i;i+=f)this._doProcessBlock(d,i);i=d.splice(0,b),c.sigBytes-=e}return new g.init(i,e)},clone:function(){var a=f.clone.call(this);return a._data=this._data.clone(),a},_minBufferSize:0});d.Hasher=l.extend({cfg:f.extend(),init:function(a){this.cfg=this.cfg.extend(a),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(a){return this._append(a),this._process(),this},finalize:function(a){return a&&this._append(a),this._doFinalize()},blockSize:16,_createHelper:function(a){return function(b,c){return new a.init(c).finalize(b)}},_createHmacHelper:function(a){return function(b,c){return new m.HMAC.init(a,c).finalize(b)}}});var m=c.algo={};return c}(Math);if(function(a){function b(a,b,c,d,e,f,g){return a=a+(b&c|~b&d)+e+g,(a<>>32-f)+b}function c(a,b,c,d,e,f,g){return a=a+(b&d|c&~d)+e+g,(a<>>32-f)+b}function d(a,b,c,d,e,f,g){return a=a+(b^c^d)+e+g,(a<>>32-f)+b}function e(a,b,c,d,e,f,g){return a=a+(c^(b|~d))+e+g,(a<>>32-f)+b}for(var f=CryptoJS,g=f.lib,h=g.WordArray,i=g.Hasher,g=f.algo,j=[],k=0;64>k;k++)j[k]=4294967296*a.abs(a.sin(k+1))|0;g=g.MD5=i.extend({_doReset:function(){this._hash=new h.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(a,f){for(var g=0;16>g;g++){var h=f+g,i=a[h];a[h]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var g=this._hash.words,h=a[f+0],i=a[f+1],k=a[f+2],l=a[f+3],m=a[f+4],n=a[f+5],o=a[f+6],p=a[f+7],q=a[f+8],r=a[f+9],s=a[f+10],t=a[f+11],u=a[f+12],v=a[f+13],w=a[f+14],x=a[f+15],y=g[0],z=g[1],A=g[2],B=g[3],y=b(y,z,A,B,h,7,j[0]),B=b(B,y,z,A,i,12,j[1]),A=b(A,B,y,z,k,17,j[2]),z=b(z,A,B,y,l,22,j[3]),y=b(y,z,A,B,m,7,j[4]),B=b(B,y,z,A,n,12,j[5]),A=b(A,B,y,z,o,17,j[6]),z=b(z,A,B,y,p,22,j[7]),y=b(y,z,A,B,q,7,j[8]),B=b(B,y,z,A,r,12,j[9]),A=b(A,B,y,z,s,17,j[10]),z=b(z,A,B,y,t,22,j[11]),y=b(y,z,A,B,u,7,j[12]),B=b(B,y,z,A,v,12,j[13]),A=b(A,B,y,z,w,17,j[14]),z=b(z,A,B,y,x,22,j[15]),y=c(y,z,A,B,i,5,j[16]),B=c(B,y,z,A,o,9,j[17]),A=c(A,B,y,z,t,14,j[18]),z=c(z,A,B,y,h,20,j[19]),y=c(y,z,A,B,n,5,j[20]),B=c(B,y,z,A,s,9,j[21]),A=c(A,B,y,z,x,14,j[22]),z=c(z,A,B,y,m,20,j[23]),y=c(y,z,A,B,r,5,j[24]),B=c(B,y,z,A,w,9,j[25]),A=c(A,B,y,z,l,14,j[26]),z=c(z,A,B,y,q,20,j[27]),y=c(y,z,A,B,v,5,j[28]),B=c(B,y,z,A,k,9,j[29]),A=c(A,B,y,z,p,14,j[30]),z=c(z,A,B,y,u,20,j[31]),y=d(y,z,A,B,n,4,j[32]),B=d(B,y,z,A,q,11,j[33]),A=d(A,B,y,z,t,16,j[34]),z=d(z,A,B,y,w,23,j[35]),y=d(y,z,A,B,i,4,j[36]),B=d(B,y,z,A,m,11,j[37]),A=d(A,B,y,z,p,16,j[38]),z=d(z,A,B,y,s,23,j[39]),y=d(y,z,A,B,v,4,j[40]),B=d(B,y,z,A,h,11,j[41]),A=d(A,B,y,z,l,16,j[42]),z=d(z,A,B,y,o,23,j[43]),y=d(y,z,A,B,r,4,j[44]),B=d(B,y,z,A,u,11,j[45]),A=d(A,B,y,z,x,16,j[46]),z=d(z,A,B,y,k,23,j[47]),y=e(y,z,A,B,h,6,j[48]),B=e(B,y,z,A,p,10,j[49]),A=e(A,B,y,z,w,15,j[50]),z=e(z,A,B,y,n,21,j[51]),y=e(y,z,A,B,u,6,j[52]),B=e(B,y,z,A,l,10,j[53]),A=e(A,B,y,z,s,15,j[54]),z=e(z,A,B,y,i,21,j[55]),y=e(y,z,A,B,q,6,j[56]),B=e(B,y,z,A,x,10,j[57]),A=e(A,B,y,z,o,15,j[58]),z=e(z,A,B,y,v,21,j[59]),y=e(y,z,A,B,m,6,j[60]),B=e(B,y,z,A,t,10,j[61]),A=e(A,B,y,z,k,15,j[62]),z=e(z,A,B,y,r,21,j[63]);g[0]=g[0]+y|0,g[1]=g[1]+z|0,g[2]=g[2]+A|0,g[3]=g[3]+B|0},_doFinalize:function(){var b=this._data,c=b.words,d=8*this._nDataBytes,e=8*b.sigBytes;c[e>>>5]|=128<<24-e%32;var f=a.floor(d/4294967296);for(c[(e+64>>>9<<4)+15]=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8),c[(e+64>>>9<<4)+14]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8),b.sigBytes=4*(c.length+1),this._process(),b=this._hash,c=b.words,d=0;4>d;d++)e=c[d],c[d]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8);return b},clone:function(){var a=i.clone.call(this);return a._hash=this._hash.clone(),a}}),f.MD5=i._createHelper(g),f.HmacMD5=i._createHmacHelper(g)}(Math),!function(){var a=function(b){var c=new a.Index;return c.pipeline.add(a.trimmer,a.stopWordFilter,a.stemmer),b&&b.call(c,c),c};a.version="0.5.8",a.utils={},a.utils.warn=function(a){return function(b){a.console&&console.warn&&console.warn(b)}}(this),a.EventEmitter=function(){this.events={}},a.EventEmitter.prototype.addListener=function(){var a=Array.prototype.slice.call(arguments),b=a.pop(),c=a;if("function"!=typeof b)throw new TypeError("last argument must be a function");c.forEach(function(a){this.hasHandler(a)||(this.events[a]=[]),this.events[a].push(b)},this)},a.EventEmitter.prototype.removeListener=function(a,b){if(this.hasHandler(a)){var c=this.events[a].indexOf(b);this.events[a].splice(c,1),this.events[a].length||delete this.events[a]}},a.EventEmitter.prototype.emit=function(a){if(this.hasHandler(a)){var b=Array.prototype.slice.call(arguments,1);this.events[a].forEach(function(a){a.apply(void 0,b)})}},a.EventEmitter.prototype.hasHandler=function(a){return a in this.events},a.tokenizer=function(a){return arguments.length&&null!=a&&void 0!=a?Array.isArray(a)?a.map(function(a){return a.toLowerCase()}):a.toString().trim().toLowerCase().split(/[\s\-]+/):[]},a.Pipeline=function(){this._stack=[]},a.Pipeline.registeredFunctions={},a.Pipeline.registerFunction=function(b,c){c in this.registeredFunctions&&a.utils.warn("Overwriting existing registered function: "+c),b.label=c,a.Pipeline.registeredFunctions[b.label]=b},a.Pipeline.warnIfFunctionNotRegistered=function(b){var c=b.label&&b.label in this.registeredFunctions;c||a.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",b); -},a.Pipeline.load=function(b){var c=new a.Pipeline;return b.forEach(function(b){var d=a.Pipeline.registeredFunctions[b];if(!d)throw new Error("Cannot load un-registered function: "+b);c.add(d)}),c},a.Pipeline.prototype.add=function(){var b=Array.prototype.slice.call(arguments);b.forEach(function(b){a.Pipeline.warnIfFunctionNotRegistered(b),this._stack.push(b)},this)},a.Pipeline.prototype.after=function(b,c){a.Pipeline.warnIfFunctionNotRegistered(c);var d=this._stack.indexOf(b)+1;this._stack.splice(d,0,c)},a.Pipeline.prototype.before=function(b,c){a.Pipeline.warnIfFunctionNotRegistered(c);var d=this._stack.indexOf(b);this._stack.splice(d,0,c)},a.Pipeline.prototype.remove=function(a){var b=this._stack.indexOf(a);this._stack.splice(b,1)},a.Pipeline.prototype.run=function(a){for(var b=[],c=a.length,d=this._stack.length,e=0;c>e;e++){for(var f=a[e],g=0;d>g&&(f=this._stack[g](f,e,a),void 0!==f);g++);void 0!==f&&b.push(f)}return b},a.Pipeline.prototype.reset=function(){this._stack=[]},a.Pipeline.prototype.toJSON=function(){return this._stack.map(function(b){return a.Pipeline.warnIfFunctionNotRegistered(b),b.label})},a.Vector=function(){this._magnitude=null,this.list=void 0,this.length=0},a.Vector.Node=function(a,b,c){this.idx=a,this.val=b,this.next=c},a.Vector.prototype.insert=function(b,c){this._magnitude=void 0;var d=this.list;if(!d)return this.list=new a.Vector.Node(b,c,d),this.length++;if(bc.idx?c=c.next:(d+=b.val*c.val,b=b.next,c=c.next);return d},a.Vector.prototype.similarity=function(a){return this.dot(a)/(this.magnitude()*a.magnitude())},a.SortedSet=function(){this.length=0,this.elements=[]},a.SortedSet.load=function(a){var b=new this;return b.elements=a,b.length=a.length,b},a.SortedSet.prototype.add=function(){var a,b;for(a=0;a=d?f===a?e:-1:a>f?this.indexOf(a,e,c):f>a?this.indexOf(a,b,e):f===a?e:void 0},a.SortedSet.prototype.locationFor=function(a,b,c){var b=b||0,c=c||this.elements.length,d=c-b,e=b+Math.floor(d/2),f=this.elements[e];if(1>=d){if(f>a)return e;if(a>f)return e+1}return a>f?this.locationFor(a,e,c):f>a?this.locationFor(a,b,e):void 0},a.SortedSet.prototype.intersect=function(b){for(var c=new a.SortedSet,d=0,e=0,f=this.length,g=b.length,h=this.elements,i=b.elements;!(d>f-1||e>g-1);)h[d]!==i[e]?h[d]i[e]&&e++:(c.add(h[d]),d++,e++);return c},a.SortedSet.prototype.clone=function(){var b=new a.SortedSet;return b.elements=this.toArray(),b.length=b.elements.length,b},a.SortedSet.prototype.union=function(a){var b,c,d;return this.length>=a.length?(b=this,c=a):(b=a,c=this),d=b.clone(),d.add.apply(d,c.toArray()),d},a.SortedSet.prototype.toJSON=function(){return this.toArray()},a.Index=function(){this._fields=[],this._ref="id",this.pipeline=new a.Pipeline,this.documentStore=new a.Store,this.tokenStore=new a.TokenStore,this.corpusTokens=new a.SortedSet,this.eventEmitter=new a.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},a.Index.prototype.on=function(){var a=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,a)},a.Index.prototype.off=function(a,b){return this.eventEmitter.removeListener(a,b)},a.Index.load=function(b){b.version!==a.version&&a.utils.warn("version mismatch: current "+a.version+" importing "+b.version);var c=new this;return c._fields=b.fields,c._ref=b.ref,c.documentStore=a.Store.load(b.documentStore),c.tokenStore=a.TokenStore.load(b.tokenStore),c.corpusTokens=a.SortedSet.load(b.corpusTokens),c.pipeline=a.Pipeline.load(b.pipeline),c},a.Index.prototype.field=function(a,b){var b=b||{},c={name:a,boost:b.boost||1};return this._fields.push(c),this},a.Index.prototype.ref=function(a){return this._ref=a,this},a.Index.prototype.add=function(b,c){var d={},e=new a.SortedSet,f=b[this._ref],c=void 0===c?!0:c;this._fields.forEach(function(c){var f=this.pipeline.run(a.tokenizer(b[c.name]));d[c.name]=f,a.SortedSet.prototype.add.apply(e,f)},this),this.documentStore.set(f,e),a.SortedSet.prototype.add.apply(this.corpusTokens,e.toArray());for(var g=0;g0&&(d=1+Math.log(this.tokenStore.length/c)),this._idfCache[b]=d},a.Index.prototype.search=function(b){var c=this.pipeline.run(a.tokenizer(b)),d=new a.Vector,e=[],f=this._fields.reduce(function(a,b){return a+b.boost},0),g=c.some(function(a){return this.tokenStore.has(a)},this);if(!g)return[];c.forEach(function(b,c,g){var h=1/g.length*this._fields.length*f,i=this,j=this.tokenStore.expand(b).reduce(function(c,e){var f=i.corpusTokens.indexOf(e),g=i.idf(e),j=1,k=new a.SortedSet;if(e!==b){var l=Math.max(3,e.length-b.length);j=1/Math.log(l)}return f>-1&&d.insert(f,h*g*j),Object.keys(i.tokenStore.get(e)).forEach(function(a){k.add(a)}),c.union(k)},new a.SortedSet);e.push(j)},this);var h=e.reduce(function(a,b){return a.intersect(b)});return h.map(function(a){return{ref:a,score:d.similarity(this.documentVector(a))}},this).sort(function(a,b){return b.score-a.score})},a.Index.prototype.documentVector=function(b){for(var c=this.documentStore.get(b),d=c.length,e=new a.Vector,f=0;d>f;f++){var g=c.elements[f],h=this.tokenStore.get(g)[b].tf,i=this.idf(g);e.insert(this.corpusTokens.indexOf(g),h*i)}return e},a.Index.prototype.toJSON=function(){return{version:a.version,fields:this._fields,ref:this._ref,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},a.Index.prototype.use=function(a){var b=Array.prototype.slice.call(arguments,1);b.unshift(this),a.apply(this,b)},a.Store=function(){this.store={},this.length=0},a.Store.load=function(b){var c=new this;return c.length=b.length,c.store=Object.keys(b.store).reduce(function(c,d){return c[d]=a.SortedSet.load(b.store[d]),c},{}),c},a.Store.prototype.set=function(a,b){this.has(a)||this.length++,this.store[a]=b},a.Store.prototype.get=function(a){return this.store[a]},a.Store.prototype.has=function(a){return a in this.store},a.Store.prototype.remove=function(a){this.has(a)&&(delete this.store[a],this.length--)},a.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},a.stemmer=function(){var a={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},b={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},c="[^aeiou]",d="[aeiouy]",e=c+"[^aeiouy]*",f=d+"[aeiou]*",g="^("+e+")?"+f+e,h="^("+e+")?"+f+e+"("+f+")?$",i="^("+e+")?"+f+e+f+e,j="^("+e+")?"+d,k=new RegExp(g),l=new RegExp(i),m=new RegExp(h),n=new RegExp(j),o=/^(.+?)(ss|i)es$/,p=/^(.+?)([^s])s$/,q=/^(.+?)eed$/,r=/^(.+?)(ed|ing)$/,s=/.$/,t=/(at|bl|iz)$/,u=new RegExp("([^aeiouylsz])\\1$"),v=new RegExp("^"+e+d+"[^aeiouwxy]$"),w=/^(.+?[^aeiou])y$/,x=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,y=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,z=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,A=/^(.+?)(s|t)(ion)$/,B=/^(.+?)e$/,C=/ll$/,D=new RegExp("^"+e+d+"[^aeiouwxy]$"),E=function(c){var d,e,f,g,h,i,j;if(c.length<3)return c;if(f=c.substr(0,1),"y"==f&&(c=f.toUpperCase()+c.substr(1)),g=o,h=p,g.test(c)?c=c.replace(g,"$1$2"):h.test(c)&&(c=c.replace(h,"$1$2")),g=q,h=r,g.test(c)){var E=g.exec(c);g=k,g.test(E[1])&&(g=s,c=c.replace(g,""))}else if(h.test(c)){var E=h.exec(c);d=E[1],h=n,h.test(d)&&(c=d,h=t,i=u,j=v,h.test(c)?c+="e":i.test(c)?(g=s,c=c.replace(g,"")):j.test(c)&&(c+="e"))}if(g=w,g.test(c)){var E=g.exec(c);d=E[1],c=d+"i"}if(g=x,g.test(c)){var E=g.exec(c);d=E[1],e=E[2],g=k,g.test(d)&&(c=d+a[e])}if(g=y,g.test(c)){var E=g.exec(c);d=E[1],e=E[2],g=k,g.test(d)&&(c=d+b[e])}if(g=z,h=A,g.test(c)){var E=g.exec(c);d=E[1],g=l,g.test(d)&&(c=d)}else if(h.test(c)){var E=h.exec(c);d=E[1]+E[2],h=l,h.test(d)&&(c=d)}if(g=B,g.test(c)){var E=g.exec(c);d=E[1],g=l,h=m,i=D,(g.test(d)||h.test(d)&&!i.test(d))&&(c=d)}return g=C,h=l,g.test(c)&&h.test(c)&&(g=s,c=c.replace(g,"")),"y"==f&&(c=f.toLowerCase()+c.substr(1)),c};return E}(),a.Pipeline.registerFunction(a.stemmer,"stemmer"),a.stopWordFilter=function(b){return-1===a.stopWordFilter.stopWords.indexOf(b)?b:void 0},a.stopWordFilter.stopWords=new a.SortedSet,a.stopWordFilter.stopWords.length=119,a.stopWordFilter.stopWords.elements=["","a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"],a.Pipeline.registerFunction(a.stopWordFilter,"stopWordFilter"),a.trimmer=function(a){return a.replace(/^\W+/,"").replace(/\W+$/,"")},a.Pipeline.registerFunction(a.trimmer,"trimmer"),a.TokenStore=function(){this.root={docs:{}},this.length=0},a.TokenStore.load=function(a){var b=new this;return b.root=a.root,b.length=a.length,b},a.TokenStore.prototype.add=function(a,b,c){var c=c||this.root,d=a[0],e=a.slice(1);return d in c||(c[d]={docs:{}}),0===e.length?(c[d].docs[b.ref]=b,void(this.length+=1)):this.add(e,b,c[d])},a.TokenStore.prototype.has=function(a){if(!a)return!1;for(var b=this.root,c=0;ca;a++)this.events[arguments[a]]=[]},b.prototype.listenTo=function(a,b,c){this.removeListener(a,b,c),a.events[b].push({handler:c,scope:this})},b.prototype.addListener=function(a,b,c){this.removeListener(this,a,b),this.events[a].push({handler:b,scope:c})},b.prototype.removeListener=function(a,b,c){if(a&&a.events)for(a=a.events[b],b=a.length-1;b>=0;b--)a[b].handler===c&&a.splice(b,1)},b.prototype.fire=function(a,b){for(var c=this.events[a],d=0,e=c.length;e>d;d++){var f=c[d];f.handler.call(f.scope,b)}});for(var c in a)b.prototype[c]=a[c];return b},AmCharts.addChart=function(a){AmCharts.charts.push(a)},AmCharts.removeChart=function(a){for(var b=AmCharts.charts,c=b.length-1;c>=0;c--)b[c]==a&&b.splice(c,1)},AmCharts.isModern=!0,AmCharts.getIEVersion=function(){var a=0;if("Microsoft Internet Explorer"==navigator.appName){var b=navigator.userAgent,c=/MSIE ([0-9]{1,}[.0-9]{0,})/;null!=c.exec(b)&&(a=parseFloat(RegExp.$1))}else"Netscape"==navigator.appName&&(b=navigator.userAgent,c=/Trident\/.*rv:([0-9]{1,}[.0-9]{0,})/,null!=c.exec(b)&&(a=parseFloat(RegExp.$1)));return a},AmCharts.applyLang=function(a,b){var c=AmCharts.translations;b.dayNames=AmCharts.extend({},AmCharts.dayNames),b.shortDayNames=AmCharts.extend({},AmCharts.shortDayNames),b.monthNames=AmCharts.extend({},AmCharts.monthNames),b.shortMonthNames=AmCharts.extend({},AmCharts.shortMonthNames),c&&(c=c[a])&&(AmCharts.lang=c,c.monthNames&&(b.dayNames=AmCharts.extend({},c.dayNames),b.shortDayNames=AmCharts.extend({},c.shortDayNames),b.monthNames=AmCharts.extend({},c.monthNames),b.shortMonthNames=AmCharts.extend({},c.shortMonthNames)))},AmCharts.IEversion=AmCharts.getIEVersion(),9>AmCharts.IEversion&&0=0;c--)a[c]==b&&a.splice(c,1)},AmCharts.isInArray=function(a,b){for(var c=0;c"),i>10)return j;if(j){var l=j.getBBox();if(l.width>h){l=Math.ceil(l.width/h),j.remove();for(var j=[],m=0;-1<(index=b.indexOf(" ",m));)j.push(index),m=index+1;Math.round(b.length/2);for(var n,m=0;mm;m++)n=Math.round(b.length/l*m),b=b.substr(0,n)+k+b.substr(n);return AmCharts.text(a,b,c,d,e,f,g)}return AmCharts.wrappedText(a,b,c,d,e,f,g,h,i+1)}return j}},AmCharts.getStyle=function(a,b){var c="";return document.defaultView&&document.defaultView.getComputedStyle?c=document.defaultView.getComputedStyle(a,"").getPropertyValue(b):a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),c=a.currentStyle[b]),c},AmCharts.removePx=function(a){return void 0!=a?Number(a.substring(0,a.length-2)):void 0},AmCharts.getURL=function(a,b){if(a)if("_self"!=b&&b)if("_top"==b&&window.top)window.top.location.href=a;else if("_parent"==b&&window.parent)window.parent.location.href=a;else if("_blank"==b)window.open(a);else{var c=document.getElementsByName(b)[0];c?c.src=a:(c=AmCharts.windows[b])&&c.opener&&!c.opener.closed?c.location.href=a:AmCharts.windows[b]=window.open(a)}else window.location.href=a},AmCharts.ifArray=function(a){return a&&00){var f;for(f=0;e>f;f++){var g=d[f];g&&g[a]&&g[a]()}}}}},AmCharts.toNumber=function(a){return"number"==typeof a?a:Number(String(a).replace(/[^0-9\-.]+/g,""))},AmCharts.toColor=function(a){if(""!==a&&void 0!==a)if(-1!=a.indexOf(",")){a=a.split(",");var b;for(b=0;bc&&(b=c),d=Number(a),-1!=a.indexOf("!")&&(d=b-Number(a.substr(1))),-1!=a.indexOf("%")&&(d=b*Number(a.substr(0,a.length-1))/100)),d},AmCharts.fitToBounds=function(a,b,c){return b>a&&(a=b),a>c&&(a=c),a},AmCharts.isDefined=function(a){return void 0===a?!1:!0},AmCharts.stripNumbers=function(a){return a.replace(/[0-9]+/g,"")},AmCharts.roundTo=function(a,b){if(0>b)return a;var c=Math.pow(10,b);return Math.round(a*c)/c},AmCharts.toFixed=function(a,b){var c=String(Math.round(a*Math.pow(10,b)));if(b>0){var d=c.length;if(b>d){var e;for(e=0;b-d>e;e++)c="0"+c}return d=c.substring(0,c.length-b),""===d&&(d=0),d+"."+c.substring(c.length-b,c.length)}return String(c)},AmCharts.formatDuration=function(a,b,c,d,e,f){var g=AmCharts.intervals,h=f.decimalSeparator;if(a>=g[b].contains){var i=a-Math.floor(a/g[b].contains)*g[b].contains;return"ss"==b&&(i=AmCharts.formatNumber(i,f),1==i.split(h)[0].length&&(i="0"+i)),("mm"==b||"hh"==b)&&10>i&&(i="0"+i),c=i+""+d[b]+c,a=Math.floor(a/g[b].contains),b=g[b].nextInterval,AmCharts.formatDuration(a,b,c,d,e,f)}if("ss"==b&&(a=AmCharts.formatNumber(a,f),1==a.split(h)[0].length&&(a="0"+a)),("mm"==b||"hh"==b)&&10>a&&(a="0"+a),c=a+""+d[b]+c,g[e].count>g[b].count)for(a=g[b].count;aa?"-":"",a=Math.abs(a);var h=String(a),i=!1;-1!=h.indexOf("e")&&(i=!0),c>=0&&!i&&(h=AmCharts.toFixed(a,c));var j="";if(i)j=h;else{var k,h=h.split("."),i=String(h[0]);for(k=i.length;k>=0;k-=3)j=k!=i.length?0!==k?i.substring(k-3,k)+b+j:i.substring(k-3,k)+j:i.substring(k-3,k);void 0!==h[1]&&(j=j+f+h[1]),void 0!==c&&c>0&&"0"!=j&&(j=AmCharts.addZeroes(j,f,c))}return j=g+j,""===g&&!0===d&&0!==a&&(j="+"+j),!0===e&&(j+="%"),j},AmCharts.addZeroes=function(a,b,c){return a=a.split(b),void 0===a[1]&&c>0&&(a[1]="0"),a[1].length=c.x-5&&a<=c.x+c.width+5&&b>=c.y-5&&b<=c.y+c.height+5?!0:!1},AmCharts.isPercents=function(a){return-1!=String(a).indexOf("%")?!0:void 0},AmCharts.findPosX=function(a){var b=a,c=a.offsetLeft;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetLeft;for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollLeft||0}return c},AmCharts.findPosY=function(a){var b=a,c=a.offsetTop;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetTop;for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollTop||0}return c},AmCharts.findIfFixed=function(a){if(a.offsetParent)for(;a=a.offsetParent;)if("fixed"==AmCharts.getStyle(a,"position"))return!0;return!1},AmCharts.findIfAuto=function(a){return a.style&&"auto"==AmCharts.getStyle(a,"overflow")?!0:a.parentNode?AmCharts.findIfAuto(a.parentNode):!1},AmCharts.findScrollLeft=function(a,b){return a.scrollLeft&&(b+=a.scrollLeft),a.parentNode?AmCharts.findScrollLeft(a.parentNode,b):b},AmCharts.findScrollTop=function(a,b){return a.scrollTop&&(b+=a.scrollTop),a.parentNode?AmCharts.findScrollTop(a.parentNode,b):b},AmCharts.formatValue=function(a,b,c,d,e,f,g,h){if(b){void 0===e&&(e="");var i;for(i=0;ia&&(j="-"),a=Math.abs(a),a>1){for(f=b.length-1;f>-1;f--)if(a>=b[f].number&&(g=a/b[f].number,h=Number(d.precision),1>h&&(h=1),c=AmCharts.roundTo(g,h),h=AmCharts.formatNumber(c,{precision:-1,decimalSeparator:d.decimalSeparator,thousandsSeparator:d.thousandsSeparator}),!e||g==c)){i=j+""+h+b[f].prefix;break}}else for(f=0;f"==a&&(a="easeOutSine"),"<"==a&&(a="easeInSine"),"elastic"==a&&(a="easeOutElastic"),a},AmCharts.getObjById=function(a,b){var c,d;for(d=0;d")),a},AmCharts.fixBrakes=function(a){if(AmCharts.isModern){var b=RegExp("
","g");a&&(a=a.replace(b,"\n"))}else a=AmCharts.fixNewLines(a);return a},AmCharts.deleteObject=function(a,b){if(a&&((void 0===b||null===b)&&(b=20),0!==b))if("[object Array]"===Object.prototype.toString.call(a))for(var c=0;cb?d*(7.5625*(b-=1.5/2.75)*b+.75)+c:2.5/2.75>b?d*(7.5625*(b-=2.25/2.75)*b+.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+.984375)+c},AmCharts.easeInSine=function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},AmCharts.easeOutSine=function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},AmCharts.easeOutElastic=function(a,b,c,d,e){a=1.70158;var f=0,g=d;return 0===b?c:1==(b/=e)?c+d:(f||(f=.3*e),gb?Math.abs(b)-1:Math.abs(b);var e;for(e=0;c>e;e++)d+="0";return 0>b?Number("0."+d+String(a)):Number(String(a)+d)},AmCharts.setCN=function(a,b,c,d){if(a.addClassNames&&b&&(b=b.node)&&c){var e=b.getAttribute("class");a=a.classNamePrefix+"-",d&&(a=""),e?b.setAttribute("class",e+" "+a+c):b.setAttribute("class",a+c)}},AmCharts.parseDefs=function(a,b){for(var c in a){var d=typeof a[c];if(0b&&(b=10),1>c&&(c=10),this.div=a,this.width=b,this.height=c,this.rBin=document.createElement("div"),AmCharts.hasSVG?(AmCharts.SVG=!0,b=this.createSvgElement("svg"),a.appendChild(b),this.container=b,this.addDefs(d),this.R=new AmCharts.SVGRenderer(this)):AmCharts.isIE&&AmCharts.VMLRenderer&&(AmCharts.VML=!0,AmCharts.vmlStyleSheet||(document.namespaces.add("amvml","urn:schemas-microsoft-com:vml"),31>document.styleSheets.length?(b=document.createStyleSheet(),b.addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true"),AmCharts.vmlStyleSheet=b):document.styleSheets[0].addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true")),this.container=a,this.R=new AmCharts.VMLRenderer(this,d),this.R.disableSelection(a))},createSvgElement:function(a){return document.createElementNS(AmCharts.SVG_NS,a)},circle:function(a,b,c,d){var e=new AmCharts.AmDObject("circle",this);return e.attr({r:c,cx:a,cy:b}),this.addToContainer(e.node,d),e},ellipse:function(a,b,c,d,e){var f=new AmCharts.AmDObject("ellipse",this);return f.attr({rx:c,ry:d,cx:a,cy:b}),this.addToContainer(f.node,e),f},setSize:function(a,b){a>0&&b>0&&(this.container.style.width=a+"px",this.container.style.height=b+"px")},rect:function(a,b,c,d,e,f,g){var h=new AmCharts.AmDObject("rect",this);return AmCharts.VML&&(e=Math.round(100*e/Math.min(c,d)),c+=2*f,d+=2*f,h.bw=f,h.node.style.marginLeft=-f,h.node.style.marginTop=-f),1>c&&(c=1),1>d&&(d=1),h.attr({x:a,y:b,width:c,height:d,rx:e,ry:e,"stroke-width":f}),this.addToContainer(h.node,g),h},image:function(a,b,c,d,e,f){var g=new AmCharts.AmDObject("image",this);return g.attr({x:b,y:c,width:d,height:e}),this.R.path(g,a),this.addToContainer(g.node,f),g},addToContainer:function(a,b){b||(b=this.container),b.appendChild(a)},text:function(a,b,c){return this.R.text(a,b,c)},path:function(a,b,c,d){var e=new AmCharts.AmDObject("path",this);return d||(d="100,100"),e.attr({cs:d}),c?e.attr({dd:a}):e.attr({d:a}),this.addToContainer(e.node,b),e},set:function(a){return this.R.set(a)},remove:function(a){if(a){var b=this.rBin;b.appendChild(a),b.innerHTML=""}},renderFix:function(){var a,b=this.container,c=b.style;try{a=b.getScreenCTM()||b.createSVGMatrix(); -}catch(d){a=b.createSVGMatrix()}b=1-a.e%1,a=1-a.f%1,b>.5&&--b,a>.5&&--a,b&&(c.left=b+"px"),a&&(c.top=a+"px")},update:function(){this.R.update()},addDefs:function(a){if(AmCharts.hasSVG){var b=this.createSvgElement("desc"),c=this.container;c.setAttribute("version","1.1"),c.style.position="absolute",this.setSize(this.width,this.height),AmCharts.rtl&&(c.setAttribute("direction","rtl"),c.style.left="auto",c.style.right="0px"),b.appendChild(document.createTextNode("JavaScript chart by amCharts "+a.version)),c.appendChild(b),a.defs&&(b=this.createSvgElement("defs"),c.appendChild(b),AmCharts.parseDefs(a.defs,b),this.defs=b)}}}),AmCharts.AmDObject=AmCharts.Class({construct:function(a,b){this.D=b,this.R=b.R,this.node=this.R.create(this,a),this.y=this.x=0,this.scale=1},attr:function(a){return this.R.attr(this,a),this},getAttr:function(a){return this.node.getAttribute(a)},setAttr:function(a,b){return this.R.setAttr(this,a,b),this},clipRect:function(a,b,c,d){this.R.clipRect(this,a,b,c,d)},translate:function(a,b,c,d){d||(a=Math.round(a),b=Math.round(b)),this.R.move(this,a,b,c),this.x=a,this.y=b,this.scale=c,this.angle&&this.rotate(this.angle)},rotate:function(a,b){this.R.rotate(this,a,b),this.angle=a},animate:function(a,b,c){for(var d in a)if(a.hasOwnProperty(d)){var e=d,f=a[d];c=AmCharts.getEffect(c),this.R.animate(this,e,f,b,c)}},push:function(a){if(a){var b=this.node;b.appendChild(a.node);var c=a.clipPath;c&&b.appendChild(c),(a=a.grad)&&b.appendChild(a)}},text:function(a){this.R.setText(this,a)},remove:function(){this.R.remove(this)},clear:function(){var a=this.node;if(a.hasChildNodes())for(;1<=a.childNodes.length;)a.removeChild(a.firstChild)},hide:function(){this.setAttr("visibility","hidden")},show:function(){this.setAttr("visibility","visible")},getBBox:function(){return this.R.getBBox(this)},toFront:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;b&&b.appendChild(a)}},toPrevious:function(){var a=this.node;a&&this.prevNextNode&&(a=a.parentNode)&&a.insertBefore(this.prevNextNode,null)},toBack:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;if(b){var c=b.firstChild;c&&b.insertBefore(a,c)}}},mouseover:function(a){return this.R.addListener(this,"mouseover",a),this},mouseout:function(a){return this.R.addListener(this,"mouseout",a),this},click:function(a){return this.R.addListener(this,"click",a),this},dblclick:function(a){return this.R.addListener(this,"dblclick",a),this},mousedown:function(a){return this.R.addListener(this,"mousedown",a),this},mouseup:function(a){return this.R.addListener(this,"mouseup",a),this},touchstart:function(a){return this.R.addListener(this,"touchstart",a),this},touchend:function(a){return this.R.addListener(this,"touchend",a),this},contextmenu:function(a){return this.node.addEventListener?this.node.addEventListener("contextmenu",a,!0):this.R.addListener(this,"contextmenu",a),this},stop:function(a){AmCharts.removeFromArray(this.R.animations,this.an_x),AmCharts.removeFromArray(this.R.animations,this.an_y)},length:function(){return this.node.childNodes.length},gradient:function(a,b,c){this.R.gradient(this,a,b,c)},pattern:function(a,b){a&&this.R.pattern(this,a,b)}}),AmCharts.SVGRenderer=AmCharts.Class({construct:function(a){this.D=a,this.animations=[]},create:function(a,b){return document.createElementNS(AmCharts.SVG_NS,b)},attr:function(a,b){for(var c in b)b.hasOwnProperty(c)&&this.setAttr(a,c,b[c])},setAttr:function(a,b,c){void 0!==c&&a.node.setAttribute(b,c)},animate:function(a,b,c,d,e){var f=a.node;a["an_"+b]&&AmCharts.removeFromArray(this.animations,a["an_"+b]),"translate"==b?(f=(f=f.getAttribute("transform"))?String(f).substring(10,f.length-1):"0,0",f=f.split(", ").join(" "),f=f.split(" ").join(","),0===f&&(f="0,0")):f=Number(f.getAttribute(b)),c={obj:a,frame:0,attribute:b,from:f,to:c,time:d,effect:e},this.animations.push(c),a["an_"+b]=c},update:function(){var a,b=this.animations;for(a=b.length-1;a>=0;a--){var c,d,e,f=b[a],g=1e3*f.time/AmCharts.updateRate,h=f.frame+1,i=f.obj,j=f.attribute;g>=h?(f.frame++,"translate"==j?(c=f.from.split(","),j=Number(c[0]),c=Number(c[1]),isNaN(c)&&(c=0),d=f.to.split(","),e=Number(d[0]),d=Number(d[1]),e=0===e-j?e:Math.round(AmCharts[f.effect](0,h,j,e-j,g)),f=0===d-c?d:Math.round(AmCharts[f.effect](0,h,c,d-c,g)),j="transform",f="translate("+e+","+f+")"):(d=Number(f.from),c=Number(f.to),e=c-d,f=AmCharts[f.effect](0,h,d,e,g),isNaN(f)&&(f=c),0===e&&this.animations.splice(a,1)),this.setAttr(i,j,f)):("translate"==j?(d=f.to.split(","),e=Number(d[0]),d=Number(d[1]),i.translate(e,d)):(c=Number(f.to),this.setAttr(i,j,c)),this.animations.splice(a,1))}},getBBox:function(a){if(a=a.node)try{return a.getBBox()}catch(b){}return{width:0,height:0,x:0,y:0}},path:function(a,b){a.node.setAttributeNS(AmCharts.SVG_XLINK,"xlink:href",b)},clipRect:function(a,b,c,d,e){var f=a.node,g=a.clipPath;g&&this.D.remove(g);var h=f.parentNode;h&&(f=document.createElementNS(AmCharts.SVG_NS,"clipPath"),g=AmCharts.getUniqueId(),f.setAttribute("id",g),this.D.rect(b,c,d,e,0,0,f),h.appendChild(f),b="#",AmCharts.baseHref&&!AmCharts.isIE&&(b=this.removeTarget(window.location.href)+b),this.setAttr(a,"clip-path","url("+b+g+")"),this.clipPathC++,a.clipPath=f)},text:function(a,b,c){var d=new AmCharts.AmDObject("text",this.D);a=String(a).split("\n");var e,f=b["font-size"];for(e=0;e0&&f>0&&(b.style.width=a+"px",b.style.height=f+"px",e&&e.setSize(a,f),this.balloon=AmCharts.processObject(this.balloon,AmCharts.AmBalloon,this.theme),this.balloon.chart=this,this.balloon.setBounds(2,2,a-2,f)),this.realWidth=a,this.realHeight=f,this.divRealWidth=c,this.divRealHeight=d}},destroy:function(){this.chartDiv.innerHTML="",this.clearTimeOuts(),this.interval&&clearInterval(this.interval),this.interval=NaN,this.legend&&this.legend.destroy()},clearTimeOuts:function(){var a=this.timeOuts;if(a){var b;for(b=0;b=0;a--)b[a].remove();this.labels=[],this.allLabels=[]},updateHeight:function(){var a=this.divRealHeight,b=this.legend;if(b){var c=this.legendDiv.offsetHeight,b=b.position;("top"==b||"bottom"==b)&&(a-=c,(0>a||isNaN(a))&&(a=0),this.chartDiv.style.height=a+"px")}return a},updateWidth:function(){var a=this.divRealWidth,b=this.divRealHeight,c=this.legend;if(c){var d=this.legendDiv,e=d.offsetWidth;isNaN(c.width)||(e=c.width),c.ieW&&(e=c.ieW);var f=d.offsetHeight,d=d.style,g=this.chartDiv.style,c=c.position;("right"==c||"left"==c)&&(a-=e,(0>a||isNaN(a))&&(a=0),g.width=a+"px","left"==c?(g.left=e+"px",d.left="0px"):(g.left="0px",d.left=a+"px"),b>f&&(d.top=(b-f)/2+"px"))}return a},getTitleHeight:function(){var a=0,b=this.titles,c=!0;if(0=0;a--){var b=this.animations[a],c=1e3*b.time/AmCharts.updateRate,d=b.frame+1,e=b.obj,f=b.attribute;if(c>=d){b.frame++;var g=Number(b.from),h=Number(b.to)-g,c=AmCharts[b.effect](0,d,g,h,c);0===h?(this.animations.splice(a,1),e.node.style[f]=Number(b.to)+b.suffix):e.node.style[f]=c+b.suffix}else e.node.style[f]=Number(b.to)+b.suffix,this.animations.splice(a,1)}},inIframe:function(){try{return window.self!==window.top}catch(a){return!0}},brr:function(){var a,b=window.location.hostname.split(".");if(2<=b.length&&(a=b[b.length-2]+"."+b[b.length-1]),this.amLink&&(b=this.amLink.parentNode)&&b.removeChild(this.amLink),b=this.creditsPosition,"amcharts.com"!=a||!0===this.inIframe()){var c=a=0,d=this.realWidth,e=this.realHeight,f=this.type;("serial"==f||"xy"==f||"gantt"==f)&&(a=this.marginLeftReal,c=this.marginTopReal,d=a+this.plotAreaWidth,e=c+this.plotAreaHeight);var g="http://www.amcharts.com/javascript-charts/",h="JavaScript charts",i="JS chart by amCharts";"ammap"==this.product&&(g="http://www.ammap.com/javascript-maps/",h="Interactive JavaScript maps",i="JS map by amCharts"),f=document.createElement("a"),i=document.createTextNode(i),f.setAttribute("href",g),f.setAttribute("title",h),f.appendChild(i),this.chartDiv.appendChild(f),this.amLink=f,g=f.style,g.position="absolute",g.textDecoration="none",g.color=this.color,g.fontFamily=this.fontFamily,g.fontSize=this.fontSize+"px",g.opacity=.7,g.display="block";var h=f.offsetWidth,f=f.offsetHeight,i=5+a,j=c+5;"bottom-left"==b&&(i=5+a,j=e-f-3),"bottom-right"==b&&(i=d-h-5,j=e-f-3),"top-right"==b&&(i=d-h-5,j=c+5),g.left=i+"px",g.top=j+"px"}}}),AmCharts.Slice=AmCharts.Class({construct:function(){}}),AmCharts.SerialDataItem=AmCharts.Class({construct:function(){}}),AmCharts.GraphDataItem=AmCharts.Class({construct:function(){}}),AmCharts.Guide=AmCharts.Class({construct:function(a){this.cname="Guide",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.Title=AmCharts.Class({construct:function(a){this.cname="Title",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.Label=AmCharts.Class({construct:function(a){this.cname="Label",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.AmBalloon=AmCharts.Class({construct:function(a){this.cname="AmBalloon",this.enabled=!0,this.fillColor="#FFFFFF",this.fillAlpha=.8,this.borderThickness=2,this.borderColor="#FFFFFF",this.borderAlpha=1,this.cornerRadius=0,this.maxWidth=220,this.horizontalPadding=8,this.verticalPadding=4,this.pointerWidth=6,this.pointerOrientation="V",this.color="#000000",this.adjustBorderColor=!0,this.show=this.follow=this.showBullet=!1,this.bulletSize=3,this.shadowAlpha=.4,this.shadowColor="#000000",this.fadeOutDuration=this.animationDuration=.3,this.fixedPosition=!1,this.offsetY=6,this.offsetX=1,this.textAlign="center",AmCharts.isModern||(this.offsetY*=1.5),AmCharts.applyTheme(this,a,this.cname)},draw:function(){var a=this.pointToX,b=this.pointToY;this.deltaSignX=this.deltaSignY=1;var c=this.chart;if(AmCharts.VML&&(this.fadeOutDuration=0),this.xAnim&&c.stopAnim(this.xAnim),this.yAnim&&c.stopAnim(this.yAnim),!isNaN(a)){var d=this.follow,e=c.container,f=this.set;if(AmCharts.remove(f),this.removeDiv(),f=e.set(),f.node.style.pointerEvents="none",this.set=f,c.balloonsSet.push(f),this.show){var g=this.l,h=this.t,i=this.r,j=this.b,k=this.balloonColor,l=this.fillColor,m=this.borderColor,n=l;void 0!=k&&(this.adjustBorderColor?n=m=k:l=k);var o=this.horizontalPadding,p=this.verticalPadding,q=this.pointerWidth,r=this.pointerOrientation,s=this.cornerRadius,t=c.fontFamily,u=this.fontSize;void 0==u&&(u=c.fontSize);var k=document.createElement("div"),v=c.classNamePrefix;k.className=v+"-balloon-div",this.className&&(k.className=k.className+" "+v+"-balloon-div-"+this.className),v=k.style,v.pointerEvents="none",v.position="absolute";var w=this.minWidth,x="";isNaN(w)||(x="min-width:"+(w-2*o)+"px; "),k.innerHTML='
'+this.text+"
",c.chartDiv.appendChild(k),this.textDiv=k,u=k.offsetWidth,t=k.offsetHeight,k.clientHeight&&(u=k.clientWidth,t=k.clientHeight),t+=2*p,x=u+2*o,!isNaN(w)&&w>x&&(x=w),window.opera&&(t+=2);var y=!1,u=this.offsetY;c.handDrawn&&(u+=c.handDrawScatter+2),"H"!=r?(w=a-x/2,h+t+10>b&&"down"!=r?(y=!0,d&&(b+=u),u=b+q,this.deltaSignY=-1):(d&&(b-=u),u=b-t-q,this.deltaSignY=1)):(2*q>t&&(q=t/2),u=b-t/2,g+(i-g)/2>a?(w=a+q,this.deltaSignX=-1):(w=a-x-q,this.deltaSignX=1)),u+t>=j&&(u=j-t),h>u&&(u=h),g>w&&(w=g),w+x>i&&(w=i-x);var z,h=u+p,j=w+o,p=this.shadowAlpha,A=this.shadowColor,o=this.borderThickness,B=this.bulletSize;s>0||0===q?(p>0&&(a=AmCharts.rect(e,x,t,l,0,o+1,A,p,this.cornerRadius),AmCharts.isModern?a.translate(1,1):a.translate(4,4),f.push(a)),l=AmCharts.rect(e,x,t,l,this.fillAlpha,o,m,this.borderAlpha,this.cornerRadius),this.showBullet&&(z=AmCharts.circle(e,B,n,this.fillAlpha),f.push(z))):(n=[],s=[],"H"!=r?(g=a-w,g>x-q&&(g=x-q),q>g&&(g=q),n=[0,g-q,a-w,g+q,x,x,0,0],s=y?[0,0,b-u,0,0,t,t,0]:[t,t,b-u,t,t,0,0,t]):(n=b-u,n>t-q&&(n=t-q),q>n&&(n=q),s=[0,n-q,b-u,n+q,t,t,0,0],n=g+(i-g)/2>a?[0,0,a>w?0:a-w,0,0,x,x,0]:[x,x,w+x>a?x:a-w,x,x,0,0,x]),p>0&&(a=AmCharts.polygon(e,n,s,l,0,o,A,p),a.translate(1,1),f.push(a)),l=AmCharts.polygon(e,n,s,l,this.fillAlpha,o,m,this.borderAlpha)),this.bg=l,f.push(l),l.toFront(),AmCharts.setCN(c,l,"balloon-bg"),this.className&&AmCharts.setCN(c,l,"balloon-bg-"+this.className),e=1*this.deltaSignX,v.left=j+"px",v.top=h+"px",f.translate(w-e,u),l=l.getBBox(),this.bottom=u+t+1,this.yPos=l.y+u,z&&z.translate(this.pointToX-w+e,b-u),b=this.animationDuration, -0this.r-d.width&&(a=this.r-d.width),e0){a.destroyTO=setTimeout(function(){a.destroy.call(a)},1e3*b),a.follow=!1,a.show=!1;var d=a.set;d&&(d.setAttr("opacity",a.fillAlpha),a.fadeAnim1=d.animate({opacity:0},b,"easeInSine")),a.textDiv&&(a.fadeAnim2=c.animate({node:a.textDiv},"opacity",1,0,b,"easeInSine",""))}else a.show=!1,a.follow=!1,a.destroy()},setPosition:function(a,b,c){this.pointToX=a,this.pointToY=b,c&&(a==this.previousX&&b==this.previousY||this.draw()),this.previousX=a,this.previousY=b},followCursor:function(a){var b=this;(b.follow=a)?(b.pShowBullet=b.showBullet,b.showBullet=!1):void 0!==b.pShowBullet&&(b.showBullet=b.pShowBullet),clearInterval(b.interval);var c=b.chart.mouseX,d=b.chart.mouseY;!isNaN(c)&&a&&(b.pointToX=c-b.offsetX*b.deltaSignX,b.pointToY=d,b.followMouse(),b.interval=setInterval(function(){b.followMouse.call(b)},40))},removeDiv:function(){if(this.textDiv){var a=this.textDiv.parentNode;a&&a.removeChild(this.textDiv)}},destroy:function(){clearInterval(this.interval),AmCharts.remove(this.set),this.removeDiv(),this.set=null}}),AmCharts.circle=function(a,b,c,d,e,f,g,h,i){return 0>=b&&(b=.001),(void 0==e||0===e)&&(e=.01),void 0===f&&(f="#000000"),void 0===g&&(g=0),d={fill:c,stroke:f,"fill-opacity":d,"stroke-width":e,"stroke-opacity":g},a=isNaN(i)?a.circle(0,0,b).attr(d):a.ellipse(0,0,b,i).attr(d),h&&a.gradient("radialGradient",[c,AmCharts.adjustLuminosity(c,-.6)]),a},AmCharts.text=function(a,b,c,d,e,f,g,h){return f||(f="middle"),"right"==f&&(f="end"),"left"==f&&(f="start"),isNaN(h)&&(h=1),void 0!==b&&(b=String(b),AmCharts.isIE&&!AmCharts.isModern&&(b=b.replace("&","&"),b=b.replace("&","&"))),c={fill:c,"font-family":d,"font-size":e,opacity:h},!0===g&&(c["font-weight"]="bold"),c["text-anchor"]=f,a.text(b,c)},AmCharts.polygon=function(a,b,c,d,e,f,g,h,i,j,k){isNaN(f)&&(f=.01),isNaN(h)&&(h=e);var l=d,m=!1;for("object"==typeof l&&10&&(e["stroke-dasharray"]=k),k=AmCharts.dx,f=AmCharts.dy,a.handDrawn&&(c=AmCharts.makeHD(b,c,a.handDrawScatter),b=c[0],c=c[1]),g=Math.round,j&&(g=AmCharts.doNothing),j="M"+(g(b[0])+k)+","+(g(c[0])+f),h=1;hb&&(b=Math.abs(b),n=-b),0>c&&(c=Math.abs(c),o=-c),n+=AmCharts.dx,o+=AmCharts.dy,e={fill:l,stroke:g,"fill-opacity":e,"stroke-opacity":h},void 0!==k&&k>0&&(e["stroke-dasharray"]=k),a=a.rect(n,o,b,c,i,f).attr(e),m&&a.gradient("linearGradient",d,j),a},AmCharts.bullet=function(a,b,c,d,e,f,g,h,i,j,k){var l;switch("circle"==b&&(b="round"),b){case"round":l=AmCharts.circle(a,c/2,d,e,f,g,h);break;case"square":l=AmCharts.polygon(a,[-c/2,c/2,c/2,-c/2],[c/2,c/2,-c/2,-c/2],d,e,f,g,h,j-180);break;case"rectangle":l=AmCharts.polygon(a,[-c,c,c,-c],[c/2,c/2,-c/2,-c/2],d,e,f,g,h,j-180);break;case"diamond":l=AmCharts.polygon(a,[-c/2,0,c/2,0],[0,-c/2,0,c/2],d,e,f,g,h);break;case"triangleUp":l=AmCharts.triangle(a,c,0,d,e,f,g,h);break;case"triangleDown":l=AmCharts.triangle(a,c,180,d,e,f,g,h);break;case"triangleLeft":l=AmCharts.triangle(a,c,270,d,e,f,g,h);break;case"triangleRight":l=AmCharts.triangle(a,c,90,d,e,f,g,h);break;case"bubble":l=AmCharts.circle(a,c/2,d,e,f,g,h,!0);break;case"line":l=AmCharts.line(a,[-c/2,c/2],[0,0],d,e,f,g,h);break;case"yError":l=a.set(),l.push(AmCharts.line(a,[0,0],[-c/2,c/2],d,e,f)),l.push(AmCharts.line(a,[-i,i],[-c/2,-c/2],d,e,f)),l.push(AmCharts.line(a,[-i,i],[c/2,c/2],d,e,f));break;case"xError":l=a.set(),l.push(AmCharts.line(a,[-c/2,c/2],[0,0],d,e,f)),l.push(AmCharts.line(a,[-c/2,-c/2],[-i,i],d,e,f)),l.push(AmCharts.line(a,[c/2,c/2],[-i,i],d,e,f))}return l&&l.pattern(k),l},AmCharts.triangle=function(a,b,c,d,e,f,g,h){(void 0===f||0===f)&&(f=1),void 0===g&&(g="#000"),void 0===h&&(h=0),d={fill:d,stroke:g,"fill-opacity":e,"stroke-width":f,"stroke-opacity":h},b/=2;var i;return 0===c&&(i=" M"+-b+","+b+" L0,"+-b+" L"+b+","+b+" Z"),180==c&&(i=" M"+-b+","+-b+" L0,"+b+" L"+b+","+-b+" Z"),90==c&&(i=" M"+-b+","+-b+" L"+b+",0 L"+-b+","+b+" Z"),270==c&&(i=" M"+-b+",0 L"+b+","+b+" L"+b+","+-b+" Z"),a.path(i).attr(d)},AmCharts.line=function(a,b,c,d,e,f,g,h,i,j,k){if(a.handDrawn&&!k)return AmCharts.handDrawnLine(a,b,c,d,e,f,g,h,i,j,k);for(f={fill:"none","stroke-width":f},void 0!==g&&g>0&&(f["stroke-dasharray"]=g),isNaN(e)||(f["stroke-opacity"]=e),d&&(f.stroke=d),d=Math.round,j&&(d=AmCharts.doNothing),j=AmCharts.dx,e=AmCharts.dy,g="M"+(d(b[0])+j)+","+(d(c[0])+e),h=1;h=l;l++){var m=g+l*i+Math.random()*c,n=h+l*j+Math.random()*c;d.push(m),e.push(n)}return[d,e]},AmCharts.handDrawnLine=function(a,b,c,d,e,f,g,h,i,j,k){var l=a.set();for(k=1;k359.94&&(p=359.94),e>=p&&(e=p);var q=1/180*Math.PI,p=b+Math.sin(d*q)*h,r=c-Math.cos(d*q)*n,s=b+Math.sin(d*q)*f,t=c-Math.cos(d*q)*g,u=b+Math.sin((d+e)*q)*f,v=c-Math.cos((d+e)*q)*g,w=b+Math.sin((d+e)*q)*h,q=c-Math.cos((d+e)*q)*n,x={fill:AmCharts.adjustLuminosity(j.fill,-.2),"stroke-opacity":0,"fill-opacity":j["fill-opacity"]},y=0;180Math.abs(e)&&1>=Math.abs(u-s)&&1>=Math.abs(v-t)&&(z=!0)),e="";var A;if(l&&(x["fill-opacity"]=0,x["stroke-opacity"]=j["stroke-opacity"]/2,x.stroke=j.stroke),i>0&&(A=" M"+p+","+(r+i)+" L"+s+","+(t+i),o?(z||(A+=" A"+(b-f)+","+(i+c-g)+","+(b+f)+","+(i+c+g)+","+s+","+(t+i)+","+u+","+(v+i)),A+=" L"+w+","+(q+i),h>0&&(z||(A+=" B"+(b-h)+","+(i+c-n)+","+(b+h)+","+(i+c+n)+","+w+","+(i+q)+","+p+","+(i+r)))):(A+=" A"+f+","+g+",0,"+y+",1,"+u+","+(v+i)+" L"+w+","+(q+i),h>0&&(A+=" A"+h+","+n+",0,"+y+",0,"+p+","+(r+i))),A=a.path(A+" Z",void 0,void 0,"1000,1000").attr(x),d.push(A),A=a.path(" M"+p+","+r+" L"+p+","+(r+i)+" L"+s+","+(t+i)+" L"+s+","+t+" L"+p+","+r+" Z",void 0,void 0,"1000,1000").attr(x),i=a.path(" M"+u+","+v+" L"+u+","+(v+i)+" L"+w+","+(q+i)+" L"+w+","+q+" L"+u+","+v+" Z",void 0,void 0,"1000,1000").attr(x),d.push(A),d.push(i)),o?(z||(e=" A"+m(b-f)+","+m(c-g)+","+m(b+f)+","+m(c+g)+","+m(s)+","+m(t)+","+m(u)+","+m(v)),f=" M"+m(p)+","+m(r)+" L"+m(s)+","+m(t)+e+" L"+m(w)+","+m(q)):f=" M"+p+","+r+" L"+s+","+t+(" A"+f+","+g+",0,"+y+",1,"+u+","+v)+" L"+w+","+q,h>0&&(o?z||(f+=" B"+(b-h)+","+(c-n)+","+(b+h)+","+(c+n)+","+w+","+q+","+p+","+r):f+=" A"+h+","+n+",0,"+y+",0,"+p+","+r),a.handDrawn&&(b=AmCharts.line(a,[p,s],[r,t],j.stroke,j.thickness*Math.random()*a.handDrawThickness,j["stroke-opacity"]),d.push(b)),a=a.path(f+" Z",void 0,void 0,"1000,1000").attr(j),k){for(b=[],c=0;ca.length&&(a=String(a[0])+String(a[0])+String(a[1])+String(a[1])+String(a[2])+String(a[2])),b=b||0;var c,d,e="#";for(d=0;3>d;d++)c=parseInt(a.substr(2*d,2),16),c=Math.round(Math.min(Math.max(0,c+c*b),255)).toString(16),e+=("00"+c).substr(c.length);return e},AmCharts.AmLegend=AmCharts.Class({construct:function(a){this.enabled=!0,this.cname="AmLegend",this.createEvents("rollOverMarker","rollOverItem","rollOutMarker","rollOutItem","showItem","hideItem","clickMarker","rollOverItem","rollOutItem","clickLabel"),this.position="bottom",this.borderColor=this.color="#000000",this.borderAlpha=0,this.markerLabelGap=5,this.verticalGap=10,this.align="left",this.horizontalGap=0,this.spacing=10,this.markerDisabledColor="#AAB3B3",this.markerType="square",this.markerSize=16,this.markerBorderThickness=this.markerBorderAlpha=1,this.marginBottom=this.marginTop=0,this.marginLeft=this.marginRight=20,this.autoMargins=!0,this.valueWidth=50,this.switchable=!0,this.switchType="x",this.switchColor="#FFFFFF",this.rollOverColor="#CC0000",this.reversedOrder=!1,this.labelText="[[title]]",this.valueText="[[value]]",this.useMarkerColorForLabels=!1,this.rollOverGraphAlpha=1,this.textClickEnabled=!1,this.equalWidths=!0,this.dateFormat="DD-MM-YYYY",this.backgroundColor="#FFFFFF",this.backgroundAlpha=0,this.useGraphSettings=!1,this.showEntries=!0,AmCharts.applyTheme(this,a,this.cname)},setData:function(a){this.legendData=a,this.invalidateSize()},invalidateSize:function(){this.destroy(),this.entries=[],this.valueLabels=[];var a=this.legendData;this.enabled&&(AmCharts.ifArray(a)||AmCharts.ifArray(this.data))&&this.drawLegend()},drawLegend:function(){var a=this.chart,b=this.position,c=this.width,d=a.divRealWidth,e=a.divRealHeight,f=this.div,g=this.legendData;if(this.data&&(g=this.data),isNaN(this.fontSize)&&(this.fontSize=a.fontSize),"right"==b||"left"==b)this.maxColumns=1,this.autoMargins&&(this.marginLeft=this.marginRight=10);else if(this.autoMargins){this.marginRight=a.marginRight,this.marginLeft=a.marginLeft;var h=a.autoMarginOffset;"bottom"==b?(this.marginBottom=h,this.marginTop=0):(this.marginTop=h,this.marginBottom=0)}if(c=void 0!==c?AmCharts.toCoordinate(c,d):a.realWidth,"outside"==b?(c=f.offsetWidth,e=f.offsetHeight,f.clientHeight&&(c=f.clientWidth,e=f.clientHeight)):(isNaN(c)||(f.style.width=c+"px"),f.className="amChartsLegend "+a.classNamePrefix+"-legend-div"),this.divWidth=c,(b=this.container)?(b.container.innerHTML="",f.appendChild(b.container),b.width=c,b.height=e,b.addDefs(a)):b=new AmCharts.AmDraw(f,c,e,a),this.container=b,this.lx=0,this.ly=8,e=this.markerSize,e>this.fontSize&&(this.ly=e/2-1),e>0&&(this.lx+=e+this.markerLabelGap),this.titleWidth=0,(e=this.title)&&(e=AmCharts.text(this.container,e,this.color,a.fontFamily,this.fontSize,"start",!0),AmCharts.setCN(a,e,"legend-title"),e.translate(this.marginLeft,this.marginTop+this.verticalGap+this.ly+1),a=e.getBBox(),this.titleWidth=a.width+15,this.titleHeight=a.height+6),this.index=this.maxLabelWidth=0,this.showEntries){for(a=0;am&&(m=u),r=r.height,r>n&&(n=r)}var u=n=0,v=f,w=0,x=0;for(s=0;sx&&(x=r.height),z+r.width>l&&s>0&&0!==u&&(n++,u=0,z=f,v=z+r.width+f+k,w=w+x+j,x=0),y.translate(z,w),u++,!isNaN(i)&&u>=i&&(u=0,n++,w=w+x+j,x=0),q.push(y)}r=q.getBBox(),i=r.height+2*j-1,"left"==a||"right"==a?(k=r.width+2*f,h=k+b+c,g.style.width=h+"px",this.ieW=h):k=h-b-c-1,c=AmCharts.polygon(this.container,[0,k,k,0],[0,0,i,i],this.backgroundColor,this.backgroundAlpha,1,this.borderColor,this.borderAlpha),AmCharts.setCN(this.chart,c,"legend-bg"),p.push(c),p.translate(b,d),c.toBack(),b=f,("top"==a||"bottom"==a||"absolute"==a||"outside"==a)&&("center"==this.align?b=f+(k-r.width)/2:"right"==this.align&&(b=f+k-r.width)),q.translate(b,j+1),this.titleHeight>i&&(i=this.titleHeight),a=i+d+e+1,0>a&&(a=0),a>this.chart.divRealHeight&&(g.style.top="0px"),g.style.height=Math.round(a)+"px",o.setSize(this.divWidth,a)},createEntry:function(a){if(!1!==a.visibleInLegend){var b=this.chart,c=a.markerType;a.legendEntryWidth=this.markerSize,c||(c=this.markerType);var d=a.color,e=a.alpha;a.legendKeyColor&&(d=a.legendKeyColor()),a.legendKeyAlpha&&(e=a.legendKeyAlpha());var f;!0===a.hidden&&(f=d=this.markerDisabledColor);var g=a.pattern,h=a.customMarker;h||(h=this.customMarker);var i=this.container,j=this.markerSize,k=0,l=0,m=j/2;if(this.useGraphSettings){if(c=a.type,this.switchType=void 0,"line"==c||"step"==c||"smoothedLine"==c||"ohlc"==c)g=i.set(),a.hidden||(d=a.lineColorR,f=a.bulletBorderColorR),k=AmCharts.line(i,[0,2*j],[j/2,j/2],d,a.lineAlpha,a.lineThickness,a.dashLength),AmCharts.setCN(b,k,"graph-stroke"),g.push(k),a.bullet&&(a.hidden||(d=a.bulletColorR),k=AmCharts.bullet(i,a.bullet,a.bulletSize,d,a.bulletAlpha,a.bulletBorderThickness,f,a.bulletBorderAlpha))&&(AmCharts.setCN(b,k,"graph-bullet"),k.translate(j+1,j/2),g.push(k)),m=0,k=j,l=j/3;else{var n;a.getGradRotation&&(n=a.getGradRotation()),k=a.fillColorsR,!0===a.hidden&&(k=d),(g=this.createMarker("rectangle",k,a.fillAlphas,a.lineThickness,d,a.lineAlpha,n,g))&&(m=j,g.translate(m,j/2)),k=j}AmCharts.setCN(b,g,"graph-"+c),AmCharts.setCN(b,g,"graph-"+a.id)}else h?(b.path&&(h=b.path+h),g=i.image(h,0,0,j,j)):(g=this.createMarker(c,d,e,void 0,void 0,void 0,void 0,g))&&g.translate(j/2,j/2);AmCharts.setCN(b,g,"legend-marker"),this.addListeners(g,a),i=i.set([g]),this.switchable&&a.switchable&&i.setAttr("cursor","pointer"),void 0!=a.id&&AmCharts.setCN(b,i,"legend-item-"+a.id),AmCharts.setCN(b,i,a.className,!0),(f=this.switchType)&&"none"!=f&&("x"==f?(c=this.createX(),c.translate(j/2,j/2)):c=this.createV(),c.dItem=a,!0!==a.hidden?"x"==f?c.hide():c.show():"x"!=f&&c.hide(),this.switchable||c.hide(),this.addListeners(c,a),a.legendSwitch=c,i.push(c),AmCharts.setCN(b,c,"legend-switch")),f=this.color,a.showBalloon&&this.textClickEnabled&&void 0!==this.selectedColor&&(f=this.selectedColor),this.useMarkerColorForLabels&&(f=d),!0===a.hidden&&(f=this.markerDisabledColor),d=AmCharts.massReplace(this.labelText,{"[[title]]":a.title}),c=this.fontSize,g&&(c>=j&&g.translate(m,j/2+this.ly-c/2+(c+2-j)/2-l),a.legendEntryWidth=g.getBBox().width);var o;d&&(d=AmCharts.fixBrakes(d),a.legendTextReal=d,o=this.labelWidth,o=isNaN(o)?AmCharts.text(this.container,d,f,b.fontFamily,c,"start"):AmCharts.wrappedText(this.container,d,f,b.fontFamily,c,"start",!1,o,0),AmCharts.setCN(b,o,"legend-label"),o.translate(this.lx+k,this.ly),i.push(o),b=o.getBBox().width,this.maxLabelWidthd&&(d=c+7,AmCharts.VML&&(d+=3)),c=b.container.rect(a.legendEntryWidth,0,f,d,0,0).attr({stroke:"none",fill:"#fff","fill-opacity":.005}),c.dItem=a,b.entries[b.index-1].push(c),c.mouseover(function(c){b.rollOverLabel(a,c)}).mouseout(function(c){b.rollOutLabel(a,c)}).click(function(c){b.clickLabel(a,c)})}},createV:function(){var a=this.markerSize;return AmCharts.polygon(this.container,[a/5,a/2,a-a/5,a/2],[a/3,a-a/5,a/5,a/1.7],this.switchColor)},createX:function(){var a=(this.markerSize-4)/2,b={stroke:this.switchColor,"stroke-width":3},c=this.container,d=AmCharts.line(c,[-a,a],[-a,a]).attr(b),a=AmCharts.line(c,[-a,a],[a,-a]).attr(b);return this.container.set([d,a])},createMarker:function(a,b,c,d,e,f,g,h){var i=this.markerSize,j=this.container;return e||(e=this.markerBorderColor),e||(e=b),isNaN(d)&&(d=this.markerBorderThickness),isNaN(f)&&(f=this.markerBorderAlpha),AmCharts.bullet(j,a,i,b,c,d,e,f,i,g,h)},validateNow:function(){this.invalidateSize()},updateValues:function(){var a,b=this.valueLabels,c=this.chart,d=this.data;for(a=0;a0?b*d:b/d,c.minZoomLevel,c.maxZoomLevel),d=this.mouseX/this.mapWidth,c=this.mouseY/this.mapHeight,d=(this.zoomX()-d)*(a/b)+d,b=(this.zoomY()-c)*(a/b)+c,this.zoomTo(a,d,b)}},addLegend:function(a,b){return a.position="absolute",a.autoMargins=!1,a.valueWidth=0,a.switchable=!1,AmCharts.AmMap.base.addLegend.call(this,a,b),void 0==a.enabled&&(a.enabled=!0),a},handleLegendEvent:function(){},createDescriptionsDiv:function(){if(!this.descriptionsDiv){var a=document.createElement("div"),b=a.style;b.position="absolute",b.left="0px",b.top="0px",this.descriptionsDiv=a}this.containerDiv.appendChild(this.descriptionsDiv)},drawChart:function(){AmCharts.AmMap.base.drawChart.call(this);var a=this.dataProvider;this.dataProvider=a=AmCharts.extend(a,new AmCharts.MapData,!0),this.areasSettings=AmCharts.processObject(this.areasSettings,AmCharts.AreasSettings,this.theme),this.imagesSettings=AmCharts.processObject(this.imagesSettings,AmCharts.ImagesSettings,this.theme),this.linesSettings=AmCharts.processObject(this.linesSettings,AmCharts.LinesSettings,this.theme);var b=this.container;this.mapContainer&&this.mapContainer.remove(),this.mapContainer=b.set(),this.graphsSet.push(this.mapContainer);var c;a.map&&(c=AmCharts.maps[a.map]),a.mapVar&&(c=a.mapVar),c?(this.svgData=c.svg,this.getBounds(),this.buildEverything()):(a=a.mapURL)&&this.loadXml(a),this.balloonsSet.toFront()},drawBg:function(){var a=this;a.background.click(function(){a.handleBackgroundClick()})},buildEverything:function(){var a=this;if(0=1?(b=1,a.preventHover=!1,a.wheelBusy=!1):setTimeout(function(){a.updateSize.call(a)},AmCharts.updateRate),b>.8&&(a.preventHover=!1)):(b=1,a.preventHover=!1,a.wheelBusy=!1),a.tweenPercent=b,a.rescaleMapAndObjects()},rescaleMapAndObjects:function(){var a=this.initialScale,b=this.initialX,c=this.initialY,d=this.tweenPercent,a=a+(this.finalScale-a)*d;if(this.mapContainer.translate(b+(this.finalX-b)*d,c+(this.finalY-c)*d,a),this.areasSettings.adjustOutlineThickness)for(b=this.dataProvider.areas,c=0;ca-this.previousClickTime&&20Math.abs(n-h)&&(b.isDragging=!0),!isNaN(n)){var o=5*Math.abs(n-h)/i,i=a.scale,i=AmCharts.fitToBounds(h>n?i+i*o:i-i*o,g.minZoomLevel,g.maxZoomLevel),g=b.zoomLevel(),p=b.middleXP,n=b.middleYP,o=j/m,q=k/l,p=(b.zoomX()-p*q)*(i/g)+p*q,n=(b.zoomY()-n*o)*(i/g)+n*o;.1d/f?.8*e/(c*g):.8*f/(d*g),h.minZoomLevel,h.maxZoomLevel);this.zoomToMapXY(e,(a+c/2)*g,(b+d/2)*g)},zoomToLatLongRectangle:function(a,b,c,d){var e=this.dataProvider,f=this.zoomControl,g=Math.abs(c-a),h=Math.abs(b-d),i=Math.abs(e.rightLongitude-e.leftLongitude),e=Math.abs(e.topLatitude-e.bottomLatitude),f=AmCharts.fitToBounds(g/i>h/e?.8*i/g:.8*e/h,f.minZoomLevel,f.maxZoomLevel);this.zoomToLongLat(f,a+(c-a)/2,d+(b-d)/2)},getGroupById:function(a){var b=[];return this.getGroup(this.imagesProcessor.allObjects,a,b),this.getGroup(this.linesProcessor.allObjects,a,b),this.getGroup(this.areasProcessor.allObjects,a,b),b},zoomToGroup:function(a){a="object"==typeof a?a:this.getGroupById(a);var b,c,d,e,f;for(f=0;fh||isNaN(b))&&(b=h),(i>e||isNaN(e))&&(e=i),(c>j||isNaN(c))&&(c=j),(g>d||isNaN(d))&&(d=g)}a=this.mapSet.getBBox(),c-=a.x,d-=a.x,e-=a.y,b-=a.y,this.zoomToRectangle(c,b,d-c,e-b)},getGroup:function(a,b,c){if(a){var d;for(d=0;df/i?.8*h/e:.8*i/f:a.zoomLevel,i=this.zoomControl,h=AmCharts.fitToBounds(h,i.minZoomLevel,i.maxZoomLevel),isNaN(a.zoomX)&&isNaN(a.zoomY)&&isNaN(a.zoomLatitude)&&isNaN(a.zoomLongitude)&&(a=this.mapSet.getBBox(),this.zoomToMapXY(h,-a.x*b+c+e/2,-a.y*b+d+f/2)))}},zoomToSelectedObject:function(){this.zoomToObject(this.selectedObject)},zoomTo:function(a,b,c,d){var e=this.zoomControl;a=AmCharts.fitToBounds(a,e.minZoomLevel,e.maxZoomLevel),e=this.zoomLevel(),isNaN(b)&&(b=this.realWidth/this.mapWidth,b=(this.zoomX()-.5*b)*(a/e)+.5*b),isNaN(c)&&(c=this.realHeight/this.mapHeight,c=(this.zoomY()-.5*c)*(a/e)+.5*c),this.stopAnimation(),isNaN(a)||(e=this.mapContainer,this.initialX=e.x,this.initialY=e.y,this.initialScale=e.scale,this.finalX=this.mapWidth*b,this.finalY=this.mapHeight*c,this.finalScale=a,this.finalX!=this.initialX||this.finalY!=this.initialY||this.finalScale!=this.initialScale?d?(this.tweenPercent=1,this.rescaleMapAndObjects(),this.wheelBusy=!1):this.animateMap():this.wheelBusy=!1)},loadXml:function(a){var b;b=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP"),b.overrideMimeType&&b.overrideMimeType("text/xml"),b.open("GET",a,!1),b.send(),this.parseXMLObject(b.responseXML),this.svgData&&this.buildEverything()},stopAnimation:function(){this.frame=this.totalFrames},processObjects:function(){var a=this.container,b=this.stageImagesContainer;b&&b.remove(),this.stageImagesContainer=b=a.set(),this.trendLinesSet.push(b);var c=this.stageLinesContainer;c&&c.remove(),this.stageLinesContainer=c=a.set(),this.trendLinesSet.push(c);var d=this.mapImagesContainer;d&&d.remove(),this.mapImagesContainer=d=a.set(),this.mapContainer.push(d);var e=this.mapLinesContainer;e&&e.remove(),this.mapLinesContainer=e=a.set(),this.mapContainer.push(e),this.linesAboveImages?(d.toFront(),b.toFront(),e.toFront(),c.toFront()):(e.toFront(),c.toFront(),d.toFront(),b.toFront()),(a=this.selectedObject)&&(this.imagesProcessor.reset(),this.linesProcessor.reset(),this.linesAboveImages?(this.imagesProcessor.process(a),this.linesProcessor.process(a)):(this.linesProcessor.process(a),this.imagesProcessor.process(a))),this.rescaleObjects()},processAreas:function(){this.areasProcessor.process(this.dataProvider)},buildSVGMap:function(){var a=this.svgData.g.path,b=this.container,c=b.set();void 0===a.length&&(a=[a]);var d;for(d=0;df/d?c/e:d/f;a.translate(-b.x*c,-b.y*c,c),this.mapScale=c,this.mapHeight=f*c,this.mapWidth=e*c}else b=group.transform.match(/([\-]?[\d.]+)/g),a.translate(b[0],b[1],b[2])},zoomIn:function(){this.skipClick=!0;var a=this.zoomLevel()*this.zoomControl.zoomFactor;this.zoomTo(a)},zoomOut:function(){this.skipClick=!0;var a=this.zoomLevel()/this.zoomControl.zoomFactor;this.zoomTo(a)},moveLeft:function(){this.skipClick=!0;var a=this.zoomX()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveRight:function(){this.skipClick=!0;var a=this.zoomX()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveUp:function(){this.skipClick=!0;var a=this.zoomY()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},moveDown:function(){this.skipClick=!0;var a=this.zoomY()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},zoomX:function(){return this.mapSet?Math.round(1e4*this.mapContainer.x/this.mapWidth)/1e4:NaN},zoomY:function(){return this.mapSet?Math.round(1e4*this.mapContainer.y/this.mapHeight)/1e4:NaN},goHome:function(){this.selectObject(this.dataProvider);var a={type:"homeButtonClicked",chart:this};this.fire(a.type,a)},zoomLevel:function(){return Math.round(1e5*this.mapContainer.scale)/1e5},showDescriptionAndGetUrl:function(){var a=this.selectedObject;if(a){this.showDescription();var b=a.url;if(b)AmCharts.getURL(b,a.urlTarget);else if(b=a.linkToObject){if("string"==typeof b){var c=this.getObjectById(b);if(c)return void this.selectObject(c)}b&&a.passZoomValuesToTarget&&(b.zoomLatitude=this.zoomLatitude(),b.zoomLongitude=this.zoomLongitude(),b.zoomLevel=this.zoomLevel()),this.extendMapData(b)||this.selectObject(b)}}},extendMapData:function(a){var b=a.objectType;return"MapImage"!=b&&"MapArea"!=b&&"MapLine"!=b?(AmCharts.extend(a,new AmCharts.MapData,!0),this.dataProvider=a,this.zoomInstantly=!0,this.validateData(),!0):void 0},showDescription:function(a){if(a||(a=this.selectedObject),this.allowMultipleDescriptionWindows||this.closeAllDescriptions(),a.description){var b=a.descriptionWindow;b&&b.close(),b=new AmCharts.DescriptionWindow,a.descriptionWindow=b;var c=a.descriptionWindowWidth,d=a.descriptionWindowHeight,e=a.descriptionWindowLeft,f=a.descriptionWindowTop,g=a.descriptionWindowRight,h=a.descriptionWindowBottom;isNaN(g)||(e=this.realWidth-g),isNaN(h)||(f=this.realHeight-h);var i=a.descriptionWindowX;isNaN(i)||(e=i),i=a.descriptionWindowY,isNaN(i)||(f=i),isNaN(e)&&(e=this.mouseX,e=e>this.realWidth/2?e-c-20:e+20),isNaN(f)&&(f=this.mouseY),b.maxHeight=d,i=a.title,a.titleTr&&(i=a.titleTr),b.show(this,this.descriptionsDiv,a.description,i),a=b.div.style,a.position="absolute",a.width=c+"px",a.maxHeight=d+"px",isNaN(h)||(f-=b.div.offsetHeight),isNaN(g)||(e-=b.div.offsetWidth),a.left=e+"px",a.top=f+"px"}},parseXMLObject:function(a){var b={root:{}};this.parseXMLNode(b,"root",a),this.svgData=b.root.svg,this.getBounds()},getBounds:function(){var a=this.dataProvider;try{var b=this.svgData.defs["amcharts:ammap"];a.leftLongitude=Number(b.leftLongitude),a.rightLongitude=Number(b.rightLongitude),a.topLatitude=Number(b.topLatitude),a.bottomLatitude=Number(b.bottomLatitude),a.projection=b.projection;var c=b.wrappedLongitudes;c&&(a.rightLongitude+=360),a.wrappedLongitudes=c}catch(d){}},recalcLongitude:function(a){var b=this.dataProvider.wrappedLongitudes;return void 0!=a&&b&&a89.5&&(a=89.5),-89.5>a&&(a=-89.5),a=AmCharts.degreesToRadians(a),a=.5*Math.log((1+Math.sin(a))/(1-Math.sin(a))),AmCharts.radiansToDegrees(a/2)},zoomLatitude:function(){return this.coordinateToLatitude((-this.mapContainer.y+this.previousHeight/2)/this.zoomLevel())},zoomLongitude:function(){return this.coordinateToLongitude((-this.mapContainer.x+this.previousWidth/2)/this.zoomLevel())},getAreaCenterLatitude:function(a){a=a.displayObject.getBBox();var b=this.mapScale;return a=-this.mapSet.getBBox().y*b+(a.y+a.height/2)*b,this.coordinateToLatitude(a)},getAreaCenterLongitude:function(a){a=a.displayObject.getBBox();var b=this.mapScale;return a=-this.mapSet.getBBox().x*b+(a.x+a.width/2)*b,this.coordinateToLongitude(a)},coordinateToLatitude:function(a){var b;if(this.mapSet){var c=this.dataProvider,d=c.bottomLatitude,e=c.topLatitude;b=this.mapHeight,"mercator"==c.projection?(c=this.mercatorLatitudeToCoordinate(d),e=this.mercatorLatitudeToCoordinate(e),a=2*Math.atan(Math.exp(2*(a*(c-e)/b+e)*Math.PI/180))-.5*Math.PI,b=AmCharts.radiansToDegrees(a)):b=a/b*(d-e)+e}return Math.round(1e6*b)/1e6},coordinateToLongitude:function(a){var b,c=this.dataProvider;return this.mapSet&&(b=a/this.mapWidth*(c.rightLongitude-c.leftLongitude)+c.leftLongitude),Math.round(1e6*b)/1e6},milesToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/69.172},kilometersToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/111.325},handleBackgroundClick:function(a){if(this.backgroundZoomsToTop&&!this.mapWasDragged){var b=this.dataProvider;if(this.checkIfClickable(b))this.clickMapObject(b);else{a=b.zoomX;var c=b.zoomY,d=b.zoomLongitude,e=b.zoomLatitude,b=b.zoomLevel;isNaN(a)||isNaN(c)||this.zoomTo(b,a,c),isNaN(d)||isNaN(e)||this.zoomToLongLat(b,d,e,!0)}}},parseXMLNode:function(a,b,c,d){void 0===d&&(d="");var e,f,g;if(c){var h=c.childNodes.length;for(e=0;h>e;e++){f=c.childNodes[e];var i=f.nodeName,j=f.nodeValue?this.trim(f.nodeValue):"",k=!1;if(f.attributes&&0=0;b--)if(-1===" \n\r \f             ​\u2028\u2029 ".indexOf(a.charAt(b))){a=a.substring(0,b+1);break}return-1===" \n\r \f             ​\u2028\u2029 ".indexOf(a.charAt(0))?a:""}},destroy:function(){var a=this.svgAreas;if(a)for(var b=0;bw;w++)u=e+w*f,u=AmCharts.line(b,[1,e-2],[u,u],c.gridColor,c.gridAlpha,1),AmCharts.setCN(a,u,"zoom-grid"),v.push(u);u=new AmCharts.SimpleButton,u.setDownHandler(c.draggerDown,c),u.setClickHandler(c.draggerUp,c),u.init(b,e,f,h,i,j,k,l,m,n),AmCharts.setCN(a,u.set,"zoom-dragger"),v.push(u.set),c.dragger=u.set,c.previousY=NaN,o-=f,q=Math.log(q/100)/Math.log(p),p=Math.log(r/100)/Math.log(p),c.realStepSize=o/(p-q),c.realGridHeight=o,c.stepMax=p}g&&(g=b.set(),AmCharts.setCN(a,g,"zoom-control-pan"),d.push(g),v&&v.translate(e,4*e),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panLeft.gif",c.iconSize),v.setClickHandler(a.moveLeft,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(0,e),AmCharts.setCN(a,v.set,"pan-left"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panRight.gif",c.iconSize),v.setClickHandler(a.moveRight,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(2*e,e),AmCharts.setCN(a,v.set,"pan-right"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panUp.gif",c.iconSize),v.setClickHandler(a.moveUp,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(e,0),AmCharts.setCN(a,v.set,"pan-up"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panDown.gif",c.iconSize),v.setClickHandler(a.moveDown,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(e,2*e),AmCharts.setCN(a,v.set,"pan-down"),g.push(v.set),i=new AmCharts.SimpleButton,i.setIcon(a.pathToImages+c.homeIconFile,c.iconSize),i.setClickHandler(a.goHome,a),i.init(b,e,e,h,0,0,k,0,m,n,s),i.set.translate(e,e),AmCharts.setCN(a,i.set,"pan-home"),g.push(i.set),d.push(g))},draggerDown:function(){this.chart.stopDrag(),this.isDragging=!0},draggerUp:function(){this.isDragging=!1},handleBgUp:function(){var a=this.chart,b=100*Math.pow(this.zoomFactor,this.stepMax-(a.mouseY-this.zoomSet.y-this.set.y-this.buttonSize-this.realStepSize/2)/this.realStepSize);a.zoomTo(b)},update:function(){var a,b=this.zoomFactor,c=this.realStepSize,d=this.stepMax,e=this.dragger,f=this.buttonSize,g=this.chart;this.isDragging?(g.stopDrag(),a=e.y+(g.mouseY-this.previousY),a=AmCharts.fitToBounds(a,f,this.realGridHeight+f),c=100*Math.pow(b,d-(a-f)/c),g.zoomTo(c,NaN,NaN,!0)):(a=Math.log(g.zoomLevel()/100)/Math.log(b),a=(d-a)*c+f),this.previousY=g.mouseY,this.previousDY!=a&&e&&(e.translate(0,a),this.previousDY=a)}}),AmCharts.SimpleButton=AmCharts.Class({construct:function(){},init:function(a,b,c,d,e,f,g,h,i,j,k){var l=this;l.rollOverColor=j,l.color=d,j=a.set(),l.set=j,d=AmCharts.rect(a,b,c,d,e,f,g,h,i),j.push(d),(e=l.iconPath)&&(f=l.iconSize,a=a.image(e,(b-f)/2,(c-f)/2,f,f),j.push(a),a.setAttr("opacity",k),a.mousedown(function(){l.handleDown()}).mouseup(function(){l.handleUp()}).mouseover(function(){l.handleOver()}).mouseout(function(){l.handleOut()})),d.mousedown(function(){l.handleDown()}).touchstart(function(){l.handleDown()}).mouseup(function(){l.handleUp()}).touchend(function(){l.handleUp()}).mouseover(function(){l.handleOver()}).mouseout(function(){l.handleOut()}),l.bg=d},setIcon:function(a,b){this.iconPath=a,this.iconSize=b},setClickHandler:function(a,b){this.clickHandler=a,this.scope=b},setDownHandler:function(a,b){this.downHandler=a,this.scope=b},handleUp:function(){var a=this.clickHandler;a&&a.call(this.scope)},handleDown:function(){var a=this.downHandler;a&&a.call(this.scope)},handleOver:function(){this.bg.setAttr("fill",this.rollOverColor)},handleOut:function(){this.bg.setAttr("fill",this.color)}}),AmCharts.SmallMap=AmCharts.Class({construct:function(a){this.cname="SmallMap",this.mapColor="#e6e6e6",this.rectangleColor="#FFFFFF",this.top=this.right=10,this.minimizeButtonWidth=16,this.backgroundColor="#9A9A9A",this.backgroundAlpha=1,this.borderColor="#FFFFFF",this.borderThickness=3,this.borderAlpha=1,this.size=.2,this.enabled=!0,AmCharts.applyTheme(this,a,this.cname)},init:function(a,b){var c=this;if(c.enabled){c.chart=a,c.container=b,c.width=a.realWidth*c.size,c.height=a.realHeight*c.size,AmCharts.remove(c.set);var d=b.set();c.set=d,AmCharts.setCN(a,d,"small-map");var e=b.set();c.allSet=e,d.push(e),c.buildSVGMap();var f=c.borderThickness,g=c.borderColor,h=AmCharts.rect(b,c.width+f,c.height+f,c.backgroundColor,c.backgroundAlpha,f,g,c.borderAlpha);AmCharts.setCN(a,h,"small-map-bg"),h.translate(-f/2,-f/2),e.push(h),h.toBack();var i,j,h=c.minimizeButtonWidth,k=new AmCharts.SimpleButton;k.setIcon(a.pathToImages+"arrowDown.gif",h),k.setClickHandler(c.minimize,c),k.init(b,h,h,g,1,1,g,1),AmCharts.setCN(a,k.set,"small-map-down"),k=k.set,c.downButtonSet=k,d.push(k);var l=new AmCharts.SimpleButton;l.setIcon(a.pathToImages+"arrowUp.gif",h),l.setClickHandler(c.maximize,c),l.init(b,h,h,g,1,1,g,1),AmCharts.setCN(a,l.set,"small-map-up"),g=l.set,c.upButtonSet=g,g.hide(),d.push(g);var m,n;isNaN(c.top)||(i=a.getY(c.top)+f,n=0),isNaN(c.bottom)||(i=a.getY(c.bottom,!0)-c.height-f,n=c.height-h+f/2),isNaN(c.left)||(j=a.getX(c.left)+f,m=-f/2),isNaN(c.right)||(j=a.getX(c.right,!0)-c.width-f,m=c.width-h+f/2),f=b.set(),f.clipRect(1,1,c.width,c.height),e.push(f),c.rectangleC=f,d.translate(j,i),k.translate(m,n),g.translate(m,n),e.mouseup(function(){c.handleMouseUp()}),c.drawRectangle()}else AmCharts.remove(c.allSet),AmCharts.remove(c.downButtonSet),AmCharts.remove(c.upButtonSet)},minimize:function(){this.downButtonSet.hide(),this.upButtonSet.show(),this.allSet.hide()},maximize:function(){this.downButtonSet.show(),this.upButtonSet.hide(),this.allSet.show()},buildSVGMap:function(){var a=this.chart,b={fill:this.mapColor,stroke:this.mapColor,"stroke-opacity":1},c=a.svgData.g.path,d=this.container,e=d.set();AmCharts.setCN(a,e,"small-map-image");var f;for(f=0;f0&&b>0&&(e.setAttr("width",Math.ceil(c+1)),e.setAttr("height",Math.ceil(b+1))),this.rWidth=c,this.rHeight=b},drawRectangle:function(){var a=this.rectangle;AmCharts.remove(a),a=AmCharts.rect(this.container,10,10,"#000",0,1,this.rectangleColor,1),AmCharts.setCN(this.chart,a,"small-map-rectangle"),this.rectangleC.push(a),this.rectangle=a},handleMouseUp:function(){var a=this.chart,b=a.zoomLevel();a.zoomTo(b,-((a.mouseX-this.set.x-this.dx-this.rWidth/2)/this.mapWidth)*b,-((a.mouseY-this.set.y-this.dy-this.rHeight/2)/this.mapHeight)*b)}}),AmCharts.AreasProcessor=AmCharts.Class({construct:function(a){this.chart=a},process:function(a){this.updateAllAreas(),this.allObjects=[],a=a.areas;var b,c,d,e=this.chart,f=a.length,g=0,h=e.svgAreasById,i=!1,j=!1,k=0;for(c=0;f>c;c++)d=a[c],d=d.value,(!1===i||d>i)&&(i=d),(!1===j||j>d)&&(j=d),isNaN(d)||(g+=Math.abs(d),k++);for(isNaN(e.minValue)||(j=e.minValue),isNaN(e.maxValue)||(i=e.maxValue),e.maxValueReal=i,e.minValueReal=j,c=0;f>c;c++)d=a[c],isNaN(d.value)?d.percents=void 0:(d.percents=(d.value-j)/g*100,j==i&&(d.percents=100));for(c=0;f>c;c++){d=a[c];var l=h[d.id];b=e.areasSettings,l&&l.className&&(g=e.areasClasses[l.className])&&(b=g,b=AmCharts.processObject(b,AmCharts.AreasSettings,e.theme));var m=b.color,n=b.alpha,o=b.outlineThickness,p=b.rollOverColor,q=b.selectedColor,r=b.rollOverAlpha,s=b.outlineColor,t=b.outlineAlpha,u=b.balloonText,v=b.selectable,w=b.pattern,x=b.rollOverOutlineColor,y=b.bringForwardOnHover,z=b.preserveOriginalAttributes; -if(this.allObjects.push(d),d.chart=e,d.baseSettings=b,d.autoZoomReal=void 0==d.autoZoom?b.autoZoom:d.autoZoom,g=d.color,void 0==g&&(g=m),k=d.alpha,isNaN(k)&&(k=n),n=d.rollOverAlpha,isNaN(n)&&(n=r),isNaN(n)&&(n=k),r=d.rollOverColor,void 0==r&&(r=p),p=d.pattern,void 0==p&&(p=w),w=d.selectedColor,void 0==w&&(w=q),(q=d.balloonText)||(q=u),void 0==b.colorSolid||isNaN(d.value)||(u=Math.floor((d.value-j)/((i-j)/e.colorSteps)),u==e.colorSteps&&u--,colorPercent=1/(e.colorSteps-1)*u,i==j&&(colorPercent=1),d.colorReal=AmCharts.getColorFade(g,b.colorSolid,colorPercent)),void 0!=d.color&&(d.colorReal=d.color),void 0==d.selectable&&(d.selectable=v),void 0==d.colorReal&&(d.colorReal=m),m=d.outlineColor,void 0==m&&(m=s),s=d.outlineAlpha,isNaN(s)&&(s=t),t=d.outlineThickness,isNaN(t)&&(t=o),o=d.rollOverOutlineColor,void 0==o&&(o=x),void 0==d.bringForwardOnHover&&(d.bringForwardOnHover=y),void 0==d.preserveOriginalAttributes&&(d.preserveOriginalAttributes=z),d.alphaReal=k,d.rollOverColorReal=r,d.rollOverAlphaReal=n,d.balloonTextReal=q,d.selectedColorReal=w,d.outlineColorReal=m,d.outlineAlphaReal=s,d.rollOverOutlineColorReal=o,d.outlineThicknessReal=t,d.patternReal=p,AmCharts.processDescriptionWindow(b,d),l&&(b=l.area,x=l.title,d.enTitle=l.title,x&&!d.title&&(d.title=x),(l=e.language)?(x=AmCharts.mapTranslations)&&(l=x[l])&&l[d.enTitle]&&(d.titleTr=l[d.enTitle]):d.titleTr=void 0,b)){d.displayObject=b,d.mouseEnabled&&e.addObjectEventListeners(b,d);var A;void 0!=g&&(A=g),void 0!=d.colorReal&&(A=d.showAsSelected||e.selectedObject==d?d.selectedColorReal:d.colorReal),b.node.setAttribute("class",""),AmCharts.setCN(e,b,"map-area"),AmCharts.setCN(e,b,"map-area-"+b.id),d.preserveOriginalAttributes||(b.setAttr("fill",A),b.setAttr("stroke",m),b.setAttr("stroke-opacity",s),b.setAttr("stroke-width",t),b.setAttr("fill-opacity",k)),p&&b.pattern(p,e.mapScale),d.hidden&&b.hide()}}},updateAllAreas:function(){var a,b=this.chart,c=b.areasSettings,d=c.unlistedAreasColor,e=c.unlistedAreasAlpha,f=c.unlistedAreasOutlineColor,g=c.unlistedAreasOutlineAlpha,h=b.svgAreas,i=b.dataProvider,j=i.areas,k={};for(a=0;a0&&(i=x.getBBox(),d=AmCharts.rect(d,i.width+16,i.height+10,h,y),AmCharts.setCN(c,d,"map-image-label-background"),void 0!=a.id&&AmCharts.setCN(c,d,"map-image-label-background-"+a.id),w.push(d),a.labelBG=d),a.imageLabel=x,w.push(x),AmCharts.setCN(c,w,"map-image-container"),void 0!=a.id&&AmCharts.setCN(c,w,"map-image-container-"+a.id)),isNaN(a.latitude)||isNaN(a.longitude)?f.push(w):e.push(w),w&&(w.rotation=a.rotation),this.updateSizeAndPosition(a),a.mouseEnabled&&c.addObjectEventListeners(w,a),a.hidden&&w.hide()},updateSizeAndPosition:function(a){var b=this.chart,c=a.displayObject,d=b.getX(a.left),e=b.getY(a.top),f=a.image.getBBox();isNaN(a.right)||(d=b.getX(a.right,!0)-f.width*a.scale),isNaN(a.bottom)||(e=b.getY(a.bottom,!0)-f.height*a.scale);var g=a.longitude,h=a.latitude,f=this.objectsToResize;this.allSvgObjects.push(c),this.allObjects.push(a);var i=a.imageLabel;isNaN(d)||isNaN(e)?isNaN(h)||isNaN(g)||(d=b.longitudeToCoordinate(g),e=b.latitudeToCoordinate(h),c.translate(d,e,NaN,!0),!a.fixedSize)||(d=1,(a.showAsSelected||b.selectedObject==a)&&(d=a.selectedScaleReal),f.push({image:c,scale:d})):c.translate(d,e),this.positionLabel(i,a,a.labelPositionReal)},positionLabel:function(a,b,c){if(a){var d=b.image,e=0,f=0,g=0,h=0;d&&(h=d.getBBox(),f=d.y,e=d.x,g=h.width,h=h.height,b.svgPath&&(g*=b.scale,h*=b.scale));var d=a.getBBox(),i=d.width,j=d.height;"right"==c&&(e+=g+i/2+5,f+=h/2-2),"left"==c&&(e+=-i/2-5,f+=h/2-2),"top"==c&&(f-=j/2+3,e+=g/2),"bottom"==c&&(f+=h+j/2,e+=g/2),"middle"==c&&(e+=g/2,f+=h/2),a.translate(e+b.labelShiftX,f+b.labelShiftY),b.labelBG&&b.labelBG.translate(e-d.width/2+b.labelShiftX-9,f+b.labelShiftY-d.height/2-3)}},createPredefinedImage:function(a,b,c,d,e,f){var g,h=this.chart.container;switch(d){case"circle":g=AmCharts.circle(h,e/2,a,1,c,b,1);break;case"rectangle":g=AmCharts.polygon(h,[-e/2,e/2,e/2,-e/2],[f/2,f/2,-f/2,-f/2],a,1,c,b,1);break;case"bubble":g=AmCharts.circle(h,e/2,a,1,c,b,1,!0)}return g},reset:function(){this.objectsToResize=[],this.allSvgObjects=[],this.allObjects=[],this.allLabels=[]}}),AmCharts.ImagesSettings=AmCharts.Class({construct:function(a){this.cname="ImagesSettings",this.balloonText="[[title]]",this.alpha=1,this.borderAlpha=0,this.borderThickness=1,this.labelPosition="right",this.labelColor="#000000",this.labelFontSize=11,this.color="#000000",this.labelRollOverColor="#00CC00",this.centered=!0,this.rollOverScale=this.selectedScale=1,this.descriptionWindowWidth=250,this.bringForwardOnHover=!0,AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.LinesProcessor=AmCharts.Class({construct:function(a){this.chart=a,this.reset()},process:function(a){var b,c=a.lines,d=this.chart,e=d.linesSettings,f=this.objectsToResize,g=d.mapLinesContainer,h=d.stageLinesContainer,i=e.thickness,j=e.dashLength,k=e.arrow,l=e.arrowSize,m=e.arrowColor,n=e.arrowAlpha,o=e.color,p=e.alpha,q=e.rollOverColor,r=e.selectedColor,s=e.rollOverAlpha,t=e.balloonText,u=e.bringForwardOnHover,v=d.container;for(b=0;b0)for(C=[],K=0;M>K;K++)C.push(d.longitudeToCoordinate(L[K]));if(M=F.length,M>0)for(D=[],K=0;M>K;K++)D.push(d.latitudeToCoordinate(F[K]));if(0B-M?N-90:N+90),"both"==G&&(B=AmCharts.polygon(v,[-J/2,0,J/2],[1.5*J,0,1.5*J],H,I,1,H,I),x.push(B),B.translate(O,P),B.rotate(N),AmCharts.setCN(d,L,"map-line-arrow"),void 0!=w.id&&AmCharts.setCN(d,L,"map-line-arrow-"+w.id),w.fixedSize&&f.push(B)),("start"==G||"both"==G)&&(B=C[0],P=D[0],1B-A?N-90:N+90),"middle"==G&&(B=C[C.length-1],A=D[D.length-1],1B-M?N-90:N+90),B=AmCharts.polygon(v,[-J/2,0,J/2],[1.5*J,0,1.5*J],H,I,1,H,I),AmCharts.setCN(d,L,"map-line-arrow"),void 0!=w.id&&AmCharts.setCN(d,L,"map-line-arrow-"+w.id),x.push(B),B.translate(O,P),B.rotate(N),w.fixedSize&&f.push(B),w.arrowSvg=B}w.fixedSize&&L&&(this.linesToResize.push({line:L,thickness:y}),this.linesToResize.push({line:z,thickness:3})),w.lineSvg=L,w.showAsSelected&&!isNaN(E)&&L.setAttr("stroke",E),0j;j++)k=AmCharts.getColorFade(c,d,1*j/(e-1)),k=AmCharts.rect(b,i,this.height,k,1,this.borderThickness,this.borderColor,1),AmCharts.setCN(a,k,"value-legend-color"),AmCharts.setCN(a,k,"value-legend-color-"+j),k.translate(i*j,g),f.push(k);d=c=0,e=f.getBBox(),g=a.getY(this.bottom,!0),i=a.getY(this.top),j=a.getX(this.right,!0),k=a.getX(this.left),isNaN(i)||(c=i),isNaN(g)||(c=g-e.height),isNaN(k)||(d=k),isNaN(j)||(d=j-e.width),f.translate(d,c)}else AmCharts.remove(this.set)}}),AmCharts.ObjectList=AmCharts.Class({construct:function(a){this.divId=a},init:function(a){this.chart=a;var b;b=this.divId,this.container&&(b=this.container),this.div=b="object"!=typeof b?document.getElementById(b):b,b=document.createElement("div"),b.className="ammapObjectList "+a.classNamePrefix+"-object-list-div",this.div.appendChild(b),this.addObjects(a.dataProvider,b)},addObjects:function(a,b){var c=this.chart,d=document.createElement("ul");d.className=c.classNamePrefix+"-object-list-ul";var e;if(a.areas)for(e=0;ef;++f){var i=g(a,b[f]);if(!i&&e.original)return e.original(b,c);d.push(i)}c&&c.apply(null,d)}else{if("string"==typeof b){var j=g(a,b);return!j&&e.original?e.original(b,c):(c&&c(),j)}if(e.original)return e.original(b,c)}},f=function(a,b){if(-1!==b.indexOf("!")){var c=b.split("!");return f(a,c[0])+"!"+f(a,c[1])}if("."==b.charAt(0)){var d=a.split("/").slice(0,-1).join("/");for(b=d+"/"+b;-1!==b.indexOf(".")&&e!=b;){var e=b;b=b.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return b},g=function(a,b){b=f(a,b);var c=d.modules[b];if(!c){if(c=d.payloads[b],"function"==typeof c){var g={},h={id:b,uri:"",exports:g,packaged:!0},i=function(a,c){return e(b,a,c)},j=c(i,g,h);g=j||h.exports,d.modules[b]=g,delete d.payloads[b]}c=d.modules[b]=g||c}return c};a(b)}}(),define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/multi_select","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(a,b,c){a("./lib/fixoldbrowsers");var d=a("./lib/dom"),e=a("./lib/event"),f=a("./editor").Editor,g=a("./edit_session").EditSession,h=a("./undomanager").UndoManager,i=a("./virtual_renderer").VirtualRenderer,j=a("./multi_select").MultiSelect;a("./worker/worker_client"),a("./keyboard/hash_handler"),a("./placeholder"),a("./mode/folding/fold_mode"),a("./theme/textmate"),a("./ext/error_marker"),b.config=a("./config"),b.require=a,b.edit=function(a){if("string"==typeof a){var c=a,a=document.getElementById(c);if(!a)throw new Error("ace.edit can't find div #"+c)}if(a.env&&a.env.editor instanceof f)return a.env.editor;var g=b.createEditSession(d.getInnerText(a));a.innerHTML="";var h=new f(new i(a));new j(h),h.setSession(g);var k={document:g,editor:h,onResize:h.resize.bind(h,null)};return e.addListener(window,"resize",k.onResize),h.on("destroy",function(){e.removeListener(window,"resize",k.onResize)}),a.env=h.env=k,h},b.createEditSession=function(a,b){var c=new g(a,b);return c.setUndoManager(new h),c},b.EditSession=g,b.UndoManager=h}),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(a,b,c){a("./regexp"),a("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(a,b,c){function d(a){return(a.global?"g":"")+(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.extended?"x":"")+(a.sticky?"y":"")}function e(a,b,c){if(Array.prototype.indexOf)return a.indexOf(b,c);for(var d=c||0;d1&&e(i,"")>-1&&(c=RegExp(this.source,f.replace.call(d(this),"g","")),f.replace.call(a.slice(i.index),c,function(){for(var a=1;ai.index&&this.lastIndex--}return i},h||(RegExp.prototype.test=function(a){var b=f.exec.call(this,a);return b&&this.global&&!b[0].length&&this.lastIndex>b.index&&this.lastIndex--,!!b}))}),define("ace/lib/es5-shim",["require","exports","module"],function(a,b,c){ -function d(){}function e(a){try{return Object.defineProperty(a,"sentinel",{}),"sentinel"in a}catch(b){}}function f(a){return a=+a,a!==a?a=0:0!==a&&a!==1/0&&a!==-(1/0)&&(a=(a>0||-1)*Math.floor(Math.abs(a))),a}Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError("Function.prototype.bind called on incompatible "+b);var c=o.call(arguments,1),e=function(){if(this instanceof e){var d=b.apply(this,c.concat(o.call(arguments)));return Object(d)===d?d:this}return b.apply(a,c.concat(o.call(arguments)))};return b.prototype&&(d.prototype=b.prototype,e.prototype=new d,d.prototype=null),e});var g,h,i,j,k,l=Function.prototype.call,m=Array.prototype,n=Object.prototype,o=m.slice,p=l.bind(n.toString),q=l.bind(n.hasOwnProperty);if((k=q(n,"__defineGetter__"))&&(g=l.bind(n.__defineGetter__),h=l.bind(n.__defineSetter__),i=l.bind(n.__lookupGetter__),j=l.bind(n.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function a(a){var b=new Array(a+2);return b[0]=b[1]=0,b}var b,c=[];return c.splice.apply(c,a(20)),c.splice.apply(c,a(26)),b=c.length,c.splice(5,0,"XXX"),b+1==c.length,b+1==c.length?!0:void 0}()){var r=Array.prototype.splice;Array.prototype.splice=function(a,b){return arguments.length?r.apply(this,[void 0===a?0:a,void 0===b?this.length-a:b].concat(o.call(arguments,2))):[]}}else Array.prototype.splice=function(a,b){var c=this.length;a>0?a>c&&(a=c):void 0==a?a=0:0>a&&(a=Math.max(c+a,0)),c>a+b||(b=c-a);var d=this.slice(a,a+b),e=o.call(arguments,2),f=e.length;if(a===c)f&&this.push.apply(this,e);else{var g=Math.min(b,c-a),h=a+g,i=h+f-g,j=c-h,k=c-g;if(h>i)for(var l=0;j>l;++l)this[i+l]=this[h+l];else if(i>h)for(l=j;l--;)this[i+l]=this[h+l];if(f&&a===k)this.length=k,this.push.apply(this,e);else for(this.length=k+f,l=0;f>l;++l)this[a+l]=e[l]}return d};Array.isArray||(Array.isArray=function(a){return"[object Array]"==p(a)});var s=Object("a"),t="a"!=s[0]||!(0 in s);if(Array.prototype.forEach||(Array.prototype.forEach=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=arguments[1],e=-1,f=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError;for(;++e>>0,e=Array(d),f=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var g=0;d>g;g++)g in c&&(e[g]=a.call(f,c[g],g,b));return e}),Array.prototype.filter||(Array.prototype.filter=function(a){var b,c=K(this),d=t&&"[object String]"==p(this)?this.split(""):c,e=d.length>>>0,f=[],g=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var h=0;e>h;h++)h in d&&(b=d[h],a.call(g,b,h,c)&&f.push(b));return f}),Array.prototype.every||(Array.prototype.every=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&!a.call(e,c[f],f,b))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&a.call(e,c[f],f,b))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var e,f=0;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f++];break}if(++f>=d)throw new TypeError("reduce of empty array with no initial value")}for(;d>f;f++)f in c&&(e=a.call(void 0,e,c[f],f,b));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var e,f=d-1;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f--];break}if(--f<0)throw new TypeError("reduceRight of empty array with no initial value")}do f in this&&(e=a.call(void 0,e,c[f],f,b));while(f--);return e}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=0;for(arguments.length>1&&(d=f(arguments[1])),d=d>=0?d:Math.max(0,c+d);c>d;d++)if(d in b&&b[d]===a)return d;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=c-1;for(arguments.length>1&&(d=Math.min(d,f(arguments[1]))),d=d>=0?d:c-Math.abs(d);d>=0;d--)if(d in b&&a===b[d])return d;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(a){return a.__proto__||(a.constructor?a.constructor.prototype:n)}),!Object.getOwnPropertyDescriptor){var u="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(a,b){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(u+a);if(q(a,b)){var c,d,e;if(c={enumerable:!0,configurable:!0},k){var f=a.__proto__;a.__proto__=n;var d=i(a,b),e=j(a,b);if(a.__proto__=f,d||e)return d&&(c.get=d),e&&(c.set=e),c}return c.value=a[b],c}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(a){return Object.keys(a)}),!Object.create){var v;v=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var a={};for(var b in a)a[b]=null;return a.constructor=a.hasOwnProperty=a.propertyIsEnumerable=a.isPrototypeOf=a.toLocaleString=a.toString=a.valueOf=a.__proto__=null,a},Object.create=function(a,b){var c;if(null===a)c=v();else{if("object"!=typeof a)throw new TypeError("typeof prototype["+typeof a+"] != 'object'");var d=function(){};d.prototype=a,c=new d,c.__proto__=a}return void 0!==b&&Object.defineProperties(c,b),c}}if(Object.defineProperty){var w=e({}),x="undefined"==typeof document||e(document.createElement("div"));if(!w||!x)var y=Object.defineProperty}if(!Object.defineProperty||y){var z="Property description must be an object: ",A="Object.defineProperty called on non-object: ",B="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(a,b,c){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(A+a);if("object"!=typeof c&&"function"!=typeof c||null===c)throw new TypeError(z+c);if(y)try{return y.call(Object,a,b,c)}catch(d){}if(q(c,"value"))if(k&&(i(a,b)||j(a,b))){var e=a.__proto__;a.__proto__=n,delete a[b],a[b]=c.value,a.__proto__=e}else a[b]=c.value;else{if(!k)throw new TypeError(B);q(c,"get")&&g(a,b,c.get),q(c,"set")&&h(a,b,c.set)}return a}}Object.defineProperties||(Object.defineProperties=function(a,b){for(var c in b)q(b,c)&&Object.defineProperty(a,c,b[c]);return a}),Object.seal||(Object.seal=function(a){return a}),Object.freeze||(Object.freeze=function(a){return a});try{Object.freeze(function(){})}catch(C){Object.freeze=function(a){return function(b){return"function"==typeof b?b:a(b)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(a){return a}),Object.isSealed||(Object.isSealed=function(a){return!1}),Object.isFrozen||(Object.isFrozen=function(a){return!1}),Object.isExtensible||(Object.isExtensible=function(a){if(Object(a)===a)throw new TypeError;for(var b="";q(a,b);)b+="?";a[b]=!0;var c=q(a,b);return delete a[b],c}),!Object.keys){var D=!0,E=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],F=E.length;for(var G in{toString:null})D=!1;Object.keys=function L(a){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError("Object.keys called on a non-object");var L=[];for(var b in a)q(a,b)&&L.push(b);if(D)for(var c=0,d=F;d>c;c++){var e=E[c];q(a,e)&&L.push(e)}return L}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||H.trim()){H="["+H+"]";var I=new RegExp("^"+H+H+"*"),J=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(I,"").replace(J,"")}}var K=function(a){if(null==a)throw new TypeError("can't convert "+a+" to object");return Object(a)}}),define("ace/lib/dom",["require","exports","module"],function(a,b,c){if("undefined"!=typeof document){var d="http://www.w3.org/1999/xhtml";b.getDocumentHead=function(a){return a||(a=document),a.head||a.getElementsByTagName("head")[0]||a.documentElement},b.createElement=function(a,b){return document.createElementNS?document.createElementNS(b||d,a):document.createElement(a)},b.hasCssClass=function(a,b){var c=a.className.split(/\s+/g);return-1!==c.indexOf(b)},b.addCssClass=function(a,c){b.hasCssClass(a,c)||(a.className+=" "+c)},b.removeCssClass=function(a,b){for(var c=a.className.split(/\s+/g);;){var d=c.indexOf(b);if(-1==d)break;c.splice(d,1)}a.className=c.join(" ")},b.toggleCssClass=function(a,b){for(var c=a.className.split(/\s+/g),d=!0;;){var e=c.indexOf(b);if(-1==e)break;d=!1,c.splice(e,1)}return d&&c.push(b),a.className=c.join(" "),d},b.setCssClass=function(a,c,d){d?b.addCssClass(a,c):b.removeCssClass(a,c)},b.hasCssString=function(a,b){var c,d=0;if(b=b||document,b.createStyleSheet&&(c=b.styleSheets)){for(;dk&&(h.altGr=!0)}}}if(c in e.MODIFIER_KEYS){switch(e.MODIFIER_KEYS[c]){case"Alt":d=2;break;case"Shift":d=4;break;case"Ctrl":d=1;break;default:d=8}c=-1}return 8&d&&(91===c||93===c)&&(c=-1),d||13!==c||!b.location&&3!==b.keyLocation||(a(b,d,-c),!b.defaultPrevented)?d||c in e.FUNCTION_KEYS||c in e.PRINTABLE_KEYS?a(b,d,c):!1:void 0}var e=a("./keys"),f=a("./useragent");b.addListener=function(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1);if(a.attachEvent){var d=function(){c.call(a,window.event)};c._wrapper=d,a.attachEvent("on"+b,d)}},b.removeListener=function(a,b,c){return a.removeEventListener?a.removeEventListener(b,c,!1):void(a.detachEvent&&a.detachEvent("on"+b,c._wrapper||c))},b.stopEvent=function(a){return b.stopPropagation(a),b.preventDefault(a),!1},b.stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},b.preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},b.getButton=function(a){return"dblclick"==a.type?0:"contextmenu"==a.type||a.ctrlKey&&f.isMac?2:a.preventDefault?a.button:{1:0,2:2,4:1}[a.button]},b.capture=function(a,c,d){function e(a){c&&c(a),d&&d(a),b.removeListener(document,"mousemove",c,!0),b.removeListener(document,"mouseup",e,!0),b.removeListener(document,"dragstart",e,!0)}return b.addListener(document,"mousemove",c,!0),b.addListener(document,"mouseup",e,!0),b.addListener(document,"dragstart",e,!0),e},b.addMouseWheelListener=function(a,c){"onmousewheel"in a?b.addListener(a,"mousewheel",function(a){var b=8;void 0!==a.wheelDeltaX?(a.wheelX=-a.wheelDeltaX/b,a.wheelY=-a.wheelDeltaY/b):(a.wheelX=0,a.wheelY=-a.wheelDelta/b),c(a)}):"onwheel"in a?b.addListener(a,"wheel",function(a){var b=.35;switch(a.deltaMode){case a.DOM_DELTA_PIXEL:a.wheelX=a.deltaX*b||0,a.wheelY=a.deltaY*b||0;break;case a.DOM_DELTA_LINE:case a.DOM_DELTA_PAGE:a.wheelX=5*(a.deltaX||0),a.wheelY=5*(a.deltaY||0)}c(a)}):b.addListener(a,"DOMMouseScroll",function(a){a.axis&&a.axis==a.HORIZONTAL_AXIS?(a.wheelX=5*(a.detail||0),a.wheelY=0):(a.wheelX=0,a.wheelY=5*(a.detail||0)),c(a)})},b.addMultiMouseDownListener=function(a,c,d,e){var g,h,i,j=0,k={2:"dblclick",3:"tripleclick",4:"quadclick"};b.addListener(a,"mousedown",function(a){if(0!==b.getButton(a)?j=0:a.detail>1?(j++,j>4&&(j=1)):j=1,f.isIE){var l=Math.abs(a.clientX-g)>5||Math.abs(a.clientY-h)>5;(!i||l)&&(j=1),i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),1==j&&(g=a.clientX,h=a.clientY)}if(d[e]("mousedown",a),j>4)j=0;else if(j>1)return d[e](k[j],a)}),f.isOldIE&&b.addListener(a,"dblclick",function(a){j=2,i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),d[e]("mousedown",a),d[e](k[j],a)})};var g=!f.isMac||!f.isOpera||"KeyboardEvent"in window?function(a){return 0|(a.ctrlKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.metaKey?8:0)}:function(a){return 0|(a.metaKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.ctrlKey?8:0)};b.getModifierString=function(a){return e.KEY_MODS[g(a)]};var h=null,i=0;if(b.addCommandKeyListener=function(a,c){var e=b.addListener;if(f.isOldGecko||f.isOpera&&!("KeyboardEvent"in window)){var g=null;e(a,"keydown",function(a){g=a.keyCode}),e(a,"keypress",function(a){return d(c,a,g)})}else{var i=null;e(a,"keydown",function(a){h[a.keyCode]=!0;var b=d(c,a,a.keyCode);return i=a.defaultPrevented,b}),e(a,"keypress",function(a){i&&(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey)&&(b.stopEvent(a),i=null)}),e(a,"keyup",function(a){h[a.keyCode]=null}),h||(h=Object.create(null),e(window,"focus",function(a){h=Object.create(null)}))}},window.postMessage&&!f.isOldIE){var j=1;b.nextTick=function(a,c){c=c||window;var d="zero-timeout-message-"+j;b.addListener(c,"message",function e(f){f.data==d&&(b.stopPropagation(f),b.removeListener(c,"message",e),a())}),c.postMessage(d,"*")}}b.nextFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame,b.nextFrame?b.nextFrame=b.nextFrame.bind(window):b.nextFrame=function(a){setTimeout(a,17)}}),define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(a,b,c){var d=a("./oop"),e=function(){var a,b,c={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,"super":8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}};for(b in c.FUNCTION_KEYS)a=c.FUNCTION_KEYS[b].toLowerCase(),c[a]=parseInt(b,10);for(b in c.PRINTABLE_KEYS)a=c.PRINTABLE_KEYS[b].toLowerCase(),c[a]=parseInt(b,10);return d.mixin(c,c.MODIFIER_KEYS),d.mixin(c,c.PRINTABLE_KEYS),d.mixin(c,c.FUNCTION_KEYS),c.enter=c["return"],c.escape=c.esc,c.del=c["delete"],c[173]="-",function(){for(var a=["cmd","ctrl","alt","shift"],b=Math.pow(2,a.length);b--;)c.KEY_MODS[b]=a.filter(function(a){return b&c.KEY_MODS[a]}).join("-")+"-"}(),c}();d.mixin(b,e),b.keyCodeToString=function(a){var b=e[a];return"string"!=typeof b&&(b=String.fromCharCode(a)),b.toLowerCase()}}),define("ace/lib/oop",["require","exports","module"],function(a,b,c){b.inherits=function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})},b.mixin=function(a,b){for(var c in b)a[c]=b[c];return a},b.implement=function(a,c){b.mixin(a,c)}}),define("ace/lib/useragent",["require","exports","module"],function(a,b,c){if(b.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},b.getOS=function(){return b.isMac?b.OS.MAC:b.isLinux?b.OS.LINUX:b.OS.WINDOWS},"object"==typeof navigator){var d=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),e=navigator.userAgent;b.isWin="win"==d,b.isMac="mac"==d,b.isLinux="linux"==d,b.isIE="Microsoft Internet Explorer"==navigator.appName||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((e.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((e.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),b.isOldIE=b.isIE&&b.isIE<9,b.isGecko=b.isMozilla=window.controllers&&"Gecko"===window.navigator.product,b.isOldGecko=b.isGecko&&parseInt((e.match(/rv\:(\d+)/)||[])[1],10)<4,b.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),b.isWebKit=parseFloat(e.split("WebKit/")[1])||void 0,b.isChrome=parseFloat(e.split(" Chrome/")[1])||void 0,b.isAIR=e.indexOf("AdobeAIR")>=0,b.isIPad=e.indexOf("iPad")>=0,b.isTouchPad=e.indexOf("TouchPad")>=0}}),define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config"],function(a,b,c){a("./lib/fixoldbrowsers");var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/lang"),g=a("./lib/useragent"),h=a("./keyboard/textinput").TextInput,i=a("./mouse/mouse_handler").MouseHandler,j=a("./mouse/fold_handler").FoldHandler,k=a("./keyboard/keybinding").KeyBinding,l=a("./edit_session").EditSession,m=a("./search").Search,n=a("./range").Range,o=a("./lib/event_emitter").EventEmitter,p=a("./commands/command_manager").CommandManager,q=a("./commands/default_commands").commands,r=a("./config"),s=function(a,b){var c=a.getContainerElement();this.container=c,this.renderer=a,this.commands=new p(g.isMac?"mac":"win",q),this.textInput=new h(a.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.keyBinding=new k(this),this.$mouseHandler=new i(this),new j(this),this.$blockScrolling=0,this.$search=(new m).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=f.delayedCall(function(){this._signal("input",{}),this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(a,b){b._$emitInputEvent.schedule(31)}),this.setSession(b||new l("")),r.resetOptions(this),r._signal("editor",this)};(function(){d.implement(this,o),this.$initOperationListeners=function(){function a(a){return a[a.length-1]}this.selections=[],this.commands.on("exec",function(b){this.startOperation(b);var c=b.command;if("fileJump"==c.aceCommandGroup){var d=this.prevOp;d&&"fileJump"==d.command.aceCommandGroup||(this.lastFileJumpPos=a(this.selections))}else this.lastFileJumpPos=null}.bind(this),!0),this.commands.on("afterExec",function(a){var b=a.command;"fileJump"==b.aceCommandGroup&&this.lastFileJumpPos&&!this.curOp.selectionChanged&&this.selection.fromJSON(this.lastFileJumpPos),this.endOperation(a)}.bind(this),!0),this.$opResetTimer=f.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(a){if(this.curOp){if(!a||this.curOp.command)return;this.prevOp=this.curOp}a||(this.previousCommand=null,a={}),this.$opResetTimer.schedule(),this.curOp={command:a.command||{},args:a.args,scrollTop:this.renderer.scrollTop};var b=this.curOp.command;b&&b.scrollIntoView&&this.$blockScrolling++,this.selections.push(this.selection.toJSON())},this.endOperation=function(){if(this.curOp){var a=this.curOp.command;if(a&&a.scrollIntoView){switch(this.$blockScrolling--,a.scrollIntoView){case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var b=this.selection.getRange(),c=this.renderer.layerConfig;(b.start.row>=c.lastRow||b.end.row<=c.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==a.scrollIntoView&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$historyTracker=function(a){if(this.$mergeUndoDeltas){var b=this.prevOp,c=["backspace","del","insertstring"],d=b.command&&a.command.name==b.command.name;if("insertstring"==a.command.name){var e=a.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),d=d&&this.mergeNextCommand&&(!/\s/.test(e)||/\s/.test(b.args)),this.mergeNextCommand=!0}else d=d&&-1!==c.indexOf(a.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(d=!1),d?this.session.mergeUndoDeltas=!0:-1!==c.indexOf(a.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(a){if(a)if("string"==typeof a){this.$keybindingId=a;var b=this;r.loadModule(["keybinding",a],function(c){b.$keybindingId==a&&b.keyBinding.setKeyboardHandler(c&&c.handler)})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(a);else this.keyBinding.setKeyboardHandler(null)},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(a){if(this.session!=a){var b=this.session;if(b){this.session.removeEventListener("change",this.$onDocumentChange),this.session.removeEventListener("changeMode",this.$onChangeMode),this.session.removeEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.session.removeEventListener("changeTabSize",this.$onChangeTabSize),this.session.removeEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.session.removeEventListener("changeWrapMode",this.$onChangeWrapMode),this.session.removeEventListener("onChangeFold",this.$onChangeFold),this.session.removeEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.session.removeEventListener("changeBackMarker",this.$onChangeBackMarker),this.session.removeEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.session.removeEventListener("changeAnnotation",this.$onChangeAnnotation),this.session.removeEventListener("changeOverwrite",this.$onCursorChange),this.session.removeEventListener("changeScrollTop",this.$onScrollTopChange),this.session.removeEventListener("changeScrollLeft",this.$onScrollLeftChange);var c=this.session.getSelection();c.removeEventListener("changeCursor",this.$onCursorChange),c.removeEventListener("changeSelection",this.$onSelectionChange)}this.session=a,a&&(this.$onDocumentChange=this.onDocumentChange.bind(this),a.addEventListener("change",this.$onDocumentChange),this.renderer.setSession(a),this.$onChangeMode=this.onChangeMode.bind(this),a.addEventListener("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),a.addEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),a.addEventListener("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),a.addEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),a.addEventListener("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),a.addEventListener("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.addEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.addEventListener("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.addEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.addEventListener("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.addEventListener("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.addEventListener("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.addEventListener("changeScrollLeft",this.$onScrollLeftChange),this.selection=a.getSelection(),this.selection.addEventListener("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.addEventListener("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()),this._signal("changeSession",{session:a,oldSession:b}),b&&b._signal("changeEditor",{oldEditor:this}),a&&a._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(a,b){return this.session.doc.setValue(a),b?1==b?this.navigateFileEnd():-1==b&&this.navigateFileStart():this.selectAll(),a},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(a){this.renderer.onResize(a)},this.setTheme=function(a,b){this.renderer.setTheme(a,b)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(a){this.renderer.setStyle(a)},this.unsetStyle=function(a){this.renderer.unsetStyle(a)},this.getFontSize=function(){return this.getOption("fontSize")||e.computedStyle(this.container,"fontSize")},this.setFontSize=function(a){this.setOption("fontSize",a)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var a=this;this.$highlightPending=!0,setTimeout(function(){a.$highlightPending=!1;var b=a.session.findMatchingBracket(a.getCursorPosition());if(b)var c=new n(b.row,b.column,b.row,b.column+1);else if(a.session.$mode.getMatching)var c=a.session.$mode.getMatching(a.session);c&&(a.session.$bracketHighlight=a.session.addMarker(c,"ace_bracket","text"))},50)}},this.focus=function(){var a=this;setTimeout(function(){a.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus"))},this.onBlur=function(){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur"))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(a){var b,c=a.data,d=c.range;b=d.start.row==d.end.row&&"insertLines"!=c.action&&"removeLines"!=c.action?d.end.row:1/0,this.renderer.updateLines(d.start.row,b),this._signal("change",a),this.$cursorChange()},this.onTokenizerUpdate=function(a){var b=a.data;this.renderer.updateLines(b.first,b.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||this.renderer.scrollCursorIntoView(),this.$highlightBrackets(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var a,b=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(a=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(a=!1)),b.$highlightLineMarker&&!a)b.removeMarker(b.$highlightLineMarker.id),b.$highlightLineMarker=null;else if(!b.$highlightLineMarker&&a){var c=new n(a.row,a.column,a.row,1/0);c.id=b.addMarker(c,"ace_active-line","screenLine"),b.$highlightLineMarker=c}else a&&(b.$highlightLineMarker.start.row=a.row,b.$highlightLineMarker.end.row=a.row,b.$highlightLineMarker.start.column=a.column,b._signal("changeBackMarker"))},this.onSelectionChange=function(a){var b=this.session;if(b.$selectionMarker&&b.removeMarker(b.$selectionMarker),b.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var c=this.selection.getRange(),d=this.getSelectionStyle();b.$selectionMarker=b.addMarker(c,"ace_selection",d)}var e=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(e),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var a=this.session,b=this.getSelectionRange();if(!b.isEmpty()&&!b.isMultiLine()){var c=b.start.column-1,d=b.end.column+1,e=a.getLine(b.start.row),f=e.length,g=e.substring(Math.max(c,0),Math.min(d,f));if(!(c>=0&&/^[\w\d]/.test(g)||f>=d&&/[\w\d]$/.test(g))&&(g=e.substring(b.start.column,b.end.column),/^[\w\d]+$/.test(g))){var h=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:g});return h}}},this.onChangeFrontMarker=function(){ -this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(a){this.renderer.updateText(),this._emit("changeMode",a)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var a=this.getSelectedText();return this._signal("copy",a),a},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(a){if(!this.$readOnly){var b={text:a};this._signal("paste",b),this.insert(b.text,!0)}},this.execCommand=function(a,b){this.commands.exec(a,this,b)},this.insert=function(a,b){var c=this.session,d=c.getMode(),e=this.getCursorPosition();if(this.getBehavioursEnabled()&&!b){var f=d.transformAction(c.getState(e.row),"insertion",this,c,a);f&&(a!==f.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),a=f.text)}if(" "==a&&(a=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){var g=new n.fromPoints(e,e);g.end.column+=a.length,this.session.remove(g)}}else{var g=this.getSelectionRange();e=this.session.remove(g),this.clearSelection()}if("\n"==a||"\r\n"==a){var h=c.getLine(e.row);if(e.column>h.search(/\S|$/)){var i=h.substr(e.column).search(/\S|$/);c.doc.removeInLine(e.row,e.column,e.column+i)}}this.clearSelection();var j=e.column,k=c.getState(e.row),h=c.getLine(e.row),l=d.checkOutdent(k,h,a);c.insert(e,a);if(f&&f.selection&&(2==f.selection.length?this.selection.setSelectionRange(new n(e.row,j+f.selection[0],e.row,j+f.selection[1])):this.selection.setSelectionRange(new n(e.row+f.selection[0],f.selection[1],e.row+f.selection[2],f.selection[3]))),c.getDocument().isNewLine(a)){var m=d.getNextLineIndent(k,h.slice(0,e.column),c.getTabString());c.insert({row:e.row+1,column:0},m)}l&&d.autoOutdent(k,c,e.row)},this.onTextInput=function(a){this.keyBinding.onTextInput(a)},this.onCommandKey=function(a,b,c){this.keyBinding.onCommandKey(a,b,c)},this.setOverwrite=function(a){this.session.setOverwrite(a)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(a){this.setOption("scrollSpeed",a)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(a){this.setOption("dragDelay",a)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(a){this.setOption("selectionStyle",a)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(a){this.setOption("highlightActiveLine",a)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(a){this.setOption("highlightSelectedWord",a)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(a){this.renderer.setAnimatedScroll(a)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(a){this.renderer.setShowInvisibles(a)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(a){this.renderer.setDisplayIndentGuides(a)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(a){this.renderer.setShowPrintMargin(a)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(a){this.renderer.setPrintMarginColumn(a)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(a){this.setOption("readOnly",a)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(a){this.setOption("behavioursEnabled",a)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(a){this.setOption("wrapBehavioursEnabled",a)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(a){this.setOption("showFoldWidgets",a)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(a){this.selection.isEmpty()&&("left"==a?this.selection.selectLeft():this.selection.selectRight());var b=this.getSelectionRange();if(this.getBehavioursEnabled()){var c=this.session,d=c.getState(b.start.row),e=c.getMode().transformAction(d,"deletion",this,c,b);if(0===b.end.column){var f=c.getTextRange(b);if("\n"==f[f.length-1]){var g=c.getLine(b.end.row);/^\s+$/.test(g)&&(b.end.column=g.length)}}e&&(b=e)}this.session.remove(b),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var a=this.getSelectionRange();a.start.column==a.end.column&&a.start.row==a.end.row&&(a.end.column=0,a.end.row++),this.session.remove(a),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var a=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(a)},this.transposeLetters=function(){if(this.selection.isEmpty()){var a=this.getCursorPosition(),b=a.column;if(0!==b){var c,d,e=this.session.getLine(a.row);bb.toLowerCase()?1:0});for(var d=new n(0,0,0,0),e=a.first;e<=a.last;e++){var f=b.getLine(e);d.start.row=e,d.end.row=e,d.end.column=f.length,b.replace(d,c[e-a.first])}},this.toggleCommentLines=function(){var a=this.session.getState(this.getCursorPosition().row),b=this.$getSelectedRows();this.session.getMode().toggleCommentLines(a,this.session,b.first,b.last)},this.toggleBlockComment=function(){var a=this.getCursorPosition(),b=this.session.getState(a.row),c=this.getSelectionRange();this.session.getMode().toggleBlockComment(b,this.session,c,a)},this.getNumberAt=function(a,b){var c=/[\-]?[0-9]+(?:\.[0-9]+)?/g;c.lastIndex=0;for(var d=this.session.getLine(a);c.lastIndex=b){var f={value:e[0],start:e.index,end:e.index+e[0].length};return f}}return null},this.modifyNumber=function(a){var b=this.selection.getCursor().row,c=this.selection.getCursor().column,d=new n(b,c-1,b,c),e=this.session.getTextRange(d);if(!isNaN(parseFloat(e))&&isFinite(e)){var f=this.getNumberAt(b,c);if(f){var g=f.value.indexOf(".")>=0?f.start+f.value.indexOf(".")+1:f.end,h=f.start+f.value.length-g,i=parseFloat(f.value);i*=Math.pow(10,h),a*=g!==f.end&&g>c?Math.pow(10,f.end-c-1):Math.pow(10,f.end-c),i+=a,i/=Math.pow(10,h);var j=i.toFixed(h),k=new n(b,f.start,b,f.end);this.session.replace(k,j),this.moveCursorTo(b,Math.max(f.start+1,c+j.length-f.value.length))}}},this.removeLines=function(){var a,b=this.$getSelectedRows();a=0===b.first||b.last+1=g;)f[h].moveBy(e,0),h--}b.fromOrientedRange(b.ranges[0]),b.rangeList.attach(this.session)}},this.$getSelectedRows=function(){var a=this.getSelectionRange().collapseRows();return{first:this.session.getRowFoldStart(a.start.row),last:this.session.getRowFoldEnd(a.end.row)}},this.onCompositionStart=function(a){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(a){this.renderer.setCompositionText(a)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(a){return a>=this.getFirstVisibleRow()&&a<=this.getLastVisibleRow()},this.isRowFullyVisible=function(a){return a>=this.renderer.getFirstFullyVisibleRow()&&a<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(a,b){var c=this.renderer,d=this.renderer.layerConfig,e=a*Math.floor(d.height/d.lineHeight);this.$blockScrolling++,b===!0?this.selection.$moveSelection(function(){this.moveCursorBy(e,0)}):b===!1&&(this.selection.moveCursorBy(e,0),this.selection.clearSelection()),this.$blockScrolling--;var f=c.scrollTop;c.scrollBy(0,e*d.lineHeight),null!=b&&c.scrollCursorIntoView(null,.5),c.animateScrolling(f)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(a){this.renderer.scrollToRow(a)},this.scrollToLine=function(a,b,c,d){this.renderer.scrollToLine(a,b,c,d)},this.centerSelection=function(){var a=this.getSelectionRange(),b={row:Math.floor(a.start.row+(a.end.row-a.start.row)/2),column:Math.floor(a.start.column+(a.end.column-a.start.column)/2)};this.renderer.alignCursor(b,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(a,b){this.selection.moveCursorTo(a,b)},this.moveCursorToPosition=function(a){this.selection.moveCursorToPosition(a)},this.jumpToMatching=function(a){var b=this.getCursorPosition(),c=this.session.getBracketRange(b);if(!c){if(c=this.find({needle:/[{}()\[\]]/g,preventScroll:!0,start:{row:b.row,column:b.column-1}}),!c)return;var d=c.start;d.row==b.row&&Math.abs(d.column-b.column)<2&&(c=this.session.getBracketRange(d))}d=c&&c.cursor||d,d&&(a?c&&c.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(d.row,d.column):this.selection.moveTo(d.row,d.column))},this.gotoLine=function(a,b,c){this.selection.clearSelection(),this.session.unfold({row:a-1,column:b||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(a-1,b||0),this.$blockScrolling-=1,this.isRowFullyVisible(a-1)||this.scrollToLine(a-1,!0,c)},this.navigateTo=function(a,b){this.selection.moveTo(a,b)},this.navigateUp=function(a){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var b=this.selection.anchor.getPosition();return this.moveCursorToPosition(b)}this.selection.clearSelection(),this.selection.moveCursorBy(-a||-1,0)},this.navigateDown=function(a){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var b=this.selection.anchor.getPosition();return this.moveCursorToPosition(b)}this.selection.clearSelection(),this.selection.moveCursorBy(a||1,0)},this.navigateLeft=function(a){if(this.selection.isEmpty())for(a=a||1;a--;)this.selection.moveCursorLeft();else{var b=this.getSelectionRange().start;this.moveCursorToPosition(b)}this.clearSelection()},this.navigateRight=function(a){if(this.selection.isEmpty())for(a=a||1;a--;)this.selection.moveCursorRight();else{var b=this.getSelectionRange().end;this.moveCursorToPosition(b)}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(a,b){b&&this.$search.set(b);var c=this.$search.find(this.session),d=0;return c?(this.$tryReplace(c,a)&&(d=1),null!==c&&(this.selection.setSelectionRange(c),this.renderer.scrollSelectionIntoView(c.start,c.end)),d):d},this.replaceAll=function(a,b){b&&this.$search.set(b);var c=this.$search.findAll(this.session),d=0;if(!c.length)return d;this.$blockScrolling+=1;var e=this.getSelectionRange();this.selection.moveTo(0,0);for(var f=c.length-1;f>=0;--f)this.$tryReplace(c[f],a)&&d++;return this.selection.setSelectionRange(e),this.$blockScrolling-=1,d},this.$tryReplace=function(a,b){var c=this.session.getTextRange(a);return b=this.$search.replace(c,b),null!==b?(a.end=this.session.replace(a,b),a):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(a,b,c){b||(b={}),"string"==typeof a||a instanceof RegExp?b.needle=a:"object"==typeof a&&d.mixin(b,a);var e=this.selection.getRange();null==b.needle&&(a=this.session.getTextRange(e)||this.$search.$options.needle,a||(e=this.session.getWordRange(e.start.row,e.start.column),a=this.session.getTextRange(e)),this.$search.set({needle:a})),this.$search.set(b),b.start||this.$search.set({start:e});var f=this.$search.find(this.session);return b.preventScroll?f:f?(this.revealRange(f,c),f):(b.backwards?e.start=e.end:e.end=e.start,void this.selection.setRange(e))},this.findNext=function(a,b){this.find({skipCurrent:!0,backwards:!1},a,b)},this.findPrevious=function(a,b){this.find(a,{skipCurrent:!0,backwards:!0},b)},this.revealRange=function(a,b){this.$blockScrolling+=1,this.session.unfold(a),this.selection.setSelectionRange(a),this.$blockScrolling-=1;var c=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(a.start,a.end,.5),b!==!1&&this.renderer.animateScrolling(c)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this)},this.setAutoScrollEditorIntoView=function(a){if(a){var b,c=this,d=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var e=this.$scrollAnchor;e.style.cssText="position:absolute",this.container.insertBefore(e,this.container.firstChild);var f=this.on("changeSelection",function(){d=!0}),g=this.renderer.on("beforeRender",function(){d&&(b=c.renderer.container.getBoundingClientRect())}),h=this.renderer.on("afterRender",function(){if(d&&b&&c.isFocused()){var a=c.renderer,f=a.$cursorLayer.$pixelPos,g=a.layerConfig,h=f.top-g.offset;d=f.top>=0&&h+b.top<0?!0:f.topwindow.innerHeight?!1:null,null!=d&&(e.style.top=h+"px",e.style.left=f.left+"px",e.style.height=g.lineHeight+"px",e.scrollIntoView(d)),d=b=null}});this.setAutoScrollEditorIntoView=function(a){a||(delete this.setAutoScrollEditorIntoView,this.removeEventListener("changeSelection",f),this.renderer.removeEventListener("afterRender",h),this.renderer.removeEventListener("beforeRender",g))}}},this.$resetCursorStyle=function(){var a=this.$cursorStyle||"ace",b=this.renderer.$cursorLayer;b&&(b.setSmoothBlinking("smooth"==a),b.isBlinking=!this.$readOnly&&"wide"!=a)}}).call(s.prototype),r.defineOptions(s.prototype,"editor",{selectionStyle:{set:function(a){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:a})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(a){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(a){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(a){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(a){this.setAutoScrollEditorIntoView(a)}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",foldStyle:"session",mode:"session"}),b.Editor=s}),define("ace/lib/lang",["require","exports","module"],function(a,b,c){b.last=function(a){return a[a.length-1]},b.stringReverse=function(a){return a.split("").reverse().join("")},b.stringRepeat=function(a,b){for(var c="";b>0;)1&b&&(c+=a),(b>>=1)&&(a+=a);return c};var d=/^\s\s*/,e=/\s\s*$/;b.stringTrimLeft=function(a){return a.replace(d,"")},b.stringTrimRight=function(a){return a.replace(e,"")},b.copyObject=function(a){var b={};for(var c in a)b[c]=a[c];return b},b.copyArray=function(a){for(var b=[],c=0,d=a.length;d>c;c++)a[c]&&"object"==typeof a[c]?b[c]=this.copyObject(a[c]):b[c]=a[c];return b},b.deepCopy=function(a){if("object"!=typeof a||!a)return a;var c=a.constructor;if(c===RegExp)return a;var d=c();for(var e in a)"object"==typeof a[e]?d[e]=b.deepCopy(a[e]):d[e]=a[e];return d},b.arrayToMap=function(a){for(var b={},c=0;cc?{cursor:a.start,anchor:a.end}:{cursor:a.end,anchor:a.start}}var g=(a("../lib/dom"),a("../lib/event"),a("../lib/useragent"),0);(function(){this.onMouseDown=function(a){var b=a.inSelection(),c=a.getDocumentPosition();this.mousedownEvent=a;var d=this.editor,e=a.getButton();if(0!==e){var f=d.getSelectionRange(),g=f.isEmpty();return g&&d.selection.moveToPosition(c),void d.textInput.onContextMenu(a.domEvent)}return!b||d.isFocused()||(d.focus(),!this.$focusTimout||this.$clickSelection||d.inMultiSelectMode)?(this.captureMouse(a),!b||this.$clickSelection||a.getShiftKey()||d.inMultiSelectMode?this.startSelect(c):b&&(this.mousedownEvent.time=Date.now(),this.startSelect(c)),a.preventDefault()):(this.mousedownEvent.time=Date.now(),this.setState("focusWait"),void this.captureMouse(a))},this.startSelect=function(a){a=a||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var b=this.editor,c=this.mousedownEvent.getShiftKey();c?b.selection.selectToPosition(a):this.$clickSelection||b.selection.moveToPosition(a),b.renderer.scroller.setCapture&&b.renderer.scroller.setCapture(),b.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var a,b=this.editor,c=b.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var d=this.$clickSelection.comparePoint(c);if(-1==d)a=this.$clickSelection.end;else if(1==d)a=this.$clickSelection.start;else{var e=f(this.$clickSelection,c);c=e.cursor,a=e.anchor}b.selection.setSelectionAnchor(a.row,a.column)}b.selection.selectToPosition(c),b.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(a){var b,c=this.editor,d=c.renderer.screenToTextCoordinates(this.x,this.y),e=c.selection[a](d.row,d.column);if(this.$clickSelection){var g=this.$clickSelection.comparePoint(e.start),h=this.$clickSelection.comparePoint(e.end);if(-1==g&&0>=h)b=this.$clickSelection.end,(e.end.row!=d.row||e.end.column!=d.column)&&(d=e.start);else if(1==h&&g>=0)b=this.$clickSelection.start,(e.start.row!=d.row||e.start.column!=d.column)&&(d=e.end);else if(-1==g&&1==h)d=e.end,b=e.start;else{var i=f(this.$clickSelection,d);d=i.cursor,b=i.anchor}c.selection.setSelectionAnchor(b.row,b.column)}c.selection.selectToPosition(d),c.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var a=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),b=Date.now();(a>g||b-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(a){var b=a.getDocumentPosition(),c=this.editor,d=c.session,e=d.getBracketRange(b);e?(e.isEmpty()&&(e.start.column--,e.end.column++),this.setState("select")):(e=c.selection.getWordRange(b.row,b.column),this.setState("selectByWords")),this.$clickSelection=e,this[this.state]&&this[this.state](a)},this.onTripleClick=function(a){var b=a.getDocumentPosition(),c=this.editor;this.setState("selectByLines"),this.$clickSelection=c.selection.getLineRange(b.row),this[this.state]&&this[this.state](a)},this.onQuadClick=function(a){var b=this.editor;b.selectAll(),this.$clickSelection=b.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(a){if(!a.getAccelKey()){a.getShiftKey()&&a.wheelY&&!a.wheelX&&(a.wheelX=a.wheelY,a.wheelY=0);var b=a.domEvent.timeStamp,c=b-(this.$lastScrollTime||0),d=this.editor,e=d.renderer.isScrollableBy(a.wheelX*a.speed,a.wheelY*a.speed);return e||200>c?(this.$lastScrollTime=b,d.renderer.scrollBy(a.wheelX*a.speed,a.wheelY*a.speed),a.stop()):void 0}}}).call(d.prototype),b.DefaultHandlers=d}),define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(a,b,c){function d(a){function b(){var b=l.getDocumentPosition().row,e=i.$annotations[b];if(!e)return c();var f=g.session.getLength();if(b==f){var h=g.renderer.pixelToScreenCoordinates(0,l.y).row,k=l.$pos;if(h>g.session.documentToScreenRow(k.row,k.column))return c()}if(m!=e)if(m=e.text.join("
"),j.setHtml(m),j.show(),g.on("mousewheel",c),a.$tooltipFollowsMouse)d(l);else{var n=i.$cells[g.session.documentToScreenRow(b,0)].element,o=n.getBoundingClientRect(),p=j.getElement().style;p.left=o.right+"px",p.top=o.bottom+"px"}}function c(){k&&(k=clearTimeout(k)),m&&(j.hide(),m=null,g.removeEventListener("mousewheel",c))}function d(a){j.setPosition(a.x,a.y)}var g=a.editor,i=g.renderer.$gutterLayer,j=new e(g.container);a.editor.setDefaultHandler("guttermousedown",function(b){if(g.isFocused()&&0==b.getButton()){var c=i.getRegion(b);if("foldWidgets"!=c){var d=b.getDocumentPosition().row,e=g.session.selection;if(b.getShiftKey())e.selectTo(d,0);else{if(2==b.domEvent.detail)return g.selectAll(),b.preventDefault();a.$clickSelection=g.selection.getLineRange(d)}return a.setState("selectByLines"),a.captureMouse(b),b.preventDefault()}}});var k,l,m;a.editor.setDefaultHandler("guttermousemove",function(e){var g=e.domEvent.target||e.domEvent.srcElement;return f.hasCssClass(g,"ace_fold-widget")?c():(m&&a.$tooltipFollowsMouse&&d(e),l=e,void(k||(k=setTimeout(function(){k=null,l&&!a.isMousePressed?b():c()},50))))}),h.addListener(g.renderer.$gutter,"mouseout",function(a){l=null,m&&!k&&(k=setTimeout(function(){k=null,c()},50))}),g.on("changeSession",c)}function e(a){i.call(this,a)}var f=a("../lib/dom"),g=a("../lib/oop"),h=a("../lib/event"),i=a("../tooltip").Tooltip;g.inherits(e,i),function(){this.setPosition=function(a,b){var c=window.innerWidth||document.documentElement.clientWidth,d=window.innerHeight||document.documentElement.clientHeight,e=this.getWidth(),f=this.getHeight();a+=15,b+=15,a+e>c&&(a-=a+e-c),b+f>d&&(b-=20+f),i.prototype.setPosition.call(this,a,b)}}.call(e.prototype),b.GutterHandler=d}),define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(a,b,c){function d(a){this.isOpen=!1,this.$element=null,this.$parentNode=a}var e=(a("./lib/oop"),a("./lib/dom"));(function(){this.$init=function(){return this.$element=e.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(a){e.setInnerText(this.getElement(),a)},this.setHtml=function(a){this.getElement().innerHTML=a},this.setPosition=function(a,b){this.getElement().style.left=a+"px",this.getElement().style.top=b+"px"},this.setClassName=function(a){e.addCssClass(this.getElement(),a)},this.show=function(a,b,c){null!=a&&this.setText(a),null!=b&&null!=c&&this.setPosition(b,c),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(d.prototype),b.Tooltip=d}),define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(a,b,c){var d=a("../lib/event"),e=a("../lib/useragent"),f=b.MouseEvent=function(a,b){this.domEvent=a,this.editor=b,this.x=this.clientX=a.clientX,this.y=this.clientY=a.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){d.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){d.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var a=this.editor,b=a.getSelectionRange();if(b.isEmpty())this.$inSelection=!1;else{var c=this.getDocumentPosition();this.$inSelection=b.contains(c.row,c.column)}return this.$inSelection},this.getButton=function(){return d.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=e.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(f.prototype)}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(a,b,c){function d(a){function b(a,b){var c=Date.now(),d=!b||a.row!=b.row,f=!b||a.column!=b.column;if(!C||d||f)q.$blockScrolling+=1,q.moveCursorToPosition(a),q.$blockScrolling-=1,C=c,D={x:u,y:v};else{var g=e(D.x,D.y,u,v);g>k?C=null:c-C>=j&&(q.renderer.scrollCursorIntoView(),C=null)}}function c(a,b){var c=Date.now(),d=q.renderer.layerConfig.lineHeight,e=q.renderer.layerConfig.characterWidth,f=q.renderer.scroller.getBoundingClientRect(),g={x:{left:u-f.left,right:f.right-u},y:{top:v-f.top,bottom:f.bottom-v}},h=Math.min(g.x.left,g.x.right),j=Math.min(g.y.top,g.y.bottom),k={row:a.row,column:a.column};2>=h/e&&(k.column+=g.x.left=j/d&&(k.row+=g.y.top=i&&q.renderer.scrollCursorIntoView(k):B=c:B=null}function d(){var a=y;y=q.renderer.screenToTextCoordinates(u,v),b(y,a),c(y,a)}function l(){x=q.selection.toOrientedRange(),t=q.session.addMarker(x,"ace_selection",q.getSelectionStyle()),q.clearSelection(),q.isFocused()&&q.renderer.$cursorLayer.setBlinking(!1),clearInterval(w),w=setInterval(d,20),F=0,g.addListener(document,"mousemove",n)}function m(){clearInterval(w),q.session.removeMarker(t),t=null,q.$blockScrolling+=1,q.selection.fromOrientedRange(x),q.$blockScrolling-=1,q.isFocused()&&!A&&q.renderer.$cursorLayer.setBlinking(!q.getReadOnly()),x=null,F=0,B=null,C=null,g.removeListener(document,"mousemove",n)}function n(){null==G&&(G=setTimeout(function(){null!=G&&t&&m()},20))}function o(a){var b=a.types;return!b||Array.prototype.some.call(b,function(a){return"text/plain"==a||"Text"==a})}function p(a){var b=["copy","copymove","all","uninitialized"],c=["move","copymove","linkmove","all","uninitialized"],d=h.isMac?a.altKey:a.ctrlKey,e="uninitialized";try{e=a.dataTransfer.effectAllowed.toLowerCase()}catch(a){}var f="none";return d&&b.indexOf(e)>=0?f="copy":c.indexOf(e)>=0?f="move":b.indexOf(e)>=0&&(f="copy"),f}var q=a.editor,r=f.createElement("img");r.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",h.isOpera&&(r.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");var s=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];s.forEach(function(b){a[b]=this[b]},this),q.addEventListener("mousedown",this.onMouseDown.bind(a));var t,u,v,w,x,y,z,A,B,C,D,E=q.container,F=0;this.onDragStart=function(a){if(this.cancelDrag||!E.draggable){var b=this;return setTimeout(function(){b.startSelect(),b.captureMouse(a)},0),a.preventDefault()}x=q.getSelectionRange();var c=a.dataTransfer;c.effectAllowed=q.getReadOnly()?"copy":"copyMove",h.isOpera&&(q.container.appendChild(r),r._top=r.offsetTop),c.setDragImage&&c.setDragImage(r,0,0),h.isOpera&&q.container.removeChild(r),c.clearData(),c.setData("Text",q.session.getTextRange()),A=!0,this.setState("drag")},this.onDragEnd=function(a){if(E.draggable=!1,A=!1,this.setState(null),!q.getReadOnly()){var b=a.dataTransfer.dropEffect;z||"move"!=b||q.session.remove(q.getSelectionRange()),q.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging")},this.onDragEnter=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(t||l(),F++,a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragOver=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(t||(l(),F++),null!==G&&(G=null),u=a.clientX,v=a.clientY,a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragLeave=function(a){return F--,0>=F&&t?(m(),z=null,g.preventDefault(a)):void 0},this.onDrop=function(a){if(t){var b=a.dataTransfer;if(A)switch(z){case"move":x=x.contains(y.row,y.column)?{start:y,end:y}:q.moveText(x,y);break;case"copy":x=q.moveText(x,y,!0)}else{var c=b.getData("Text");x={start:y,end:q.session.insert(y,c)},q.focus(),z=null}return m(),g.preventDefault(a)}},g.addListener(E,"dragstart",this.onDragStart.bind(a)),g.addListener(E,"dragend",this.onDragEnd.bind(a)),g.addListener(E,"dragenter",this.onDragEnter.bind(a)),g.addListener(E,"dragover",this.onDragOver.bind(a)),g.addListener(E,"dragleave",this.onDragLeave.bind(a)),g.addListener(E,"drop",this.onDrop.bind(a));var G=null}function e(a,b,c,d){return Math.sqrt(Math.pow(c-a,2)+Math.pow(d-b,2))}var f=a("../lib/dom"),g=a("../lib/event"),h=a("../lib/useragent"),i=200,j=200,k=5;(function(){this.dragWait=function(){var a=Date.now()-this.mousedownEvent.time;a>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var a=this.editor.container;a.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(a){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var a=this.editor.container;a.draggable=!0,this.editor.renderer.$cursorLayer.setBlinking(!1),this.editor.setStyle("ace_dragging"),this.setState("dragReady")},this.onMouseDrag=function(a){var b=this.editor.container;if(h.isIE&&"dragReady"==this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>3&&b.dragDrop()}if("dragWait"===this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>0&&(b.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(a){if(this.$dragEnabled){this.mousedownEvent=a;var b=this.editor,c=a.inSelection(),d=a.getButton(),e=a.domEvent.detail||1;if(1===e&&0===d&&c){if(a.editor.inMultiSelectMode&&(a.getAccelKey()||a.getShiftKey()))return;this.mousedownEvent.time=Date.now();var f=a.domEvent.target||a.domEvent.srcElement;if("unselectable"in f&&(f.unselectable="on"),b.getDragDelay()){if(h.isWebKit){this.cancelDrag=!0;var g=b.container;g.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(a,this.onMouseDrag.bind(this)),a.defaultPrevented=!0}}}}).call(d.prototype),b.DragdropHandler=d}),define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/event_emitter"],function(a,b,c){"no use strict";function d(d){if(k.packaged=d||a.packaged||c.packaged||j.define&&define.packaged,!j.document)return"";for(var f={},g="",h=document.getElementsByTagName("script"),i=0;io;o++){var q=n[o];0===q.name.indexOf("data-ace-")&&(f[e(q.name.replace(/^data-ace-/,""))]=q.value)}var r=m.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);r&&(g=r[1])}}g&&(f.base=f.base||g,f.packaged=!0),f.basePath=f.base,f.workerPath=f.workerPath||f.base,f.modePath=f.modePath||f.base,f.themePath=f.themePath||f.base,delete f.base;for(var s in f)"undefined"!=typeof f[s]&&b.set(s,f[s])}function e(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}var f=a("./lib/lang"),g=a("./lib/oop"),h=a("./lib/net"),i=a("./lib/event_emitter").EventEmitter,j=function(){return this}(),k={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};b.get=function(a){if(!k.hasOwnProperty(a))throw new Error("Unknown config key: "+a);return k[a]},b.set=function(a,b){if(!k.hasOwnProperty(a))throw new Error("Unknown config key: "+a);k[a]=b},b.all=function(){return f.copyObject(k)},g.implement(b,i),b.moduleUrl=function(a,b){if(k.$moduleUrls[a])return k.$moduleUrls[a];var c=a.split("/");b=b||c[c.length-2]||"";var d="snippets"==b?"/":"-",e=c[c.length-1];if("-"==d){var f=new RegExp("^"+b+"[\\-_]|[\\-_]"+b+"$","g");e=e.replace(f,"")}(!e||e==b)&&c.length>1&&(e=c[c.length-2]);var g=k[b+"Path"];return null==g?g=k.basePath:"/"==d&&(b=d=""),g&&"/"!=g.slice(-1)&&(g+="/"),g+b+d+e+this.get("suffix")},b.setModuleUrl=function(a,b){return k.$moduleUrls[a]=b},b.$loading={},b.loadModule=function(c,d){var e,f;Array.isArray(c)&&(f=c[0],c=c[1]);try{e=a(c)}catch(g){}if(e&&!b.$loading[c])return d&&d(e);if(b.$loading[c]||(b.$loading[c]=[]),b.$loading[c].push(d),!(b.$loading[c].length>1)){var i=function(){a([c],function(a){b._emit("load.module",{name:c,module:a});var d=b.$loading[c];b.$loading[c]=null,d.forEach(function(b){b&&b(a)})})};return b.get("packaged")?void h.loadScript(b.moduleUrl(c,f),i):i()}},b.init=d;var l={setOptions:function(a){Object.keys(a).forEach(function(b){this.setOption(b,a[b])},this)},getOptions:function(a){var b={};return a?Array.isArray(a)||(b=a,a=Object.keys(b)):a=Object.keys(this.$options),a.forEach(function(a){b[a]=this.getOption(a)},this),b},setOption:function(a,b){if(this["$"+a]!==b){var c=this.$options[a];if(!c)return void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'));if(c.forwardTo)return this[c.forwardTo]&&this[c.forwardTo].setOption(a,b);c.handlesSet||(this["$"+a]=b),c&&c.set&&c.set.call(this,b)}},getOption:function(a){var b=this.$options[a];return b?b.forwardTo?this[b.forwardTo]&&this[b.forwardTo].getOption(a):b&&b.get?b.get.call(this):this["$"+a]:void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'))}},m={};b.defineOptions=function(a,b,c){return a.$options||(m[b]=a.$options={}),Object.keys(c).forEach(function(b){var d=c[b];"string"==typeof d&&(d={forwardTo:d}),d.name||(d.name=b),a.$options[d.name]=d,"initialValue"in d&&(a["$"+d.name]=d.initialValue)}),g.implement(a,l),this},b.resetOptions=function(a){Object.keys(a.$options).forEach(function(b){var c=a.$options[b];"value"in c&&a.setOption(b,c.value)})},b.setDefaultValue=function(a,c,d){var e=m[a]||(m[a]={});e[c]&&(e.forwardTo?b.setDefaultValue(e.forwardTo,c,d):e[c].value=d)},b.setDefaultValues=function(a,c){Object.keys(c).forEach(function(d){b.setDefaultValue(a,d,c[d])})}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(a,b,c){var d=a("./dom");b.get=function(a,b){var c=new XMLHttpRequest;c.open("GET",a,!0),c.onreadystatechange=function(){4===c.readyState&&b(c.responseText)},c.send(null)},b.loadScript=function(a,b){var c=d.getDocumentHead(),e=document.createElement("script");e.src=a,c.appendChild(e),e.onload=e.onreadystatechange=function(a,c){(c||!e.readyState||"loaded"==e.readyState||"complete"==e.readyState)&&(e=e.onload=e.onreadystatechange=null,c||b())}},b.qualifyURL=function(a){var b=document.createElement("a");return b.href=a,b.href}}),define("ace/lib/event_emitter",["require","exports","module"],function(a,b,c){var d={},e=function(){this.propagationStopped=!0},f=function(){this.defaultPrevented=!0};d._emit=d._dispatchEvent=function(a,b){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var c=this._eventRegistry[a]||[],d=this._defaultHandlers[a];if(c.length||d){"object"==typeof b&&b||(b={}),b.type||(b.type=a),b.stopPropagation||(b.stopPropagation=e),b.preventDefault||(b.preventDefault=f),c=c.slice();for(var g=0;ga?!1:a>=4352&&4447>=a||a>=4515&&4519>=a||a>=4602&&4607>=a||a>=9001&&9002>=a||a>=11904&&11929>=a||a>=11931&&12019>=a||a>=12032&&12245>=a||a>=12272&&12283>=a||a>=12288&&12350>=a||a>=12353&&12438>=a||a>=12441&&12543>=a||a>=12549&&12589>=a||a>=12593&&12686>=a||a>=12688&&12730>=a||a>=12736&&12771>=a||a>=12784&&12830>=a||a>=12832&&12871>=a||a>=12880&&13054>=a||a>=13056&&19903>=a||a>=19968&&42124>=a||a>=42128&&42182>=a||a>=43360&&43388>=a||a>=44032&&55203>=a||a>=55216&&55238>=a||a>=55243&&55291>=a||a>=63744&&64255>=a||a>=65040&&65049>=a||a>=65072&&65106>=a||a>=65108&&65126>=a||a>=65128&&65131>=a||a>=65281&&65376>=a||a>=65504&&65510>=a}d.implement(this,g),this.setDocument=function(a){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=a,a.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(a){if(!a)return this.$docRowCache=[],void(this.$screenRowCache=[]);var b=this.$docRowCache.length,c=this.$getRowCacheIndex(this.$docRowCache,a)+1;b>c&&(this.$docRowCache.splice(c,b),this.$screenRowCache.splice(c,b))},this.$getRowCacheIndex=function(a,b){for(var c=0,d=a.length-1;d>=c;){var e=c+d>>1,f=a[e];if(b>f)c=e+1;else{if(!(f>b))return e;d=e-1}}return c-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(a){var b=a.data;this.$resetRowCache(b.start.row)},this.onChange=function(a){var b=a.data;this.$modified=!0,this.$resetRowCache(b.range.start.row);var c=this.$updateInternalDataOnChange(a);this.$fromUndo||!this.$undoManager||b.ignore||(this.$deltasDoc.push(b),c&&0!=c.length&&this.$deltasFold.push({action:"removeFolds",folds:c}),this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(b),this._signal("change",a)},this.setValue=function(a){this.doc.setValue(a),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(a){return this.bgTokenizer.getState(a)},this.getTokens=function(a){return this.bgTokenizer.getTokens(a)},this.getTokenAt=function(a,b){var c,d=this.bgTokenizer.getTokens(a),e=0;if(null==b)f=d.length-1,e=this.getLine(a).length;else for(var f=0;f=b));f++);return(c=d[f])?(c.index=f,c.start=e-c.value.length,c):null},this.setUndoManager=function(a){if(this.$undoManager=a,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),a){var b=this;this.$syncInformUndoManager=function(){b.$informUndoManager.cancel(),b.$deltasFold.length&&(b.$deltas.push({group:"fold",deltas:b.$deltasFold}),b.$deltasFold=[]),b.$deltasDoc.length&&(b.$deltas.push({group:"doc",deltas:b.$deltasDoc}),b.$deltasDoc=[]),b.$deltas.length>0&&a.execute({action:"aceupdate",args:[b.$deltas,b],merge:b.mergeUndoDeltas}),b.mergeUndoDeltas=!1,b.$deltas=[]},this.$informUndoManager=e.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?e.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(a){this.setOption("useSoftTabs",a)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(a){this.setOption("tabSize",a)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(a){return this.$useSoftTabs&&a.column%this.$tabSize===0},this.$overwrite=!1,this.setOverwrite=function(a){this.setOption("overwrite",a)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(a,b){this.$decorations[a]||(this.$decorations[a]=""),this.$decorations[a]+=" "+b,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(a,b){this.$decorations[a]=(this.$decorations[a]||"").replace(" "+b,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(a){this.$breakpoints=[];for(var b=0;b0&&(d=!!c.charAt(b-1).match(this.tokenRe)),d||(d=!!c.charAt(b).match(this.tokenRe)),d)var e=this.tokenRe;else if(/^\s+$/.test(c.slice(b-1,b+1)))var e=/\s/;else var e=this.nonTokenRe;var f=b;if(f>0){do f--;while(f>=0&&c.charAt(f).match(e));f++}for(var g=b;ga&&(a=b.screenWidth)}),this.lineWidgetWidth=a},this.$computeWidth=function(a){if(this.$modified||a){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var b=this.doc.getAllLines(),c=this.$rowLengthCache,d=0,e=0,f=this.$foldData[e],g=f?f.start.row:1/0,h=b.length,i=0;h>i;i++){if(i>g){if(i=f.end.row+1,i>=h)break;f=this.$foldData[e++],g=f?f.start.row:1/0}null==c[i]&&(c[i]=this.$getStringScreenWidth(b[i])[0]),c[i]>d&&(d=c[i])}this.screenWidth=d}},this.getLine=function(a){return this.doc.getLine(a)},this.getLines=function(a,b){return this.doc.getLines(a,b)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(a){return this.doc.getTextRange(a||this.selection.getRange())},this.insert=function(a,b){return this.doc.insert(a,b)},this.remove=function(a){return this.doc.remove(a)},this.undoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=a.length-1;-1!=d;d--){var e=a[d];"doc"==e.group?(this.doc.revertDeltas(e.deltas),c=this.$getUndoSelection(e.deltas,!0,c)):e.deltas.forEach(function(a){this.addFolds(a.folds)},this)}return this.$fromUndo=!1,c&&this.$undoSelect&&!b&&this.selection.setSelectionRange(c),c}},this.redoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=0;da.end.column&&(f.start.column+=h),f.end.row==a.end.row&&f.end.column>a.end.column&&(f.end.column+=h)),g&&f.start.row>=a.end.row&&(f.start.row+=g,f.end.row+=g)}if(f.end=this.insert(f.start,d),e.length){var i=a.start,k=f.start,g=k.row-i.row,h=k.column-i.column;this.addFolds(e.map(function(a){return a=a.clone(),a.start.row==i.row&&(a.start.column+=h),a.end.row==i.row&&(a.end.column+=h),a.start.row+=g,a.end.row+=g,a}))}return f},this.indentRows=function(a,b,c){c=c.replace(/\t/g,this.getTabString());for(var d=a;b>=d;d++)this.insert({row:d,column:0},c)},this.outdentRows=function(a){for(var b=a.collapseRows(),c=new j(0,0,0,0),d=this.getTabSize(),e=b.start.row;e<=b.end.row;++e){var f=this.getLine(e);c.start.row=e,c.end.row=e;for(var g=0;d>g&&" "==f.charAt(g);++g);d>g&&" "==f.charAt(g)?(c.start.column=g,c.end.column=g+1):(c.start.column=0,c.end.column=g),this.remove(c)}},this.$moveLines=function(a,b,c){if(a=this.getRowFoldStart(a),b=this.getRowFoldEnd(b),0>c){var d=this.getRowFoldStart(a+c);if(0>d)return 0;var e=d-a}else if(c>0){var d=this.getRowFoldEnd(b+c);if(d>this.doc.getLength()-1)return 0;var e=d-b}else{a=this.$clipRowToDocument(a),b=this.$clipRowToDocument(b);var e=b-a+1}var f=new j(a,0,b,Number.MAX_VALUE),g=this.getFoldsInRange(f).map(function(a){return a=a.clone(),a.start.row+=e,a.end.row+=e,a}),h=0==c?this.doc.getLines(a,b):this.doc.removeLines(a,b);return this.doc.insertLines(a+e,h),g.length&&this.addFolds(g),e},this.moveLinesUp=function(a,b){return this.$moveLines(a,b,-1)},this.moveLinesDown=function(a,b){return this.$moveLines(a,b,1)},this.duplicateLines=function(a,b){return this.$moveLines(a,b,0)},this.$clipRowToDocument=function(a){return Math.max(0,Math.min(a,this.doc.getLength()-1))},this.$clipColumnToRow=function(a,b){return 0>b?0:Math.min(this.doc.getLine(a).length,b)},this.$clipPositionToDocument=function(a,b){if(b=Math.max(0,b),0>a)a=0,b=0;else{var c=this.doc.getLength();a>=c?(a=c-1,b=this.doc.getLine(c-1).length):b=Math.min(this.doc.getLine(a).length,b)}return{row:a,column:b}},this.$clipRangeToDocument=function(a){a.start.row<0?(a.start.row=0,a.start.column=0):a.start.column=this.$clipColumnToRow(a.start.row,a.start.column);var b=this.doc.getLength()-1;return a.end.row>b?(a.end.row=b,a.end.column=this.doc.getLine(b).length):a.end.column=this.$clipColumnToRow(a.end.row,a.end.column),a},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(a){if(a!=this.$useWrapMode){if(this.$useWrapMode=a,this.$modified=!0,this.$resetRowCache(0),a){var b=this.getLength();this.$wrapData=Array(b),this.$updateWrapData(0,b-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(a,b){(this.$wrapLimitRange.min!==a||this.$wrapLimitRange.max!==b)&&(this.$wrapLimitRange={min:a,max:b},this.$modified=!0,this._signal("changeWrapMode"))},this.adjustWrapLimit=function(a,b){var c=this.$wrapLimitRange;c.max<0&&(c={min:b,max:b});var d=this.$constrainWrapLimit(a,c.min,c.max);return d!=this.$wrapLimit&&d>1?(this.$wrapLimit=d,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(a,b,c){return b&&(a=Math.max(b,a)),c&&(a=Math.min(c,a)),a},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(a){this.setWrapLimitRange(a,a)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(a){var b,c=this.$useWrapMode,d=a.data.action,e=a.data.range.start.row,f=a.data.range.end.row,g=a.data.range.start,h=a.data.range.end,i=null;if(-1!=d.indexOf("Lines")?(f="insertLines"==d?e+a.data.lines.length:e,b=a.data.lines?a.data.lines.length:f-e):b=f-e,this.$updating=!0,0!=b)if(-1!=d.indexOf("remove")){this[c?"$wrapData":"$rowLengthCache"].splice(e,b);var j=this.$foldData;i=this.getFoldsInRange(a.data.range),this.removeFolds(i);var k=this.getFoldLine(h.row),l=0;if(k){k.addRemoveChars(h.row,h.column,g.column-h.column),k.shiftRow(-b);var m=this.getFoldLine(e);m&&m!==k&&(m.merge(k),k=m),l=j.indexOf(k)+1}for(l;l=h.row&&k.shiftRow(-b)}f=e}else{var n=Array(b);n.unshift(e,0);var o=c?this.$wrapData:this.$rowLengthCache;o.splice.apply(o,n);var j=this.$foldData,k=this.getFoldLine(e),l=0;if(k){var p=k.range.compareInside(g.row,g.column);0==p?(k=k.split(g.row,g.column),k.shiftRow(b),k.addRemoveChars(f,0,h.column-g.column)):-1==p&&(k.addRemoveChars(e,0,h.column-g.column),k.shiftRow(b)),l=j.indexOf(k)+1}for(l;l=e&&k.shiftRow(b)}}else{b=Math.abs(a.data.range.start.column-a.data.range.end.column),-1!=d.indexOf("remove")&&(i=this.getFoldsInRange(a.data.range),this.removeFolds(i),b=-b);var k=this.getFoldLine(e);k&&k.addRemoveChars(e,g.column,b)}return c&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,c?this.$updateWrapData(e,f):this.$updateRowLengthCache(e,f),i},this.$updateRowLengthCache=function(a,b,c){this.$rowLengthCache[a]=null,this.$rowLengthCache[b]=null},this.$updateWrapData=function(a,b){var c,d,e=this.doc.getAllLines(),f=this.getTabSize(),g=this.$wrapData,h=this.$wrapLimit,i=a;for(b=Math.min(b,e.length-1);b>=i;)d=this.getFoldLine(i,d),d?(c=[],d.walk(function(a,b,d,f){var g;if(null!=a){g=this.$getDisplayTokens(a,c.length),g[0]=k;for(var h=1;hb;){var i=f+b;if(a[i-1]>=p&&a[i]>=p)c(i);else if(a[i]!=k&&a[i]!=n){for(var j=Math.max(i-(h?10:b-(b>>2)),f-1);i>j&&a[i]j&&a[i]j&&a[i]==o;)i--}else for(;i>j&&a[i]j?c(++i):(i=f+b,c(i))}else{for(i;i!=f-1&&a[i]!=k;i--);if(i>f){c(i);continue}for(i=f+b;ij;j++)f.push(r)}else 32==i?f.push(p):i>39&&48>i||i>57&&64>i?f.push(o):i>=4352&&b(i)?f.push(c,h):f.push(c)}return f},this.$getStringScreenWidth=function(a,c,d){if(0==c)return[0,0];null==c&&(c=1/0),d=d||0;var e,f;for(f=0;f=4352&&b(e)?2:1,!(d>c));f++);return[d,f]},this.lineWidgets=null,this.getRowLength=function(a){if(this.lineWidgets)var b=this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0;else b=0;return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.getRowLineCount=function(a){return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1:1},this.getScreenLastRowColumn=function(a){var b=this.screenToDocumentPosition(a,Number.MAX_VALUE);return this.documentToScreenColumn(b.row,b.column)},this.getDocumentLastRowColumn=function(a,b){var c=this.documentToScreenRow(a,b);return this.getScreenLastRowColumn(c)},this.getDocumentLastRowColumnPosition=function(a,b){var c=this.documentToScreenRow(a,b);return this.screenToDocumentPosition(c,Number.MAX_VALUE/10)},this.getRowSplitData=function(a){return this.$useWrapMode?this.$wrapData[a]:void 0},this.getScreenTabSize=function(a){return this.$tabSize-a%this.$tabSize},this.screenToDocumentRow=function(a,b){return this.screenToDocumentPosition(a,b).row},this.screenToDocumentColumn=function(a,b){return this.screenToDocumentPosition(a,b).column},this.screenToDocumentPosition=function(a,b){if(0>a)return{row:0,column:0};var c,d,e=0,f=0,g=0,h=0,i=this.$screenRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var g=i[j],e=this.$docRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getLength()-1,n=this.getNextFoldLine(e),o=n?n.start.row:1/0;a>=g&&(h=this.getRowLength(e),!(g+h>a||e>=m));)g+=h,e++,e>o&&(e=n.end.row+1,n=this.getNextFoldLine(e,n),o=n?n.start.row:1/0),l&&(this.$docRowCache.push(e),this.$screenRowCache.push(g));if(n&&n.start.row<=e)c=this.getFoldDisplayLine(n),e=n.start.row;else{if(a>=g+h||e>m)return{row:m,column:this.getLine(m).length};c=this.getLine(e),n=null}if(this.$useWrapMode){var p=this.$wrapData[e];if(p){var q=Math.floor(a-g);d=p[q],q>0&&p.length&&(f=p[q-1]||p[p.length-1],c=c.substring(f))}}return f+=this.$getStringScreenWidth(c,b)[1],this.$useWrapMode&&f>=d&&(f=d-1),n?n.idxToPosition(f):{row:e,column:f}},this.documentToScreenPosition=function(a,b){if("undefined"==typeof b)var c=this.$clipPositionToDocument(a.row,a.column);else c=this.$clipPositionToDocument(a,b);a=c.row,b=c.column;var d=0,e=null,f=null;f=this.getFoldAt(a,b,1),f&&(a=f.start.row,b=f.start.column);var g,h=0,i=this.$docRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var h=i[j],d=this.$screenRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getNextFoldLine(h),n=m?m.start.row:1/0;a>h;){if(h>=n){if(g=m.end.row+1,g>a)break;m=this.getNextFoldLine(g,m),n=m?m.start.row:1/0}else g=h+1;d+=this.getRowLength(h),h=g,l&&(this.$docRowCache.push(h),this.$screenRowCache.push(d))}var o="";if(m&&h>=n?(o=this.getFoldDisplayLine(m,a,b),e=m.start.row):(o=this.getLine(a).substring(0,b),e=a),this.$useWrapMode){var p=this.$wrapData[e];if(p){for(var q=0;o.length>=p[q];)d++,q++;o=o.substring(p[q-1]||0,o.length)}}return{row:d,column:this.$getStringScreenWidth(o)[0]}},this.documentToScreenColumn=function(a,b){return this.documentToScreenPosition(a,b).column},this.documentToScreenRow=function(a,b){return this.documentToScreenPosition(a,b).row},this.getScreenLength=function(){var a=0,b=null;if(this.$useWrapMode)for(var c=this.$wrapData.length,d=0,e=0,b=this.$foldData[e++],f=b?b.start.row:1/0;c>d;){var g=this.$wrapData[d];a+=g?g.length+1:1,d++,d>f&&(d=b.end.row+1,b=this.$foldData[e++],f=b?b.start.row:1/0)}else{a=this.getLength();for(var h=this.$foldData,e=0;eb.row||a.row==b.row&&a.column>b.column},this.getRange=function(){var a=this.anchor,b=this.lead;return this.isEmpty()?g.fromPoints(b,b):this.isBackwards()?g.fromPoints(b,a):g.fromPoints(a,b)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var a=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(a,this.doc.getLine(a).length)},this.setRange=this.setSelectionRange=function(a,b){b?(this.setSelectionAnchor(a.end.row,a.end.column),this.selectTo(a.start.row,a.start.column)):(this.setSelectionAnchor(a.start.row,a.start.column),this.selectTo(a.end.row,a.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(a){var b=this.lead;this.$isEmpty&&this.setSelectionAnchor(b.row,b.column),a.call(this)},this.selectTo=function(a,b){this.$moveSelection(function(){this.moveCursorTo(a,b)})},this.selectToPosition=function(a){this.$moveSelection(function(){this.moveCursorToPosition(a)})},this.moveTo=function(a,b){this.clearSelection(),this.moveCursorTo(a,b)},this.moveToPosition=function(a){this.clearSelection(),this.moveCursorToPosition(a)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(a,b){if("undefined"==typeof b){var c=a||this.lead;a=c.row,b=c.column}return this.session.getWordRange(a,b)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var a=this.getCursor(),b=this.session.getAWordRange(a.row,a.column);this.setSelectionRange(b)},this.getLineRange=function(a,b){var c,d="number"==typeof a?a:this.lead.row,e=this.session.getFoldLine(d);return e?(d=e.start.row,c=e.end.row):c=d,b===!0?new g(d,0,c,this.session.getLine(c).length):new g(d,0,c+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,-1))this.moveCursorTo(a.start.row,a.start.column);else if(0==b.column)b.row>0&&this.moveCursorTo(b.row-1,this.doc.getLine(b.row-1).length);else{var c=this.session.getTabSize();this.session.isTabStop(b)&&this.doc.getLine(b.row).slice(b.column-c,b.column).split(" ").length-1==c?this.moveCursorBy(0,-c):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,1))this.moveCursorTo(a.end.row,a.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(b.column=d)}}this.moveCursorTo(b.row,b.column)},this.moveCursorFileEnd=function(){var a=this.doc.getLength()-1,b=this.doc.getLine(a).length;this.moveCursorTo(a,b)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var a,b=this.lead.row,c=this.lead.column,d=this.doc.getLine(b),e=d.substring(c);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var f=this.session.getFoldAt(b,c,1);return f?void this.moveCursorTo(f.end.row,f.end.column):((a=this.session.nonTokenRe.exec(e))&&(c+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,e=d.substring(c)),c>=d.length?(this.moveCursorTo(b,d.length),this.moveCursorRight(),void(b=c?(this.moveCursorTo(b,0),this.moveCursorLeft(),void(b>0&&this.moveCursorWordLeft())):((f=this.session.tokenRe.exec(g))&&(c-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),void this.moveCursorTo(b,c))},this.$shortWordEndIndex=function(a){var b,c,d=0,e=/\s/,f=this.session.tokenRe;if(f.lastIndex=0,b=this.session.tokenRe.exec(a))d=this.session.tokenRe.lastIndex;else{for(;(c=a[d])&&e.test(c);)d++;if(1>d)for(f.lastIndex=0;(c=a[d])&&!f.test(c);)if(f.lastIndex=0,d++,e.test(c)){if(d>2){d--;break}for(;(c=a[d])&&e.test(c);)d++;if(d>2)break}}return f.lastIndex=0,d},this.moveCursorShortWordRight=function(){var a=this.lead.row,b=this.lead.column,c=this.doc.getLine(a),d=c.substring(b),e=this.session.getFoldAt(a,b,1);if(e)return this.moveCursorTo(e.end.row,e.end.column);if(b==c.length){var f=this.doc.getLength();do a++,d=this.doc.getLine(a);while(f>a&&/^\s*$/.test(d));/^\s+/.test(d)||(d=""),b=0}var g=this.$shortWordEndIndex(d);this.moveCursorTo(a,b+g)},this.moveCursorShortWordLeft=function(){var a,b=this.lead.row,c=this.lead.column;if(a=this.session.getFoldAt(b,c,-1))return this.moveCursorTo(a.start.row,a.start.column);var d=this.session.getLine(b).substring(0,c);if(0==c){do b--,d=this.doc.getLine(b);while(b>0&&/^\s*$/.test(d));c=d.length,/\s+$/.test(d)||(d="")}var f=e.stringReverse(d),g=this.$shortWordEndIndex(f);return this.moveCursorTo(b,c-g)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(a,b){var c=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===b&&(this.$desiredColumn?c.column=this.$desiredColumn:this.$desiredColumn=c.column);var d=this.session.screenToDocumentPosition(c.row+a,c.column);0!==a&&0===b&&d.row===this.lead.row&&d.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[d.row]&&d.row++,this.moveCursorTo(d.row,d.column+b,0===b)},this.moveCursorToPosition=function(a){this.moveCursorTo(a.row,a.column)},this.moveCursorTo=function(a,b,c){var d=this.session.getFoldAt(a,b,1);d&&(a=d.start.row,b=d.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(a,b),this.$keepDesiredColumnOnChange=!1,c||(this.$desiredColumn=null)},this.moveCursorToScreen=function(a,b,c){var d=this.session.screenToDocumentPosition(a,b);this.moveCursorTo(d.row,d.column,c)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(a){this.setSelectionRange(a,a.cursor==a.start),this.$desiredColumn=a.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(a){var b=this.getRange();return a?(a.start.column=b.start.column,a.start.row=b.start.row,a.end.column=b.end.column,a.end.row=b.end.row):a=b,a.cursor=this.isBackwards()?a.start:a.end,a.desiredColumn=this.$desiredColumn,a},this.getRangeOfMovements=function(a){var b=this.getCursor();try{a.call(null,this);var c=this.getCursor();return g.fromPoints(b,c)}catch(d){return g.fromPoints(b,b)}finally{this.moveCursorToPosition(b)}},this.toJSON=function(){if(this.rangeCount)var a=this.ranges.map(function(a){var b=a.clone();return b.isBackwards=a.cursor==a.start,b});else{var a=this.getRange();a.isBackwards=this.isBackwards()}return a},this.fromJSON=function(a){if(void 0==a.start){if(this.rangeList){this.toSingleRange(a[0]);for(var b=a.length;b--;){var c=g.fromPoints(a[b].start,a[b].end);a.isBackwards&&(c.cursor=c.start),this.addRange(c,!0)}return}a=a[0]}this.rangeList&&this.toSingleRange(a),this.setSelectionRange(a,a.isBackwards)},this.isEqual=function(a){if((a.length||this.rangeCount)&&a.length!=this.rangeCount)return!1;if(!a.length||!this.ranges)return this.getRange().isEqual(a);for(var b=this.ranges.length;b--;)if(!this.ranges[b].isEqual(a[b]))return!1;return!0}}).call(h.prototype),b.Selection=h}),define("ace/range",["require","exports","module"],function(a,b,c){var d=function(a,b){return a.row-b.row||a.column-b.column},e=function(a,b,c,d){this.start={row:a,column:b},this.end={row:c,column:d}};(function(){this.isEqual=function(a){return this.start.row===a.start.row&&this.end.row===a.end.row&&this.start.column===a.start.column&&this.end.column===a.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(a,b){return 0==this.compare(a,b)},this.compareRange=function(a){var b,c=a.end,d=a.start;return b=this.compare(c.row,c.column),1==b?(b=this.compare(d.row,d.column),1==b?2:0==b?1:0):-1==b?-2:(b=this.compare(d.row,d.column),-1==b?-1:1==b?42:0)},this.comparePoint=function(a){return this.compare(a.row,a.column)},this.containsRange=function(a){return 0==this.comparePoint(a.start)&&0==this.comparePoint(a.end)},this.intersects=function(a){var b=this.compareRange(a);return-1==b||0==b||1==b},this.isEnd=function(a,b){return this.end.row==a&&this.end.column==b},this.isStart=function(a,b){return this.start.row==a&&this.start.column==b},this.setStart=function(a,b){"object"==typeof a?(this.start.column=a.column,this.start.row=a.row):(this.start.row=a,this.start.column=b)},this.setEnd=function(a,b){"object"==typeof a?(this.end.column=a.column,this.end.row=a.row):(this.end.row=a,this.end.column=b)},this.inside=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)||this.isStart(a,b)?!1:!0:!1},this.insideStart=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)?!1:!0:!1},this.insideEnd=function(a,b){return 0==this.compare(a,b)?this.isStart(a,b)?!1:!0:!1},this.compare=function(a,b){return this.isMultiLine()||a!==this.start.row?athis.end.row?1:this.start.row===a?b>=this.start.column?0:-1:this.end.row===a?b<=this.end.column?0:1:0:bthis.end.column?1:0},this.compareStart=function(a,b){return this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.compareEnd=function(a,b){return this.end.row==a&&this.end.column==b?1:this.compare(a,b)},this.compareInside=function(a,b){return this.end.row==a&&this.end.column==b?1:this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.clipRows=function(a,b){if(this.end.row>b)var c={row:b+1,column:0};else if(this.end.rowb)var d={row:b+1,column:0};else if(this.start.row=b;b++)a(f.getLine(b),b)}var f=b.doc,g=!0,i=!0,j=1/0,k=b.getTabSize(),l=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var m=this.lineCommentStart.map(h.escapeRegExp).join("|"),n=this.lineCommentStart[0];else var m=h.escapeRegExp(this.lineCommentStart),n=this.lineCommentStart;m=new RegExp("^(\\s*)(?:"+m+") ?"),l=b.getUseSoftTabs();var o=function(a,b){var c=a.match(m);if(c){var d=c[1].length,e=c[0].length;s(a,d,e)||" "!=c[0][e-1]||e--,f.removeInLine(b,d,e)}},p=n+" ",q=function(a,b){(!g||/\S/.test(a))&&(s(a,j,j)?f.insertInLine({row:b,column:j},p):f.insertInLine({row:b,column:j},n))},r=function(a,b){return m.test(a)},s=function(a,b,c){for(var d=0;b--&&" "==a.charAt(b);)d++;if(d%k!=0)return!1;for(var d=0;" "==a.charAt(c++);)d++;return k>2?d%k!=k-1:d%k==0}}else{if(!this.blockComment)return!1;var n=this.blockComment.start,t=this.blockComment.end,m=new RegExp("^(\\s*)(?:"+h.escapeRegExp(n)+")"),u=new RegExp("(?:"+h.escapeRegExp(t)+")\\s*$"),q=function(a,b){r(a,b)||(!g||/\S/.test(a))&&(f.insertInLine({row:b,column:a.length},t),f.insertInLine({row:b,column:j},n))},o=function(a,b){var c;(c=a.match(u))&&f.removeInLine(b,a.length-c[0].length,a.length),(c=a.match(m))&&f.removeInLine(b,c[1].length,c[0].length)},r=function(a,c){if(m.test(a))return!0;for(var d=b.getTokens(c),e=0;ec&&(j=c),i&&!r(a,b)&&(i=!1)):v>a.length&&(v=a.length)}),j==1/0&&(j=v,g=!1,i=!1),l&&j%k!=0&&(j=Math.floor(j/k)*k),e(i?o:q)},this.toggleBlockComment=function(a,b,c,d){var e=this.blockComment;if(e){!e.start&&e[0]&&(e=e[0]);var f,g,h=new i(b,d.row,d.column),k=h.getCurrentToken(),l=(b.selection,b.selection.toOrientedRange());if(k&&/comment/.test(k.type)){for(var m,n;k&&/comment/.test(k.type);){var o=k.value.indexOf(e.start);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;m=new j(p,q,p,q+e.start.length);break}k=h.stepBackward()}for(var h=new i(b,d.row,d.column),k=h.getCurrentToken();k&&/comment/.test(k.type);){var o=k.value.indexOf(e.end);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;n=new j(p,q,p,q+e.end.length);break}k=h.stepForward()}n&&b.remove(n),m&&(b.remove(m),f=m.start.row,g=-e.start.length)}else g=e.start.length,f=c.start.row,b.insert(c.end,e.end),b.insert(c.start,e.start);l.start.row==f&&(l.start.column+=g),l.end.row==f&&(l.end.column+=g),b.selection.fromOrientedRange(l)}},this.getNextLineIndent=function(a,b,c){return this.$getIndent(b)},this.checkOutdent=function(a,b,c){return!1},this.autoOutdent=function(a,b,c){},this.$getIndent=function(a){return a.match(/^\s*/)[0]},this.createWorker=function(a){return null},this.createModeDelegates=function(a){this.$embeds=[],this.$modes={};for(var b in a)a[b]&&(this.$embeds.push(b),this.$modes[b]=new a[b]);for(var c=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],b=0;bf;f++)if("string"==typeof e[f].token)/keyword|support|storage/.test(e[f].token)&&c.push(e[f].regex);else if("object"==typeof e[f].token)for(var h=0,i=e[f].token.length;i>h;h++)if(/keyword|support|storage/.test(e[f].token[h])){var d=e[f].regex.match(/\(.+?\)/g)[h];c.push(d.substr(1,d.length-2))}this.completionKeywords=c}return a?c.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(a,b,c,d){var e=this.$keywordList||this.$createKeywordList();return e.map(function(a){return{name:a,value:a,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(k.prototype),b.Mode=k}),define("ace/tokenizer",["require","exports","module"],function(a,b,c){var d=1e3,e=function(a){this.states=a,this.regExps={},this.matchMappings={};for(var b in this.states){for(var c=this.states[b],d=[],e=0,f=this.matchMappings[b]={defaultToken:"text"},g="g",h=[],i=0;i1?j.onMatch=this.$applyToken:j.onMatch=j.token);l>1&&(/\\\d/.test(j.regex)?k=j.regex.replace(/\\([0-9]+)/g,function(a,b){return"\\"+(parseInt(b,10)+e+1)}):(l=1,k=this.removeCapturingGroups(j.regex)),j.splitRegex||"string"==typeof j.token||h.push(j)),f[e]=i,e+=l,d.push(k),j.onMatch||(j.onMatch=null)}}h.forEach(function(a){a.splitRegex=this.createSplitterRegexp(a.regex,g)},this),this.regExps[b]=new RegExp("("+d.join(")|(")+")|($)",g)}};(function(){this.$setMaxTokenCount=function(a){d=0|a},this.$applyToken=function(a){var b=this.splitRegex.exec(a).slice(1),c=this.token.apply(this,b);if("string"==typeof c)return[{type:c,value:a}];for(var d=[],e=0,f=c.length;f>e;e++)b[e]&&(d[d.length]={type:c[e],value:b[e]});return d},this.$arrayTokens=function(a){if(!a)return[];var b=this.splitRegex.exec(a);if(!b)return"text";for(var c=[],d=this.tokenArray,e=0,f=d.length;f>e;e++)b[e+1]&&(c[c.length]={type:d[e],value:b[e+1]});return c},this.removeCapturingGroups=function(a){var b=a.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(a,b){return b?"(?:":a});return b},this.createSplitterRegexp=function(a,b){if(-1!=a.indexOf("(?=")){var c=0,d=!1,e={};a.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(a,b,f,g,h,i){return d?d="]"!=h:h?d=!0:g?(c==e.stack&&(e.end=i+1,e.stack=-1),c--):f&&(c++,1!=f.length&&(e.stack=c,e.start=i)),a}),null!=e.end&&/^\)*$/.test(a.substr(e.end))&&(a=a.substring(0,e.start)+a.substr(e.end))}return new RegExp(a,(b||"").replace("g",""))},this.getLineTokens=function(a,b){if(b&&"string"!=typeof b){var c=b.slice(0);b=c[0]}else var c=[];var e=b||"start",f=this.states[e];f||(e="start",f=this.states[e]);var g=this.matchMappings[e],h=this.regExps[e];h.lastIndex=0;for(var i,j=[],k=0,l={type:null,value:""};i=h.exec(a);){var m=g.defaultToken,n=null,o=i[0],p=h.lastIndex;if(p-o.length>k){var q=a.substring(k,p-o.length);l.type==m?l.value+=q:(l.type&&j.push(l),l={type:m,value:q})}for(var r=0;rd){for(;k1&&c[0]!==e&&c.unshift(e),{tokens:j,state:c.length?c:e}}}).call(e.prototype),b.Tokenizer=e}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(a,b,c){var d=a("../lib/lang"),e=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(a,b){if(b)for(var c in a){for(var d=a[c],e=0;e=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var a=this.$rowTokens,b=this.$tokenIndex,c=a[b].start;if(void 0!==c)return c;for(c=0;b>0;)b-=1,c+=a[b].value.length;return c}}).call(d.prototype),b.TokenIterator=d}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=a("./range").Range,g=a("./anchor").Anchor,h=function(a){this.$lines=[],0===a.length?this.$lines=[""]:Array.isArray(a)?this._insertLines(0,a):this.insert({row:0,column:0},a)};(function(){d.implement(this,e),this.setValue=function(a){var b=this.getLength();this.remove(new f(0,0,b,this.getLine(b-1).length)),this.insert({row:0,column:0},a)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(a,b){return new g(this,a,b)},0==="aaa".split(/a/).length?this.$split=function(a){return a.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(a){return a.split(/\r\n|\r|\n/)},this.$detectNewLine=function(a){var b=a.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=b?b[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(a){this.$newLineMode!==a&&(this.$newLineMode=a,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(a){return"\r\n"==a||"\r"==a||"\n"==a},this.getLine=function(a){return this.$lines[a]||""},this.getLines=function(a,b){return this.$lines.slice(a,b+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(a){if(a.start.row==a.end.row)return this.getLine(a.start.row).substring(a.start.column,a.end.column);var b=this.getLines(a.start.row,a.end.row);b[0]=(b[0]||"").substring(a.start.column);var c=b.length-1;return a.end.row-a.start.row==c&&(b[c]=b[c].substring(0,a.end.column)),b.join(this.getNewLineCharacter())},this.$clipPosition=function(a){var b=this.getLength();return a.row>=b?(a.row=Math.max(0,b-1),a.column=this.getLine(b-1).length):a.row<0&&(a.row=0),a},this.insert=function(a,b){if(!b||0===b.length)return a;a=this.$clipPosition(a),this.getLength()<=1&&this.$detectNewLine(b);var c=this.$split(b),d=c.splice(0,1)[0],e=0==c.length?null:c.splice(c.length-1,1)[0];return a=this.insertInLine(a,d),null!==e&&(a=this.insertNewLine(a),a=this._insertLines(a.row,c),a=this.insertInLine(a,e||"")),a},this.insertLines=function(a,b){return a>=this.getLength()?this.insert({row:a,column:0},"\n"+b.join("\n")):this._insertLines(Math.max(a,0),b)},this._insertLines=function(a,b){if(0==b.length)return{row:a,column:0};for(;b.length>61440;){var c=this._insertLines(a,b.slice(0,61440));b=b.slice(61440),a=c.row}var d=[a,0];d.push.apply(d,b),this.$lines.splice.apply(this.$lines,d);var e=new f(a,0,a+b.length,0),g={action:"insertLines",range:e,lines:b};return this._signal("change",{data:g}),e.end},this.insertNewLine=function(a){a=this.$clipPosition(a);var b=this.$lines[a.row]||"";this.$lines[a.row]=b.substring(0,a.column),this.$lines.splice(a.row+1,0,b.substring(a.column,b.length));var c={row:a.row+1,column:0},d={action:"insertText",range:f.fromPoints(a,c),text:this.getNewLineCharacter()};return this._signal("change",{data:d}),c},this.insertInLine=function(a,b){if(0==b.length)return a;var c=this.$lines[a.row]||"";this.$lines[a.row]=c.substring(0,a.column)+b+c.substring(a.column);var d={row:a.row,column:a.column+b.length},e={action:"insertText",range:f.fromPoints(a,d),text:b};return this._signal("change",{data:e}),d},this.remove=function(a){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),a.start=this.$clipPosition(a.start),a.end=this.$clipPosition(a.end),a.isEmpty())return a.start;var b=a.start.row,c=a.end.row;if(a.isMultiLine()){var d=0==a.start.column?b:b+1,e=c-1;a.end.column>0&&this.removeInLine(c,0,a.end.column),e>=d&&this._removeLines(d,e),d!=b&&(this.removeInLine(b,a.start.column,this.getLine(b).length),this.removeNewLine(a.start.row))}else this.removeInLine(b,a.start.column,a.end.column);return a.start},this.removeInLine=function(a,b,c){if(b!=c){var d=new f(a,b,a,c),e=this.getLine(a),g=e.substring(b,c),h=e.substring(0,b)+e.substring(c,e.length);this.$lines.splice(a,1,h);var i={action:"removeText",range:d,text:g};return this._signal("change",{data:i}),d.start}},this.removeLines=function(a,b){return 0>a||b>=this.getLength()?this.remove(new f(a,0,b+1,0)):this._removeLines(a,b)},this._removeLines=function(a,b){var c=new f(a,0,b+1,0),d=this.$lines.splice(a,b-a+1),e={action:"removeLines",range:c,nl:this.getNewLineCharacter(),lines:d};return this._signal("change",{data:e}),d},this.removeNewLine=function(a){var b=this.getLine(a),c=this.getLine(a+1),d=new f(a,b.length,a+1,0),e=b+c;this.$lines.splice(a,2,e);var g={action:"removeText",range:d,text:this.getNewLineCharacter()};this._signal("change",{data:g})},this.replace=function(a,b){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),0==b.length&&a.isEmpty())return a.start;if(b==this.getTextRange(a))return a.end;if(this.remove(a),b)var c=this.insert(a.start,b);else c=a.start;return c},this.applyDeltas=function(a){for(var b=0;b=0;b--){var c=a[b],d=f.fromPoints(c.range.start,c.range.end);"insertLines"==c.action?this._removeLines(d.start.row,d.end.row-1):"insertText"==c.action?this.remove(d):"removeLines"==c.action?this._insertLines(d.start.row,c.lines):"removeText"==c.action&&this.insert(d.start,c.text)}},this.indexToPosition=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=b||0,f=c.length;f>e;e++)if(a-=c[e].length+d,0>a)return{row:e,column:a+c[e].length+d};return{row:f-1,column:c[f-1].length}},this.positionToIndex=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=0,f=Math.min(a.row,c.length),g=b||0;f>g;++g)e+=c[g].length+d;return e+a.column}}).call(h.prototype),b.Document=h}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=b.Anchor=function(a,b,c){this.$onChange=this.onChange.bind(this),this.attach(a),"undefined"==typeof c?this.setPosition(b.row,b.column):this.setPosition(b,c)};(function(){d.implement(this,e),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(a){var b=a.data,c=b.range;if((c.start.row!=c.end.row||c.start.row==this.row)&&!(c.start.row>this.row||c.start.row==this.row&&c.start.column>this.column)){var d=this.row,e=this.column,f=c.start,g=c.end;"insertText"===b.action?f.row===d&&f.column<=e?f.column===e&&this.$insertRight||(f.row===g.row?e+=g.column-f.column:(e-=f.column,d+=g.row-f.row)):f.row!==g.row&&f.row=e?f.column:Math.max(0,e-(g.column-f.column)):f.row!==g.row&&f.row=this.document.getLength()?(c.row=Math.max(0,this.document.getLength()-1),c.column=this.document.getLine(c.row).length):0>a?(c.row=0,c.column=0):(c.row=a,c.column=Math.min(this.document.getLine(c.row).length,Math.max(0,b))),0>b&&(c.column=0),c}}).call(f.prototype)}),define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=function(a,b){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=a;var c=this;this.$worker=function(){if(c.running){for(var a=new Date,b=c.currentLine,d=-1,e=c.doc;c.lines[b];)b++;var f=b,g=e.getLength(),h=0;for(c.running=!1;g>b;){c.$tokenizeRow(b),d=b;do b++;while(c.lines[b]);if(h++,h%5==0&&new Date-a>20)return c.running=setTimeout(c.$worker,20),void(c.currentLine=b)}c.currentLine=b,d>=f&&c.fireUpdateEvent(f,d)}}};(function(){d.implement(this,e),this.setTokenizer=function(a){this.tokenizer=a,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(a){this.doc=a,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(a,b){var c={first:a,last:b};this._signal("update",{data:c})},this.start=function(a){this.currentLine=Math.min(a||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(a){var b=a.range,c=b.start.row,d=b.end.row-c;if(0===d)this.lines[c]=null;else if("removeText"==a.action||"removeLines"==a.action)this.lines.splice(c,d+1,null),this.states.splice(c,d+1,null);else{var e=Array(d+1);e.unshift(c,1),this.lines.splice.apply(this.lines,e),this.states.splice.apply(this.states,e)}this.currentLine=Math.min(c,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(a){return this.lines[a]||this.$tokenizeRow(a)},this.getState=function(a){return this.currentLine==a&&this.$tokenizeRow(a),this.states[a]||"start"},this.$tokenizeRow=function(a){var b=this.doc.getLine(a),c=this.states[a-1],d=this.tokenizer.getLineTokens(b,c,a);return this.states[a]+""!=d.state+""?(this.states[a]=d.state,this.lines[a+1]=null,this.currentLine>a+1&&(this.currentLine=a+1)):this.currentLine==a&&(this.currentLine=a+1),this.lines[a]=d.tokens}}).call(f.prototype),b.BackgroundTokenizer=f}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(a,b,c){var d=a("./lib/lang"),e=(a("./lib/oop"),a("./range").Range),f=function(a,b,c){this.setRegexp(a),this.clazz=b,this.type=c||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(a){this.regExp+""!=a+""&&(this.regExp=a,this.cache=[])},this.update=function(a,b,c,f){if(this.regExp)for(var g=f.firstRow,h=f.lastRow,i=g;h>=i;i++){var j=this.cache[i];null==j&&(j=d.getMatchOffsets(c.getLine(i),this.regExp),j.length>this.MAX_RANGES&&(j=j.slice(0,this.MAX_RANGES)),j=j.map(function(a){return new e(i,a.offset,i,a.offset+a.length)}),this.cache[i]=j.length?j:"");for(var k=j.length;k--;)b.drawSingleLineMarker(a,j[k].toScreenRange(c),this.clazz,f)}}}).call(f.prototype),b.SearchHighlight=f}),define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(a,b,c){function d(){this.getFoldAt=function(a,b,c){var d=this.getFoldLine(a);if(!d)return null;for(var e=d.folds,f=0;f=a)return e;if(e.end.row>a)return null}return null},this.getNextFoldLine=function(a,b){var c=this.$foldData,d=0;for(b&&(d=c.indexOf(b)),-1==d&&(d=0),d;d=a)return e}return null},this.getFoldedRowCount=function(a,b){for(var c=this.$foldData,d=b-a+1,e=0;e=b){b>h&&(h>=a?d-=b-h:d=0);break}g>=a&&(d-=h>=a?g-h:g-a+1)}return d},this.$addFoldLine=function(a){return this.$foldData.push(a),this.$foldData.sort(function(a,b){return a.start.row-b.start.row}),a},this.addFold=function(a,b){var c,d=this.$foldData,e=!1;a instanceof g?c=a:(c=new g(b,a),c.collapseChildren=b.collapseChildren),this.$clipRangeToDocument(c.range);var h=c.start.row,i=c.start.column,j=c.end.row,k=c.end.column;if(!(j>h||h==j&&k-2>=i))throw new Error("The range has to be at least 2 characters width");var l=this.getFoldAt(h,i,1),m=this.getFoldAt(j,k,-1);if(l&&m==l)return l.addSubFold(c);if(l&&!l.range.isStart(h,i)||m&&!m.range.isEnd(j,k))throw new Error("A fold can't intersect already existing fold"+c.range+l.range);var n=this.getFoldsInRange(c.range);n.length>0&&(this.removeFolds(n),n.forEach(function(a){c.addSubFold(a)}));for(var o=0;o0&&this.foldAll(a.start.row+1,a.end.row,a.collapseChildren-1),a.subFolds=[]},this.expandFolds=function(a){a.forEach(function(a){this.expandFold(a)},this)},this.unfold=function(a,b){var c,d;if(null==a?(c=new e(0,0,this.getLength(),0),b=!0):c="number"==typeof a?new e(a,0,a,this.getLine(a).length):"row"in a?e.fromPoints(a,a):a,d=this.getFoldsInRangeList(c),b)this.removeFolds(d);else for(var f=d;f.length;)this.expandFolds(f),f=this.getFoldsInRangeList(c);return d.length?d:void 0},this.isRowFolded=function(a,b){return!!this.getFoldLine(a,b)},this.getRowFoldEnd=function(a,b){var c=this.getFoldLine(a,b);return c?c.end.row:a},this.getRowFoldStart=function(a,b){var c=this.getFoldLine(a,b);return c?c.start.row:a},this.getFoldDisplayLine=function(a,b,c,d,e){null==d&&(d=a.start.row,e=0),null==b&&(b=a.end.row,c=this.getLine(b).length);var f=this.doc,g="";return a.walk(function(a,b,c,h){if(!(d>b)){if(b==d){if(e>c)return;h=Math.max(e,h)}g+=null!=a?a:f.getLine(b).substring(h,c)}},b,c),g},this.getDisplayLine=function(a,b,c,d){var e=this.getFoldLine(a);if(e)return this.getFoldDisplayLine(e,a,b,c,d);var f;return f=this.doc.getLine(a),f.substring(d||0,b||f.length)},this.$cloneFoldData=function(){var a=[];return a=this.$foldData.map(function(b){var c=b.folds.map(function(a){return a.clone()});return new f(a,c)})},this.toggleFold=function(a){var b,c,d=this.selection,e=d.getRange();if(e.isEmpty()){var f=e.start;if(b=this.getFoldAt(f.row,f.column))return void this.expandFold(b);(c=this.findMatchingBracket(f))?1==e.comparePoint(c)?e.end=c:(e.start=c,e.start.column++,e.end.column--):(c=this.findMatchingBracket({row:f.row,column:f.column+1}))?(1==e.comparePoint(c)?e.end=c:e.start=c,e.start.column++):e=this.getCommentFoldRange(f.row,f.column)||e}else{var g=this.getFoldsInRange(e);if(a&&g.length)return void this.expandFolds(g);1==g.length&&(b=g[0])}if(b||(b=this.getFoldAt(e.start.row,e.start.column)),b&&b.range.toString()==e.toString())return void this.expandFold(b);var h="...";if(!e.isMultiLine()){if(h=this.getTextRange(e),h.length<4)return;h=h.trim().substring(0,2)+".."}this.addFold(h,e)},this.getCommentFoldRange=function(a,b,c){var d=new h(this,a,b),f=d.getCurrentToken();if(f&&/^comment|string/.test(f.type)){var g=new e,i=new RegExp(f.type.replace(/\..*/,"\\."));if(1!=c){do f=d.stepBackward();while(f&&i.test(f.type));d.stepForward()}if(g.start.row=d.getCurrentTokenRow(),g.start.column=d.getCurrentTokenColumn()+2,d=new h(this,a,b),-1!=c){do f=d.stepForward();while(f&&i.test(f.type));f=d.stepBackward()}else f=d.getCurrentToken();return g.end.row=d.getCurrentTokenRow(),g.end.column=d.getCurrentTokenColumn()+f.value.length-2,g}},this.foldAll=function(a,b,c){void 0==c&&(c=1e5);var d=this.foldWidgets;if(d){b=b||this.getLength(),a=a||0;for(var e=a;b>e;e++)if(null==d[e]&&(d[e]=this.getFoldWidget(e)),"start"==d[e]){var f=this.getFoldWidgetRange(e);if(f&&f.isMultiLine()&&f.end.row<=b&&f.start.row>=a){e=f.end.row;try{var g=this.addFold("...",f);g&&(g.collapseChildren=c)}catch(h){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(a){if(!this.$foldStyles[a])throw new Error("invalid fold style: "+a+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=a){this.$foldStyle=a,"manual"==a&&this.unfold();var b=this.$foldMode;this.$setFolding(null),this.$setFolding(b)}},this.$setFolding=function(a){if(this.$foldMode!=a){if(this.$foldMode=a,this.removeListener("change",this.$updateFoldWidgets),this._emit("changeAnnotation"),!a||"manual"==this.$foldStyle)return void(this.foldWidgets=null);this.foldWidgets=[],this.getFoldWidget=a.getFoldWidget.bind(a,this,this.$foldStyle),this.getFoldWidgetRange=a.getFoldWidgetRange.bind(a,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets)}},this.getParentFoldRangeData=function(a,b){var c=this.foldWidgets;if(!c||b&&c[a])return{};for(var d,e=a-1;e>=0;){var f=c[e];if(null==f&&(f=c[e]=this.getFoldWidget(e)),"start"==f){var g=this.getFoldWidgetRange(e);if(d||(d=g),g&&g.end.row>=a)break}e--}return{range:-1!==e&&g,firstRange:d}},this.onFoldWidgetClick=function(a,b){b=b.domEvent;var c={children:b.shiftKey,all:b.ctrlKey||b.metaKey,siblings:b.altKey},d=this.$toggleFoldWidget(a,c);if(!d){var e=b.target||b.srcElement;e&&/ace_fold-widget/.test(e.className)&&(e.className+=" ace_invalid")}},this.$toggleFoldWidget=function(a,b){if(this.getFoldWidget){var c=this.getFoldWidget(a),d=this.getLine(a),e="end"===c?-1:1,f=this.getFoldAt(a,-1===e?0:d.length,e);if(f)return void(b.children||b.all?this.removeFold(f):this.expandFold(f));var g=this.getFoldWidgetRange(a,!0);if(g&&!g.isMultiLine()&&(f=this.getFoldAt(g.start.row,g.start.column,1),f&&g.isEqual(f.range)))return void this.removeFold(f);if(b.siblings){var h=this.getParentFoldRangeData(a);if(h.range)var i=h.range.start.row+1,j=h.range.end.row;this.foldAll(i,j,b.all?1e4:0)}else b.children?(j=g?g.end.row:this.getLength(),this.foldAll(a+1,g.end.row,b.all?1e4:0)):g&&(b.all&&(g.collapseChildren=1e4),this.addFold("...",g));return g}},this.toggleFoldWidget=function(a){var b=this.selection.getCursor().row;b=this.getRowFoldStart(b);var c=this.$toggleFoldWidget(b,{});if(!c){var d=this.getParentFoldRangeData(b,!0);if(c=d.range||d.firstRange){b=c.start.row;var e=this.getFoldAt(b,this.getLine(b).length,1);e?this.removeFold(e):this.addFold("...",c)}}},this.updateFoldWidgets=function(a){var b=a.data,c=b.range,d=c.start.row,e=c.end.row-d;if(0===e)this.foldWidgets[d]=null;else if("removeText"==b.action||"removeLines"==b.action)this.foldWidgets.splice(d,e+1,null);else{var f=Array(e+1);f.unshift(d,1),this.foldWidgets.splice.apply(this.foldWidgets,f)}}}var e=a("../range").Range,f=a("./fold_line").FoldLine,g=a("./fold").Fold,h=a("../token_iterator").TokenIterator;b.Folding=d}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(a,b,c){function d(a,b){this.foldData=a,Array.isArray(b)?this.folds=b:b=this.folds=[b];var c=b[b.length-1];this.range=new e(b[0].start.row,b[0].start.column,c.end.row,c.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(a){a.setFoldLine(this)},this)}var e=a("../range").Range;(function(){this.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(b){b.start.row+=a,b.end.row+=a})},this.addFold=function(a){if(a.sameRow){if(a.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(a,b){return-a.range.compareEnd(b.start.row,b.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else{if(a.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column}a.foldLine=this},this.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},this.walk=function(a,b,c){var d,e,f,g=0,h=this.folds,i=!0;null==b&&(b=this.end.row,c=this.end.column);for(var j=0;ja)return{row:b.start.row,column:b.start.column+a};if(a-=b.placeholder.length,0>a)return b.start;c=b.end.column}return{row:this.end.row,column:this.end.column+a}}}).call(d.prototype),b.FoldLine=d}),define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(a,b,c){function d(a,b){a.row-=b.row,0==a.row&&(a.column-=b.column)}function e(a,b){d(a.start,b),d(a.end,b)}function f(a,b){0==a.row&&(a.column+=b.column),a.row+=b.row}function g(a,b){f(a.start,b),f(a.end,b)}var h=(a("../range").Range,a("../range_list").RangeList),i=a("../lib/oop"),j=b.Fold=function(a,b){this.foldLine=null, -this.placeholder=b,this.range=a,this.start=a.start,this.end=a.end,this.sameRow=a.start.row==a.end.row,this.subFolds=this.ranges=[]};i.inherits(j,h),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(a){this.foldLine=a,this.subFolds.forEach(function(b){b.setFoldLine(a)})},this.clone=function(){var a=this.range.clone(),b=new j(a,this.placeholder);return this.subFolds.forEach(function(a){b.subFolds.push(a.clone())}),b.collapseChildren=this.collapseChildren,b},this.addSubFold=function(a){if(!this.range.isEqual(a)){if(!this.range.containsRange(a))throw new Error("A fold can't intersect already existing fold"+a.range+this.range);e(a,this.start);for(var b=a.start.row,c=a.start.column,d=0,f=-1;d0)){var i=e(a,g.start);return 0===h?b&&0!==i?-f-2:f:i>0||0===i&&!b?f:-f-1}}return-f-1},this.add=function(a){var b=!a.isEmpty(),c=this.pointIndex(a.start,b);0>c&&(c=-c-1);var d=this.pointIndex(a.end,b,c);return 0>d?d=-d-1:d++,this.ranges.splice(c,d-c,a)},this.addList=function(a){for(var b=[],c=a.length;c--;)b.push.call(b,this.add(a[c]));return b},this.substractPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges.splice(b,1):void 0},this.merge=function(){var a=[],b=this.ranges;b=b.sort(function(a,b){return e(a.start,b.start)});for(var c,d=b[0],f=1;fg||(0!=g||c.isEmpty()||d.isEmpty())&&(e(c.end,d.end)<0&&(c.end.row=d.end.row,c.end.column=d.end.column),b.splice(f,1),a.push(d),d=c,f--)}return this.ranges=b,a},this.contains=function(a,b){return this.pointIndex({row:a,column:b})>=0},this.containsPoint=function(a){return this.pointIndex(a)>=0},this.rangeAtPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges[b]:void 0},this.clipRows=function(a,b){var c=this.ranges;if(c[0].start.row>b||c[c.length-1].start.rowd&&(d=-d-1);var e=this.pointIndex({row:b,column:0},d);0>e&&(e=-e-1);for(var f=[],g=d;e>g;g++)f.push(c[g]);return f},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(a){this.session&&this.detach(),this.session=a,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(a){var b=a.data.range;if("i"==a.data.action[0])var c=b.start,d=b.end;else var d=b.start,c=b.end;for(var e=c.row,f=d.row,g=f-e,h=-c.column+d.column,i=this.ranges,j=0,k=i.length;k>j;j++){var l=i[j];if(!(l.end.rowe)break;if(l.start.row==e&&l.start.column>=c.column&&(l.start.column==c.column&&this.$insertRight||(l.start.column+=h,l.start.row+=g)),l.end.row==e&&l.end.column>=c.column){if(l.end.column==c.column&&this.$insertRight)continue;l.end.column==c.column&&h>0&&k-1>j&&l.end.column>l.start.column&&l.end.column==i[j+1].start.column&&(l.end.column-=h),l.end.column+=h,l.end.row+=g}}}if(0!=g&&k>j)for(;k>j;j++){var l=i[j];l.start.row+=g,l.end.row+=g}}}).call(f.prototype),b.RangeList=f}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(a,b,c){function d(){this.findMatchingBracket=function(a,b){if(0==a.column)return null;var c=b||this.getLine(a.row).charAt(a.column-1);if(""==c)return null;var d=c.match(/([\(\[\{])|([\)\]\}])/);return d?d[1]?this.$findClosingBracket(d[1],a):this.$findOpeningBracket(d[2],a):null},this.getBracketRange=function(a){var b,c=this.getLine(a.row),d=!0,e=c.charAt(a.column-1),g=e&&e.match(/([\(\[\{])|([\)\]\}])/);if(g||(e=c.charAt(a.column),a={row:a.row,column:a.column+1},g=e&&e.match(/([\(\[\{])|([\)\]\}])/),d=!1),!g)return null;if(g[1]){var h=this.$findClosingBracket(g[1],a);if(!h)return null;b=f.fromPoints(a,h),d||(b.end.column++,b.start.column--),b.cursor=b.end}else{var h=this.$findOpeningBracket(g[2],a);if(!h)return null;b=f.fromPoints(h,a),d||(b.start.column++,b.end.column--),b.cursor=b.start}return b},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("rparen",".paren")+")+"));for(var i=b.column-g.getCurrentTokenColumn()-2,j=h.value;;){for(;i>=0;){var k=j.charAt(i);if(k==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else k==a&&(f+=1);i-=1}do h=g.stepBackward();while(h&&!c.test(h.type));if(null==h)break;j=h.value,i=j.length-1}return null}},this.$findClosingBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("lparen",".paren")+")+"));for(var i=b.column-g.getCurrentTokenColumn();;){for(var j=h.value,k=j.length;k>i;){var l=j.charAt(i);if(l==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else l==a&&(f+=1);i+=1}do h=g.stepForward();while(h&&!c.test(h.type));if(null==h)break;i=0}return null}}}var e=a("../token_iterator").TokenIterator,f=a("../range").Range;b.BracketMatch=d}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(a,b,c){var d=a("./lib/lang"),e=a("./lib/oop"),f=a("./range").Range,g=function(){this.$options={}};(function(){this.set=function(a){return e.mixin(this.$options,a),this},this.getOptions=function(){return d.copyObject(this.$options)},this.setOptions=function(a){this.$options=a},this.find=function(a){var b=this.$matchIterator(a,this.$options);if(!b)return!1;var c=null;return b.forEach(function(a,b,d){if(a.start)c=a;else{var e=a.offset+(d||0);c=new f(b,e,b,e+a.length)}return!0}),c},this.findAll=function(a){var b=this.$options;if(!b.needle)return[];this.$assembleRegExp(b);var c=b.range,e=c?a.getLines(c.start.row,c.end.row):a.doc.getAllLines(),g=[],h=b.re;if(b.$isMultiLine){var i,j=h.length,k=e.length-j;a:for(var l=h.offset||0;k>=l;l++){for(var m=0;j>m;m++)if(-1==e[l+m].search(h[m]))continue a;var n=e[l],o=e[l+j-1],p=n.length-n.match(h[0])[0].length,q=o.match(h[j-1])[0].length;i&&i.end.row===l&&i.end.column>p||(g.push(i=new f(l,p,l+j-1,q)),j>2&&(l=l+j-2))}}else for(var r=0;rr&&g[r].start.columnr&&g[m].end.column>v&&g[m].end.row==c.end.row;)m--;for(g=g.slice(r,m+1),r=0,m=g.length;m>r;r++)g[r].start.row+=c.start.row,g[r].end.row+=c.start.row}return g},this.replace=function(a,b){var c=this.$options,d=this.$assembleRegExp(c);if(c.$isMultiLine)return b;if(d){var e=d.exec(a);if(!e||e[0].length!=a.length)return null;if(b=a.replace(d,b),c.preserveCase){b=b.split("");for(var f=Math.min(a.length,a.length);f--;){var g=a[f];g&&g.toLowerCase()!=g?b[f]=b[f].toUpperCase():b[f]=b[f].toLowerCase()}b=b.join("")}return b}},this.$matchIterator=function(a,b){var c=this.$assembleRegExp(b);if(!c)return!1;var e,g=this,h=b.backwards;if(b.$isMultiLine)var i=c.length,j=function(b,d,g){var h=b.search(c[0]);if(-1!=h){for(var j=1;i>j;j++)if(b=a.getLine(d+j),-1==b.search(c[j]))return;var k=b.match(c[i-1])[0].length,l=new f(d,h,d+i-1,k);return 1==c.offset?(l.start.row--,l.start.column=Number.MAX_VALUE):g&&(l.start.column+=g),e(l)?!0:void 0}};else if(h)var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=g.length-1;h>=0;h--)if(e(g[h],b,f))return!0};else var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=0;h=g;d--)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=h,g=f.row;d>=g;d--)if(c(a.getLine(d),d))return}}:function(c){var d=f.row,e=a.getLine(d).substr(f.column);if(!c(e,d,f.column)){for(d+=1;h>=d;d++)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=g,h=f.row;h>=d;d++)if(c(a.getLine(d),d))return}};return{forEach:i}}}).call(g.prototype),b.Search=g}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../keyboard/hash_handler").HashHandler,f=a("../lib/event_emitter").EventEmitter,g=function(a,b){e.call(this,b,a),this.byName=this.commands,this.setDefaultHandler("exec",function(a){return a.command.exec(a.editor,a.args||{})})};d.inherits(g,e),function(){d.implement(this,f),this.exec=function(a,b,c){if("string"==typeof a&&(a=this.commands[a]),!a)return!1;if(b&&b.$readOnly&&!a.readOnly)return!1;var d={editor:b,command:a,args:c},e=this._emit("exec",d);return this._signal("afterExec",d),e===!1?!1:!0},this.toggleRecording=function(a){return this.$inReplay?void 0:(a&&a._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(a){this.macro.push([a.command,a.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0))},this.replay=function(a){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(a);try{this.$inReplay=!0,this.macro.forEach(function(b){"string"==typeof b?this.exec(b,a):this.exec(b[0],a,b[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(a){return a.map(function(a){return"string"!=typeof a[0]&&(a[0]=a[0].name),a[1]||(a=a[0]),a})}}.call(g.prototype),b.CommandManager=g}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(a,b,c){function d(a,b){if(this.platform=b||(f.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.__defineGetter__&&this.__defineSetter__&&"undefined"!=typeof console&&console.error){var c=!1,d=function(){c||(c=!0,console.error("commmandKeyBinding has too many m's. use commandKeyBinding"))};this.__defineGetter__("commmandKeyBinding",function(){return d(),this.commandKeyBinding}),this.__defineSetter__("commmandKeyBinding",function(a){return d(),this.commandKeyBinding=a})}else this.commmandKeyBinding=this.commandKeyBinding;this.addCommands(a)}var e=a("../lib/keys"),f=a("../lib/useragent");(function(){this.addCommand=function(a){this.commands[a.name]&&this.removeCommand(a),this.commands[a.name]=a,a.bindKey&&this._buildKeyHash(a)},this.removeCommand=function(a){var b="string"==typeof a?a:a.name;a=this.commands[b],delete this.commands[b];var c=this.commandKeyBinding;for(var d in c)for(var e in c[d])c[d][e]==a&&delete c[d][e]},this.bindKey=function(a,b){if(a){if("function"==typeof b)return void this.addCommand({exec:b,bindKey:a,name:b.name||a});var c=this.commandKeyBinding;a.split("|").forEach(function(a){var d=this.parseKeys(a,b),e=d.hashId;(c[e]||(c[e]={}))[d.key]=b},this)}},this.addCommands=function(a){a&&Object.keys(a).forEach(function(b){var c=a[b];if(c){if("string"==typeof c)return this.bindKey(c,b);"function"==typeof c&&(c={exec:c}),"object"==typeof c&&(c.name||(c.name=b),this.addCommand(c))}},this)},this.removeCommands=function(a){Object.keys(a).forEach(function(b){this.removeCommand(a[b])},this)},this.bindKeys=function(a){Object.keys(a).forEach(function(b){this.bindKey(b,a[b])},this)},this._buildKeyHash=function(a){var b=a.bindKey;if(b){var c="string"==typeof b?b:b[this.platform];this.bindKey(c,a)}},this.parseKeys=function(a){-1!=a.indexOf(" ")&&(a=a.split(/\s+/).pop());var b=a.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(a){return a}),c=b.pop(),d=e[c];if(e.FUNCTION_KEYS[d])c=e.FUNCTION_KEYS[d].toLowerCase();else{if(!b.length)return{key:c,hashId:-1};if(1==b.length&&"shift"==b[0])return{key:c.toUpperCase(),hashId:-1}}for(var f=0,g=b.length;g--;){var h=e.KEY_MODS[b[g]];if(null==h)return"undefined"!=typeof console&&console.error("invalid modifier "+b[g]+" in "+a),!1;f|=h}return{key:c,hashId:f}},this.findKeyCommand=function(a,b){var c=this.commandKeyBinding;return c[a]&&c[a][b]},this.handleKeyboard=function(a,b,c,d){return{command:this.findKeyCommand(b,c)}}}).call(d.prototype),b.HashHandler=d}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config"],function(a,b,c){function d(a,b){return{win:a,mac:b}}var e=a("../lib/lang"),f=a("../config");b.commands=[{name:"showSettingsMenu",bindKey:d("Ctrl-,","Command-,"),exec:function(a){f.loadModule("ace/ext/settings_menu",function(b){b.init(a),a.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:d("Alt-E","Ctrl-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:d("Alt-Shift-E","Ctrl-Shift-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:d("Ctrl-A","Command-A"),exec:function(a){a.selectAll()},readOnly:!0},{name:"centerselection",bindKey:d(null,"Ctrl-L"),exec:function(a){a.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:d("Ctrl-L","Command-L"),exec:function(a){var b=parseInt(prompt("Enter line number:"),10);isNaN(b)||a.gotoLine(b)},readOnly:!0},{name:"fold",bindKey:d("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(a){a.session.toggleFold(!1)},scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:d("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(a){a.session.toggleFold(!0)},scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:d("F2","F2"),exec:function(a){a.session.toggleFoldWidget()},scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:d("Alt-F2","Alt-F2"),exec:function(a){a.session.toggleFoldWidget(!0)},scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:d("Ctrl-Alt-0","Ctrl-Command-Option-0"),exec:function(a){a.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:d("Alt-0","Command-Option-0"),exec:function(a){a.session.foldAll(),a.session.unfold(a.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:d("Alt-Shift-0","Command-Option-Shift-0"),exec:function(a){a.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:d("Ctrl-K","Command-G"),exec:function(a){a.findNext()},readOnly:!0},{name:"findprevious",bindKey:d("Ctrl-Shift-K","Command-Shift-G"),exec:function(a){a.findPrevious()},readOnly:!0},{name:"selectOrFindNext",bindKey:d("ALt-K","Ctrl-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:d("Alt-Shift-K","Ctrl-Shift-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findPrevious()},readOnly:!0},{name:"find",bindKey:d("Ctrl-F","Command-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(a){a.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:d("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(a){a.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:d("Ctrl-Home","Command-Home|Command-Up"),exec:function(a){a.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:d("Shift-Up","Shift-Up"),exec:function(a){a.getSelection().selectUp()},multiSelectAction:"forEach",readOnly:!0},{name:"golineup",bindKey:d("Up","Up|Ctrl-P"),exec:function(a,b){a.navigateUp(b.times)},multiSelectAction:"forEach",readOnly:!0},{name:"selecttoend",bindKey:d("Ctrl-Shift-End","Command-Shift-Down"),exec:function(a){a.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:d("Ctrl-End","Command-End|Command-Down"),exec:function(a){a.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:d("Shift-Down","Shift-Down"),exec:function(a){a.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:d("Down","Down|Ctrl-N"),exec:function(a,b){a.navigateDown(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:d("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(a){a.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:d("Ctrl-Left","Option-Left"),exec:function(a){a.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:d("Alt-Shift-Left","Command-Shift-Left"),exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:d("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(a){a.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:d("Shift-Left","Shift-Left"),exec:function(a){a.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:d("Left","Left|Ctrl-B"),exec:function(a,b){a.navigateLeft(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:d("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(a){a.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:d("Ctrl-Right","Option-Right"),exec:function(a){a.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:d("Alt-Shift-Right","Command-Shift-Right"),exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:d("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(a){a.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:d("Shift-Right","Shift-Right"),exec:function(a){a.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:d("Right","Right|Ctrl-F"),exec:function(a,b){a.navigateRight(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(a){a.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:d(null,"Option-PageDown"),exec:function(a){a.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:d("PageDown","PageDown|Ctrl-V"),exec:function(a){a.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(a){a.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:d(null,"Option-PageUp"),exec:function(a){a.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(a){a.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:d("Ctrl-Up",null),exec:function(a){a.renderer.scrollBy(0,-2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:d("Ctrl-Down",null),exec:function(a){a.renderer.scrollBy(0,2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:d("Ctrl-Alt-E","Command-Option-E"),exec:function(a){a.commands.toggleRecording(a)},readOnly:!0},{name:"replaymacro",bindKey:d("Ctrl-Shift-E","Command-Shift-E"),exec:function(a){a.commands.replay(a)},readOnly:!0},{name:"jumptomatching",bindKey:d("Ctrl-P","Ctrl-Shift-P"),exec:function(a){a.jumpToMatching()},multiSelectAction:"forEach",readOnly:!0},{name:"selecttomatching",bindKey:d("Ctrl-Shift-P",null),exec:function(a){a.jumpToMatching(!0)},multiSelectAction:"forEach",readOnly:!0},{name:"cut",exec:function(a){var b=a.getSelectionRange();a._emit("cut",b),a.selection.isEmpty()||(a.session.remove(b),a.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"removeline",bindKey:d("Ctrl-D","Command-D"),exec:function(a){a.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:d("Ctrl-Shift-D","Command-Shift-D"),exec:function(a){a.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:d("Ctrl-Alt-S","Command-Alt-S"),exec:function(a){a.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:d("Ctrl-/","Command-/"),exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:d("Ctrl-Shift-/","Command-Shift-/"),exec:function(a){a.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:d("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(a){a.modifyNumber(1)},multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:d("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(a){a.modifyNumber(-1)},multiSelectAction:"forEach"},{name:"replace",bindKey:d("Ctrl-H","Command-Option-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a,!0)})}},{name:"undo",bindKey:d("Ctrl-Z","Command-Z"),exec:function(a){a.undo()}},{name:"redo",bindKey:d("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(a){a.redo()}},{name:"copylinesup",bindKey:d("Alt-Shift-Up","Command-Option-Up"),exec:function(a){a.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:d("Alt-Up","Option-Up"),exec:function(a){a.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:d("Alt-Shift-Down","Command-Option-Down"),exec:function(a){a.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:d("Alt-Down","Option-Down"),exec:function(a){a.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:d("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(a){a.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:d("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(a){a.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:d("Shift-Delete",null),exec:function(a){return a.selection.isEmpty()?void a.remove("left"):!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:d("Alt-Backspace","Command-Backspace"),exec:function(a){a.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:d("Alt-Delete","Ctrl-K"),exec:function(a){a.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:d("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(a){a.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:d("Ctrl-Delete","Alt-Delete"),exec:function(a){a.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:d("Shift-Tab","Shift-Tab"),exec:function(a){a.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:d("Tab","Tab"),exec:function(a){a.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:d("Ctrl-[","Ctrl-["),exec:function(a){a.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:d("Ctrl-]","Ctrl-]"),exec:function(a){a.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(a,b){a.insert(b)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(a,b){a.insert(e.stringRepeat(b.text||"",b.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:d(null,"Ctrl-O"),exec:function(a){a.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:d("Ctrl-T","Ctrl-T"),exec:function(a){a.transposeLetters()},multiSelectAction:function(a){a.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:d("Ctrl-U","Ctrl-U"),exec:function(a){a.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:d("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(a){a.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"}]}),define("ace/undomanager",["require","exports","module"],function(a,b,c){var d=function(){this.reset()};(function(){this.execute=function(a){var b=a.args[0];this.$doc=a.args[1],a.merge&&this.hasUndo()&&(this.dirtyCounter--,b=this.$undoStack.pop().concat(b)),this.$undoStack.push(b),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(a){var b=this.$undoStack.pop(),c=null;return b&&(c=this.$doc.undoChanges(b,a),this.$redoStack.push(b),this.dirtyCounter--),c},this.redo=function(a){var b=this.$redoStack.pop(),c=null;return b&&(c=this.$doc.redoChanges(b,a),this.$undoStack.push(b),this.dirtyCounter++),c},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter}}).call(d.prototype),b.UndoManager=d}),define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./config"),g=a("./lib/useragent"),h=a("./layer/gutter").Gutter,i=a("./layer/marker").Marker,j=a("./layer/text").Text,k=a("./layer/cursor").Cursor,l=a("./scrollbar").HScrollBar,m=a("./scrollbar").VScrollBar,n=a("./renderloop").RenderLoop,o=a("./layer/font_metrics").FontMetrics,p=a("./lib/event_emitter").EventEmitter,q='.ace_editor {position: relative;overflow: hidden;font-family: \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;font-size: 12px;line-height: normal;direction: ltr;}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_content {position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: text;min-width: 100%;}.ace_dragging, .ace_dragging * {cursor: move !important;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;text-indent: -1em;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;}.ace_text-input.ace_composition {background: #f8f8f8;color: #111;z-index: 1000;opacity: 1;text-indent: 0;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;white-space: pre;height: 100%;width: 100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;/* setting pointer-events: auto; on node under the mouse, which changesduring scroll, will break mouse wheel scrolling in Safari */pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;}.ace_text-layer {font: inherit !important;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;border-left: 2px solid}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0px;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_smooth-blinking .ace_cursor {-moz-transition: opacity 0.18s;-webkit-transition: opacity 0.18s;-o-transition: opacity 0.18s;-ms-transition: opacity 0.18s;transition: opacity 0.18s;}.ace_editor.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}.ace_line .ace_fold {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;-moz-border-radius: 2px;-webkit-border-radius: 2px;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;display: block;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}/*** Dark version for fold widgets*/.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {-moz-transition: opacity 0.4s ease 0.05s;-webkit-transition: opacity 0.4s ease 0.05s;-o-transition: opacity 0.4s ease 0.05s;-ms-transition: opacity 0.4s ease 0.05s;transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {-moz-transition: opacity 0.05s ease 0.05s;-webkit-transition: opacity 0.05s ease 0.05s;-o-transition: opacity 0.05s ease 0.05s;-ms-transition: opacity 0.05s ease 0.05s;transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}'; -e.importCssString(q,"ace_editor");var r=function(a,b){var c=this;this.container=a||e.createElement("div"),this.$keepTextAreaAtCursor=!g.isOldIE,e.addCssClass(this.container,"ace_editor"),this.setTheme(b),this.$gutter=e.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=e.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=e.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new h(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new i(this.content);var d=this.$textLayer=new j(this.content);this.canvas=d.element,this.$markerFront=new i(this.content),this.$cursorLayer=new k(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new m(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollTop(a.data-c.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollLeft(a.data-c.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new o(this.container,500),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(a){c.updateCharacterSize(),c.onResize(!0,c.gutterWidth,c.$size.width,c.$size.height),c._signal("changeCharacterSize",a)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new n(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),f.resetOptions(this),f._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,d.implement(this,p),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(a){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=a,a&&(this.scrollMargin.top&&a.getScrollTop()<=0&&a.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(a),this.$markerBack.setSession(a),this.$markerFront.setSession(a),this.$gutterLayer.setSession(a),this.$textLayer.setSession(a),this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(a,b){void 0===b&&(b=1/0),this.$changedLines?(this.$changedLines.firstRow>a&&(this.$changedLines.firstRow=a),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$changedLines.lastRow2)){this.resizing>0?this.resizing++:this.resizing=a?1:0;var e=this.container;d||(d=e.clientHeight||e.scrollHeight),c||(c=e.clientWidth||e.scrollWidth);var f=this.$updateCachedSize(a,b,c,d);if(!this.$size.scrollerHeight||!c&&!d)return this.resizing=0;a&&(this.$gutterLayer.$padding=null),a?this.$renderChanges(f|this.$changes,!0):this.$loop.schedule(f|this.$changes),this.resizing&&(this.resizing=0)}},this.$updateCachedSize=function(a,b,c,d){d-=this.$extraHeight||0;var e=0,f=this.$size,g={width:f.width,height:f.height,scrollerHeight:f.scrollerHeight,scrollerWidth:f.scrollerWidth};return d&&(a||f.height!=d)&&(f.height=d,e|=this.CHANGE_SIZE,f.scrollerHeight=f.height,this.$horizScroll&&(f.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",e|=this.CHANGE_SCROLL),c&&(a||f.width!=c)&&(e|=this.CHANGE_SIZE,f.width=c,null==b&&(b=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=b,this.scrollBarH.element.style.left=this.scroller.style.left=b+"px",f.scrollerWidth=Math.max(0,c-b-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||a)&&(e|=this.CHANGE_FULL)),f.$dirty=!c||!d,e&&this._signal("resize",g),e},this.onGutterResize=function(){var a=this.$showGutter?this.$gutter.offsetWidth:0;a!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,a,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var a=this.$size.scrollerWidth-2*this.$padding,b=Math.floor(a/this.characterWidth);return this.session.adjustWrapLimit(b,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(a){this.setOption("animatedScroll",a)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(a){this.setOption("showInvisibles",a)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(a){this.setOption("displayIndentGuides",a)},this.setShowPrintMargin=function(a){this.setOption("showPrintMargin",a)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(a){this.setOption("printMarginColumn",a)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(a){return this.setOption("showGutter",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var a=this.$cursorLayer.$pixelPos,b=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var c=this.session.selection.getCursor();c.column=0,a=this.$cursorLayer.getPixelPosition(c,!0),b*=this.session.getRowLength(c.row)}this.$gutterLineHighlight.style.top=a.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=b+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var a=e.createElement("div");a.className="ace_layer ace_print-margin-layer",this.$printMarginEl=e.createElement("div"),this.$printMarginEl.className="ace_print-margin",a.appendChild(this.$printMarginEl),this.content.insertBefore(a,this.content.firstChild)}var b=this.$printMarginEl.style;b.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",b.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.content},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var a=this.layerConfig,b=this.$cursorLayer.$pixelPos.top,c=this.$cursorLayer.$pixelPos.left;b-=a.offset;var d=this.lineHeight;if(!(0>b||b>a.height-d)){var e=this.characterWidth;if(this.$composition){var f=this.textarea.value.replace(/^\x01+/,"");e*=this.session.$getStringScreenWidth(f)[0]+2,d+=2,b-=1}c-=this.scrollLeft,c>this.$size.scrollerWidth-e&&(c=this.$size.scrollerWidth-e),c-=this.scrollBar.width,this.textarea.style.height=d+"px",this.textarea.style.width=e+"px",this.textarea.style.right=Math.max(0,this.$size.scrollerWidth-c-e)+"px",this.textarea.style.bottom=Math.max(0,this.$size.height-b-d)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var a=Math.floor((this.layerConfig.height+this.layerConfig.offset)/this.layerConfig.lineHeight);return this.layerConfig.firstRow-1+a},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(a){this.$padding=a,this.$textLayer.setPadding(a),this.$cursorLayer.setPadding(a),this.$markerFront.setPadding(a),this.$markerBack.setPadding(a),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(a,b,c,d){var e=this.scrollMargin;e.top=0|a,e.bottom=0|b,e.right=0|d,e.left=0|c,e.v=e.top+e.bottom,e.h=e.left+e.right,e.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-e.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(a){this.setOption("hScrollBarAlwaysVisible",a)},this.getVScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(a){this.setOption("vScrollBarAlwaysVisible",a)},this.$updateScrollBarV=function(){this.scrollBarV.setScrollHeight(this.layerConfig.maxHeight+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(a,b){if(this.$changes&&(a|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!a&&!b)return void(this.$changes|=a);if(this.$size.$dirty)return this.$changes|=a,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var c=this.layerConfig;return(a&this.CHANGE_FULL||a&this.CHANGE_SIZE||a&this.CHANGE_TEXT||a&this.CHANGE_LINES||a&this.CHANGE_SCROLL||a&this.CHANGE_H_SCROLL)&&(a|=this.$computeLayerConfig(),c=this.layerConfig,this.$updateScrollBarV(),a&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-c.offset+"px",this.content.style.marginTop=-c.offset+"px",this.content.style.width=c.width+2*this.$padding+"px",this.content.style.height=c.minHeight+"px"),a&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),a&this.CHANGE_FULL?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender")):a&this.CHANGE_SCROLL?(a&this.CHANGE_TEXT||a&this.CHANGE_LINES?this.$textLayer.update(c):this.$textLayer.scrollLines(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender")):(a&this.CHANGE_TEXT?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c)):a&this.CHANGE_LINES?(this.$updateLines()||a&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(c):(a&this.CHANGE_TEXT||a&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(c),a&this.CHANGE_CURSOR&&(this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(c),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(c),void this._signal("afterRender"))},this.$autosize=function(){var a=this.session.getScreenLength()*this.lineHeight,b=this.$maxLines*this.lineHeight,c=Math.max((this.$minLines||1)*this.lineHeight,Math.min(b,a))+this.scrollMargin.v+(this.$extraHeight||0),d=a>b;if(c!=this.desiredHeight||this.$size.height!=this.desiredHeight||d!=this.$vScroll){d!=this.$vScroll&&(this.$vScroll=d,this.scrollBarV.setVisible(d));var e=this.container.clientWidth;this.container.style.height=c+"px",this.$updateCachedSize(!0,this.$gutterWidth,e,c),this.desiredHeight=c}},this.$computeLayerConfig=function(){this.$maxLines&&this.lineHeight>1&&this.$autosize();var a=this.session,b=this.$size,c=b.height<=2*this.lineHeight,d=this.session.getScreenLength(),e=d*this.lineHeight,f=this.scrollTop%this.lineHeight,g=b.scrollerHeight+this.lineHeight,h=this.$getLongestLine(),i=!c&&(this.$hScrollBarAlwaysVisible||b.scrollerWidth-h-2*this.$padding<0),j=this.$horizScroll!==i;j&&(this.$horizScroll=i,this.scrollBarH.setVisible(i)),!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>e-b.scrollerHeight&&(e+=Math.min((b.scrollerHeight-this.lineHeight)*this.$scrollPastEnd,this.scrollTop-e+b.scrollerHeight));var k=!c&&(this.$vScrollBarAlwaysVisible||b.scrollerHeight-e<0),l=this.$vScroll!==k;l&&(this.$vScroll=k,this.scrollBarV.setVisible(k)),this.session.setScrollTop(Math.max(-this.scrollMargin.top,Math.min(this.scrollTop,e-b.scrollerHeight+this.scrollMargin.bottom))),this.session.setScrollLeft(Math.max(-this.scrollMargin.left,Math.min(this.scrollLeft,h+2*this.$padding-b.scrollerWidth+this.scrollMargin.right)));var m,n,o=Math.ceil(g/this.lineHeight)-1,p=Math.max(0,Math.round((this.scrollTop-f)/this.lineHeight)),q=p+o,r=this.lineHeight;p=a.screenToDocumentRow(p,0);var s=a.getFoldLine(p);s&&(p=s.start.row),m=a.documentToScreenRow(p,0),n=a.getRowLength(p)*r,q=Math.min(a.screenToDocumentRow(q,0),a.getLength()-1),g=b.scrollerHeight+a.getRowLength(q)*r+n,f=this.scrollTop-m*r;var t=0;return this.layerConfig.width!=h&&(t=this.CHANGE_H_SCROLL),(j||l)&&(t=this.$updateCachedSize(!0,this.gutterWidth,b.width,b.height),this._signal("scrollbarVisibilityChanged"),l&&(h=this.$getLongestLine())),this.layerConfig={width:h,padding:this.$padding,firstRow:p,firstRowScreen:m,lastRow:q,lineHeight:r,characterWidth:this.characterWidth,minHeight:g,maxHeight:e,offset:f,gutterOffset:Math.max(0,Math.ceil((f+b.height-b.scrollerHeight)/r)),height:this.$size.scrollerHeight},t},this.$updateLines=function(){var a=this.$changedLines.firstRow,b=this.$changedLines.lastRow;this.$changedLines=null;var c=this.layerConfig;return a>c.lastRow+1||bf?(b&&(f-=b*this.$size.scrollerHeight),0===f&&(f=-this.scrollMargin.top),this.session.setScrollTop(f)):i+this.$size.scrollerHeight-he?(ec;++c)e.push(f(c/this.STEPS,a,b-a));return e},this.scrollToLine=function(a,b,c,d){var e=this.$cursorLayer.getPixelPosition({row:a,column:0}),f=e.top;b&&(f-=this.$size.scrollerHeight/2);var g=this.scrollTop;this.session.setScrollTop(f),c!==!1&&this.animateScrolling(g,d)},this.animateScrolling=function(a,b){var c=this.scrollTop;if(this.$animatedScroll){var d=this;if(a!=c){if(this.$scrollAnimation){var e=this.$scrollAnimation.steps;if(e.length&&(a=e[0],a==c))return}var f=d.$calcSteps(a,c);this.$scrollAnimation={from:a,to:c,steps:f},clearInterval(this.$timer),d.session.setScrollTop(f.shift()),d.session.$scrollTop=c,this.$timer=setInterval(function(){f.length?(d.session.setScrollTop(f.shift()),d.session.$scrollTop=c):null!=c?(d.session.$scrollTop=-1,d.session.setScrollTop(c),c=null):(d.$timer=clearInterval(d.$timer),d.$scrollAnimation=null,b&&b())},10)}}},this.scrollToY=function(a){this.scrollTop!==a&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=a)},this.scrollToX=function(a){this.scrollLeft!==a&&(this.scrollLeft=a),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(a,b){this.session.setScrollTop(b),this.session.setScrollLeft(b)},this.scrollBy=function(a,b){b&&this.session.setScrollTop(this.session.getScrollTop()+b),a&&this.session.setScrollLeft(this.session.getScrollLeft()+a)},this.isScrollableBy=function(a,b){return 0>b&&this.session.getScrollTop()>=1-this.scrollMargin.top?!0:b>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight-(this.$size.scrollerHeight-this.lineHeight)*this.$scrollPastEnd<-1+this.scrollMargin.bottom?!0:0>a&&this.session.getScrollLeft()>=1-this.scrollMargin.left?!0:a>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right?!0:void 0},this.pixelToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=(a+this.scrollLeft-c.left-this.$padding)/this.characterWidth,e=Math.floor((b+this.scrollTop-c.top)/this.lineHeight),f=Math.round(d);return{row:e,column:f,side:d-f>0?1:-1}},this.screenToTextCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=Math.round((a+this.scrollLeft-c.left-this.$padding)/this.characterWidth),e=(b+this.scrollTop-c.top)/this.lineHeight;return this.session.screenToDocumentPosition(e,Math.max(d,0))},this.textToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=this.session.documentToScreenPosition(a,b),e=this.$padding+Math.round(d.column*this.characterWidth),f=d.row*this.lineHeight;return{pageX:c.left+e-this.scrollLeft,pageY:c.top+f-this.scrollTop}},this.visualizeFocus=function(){e.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){e.removeCssClass(this.container,"ace_focus")},this.showComposition=function(a){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,e.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(a){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(e.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(a,b){function c(c){if(d.$themeId!=a)return b&&b();if(c.cssClass){e.importCssString(c.cssText,c.cssClass,d.container.ownerDocument),d.theme&&e.removeCssClass(d.container,d.theme.cssClass);var f="padding"in c?c.padding:"padding"in(d.theme||{})?4:d.$padding;d.$padding&&f!=d.$padding&&d.setPadding(f),d.$theme=c.cssClass,d.theme=c,e.addCssClass(d.container,c.cssClass),e.setCssClass(d.container,"ace_dark",c.isDark),d.$size&&(d.$size.width=0,d.$updateSizeAsync()),d._dispatchEvent("themeLoaded",{theme:c}),b&&b()}}var d=this;if(this.$themeId=a,d._dispatchEvent("themeChange",{theme:a}),a&&"string"!=typeof a)c(a);else{var g=a||this.$options.theme.initialValue;f.loadModule(["theme",g],c)}},this.getTheme=function(){return this.$themeId},this.setStyle=function(a,b){e.setCssClass(this.container,a,b!==!1)},this.unsetStyle=function(a){e.removeCssClass(this.container,a)},this.setCursorStyle=function(a){this.content.style.cursor!=a&&(this.content.style.cursor=a)},this.setMouseCursor=function(a){this.content.style.cursor=a},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(r.prototype),f.defineOptions(r.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(a){this.$textLayer.setShowInvisibles(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(a){"number"==typeof a&&(this.$printMarginColumn=a),this.$showPrintMargin=!!a,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(a){this.$gutter.style.display=a?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(a){e.setCssClass(this.$gutter,"ace_fade-fold-widgets",a)},initialValue:!1},showFoldWidgets:{set:function(a){this.$gutterLayer.setShowFoldWidgets(a)},initialValue:!0},showLineNumbers:{set:function(a){this.$gutterLayer.setShowLineNumbers(a),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(a){this.$textLayer.setDisplayIndentGuides(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(a){return this.$gutterLineHighlight?(this.$gutterLineHighlight.style.display=a?"":"none",void(this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight())):(this.$gutterLineHighlight=e.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight))},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(a){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(a){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(a){"number"==typeof a&&(a+="px"),this.container.style.fontSize=a,this.updateFontSize()},initialValue:12},fontFamily:{set:function(a){this.container.style.fontFamily=a,this.updateFontSize()}},maxLines:{set:function(a){this.updateFull()}},minLines:{set:function(a){this.updateFull()}},scrollPastEnd:{set:function(a){a=+a||0,this.$scrollPastEnd!=a&&(this.$scrollPastEnd=a,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(a){this.$gutterLayer.$fixedWidth=!!a,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(a){this.setTheme(a)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),b.VirtualRenderer=r}),define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/dom"),e=a("../lib/oop"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=function(a){this.element=d.createElement("div"),this.element.className="ace_layer ace_gutter-layer",a.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){e.implement(this,g),this.setSession=function(a){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=a,a.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(a,b)},this.removeGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(a,b)},this.setAnnotations=function(a){this.$annotations=[];for(var b=0;bg&&(p=f.end.row+1,f=b.getNextFoldLine(p,f),g=f?f.start.row:1/0),p>e){for(;this.$cells.length>o+1;)n=this.$cells.pop(),this.element.removeChild(n.element);break}n=this.$cells[++o],n||(n={element:null,textNode:null,foldWidget:null},n.element=d.createElement("div"),n.textNode=document.createTextNode(""),n.element.appendChild(n.textNode),this.element.appendChild(n.element),this.$cells[o]=n);var q="ace_gutter-cell ";i[p]&&(q+=i[p]),j[p]&&(q+=j[p]),this.$annotations[p]&&(q+=this.$annotations[p].className),n.element.className!=q&&(n.element.className=q);var r=b.getRowLength(p)*a.lineHeight+"px";if(r!=n.element.style.height&&(n.element.style.height=r),h){var s=h[p];null==s&&(s=h[p]=b.getFoldWidget(p))}if(s){n.foldWidget||(n.foldWidget=d.createElement("span"),n.element.appendChild(n.foldWidget));var q="ace_fold-widget ace_"+s;q+="start"==s&&p==g&&pc.right-b.right?"foldWidgets":void 0}}).call(h.prototype),b.Gutter=h}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(a,b,c){var d=a("../range").Range,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_marker-layer",a.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setMarkers=function(a){this.markers=a},this.update=function(a){var a=a||this.config;if(a){this.config=a;var b=[];for(var c in this.markers){var d=this.markers[c];if(d.range){var f=d.range.clipRows(a.firstRow,a.lastRow);if(!f.isEmpty())if(f=f.toScreenRange(this.session),d.renderer){var g=this.$getTop(f.start.row,a),h=this.$padding+f.start.column*a.characterWidth;d.renderer(b,f,h,g,a)}else"fullLine"==d.type?this.drawFullLineMarker(b,f,d.clazz,a):"screenLine"==d.type?this.drawScreenLineMarker(b,f,d.clazz,a):f.isMultiLine()?"text"==d.type?this.drawTextMarker(b,f,d.clazz,a):this.drawMultiLineMarker(b,f,d.clazz,a):this.drawSingleLineMarker(b,f,d.clazz+" ace_start",a)}else d.update(b,this,this.session,a)}this.element=e.setInnerHtml(this.element,b.join(""))}},this.$getTop=function(a,b){return(a-b.firstRowScreen)*b.lineHeight},this.drawTextMarker=function(a,b,c,e,f){var g=b.start.row,h=new d(g,b.start.column,g,this.session.getScreenLastRowColumn(g));for(this.drawSingleLineMarker(a,h,c+" ace_start",e,1,f), -g=b.end.row,h=new d(g,0,g,b.end.column),this.drawSingleLineMarker(a,h,c,e,0,f),g=b.start.row+1;g
"),h=this.$getTop(b.end.row,d);var j=b.end.column*d.characterWidth;a.push("
"),g=(b.end.row-b.start.row-1)*d.lineHeight,0>g||(h=this.$getTop(b.start.row+1,d),a.push("
"))},this.drawSingleLineMarker=function(a,b,c,d,e,f){var g=d.lineHeight,h=(b.end.column+(e||0)-b.start.column)*d.characterWidth,i=this.$getTop(b.start.row,d),j=this.$padding+b.start.column*d.characterWidth;a.push("
")},this.drawFullLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;b.start.row!=b.end.row&&(g+=this.$getTop(b.end.row,d)-f),a.push("
")},this.drawScreenLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;a.push("
")}}).call(f.prototype),b.Marker=f}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=(a("../lib/useragent"),a("../lib/event_emitter").EventEmitter),h=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_text-layer",a.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){d.implement(this,g),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var a="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;return this.EOL_CHAR!=a?(this.EOL_CHAR=a,!0):void 0},this.setPadding=function(a){this.$padding=a,this.element.style.padding="0 "+a+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(a){this.$fontMetrics=a,this.$fontMetrics.on("changeCharacterSize",function(a){this._signal("changeCharacterSize",a)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(a){this.session=a,this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(a){return this.showInvisibles==a?!1:(this.showInvisibles=a,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(a){return this.displayIndentGuides==a?!1:(this.displayIndentGuides=a,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var a=this.session.getTabSize();this.tabSize=a;for(var b=this.$tabStrings=[0],c=1;a+1>c;c++)this.showInvisibles?b.push(""+this.TAB_CHAR+f.stringRepeat(" ",c-1)+""):b.push(f.stringRepeat(" ",c));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var d="ace_indent-guide",e="",g="";if(this.showInvisibles){d+=" ace_invisible",e=" ace_invisible_space",g=" ace_invisible_tab";var h=f.stringRepeat(this.SPACE_CHAR,this.tabSize),i=this.TAB_CHAR+f.stringRepeat(" ",this.tabSize-1)}else var h=f.stringRepeat(" ",this.tabSize),i=h;this.$tabStrings[" "]=""+h+"",this.$tabStrings[" "]=""+i+""}},this.updateLines=function(a,b,c){(this.config.lastRow!=a.lastRow||this.config.firstRow!=a.firstRow)&&this.scrollLines(a),this.config=a;for(var d=Math.max(b,a.firstRow),f=Math.min(c,a.lastRow),g=this.element.childNodes,h=0,i=a.firstRow;d>i;i++){var j=this.session.getFoldLine(i);if(j){if(j.containsRow(d)){d=j.start.row;break}i=j.end.row}h++}for(var i=d,j=this.session.getNextFoldLine(i),k=j?j.start.row:1/0;;){if(i>k&&(i=j.end.row+1,j=this.session.getNextFoldLine(i,j),k=j?j.start.row:1/0),i>f)break;var l=g[h++];if(l){var m=[];this.$renderLine(m,i,!this.$useLineGroups(),i==k?j:!1),l.style.height=a.lineHeight*this.session.getRowLength(i)+"px",e.setInnerHtml(l,m.join(""))}i++}},this.scrollLines=function(a){var b=this.config;if(this.config=a,!b||b.lastRow0;d--)c.removeChild(c.firstChild);if(b.lastRow>a.lastRow)for(var d=this.session.getFoldedRowCount(a.lastRow+1,b.lastRow);d>0;d--)c.removeChild(c.lastChild);if(a.firstRowb.lastRow){var e=this.$renderLinesFragment(a,b.lastRow+1,a.lastRow);c.appendChild(e)}},this.$renderLinesFragment=function(a,b,c){for(var d=this.element.ownerDocument.createDocumentFragment(),f=b,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>c)break;var i=e.createElement("div"),j=[];if(this.$renderLine(j,f,!1,f==h?g:!1),i.innerHTML=j.join(""),this.$useLineGroups())i.className="ace_line_group",d.appendChild(i),i.style.height=a.lineHeight*this.session.getRowLength(f)+"px";else for(;i.firstChild;)d.appendChild(i.firstChild);f++}return d},this.update=function(a){this.config=a;for(var b=[],c=a.firstRow,d=a.lastRow,f=c,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>d)break;this.$useLineGroups()&&b.push("
"),this.$renderLine(b,f,!1,f==h?g:!1),this.$useLineGroups()&&b.push("
"),f++}this.element=e.setInnerHtml(this.element,b.join(""))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(a,b,c,d){var e=this,g=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,h=function(a,c,d,g,h){if(c)return e.showInvisibles?""+f.stringRepeat(e.SPACE_CHAR,a.length)+"":f.stringRepeat(" ",a.length);if("&"==a)return"&";if("<"==a)return"<";if(" "==a){var i=e.session.getScreenTabSize(b+g);return b+=i-1,e.$tabStrings[i]}if(" "==a){var j=e.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",k=e.showInvisibles?e.SPACE_CHAR:"";return b+=1,""+k+""}return d?""+e.SPACE_CHAR+"":(b+=1,""+a+"")},i=d.replace(g,h);if(this.$textToken[c.type])a.push(i);else{var j="ace_"+c.type.replace(/\./g," ace_"),k="";"fold"==c.type&&(k=" style='width:"+c.value.length*this.config.characterWidth+"px;' "),a.push("",i,"")}return b+d.length},this.renderIndentGuide=function(a,b,c){var d=b.search(this.$indentGuideRe);return 0>=d||d>=c?b:" "==b[0]?(d-=d%this.tabSize,a.push(f.stringRepeat(this.$tabStrings[" "],d/this.tabSize)),b.substr(d)):" "==b[0]?(a.push(f.stringRepeat(this.$tabStrings[" "],d)),b.substr(d)):b},this.$renderWrappedLine=function(a,b,c,d){for(var e=0,f=0,g=c[0],h=0,i=0;i=g;)h=this.$renderToken(a,h,j,k.substring(0,g-e)),k=k.substring(g-e),e=g,d||a.push("

","
"),f++,h=0,g=c[f]||Number.MAX_VALUE;0!=k.length&&(e+=k.length,h=this.$renderToken(a,h,j,k))}}},this.$renderSimpleLine=function(a,b){var c=0,d=b[0],e=d.value;this.displayIndentGuides&&(e=this.renderIndentGuide(a,e)),e&&(c=this.$renderToken(a,c,d,e));for(var f=1;f"),e.length){var f=this.session.getRowSplitData(b);f&&f.length?this.$renderWrappedLine(a,e,f,c):this.$renderSimpleLine(a,e)}this.showInvisibles&&(d&&(b=d.end.row),a.push("",b==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"")),c||a.push("
")},this.$getFoldLineTokens=function(a,b){function c(a,b,c){for(var d=0,f=0;f+a[d].value.lengthc-b&&(g=g.substring(0,c-b)),e.push({type:a[d].type,value:g}),f=b+g.length,d+=1}for(;c>f&&dc?e.push({type:a[d].type,value:g.substring(0,c-f)}):e.push(a[d]),f+=g.length,d+=1}}var d=this.session,e=[],f=d.getTokens(a);return b.walk(function(a,b,g,h,i){null!=a?e.push({type:"fold",value:a}):(i&&(f=d.getTokens(b)),f.length&&c(f,h,g))},b.end.row,this.session.getLine(b.end.row).length),e},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(h.prototype),b.Text=h}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(a,b,c){var d,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),void 0===d&&(d="opacity"in this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),e.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateVisibility.bind(this)};(function(){this.$updateVisibility=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.visibility=a?"":"hidden"},this.$updateOpacity=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.opacity=a?"":"0"},this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},this.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},this.setSmoothBlinking=function(a){a==this.smoothBlinking||d||(this.smoothBlinking=a,e.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.$updateCursors=(a?this.$updateOpacity:this.$updateVisibility).bind(this),this.restartTimer())},this.addCursor=function(){var a=e.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},this.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},this.hideCursor=function(){this.isVisible=!1,e.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,e.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&e.removeCssClass(this.element,"ace_smooth-blinking"),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){e.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var b=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),b()},this.blinkInterval),b()}},this.getPixelPosition=function(a,b){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var c=this.session.documentToScreenPosition(a),d=this.$padding+c.column*this.config.characterWidth,e=(c.row-(b?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:d,top:e}},this.update=function(a){this.config=a;var b=this.session.$selectionMarkers,c=0,d=0;(void 0===b||0===b.length)&&(b=[{cursor:null}]);for(var c=0,e=b.length;e>c;c++){var f=this.getPixelPosition(b[c].cursor,!0);if(!((f.top>a.height+a.offset||f.top<0)&&c>1)){var g=(this.cursors[d++]||this.addCursor()).style;g.left=f.left+"px",g.top=f.top+"px",g.width=a.characterWidth+"px",g.height=a.lineHeight+"px"}}for(;this.cursors.length>d;)this.removeCursor();var h=this.session.getOverwrite();this.$setOverwrite(h),this.$pixelPos=f,this.restartTimer()},this.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?e.addCssClass(this.element,"ace_overwrite-cursors"):e.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(f.prototype),b.Cursor=f}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/event"),g=a("./lib/event_emitter").EventEmitter,h=function(a){this.element=e.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=e.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),a.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,f.addListener(this.element,"scroll",this.onScroll.bind(this)),f.addListener(this.element,"mousedown",f.preventDefault)};(function(){d.implement(this,g),this.setVisible=function(a){this.element.style.display=a?"":"none",this.isVisible=a}}).call(h.prototype);var i=function(a,b){h.call(this,a),this.scrollTop=0,b.$scrollbarWidth=this.width=e.scrollbarWidth(a.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};d.inherits(i,h),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(a){this.element.style.height=a+"px"},this.setInnerHeight=function(a){this.inner.style.height=a+"px"},this.setScrollHeight=function(a){this.inner.style.height=a+"px"},this.setScrollTop=function(a){this.scrollTop!=a&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=a)}}.call(i.prototype);var j=function(a,b){h.call(this,a),this.scrollLeft=0,this.height=b.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};d.inherits(j,h),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(a){this.element.style.width=a+"px"},this.setInnerWidth=function(a){this.inner.style.width=a+"px"},this.setScrollWidth=function(a){this.inner.style.width=a+"px"},this.setScrollLeft=function(a){this.scrollLeft!=a&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=a)}}.call(j.prototype),b.ScrollBar=i,b.ScrollBarV=i,b.ScrollBarH=j,b.VScrollBar=i,b.HScrollBar=j}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(a,b,c){var d=a("./lib/event"),e=function(a,b){this.onRender=a,this.pending=!1,this.changes=0,this.window=b||window};(function(){this.schedule=function(a){if(this.changes=this.changes|a,!this.pending&&this.changes){this.pending=!0;var b=this;d.nextFrame(function(){b.pending=!1;for(var a;a=b.changes;)b.changes=0,b.onRender(a)},this.window)}}}).call(e.prototype),b.RenderLoop=e}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=0,i=b.FontMetrics=function(a,b){this.el=e.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=e.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=e.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),a.appendChild(this.el),h||this.$testFractionalRect(),this.$measureNode.innerHTML=f.stringRepeat("X",h),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){d.implement(this,g),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var a=e.createElement("div");this.$setMeasureNodeStyles(a.style),a.style.width="0.2px",document.documentElement.appendChild(a);var b=a.getBoundingClientRect().width;h=b>0&&1>b?1:100,a.parentNode.removeChild(a)},this.$setMeasureNodeStyles=function(a,b){a.width=a.height="auto",a.left=a.top="-100px",a.visibility="hidden",a.position="fixed",a.whiteSpace="pre",a.font="inherit",a.overflow=b?"hidden":"visible"},this.checkForSizeChanges=function(){var a=this.$measureSizes();if(a&&(this.$characterSize.width!==a.width||this.$characterSize.height!==a.height)){this.$measureNode.style.fontWeight="bold";var b=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=a,this.charSizes=Object.create(null),this.allowBoldFonts=b&&b.width===a.width&&b.height===a.height,this._emit("changeCharacterSize",{data:a})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var a=this;return this.$pollSizeChangesTimer=setInterval(function(){a.checkForSizeChanges()},500)},this.setPolling=function(a){a?this.$pollSizeChanges():this.$pollSizeChangesTimer&&this.$pollSizeChangesTimer},this.$measureSizes=function(){if(1===h)var a=this.$measureNode.getBoundingClientRect(),b={height:a.height,width:a.width};else var b={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/h};return 0===b.width||0===b.height?null:b},this.$measureCharWidth=function(a){this.$main.innerHTML=f.stringRepeat(a,h);var b=this.$main.getBoundingClientRect();return b.width/h},this.getCharacterWidth=function(a){var b=this.charSizes[a];return void 0===b&&(this.charSizes[a]=this.$measureCharWidth(a)/this.$characterSize.width),b},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(i.prototype)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(a,b,c){function d(a,b,c){return p.$options.wrap=!0,p.$options.needle=b,p.$options.backwards=-1==c,p.find(a)}function e(a,b){return a.row==b.row&&a.column==b.column}function f(a){a.$multiselectOnSessionChange||(a.$onAddRange=a.$onAddRange.bind(a),a.$onRemoveRange=a.$onRemoveRange.bind(a),a.$onMultiSelect=a.$onMultiSelect.bind(a),a.$onSingleSelect=a.$onSingleSelect.bind(a),a.$multiselectOnSessionChange=b.onSessionChange.bind(a),a.$multiselectOnSessionChange(a),a.on("changeSession",a.$multiselectOnSessionChange),a.on("mousedown",k),a.commands.addCommands(n.defaultCommands),g(a))}function g(a){function b(b){d&&(a.renderer.setMouseCursor(""),d=!1)}var c=a.textInput.getElement(),d=!1;l.addListener(c,"keydown",function(c){18!=c.keyCode||c.ctrlKey||c.shiftKey||c.metaKey?d&&b():d||(a.renderer.setMouseCursor("crosshair"),d=!0)}),l.addListener(c,"keyup",b),l.addListener(c,"blur",b)}var h=a("./range_list").RangeList,i=a("./range").Range,j=a("./selection").Selection,k=a("./mouse/multi_select_handler").onMouseDown,l=a("./lib/event"),m=a("./lib/lang"),n=a("./commands/multi_select_commands");b.commands=n.defaultCommands.concat(n.multiSelectCommands);var o=a("./search").Search,p=new o,q=a("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(q.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(a,b){if(a){if(!this.inMultiSelectMode&&0==this.rangeCount){var c=this.toOrientedRange();if(this.rangeList.add(c),this.rangeList.add(a),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),b||this.fromOrientedRange(a);this.rangeList.removeAll(),this.rangeList.add(c),this.$onAddRange(c)}a.cursor||(a.cursor=a.end);var d=this.rangeList.add(a);return this.$onAddRange(a),d.length&&this.$onRemoveRange(d),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),b||this.fromOrientedRange(a)}},this.toSingleRange=function(a){a=a||this.ranges[0];var b=this.rangeList.removeAll();b.length&&this.$onRemoveRange(b),a&&this.fromOrientedRange(a)},this.substractPoint=function(a){var b=this.rangeList.substractPoint(a);return b?(this.$onRemoveRange(b),b[0]):void 0},this.mergeOverlappingRanges=function(){var a=this.rangeList.merge();a.length?this.$onRemoveRange(a):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(a){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(a),this._signal("addRange",{range:a})},this.$onRemoveRange=function(a){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var b=this.rangeList.ranges.pop();a.push(b),this.rangeCount=0}for(var c=a.length;c--;){var d=this.ranges.indexOf(a[c]);this.ranges.splice(d,1)}this._signal("removeRange",{ranges:a}),0==this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),b=b||this.ranges[0],b&&!b.isEqual(this.getRange())&&this.fromOrientedRange(b)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new h,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var c=this.getRange(),d=this.isBackwards(),e=c.start.row,f=c.end.row;if(e==f){if(d)var g=c.end,h=c.start;else var g=c.start,h=c.end;return this.addRange(i.fromPoints(h,h)),void this.addRange(i.fromPoints(g,g))}var j=[],k=this.getLineRange(e,!0);k.start.column=c.start.column,j.push(k);for(var l=e+1;f>l;l++)j.push(this.getLineRange(l,!0));k=this.getLineRange(f,!0),k.end.column=c.end.column,j.push(k),j.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var d=this.session.documentToScreenPosition(this.selectionLead),e=this.session.documentToScreenPosition(this.selectionAnchor),f=this.rectangularRangeBlock(d,e);f.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(a,b,c){var d=[],f=a.columng&&(g=0),0>k&&(k=0),k==l&&(c=!0);for(var m=k;l>=m;m++){var n=i.fromPoints(this.session.screenToDocumentPosition(m,g),this.session.screenToDocumentPosition(m,h));if(n.isEmpty()){if(o&&e(n.end,o))break;var o=n.end}n.cursor=f?n.start:n.end,d.push(n)}if(j&&d.reverse(),!c){for(var p=d.length-1;d[p].isEmpty()&&p>0;)p--;if(p>0)for(var q=0;d[q].isEmpty();)q++;for(var r=p;r>=q;r--)d[r].isEmpty()&&d.splice(r,1)}return d}}.call(j.prototype);var r=a("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(a){a.cursor||(a.cursor=a.end);var b=this.getSelectionStyle();return a.marker=this.session.addMarker(a,"ace_selection",b),this.session.$selectionMarkers.push(a),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,a},this.removeSelectionMarker=function(a){if(a.marker){this.session.removeMarker(a.marker);var b=this.session.$selectionMarkers.indexOf(a);-1!=b&&this.session.$selectionMarkers.splice(b,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(a){for(var b=this.session.$selectionMarkers,c=a.length;c--;){var d=a[c];if(d.marker){this.session.removeMarker(d.marker);var e=b.indexOf(d);-1!=e&&b.splice(e,1)}}this.session.selectionMarkerCount=b.length},this.$onAddRange=function(a){this.addSelectionMarker(a.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(a){this.removeSelectionMarkers(a.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(a){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(n.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(a){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(n.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(a){var b=a.command,c=a.editor;if(c.multiSelect){if(b.multiSelectAction)"forEach"==b.multiSelectAction?d=c.forEachSelection(b,a.args):"forEachLine"==b.multiSelectAction?d=c.forEachSelection(b,a.args,!0):"single"==b.multiSelectAction?(c.exitMultiSelectMode(),d=b.exec(c,a.args||{})):d=b.multiSelectAction(c,a.args||{});else{var d=b.exec(c,a.args||{});c.multiSelect.addRange(c.multiSelect.toOrientedRange()),c.multiSelect.mergeOverlappingRanges()}return d}},this.forEachSelection=function(a,b,c){if(!this.inVirtualSelectionMode){var d,e=this.session,f=this.selection,g=f.rangeList,h=f._eventRegistry;f._eventRegistry={};var i=new j(e);this.inVirtualSelectionMode=!0;for(var k=g.ranges.length;k--;){if(c)for(;k>0&&g.ranges[k].start.row==g.ranges[k-1].end.row;)k--;i.fromOrientedRange(g.ranges[k]),i.id=g.ranges[k].marker,this.selection=e.selection=i;var l=a.exec(this,b||{});void 0!==d&&(d=l),i.toOrientedRange(g.ranges[k])}i.detach(),this.selection=e.selection=f,this.inVirtualSelectionMode=!1,f._eventRegistry=h,f.mergeOverlappingRanges();var m=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),m&&m.from==m.to&&this.renderer.animateScrolling(m.from),d}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var a="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var b=this.multiSelect.rangeList.ranges,c=[],d=0;dd.length||c.length<2||!c[1])return this.commands.exec("insertstring",this,a);for(var e=d.length;e--;){var f=d[e];f.isEmpty()||this.session.remove(f),this.session.insert(f.start,c[e])}}},this.findAll=function(a,b,c){b=b||{},b.needle=a||b.needle,this.$search.set(b);var d=this.$search.findAll(this.session);if(!d.length)return 0;this.$blockScrolling+=1;var e=this.multiSelect;c||e.toSingleRange(d[0]);for(var f=d.length;f--;)e.addRange(d[f],!0);return this.$blockScrolling-=1,d.length},this.selectMoreLines=function(a,b){var c=this.selection.toOrientedRange(),d=c.cursor==c.end,e=this.session.documentToScreenPosition(c.cursor);this.selection.$desiredColumn&&(e.column=this.selection.$desiredColumn);var f=this.session.screenToDocumentPosition(e.row+a,e.column);if(c.isEmpty())var g=f;else var h=this.session.documentToScreenPosition(d?c.end:c.start),g=this.session.screenToDocumentPosition(h.row+a,h.column);if(d){var j=i.fromPoints(f,g);j.cursor=j.start}else{var j=i.fromPoints(g,f);j.cursor=j.end}if(j.desiredColumn=e.column,this.selection.inMultiSelectMode){if(b)var k=c.cursor}else this.selection.addRange(c);this.selection.addRange(j),k&&this.selection.substractPoint(k)},this.transposeSelections=function(a){for(var b=this.session,c=b.multiSelect,d=c.ranges,e=d.length;e--;){var f=d[e];if(f.isEmpty()){var g=b.getWordRange(f.start.row,f.start.column);f.start.row=g.start.row,f.start.column=g.start.column,f.end.row=g.end.row,f.end.column=g.end.column}}c.mergeOverlappingRanges();for(var h=[],e=d.length;e--;){var f=d[e];h.unshift(b.getTextRange(f))}0>a?h.unshift(h.pop()):h.push(h.shift());for(var e=d.length;e--;){var f=d[e],g=f.clone();b.replace(f,h[e]),f.start.row=g.start.row,f.start.column=g.start.column}},this.selectMore=function(a,b){var c=this.session,e=c.multiSelect,f=e.toOrientedRange();f.isEmpty()&&(f=c.getWordRange(f.start.row,f.start.column),f.cursor=-1==a?f.start:f.end,this.multiSelect.addRange(f));var g=c.getTextRange(f),h=d(c,g,a);h&&(h.cursor=-1==a?h.start:h.end,this.$blockScrolling+=1,this.session.unfold(h),this.multiSelect.addRange(h),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),b&&this.multiSelect.substractPoint(f.cursor)},this.alignCursors=function(){var a=this.session,b=a.multiSelect,c=b.ranges;if(c.length){var d=-1,e=c.filter(function(a){return a.cursor.row==d?!0:void(d=a.cursor.row)});b.$onRemoveRange(e);var f=0,g=1/0,h=c.map(function(b){var c=b.cursor,d=a.getLine(c.row),e=d.substr(c.column).search(/\S/g);return-1==e&&(e=0),c.column>f&&(f=c.column),g>e&&(g=e),e});c.forEach(function(b,c){var d=b.cursor,e=f-d.column,j=h[c]-g;e>j?a.insert(d,m.stringRepeat(" ",e-j)):a.remove(new i(d.row,d.column,d.row,d.column-e+j)),b.start.column=b.end.column=f,b.start.row=b.end.row=d.row,b.cursor=b.end}),b.fromOrientedRange(c[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var j=this.selection.getRange(),k=j.start.row,l=j.end.row,n=k==l;if(n){var o,p=this.session.getLength();do o=this.session.getLine(l);while(/[=:]/.test(o)&&++l0);0>k&&(k=0),l>=p&&(l=p-1)}var q=this.session.doc.removeLines(k,l);q=this.$reAlignText(q,n), -this.session.doc.insert({row:k,column:0},q.join("\n")+"\n"),n||(j.start.column=0,j.end.column=q[q.length-1].length),this.selection.setRange(j)}},this.$reAlignText=function(a,b){function c(a){return m.stringRepeat(" ",a)}function d(a){return a[2]?c(g)+a[2]+c(h-a[2].length+i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function e(a){return a[2]?c(g+h-a[2].length)+a[2]+c(i," ")+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function f(a){return a[2]?c(g)+a[2]+c(i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}var g,h,i,j=!0,k=!0;return a.map(function(a){var b=a.match(/(\s*)(.*?)(\s*)([=:].*)/);return b?null==g?(g=b[1].length,h=b[2].length,i=b[3].length,b):(g+h+i!=b[1].length+b[2].length+b[3].length&&(k=!1),g!=b[1].length&&(j=!1),g>b[1].length&&(g=b[1].length),hb[3].length&&(i=b[3].length),b):[a]}).map(b?d:j?k?e:d:f)}}).call(r.prototype),b.onSessionChange=function(a){var b=a.session;b.multiSelect||(b.$selectionMarkers=[],b.selection.$initRangeList(),b.multiSelect=b.selection),this.multiSelect=b.multiSelect;var c=a.oldSession;c&&(c.multiSelect.removeEventListener("addRange",this.$onAddRange),c.multiSelect.removeEventListener("removeRange",this.$onRemoveRange),c.multiSelect.removeEventListener("multiSelect",this.$onMultiSelect),c.multiSelect.removeEventListener("singleSelect",this.$onSingleSelect)),b.multiSelect.on("addRange",this.$onAddRange),b.multiSelect.on("removeRange",this.$onRemoveRange),b.multiSelect.on("multiSelect",this.$onMultiSelect),b.multiSelect.on("singleSelect",this.$onSingleSelect),this.inMultiSelectMode!=b.selection.inMultiSelectMode&&(b.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},b.MultiSelect=f,a("./config").defineOptions(r.prototype,"editor",{enableMultiselect:{set:function(a){f(this),a?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",k)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",k))},value:!0}})}),define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event"],function(a,b,c){function d(a,b){return a.row==b.row&&a.column==b.column}function e(a){var b=a.domEvent,c=b.altKey,e=b.shiftKey,g=a.getAccelKey(),h=a.getButton();if(a.editor.inMultiSelectMode&&2==h)return void a.editor.textInput.onContextMenu(a.domEvent);if(!g&&!c)return void(0===h&&a.editor.inMultiSelectMode&&a.editor.exitMultiSelectMode());var i=a.editor,j=i.selection,k=i.inMultiSelectMode,l=a.getDocumentPosition(),m=j.getCursor(),n=a.inSelection()||j.isEmpty()&&d(l,m),o=a.x,p=a.y,q=function(a){o=a.clientX,p=a.clientY},r=function(){var a=i.renderer.pixelToScreenCoordinates(o,p),b=s.screenToDocumentPosition(a.row,a.column);d(u,a)&&d(b,j.selectionLead)||(u=a,i.selection.moveToPosition(b),i.renderer.scrollCursorIntoView(),i.removeSelectionMarkers(v),v=j.rectangularRangeBlock(u,t),v.forEach(i.addSelectionMarker,i),i.updateSelectionMarkers())},s=i.session,t=i.renderer.pixelToScreenCoordinates(o,p),u=t;if(!g||c||e||0!==h){if(c&&0===h){a.stop(),k&&!g?j.toSingleRange():!k&&g&&j.addRange();var v=[];e?(t=s.documentToScreenPosition(j.lead),r()):j.moveToPosition(l);var w=function(a){clearInterval(y),i.removeSelectionMarkers(v);for(var b=0;b20&&a.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:a}))},this.$workerBlob=function(a){var b="importScripts('"+e.qualifyURL(a)+"');";try{return new Blob([b],{type:"application/javascript"})}catch(c){var d=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,f=new d;return f.append(b),f.getBlob("application/javascript")}}}).call(h.prototype);var i=function(a,b,c){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var d=null,e=!1,h=Object.create(f),i=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(a){i.messageBuffer.push(a),d&&(e?setTimeout(j):j())},this.setEmitSync=function(a){e=a};var j=function(){var a=i.messageBuffer.shift();a.command?d[a.command].apply(d,a.args):a.event&&h._signal(a.event,a.data)};h.postMessage=function(a){i.onMessage({data:a})},h.callback=function(a,b){this.postMessage({type:"call",id:b,data:a})},h.emit=function(a,b){this.postMessage({type:"event",name:a,data:b})},g.loadModule(["worker",b],function(a){for(d=new a[c](h);i.messageBuffer.length;)j()})};i.prototype=h.prototype,b.UIWorkerClient=i,b.WorkerClient=h}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(a,b,c){var d=a("./range").Range,e=a("./lib/event_emitter").EventEmitter,f=a("./lib/oop"),g=function(a,b,c,d,e,f){var g=this;this.length=b,this.session=a,this.doc=a.getDocument(),this.mainClass=e,this.othersClass=f,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=d,this.$onCursorChange=function(){setTimeout(function(){g.onCursorChange()})},this.$pos=c;var h=a.getUndoManager().$undoStack||a.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=h.length,this.setup(),a.selection.on("changeCursor",this.$onCursorChange)};(function(){f.implement(this,e),this.setup=function(){var a=this,b=this.doc,c=this.session,e=this.$pos;this.pos=b.createAnchor(e.row,e.column),this.markerId=c.addMarker(new d(e.row,e.column,e.row,e.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(b){c.removeMarker(a.markerId),a.markerId=c.addMarker(new d(b.value.row,b.value.column,b.value.row,b.value.column+a.length),a.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(c){var d=b.createAnchor(c.row,c.column);a.others.push(d)}),c.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var a=this.session,b=this;this.othersActive=!0,this.others.forEach(function(c){c.markerId=a.addMarker(new d(c.row,c.column,c.row,c.column+b.length),b.othersClass,null,!1),c.on("change",function(e){a.removeMarker(c.markerId),c.markerId=a.addMarker(new d(e.value.row,e.value.column,e.value.row,e.value.column+b.length),b.othersClass,null,!1)})})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var a=0;a=this.pos.column&&c.start.column<=this.pos.column+this.length+1){var f=c.start.column-this.pos.column;if(this.length+=e,!this.session.$fromUndo){if("insertText"===b.action)for(var g=this.others.length-1;g>=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=this.pos.column&&b.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",a)):(this.hideOtherMarkers(),this._emit("cursorLeave",a))}},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var a=0;ac;c++)a.undo(!0)}}).call(g.prototype),b.PlaceHolder=g}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(a,b,c){var d=a("../../range").Range,e=b.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(a,b,c){var d=a.getLine(c);return this.foldingStartMarker.test(d)?"start":"markbeginend"==b&&this.foldingStopMarker&&this.foldingStopMarker.test(d)?"end":""},this.getFoldWidgetRange=function(a,b,c){return null},this.indentationBlock=function(a,b,c){var e=/\S/,f=a.getLine(b),g=f.search(e);if(-1!=g){for(var h=c||f.length,i=a.getLength(),j=b,k=b;++b=l)break;k=b}}if(k>j){var m=a.getLine(k).length;return new d(j,h,k,m)}}},this.openingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e+1},h=a.$findClosingBracket(b,g,f);if(h){var i=a.foldWidgets[h.row];return null==i&&(i=a.getFoldWidget(h.row)),"start"==i&&h.row>g.row&&(h.row--,h.column=a.getLine(h.row).length),d.fromPoints(g,h)}},this.closingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e},h=a.$findOpeningBracket(b,g);return h?(h.column++,g.column--,d.fromPoints(h,g)):void 0}}).call(e.prototype)}),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(a,b,c){function d(a,b,c){for(var d=0,e=a.length-1;e>=d;){var f=d+e>>1,g=c(b,a[f]);if(g>0)d=f+1;else{if(!(0>g))return f;e=f-1}}return-(d+1)}function e(a,b,c){var e=a.getAnnotations().sort(h.comparePoints);if(e.length){var f=d(e,{row:b,column:-1},h.comparePoints);0>f&&(f=-f-1),f>=e.length-1?f=c>0?0:e.length-1:0===f&&0>c&&(f=e.length-1);var g=e[f];if(g&&c){if(g.row===b){do g=e[f+=c];while(g&&g.row===b);if(!g)return e.slice()}var i=[];b=g.row;do i[0>c?"unshift":"push"](g),g=e[f+=c];while(g&&g.row==b);return i.length&&i}}}var f=a("ace/line_widgets").LineWidgets,g=a("ace/lib/dom"),h=a("ace/range").Range;b.showErrorMarker=function(a,b){var c=a.session;c.widgetManager||(c.widgetManager=new f(c),c.widgetManager.attach(a));var d=a.getCursorPosition(),h=d.row,i=c.lineWidgets&&c.lineWidgets[h];i?i.destroy():h-=b;var j,k=e(c,h,b);if(k){var l=k[0];d.column=(l.pos&&"number"!=typeof l.column?l.pos.sc:l.column)||0,d.row=l.row,j=a.renderer.$gutterLayer.$annotations[d.row]}else{if(i)return;j={text:["Looks good!"],className:"ace_ok"}}a.session.unfold(d.row),a.selection.moveToPosition(d);var m={row:d.row,fixedWidth:!0,coverGutter:!0,el:g.createElement("div")},n=m.el.appendChild(g.createElement("div")),o=m.el.appendChild(g.createElement("div"));o.className="error_widget_arrow "+j.className;var p=a.renderer.$cursorLayer.getPixelPosition(d).left;o.style.left=p+a.renderer.gutterWidth-5+"px",m.el.className="error_widget_wrapper",n.className="error_widget "+j.className,n.innerHTML=j.text.join("
"),n.appendChild(g.createElement("div"));var q=function(a,b,c){return 0!==b||"esc"!==c&&"return"!==c?void 0:(m.destroy(),{command:"null"})};m.destroy=function(){a.$mouseHandler.isMousePressed||(a.keyBinding.removeKeyboardHandler(q),c.widgetManager.removeLineWidget(m),a.off("changeSelection",m.destroy),a.off("changeSession",m.destroy),a.off("mouseup",m.destroy),a.off("change",m.destroy))},a.keyBinding.addKeyboardHandler(q),a.on("changeSelection",m.destroy),a.on("changeSession",m.destroy),a.on("mouseup",m.destroy),a.on("change",m.destroy),a.session.widgetManager.addLineWidget(m),m.el.onmousedown=a.focus.bind(a),a.renderer.scrollCursorIntoView(null,.5,{bottom:m.el.offsetHeight})},g.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(a,b,c){function d(a){this.session=a,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.detach=this.detach.bind(this),this.session.on("change",this.updateOnChange)}var e=(a("./lib/oop"),a("./lib/dom"));a("./range").Range;(function(){this.getRowLength=function(a){var b;return b=this.lineWidgets?this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0:0,this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.$getWidgetScreenLength=function(){var a=0;return this.lineWidgets.forEach(function(b){b&&b.rowCount&&(a+=b.rowCount)}),a},this.attach=function(a){a.widgetManager&&a.widgetManager!=this&&a.widgetManager.detach(),this.editor!=a&&(this.detach(),this.editor=a,this.editor.on("changeSession",this.detach),a.widgetManager=this,a.setOption("enableLineWidgets",!0),a.renderer.on("beforeRender",this.measureWidgets),a.renderer.on("afterRender",this.renderWidgets))},this.detach=function(a){if(!a||a.session!=this.session){var b=this.editor;if(b){b.off("changeSession",this.detach),this.editor=null,b.widgetManager=null,b.renderer.off("beforeRender",this.measureWidgets),b.renderer.off("afterRender",this.renderWidgets);var c=this.session.lineWidgets;c&&c.forEach(function(a){a&&a.el&&a.el.parentNode&&(a._inDocument=!1,a.el.parentNode.removeChild(a.el))})}}},this.updateOnChange=function(a){var b=this.session.lineWidgets;if(b){var c=a.data,d=c.range,e=d.start.row,f=d.end.row-e;if(0===f);else if("removeText"==c.action||"removeLines"==c.action){var g=b.splice(e+1,f);g.forEach(function(a){a&&this.removeLineWidget(a)},this),this.$updateRows()}else{var h=new Array(f);h.unshift(e,0),b.splice.apply(b,h),this.$updateRows()}}},this.$updateRows=function(){var a=this.session.lineWidgets;if(a){var b=!0;a.forEach(function(a,c){a&&(b=!1,a.row=c)}),b&&(this.session.lineWidgets=null)}},this.addLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[a.row]=a;var b=this.editor.renderer;return a.html&&!a.el&&(a.el=e.createElement("div"),a.el.innerHTML=a.html),a.el&&(e.addCssClass(a.el,"ace_lineWidgetContainer"),a.el.style.position="absolute",a.el.style.zIndex=5,b.container.appendChild(a.el),a._inDocument=!0),a.coverGutter||(a.el.style.zIndex=3),a.pixelHeight||(a.pixelHeight=a.el.offsetHeight),null==a.rowCount&&(a.rowCount=a.pixelHeight/b.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,b),a},this.removeLineWidget=function(a){if(a._inDocument=!1,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch(b){}this.session.lineWidgets&&(this.session.lineWidgets[a.row]=void 0),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},this.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(a,b){var c=this.session._changedWidgets,d=b.layerConfig;if(c&&c.length){for(var e=1/0,f=0;fh&&(h=0)),g.rowCount!=h&&(g.rowCount=h,g.row0&&!d[e];)e--;this.firstRow=c.firstRow,this.lastRow=c.lastRow,b.$cursorLayer.config=c;for(var g=e;f>=g;g++){var h=d[g];if(h&&h.el){h._inDocument||(h._inDocument=!0,b.container.appendChild(h.el));var i=b.$cursorLayer.getPixelPosition({row:g,column:0},!0).top;h.coverLine||(i+=c.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=i-c.offset+"px";var j=h.coverGutter?0:b.gutterWidth;h.fixedWidth||(j-=b.scrollLeft),h.el.style.left=j+"px",h.fixedWidth?h.el.style.right=b.scrollBar.getWidth()+"px":h.el.style.right=""}}}}}).call(d.prototype),b.LineWidgets=d}),function(){window.require(["ace/ace"],function(a){a&&a.config.init(),window.ace||(window.ace={});for(var b in a)a.hasOwnProperty(b)&&(ace[b]=a[b])})}(),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm .ace_scroller {background-color: #FFFFFF;}.ace-tm .ace_cursor {border-left: 2px solid black;}.ace-tm .ace_overwrite-cursors .ace_cursor {border-left: 0px;border-bottom: 1px solid black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_markup.ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_markup.ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./json_highlight_rules").JsonHighlightRules,h=a("./matching_brace_outdent").MatchingBraceOutdent,i=a("./behaviour/cstyle").CstyleBehaviour,j=a("./folding/cstyle").FoldMode,k=a("../worker/worker_client").WorkerClient,l=function(){this.$tokenizer=new f((new g).getRules()),this.$outdent=new h,this.$behaviour=new i,this.foldingRules=new j};d.inherits(l,e),function(){this.getNextLineIndent=function(a,b,c){var d=this.$getIndent(b);if("start"==a){var e=b.match(/^.*[\{\(\[]\s*$/);e&&(d+=c)}return d},this.checkOutdent=function(a,b,c){return this.$outdent.checkOutdent(b,c)},this.autoOutdent=function(a,b,c){this.$outdent.autoOutdent(b,c)},this.createWorker=function(a){var b=new k(["ace"],"ace/mode/json_worker","JsonWorker");return b.attachToDocument(a.getDocument()),b.on("error",function(b){a.setAnnotations([b.data])}),b.on("ok",function(){a.clearAnnotations()}),b}}.call(l.prototype),b.Mode=l}),define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};d.inherits(f,e),b.JsonHighlightRules=f}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(a,b,c){var d=a("../range").Range,e=function(){};(function(){this.checkOutdent=function(a,b){return/^\s+$/.test(a)?/^\s*\}/.test(b):!1},this.autoOutdent=function(a,b){var c=a.getLine(b),e=c.match(/^(\s*\})/);if(!e)return 0;var f=e[1].length,g=a.findMatchingBracket({row:b,column:f});if(!g||g.row==b)return 0;var h=this.$getIndent(a.getLine(g.row));a.replace(new d(b,0,b,f-1),h)},this.$getIndent=function(a){var b=a.match(/^(\s+)/);return b?b[1]:""}}).call(e.prototype),b.MatchingBraceOutdent=e}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(a,b,c){var d=a("../../lib/oop"),e=a("../behaviour").Behaviour,f=a("../../token_iterator").TokenIterator,g=a("../../lib/lang"),h=["text","paren.rparen","punctuation.operator"],i=["text","paren.rparen","punctuation.operator","comment"],j=0,k=-1,l="",m=0,n=-1,o="",p="",q=function(){q.isSaneInsertion=function(a,b){var c=a.getCursorPosition(),d=new f(b,c.row,c.column);if(!this.$matchTokenType(d.getCurrentToken()||"text",h)){var e=new f(b,c.row,c.column+1);if(!this.$matchTokenType(e.getCurrentToken()||"text",h))return!1}return d.stepForward(),d.getCurrentTokenRow()!==c.row||this.$matchTokenType(d.getCurrentToken()||"text",i)},q.$matchTokenType=function(a,b){return b.indexOf(a.type||a)>-1},q.recordAutoInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isAutoInsertedClosing(d,e,l[0])||(j=0),k=d.row,l=c+e.substr(d.column),j++},q.recordMaybeInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isMaybeInsertedClosing(d,e)||(m=0),n=d.row,o=e.substr(0,d.column)+c,p=e.substr(d.column),m++},q.isAutoInsertedClosing=function(a,b,c){return j>0&&a.row===k&&c===l[0]&&b.substr(a.column)===l},q.isMaybeInsertedClosing=function(a,b){return m>0&&a.row===n&&b.substr(a.column)===p&&b.substr(0,a.column)==o; -},q.popAutoInsertedClosing=function(){l=l.substr(1),j--},q.clearMaybeInsertedClosing=function(){m=0,n=-1},this.add("braces","insertion",function(a,b,c,d,e){var f=c.getCursorPosition(),h=d.doc.getLine(f.row);if("{"==e){var i=c.getSelectionRange(),j=d.doc.getTextRange(i);if(""!==j&&"{"!==j&&c.getWrapBehavioursEnabled())return{text:"{"+j+"}",selection:!1};if(q.isSaneInsertion(c,d))return/[\]\}\)]/.test(h[f.column])?(q.recordAutoInsert(c,d,"}"),{text:"{}",selection:[1,1]}):(q.recordMaybeInsert(c,d,"{"),{text:"{",selection:[1,1]})}else if("}"==e){var k=h.substring(f.column,f.column+1);if("}"==k){var l=d.$findOpeningBracket("}",{column:f.column+1,row:f.row});if(null!==l&&q.isAutoInsertedClosing(f,h,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if("\n"==e||"\r\n"==e){var n="";q.isMaybeInsertedClosing(f,h)&&(n=g.stringRepeat("}",m),q.clearMaybeInsertedClosing());var k=h.substring(f.column,f.column+1);if("}"==k||""!==n){var o=d.findMatchingBracket({row:f.row,column:f.column},"}");if(!o)return null;var p=this.getNextLineIndent(a,h.substring(0,f.column),d.getTabString()),r=this.$getIndent(h);return{text:"\n"+p+"\n"+r+n,selection:[1,p.length,1,p.length]}}}}),this.add("braces","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"{"==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.end.column,e.end.column+1);if("}"==h)return e.end.column++,e;m--}}),this.add("parens","insertion",function(a,b,c,d,e){if("("==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"("+g+")",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,")"),{text:"()",selection:[1,1]}}else if(")"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if(")"==j){var k=d.$findOpeningBracket(")",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"("==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(")"==h)return e.end.column++,e}}),this.add("brackets","insertion",function(a,b,c,d,e){if("["==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"["+g+"]",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,"]"),{text:"[]",selection:[1,1]}}else if("]"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if("]"==j){var k=d.$findOpeningBracket("]",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"["==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if("]"==h)return e.end.column++,e}}),this.add("string_dquotes","insertion",function(a,b,c,d,e){if('"'==e||"'"==e){var f=e,g=c.getSelectionRange(),h=d.doc.getTextRange(g);if(""!==h&&"'"!==h&&'"'!=h&&c.getWrapBehavioursEnabled())return{text:f+h+f,selection:!1};var i=c.getCursorPosition(),j=d.doc.getLine(i.row),k=j.substring(i.column-1,i.column);if("\\"==k)return null;for(var l,m=d.getTokens(g.start.row),n=0,o=-1,p=0;po&&(o=l.value.indexOf(f)),!(l.value.length+n>g.start.column));p++)n+=m[p].value.length;if(!l||0>o&&"comment"!==l.type&&("string"!==l.type||g.start.column!==l.value.length+n-1&&l.value.lastIndexOf(f)===l.value.length-1)){if(!q.isSaneInsertion(c,d))return;return{text:f+f,selection:[1,1]}}if(l&&"string"===l.type){var r=j.substring(i.column,i.column+1);if(r==f)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&('"'==f||"'"==f)){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(h==f)return e.end.column++,e}})};d.inherits(q,e),b.CstyleBehaviour=q}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(a,b,c){var d=a("../../lib/oop"),e=(a("../../range").Range,a("./fold_mode").FoldMode),f=b.FoldMode=function(){};d.inherits(f,e),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(a,b,c){var d=a.getLine(c),e=d.match(this.foldingStartMarker);if(e){var f=e.index;return e[1]?this.openingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f+e[0].length,1)}if("markbeginend"===b){var e=d.match(this.foldingStopMarker);if(e){var f=e.index+e[0].length;return e[1]?this.closingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f,-1)}}}}.call(f.prototype)}),define("ace/mode/aql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/aql_highlight_rules","ace/range"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./aql_highlight_rules").AqlHighlightRules,h=a("../range").Range,i=function(){this.$tokenizer=new f((new g).getRules())};d.inherits(i,e),function(){this.toggleCommentLines=function(a,b,c,d){for(var e=!0,f=/^(\s*)\/\//,g=c;d>=g;g++)if(!f.test(b.getLine(g))){e=!1;break}if(e)for(var i=new h(0,0,0,0),g=c;d>=g;g++){var j=b.getLine(g),k=j.match(f);i.start.row=g,i.end.row=g,i.end.column=k[0].length,b.replace(i,k[1])}else b.indentRows(c,d,"//")}}.call(i.prototype),b.Mode=i}),define("ace/mode/aql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){var a="for|return|filter|sort|limit|let|collect|asc|desc|if|in|into|insert|update|remove|replace|options|with|and|or|not|distinct",b="(to_bool|to_number|to_string|to_list|is_null|is_bool|is_number|is_string|is_list|is_document|concat|concat_separator|char_length|lower|upper|substring|left|right|trim|reverse|contains|like|floor|ceil|round|abs|rand|sqrt|length|min|max|average|sum|median|variance_population|variance_sample|first|last|unique|matches|merge|merge_recursive|has|attributes|values|unset|keep|near|within|within_rectangle|is_in_polygon|fulltext|paths|traversal|traversal_tree|edges|stddev_sample|stddev_population|slice|nth|position|translate|zip|call|apply|push|append|pop|shift|unshift|remove_value|remove_values|remove_nth|graph_paths|shortest_path|graph_shortest_path|graph_distance_to|graph_traversal|graph_traversal_tree|graph_edges|graph_vertices|neighbors|graph_neighbors|graph_common_neighbors|graph_common_properties|graph_eccentricity|graph_betweenness|graph_closeness|graph_absolute_eccentricity|graph_absolute_betweenness|graph_absolute_closeness|graph_diameter|graph_radius|date_now|date_timestamp|date_iso8601|date_dayofweek|date_year|date_month|date_day|date_hour|date_minute|date_second|date_millisecond|fail|passthru|sleep|not_null|first_list|first_document|parse_identifier|current_user|current_database|collections|document|union|union_distinct|intersection|flatten|ltrim|rtrim|find_first|find_last|split|substitute|assemble|md5|sha1|random_token|AQL_LAST_ENTRY)",c=this.createKeywordMapper({"support.function":b,keyword:a,"constant.language":"null","constant.language.boolean":"true|false"},"identifier",!0);this.$rules={start:[{token:"comment",regex:/\/\/.*$/},{token:"comment",regex:/\/\*/,next:"comment_ml"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"string",regex:"`.*?`"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:c,regex:"[a-zA-Z_][a-zA-Z0-9_]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|@>|<@|&&|\\||!|<|>|<=|=>|==|!=|="},{token:"paren.lparen",regex:"[\\(\\{]"},{token:"paren.rparen",regex:"[\\)\\}]"},{token:"text",regex:"\\s+"}],comment_ml:[{token:"comment",regex:/\*\//,next:"start"},{defaultToken:"comment"}]}};d.inherits(f,e),b.AqlHighlightRules=f}),EdgeShaper.shapes=Object.freeze({NONE:0,ARROW:1}),NodeShaper.shapes=Object.freeze({NONE:0,CIRCLE:1,RECT:2,IMAGE:3});var modalDialogHelper=modalDialogHelper||{};!function(){"use strict";var a,b=function(a){$(document).bind("keypress.key13",function(b){b.which&&13===b.which&&$(a).click()})},c=function(){$(document).unbind("keypress.key13")},d=function(a,b,c,d,e){var f,g,h=function(){e(f)},i=modalDialogHelper.modalDivTemplate(a,b,c,h),j=document.createElement("tr"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("th"),n=document.createElement("button"),o=1;f=function(){var a={};return _.each($("#"+c+"table tr:not(#first_row)"),function(b){var c=$(".keyCell input",b).val(),d=$(".valueCell input",b).val();a[c]=d}),a},i.appendChild(j),j.id="first_row",j.appendChild(k),k.className="keyCell",j.appendChild(l),l.className="valueCell",j.appendChild(m),m.className="actionCell",m.appendChild(n),n.id=c+"new",n.className="graphViewer-icon-button gv-icon-small add",g=function(a,b){var d,e,f,g=/^_(id|rev|key|from|to)/,h=document.createElement("tr"),j=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th");g.test(b)||(i.appendChild(h),h.appendChild(k),k.className="keyCell",e=document.createElement("input"),e.type="text",e.id=c+b+"_key",e.value=b,k.appendChild(e),h.appendChild(l),l.className="valueCell",f=document.createElement("input"),f.type="text",f.id=c+b+"_value","object"==typeof a?f.value=JSON.stringify(a):f.value=a,l.appendChild(f),h.appendChild(j),j.className="actionCell",d=document.createElement("button"),d.id=c+b+"_delete",d.className="graphViewer-icon-button gv-icon-small delete",j.appendChild(d),d.onclick=function(){i.removeChild(h)})},n.onclick=function(){g("","new_"+o),o++},_.each(d,g),$("#"+c+"modal").modal("show")},e=function(a,b,c,d,e){var f=modalDialogHelper.modalDivTemplate(a,b,c,e),g=document.createElement("tr"),h=document.createElement("th"),i=document.createElement("pre");f.appendChild(g),g.appendChild(h),h.appendChild(i),i.className="gv-object-view",i.innerHTML=JSON.stringify(d,null,2),$("#"+c+"modal").modal("show")},f=function(a,b){var c=document.createElement("input");return c.type="text",c.id=a,c.value=b,c},g=function(a,b){var c=document.createElement("input");return c.type="checkbox",c.id=a,c.checked=b,c},h=function(a,b,c){var d=document.createElement("select");return d.id=a,_.each(_.sortBy(b,function(a){return a.toLowerCase()}),function(a){var b=document.createElement("option");b.value=a,b.selected=a===c,b.appendChild(document.createTextNode(a)),d.appendChild(b)}),d},i=function(a){var b=$(".decission_"+a),c=$("input[type='radio'][name='"+a+"']:checked").attr("id");b.each(function(){$(this).attr("decider")===c?$(this).css("display",""):$(this).css("display","none")})},j=function(b,c,d,e,f,g,h,j){var k=document.createElement("input"),l=b+c,m=document.createElement("label"),n=document.createElement("tbody");k.id=l,k.type="radio",k.name=d,k.className="gv-radio-button",m.className="radio",h.appendChild(m),m.appendChild(k),m.appendChild(document.createTextNode(e)),j.appendChild(n),$(n).toggleClass("decission_"+d,!0),$(n).attr("decider",l),_.each(g,function(c){a(n,b,c)}),f?k.checked=!0:k.checked=!1,m.onclick=function(a){i(d),a.stopPropagation()},i(d)},k=function(a,b,c,d,e,f){var g,h=[],i=a+b,j=1,k=document.createElement("th"),l=document.createElement("button"),m=document.createElement("input"),n=function(a){j++;var c,d=document.createElement("tr"),g=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("input"),n=document.createElement("button");m.type="text",m.id=i+"_"+j,m.value=a||"",c=0===h.length?$(f):$(h[h.length-1]),c.after(d),d.appendChild(g),g.className="collectionTh capitalize",g.appendChild(document.createTextNode(b+" "+j+":")),d.appendChild(k),k.className="collectionTh",k.appendChild(m),n.id=i+"_"+j+"_remove",n.className="graphViewer-icon-button gv-icon-small delete",n.onclick=function(){e.removeChild(d),h.splice(h.indexOf(d),1)},l.appendChild(n),d.appendChild(l),h.push(d)};for(m.type="text",m.id=i+"_1",d.appendChild(m),k.appendChild(l),f.appendChild(k),l.onclick=function(){n()},l.id=i+"_addLine",l.className="graphViewer-icon-button gv-icon-small add","string"==typeof c&&c.length>0&&(c=[c]),c.length>0&&(m.value=c[0]),g=1;ga?"0"+a:a};return a.getUTCFullYear()+"-"+b(a.getUTCMonth()+1)+"-"+b(a.getUTCDate())+" "+b(a.getUTCHours())+":"+b(a.getUTCMinutes())+":"+b(a.getUTCSeconds())},escapeHtml:function(a){return String(a).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}}}(),function(){"use strict";if(!window.hasOwnProperty("TEST_BUILD")){var a=function(){var a={};return a.createTemplate=function(a){var b=$("#"+a.replace(".","\\.")).html();return{render:function(a){return _.template(b,a)}}},a};window.templateEngine=new a}}(),Module.prototype.moduleCache={},Module.prototype.moduleCache["/internal"]=new Module("/internal"),"undefined"==typeof global&&"undefined"!=typeof window&&(global=window),global.module=Module.prototype.moduleCache["/"]=new Module("/"),Module.prototype.normalise=function(a){var b,c,d,e,f;if(""===a)return this.id;for(d=a.split("/"),"."===d[0]||".."===d[0]?(e=this.id.split("/"),e.pop(),e=e.concat(d)):e=d,c=[],b=0;b "+a.browserOutputBuffer,"jssuccess"),a.browserOutputBuffer=""},$(document).ajaxSend(function(b,c,d){d.url=a.arango.databasePrefix(d.url)})}(),function(){"use strict";window.dygraphConfig={defaultFrame:12e5,zeropad:function(a){return 10>a?"0"+a:a},xAxisFormat:function(a){if(-1===a)return"";var b=new Date(a);return this.zeropad(b.getHours())+":"+this.zeropad(b.getMinutes())+":"+this.zeropad(b.getSeconds())},mergeObjects:function(a,b,c){c||(c=[]);var d,e={};return c.forEach(function(c){var d=a[c],f=b[c];void 0===d&&(d={}),void 0===f&&(f={}),e[c]=_.extend(d,f)}),d=_.extend(a,b),Object.keys(e).forEach(function(a){d[a]=e[a]}),d},mapStatToFigure:{residentSize:["times","residentSizePercent"],pageFaults:["times","majorPageFaultsPerSecond","minorPageFaultsPerSecond"],systemUserTime:["times","systemTimePerSecond","userTimePerSecond"],totalTime:["times","avgQueueTime","avgRequestTime","avgIoTime"],dataTransfer:["times","bytesSentPerSecond","bytesReceivedPerSecond"],requests:["times","getsPerSecond","putsPerSecond","postsPerSecond","deletesPerSecond","patchesPerSecond","headsPerSecond","optionsPerSecond","othersPerSecond"]},colors:["#617e2b","#296e9c","#81ccd8","#7ca530","#3c3c3c","#aa90bd","#e1811d","#c7d4b2","#d0b2d4"],figureDependedOptions:{clusterRequestsPerSecond:{showLabelsOnHighlight:!0,title:"",header:"Cluster Requests per Second",stackedGraph:!0,div:"lineGraphLegend",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},residentSize:{header:"Resident Size",axes:{y:{labelsKMG2:!1,axisLabelFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"},valueFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"}}}},pageFaults:{header:"Page Faults",visibility:[!0,!1],labels:["datetime","Major Page","Minor Page"],div:"pageFaultsChart",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},systemUserTime:{div:"systemUserTimeChart",header:"System and User Time",labels:["datetime","System Time","User Time"],stackedGraph:!0,labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},totalTime:{div:"totalTimeChart",header:"Total Time",labels:["datetime","Queue","Computation","I/O"],labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}},stackedGraph:!0},dataTransfer:{header:"Data Transfer",labels:["datetime","Bytes sent","Bytes received"],stackedGraph:!0,div:"dataTransferChart"},requests:{header:"Requests",labels:["datetime","GET","PUT","POST","DELETE","PATCH","HEAD","OPTIONS","OTHER"],stackedGraph:!0,div:"requestsChart",axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}}},getDashBoardFigures:function(a){var b=[],c=this;return Object.keys(this.figureDependedOptions).forEach(function(d){"clusterRequestsPerSecond"!==d&&(c.figureDependedOptions[d].div||a)&&b.push(d)}),b},getDefaultConfig:function(a){var b=this,c={digitsAfterDecimal:1,drawGapPoints:!0,fillGraph:!0,showLabelsOnHighlight:!1,strokeWidth:1,lineWidth:1,strokeBorderWidth:1,includeZero:!0,highlightCircleSize:2.5,labelsSeparateLines:!0,strokeBorderColor:"#ffffff",interactionModel:{},maxNumberWidth:10,colors:[this.colors[0]],xAxisLabelWidth:"50",rightGap:15,showRangeSelector:!1,rangeSelectorHeight:50,rangeSelectorPlotStrokeColor:"#365300",rangeSelectorPlotFillColor:"",pixelsPerLabel:50,labelsKMG2:!0,dateWindow:[(new Date).getTime()-this.defaultFrame,(new Date).getTime()],axes:{x:{valueFormatter:function(a){return b.xAxisFormat(a)}},y:{ticker:Dygraph.numericLinearTicks}}};return this.figureDependedOptions[a]&&(c=this.mergeObjects(c,this.figureDependedOptions[a],["axes"]),c.div&&c.labels&&(c.colors=this.getColors(c.labels),c.labelsDiv=document.getElementById(c.div+"Legend"),c.legend="always",c.showLabelsOnHighlight=!0)),c},getDetailChartConfig:function(a){var b=_.extend(this.getDefaultConfig(a),{showRangeSelector:!0,interactionModel:null,showLabelsOnHighlight:!0,highlightCircleSize:2.5,legend:"always",labelsDiv:"div#detailLegend.dashboard-legend-inner"});return"pageFaults"===a&&(b.visibility=[!0,!0]),b.labels||(b.labels=["datetime",b.header],b.colors=this.getColors(b.labels)),b},getColors:function(a){var b;return b=this.colors.concat([]),b.slice(0,a.length-1)}}}(),module.define("underscore",function(a,b){(function(){function c(a){function b(b,c,d,e,f,g){for(;f>=0&&g>f;f+=a){var h=e?e[f]:f;d=c(d,b[h],h,b)}return d}return function(c,d,e,f){d=v(d,f,4);var g=!C(c)&&u.keys(c),h=(g||c).length,i=a>0?0:h-1;return arguments.length<3&&(e=c[g?g[i]:i],i+=a),b(c,d,e,g,i,h)}}function d(a){return function(b,c,d){c=w(c,d);for(var e=B(b),f=a>0?0:e-1;f>=0&&e>f;f+=a)if(c(b[f],f,b))return f;return-1}}function e(a,b,c){return function(d,e,f){var g=0,h=B(d);if("number"==typeof f)a>0?g=f>=0?f:Math.max(f+h,g):h=f>=0?Math.min(f+1,h):f+h+1;else if(c&&f&&h)return f=c(d,e),d[f]===e?f:-1;if(e!==e)return f=b(m.call(d,g,h),u.isNaN),f>=0?f+g:-1;for(f=a>0?g:h-1;f>=0&&h>f;f+=a)if(d[f]===e)return f;return-1}}function f(a,b){var c=H.length,d=a.constructor,e=u.isFunction(d)&&d.prototype||j,f="constructor";for(u.has(a,f)&&!u.contains(b,f)&&b.push(f);c--;)f=H[c],f in a&&a[f]!==e[f]&&!u.contains(b,f)&&b.push(f)}var g=this,h=g._,i=Array.prototype,j=Object.prototype,k=Function.prototype,l=i.push,m=i.slice,n=j.toString,o=j.hasOwnProperty,p=Array.isArray,q=Object.keys,r=k.bind,s=Object.create,t=function(){},u=function(a){return a instanceof u?a:this instanceof u?void(this._wrapped=a):new u(a)};"undefined"!=typeof a?("undefined"!=typeof b&&b.exports&&(a=b.exports=u),a._=u):g._=u,u.VERSION="1.8.3";var v=function(a,b,c){if(void 0===b)return a;switch(null==c?3:c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)};case 4:return function(c,d,e,f){return a.call(b,c,d,e,f)}}return function(){return a.apply(b,arguments)}},w=function(a,b,c){return null==a?u.identity:u.isFunction(a)?v(a,b,c):u.isObject(a)?u.matcher(a):u.property(a)};u.iteratee=function(a,b){return w(a,b,1/0)};var x=function(a,b){return function(c){var d=arguments.length;if(2>d||null==c)return c;for(var e=1;d>e;e++)for(var f=arguments[e],g=a(f),h=g.length,i=0;h>i;i++){var j=g[i];b&&void 0!==c[j]||(c[j]=f[j])}return c}},y=function(a){if(!u.isObject(a))return{};if(s)return s(a);t.prototype=a;var b=new t;return t.prototype=null,b},z=function(a){return function(b){return null==b?void 0:b[a]}},A=Math.pow(2,53)-1,B=z("length"),C=function(a){var b=B(a);return"number"==typeof b&&b>=0&&A>=b};u.each=u.forEach=function(a,b,c){b=v(b,c);var d,e;if(C(a))for(d=0,e=a.length;e>d;d++)b(a[d],d,a);else{var f=u.keys(a);for(d=0,e=f.length;e>d;d++)b(a[f[d]],f[d],a)}return a},u.map=u.collect=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=Array(e),g=0;e>g;g++){ -var h=d?d[g]:g;f[g]=b(a[h],h,a)}return f},u.reduce=u.foldl=u.inject=c(1),u.reduceRight=u.foldr=c(-1),u.find=u.detect=function(a,b,c){var d;return d=C(a)?u.findIndex(a,b,c):u.findKey(a,b,c),void 0!==d&&-1!==d?a[d]:void 0},u.filter=u.select=function(a,b,c){var d=[];return b=w(b,c),u.each(a,function(a,c,e){b(a,c,e)&&d.push(a)}),d},u.reject=function(a,b,c){return u.filter(a,u.negate(w(b)),c)},u.every=u.all=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(!b(a[g],g,a))return!1}return!0},u.some=u.any=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(b(a[g],g,a))return!0}return!1},u.contains=u.includes=u.include=function(a,b,c,d){return C(a)||(a=u.values(a)),("number"!=typeof c||d)&&(c=0),u.indexOf(a,b,c)>=0},u.invoke=function(a,b){var c=m.call(arguments,2),d=u.isFunction(b);return u.map(a,function(a){var e=d?b:a[b];return null==e?e:e.apply(a,c)})},u.pluck=function(a,b){return u.map(a,u.property(b))},u.where=function(a,b){return u.filter(a,u.matcher(b))},u.findWhere=function(a,b){return u.find(a,u.matcher(b))},u.max=function(a,b,c){var d,e,f=-(1/0),g=-(1/0);if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],d>f&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(e>g||e===-(1/0)&&f===-(1/0))&&(f=a,g=e)});return f},u.min=function(a,b,c){var d,e,f=1/0,g=1/0;if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],f>d&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(g>e||e===1/0&&f===1/0)&&(f=a,g=e)});return f},u.shuffle=function(a){for(var b,c=C(a)?a:u.values(a),d=c.length,e=Array(d),f=0;d>f;f++)b=u.random(0,f),b!==f&&(e[f]=e[b]),e[b]=c[f];return e},u.sample=function(a,b,c){return null==b||c?(C(a)||(a=u.values(a)),a[u.random(a.length-1)]):u.shuffle(a).slice(0,Math.max(0,b))},u.sortBy=function(a,b,c){return b=w(b,c),u.pluck(u.map(a,function(a,c,d){return{value:a,index:c,criteria:b(a,c,d)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;if(c!==d){if(c>d||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.index-b.index}),"value")};var D=function(a){return function(b,c,d){var e={};return c=w(c,d),u.each(b,function(d,f){var g=c(d,f,b);a(e,d,g)}),e}};u.groupBy=D(function(a,b,c){u.has(a,c)?a[c].push(b):a[c]=[b]}),u.indexBy=D(function(a,b,c){a[c]=b}),u.countBy=D(function(a,b,c){u.has(a,c)?a[c]++:a[c]=1}),u.toArray=function(a){return a?u.isArray(a)?m.call(a):C(a)?u.map(a,u.identity):u.values(a):[]},u.size=function(a){return null==a?0:C(a)?a.length:u.keys(a).length},u.partition=function(a,b,c){b=w(b,c);var d=[],e=[];return u.each(a,function(a,c,f){(b(a,c,f)?d:e).push(a)}),[d,e]},u.first=u.head=u.take=function(a,b,c){return null==a?void 0:null==b||c?a[0]:u.initial(a,a.length-b)},u.initial=function(a,b,c){return m.call(a,0,Math.max(0,a.length-(null==b||c?1:b)))},u.last=function(a,b,c){return null==a?void 0:null==b||c?a[a.length-1]:u.rest(a,Math.max(0,a.length-b))},u.rest=u.tail=u.drop=function(a,b,c){return m.call(a,null==b||c?1:b)},u.compact=function(a){return u.filter(a,u.identity)};var E=function(a,b,c,d){for(var e=[],f=0,g=d||0,h=B(a);h>g;g++){var i=a[g];if(C(i)&&(u.isArray(i)||u.isArguments(i))){b||(i=E(i,b,c));var j=0,k=i.length;for(e.length+=k;k>j;)e[f++]=i[j++]}else c||(e[f++]=i)}return e};u.flatten=function(a,b){return E(a,b,!1)},u.without=function(a){return u.difference(a,m.call(arguments,1))},u.uniq=u.unique=function(a,b,c,d){u.isBoolean(b)||(d=c,c=b,b=!1),null!=c&&(c=w(c,d));for(var e=[],f=[],g=0,h=B(a);h>g;g++){var i=a[g],j=c?c(i,g,a):i;b?(g&&f===j||e.push(i),f=j):c?u.contains(f,j)||(f.push(j),e.push(i)):u.contains(e,i)||e.push(i)}return e},u.union=function(){return u.uniq(E(arguments,!0,!0))},u.intersection=function(a){for(var b=[],c=arguments.length,d=0,e=B(a);e>d;d++){var f=a[d];if(!u.contains(b,f)){for(var g=1;c>g&&u.contains(arguments[g],f);g++);g===c&&b.push(f)}}return b},u.difference=function(a){var b=E(arguments,!0,!0,1);return u.filter(a,function(a){return!u.contains(b,a)})},u.zip=function(){return u.unzip(arguments)},u.unzip=function(a){for(var b=a&&u.max(a,B).length||0,c=Array(b),d=0;b>d;d++)c[d]=u.pluck(a,d);return c},u.object=function(a,b){for(var c={},d=0,e=B(a);e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},u.findIndex=d(1),u.findLastIndex=d(-1),u.sortedIndex=function(a,b,c,d){c=w(c,d,1);for(var e=c(b),f=0,g=B(a);g>f;){var h=Math.floor((f+g)/2);c(a[h])f;f++,a+=c)e[f]=a;return e};var F=function(a,b,c,d,e){if(!(d instanceof b))return a.apply(c,e);var f=y(a.prototype),g=a.apply(f,e);return u.isObject(g)?g:f};u.bind=function(a,b){if(r&&a.bind===r)return r.apply(a,m.call(arguments,1));if(!u.isFunction(a))throw new TypeError("Bind must be called on a function");var c=m.call(arguments,2),d=function(){return F(a,d,b,this,c.concat(m.call(arguments)))};return d},u.partial=function(a){var b=m.call(arguments,1),c=function(){for(var d=0,e=b.length,f=Array(e),g=0;e>g;g++)f[g]=b[g]===u?arguments[d++]:b[g];for(;d=d)throw new Error("bindAll must be passed function names");for(b=1;d>b;b++)c=arguments[b],a[c]=u.bind(a[c],a);return a},u.memoize=function(a,b){var c=function(d){var e=c.cache,f=""+(b?b.apply(this,arguments):d);return u.has(e,f)||(e[f]=a.apply(this,arguments)),e[f]};return c.cache={},c},u.delay=function(a,b){var c=m.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},u.defer=u.partial(u.delay,u,1),u.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:u.now(),g=null,f=a.apply(d,e),g||(d=e=null)};return function(){var j=u.now();h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k||k>b?(g&&(clearTimeout(g),g=null),h=j,f=a.apply(d,e),g||(d=e=null)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},u.debounce=function(a,b,c){var d,e,f,g,h,i=function(){var j=u.now()-g;b>j&&j>=0?d=setTimeout(i,b-j):(d=null,c||(h=a.apply(f,e),d||(f=e=null)))};return function(){f=this,e=arguments,g=u.now();var j=c&&!d;return d||(d=setTimeout(i,b)),j&&(h=a.apply(f,e),f=e=null),h}},u.wrap=function(a,b){return u.partial(b,a)},u.negate=function(a){return function(){return!a.apply(this,arguments)}},u.compose=function(){var a=arguments,b=a.length-1;return function(){for(var c=b,d=a[b].apply(this,arguments);c--;)d=a[c].call(this,d);return d}},u.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},u.before=function(a,b){var c;return function(){return--a>0&&(c=b.apply(this,arguments)),1>=a&&(b=null),c}},u.once=u.partial(u.before,2);var G=!{toString:null}.propertyIsEnumerable("toString"),H=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];u.keys=function(a){if(!u.isObject(a))return[];if(q)return q(a);var b=[];for(var c in a)u.has(a,c)&&b.push(c);return G&&f(a,b),b},u.allKeys=function(a){if(!u.isObject(a))return[];var b=[];for(var c in a)b.push(c);return G&&f(a,b),b},u.values=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=a[b[e]];return d},u.mapObject=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=e.length,g={},h=0;f>h;h++)d=e[h],g[d]=b(a[d],d,a);return g},u.pairs=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=[b[e],a[b[e]]];return d},u.invert=function(a){for(var b={},c=u.keys(a),d=0,e=c.length;e>d;d++)b[a[c[d]]]=c[d];return b},u.functions=u.methods=function(a){var b=[];for(var c in a)u.isFunction(a[c])&&b.push(c);return b.sort()},u.extend=x(u.allKeys),u.extendOwn=u.assign=x(u.keys),u.findKey=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=0,g=e.length;g>f;f++)if(d=e[f],b(a[d],d,a))return d},u.pick=function(a,b,c){var d,e,f={},g=a;if(null==g)return f;u.isFunction(b)?(e=u.allKeys(g),d=v(b,c)):(e=E(arguments,!1,!1,1),d=function(a,b,c){return b in c},g=Object(g));for(var h=0,i=e.length;i>h;h++){var j=e[h],k=g[j];d(k,j,g)&&(f[j]=k)}return f},u.omit=function(a,b,c){if(u.isFunction(b))b=u.negate(b);else{var d=u.map(E(arguments,!1,!1,1),String);b=function(a,b){return!u.contains(d,b)}}return u.pick(a,b,c)},u.defaults=x(u.allKeys,!0),u.create=function(a,b){var c=y(a);return b&&u.extendOwn(c,b),c},u.clone=function(a){return u.isObject(a)?u.isArray(a)?a.slice():u.extend({},a):a},u.tap=function(a,b){return b(a),a},u.isMatch=function(a,b){var c=u.keys(b),d=c.length;if(null==a)return!d;for(var e=Object(a),f=0;d>f;f++){var g=c[f];if(b[g]!==e[g]||!(g in e))return!1}return!0};var I=function(a,b,c,d){if(a===b)return 0!==a||1/a===1/b;if(null==a||null==b)return a===b;a instanceof u&&(a=a._wrapped),b instanceof u&&(b=b._wrapped);var e=n.call(a);if(e!==n.call(b))return!1;switch(e){case"[object RegExp]":case"[object String]":return""+a==""+b;case"[object Number]":return+a!==+a?+b!==+b:0===+a?1/+a===1/b:+a===+b;case"[object Date]":case"[object Boolean]":return+a===+b}var f="[object Array]"===e;if(!f){if("object"!=typeof a||"object"!=typeof b)return!1;var g=a.constructor,h=b.constructor;if(g!==h&&!(u.isFunction(g)&&g instanceof g&&u.isFunction(h)&&h instanceof h)&&"constructor"in a&&"constructor"in b)return!1}c=c||[],d=d||[];for(var i=c.length;i--;)if(c[i]===a)return d[i]===b;if(c.push(a),d.push(b),f){if(i=a.length,i!==b.length)return!1;for(;i--;)if(!I(a[i],b[i],c,d))return!1}else{var j,k=u.keys(a);if(i=k.length,u.keys(b).length!==i)return!1;for(;i--;)if(j=k[i],!u.has(b,j)||!I(a[j],b[j],c,d))return!1}return c.pop(),d.pop(),!0};u.isEqual=function(a,b){return I(a,b)},u.isEmpty=function(a){return null==a?!0:C(a)&&(u.isArray(a)||u.isString(a)||u.isArguments(a))?0===a.length:0===u.keys(a).length},u.isElement=function(a){return!(!a||1!==a.nodeType)},u.isArray=p||function(a){return"[object Array]"===n.call(a)},u.isObject=function(a){var b=typeof a;return"function"===b||"object"===b&&!!a},u.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(a){u["is"+a]=function(b){return n.call(b)==="[object "+a+"]"}}),u.isArguments(arguments)||(u.isArguments=function(a){return u.has(a,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(u.isFunction=function(a){return"function"==typeof a||!1}),u.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},u.isNaN=function(a){return u.isNumber(a)&&a!==+a},u.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"===n.call(a)},u.isNull=function(a){return null===a},u.isUndefined=function(a){return void 0===a},u.has=function(a,b){return null!=a&&o.call(a,b)},u.noConflict=function(){return g._=h,this},u.identity=function(a){return a},u.constant=function(a){return function(){return a}},u.noop=function(){},u.property=z,u.propertyOf=function(a){return null==a?function(){}:function(b){return a[b]}},u.matcher=u.matches=function(a){return a=u.extendOwn({},a),function(b){return u.isMatch(b,a)}},u.times=function(a,b,c){var d=Array(Math.max(0,a));b=v(b,c,1);for(var e=0;a>e;e++)d[e]=b(e);return d},u.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))},u.now=Date.now||function(){return(new Date).getTime()};var J={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},K=u.invert(J),L=function(a){var b=function(b){return a[b]},c="(?:"+u.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}};u.escape=L(J),u.unescape=L(K),u.result=function(a,b,c){var d=null==a?void 0:a[b];return void 0===d&&(d=c),u.isFunction(d)?d.call(a):d};var M=0;u.uniqueId=function(a){var b=++M+"";return a?a+b:b},u.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var N=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},P=/\\|'|\r|\n|\u2028|\u2029/g,Q=function(a){return"\\"+O[a]};u.template=function(a,b,c){!b&&c&&(b=c),b=u.defaults({},b,u.templateSettings);var d=RegExp([(b.escape||N).source,(b.interpolate||N).source,(b.evaluate||N).source].join("|")+"|$","g"),e=0,f="__p+='";a.replace(d,function(b,c,d,g,h){return f+=a.slice(e,h).replace(P,Q),e=h+b.length,c?f+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'":d?f+="'+\n((__t=("+d+"))==null?'':__t)+\n'":g&&(f+="';\n"+g+"\n__p+='"),b}),f+="';\n",b.variable||(f="with(obj||{}){\n"+f+"}\n"),f="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+f+"return __p;\n";try{var g=new Function(b.variable||"obj","_",f)}catch(h){throw h.source=f,h}var i=function(a){return g.call(this,a,u)},j=b.variable||"obj";return i.source="function("+j+"){\n"+f+"}",i},u.chain=function(a){var b=u(a);return b._chain=!0,b};var R=function(a,b){return a._chain?u(b).chain():b};u.mixin=function(a){u.each(u.functions(a),function(b){var c=u[b]=a[b];u.prototype[b]=function(){var a=[this._wrapped];return l.apply(a,arguments),R(this,c.apply(u,a))}})},u.mixin(u),u.each(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=i[a];u.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!==a&&"splice"!==a||0!==c.length||delete c[0],R(this,c)}}),u.each(["concat","join","slice"],function(a){var b=i[a];u.prototype[a]=function(){return R(this,b.apply(this._wrapped,arguments))}}),u.prototype.value=function(){return this._wrapped},u.prototype.valueOf=u.prototype.toJSON=u.prototype.value,u.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return u})}).call(this)}),module.define("org/arangodb/aql/explainer",function(a,b){function c(a){"use strict";["COLOR_RESET","COLOR_CYAN","COLOR_BLUE","COLOR_GREEN","COLOR_MAGENTA","COLOR_YELLOW","COLOR_RED","COLOR_WHITE","COLOR_BOLD_CYAN","COLOR_BOLD_BLUE","COLOR_BOLD_GREEN","COLOR_BOLD_MAGENTA","COLOR_BOLD_YELLOW","COLOR_BOLD_RED","COLOR_BOLD_WHITE"].forEach(function(b){A[b]=a?y[b]:""})}function d(a){"use strict";return"`"+a+"`"}function e(a){"use strict";return A.COLOR_CYAN+a+A.COLOR_RESET}function f(a){"use strict";return A.COLOR_BLUE+a+A.COLOR_RESET}function g(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function h(a){"use strict";return"#"===a[0]?A.COLOR_MAGENTA+a+A.COLOR_RESET:A.COLOR_YELLOW+a+A.COLOR_RESET}function i(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function j(a){"use strict";return A.COLOR_RED+a+A.COLOR_RESET}function k(a){"use strict";return"`"+A.COLOR_YELLOW+a+A.COLOR_RESET+"`"}function l(a){"use strict";return A.COLOR_MAGENTA+a+A.COLOR_RESET}function m(a){"use strict";return A.COLOR_BOLD_BLUE+a+A.COLOR_RESET}function n(a){"use strict";return 0>a&&(a=0),new Array(a).join(" ")}function o(a,b){"use strict";var c=".{1,"+b+"}(\\s|$)|\\S+?(\\s|$)";return a.match(new RegExp(c,"g")).join("\n")}function p(a){"use strict";B.appendLine(m("Query string:")),B.appendLine(" "+g(o(a,100).replace(/\n+/g,"\n ",a))),B.appendLine()}function q(a){"use strict";if(void 0!==a){B.appendLine(m("Write query options:"));var b=Object.keys(a),c="Option".length;b.forEach(function(a){a.length>c&&(c=a.length)}),B.appendLine(" "+l("Option")+n(1+c-"Option".length)+" "+l("Value")),b.forEach(function(b){B.appendLine(" "+e(b)+n(1+c-b.length)+" "+g(JSON.stringify(a[b])))}),B.appendLine()}}function r(a){"use strict";if(B.appendLine(m("Optimization rules applied:")),0===a.length)B.appendLine(" "+g("none"));else{var b=String("Id").length;B.appendLine(" "+n(1+b-String("Id").length)+l("Id")+" "+l("RuleName"));for(var c=0;cb&&(b=e),e=a.type.length,e>o&&(o=e),e=a.fields.map(d).join(", ").length,e>q&&(q=e),e=a.collection.length,e>c&&(c=e)});var r=" "+n(1+b-String("Id").length)+l("Id")+" "+l("Type")+n(1+o-"Type".length)+" "+l("Collection")+n(1+c-"Collection".length)+" "+l("Unique")+n(1+f-"Unique".length)+" "+l("Sparse")+n(1+i-"Sparse".length)+" "+l("Selectivity Est.")+" "+l("Fields")+n(1+q-"Fields".length)+" "+l("Ranges");B.appendLine(r);for(var s=0;sv&&(v=String(a.id).length),String(a.type).length>u&&(u=String(a.type).length),String(a.estimatedNrItems).length>w&&(w=String(a.estimatedNrItems).length)})};y(x.nodes,0);var z,A={},C={},D={},E=[],F=!0,G=function(a){return/^[0-9_]/.test(a.name)?h("#"+a.name):(C.hasOwnProperty(a.id)&&(D[a.name]=C[a.id]),h(a.name))},H=function(a){switch(F=F&&-1!==["value","object","object element","array"].indexOf(a.type),a.type){case"reference":if(A.hasOwnProperty(a.name)){var b=A[a.name];if(delete A[a.name],Array.isArray(b)){var c=H(b[1])+"["+new Array(b[0]+1).join("*");return"no-op"!==b[2].type&&(c+=" "+e("FILTER")+" "+H(b[2])),"no-op"!==b[3].type&&(c+=" "+e("LIMIT ")+" "+H(b[3])),"no-op"!==b[4].type&&(c+=" "+e("RETURN ")+" "+H(b[4])),c+="]"}return H(b)+"[*]"}return G(a);case"collection":return j(a.name)+" "+f("/* all collection documents */");case"value":return g(JSON.stringify(a.value));case"object":return a.hasOwnProperty("subNodes")?"{ "+a.subNodes.map(H).join(", ")+" }":"{ }";case"object element":return g(JSON.stringify(a.name))+" : "+H(a.subNodes[0]);case"calculated object element":return"[ "+H(a.subNodes[0])+" ] : "+H(a.subNodes[1]);case"array":return a.hasOwnProperty("subNodes")?"[ "+a.subNodes.map(H).join(", ")+" ]":"[ ]";case"unary not":return"! "+H(a.subNodes[0]);case"unary plus":return"+ "+H(a.subNodes[0]);case"unary minus":return"- "+H(a.subNodes[0]);case"array limit":return H(a.subNodes[0])+", "+H(a.subNodes[1]);case"attribute access":return H(a.subNodes[0])+"."+k(a.name);case"indexed access":return H(a.subNodes[0])+"["+H(a.subNodes[1])+"]";case"range":return H(a.subNodes[0])+" .. "+H(a.subNodes[1])+" "+f("/* range */");case"expand":case"expansion":return a.subNodes.length>2?A[a.subNodes[0].subNodes[0].name]=[a.levels,a.subNodes[0].subNodes[1],a.subNodes[2],a.subNodes[3],a.subNodes[4]]:A[a.subNodes[0].subNodes[0].name]=a.subNodes[0].subNodes[1],H(a.subNodes[1]);case"verticalizer":return H(a.subNodes[0]);case"user function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+") "+f("/* user-defined function */");case"function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+")";case"plus":return H(a.subNodes[0])+" + "+H(a.subNodes[1]);case"minus":return H(a.subNodes[0])+" - "+H(a.subNodes[1]);case"times":return H(a.subNodes[0])+" * "+H(a.subNodes[1]);case"division":return H(a.subNodes[0])+" / "+H(a.subNodes[1]);case"modulus":return H(a.subNodes[0])+" % "+H(a.subNodes[1]);case"compare not in":return H(a.subNodes[0])+" not in "+H(a.subNodes[1]);case"compare in":return H(a.subNodes[0])+" in "+H(a.subNodes[1]);case"compare ==":return H(a.subNodes[0])+" == "+H(a.subNodes[1]);case"compare !=":return H(a.subNodes[0])+" != "+H(a.subNodes[1]);case"compare >":return H(a.subNodes[0])+" > "+H(a.subNodes[1]);case"compare >=":return H(a.subNodes[0])+" >= "+H(a.subNodes[1]);case"compare <":return H(a.subNodes[0])+" < "+H(a.subNodes[1]);case"compare <=":return H(a.subNodes[0])+" <= "+H(a.subNodes[1]);case"logical or":return H(a.subNodes[0])+" || "+H(a.subNodes[1]);case"logical and":return H(a.subNodes[0])+" && "+H(a.subNodes[1]);case"ternary":return H(a.subNodes[0])+" ? "+H(a.subNodes[1])+" : "+H(a.subNodes[2]);default:return"unhandled node type ("+a.type+")"}},I=function(a,b,c){var d=c.isConstant?g(JSON.stringify(c.bound)):H(c.bound);return k(a)+" "+b[c.include?1:0]+" "+d},J=function(a){var b=[];return a.forEach(function(a){var c=a.attr;a.lowConst.hasOwnProperty("bound")&&a.highConst.hasOwnProperty("bound")&&JSON.stringify(a.lowConst.bound)===JSON.stringify(a.highConst.bound)&&(a.equality=!0),a.equality?a.lowConst.hasOwnProperty("bound")?b.push(I(c,["==","=="],a.lowConst)):a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,["==","=="],a))}):(a.lowConst.hasOwnProperty("bound")&&b.push(I(c,[">",">="],a.lowConst)),a.highConst.hasOwnProperty("bound")&&b.push(I(c,["<","<="],a.highConst)),a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,[">",">="],a))}),a.hasOwnProperty("highs")&&a.highs.forEach(function(a){b.push(I(c,["<","<="],a))}))}),b.length>1?"("+b.join(" && ")+")":b[0]},K=function(a){switch(a.type){case"SingletonNode":return e("ROOT");case"NoResultsNode":return e("EMPTY")+" "+f("/* empty result set */");case"EnumerateCollectionNode":return C[a.outVariable.id]=a.collection,e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* full collection scan"+(a.random?", random order":"")+" */");case"EnumerateListNode":return e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+G(a.inVariable)+" "+f("/* list iteration */");case"IndexRangeNode":C[a.outVariable.id]=a.collection;var b=a.index;return b.ranges=a.ranges.map(J).join(" || "),b.collection=a.collection,b.node=a.id,E.push(b),e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* "+(a.reverse?"reverse ":"")+a.index.type+" index scan */");case"CalculationNode":return e("LET")+" "+G(a.outVariable)+" = "+H(a.expression)+" "+f("/* "+a.expressionType+" expression */");case"FilterNode":return e("FILTER")+" "+G(a.inVariable);case"AggregateNode":return e("COLLECT")+" "+a.aggregates.map(function(a){return G(a.outVariable)+" = "+G(a.inVariable)}).join(", ")+(a.count?" "+e("WITH COUNT"):"")+(a.outVariable?" "+e("INTO")+" "+G(a.outVariable):"")+(a.keepVariables?" "+e("KEEP")+" "+a.keepVariables.map(function(a){return G(a)}).join(", "):"")+" "+f("/* "+a.aggregationOptions.method+"*/");case"SortNode":return e("SORT")+" "+a.elements.map(function(a){return G(a.inVariable)+" "+e(a.ascending?"ASC":"DESC")}).join(", ");case"LimitNode":return e("LIMIT")+" "+g(JSON.stringify(a.offset))+", "+g(JSON.stringify(a.limit));case"ReturnNode":return e("RETURN")+" "+G(a.inVariable);case"SubqueryNode":return e("LET")+" "+G(a.outVariable)+" = ... "+f("/* subquery */");case"InsertNode":return z=a.modificationFlags,e("INSERT")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"UpdateNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("UPDATE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("UPDATE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"ReplaceNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("REPLACE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("REPLACE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"UpsertNode":return z=a.modificationFlags,e("UPSERT")+" "+G(a.inDocVariable)+" "+e("INSERT")+" "+G(a.insertVariable)+" "+e(a.isReplace?"REPLACE":"UPDATE")+" "+G(a.updateVariable)+" "+e("IN")+" "+j(a.collection);case"RemoveNode":return z=a.modificationFlags,e("REMOVE")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"RemoteNode":return e("REMOTE");case"DistributeNode":return e("DISTRIBUTE");case"ScatterNode":return e("SCATTER");case"GatherNode":return e("GATHER")}return"unhandled node type ("+a.type+")"},L=0,M=[],N=function(a,b){return n(1+a+a)+(b?"* ":"- ")},O=function(a){D={},F=!0,"SubqueryNode"===a.type&&M.push(L)},P=function(a){-1!==["EnumerateCollectionNode","EnumerateListNode","IndexRangeNode","SubqueryNode"].indexOf(a.type)?L++:"ReturnNode"===a.type&&M.length>0?L=M.pop():"SingletonNode"===a.type&&L++},Q=function(){return F?" "+f("/* const assignment */"):""},R=function(){var a=[];for(var b in D)D.hasOwnProperty(b)&&a.push(h(b)+" : "+j(D[b]));return a.length>0?" "+f("/* collections used:")+" "+a.join(", ")+" "+f("*/"):""},S=function(a){O(a);var b=" "+n(1+v-String(a.id).length)+h(a.id)+" "+e(a.type)+n(1+u-String(a.type).length)+" "+n(1+w-String(a.estimatedNrItems).length)+g(a.estimatedNrItems)+" "+N(L,"SingletonNode"===a.type)+K(a);"CalculationNode"===a.type&&(b+=R()+Q()),B.appendLine(b),P(a)};p(a),B.appendLine(m("Execution plan:"));var T=" "+n(1+v-String("Id").length)+l("Id")+" "+l("NodeType")+n(1+u-String("NodeType").length)+" "+n(1+w-String("Est.").length)+l("Est.")+" "+l("Comment");B.appendLine(T);for(var U=[o];U.length>0;){var V=U.pop(),W=c[V];S(W),d.hasOwnProperty(V)&&(U=U.concat(d[V])),"SubqueryNode"===W.type&&(U=U.concat([W.subquery.nodes[0].id]))}B.appendLine(),t(E),B.appendLine(),r(x.rules),q(z),s(b.warnings)}function v(a,b,d){"use strict";if("string"==typeof a&&(a={query:a}),!(a instanceof Object))throw"ArangoStatement needs initial data";b=b||{},c(void 0===b.colors?!0:b.colors);var e=w._createStatement(a),f=e.explain(b);return B.clearOutput(),u(a.query,f,!0),void 0===d||d?void z(B.getOutput()):B.getOutput()}var w=require("org/arangodb").db,x=require("internal"),y=x.COLORS,z=x.print,A={};"function"==typeof x.printBrowser&&(z=x.printBrowser);var B={output:"",appendLine:function(a){a?this.output+=a+"\n":this.output+="\n"},getOutput:function(){return this.output},clearOutput:function(){this.output=""}};a.explain=v}),module.define("org/arangodb/aql/functions",function(a,b){var c=require("internal"),d=require("org/arangodb"),e=d.db,f=d.ArangoError,g=function(){"use strict";var a=e._collection("_aqlfunctions");if(null===a){var b=new f;throw b.errorNum=d.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code,b.errorMessage="collection '_aqlfunctions' not found",b}return a},h=function(a){"use strict";var b=[];if(null!==a&&void 0!==a&&a.length>0){var c=a.toUpperCase();a.length>1&&"::"!==a.substr(a.length-2,2)&&(c+="::"),g().toArray().forEach(function(a){a.name.toUpperCase().substr(0,c.length)===c&&b.push(a)})}else b=g().toArray();return b},i=function(a){"use strict";if("string"!=typeof a||!a.match(/^[a-zA-Z0-9_]+(::[a-zA-Z0-9_]+)+$/)||"_"===a.substr(0,1)){var b=new f;throw b.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.code,b.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.message,b}},j=function(a,b){"use strict";if("function"==typeof a&&(a=String(a)+"\n"),"string"==typeof a){if(a="("+a+"\n)",!c.parse)return a;try{if(c.parse(a,b))return a}catch(e){}}var g=new f;throw g.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,g.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,g},k=function(a){"use strict";var b=null;i(a);try{b=g().document(a.toUpperCase())}catch(e){}if(null===b){var h=new f;throw h.errorNum=d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.code,h.errorMessage=c.sprintf(d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.message,a),h}return g().remove(b._id),c.reloadAqlFunctions(),!0},l=function(a){"use strict";if(0===a.length){var b=new f;throw b.errorNum=d.errors.ERROR_BAD_PARAMETER.code,b.errorMessage=d.errors.ERROR_BAD_PARAMETER.message,b}var e=0;return h(a).forEach(function(a){g().remove(a._id),e++}),e>0&&c.reloadAqlFunctions(),e},m=function(a,b,h){i(a),b=j(b,a);var k,l="(function() { var callback = "+b+"; return callback; })()";try{if(c&&c.hasOwnProperty("executeScript")){var m=c.executeScript(l,void 0,"(user function "+a+")");if("function"!=typeof m)throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message+": code must be contained in function",k}}catch(n){throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,k}var o=e._executeTransaction({collections:{write:g().name()},action:function(a){var b=!1,c=require("internal").db._collection(a.collection),d=a.name;try{var e=c.document(d.toUpperCase());null!==e&&(c.remove(e._key),b=!0)}catch(f){}var g={_key:d.toUpperCase(),name:d,code:a.code,isDeterministic:a.isDeterministic||!1};return c.save(g),b},params:{name:a,code:b,isDeterministic:h,collection:g().name()}});return c.reloadAqlFunctions(),o},n=function(a){"use strict";var b=[];return h(a).forEach(function(a){b.push({name:a.name,code:a.code.substr(1,a.code.length-2).trim()})}),b};a.unregister=k,a.unregisterGroup=l,a.register=m,a.toArray=n}),module.define("org/arangodb/aql/queries",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh");a.clearSlow=function(){var a=c.db,b=a._connection.DELETE("/_api/query/slow","");return d.checkRequestResult(b),b},a.slow=function(){var a=c.db,b=a._connection.GET("/_api/query/slow","");return d.checkRequestResult(b),b},a.current=function(){var a=c.db,b=a._connection.GET("/_api/query/current","");return d.checkRequestResult(b),b},a.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/query/properties"):e._connection.PUT("/_api/query/properties",JSON.stringify(a)),d.checkRequestResult(b),b},a.kill=function(a){"object"==typeof a&&a.hasOwnProperty("id")&&(a=a.id);var b=c.db,e=b._connection.DELETE("/_api/query/"+encodeURIComponent(a),"");return d.checkRequestResult(e),e}}),module.define("org/arangodb/graph/traversal",function(a,b){function c(a){if(null===a||"object"!=typeof a)return a;var b;if(Array.isArray(a))b=[],a.forEach(function(a){b.push(c(a))});else if(a instanceof Object){if(J&&a instanceof J)return a;b={},Object.keys(a).forEach(function(d){b[d]=c(a[d])})}return b}function d(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function e(a){var b=a;"string"==typeof b&&(b=K._collection(b));var c="object"==typeof ArangoClusterComm;return c&&require("org/arangodb/cluster").isCoordinator()&&(c=!1),{edgeCollection:b,useBuiltIn:c,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from)},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.useBuiltIn?this.edgeCollection.EDGES(a._id):this.edgeCollection.edges(a._id)},getInEdges:function(a){return this.useBuiltIn?this.edgeCollection.INEDGES(a._id):this.edgeCollection.inEdges(a._id)},getOutEdges:function(a){return this.useBuiltIn?this.edgeCollection.OUTEDGES(a._id):this.edgeCollection.outEdges(a._id)}}}function f(a){var b=a;return"string"==typeof b&&(b=F._graph(b)),{graph:b,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from); -},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.graph._EDGES(a._id)},getInEdges:function(a){return this.graph._INEDGES(a._id)},getOutEdges:function(a){return this.graph._OUTEDGES(a._id)}}}function g(a){return{graph:new E.Graph(a),getVertexId:function(a){return a.getId()},getPeerVertex:function(a,b){return a.getPeerVertex(b)},getInVertex:function(a){return a.getInVertex()},getOutVertex:function(a){return a.getOutVertex()},getEdgeId:function(a){return a.getId()},getEdgeFrom:function(a){return a._properties._from},getEdgeTo:function(a){return a._properties._to},getLabel:function(a){return a.getLabel()},getAllEdges:function(a){return a.edges()},getInEdges:function(a){return a.inbound()},getOutEdges:function(a){return a.outbound()}}}function h(a,b,c){var d,e=a.datasource,f=[],g=e.getOutEdges(b);return g.length>1&&a.sort&&g.sort(a.sort),d=a.buildVertices?a.expandFilter?function(b){try{var d=e.getInVertex(b);a.expandFilter(a,d,b,c)&&f.push({edge:b,vertex:d})}catch(g){}}:function(a){try{var b=e.getInVertex(a);f.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var d=e.getEdgeTo(b),g={_id:d,_key:d.substr(d.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&f.push({edge:b,vertex:g})}:function(a){var b=e.getEdgeTo(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};f.push({edge:a,vertex:c})},g.forEach(d),f}function i(a,b,c){var d=a.datasource,e=[],f=d.getInEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(b){try{var f=d.getOutVertex(b);a.expandFilter(a,f,b,c)&&e.push({edge:b,vertex:f})}catch(g){}}:function(a){try{var b=d.getOutVertex(a);e.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var f=d.getEdgeFrom(b),g={_id:f,_key:f.substr(f.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&e.push({edge:b,vertex:g})}:function(a){var b=d.getEdgeFrom(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};e.push({edge:a,vertex:c})},f.forEach(g),e}function j(a,b,c){var d=a.datasource,e=[],f=d.getAllEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(f){try{var g=d.getPeerVertex(f,b);a.expandFilter(a,g,f,c)&&e.push({edge:f,vertex:g})}catch(h){}}:function(a){try{var c=d.getPeerVertex(a,b);e.push({edge:a,vertex:c})}catch(f){}}:a.expandFilter?function(f){var g=d.getEdgeFrom(f);g===b._id&&(g=d.getEdgeTo(f));var h={_id:g,_key:g.substr(g.indexOf("/")+1)};a.expandFilter(a,h,f,c)&&e.push({edge:f,vertex:h})}:function(a){var c=d.getEdgeFrom(a);c===b._id&&(c=d.getEdgeTo(a));var f={_id:c,_key:c.substr(c.indexOf("/")+1)};e.push({edge:a,vertex:f})},f.forEach(g),e}function k(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=e.getOutEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getInVertex(h)})}return f}function l(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getInEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getOutVertex(h)})}return f}function m(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getAllEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getPeerVertex(h,b)})}return f}function n(a,b,d,e){b&&b.visited&&(b.visited.vertices&&b.visited.vertices.push(c(d)),b.visited.paths&&b.visited.paths.push(c(e)))}function o(a,b,c,d){b&&(b.hasOwnProperty("count")?++b.count:b.count=1)}function p(){}function q(){return""}function r(a,b,c){return c&&c.vertices&&c.vertices.length>a.maxDepth?D.PRUNE:void 0}function s(a,b,c){return c&&c.vertices&&c.vertices.length<=a.minDepth?D.EXCLUDE:void 0}function t(a,b,c){Array.isArray(a.matchingAttributes)||(a.matchingAttributes=[a.matchingAttributes]);var d=!1;a.matchingAttributes.forEach(function(a){var c=0,e=Object.keys(a);e.forEach(function(d){b[d]&&b[d]===a[d]&&c++}),c>0&&c===e.length&&(d=!0)});var e;return d||(e="exclude"),e}function u(a,b,c,d){var e=[];return a.forEach(function(a){var f=a(b,c,d);Array.isArray(f)||(f=[f]),e=e.concat(f)}),e}function v(a){function b(a){if(void 0!==a&&null!==a){var d=!1;if("string"==typeof a)a===D.EXCLUDE?(c.visit=!1,d=!0):a===D.PRUNE?(c.expand=!1,d=!0):""===a&&(d=!0);else if(Array.isArray(a)){var e;for(e=0;eb)break;d=a[b]}return c},run:function(a,b,c){for(var d=a.maxIterations,e=0,f=[{edge:null,vertex:c,parentIndex:-1}],g={edges:{},vertices:{}},h=0,i=1,j=x(a);1===i&&h=0;){var k,l=f[h],m=l.vertex,n=l.edge;if(e++>d){var o=new I;throw o.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,o.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,o}if(L(),null===l.visit||void 0===l.visit){if(l.visit=!1,k=this.createPath(f,h),a.uniqueness.vertices===D.UNIQUE_PATH&&(g.vertices=this.getPathItems(a.datasource.getVertexId,k.vertices)),a.uniqueness.edges===D.UNIQUE_PATH&&(g.edges=this.getPathItems(a.datasource.getEdgeId,k.edges)),!w(a,g,m,n)){h0;){if(e++>d){var l=new I;throw l.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,l.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,l}L();var m=f[f.length-1],n=m.vertex,o=m.edge;if(null===m.visit||void 0===m.visit){if(m.visit=!1,k&&(j.vertices===D.UNIQUE_PATH&&(h.vertices=this.getPathItems(a.datasource.getVertexId,g.vertices)),j.edges===D.UNIQUE_PATH&&(h.edges=this.getPathItems(a.datasource.getEdgeId,g.edges)),!w(a,h,n,o))){f.pop();continue}null!==o&&g.edges.push(o),g.vertices.push(n);var p=v(a.filter(a,n,g));if(a.order===D.PRE_ORDER&&p.visit?a.visitor(a,b,n,g):m.visit=p.visit||!1,p.expand){var q,r=a.expander(a,n,g);for(i&&r.reverse(),a.order===D.PRE_ORDER_EXPANDER&&p.visit&&a.visitor(a,b,n,g,r),q=0;q0&&g.edges.pop(),g.vertices.pop()}}}}function A(){return{nodes:{},requiresEndVertex:function(){return!0},makeNode:function(a){var b=a._id;return this.nodes.hasOwnProperty(b)||(this.nodes[b]={vertex:a,dist:1/0}),this.nodes[b]},vertexList:function(a){for(var b=[];a;)b.push(a),a=a.parent;return b},buildPath:function(a){for(var b={vertices:[a.vertex],edges:[]},c=a;c.parent;)b.vertices.unshift(c.parent.vertex),b.edges.unshift(c.parentEdge),c=c.parent;return b},run:function(a,b,c,d){var e=a.maxIterations,f=0,g=new H(function(a){return a.dist}),h=this.makeNode(c);for(h.dist=0,g.push(h);g.size()>0;){if(f++>e){var i=new I;throw i.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,i.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,i}L();var j,k,l=g.pop();if(l.vertex._id===d._id){var m=this.vertexList(l).reverse();for(k=m.length,j=0;k>j;++j)m[j].hide||a.visitor(a,b,m[j].vertex,this.buildPath(m[j]));return}if(!l.visited){if(l.dist===1/0)break;l.visited=!0;var n=this.buildPath(l),o=v(a.filter(a,l.vertex,n));if(o.visit||(l.hide=!0),o.expand){var p=l.dist,q=a.expander(a,l.vertex,n);for(k=q.length,j=0;k>j;++j){var r=this.makeNode(q[j].vertex);if(!r.visited){var s=q[j].edge,t=1;a.distance?t=a.distance(a,l.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(g++>f){var j=new I;throw j.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,j.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,j}var k,l,m=h.pop();if(e.hasOwnProperty(m.vertex._id)&&(delete e[m.vertex._id],a.visitor(a,b,m,this.buildPath(m)),d(e)))return;if(!m.visited){if(m.dist===1/0)break;m.visited=!0;var n=this.buildPath(m),o=v(a.filter(a,m.vertex,n));if(o.visit||(m.hide=!0),o.expand){var p=m.dist,q=a.expander(a,m.vertex,n);for(l=q.length,k=0;l>k;++k){var r=this.makeNode(q[k].vertex);if(!r.visited){var s=q[k].edge,t=1;a.distance?t=a.distance(a,m.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(f++>e){var h=new I;throw h.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,h.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,h}L();var i,j,k=g.pop();if(k.vertex._id===d._id){var l=this.vertexList(k);for(a.order!==D.PRE_ORDER&&l.reverse(),j=l.length,i=0;j>i;++i)a.visitor(a,b,l[i].vertex,this.buildPath(l[i]));return}k.closed=!0;var m=this.buildPath(k),n=a.expander(a,k.vertex,m);for(j=n.length,i=0;j>i;++i){var o=this.makeNode(n[i].vertex);if(!o.closed){var p=k.g+1,q=o.visited;if(!q||p0&&f.push(s),void 0!==a.maxDepth&&null!==a.maxDepth&&a.maxDepth>0&&f.push(r),Array.isArray(a.filter)||("function"==typeof a.filter?a.filter=[a.filter]:a.filter=[]),a.filter.forEach(function(a){if("function"!=typeof a)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid filter function",d;f.push(a)}),f.length>1?a.filter=function(a,b,c){return u(f,a,b,c)}:1===f.length?a.filter=f[0]:a.filter=q,"function"!=typeof a.expander&&(a.expander=b(a.expander,{outbound:h,inbound:i,any:j},"expander")),"function"!=typeof a.expander)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid expander function",d;if("object"!=typeof a.datasource)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid datasource",d;this.config=a},D.prototype.traverse=function(a,b,c){var d;if(d=this.config.strategy===D.ASTAR_SEARCH?C():this.config.strategy===D.DIJKSTRA_SEARCH?A():this.config.strategy===D.DIJKSTRA_SEARCH_MULTI?B():this.config.strategy===D.BREADTH_FIRST?y():z(),void 0===b||null===b||"object"!=typeof b){var e=new I;throw e.errorNum=G.errors.ERROR_BAD_PARAMETER.code,e.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid startVertex specified for traversal",e}if(d.requiresEndVertex()&&(void 0===c||null===c||"object"!=typeof c)){var f=new I;throw f.errorNum=G.errors.ERROR_BAD_PARAMETER.code,f.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid endVertex specified for traversal",f}try{d.run(this.config,a,b,c)}catch(g){if("object"!=typeof g||!g._intentionallyAborted)throw g}},D.UNIQUE_NONE=0,D.UNIQUE_PATH=1,D.UNIQUE_GLOBAL=2,D.BREADTH_FIRST=0,D.DEPTH_FIRST=1,D.ASTAR_SEARCH=2,D.DIJKSTRA_SEARCH=3,D.DIJKSTRA_SEARCH_MULTI=4,D.PRE_ORDER=0,D.POST_ORDER=1,D.PRE_ORDER_EXPANDER=2,D.FORWARD=0,D.BACKWARD=1,D.PRUNE="prune",D.EXCLUDE="exclude",a.collectionDatasourceFactory=e,a.generalGraphDatasourceFactory=f,a.graphDatasourceFactory=g,a.outboundExpander=h,a.inboundExpander=i,a.anyExpander=j,a.expandOutEdgesWithLabels=k,a.expandInEdgesWithLabels=l,a.expandEdgesWithLabels=m,a.trackingVisitor=n,a.countingVisitor=o,a.doNothingVisitor=p,a.visitAllFilter=q,a.maxDepthFilter=r,a.minDepthFilter=s,a.includeMatchingAttributesFilter=t,a.abortedException=N,a.Traverser=D}),module.define("org/arangodb/arango-collection-common",function(a,b){var c=require("org/arangodb/arango-collection").ArangoCollection,d=require("org/arangodb"),e=d.ArangoError,f=d.sprintf,g=d.db,h=require("org/arangodb/simple-query"),i=h.SimpleQueryAll,j=h.SimpleQueryByExample,k=h.SimpleQueryByCondition,l=h.SimpleQueryRange,m=h.SimpleQueryGeo,n=h.SimpleQueryNear,o=h.SimpleQueryWithin,p=h.SimpleQueryWithinRectangle,q=h.SimpleQueryFulltext;c.STATUS_CORRUPTED=0,c.STATUS_NEW_BORN=1,c.STATUS_UNLOADED=2,c.STATUS_LOADED=3,c.STATUS_UNLOADING=4,c.STATUS_DELETED=5,c.STATUS_LOADING=6,c.TYPE_DOCUMENT=2,c.TYPE_EDGE=3,c.prototype._PRINT=function(a){var b="unknown",d="unknown",e=this.name();switch(this.status()){case c.STATUS_NEW_BORN:b="new born";break;case c.STATUS_UNLOADED:b="unloaded";break;case c.STATUS_UNLOADING:b="unloading";break;case c.STATUS_LOADED:b="loaded";break;case c.STATUS_CORRUPTED:b="corrupted";break;case c.STATUS_DELETED:b="deleted"}switch(this.type()){case c.TYPE_DOCUMENT:d="document";break;case c.TYPE_EDGE:d="edge"}var f=require("internal").COLORS,g=a.useColor;a.output+="[ArangoCollection ",g&&(a.output+=f.COLOR_NUMBER),a.output+=this._id,g&&(a.output+=f.COLOR_RESET),a.output+=', "',g&&(a.output+=f.COLOR_STRING),a.output+=e||"unknown",g&&(a.output+=f.COLOR_RESET),a.output+='" (type '+d+", status "+b+")]"},c.prototype.toString=function(){return"[ArangoCollection: "+this._id+"]"},c.prototype.all=function(){return new i(this)},c.prototype.byExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c=1?h=this.all():(c=f("FOR d IN %s FILTER rand() >= @prob RETURN d",this.name()),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute());else{if("number"!=typeof k){var l=new e;throw l.errorNum=d.errors.ERROR_ILLEGAL_NUMBER.code,l.errorMessage="expecting a number, got "+String(k),l}j>=1?h=this.all().limit(k):(c=f("FOR d IN %s FILTER rand() >= @prob LIMIT %d RETURN d",this.name(),k),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute())}for(i=0;h.hasNext();){var m=h.next();a(m,i),i++}},c.prototype.removeByExample=function(a,b,c){throw"cannot call abstract removeByExample function"},c.prototype.replaceByExample=function(a,b,c,d){throw"cannot call abstract replaceByExample function"},c.prototype.updateByExample=function(a,b,c,d,e){throw"cannot call abstract updateExample function"}}),module.define("org/arangodb/arango-collection",function(a,b){function c(a,b){a.fields=[];var c,d=function(d){a.hasOwnProperty(d)||(a[d]=b[c][d])};for(c=0;c col = db.mycoll; \n > col = db._create("mycoll"); \n \nAdministration Functions: \n name() collection name \n status() status of the collection \n type() type of the collection \n truncate() delete all documents \n properties() show collection properties \n drop() delete a collection \n load() load a collection into memory \n unload() unload a collection from memory \n rename() renames a collection \n getIndexes() return defined indexes \n refresh() refreshes the status and name \n _help() this help \n \nDocument Functions: \n count() return number of documents \n save() create document and return handle \n document() get document by handle (_id or _key)\n replace(, , ) overwrite document \n update(, , , partially update document \n ) \n remove() delete document \n exists() checks whether a document exists \n first() first inserted/updated document \n last() last inserted/updated document \n \nAttributes: \n _database database object \n _id collection identifier ';d.prototype._help=function(){e.print(h)},d.prototype.name=function(){return null===this._name&&this.refresh(),this._name},d.prototype.status=function(){var a;return null===this._status&&this.refresh(),a=this._status,this._status===d.STATUS_UNLOADING&&(this._status=null),a},d.prototype.type=function(){return null===this._type&&this.refresh(),this._type},d.prototype.properties=function(a){var b,c,d={doCompact:!0,journalSize:!0,isSystem:!1,isVolatile:!1,waitForSync:!0,shardKeys:!1,numberOfShards:!1,keyOptions:!1,indexBuckets:!0};if(void 0===a)c=this._database._connection.GET(this._baseurl("properties")),f.checkRequestResult(c);else{var e={};for(b in d)d.hasOwnProperty(b)&&d[b]&&a.hasOwnProperty(b)&&(e[b]=a[b]);c=this._database._connection.PUT(this._baseurl("properties"),JSON.stringify(e)),f.checkRequestResult(c)}var g={};for(b in d)d.hasOwnProperty(b)&&c.hasOwnProperty(b)&&void 0!==c[b]&&(g[b]=c[b]);return g},d.prototype.rotate=function(){var a=this._database._connection.PUT(this._baseurl("rotate"),"");return f.checkRequestResult(a),a.result},d.prototype.figures=function(){var a=this._database._connection.GET(this._baseurl("figures"));return f.checkRequestResult(a),a.figures},d.prototype.checksum=function(a,b){var c="";a&&(c+="?withRevisions=true"),b&&(c+=(""===c?"?":"&")+"withData=true");var d=this._database._connection.GET(this._baseurl("checksum")+c);return f.checkRequestResult(d),{checksum:d.checksum,revision:d.revision}},d.prototype.revision=function(){var a=this._database._connection.GET(this._baseurl("revision"));return f.checkRequestResult(a),a.revision},d.prototype.drop=function(){var a=this._database._connection.DELETE(this._baseurl());f.checkRequestResult(a),this._status=d.STATUS_DELETED;var b,c=this._database;for(b in c)if(c.hasOwnProperty(b)){var e=c[b];e instanceof d&&e.name()===this.name()&&delete c[b]}},d.prototype.truncate=function(){var a=this._database._connection.PUT(this._baseurl("truncate"),"");f.checkRequestResult(a),this._status=null},d.prototype.load=function(a){var b={count:!0};void 0!==a&&(b.count=a);var c=this._database._connection.PUT(this._baseurl("load"),JSON.stringify(b));f.checkRequestResult(c),this._status=null},d.prototype.unload=function(){var a=this._database._connection.PUT(this._baseurl("unload"),"");f.checkRequestResult(a),this._status=null},d.prototype.rename=function(a){var b={name:a},c=this._database._connection.PUT(this._baseurl("rename"),JSON.stringify(b));f.checkRequestResult(c),delete this._database[this._name],this._database[a]=this,this._status=null,this._name=null},d.prototype.refresh=function(){var a=this._database._connection.GET(this._database._collectionurl(this._id)+"?useId=true");f.checkRequestResult(a),this._name=a.name,this._status=a.status,this._type=a.type},d.prototype.getIndexes=function(a){var b=this._database._connection.GET(this._indexurl()+"&withStats="+(a||!1));return f.checkRequestResult(b),b.indexes},d.prototype.index=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.GET(this._database._indexurl(a,this.name()));return f.checkRequestResult(b),b},d.prototype.dropIndex=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.DELETE(this._database._indexurl(a,this.name()));return null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_INDEX_NOT_FOUND.code?!1:(f.checkRequestResult(b),!0)},d.prototype.ensureCapConstraint=function(a,b){var c={type:"cap",size:a||void 0,byteSize:b||void 0},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueSkiplist=function(){var a=c({type:"skiplist",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureSkiplist=function(){var a=c({type:"skiplist",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureFulltextIndex=function(a,b){var c={type:"fulltext",minLength:b||void 0,fields:[a]},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueConstraint=function(){var a=c({type:"hash",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureHashIndex=function(){var a=c({type:"hash",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureGeoIndex=function(a,b){var c;if("string"!=typeof a)throw"usage: ensureGeoIndex(, ) or ensureGeoIndex([, ])";c="boolean"==typeof b?{type:"geo",fields:[a],geoJson:b}:void 0===b?{type:"geo",fields:[a],geoJson:!1}:{type:"geo",fields:[a,b],geoJson:!1};var d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureGeoConstraint=function(a,b){return this.ensureGeoIndex(a,b)},d.prototype.ensureIndex=function(a){if("object"!=typeof a||Array.isArray(a))throw"usage: ensureIndex()";var b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.count=function(){var a=this._database._connection.GET(this._baseurl("count"));return f.checkRequestResult(a),a.count},d.prototype.document=function(a){var b,c=null;if(a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.GET(this._documenturl(a)):this._database._connection.GET(this._documenturl(a),{"if-match":JSON.stringify(c)}),null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code)throw new g(b);return f.checkRequestResult(b),b},d.prototype.exists=function(a){var b,c=null;if(void 0===a||null===a)throw new g({errorNum:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,errorMessage:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message});return a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.HEAD(this._documenturl(a)):this._database._connection.HEAD(this._documenturl(a),{"if-match":JSON.stringify(c)}),null===b||b.error!==!0||b.errorNum!==e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_PRECONDITION_FAILED.code?(f.checkRequestResult(b),!0):!1},d.prototype.any=function(){var a=this._database._connection.PUT(this._prefixurl("/_api/simple/any"),JSON.stringify({collection:this._name}));return f.checkRequestResult(a),a.document},d.prototype.firstExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c) get collection by identifier/name \n _create(, ) creates a new collection \n _createEdgeCollection() creates a new edge collection \n _drop() delete a collection \n \nDocument Functions: \n _document() get document by handle (_id) \n _replace(, , ) overwrite document \n _update(, , , partially update document \n ) \n _remove() delete document \n _exists() checks whether a document exists \n _truncate() delete all documents \n \nDatabase Management Functions: \n _createDatabase() creates a new database \n _dropDatabase() drops an existing database \n _useDatabase() switches into an existing database\n _drop() delete a collection \n _name() name of the current database \n \nQuery / Transaction Functions: \n _executeTransaction() execute transaction \n _query() execute AQL query \n _createStatement() create and return AQL query ";c.prototype._help=function(){e.print(i)},c.prototype.toString=function(){return'[object ArangoDatabase "'+this._name()+'"]'},c.prototype._collections=function(){var a=this._connection.GET(this._collectionurl());if(f.checkRequestResult(a),void 0!==a.collections){var b,c=a.collections,d=[];for(b=0;b)"});if(!a.collections||"object"!=typeof a.collections)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid collections definition for transaction"});if(!a.action||"string"!=typeof a.action&&"function"!=typeof a.action)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid action definition for transaction"});"function"==typeof a.action&&(a.action=String(a.action));var b=this._connection.POST("/_api/transaction",JSON.stringify(a));if(null!==b&&b.error===!0)throw new g(b);return f.checkRequestResult(b),b.result}}),module.define("org/arangodb/arango-query-cursor",function(a,b){function c(a,b){this._database=a,this._dbName=a._name(),this.data=b,this._hasNext=!1,this._hasMore=!1,this._pos=0,this._count=0,this._total=0,void 0!==b.result&&(this._count=b.result.length,this._pos0){if(a)d.print(b);else{var f=d.startCaptureMode();d.print(b),e+="\n\n"+d.stopCaptureMode(f)}this.hasNext()&&(e+="\ntype 'more' to show more documents\n",more=this)}return a||(d.print(e),e=""),e},c.prototype.toArray=function(){for(var a=[];this.hasNext();)a.push(this.next());return a};var f=e.createHelpHeadline("ArangoQueryCursor help")+'ArangoQueryCursor constructor: \n > cursor = stmt.execute() \nFunctions: \n hasNext() returns true if there are \n more results to fetch \n next() returns the next document \n toArray() returns all data from the cursor\n _help() this help \nAttributes: \n _database database object \nExample: \n > stmt = db._createStatement({ "query": "FOR c IN coll RETURN c" })\n > cursor = stmt.execute() \n > documents = cursor.toArray() \n > cursor = stmt.execute() \n > while (cursor.hasNext()) { print(cursor.next()) } ';c.prototype._help=function(){d.print(f)},c.prototype.hasNext=function(){return this._hasNext},c.prototype.next=function(){if(!this._hasNext)throw"No more results";var a=this.data.result[this._pos];if(this._pos++,this._pos===this._count&&(this._hasNext=!1,this._pos=0,this._hasMore&&this.data.id)){this._hasMore=!1;var b=this._database._connection.PUT(this._baseurl(),"");e.checkRequestResult(b),this.data=b,this._count=b.result.length,this._pos0&&(this._batchSize=b)},c.prototype.setOptions=function(a){this._options=a},c.prototype.setQuery=function(a){this._query=a&&"function"==typeof a.toAQL?a.toAQL():a},c.prototype.parse=function(){throw"cannot call abstract method parse()"},c.prototype.explain=function(){throw"cannot call abstract method explain()"},c.prototype.execute=function(){throw"cannot call abstract method execute()"},a.ArangoStatement=c}),module.define("org/arangodb/arango-statement",function(a,b){var c=require("internal"),d=require("org/arangodb/arangosh"),e=require("org/arangodb/arango-statement-common").ArangoStatement,f=require("org/arangodb/arango-query-cursor").ArangoQueryCursor;e.prototype.toString=function(){return d.getIdString(this,"ArangoStatement")};var g=d.createHelpHeadline("ArangoStatement help")+'Create an AQL query: \n > stmt = new ArangoStatement(db, { "query": "FOR..." }) \n > stmt = db._createStatement({ "query": "FOR..." }) \nSet query options: \n > stmt.setBatchSize() set the max. number of results \n to be transferred per roundtrip \n > stmt.setCount() set count flag (return number of\n results in "count" attribute) \nGet query options: \n > stmt.setBatchSize() return the max. number of results\n to be transferred per roundtrip \n > stmt.getCount() return count flag (return number\n of results in "count" attribute)\n > stmt.getQuery() return query string \n results in "count" attribute) \nBind parameters to a query: \n > stmt.bind(, ) bind single variable \n > stmt.bind() bind multiple variables \nExecute query: \n > cursor = stmt.execute() returns a cursor \nGet all results in an array: \n > docs = cursor.toArray() \nOr loop over the result set: \n > while (cursor.hasNext()) { print(cursor.next()) } ';e.prototype._help=function(){c.print(g)},e.prototype.parse=function(){var a={query:this._query},b=this._database._connection.POST("/_api/query",JSON.stringify(a));d.checkRequestResult(b);var c={bindVars:b.bindVars,collections:b.collections,ast:b.ast};return c},e.prototype.explain=function(a){var b=this._options||{};"object"==typeof b&&"object"==typeof a&&Object.keys(a).forEach(function(c){b[c]=a[c]});var c={query:this._query,bindVars:this._bindVars,options:b},e=this._database._connection.POST("/_api/explain",JSON.stringify(c));return d.checkRequestResult(e),b&&b.allPlans?{plans:e.plans,warnings:e.warnings,stats:e.stats}:{plan:e.plan,warnings:e.warnings,stats:e.stats}},e.prototype.execute=function(){var a={query:this._query,count:this._doCount,bindVars:this._bindVars};this._batchSize&&(a.batchSize=this._batchSize),this._options&&(a.options=this._options),void 0!==this._cache&&(a.cache=this._cache);var b=this._database._connection.POST("/_api/cursor",JSON.stringify(a));return d.checkRequestResult(b),new f(this._database,b)},a.ArangoStatement=e}),module.define("org/arangodb/arangosh",function(a,b){var c=require("internal");a.getIdString=function(a,b){var c="[object "+b;return a._id?c+=":"+a._id:a.data&&a.data._id&&(c+=":"+a.data._id),c+="]"},a.createHelpHeadline=function(a){var b,c="",d=Math.abs(78-a.length)/2;for(b=0;d>b;++b)c+="-";return"\n"+c+" "+a+" "+c+"\n"};var d=require("org/arangodb"),e=d.ArangoError;a.checkRequestResult=function(a){if(void 0===a)throw new e({error:!0,code:500,errorNum:d.ERROR_INTERNAL,errorMessage:"Unknown error. Request result is empty"});if(a.hasOwnProperty("error")){if(a.error){if(a.errorNum===d.ERROR_TYPE_ERROR)throw new TypeError(a.errorMessage);throw new e(a)}delete a.error}return a},a.HELP=a.createHelpHeadline("Help")+"Predefined objects: \n arango: ArangoConnection \n db: ArangoDatabase \n fm: FoxxManager \nExamples: \n > db._collections() list all collections \n > db._create() create a new collection \n > db._drop() drop a collection \n > db..toArray() list all documents \n > id = db..save({ ... }) save a document \n > db..remove(<_id>) delete a document \n > db..document(<_id>) retrieve a document \n > db..replace(<_id>, {...}) overwrite a document \n > db..update(<_id>, {...}) partially update a document\n > db..exists(<_id>) check if document exists \n > db._query().toArray() execute an AQL query \n > db._useDatabase() switch database \n > db._createDatabase() create a new database \n > db._listDatabases() list existing databases \n > help show help pages \n > exit \nNote: collection names and statuses may be cached in arangosh. \nTo refresh the list of collections and their statuses, issue: \n > db._collections(); \n \n"+(c.printBrowser?"To cancel the current prompt, press CTRL + z. \n \nPlease note that all variables defined with the var keyword will \ndisappear when the command is finished. To introduce variables that\nare persisting until the next command, omit the var keyword. \n\nType 'tutorial' for a tutorial or 'help' to see common examples":"To cancel the current prompt, press CTRL + d. \n"),a.helpExtended=a.createHelpHeadline("More help")+"Pager: \n > stop_pager() stop the pager output \n > start_pager() start the pager \nPretty printing: \n > stop_pretty_print() stop pretty printing \n > start_pretty_print() start pretty printing \nColor output: \n > stop_color_print() stop color printing \n > start_color_print() start color printing \nPrint function: \n > print(x) std. print function \n > print_plain(x) print without prettifying \n and without colors \n > clear() clear screen "}),module.define("org/arangodb/general-graph",function(a,b){var c=require("org/arangodb"),d=require("internal"),e=c.ArangoCollection,f=c.ArangoError,g=c.db,h=c.errors,i=require("underscore"),j=function(a){return"string"==typeof a?[a]:i.clone(a)},k=function(a){return a?Array.isArray(a)&&0===a.length?!1:"string"==typeof a||Array.isArray(a)?!0:!1:!1},l=function(a,b,d){var h=g._collection(a),i=!1;if(null!==h||d){if(!(h instanceof e)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.code,j.errorMessage=a+c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.message, -j}}else h=b===e.TYPE_DOCUMENT?g._create(a):g._createEdgeCollection(a),i=!0;return i},m=function(a,b){var d={},h={};return a.forEach(function(a){if(!(a.hasOwnProperty("collection")&&a.hasOwnProperty("from")&&a.hasOwnProperty("to")&&Array.isArray(a.from)&&Array.isArray(a.to))){var i=new f;throw i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i}a.from.concat(a.to).forEach(function(a){l(a,e.TYPE_DOCUMENT,b),d[a]=g[a]}),l(a.collection,e.TYPE_EDGE,b),h[a.collection]=g[a.collection]}),[d,h]},n=function(){var a=g._graphs;if(null===a||void 0===a){var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.code,b.errorMessage=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.message,b}return a},o=function(a){return i.map(a,function(a){var b=a.collection;return b+=": [",b+=a.from.join(", "),b+="] -> [",b+=a.to.join(", "),b+="]"})},p=function(a){var b={};return i.each(i.functions(a),function(c){b[c]=function(){return a[c].apply(a,arguments)}}),b},q=function(a){if(void 0===a)return{};if("string"==typeof a)return{_id:a};if("object"==typeof a)return Array.isArray(a)?i.map(a,function(a){return"string"==typeof a?{_id:a}:a}):a;var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.code,b.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.message,b},r=function(a,b,d){var e=[],g=i.map(a,function(a){return a.name()});if(i.each(b,function(a){i.contains(g,a)||e.push(a)}),e.length>0){var h=new f;throw h.errorNum=c.errors.ERROR_BAD_PARAMETER.code,h.errorMessage=d+": "+e.join(" and ")+" are not known to the graph",h}return!0},s=function(a,b){this.query=a,b&&(this.type=b)};s.prototype.printQuery=function(){return this.query},s.prototype.isPathQuery=function(){return"path"===this.type},s.prototype.isPathVerticesQuery=function(){return"pathVertices"===this.type},s.prototype.isPathEdgesQuery=function(){return"pathEdges"===this.type},s.prototype.isEdgeQuery=function(){return"edge"===this.type},s.prototype.isVertexQuery=function(){return"vertex"===this.type},s.prototype.isNeighborQuery=function(){return"neighbor"===this.type},s.prototype.allowsRestrict=function(){return this.isEdgeQuery()||this.isVertexQuery()||this.isNeighborQuery()};var t=function(a){this.stack=[],this.callStack=[],this.bindVars={graphName:a.__name},this.graph=a,this.cursor=null,this.lastVar="",this._path=[],this._pathVertices=[],this._pathEdges=[],this._getPath=!1};t.prototype._addToPrint=function(a){var b=Array.prototype.slice.call(arguments);b.shift();var c={};c.name=a,b.length>0&&void 0!==b[0]?c.params=b:c.params=[],this.callStack.push(c)},t.prototype._PRINT=function(a){a.output="[ GraphAQL ",a.output+=this.graph.__name,i.each(this.callStack,function(b){a.prettyPrint&&(a.output+="\n"),a.output+=".",a.output+=b.name,a.output+="(";var c=0;for(c=0;c0&&(a.output+=", "),d.printRecursive(b.params[c],a);a.output+=")"}),a.output+=" ] "},t.prototype._clearCursor=function(){this.cursor&&(this.cursor.dispose(),this.cursor=null)},t.prototype._createCursor=function(){this.cursor||(this.cursor=this.execute())},t.prototype._edges=function(a,b){this._clearCursor(),this.options=b||{};var c=q(a),d="edges_"+this.stack.length,e="FOR "+d+" IN GRAPH_EDGES(@graphName";e+=this.getLastVar()?","+this.getLastVar():",{}",e+=",@options_"+this.stack.length+")",Array.isArray(c)||(c=[c]),this.options.edgeExamples=c,this.options.includeData=!0,this.bindVars["options_"+this.stack.length]=this.options;var f=new s(e,"edge");return this.stack.push(f),this.lastVar=d,this._path.push(d),this._pathEdges.push(d),this},t.prototype.edges=function(a){return this._addToPrint("edges",a),this._edges(a,{direction:"any"})},t.prototype.outEdges=function(a){return this._addToPrint("outEdges",a),this._edges(a,{direction:"outbound"})},t.prototype.inEdges=function(a){return this._addToPrint("inEdges",a),this._edges(a,{direction:"inbound"})},t.prototype._vertices=function(a,b,c){this._clearCursor(),this.options=b||{};var d=q(a),e="vertices_"+this.stack.length,f="FOR "+e+" IN GRAPH_VERTICES(@graphName,";if(void 0!==c)if(Array.isArray(c)){var g;for(f+="[",g=0;g0&&(f+=","),f+="MERGE(@vertexExample_"+this.stack.length+","+c[g]+")";f+="]"}else f+="MERGE(@vertexExample_"+this.stack.length+","+c+")";else f+="@vertexExample_"+this.stack.length;f+=",@options_"+this.stack.length+")",this.bindVars["vertexExample_"+this.stack.length]=d,this.bindVars["options_"+this.stack.length]=this.options;var h=new s(f,"vertex");return this.stack.push(h),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype.vertices=function(a){if(this._addToPrint("vertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,["{'_id': "+b+"._from}","{'_id': "+b+"._to}"])},t.prototype.fromVertices=function(a){if(this._addToPrint("fromVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._from}")},t.prototype.toVertices=function(a){if(this._addToPrint("toVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._to}")},t.prototype.getLastVar=function(){return""===this.lastVar?!1:this.lastVar},t.prototype.path=function(){this._clearCursor();var a=new s("","path");return this.stack.push(a),this},t.prototype.pathVertices=function(){this._clearCursor();var a=new s("","pathVertices");return this.stack.push(a),this},t.prototype.pathEdges=function(){this._clearCursor();var a=new s("","pathEdges");return this.stack.push(a),this},t.prototype.neighbors=function(a,b){this._addToPrint("neighbors",a,b);var c,d=q(a),e="neighbors_"+this.stack.length,f="FOR "+e+" IN GRAPH_NEIGHBORS(@graphName,"+this.getLastVar()+",@options_"+this.stack.length+")";c=b?i.clone(b):{},c.neighborExamples=d,c.includeData=!0,this.bindVars["options_"+this.stack.length]=c;var g=new s(f,"neighbor");return this.stack.push(g),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype._getLastRestrictableStatementInfo=function(){for(var a=this.stack.length-1;!this.stack[a].allowsRestrict();)a--;return{statement:this.stack[a],options:this.bindVars["options_"+a]}},t.prototype.restrict=function(a){var b=j(a);if(0===b.length)return this;this._addToPrint("restrict",a),this._clearCursor();var c,d=this._getLastRestrictableStatementInfo(),e=d.statement,f=d.options;return e.isEdgeQuery()?(r(this.graph._edgeCollections(),b,"edge collections"),c=f.edgeCollectionRestriction||[],f.edgeCollectionRestriction=c.concat(a)):(e.isVertexQuery()||e.isNeighborQuery())&&(r(this.graph._vertexCollections(),b,"vertex collections"),c=f.vertexCollectionRestriction||[],f.vertexCollectionRestriction=c.concat(a)),this},t.prototype.filter=function(a){this._addToPrint("filter",a),this._clearCursor();var b=[];if("[object Array]"!==Object.prototype.toString.call(a)){if("[object Object]"!==Object.prototype.toString.call(a)){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.message,d}b=[a]}else b=a;var e="FILTER MATCHES("+this.getLastVar()+","+JSON.stringify(b)+")";return this.stack.push(new s(e)),this},t.prototype.printQuery=function(){return this.stack.map(function(a){return a.printQuery()}).join(" ")},t.prototype.execute=function(){this._clearCursor();var a=this.printQuery(),b=this.bindVars;return a+=this.stack[this.stack.length-1].isPathQuery()?" RETURN ["+this._path+"]":this.stack[this.stack.length-1].isPathVerticesQuery()?" RETURN FLATTEN(["+this._pathVertices+"])":this.stack[this.stack.length-1].isPathEdgesQuery()?" RETURN FLATTEN(["+this._pathEdges+"])":" RETURN "+this.getLastVar(),g._query(a,b,{count:!0})},t.prototype.toArray=function(){return this._createCursor(),this.cursor.toArray()},t.prototype.count=function(){return this._createCursor(),this.cursor.count()},t.prototype.hasNext=function(){return this._createCursor(),this.cursor.hasNext()},t.prototype.next=function(){return this._createCursor(),this.cursor.next()};var u=function(a,b){var d;if(arguments.length<2)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"2",d;if("string"!=typeof a||""===a)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must not be empty",d;if(!k(b))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must not be empty",d;return{collection:a,from:j(b),to:j(b)}},v=function(a,b,d){var e;if(arguments.length<3)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"3",e;if("string"!=typeof a||""===a)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must be non empty string",e;if(!k(b))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must be non empty string or array",e;if(!k(d))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg3 must be non empty string or array",e;return{collection:a,from:j(b),to:j(d)}},w=function(){var a=n();return i.pluck(a.toArray(),"_key")},x=function(){return n().toArray()},y=function(){var a=[],b=arguments;return Object.keys(b).forEach(function(c){a.push(b[c])}),a},z=function(a){var b=arguments,c=0;Object.keys(b).forEach(function(d){c++,1!==c&&a.push(b[d])})},A=function(a){return a.from=a.from.sort(),a.to=a.to.sort(),a},B=function(a,b,d,g){Array.isArray(d)||(d=[]);var i,j,k,o=n(),p=!0;if(!a)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.message,i;if(b=b||[],!Array.isArray(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i;var q=[],r={};b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,i.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,i;q.push(b),r[b]=a}),o.toArray().forEach(function(a){var b=a.edgeDefinitions;b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b)&&JSON.stringify(a)!==JSON.stringify(r[b]))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,i.errorMessage=b+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,i})});try{o.document(a)}catch(s){if(s.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw s;p=!1}if(p)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_DUPLICATE.code,i.errorMessage=c.errors.ERROR_GRAPH_DUPLICATE.message,i;j=m(b,!1),d.forEach(function(a){l(a,e.TYPE_DOCUMENT)}),b.forEach(function(a,c){var d=A(a);b[c]=d}),d=d.sort();var t=o.save({orphanCollections:d,edgeDefinitions:b,_key:a},g);return k=new H(a,b,j[0],j[1],d,t._rev,t._id)},C=function(a,b,c){Object.defineProperty(a,b,{enumerable:!1,writable:!0}),a[b]=c},D=function(a,b,c,d){d.__idsToRemove[c]=1,a.forEach(function(e){var f=e.edgeDefinitions;e.edgeDefinitions&&f.forEach(function(e){var f=e.from,h=e.to,i=e.collection;if(-1!==f.indexOf(b)||-1!==h.indexOf(b)){var j=g._collection(i).edges(c);j.forEach(function(b){d.__idsToRemove.hasOwnProperty(b._id)||(d.__collectionsToLock[i]=1,D(a,i,b._id,d))})}})})},E=function(a,b){i.each(b,function(b){var d=g._collection(b),e=p(d),h=e.save;e.save=function(d,e,g){if("string"!=typeof d||-1===d.indexOf("/")||"string"!=typeof e||-1===e.indexOf("/")){var j=new f;throw j.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,j.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,j}return a.__edgeDefinitions.forEach(function(a){if(a.collection===b){var g=d.split("/")[0],h=e.split("/")[0];if(!i.contains(a.from,g)||!i.contains(a.to,h)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_INVALID_EDGE.code,j.errorMessage=c.errors.ERROR_GRAPH_INVALID_EDGE.message+" between "+d+" and "+e+".",j}}}),h(d,e,g)},e.remove=function(c,d){-1===c.indexOf("/")&&(c=b+"/"+c);var e=n().toArray(),f=c.split("/")[0];a.__collectionsToLock[f]=1,D(e,f,c,a);try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)})},params:{ids:Object.keys(a.__idsToRemove),options:d}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=e})},F=function(a,b){i.each(b,function(b){var c=g._collection(b),d=p(c);d.remove=function(c,d){var e=n().toArray(),f=b;-1===c.indexOf("/")&&(c=b+"/"+c),a.__collectionsToLock[f]=1,e.forEach(function(b){var d=b.edgeDefinitions;b.edgeDefinitions&&d.forEach(function(b){var d=b.from,h=b.to,i=b.collection;if(-1!==d.indexOf(f)||-1!==h.indexOf(f)){var j=g._collection(i).edges(c);j.length>0&&(a.__collectionsToLock[i]=1,j.forEach(function(b){D(e,i,b._id,a)}))}})});try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)}),a.options?b._remove(a.vertexId,a.options):b._remove(a.vertexId)},params:{ids:Object.keys(a.__idsToRemove),options:d,vertexId:c}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=d})},G=function(a){Object.keys(a).forEach(function(b){"_"!==b.substring(0,1)&&delete a[b]}),a.__edgeDefinitions.forEach(function(b){E(a,[b.collection]),F(a,b.from),F(a,b.to)}),F(a,a.__orphanCollections)},H=function(a,b,c,d,e,f,g){b.forEach(function(a,c){var d=A(a);b[c]=d}),e||(e=[]);var h="object"==typeof ArangoClusterComm;h&&require("org/arangodb/cluster").isCoordinator()&&(h=!1);var i=this;C(this,"__useBuiltIn",h),C(this,"__name",a),C(this,"__vertexCollections",c),C(this,"__edgeCollections",d),C(this,"__edgeDefinitions",b),C(this,"__idsToRemove",{}),C(this,"__collectionsToLock",{}),C(this,"__id",g),C(this,"__rev",f),C(this,"__orphanCollections",e),G(i)},I=function(a){var b,d,e,g=n();try{b=g.document(a)}catch(i){if(i.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw i;var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,j.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,j}return d=m(b.edgeDefinitions,!0),e=b.orphanCollections,e||(e=[]),new H(a,b.edgeDefinitions,d[0],d[1],e,b._rev,b._id)},J=function(a){var b=n();return b.exists(a)},K=function(a,b,c){var d=!0;return c.forEach(function(c){if(c._key!==b){var e=c.edgeDefinitions;e&&e.forEach(function(b){var c=b.from,e=b.to,f=b.collection;(f===a||-1!==c.indexOf(a)||-1!==e.indexOf(a))&&(d=!1)});var f=c.orphanCollections;f&&-1!==f.indexOf(a)&&(d=!1)}}),d},L=function(a,b){var d,e=n();if(!e.exists(a)){var h=new f;throw h.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,h.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,h}if(b===!0){var i=e.document(a),j=i.edgeDefinitions;j.forEach(function(a){var b=a.from,c=a.to,e=a.collection;d=n().toArray(),K(e,i._key,d)&&g._drop(e),b.forEach(function(a){K(a,i._key,d)&&g._drop(a)}),c.forEach(function(a){K(a,i._key,d)&&g._drop(a)})}),d=n().toArray(),i.orphanCollections||(i.orphanCollections=[]),i.orphanCollections.forEach(function(a){if(K(a,i._key,d))try{g._drop(a)}catch(b){}})}return e.remove(a),!0};H.prototype._edgeCollections=function(){return i.values(this.__edgeCollections)},H.prototype._vertexCollections=function(){var a=[];return i.each(this.__orphanCollections,function(b){a.push(g[b])}),i.union(i.values(this.__vertexCollections),a)},H.prototype._EDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].EDGES(a)):e.concat(this.__edgeCollections[d].edges(a)));return e},H.prototype._INEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].INEDGES(a)):e.concat(this.__edgeCollections[d].inEdges(a)));return e},H.prototype._OUTEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].OUTEDGES(a)):e.concat(this.__edgeCollections[d].outEdges(a)));return e},H.prototype._edges=function(a){var b=new t(this);return b.outEdges(a)},H.prototype._vertices=function(a){var b=new t(this);return b.vertices(a)},H.prototype._fromVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._from,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._toVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._to,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._getEdgeCollectionByName=function(a){if(this.__edgeCollections[a])return this.__edgeCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._getVertexCollectionByName=function(a){if(this.__vertexCollections[a])return this.__vertexCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._neighbors=function(a,b){var c=new t(this);return b||(b={}),c.vertices(a).neighbors(b.neighborExamples,b).toArray()},H.prototype._commonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN e";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f};return g._query(h,i,{count:!0}).toArray()},H.prototype._countCommonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN [e.left, e.right, LENGTH(e.neighbors)]";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f},j=g._query(h,i,{count:!0}).toArray(),k={},l={},m=[];return j.forEach(function(a){k[a[0]]||(k[a[0]]=[]),l={},l[a[1]]=a[2],k[a[0]].push(l)}),Object.keys(k).forEach(function(a){l={},l[a]=k[a],m.push(l)}),m},H.prototype._commonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) SORT ATTRIBUTES(e)[0] RETURN e";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e};return g._query(f,h,{count:!0}).toArray()},H.prototype._countCommonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) FOR a in ATTRIBUTES(e) SORT ATTRIBUTES(e)[0] RETURN [ ATTRIBUTES(e)[0], LENGTH(e[a]) ]";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h,{count:!0}).toArray(),j=[];return i.forEach(function(a){var b={};b[a[0]]=a[1],j.push(b)}),j},H.prototype._paths=function(a){var b="RETURN GRAPH_PATHS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return d},H.prototype._shortestPath=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_SHORTEST_PATH(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i},H.prototype._distanceTo=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_DISTANCE_TO(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i[0]},H.prototype._absoluteEccentricity=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_ECCENTRICITY(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._eccentricity=function(a){var b="RETURN GRAPH_ECCENTRICITY(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteCloseness=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_CLOSENESS(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._closeness=function(a){var b="RETURN GRAPH_CLOSENESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteBetweenness=function(a,b){var c="RETURN GRAPH_ABSOLUTE_BETWEENNESS(@graphName,@example,@options)";b=b||{};var d={example:a,graphName:this.__name,options:b},e=g._query(c,d).toArray();return 1===e.length?e[0]:e},H.prototype._betweenness=function(a){var b="RETURN GRAPH_BETWEENNESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._radius=function(a){var b="RETURN GRAPH_RADIUS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._diameter=function(a){var b="RETURN GRAPH_DIAMETER(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._extendEdgeDefinitions=function(a){a=A(a);var b,d=this,e=a.collection;if(void 0!==this.__edgeCollections[e])throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,b.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,b;g._graphs.toArray().forEach(function(d){var g=d.edgeDefinitions;g.forEach(function(d){var g=d.collection;if(g===e&&JSON.stringify(d)!==JSON.stringify(a))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,b.errorMessage=g+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,b})}),m([a]),this.__edgeDefinitions.push(a),g._graphs.update(this.__name,{edgeDefinitions:this.__edgeDefinitions}),this.__edgeCollections[a.collection]=g[a.collection],a.from.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),a.to.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),G(this)};var M=function(a,b,c,d,e){var f=[],h=I(a._key),j=a.edgeDefinitions,k=!1;j.forEach(function(c,d){c.collection===b.collection?(k=!0,j[d].from=b.from,j[d].to=b.to,g._graphs.update(a._key,{edgeDefinitions:j}),a._key===e.__name&&(e.__edgeDefinitions[d].from=b.from,e.__edgeDefinitions[d].to=b.to)):(f=i.union(f,c.from),f=i.union(f,c.to))}),k&&(a._key===e.__name?(c.forEach(function(a){void 0===e.__vertexCollections[a]&&(e.__vertexCollections[a]=g[a]);try{e._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete e.__vertexCollections[a],e._addVertexCollection(a))})):(c.forEach(function(a){try{h._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete h.__vertexCollections[a],h._addVertexCollection(a))})))};H.prototype._editEdgeDefinitions=function(a){a=A(a);var b=this;if(void 0===this.__edgeCollections[a.collection]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}m([a]);var e,g=[];this.__edgeDefinitions.forEach(function(b){a.collection===b.collection&&(e=b)});var h=i.union(e.from,e.to),j=i.union(a.from,a.to);h.forEach(function(a){-1===j.indexOf(a)&&g.push(a)});var k=n().toArray();k.forEach(function(c){M(c,a,j,g,b)}),G(this)},H.prototype._deleteEdgeDefinition=function(a,b){if(void 0===this.__edgeCollections[a]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}var e,h=this.__edgeDefinitions,j=this,k=[],l=[];h.forEach(function(b,c){b.collection===a?(e=c,l=b.from,l=i.union(l,b.to)):(k=i.union(k,b.from),k=i.union(k,b.to))}),this.__edgeDefinitions.splice(e,1),l.forEach(function(a){-1===k.indexOf(a)&&j.__orphanCollections.push(a)}),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections,edgeDefinitions:this.__edgeDefinitions}),b&&g._drop(a)},H.prototype._addVertexCollection=function(a,b){var d,e=g._collection(a);if(null===e){if(b===!1)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=a+c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;g._create(a)}else if(2!==e.type())throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.code,d.errorMessage=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.message,d;if(void 0!==this.__vertexCollections[a])throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.message,d;if(i.contains(this.__orphanCollections,a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.message,d;this.__orphanCollections.push(a),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections})},H.prototype._orphanCollections=function(){return this.__orphanCollections},H.prototype._removeVertexCollection=function(a,b){var d;if(null===g._collection(a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;var e=this.__orphanCollections.indexOf(a);if(-1===e)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.code,d.errorMessage=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.message,d;if(this.__orphanCollections.splice(e,1),delete this[a],g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections}),b===!0){var h=n().toArray();K(a,null,h)&&g._drop(a)}G(this)},H.prototype._getConnectingEdges=function(a,b,c){c=c||{};var d={includeData:!0};c.vertex1CollectionRestriction&&(d.startVertexCollectionRestriction=c.vertex1CollectionRestriction),c.vertex2CollectionRestriction&&(d.endVertexCollectionRestriction=c.vertex2CollectionRestriction),c.edgeCollectionRestriction&&(d.edgeCollectionRestriction=c.edgeCollectionRestriction),c.edgeExamples&&(d.edgeExamples=c.edgeExamples),b&&(d.neighborExamples=b);var e="RETURN GRAPH_EDGES(@graphName,@vertexExample,@options)",f={graphName:this.__name,vertexExample:a,options:d},h=g._query(e,f).toArray();return h[0]},H.prototype._PRINT=function(a){var b=this.__name,c=o(this.__edgeDefinitions);a.output+="[ Graph ",a.output+=b,a.output+=" EdgeDefinitions: ",d.printRecursive(c,a),a.output+=" VertexCollections: ",d.printRecursive(this.__orphanCollections,a),a.output+=" ]"},a._undirectedRelation=u,a._directedRelation=function(){return v.apply(this,arguments)},a._relation=v,a._graph=I,a._edgeDefinitions=y,a._extendEdgeDefinitions=z,a._create=B,a._drop=L,a._exists=J,a._list=w,a._listObjects=x}),module.define("org/arangodb/graph-blueprint",function(a,b){var c=require("org/arangodb"),d=require("org/arangodb/is"),e=require("org/arangodb/graph-common"),f=e.Edge,g=e.Graph,h=e.Vertex,i=e.GraphArray,j=e.Iterator,k=require("org/arangodb/api/graph").GraphAPI;f.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,this._graph.emptyCachedPredecessors(),c=k.putEdge(this._graph._properties._key,this._properties._key,d),this._properties=c.edge,a},h.prototype.edges=function(a,b){var c,d,e=new i;for(d=k.postEdges(this._graph._vertices._database,this._graph._properties._key,this,{filter:{direction:a,labels:b}});d.hasNext();)c=new f(this._graph,d.next()),e.push(c);return e},h.prototype.getInEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("in",a)},h.prototype.getOutEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("out",a)},h.prototype.getEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("any",a)},h.prototype.inbound=function(){return this.getInEdges()},h.prototype.outbound=function(){return this.getOutEdges()},h.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,c=k.putVertex(this._graph._properties._key,this._properties._key,d),this._properties=c.vertex,a},g.prototype.initialize=function(a,b,e){var f;return d.notExisty(b)&&d.notExisty(e)?f=k.getGraph(a):("object"==typeof b&&"function"==typeof b.name&&(b=b.name()),"object"==typeof e&&"function"==typeof e.name&&(e=e.name()),f=k.postGraph({_key:a,vertices:b,edges:e})),this._properties=f.graph,this._vertices=c.db._collection(this._properties.edgeDefinitions[0].from[0]),this._edges=c.db._collection(this._properties.edgeDefinitions[0].collection),this._verticesCache={},this._edgesCache={},this.predecessors={},this.distances={},this},g.getAll=function(){return k.getAllGraphs()},g.drop=function(a){k.deleteGraph(a)},g.prototype.drop=function(){k.deleteGraph(this._properties._key)},g.prototype._saveEdge=function(a,b,c,d){var e;return this.emptyCachedPredecessors(),d._key=a,d._from=b,d._to=c,e=k.postEdge(this._properties._key,d),new f(this,e.edge)},g.prototype._saveVertex=function(a,b){var c;return d.existy(a)&&(b._key=a),c=k.postVertex(this._properties._key,b),new h(this,c.vertex)},g.prototype._replaceVertex=function(a,b){k.putVertex(this._properties._key,a,b)},g.prototype._replaceEdge=function(a,b){k.putEdge(this._properties._key,a,b)},g.prototype.getVertex=function(a){var b=k.getVertex(this._properties._key,a);return d.notExisty(b)?null:new h(this,b.vertex)},g.prototype.getVertices=function(){var a=k.getVertices(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new h(b,a)};return new j(c,a,"[vertex iterator]")},g.prototype.getEdge=function(a){var b=k.getEdge(this._properties._key,a);return d.notExisty(b)?null:new f(this,b.edge)},g.prototype.getEdges=function(){var a=k.getEdges(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new f(b,a)};return new j(c,a,"[edge iterator]")},g.prototype.removeVertex=function(a){this.emptyCachedPredecessors(),k.deleteVertex(this._properties._key,a._properties._key),a._properties=void 0},g.prototype.removeEdge=function(a){this.emptyCachedPredecessors(),k.deleteEdge(this._properties._key,a._properties._key),this._edgesCache[a._properties._id]=void 0,a._properties=void 0},a.Edge=f,a.Graph=g,a.Vertex=h,a.GraphArray=i,require("org/arangodb/graph/algorithms-common")}),module.define("org/arangodb/graph-common",function(a,b){var c,d,e,f,g,h=require("org/arangodb/is");g=function(a,b,c){this.next=function(){return b.hasNext()?a(b.next()):void 0},this.hasNext=function(){return b.hasNext()},this._PRINT=function(a){a.output+=c}},f=function(a){void 0!==a&&(this.length=a); -},f.prototype=new Array(0),f.prototype.map=function(a,b){var c,d=this.length;if("function"!=typeof a)throw new TypeError;var e=new f(d);for(c=0;d>c;c++)this.hasOwnProperty(c)&&(e[c]=a.call(b,this[c],c,this));return e},f.prototype.getInVertex=function(){return this.map(function(a){return a.getInVertex()})},f.prototype.getOutVertex=function(){return this.map(function(a){return a.getOutVertex()})},f.prototype.getPeerVertex=function(a){return this.map(function(b){return b.getPeerVertex(a)})},f.prototype.setProperty=function(a,b){return this.map(function(c){return c.setProperty(a,b)})},f.prototype.edges=function(){return this.map(function(a){return a.edges()})},f.prototype.outbound=function(){return this.map(function(a){return a.outbound()})},f.prototype.inbound=function(){return this.map(function(a){return a.inbound()})},f.prototype.getInEdges=function(){var a=arguments;return this.map(function(b){return b.getInEdges.apply(b,a)})},f.prototype.getOutEdges=function(){var a=arguments;return this.map(function(b){return b.getOutEdges.apply(b,a)})},f.prototype.getEdges=function(){var a=arguments;return this.map(function(b){return b.getEdges.apply(b,a)})},f.prototype.degree=function(){return this.map(function(a){return a.degree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.inDegree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.outDegree()})},f.prototype.properties=function(){return this.map(function(a){return a.properties()})},c=function(a,b){this._graph=a,this._id=b._key,this._properties=b},c.prototype.getId=function(){return this._properties._key},c.prototype.getLabel=function(){return this._properties.$label},c.prototype.getProperty=function(a){return this._properties[a]},c.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},c.prototype.properties=function(){return this._properties._shallowCopy},c.prototype.getInVertex=function(){return this._graph.getVertex(this._properties._to)},c.prototype.getOutVertex=function(){return this._graph.getVertex(this._properties._from)},c.prototype.getPeerVertex=function(a){return a._properties._id===this._properties._to?this._graph.getVertex(this._properties._from):a._properties._id===this._properties._from?this._graph.getVertex(this._properties._to):null},c.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Edge("'+this._properties._key+'")':a.output+="Edge("+this._properties._key+")":a.output+="Edge(<"+this._id+">)":a.output+="[deleted Edge]"},e=function(a,b){this._graph=a,this._id=b._key,this._properties=b},e.prototype.addInEdge=function(a,b,c,d){return this._graph.addEdge(a,this,b,c,d)},e.prototype.addOutEdge=function(a,b,c,d){return this._graph.addEdge(this,a,b,c,d)},e.prototype.degree=function(){return this.getEdges().length},e.prototype.inDegree=function(){return this.getInEdges().length},e.prototype.outDegree=function(){return this.getOutEdges().length},e.prototype.getId=function(){return this._properties._key},e.prototype.getProperty=function(a){return this._properties[a]},e.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},e.prototype.properties=function(){return this._properties._shallowCopy},e.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Vertex("'+this._properties._key+'")':a.output+="Vertex("+this._properties._key+")":a.output+="Vertex(<"+this._id+">)":a.output+="[deleted Vertex]"},d=function(a,b,c,d){this.initialize(a,b,c,d)},d.prototype._prepareEdgeData=function(a,b){var c;return h.notExisty(a)&&h.object(b)&&(a=b,b=null),h.notExisty(b)&&h.existy(a)&&h.existy(a.$label)&&(b=a.$label),c=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{},c.$label=b,c},d.prototype._prepareVertexData=function(a){var b;return b=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{}},d.prototype.getOrAddVertex=function(a){var b=this.getVertex(a);return null===b&&(b=this.addVertex(a)),b},d.prototype.addEdge=function(a,b,c,d,e,f){var g,i;return g=h.string(a)?a:a._properties._id,i=h.string(b)?b:b._properties._id,this._saveEdge(c,g,i,this._prepareEdgeData(e,d),f)},d.prototype.addVertex=function(a,b,c){return this._saveVertex(a,this._prepareVertexData(b),c)},d.prototype.replaceVertex=function(a,b){this._replaceVertex(a,b)},d.prototype.replaceEdge=function(a,b){this._replaceEdge(a,b)},d.prototype.order=function(){return this._vertices.count()},d.prototype.size=function(){return this._edges.count()},d.prototype.emptyCachedPredecessors=function(){this.predecessors={}},d.prototype.getCachedPredecessors=function(a,b){var c;return this.predecessors[a.getId()]&&(c=this.predecessors[a.getId()][b.getId()]),c},d.prototype.setCachedPredecessors=function(a,b,c){this.predecessors[a.getId()]||(this.predecessors[a.getId()]={}),this.predecessors[a.getId()][b.getId()]=c},d.prototype.constructVertex=function(a){var b,c;"string"==typeof a?b=a:(b=a._id,c=a._rev);var d=this._verticesCache[b];if(void 0===d||d._rev!==c){var f=this._vertices.document(b);if(!f)throw"accessing a deleted vertex";this._verticesCache[b]=d=new e(this,f)}return d},d.prototype.constructEdge=function(a){var b,d,e,f;if("string"==typeof a?b=a:(b=a._id,d=a._rev),e=this._edgesCache[b],void 0===e||e._rev!==d){if(f=this._edges.document(b),!f)throw"accessing a deleted edge";this._edgesCache[b]=e=new c(this,f)}return e},d.prototype._PRINT=function(a){a.output+='Graph("'+this._properties._key+'")'},a.Edge=c,a.Graph=d,a.Vertex=e,a.GraphArray=f,a.Iterator=g}),module.define("org/arangodb/graph",function(a,b){var c=require("org/arangodb/graph-blueprint");Object.keys(c).forEach(function(b){a[b]=c[b]})}),module.define("org/arangodb/is",function(a,b){"use strict";function c(a){return null!==a&&void 0!==a}function d(a){return!c(a)}function e(a){return a!==!1&&c(a)}function f(a){return!e(a)}["Object","Array","Boolean","Date","Function","Number","String","RegExp"].forEach(function(b){a[b.toLowerCase()]=function(a){return Object.prototype.toString.call(a)==="[object "+b+"]"},a["no"+b]=function(a){return Object.prototype.toString.call(a)!=="[object "+b+"]"}}),a.existy=c,a.notExisty=d,a.truthy=e,a.falsy=f}),module.define("org/arangodb/mimetypes",function(a,b){a.mimeTypes={gif:["image/gif",!1],jpg:["image/jpg",!1],png:["image/png",!1],tiff:["image/tiff",!1],ico:["image/x-icon",!1],css:["text/css",!0],js:["text/javascript",!0],json:["application/json",!0],html:["text/html",!0],htm:["text/html",!0],pdf:["application/pdf",!1],ps:["application/postscript",!1],txt:["text/plain",!0],text:["text/plain",!0],xml:["application/xml",!0],dtd:["application/xml-dtd",!0],svg:["image/svg+xml",!0],ttf:["application/x-font-ttf",!1],otf:["application/x-font-opentype",!1],woff:["application/font-woff",!1],eot:["application/vnd.ms-fontobject",!1],bz2:["application/x-bzip2",!1],gz:["application/x-gzip",!1],tgz:["application/x-tar",!1],zip:["application/x-compressed-zip",!1],doc:["application/msword",!1],docx:["application/vnd.openxmlformats-officedocument.wordprocessingml.document",!1],dotx:["application/vnd.openxmlformats-officedocument.wordprocessingml.template",!1],potx:["application/vnd.openxmlformats-officedocument.presentationml.template",!1],ppsx:["application/vnd.openxmlformats-officedocument.presentationml.slideshow",!1],ppt:["application/vnd.ms-powerpoint",!1],pptx:["application/vnd.openxmlformats-officedocument.presentationml.presentation",!1],xls:["application/vnd.ms-excel",!1],xlsb:["application/vnd.ms-excel.sheet.binary.macroEnabled.12",!1],xlsx:["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",!1],xltx:["application/vnd.openxmlformats-officedocument.spreadsheetml.template",!1],swf:["application/x-shockwave-flash",!1]},a.extensions={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"image/svg+xml":["svg"],"application/postscript":["ps"],"image/png":["png"],"application/x-font-ttf":["ttf"],"application/vnd.ms-excel.sheet.binary.macroEnabled.12":["xlsb"],"application/x-font-opentype":["otf"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/x-bzip2":["bz2"],"application/json":["json"],"application/pdf":["pdf"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.ms-fontobject":["eot"],"application/xml-dtd":["dtd"],"application/x-shockwave-flash":["swf"],"image/gif":["gif"],"image/jpg":["jpg"],"application/xml":["xml"],"application/vnd.ms-excel":["xls"],"image/tiff":["tiff"],"application/vnd.ms-powerpoint":["ppt"],"application/font-woff":["woff"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"text/plain":["txt","text"],"application/x-tar":["tgz"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/x-gzip":["gz"],"text/javascript":["js"],"text/html":["html","htm"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"image/x-icon":["ico"],"application/x-compressed-zip":["zip"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"text/css":["css"],"application/msword":["doc"]}}),module.define("org/arangodb/replication",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh"),e={},f={};e.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/logger-state");return d.checkRequestResult(b),b},f.start=function(a){var b=c.db,e="";void 0!==a&&(e="?from="+encodeURIComponent(a));var f=b._connection.PUT("/_api/replication/applier-start"+e,"");return d.checkRequestResult(f),f},f.stop=f.shutdown=function(){var a=c.db,b=a._connection.PUT("/_api/replication/applier-stop","");return d.checkRequestResult(b),b},f.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.forget=function(){var a=c.db,b=a._connection.DELETE("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/replication/applier-config"):e._connection.PUT("/_api/replication/applier-config",JSON.stringify(a)),d.checkRequestResult(b),b};var g=function(a){var b=c.db,e=JSON.stringify(a||{}),f=b._connection.PUT("/_api/replication/sync",e);return d.checkRequestResult(f),f},h=function(){var a=c.db,b=a._connection.GET("/_api/replication/server-id");return d.checkRequestResult(b),b.serverId};a.logger=e,a.applier=f,a.sync=g,a.serverId=h}),module.define("org/arangodb/simple-query-common",function(a,b){function c(a,b,c,d){this._documents=a,this._countTotal=a.length,this._skip=b,this._limit=c,this._cached=!1,this._extra={};var e=this;null!==d&&void 0!==d&&"object"==typeof d&&(["stats","warnings","profile"].forEach(function(a){d.hasOwnProperty(a)&&(e._extra[a]=d[a])}),this._cached=d.cached||!1),this.execute()}function d(){this._execution=null,this._skip=0,this._limit=null,this._countQuery=null,this._countTotal=null,this._batchSize=null}function e(a,b){return 0===a._limit?a=a.clone():0===b?(a=a.clone(),a._limit=0):null===a._limit?(a=a.clone(),a._limit=b):(a=a.clone(),bc&&(b=c);else if(this._skip<0){var d=-this._skip;c>d&&(b=c-d)}null!==this._limit&&b+this._limita){var b=new q;throw b.errorNum=p.ERROR_BAD_PARAMETER,b.errorMessage="limit must be non-negative",b}return e(this,a)},d.prototype.skip=function(a){var b,c;if((void 0===a||null===a)&&(a=0),null!==this._execution)throw"query is already executing";return null===this._limit?(b=this.clone(),null===this._skip||0===this._skip?b._skip=a:b._skip+=a):(c=this.clone().toArray(),b=new l(c),b._skip=a,b._countTotal=c._countTotal),b},d.prototype.toArray=function(){var a;for(this.execute(),a=[];this.hasNext();)a.push(this.next());return a},d.prototype.getBatchSize=function(){return this._batchSize},d.prototype.setBatchSize=function(a){a>=1&&(this._batchSize=a)},d.prototype.count=function(a){return this.execute(),void 0!==a&&a?this._countQuery:this._countTotal},d.prototype.hasNext=function(){return this.execute(),this._execution.hasNext()},d.prototype.next=function(){return this.execute(),this._execution.next()},d.prototype.dispose=function(){null!==this._execution&&this._execution.dispose(),this._execution=null,this._countQuery=null,this._countTotal=null},f.prototype=new d,f.prototype.constructor=f,f.prototype.clone=function(){var a;return a=new f(this._collection),a._skip=this._skip,a._limit=this._limit,a},f.prototype._PRINT=function(a){var b;b="SimpleQueryAll("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},l=function(a){this._documents=a},l.prototype=new d,l.prototype.constructor=l,l.prototype.clone=function(){var a;return a=new l(this._documents),a._skip=this._skip,a._limit=this._limit,a},l.prototype.execute=function(){null===this._execution&&(null===this._skip&&(this._skip=0),this._execution=new c(this._documents,this._skip,this._limit))},l.prototype._PRINT=function(a){var b;b="SimpleQueryArray(documents)",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},g.prototype=new d,g.prototype.constructor=g,g.prototype.clone=function(){var a;return a=new g(this._collection,this._example),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},g.prototype._PRINT=function(a){var b;b="SimpleQueryByExample("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},h.prototype=new d,h.prototype.constructor=h,h.prototype.clone=function(){var a;return a=new h(this._collection,this._condition),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},h.prototype._PRINT=function(a){var b;b="SimpleQueryByCondition("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},i.prototype=new d,i.prototype.constructor=i,i.prototype.clone=function(){var a;return a=new i(this._collection,this._attribute,this._left,this._right,this._type),a._skip=this._skip,a._limit=this._limit,a},i.prototype._PRINT=function(a){var b;b="SimpleQueryRange("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},j.prototype._PRINT=function(a){var b;b="GeoIndex("+this._collection.name()+", "+this._index+")",a.output+=b},j.prototype.near=function(a,b){return new m(this._collection,a,b,this._index)},j.prototype.within=function(a,b,c){return new n(this._collection,a,b,c,this._index)},j.prototype.withinRectangle=function(a,b,c,d){return new o(this._collection,a,b,c,d,this._index)},m=function(a,b,c,d){var e,f;if(this._collection=a,this._latitude=b,this._longitude=c,this._index=void 0===d?null:d,this._distance=null,void 0===d)for(e=a.getIndexes(),f=0;f0&&(this._batchSize=a);var b={collection:this._collection.name()};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/all",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},i.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),example:this._example};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-example";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"hash":e="by-example-hash";break;case"skiplist":e="by-example-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},j.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),condition:this._condition};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-condition";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"skiplist":e="by-condition-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},n.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,right:this._right,left:this._left,closed:1===this._type};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/range",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},m.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/near",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},o.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude,radius:this._radius};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},p.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude1:this._latitude1,longitude1:this._longitude1,latitude2:this._latitude2,longitude2:this._longitude2};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within-rectangle",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},k.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,query:this._query};null!==this._limit&&(b.limit=this._limit),null!==this._index&&(b.index=this._index),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/fulltext",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},a.GeneralArrayCursor=f,a.SimpleQueryAll=g,a.SimpleQueryArray=h,a.SimpleQueryByExample=i,a.SimpleQueryByCondition=j,a.SimpleQueryFulltext=k,a.SimpleQueryGeo=l,a.SimpleQueryNear=m,a.SimpleQueryRange=n,a.SimpleQueryWithin=o,a.SimpleQueryWithinRectangle=p}),module.define("org/arangodb/tutorial",function(a,b){var c=0,d="Type 'tutorial' again to get to the next chapter.",e=[{title:"Welcome to the tutorial!",text:"This is a user-interactive tutorial on ArangoDB and the ArangoDB shell.\nIt will give you a first look into ArangoDB and how it works."},{title:"JavaScript Shell",text:"On this shell's prompt, you can issue arbitrary JavaScript commands.\nSo you are able to do things like...:\n\n number = 123;\n number = number * 10;"},{title:"Running Complex Instructions",text:"You can also run more complex instructions, such as for loops:\n\n for (i = 0; i < 10; i++) { number = number + 1; }"},{title:"Printing Results",text:'As you can see, the result of the last command executed is printed automatically. To explicitly print a value at any other time, there is the print function:\n\n for (i = 0; i < 5; ++i) { print("I am a JavaScript shell"); }'},{title:"Creating Collections",text:"ArangoDB is a document database. This means that we store data as documents (which are similar to JavaScript objects) in so-called 'collections'. Let's create a collection named 'places' now:\n\n db._create('places');\n\nNote: each collection is identified by a unique name. Trying to create a collection that already exists will produce an error."},{title:"Displaying Collections",text:"Now you can take a look at the collection(s) you just created:\n\n db._collections();\n\nPlease note that all collections will be returned, including ArangoDB's pre-defined system collections."},{title:"Creating Documents",text:'Now we have a collection, but it is stil empty. So let\'s create some documents!\n\n db.places.save({ _key : "foo", city : "foo-city" });\n for (i = 0; i <= 10; i++) { db.places.save({ _key: "example" + i, zipcode: i }) };'},{title:"Displaying All Documents",text:"You want to take a look at your docs? No problem:\n\n db.places.toArray();"},{title:"Counting Documents",text:"To see how many documents there are in a collection, use the 'count' method:\n\n db.places.count();"},{title:"Retrieving Single Documents",text:"As you can see, each document has some meta attributes '_id', '_key' and '_rev'.\nThe '_key' attribute can be used to quickly retrieve a single document from a collection:\n\n db.places.document(\"foo\");\n db.places.document(\"example5\");"},{title:"Retrieving Single Documents",text:"The '_id' attribute can also be used to retrieve documents using the 'db' object:\n\n db._document(\"places/foo\");\n db._document(\"places/example5\");"},{title:"Modifying Documents",text:'You can modify existing documents. Try to add a new attribute to a document and verify whether it has been added:\n\n db._update("places/foo", { zipcode: 39535 });\n db._document("places/foo");'},{title:"Document Revisions",text:"Note that after updating the document, its '_rev' attribute changed automatically.\nThe '_rev' attribute contains a document revision number, and it can be used for conditional modifications. Here's an example of how to avoid lost updates in case multiple clients are accessing the documents in parallel:\n\n doc = db._document(\"places/example1\");\n db._update(\"places/example1\", { someValue: 23 });\n db._update(doc, { someValue: 42 });\n\nNote that the first update will succeed because it was unconditional. The second update however is conditional because we're also passing the document's revision id in the first parameter to _update. As the revision id we're passing to update does not match the document's current revision anymore, the update is rejected."},{title:"Removing Documents",text:'Deleting single documents can be achieved by providing the document _id or _key:\n\n db._remove("places/example7");\n db.places.remove("example8");\n db.places.count();'},{title:"Searching Documents",text:'Searching for documents with specific attributes can be done by using the byExample method:\n\n db._create("users");\n for (i = 0; i < 10; ++i) { db.users.save({ name: "username" + i, active: (i % 3 == 0), age: 30 + i }); }\n db.users.byExample({ active: false }).toArray();\n db.users.byExample({ name: "username3", active: true }).toArray();\n'},{title:"Running AQL Queries",text:'ArangoDB also provides a query language for more complex matching:\n\n db._query("FOR u IN users FILTER u.active == true && u.age >= 33 RETURN { username: u.name, age: u.age }").toArray();'},{title:"Using Databases",text:"By default, the ArangoShell connects to the default database. The default database is named '_system'. To create another database, use the '_createDatabase' method of the 'db' object. To switch into an existing database, use '_useDatabase'. To get rid of a database and all of its collections, use '_dropDatabase':\n\n db._createDatabase(\"mydb\");\n db._useDatabase(\"mydb\");\n db._dropDatabase(\"mydb\");"}];a._PRINT=function(a){function b(a){return a.replace(/\n {2}(.+?)(?=\n)/g,"\n "+f.COLOR_MAGENTA+"$1"+f.COLOR_RESET)}var f=require("internal").COLORS,g=f.COLOR_BOLD_BLUE+(c+1)+". "+e[c].title+f.COLOR_RESET;a.output+="\n\n"+g+"\n\n"+b(e[c].text+"\n")+"\n",++c,c>=e.length?(a.output+="Congratulations! You finished the tutorial.\n",c=0):a.output+=d+"\n"}}),module.define("org/arangodb-common",function(a,b){"use strict";var c=require("internal"),d=require("fs"),e=require("org/arangodb/mimetypes").mimeTypes;Object.keys(c.errors).forEach(function(b){ -a[b]=c.errors[b].code}),a.errors=c.errors,a.ArangoError=c.ArangoError,a.defineModule=function(a,e){var f,g,h;f=d.read(e),h=c.db._collection("_modules"),null===h&&(h=c.db._create("_modules",{isSystem:!0})),a=b.normalize(a),g=h.firstExample({path:a}),null===g?h.save({path:a,content:f}):h.replace(g,{path:a,content:f})},a.guessContentType=function(a,b){var c=/\.([a-zA-Z0-9]+)$/,d=c.exec(a);if(null!==d){var f=d[1];if(e.hasOwnProperty(f)){var g=e[f];return g[1]?g[0]+"; charset=utf-8":g[0]}}return b?b:"text/plain; charset=utf-8"},a.normalizeURL=function(a){var b,c,d,e,f,g;if(""===a)return"./";for(d=a.split("/"),"."===d[0]||".."===d[0]?(f=d[0]+"/",d.shift(),e=d):""===d[0]?(f="/",d.shift(),e=d):(f="./",e=d),c=[],b=0;b0&&(l=d[h]>=k.length?d[h]:k.length);var m=h;e.hasOwnProperty("rename")&&e.rename.hasOwnProperty(h)&&(m=e.rename[h]),f.push({id:h,fixedLength:l,length:l||m.length}),g[0][j++]=m}b.forEach(function(a,b){g[b+1]=[],f.forEach(function(c){if(a.hasOwnProperty(c.id)){var d;d=e.prettyStrings&&"string"==typeof a[c.id]?a[c.id]:JSON.stringify(a[c.id])||"",g[b+1].push(d),d.length>c.length&&!c.fixedLength&&(c.length=Math.min(d.length,100))}else g[b+1].push("")})});var n=function(){var b=[];return f.forEach(function(c){b.push(a.stringPadding("",c.length,"-","r"))}),e.framed?"+-"+b.join("-+-")+"-+\n":b.join(" ")+"\n"},o=function(){var d="";return e.framed&&(d+=n()),g.forEach(function(b,c){var g=[];b.forEach(function(c,d){var e=f[d].length,h=b[d];h.length>e&&(h=h.substr(0,e-k.length)+k),g.push(a.stringPadding(h,e," ","r"))}),d+=e.framed?"| "+g.join(" | ")+" |\n":g.join(" ")+"\n",0===c&&(d+=n())}),d+=n(),e.hideTotal||(d+=c.sprintf(e.totalString,String(b.length))),d};Array.isArray(b)&&(0===b.length?a.print(e.emptyString||"no document(s)"):a.print(o()))},a.stringPadding=function(a,b,c,d){function e(a,b){var c,d="";for(c=0;a>c;++c)d+=b;return d}if("undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=" "),b+1>=a.length)switch(d||"r"){case"l":a=e(b+1-a.length,c)+a;break;case"b":var f=b-a.length,g=Math.ceil(f/2),h=f-g;a=e(h+1,c)+a+e(g+1,c);break;default:a+=e(b+1-a.length,c)}return a},a.throwDownloadError=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.code,errorMessage:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.message+": "+String(b)})},a.throwFileNotFound=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_FILE_NOT_FOUND.code,errorMessage:a.errors.ERROR_FILE_NOT_FOUND.message+": "+String(b)})},a.throwBadParameter=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_BAD_PARAMETER.code,errorMessage:a.errors.ERROR_BAD_PARAMETER.message+": "+String(b)})},a.checkParameter=function(b,c,d){var e;for(e=0;ec?"\\u000":256>c?"\\u00":4096>c?"\\u0":"\\u",b+=c.toString(16),i[a]=b,b}function b(b){return'"'+b.replace(n,a)+'"'}function c(a){var b,c="";if(a.prettyPrint)for(c+="\n",b=0;b=b.emit&&(h.output(b.output),b.output=""),b.path=i,g=", "}b.level=f-1,b.output+=" ",c(b),d&&(b.output+=j.COLOR_PUNCTUATION),b.output+="]",d&&(b.output+=j.COLOR_RESET)}}function e(a,d){var e=d.useColor,f=" ";e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="{",e&&(d.output+=j.COLOR_RESET);var g=d.level+1;d.level=g;var i;try{i=Object.keys(a)}catch(k){i=[]}var l,n=i.length;for(l=0;n>l;++l){var o=i[l],p=a[o];e&&(d.output+=j.COLOR_PUNCTUATION),d.output+=f,e&&(d.output+=j.COLOR_RESET),c(d),e&&(d.output+=j.COLOR_INDEX),d.output+=b(o),e&&(d.output+=j.COLOR_RESET),d.output+=" : ";var q=d.path;d.path+="["+o+"]",m(p,d),d.path=q,f=", ",d.emit&&d.output.length>=d.emit&&(h.output(d.output),d.output="")}d.level=g-1,d.output+=" ",c(d),e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="}",e&&(d.output+=j.COLOR_RESET)}function f(){var a;for(a=0;a0&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var c={customInspect:!0,emit:16384,level:0,limitString:80,names:[],output:"",path:"~",prettyPrint:l,seen:[],showFunction:!1,useColor:k,useToString:!0};m(arguments[a],c),b(c.output)}b("\n")}var h=require("internal");global.ArangoError?(h.ArangoError=global.ArangoError,delete global.ArangoError):(h.ArangoError=function(a){void 0!==a&&(this.error=a.error,this.code=a.code,this.errorNum=a.errorNum,this.errorMessage=a.errorMessage),this.message=this.toString()},h.ArangoError.prototype=new Error),h.ArangoError.prototype._PRINT=function(a){a.output+=this.toString()},h.ArangoError.prototype.toString=function(){var a=this.errorNum,b=this.errorMessage||this.message;return"[ArangoError "+a+": "+b+"]"},global.SleepAndRequeue&&(h.SleepAndRequeue=global.SleepAndRequeue,delete global.SleepAndRequeue,h.SleepAndRequeue.prototype._PRINT=function(a){a.output+=this.toString()},h.SleepAndRequeue.prototype.toString=function(){return"[SleepAndRequeue sleep: "+this.sleep+"]"}),h.threadNumber=0,global.THREAD_NUMBER&&(h.threadNumber=global.THREAD_NUMBER,delete global.THREAD_NUMBER),h.developmentMode=!1,global.LOGFILE_PATH&&(h.logfilePath=global.LOGFILE_PATH,delete global.LOGFILE_PATH),h.quiet=!1,global.ARANGO_QUIET&&(h.quiet=global.ARANGO_QUIET,delete global.ARANGO_QUIET),h.valgrind=!1,global.VALGRIND&&(h.valgrind=global.VALGRIND,delete global.VALGRIND),h.coverage=!1,global.COVERAGE&&(h.coverage=global.COVERAGE,delete global.COVERAGE),h.version="unknown",global.VERSION&&(h.version=global.VERSION,delete global.VERSION),h.platform="unknown",global.SYS_PLATFORM&&(h.platform=global.SYS_PLATFORM,delete global.SYS_PLATFORM),h.bytesSentDistribution=[],global.BYTES_SENT_DISTRIBUTION&&(h.bytesSentDistribution=global.BYTES_SENT_DISTRIBUTION,delete global.BYTES_SENT_DISTRIBUTION),h.bytesReceivedDistribution=[],global.BYTES_RECEIVED_DISTRIBUTION&&(h.bytesReceivedDistribution=global.BYTES_RECEIVED_DISTRIBUTION,delete global.BYTES_RECEIVED_DISTRIBUTION),h.connectionTimeDistribution=[],global.CONNECTION_TIME_DISTRIBUTION&&(h.connectionTimeDistribution=global.CONNECTION_TIME_DISTRIBUTION,delete global.CONNECTION_TIME_DISTRIBUTION),h.requestTimeDistribution=[],global.REQUEST_TIME_DISTRIBUTION&&(h.requestTimeDistribution=global.REQUEST_TIME_DISTRIBUTION,delete global.REQUEST_TIME_DISTRIBUTION),h.startupPath="",global.STARTUP_PATH&&(h.startupPath=global.STARTUP_PATH,delete global.STARTUP_PATH),""===h.startupPath&&(h.startupPath="."),global.CONFIGURE_ENDPOINT&&(h.configureEndpoint=global.CONFIGURE_ENDPOINT,delete global.CONFIGURE_ENDPOINT),global.REMOVE_ENDPOINT&&(h.removeEndpoint=global.REMOVE_ENDPOINT,delete global.REMOVE_ENDPOINT),global.LIST_ENDPOINTS&&(h.listEndpoints=global.LIST_ENDPOINTS,delete global.LIST_ENDPOINTS),global.SYS_BASE64DECODE&&(h.base64Decode=global.SYS_BASE64DECODE,delete global.SYS_BASE64DECODE),global.SYS_BASE64ENCODE&&(h.base64Encode=global.SYS_BASE64ENCODE,delete global.SYS_BASE64ENCODE),global.SYS_DEBUG_SEGFAULT&&(h.debugSegfault=global.SYS_DEBUG_SEGFAULT,delete global.SYS_DEBUG_SEGFAULT), -global.SYS_DEBUG_SET_FAILAT&&(h.debugSetFailAt=global.SYS_DEBUG_SET_FAILAT,delete global.SYS_DEBUG_SET_FAILAT),global.SYS_DEBUG_REMOVE_FAILAT&&(h.debugRemoveFailAt=global.SYS_DEBUG_REMOVE_FAILAT,delete global.SYS_DEBUG_REMOVE_FAILAT),global.SYS_DEBUG_CLEAR_FAILAT&&(h.debugClearFailAt=global.SYS_DEBUG_CLEAR_FAILAT,delete global.SYS_DEBUG_CLEAR_FAILAT),global.SYS_DEBUG_CAN_USE_FAILAT&&(h.debugCanUseFailAt=global.SYS_DEBUG_CAN_USE_FAILAT,delete global.SYS_DEBUG_CAN_USE_FAILAT),global.SYS_DOWNLOAD&&(h.download=global.SYS_DOWNLOAD,delete global.SYS_DOWNLOAD),global.SYS_EXECUTE&&(h.executeScript=global.SYS_EXECUTE,delete global.SYS_EXECUTE),global.SYS_GET_CURRENT_REQUEST&&(h.getCurrentRequest=global.SYS_GET_CURRENT_REQUEST,delete global.SYS_GET_CURRENT_REQUEST),global.SYS_GET_CURRENT_RESPONSE&&(h.getCurrentResponse=global.SYS_GET_CURRENT_RESPONSE,delete global.SYS_GET_CURRENT_RESPONSE),h.extend=function(a,b){return Object.getOwnPropertyNames(b).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))}),a},global.SYS_LOAD&&(h.load=global.SYS_LOAD,delete global.SYS_LOAD),global.SYS_LOG_LEVEL&&(h.logLevel=global.SYS_LOG_LEVEL,delete global.SYS_LOG_LEVEL),global.SYS_MD5&&(h.md5=global.SYS_MD5,delete global.SYS_MD5),global.SYS_GEN_RANDOM_NUMBERS&&(h.genRandomNumbers=global.SYS_GEN_RANDOM_NUMBERS,delete global.SYS_GEN_RANDOM_NUMBERS),global.SYS_GEN_RANDOM_ALPHA_NUMBERS&&(h.genRandomAlphaNumbers=global.SYS_GEN_RANDOM_ALPHA_NUMBERS,delete global.SYS_GEN_RANDOM_ALPHA_NUMBERS),global.SYS_GEN_RANDOM_SALT&&(h.genRandomSalt=global.SYS_GEN_RANDOM_SALT,delete global.SYS_GEN_RANDOM_SALT),global.SYS_HMAC&&(h.hmac=global.SYS_HMAC,delete global.SYS_HMAC),global.SYS_PBKDF2&&(h.pbkdf2=global.SYS_PBKDF2,delete global.SYS_PBKDF2),global.SYS_CREATE_NONCE&&(h.createNonce=global.SYS_CREATE_NONCE,delete global.SYS_CREATE_NONCE),global.SYS_CHECK_AND_MARK_NONCE&&(h.checkAndMarkNonce=global.SYS_CHECK_AND_MARK_NONCE,delete global.SYS_CHECK_AND_MARK_NONCE),global.SYS_OUTPUT&&(h.stdOutput=global.SYS_OUTPUT,h.output=h.stdOutput,delete global.SYS_OUTPUT),global.SYS_PARSE&&(h.parse=global.SYS_PARSE,delete global.SYS_PARSE),global.SYS_PARSE_FILE&&(h.parseFile=global.SYS_PARSE_FILE,delete global.SYS_PARSE_FILE),global.SYS_PROCESS_STATISTICS&&(h.processStatistics=global.SYS_PROCESS_STATISTICS,delete global.SYS_PROCESS_STATISTICS),global.SYS_RAND&&(h.rand=global.SYS_RAND,delete global.SYS_RAND),global.SYS_SHA512&&(h.sha512=global.SYS_SHA512,delete global.SYS_SHA512),global.SYS_SHA384&&(h.sha384=global.SYS_SHA384,delete global.SYS_SHA384),global.SYS_SHA256&&(h.sha256=global.SYS_SHA256,delete global.SYS_SHA256),global.SYS_SHA224&&(h.sha224=global.SYS_SHA224,delete global.SYS_SHA224),global.SYS_SHA1&&(h.sha1=global.SYS_SHA1,delete global.SYS_SHA1),global.SYS_SERVER_STATISTICS&&(h.serverStatistics=global.SYS_SERVER_STATISTICS,delete global.SYS_SERVER_STATISTICS),global.SYS_SLEEP&&(h.sleep=global.SYS_SLEEP,delete global.SYS_SLEEP),global.SYS_TIME&&(h.time=global.SYS_TIME,delete global.SYS_TIME),global.SYS_WAIT&&(h.wait=global.SYS_WAIT,delete global.SYS_WAIT),global.SYS_IMPORT_CSV_FILE&&(h.importCsvFile=global.SYS_IMPORT_CSV_FILE,delete global.SYS_IMPORT_CSV_FILE),global.SYS_IMPORT_JSON_FILE&&(h.importJsonFile=global.SYS_IMPORT_JSON_FILE,delete global.SYS_IMPORT_JSON_FILE),global.SYS_PROCESS_CSV_FILE&&(h.processCsvFile=global.SYS_PROCESS_CSV_FILE,delete global.SYS_PROCESS_CSV_FILE),global.SYS_PROCESS_JSON_FILE&&(h.processJsonFile=global.SYS_PROCESS_JSON_FILE,delete global.SYS_PROCESS_JSON_FILE),global.SYS_CLIENT_STATISTICS&&(h.clientStatistics=global.SYS_CLIENT_STATISTICS,delete global.SYS_CLIENT_STATISTICS),global.SYS_HTTP_STATISTICS&&(h.httpStatistics=global.SYS_HTTP_STATISTICS,delete global.SYS_HTTP_STATISTICS),global.SYS_EXECUTE_EXTERNAL&&(h.executeExternal=global.SYS_EXECUTE_EXTERNAL,delete global.SYS_EXECUTE_EXTERNAL),global.SYS_EXECUTE_EXTERNAL_AND_WAIT&&(h.executeExternalAndWait=global.SYS_EXECUTE_EXTERNAL_AND_WAIT,delete global.SYS_EXECUTE_EXTERNAL_AND_WAIT),global.SYS_KILL_EXTERNAL&&(h.killExternal=global.SYS_KILL_EXTERNAL,delete global.SYS_KILL_EXTERNAL),global.SYS_STATUS_EXTERNAL&&(h.statusExternal=global.SYS_STATUS_EXTERNAL,delete global.SYS_STATUS_EXTERNAL),global.SYS_REGISTER_TASK&&(h.registerTask=global.SYS_REGISTER_TASK,delete global.SYS_REGISTER_TASK),global.SYS_UNREGISTER_TASK&&(h.unregisterTask=global.SYS_UNREGISTER_TASK,delete global.SYS_UNREGISTER_TASK),global.SYS_GET_TASK&&(h.getTask=global.SYS_GET_TASK,delete global.SYS_GET_TASK),global.SYS_TEST_PORT&&(h.testPort=global.SYS_TEST_PORT,delete global.SYS_TEST_PORT),global.SYS_IS_IP&&(h.isIP=global.SYS_IS_IP,delete global.SYS_IS_IP),h.unitTests=function(){return global.SYS_UNIT_TESTS},h.setUnitTestsResult=function(a){global.SYS_UNIT_TESTS_RESULT=a},h.toArgv=function(a,b){"undefined"==typeof b&&(b=!1);var c=[];for(var d in a)if(a.hasOwnProperty(d))if("commandSwitches"===d){for(var e="",f=0;f1?c.push(a[d][f]):e+=a[d][f];e.length>0&&c.push(e)}else"flatCommands"===d?c=c.concat(a[d]):b?c.push("--"+d+"="+a[d]):(c.push("--"+d),a[d]!==!1?a[d]!==!0?c.push(a[d]):c.push("true"):c.push("false"));return c},h.parseArgv=function(a,b){function c(b,d,e){if(d.indexOf(":")>0){var f=d.indexOf(":"),g=d.slice(0,f);b.hasOwnProperty(g)||(b[g]={}),c(b[g],d.slice(f+1,d.length),e)}else"true"===a[i+1]?b[d]=!0:"false"===a[i+1]?b[d]=!1:isNaN(a[i+1])?b[d]=a[i+1]:b[d]=parseInt(a[i+1])}function d(a,b){a.hasOwnProperty("commandSwitches")||(a.commandSwitches=[]),a.commandSwitches.push(b)}function e(a,b){for(var c=0;c2&&"--"===j.slice(0,2)){var k=j.slice(2,j.length);a.length>i&&"-"!==a[i+1].slice(0,1)?(c(h,k,a[i+1]),i++):d(h,k)}else"--"===j?g=!0:j.length>1&&"-"===j.slice(0,1)?e(h,j.slice(1,j.length)):f(h,j)}return h},h.COLORS={},global.COLORS?(h.COLORS=global.COLORS,delete global.COLORS):["COLOR_RED","COLOR_BOLD_RED","COLOR_GREEN","COLOR_BOLD_GREEN","COLOR_BLUE","COLOR_BOLD_BLUE","COLOR_YELLOW","COLOR_BOLD_YELLOW","COLOR_WHITE","COLOR_BOLD_WHITE","COLOR_CYAN","COLOR_BOLD_CYAN","COLOR_MAGENTA","COLOR_BOLD_MAGENTA","COLOR_BLACK","COLOR_BOLD_BLACK","COLOR_BLINK","COLOR_BRIGHT","COLOR_RESET"].forEach(function(a){h.COLORS[a]=""}),h.COLORS.COLOR_PUNCTUATION=h.COLORS.COLOR_RESET,h.COLORS.COLOR_STRING=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NUMBER=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_INDEX=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_TRUE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_FALSE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NULL=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_UNDEFINED=h.COLORS.COLOR_BRIGHT;var i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},j=h.COLORS,k=!1;global.COLOR_OUTPUT&&(k=global.COLOR_OUTPUT,delete global.COLOR_OUTPUT);var l=!1;global.PRETTY_PRINT&&(l=global.PRETTY_PRINT,delete global.PRETTY_PRINT);var m,n=/[\\\"\x00-\x1f]/g,o=/function ([^\(]*)?\(\) \{ \[native code\] \}/,p=/function ([^\(]*)?\((.*)\) \{/;h.printRecursive=m=function(a,c){var f=c.useColor,g=c.customInspect,i=c.useToString,k=c.limitString,l=c.showFunction;"undefined"==typeof c.seen&&(c.seen=[],c.names=[]);var m=c.seen.indexOf(a);if(m>=0)c.output+=c.names[m];else if(a&&(a instanceof Object||"object"==typeof a&&null===Object.getPrototypeOf(a)))if(c.seen.push(a),c.names.push(c.path),g&&"function"==typeof a._PRINT)a._PRINT(c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="");else if(a instanceof Array)d(a,c);else if(a.toString===Object.prototype.toString||"object"==typeof a&&null===Object.getPrototypeOf(a)){var n=!1;try{(a instanceof Set||a instanceof Map||a instanceof WeakSet||a instanceof WeakMap||"function"==typeof a[Symbol.iterator])&&(c.output+=a.toString(),n=!0)}catch(q){}n||e(a,c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="")}else if("function"==typeof a)try{var r=a.toString();if(00&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var d={names:[],seen:[],path:"~",level:0,output:"",prettyPrint:!1,useColor:!1,customInspect:!0};c(arguments[a],d),b(d.output)}b("\n")},global.start_pretty_print=function(){require("internal").startPrettyPrint()},global.stop_pretty_print=function(){require("internal").stopPrettyPrint()},global.start_color_print=function(a){require("internal").startColorPrint(a,!1)},global.stop_color_print=function(){require("internal").stopColorPrint()}}(),function(){var a=require("internal");global.ArangoConnection&&(a.ArangoConnection=global.ArangoConnection,delete global.ArangoConnection),global.SYS_ARANGO&&(a.arango=global.SYS_ARANGO,delete global.SYS_ARANGO),a.wal={flush:function(b,c){if(a.arango){var d=b?"true":"false",e=c?"true":"false";return void a.arango.PUT("/_admin/wal/flush?waitForSync="+d+"&waitForCollector="+e,"")}throw"not connected"},properties:function(b){if(a.arango)return void 0!==b?a.arango.PUT("/_admin/wal/properties",JSON.stringify(b)):a.arango.GET("/_admin/wal/properties","");throw"not connected"}},a.reloadAqlFunctions=function(){if(a.arango)return void a.arango.POST("/_admin/aql/reload","");throw"not connected"},a.reloadRouting=function(){if(a.arango)return void a.arango.POST("/_admin/routing/reload","");throw"not connected"},a.routingCache=function(){if(a.arango)return a.arango.GET("/_admin/routing/routes","");throw"not connected"},a.reloadAuth=function(){if(a.arango)return void a.arango.POST("/_admin/auth/reload","");throw"not connected"},a.executeServer=function(b){if(a.arango)return a.arango.POST("/_admin/execute",b);throw"not connected"},a.appendCurlRequest=function(b){return function(c,d,e,f){var g,h,i;if("string"!=typeof e&&void 0!==e&&(e=a.inspect(e)),h="shell> curl ","POST"===c?(g=a.arango.POST_RAW(d,e,f),h+="-X "+c+" "):"PUT"===c?(g=a.arango.PUT_RAW(d,e,f),h+="-X "+c+" "):"GET"===c?g=a.arango.GET_RAW(d,f):"DELETE"===c?(g=a.arango.DELETE_RAW(d,f),h+="-X "+c+" "):"PATCH"===c?(g=a.arango.PATCH_RAW(d,e,f),h+="-X "+c+" "):"HEAD"===c?(g=a.arango.HEAD_RAW(d,f),h+="-X "+c+" "):"OPTION"===c&&(g=a.arango.OPTION_RAW(d,e,f),h+="-X "+c+" "),void 0!==f&&""!==f)for(i in f)f.hasOwnProperty(i)&&(h+="--header '"+i+": "+f[i]+"' ");return void 0!==e&&""!==e&&(h+="--data-binary @- "),h+="--dump - http://localhost:8529"+d,b(h),void 0!==e&&""!==e&&e&&(b(" <=b)return String(a);var c,d=[];for(c=1;cc;++c)b+="\n";a.print(b)},global.console=global.console||require("console"),global.db=require("org/arangodb").db,global.arango=require("org/arangodb").arango,global.fm=require("org/arangodb/foxx/manager"),global.ArangoStatement=require("org/arangodb/arango-statement").ArangoStatement,global.tutorial=require("org/arangodb/tutorial");var initHelp=function(){var a=require("internal");if(a.db)try{a.db._collections()}catch(b){}a.quiet!==!0&&(require("org/arangodb").checkAvailableVersions(),a.arango&&a.arango.isConnected&&a.arango.isConnected()&&a.print("Type 'tutorial' for a tutorial or 'help' to see common examples"))};if("undefined"==typeof window){if(initHelp(),global.IS_EXECUTE_SCRIPT||global.IS_EXECUTE_STRING||global.IS_CHECK_SCRIPT||global.IS_UNIT_TESTS||global.IS_JS_LINT)try{var __fs__=require("fs"),__rcf__=__fs__.join(__fs__.home(),".arangosh.rc");if(__fs__.exists(__rcf__)){var __content__=__fs__.read(__rcf__);eval(__content__)}}catch(e){require("console").warn("arangosh.rc: %s",String(e))}try{delete global.IS_EXECUTE_SCRIPT,delete global.IS_EXECUTE_STRING,delete global.IS_CHECK_SCRIPT,delete global.IS_UNIT_TESTS,delete global.IS_JS_LINT}catch(e){}}!function(){function a(a,b){i(a,g+b)}function b(a){var b=require("internal").ShapedJson,c=[];0a?-1:1}),c={};return _.each(b,function(b){c[b]=a.attributes[b]}),c}}),function(){"use strict";window.ArangoQuery=Backbone.Model.extend({urlRoot:"/_api/user",defaults:{name:"",type:"custom",value:""}})}(),window.Replication=Backbone.Model.extend({defaults:{state:{},server:{}},initialize:function(){}}),window.Statistics=Backbone.Model.extend({defaults:{},url:function(){"use strict";return"/_admin/statistics"}}),window.StatisticsDescription=Backbone.Model.extend({defaults:{figures:"",groups:""},url:function(){"use strict";return"/_admin/statistics-description"}}),window.Users=Backbone.Model.extend({defaults:{user:"",active:!1,extra:{}},idAttribute:"user",parse:function(a){return this.isNotNew=!0,a},isNew:function(){return!this.isNotNew},url:function(){return this.isNew()?"/_api/user":""!==this.get("user")?"/_api/user/"+this.get("user"):"/_api/user"},checkPassword:function(a){var b=!1;return $.ajax({cache:!1,type:"POST",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1,success:function(a){b=a.result}}),b},setPassword:function(a){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1})},setExtras:function(a,b){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({extra:{name:a,img:b}}),contentType:"application/json",processData:!1})}}),function(){"use strict";window.CurrentDatabase=Backbone.Model.extend({url:"/_api/database/current",parse:function(a){return a.result}})}(),function(){"use strict";var a=function(a,b,c,d,e,f){var g={contentType:"application/json",processData:!1,type:c};b=b||function(){},f=_.extend({mount:a.encodedMount()},f);var h=_.reduce(f,function(a,b,c){return a+encodeURIComponent(c)+"="+encodeURIComponent(b)+"&"},"?");g.url="/_admin/aardvark/foxxes"+(d?"/"+d:"")+h.slice(0,h.length-1),void 0!==e&&(g.data=JSON.stringify(e)),$.ajax(g).then(function(a){b(null,a)},function(a){window.xhr=a,b(_.extend(a.status?new Error(a.responseJSON?a.responseJSON.errorMessage:a.responseText):new Error("Network Error"),{statusCode:a.status}))})};window.Foxx=Backbone.Model.extend({idAttribute:"mount",defaults:{author:"Unknown Author",name:"",version:"Unknown Version",description:"No description",license:"Unknown License",contributors:[],scripts:{},config:{},deps:{},git:"",system:!1,development:!1},isNew:function(){return!1},encodedMount:function(){return encodeURIComponent(this.get("mount"))},destroy:function(b,c){a(this,c,"DELETE",void 0,void 0,b)},isBroken:function(){return!1},needsAttention:function(){return this.isBroken()||this.needsConfiguration()||this.hasUnconfiguredDependencies()},needsConfiguration:function(){return _.any(this.get("config"),function(a){return void 0===a.current&&a.required!==!1})},hasUnconfiguredDependencies:function(){return _.any(this.get("deps"),function(a){return void 0===a.current&&a.definition.required!==!1})},getConfiguration:function(b){a(this,function(a,c){a||this.set("config",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","config")},setConfiguration:function(b,c){a(this,c,"PATCH","config",b)},getDependencies:function(b){a(this,function(a,c){a||this.set("deps",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","deps")},setDependencies:function(b,c){a(this,c,"PATCH","deps",b)},toggleDevelopment:function(b,c){a(this,function(a,d){a||this.set("development",b),"function"==typeof c&&c(a,d)}.bind(this),"PATCH","devel",b)},runScript:function(b,c,d){a(this,d,"POST","scripts/"+b,c)},runTests:function(b,c){a(this,function(a,b){"function"==typeof c&&c(a?a.responseJSON:a,b)}.bind(this),"POST","tests",b)},isSystem:function(){return this.get("system")},isDevelopment:function(){return this.get("development")},download:function(){window.open("/_db/"+arango.getDatabaseName()+"/_admin/aardvark/foxxes/download/zip?mount="+this.encodedMount())}})}(),function(){"use strict";window.Graph=Backbone.Model.extend({idAttribute:"_key",urlRoot:"/_api/gharial",isNew:function(){return!this.get("_id")},parse:function(a){return a.graph||a},addEdgeDefinition:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/edge",data:JSON.stringify(a)})},deleteEdgeDefinition:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a})},modifyEdgeDefinition:function(a){$.ajax({async:!1,type:"PUT",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a.collection,data:JSON.stringify(a)})},addVertexCollection:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/vertex",data:JSON.stringify({collection:a})})},deleteVertexCollection:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/vertex/"+a})},defaults:{name:"",edgeDefinitions:[],orphanCollections:[]}})}(),function(){"use strict";window.newArangoLog=Backbone.Model.extend({defaults:{lid:"",level:"",timestamp:"",text:"",totalAmount:""},getLogStatus:function(){switch(this.get("level")){case 1:return"Error";case 2:return"Warning";case 3:return"Info";case 4:return"Debug";default:return"Unknown"}}})}(),function(){"use strict";window.Notification=Backbone.Model.extend({defaults:{title:"",date:0,content:"",priority:"",tags:"",seen:!1}})}(),function(){"use strict";window.queryManagementModel=Backbone.Model.extend({defaults:{id:"",query:"",started:"",runTime:""}})}(),function(){"use strict";window.PaginatedCollection=Backbone.Collection.extend({page:0,pagesize:10,totalAmount:0,getPage:function(){return this.page+1},setPage:function(a){return a>=this.getLastPageNumber()?void(this.page=this.getLastPageNumber()-1):1>a?void(this.page=0):void(this.page=a-1)},getLastPageNumber:function(){return Math.max(Math.ceil(this.totalAmount/this.pagesize),1)},getOffset:function(){return this.page*this.pagesize},getPageSize:function(){return this.pagesize},setPageSize:function(a){if("all"===a)this.pagesize="all";else try{a=parseInt(a,10),this.pagesize=a}catch(b){}},setToFirst:function(){this.page=0},setToLast:function(){this.setPage(this.getLastPageNumber())},setToPrev:function(){this.setPage(this.getPage()-1)},setToNext:function(){this.setPage(this.getPage()+1)},setTotal:function(a){this.totalAmount=a},getTotal:function(){return this.totalAmount},setTotalMinusOne:function(){this.totalAmount--}})}(),function(){"use strict";window.Airports=Backbone.Collection.extend({initialize:function(a){this.collectionName=a.collectionName},getAirports:function(a){var b=this;$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for a in airports return {Latitude: a.Latitude, Longitude: a.Longitude, Name: a.Name, City: a.City, _key: a._key}"}),contentType:"application/json",processData:!1,success:function(c){_.each(c.result,function(a){b.add(a)}),a&&a()},error:function(a){}})},getShortestFlight:function(a,b,c){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"RETURN SHORTEST_PATH(@@airports,@@flights,@start,@dest,'outbound',{})",bindVars:{"@flights":this.collectionName,"@airports":"airports", -start:"airports/"+a,dest:"airports/"+b}}),contentType:"application/json",processData:!1,success:function(a){c(a.result[0])},error:function(a){}})},getFlightDistribution:function(a){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"FOR f IN @@flights COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(b){a(b.result)},error:function(a){}})},getFlightsForAirport:function(a,b){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for f in @@flights filter f._from == @airport COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{airport:"airports/"+a,"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(a){b(a.result)},error:function(a){}})},model:window.Airport})}(),function(){"use strict";window.arangoCollections=Backbone.Collection.extend({url:"/_api/collection",model:arangoCollectionModel,searchOptions:{searchPhrase:null,includeSystem:!1,includeDocument:!0,includeEdge:!0,includeLoaded:!0,includeUnloaded:!0,sortBy:"name",sortOrder:1},translateStatus:function(a){switch(a){case 0:return"corrupted";case 1:return"new born collection";case 2:return"unloaded";case 3:return"loaded";case 4:return"in the process of being unloaded";case 5:return"deleted";case 6:return"loading";default:return}},translateTypePicture:function(a){var b="";switch(a){case"document":b+="fa-file-text-o";break;case"edge":b+="fa-share-alt";break;case"unknown":b+="fa-question";break;default:b+="fa-cogs"}return b},parse:function(a){var b=this;return _.each(a.collections,function(a){a.isSystem=arangoHelper.isSystemCollection(a),a.type=arangoHelper.collectionType(a),a.status=b.translateStatus(a.status),a.picture=b.translateTypePicture(a.type)}),a.collections},getPosition:function(a){var b,c=this.getFiltered(this.searchOptions),d=null,e=null;for(b=0;b0&&(d=c[b-1]),b0){var e,f=d.get("name").toLowerCase();for(e=0;ed?-1:1):0}),b},newCollection:function(a,b,c,d,e,f,g){var h={},i={};return i.name=a,i.waitForSync=b,d>0&&(i.journalSize=d),i.isSystem=c,i.type=parseInt(e,10),f&&(i.numberOfShards=f,i.shardKeys=g),h.status=!1,$.ajax({cache:!1,type:"POST",url:"/_api/collection",data:JSON.stringify(i),contentType:"application/json",processData:!1,async:!1,success:function(a){h.status=!0,h.data=a},error:function(a){h.status=!1,h.errorMessage=JSON.parse(a.responseText).errorMessage}}),h}})}(),function(){"use strict";window.ArangoDatabase=Backbone.Collection.extend({model:window.DatabaseModel,sortOptions:{desc:!1},url:"/_api/database",comparator:function(a,b){var c=a.get("name").toLowerCase(),d=b.get("name").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},parse:function(a){return a?_.map(a.result,function(a){return{name:a}}):void 0},initialize:function(){var a=this;this.fetch().done(function(){a.sort()})},setSortingDesc:function(a){this.sortOptions.desc=a},getDatabases:function(){var a=this;return this.fetch().done(function(){a.sort()}),this.models},getDatabasesForUser:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/user",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b.result},error:function(){a=[]}}),a.sort()},createDatabaseURL:function(a,b,c){var d=window.location,e=window.location.hash;b=b?"SSL"===b||"https:"===b?"https:":"http:":d.protocol,c=c||d.port;var f=b+"//"+window.location.hostname+":"+c+"/_db/"+encodeURIComponent(a)+"/_admin/aardvark/standalone.html";if(e){var g=e.split("/")[0];0===g.indexOf("#collection")&&(g="#collections"),0===g.indexOf("#application")&&(g="#applications"),f+=g}return f},getCurrentDatabase:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/current",contentType:"application/json",processData:!1,async:!1,success:function(b){return 200===b.code?void(a=b.result.name):void(a=b)},error:function(b){a=b}}),a},hasSystemAccess:function(){var a=this.getDatabasesForUser();return _.contains(a,"_system")}})}(),window.arangoDocument=Backbone.Collection.extend({url:"/_api/document/",model:arangoDocumentModel,collectionInfo:{},deleteEdge:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/edge/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},deleteDocument:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/document/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},addDocument:function(a,b){var c=this;c.createTypeDocument(a,b)},createTypeEdge:function(a,b,c,d){var e,f=!1;return e=d?JSON.stringify({_key:d}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/edge?collection="+a+"&from="+b+"&to="+c,data:e,contentType:"application/json",processData:!1,success:function(a){f=a._id},error:function(a){f=!1}}),f},createTypeDocument:function(a,b){var c,d=!1;return c=b?JSON.stringify({_key:b}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/document?collection="+encodeURIComponent(a),data:c,contentType:"application/json",processData:!1,success:function(a){d=a._id},error:function(a){d=!1}}),d},getCollectionInfo:function(a){var b=this;return $.ajax({cache:!1,type:"GET",url:"/_api/collection/"+a+"?"+arangoHelper.getRandomToken(),contentType:"application/json",processData:!1,async:!1,success:function(a){b.collectionInfo=a},error:function(a){}}),b.collectionInfo},getEdge:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/edge/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},getDocument:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/document/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},saveEdge:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/edge/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},saveDocument:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/document/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},updateLocalDocument:function(a){this.clearDocument(),this.add(a)},clearDocument:function(){this.reset()}}),function(){"use strict";window.arangoDocuments=window.PaginatedCollection.extend({collectionID:1,filters:[],MAX_SORT:12e3,lastQuery:{},sortAttribute:"_key",url:"/_api/documents",model:window.arangoDocumentModel,loadTotal:function(){var a=this;$.ajax({cache:!1,type:"GET",url:"/_api/collection/"+this.collectionID+"/count",contentType:"application/json",processData:!1,async:!1,success:function(b){a.setTotal(b.count)}})},setCollection:function(a){this.resetFilter(),this.collectionID=a,this.setPage(1),this.loadTotal()},setSort:function(a){this.sortAttribute=a},getSort:function(){return this.sortAttribute},addFilter:function(a,b,c){this.filters.push({attr:a,op:b,val:c})},setFiltersForQuery:function(a){if(0===this.filters.length)return"";var b=" FILTER",c=_.map(this.filters,function(b,c){var d=" x.`";return d+=b.attr,d+="` ",d+=b.op,d+=" @param",d+=c,a["param"+c]=b.val,d});return b+c.join(" &&")},setPagesize:function(a){this.setPageSize(a)},resetFilter:function(){this.filters=[]},moveDocument:function(a,b,c,d){var e,f,g,h,i={"@collection":b,filterid:a};e="FOR x IN @@collection",e+=" FILTER x._key == @filterid",e+=" INSERT x IN ",e+=c,f="FOR x in @@collection",f+=" FILTER x._key == @filterid",f+=" REMOVE x IN @@collection",g={query:e,bindVars:i},h={query:f,bindVars:i},window.progressView.show(),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(g),contentType:"application/json",success:function(a){$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(h),contentType:"application/json",success:function(a){d&&d(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Documents inserted, but could not be removed.")}})},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not move selected documents.")}})},getDocuments:function(a){window.progressView.showWithDelay(300,"Fetching documents...");var b,c,d,e,f=this;c={"@collection":this.collectionID,offset:this.getOffset(),count:this.getPageSize()},b="FOR x IN @@collection LET att = SLICE(ATTRIBUTES(x), 0, 25)",b+=this.setFiltersForQuery(c),this.getTotal()0)&&(e.options={fullCount:!0}),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(e),contentType:"application/json",success:function(b){window.progressView.toShow=!1,f.clearDocuments(),b.extra&&void 0!==b.extra.stats.fullCount&&f.setTotal(b.extra.stats.fullCount),0!==f.getTotal()&&_.each(b.result,function(a){f.add({id:a._id,rev:a._rev,key:a._key,content:a})}),f.lastQuery=e,a(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not fetch requested documents.")}})},clearDocuments:function(){this.reset()},buildDownloadDocumentQuery:function(){var a,b,c;return c={"@collection":this.collectionID},a="FOR x in @@collection",a+=this.setFiltersForQuery(c),this.getTotal()0&&(b="At least one error occurred during upload")}catch(d){}}}),b}})}(),function(){"use strict";window.ArangoLogs=window.PaginatedCollection.extend({upto:!1,loglevel:0,totalPages:0,parse:function(a){var b=[];return _.each(a.lid,function(c,d){b.push({level:a.level[d],lid:c,text:a.text[d],timestamp:a.timestamp[d],totalAmount:a.totalAmount})}),this.totalAmount=a.totalAmount,this.totalPages=Math.ceil(this.totalAmount/this.pagesize),b},initialize:function(a){a.upto===!0&&(this.upto=!0),this.loglevel=a.loglevel},model:window.newArangoLog,url:function(){var a,b,c,d;c=this.page*this.pagesize;var e=this.totalAmount-(this.page+1)*this.pagesize;return 0>e&&this.page===this.totalPages-1?(e=0,d=this.totalAmount%this.pagesize):d=this.pagesize,0===this.totalAmount&&(d=1),a=this.upto?"upto":"level",b="/_admin/log?"+a+"="+this.loglevel+"&size="+d+"&offset="+e}})}(),function(){"use strict";window.ArangoQueries=Backbone.Collection.extend({initialize:function(a,b){var c;$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser===!1&&(this.activeUser="root")},url:"/_api/user/",model:ArangoQuery,activeUser:null,parse:function(a){var b,c=this;return _.each(a.result,function(a){if(a.user===c.activeUser)try{a.extra.queries&&(b=a.extra.queries)}catch(d){}}),b},saveCollectionQueries:function(){if(0===this.activeUser)return!1;var a=!1,b=[];return this.each(function(a){b.push({value:a.attributes.value,name:a.attributes.name})}),$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+encodeURIComponent(this.activeUser),data:JSON.stringify({extra:{queries:b}}),contentType:"application/json",processData:!1,success:function(){a=!0},error:function(){a=!1}}),a},saveImportQueries:function(a,b){return 0===this.activeUser?!1:(window.progressView.show("Fetching documents..."),void $.ajax({cache:!1,type:"POST",async:!1,url:"query/upload/"+encodeURIComponent(this.activeUser),data:a,contentType:"application/json",processData:!1,success:function(){window.progressView.hide(),b()},error:function(){window.progressView.hide(),arangoHelper.arangoError("Query error","queries could not be imported")}}))}})}(),window.ArangoReplication=Backbone.Collection.extend({model:window.Replication,url:"../api/user",getLogState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/logger-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a},getApplyState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/applier-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a}}),window.StatisticsCollection=Backbone.Collection.extend({model:window.Statistics,url:"/_admin/statistics"}),window.StatisticsDescriptionCollection=Backbone.Collection.extend({model:window.StatisticsDescription,url:"/_admin/statistics-description",parse:function(a){return a}}),window.ArangoUsers=Backbone.Collection.extend({model:window.Users,activeUser:null,activeUserSettings:{query:{},shell:{},testing:!0},sortOptions:{desc:!1},url:"/_api/user",comparator:function(a,b){var c=a.get("user").toLowerCase(),d=b.get("user").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},login:function(a,b){var c=null;return $.ajax("login",{async:!1,method:"POST",data:JSON.stringify({username:a,password:b}),dataType:"json"}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser},setSortingDesc:function(a){this.sortOptions.desc=a},logout:function(){$.ajax("logout",{async:!1,method:"POST"}),this.activeUser=null,this.reset(),window.App.navigate(""),window.location.reload()},setUserSettings:function(a,b){this.activeUserSettings.identifier=b},loadUserSettings:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),contentType:"application/json",processData:!1,async:!1,success:function(b){a.activeUserSettings=b.extra},error:function(a){}})},saveUserSettings:function(){var a=this;$.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),data:JSON.stringify({extra:a.activeUserSettings}),contentType:"application/json",processData:!1,success:function(a){},error:function(a){}})},parse:function(a){var b=[];return _.each(a.result,function(a){b.push(a)}),b},whoAmI:function(){if(this.activeUser)return this.activeUser;var a;return $.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user}),this.activeUser=a,this.activeUser}}),function(){"use strict";window.FoxxCollection=Backbone.Collection.extend({model:window.Foxx,sortOptions:{desc:!1},url:"/_admin/aardvark/foxxes",comparator:function(a,b){var c,d;return this.sortOptions.desc===!0?(c=a.get("mount"),d=b.get("mount"),d>c?1:c>d?-1:0):(c=a.get("mount"),d=b.get("mount"),c>d?1:d>c?-1:0)},setSortingDesc:function(a){this.sortOptions.desc=a},installFromGithub:function(a,b,c,d){var e="/_admin/aardvark/foxxes/git?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromStore:function(a,b,c,d){var e="/_admin/aardvark/foxxes/store?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromZip:function(a,b,c,d){var e="/_admin/aardvark/foxxes/zip?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify({zipFile:a}),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},generate:function(a,b,c,d){var e="/_admin/aardvark/foxxes/generate?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})}})}(),function(){"use strict";window.GraphCollection=Backbone.Collection.extend({model:window.Graph,sortOptions:{desc:!1},url:"/_api/gharial",comparator:function(a,b){var c=a.get("_key")||"",d=b.get("_key")||"";return c=c.toLowerCase(),d=d.toLowerCase(),this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},setSortingDesc:function(a){this.sortOptions.desc=a},parse:function(a){return a.error?void 0:a.graphs}})}(),function(){"use strict";window.NotificationCollection=Backbone.Collection.extend({model:window.Notification,url:""})}(),function(){"use strict";window.QueryManagementActive=Backbone.Collection.extend({model:window.queryManagementModel,url:function(){return"/_api/query/current"},killRunningQuery:function(a,b){$.ajax({url:"/_api/query/"+encodeURIComponent(a),type:"DELETE",success:function(a){b()}})}})}(),function(){"use strict";window.QueryManagementSlow=Backbone.Collection.extend({model:window.queryManagementModel,url:"/_api/query/slow",deleteSlowQueryHistory:function(a){var b=this;$.ajax({url:b.url,type:"DELETE",success:function(b){a()}})}})}(),function(){"use strict";window.PaginationView=Backbone.View.extend({collection:null,paginationDiv:"",idPrefix:"",rerender:function(){},jumpTo:function(a){this.collection.setPage(a),this.rerender()},firstPage:function(){this.jumpTo(1)},lastPage:function(){this.jumpTo(this.collection.getLastPageNumber())},firstDocuments:function(){this.jumpTo(1)},lastDocuments:function(){this.jumpTo(this.collection.getLastPageNumber())},prevDocuments:function(){this.jumpTo(this.collection.getPage()-1)},nextDocuments:function(){this.jumpTo(this.collection.getPage()+1)},renderPagination:function(){$(this.paginationDiv).html("");var a=this,b=this.collection.getPage(),c=this.collection.getLastPageNumber(),d=$(this.paginationDiv),e={page:b,lastPage:c,click:function(b){a.jumpTo(b),e.page=b}};d.html(""),d.pagination(e),$(this.paginationDiv).prepend('
'),$(this.paginationDiv).append('
')}})}(),function(){"use strict";window.ApiView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("apiView.ejs"),initialize:function(){this.swaggerUi=new SwaggerUi({discoveryUrl:"api-docs.json",apiKey:!1,dom_id:"swagger-ui-container",supportHeaderParams:!0,supportedSubmitMethods:["get","post","put","delete","patch","head"],onComplete:function(){$("pre code").each(function(a,b){hljs.highlightBlock(b)})},onFailure:function(a){var b=document.createElement("div"),c=document.createElement("strong");c.appendChild(document.createTextNode("Sorry the code is not documented properly")),b.appendChild(c),b.appendChild(document.createElement("br")),b.appendChild(document.createTextNode(JSON.stringify(a))),$("#swagger-ui-container").append(b)},docExpansion:"none"})},render:function(){return $(this.el).html(this.template.render({})),this.swaggerUi.load(),this}})}(),function(){"use strict";window.ApplicationDetailView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationDetailView.ejs"),events:{"click .open":"openApp","click .delete":"deleteApp","click #app-config":"showConfigDialog","click #app-deps":"showDepsDialog","click #app-switch-mode":"toggleDevelopment","click #app-scripts [data-script]":"runScript","click #app-tests":"runTests","click #app-upgrade":"upgradeApp","click #download-app":"downloadApp","click #app-show-swagger":"showSwagger","click #app-show-readme":"showReadme","mouseenter #app-scripts":"showDropdown","mouseleave #app-scripts":"hideDropdown"},downloadApp:function(){this.model.isSystem()||this.model.download()},upgradeApp:function(){var a=this.model.get("mount");window.foxxInstallView.upgrade(a,function(){window.App.applicationDetail(encodeURIComponent(a))})},updateConfig:function(){this.model.getConfiguration(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-config")[this.model.needsConfiguration()?"show":"hide"]()}.bind(this))},updateDeps:function(){this.model.getDependencies(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-deps")[this.model.hasUnconfiguredDependencies()?"show":"hide"]()}.bind(this))},toggleDevelopment:function(){this.model.toggleDevelopment(!this.model.isDevelopment(),function(){this.model.isDevelopment()?($("#app-switch-mode").val("Set Pro"),$("#app-development-indicator").css("display","inline"),$("#app-development-path").css("display","inline")):($("#app-switch-mode").val("Set Dev"),$("#app-development-indicator").css("display","none"),$("#app-development-path").css("display","none"))}.bind(this))},runScript:function(a){a.preventDefault();var b=$(a.currentTarget).attr("data-script"),c=[window.modalView.createBlobEntry("app_script_arguments","Script arguments","",null,"optional",!1,[{rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty"}])],d=[window.modalView.createSuccessButton("Run script",function(){var a=$("#app_script_arguments").val();a=a&&JSON.parse(a),window.modalView.hide(),this.model.runScript(b,a,function(a,c){var d;d=a?"

The script failed with an error"+(a.statusCode?" (HTTP "+a.statusCode+")":"")+":

"+a.message+"
":c?"

Script results:

"+JSON.stringify(c,null,2)+"
":"

The script ran successfully.

",window.modalView.show("modalTable.ejs",'Result of script "'+b+'"',void 0,void 0,void 0,d)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run script "'+b+'" on "'+this.model.get("mount")+'"',d,c)},showSwagger:function(a){a.preventDefault(),this.render("swagger")},showReadme:function(a){a.preventDefault(),this.render("readme")},runTests:function(a){a.preventDefault();var b="

WARNING: Running tests may result in destructive side-effects including data loss. Please make sure not to run tests on a production database.

";this.model.isDevelopment()&&(b+="

WARNING: This app is running in development mode. If any of the tests access the app's HTTP API they may become non-deterministic.

");var c=[window.modalView.createSuccessButton("Run tests",function(){window.modalView.hide(),this.model.runTests({reporter:"suite"},function(a,b){window.modalView.show("modalTestResults.ejs","Test results",void 0,void 0,void 0,a||b)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run tests for app "'+this.model.get("mount")+'"',c,void 0,void 0,b)},render:function(a){return $(this.el).html(this.template.render({app:this.model,db:arangoHelper.currentDatabase(),mode:a})),$.get(this.appUrl()).success(function(){$(".open",this.el).prop("disabled",!1)}.bind(this)),this.updateConfig(),this.updateDeps(),$(this.el)},openApp:function(){window.open(this.appUrl(),this.model.get("title")).focus()},deleteApp:function(){var a=[window.modalView.createDeleteButton("Delete",function(){var a={teardown:$("#app_delete_run_teardown").is(":checked")};this.model.destroy(a,function(a,b){a||b.error!==!1||(window.modalView.hide(),window.App.navigate("applications",{trigger:!0}))})}.bind(this))],b=[window.modalView.createCheckboxEntry("app_delete_run_teardown","Run teardown?",!0,"Should this app's teardown script be executed before removing the app?",!0)];window.modalView.show("modalTable.ejs",'Delete Foxx App mounted at "'+this.model.get("mount")+'"',a,b,void 0,"

Are you sure? There is no way back...

",!0)},appUrl:function(){return window.location.origin+"/_db/"+encodeURIComponent(arangoHelper.currentDatabase())+this.model.get("mount")},applyConfig:function(){var a={};_.each(this.model.get("config"),function(b,c){var d=$("#app_config_"+c),e=d.val();if("boolean"===b.type||"bool"===b.type)return void(a[c]=d.is(":checked"));if(""===e&&b.hasOwnProperty("default"))return a[c]=b["default"],void("json"===b.type&&(a[c]=JSON.stringify(b["default"])));if("number"===b.type)a[c]=parseFloat(e);else if("integer"===b.type||"int"===b.type)a[c]=parseInt(e,10);else{if("json"!==b.type)return void(a[c]=window.arangoHelper.escapeHtml(e));a[c]=e&&JSON.stringify(JSON.parse(e))}}),this.model.setConfiguration(a,function(){window.modalView.hide(),this.updateConfig()}.bind(this))},showConfigDialog:function(){if(!_.isEmpty(this.model.get("config"))){var a=_.map(this.model.get("config"),function(a,b){var c=void 0===a["default"]?"":String(a["default"]),d=void 0===a.current?"":String(a.current),e="createTextEntry",f=!1,g=[];return"boolean"===a.type||"bool"===a.type?(e="createCheckboxEntry",a["default"]=a["default"]||!1,c=a["default"]||!1,d=a.current||!1):"json"===a.type?(e="createBlobEntry",c=void 0===a["default"]?"":JSON.stringify(a["default"]),d=void 0===a.current?"":a.current,g.push({rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty."})):"integer"===a.type||"int"===a.type?g.push({rule:Joi.number().integer().optional().allow(""),msg:"Has to be an integer."}):"number"===a.type?g.push({rule:Joi.number().optional().allow(""),msg:"Has to be a number."}):("password"===a.type&&(e="createPasswordEntry"),g.push({rule:Joi.string().optional().allow(""),msg:"Has to be a string."})),void 0===a["default"]&&a.required!==!1&&(f=!0,g.unshift({rule:Joi.any().required(),msg:"This field is required."})),window.modalView[e]("app_config_"+b,b,d,a.description,c,f,g)}),b=[window.modalView.createSuccessButton("Apply",this.applyConfig.bind(this))];window.modalView.show("modalTable.ejs","Configuration",b,a)}},applyDeps:function(){var a={};_.each(this.model.get("deps"),function(b,c){var d=$("#app_deps_"+c);a[c]=window.arangoHelper.escapeHtml(d.val())}),this.model.setDependencies(a,function(){window.modalView.hide(),this.updateDeps()}.bind(this))},showDepsDialog:function(){if(!_.isEmpty(this.model.get("deps"))){var a=_.map(this.model.get("deps"),function(a,b){var c=void 0===a.current?"":String(a.current),d="",e=a.definition.name;"*"!==a.definition.version&&(e+="@"+a.definition.version);var f=[{rule:Joi.string().optional().allow(""),msg:"Has to be a string."}];return a.definition.required&&f.push({rule:Joi.string().required(),msg:"This value is required."}),window.modalView.createTextEntry("app_deps_"+b,a.title,c,e,d,a.definition.required,f)}),b=[window.modalView.createSuccessButton("Apply",this.applyDeps.bind(this))];window.modalView.show("modalTable.ejs","Dependencies",b,a)}},showDropdown:function(){_.isEmpty(this.model.get("scripts"))||$("#scripts_dropdown").show(200)},hideDropdown:function(){$("#scripts_dropdown").hide()}})}(),function(){"use strict";window.ApplicationsView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationsView.ejs"),events:{"click #addApp":"createInstallModal","click #foxxToggle":"slideToggle","click #checkDevel":"toggleDevel","click #checkProduction":"toggleProduction","click #checkSystem":"toggleSystem"},fixCheckboxes:function(){this._showDevel?$("#checkDevel").attr("checked","checked"):$("#checkDevel").removeAttr("checked"),this._showSystem?$("#checkSystem").attr("checked","checked"):$("#checkSystem").removeAttr("checked"),this._showProd?$("#checkProduction").attr("checked","checked"):$("#checkProduction").removeAttr("checked"),$("#checkDevel").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkSystem").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkProduction").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),arangoHelper.setCheckboxStatus("#foxxDropdown")},toggleDevel:function(){var a=this;this._showDevel=!this._showDevel,_.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel)}),this.fixCheckboxes()},toggleProduction:function(){var a=this;this._showProd=!this._showProd,_.each(this._installedSubViews,function(b){b.toggle("production",a._showProd)}),this.fixCheckboxes()},toggleSystem:function(){this._showSystem=!this._showSystem;var a=this;_.each(this._installedSubViews,function(b){b.toggle("system",a._showSystem)}),this.fixCheckboxes()},reload:function(){var a=this;_.each(this._installedSubViews,function(a){a.undelegateEvents()}),this.collection.fetch({success:function(){a.createSubViews(),a.render()}})},createSubViews:function(){var a=this;this._installedSubViews={},a.collection.each(function(b){var c=new window.FoxxActiveView({model:b,appsView:a});a._installedSubViews[b.get("mount")]=c})},initialize:function(){this._installedSubViews={},this._showDevel=!0,this._showProd=!0,this._showSystem=!1,this.reload()},slideToggle:function(){$("#foxxToggle").toggleClass("activated"),$("#foxxDropdownOut").slideToggle(200)},createInstallModal:function(a){a.preventDefault(),window.foxxInstallView.install(this.reload.bind(this))},render:function(){this.collection.sort(),$(this.el).html(this.template.render({})),_.each(this._installedSubViews,function(a){$("#installedList").append(a.render())}),this.delegateEvents(),$("#checkDevel").attr("checked",this._showDevel),$("#checkProduction").attr("checked",this._showProd),$("#checkSystem").attr("checked",this._showSystem),arangoHelper.setCheckboxStatus("#foxxDropdown");var a=this;return _.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel),b.toggle("system",a._showSystem)}),arangoHelper.fixTooltips("icon_arangodb","left"),this}})}(),function(){"use strict";window.CollectionListItemView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("collectionsItemView.ejs"),initialize:function(){this.collectionsView=this.options.collectionsView},events:{"click .iconSet.icon_arangodb_settings2":"createEditPropertiesModal","click .pull-left":"noop","click .icon_arangodb_settings2":"editProperties","click .spanInfo":"showProperties",click:"selectCollection"},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el).attr("id","collection_"+this.model.get("name")),this},editProperties:function(a){a.stopPropagation(),this.createEditPropertiesModal()},showProperties:function(a){a.stopPropagation(),this.createInfoModal()},selectCollection:function(a){return $(a.target).hasClass("disabled")?0:void window.App.navigate("collection/"+encodeURIComponent(this.model.get("name"))+"/documents/1",{trigger:!0})},noop:function(a){a.stopPropagation()},unloadCollection:function(){this.model.unloadCollection(),window.modalView.hide()},loadCollection:function(){this.model.loadCollection(),window.modalView.hide()},truncateCollection:function(){this.model.truncateCollection(),this.render(),window.modalView.hide()},deleteCollection:function(){ -this.model.destroy({error:function(){arangoHelper.arangoError("Could not delete collection.")},success:function(){window.modalView.hide()}}),this.collectionsView.render()},saveModifiedCollection:function(){var a;a=window.isCoordinator()?this.model.get("name"):$("#change-collection-name").val();var b=this.model.get("status");if("loaded"===b){var c;try{c=JSON.parse(1024*$("#change-collection-size").val()*1024)}catch(d){return arangoHelper.arangoError("Please enter a valid number"),0}var e;try{if(e=JSON.parse($("#change-index-buckets").val()),1>e||parseInt(e)!==Math.pow(2,Math.log2(e)))throw"invalid indexBuckets value"}catch(d){return arangoHelper.arangoError("Please enter a valid number of index buckets"),0}var f;if(this.model.get("name")!==a&&(f=this.model.renameCollection(a)),f!==!0&&void 0!==f)return arangoHelper.arangoError("Collection error: "+f),0;var g=$("#change-collection-sync").val(),h=this.model.changeCollection(g,c,e);if(h!==!0)return arangoHelper.arangoNotification("Collection error",h),0;this.collectionsView.render(),window.modalView.hide()}else if("unloaded"===b)if(this.model.get("name")!==a){var i=this.model.renameCollection(a);i===!0?(this.collectionsView.render(),window.modalView.hide()):arangoHelper.arangoError("Collection error: "+i)}else window.modalView.hide()},createEditPropertiesModal:function(){var a=!1;"loaded"===this.model.get("status")&&(a=!0);var b=[],c=[];if(window.isCoordinator()||c.push(window.modalView.createTextEntry("change-collection-name","Name",this.model.get("name"),!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a){var d=this.model.getProperties().journalSize;d/=1048576,c.push(window.modalView.createTextEntry("change-collection-size","Journal size",d,"The maximal size of a journal or datafile (in MB). Must be at least 1.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}]));var e=this.model.getProperties().indexBuckets;c.push(window.modalView.createTextEntry("change-index-buckets","Index buckets",e,"The number of index buckets for this collection. Must be at least 1 and a power of 2.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[1-9][0-9]*$/),msg:"Must be a number greater than 1 and a power of 2."}]));var f=this.model.getProperties().waitForSync;c.push(window.modalView.createSelectEntry("change-collection-sync","Wait for sync",f,"Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}]))}c.push(window.modalView.createReadOnlyEntry("change-collection-id","ID",this.model.get("id"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-type","Type",this.model.get("type"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-status","Status",this.model.get("status"),"")),b.push(window.modalView.createDeleteButton("Delete",this.deleteCollection.bind(this))),b.push(window.modalView.createDeleteButton("Truncate",this.truncateCollection.bind(this))),a?b.push(window.modalView.createNotificationButton("Unload",this.unloadCollection.bind(this))):b.push(window.modalView.createNotificationButton("Load",this.loadCollection.bind(this))),b.push(window.modalView.createSuccessButton("Save",this.saveModifiedCollection.bind(this))),window.modalView.show("modalTable.ejs","Modify Collection",b,c)},createInfoModal:function(){var a=[],b=this.model;window.modalView.show("modalCollectionInfo.ejs","Collection: "+this.model.get("name"),a,b)}})}(),function(){"use strict";window.CollectionsView=Backbone.View.extend({el:"#content",el2:"#collectionsThumbnailsIn",searchTimeout:null,template:templateEngine.createTemplate("collectionsView.ejs"),render:function(){var a=!1;$("#collectionsDropdown").is(":visible")&&(a=!0),$(this.el).html(this.template.render({})),this.setFilterValues(),a===!0&&$("#collectionsDropdown2").show();var b=this.collection.searchOptions;this.collection.getFiltered(b).forEach(function(a){$("#collectionsThumbnailsIn",this.el).append(new window.CollectionListItemView({model:a,collectionsView:this}).render().el)},this),"none"===$("#collectionsDropdown2").css("display")?$("#collectionsToggle").removeClass("activated"):$("#collectionsToggle").addClass("activated");var c;arangoHelper.setCheckboxStatus("#collectionsDropdown");try{c=b.searchPhrase.length}catch(d){}return $("#searchInput").val(b.searchPhrase),$("#searchInput").focus(),$("#searchInput")[0].setSelectionRange(c,c),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","left"),this},events:{"click #createCollection":"createCollection","keydown #searchInput":"restrictToSearchPhraseKey","change #searchInput":"restrictToSearchPhrase","click #searchSubmit":"restrictToSearchPhrase","click .checkSystemCollections":"checkSystem","click #checkLoaded":"checkLoaded","click #checkUnloaded":"checkUnloaded","click #checkDocument":"checkDocument","click #checkEdge":"checkEdge","click #sortName":"sortName","click #sortType":"sortType","click #sortOrder":"sortOrder","click #collectionsToggle":"toggleView","click .css-label":"checkBoxes"},updateCollectionsView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},toggleView:function(){$("#collectionsToggle").toggleClass("activated"),$("#collectionsDropdown2").slideToggle(200)},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},checkSystem:function(){var a=this.collection.searchOptions,b=a.includeSystem;a.includeSystem=$(".checkSystemCollections").is(":checked")===!0,b!==a.includeSystem&&this.render()},checkEdge:function(){var a=this.collection.searchOptions,b=a.includeEdge;a.includeEdge=$("#checkEdge").is(":checked")===!0,b!==a.includeEdge&&this.render()},checkDocument:function(){var a=this.collection.searchOptions,b=a.includeDocument;a.includeDocument=$("#checkDocument").is(":checked")===!0,b!==a.includeDocument&&this.render()},checkLoaded:function(){var a=this.collection.searchOptions,b=a.includeLoaded;a.includeLoaded=$("#checkLoaded").is(":checked")===!0,b!==a.includeLoaded&&this.render()},checkUnloaded:function(){var a=this.collection.searchOptions,b=a.includeUnloaded;a.includeUnloaded=$("#checkUnloaded").is(":checked")===!0,b!==a.includeUnloaded&&this.render()},sortName:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortName").is(":checked")===!0?"name":"type",b!==a.sortBy&&this.render()},sortType:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortType").is(":checked")===!0?"type":"name",b!==a.sortBy&&this.render()},sortOrder:function(){var a=this.collection.searchOptions,b=a.sortOrder;a.sortOrder=$("#sortOrder").is(":checked")===!0?-1:1,b!==a.sortOrder&&this.render()},setFilterValues:function(){var a=this.collection.searchOptions;$("#checkLoaded").attr("checked",a.includeLoaded),$("#checkUnloaded").attr("checked",a.includeUnloaded),$(".checkSystemCollections").attr("checked",a.includeSystem),$("#checkEdge").attr("checked",a.includeEdge),$("#checkDocument").attr("checked",a.includeDocument),$("#sortName").attr("checked","type"!==a.sortBy),$("#sortType").attr("checked","type"===a.sortBy),$("#sortOrder").attr("checked",1!==a.sortOrder)},search:function(){var a=this.collection.searchOptions,b=$("#searchInput").val();b!==a.searchPhrase&&(a.searchPhrase=b,this.render())},resetSearch:function(){this.searchTimeout&&(clearTimeout(this.searchTimeout),this.searchTimeout=null);var a=this.collection.searchOptions;a.searchPhrase=null},restrictToSearchPhraseKey:function(){var a=this;this.resetSearch(),a.searchTimeout=setTimeout(function(){a.search()},200)},restrictToSearchPhrase:function(){this.resetSearch(),this.search()},createCollection:function(a){a.preventDefault(),this.createNewCollectionModal()},submitCreateCollection:function(){var a=$("#new-collection-name").val(),b=$("#new-collection-size").val(),c=$("#new-collection-type").val(),d=$("#new-collection-sync").val(),e=1,f=[];if(window.isCoordinator()){if(e=$("#new-collection-shards").val(),""===e&&(e=1),e=parseInt(e,10),1>e)return arangoHelper.arangoError("Number of shards has to be an integer value greater or equal 1"),0;f=_.pluck($("#new-collection-shardBy").select2("data"),"text"),0===f.length&&f.push("_key")}if("_"===a.substr(0,1))return arangoHelper.arangoError('No "_" allowed as first character!'),0;var g=!1,h="true"===d;if(b>0)try{b=1024*JSON.parse(b)*1024}catch(i){return arangoHelper.arangoError("Please enter a valid number"),0}if(""===a)return arangoHelper.arangoError("No collection name entered!"),0;var j=this.collection.newCollection(a,h,g,b,c,e,f);j.status!==!0&&arangoHelper.arangoError(j.errorMessage),this.updateCollectionsView(),window.modalView.hide()},createNewCollectionModal:function(){var a=[],b=[],c={},d=[];b.push(window.modalView.createTextEntry("new-collection-name","Name","",!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only symbols, "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),b.push(window.modalView.createSelectEntry("new-collection-type","Type","","The type of the collection to create.",[{value:2,label:"Document"},{value:3,label:"Edge"}])),window.isCoordinator()&&(b.push(window.modalView.createTextEntry("new-collection-shards","Shards","","The number of shards to create. You cannot change this afterwards. Recommended: DBServers squared","",!0)),b.push(window.modalView.createSelect2Entry("new-collection-shardBy","shardBy","","The keys used to distribute documents on shards. Type the key and press return to add it.","_key",!1))),a.push(window.modalView.createSuccessButton("Save",this.submitCreateCollection.bind(this))),d.push(window.modalView.createTextEntry("new-collection-size","Journal size","","The maximal size of a journal or datafile (in MB). Must be at least 1.","",!1,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}])),d.push(window.modalView.createSelectEntry("new-collection-sync","Sync","","Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}])),c.header="Advanced",c.content=d,window.modalView.show("modalTable.ejs","New Collection",a,b,c)}})}(),function(){"use strict";function a(a,b){return(void 0===a||null===a)&&(a=0),a.toFixed(b)}window.DashboardView=Backbone.View.extend({el:"#content",interval:1e4,defaultTimeFrame:12e5,defaultDetailFrame:1728e5,history:{},graphs:{},events:{},tendencies:{asyncPerSecondCurrent:["asyncPerSecondCurrent","asyncPerSecondPercentChange"],syncPerSecondCurrent:["syncPerSecondCurrent","syncPerSecondPercentChange"],clientConnectionsCurrent:["clientConnectionsCurrent","clientConnectionsPercentChange"],clientConnectionsAverage:["clientConnections15M","clientConnections15MPercentChange"],numberOfThreadsCurrent:["numberOfThreadsCurrent","numberOfThreadsPercentChange"],numberOfThreadsAverage:["numberOfThreads15M","numberOfThreads15MPercentChange"],virtualSizeCurrent:["virtualSizeCurrent","virtualSizePercentChange"],virtualSizeAverage:["virtualSize15M","virtualSize15MPercentChange"]},barCharts:{totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]},barChartsElementNames:{queueTimeDistributionPercent:"Queue",requestTimeDistributionPercent:"Computation",bytesSentDistributionPercent:"Bytes sent",bytesReceivedDistributionPercent:"Bytes received"},getDetailFigure:function(a){var b=$(a.currentTarget).attr("id").replace(/ChartButton/g,"");return b},showDetail:function(a){var b,c=this,d=this.getDetailFigure(a);b=this.dygraphConfig.getDetailChartConfig(d),this.getHistoryStatistics(d),this.detailGraphFigure=d,window.modalView.hideFooter=!0,window.modalView.hide(),window.modalView.show("modalGraph.ejs",b.header,void 0,void 0,void 0,void 0,this.events),window.modalView.hideFooter=!1,$("#modal-dialog").on("hidden",function(){c.hidden()}),$("#modal-dialog").toggleClass("modal-chart-detail",!0),b.height=.7*$(window).height(),b.width=$(".modal-inner-detail").width(),b.labelsDiv=$(b.labelsDiv)[0],this.detailGraph=new Dygraph(document.getElementById("lineChartDetail"),this.history[this.server][d],b)},hidden:function(){this.detailGraph.destroy(),delete this.detailGraph,delete this.detailGraphFigure},getCurrentSize:function(a){"#"!==a.substr(0,1)&&(a="#"+a);var b,c;return $(a).attr("style",""),b=$(a).height(),c=$(a).width(),{height:b,width:c}},prepareDygraphs:function(){var a,b=this;this.dygraphConfig.getDashBoardFigures().forEach(function(c){a=b.dygraphConfig.getDefaultConfig(c);var d=b.getCurrentSize(a.div);a.height=d.height,a.width=d.width,b.graphs[c]=new Dygraph(document.getElementById(a.div),b.history[b.server][c]||[],a)})},initialize:function(){this.dygraphConfig=this.options.dygraphConfig,this.d3NotInitialised=!0,this.events["click .dashboard-sub-bar-menu-sign"]=this.showDetail.bind(this),this.events["mousedown .dygraph-rangesel-zoomhandle"]=this.stopUpdating.bind(this),this.events["mouseup .dygraph-rangesel-zoomhandle"]=this.startUpdating.bind(this),this.serverInfo=this.options.serverToShow,this.serverInfo?this.server=this.serverInfo.target:this.server="-local-",this.history[this.server]={}},updateCharts:function(){var a=this;return this.detailGraph?void this.updateLineChart(this.detailGraphFigure,!0):(this.prepareD3Charts(this.isUpdating),this.prepareResidentSize(this.isUpdating),this.updateTendencies(),void Object.keys(this.graphs).forEach(function(b){a.updateLineChart(b,!1)}))},updateTendencies:function(){var a=this,b=this.tendencies,c="";Object.keys(b).forEach(function(b){var d="",e=0;a.history.hasOwnProperty(a.server)&&a.history[a.server].hasOwnProperty(b)&&(e=a.history[a.server][b][1]),0>e?c="#d05448":(c="#7da817",d="+"),$("#"+b).html(a.history[a.server][b][0]+'
'+d+e+"%")})},updateDateWindow:function(a,b){var c,d,e=(new Date).getTime();return b&&a.dateWindow_?(c=a.dateWindow_[0],d=e-a.dateWindow_[1]-5*this.interval>0?a.dateWindow_[1]:e,[c,d]):[e-this.defaultTimeFrame,e]},updateLineChart:function(a,b){var c=b?this.detailGraph:this.graphs[a],d={file:this.history[this.server][a],dateWindow:this.updateDateWindow(c,b)};c.updateOptions(d)},mergeDygraphHistory:function(a,b){var c,d=this;this.dygraphConfig.getDashBoardFigures(!0).forEach(function(e){d.dygraphConfig.mapStatToFigure[e]&&(d.history[d.server][e]||(d.history[d.server][e]=[]),c=[],d.dygraphConfig.mapStatToFigure[e].forEach(function(d){a[d]&&("times"===d?c.push(new Date(1e3*a[d][b])):c.push(a[d][b]))}),c.length>1&&d.history[d.server][e].push(c))})},cutOffHistory:function(a,b){for(var c=this;0!==c.history[c.server][a].length;){var d=c.history[c.server][a][0][0];if(d>=b)break;c.history[c.server][a].shift()}},cutOffDygraphHistory:function(a){var b=this,c=new Date(a);this.dygraphConfig.getDashBoardFigures(!0).forEach(function(a){b.dygraphConfig.mapStatToFigure[a]&&b.history[b.server][a]&&b.cutOffHistory(a,c)})},mergeHistory:function(b){var c,d=this;for(c=0;c=0;--c)d.values.push({label:this.getLabel(b[a[0]].cuts,c),value:b[a[0]].values[c]}),e.values.push({label:this.getLabel(b[a[1]].cuts,c),value:b[a[1]].values[c]});return[d,e]},getLabel:function(a,b){return a[b]?0===b?"0 - "+a[b]:a[b-1]+" - "+a[b]:">"+a[b-1]},getStatistics:function(a){var b=this,c="/_db/_system/_admin/aardvark/statistics/short",d="?start=";d+=b.nextStart?b.nextStart:((new Date).getTime()-b.defaultTimeFrame)/1e3,"-local-"!==b.server&&(c=b.serverInfo.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=short&DBserver="+b.serverInfo.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){c.times.length>0&&(b.isUpdating=!0,b.mergeHistory(c)),b.isUpdating!==!1&&(a&&a(),b.updateCharts())})},getHistoryStatistics:function(a){var b=this,c="statistics/long",d="?filter="+this.dygraphConfig.mapStatToFigure[a].join();"-local-"!==b.server&&(c=b.server.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=long&DBserver="+b.server.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){var d;for(b.history[b.server][a]=[],d=0;de?a(e,2)+" MB":a(e/1024,2)+" GB";var g=a(100*c.history[c.server].residentSizePercent,2),h=[a(c.history[c.server].physicalMemory/1024/1024/1024,0)+" GB"];nv.addGraph(function(){var a=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,right:1,bottom:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,left:1}).showValues(!1).showYAxis(!1).showXAxis(!1).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).stacked(!0);return a.yAxis.tickFormat(function(a){return a+"%"}).showMaxMin(!1),a.xAxis.showMaxMin(!1),d3.select("#residentSizeChart svg").datum(c.history[c.server].residentSizeChart).call(a),d3.select("#residentSizeChart svg").select(".nv-zeroLine").remove(),b&&(d3.select("#residentSizeChart svg").select("#total").remove(),d3.select("#residentSizeChart svg").select("#percentage").remove()),d3.select(".dashboard-bar-chart-title .percentage").html(f+" ("+g+" %)"),d3.select(".dashboard-bar-chart-title .absolut").html(h[0]),nv.utils.windowResize(a.update),a},function(){d3.selectAll("#residentSizeChart .nv-bar").on("click",function(){})})},prepareD3Charts:function(b){var c=this,d={totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]};this.d3NotInitialised&&(b=!1,this.d3NotInitialised=!1),_.each(Object.keys(d),function(b){var d=c.getCurrentSize("#"+b+"Container .dashboard-interior-chart"),e="#"+b+"Container svg";nv.addGraph(function(){var f=[0,.25,.5,.75,1],g=75,h=23,i=6;d.width<219?(f=[0,.5,1],g=72,h=21,i=5):d.width<299?(f=[0,.3334,.6667,1],g=77):d.width<379?g=87:d.width<459?g=95:d.width<539?g=100:d.width<619&&(g=105);var j=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:5,right:20,bottom:h,left:g}).showValues(!1).showYAxis(!0).showXAxis(!0).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).forceY([0,1]);j.yAxis.showMaxMin(!1);d3.select(".nv-y.nv-axis").selectAll("text").attr("transform","translate (0, "+i+")");return j.yAxis.tickValues(f).tickFormat(function(b){return a(100*b*100/100,0)+"%"}),d3.select(e).datum(c.history[c.server][b]).call(j),nv.utils.windowResize(j.update),j},function(){d3.selectAll(e+" .nv-bar").on("click",function(){})})})},stopUpdating:function(){this.isUpdating=!1},startUpdating:function(){var a=this;a.timer||(a.timer=window.setInterval(function(){a.getStatistics()},a.interval))},resize:function(){if(this.isUpdating){var a,b=this;_.each(this.graphs,function(c){a=b.getCurrentSize(c.maindiv_.id),c.resize(a.width,a.height)}),this.detailGraph&&(a=this.getCurrentSize(this.detailGraph.maindiv_.id),this.detailGraph.resize(a.width,a.height)),this.prepareD3Charts(!0),this.prepareResidentSize(!0)}},template:templateEngine.createTemplate("dashboardView.ejs"),render:function(a){a||$(this.el).html(this.template.render());var b=function(){this.prepareDygraphs(),this.isUpdating&&(this.prepareD3Charts(),this.prepareResidentSize(),this.updateTendencies()),this.startUpdating()}.bind(this),c=this.options.database.hasSystemAccess();c?this.getStatistics(b):($(".contentDiv").remove(),$(".headerBar").remove(),$(".dashboard-headerbar").remove(),$(".dashboard-row").remove(),$("#content").append('
You do not have permission to view this page.
'),$("#content").append("
You can switch to '_system' to see the dashboard.
"))}})}(),function(){"use strict";window.databaseView=Backbone.View.extend({users:null,el:"#content",template:templateEngine.createTemplate("databaseView.ejs"),dropdownVisible:!1,currentDB:"",events:{"click #createDatabase":"createDatabase","click #submitCreateDatabase":"submitCreateDatabase","click .editDatabase":"editDatabase","click .icon":"editDatabase","click #selectDatabase":"updateDatabase","click #submitDeleteDatabase":"submitDeleteDatabase","click .contentRowInactive a":"changeDatabase","keyup #databaseSearchInput":"search","click #databaseSearchSubmit":"search","click #databaseToggle":"toggleSettingsDropdown","click .css-label":"checkBoxes","click #dbSortDesc":"sorting","click svg":"switchDatabase"},sorting:function(){$("#dbSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#databaseDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},initialize:function(){this.collection.fetch({async:!1})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},render:function(){return this.currentDatabase(),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:"",currentDB:this.currentDB})),this.dropdownVisible===!0&&($("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").show()),arangoHelper.setCheckboxStatus("#databaseDropdown"),this.replaceSVGs(),this},toggleSettingsDropdown:function(){$("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").slideToggle(200)},selectedDatabase:function(){return $("#selectDatabases").val()},handleError:function(a,b,c){return 409===a?void arangoHelper.arangoError("DB","Database "+c+" already exists."):400===a?void arangoHelper.arangoError("DB","Invalid Parameters"):403===a?void arangoHelper.arangoError("DB","Insufficent rights. Execute this from _system database"):void 0},validateDatabaseInfo:function(a,b,c){return""===b?(arangoHelper.arangoError("DB","You have to define an owner for the new database"),!1):""===a?(arangoHelper.arangoError("DB","You have to define a name for the new database"),!1):0===a.indexOf("_")?(arangoHelper.arangoError("DB ","Databasename should not start with _"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("DB","Databasename may only contain numbers, letters, _ and -"),!1)},createDatabase:function(a){a.preventDefault(),this.createAddDatabaseModal()},switchDatabase:function(a){var b=$(a.currentTarget).parent().find("h5").text(),c=this.collection.createDatabaseURL(b);window.location.replace(c)},submitCreateDatabase:function(){var a=this,b=$("#newDatabaseName").val(),c=$("#newUser").val(),d=$("#newPassword").val();if(this.validateDatabaseInfo(b,c,d)){var e={name:b,users:[{username:c,passwd:d,active:!0}]};this.collection.create(e,{wait:!0,error:function(c,d){a.handleError(d.status,d.statusText,b)},success:function(b){a.updateDatabases(),window.modalView.hide(),window.App.naviView.dbSelectionView.render($("#dbSelect"))}})}},submitDeleteDatabase:function(a){var b=this.collection.where({name:a});b[0].destroy({wait:!0,url:"/_api/database/"+a}),this.updateDatabases(),window.App.naviView.dbSelectionView.render($("#dbSelect")),window.modalView.hide()},currentDatabase:function(){this.currentDB=this.collection.getCurrentDatabase()},changeDatabase:function(a){var b=$(a.currentTarget).attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},updateDatabases:function(){var a=this;this.collection.fetch({success:function(){a.render(),window.App.handleSelectDatabase()}})},editDatabase:function(a){var b=this.evaluateDatabaseName($(a.currentTarget).attr("id"),"_edit-database"),c=!0;b===this.currentDB&&(c=!1),this.createEditDatabaseModal(b,c)},search:function(){var a,b,c,d;a=$("#databaseSearchInput"),b=$("#databaseSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("name").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b,currentDB:this.currentDB})),this.replaceSVGs(),a=$("#databaseSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},replaceSVGs:function(){$(".svgToReplace").each(function(){var a=$(this),b=a.attr("id"),c=a.attr("src");$.get(c,function(c){var d=$(c).find("svg");d.attr("id",b).attr("class","tile-icon-svg").removeAttr("xmlns:a"),a.replaceWith(d)},"xml")})},evaluateDatabaseName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},createEditDatabaseModal:function(a,b){var c=[],d=[];d.push(window.modalView.createReadOnlyEntry("id_name","Name",a,"")),b?c.push(window.modalView.createDeleteButton("Delete",this.submitDeleteDatabase.bind(this,a))):c.push(window.modalView.createDisabledButton("Delete")),window.modalView.show("modalTable.ejs","Edit database",c,d)},createAddDatabaseModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newDatabaseName","Name","",!1,"Database Name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Database name must start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No database name given."}])),b.push(window.modalView.createTextEntry("newUser","Username",null!==this.users?this.users.whoAmI():"root","Please define the owner of this database. This will be the only user having initial access to this database if authentication is turned on. Please note that if you specify a username different to your account you will not be able to access the database with your account after having creating it. Specifying a username is mandatory even with authentication turned off. If there is a failure you will be informed.","Database Owner",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateDatabase.bind(this))),window.modalView.show("modalTable.ejs","Create Database",a,b)}})}(),function(){"use strict";window.DBSelectionView=Backbone.View.extend({template:templateEngine.createTemplate("dbSelectionView.ejs"),events:{"click .dbSelectionLink":"changeDatabase"},initialize:function(a){this.current=a.current},changeDatabase:function(a){var b=$(a.currentTarget).closest(".dbSelectionLink.tab").attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},render:function(a){return this.$el=a,this.$el.html(this.template.render({list:this.collection.getDatabasesForUser(),current:this.current.get("name")})),this.delegateEvents(),this.el}})}(),function(){"use strict";window.DemoView=Backbone.View.extend({MAPtarget:"M9,0C4.029,0,0,4.029,0,9s4.029,9,9,9s9-4.029,9-9S13.971,0,9,0z M9,15.93 c-3.83,0-6.93-3.1-6.93-6.93S5.17,2.07,9,2.07s6.93,3.1,6.93,6.93S12.83,15.93,9,15.93 M12.5,9c0,1.933-1.567,3.5-3.5,3.5S5.5,10.933,5.5,9S7.067,5.5,9,5.5 S12.5,7.067,12.5,9z",lineColors:["rgb(255,255,229)"],airportColor:"#222222",airportHighlightColor:"#FF4E4E",airportHoverColor:"#ff8f35",airportScale:.7,airportHighligthScale:.95,imageData:[],keyToLongLat:{},queries:[{name:"All Flights from SFO"},{name:"All Flights from JFK"},{name:"All Flights from DFW"},{name:"All Flights from ATL"},{name:"All Flights from CWA"},{name:"Flight distribution"}],el:"#content",initialize:function(a){var b=a.collectionName;this.airportCollection=new window.Airports({collectionName:b})},events:{"change #flightQuerySelect":"runSelectedQuery","keyup #demoSearchInput":"searchInput"},selectAirport:function(a){this.showAirportBalloon(a.currentTarget.id),$("#searchResults").slideUp(function(){$("#searchResults ul").html("")})},template:templateEngine.createTemplate("demoView.ejs"),generateIndex:function(){var a,b=this;b.index=lunr(function(){this.field("Name",{boost:10}),this.field("City"),this.field("_key")}),this.airportCollection.each(function(c){a=c.toJSON(),b.index.add({Name:a.Name,City:a.City,_key:a._key,id:a._key})})},render:function(){$(this.el).html(this.template.render({})),this.renderAvailableQueries();var a=function(){var a,b=[];this.airportCollection.each(function(c){a=c.toJSON(),b.push(a)}),this.imageData=this.prepareData(b),this.renderMap(),this.generateIndex()}.bind(this);return this.airportCollection.getAirports(a),this},renderAvailableQueries:function(){var a=0;_.each(this.queries,function(b){$("#flightQuerySelect").append('"),a++})},searchInput:function(a){var b=this,c=this.index.search($(a.currentTarget).val());b.resetDataHighlighting(),b.removeFlightLines(!0),_.each(c,function(a){b.setAirportColor(a.ref,b.airportHighlightColor,!1),b.setAirportSize(a.ref,b.airportHighligthScale,!1)}),1===c.length&&b.showAirportBalloon(c[0].ref),b.map.validateData()},insertAirportSelection:function(a){},runSelectedQuery:function(){this.resetDataHighlighting(),this.removeFlightLines(!0);var a=$("#flightQuerySelect option:selected").attr("position");"0"===a?this.loadAirportData("SFO"):"1"===a?this.loadAirportData("JFK"):"2"===a&&this.loadAirportData("DFW"),"3"===a&&this.loadAirportData("ATL"),"4"===a&&this.loadAirportData("CWA"),"5"===a&&(delete this.startPoint,this.loadFlightDistData())},calculateAirportSize:function(a,b){var c=this.getMinMax(b),d=(c.min,c.max),e=d/10,f=0,g=0;for(g=0;10>g;g++)if(a.countc&&(c=a.count)}),{min:b,max:c}},loadFlightDistData:function(){var a=this,b=new Date;this.airportCollection.getFlightDistribution(function(c){var d=new Date-b;a.removeFlightLines(!1);var e=0,f=0;a.resetDataHighlighting();var g=Math.pow(c[0].count,3),h=Math.pow(c[c.length-1].count,3),i=2.625/(h-g),j=function(a){return i*a-i*g};for(f=0;fc.length-6&&a.setAirportColor(k,"rgb(153,52,4)")}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var n="";for(n="Aggregation - Flight distribution
Query needed: "+(d/1e3).toFixed(3)+" sec
Number destinations: "+c.length+"
Number flights: "+e+"
Top 5:
",f=c.length-1;f>Math.max(c.length-6,0);--f){ -var o=a.airportCollection.findWhere({_key:c[f].Dest});n+=o.get("Name")+" - "+o.get("_key")+": "+c[f].count+"",f>c.length-5&&(n+="
")}$("#demo-mapdiv-info").html(n),a.map.validateData()})},loadAirportData:function(a){$("#flightQuerySelect :nth-child(1)").prop("selected",!0);var b=this,c=new Date,d=this.airportCollection.findWhere({_key:a});this.airportCollection.getFlightsForAirport(a,function(e){var f=new Date-c;b.removeFlightLines(!1);var g=0,h=0;b.resetDataHighlighting();var i=Math.pow(e[0].count,3),j=Math.pow(e[e.length-1].count,3),k=2.625/(j-i),l=function(a){return k*a-k*i};for(h=0;he.length-6),g+=e[h].count}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
");var o="";for(o=""+d.get("Name").substr(0,25)+" - "+a+"
Query needed: "+(f/1e3).toFixed(3)+" sec
Number destinations: "+e.length+"
Number flights: "+g+"
Top 5:
",h=e.length-1;h>=Math.max(e.length-5,0);--h)d=b.airportCollection.findWhere({_key:e[h].Dest}),o+=d.get("Name").substr(0,25)+" - "+d.get("_key")+": "+e[h].count+"",h>e.length-5&&(o+="
");$("#demo-mapdiv-info").html(o),b.map.validateData()})},calculateFlightWidth:function(a,b){return 2},calculateFlightColor:function(a,b){return this.lineColors[0]},zoomToAirport:function(a){this.map.zoomToSelectedObject(this.map.getObjectById(a))},showAirportBalloon:function(a){this.map.allowMultipleDescriptionWindows=!0;var b=this.map.getObjectById(a);this.map.rollOverMapObject(b)},hideAirportBalloon:function(a){var b=this.map.getObjectById(a);this.map.rollOutMapObject(b)},setAirportColor:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.color=b)}),c&&this.map.validateData()},setAirportSize:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.scale=b)}),c&&this.map.validateData()},resetDataHighlighting:function(){var a=this;_.each(this.imageData,function(b){b.color=a.airportColor,b.scale=a.airportScale}),$("#demo-mapdiv-info").html("")},prepareData:function(a){var b=this,c=[];return _.each(a,function(a){c.push({id:a._key,latitude:a.Latitude,longitude:a.Longitude,svgPath:b.MAPtarget,color:b.airportColor,scale:b.airportScale,selectedScale:1,title:a.City+" ["+a._key+"]
"+a.Name,rollOverColor:b.airportHoverColor,selectable:!0}),b.keyToLongLat[a._key]={lon:a.Longitude,lat:a.Latitude}}),c.push({color:"#FF0000",lines:[{latitudes:[51.5002,50.4422],longitudes:[-.1262,30.5367]}]}),c},createFlightEntry:function(a,b,c,d,e){return this.keyToLongLat.hasOwnProperty(a)&&this.keyToLongLat.hasOwnProperty(b)?{longitudes:[this.keyToLongLat[a].lon,this.keyToLongLat[b].lon],latitudes:[this.keyToLongLat[a].lat,this.keyToLongLat[b].lat],title:a+" - "+b+"
"+c,color:d,thickness:e}:void 0},loadShortestPath:function(a,b){var c=this,d=new Date;this.airportCollection.getShortestFlight(a,b,function(a){var b=new Date-d;a.vertices||alert("Sorry there is no flight");for(var e=a.vertices,f=0;f
Number switches: "+(e.length-2)+"
Number flights: "+a.edges.length+"
Airports:
",f=0;f"}$("#demo-mapdiv-info").html(i),c.map.validateData()})},renderMap:function(){var a=this;a.lines=[],AmCharts.theme=AmCharts.themes.light,a.map=AmCharts.makeChart("demo-mapdiv",{type:"map",showDescriptionOnHover:!1,dragMap:!0,creditsPosition:"bottom-left",pathToImages:"img/ammap/",dataProvider:{map:"usa2High",lines:a.lines,images:a.imageData,getAreasFromMap:!0},clickMapObject:function(b,c){void 0!==b.id&&3===b.id.length&&(c.shiftKey&&a.hasOwnProperty("startPoint")?(a.resetDataHighlighting(),a.removeFlightLines(!0),a.loadShortestPath(a.startPoint,b.id)):(a.startPoint=b.id,a.loadAirportData(b.id)))},balloon:{adjustBorderColor:!0,balloonColor:"#ffffff",color:"#000000",cornerRadius:5,fillColor:"#ffffff",fillAlpha:.75,borderThickness:1.5,borderColor:"#88A049",borderAlpha:.4,shadowAlpha:0,fontSize:10,verticalPadding:3,horizontalPadding:6},areasSettings:{autoZoom:!1,balloonText:""},linesSettings:{color:"#ff8f35",alpha:.75,thickness:2},linesAboveImages:!1})},removeFlightLines:function(a){this.lines.length=0,a&&this.map.validateData()},addFlightLines:function(a){_.each(a,function(a){this.addFlightLine(a.from,a.to,a.count,a.lineColor,a.lineWidth,!1)})},addFlightLine:function(a,b,c,d,e,f,g,h){var i=this.createFlightEntry(a,b,c,d,e);void 0!==i&&this.lines.push(i),this.setAirportColor(a,"#FFFFFF"),this.setAirportColor(b,this.airportHighlightColor),this.setAirportSize(a,1.5),this.setAirportSize(b,f),g&&this.setAirportColor(b,"rgb(153,52,4)")}})}(),function(){"use strict";var a=function(a){var b=a.split("/");return"collection/"+encodeURIComponent(b[0])+"/"+encodeURIComponent(b[1])};window.DocumentView=Backbone.View.extend({el:"#content",colid:0,docid:0,template:templateEngine.createTemplate("documentView.ejs"),events:{"click #saveDocumentButton":"saveDocument","click #deleteDocumentButton":"deleteDocumentModal","click #confirmDeleteDocument":"deleteDocument","click #document-from":"navigateToDocument","click #document-to":"navigateToDocument"},editor:0,setType:function(a){var b,c;return"edge"===a?(b=this.collection.getEdge(this.colid,this.docid),c="Edge: "):"document"===a&&(b=this.collection.getDocument(this.colid,this.docid),c="Document: "),b===!0?(this.type=a,this.fillInfo(c),this.fillEditor(),!0):void 0},deleteDocumentModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry("doc-delete-button","Delete","Delete this "+this.type+"?",void 0,void 0,!1,/[<>&'"]/)),a.push(window.modalView.createDeleteButton("Delete",this.deleteDocument.bind(this))),window.modalView.show("modalTable.ejs","Delete Document",a,b)},deleteDocument:function(){var a;if("document"===this.type){if(a=this.collection.deleteDocument(this.colid,this.docid),a===!1)return void arangoHelper.arangoError("Document error:","Could not delete")}else if("edge"===this.type&&(a=this.collection.deleteEdge(this.colid,this.docid),a===!1))return void arangoHelper.arangoError("Edge error:","Could not delete");if(a===!0){var b="collection/"+encodeURIComponent(this.colid)+"/documents/1";window.modalView.hide(),window.App.navigate(b,{trigger:!0})}},navigateToDocument:function(a){var b=$(a.target).attr("documentLink");b&&window.App.navigate(b,{trigger:!0})},fillInfo:function(b){var c=this.collection.first(),d=c.get("_id"),e=c.get("_key"),f=c.get("_rev"),g=c.get("_from"),h=c.get("_to");if($("#document-type").text(b),$("#document-id").text(d),$("#document-key").text(e),$("#document-rev").text(f),g&&h){var i=a(g),j=a(h);$("#document-from").text(g),$("#document-from").attr("documentLink",i),$("#document-to").text(h),$("#document-to").attr("documentLink",j)}else $(".edge-info-container").hide()},fillEditor:function(){var a=this.removeReadonlyKeys(this.collection.first().attributes);this.editor.set(a),$(".ace_content").attr("font-size","11pt")},jsonContentChanged:function(){this.enableSaveButton()},render:function(){$(this.el).html(this.template.render({})),this.disableSaveButton(),this.breadcrumb();var a=this,b=document.getElementById("documentEditor"),c={change:function(){a.jsonContentChanged()},search:!0,mode:"tree",modes:["tree","code"]};return this.editor=new window.jsoneditor.JSONEditor(b,c),this},removeReadonlyKeys:function(a){return _.omit(a,["_key","_id","_from","_to","_rev"])},saveDocument:function(){var a,b;try{a=this.editor.get()}catch(c){return this.errorConfirmation(),void this.disableSaveButton()}if(a=JSON.stringify(a),"document"===this.type){if(b=this.collection.saveDocument(this.colid,this.docid,a),b===!1)return void arangoHelper.arangoError("Document error:","Could not save")}else if("edge"===this.type&&(b=this.collection.saveEdge(this.colid,this.docid,a),b===!1))return void arangoHelper.arangoError("Edge error:","Could not save");b===!0&&(this.successConfirmation(),this.disableSaveButton())},successConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},errorConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},enableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!1),$("#saveDocumentButton").addClass("button-success"),$("#saveDocumentButton").removeClass("button-close")},disableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!0),$("#saveDocumentButton").addClass("button-close"),$("#saveDocumentButton").removeClass("button-success")},breadcrumb:function(){var a=window.location.hash.split("/");$("#transparentHeader").append('")},escaped:function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}})}(),function(){"use strict";window.DocumentsView=window.PaginationView.extend({filters:{0:!0},filterId:0,paginationDiv:"#documentsToolbarF",idPrefix:"documents",addDocumentSwitch:!0,activeFilter:!1,lastCollectionName:void 0,restoredFilters:[],editMode:!1,allowUpload:!1,el:"#content",table:"#documentsTableID",template:templateEngine.createTemplate("documentsView.ejs"),collectionContext:{prev:null,next:null},editButtons:["#deleteSelected","#moveSelected"],initialize:function(){this.documentStore=this.options.documentStore,this.collectionsStore=this.options.collectionsStore,this.tableView=new window.TableView({el:this.table,collection:this.collection}),this.tableView.setRowClick(this.clicked.bind(this)),this.tableView.setRemoveClick(this.remove.bind(this))},setCollectionId:function(a,b){this.collection.setCollection(a);var c=arangoHelper.collectionApiType(a);this.pageid=b,this.type=c,this.checkCollectionState(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.collectionModel=this.collectionsStore.get(a)},getDocsCallback:function(){$("#documents_last").css("visibility","hidden"),$("#documents_first").css("visibility","hidden"),this.drawTable(),this.renderPaginationElements()},events:{"click #collectionPrev":"prevCollection","click #collectionNext":"nextCollection","click #filterCollection":"filterCollection","click #markDocuments":"editDocuments","click #indexCollection":"indexCollection","click #importCollection":"importCollection","click #exportCollection":"exportCollection","click #filterSend":"sendFilter","click #addFilterItem":"addFilterItem","click .removeFilterItem":"removeFilterItem","click #deleteSelected":"deleteSelectedDocs","click #moveSelected":"moveSelectedDocs","click #addDocumentButton":"addDocumentModal","click #documents_first":"firstDocuments","click #documents_last":"lastDocuments","click #documents_prev":"prevDocuments","click #documents_next":"nextDocuments","click #confirmDeleteBtn":"confirmDelete","click .key":"nop",keyup:"returnPressedHandler","keydown .queryline input":"filterValueKeydown","click #importModal":"showImportModal","click #resetView":"resetView","click #confirmDocImport":"startUpload","click #exportDocuments":"startDownload","change #newIndexType":"selectIndexType","click #createIndex":"createIndex","click .deleteIndex":"prepDeleteIndex","click #confirmDeleteIndexBtn":"deleteIndex","click #documentsToolbar ul":"resetIndexForms","click #indexHeader #addIndex":"toggleNewIndexView","click #indexHeader #cancelIndex":"toggleNewIndexView","change #documentSize":"setPagesize","change #docsSort":"setSorting"},showSpinner:function(){$("#uploadIndicator").show()},hideSpinner:function(){$("#uploadIndicator").hide()},showImportModal:function(){$("#docImportModal").modal("show")},hideImportModal:function(){$("#docImportModal").modal("hide")},setPagesize:function(){var a=$("#documentSize").find(":selected").val();this.collection.setPagesize(a),this.collection.getDocuments(this.getDocsCallback.bind(this))},setSorting:function(){var a=$("#docsSort").val();(""===a||void 0===a||null===a)&&(a="_key"),this.collection.setSort(a)},returnPressedHandler:function(a){13===a.keyCode&&$(a.target).is($("#docsSort"))&&this.collection.getDocuments(this.getDocsCallback.bind(this)),13===a.keyCode&&$("#confirmDeleteBtn").attr("disabled")===!1&&this.confirmDelete()},toggleNewIndexView:function(){$("#indexEditView").toggle("fast"),$("#newIndexView").toggle("fast"),this.resetIndexForms()},nop:function(a){a.stopPropagation()},resetView:function(){$("input").val(""),$("select").val("=="),this.removeAllFilterItems(),$("#documentSize").val(this.collection.getPageSize()),$("#documents_last").css("visibility","visible"),$("#documents_first").css("visibility","visible"),this.addDocumentSwitch=!0,this.collection.resetFilter(),this.collection.loadTotal(),this.restoredFilters=[],this.allowUpload=!1,this.files=void 0,this.file=void 0,$("#confirmDocImport").attr("disabled",!0),this.markFilterToggle(),this.collection.getDocuments(this.getDocsCallback.bind(this))},startDownload:function(){var a=this.collection.buildDownloadDocumentQuery();""!==a||void 0!==a||null!==a?window.open(encodeURI("query/result/download/"+btoa(JSON.stringify(a)))):arangoHelper.arangoError("Document error","could not download documents")},startUpload:function(){var a;return this.allowUpload===!0?(this.showSpinner(),a=this.collection.uploadDocuments(this.file),a!==!0?(this.hideSpinner(),this.hideImportModal(),this.resetView(),void arangoHelper.arangoError(a)):(this.hideSpinner(),this.hideImportModal(),void this.resetView())):void 0},uploadSetup:function(){var a=this;$("#importDocuments").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],$("#confirmDocImport").attr("disabled",!1),a.allowUpload=!0})},buildCollectionLink:function(a){return"collection/"+encodeURIComponent(a.get("name"))+"/documents/1"},markFilterToggle:function(){this.restoredFilters.length>0?$("#filterCollection").addClass("activated"):$("#filterCollection").removeClass("activated")},editDocuments:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),this.markFilterToggle(),$("#markDocuments").toggleClass("activated"),this.changeEditMode(),$("#filterHeader").hide(),$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").slideToggle(200),$("#exportHeader").hide()},filterCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),this.markFilterToggle(),this.activeFilter=!0,$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide(),$("#filterHeader").slideToggle(200);var a;for(a in this.filters)if(this.filters.hasOwnProperty(a))return void $("#attribute_name"+a).focus()},exportCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#filterHeader").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#exportCollection").toggleClass("activated"),this.markFilterToggle(),$("#exportHeader").slideToggle(200),$("#importHeader").hide(),$("#indexHeader").hide(),$("#filterHeader").hide(),$("#editHeader").hide()},importCollection:function(){this.markFilterToggle(),$("#indexCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#importCollection").toggleClass("activated"),$("#exportCollection").removeClass("activated"),$("#importHeader").slideToggle(200),$("#filterHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide()},indexCollection:function(){this.markFilterToggle(),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#indexCollection").toggleClass("activated"),$("#newIndexView").hide(),$("#indexEditView").show(),$("#indexHeader").slideToggle(200),$("#importHeader").hide(),$("#editHeader").hide(),$("#filterHeader").hide(),$("#exportHeader").hide()},changeEditMode:function(a){a===!1||this.editMode===!0?($("#documentsTableID tbody tr").css("cursor","default"),$(".deleteButton").fadeIn(),$(".addButton").fadeIn(),$(".selected-row").removeClass("selected-row"),this.editMode=!1,this.tableView.setRowClick(this.clicked.bind(this))):($("#documentsTableID tbody tr").css("cursor","copy"),$(".deleteButton").fadeOut(),$(".addButton").fadeOut(),$(".selectedCount").text(0),this.editMode=!0,this.tableView.setRowClick(this.editModeClick.bind(this)))},getFilterContent:function(){var a,b=[];for(a in this.filters)if(this.filters.hasOwnProperty(a)){var c=$("#attribute_value"+a).val();try{c=JSON.parse(c)}catch(d){c=String(c)}""!==$("#attribute_name"+a).val()&&b.push({attribute:$("#attribute_name"+a).val(),operator:$("#operator"+a).val(),value:c})}return b},sendFilter:function(){this.restoredFilters=this.getFilterContent();var a=this;this.collection.resetFilter(),this.addDocumentSwitch=!1,_.each(this.restoredFilters,function(b){void 0!==b.operator&&a.collection.addFilter(b.attribute,b.operator,b.value)}),this.collection.setToFirst(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.markFilterToggle()},restoreFilter:function(){var a=this,b=0;this.filterId=0,$("#docsSort").val(this.collection.getSort()),_.each(this.restoredFilters,function(c){0!==b&&a.addFilterItem(),void 0!==c.operator&&($("#attribute_name"+b).val(c.attribute),$("#operator"+b).val(c.operator),$("#attribute_value"+b).val(c.value)),b++,a.collection.addFilter(c.attribute,c.operator,c.value)})},addFilterItem:function(){var a=++this.filterId;$("#filterHeader").append('
'),this.filters[a]=!0},filterValueKeydown:function(a){13===a.keyCode&&this.sendFilter()},removeFilterItem:function(a){var b=a.currentTarget,c=b.id.replace(/^removeFilter/,"");delete this.filters[c],delete this.restoredFilters[c],$(b.parentElement).remove()},removeAllFilterItems:function(){var a,b=$("#filterHeader").children().length;for(a=1;b>=a;a++)$("#removeFilter"+a).parent().remove();this.filters={0:!0},this.filterId=0},addDocumentModal:function(){var a=window.location.hash.split("/")[1],b=[],c=[],d=arangoHelper.collectionApiType(a,!0);return"edge"===d?(c.push(window.modalView.createTextEntry("new-edge-from-attr","_from","","document _id: document handle of the linked vertex (incoming relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _from attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-to","_to","","document _id: document handle of the linked vertex (outgoing relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _to attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-key-attr","_key",void 0,"the edges unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addEdge.bind(this))),void window.modalView.show("modalTable.ejs","Create edge",b,c)):(c.push(window.modalView.createTextEntry("new-document-key-attr","_key",void 0,"the documents unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addDocument.bind(this))),window.modalView.show("modalTable.ejs","Create document",b,c),void 0)},addEdge:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-edge-from-attr").last().val(),d=$(".modal-body #new-edge-to").last().val(),e=$(".modal-body #new-edge-key-attr").last().val();a=""!==e||void 0!==e?this.documentStore.createTypeEdge(b,c,d,e):this.documentStore.createTypeEdge(b,c,d),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating edge failed")},addDocument:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-document-key-attr").last().val();a=""!==c||void 0!==c?this.documentStore.createTypeDocument(b,c):this.documentStore.createTypeDocument(b),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating document failed")},moveSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createTextEntry("move-documents-to","Move to","",!1,"collection-name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a.push(window.modalView.createSuccessButton("Move",this.confirmMoveSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Move documents",a,b))},confirmMoveSelectedDocs:function(){var a=this.getSelectedDocs(),b=this,c=$(".modal-body").last().find("#move-documents-to").val(),d=function(){this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()}.bind(this);_.each(a,function(a){b.collection.moveDocument(a,b.collection.collectionID,c,d)})},deleteSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createReadOnlyEntry(void 0,c.length+" documents selected","Do you want to delete all selected documents?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.confirmDeleteSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Delete documents",a,b))},confirmDeleteSelectedDocs:function(){var a=this.getSelectedDocs(),b=[],c=this;_.each(a,function(a){var d=!1;"document"===c.type?(d=c.documentStore.deleteDocument(c.collection.collectionID,a),d?(b.push(!0),c.collection.setTotalMinusOne()):(b.push(!1),arangoHelper.arangoError("Document error","Could not delete document."))):"edge"===c.type&&(d=c.documentStore.deleteEdge(c.collection.collectionID,a),d===!0?(c.collection.setTotalMinusOne(),b.push(!0)):(b.push(!1),arangoHelper.arangoError("Edge error","Could not delete edge")))}),this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()},getSelectedDocs:function(){var a=[];return _.each($("#documentsTableID tbody tr"),function(b){$(b).hasClass("selected-row")&&a.push($($(b).children()[1]).find(".key").text())}),a},remove:function(a){this.docid=$(a.currentTarget).closest("tr").attr("id").substr(4),$("#confirmDeleteBtn").attr("disabled",!1),$("#docDeleteModal").modal("show")},confirmDelete:function(){$("#confirmDeleteBtn").attr("disabled",!0);var a=window.location.hash.split("/"),b=a[3];"source"!==b&&this.reallyDelete()},reallyDelete:function(){var a,b=this,c=($(b.target).closest("tr").get(0),!1);"document"===this.type?(a=this.documentStore.deleteDocument(this.collection.collectionID,this.docid),a?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Doc error")):"edge"===this.type&&(a=this.documentStore.deleteEdge(this.collection.collectionID,this.docid),a===!0?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Edge error")),c===!0&&(this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#docDeleteModal").modal("hide"))},editModeClick:function(a){var b=$(a.currentTarget);b.hasClass("selected-row")?b.removeClass("selected-row"):b.addClass("selected-row");var c=this.getSelectedDocs();$(".selectedCount").text(c.length),_.each(this.editButtons,function(a){c.length>0?($(a).prop("disabled",!1),$(a).removeClass("button-neutral"),$(a).removeClass("disabled"),"#moveSelected"===a?$(a).addClass("button-success"):$(a).addClass("button-danger")):($(a).prop("disabled",!0),$(a).addClass("disabled"),$(a).addClass("button-neutral"),"#moveSelected"===a?$(a).removeClass("button-success"):$(a).removeClass("button-danger"))})},clicked:function(a){var b=a.currentTarget;window.App.navigate("collection/"+this.collection.collectionID+"/"+$(b).attr("id").substr(4),!0)},drawTable:function(){this.tableView.setElement($(this.table)).render(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),$(".prettify").snippet("javascript",{style:"nedit",menu:!1,startText:!1,transparent:!0,showNum:!1})},checkCollectionState:function(){this.lastCollectionName===this.collectionName?this.activeFilter&&(this.filterCollection(),this.restoreFilter()):void 0!==this.lastCollectionName&&(this.collection.resetFilter(),this.collection.setSort("_key"),this.restoredFilters=[],this.activeFilter=!1)},render:function(){return $(this.el).html(this.template.render({})),this.tableView.setElement($(this.table)).drawLoading(),this.collectionContext=this.collectionsStore.getPosition(this.collection.collectionID),this.getIndex(),this.breadcrumb(),this.checkCollectionState(),this.lastCollectionName=this.collectionName,this.uploadSetup(),$("[data-toggle=tooltip]").tooltip(),$(".upload-info").tooltip(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),this.renderPaginationElements(),this.selectActivePagesize(),this.markFilterToggle(),this},rerender:function(){this.collection.getDocuments(this.getDocsCallback.bind(this))},selectActivePagesize:function(){$("#documentSize").val(this.collection.getPageSize())},renderPaginationElements:function(){this.renderPagination();var a=$("#totalDocuments");0===a.length&&($("#documentsToolbarFL").append(''),a=$("#totalDocuments")),"document"===this.type&&a.html(this.collection.getTotal()+" document(s)"),"edge"===this.type&&a.html(this.collection.getTotal()+" edge(s)")},breadcrumb:function(){this.collectionName=window.location.hash.split("/")[1],$("#transparentHeader").append('")},resetIndexForms:function(){$("#indexHeader input").val("").prop("checked",!1),$("#newIndexType").val("Cap").prop("selected",!0),this.selectIndexType()},stringToArray:function(a){var b=[];return a.split(",").forEach(function(a){a=a.replace(/(^\s+|\s+$)/g,""),""!==a&&b.push(a)}),b},createIndex:function(){var a,b,c,d,e=this,f=$("#newIndexType").val(),g={};switch(f){case"Cap":var h=parseInt($("#newCapSize").val(),10)||0,i=parseInt($("#newCapByteSize").val(),10)||0;g={type:"cap",size:h,byteSize:i};break;case"Geo":b=$("#newGeoFields").val();var j=e.checkboxToValue("#newGeoJson"),k=e.checkboxToValue("#newGeoConstraint"),l=e.checkboxToValue("#newGeoIgnoreNull");g={type:"geo",fields:e.stringToArray(b),geoJson:j,constraint:k,ignoreNull:l};break;case"Hash":b=$("#newHashFields").val(),c=e.checkboxToValue("#newHashUnique"),d=e.checkboxToValue("#newHashSparse"),g={type:"hash",fields:e.stringToArray(b),unique:c,sparse:d};break;case"Fulltext":b=$("#newFulltextFields").val();var m=parseInt($("#newFulltextMinLength").val(),10)||0;g={type:"fulltext",fields:e.stringToArray(b),minLength:m};break;case"Skiplist":b=$("#newSkiplistFields").val(),c=e.checkboxToValue("#newSkiplistUnique"),d=e.checkboxToValue("#newSkiplistSparse"),g={type:"skiplist",fields:e.stringToArray(b),unique:c,sparse:d}}if(a=e.collectionModel.createIndex(g),a===!0)$("#collectionEditIndexTable tbody tr").remove(),e.getIndex(),e.toggleNewIndexView(),e.resetIndexForms();else if(a.responseText){var n=JSON.parse(a.responseText);arangoHelper.arangoNotification("Document error",n.errorMessage)}else arangoHelper.arangoNotification("Document error","Could not create index.")},prepDeleteIndex:function(a){this.lastTarget=a,this.lastId=$(this.lastTarget.currentTarget).parent().parent().first().children().first().text(),$("#indexDeleteModal").modal("show")},deleteIndex:function(){var a=this.collectionModel.deleteIndex(this.lastId);a===!0?$(this.lastTarget.currentTarget).parent().parent().remove():arangoHelper.arangoError("Could not delete index"),$("#indexDeleteModal").modal("hide")},selectIndexType:function(){$(".newIndexClass").hide();var a=$("#newIndexType").val();$("#newIndexType"+a).show()},checkboxToValue:function(a){return $(a).prop("checked")},getIndex:function(){this.index=this.collectionModel.getIndex();var a="collectionInfoTh modal-text";if(this.index){var b="",c="";$.each(this.index.indexes,function(d,e){c="primary"===e.type||"edge"===e.type?'':'',void 0!==e.fields&&(b=e.fields.join(", "));var f=e.id.indexOf("/"),g=e.id.substr(f+1,e.id.length),h=e.hasOwnProperty("selectivityEstimate")?(100*e.selectivityEstimate).toFixed(2)+"%":"n/a",i=e.hasOwnProperty("sparse")?e.sparse:"n/a";$("#collectionEditIndexTable").append(""+g+""+e.type+""+e.unique+""+i+""+h+""+b+""+c+"")}),arangoHelper.fixTooltips("deleteIndex","left")}}})}(),function(){"use strict";window.EditListEntryView=Backbone.View.extend({template:templateEngine.createTemplate("editListEntryView.ejs"),initialize:function(a){this.key=a.key,this.value=a.value,this.render()},events:{"click .deleteAttribute":"removeRow"},render:function(){$(this.el).html(this.template.render({key:this.key,value:JSON.stringify(this.value),isReadOnly:this.isReadOnly()}))},isReadOnly:function(){return 0===this.key.indexOf("_")},getKey:function(){return $(".key").val()},getValue:function(){var val=$(".val").val();try{val=JSON.parse(val)}catch(e){try{return eval("val = "+val),val}catch(e2){return $(".val").val()}}return val},removeRow:function(){this.remove()}})}(),function(){"use strict";window.FooterView=Backbone.View.extend({el:"#footerBar",system:{},isOffline:!0,isOfflineCounter:0,firstLogin:!0,events:{"click .footer-center p":"showShortcutModal"},initialize:function(){var a=this;window.setInterval(function(){a.getVersion()},15e3),a.getVersion()},template:templateEngine.createTemplate("footerView.ejs"),showServerStatus:function(a){a===!0?($(".serverStatusIndicator").addClass("isOnline"),$(".serverStatusIndicator").addClass("fa-check-circle-o"), -$(".serverStatusIndicator").removeClass("fa-times-circle-o")):($(".serverStatusIndicator").removeClass("isOnline"),$(".serverStatusIndicator").removeClass("fa-check-circle-o"),$(".serverStatusIndicator").addClass("fa-times-circle-o"))},showShortcutModal:function(){window.arangoHelper.hotkeysFunctions.showHotkeysModal()},getVersion:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(b){a.showServerStatus(!0),a.isOffline===!0&&(a.isOffline=!1,a.isOfflineCounter=0,a.firstLogin?a.firstLogin=!1:window.setTimeout(function(){a.showServerStatus(!0)},1e3),a.system.name=b.server,a.system.version=b.version,a.render())},error:function(b){a.isOffline=!0,a.isOfflineCounter++,a.isOfflineCounter>=1&&a.showServerStatus(!1)}}),a.system.hasOwnProperty("database")||$.ajax({type:"GET",cache:!1,url:"/_api/database/current",contentType:"application/json",processData:!1,async:!0,success:function(b){var c=b.result.name;a.system.database=c;var d=window.setInterval(function(){var b=$("#databaseNavi");b&&(window.clearTimeout(d),d=null,"_system"===c?($(".logs-menu").css("visibility","visible"),$(".logs-menu").css("display","inline"),$("#databaseNavi").css("display","inline")):($(".logs-menu").css("visibility","hidden"),$(".logs-menu").css("display","none")),a.render())},50)}})},renderVersion:function(){this.system.hasOwnProperty("database")&&this.system.hasOwnProperty("name")&&$(this.el).html(this.template.render({name:this.system.name,version:this.system.version,database:this.system.database}))},render:function(){return this.system.version||this.getVersion(),$(this.el).html(this.template.render({name:this.system.name,version:this.system.version})),this}})}(),function(){"use strict";window.FoxxActiveView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("foxxActiveView.ejs"),_show:!0,events:{click:"openAppDetailView"},openAppDetailView:function(){window.App.navigate("applications/"+encodeURIComponent(this.model.get("mount")),{trigger:!0})},toggle:function(a,b){switch(a){case"devel":this.model.isDevelopment()&&(this._show=b);break;case"production":this.model.isDevelopment()||this.model.isSystem()||(this._show=b);break;case"system":this.model.isSystem()&&(this._show=b)}this._show?$(this.el).show():$(this.el).hide()},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el)}})}(),function(){"use strict";var a=require("internal").errors,b=templateEngine.createTemplate("applicationListView.ejs"),c=function(a){this.collection=a.collection},d=function(b){if(window.hass=b,b.error===!1)this.collection.fetch({async:!1}),window.modalView.hide(),this.reload();else{var c=b;switch(b.hasOwnProperty("responseJSON")&&(c=b.responseJSON),c.errorNum){case a.ERROR_APPLICATION_DOWNLOAD_FAILED.code:alert("Unable to download application from the given repository.");break;default:alert("Error: "+c.errorNum+". "+c.errorMessage)}}},e=function(){window.modalView.modalBindValidation({id:"new-app-mount",validateInput:function(){return[{rule:Joi.string().regex(/^(\/(APP[^\/]+|(?!APP)[a-zA-Z0-9_\-%]+))+$/i),msg:"May not contain /APP"},{rule:Joi.string().regex(/^(\/[a-zA-Z0-9_\-%]+)+$/),msg:"Can only contain [a-zA-Z0-9_-%]"},{rule:Joi.string().regex(/^\/[^_]/),msg:"Mountpoints with _ are reserved for internal use"},{rule:Joi.string().regex(/[^\/]$/),msg:"May not end with /"},{rule:Joi.string().regex(/^\//),msg:"Has to start with /"},{rule:Joi.string().required().min(2),msg:"Has to be non-empty"}]}})},f=function(){window.modalView.modalBindValidation({id:"repository",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/),msg:"No valid github account and repository."}]}})},g=function(){window.modalView.modalBindValidation({id:"new-app-author",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-name",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z\-_][a-zA-Z0-9\-_]*$/),msg:"Can only contain a to z, A to Z, 0-9, '-' and '_'."}]}}),window.modalView.modalBindValidation({id:"new-app-description",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-license",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9 \.,;\-]+$/),msg:"Has to be non empty."}]}}),window.modalView.modalTestAll()},h=function(a){window.modalView.clearValidators();var b=$(a.currentTarget).attr("href").substr(1),c=$("#modalButton1");switch(this._upgrade||e(),b){case"newApp":c.html("Generate"),c.prop("disabled",!1),g();break;case"appstore":c.html("Install"),c.prop("disabled",!0);break;case"github":f(),c.html("Install"),c.prop("disabled",!1);break;case"zip":c.html("Install"),c.prop("disabled",!1)}c.prop("disabled")||window.modalView.modalTestAll()||c.prop("disabled",!0)},i=function(a){if(window.modalView.modalTestAll()){var b,c;this._upgrade?(b=this.mount,c=$("#new-app-teardown").prop("checked")):b=window.arangoHelper.escapeHtml($("#new-app-mount").val());var e=$(a.currentTarget).attr("appId"),f=$(a.currentTarget).attr("appVersion");void 0!==c?this.collection.installFromStore({name:e,version:f},b,d.bind(this),c):this.collection.installFromStore({name:e,version:f},b,d.bind(this))}},j=function(a,b){if(void 0===b?b=this._uploadData:this._uploadData=b,b&&window.modalView.modalTestAll()){var c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),void 0!==e?this.collection.installFromZip(b.filename,c,d.bind(this),e):this.collection.installFromZip(b.filename,c,d.bind(this))}},k=function(){if(window.modalView.modalTestAll()){var a,b,c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),a=window.arangoHelper.escapeHtml($("#repository").val()),b=window.arangoHelper.escapeHtml($("#tag").val()),""===b&&(b="master");var f={url:window.arangoHelper.escapeHtml($("#repository").val()),version:window.arangoHelper.escapeHtml($("#tag").val())};try{Joi.assert(a,Joi.string().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/))}catch(g){return}void 0!==e?this.collection.installFromGithub(f,c,d.bind(this),e):this.collection.installFromGithub(f,c,d.bind(this))}},l=function(){if(window.modalView.modalTestAll()){var a,b;this._upgrade?(a=this.mount,b=$("#new-app-teardown").prop("checked")):a=window.arangoHelper.escapeHtml($("#new-app-mount").val());var c={name:window.arangoHelper.escapeHtml($("#new-app-name").val()),collectionNames:_.map($("#new-app-collections").select2("data"),function(a){return window.arangoHelper.escapeHtml(a.text)}),author:window.arangoHelper.escapeHtml($("#new-app-author").val()),license:window.arangoHelper.escapeHtml($("#new-app-license").val()),description:window.arangoHelper.escapeHtml($("#new-app-description").val())};void 0!==b?this.collection.generate(c,a,d.bind(this),b):this.collection.generate(c,a,d.bind(this))}},m=function(){var a=$(".modal-body .tab-pane.active").attr("id");switch(a){case"newApp":l.apply(this);break;case"github":k.apply(this);break;case"zip":j.apply(this)}},n=function(a,c){var d=[],e={"click #infoTab a":h.bind(a),"click .install-app":i.bind(a)};d.push(window.modalView.createSuccessButton("Generate",m.bind(a))),window.modalView.show("modalApplicationMount.ejs","Install Service",d,c,void 0,void 0,e),$("#new-app-collections").select2({tags:[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px"}),$("#upload-foxx-zip").uploadFile({url:"/_api/upload?multipart=true",allowedTypes:"zip",multiple:!1,onSuccess:j.bind(a)}),$.get("foxxes/fishbowl",function(a){var c=$("#appstore-content");_.each(_.sortBy(a,"name"),function(a){c.append(b.render(a))})}).fail(function(){var a=$("#appstore-content");a.append("Store is not available. ArangoDB is not able to connect to github.com")})};c.prototype.install=function(a){this.reload=a,this._upgrade=!1,this._uploadData=void 0,delete this.mount,n(this,!1),window.modalView.clearValidators(),e(),g()},c.prototype.upgrade=function(a,b){this.reload=b,this._upgrade=!0,this._uploadData=void 0,this.mount=a,n(this,!0),window.modalView.clearValidators(),g()},window.FoxxInstallView=c}(),function(){"use strict";window.GraphManagementView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("graphManagementView.ejs"),edgeDefintionTemplate:templateEngine.createTemplate("edgeDefinitionTable.ejs"),eCollList:[],removedECollList:[],dropdownVisible:!1,events:{"click #deleteGraph":"deleteGraph","click .icon_arangodb_settings2.editGraph":"editGraph","click #createGraph":"addNewGraph","keyup #graphManagementSearchInput":"search","click #graphManagementSearchSubmit":"search","click .tile-graph":"redirectToGraphViewer","click #graphManagementToggle":"toggleGraphDropdown","click .css-label":"checkBoxes","change #graphSortDesc":"sorting"},redirectToGraphViewer:function(a){var b=$(a.currentTarget).attr("id");b=b.substr(0,b.length-5),window.location=window.location+"/"+encodeURIComponent(b)},loadGraphViewer:function(a){var b=this.collection.get(a).get("edgeDefinitions");if(b&&0!==b.length){var c={type:"gharial",graphName:a,baseUrl:require("internal").arango.databasePrefix("/")},d=$("#content").width()-75;$("#content").html("");var e=arangoHelper.calculateCenterDivHeight();this.ui=new GraphViewerUI($("#content")[0],c,d,e,{nodeShaper:{label:"_key",color:{type:"attribute",key:"_key"}}},!0),$(".contentDiv").height(e)}},handleResize:function(a){this.width&&this.width===a||(this.width=a,this.ui&&this.ui.changeWidth(a))},addNewGraph:function(a){a.preventDefault(),this.createEditGraphModal()},deleteGraph:function(){var a=this,b=$("#editGraphName")[0].value;this.collection.get(b).destroy({success:function(){a.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;arangoHelper.arangoError(d),window.modalView.hide()}})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},toggleGraphDropdown:function(){$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown2").slideToggle(200)},sorting:function(){$("#graphSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#graphManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(){return this.collection.fetch({async:!1}),this.collection.sort(),$(this.el).html(this.template.render({graphs:this.collection,searchString:""})),this.dropdownVisible===!0&&($("#graphManagementDropdown2").show(),$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown").show()),this.events["click .tableRow"]=this.showHideDefinition.bind(this),this.events['change tr[id*="newEdgeDefinitions"]']=this.setFromAndTo.bind(this),this.events["click .graphViewer-icon-button"]=this.addRemoveDefinition.bind(this),arangoHelper.setCheckboxStatus("#graphManagementDropdown"),this},setFromAndTo:function(a){a.stopPropagation();var b,c=this.calculateEdgeDefinitionMap();if(a.added){if(-1===this.eCollList.indexOf(a.added.id)&&-1!==this.removedECollList.indexOf(a.added.id))return b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$('input[id*="newEdgeDefinitions'+b+'"]').select2("val",null),void $('input[id*="newEdgeDefinitions'+b+'"]').attr("placeholder","The collection "+a.added.id+" is already used.");this.removedECollList.push(a.added.id),this.eCollList.splice(this.eCollList.indexOf(a.added.id),1)}else this.eCollList.push(a.removed.id),this.removedECollList.splice(this.removedECollList.indexOf(a.removed.id),1);c[a.val]?(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",c[a.val].from),$("#fromCollections"+b).attr("disabled",!0),$("#s2id_toCollections"+b).select2("val",c[a.val].to),$("#toCollections"+b).attr("disabled",!0)):(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",null),$("#fromCollections"+b).attr("disabled",!1),$("#s2id_toCollections"+b).select2("val",null),$("#toCollections"+b).attr("disabled",!1))},editGraph:function(a){a.stopPropagation(),this.collection.fetch(),this.graphToEdit=this.evaluateGraphName($(a.currentTarget).attr("id"),"_settings");var b=this.collection.findWhere({_key:this.graphToEdit});this.createEditGraphModal(b)},saveEditedGraph:function(){var a,b,c,d,e,f=$("#editGraphName")[0].value,g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i={};if(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){if(d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),0!==b.length&&0!==c.length)){var f={collection:a,from:b,to:c};h.push(f),i[a]=f}}),0===h.length)return void $("#s2id_newEdgeDefinitions0 .select2-choices").css("border-color","red");var j=this.collection.findWhere({_key:f}),k=j.get("edgeDefinitions"),l=j.get("orphanCollections"),m=[];l.forEach(function(a){-1===g.indexOf(a)&&j.deleteVertexCollection(a)}),g.forEach(function(a){-1===l.indexOf(a)&&j.addVertexCollection(a)});var n=[],o=[],p=[];k.forEach(function(a){var b=a.collection;m.push(b);var c=i[b];void 0===c?p.push(b):JSON.stringify(c)!==JSON.stringify(a)&&o.push(b)}),h.forEach(function(a){var b=a.collection;-1===m.indexOf(b)&&n.push(b)}),n.forEach(function(a){j.addEdgeDefinition(i[a])}),o.forEach(function(a){j.modifyEdgeDefinition(i[a])}),p.forEach(function(a){j.deleteEdgeDefinition(a)}),this.updateGraphManagementView(),window.modalView.hide()},evaluateGraphName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},search:function(){var a,b,c,d;a=$("#graphManagementSearchInput"),b=$("#graphManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("_key").indexOf(b)}),$(this.el).html(this.template.render({graphs:d,searchString:b})),a=$("#graphManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},updateGraphManagementView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},createNewGraph:function(){var a,b,c,d,e,f=$("#createNewGraphName").val(),g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i=this;return f?this.collection.findWhere({_key:f})?(arangoHelper.arangoError("The graph '"+f+"' already exists."),0):(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),1!==b&&1!==c&&h.push({collection:a,from:b,to:c}))}),void this.collection.create({name:f,edgeDefinitions:h,orphanCollections:g},{success:function(){i.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;d=d.replace("<",""),d=d.replace(">",""),arangoHelper.arangoError(d)}})):(arangoHelper.arangoError("A name for the graph has to be provided."),0)},createEditGraphModal:function(a){var b,c=[],d=[],e=[],f=this.options.collectionCollection.models,g=this,h="",i=[{collection:"",from:"",to:""}],j="",k=function(a,b){return a=a.toLowerCase(),b=b.toLowerCase(),b>a?-1:a>b?1:0};if(this.eCollList=[],this.removedECollList=[],f.forEach(function(a){a.get("isSystem")||("edge"===a.get("type")?g.eCollList.push(a.id):d.push(a.id))}),window.modalView.enableHotKeys=!1,this.counter=0,a?(b="Edit Graph",h=a.get("_key"),i=a.get("edgeDefinitions"),i&&0!==i.length||(i=[{collection:"",from:"",to:""}]),j=a.get("orphanCollections"),e.push(window.modalView.createReadOnlyEntry("editGraphName","Name",h,"The name to identify the graph. Has to be unique")),c.push(window.modalView.createDeleteButton("Delete",this.deleteGraph.bind(this))),c.push(window.modalView.createSuccessButton("Save",this.saveEditedGraph.bind(this)))):(b="Create Graph",e.push(window.modalView.createTextEntry("createNewGraphName","Name","","The name to identify the graph. Has to be unique.","graphName",!0)),c.push(window.modalView.createSuccessButton("Create",this.createNewGraph.bind(this)))),i.forEach(function(a){0===g.counter?(a.collection&&(g.removedECollList.push(a.collection),g.eCollList.splice(g.eCollList.indexOf(a.collection),1)),e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!0,!1,!0,1,g.eCollList.sort(k)))):e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!1,!0,!1,1,g.eCollList.sort(k))),e.push(window.modalView.createSelect2Entry("fromCollections"+g.counter,"fromCollections",a.from,"The collections that contain the start vertices of the relation.","fromCollections",!0,!1,!1,10,d.sort(k))),e.push(window.modalView.createSelect2Entry("toCollections"+g.counter,"toCollections",a.to,"The collections that contain the end vertices of the relation.","toCollections",!0,!1,!1,10,d.sort(k))),g.counter++}),e.push(window.modalView.createSelect2Entry("newVertexCollections","Vertex collections",j,"Collections that are part of a graph but not used in an edge definition","Vertex Collections",!1,!1,!1,10,d.sort(k))),window.modalView.show("modalGraphTable.ejs",b,c,e,void 0,void 0,this.events),a){var l;for(l=0;l<=this.counter;l++)$("#row_fromCollections"+l).hide(),$("#row_toCollections"+l).hide()}},showHideDefinition:function(a){a.stopPropagation();var b,c=$(a.currentTarget).attr("id");-1!==c.indexOf("row_newEdgeDefinitions")&&(b=c.split("row_newEdgeDefinitions")[1],$("#row_fromCollections"+b).toggle(),$("#row_toCollections"+b).toggle())},addRemoveDefinition:function(a){var b=[],c=this.options.collectionCollection.models;c.forEach(function(a){a.get("isSystem")||b.push(a.id)}),a.stopPropagation();var d,e=$(a.currentTarget).attr("id");return-1!==e.indexOf("addAfter_newEdgeDefinitions")?(this.counter++,$("#row_newVertexCollections").before(this.edgeDefintionTemplate.render({number:this.counter})),$("#newEdgeDefinitions"+this.counter).select2({tags:this.eCollList,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:1}),$("#fromCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),$("#toCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),window.modalView.undelegateEvents(),void window.modalView.delegateEvents(this.events)):void(-1!==e.indexOf("remove_newEdgeDefinitions")&&(d=e.split("remove_newEdgeDefinitions")[1],$("#row_newEdgeDefinitions"+d).remove(),$("#row_fromCollections"+d).remove(),$("#row_toCollections"+d).remove()))},calculateEdgeDefinitionMap:function(){var a={};return this.collection.models.forEach(function(b){b.get("edgeDefinitions").forEach(function(b){a[b.collection]={from:b.from,to:b.to}})}),a}})}(),function(){"use strict";window.GraphTestView=Backbone.View.extend({el:"#content",graphContainer:"graphContainer",template:templateEngine.createTemplate("graphTestView.ejs"),events:{},render:function(){var a=this;$(this.el).html(this.template.render({})),_.each(this.jsonRequestDummy,function(b){a.parseResultOfTraversal(b)}),$("#"+this.graphContainer).height(arangoHelper.calculateCenterDivHeight());var b=Viva.Graph.generator(),c=b.grid(10,10);c=Viva.Graph.graph(),c.Name="ArangoDB Test Graph";for(var d=0;d0&&(m-=1),a.id0&&n.webglUtils.copyArrayPart(l,a.id*i,m*i,i)},replaceProperties:function(a,b){}}},parseResultOfTraversal:function(a,b){var c=this;if(0===a.length||0===a[0].length||0===a[0][0].length)return void(b&&b({errorCode:404}));a=a[0][0];a[0].vertex;_.each(a,function(a){var b=(a.vertex,a.path);_.each(b.vertices,function(a){var b=a;c.jsonNodes.push(b)}),_.each(b.edges,function(a){c.jsonEdges.push(a)})}),b&&b()},jsonNodes:[],jsonEdges:[],jsonRequestDummy:[[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25, -name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949", -_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]]]})}(),function(){"use strict";window.loginView=Backbone.View.extend({el:"#content",el2:".header",el3:".footer",init:function(){},events:{"submit #loginForm":"login"},template:templateEngine.createTemplate("loginView.ejs"),render:function(){return $(this.el).html(this.template.render({})),$(this.el2).hide(),$(this.el3).hide(),$("#loginUsername").focus(),this},login:function(a){a.preventDefault();var b=$("#loginUsername").val(),c=$("#loginPassword").val();b&&(b=this.collection.login(b,c),b&&($(this.el2).show(),$(this.el3).show(),window.location.reload(),$("#currentUser").text(b),this.collection.loadUserSettings()))}})}(),function(){"use strict";window.LogsView=window.PaginationView.extend({el:"#content",id:"#logContent",paginationDiv:"#logPaginationDiv",idPrefix:"logTable",fetchedAmount:!1,initialize:function(){this.convertModelToJSON()},currentLoglevel:"logall",events:{"click #arangoLogTabbar button":"setActiveLoglevel","click #logTable_first":"firstPage","click #logTable_last":"lastPage"},template:templateEngine.createTemplate("logsView.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbarElements:{id:"arangoLogTabbar",titles:[["Debug","logdebug"],["Warning","logwarning"],["Error","logerror"],["Info","loginfo"],["All","logall"]]},tableDescription:{id:"arangoLogTable",titles:["Loglevel","Date","Message"],rows:[]},convertedRows:null,setActiveLoglevel:function(a){$(".arangodb-tabbar").removeClass("arango-active-tab"),this.currentLoglevel!==a.currentTarget.id&&(this.currentLoglevel=a.currentTarget.id,this.convertModelToJSON())},initTotalAmount:function(){var a=this;this.collection=this.options[this.currentLoglevel],this.collection.fetch({data:$.param({test:!0}),success:function(){a.convertModelToJSON()}}),this.fetchedAmount=!0},invertArray:function(a){var b,c=[],d=0;for(b=a.length-1;b>=0;b--)c[d]=a[b],d++;return c},convertModelToJSON:function(){if(!this.fetchedAmount)return void this.initTotalAmount();var a,b=this,c=[];this.collection=this.options[this.currentLoglevel],this.collection.fetch({success:function(){b.collection.each(function(b){a=new Date(1e3*b.get("timestamp")),c.push([b.getLogStatus(),arangoHelper.formatDT(a),b.get("text")])}),b.tableDescription.rows=b.invertArray(c),b.render()}})},render:function(){return $(this.el).html(this.template.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#"+this.currentLoglevel).addClass("arango-active-tab"),$("#logContent").append('
'),this.renderPagination(),this},rerender:function(){this.convertModelToJSON()}})}(),function(){"use strict";var a=function(a,b,c,d){return{type:a,title:b,callback:c,confirm:d}},b=function(a,b,c,d,e,f,g,h,i,j,k){var l={type:a,label:b};return void 0!==c&&(l.value=c),void 0!==d&&(l.info=d),void 0!==e&&(l.placeholder=e),void 0!==f&&(l.mandatory=f),void 0!==h&&(l.addDelete=h),void 0!==i&&(l.addAdd=i),void 0!==j&&(l.maxEntrySize=j),void 0!==k&&(l.tags=k),g&&(l.validateInput=function(){return g}),l};window.ModalView=Backbone.View.extend({_validators:[],_validateWatchers:[],baseTemplate:templateEngine.createTemplate("modalBase.ejs"),tableTemplate:templateEngine.createTemplate("modalTable.ejs"),el:"#modalPlaceholder",contentEl:"#modalContent",hideFooter:!1,confirm:{list:"#modal-delete-confirmation",yes:"#modal-confirm-delete",no:"#modal-abort-delete"},enabledHotkey:!1,enableHotKeys:!0,buttons:{SUCCESS:"success",NOTIFICATION:"notification",DELETE:"danger",NEUTRAL:"neutral",CLOSE:"close"},tables:{READONLY:"readonly",TEXT:"text",BLOB:"blob",PASSWORD:"password",SELECT:"select",SELECT2:"select2",CHECKBOX:"checkbox"},initialize:function(){Object.freeze(this.buttons),Object.freeze(this.tables)},createModalHotkeys:function(){$(this.el).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("input",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("select",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()})},createInitModalHotkeys:function(){var a=this;$(this.el).bind("keydown","left",function(){a.navigateThroughButtons("left")}),$(this.el).bind("keydown","right",function(){a.navigateThroughButtons("right")})},navigateThroughButtons:function(a){var b=$(".modal-footer button").is(":focus");b===!1?"left"===a?$(".modal-footer button").first().focus():"right"===a&&$(".modal-footer button").last().focus():b===!0&&("left"===a?$(":focus").prev().focus():"right"===a&&$(":focus").next().focus())},createCloseButton:function(b,c){var d=this;return a(this.buttons.CLOSE,b,function(){d.hide(),c&&c()})},createSuccessButton:function(b,c){return a(this.buttons.SUCCESS,b,c)},createNotificationButton:function(b,c){return a(this.buttons.NOTIFICATION,b,c)},createDeleteButton:function(b,c,d){return a(this.buttons.DELETE,b,c,d)},createNeutralButton:function(b,c){return a(this.buttons.NEUTRAL,b,c)},createDisabledButton:function(b){var c=a(this.buttons.NEUTRAL,b);return c.disabled=!0,c},createReadOnlyEntry:function(a,c,d,e,f,g){var h=b(this.tables.READONLY,c,d,e,void 0,void 0,void 0,f,g);return h.id=a,h},createTextEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.TEXT,c,d,e,f,g,h);return i.id=a,i},createBlobEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.BLOB,c,d,e,f,g,h);return i.id=a,i},createSelect2Entry:function(a,c,d,e,f,g,h,i,j,k){var l=b(this.tables.SELECT2,c,d,e,f,g,void 0,h,i,j,k);return l.id=a,l},createPasswordEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.PASSWORD,c,d,e,f,g,h);return i.id=a,i},createCheckboxEntry:function(a,c,d,e,f){var g=b(this.tables.CHECKBOX,c,d,e);return g.id=a,f&&(g.checked=f),g},createSelectEntry:function(a,c,d,e,f){var g=b(this.tables.SELECT,c,null,e);return g.id=a,d&&(g.selected=d),g.options=f,g},createOptionEntry:function(a,b){return{label:a,value:b||a}},show:function(a,b,c,d,e,f,g,h){var i,j,k=this,l=!1;c=c||[],h=Boolean(h),this.clearValidators(),c.length>0?(c.forEach(function(a){a.type===k.buttons.CLOSE&&(l=!0),a.type===k.buttons.DELETE&&(j=j||a.confirm)}),l||(i=c.pop(),c.push(k.createCloseButton("Cancel")),c.push(i))):c.push(k.createCloseButton("Dismiss")),$(this.el).html(this.baseTemplate.render({title:b,buttons:c,hideFooter:this.hideFooter,confirm:j})),_.each(c,function(a,b){return!a.disabled&&a.callback?a.type!==k.buttons.DELETE||h?void $("#modalButton"+b).bind("click",a.callback):void $("#modalButton"+b).bind("click",function(){$(k.confirm.yes).unbind("click"),$(k.confirm.yes).bind("click",a.callback),$(k.confirm.list).css("display","block")}):void 0}),$(this.confirm.no).bind("click",function(){$(k.confirm.list).css("display","none")});var m=templateEngine.createTemplate(a);$(".modal-body").html(m.render({content:d,advancedContent:e,info:f})),$(".modalTooltips").tooltip({position:{my:"left top",at:"right+55 top-1"}});var n=d||[];e&&e.content&&(n=n.concat(e.content)),_.each(n,function(a){k.modalBindValidation(a),a.type===k.tables.SELECT2&&$("#"+a.id).select2({tags:a.tags||[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:a.maxEntrySize||8})}),g&&(this.events=g,this.delegateEvents()),$("#modal-dialog").modal("show"),this.enabledHotkey===!1&&(this.createInitModalHotkeys(),this.enabledHotkey=!0),this.enableHotKeys&&this.createModalHotkeys();var o=$("#modal-dialog").find("input");o&&setTimeout(function(){var a=$("#modal-dialog");a.length>0&&(a=a.find("input"),a.length>0&&$(a[0]).focus())},800)},modalBindValidation:function(a){var b=this;if(a.hasOwnProperty("id")&&a.hasOwnProperty("validateInput")){var c=function(){var b=$("#"+a.id),c=a.validateInput(b),d=!1;return _.each(c,function(a){var c=b.val();if(a.rule||(a={rule:a}),"function"==typeof a.rule)try{a.rule(c)}catch(e){d=a.msg||e.message}else{var f=Joi.validate(c,a.rule);f.error&&(d=a.msg||f.error.message)}return d?!1:void 0}),d?d:void 0},d=$("#"+a.id);d.on("keyup focusout",function(){var a=c(),e=d.next()[0];a?(d.addClass("invalid-input"),e?$(e).text(a):d.after('

'+a+"

"),$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled")):(d.removeClass("invalid-input"),e&&$(e).remove(),b.modalTestAll())}),this._validators.push(c),this._validateWatchers.push(d)}},modalTestAll:function(){var a=_.map(this._validators,function(a){return a()}),b=_.any(a);return b?$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled"):$(".modal-footer .button-success").prop("disabled",!1).removeClass("disabled"),!b},clearValidators:function(){this._validators=[],_.each(this._validateWatchers,function(a){a.unbind("keyup focusout")}),this._validateWatchers=[]},hide:function(){this.clearValidators(),$("#modal-dialog").modal("hide")}})}(),function(){"use strict";window.NavigationView=Backbone.View.extend({el:"#navigationBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown"},initialize:function(){this.userCollection=this.options.userCollection,this.currentDB=this.options.currentDB,this.dbSelectionView=new window.DBSelectionView({collection:this.options.database,current:this.currentDB}),this.userBarView=new window.UserBarView({userCollection:this.userCollection}),this.notificationView=new window.NotificationView({collection:this.options.notificationCollection}),this.statisticBarView=new window.StatisticBarView({currentDB:this.currentDB}),this.handleKeyboardHotkeys()},handleSelectDatabase:function(){this.dbSelectionView.render($("#dbSelect"))},template:templateEngine.createTemplate("navigationView.ejs"),render:function(){return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),this.dbSelectionView.render($("#dbSelect")),this.notificationView.render($("#notificationBar")),this.userCollection.whoAmI()&&this.userBarView.render(),this.statisticBarView.render($("#statisticBar")),window.App.arangoCollectionsStore.findWhere({name:"arangodbflightsdemo"})||$(".demo-menu").css("display","none"),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},handleKeyboardHotkeys:function(){arangoHelper.enableKeyboardHotkeys(!0)},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return""===c&&(c=$(b).attr("class")),"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):"dbselection"===c?($("#dbs_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){var a=this;$("#arangoCollectionSelect").change(function(){a.navigateBySelect()})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c||"link_dropdown"===c?void $("#link_dropdown").show(200):"tools"===c||"tools_dropdown"===c?void $("#tools_dropdown").show(200):"dbselection"===c||"dbs_dropdown"===c?void $("#dbs_dropdown").show(200):void 0},hideDropdown:function(a){var b=a.target||a.srcElement;b=$(b).closest(".dropdown");var c=b.attr("id");return"linkDropdown"===c?void $("#link_dropdown").hide():"toolsDropdown"===c?void $("#tools_dropdown").hide():"dbSelect"===c?void $("#dbs_dropdown").hide():void 0}})}(),function(){"use strict";window.NotificationView=Backbone.View.extend({events:{"click .navlogo #stat_hd":"toggleNotification","click .notificationItem .fa":"removeNotification","click #removeAllNotifications":"removeAllNotifications"},initialize:function(){this.collection.bind("add",this.renderNotifications.bind(this)),this.collection.bind("remove",this.renderNotifications.bind(this)),this.collection.bind("reset",this.renderNotifications.bind(this))},notificationItem:templateEngine.createTemplate("notificationItem.ejs"),el:"#notificationBar",template:templateEngine.createTemplate("notificationView.ejs"),toggleNotification:function(){var a=this.collection.length;0!==a&&$("#notification_menu").toggle()},removeAllNotifications:function(){this.collection.reset(),$("#notification_menu").hide()},removeNotification:function(a){var b=a.target.id;this.collection.get(b).destroy()},renderNotifications:function(){$("#stat_hd_counter").text(this.collection.length),0===this.collection.length?($("#stat_hd").removeClass("fullNotification"),$("#notification_menu").hide()):$("#stat_hd").addClass("fullNotification"),$(".innerDropdownInnerUL").html(this.notificationItem.render({notifications:this.collection}))},render:function(){return $(this.el).html(this.template.render({notifications:this.collection})),this.renderNotifications(),this.delegateEvents(),this.el}})}(),function(){"use strict";window.ProgressView=Backbone.View.extend({template:templateEngine.createTemplate("progressBase.ejs"),el:"#progressPlaceholder",el2:"#progressPlaceholderIcon",toShow:!1,lastDelay:0,action:function(){},events:{"click .progress-action button":"performAction"},performAction:function(){window.progressView.hide()},initialize:function(){},showWithDelay:function(a,b,c,d){var e=this;e.toShow=!0,e.lastDelay=a,setTimeout(function(){e.toShow===!0&&e.show(b,c,d)},e.lastDelay)},show:function(a,b,c){$(this.el).html(this.template.render({})),$(".progress-text").text(a),$(".progress-action").html(''),this.action=this.hide(),$(this.el).show()},hide:function(){var a=this;a.toShow=!1,$(this.el).hide(),this.action=function(){}}})}(),function(){"use strict";window.queryManagementView=Backbone.View.extend({el:"#content",id:"#queryManagementContent",templateActive:templateEngine.createTemplate("queryManagementViewActive.ejs"),templateSlow:templateEngine.createTemplate("queryManagementViewSlow.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),initialize:function(){this.activeCollection=new window.QueryManagementActive,this.slowCollection=new window.QueryManagementSlow,this.convertModelToJSON(!0)},events:{"click #arangoQueryManagementTabbar button":"switchTab","click #deleteSlowQueryHistory":"deleteSlowQueryHistoryModal","click #arangoQueryManagementTable .fa-minus-circle":"deleteRunningQueryModal"},tabbarElements:{id:"arangoQueryManagementTabbar",titles:[["Active","activequeries"],["Slow","slowqueries"]]},tableDescription:{id:"arangoQueryManagementTable",titles:["ID","Query String","Runtime","Started",""],rows:[],unescaped:[!1,!1,!1,!1,!0]},switchTab:function(a){"activequeries"===a.currentTarget.id?this.convertModelToJSON(!0):"slowqueries"===a.currentTarget.id&&this.convertModelToJSON(!1)},deleteRunningQueryModal:function(a){this.killQueryId=$(a.currentTarget).attr("data-id");var b=[],c=[];c.push(window.modalView.createReadOnlyEntry(void 0,"Running Query","Do you want to kill the running query?",void 0,void 0,!1,void 0)),b.push(window.modalView.createDeleteButton("Kill",this.killRunningQuery.bind(this))),window.modalView.show("modalTable.ejs","Kill Running Query",b,c),$(".modal-delete-confirmation strong").html("Really kill?")},killRunningQuery:function(){this.collection.killRunningQuery(this.killQueryId,this.killRunningQueryCallback.bind(this)),window.modalView.hide()},killRunningQueryCallback:function(){this.convertModelToJSON(!0),this.renderActive()},deleteSlowQueryHistoryModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry(void 0,"Slow Query Log","Do you want to delete the slow query log entries?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.deleteSlowQueryHistory.bind(this))),window.modalView.show("modalTable.ejs","Delete Slow Query Log",a,b)},deleteSlowQueryHistory:function(){this.collection.deleteSlowQueryHistory(this.slowQueryCallback.bind(this)),window.modalView.hide()},slowQueryCallback:function(){this.convertModelToJSON(!1),this.renderSlow()},render:function(){this.convertModelToJSON(!0)},renderActive:function(){this.$el.html(this.templateActive.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#activequeries").addClass("arango-active-tab")},renderSlow:function(){this.$el.html(this.templateSlow.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#slowqueries").addClass("arango-active-tab")},convertModelToJSON:function(a){var b=this,c=[];a===!0?this.collection=this.activeCollection:this.collection=this.slowCollection,this.collection.fetch({success:function(){b.collection.each(function(b){var d="";a&&(d=''),c.push([b.get("id"),b.get("query"),b.get("runTime").toFixed(2)+" s",b.get("started"),d])});var d="No running queries.";a||(d="No slow queries."),0===c.length&&c.push([d,"","",""]),b.tableDescription.rows=c,a?b.renderActive():b.renderSlow()}})}})}(),function(){"use strict";window.queryView=Backbone.View.extend({el:"#content",id:"#customsDiv",warningTemplate:templateEngine.createTemplate("warningList.ejs"),tabArray:[],execPending:!1,initialize:function(){this.refreshAQL(),this.tableDescription.rows=this.customQueries},events:{"click #result-switch":"switchTab","click #query-switch":"switchTab","click #customs-switch":"switchTab","click #submitQueryButton":"submitQuery","click #explainQueryButton":"explainQuery","click #commentText":"commentText","click #uncommentText":"uncommentText","click #undoText":"undoText","click #redoText":"redoText","click #smallOutput":"smallOutput","click #bigOutput":"bigOutput","click #clearOutput":"clearOutput","click #clearInput":"clearInput","click #clearQueryButton":"clearInput","click #addAQL":"addAQL","mouseover #querySelect":function(){this.refreshAQL(!0)},"change #querySelect":"importSelected","keypress #aqlEditor":"aqlShortcuts","click #arangoQueryTable .table-cell0":"editCustomQuery","click #arangoQueryTable .table-cell1":"editCustomQuery","click #arangoQueryTable .table-cell2 a":"deleteAQL","click #confirmQueryImport":"importCustomQueries","click #confirmQueryExport":"exportCustomQueries","click #downloadQueryResult":"downloadQueryResult","click #importQueriesToggle":"showImportMenu"},showImportMenu:function(a){$("#importQueriesToggle").toggleClass("activated"),$("#importHeader").slideToggle(200)},createCustomQueryModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("new-query-name","Name","",void 0,void 0,!1,[{rule:Joi.string().required(),msg:"No query name given."}])),a.push(window.modalView.createSuccessButton("Save",this.saveAQL.bind(this))),window.modalView.show("modalTable.ejs","Save Query",a,b,void 0,void 0,{"keyup #new-query-name":this.listenKey.bind(this)})},updateTable:function(){this.tableDescription.rows=this.customQueries,_.each(this.tableDescription.rows,function(a){a.thirdRow=''}),this.tableDescription.unescaped=[!1,!1,!0],this.$(this.id).html(this.table.render({content:this.tableDescription}))},editCustomQuery:function(a){var b=$(a.target).parent().children().first().text(),c=ace.edit("aqlEditor");c.setValue(this.getCustomQueryValueByName(b)),this.deselect(c),$("#querySelect").val(b),this.switchTab("query-switch")},initTabArray:function(){var a=this;$(".arango-tab").children().each(function(){a.tabArray.push($(this).children().first().attr("id"))})},listenKey:function(a){13===a.keyCode&&this.saveAQL(a),this.checkSaveName()},checkSaveName:function(){var a=$("#new-query-name").val();if("Insert Query"===a)return void $("#new-query-name").val("");var b=this.customQueries.some(function(b){return b.name===a});b?($("#modalButton1").removeClass("button-success"),$("#modalButton1").addClass("button-warning"),$("#modalButton1").text("Update")):($("#modalButton1").removeClass("button-warning"),$("#modalButton1").addClass("button-success"),$("#modalButton1").text("Save"))},clearOutput:function(){var a=ace.edit("queryOutput");a.setValue("")},clearInput:function(){var a=ace.edit("aqlEditor");this.setCachedQuery(a.getValue()),a.setValue("")},smallOutput:function(){var a=ace.edit("queryOutput");a.getSession().foldAll()},bigOutput:function(){var a=ace.edit("queryOutput");a.getSession().unfold()},aqlShortcuts:function(a){a.ctrlKey&&13===a.keyCode?this.submitQuery():a.metaKey&&!a.ctrlKey&&13===a.keyCode&&this.submitQuery()},queries:[],customQueries:[],tableDescription:{id:"arangoQueryTable",titles:["Name","Content",""],rows:[]},template:templateEngine.createTemplate("queryView.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),render:function(){var a=this;this.$el.html(this.template.render({})),this.$(this.id).html(this.table.render({content:this.tableDescription}));var b=1e3,c=$("#querySize");c.empty(),[100,250,500,1e3,2500,5e3,1e4].forEach(function(a){c.append('")});var d=ace.edit("queryOutput");d.setReadOnly(!0),d.setHighlightActiveLine(!1),d.getSession().setMode("ace/mode/json"),d.setFontSize("16px"),d.setValue("");var e=ace.edit("aqlEditor");e.getSession().setMode("ace/mode/aql"),e.setFontSize("16px"),e.commands.addCommand({name:"togglecomment",bindKey:{win:"Ctrl-Shift-C",linux:"Ctrl-Shift-C",mac:"Command-Shift-C"},exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEach"});var f=this.getCachedQuery();null!==f&&void 0!==f&&""!==f&&e.setValue(f),e.getSession().selection.on("changeCursor",function(b){var c=ace.edit("aqlEditor"),d=c.getSession(),e=c.getCursorPosition(),f=d.getTokenAt(e.row,e.column);f&&("comment"===f.type?$("#commentText i").removeClass("fa-comment").addClass("fa-comment-o").attr("data-original-title","Uncomment"):$("#commentText i").removeClass("fa-comment-o").addClass("fa-comment").attr("data-original-title","Comment")),a.setCachedQuery(c.getValue())}),$("#queryOutput").resizable({handles:"s",ghost:!0,stop:function(){setTimeout(function(){var a=ace.edit("queryOutput");a.resize()},200)}}),arangoHelper.fixTooltips(".queryTooltips, .icon_arangodb","top"),$("#aqlEditor .ace_text-input").focus();var g=$(window).height()-295;return $("#aqlEditor").height(g-19),$("#queryOutput").height(g),e.resize(),d.resize(),this.initTabArray(),this.renderSelectboxes(),this.deselect(d),this.deselect(e),$("#queryDiv").show(),$("#customsDiv").show(),this.initQueryImport(),this.switchTab("query-switch"),this},getCachedQuery:function(){if("undefined"!=typeof Storage){var a=localStorage.getItem("cachedQuery");if(void 0!==a){var b=JSON.parse(a);return b}}},setCachedQuery:function(a){"undefined"!=typeof Storage&&localStorage.setItem("cachedQuery",JSON.stringify(a))},initQueryImport:function(){var a=this;a.allowUpload=!1,$("#importQueries").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],a.allowUpload=!0})},importCustomQueries:function(){var a=this;if(this.allowUpload===!0){var b=function(){this.collection.fetch({async:!1}),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable(),a.allowUpload=!1,$("#customs-switch").click()};a.collection.saveImportQueries(a.file,b.bind(this))}},downloadQueryResult:function(){var a=ace.edit("aqlEditor"),b=a.getValue();""!==b||void 0!==b||null!==b?window.open("query/result/download/"+encodeURIComponent(btoa(JSON.stringify({query:b})))):arangoHelper.arangoError("Query error","could not query result.")},exportCustomQueries:function(){var a,b={},c=[];_.each(this.customQueries,function(a,b){c.push({name:a.name,value:a.value})}),b={extra:{queries:c}},$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user,(null===a||a===!1)&&(a="root")}),window.open("query/download/"+encodeURIComponent(a))},deselect:function(a){var b=a.getSelection(),c=b.lead.row,d=b.lead.column;b.setSelectionRange({start:{row:c,column:d},end:{row:c,column:d}}),a.focus()},addAQL:function(){this.refreshAQL(!0),this.createCustomQueryModal(),$("#new-query-name").val($("#querySelect").val()),setTimeout(function(){$("#new-query-name").focus()},500),this.checkSaveName()},getAQL:function(){var a,b=this;this.collection.fetch({async:!1});var c=localStorage.getItem("customQueries");if(c){var d=JSON.parse(c);_.each(d,function(a){b.collection.add({value:a.value,name:a.name})}),a=b.collection.saveCollectionQueries(),a===!0&&localStorage.removeItem("customQueries")}this.updateLocalQueries()},deleteAQL:function(a){var b=$(a.target).parent().parent().parent().children().first().text(),c=this.collection.findWhere({name:b});this.collection.remove(c),this.collection.saveCollectionQueries(),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable()},updateLocalQueries:function(){var a=this;this.customQueries=[],this.collection.each(function(b){a.customQueries.push({name:b.get("name"),value:b.get("value")})})},saveAQL:function(a){a.stopPropagation(),this.refreshAQL();var b=ace.edit("aqlEditor"),c=$("#new-query-name").val(),d="Update"===$("#modalButton1").text();if(!$("#new-query-name").hasClass("invalid-input")&&""!==c.trim()){var e=b.getValue(),f=!1;if($.each(this.customQueries,function(a,b){return b.name===c?(b.value=e,void(f=!d)):void 0}),f===!0)return void window.modalView.hide();if(d){var g=this.collection.findWhere({name:c});g.set("value",e)}else this.collection.add({name:c,value:e});this.collection.saveCollectionQueries(),window.modalView.hide(),this.updateLocalQueries(),this.renderSelectboxes(),$("#querySelect").val(c)}},getSystemQueries:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"js/arango/aqltemplates.json",contentType:"application/json",processData:!1,async:!1,success:function(b){a.queries=b},error:function(a){arangoHelper.arangoNotification("Query","Error while loading system templates")}})},getCustomQueryValueByName:function(a){var b;return $.each(this.customQueries,function(c,d){a===d.name&&(b=d.value)}),b},refreshAQL:function(a){if(this.getAQL(),this.getSystemQueries(),this.updateLocalQueries(),a){var b=$("#querySelect").val();this.renderSelectboxes(),$("#querySelect").val(b)}},importSelected:function(a){var b=ace.edit("aqlEditor");$.each(this.queries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),$.each(this.customQueries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),this.deselect(ace.edit("aqlEditor"))},renderSelectboxes:function(){this.sortQueries();var a="";a="#querySelect",$(a).empty(),$(a).append(''),$(a).append(''),jQuery.each(this.queries,function(b,c){$(a).append('")}),$(a).append(""),this.customQueries.length>0&&($(a).append(''),jQuery.each(this.customQueries,function(b,c){$(a).append('")}),$(a).append(""))},undoText:function(){var a=ace.edit("aqlEditor");a.undo()},redoText:function(){var a=ace.edit("aqlEditor");a.redo()},commentText:function(){var a=ace.edit("aqlEditor");a.toggleCommentLines()},sortQueries:function(){this.queries=_.sortBy(this.queries,"name"),this.customQueries=_.sortBy(this.customQueries,"name")},abortQuery:function(){},readQueryData:function(){var a=ace.edit("aqlEditor"),b=a.session.getTextRange(a.getSelectionRange()),c=$("#querySize"),d={query:b||a.getValue(),batchSize:parseInt(c.val(),10),id:"currentFrontendQuery"};return JSON.stringify(d)},heatmapColors:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"],heatmap:function(a){return this.heatmapColors[Math.floor(10*a)]},followQueryPath:function(a,b){var c={},d=0;c[b[0].id]=a;var e,f,g,h;for(e=1;e0&&(f+="Warnings:\r\n\r\n",d.extra.warnings.forEach(function(a){f+="["+a.code+"], '"+a.message+"'\r\n"})),""!==f&&(f+="\r\nResult:\r\n\r\n"),c.setValue(f+JSON.stringify(d.result,void 0,2)),b.switchTab("result-switch"),window.progressView.hide(),b.deselect(c),$("#downloadQueryResult").show(),"function"==typeof a&&a()},error:function(d){b.switchTab("result-switch"),$("#downloadQueryResult").hide();try{var e=JSON.parse(d.responseText);c.setValue("["+e.errorNum+"] "+e.errorMessage),arangoHelper.arangoError("Query error",e.errorNum)}catch(f){c.setValue("ERROR"),arangoHelper.arangoError("Query error","ERROR")}window.progressView.hide(), -"function"==typeof a&&a()}})},submitQuery:function(){var a=ace.edit("queryOutput");this.fillResult(this.switchTab.bind(this,"result-switch")),a.resize();var b=ace.edit("aqlEditor");this.deselect(b)},explainQuery:function(){this.fillExplain()},switchTab:function(a){var b;b="string"==typeof a?a:a.target.id;var c=this,d=function(a){var d="#"+a.replace("-switch",""),e="#tabContent"+d.charAt(1).toUpperCase()+d.substr(2);a===b?($("#"+a).parent().addClass("active"),$(d).addClass("active"),$(e).show(),"query-switch"===b?$("#aqlEditor .ace_text-input").focus():"result-switch"===b&&c.execPending&&c.fillResult()):($("#"+a).parent().removeClass("active"),$(d).removeClass("active"),$(e).hide())};this.tabArray.forEach(d),this.updateTable()}})}(),function(){"use strict";window.shellView=Backbone.View.extend({resizing:!1,el:"#content",template:templateEngine.createTemplate("shellView.ejs"),render:function(){$(this.el).html(this.template.render({})),this.replShell(),$("#shell_workspace").trigger("resize",[150]),this.resize();var a=this;return $(window).resize(function(){a.resize()}),this.executeJs("start_pretty_print(); try { db._collections(); } catch (err) { } undefined;"),this},resize:function(){if(!this.resizing){this.resizing=!0;var a=$(window).height()-250;$("#shell_workspace").height(a),this.resizing=!1}},executeJs:function(a){var b=require("internal");try{var c=window.eval(a);void 0!==c&&(b.browserOutputBuffer="",b.printShell.apply(b.printShell,[c]),jqconsole.Write("==> "+b.browserOutputBuffer+"\n","jssuccess")),b.browserOutputBuffer=""}catch(d){d instanceof b.ArangoError?d.hasOwnProperty("errorMessage")?jqconsole.Write(d.errorMessage+"\n","jserror"):jqconsole.Write(d.message+"\n","jserror"):jqconsole.Write(d.name+": "+d.message+"\n","jserror")}},replShellPromptHelper:function(a){try{new Function(a)}catch(b){return/[\[\{\(]$/.test(a)?1:0}return!1},replShellHandlerHelper:function(a){},replShell:function(){var a=this,b=require("internal"),c=require("org/arangodb/arangosh"),d="Welcome to arangosh. Copyright (c) ArangoDB GmbH\n";window.jqconsole=$("#replShell").jqconsole(d,"JSH> ","...>"),this.executeJs(b.print(c.HELP)),jqconsole.RegisterShortcut("Z",function(){jqconsole.AbortPrompt(),e()}),jqconsole.RegisterShortcut("E",function(){jqconsole.MoveToEnd(),e()}),jqconsole.RegisterMatching("{","}","brace"),jqconsole.RegisterMatching("(",")","paren"),jqconsole.RegisterMatching("[","]","bracket");var e=function(b){"help"===b&&(b=help()),"exit"===b&&location.reload(),a.executeJs(b),jqconsole.Prompt(!0,e,a.replShellPromptHelper(b))};e()}})}(),function(){"use strict";window.StatisticBarView=Backbone.View.extend({el:"#statisticBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab"},template:templateEngine.createTemplate("statisticBarView.ejs"),initialize:function(){this.currentDB=this.options.currentDB},replaceSVG:function(a){var b=a.attr("id"),c=a.attr("class"),d=a.attr("src");$.get(d,function(d){var e=$(d).find("svg");void 0===b&&(e=e.attr("id",b)),void 0===c&&(e=e.attr("class",c+" replaced-svg")),e=e.removeAttr("xmlns:a"),a.replaceWith(e)},"xml")},render:function(){var a=this;return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),$("img.svg").each(function(){a.replaceSVG($(this))}),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){$("#arangoCollectionSelect").change(function(){var a=$(this).find("option:selected").val();window.App.navigate(a,{trigger:!0})})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")}})}(),function(){"use strict";window.TableView=Backbone.View.extend({template:templateEngine.createTemplate("tableView.ejs"),loading:templateEngine.createTemplate("loadingTableView.ejs"),initialize:function(){this.rowClickCallback=this.options.rowClick},events:{"click tbody tr":"rowClick","click .deleteButton":"removeClick"},rowClick:function(a){this.hasOwnProperty("rowClickCallback")&&this.rowClickCallback(a)},removeClick:function(a){this.hasOwnProperty("removeClickCallback")&&(this.removeClickCallback(a),a.stopPropagation())},setRowClick:function(a){this.rowClickCallback=a},setRemoveClick:function(a){this.removeClickCallback=a},render:function(){$(this.el).html(this.template.render({docs:this.collection}))},drawLoading:function(){$(this.el).html(this.loading.render({}))}})}(),function(){"use strict";window.testView=Backbone.View.extend({el:"#content",events:{"change #fileInput":"readJSON"},template:templateEngine.createTemplate("testView.ejs"),readJSON:function(){var a=document.getElementById("fileInput"),b=a.files[0],c="application/json";if(b.type.match(c)){var d=new FileReader;d.onload=function(a){$("#fileDisplayArea pre").text(d.result)},d.readAsText(b)}else $("#fileDisplayArea pre").text("File not supported!")},render:function(){return $(this.el).html(this.template.render()),this}})}(),function(){"use strict";window.UserBarView=Backbone.View.extend({events:{"change #userBarSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown","click #userLogout":"userLogout"},initialize:function(){this.userCollection=this.options.userCollection,this.userCollection.fetch({async:!1}),this.userCollection.bind("change:extra",this.render.bind(this))},template:templateEngine.createTemplate("userBarView.ejs"),navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement;b=$(b).closest("a");var c=b.attr("id");return"user"===c?($("#user_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"user"===c?void $("#user_dropdown").show(200):void 0},hideDropdown:function(a){$("#user_dropdown").hide()},render:function(a){var b=this.userCollection.whoAmI(),c=null,d=null,e=!1,f=null;return b&&(f=this.userCollection.findWhere({user:b}),f.set({loggedIn:!0}),d=f.get("extra").name,c=f.get("extra").img,e=f.get("active")),c=c?"https://s.gravatar.com/avatar/"+c+"?s=24":"img/arangodb_logo_small.png",d||(d=""),this.$el=$("#userBar"),this.$el.html(this.template.render({img:c,name:d,username:b,active:e})),this.delegateEvents(),this.$el},userLogout:function(){this.userCollection.whoAmI(),this.userCollection.logout()}})}(),function(){"use strict";window.userManagementView=Backbone.View.extend({el:"#content",el2:"#userManagementThumbnailsIn",template:templateEngine.createTemplate("userManagementView.ejs"),events:{"click #createUser":"createUser","click #submitCreateUser":"submitCreateUser","click .editUser":"editUser","click .icon":"editUser","click #submitEditUser":"submitEditUser","click #userManagementToggle":"toggleView","keyup #userManagementSearchInput":"search","click #userManagementSearchSubmit":"search","click #callEditUserPassword":"editUserPassword","click #submitEditUserPassword":"submitEditUserPassword","click #submitEditCurrentUserProfile":"submitEditCurrentUserProfile","click .css-label":"checkBoxes","change #userSortDesc":"sorting"},dropdownVisible:!1,initialize:function(){this.collection.fetch({async:!1}),this.currentUser=this.collection.findWhere({user:this.collection.whoAmI()})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},sorting:function(){$("#userSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#userManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(a){var b=!1;return $("#userManagementDropdown").is(":visible")&&(b=!0),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:""})),b===!0&&($("#userManagementDropdown2").show(),$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown").show()),a&&this.editCurrentUser(),arangoHelper.setCheckboxStatus("#userManagementDropdown"),this},search:function(){var a,b,c,d;a=$("#userManagementSearchInput"),b=$("#userManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("user").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b})),a=$("#userManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},createUser:function(a){a.preventDefault(),this.createCreateUserModal()},submitCreateUser:function(){var a=this,b=$("#newUsername").val(),c=$("#newName").val(),d=$("#newPassword").val(),e=$("#newStatus").is(":checked");if(this.validateUserInfo(c,b,d,e)){var f={user:b,passwd:d,active:e,extra:{name:c}};this.collection.create(f,{wait:!0,error:function(a,b){},success:function(b){a.updateUserManagement(),window.modalView.hide()}})}},validateUserInfo:function(a,b,c,d){return""===b?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):!0},updateUserManagement:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},submitDeleteUser:function(a){var b=this.collection.findWhere({user:a});b.destroy({wait:!0}),window.modalView.hide(),this.updateUserManagement()},editUser:function(a){this.collection.fetch();var b=this.evaluateUserName($(a.currentTarget).attr("id"),"_edit-user");""===b&&(b=$(a.currentTarget).attr("id"));var c=this.collection.findWhere({user:b});c.get("loggedIn")?this.editCurrentUser():this.createEditUserModal(c.get("user"),c.get("extra").name,c.get("active"))},editCurrentUser:function(){this.createEditCurrentUserModal(this.currentUser.get("user"),this.currentUser.get("extra").name,this.currentUser.get("extra").img)},submitEditUser:function(a){var b=$("#editName").val(),c=$("#editStatus").is(":checked");if(!this.validateStatus(c))return void $("#editStatus").closest("th").css("backgroundColor","red");if(!this.validateName(b))return void $("#editName").closest("th").css("backgroundColor","red");var d=this.collection.findWhere({user:a});d.save({extra:{name:b},active:c},{type:"PATCH"}),window.modalView.hide(),this.updateUserManagement()},validateUsername:function(a){return""===a?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validatePassword:function(a){return!0},validateName:function(a){return""===a?!0:a.match(/^[a-zA-Z][a-zA-Z0-9_\-\ ]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validateStatus:function(a){return""===a?!1:!0},toggleView:function(){$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown2").slideToggle(200)},setFilterValues:function(){},evaluateUserName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},editUserPassword:function(){window.modalView.hide(),this.createEditUserPasswordModal()},submitEditUserPassword:function(){var a=$("#oldCurrentPassword").val(),b=$("#newCurrentPassword").val(),c=$("#confirmCurrentPassword").val();$("#oldCurrentPassword").val(""),$("#newCurrentPassword").val(""),$("#confirmCurrentPassword").val(""),$("#oldCurrentPassword").closest("th").css("backgroundColor","white"),$("#newCurrentPassword").closest("th").css("backgroundColor","white"),$("#confirmCurrentPassword").closest("th").css("backgroundColor","white");var d=!1;this.validateCurrentPassword(a)||($("#oldCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),b!==c&&($("#confirmCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),this.validatePassword(b)||($("#newCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),d||(this.currentUser.setPassword(b),window.modalView.hide())},validateCurrentPassword:function(a){return this.currentUser.checkPassword(a)},submitEditCurrentUserProfile:function(){var a=$("#editCurrentName").val(),b=$("#editCurrentUserProfileImg").val();b=this.parseImgString(b),this.currentUser.setExtras(a,b),this.updateUserProfile(),window.modalView.hide()},updateUserProfile:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},parseImgString:function(a){return-1===a.indexOf("@")?a:CryptoJS.MD5(a).toString()},createEditUserModal:function(a,b,c){var d,e;e=[{type:window.modalView.tables.READONLY,label:"Username",value:_.escape(a)},{type:window.modalView.tables.TEXT,label:"Name",value:b,id:"editName",placeholder:"Name"},{type:window.modalView.tables.CHECKBOX,label:"Active",value:"active",checked:c,id:"editStatus"}],d=[{title:"Delete",type:window.modalView.buttons.DELETE,callback:this.submitDeleteUser.bind(this,a)},{title:"Save",type:window.modalView.buttons.SUCCESS,callback:this.submitEditUser.bind(this,a)}],window.modalView.show("modalTable.ejs","Edit User",d,e)},createCreateUserModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newUsername","Username","",!1,"Username",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createTextEntry("newName","Name","",!1,"Name",!1)),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),b.push(window.modalView.createCheckboxEntry("newStatus","Active","active",!1,!0)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateUser.bind(this))),window.modalView.show("modalTable.ejs","Create New User",a,b)},createEditCurrentUserModal:function(a,b,c){var d=[],e=[];e.push(window.modalView.createReadOnlyEntry("id_username","Username",a)),e.push(window.modalView.createTextEntry("editCurrentName","Name",b,!1,"Name",!1)),e.push(window.modalView.createTextEntry("editCurrentUserProfileImg","Gravatar account (Mail)",c,"Mailaddress or its md5 representation of your gravatar account. The address will be converted into a md5 string. Only the md5 string will be stored, not the mailaddress.","myAccount(at)gravatar.com")),d.push(window.modalView.createNotificationButton("Change Password",this.editUserPassword.bind(this))),d.push(window.modalView.createSuccessButton("Save",this.submitEditCurrentUserProfile.bind(this))),window.modalView.show("modalTable.ejs","Edit User Profile",d,e)},createEditUserPasswordModal:function(){var a=[],b=[];b.push(window.modalView.createPasswordEntry("oldCurrentPassword","Old Password","",!1,"old password",!1)),b.push(window.modalView.createPasswordEntry("newCurrentPassword","New Password","",!1,"new password",!1)),b.push(window.modalView.createPasswordEntry("confirmCurrentPassword","Confirm New Password","",!1,"confirm new password",!1)),a.push(window.modalView.createSuccessButton("Save",this.submitEditUserPassword.bind(this))),window.modalView.show("modalTable.ejs","Edit User Password",a,b)}})}(),function(){"use strict";window.Router=Backbone.Router.extend({routes:{"":"dashboard",dashboard:"dashboard",collections:"collections","new":"newCollection",login:"login","collection/:colid/documents/:pageid":"documents","collection/:colid/:docid":"document",shell:"shell",query:"query",queryManagement:"queryManagement",api:"api",databases:"databases",applications:"applications","applications/:mount":"applicationDetail",graph:"graphManagement",graph2:"graph2","graph/:name":"showGraph",userManagement:"userManagement",userProfile:"userProfile",logs:"logs",demo:"demo","demo/:collection":"demo"},demo:function(a){a||(a="flights"),this.demoView||(this.demoView=new window.DemoView({collectionName:a})),this.demoView.render(),this.naviView.selectMenuItem("demo-menu")},initialize:function(){window.modalView=new window.ModalView,this.foxxList=new window.FoxxCollection,window.foxxInstallView=new window.FoxxInstallView({collection:this.foxxList}),window.progressView=new window.ProgressView;var a=this;this.userCollection=new window.ArangoUsers,this.initOnce=function(){this.initOnce=function(){},this.arangoDatabase=new window.ArangoDatabase,this.currentDB=new window.CurrentDatabase,this.currentDB.fetch({async:!1}),this.arangoCollectionsStore=new window.arangoCollections,this.arangoDocumentStore=new window.arangoDocument,arangoHelper.setDocumentStore(this.arangoDocumentStore),this.arangoCollectionsStore.fetch({async:!1}),this.footerView=new window.FooterView,this.notificationList=new window.NotificationCollection,this.naviView=new window.NavigationView({database:this.arangoDatabase,currentDB:this.currentDB,notificationCollection:a.notificationList,userCollection:this.userCollection}),this.queryCollection=new window.ArangoQueries,this.footerView.render(),this.naviView.render(),window.checkVersion()}.bind(this),$(window).resize(function(){a.handleResize()})},checkUser:function(){return null===this.userCollection.whoAmI()?(this.navigate("login",{trigger:!0}),!1):(this.initOnce(),!0)},logs:function(){if(this.checkUser()){if(!this.logsView){var a=new window.ArangoLogs({upto:!0,loglevel:4}),b=new window.ArangoLogs({loglevel:4}),c=new window.ArangoLogs({loglevel:3}),d=new window.ArangoLogs({loglevel:2}),e=new window.ArangoLogs({loglevel:1});this.logsView=new window.LogsView({logall:a,logdebug:b,loginfo:c,logwarning:d,logerror:e})}this.logsView.render(),this.naviView.selectMenuItem("tools-menu")}},applicationDetail:function(a){this.checkUser()&&(this.naviView.selectMenuItem("applications-menu"),0===this.foxxList.length&&this.foxxList.fetch({async:!1}),this.hasOwnProperty("applicationDetailView")||(this.applicationDetailView=new window.ApplicationDetailView({model:this.foxxList.get(decodeURIComponent(a))})),this.applicationDetailView.model=this.foxxList.get(decodeURIComponent(a)),this.applicationDetailView.render("swagger"))},login:function(){return null!==this.userCollection.whoAmI()?(this.navigate("",{trigger:!0}),!1):(this.loginView||(this.loginView=new window.loginView({collection:this.userCollection})),void this.loginView.render())},collections:function(){if(this.checkUser()){var a=this.naviView,b=this;this.collectionsView||(this.collectionsView=new window.CollectionsView({collection:this.arangoCollectionsStore})),this.arangoCollectionsStore.fetch({success:function(){b.collectionsView.render(),a.selectMenuItem("collections-menu")}})}},documents:function(a,b){this.checkUser()&&(this.documentsView||(this.documentsView=new window.DocumentsView({collection:new window.arangoDocuments,documentStore:this.arangoDocumentStore,collectionsStore:this.arangoCollectionsStore})),this.documentsView.setCollectionId(a,b),this.documentsView.render())},document:function(a,b){if(this.checkUser()){this.documentView||(this.documentView=new window.DocumentView({collection:this.arangoDocumentStore})),this.documentView.colid=a,this.documentView.docid=b,this.documentView.render();var c=arangoHelper.collectionApiType(a);this.documentView.setType(c)}},shell:function(){this.checkUser()&&(this.shellView||(this.shellView=new window.shellView),this.shellView.render(),this.naviView.selectMenuItem("tools-menu"))},query:function(){this.checkUser()&&(this.queryView||(this.queryView=new window.queryView({collection:this.queryCollection})),this.queryView.render(),this.naviView.selectMenuItem("query-menu"))},queryManagement:function(){this.queryManagementView||(this.queryManagementView=new window.queryManagementView({collection:void 0})),this.queryManagementView.render(),this.naviView.selectMenuItem("tools-menu")},api:function(){this.checkUser()&&(this.apiView||(this.apiView=new window.ApiView),this.apiView.render(),this.naviView.selectMenuItem("tools-menu"))},databases:function(){this.checkUser()&&(arangoHelper.databaseAllowed()===!0?(this.databaseView||(this.databaseView=new window.databaseView({users:this.userCollection,collection:this.arangoDatabase})),this.databaseView.render(),this.naviView.selectMenuItem("databases-menu")):(this.navigate("#",{trigger:!0}),this.naviView.selectMenuItem("dashboard-menu"),$("#databaseNavi").css("display","none"),$("#databaseNaviSelect").css("display","none")))},dashboard:function(){this.checkUser()&&(this.naviView.selectMenuItem("dashboard-menu"),void 0===this.dashboardView&&(this.dashboardView=new window.DashboardView({dygraphConfig:window.dygraphConfig,database:this.arangoDatabase})),this.dashboardView.render())},graph2:function(){this.checkUser()&&(this.graphTestView=new window.GraphTestView,this.graphTestView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},graphManagement:function(){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},showGraph:function(a){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.graphManagementView.loadGraphViewer(a),this.naviView.selectMenuItem("graphviewer-menu"))},applications:function(){this.checkUser()&&(void 0===this.applicationsView&&(this.applicationsView=new window.ApplicationsView({collection:this.foxxList})),this.applicationsView.reload(),this.naviView.selectMenuItem("applications-menu"))},handleSelectDatabase:function(){this.checkUser()&&this.naviView.handleSelectDatabase()},handleResize:function(){this.dashboardView&&this.dashboardView.resize(),this.graphManagementView&&this.graphManagementView.handleResize($("#content").width()),this.queryView&&this.queryView.resize()},userManagement:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(),this.naviView.selectMenuItem("tools-menu"))},userProfile:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(!0),this.naviView.selectMenuItem("tools-menu"))}})}(),function(){"use strict";var a=function(){$.ajax({type:"POST",url:"/_admin/aardvark/disableVersionCheck"})},b=function(a){$.ajax({type:"GET",url:"/_admin/aardvark/shouldCheckVersion",success:function(b){b===!0&&a()}})},c=function(b,c){var d=[];d.push(window.modalView.createNotificationButton("Don't ask again",function(){a(),window.modalView.hide()})),d.push(window.modalView.createSuccessButton("Download Page",function(){window.open("https://www.arangodb.com/download","_blank"),window.modalView.hide()}));var e=[],f=window.modalView.createReadOnlyEntry.bind(window.modalView);e.push(f("current","Current",b.toString())),c.major&&e.push(f("major","Major",c.major.version)),c.minor&&e.push(f("minor","Minor",c.minor.version)),c.bugfix&&e.push(f("bugfix","Bugfix",c.bugfix.version)),window.modalView.show("modalTable.ejs","New Version Available",d,e)};window.checkVersion=function(){$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(a){var d=window.versionHelper.fromString(a.version);window.parseVersions=function(e){_.isEmpty(e)||/-devel$/.test(a.version)||b(c.bind(window,d,e))},$.ajax({type:"GET",async:!0,crossDomain:!0,timeout:3e3,dataType:"jsonp",url:"https://www.arangodb.com/repositories/versions.php?jsonp=parseVersions&version="+encodeURIComponent(d.toString())})}})}}(),function(){"use strict";window.hasOwnProperty("TEST_BUILD")||$(document).ready(function(){window.App=new window.Router,Backbone.history.start(),window.App.handleResize()})}(); \ No newline at end of file +q=g[p]&&g[p][n]),"undefined"==typeof q||!q.length||!q[0]){var x="";if(!k){v=[];for(s in g[p])this.terminals_[s]&&s>2&&v.push("'"+this.terminals_[s]+"'");x=this.lexer.showPosition?"Parse error on line "+(i+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+v.join(", ")+", got '"+(this.terminals_[n]||n)+"'":"Parse error on line "+(i+1)+": Unexpected "+(1==n?"end of input":"'"+(this.terminals_[n]||n)+"'"),this.parseError(x,{text:this.lexer.match,token:this.terminals_[n]||n,line:this.lexer.yylineno,loc:l,expected:v})}}if(q[0]instanceof Array&&q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+p+", token: "+n);switch(q[0]){case 1:d.push(n),e.push(this.lexer.yytext),f.push(this.lexer.yylloc),d.push(q[1]),n=null,o?(n=o,o=null):(j=this.lexer.yyleng,h=this.lexer.yytext,i=this.lexer.yylineno,l=this.lexer.yylloc,k>0&&k--);break;case 2:if(t=this.productions_[q[1]][1],w.$=e[e.length-t],w._$={first_line:f[f.length-(t||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(t||1)].first_column,last_column:f[f.length-1].last_column},m&&(w._$.range=[f[f.length-(t||1)].range[0],f[f.length-1].range[1]]),r=this.performAction.call(w,h,j,i,this.yy,q[1],e,f),"undefined"!=typeof r)return r;t&&(d=d.slice(0,-1*t*2),e=e.slice(0,-1*t),f=f.slice(0,-1*t)),d.push(this.productions_[q[1]][0]),e.push(w.$),f.push(w._$),u=g[d[d.length-2]][d[d.length-1]],d.push(u);break;case 3:return!0}}return!0}},c=function(){var a={EOF:1,parseError:function(a,b){if(!this.yy.parser)throw new Error(a);this.yy.parser.parseError(a,b)},setInput:function(a){return this._input=a,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var b=a.match(/(?:\r\n?|\n).*/g);return b?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b-1),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this},more:function(){return this._more=!0,this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),b=new Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,b,c,d,e;this._more||(this.yytext="",this.match="");for(var f=this._currentRules(),g=0;gb[0].length)||(b=c,d=g,this.options.flex));g++);return b?(e=b[0].match(/(?:\r\n?|\n).*/g),e&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-e[e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],a=this.performAction.call(this,this.yy,this,f[d],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a?a:void 0):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return"undefined"!=typeof a?a:this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(a){this.begin(a)}};return a.options={},a.performAction=function(a,b,c,d){switch(c){case 0:if("\\"!==b.yytext.slice(-1)&&this.begin("mu"),"\\"===b.yytext.slice(-1)&&(b.yytext=b.yytext.substr(0,b.yyleng-1),this.begin("emu")),b.yytext)return 14;break;case 1:return 14;case 2:return"\\"!==b.yytext.slice(-1)&&this.popState(),"\\"===b.yytext.slice(-1)&&(b.yytext=b.yytext.substr(0,b.yyleng-1)),14;case 3:return 24;case 4:return 16;case 5:return 20;case 6:return 19;case 7:return 19;case 8:return 23;case 9:return 23;case 10:return b.yytext=b.yytext.substr(3,b.yyleng-5),this.popState(),15;case 11:return 22;case 12:return 35;case 13:return 34;case 14:return 34;case 15:return 37;case 16:break;case 17:return this.popState(),18;case 18:return this.popState(),18;case 19:return b.yytext=b.yytext.substr(1,b.yyleng-2).replace(/\\"/g,'"'),29;case 20:return b.yytext=b.yytext.substr(1,b.yyleng-2).replace(/\\"/g,'"'),29;case 21:return b.yytext=b.yytext.substr(1),27;case 22:return 31;case 23:return 31;case 24:return 30;case 25:return 34;case 26:return b.yytext=b.yytext.substr(1,b.yyleng-2),34;case 27:return"INVALID";case 28:return 5}},a.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],a.conditions={mu:{rules:[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],inclusive:!1},emu:{rules:[2],inclusive:!1},INITIAL:{rules:[0,1,28],inclusive:!0}},a}();return b.lexer=c,a.prototype=b,b.Parser=a,new a}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=handlebars,exports.Parser=handlebars.Parser,exports.parse=function(){return handlebars.parse.apply(handlebars,arguments)},exports.main=function(a){if(!a[1])throw new Error("Usage: "+a[0]+" FILE");var b;return b="undefined"!=typeof process?require("fs").readFileSync(require("path").resolve(a[1]),"utf8"):require("file").path(require("file").cwd()).join(a[1]).read({charset:"utf-8"}),exports.parser.parse(b)},"undefined"!=typeof module&&require.main===module&&exports.main("undefined"!=typeof process?process.argv.slice(1):require("system").args)),Handlebars.Parser=handlebars,Handlebars.parse=function(a){return Handlebars.Parser.yy=Handlebars.AST,Handlebars.Parser.parse(a)},Handlebars.print=function(a){return(new Handlebars.PrintVisitor).accept(a)},Handlebars.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,log:function(a,b){}},Handlebars.log=function(a,b){Handlebars.logger.log(a,b)},function(){Handlebars.AST={},Handlebars.AST.ProgramNode=function(a,b){this.type="program",this.statements=a,b&&(this.inverse=new Handlebars.AST.ProgramNode(b))},Handlebars.AST.MustacheNode=function(a,b,c){this.type="mustache",this.escaped=!c,this.hash=b;var d=this.id=a[0],e=this.params=a.slice(1),f=this.eligibleHelper=d.isSimple;this.isHelper=f&&(e.length||b)},Handlebars.AST.PartialNode=function(a,b){this.type="partial",this.id=a,this.context=b};var a=function(a,b){if(a.original!==b.original)throw new Handlebars.Exception(a.original+" doesn't match "+b.original)};Handlebars.AST.BlockNode=function(b,c,d,e){a(b.id,e),this.type="block",this.mustache=b,this.program=c,this.inverse=d,this.inverse&&!this.program&&(this.isInverse=!0)},Handlebars.AST.ContentNode=function(a){this.type="content",this.string=a},Handlebars.AST.HashNode=function(a){this.type="hash",this.pairs=a},Handlebars.AST.IdNode=function(a){this.type="ID",this.original=a.join(".");for(var b=[],c=0,d=0,e=a.length;e>d;d++){var f=a[d];".."===f?c++:"."===f||"this"===f?this.isScoped=!0:b.push(f)}this.parts=b,this.string=b.join("."),this.depth=c,this.isSimple=1===a.length&&!this.isScoped&&0===c},Handlebars.AST.DataNode=function(a){this.type="DATA",this.id=a},Handlebars.AST.StringNode=function(a){this.type="STRING",this.string=a},Handlebars.AST.IntegerNode=function(a){this.type="INTEGER",this.integer=a},Handlebars.AST.BooleanNode=function(a){this.type="BOOLEAN",this.bool=a},Handlebars.AST.CommentNode=function(a){this.type="comment",this.comment=a}}(),Handlebars.Exception=function(a){var b=Error.prototype.constructor.apply(this,arguments);for(var c in b)b.hasOwnProperty(c)&&(this[c]=b[c]);this.message=b.message},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(a){this.string=a},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var a={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},b=/[&<>"'`]/g,c=/[&<>"'`]/,d=function(b){return a[b]||"&"};Handlebars.Utils={escapeExpression:function(a){return a instanceof Handlebars.SafeString?a.toString():null==a||a===!1?"":c.test(a)?a.replace(b,d):a},isEmpty:function(a){return"undefined"==typeof a?!0:null===a?!0:a===!1?!0:"[object Array]"===Object.prototype.toString.call(a)&&0===a.length?!0:!1}}}(),Handlebars.Compiler=function(){},Handlebars.JavaScriptCompiler=function(){},function(a,b){a.prototype={compiler:a,disassemble:function(){for(var a,b,c,d=this.opcodes,e=[],f=0,g=d.length;g>f;f++)if(a=d[f],"DECLARE"===a.opcode)e.push("DECLARE "+a.name+"="+a.value);else{b=[];for(var h=0;hd;d++)b=c[d],this[b.type](b);return this.isSimple=1===e,this.depths.list=this.depths.list.sort(function(a,b){return a-b}),this},compileProgram:function(a){var b,c=(new this.compiler).compile(a,this.options),d=this.guid++;this.usePartial=this.usePartial||c.usePartial,this.children[d]=c;for(var e=0,f=c.depths.list.length;f>e;e++)b=c.depths.list[e],2>b||this.addDepth(b-1);return d},block:function(a){var b=a.mustache,c=a.program,d=a.inverse;c&&(c=this.compileProgram(c)),d&&(d=this.compileProgram(d));var e=this.classifyMustache(b);"helper"===e?this.helperMustache(b,c,d):"simple"===e?(this.simpleMustache(b),this.opcode("pushProgram",c),this.opcode("pushProgram",d),this.opcode("pushLiteral","{}"),this.opcode("blockValue")):(this.ambiguousMustache(b,c,d),this.opcode("pushProgram",c),this.opcode("pushProgram",d),this.opcode("pushLiteral","{}"),this.opcode("ambiguousBlockValue")),this.opcode("append")},hash:function(a){var b,c,d=a.pairs;this.opcode("push","{}");for(var e=0,f=d.length;f>e;e++)b=d[e],c=b[1],this.accept(c),this.opcode("assignToHash",b[0])},partial:function(a){var b=a.id;this.usePartial=!0,a.context?this.ID(a.context):this.opcode("push","depth0"),this.opcode("invokePartial",b.original),this.opcode("append")},content:function(a){this.opcode("appendContent",a.string)},mustache:function(a){var b=this.options,c=this.classifyMustache(a);"simple"===c?this.simpleMustache(a):"helper"===c?this.helperMustache(a):this.ambiguousMustache(a),a.escaped&&!b.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ambiguousMustache:function(a,b,c){var d=a.id,e=d.parts[0];this.opcode("getContext",d.depth),this.opcode("pushProgram",b),this.opcode("pushProgram",c),this.opcode("invokeAmbiguous",e)},simpleMustache:function(a,b,c){var d=a.id;"DATA"===d.type?this.DATA(d):d.parts.length?this.ID(d):(this.addDepth(d.depth),this.opcode("getContext",d.depth),this.opcode("pushContext")),this.opcode("resolvePossibleLambda")},helperMustache:function(a,b,c){var d=this.setupFullMustacheParams(a,b,c),e=a.id.parts[0];if(this.options.knownHelpers[e])this.opcode("invokeKnownHelper",d.length,e);else{if(this.knownHelpersOnly)throw new Error("You specified knownHelpersOnly, but used the unknown helper "+e);this.opcode("invokeHelper",d.length,e)}},ID:function(a){this.addDepth(a.depth),this.opcode("getContext",a.depth);var b=a.parts[0];b?this.opcode("lookupOnContext",a.parts[0]):this.opcode("pushContext");for(var c=1,d=a.parts.length;d>c;c++)this.opcode("lookup",a.parts[c])},DATA:function(a){this.options.data=!0,this.opcode("lookupData",a.id)},STRING:function(a){this.opcode("pushString",a.string)},INTEGER:function(a){this.opcode("pushLiteral",a.integer)},BOOLEAN:function(a){this.opcode("pushLiteral",a.bool)},comment:function(){},opcode:function(a){this.opcodes.push({opcode:a,args:[].slice.call(arguments,1)})},declare:function(a,b){this.opcodes.push({opcode:"DECLARE",name:a,value:b})},addDepth:function(a){if(isNaN(a))throw new Error("EWOT");0!==a&&(this.depths[a]||(this.depths[a]=!0,this.depths.list.push(a)))},classifyMustache:function(a){var b=a.isHelper,c=a.eligibleHelper,d=this.options;if(c&&!b){var e=a.id.parts[0];d.knownHelpers[e]?b=!0:d.knownHelpersOnly&&(c=!1)}return b?"helper":c?"ambiguous":"simple"},pushParams:function(a){for(var b,c=a.length;c--;)b=a[c],this.options.stringParams?(b.depth&&this.addDepth(b.depth),this.opcode("getContext",b.depth||0),this.opcode("pushStringParam",b.string)):this[b.type](b)},setupMustacheParams:function(a){var b=a.params;return this.pushParams(b),a.hash?this.hash(a.hash):this.opcode("pushLiteral","{}"),b},setupFullMustacheParams:function(a,b,c){var d=a.params;return this.pushParams(d),this.opcode("pushProgram",b),this.opcode("pushProgram",c),a.hash?this.hash(a.hash):this.opcode("pushLiteral","{}"),d}};var c=function(a){this.value=a};b.prototype={nameLookup:function(a,c,d){return/^[0-9]+$/.test(c)?a+"["+c+"]":b.isValidJavaScriptVariableName(c)?a+"."+c:a+"['"+c+"']"},appendToBuffer:function(a){return this.environment.isSimple?"return "+a+";":"buffer += "+a+";"},initializeBuffer:function(){return this.quotedString("")},namespace:"Handlebars",compile:function(a,b,c,d){this.environment=a,this.options=b||{},Handlebars.log(Handlebars.logger.DEBUG,this.environment.disassemble()+"\n\n"),this.name=this.environment.name,this.isChild=!!c,this.context=c||{programs:[],aliases:{}},this.preamble(),this.stackSlot=0,this.stackVars=[],this.registers={list:[]},this.compileStack=[],this.compileChildren(a,b);var e,f=a.opcodes;for(this.i=0,g=f.length;this.ie;e++)d.push("depth"+this.environment.depths.list[e]);if(a)return d.push(this.source.join("\n ")),Function.apply(this,d);var g="function "+(this.name||"")+"("+d.join(",")+") {\n "+this.source.join("\n ")+"}";return Handlebars.log(Handlebars.logger.DEBUG,g+"\n\n"),g},blockValue:function(){this.context.aliases.blockHelperMissing="helpers.blockHelperMissing";var a=["depth0"];this.setupParams(0,a),this.replaceStack(function(b){return a.splice(1,0,b),b+" = blockHelperMissing.call("+a.join(", ")+")"})},ambiguousBlockValue:function(){this.context.aliases.blockHelperMissing="helpers.blockHelperMissing";var a=["depth0"];this.setupParams(0,a);var b=this.topStack();a.splice(1,0,b),this.source.push("if (!"+this.lastHelper+") { "+b+" = blockHelperMissing.call("+a.join(", ")+"); }")},appendContent:function(a){this.source.push(this.appendToBuffer(this.quotedString(a)))},append:function(){var a=this.popStack();this.source.push("if("+a+" || "+a+" === 0) { "+this.appendToBuffer(a)+" }"),this.environment.isSimple&&this.source.push("else { "+this.appendToBuffer("''")+" }")},appendEscaped:function(){var a=this.nextOpcode(),b="";this.context.aliases.escapeExpression="this.escapeExpression",a&&"appendContent"===a.opcode&&(b=" + "+this.quotedString(a.args[0]),this.eat(a)),this.source.push(this.appendToBuffer("escapeExpression("+this.popStack()+")"+b))},getContext:function(a){this.lastContext!==a&&(this.lastContext=a)},lookupOnContext:function(a){this.pushStack(this.nameLookup("depth"+this.lastContext,a,"context"))},pushContext:function(){this.pushStackLiteral("depth"+this.lastContext)},resolvePossibleLambda:function(){this.context.aliases.functionType='"function"',this.replaceStack(function(a){return"typeof "+a+" === functionType ? "+a+"() : "+a})},lookup:function(a){this.replaceStack(function(b){return b+" == null || "+b+" === false ? "+b+" : "+this.nameLookup(b,a,"context")})},lookupData:function(a){this.pushStack(this.nameLookup("data",a,"data"))},pushStringParam:function(a){this.pushStackLiteral("depth"+this.lastContext),this.pushString(a)},pushString:function(a){this.pushStackLiteral(this.quotedString(a))},push:function(a){this.pushStack(a)},pushLiteral:function(a){this.pushStackLiteral(a)},pushProgram:function(a){null!=a?this.pushStackLiteral(this.programExpression(a)):this.pushStackLiteral(null)},invokeHelper:function(a,b){this.context.aliases.helperMissing="helpers.helperMissing";var c=this.lastHelper=this.setupHelper(a,b);this.register("foundHelper",c.name),this.pushStack("foundHelper ? foundHelper.call("+c.callParams+") : helperMissing.call("+c.helperMissingParams+")")},invokeKnownHelper:function(a,b){var c=this.setupHelper(a,b);this.pushStack(c.name+".call("+c.callParams+")")},invokeAmbiguous:function(a){this.context.aliases.functionType='"function"',this.pushStackLiteral("{}");var b=this.setupHelper(0,a),c=this.lastHelper=this.nameLookup("helpers",a,"helper");this.register("foundHelper",c);var d=this.nameLookup("depth"+this.lastContext,a,"context"),e=this.nextStack();this.source.push("if (foundHelper) { "+e+" = foundHelper.call("+b.callParams+"); }"),this.source.push("else { "+e+" = "+d+"; "+e+" = typeof "+e+" === functionType ? "+e+"() : "+e+"; }")},invokePartial:function(a){var b=[this.nameLookup("partials",a,"partial"),"'"+a+"'",this.popStack(),"helpers","partials"];this.options.data&&b.push("data"),this.context.aliases.self="this",this.pushStack("self.invokePartial("+b.join(", ")+");")},assignToHash:function(a){var b=this.popStack(),c=this.topStack();this.source.push(c+"['"+a+"'] = "+b+";")},compiler:b,compileChildren:function(a,b){for(var c,d,e=a.children,f=0,g=e.length;g>f;f++){c=e[f],d=new this.compiler,this.context.programs.push("");var h=this.context.programs.length;c.index=h,c.name="program"+h,this.context.programs[h]=d.compile(c,b,this.context)}},programExpression:function(a){if(this.context.aliases.self="this",null==a)return"self.noop";for(var b,c=this.environment.children[a],d=c.depths.list,e=[c.index,c.name,"data"],f=0,g=d.length;g>f;f++)b=d[f],1===b?e.push("depth0"):e.push("depth"+(b-1));return 0===d.length?"self.program("+e.join(", ")+")":(e.shift(),"self.programWithDepth("+e.join(", ")+")")},register:function(a,b){this.useRegister(a),this.source.push(a+" = "+b+";")},useRegister:function(a){this.registers[a]||(this.registers[a]=!0,this.registers.list.push(a))},pushStackLiteral:function(a){return this.compileStack.push(new c(a)),a},pushStack:function(a){return this.source.push(this.incrStack()+" = "+a+";"),this.compileStack.push("stack"+this.stackSlot),"stack"+this.stackSlot},replaceStack:function(a){var b=a.call(this,this.topStack());return this.source.push(this.topStack()+" = "+b+";"),"stack"+this.stackSlot},nextStack:function(a){var b=this.incrStack();return this.compileStack.push("stack"+this.stackSlot),b},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),"stack"+this.stackSlot},popStack:function(){var a=this.compileStack.pop();return a instanceof c?a.value:(this.stackSlot--,a)},topStack:function(){var a=this.compileStack[this.compileStack.length-1];return a instanceof c?a.value:a},quotedString:function(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r")+'"'},setupHelper:function(a,b){var c=[];this.setupParams(a,c);var d=this.nameLookup("helpers",b,"helper");return{params:c,name:d,callParams:["depth0"].concat(c).join(", "),helperMissingParams:["depth0",this.quotedString(b)].concat(c).join(", ")}},setupParams:function(a,b){var c,d,e,f=[],g=[];f.push("hash:"+this.popStack()),d=this.popStack(),e=this.popStack(),(e||d)&&(e||(this.context.aliases.self="this",e="self.noop"),d||(this.context.aliases.self="this",d="self.noop"),f.push("inverse:"+d),f.push("fn:"+e));for(var h=0;a>h;h++)c=this.popStack(),b.push(c),this.options.stringParams&&g.push(this.popStack());return this.options.stringParams&&f.push("contexts:["+g.join(",")+"]"),this.options.data&&f.push("data:data"),b.push("{"+f.join(",")+"}"),b.join(", ")}};for(var d="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "),e=b.RESERVED_WORDS={},f=0,g=d.length;g>f;f++)e[d[f]]=!0;b.isValidJavaScriptVariableName=function(a){return!b.RESERVED_WORDS[a]&&/^[a-zA-Z_$][0-9a-zA-Z_$]+$/.test(a)?!0:!1}}(Handlebars.Compiler,Handlebars.JavaScriptCompiler),Handlebars.precompile=function(a,b){b=b||{};var c=Handlebars.parse(a),d=(new Handlebars.Compiler).compile(c,b);return(new Handlebars.JavaScriptCompiler).compile(d,b)},Handlebars.compile=function(a,b){function c(){var c=Handlebars.parse(a),d=(new Handlebars.Compiler).compile(c,b),e=(new Handlebars.JavaScriptCompiler).compile(d,b,void 0,!0);return Handlebars.template(e)}b=b||{};var d;return function(a,b){return d||(d=c()),d.call(this,a,b)}},Handlebars.VM={template:function(a){var b={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(a,b,c){var d=this.programs[a];return c?Handlebars.VM.program(b,c):d?d:d=this.programs[a]=Handlebars.VM.program(b)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(c,d){return d=d||{},a.call(b,Handlebars,c,d.helpers,d.partials,d.data)}},programWithDepth:function(a,b,c){var d=Array.prototype.slice.call(arguments,2);return function(c,e){return e=e||{},a.apply(this,[c,e.data||b].concat(d))}},program:function(a,b){return function(c,d){return d=d||{},a(c,d.data||b)}},noop:function(){return""},invokePartial:function(a,b,c,d,e,f){var g={helpers:d,partials:e,data:f};if(void 0===a)throw new Handlebars.Exception("The partial "+b+" could not be found");if(a instanceof Function)return a(c,g);if(Handlebars.compile)return e[b]=Handlebars.compile(a,{data:void 0!==f}),e[b](c,g);throw new Handlebars.Exception("The partial "+b+" could not be compiled when running in runtime-only mode")}},Handlebars.template=Handlebars.VM.template,!function(a,b){"object"==typeof exports&&"object"==typeof module?module.exports=b():"function"==typeof define&&define.amd?define(b):"object"==typeof exports?exports.JSONEditor=b():a.JSONEditor=b()}(this,function(){return function(a){function b(d){if(c[d])return c[d].exports;var e=c[d]={exports:{},id:d,loaded:!1};return a[d].call(e.exports,e,e.exports,b),e.loaded=!0,e.exports}var c={};return b.m=a,b.c=c,b.p="",b(0)}([function(a,b,c){function d(a,b,c){if(!(this instanceof d))throw new Error('JSONEditor constructor called without "new".');var e=g.getInternetExplorerVersion();if(-1!=e&&9>e)throw new Error("Unsupported browser, IE9 or newer required. Please install the newest version of your browser.");arguments.length&&this._create(a,b,c)}var e=c(1),f=c(2),g=c(3);d.modes={},d.prototype._create=function(a,b,c){this.container=a,this.options=b||{},this.json=c||{};var d=this.options.mode||"tree";this.setMode(d)},d.prototype._delete=function(){},d.prototype.set=function(a){this.json=a},d.prototype.get=function(){return this.json},d.prototype.setText=function(a){this.json=g.parse(a)},d.prototype.getText=function(){return JSON.stringify(this.json)},d.prototype.setName=function(a){this.options||(this.options={}),this.options.name=a},d.prototype.getName=function(){return this.options&&this.options.name},d.prototype.setMode=function(a){var b,c,e=this.container,f=g.extend({},this.options);f.mode=a;var h=d.modes[a];if(!h)throw new Error('Unknown mode "'+f.mode+'"');try{var i="text"==h.data;if(c=this.getName(),b=this[i?"getText":"get"](),this._delete(),g.clear(this),g.extend(this,h.mixin),this.create(e,f),this.setName(c),this[i?"setText":"set"](b),"function"==typeof h.load)try{h.load.call(this)}catch(j){}}catch(j){this._onError(j)}},d.prototype._onError=function(a){if("function"==typeof this.onError&&(g.log("WARNING: JSONEditor.onError is deprecated. Use options.error instead."),this.onError(a)),!this.options||"function"!=typeof this.options.error)throw a;this.options.error(a)},d.registerMode=function(a){var b,c;if(g.isArray(a))for(b=0;ba&&c.scrollTop>0?this.autoScrollStep=(d+g-a)/3:a>f-g&&e+c.scrollTop3?(c.scrollTop+=e/3,d.animateCallback=b,d.animateTimeout=setTimeout(h,50)):(b&&b(!0),c.scrollTop=g,delete d.animateTimeout,delete d.animateCallback)};h()}else b&&b(!1)},j._createFrame=function(){function a(a){b._onEvent(a)}this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.container.appendChild(this.frame);var b=this;this.frame.onclick=function(b){var c=b.target;a(b),"BUTTON"==c.nodeName&&b.preventDefault()},this.frame.oninput=a,this.frame.onchange=a,this.frame.onkeydown=a,this.frame.onkeyup=a,this.frame.oncut=a,this.frame.onpaste=a,this.frame.onmousedown=a,this.frame.onmouseup=a,this.frame.onmouseover=a,this.frame.onmouseout=a,i.addEventListener(this.frame,"focus",a,!0),i.addEventListener(this.frame,"blur",a,!0),this.frame.onfocusin=a,this.frame.onfocusout=a,this.menu=document.createElement("div"), +this.menu.className="menu",this.frame.appendChild(this.menu);var c=document.createElement("button");c.className="expand-all",c.title="Expand all fields",c.onclick=function(){b.expandAll()},this.menu.appendChild(c);var d=document.createElement("button");if(d.title="Collapse all fields",d.className="collapse-all",d.onclick=function(){b.collapseAll()},this.menu.appendChild(d),this.history){var e=document.createElement("button");e.className="undo separator",e.title="Undo last action (Ctrl+Z)",e.onclick=function(){b._onUndo()},this.menu.appendChild(e),this.dom.undo=e;var g=document.createElement("button");g.className="redo",g.title="Redo (Ctrl+Shift+Z)",g.onclick=function(){b._onRedo()},this.menu.appendChild(g),this.dom.redo=g,this.history.onChange=function(){e.disabled=!b.history.canUndo(),g.disabled=!b.history.canRedo()},this.history.onChange()}if(this.options&&this.options.modes&&this.options.modes.length){var j=h.create(this,this.options.modes,this.options.mode);this.menu.appendChild(j),this.dom.modeBox=j}this.options.search&&(this.searchBox=new f(this,this.menu))},j._onUndo=function(){this.history&&(this.history.undo(),this.options.change&&this.options.change())},j._onRedo=function(){this.history&&(this.history.redo(),this.options.change&&this.options.change())},j._onEvent=function(a){var b=a.target;"keydown"==a.type&&this._onKeyDown(a),"focus"==a.type&&(l=b);var c=g.getNodeFromTarget(b);c&&c.onEvent(a)},j._onKeyDown=function(a){var b=a.which||a.keyCode,c=a.ctrlKey,d=a.shiftKey,e=!1;if(9==b&&setTimeout(function(){i.selectContentEditable(l)},0),this.searchBox)if(c&&70==b)this.searchBox.dom.search.focus(),this.searchBox.dom.search.select(),e=!0;else if(114==b||c&&71==b){var f=!0;d?this.searchBox.previous(f):this.searchBox.next(f),e=!0}this.history&&(c&&!d&&90==b?(this._onUndo(),e=!0):c&&d&&90==b&&(this._onRedo(),e=!0)),e&&(a.preventDefault(),a.stopPropagation())},j._createTable=function(){var a=document.createElement("div");a.className="outer",this.contentOuter=a,this.content=document.createElement("div"),this.content.className="tree",a.appendChild(this.content),this.table=document.createElement("table"),this.table.className="tree",this.content.appendChild(this.table);var b;this.colgroupContent=document.createElement("colgroup"),"tree"===this.options.mode&&(b=document.createElement("col"),b.width="24px",this.colgroupContent.appendChild(b)),b=document.createElement("col"),b.width="24px",this.colgroupContent.appendChild(b),b=document.createElement("col"),this.colgroupContent.appendChild(b),this.table.appendChild(this.colgroupContent),this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.frame.appendChild(a)},a.exports=[{mode:"tree",mixin:j,data:"json"},{mode:"view",mixin:j,data:"json"},{mode:"form",mixin:j,data:"json"}]},function(a,b,c){var d;try{d=c(9)}catch(e){}var f=c(8),g=c(3),h={};h.create=function(a,b){b=b||{},this.options=b,b.indentation?this.indentation=Number(b.indentation):this.indentation=2;var c=b.ace?b.ace:d;this.mode="code"==b.mode?"code":"text","code"==this.mode&&"undefined"==typeof c&&(this.mode="text",g.log("WARNING: Cannot load code editor, Ace library not loaded. Falling back to plain text editor")),this.theme=b.theme||"ace/theme/jsoneditor";var e=this;this.container=a,this.dom={},this.editor=void 0,this.textarea=void 0,this.width=a.clientWidth,this.height=a.clientHeight,this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.frame.onclick=function(a){a.preventDefault()},this.frame.onkeydown=function(a){e._onKeyDown(a)},this.menu=document.createElement("div"),this.menu.className="menu",this.frame.appendChild(this.menu);var h=document.createElement("button");h.className="format",h.title="Format JSON data, with proper indentation and line feeds (Ctrl+\\)",this.menu.appendChild(h),h.onclick=function(){try{e.format()}catch(a){e._onError(a)}};var i=document.createElement("button");if(i.className="compact",i.title="Compact JSON data, remove all whitespaces (Ctrl+Shift+\\)",this.menu.appendChild(i),i.onclick=function(){try{e.compact()}catch(a){e._onError(a)}},this.options&&this.options.modes&&this.options.modes.length){var j=f.create(this,this.options.modes,this.options.mode);this.menu.appendChild(j),this.dom.modeBox=j}if(this.content=document.createElement("div"),this.content.className="outer",this.frame.appendChild(this.content),this.container.appendChild(this.frame),"code"==this.mode){this.editorDom=document.createElement("div"),this.editorDom.style.height="100%",this.editorDom.style.width="100%",this.content.appendChild(this.editorDom);var k=c.edit(this.editorDom);k.setTheme(this.theme),k.setShowPrintMargin(!1),k.setFontSize(13),k.getSession().setMode("ace/mode/json"),k.getSession().setTabSize(this.indentation),k.getSession().setUseSoftTabs(!0),k.getSession().setUseWrapMode(!0),this.editor=k;var l=document.createElement("a");l.appendChild(document.createTextNode("powered by ace")),l.href="http://ace.ajax.org",l.target="_blank",l.className="poweredBy",l.onclick=function(){window.open(l.href,l.target)},this.menu.appendChild(l),b.change&&k.on("change",function(){b.change()})}else{var m=document.createElement("textarea");m.className="text",m.spellcheck=!1,this.content.appendChild(m),this.textarea=m,b.change&&(null===this.textarea.oninput?this.textarea.oninput=function(){b.change()}:this.textarea.onchange=function(){b.change()})}},h._onKeyDown=function(a){var b=a.which||a.keyCode,c=!1;220==b&&a.ctrlKey&&(a.shiftKey?this.compact():this.format(),c=!0),c&&(a.preventDefault(),a.stopPropagation())},h._delete=function(){this.frame&&this.container&&this.frame.parentNode==this.container&&this.container.removeChild(this.frame)},h._onError=function(a){if("function"==typeof this.onError&&(g.log("WARNING: JSONEditor.onError is deprecated. Use options.error instead."),this.onError(a)),!this.options||"function"!=typeof this.options.error)throw a;this.options.error(a)},h.compact=function(){var a=this.get(),b=JSON.stringify(a);this.setText(b)},h.format=function(){var a=this.get(),b=JSON.stringify(a,null,this.indentation);this.setText(b)},h.focus=function(){this.textarea&&this.textarea.focus(),this.editor&&this.editor.focus()},h.resize=function(){if(this.editor){var a=!1;this.editor.resize(a)}},h.set=function(a){this.setText(JSON.stringify(a,null,this.indentation))},h.get=function(){var a,b=this.getText();try{a=g.parse(b)}catch(c){b=g.sanitize(b),a=g.parse(b)}return a},h.getText=function(){return this.textarea?this.textarea.value:this.editor?this.editor.getValue():""},h.setText=function(a){this.textarea&&(this.textarea.value=a),this.editor&&this.editor.setValue(a,-1)},a.exports=[{mode:"text",mixin:h,data:"text",load:h.format},{mode:"code",mixin:h,data:"text",load:h.format}]},function(a,b,c){var d=c(12);b.parse=function(a){try{return JSON.parse(a)}catch(c){throw b.validate(a),c}},b.sanitize=function(a){function b(){return a.charAt(j)}function c(){return a.charAt(j+1)}function d(){return a.charAt(j-1)}function e(){for(var b=j-1;b>=0;){var c=a.charAt(b);if("{"===c)return!0;if(" "!==c&&"\n"!==c&&"\r"!==c)return!1;b--}return!1}function f(){for(j+=2;jd;d++){var f=c[d];f.style&&f.removeAttribute("style");var g=f.attributes;if(g)for(var h=g.length-1;h>=0;h--){var i=g[h];i.specified===!0&&f.removeAttribute(i.name)}b.stripFormatting(f)}},b.setEndOfContentEditable=function(a){var b,c;document.createRange&&(b=document.createRange(),b.selectNodeContents(a),b.collapse(!1),c=window.getSelection(),c.removeAllRanges(),c.addRange(b))},b.selectContentEditable=function(a){if(a&&"DIV"==a.nodeName){var b,c;window.getSelection&&document.createRange&&(c=document.createRange(),c.selectNodeContents(a),b=window.getSelection(),b.removeAllRanges(),b.addRange(c))}},b.getSelection=function(){if(window.getSelection){var a=window.getSelection();if(a.getRangeAt&&a.rangeCount)return a.getRangeAt(0)}return null},b.setSelection=function(a){if(a&&window.getSelection){var b=window.getSelection();b.removeAllRanges(),b.addRange(a)}},b.getSelectionOffset=function(){var a=b.getSelection();return a&&"startOffset"in a&&"endOffset"in a&&a.startContainer&&a.startContainer==a.endContainer?{startOffset:a.startOffset,endOffset:a.endOffset,container:a.startContainer.parentNode}:null},b.setSelectionOffset=function(a){if(document.createRange&&window.getSelection){var c=window.getSelection();if(c){var d=document.createRange();d.setStart(a.container.firstChild,a.startOffset),d.setEnd(a.container.firstChild,a.endOffset),b.setSelection(d)}}},b.getInnerText=function(a,c){var d=void 0==c;if(d&&(c={text:"",flush:function(){var a=this.text;return this.text="",a},set:function(a){this.text=a}}),a.nodeValue)return c.flush()+a.nodeValue;if(a.hasChildNodes()){for(var e=a.childNodes,f="",g=0,h=e.length;h>g;g++){var i=e[g];if("DIV"==i.nodeName||"P"==i.nodeName){var j=e[g-1],k=j?j.nodeName:void 0;k&&"DIV"!=k&&"P"!=k&&"BR"!=k&&(f+="\n",c.flush()),f+=b.getInnerText(i,c),c.set("\n")}else"BR"==i.nodeName?(f+=c.flush(),c.set("\n")):f+=b.getInnerText(i,c)}return f}return"P"==a.nodeName&&-1!=b.getInternetExplorerVersion()?c.flush():""},b.getInternetExplorerVersion=function(){if(-1==f){var a=-1;if("Microsoft Internet Explorer"==navigator.appName){var b=navigator.userAgent,c=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");null!=c.exec(b)&&(a=parseFloat(RegExp.$1))}f=a}return f},b.isFirefox=function(){return-1!=navigator.userAgent.indexOf("Firefox")};var f=-1;b.addEventListener=function(a,c,d,e){if(a.addEventListener)return void 0===e&&(e=!1),"mousewheel"===c&&b.isFirefox()&&(c="DOMMouseScroll"),a.addEventListener(c,d,e),d;if(a.attachEvent){var f=function(){return d.call(a,window.event)};return a.attachEvent("on"+c,f),f}},b.removeEventListener=function(a,c,d,e){a.removeEventListener?(void 0===e&&(e=!1),"mousewheel"===c&&b.isFirefox()&&(c="DOMMouseScroll"),a.removeEventListener(c,d,e)):a.detachEvent&&a.detachEvent("on"+c,d)}},function(a,b,c){function d(){this.locked=!1}d.prototype.highlight=function(a){this.locked||(this.node!=a&&(this.node&&this.node.setHighlight(!1),this.node=a,this.node.setHighlight(!0)),this._cancelUnhighlight())},d.prototype.unhighlight=function(){if(!this.locked){var a=this;this.node&&(this._cancelUnhighlight(),this.unhighlightTimer=setTimeout(function(){a.node.setHighlight(!1),a.node=void 0,a.unhighlightTimer=void 0},0))}},d.prototype._cancelUnhighlight=function(){this.unhighlightTimer&&(clearTimeout(this.unhighlightTimer),this.unhighlightTimer=void 0)},d.prototype.lock=function(){this.locked=!0},d.prototype.unlock=function(){this.locked=!1},a.exports=d},function(a,b,c){function d(a){this.editor=a,this.clear(),this.actions={editField:{undo:function(a){a.node.updateField(a.oldValue)},redo:function(a){a.node.updateField(a.newValue)}},editValue:{undo:function(a){a.node.updateValue(a.oldValue)},redo:function(a){a.node.updateValue(a.newValue)}},appendNode:{undo:function(a){a.parent.removeChild(a.node)},redo:function(a){a.parent.appendChild(a.node)}},insertBeforeNode:{undo:function(a){a.parent.removeChild(a.node)},redo:function(a){a.parent.insertBefore(a.node,a.beforeNode)}},insertAfterNode:{undo:function(a){a.parent.removeChild(a.node)},redo:function(a){a.parent.insertAfter(a.node,a.afterNode)}},removeNode:{undo:function(a){var b=a.parent,c=b.childs[a.index]||b.append;b.insertBefore(a.node,c)},redo:function(a){a.parent.removeChild(a.node)}},duplicateNode:{undo:function(a){a.parent.removeChild(a.clone)},redo:function(a){a.parent.insertAfter(a.clone,a.node)}},changeType:{undo:function(a){a.node.changeType(a.oldType)},redo:function(a){a.node.changeType(a.newType)}},moveNode:{undo:function(a){a.startParent.moveTo(a.node,a.startIndex)},redo:function(a){a.endParent.moveTo(a.node,a.endIndex)}},sort:{undo:function(a){var b=a.node;b.hideChilds(),b.sort=a.oldSort,b.childs=a.oldChilds,b.showChilds()},redo:function(a){var b=a.node;b.hideChilds(),b.sort=a.newSort,b.childs=a.newChilds,b.showChilds()}}}}var e=c(3);d.prototype.onChange=function(){},d.prototype.add=function(a,b){this.index++,this.history[this.index]={action:a,params:b,timestamp:new Date},this.index=0},d.prototype.canRedo=function(){return this.indexthis.results.length-1&&(b=0),this._setActiveResult(b,a)}},d.prototype.previous=function(a){if(void 0!=this.results){var b=this.results.length-1,c=void 0!=this.resultIndex?this.resultIndex-1:b;0>c&&(c=b),this._setActiveResult(c,a)}},d.prototype._setActiveResult=function(a,b){if(this.activeResult){var c=this.activeResult.node,d=this.activeResult.elem;"field"==d?delete c.searchFieldActive:delete c.searchValueActive,c.updateDom()}if(!this.results||!this.results[a])return this.resultIndex=void 0,void(this.activeResult=void 0);this.resultIndex=a;var e=this.results[this.resultIndex].node,f=this.results[this.resultIndex].elem;"field"==f?e.searchFieldActive=!0:e.searchValueActive=!0,this.activeResult=this.results[this.resultIndex],e.updateDom(),e.scrollTo(function(){b&&e.focus(f)})},d.prototype._clearDelay=function(){void 0!=this.timeout&&(clearTimeout(this.timeout),delete this.timeout)},d.prototype._onDelayedSearch=function(a){this._clearDelay();var b=this;this.timeout=setTimeout(function(a){b._onSearch(a)},this.delay)},d.prototype._onSearch=function(a,b){this._clearDelay();var c=this.dom.search.value,d=c.length>0?c:void 0;if(d!=this.lastText||b)if(this.lastText=d,this.results=this.editor.search(d),this._setActiveResult(void 0),void 0!=d){var e=this.results.length;switch(e){case 0:this.dom.results.innerHTML="no results";break;case 1:this.dom.results.innerHTML="1 result";break;default:this.dom.results.innerHTML=e+" results"}}else this.dom.results.innerHTML=""},d.prototype._onKeyDown=function(a){var b=a.which;27==b?(this.dom.search.value="",this._onSearch(a),a.preventDefault(),a.stopPropagation()):13==b&&(a.ctrlKey?this._onSearch(a,!0):a.shiftKey?this.previous():this.next(),a.preventDefault(),a.stopPropagation())},d.prototype._onKeyUp=function(a){var b=a.keyCode;27!=b&&13!=b&&this._onDelayedSearch(a)},a.exports=d},function(a,b,c){function d(a,b){this.editor=a,this.dom={},this.expanded=!1,b&&b instanceof Object?(this.setField(b.field,b.fieldEditable),this.setValue(b.value,b.type)):(this.setField(""),this.setValue(null))}var e=c(10),f=c(11),g=c(3);d.prototype._updateEditability=function(){if(this.editable={field:!0,value:!0},this.editor&&(this.editable.field="tree"===this.editor.options.mode,this.editable.value="view"!==this.editor.options.mode,"tree"===this.editor.options.mode&&"function"==typeof this.editor.options.editable)){var a=this.editor.options.editable({field:this.field,value:this.value,path:this.path()});"boolean"==typeof a?(this.editable.field=a,this.editable.value=a):("boolean"==typeof a.field&&(this.editable.field=a.field),"boolean"==typeof a.value&&(this.editable.value=a.value))}},d.prototype.path=function(){for(var a=this,b=[];a;){var c=void 0!=a.field?a.field:a.index;void 0!==c&&b.unshift(c),a=a.parent}return b},d.prototype.setParent=function(a){this.parent=a},d.prototype.setField=function(a,b){this.field=a,this.fieldEditable=b===!0},d.prototype.getField=function(){return void 0===this.field&&this._getDomField(),this.field},d.prototype.setValue=function(a,b){var c,e,f=this.childs;if(f)for(;f.length;)this.removeChild(f[0]);if(this.type=this._getType(a),b&&b!=this.type){if("string"!=b||"auto"!=this.type)throw new Error('Type mismatch: cannot cast value of type "'+this.type+' to the specified type "'+b+'"');this.type=b}if("array"==this.type){this.childs=[];for(var g=0,h=a.length;h>g;g++)c=a[g],void 0===c||c instanceof Function||(e=new d(this.editor,{value:c}),this.appendChild(e));this.value=""}else if("object"==this.type){this.childs=[];for(var i in a)a.hasOwnProperty(i)&&(c=a[i],void 0===c||c instanceof Function||(e=new d(this.editor,{field:i,value:c}),this.appendChild(e)));this.value=""}else this.childs=void 0,this.value=a},d.prototype.getValue=function(){if("array"==this.type){var a=[];return this.childs.forEach(function(b){a.push(b.getValue())}),a}if("object"==this.type){var b={};return this.childs.forEach(function(a){b[a.getField()]=a.getValue()}),b}return void 0===this.value&&this._getDomValue(),this.value},d.prototype.getLevel=function(){return this.parent?this.parent.getLevel()+1:0},d.prototype.clone=function(){var a=new d(this.editor);if(a.type=this.type,a.field=this.field,a.fieldInnerText=this.fieldInnerText,a.fieldEditable=this.fieldEditable,a.value=this.value,a.valueInnerText=this.valueInnerText,a.expanded=this.expanded,this.childs){var b=[];this.childs.forEach(function(c){var d=c.clone();d.setParent(a),b.push(d)}),a.childs=b}else a.childs=void 0;return a},d.prototype.expand=function(a){this.childs&&(this.expanded=!0,this.dom.expand&&(this.dom.expand.className="expanded"),this.showChilds(),a!==!1&&this.childs.forEach(function(b){b.expand(a)}))},d.prototype.collapse=function(a){this.childs&&(this.hideChilds(),a!==!1&&this.childs.forEach(function(b){b.collapse(a)}),this.dom.expand&&(this.dom.expand.className="collapsed"),this.expanded=!1)},d.prototype.showChilds=function(){var a=this.childs;if(a&&this.expanded){var b=this.dom.tr,c=b?b.parentNode:void 0;if(c){var d=this.getAppend(),e=b.nextSibling;e?c.insertBefore(d,e):c.appendChild(d),this.childs.forEach(function(a){c.insertBefore(a.getDom(),d),a.showChilds()})}}},d.prototype.hide=function(){var a=this.dom.tr,b=a?a.parentNode:void 0;b&&b.removeChild(a),this.hideChilds()},d.prototype.hideChilds=function(){var a=this.childs;if(a&&this.expanded){var b=this.getAppend();b.parentNode&&b.parentNode.removeChild(b),this.childs.forEach(function(a){a.hide()})}},d.prototype.appendChild=function(a){if(this._hasChilds()){if(a.setParent(this),a.fieldEditable="object"==this.type,"array"==this.type&&(a.index=this.childs.length),this.childs.push(a),this.expanded){var b=a.getDom(),c=this.getAppend(),d=c?c.parentNode:void 0;c&&d&&d.insertBefore(b,c),a.showChilds()}this.updateDom({updateIndexes:!0}),a.updateDom({recurse:!0})}},d.prototype.moveBefore=function(a,b){if(this._hasChilds()){var c=this.dom.tr?this.dom.tr.parentNode:void 0;if(c){var d=document.createElement("tr");d.style.height=c.clientHeight+"px",c.appendChild(d)}a.parent&&a.parent.removeChild(a),b instanceof h?this.appendChild(a):this.insertBefore(a,b),c&&c.removeChild(d)}},d.prototype.moveTo=function(a,b){if(a.parent==this){var c=this.childs.indexOf(a);b>c&&b++}var d=this.childs[b]||this.append;this.moveBefore(a,d)},d.prototype.insertBefore=function(a,b){if(this._hasChilds()){if(b==this.append)a.setParent(this),a.fieldEditable="object"==this.type,this.childs.push(a);else{var c=this.childs.indexOf(b);if(-1==c)throw new Error("Node not found");a.setParent(this),a.fieldEditable="object"==this.type,this.childs.splice(c,0,a)}if(this.expanded){var d=a.getDom(),e=b.getDom(),f=e?e.parentNode:void 0;e&&f&&f.insertBefore(d,e),a.showChilds()}this.updateDom({updateIndexes:!0}),a.updateDom({recurse:!0})}},d.prototype.insertAfter=function(a,b){if(this._hasChilds()){var c=this.childs.indexOf(b),d=this.childs[c+1];d?this.insertBefore(a,d):this.appendChild(a)}},d.prototype.search=function(a){var b,c=[],d=a?a.toLowerCase():void 0;if(delete this.searchField,delete this.searchValue,void 0!=this.field){var e=String(this.field).toLowerCase();b=e.indexOf(d),-1!=b&&(this.searchField=!0,c.push({node:this,elem:"field"})),this._updateDomField()}if(this._hasChilds()){if(this.childs){var f=[];this.childs.forEach(function(b){f=f.concat(b.search(a))}),c=c.concat(f)}if(void 0!=d){var g=!1;0==f.length?this.collapse(g):this.expand(g)}}else{if(void 0!=this.value){var h=String(this.value).toLowerCase();b=h.indexOf(d),-1!=b&&(this.searchValue=!0,c.push({node:this,elem:"value"}))}this._updateDomValue()}return c},d.prototype.scrollTo=function(a){if(!this.dom.tr||!this.dom.tr.parentNode)for(var b=this.parent,c=!1;b;)b.expand(c),b=b.parent;this.dom.tr&&this.dom.tr.parentNode&&this.editor.scrollTo(this.dom.tr.offsetTop,a)},d.focusElement=void 0,d.prototype.focus=function(a){if(d.focusElement=a,this.dom.tr&&this.dom.tr.parentNode){var b=this.dom;switch(a){case"drag":b.drag?b.drag.focus():b.menu.focus();break;case"menu":b.menu.focus();break;case"expand":this._hasChilds()?b.expand.focus():b.field&&this.fieldEditable?(b.field.focus(),g.selectContentEditable(b.field)):b.value&&!this._hasChilds()?(b.value.focus(),g.selectContentEditable(b.value)):b.menu.focus();break;case"field":b.field&&this.fieldEditable?(b.field.focus(),g.selectContentEditable(b.field)):b.value&&!this._hasChilds()?(b.value.focus(),g.selectContentEditable(b.value)):this._hasChilds()?b.expand.focus():b.menu.focus();break;case"value":default:b.value&&!this._hasChilds()?(b.value.focus(),g.selectContentEditable(b.value)):b.field&&this.fieldEditable?(b.field.focus(),g.selectContentEditable(b.field)):this._hasChilds()?b.expand.focus():b.menu.focus()}}},d.select=function(a){setTimeout(function(){g.selectContentEditable(a)},0)},d.prototype.blur=function(){this._getDomValue(!1),this._getDomField(!1)},d.prototype._duplicate=function(a){var b=a.clone();return this.insertAfter(b,a),b},d.prototype.containsNode=function(a){if(this==a)return!0;var b=this.childs;if(b)for(var c=0,d=b.length;d>c;c++)if(b[c].containsNode(a))return!0;return!1},d.prototype._move=function(a,b){if(a!=b){if(a.containsNode(this))throw new Error("Cannot move a field into a child of itself");a.parent&&a.parent.removeChild(a);var c=a.clone();a.clearDom(),b?this.insertBefore(c,b):this.appendChild(c)}},d.prototype.removeChild=function(a){if(this.childs){var b=this.childs.indexOf(a);if(-1!=b){a.hide(),delete a.searchField,delete a.searchValue;var c=this.childs.splice(b,1)[0];return this.updateDom({updateIndexes:!0}),c}}return void 0},d.prototype._remove=function(a){this.removeChild(a)},d.prototype.changeType=function(a){var b=this.type;if(b!=a){if("string"!=a&&"auto"!=a||"string"!=b&&"auto"!=b){var c,d=this.dom.tr?this.dom.tr.parentNode:void 0;c=this.expanded?this.getAppend():this.getDom();var e=c&&c.parentNode?c.nextSibling:void 0;this.hide(),this.clearDom(),this.type=a,"object"==a?(this.childs||(this.childs=[]),this.childs.forEach(function(a,b){a.clearDom(),delete a.index,a.fieldEditable=!0,void 0==a.field&&(a.field="")}),("string"==b||"auto"==b)&&(this.expanded=!0)):"array"==a?(this.childs||(this.childs=[]),this.childs.forEach(function(a,b){a.clearDom(),a.fieldEditable=!1,a.index=b}),("string"==b||"auto"==b)&&(this.expanded=!0)):this.expanded=!1,d&&(e?d.insertBefore(this.getDom(),e):d.appendChild(this.getDom())),this.showChilds()}else this.type=a;("auto"==a||"string"==a)&&("string"==a?this.value=String(this.value):this.value=this._stringCast(String(this.value)),this.focus()),this.updateDom({updateIndexes:!0})}},d.prototype._getDomValue=function(a){if(this.dom.value&&"array"!=this.type&&"object"!=this.type&&(this.valueInnerText=g.getInnerText(this.dom.value)),void 0!=this.valueInnerText)try{var b;if("string"==this.type)b=this._unescapeHTML(this.valueInnerText);else{var c=this._unescapeHTML(this.valueInnerText);b=this._stringCast(c)}if(b!==this.value){var d=this.value;this.value=b,this.editor._onAction("editValue",{node:this,oldValue:d,newValue:b,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(e){if(this.value=void 0,a!==!0)throw e}},d.prototype._updateDomValue=function(){var a=this.dom.value;if(a){var b=this.value,c="auto"==this.type?g.type(b):this.type,d="string"==c&&g.isUrl(b),e="";e=d&&!this.editable.value?"":"string"==c?"green":"number"==c?"red":"boolean"==c?"darkorange":this._hasChilds()?"":null===b?"#004ED0":"black",a.style.color=e;var f=""==String(this.value)&&"array"!=this.type&&"object"!=this.type;if(f?g.addClassName(a,"empty"):g.removeClassName(a,"empty"),d?g.addClassName(a,"url"):g.removeClassName(a,"url"),"array"==c||"object"==c){var h=this.childs?this.childs.length:0;a.title=this.type+" containing "+h+" items"}else"string"==c&&g.isUrl(b)?this.editable.value&&(a.title="Ctrl+Click or Ctrl+Enter to open url in new window"):a.title="";this.searchValueActive?g.addClassName(a,"highlight-active"):g.removeClassName(a,"highlight-active"),this.searchValue?g.addClassName(a,"highlight"):g.removeClassName(a,"highlight"),g.stripFormatting(a)}},d.prototype._updateDomField=function(){var a=this.dom.field;if(a){var b=""==String(this.field)&&"array"!=this.parent.type;b?g.addClassName(a,"empty"):g.removeClassName(a,"empty"),this.searchFieldActive?g.addClassName(a,"highlight-active"):g.removeClassName(a,"highlight-active"),this.searchField?g.addClassName(a,"highlight"):g.removeClassName(a,"highlight"),g.stripFormatting(a)}},d.prototype._getDomField=function(a){if(this.dom.field&&this.fieldEditable&&(this.fieldInnerText=g.getInnerText(this.dom.field)),void 0!=this.fieldInnerText)try{var b=this._unescapeHTML(this.fieldInnerText);if(b!==this.field){var c=this.field;this.field=b,this.editor._onAction("editField",{node:this,oldValue:c,newValue:b,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(d){if(this.field=void 0,a!==!0)throw d}},d.prototype.clearDom=function(){this.dom={}},d.prototype.getDom=function(){var a=this.dom;if(a.tr)return a.tr;if(this._updateEditability(),a.tr=document.createElement("tr"),a.tr.node=this,"tree"===this.editor.options.mode){var b=document.createElement("td");if(this.editable.field&&this.parent){var c=document.createElement("button");a.drag=c,c.className="dragarea",c.title="Drag to move this field (Alt+Shift+Arrows)",b.appendChild(c)}a.tr.appendChild(b);var d=document.createElement("td"),e=document.createElement("button");a.menu=e,e.className="contextmenu",e.title="Click to open the actions menu (Ctrl+M)",d.appendChild(a.menu),a.tr.appendChild(d)}var f=document.createElement("td");return a.tr.appendChild(f),a.tree=this._createDomTree(),f.appendChild(a.tree),this.updateDom({updateIndexes:!0}),a.tr},d.prototype._onDragStart=function(a){var b=this;this.mousemove||(this.mousemove=g.addEventListener(document,"mousemove",function(a){b._onDrag(a)})),this.mouseup||(this.mouseup=g.addEventListener(document,"mouseup",function(a){b._onDragEnd(a)})),this.editor.highlighter.lock(),this.drag={oldCursor:document.body.style.cursor,startParent:this.parent,startIndex:this.parent.childs.indexOf(this),mouseX:a.pageX,level:this.getLevel()},document.body.style.cursor="move",a.preventDefault()},d.prototype._onDrag=function(a){var b,c,e,f,i,j,k,l,m,n,o,p,q,r,s=a.pageY,t=a.pageX,u=!1;if(b=this.dom.tr,m=g.getAbsoluteTop(b),p=b.offsetHeight,m>s){c=b;do c=c.previousSibling,k=d.getNodeFromTarget(c),n=c?g.getAbsoluteTop(c):0;while(c&&n>s);k&&!k.parent&&(k=void 0),k||(j=b.parentNode.firstChild,c=j?j.nextSibling:void 0,k=d.getNodeFromTarget(c),k==this&&(k=void 0)),k&&(c=k.dom.tr,n=c?g.getAbsoluteTop(c):0,s>n+p&&(k=void 0)),k&&(k.parent.moveBefore(this,k),u=!0)}else if(i=this.expanded&&this.append?this.append.getDom():this.dom.tr,f=i?i.nextSibling:void 0){o=g.getAbsoluteTop(f),e=f;do l=d.getNodeFromTarget(e),e&&(q=e.nextSibling?g.getAbsoluteTop(e.nextSibling):0,r=e?q-o:0,1==l.parent.childs.length&&l.parent.childs[0]==this&&(m+=23)),e=e.nextSibling;while(e&&s>m+r);if(l&&l.parent){var v=t-this.drag.mouseX,w=Math.round(v/24/2),x=this.drag.level+w,y=l.getLevel();for(c=l.dom.tr.previousSibling;x>y&&c;){if(k=d.getNodeFromTarget(c),k==this||k._isChildOf(this));else{if(!(k instanceof h))break;var z=k.parent.childs;if(!(z.length>1||1==z.length&&z[0]!=this))break;l=d.getNodeFromTarget(c),y=l.getLevel()}c=c.previousSibling}i.nextSibling!=l.dom.tr&&(l.parent.moveBefore(this,l), +u=!0)}}u&&(this.drag.mouseX=t,this.drag.level=this.getLevel()),this.editor.startAutoScroll(s),a.preventDefault()},d.prototype._onDragEnd=function(a){var b={node:this,startParent:this.drag.startParent,startIndex:this.drag.startIndex,endParent:this.parent,endIndex:this.parent.childs.indexOf(this)};(b.startParent!=b.endParent||b.startIndex!=b.endIndex)&&this.editor._onAction("moveNode",b),document.body.style.cursor=this.drag.oldCursor,this.editor.highlighter.unlock(),delete this.drag,this.mousemove&&(g.removeEventListener(document,"mousemove",this.mousemove),delete this.mousemove),this.mouseup&&(g.removeEventListener(document,"mouseup",this.mouseup),delete this.mouseup),this.editor.stopAutoScroll(),a.preventDefault()},d.prototype._isChildOf=function(a){for(var b=this.parent;b;){if(b==a)return!0;b=b.parent}return!1},d.prototype._createDomField=function(){return document.createElement("div")},d.prototype.setHighlight=function(a){this.dom.tr&&(this.dom.tr.className=a?"highlight":"",this.append&&this.append.setHighlight(a),this.childs&&this.childs.forEach(function(b){b.setHighlight(a)}))},d.prototype.updateValue=function(a){this.value=a,this.updateDom()},d.prototype.updateField=function(a){this.field=a,this.updateDom()},d.prototype.updateDom=function(a){var b=this.dom.tree;b&&(b.style.marginLeft=24*this.getLevel()+"px");var c=this.dom.field;if(c){this.fieldEditable?(c.contentEditable=this.editable.field,c.spellcheck=!1,c.className="field"):c.className="readonly";var d;d=void 0!=this.index?this.index:void 0!=this.field?this.field:this._hasChilds()?this.type:"",c.innerHTML=this._escapeHTML(d)}var e=this.dom.value;if(e){var f=this.childs?this.childs.length:0;"array"==this.type?e.innerHTML="["+f+"]":"object"==this.type?e.innerHTML="{"+f+"}":e.innerHTML=this._escapeHTML(this.value)}this._updateDomField(),this._updateDomValue(),a&&a.updateIndexes===!0&&this._updateDomIndexes(),a&&a.recurse===!0&&this.childs&&this.childs.forEach(function(b){b.updateDom(a)}),this.append&&this.append.updateDom()},d.prototype._updateDomIndexes=function(){var a=this.dom.value,b=this.childs;a&&b&&("array"==this.type?b.forEach(function(a,b){a.index=b;var c=a.dom.field;c&&(c.innerHTML=b)}):"object"==this.type&&b.forEach(function(a){void 0!=a.index&&(delete a.index,void 0==a.field&&(a.field=""))}))},d.prototype._createDomValue=function(){var a;return"array"==this.type?(a=document.createElement("div"),a.className="readonly",a.innerHTML="[...]"):"object"==this.type?(a=document.createElement("div"),a.className="readonly",a.innerHTML="{...}"):!this.editable.value&&g.isUrl(this.value)?(a=document.createElement("a"),a.className="value",a.href=this.value,a.target="_blank",a.innerHTML=this._escapeHTML(this.value)):(a=document.createElement("div"),a.contentEditable=this.editable.value,a.spellcheck=!1,a.className="value",a.innerHTML=this._escapeHTML(this.value)),a},d.prototype._createDomExpandButton=function(){var a=document.createElement("button");return this._hasChilds()?(a.className=this.expanded?"expanded":"collapsed",a.title="Click to expand/collapse this field (Ctrl+E). \nCtrl+Click to expand/collapse including all childs."):(a.className="invisible",a.title=""),a},d.prototype._createDomTree=function(){var a=this.dom,b=document.createElement("table"),c=document.createElement("tbody");b.style.borderCollapse="collapse",b.className="values",b.appendChild(c);var d=document.createElement("tr");c.appendChild(d);var e=document.createElement("td");e.className="tree",d.appendChild(e),a.expand=this._createDomExpandButton(),e.appendChild(a.expand),a.tdExpand=e;var f=document.createElement("td");f.className="tree",d.appendChild(f),a.field=this._createDomField(),f.appendChild(a.field),a.tdField=f;var g=document.createElement("td");g.className="tree",d.appendChild(g),"object"!=this.type&&"array"!=this.type&&(g.appendChild(document.createTextNode(":")),g.className="separator"),a.tdSeparator=g;var h=document.createElement("td");return h.className="tree",d.appendChild(h),a.value=this._createDomValue(),h.appendChild(a.value),a.tdValue=h,b},d.prototype.onEvent=function(a){var b,c=a.type,d=a.target||a.srcElement,e=this.dom,f=this,h=this._hasChilds();if((d==e.drag||d==e.menu)&&("mouseover"==c?this.editor.highlighter.highlight(this):"mouseout"==c&&this.editor.highlighter.unhighlight()),"mousedown"==c&&d==e.drag&&this._onDragStart(a),"click"==c&&d==e.menu){var i=f.editor.highlighter;i.highlight(f),i.lock(),g.addClassName(e.menu,"selected"),this.showContextMenu(e.menu,function(){g.removeClassName(e.menu,"selected"),i.unlock(),i.unhighlight()})}if("click"==c&&d==e.expand&&h){var j=a.ctrlKey;this._onExpand(j)}var k=e.value;if(d==k)switch(c){case"focus":b=this;break;case"blur":case"change":this._getDomValue(!0),this._updateDomValue(),this.value&&(k.innerHTML=this._escapeHTML(this.value));break;case"input":this._getDomValue(!0),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"click":(a.ctrlKey||!this.editable.value)&&g.isUrl(this.value)&&window.open(this.value,"_blank");break;case"keyup":this._getDomValue(!0),this._updateDomValue();break;case"cut":case"paste":setTimeout(function(){f._getDomValue(!0),f._updateDomValue()},1)}var l=e.field;if(d==l)switch(c){case"focus":b=this;break;case"blur":case"change":this._getDomField(!0),this._updateDomField(),this.field&&(l.innerHTML=this._escapeHTML(this.field));break;case"input":this._getDomField(!0),this._updateDomField();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"keyup":this._getDomField(!0),this._updateDomField();break;case"cut":case"paste":setTimeout(function(){f._getDomField(!0),f._updateDomField()},1)}var m=e.tree;if(d==m.parentNode)switch(c){case"click":var n=void 0!=a.offsetX?a.offsetX<24*(this.getLevel()+1):a.pageXd[c]?b:a[c]/g,">").replace(/ /g,"  ").replace(/^ /," ").replace(/ $/," "),c=JSON.stringify(b);return c.substring(1,c.length-1)},d.prototype._unescapeHTML=function(a){var b='"'+this._escapeJSON(a)+'"',c=g.parse(b);return c.replace(/</g,"<").replace(/>/g,">").replace(/ |\u00A0/g," ")},d.prototype._escapeJSON=function(a){for(var b="",c=0,d=a.length;d>c;){var e=a.charAt(c);"\n"==e?b+="\\n":"\\"==e?(b+=e,c++,e=a.charAt(c),-1=='"\\/bfnrtu'.indexOf(e)&&(b+="\\"),b+=e):b+='"'==e?'\\"':e,c++}return b};var h=f(d);a.exports=d},function(a,b,c){function d(a,b,c){function d(b){a.setMode(b);var c=a.dom&&a.dom.modeBox;c&&c.focus()}for(var f={code:{text:"Code",title:"Switch to code highlighter",click:function(){d("code")}},form:{text:"Form",title:"Switch to form editor",click:function(){d("form")}},text:{text:"Text",title:"Switch to plain text editor",click:function(){d("text")}},tree:{text:"Tree",title:"Switch to tree editor",click:function(){d("tree")}},view:{text:"View",title:"Switch to tree view",click:function(){d("view")}}},g=[],h=0;h
',h.appendChild(l),e.submenuTitle&&(l.title=e.submenuTitle),k=l}else{var m=document.createElement("div");m.className="expand",i.appendChild(m),k=i}k.onclick=function(){d._onExpandItem(g),k.focus()};var n=[];g.subItems=n;var o=document.createElement("ul");g.ul=o,o.className="menu",o.style.height="0",h.appendChild(o),c(o,n,e.submenu)}else i.innerHTML='
'+e.text;b.push(g)}})}this.dom={};var d=this,e=this.dom;this.anchor=void 0,this.items=a,this.eventListeners={},this.selection=void 0,this.visibleSubmenu=void 0,this.onClose=b?b.close:void 0;var f=document.createElement("div");f.className="jsoneditor-contextmenu",e.menu=f;var g=document.createElement("ul");g.className="menu",f.appendChild(g),e.list=g,e.items=[];var h=document.createElement("button");e.focusButton=h;var i=document.createElement("li");i.style.overflow="hidden",i.style.height="0",i.appendChild(h),g.appendChild(i),c(g,this.dom.items,a),this.maxHeight=0,a.forEach(function(b){var c=24*(a.length+(b.submenu?b.submenu.length:0));d.maxHeight=Math.max(d.maxHeight,c)})}var e=c(3);d.prototype._getVisibleButtons=function(){var a=[],b=this;return this.dom.items.forEach(function(c){a.push(c.button),c.buttonExpand&&a.push(c.buttonExpand),c.subItems&&c==b.expandedItem&&c.subItems.forEach(function(b){a.push(b.button),b.buttonExpand&&a.push(b.buttonExpand)})}),a},d.visibleMenu=void 0,d.prototype.show=function(a){this.hide();var b=window.innerHeight,c=window.pageYOffset||document.scrollTop||0,f=b+c,g=a.offsetHeight,h=this.maxHeight,i=e.getAbsoluteLeft(a),j=e.getAbsoluteTop(a);f>j+g+h?(this.dom.menu.style.left=i+"px",this.dom.menu.style.top=j+g+"px",this.dom.menu.style.bottom=""):(this.dom.menu.style.left=i+"px",this.dom.menu.style.top="",this.dom.menu.style.bottom=b-j+"px"),document.body.appendChild(this.dom.menu);var k=this,l=this.dom.list;this.eventListeners.mousedown=e.addEventListener(document,"mousedown",function(a){var b=a.target;b==l||k._isChildOf(b,l)||(k.hide(),a.stopPropagation(),a.preventDefault())}),this.eventListeners.mousewheel=e.addEventListener(document,"mousewheel",function(a){a.stopPropagation(),a.preventDefault()}),this.eventListeners.keydown=e.addEventListener(document,"keydown",function(a){k._onKeyDown(a)}),this.selection=e.getSelection(),this.anchor=a,setTimeout(function(){k.dom.focusButton.focus()},0),d.visibleMenu&&d.visibleMenu.hide(),d.visibleMenu=this},d.prototype.hide=function(){this.dom.menu.parentNode&&(this.dom.menu.parentNode.removeChild(this.dom.menu),this.onClose&&this.onClose());for(var a in this.eventListeners)if(this.eventListeners.hasOwnProperty(a)){var b=this.eventListeners[a];b&&e.removeEventListener(document,a,b),delete this.eventListeners[a]}d.visibleMenu==this&&(d.visibleMenu=void 0)},d.prototype._onExpandItem=function(a){var b=this,c=a==this.expandedItem,d=this.expandedItem;if(d&&(d.ul.style.height="0",d.ul.style.padding="",setTimeout(function(){b.expandedItem!=d&&(d.ul.style.display="",e.removeClassName(d.ul.parentNode,"selected"))},300),this.expandedItem=void 0),!c){var f=a.ul;f.style.display="block",f.clientHeight,setTimeout(function(){b.expandedItem==a&&(f.style.height=24*f.childNodes.length+"px",f.style.padding="5px 10px")},0),e.addClassName(f.parentNode,"selected"),this.expandedItem=a}},d.prototype._onKeyDown=function(a){var b,c,d,f,g=a.target,h=a.which,i=!1;27==h?(this.selection&&e.setSelection(this.selection),this.anchor&&this.anchor.focus(),this.hide(),i=!0):9==h?a.shiftKey?(b=this._getVisibleButtons(),c=b.indexOf(g),0==c&&(b[b.length-1].focus(),i=!0)):(b=this._getVisibleButtons(),c=b.indexOf(g),c==b.length-1&&(b[0].focus(),i=!0)):37==h?("expand"==g.className&&(b=this._getVisibleButtons(),c=b.indexOf(g),d=b[c-1],d&&d.focus()),i=!0):38==h?(b=this._getVisibleButtons(),c=b.indexOf(g),d=b[c-1],d&&"expand"==d.className&&(d=b[c-2]),d||(d=b[b.length-1]),d&&d.focus(),i=!0):39==h?(b=this._getVisibleButtons(),c=b.indexOf(g),f=b[c+1],f&&"expand"==f.className&&f.focus(),i=!0):40==h&&(b=this._getVisibleButtons(),c=b.indexOf(g),f=b[c+1],f&&"expand"==f.className&&(f=b[c+2]),f||(f=b[0]),f&&(f.focus(),i=!0),i=!0),i&&(a.stopPropagation(),a.preventDefault())},d.prototype._isChildOf=function(a,b){for(var c=a.parentNode;c;){if(c==b)return!0;c=c.parentNode}return!1},a.exports=d},function(a,b,c){function d(a){function b(a){this.editor=a,this.dom={}}return b.prototype=new a,b.prototype.getDom=function(){var a=this.dom;if(a.tr)return a.tr;this._updateEditability();var b=document.createElement("tr");if(b.node=this,a.tr=b,this.editable.field){a.tdDrag=document.createElement("td");var c=document.createElement("td");a.tdMenu=c;var d=document.createElement("button");d.className="contextmenu",d.title="Click to open the actions menu (Ctrl+M)",a.menu=d,c.appendChild(a.menu)}var e=document.createElement("td"),f=document.createElement("div");return f.innerHTML="(empty)",f.className="readonly",e.appendChild(f),a.td=e,a.text=f,this.updateDom(),b},b.prototype.updateDom=function(){var a=this.dom,b=a.td;b&&(b.style.paddingLeft=24*this.getLevel()+26+"px");var c=a.text;c&&(c.innerHTML="(empty "+this.parent.type+")");var d=a.tr;this.isVisible()?a.tr.firstChild||(a.tdDrag&&d.appendChild(a.tdDrag),a.tdMenu&&d.appendChild(a.tdMenu),d.appendChild(b)):a.tr.firstChild&&(a.tdDrag&&d.removeChild(a.tdDrag),a.tdMenu&&d.removeChild(a.tdMenu),d.removeChild(b))},b.prototype.isVisible=function(){return 0==this.parent.childs.length},b.prototype.showContextMenu=function(b,c){var d=this,e=a.TYPE_TITLES,g=[{text:"Append",title:"Append a new field with type 'auto' (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"insert",click:function(){d._onAppend("","","auto")},submenu:[{text:"Auto",className:"type-auto",title:e.auto,click:function(){d._onAppend("","","auto")}},{text:"Array",className:"type-array",title:e.array,click:function(){d._onAppend("",[])}},{text:"Object",className:"type-object",title:e.object,click:function(){d._onAppend("",{})}},{text:"String",className:"type-string",title:e.string,click:function(){d._onAppend("","","string")}}]}],h=new f(g,{close:c});h.show(b)},b.prototype.onEvent=function(a){var b=a.type,c=a.target||a.srcElement,d=this.dom,f=d.menu;if(c==f&&("mouseover"==b?this.editor.highlighter.highlight(this.parent):"mouseout"==b&&this.editor.highlighter.unhighlight()),"click"==b&&c==d.menu){var g=this.editor.highlighter;g.highlight(this.parent),g.lock(),e.addClassName(d.menu,"selected"),this.showContextMenu(d.menu,function(){e.removeClassName(d.menu,"selected"),g.unlock(),g.unhighlight()})}"keydown"==b&&this.onKeyDown(a)},b}var e=c(3),f=c(10);a.exports=d},function(a,b,c){var d=function(){var a={trace:function(){},yy:{},symbols_:{error:2,JSONString:3,STRING:4,JSONNumber:5,NUMBER:6,JSONNullLiteral:7,NULL:8,JSONBooleanLiteral:9,TRUE:10,FALSE:11,JSONText:12,JSONValue:13,EOF:14,JSONObject:15,JSONArray:16,"{":17,"}":18,JSONMemberList:19,JSONMember:20,":":21,",":22,"[":23,"]":24,JSONElementList:25,$accept:0,$end:1},terminals_:{2:"error",4:"STRING",6:"NUMBER",8:"NULL",10:"TRUE",11:"FALSE",14:"EOF",17:"{",18:"}",21:":",22:",",23:"[",24:"]"},productions_:[0,[3,1],[5,1],[7,1],[9,1],[9,1],[12,2],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[15,2],[15,3],[20,3],[19,1],[19,3],[16,2],[16,3],[25,1],[25,3]],performAction:function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 1:this.$=a.replace(/\\(\\|")/g,"$1").replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\v/g," ").replace(/\\f/g,"\f").replace(/\\b/g,"\b");break;case 2:this.$=Number(a);break;case 3:this.$=null;break;case 4:this.$=!0;break;case 5:this.$=!1;break;case 6:return this.$=f[h-1];case 13:this.$={};break;case 14:this.$=f[h-1];break;case 15:this.$=[f[h-2],f[h]];break;case 16:this.$={},this.$[f[h][0]]=f[h][1];break;case 17:this.$=f[h-2],f[h-2][f[h][0]]=f[h][1];break;case 18:this.$=[];break;case 19:this.$=f[h-1];break;case 20:this.$=[f[h]];break;case 21:this.$=f[h-2],f[h-2].push(f[h])}},table:[{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],12:1,13:2,15:7,16:8,17:[1,14],23:[1,15]},{1:[3]},{14:[1,16]},{14:[2,7],18:[2,7],22:[2,7],24:[2,7]},{14:[2,8],18:[2,8],22:[2,8],24:[2,8]},{14:[2,9],18:[2,9],22:[2,9],24:[2,9]},{14:[2,10],18:[2,10],22:[2,10],24:[2,10]},{14:[2,11],18:[2,11],22:[2,11],24:[2,11]},{14:[2,12],18:[2,12],22:[2,12],24:[2,12]},{14:[2,3],18:[2,3],22:[2,3],24:[2,3]},{14:[2,4],18:[2,4],22:[2,4],24:[2,4]},{14:[2,5],18:[2,5],22:[2,5],24:[2,5]},{14:[2,1],18:[2,1],21:[2,1],22:[2,1],24:[2,1]},{14:[2,2],18:[2,2],22:[2,2],24:[2,2]},{3:20,4:[1,12],18:[1,17],19:18,20:19},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:23,15:7,16:8,17:[1,14],23:[1,15],24:[1,21],25:22},{1:[2,6]},{14:[2,13],18:[2,13],22:[2,13],24:[2,13]},{18:[1,24],22:[1,25]},{18:[2,16],22:[2,16]},{21:[1,26]},{14:[2,18],18:[2,18],22:[2,18],24:[2,18]},{22:[1,28],24:[1,27]},{22:[2,20],24:[2,20]},{14:[2,14],18:[2,14],22:[2,14],24:[2,14]},{3:20,4:[1,12],20:29},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:30,15:7,16:8,17:[1,14],23:[1,15]},{14:[2,19],18:[2,19],22:[2,19],24:[2,19]},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:31,15:7,16:8,17:[1,14],23:[1,15]},{18:[2,17],22:[2,17]},{18:[2,15],22:[2,15]},{22:[2,21],24:[2,21]}],defaultActions:{16:[2,6]},parseError:function(a,b){throw new Error(a)},parse:function(a){function b(a){e.length=e.length-2*a,f.length=f.length-a,g.length=g.length-a}function c(){var a;return a=d.lexer.lex()||1,"number"!=typeof a&&(a=d.symbols_[a]||a),a}var d=this,e=[0],f=[null],g=[],h=this.table,i="",j=0,k=0,l=0,m=2,n=1;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,"undefined"==typeof this.lexer.yylloc&&(this.lexer.yylloc={});var o=this.lexer.yylloc;g.push(o),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var p,q,r,s,t,u,v,w,x,y={};;){if(r=e[e.length-1],this.defaultActions[r]?s=this.defaultActions[r]:(null==p&&(p=c()),s=h[r]&&h[r][p]),"undefined"==typeof s||!s.length||!s[0]){if(!l){x=[];for(u in h[r])this.terminals_[u]&&u>2&&x.push("'"+this.terminals_[u]+"'");var z="";z=this.lexer.showPosition?"Parse error on line "+(j+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+x.join(", ")+", got '"+this.terminals_[p]+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==p?"end of input":"'"+(this.terminals_[p]||p)+"'"),this.parseError(z,{text:this.lexer.match,token:this.terminals_[p]||p,line:this.lexer.yylineno,loc:o,expected:x})}if(3==l){if(p==n)throw new Error(z||"Parsing halted.");k=this.lexer.yyleng,i=this.lexer.yytext,j=this.lexer.yylineno,o=this.lexer.yylloc,p=c()}for(;!(m.toString()in h[r]);){if(0==r)throw new Error(z||"Parsing halted.");b(1),r=e[e.length-1]}q=p,p=m,r=e[e.length-1],s=h[r]&&h[r][m],l=3}if(s[0]instanceof Array&&s.length>1)throw new Error("Parse Error: multiple actions possible at state: "+r+", token: "+p);switch(s[0]){case 1:e.push(p),f.push(this.lexer.yytext),g.push(this.lexer.yylloc),e.push(s[1]),p=null,q?(p=q,q=null):(k=this.lexer.yyleng,i=this.lexer.yytext,j=this.lexer.yylineno,o=this.lexer.yylloc,l>0&&l--);break;case 2:if(v=this.productions_[s[1]][1],y.$=f[f.length-v],y._$={first_line:g[g.length-(v||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(v||1)].first_column,last_column:g[g.length-1].last_column},t=this.performAction.call(y,i,k,j,this.yy,s[1],f,g),"undefined"!=typeof t)return t;v&&(e=e.slice(0,-1*v*2),f=f.slice(0,-1*v),g=g.slice(0,-1*v)),e.push(this.productions_[s[1]][0]),f.push(y.$),g.push(y._$),w=h[e[e.length-2]][e[e.length-1]],e.push(w);break;case 3:return!0}}return!0}},b=function(){var a={EOF:1,parseError:function(a,b){if(!this.yy.parseError)throw new Error(a);this.yy.parseError(a,b)},setInput:function(a){return this._input=a,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.match+=a,this.matched+=a;var b=a.match(/\n/);return b&&this.yylineno++,this._input=this._input.slice(1),a},unput:function(a){return this._input=a+this._input,this},more:function(){return this._more=!0,this},less:function(a){this._input=this.match.slice(a)+this._input},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),b=new Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,b,c,d,e;this._more||(this.yytext="",this.match="");for(var f=this._currentRules(),g=0;gb[0].length)||(b=c,d=g,this.options.flex));g++);return b?(e=b[0].match(/\n.*/g),e&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-1:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(b[0].length), +this.matched+=b[0],a=this.performAction.call(this,this.yy,this,f[d],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a?a:void 0):""===this._input?this.EOF:void this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return"undefined"!=typeof a?a:this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(a){this.begin(a)}};return a.options={},a.performAction=function(a,b,c,d){switch(c){case 0:break;case 1:return 6;case 2:return b.yytext=b.yytext.substr(1,b.yyleng-2),4;case 3:return 17;case 4:return 18;case 5:return 23;case 6:return 24;case 7:return 22;case 8:return 21;case 9:return 10;case 10:return 11;case 11:return 8;case 12:return 14;case 13:return"INVALID"}},a.rules=[/^(?:\s+)/,/^(?:(-?([0-9]|[1-9][0-9]+))(\.[0-9]+)?([eE][-+]?[0-9]+)?\b)/,/^(?:"(?:\\[\\"bfnrt/]|\\u[a-fA-F0-9]{4}|[^\\\0-\x09\x0a-\x1f"])*")/,/^(?:\{)/,/^(?:\})/,/^(?:\[)/,/^(?:\])/,/^(?:,)/,/^(?::)/,/^(?:true\b)/,/^(?:false\b)/,/^(?:null\b)/,/^(?:$)/,/^(?:.)/],a.conditions={INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}},a}();return a.lexer=b,a}();b.parser=d,b.parse=d.parse.bind(d)},function(a,b,c){ace.define("ace/theme/jsoneditor",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-jsoneditor",b.cssText='.ace-jsoneditor .ace_gutter { background: #ebebeb; color: #333 } .ace-jsoneditor.ace_editor { font-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif; line-height: 1.3; } .ace-jsoneditor .ace_print-margin { width: 1px; background: #e8e8e8 } .ace-jsoneditor .ace_scroller { background-color: #FFFFFF } .ace-jsoneditor .ace_text-layer { color: gray } .ace-jsoneditor .ace_variable { color: #1a1a1a } .ace-jsoneditor .ace_cursor { border-left: 2px solid #000000 } .ace-jsoneditor .ace_overwrite-cursors .ace_cursor { border-left: 0px; border-bottom: 1px solid #000000 } .ace-jsoneditor .ace_marker-layer .ace_selection { background: #D5DDF6 } .ace-jsoneditor.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px } .ace-jsoneditor .ace_marker-layer .ace_step { background: rgb(255, 255, 0) } .ace-jsoneditor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF } .ace-jsoneditor .ace_marker-layer .ace_active-line { background: #FFFBD1 } .ace-jsoneditor .ace_gutter-active-line { background-color : #dcdcdc } .ace-jsoneditor .ace_marker-layer .ace_selected-word { border: 1px solid #D5DDF6 } .ace-jsoneditor .ace_invisible { color: #BFBFBF } .ace-jsoneditor .ace_keyword, .ace-jsoneditor .ace_meta, .ace-jsoneditor .ace_support.ace_constant.ace_property-value { color: #AF956F } .ace-jsoneditor .ace_keyword.ace_operator { color: #484848 } .ace-jsoneditor .ace_keyword.ace_other.ace_unit { color: #96DC5F } .ace-jsoneditor .ace_constant.ace_language { color: darkorange } .ace-jsoneditor .ace_constant.ace_numeric { color: red } .ace-jsoneditor .ace_constant.ace_character.ace_entity { color: #BF78CC } .ace-jsoneditor .ace_invalid { color: #FFFFFF; background-color: #FF002A; } .ace-jsoneditor .ace_fold { background-color: #AF956F; border-color: #000000 } .ace-jsoneditor .ace_storage, .ace-jsoneditor .ace_support.ace_class, .ace-jsoneditor .ace_support.ace_function, .ace-jsoneditor .ace_support.ace_other, .ace-jsoneditor .ace_support.ace_type { color: #C52727 } .ace-jsoneditor .ace_string { color: green } .ace-jsoneditor .ace_comment { color: #BCC8BA } .ace-jsoneditor .ace_entity.ace_name.ace_tag, .ace-jsoneditor .ace_entity.ace_other.ace_attribute-name { color: #606060 } .ace-jsoneditor .ace_markup.ace_underline { text-decoration: underline } .ace-jsoneditor .ace_indent-guide { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y }';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})},function(a,b,c){!function(){function a(a){var b=function(a,b){return e("",a,b)},f=c;a&&(c[a]||(c[a]={}),f=c[a]),f.define&&f.define.packaged||(d.original=f.define,f.define=d,f.define.packaged=!0),f.acequire&&f.acequire.packaged||(e.original=f.acequire,f.acequire=b,f.acequire.packaged=!0)}var b="ace",c=function(){return this}();if(b||"undefined"==typeof acequirejs){var d=function(a,b,c){return"string"!=typeof a?void(d.original?d.original.apply(window,arguments):(console.error("dropping module because define wasn't a string."),console.trace())):(2==arguments.length&&(c=b),d.modules||(d.modules={},d.payloads={}),d.payloads[a]=c,void(d.modules[a]=null))},e=function(a,b,c){if("[object Array]"===Object.prototype.toString.call(b)){for(var d=[],f=0,h=b.length;h>f;++f){var i=g(a,b[f]);if(!i&&e.original)return e.original.apply(window,arguments);d.push(i)}c&&c.apply(null,d)}else{if("string"==typeof b){var j=g(a,b);return!j&&e.original?e.original.apply(window,arguments):(c&&c(),j)}if(e.original)return e.original.apply(window,arguments)}},f=function(a,b){if(-1!==b.indexOf("!")){var c=b.split("!");return f(a,c[0])+"!"+f(a,c[1])}if("."==b.charAt(0)){var d=a.split("/").slice(0,-1).join("/");for(b=d+"/"+b;-1!==b.indexOf(".")&&e!=b;){var e=b;b=b.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return b},g=function(a,b){b=f(a,b);var c=d.modules[b];if(!c){if(c=d.payloads[b],"function"==typeof c){var g={},h={id:b,uri:"",exports:g,packaged:!0},i=function(a,c){return e(b,a,c)},j=c(i,g,h);g=j||h.exports,d.modules[b]=g,delete d.payloads[b]}c=d.modules[b]=g||c}return c};a(b)}}(),ace.define("ace/lib/regexp",["require","exports","module"],function(a,b,c){"use strict";function d(a){return(a.global?"g":"")+(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.extended?"x":"")+(a.sticky?"y":"")}function e(a,b,c){if(Array.prototype.indexOf)return a.indexOf(b,c);for(var d=c||0;d1&&e(i,"")>-1&&(c=RegExp(this.source,f.replace.call(d(this),"g","")),f.replace.call(a.slice(i.index),c,function(){for(var a=1;ai.index&&this.lastIndex--}return i},h||(RegExp.prototype.test=function(a){var b=f.exec.call(this,a);return b&&this.global&&!b[0].length&&this.lastIndex>b.index&&this.lastIndex--,!!b}))}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(a,b,c){function d(){}function e(a){try{return Object.defineProperty(a,"sentinel",{}),"sentinel"in a}catch(b){}}function f(a){return a=+a,a!==a?a=0:0!==a&&a!==1/0&&a!==-(1/0)&&(a=(a>0||-1)*Math.floor(Math.abs(a))),a}Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError("Function.prototype.bind called on incompatible "+b);var c=o.call(arguments,1),e=function(){if(this instanceof e){var d=b.apply(this,c.concat(o.call(arguments)));return Object(d)===d?d:this}return b.apply(a,c.concat(o.call(arguments)))};return b.prototype&&(d.prototype=b.prototype,e.prototype=new d,d.prototype=null),e});var g,h,i,j,k,l=Function.prototype.call,m=Array.prototype,n=Object.prototype,o=m.slice,p=l.bind(n.toString),q=l.bind(n.hasOwnProperty);if((k=q(n,"__defineGetter__"))&&(g=l.bind(n.__defineGetter__),h=l.bind(n.__defineSetter__),i=l.bind(n.__lookupGetter__),j=l.bind(n.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function a(a){var b=new Array(a+2);return b[0]=b[1]=0,b}var b,c=[];return c.splice.apply(c,a(20)),c.splice.apply(c,a(26)),b=c.length,c.splice(5,0,"XXX"),b+1==c.length,b+1==c.length?!0:void 0}()){var r=Array.prototype.splice;Array.prototype.splice=function(a,b){return arguments.length?r.apply(this,[void 0===a?0:a,void 0===b?this.length-a:b].concat(o.call(arguments,2))):[]}}else Array.prototype.splice=function(a,b){var c=this.length;a>0?a>c&&(a=c):void 0==a?a=0:0>a&&(a=Math.max(c+a,0)),c>a+b||(b=c-a);var d=this.slice(a,a+b),e=o.call(arguments,2),f=e.length;if(a===c)f&&this.push.apply(this,e);else{var g=Math.min(b,c-a),h=a+g,i=h+f-g,j=c-h,k=c-g;if(h>i)for(var l=0;j>l;++l)this[i+l]=this[h+l];else if(i>h)for(l=j;l--;)this[i+l]=this[h+l];if(f&&a===k)this.length=k,this.push.apply(this,e);else for(this.length=k+f,l=0;f>l;++l)this[a+l]=e[l]}return d};Array.isArray||(Array.isArray=function(a){return"[object Array]"==p(a)});var s=Object("a"),t="a"!=s[0]||!(0 in s);if(Array.prototype.forEach||(Array.prototype.forEach=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=arguments[1],e=-1,f=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError;for(;++e>>0,e=Array(d),f=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var g=0;d>g;g++)g in c&&(e[g]=a.call(f,c[g],g,b));return e}),Array.prototype.filter||(Array.prototype.filter=function(a){var b,c=K(this),d=t&&"[object String]"==p(this)?this.split(""):c,e=d.length>>>0,f=[],g=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var h=0;e>h;h++)h in d&&(b=d[h],a.call(g,b,h,c)&&f.push(b));return f}),Array.prototype.every||(Array.prototype.every=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&!a.call(e,c[f],f,b))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&a.call(e,c[f],f,b))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var e,f=0;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f++];break}if(++f>=d)throw new TypeError("reduce of empty array with no initial value")}for(;d>f;f++)f in c&&(e=a.call(void 0,e,c[f],f,b));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var e,f=d-1;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f--];break}if(--f<0)throw new TypeError("reduceRight of empty array with no initial value")}do f in this&&(e=a.call(void 0,e,c[f],f,b));while(f--);return e}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=0;for(arguments.length>1&&(d=f(arguments[1])),d=d>=0?d:Math.max(0,c+d);c>d;d++)if(d in b&&b[d]===a)return d;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=c-1;for(arguments.length>1&&(d=Math.min(d,f(arguments[1]))),d=d>=0?d:c-Math.abs(d);d>=0;d--)if(d in b&&a===b[d])return d;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(a){return a.__proto__||(a.constructor?a.constructor.prototype:n)}),!Object.getOwnPropertyDescriptor){var u="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(a,b){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(u+a);if(q(a,b)){var c,d,e;if(c={enumerable:!0,configurable:!0},k){var f=a.__proto__;a.__proto__=n;var d=i(a,b),e=j(a,b);if(a.__proto__=f,d||e)return d&&(c.get=d),e&&(c.set=e),c}return c.value=a[b],c}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(a){return Object.keys(a)}),!Object.create){var v;v=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var a={};for(var b in a)a[b]=null;return a.constructor=a.hasOwnProperty=a.propertyIsEnumerable=a.isPrototypeOf=a.toLocaleString=a.toString=a.valueOf=a.__proto__=null,a},Object.create=function(a,b){var c;if(null===a)c=v();else{if("object"!=typeof a)throw new TypeError("typeof prototype["+typeof a+"] != 'object'");var d=function(){};d.prototype=a,c=new d,c.__proto__=a}return void 0!==b&&Object.defineProperties(c,b),c}}if(Object.defineProperty){var w=e({}),x="undefined"==typeof document||e(document.createElement("div"));if(!w||!x)var y=Object.defineProperty}if(!Object.defineProperty||y){var z="Property description must be an object: ",A="Object.defineProperty called on non-object: ",B="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(a,b,c){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(A+a);if("object"!=typeof c&&"function"!=typeof c||null===c)throw new TypeError(z+c);if(y)try{return y.call(Object,a,b,c)}catch(d){}if(q(c,"value"))if(k&&(i(a,b)||j(a,b))){var e=a.__proto__;a.__proto__=n,delete a[b],a[b]=c.value,a.__proto__=e}else a[b]=c.value;else{if(!k)throw new TypeError(B);q(c,"get")&&g(a,b,c.get),q(c,"set")&&h(a,b,c.set)}return a}}Object.defineProperties||(Object.defineProperties=function(a,b){for(var c in b)q(b,c)&&Object.defineProperty(a,c,b[c]);return a}),Object.seal||(Object.seal=function(a){return a}),Object.freeze||(Object.freeze=function(a){return a});try{Object.freeze(function(){})}catch(C){Object.freeze=function(a){return function(b){return"function"==typeof b?b:a(b)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(a){return a}),Object.isSealed||(Object.isSealed=function(a){return!1}),Object.isFrozen||(Object.isFrozen=function(a){return!1}),Object.isExtensible||(Object.isExtensible=function(a){if(Object(a)===a)throw new TypeError;for(var b="";q(a,b);)b+="?";a[b]=!0;var c=q(a,b);return delete a[b],c}),!Object.keys){var D=!0,E=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],F=E.length;for(var G in{toString:null})D=!1;Object.keys=function L(a){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError("Object.keys called on a non-object");var L=[];for(var b in a)q(a,b)&&L.push(b);if(D)for(var c=0,d=F;d>c;c++){var e=E[c];q(a,e)&&L.push(e)}return L}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||H.trim()){H="["+H+"]";var I=new RegExp("^"+H+H+"*"),J=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(I,"").replace(J,"")}}var K=function(a){if(null==a)throw new TypeError("can't convert "+a+" to object");return Object(a)}}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(a,b,c){"use strict";a("./regexp"),a("./es5-shim")}),ace.define("ace/lib/dom",["require","exports","module"],function(a,b,c){"use strict";if("undefined"!=typeof document){var d="http://www.w3.org/1999/xhtml";b.getDocumentHead=function(a){return a||(a=document),a.head||a.getElementsByTagName("head")[0]||a.documentElement},b.createElement=function(a,b){return document.createElementNS?document.createElementNS(b||d,a):document.createElement(a)},b.hasCssClass=function(a,b){var c=(a.className||"").split(/\s+/g);return-1!==c.indexOf(b)},b.addCssClass=function(a,c){b.hasCssClass(a,c)||(a.className+=" "+c)},b.removeCssClass=function(a,b){for(var c=a.className.split(/\s+/g);;){var d=c.indexOf(b);if(-1==d)break;c.splice(d,1)}a.className=c.join(" ")},b.toggleCssClass=function(a,b){for(var c=a.className.split(/\s+/g),d=!0;;){var e=c.indexOf(b);if(-1==e)break;d=!1,c.splice(e,1)}return d&&c.push(b),a.className=c.join(" "),d},b.setCssClass=function(a,c,d){d?b.addCssClass(a,c):b.removeCssClass(a,c)},b.hasCssString=function(a,b){var c,d=0;if(b=b||document,b.createStyleSheet&&(c=b.styleSheets)){for(;d=0?(e.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]:(e.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),b.isOldIE=b.isIE&&b.isIE<9,b.isGecko=b.isMozilla=(window.Controllers||window.controllers)&&"Gecko"===window.navigator.product,b.isOldGecko=b.isGecko&&parseInt((e.match(/rv\:(\d+)/)||[])[1],10)<4,b.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),b.isWebKit=parseFloat(e.split("WebKit/")[1])||void 0,b.isChrome=parseFloat(e.split(" Chrome/")[1])||void 0,b.isAIR=e.indexOf("AdobeAIR")>=0,b.isIPad=e.indexOf("iPad")>=0,b.isTouchPad=e.indexOf("TouchPad")>=0,b.isChromeOS=e.indexOf(" CrOS ")>=0}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(a,b,c){"use strict";function d(a,b,c){var d=g(b);if(!f.isMac&&h){if((h[91]||h[92])&&(d|=8),h.altGr){if(3==(3&d))return;h.altGr=0}if(18===c||17===c){var j="location"in b?b.location:b.keyLocation;if(17===c&&1===j)i=b.timeStamp;else if(18===c&&3===d&&2===j){var k=-i;i=b.timeStamp,k+=i,3>k&&(h.altGr=!0)}}}if(c in e.MODIFIER_KEYS){switch(e.MODIFIER_KEYS[c]){case"Alt":d=2;break;case"Shift":d=4;break;case"Ctrl":d=1;break;default:d=8}c=-1}if(8&d&&(91===c||93===c)&&(c=-1),!d&&13===c){var j="location"in b?b.location:b.keyLocation;if(3===j&&(a(b,d,-c),b.defaultPrevented))return}if(f.isChromeOS&&8&d){if(a(b,d,c),b.defaultPrevented)return;d&=-9}return d||c in e.FUNCTION_KEYS||c in e.PRINTABLE_KEYS?a(b,d,c):!1}var e=a("./keys"),f=a("./useragent");b.addListener=function(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1);if(a.attachEvent){var d=function(){c.call(a,window.event)};c._wrapper=d,a.attachEvent("on"+b,d)}},b.removeListener=function(a,b,c){return a.removeEventListener?a.removeEventListener(b,c,!1):void(a.detachEvent&&a.detachEvent("on"+b,c._wrapper||c))},b.stopEvent=function(a){return b.stopPropagation(a),b.preventDefault(a),!1},b.stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},b.preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},b.getButton=function(a){return"dblclick"==a.type?0:"contextmenu"==a.type||f.isMac&&a.ctrlKey&&!a.altKey&&!a.shiftKey?2:a.preventDefault?a.button:{1:0,2:2,4:1}[a.button]},b.capture=function(a,c,d){function e(a){c&&c(a),d&&d(a),b.removeListener(document,"mousemove",c,!0),b.removeListener(document,"mouseup",e,!0),b.removeListener(document,"dragstart",e,!0)}return b.addListener(document,"mousemove",c,!0),b.addListener(document,"mouseup",e,!0),b.addListener(document,"dragstart",e,!0),e},b.addMouseWheelListener=function(a,c){"onmousewheel"in a?b.addListener(a,"mousewheel",function(a){var b=8;void 0!==a.wheelDeltaX?(a.wheelX=-a.wheelDeltaX/b,a.wheelY=-a.wheelDeltaY/b):(a.wheelX=0,a.wheelY=-a.wheelDelta/b),c(a)}):"onwheel"in a?b.addListener(a,"wheel",function(a){var b=.35;switch(a.deltaMode){case a.DOM_DELTA_PIXEL:a.wheelX=a.deltaX*b||0,a.wheelY=a.deltaY*b||0;break;case a.DOM_DELTA_LINE:case a.DOM_DELTA_PAGE:a.wheelX=5*(a.deltaX||0),a.wheelY=5*(a.deltaY||0)}c(a)}):b.addListener(a,"DOMMouseScroll",function(a){a.axis&&a.axis==a.HORIZONTAL_AXIS?(a.wheelX=5*(a.detail||0),a.wheelY=0):(a.wheelX=0,a.wheelY=5*(a.detail||0)),c(a)})},b.addMultiMouseDownListener=function(a,c,d,e){var g,h,i,j=0,k={2:"dblclick",3:"tripleclick",4:"quadclick"};b.addListener(a,"mousedown",function(a){if(0!==b.getButton(a)?j=0:a.detail>1?(j++,j>4&&(j=1)):j=1,f.isIE){var l=Math.abs(a.clientX-g)>5||Math.abs(a.clientY-h)>5;(!i||l)&&(j=1),i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),1==j&&(g=a.clientX,h=a.clientY)}if(a._clicks=j,d[e]("mousedown",a),j>4)j=0;else if(j>1)return d[e](k[j],a)}),f.isOldIE&&b.addListener(a,"dblclick",function(a){j=2,i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),d[e]("mousedown",a),d[e](k[j],a)})};var g=!f.isMac||!f.isOpera||"KeyboardEvent"in window?function(a){return 0|(a.ctrlKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.metaKey?8:0)}:function(a){return 0|(a.metaKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.ctrlKey?8:0)};b.getModifierString=function(a){return e.KEY_MODS[g(a)]};var h=null,i=0;if(b.addCommandKeyListener=function(a,c){var e=b.addListener;if(f.isOldGecko||f.isOpera&&!("KeyboardEvent"in window)){var g=null;e(a,"keydown",function(a){g=a.keyCode}),e(a,"keypress",function(a){return d(c,a,g)})}else{var i=null;e(a,"keydown",function(a){h[a.keyCode]=!0;var b=d(c,a,a.keyCode);return i=a.defaultPrevented,b}),e(a,"keypress",function(a){i&&(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey)&&(b.stopEvent(a),i=null)}),e(a,"keyup",function(a){h[a.keyCode]=null}),h||(h=Object.create(null),e(window,"focus",function(a){h=Object.create(null)}))}},window.postMessage&&!f.isOldIE){var j=1;b.nextTick=function(a,c){c=c||window;var d="zero-timeout-message-"+j;b.addListener(c,"message",function e(f){f.data==d&&(b.stopPropagation(f),b.removeListener(c,"message",e),a())}),c.postMessage(d,"*")}}b.nextFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame,b.nextFrame?b.nextFrame=b.nextFrame.bind(window):b.nextFrame=function(a){setTimeout(a,17)}}),ace.define("ace/lib/lang",["require","exports","module"],function(a,b,c){"use strict";b.last=function(a){return a[a.length-1]},b.stringReverse=function(a){return a.split("").reverse().join("")},b.stringRepeat=function(a,b){for(var c="";b>0;)1&b&&(c+=a),(b>>=1)&&(a+=a);return c};var d=/^\s\s*/,e=/\s\s*$/;b.stringTrimLeft=function(a){return a.replace(d,"")},b.stringTrimRight=function(a){return a.replace(e,"")},b.copyObject=function(a){var b={};for(var c in a)b[c]=a[c];return b},b.copyArray=function(a){for(var b=[],c=0,d=a.length;d>c;c++)a[c]&&"object"==typeof a[c]?b[c]=this.copyObject(a[c]):b[c]=a[c];return b},b.deepCopy=function(a){if("object"!=typeof a||!a)return a;var c=a.constructor;if(c===RegExp)return a;var d=c();for(var e in a)"object"==typeof a[e]?d[e]=b.deepCopy(a[e]):d[e]=a[e];return d},b.arrayToMap=function(a){for(var b={},c=0;cc?{cursor:a.start,anchor:a.end}:{cursor:a.end,anchor:a.start}}var g=(a("../lib/dom"),a("../lib/event"),a("../lib/useragent"),0);(function(){this.onMouseDown=function(a){var b=a.inSelection(),c=a.getDocumentPosition();this.mousedownEvent=a;var d=this.editor,e=a.getButton();if(0!==e){var f=d.getSelectionRange(),g=f.isEmpty();return g&&d.selection.moveToPosition(c),void d.textInput.onContextMenu(a.domEvent)}return this.mousedownEvent.time=Date.now(),!b||d.isFocused()||(d.focus(),!this.$focusTimout||this.$clickSelection||d.inMultiSelectMode)?(this.captureMouse(a),this.startSelect(c,a.domEvent._clicks>1),a.preventDefault()):(this.setState("focusWait"),void this.captureMouse(a))},this.startSelect=function(a,b){a=a||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var c=this.editor;this.mousedownEvent.getShiftKey()?c.selection.selectToPosition(a):b||c.selection.moveToPosition(a),b||this.select(),c.renderer.scroller.setCapture&&c.renderer.scroller.setCapture(),c.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var a,b=this.editor,c=b.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var d=this.$clickSelection.comparePoint(c);if(-1==d)a=this.$clickSelection.end;else if(1==d)a=this.$clickSelection.start;else{var e=f(this.$clickSelection,c);c=e.cursor,a=e.anchor}b.selection.setSelectionAnchor(a.row,a.column)}b.selection.selectToPosition(c),b.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(a){var b,c=this.editor,d=c.renderer.screenToTextCoordinates(this.x,this.y),e=c.selection[a](d.row,d.column);if(this.$clickSelection){var g=this.$clickSelection.comparePoint(e.start),h=this.$clickSelection.comparePoint(e.end);if(-1==g&&0>=h)b=this.$clickSelection.end,(e.end.row!=d.row||e.end.column!=d.column)&&(d=e.start);else if(1==h&&g>=0)b=this.$clickSelection.start,(e.start.row!=d.row||e.start.column!=d.column)&&(d=e.end);else if(-1==g&&1==h)d=e.end,b=e.start;else{var i=f(this.$clickSelection,d);d=i.cursor,b=i.anchor}c.selection.setSelectionAnchor(b.row,b.column)}c.selection.selectToPosition(d),c.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var a=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),b=Date.now();(a>g||b-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(a){var b=a.getDocumentPosition(),c=this.editor,d=c.session,e=d.getBracketRange(b);e?(e.isEmpty()&&(e.start.column--,e.end.column++),this.setState("select")):(e=c.selection.getWordRange(b.row,b.column),this.setState("selectByWords")),this.$clickSelection=e,this.select()},this.onTripleClick=function(a){var b=a.getDocumentPosition(),c=this.editor;this.setState("selectByLines");var d=c.getSelectionRange();d.isMultiLine()&&d.contains(b.row,b.column)?(this.$clickSelection=c.selection.getLineRange(d.start.row),this.$clickSelection.end=c.selection.getLineRange(d.end.row).end):this.$clickSelection=c.selection.getLineRange(b.row),this.select()},this.onQuadClick=function(a){var b=this.editor;b.selectAll(),this.$clickSelection=b.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(a){if(!a.getAccelKey()){a.getShiftKey()&&a.wheelY&&!a.wheelX&&(a.wheelX=a.wheelY,a.wheelY=0);var b=a.domEvent.timeStamp,c=b-(this.$lastScrollTime||0),d=this.editor,e=d.renderer.isScrollableBy(a.wheelX*a.speed,a.wheelY*a.speed);return e||200>c?(this.$lastScrollTime=b,d.renderer.scrollBy(a.wheelX*a.speed,a.wheelY*a.speed),a.stop()):void 0}}}).call(d.prototype),b.DefaultHandlers=d}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(a,b,c){"use strict";function d(a){this.isOpen=!1,this.$element=null,this.$parentNode=a}var e=(a("./lib/oop"),a("./lib/dom"));(function(){this.$init=function(){return this.$element=e.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(a){e.setInnerText(this.getElement(),a)},this.setHtml=function(a){this.getElement().innerHTML=a},this.setPosition=function(a,b){this.getElement().style.left=a+"px",this.getElement().style.top=b+"px"},this.setClassName=function(a){e.addCssClass(this.getElement(),a)},this.show=function(a,b,c){null!=a&&this.setText(a),null!=b&&null!=c&&this.setPosition(b,c),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(d.prototype),b.Tooltip=d}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(a,b,c){"use strict";function d(a){function b(){var b=l.getDocumentPosition().row,e=i.$annotations[b];if(!e)return c();var f=g.session.getLength();if(b==f){var h=g.renderer.pixelToScreenCoordinates(0,l.y).row,k=l.$pos;if(h>g.session.documentToScreenRow(k.row,k.column))return c()}if(m!=e)if(m=e.text.join("
"),j.setHtml(m),j.show(),g.on("mousewheel",c),a.$tooltipFollowsMouse)d(l);else{var n=i.$cells[g.session.documentToScreenRow(b,0)].element,o=n.getBoundingClientRect(),p=j.getElement().style;p.left=o.right+"px",p.top=o.bottom+"px"}}function c(){k&&(k=clearTimeout(k)),m&&(j.hide(),m=null,g.removeEventListener("mousewheel",c))}function d(a){j.setPosition(a.x,a.y)}var g=a.editor,i=g.renderer.$gutterLayer,j=new e(g.container);a.editor.setDefaultHandler("guttermousedown",function(b){if(g.isFocused()&&0==b.getButton()){var c=i.getRegion(b);if("foldWidgets"!=c){var d=b.getDocumentPosition().row,e=g.session.selection;if(b.getShiftKey())e.selectTo(d,0);else{if(2==b.domEvent.detail)return g.selectAll(),b.preventDefault();a.$clickSelection=g.selection.getLineRange(d)}return a.setState("selectByLines"),a.captureMouse(b),b.preventDefault()}}});var k,l,m;a.editor.setDefaultHandler("guttermousemove",function(e){var g=e.domEvent.target||e.domEvent.srcElement;return f.hasCssClass(g,"ace_fold-widget")?c():(m&&a.$tooltipFollowsMouse&&d(e),l=e,void(k||(k=setTimeout(function(){k=null,l&&!a.isMousePressed?b():c()},50))))}),h.addListener(g.renderer.$gutter,"mouseout",function(a){l=null,m&&!k&&(k=setTimeout(function(){k=null,c()},50))}),g.on("changeSession",c)}function e(a){i.call(this,a)}var f=a("../lib/dom"),g=a("../lib/oop"),h=a("../lib/event"),i=a("../tooltip").Tooltip;g.inherits(e,i),function(){this.setPosition=function(a,b){var c=window.innerWidth||document.documentElement.clientWidth,d=window.innerHeight||document.documentElement.clientHeight,e=this.getWidth(),f=this.getHeight();a+=15,b+=15,a+e>c&&(a-=a+e-c),b+f>d&&(b-=20+f),i.prototype.setPosition.call(this,a,b)}}.call(e.prototype),b.GutterHandler=d}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(a,b,c){"use strict";var d=a("../lib/event"),e=a("../lib/useragent"),f=b.MouseEvent=function(a,b){this.domEvent=a,this.editor=b,this.x=this.clientX=a.clientX,this.y=this.clientY=a.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){d.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){d.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var a=this.editor,b=a.getSelectionRange();if(b.isEmpty())this.$inSelection=!1;else{var c=this.getDocumentPosition();this.$inSelection=b.contains(c.row,c.column)}return this.$inSelection},this.getButton=function(){return d.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=e.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(f.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(a,b,c){"use strict";function d(a){function b(a,b){var c=Date.now(),d=!b||a.row!=b.row,f=!b||a.column!=b.column;if(!C||d||f)q.$blockScrolling+=1,q.moveCursorToPosition(a),q.$blockScrolling-=1,C=c,D={x:u,y:v};else{var g=e(D.x,D.y,u,v);g>k?C=null:c-C>=j&&(q.renderer.scrollCursorIntoView(),C=null)}}function c(a,b){var c=Date.now(),d=q.renderer.layerConfig.lineHeight,e=q.renderer.layerConfig.characterWidth,f=q.renderer.scroller.getBoundingClientRect(),g={x:{left:u-f.left,right:f.right-u},y:{top:v-f.top,bottom:f.bottom-v}},h=Math.min(g.x.left,g.x.right),j=Math.min(g.y.top,g.y.bottom),k={row:a.row,column:a.column};2>=h/e&&(k.column+=g.x.left=j/d&&(k.row+=g.y.top=i&&q.renderer.scrollCursorIntoView(k):B=c:B=null}function d(){var a=y;y=q.renderer.screenToTextCoordinates(u,v),b(y,a),c(y,a)}function l(){x=q.selection.toOrientedRange(),t=q.session.addMarker(x,"ace_selection",q.getSelectionStyle()),q.clearSelection(),q.isFocused()&&q.renderer.$cursorLayer.setBlinking(!1),clearInterval(w),d(),w=setInterval(d,20),F=0,g.addListener(document,"mousemove",n)}function m(){clearInterval(w),q.session.removeMarker(t),t=null,q.$blockScrolling+=1,q.selection.fromOrientedRange(x),q.$blockScrolling-=1,q.isFocused()&&!A&&q.renderer.$cursorLayer.setBlinking(!q.getReadOnly()),x=null,y=null,F=0,B=null,C=null,g.removeListener(document,"mousemove",n)}function n(){null==G&&(G=setTimeout(function(){null!=G&&t&&m()},20))}function o(a){var b=a.types;return!b||Array.prototype.some.call(b,function(a){return"text/plain"==a||"Text"==a})}function p(a){var b=["copy","copymove","all","uninitialized"],c=["move","copymove","linkmove","all","uninitialized"],d=h.isMac?a.altKey:a.ctrlKey,e="uninitialized";try{e=a.dataTransfer.effectAllowed.toLowerCase()}catch(a){}var f="none";return d&&b.indexOf(e)>=0?f="copy":c.indexOf(e)>=0?f="move":b.indexOf(e)>=0&&(f="copy"),f}var q=a.editor,r=f.createElement("img");r.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",h.isOpera&&(r.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");var s=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];s.forEach(function(b){a[b]=this[b]},this),q.addEventListener("mousedown",this.onMouseDown.bind(a));var t,u,v,w,x,y,z,A,B,C,D,E=q.container,F=0;this.onDragStart=function(a){if(this.cancelDrag||!E.draggable){var b=this;return setTimeout(function(){b.startSelect(),b.captureMouse(a)},0),a.preventDefault()}x=q.getSelectionRange();var c=a.dataTransfer;c.effectAllowed=q.getReadOnly()?"copy":"copyMove",h.isOpera&&(q.container.appendChild(r),r.scrollTop=0),c.setDragImage&&c.setDragImage(r,0,0),h.isOpera&&q.container.removeChild(r),c.clearData(),c.setData("Text",q.session.getTextRange()),A=!0,this.setState("drag")},this.onDragEnd=function(a){if(E.draggable=!1,A=!1,this.setState(null),!q.getReadOnly()){var b=a.dataTransfer.dropEffect;z||"move"!=b||q.session.remove(q.getSelectionRange()),q.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(u=a.clientX,v=a.clientY,t||l(),F++,a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragOver=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(u=a.clientX,v=a.clientY,t||(l(),F++),null!==G&&(G=null),a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragLeave=function(a){return F--,0>=F&&t?(m(),z=null,g.preventDefault(a)):void 0},this.onDrop=function(a){if(y){var b=a.dataTransfer;if(A)switch(z){case"move":x=x.contains(y.row,y.column)?{start:y,end:y}:q.moveText(x,y);break;case"copy":x=q.moveText(x,y,!0)}else{var c=b.getData("Text");x={start:y,end:q.session.insert(y,c)},q.focus(),z=null}return m(),g.preventDefault(a)}},g.addListener(E,"dragstart",this.onDragStart.bind(a)),g.addListener(E,"dragend",this.onDragEnd.bind(a)),g.addListener(E,"dragenter",this.onDragEnter.bind(a)),g.addListener(E,"dragover",this.onDragOver.bind(a)),g.addListener(E,"dragleave",this.onDragLeave.bind(a)),g.addListener(E,"drop",this.onDrop.bind(a));var G=null}function e(a,b,c,d){return Math.sqrt(Math.pow(c-a,2)+Math.pow(d-b,2))}var f=a("../lib/dom"),g=a("../lib/event"),h=a("../lib/useragent"),i=200,j=200,k=5;(function(){this.dragWait=function(){var a=Date.now()-this.mousedownEvent.time;a>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var a=this.editor.container;a.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(a){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var a=this.editor,b=a.container;b.draggable=!0,a.renderer.$cursorLayer.setBlinking(!1),a.setStyle("ace_dragging");var c=h.isWin?"default":"move";a.renderer.setCursorStyle(c),this.setState("dragReady")},this.onMouseDrag=function(a){var b=this.editor.container;if(h.isIE&&"dragReady"==this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>3&&b.dragDrop()}if("dragWait"===this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>0&&(b.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(a){if(this.$dragEnabled){this.mousedownEvent=a;var b=this.editor,c=a.inSelection(),d=a.getButton(),e=a.domEvent.detail||1;if(1===e&&0===d&&c){if(a.editor.inMultiSelectMode&&(a.getAccelKey()||a.getShiftKey()))return;this.mousedownEvent.time=Date.now();var f=a.domEvent.target||a.domEvent.srcElement;if("unselectable"in f&&(f.unselectable="on"),b.getDragDelay()){if(h.isWebKit){this.cancelDrag=!0;var g=b.container;g.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(a,this.onMouseDrag.bind(this)),a.defaultPrevented=!0}}}}).call(d.prototype),b.DragdropHandler=d}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict";var d=a("./dom");b.get=function(a,b){var c=new XMLHttpRequest;c.open("GET",a,!0),c.onreadystatechange=function(){4===c.readyState&&b(c.responseText)},c.send(null)},b.loadScript=function(a,b){var c=d.getDocumentHead(),e=document.createElement("script");e.src=a,c.appendChild(e),e.onload=e.onreadystatechange=function(a,c){(c||!e.readyState||"loaded"==e.readyState||"complete"==e.readyState)&&(e=e.onload=e.onreadystatechange=null,c||b())}},b.qualifyURL=function(a){var b=document.createElement("a");return b.href=a,b.href}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(a,b,c){"use strict";var d={},e=function(){this.propagationStopped=!0},f=function(){this.defaultPrevented=!0};d._emit=d._dispatchEvent=function(a,b){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var c=this._eventRegistry[a]||[],d=this._defaultHandlers[a];if(c.length||d){"object"==typeof b&&b||(b={}),b.type||(b.type=a),b.stopPropagation||(b.stopPropagation=e),b.preventDefault||(b.preventDefault=f),c=c.slice();for(var g=0;gr;r++){var t=q[r];0===t.name.indexOf("data-ace-")&&(g[f(t.name.replace(/^data-ace-/,""))]=t.value)}var u=p.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);u&&(h=u[1])}}h&&(g.base=g.base||h,g.packaged=!0),g.basePath=g.base,g.workerPath=g.workerPath||g.base,g.modePath=g.modePath||g.base,g.themePath=g.themePath||g.base,delete g.base;for(var v in g)"undefined"!=typeof g[v]&&b.set(v,g[v])}function f(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}var g=a("./lib/lang"),h=a("./lib/oop"),i=a("./lib/net"),j=a("./lib/event_emitter").EventEmitter,k=function(){return this}(),l={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};b.get=function(a){if(!l.hasOwnProperty(a))throw new Error("Unknown config key: "+a);return l[a]},b.set=function(a,b){if(!l.hasOwnProperty(a))throw new Error("Unknown config key: "+a);l[a]=b},b.all=function(){return g.copyObject(l)},h.implement(b,j),b.moduleUrl=function(a,b){if(l.$moduleUrls[a])return l.$moduleUrls[a];var c=a.split("/");b=b||c[c.length-2]||"";var d="snippets"==b?"/":"-",e=c[c.length-1];if("worker"==b&&"-"==d){var f=new RegExp("^"+b+"[\\-_]|[\\-_]"+b+"$","g");e=e.replace(f,"")}(!e||e==b)&&c.length>1&&(e=c[c.length-2]);var g=l[b+"Path"];return null==g?g=l.basePath:"/"==d&&(b=d=""),g&&"/"!=g.slice(-1)&&(g+="/"),g+b+d+e+this.get("suffix")},b.setModuleUrl=function(a,b){return l.$moduleUrls[a]=b},b.$loading={},b.loadModule=function(c,d){var e,f;Array.isArray(c)&&(f=c[0],c=c[1]);try{e=a(c)}catch(g){}if(e&&!b.$loading[c])return d&&d(e);if(b.$loading[c]||(b.$loading[c]=[]),b.$loading[c].push(d),!(b.$loading[c].length>1)){var h=function(){a([c],function(a){b._emit("load.module",{name:c,module:a});var d=b.$loading[c];b.$loading[c]=null,d.forEach(function(b){b&&b(a)})})};return b.get("packaged")?void i.loadScript(b.moduleUrl(c,f),h):h()}},e(!0),b.init=e;var m={setOptions:function(a){Object.keys(a).forEach(function(b){this.setOption(b,a[b])},this)},getOptions:function(a){var b={};return a?Array.isArray(a)||(b=a,a=Object.keys(b)):a=Object.keys(this.$options),a.forEach(function(a){b[a]=this.getOption(a)},this),b},setOption:function(a,b){if(this["$"+a]!==b){var c=this.$options[a];if(!c)return void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'));if(c.forwardTo)return this[c.forwardTo]&&this[c.forwardTo].setOption(a,b);c.handlesSet||(this["$"+a]=b),c&&c.set&&c.set.call(this,b)}},getOption:function(a){var b=this.$options[a];return b?b.forwardTo?this[b.forwardTo]&&this[b.forwardTo].getOption(a):b&&b.get?b.get.call(this):this["$"+a]:void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'))}},n={};b.defineOptions=function(a,b,c){return a.$options||(n[b]=a.$options={}),Object.keys(c).forEach(function(b){var d=c[b];"string"==typeof d&&(d={forwardTo:d}),d.name||(d.name=b),a.$options[d.name]=d,"initialValue"in d&&(a["$"+d.name]=d.initialValue)}),h.implement(a,m),this},b.resetOptions=function(a){Object.keys(a.$options).forEach(function(b){var c=a.$options[b];"value"in c&&a.setOption(b,c.value)})},b.setDefaultValue=function(a,c,d){var e=n[a]||(n[a]={});e[c]&&(e.forwardTo?b.setDefaultValue(e.forwardTo,c,d):e[c].value=d)},b.setDefaultValues=function(a,c){Object.keys(c).forEach(function(d){b.setDefaultValue(a,d,c[d])})}}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(a,b,c){"use strict";var d=a("../lib/event"),e=a("../lib/useragent"),f=a("./default_handlers").DefaultHandlers,g=a("./default_gutter_handler").GutterHandler,h=a("./mouse_event").MouseEvent,i=a("./dragdrop_handler").DragdropHandler,j=a("../config"),k=function(a){var b=this;this.editor=a,new f(this),new g(this),new i(this);var c=function(b){!a.isFocused()&&a.textInput&&a.textInput.moveToMouse(b),a.focus()},h=a.renderer.getMouseEventTarget();d.addListener(h,"click",this.onMouseEvent.bind(this,"click")),d.addListener(h,"mousemove",this.onMouseMove.bind(this,"mousemove")),d.addMultiMouseDownListener(h,[400,300,250],this,"onMouseEvent"),a.renderer.scrollBarV&&(d.addMultiMouseDownListener(a.renderer.scrollBarV.inner,[400,300,250],this,"onMouseEvent"),d.addMultiMouseDownListener(a.renderer.scrollBarH.inner,[400,300,250],this,"onMouseEvent"),e.isIE&&(d.addListener(a.renderer.scrollBarV.element,"mousedown",c),d.addListener(a.renderer.scrollBarH.element,"mousemove",c))),d.addMouseWheelListener(a.container,this.onMouseWheel.bind(this,"mousewheel"));var j=a.renderer.$gutter;d.addListener(j,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),d.addListener(j,"click",this.onMouseEvent.bind(this,"gutterclick")),d.addListener(j,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),d.addListener(j,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),d.addListener(h,"mousedown",c),d.addListener(j,"mousedown",function(b){return a.focus(),d.preventDefault(b)}),a.on("mousemove",function(c){if(!b.state&&!b.$dragDelay&&b.$dragEnabled){var d=a.renderer.screenToTextCoordinates(c.x,c.y),e=a.session.selection.getRange(),f=a.renderer;f.setCursorStyle(!e.isEmpty()&&e.insideStart(d.row,d.column)?"default":"")}})};(function(){this.onMouseEvent=function(a,b){this.editor._emit(a,new h(b,this.editor))},this.onMouseMove=function(a,b){var c=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;c&&c.length&&this.editor._emit(a,new h(b,this.editor))},this.onMouseWheel=function(a,b){var c=new h(b,this.editor);c.speed=2*this.$scrollSpeed,c.wheelX=b.wheelX,c.wheelY=b.wheelY,this.editor._emit(a,c)},this.setState=function(a){this.state=a},this.captureMouse=function(a,b){this.x=a.x,this.y=a.y,this.isMousePressed=!0;var c=this.editor.renderer;c.$keepTextAreaAtCursor&&(c.$keepTextAreaAtCursor=null);var f=this,g=function(a){if(a){if(e.isWebKit&&!a.which&&f.releaseMouse)return f.releaseMouse();f.x=a.clientX,f.y=a.clientY,b&&b(a),f.mouseEvent=new h(a,f.editor),f.$mouseMoved=!0}},i=function(a){clearInterval(k),j(),f[f.state+"End"]&&f[f.state+"End"](a),f.state="",null==c.$keepTextAreaAtCursor&&(c.$keepTextAreaAtCursor=!0,c.$moveTextAreaToCursor()),f.isMousePressed=!1,f.$onCaptureMouseMove=f.releaseMouse=null,a&&f.onMouseEvent("mouseup",a)},j=function(){f[f.state]&&f[f.state](),f.$mouseMoved=!1};if(e.isOldIE&&"dblclick"==a.domEvent.type)return setTimeout(function(){i(a)});f.$onCaptureMouseMove=g,f.releaseMouse=d.capture(this.editor.container,g,i);var k=setInterval(j,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var a=function(b){b&&b.domEvent&&"contextmenu"!=b.domEvent.type||(this.editor.off("nativecontextmenu",a),b&&b.domEvent&&d.stopEvent(b.domEvent))}.bind(this);setTimeout(a,10),this.editor.on("nativecontextmenu",a)}}).call(k.prototype),j.defineOptions(k.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:e.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),b.MouseHandler=k}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(a,b,c){"use strict";function d(a){a.on("click",function(b){var c=b.getDocumentPosition(),d=a.session,e=d.getFoldAt(c.row,c.column,1);e&&(b.getAccelKey()?d.removeFold(e):d.expandFold(e),b.stop())}),a.on("gutterclick",function(b){var c=a.renderer.$gutterLayer.getRegion(b);if("foldWidgets"==c){var d=b.getDocumentPosition().row,e=a.session;e.foldWidgets&&e.foldWidgets[d]&&a.session.onFoldWidgetClick(d,b),a.isFocused()||a.focus(),b.stop()}}),a.on("gutterdblclick",function(b){var c=a.renderer.$gutterLayer.getRegion(b);if("foldWidgets"==c){var d=b.getDocumentPosition().row,e=a.session,f=e.getParentFoldRangeData(d,!0),g=f.range||f.firstRange;if(g){d=g.start.row;var h=e.getFoldAt(d,e.getLine(d).length,1);h?e.removeFold(h):(e.addFold("...",g),a.renderer.scrollCursorIntoView({row:g.start.row,column:0}))}b.stop()}})}b.FoldHandler=d}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(a,b,c){"use strict";var d=a("../lib/keys"),e=a("../lib/event"),f=function(a){this.$editor=a,this.$data={editor:a},this.$handlers=[],this.setDefaultHandler(a.commands)};(function(){this.setDefaultHandler=function(a){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=a,this.addKeyboardHandler(a,0)},this.setKeyboardHandler=function(a){var b=this.$handlers;if(b[b.length-1]!=a){for(;b[b.length-1]&&b[b.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(b[b.length-1]);this.addKeyboardHandler(a,1)}},this.addKeyboardHandler=function(a,b){if(a){"function"!=typeof a||a.handleKeyboard||(a.handleKeyboard=a);var c=this.$handlers.indexOf(a);-1!=c&&this.$handlers.splice(c,1),void 0==b?this.$handlers.push(a):this.$handlers.splice(b,0,a),-1==c&&a.attach&&a.attach(this.$editor)}},this.removeKeyboardHandler=function(a){var b=this.$handlers.indexOf(a);return-1==b?!1:(this.$handlers.splice(b,1),a.detach&&a.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.getStatusText=function(){var a=this.$data,b=a.editor;return this.$handlers.map(function(c){return c.getStatusText&&c.getStatusText(b,a)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(a,b,c,d){for(var f,g=!1,h=this.$editor.commands,i=this.$handlers.length;i--&&(f=this.$handlers[i].handleKeyboard(this.$data,a,b,c,d),!(f&&f.command&&(g="null"==f.command?!0:h.exec(f.command,this.$editor,f.args,d),g&&d&&-1!=a&&1!=f.passEvent&&1!=f.command.passEvent&&e.stopEvent(d),g))););return g},this.onCommandKey=function(a,b,c){var e=d.keyCodeToString(c);this.$callKeyboardHandlers(b,e,c,a)},this.onTextInput=function(a){var b=this.$callKeyboardHandlers(-1,a);b||this.$editor.commands.exec("insertstring",this.$editor,a)}}).call(f.prototype),b.KeyBinding=f}),ace.define("ace/range",["require","exports","module"],function(a,b,c){"use strict";var d=function(a,b){return a.row-b.row||a.column-b.column},e=function(a,b,c,d){ +this.start={row:a,column:b},this.end={row:c,column:d}};(function(){this.isEqual=function(a){return this.start.row===a.start.row&&this.end.row===a.end.row&&this.start.column===a.start.column&&this.end.column===a.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(a,b){return 0==this.compare(a,b)},this.compareRange=function(a){var b,c=a.end,d=a.start;return b=this.compare(c.row,c.column),1==b?(b=this.compare(d.row,d.column),1==b?2:0==b?1:0):-1==b?-2:(b=this.compare(d.row,d.column),-1==b?-1:1==b?42:0)},this.comparePoint=function(a){return this.compare(a.row,a.column)},this.containsRange=function(a){return 0==this.comparePoint(a.start)&&0==this.comparePoint(a.end)},this.intersects=function(a){var b=this.compareRange(a);return-1==b||0==b||1==b},this.isEnd=function(a,b){return this.end.row==a&&this.end.column==b},this.isStart=function(a,b){return this.start.row==a&&this.start.column==b},this.setStart=function(a,b){"object"==typeof a?(this.start.column=a.column,this.start.row=a.row):(this.start.row=a,this.start.column=b)},this.setEnd=function(a,b){"object"==typeof a?(this.end.column=a.column,this.end.row=a.row):(this.end.row=a,this.end.column=b)},this.inside=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)||this.isStart(a,b)?!1:!0:!1},this.insideStart=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)?!1:!0:!1},this.insideEnd=function(a,b){return 0==this.compare(a,b)?this.isStart(a,b)?!1:!0:!1},this.compare=function(a,b){return this.isMultiLine()||a!==this.start.row?athis.end.row?1:this.start.row===a?b>=this.start.column?0:-1:this.end.row===a?b<=this.end.column?0:1:0:bthis.end.column?1:0},this.compareStart=function(a,b){return this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.compareEnd=function(a,b){return this.end.row==a&&this.end.column==b?1:this.compare(a,b)},this.compareInside=function(a,b){return this.end.row==a&&this.end.column==b?1:this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.clipRows=function(a,b){if(this.end.row>b)var c={row:b+1,column:0};else if(this.end.rowb)var d={row:b+1,column:0};else if(this.start.rowb.row||a.row==b.row&&a.column>b.column},this.getRange=function(){var a=this.anchor,b=this.lead;return this.isEmpty()?g.fromPoints(b,b):this.isBackwards()?g.fromPoints(b,a):g.fromPoints(a,b)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var a=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(a,this.doc.getLine(a).length)},this.setRange=this.setSelectionRange=function(a,b){b?(this.setSelectionAnchor(a.end.row,a.end.column),this.selectTo(a.start.row,a.start.column)):(this.setSelectionAnchor(a.start.row,a.start.column),this.selectTo(a.end.row,a.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(a){var b=this.lead;this.$isEmpty&&this.setSelectionAnchor(b.row,b.column),a.call(this)},this.selectTo=function(a,b){this.$moveSelection(function(){this.moveCursorTo(a,b)})},this.selectToPosition=function(a){this.$moveSelection(function(){this.moveCursorToPosition(a)})},this.moveTo=function(a,b){this.clearSelection(),this.moveCursorTo(a,b)},this.moveToPosition=function(a){this.clearSelection(),this.moveCursorToPosition(a)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(a,b){if("undefined"==typeof b){var c=a||this.lead;a=c.row,b=c.column}return this.session.getWordRange(a,b)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var a=this.getCursor(),b=this.session.getAWordRange(a.row,a.column);this.setSelectionRange(b)},this.getLineRange=function(a,b){var c,d="number"==typeof a?a:this.lead.row,e=this.session.getFoldLine(d);return e?(d=e.start.row,c=e.end.row):c=d,b===!0?new g(d,0,c,this.session.getLine(c).length):new g(d,0,c+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,-1))this.moveCursorTo(a.start.row,a.start.column);else if(0===b.column)b.row>0&&this.moveCursorTo(b.row-1,this.doc.getLine(b.row-1).length);else{var c=this.session.getTabSize();this.session.isTabStop(b)&&this.doc.getLine(b.row).slice(b.column-c,b.column).split(" ").length-1==c?this.moveCursorBy(0,-c):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,1))this.moveCursorTo(a.end.row,a.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(b.column=d)}}this.moveCursorTo(b.row,b.column)},this.moveCursorFileEnd=function(){var a=this.doc.getLength()-1,b=this.doc.getLine(a).length;this.moveCursorTo(a,b)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var a,b=this.lead.row,c=this.lead.column,d=this.doc.getLine(b),e=d.substring(c);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var f=this.session.getFoldAt(b,c,1);return f?void this.moveCursorTo(f.end.row,f.end.column):((a=this.session.nonTokenRe.exec(e))&&(c+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,e=d.substring(c)),c>=d.length?(this.moveCursorTo(b,d.length),this.moveCursorRight(),void(b=c?(this.moveCursorTo(b,0),this.moveCursorLeft(),void(b>0&&this.moveCursorWordLeft())):((f=this.session.tokenRe.exec(g))&&(c-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),void this.moveCursorTo(b,c))},this.$shortWordEndIndex=function(a){var b,c,d=0,e=/\s/,f=this.session.tokenRe;if(f.lastIndex=0,b=this.session.tokenRe.exec(a))d=this.session.tokenRe.lastIndex;else{for(;(c=a[d])&&e.test(c);)d++;if(1>d)for(f.lastIndex=0;(c=a[d])&&!f.test(c);)if(f.lastIndex=0,d++,e.test(c)){if(d>2){d--;break}for(;(c=a[d])&&e.test(c);)d++;if(d>2)break}}return f.lastIndex=0,d},this.moveCursorShortWordRight=function(){var a=this.lead.row,b=this.lead.column,c=this.doc.getLine(a),d=c.substring(b),e=this.session.getFoldAt(a,b,1);if(e)return this.moveCursorTo(e.end.row,e.end.column);if(b==c.length){var f=this.doc.getLength();do a++,d=this.doc.getLine(a);while(f>a&&/^\s*$/.test(d));/^\s+/.test(d)||(d=""),b=0}var g=this.$shortWordEndIndex(d);this.moveCursorTo(a,b+g)},this.moveCursorShortWordLeft=function(){var a,b=this.lead.row,c=this.lead.column;if(a=this.session.getFoldAt(b,c,-1))return this.moveCursorTo(a.start.row,a.start.column);var d=this.session.getLine(b).substring(0,c);if(0===c){do b--,d=this.doc.getLine(b);while(b>0&&/^\s*$/.test(d));c=d.length,/\s+$/.test(d)||(d="")}var f=e.stringReverse(d),g=this.$shortWordEndIndex(f);return this.moveCursorTo(b,c-g)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(a,b){var c=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===b&&(this.$desiredColumn?c.column=this.$desiredColumn:this.$desiredColumn=c.column);var d=this.session.screenToDocumentPosition(c.row+a,c.column);0!==a&&0===b&&d.row===this.lead.row&&d.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[d.row]&&d.row++,this.moveCursorTo(d.row,d.column+b,0===b)},this.moveCursorToPosition=function(a){this.moveCursorTo(a.row,a.column)},this.moveCursorTo=function(a,b,c){var d=this.session.getFoldAt(a,b,1);d&&(a=d.start.row,b=d.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(a,b),this.$keepDesiredColumnOnChange=!1,c||(this.$desiredColumn=null)},this.moveCursorToScreen=function(a,b,c){var d=this.session.screenToDocumentPosition(a,b);this.moveCursorTo(d.row,d.column,c)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(a){this.setSelectionRange(a,a.cursor==a.start),this.$desiredColumn=a.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(a){var b=this.getRange();return a?(a.start.column=b.start.column,a.start.row=b.start.row,a.end.column=b.end.column,a.end.row=b.end.row):a=b,a.cursor=this.isBackwards()?a.start:a.end,a.desiredColumn=this.$desiredColumn,a},this.getRangeOfMovements=function(a){var b=this.getCursor();try{a.call(null,this);var c=this.getCursor();return g.fromPoints(b,c)}catch(d){return g.fromPoints(b,b)}finally{this.moveCursorToPosition(b)}},this.toJSON=function(){if(this.rangeCount)var a=this.ranges.map(function(a){var b=a.clone();return b.isBackwards=a.cursor==a.start,b});else{var a=this.getRange();a.isBackwards=this.isBackwards()}return a},this.fromJSON=function(a){if(void 0==a.start){if(this.rangeList){this.toSingleRange(a[0]);for(var b=a.length;b--;){var c=g.fromPoints(a[b].start,a[b].end);a.isBackwards&&(c.cursor=c.start),this.addRange(c,!0)}return}a=a[0]}this.rangeList&&this.toSingleRange(a),this.setSelectionRange(a,a.isBackwards)},this.isEqual=function(a){if((a.length||this.rangeCount)&&a.length!=this.rangeCount)return!1;if(!a.length||!this.ranges)return this.getRange().isEqual(a);for(var b=this.ranges.length;b--;)if(!this.ranges[b].isEqual(a[b]))return!1;return!0}}).call(h.prototype),b.Selection=h}),ace.define("ace/tokenizer",["require","exports","module"],function(a,b,c){"use strict";var d=2e3,e=function(a){this.states=a,this.regExps={},this.matchMappings={};for(var b in this.states){for(var c=this.states[b],d=[],e=0,f=this.matchMappings[b]={defaultToken:"text"},g="g",h=[],i=0;i1?j.onMatch=this.$applyToken:j.onMatch=j.token),l>1&&(/\\\d/.test(j.regex)?k=j.regex.replace(/\\([0-9]+)/g,function(a,b){return"\\"+(parseInt(b,10)+e+1)}):(l=1,k=this.removeCapturingGroups(j.regex)),j.splitRegex||"string"==typeof j.token||h.push(j)),f[e]=i,e+=l,d.push(k),j.onMatch||(j.onMatch=null)}}d.length||(f[0]=0,d.push("$")),h.forEach(function(a){a.splitRegex=this.createSplitterRegexp(a.regex,g)},this),this.regExps[b]=new RegExp("("+d.join(")|(")+")|($)",g)}};(function(){this.$setMaxTokenCount=function(a){d=0|a},this.$applyToken=function(a){var b=this.splitRegex.exec(a).slice(1),c=this.token.apply(this,b);if("string"==typeof c)return[{type:c,value:a}];for(var d=[],e=0,f=c.length;f>e;e++)b[e]&&(d[d.length]={type:c[e],value:b[e]});return d},this.$arrayTokens=function(a){if(!a)return[];var b=this.splitRegex.exec(a);if(!b)return"text";for(var c=[],d=this.tokenArray,e=0,f=d.length;f>e;e++)b[e+1]&&(c[c.length]={type:d[e],value:b[e+1]});return c},this.removeCapturingGroups=function(a){var b=a.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(a,b){return b?"(?:":a});return b},this.createSplitterRegexp=function(a,b){if(-1!=a.indexOf("(?=")){var c=0,d=!1,e={};a.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(a,b,f,g,h,i){return d?d="]"!=h:h?d=!0:g?(c==e.stack&&(e.end=i+1,e.stack=-1),c--):f&&(c++,1!=f.length&&(e.stack=c,e.start=i)),a}),null!=e.end&&/^\)*$/.test(a.substr(e.end))&&(a=a.substring(0,e.start)+a.substr(e.end))}return new RegExp(a,(b||"").replace("g",""))},this.getLineTokens=function(a,b){if(b&&"string"!=typeof b){var c=b.slice(0);b=c[0],"#tmp"===b&&(c.shift(),b=c.shift())}else var c=[];var e=b||"start",f=this.states[e];f||(e="start",f=this.states[e]);var g=this.matchMappings[e],h=this.regExps[e];h.lastIndex=0;for(var i,j=[],k=0,l=0,m={type:null,value:""};i=h.exec(a);){var n=g.defaultToken,o=null,p=i[0],q=h.lastIndex;if(q-p.length>k){var r=a.substring(k,q-p.length);m.type==n?m.value+=r:(m.type&&j.push(m),m={type:n,value:r})}for(var s=0;sd){for(l>2*a.length&&this.reportError("infinite loop with in ace tokenizer",{startState:b,line:a});k1&&c[0]!==e&&c.unshift("#tmp",e),{tokens:j,state:c.length?c:e}},this.reportError=function(a,b){var c=new Error(a);c.data=b,"object"==typeof console&&console.error&&console.error(c),setTimeout(function(){throw c})}}).call(e.prototype),b.Tokenizer=e}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(a,b,c){"use strict";var d=a("../lib/lang"),e=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(a,b){if(b)for(var c in a){for(var d=a[c],e=0;e=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var a=this.$rowTokens,b=this.$tokenIndex,c=a[b].start;if(void 0!==c)return c;for(c=0;b>0;)b-=1,c+=a[b].value.length;return c}}).call(d.prototype),b.TokenIterator=d}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(a,b,c){"use strict";var d=a("../tokenizer").Tokenizer,e=a("./text_highlight_rules").TextHighlightRules,f=a("./behaviour").Behaviour,g=a("../unicode"),h=a("../lib/lang"),i=a("../token_iterator").TokenIterator,j=a("../range").Range,k=function(){this.HighlightRules=e,this.$behaviour=new f};(function(){this.tokenRe=new RegExp("^["+g.packages.L+g.packages.Mn+g.packages.Mc+g.packages.Nd+g.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+g.packages.L+g.packages.Mn+g.packages.Mc+g.packages.Nd+g.packages.Pc+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules,this.$tokenizer=new d(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(a,b,c,d){function e(a){for(var b=c;d>=b;b++)a(f.getLine(b),b)}var f=b.doc,g=!0,i=!0,j=1/0,k=b.getTabSize(),l=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var m=this.lineCommentStart.map(h.escapeRegExp).join("|"),n=this.lineCommentStart[0];else var m=h.escapeRegExp(this.lineCommentStart),n=this.lineCommentStart;m=new RegExp("^(\\s*)(?:"+m+") ?"),l=b.getUseSoftTabs();var o=function(a,b){var c=a.match(m);if(c){var d=c[1].length,e=c[0].length;s(a,d,e)||" "!=c[0][e-1]||e--,f.removeInLine(b,d,e)}},p=n+" ",q=function(a,b){(!g||/\S/.test(a))&&(s(a,j,j)?f.insertInLine({row:b,column:j},p):f.insertInLine({row:b,column:j},n))},r=function(a,b){return m.test(a)},s=function(a,b,c){for(var d=0;b--&&" "==a.charAt(b);)d++;if(d%k!=0)return!1;for(var d=0;" "==a.charAt(c++);)d++;return k>2?d%k!=k-1:d%k==0}}else{if(!this.blockComment)return!1;var n=this.blockComment.start,t=this.blockComment.end,m=new RegExp("^(\\s*)(?:"+h.escapeRegExp(n)+")"),u=new RegExp("(?:"+h.escapeRegExp(t)+")\\s*$"),q=function(a,b){r(a,b)||(!g||/\S/.test(a))&&(f.insertInLine({row:b,column:a.length},t),f.insertInLine({row:b,column:j},n))},o=function(a,b){var c;(c=a.match(u))&&f.removeInLine(b,a.length-c[0].length,a.length),(c=a.match(m))&&f.removeInLine(b,c[1].length,c[0].length)},r=function(a,c){if(m.test(a))return!0;for(var d=b.getTokens(c),e=0;ec&&(j=c),i&&!r(a,b)&&(i=!1)):v>a.length&&(v=a.length)}),j==1/0&&(j=v,g=!1,i=!1),l&&j%k!=0&&(j=Math.floor(j/k)*k),e(i?o:q)},this.toggleBlockComment=function(a,b,c,d){var e=this.blockComment;if(e){!e.start&&e[0]&&(e=e[0]);var f,g,h=new i(b,d.row,d.column),k=h.getCurrentToken(),l=(b.selection,b.selection.toOrientedRange());if(k&&/comment/.test(k.type)){for(var m,n;k&&/comment/.test(k.type);){var o=k.value.indexOf(e.start);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;m=new j(p,q,p,q+e.start.length);break}k=h.stepBackward()}for(var h=new i(b,d.row,d.column),k=h.getCurrentToken();k&&/comment/.test(k.type);){var o=k.value.indexOf(e.end);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;n=new j(p,q,p,q+e.end.length);break}k=h.stepForward()}n&&b.remove(n),m&&(b.remove(m),f=m.start.row,g=-e.start.length)}else g=e.start.length,f=c.start.row,b.insert(c.end,e.end),b.insert(c.start,e.start);l.start.row==f&&(l.start.column+=g),l.end.row==f&&(l.end.column+=g),b.selection.fromOrientedRange(l)}},this.getNextLineIndent=function(a,b,c){return this.$getIndent(b)},this.checkOutdent=function(a,b,c){return!1},this.autoOutdent=function(a,b,c){},this.$getIndent=function(a){return a.match(/^\s*/)[0]},this.createWorker=function(a){return null},this.createModeDelegates=function(a){this.$embeds=[],this.$modes={};for(var b in a)a[b]&&(this.$embeds.push(b),this.$modes[b]=new a[b]);for(var c=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],b=0;bf;f++)if("string"==typeof e[f].token)/keyword|support|storage/.test(e[f].token)&&c.push(e[f].regex);else if("object"==typeof e[f].token)for(var h=0,i=e[f].token.length;i>h;h++)if(/keyword|support|storage/.test(e[f].token[h])){var d=e[f].regex.match(/\(.+?\)/g)[h];c.push(d.substr(1,d.length-2))}this.completionKeywords=c}return a?c.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(a,b,c,d){var e=this.$keywordList||this.$createKeywordList();return e.map(function(a){return{name:a,value:a,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(k.prototype),b.Mode=k}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=b.Anchor=function(a,b,c){this.$onChange=this.onChange.bind(this),this.attach(a),"undefined"==typeof c?this.setPosition(b.row,b.column):this.setPosition(b,c)};(function(){d.implement(this,e),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(a){var b=a.data,c=b.range;if((c.start.row!=c.end.row||c.start.row==this.row)&&!(c.start.row>this.row||c.start.row==this.row&&c.start.column>this.column)){var d=this.row,e=this.column,f=c.start,g=c.end;"insertText"===b.action?f.row===d&&f.column<=e?f.column===e&&this.$insertRight||(f.row===g.row?e+=g.column-f.column:(e-=f.column,d+=g.row-f.row)):f.row!==g.row&&f.row=e?f.column:Math.max(0,e-(g.column-f.column)):f.row!==g.row&&f.row=this.document.getLength()?(c.row=Math.max(0,this.document.getLength()-1),c.column=this.document.getLine(c.row).length):0>a?(c.row=0,c.column=0):(c.row=a,c.column=Math.min(this.document.getLine(c.row).length,Math.max(0,b))),0>b&&(c.column=0),c}}).call(f.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=a("./range").Range,g=a("./anchor").Anchor,h=function(a){this.$lines=[],0===a.length?this.$lines=[""]:Array.isArray(a)?this._insertLines(0,a):this.insert({row:0,column:0},a)};(function(){d.implement(this,e),this.setValue=function(a){var b=this.getLength();this.remove(new f(0,0,b,this.getLine(b-1).length)),this.insert({row:0,column:0},a)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(a,b){return new g(this,a,b)},0==="aaa".split(/a/).length?this.$split=function(a){return a.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(a){return a.split(/\r\n|\r|\n/)},this.$detectNewLine=function(a){var b=a.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=b?b[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(a){this.$newLineMode!==a&&(this.$newLineMode=a,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(a){return"\r\n"==a||"\r"==a||"\n"==a},this.getLine=function(a){return this.$lines[a]||""},this.getLines=function(a,b){return this.$lines.slice(a,b+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(a){if(a.start.row==a.end.row)return this.getLine(a.start.row).substring(a.start.column,a.end.column);var b=this.getLines(a.start.row,a.end.row);b[0]=(b[0]||"").substring(a.start.column);var c=b.length-1;return a.end.row-a.start.row==c&&(b[c]=b[c].substring(0,a.end.column)),b.join(this.getNewLineCharacter())},this.$clipPosition=function(a){var b=this.getLength();return a.row>=b?(a.row=Math.max(0,b-1),a.column=this.getLine(b-1).length):a.row<0&&(a.row=0),a},this.insert=function(a,b){if(!b||0===b.length)return a;a=this.$clipPosition(a),this.getLength()<=1&&this.$detectNewLine(b);var c=this.$split(b),d=c.splice(0,1)[0],e=0==c.length?null:c.splice(c.length-1,1)[0];return a=this.insertInLine(a,d),null!==e&&(a=this.insertNewLine(a),a=this._insertLines(a.row,c),a=this.insertInLine(a,e||"")),a},this.insertLines=function(a,b){return a>=this.getLength()?this.insert({row:a,column:0},"\n"+b.join("\n")):this._insertLines(Math.max(a,0),b)},this._insertLines=function(a,b){if(0==b.length)return{row:a,column:0};for(;b.length>61440;){var c=this._insertLines(a,b.slice(0,61440));b=b.slice(61440),a=c.row}var d=[a,0];d.push.apply(d,b),this.$lines.splice.apply(this.$lines,d);var e=new f(a,0,a+b.length,0),g={action:"insertLines",range:e,lines:b};return this._signal("change",{data:g}),e.end},this.insertNewLine=function(a){a=this.$clipPosition(a);var b=this.$lines[a.row]||"";this.$lines[a.row]=b.substring(0,a.column),this.$lines.splice(a.row+1,0,b.substring(a.column,b.length));var c={row:a.row+1,column:0},d={action:"insertText",range:f.fromPoints(a,c),text:this.getNewLineCharacter()};return this._signal("change",{data:d}),c},this.insertInLine=function(a,b){if(0==b.length)return a;var c=this.$lines[a.row]||"";this.$lines[a.row]=c.substring(0,a.column)+b+c.substring(a.column);var d={row:a.row,column:a.column+b.length},e={action:"insertText",range:f.fromPoints(a,d),text:b};return this._signal("change",{data:e}),d},this.remove=function(a){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),a.start=this.$clipPosition(a.start),a.end=this.$clipPosition(a.end),a.isEmpty())return a.start;var b=a.start.row,c=a.end.row;if(a.isMultiLine()){var d=0==a.start.column?b:b+1,e=c-1;a.end.column>0&&this.removeInLine(c,0,a.end.column),e>=d&&this._removeLines(d,e),d!=b&&(this.removeInLine(b,a.start.column,this.getLine(b).length),this.removeNewLine(a.start.row))}else this.removeInLine(b,a.start.column,a.end.column);return a.start},this.removeInLine=function(a,b,c){if(b!=c){var d=new f(a,b,a,c),e=this.getLine(a),g=e.substring(b,c),h=e.substring(0,b)+e.substring(c,e.length);this.$lines.splice(a,1,h);var i={action:"removeText",range:d,text:g};return this._signal("change",{data:i}),d.start}},this.removeLines=function(a,b){return 0>a||b>=this.getLength()?this.remove(new f(a,0,b+1,0)):this._removeLines(a,b)},this._removeLines=function(a,b){var c=new f(a,0,b+1,0),d=this.$lines.splice(a,b-a+1),e={action:"removeLines",range:c,nl:this.getNewLineCharacter(),lines:d};return this._signal("change",{data:e}),d},this.removeNewLine=function(a){var b=this.getLine(a),c=this.getLine(a+1),d=new f(a,b.length,a+1,0),e=b+c;this.$lines.splice(a,2,e);var g={action:"removeText",range:d,text:this.getNewLineCharacter()};this._signal("change",{data:g})},this.replace=function(a,b){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),0==b.length&&a.isEmpty())return a.start;if(b==this.getTextRange(a))return a.end;if(this.remove(a),b)var c=this.insert(a.start,b);else c=a.start;return c},this.applyDeltas=function(a){for(var b=0;b=0;b--){var c=a[b],d=f.fromPoints(c.range.start,c.range.end);"insertLines"==c.action?this._removeLines(d.start.row,d.end.row-1):"insertText"==c.action?this.remove(d):"removeLines"==c.action?this._insertLines(d.start.row,c.lines):"removeText"==c.action&&this.insert(d.start,c.text)}},this.indexToPosition=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=b||0,f=c.length;f>e;e++)if(a-=c[e].length+d,0>a)return{row:e,column:a+c[e].length+d};return{row:f-1,column:c[f-1].length}},this.positionToIndex=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=0,f=Math.min(a.row,c.length),g=b||0;f>g;++g)e+=c[g].length+d;return e+a.column}}).call(h.prototype),b.Document=h}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=function(a,b){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=a;var c=this;this.$worker=function(){if(c.running){for(var a=new Date,b=c.currentLine,d=-1,e=c.doc;c.lines[b];)b++;var f=b,g=e.getLength(),h=0;for(c.running=!1;g>b;){c.$tokenizeRow(b),d=b;do b++;while(c.lines[b]);if(h++,h%5===0&&new Date-a>20){c.running=setTimeout(c.$worker,20);break}}c.currentLine=b,d>=f&&c.fireUpdateEvent(f,d)}}};(function(){d.implement(this,e),this.setTokenizer=function(a){this.tokenizer=a,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(a){this.doc=a,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(a,b){var c={first:a,last:b};this._signal("update",{data:c})},this.start=function(a){this.currentLine=Math.min(a||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(a){var b=a.range,c=b.start.row,d=b.end.row-c;if(0===d)this.lines[c]=null;else if("removeText"==a.action||"removeLines"==a.action)this.lines.splice(c,d+1,null),this.states.splice(c,d+1,null);else{var e=Array(d+1);e.unshift(c,1),this.lines.splice.apply(this.lines,e),this.states.splice.apply(this.states,e)}this.currentLine=Math.min(c,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(a){return this.lines[a]||this.$tokenizeRow(a)},this.getState=function(a){return this.currentLine==a&&this.$tokenizeRow(a), +this.states[a]||"start"},this.$tokenizeRow=function(a){var b=this.doc.getLine(a),c=this.states[a-1],d=this.tokenizer.getLineTokens(b,c,a);return this.states[a]+""!=d.state+""?(this.states[a]=d.state,this.lines[a+1]=null,this.currentLine>a+1&&(this.currentLine=a+1)):this.currentLine==a&&(this.currentLine=a+1),this.lines[a]=d.tokens}}).call(f.prototype),b.BackgroundTokenizer=f}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(a,b,c){"use strict";var d=a("./lib/lang"),e=(a("./lib/oop"),a("./range").Range),f=function(a,b,c){this.setRegexp(a),this.clazz=b,this.type=c||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(a){this.regExp+""!=a+""&&(this.regExp=a,this.cache=[])},this.update=function(a,b,c,f){if(this.regExp)for(var g=f.firstRow,h=f.lastRow,i=g;h>=i;i++){var j=this.cache[i];null==j&&(j=d.getMatchOffsets(c.getLine(i),this.regExp),j.length>this.MAX_RANGES&&(j=j.slice(0,this.MAX_RANGES)),j=j.map(function(a){return new e(i,a.offset,i,a.offset+a.length)}),this.cache[i]=j.length?j:"");for(var k=j.length;k--;)b.drawSingleLineMarker(a,j[k].toScreenRange(c),this.clazz,f)}}}).call(f.prototype),b.SearchHighlight=f}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(a,b,c){"use strict";function d(a,b){this.foldData=a,Array.isArray(b)?this.folds=b:b=this.folds=[b];var c=b[b.length-1];this.range=new e(b[0].start.row,b[0].start.column,c.end.row,c.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(a){a.setFoldLine(this)},this)}var e=a("../range").Range;(function(){this.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(b){b.start.row+=a,b.end.row+=a})},this.addFold=function(a){if(a.sameRow){if(a.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(a,b){return-a.range.compareEnd(b.start.row,b.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else{if(a.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column}a.foldLine=this},this.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},this.walk=function(a,b,c){var d,e,f,g=0,h=this.folds,i=!0;null==b&&(b=this.end.row,c=this.end.column);for(var j=0;ja)return{row:d.start.row,column:d.start.column+a};if(a-=d.placeholder.length,0>a)return d.start;b=d.end.column}return{row:this.end.row,column:this.end.column+a}}}).call(d.prototype),b.FoldLine=d}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(a,b,c){"use strict";var d=a("./range").Range,e=d.comparePoints,f=function(){this.ranges=[]};(function(){this.comparePoints=e,this.pointIndex=function(a,b,c){for(var d=this.ranges,f=c||0;f0)){var i=e(a,g.start);return 0===h?b&&0!==i?-f-2:f:i>0||0===i&&!b?f:-f-1}}return-f-1},this.add=function(a){var b=!a.isEmpty(),c=this.pointIndex(a.start,b);0>c&&(c=-c-1);var d=this.pointIndex(a.end,b,c);return 0>d?d=-d-1:d++,this.ranges.splice(c,d-c,a)},this.addList=function(a){for(var b=[],c=a.length;c--;)b.push.call(b,this.add(a[c]));return b},this.substractPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges.splice(b,1):void 0},this.merge=function(){var a=[],b=this.ranges;b=b.sort(function(a,b){return e(a.start,b.start)});for(var c,d=b[0],f=1;fg||(0!=g||c.isEmpty()||d.isEmpty())&&(e(c.end,d.end)<0&&(c.end.row=d.end.row,c.end.column=d.end.column),b.splice(f,1),a.push(d),d=c,f--)}return this.ranges=b,a},this.contains=function(a,b){return this.pointIndex({row:a,column:b})>=0},this.containsPoint=function(a){return this.pointIndex(a)>=0},this.rangeAtPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges[b]:void 0},this.clipRows=function(a,b){var c=this.ranges;if(c[0].start.row>b||c[c.length-1].start.rowd&&(d=-d-1);var e=this.pointIndex({row:b,column:0},d);0>e&&(e=-e-1);for(var f=[],g=d;e>g;g++)f.push(c[g]);return f},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(a){this.session&&this.detach(),this.session=a,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(a){var b=a.data.range;if("i"==a.data.action[0])var c=b.start,d=b.end;else var d=b.start,c=b.end;for(var e=c.row,f=d.row,g=f-e,h=-c.column+d.column,i=this.ranges,j=0,k=i.length;k>j;j++){var l=i[j];if(!(l.end.rowe)break;if(l.start.row==e&&l.start.column>=c.column&&(l.start.column==c.column&&this.$insertRight||(l.start.column+=h,l.start.row+=g)),l.end.row==e&&l.end.column>=c.column){if(l.end.column==c.column&&this.$insertRight)continue;l.end.column==c.column&&h>0&&k-1>j&&l.end.column>l.start.column&&l.end.column==i[j+1].start.column&&(l.end.column-=h),l.end.column+=h,l.end.row+=g}}}if(0!=g&&k>j)for(;k>j;j++){var l=i[j];l.start.row+=g,l.end.row+=g}}}).call(f.prototype),b.RangeList=f}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(a,b,c){"use strict";function d(a,b){a.row-=b.row,0==a.row&&(a.column-=b.column)}function e(a,b){d(a.start,b),d(a.end,b)}function f(a,b){0==a.row&&(a.column+=b.column),a.row+=b.row}function g(a,b){f(a.start,b),f(a.end,b)}var h=(a("../range").Range,a("../range_list").RangeList),i=a("../lib/oop"),j=b.Fold=function(a,b){this.foldLine=null,this.placeholder=b,this.range=a,this.start=a.start,this.end=a.end,this.sameRow=a.start.row==a.end.row,this.subFolds=this.ranges=[]};i.inherits(j,h),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(a){this.foldLine=a,this.subFolds.forEach(function(b){b.setFoldLine(a)})},this.clone=function(){var a=this.range.clone(),b=new j(a,this.placeholder);return this.subFolds.forEach(function(a){b.subFolds.push(a.clone())}),b.collapseChildren=this.collapseChildren,b},this.addSubFold=function(a){if(!this.range.isEqual(a)){if(!this.range.containsRange(a))throw new Error("A fold can't intersect already existing fold"+a.range+this.range);e(a,this.start);for(var b=a.start.row,c=a.start.column,d=0,f=-1;d=a)return e;if(e.end.row>a)return null}return null},this.getNextFoldLine=function(a,b){var c=this.$foldData,d=0;for(b&&(d=c.indexOf(b)),-1==d&&(d=0),d;d=a)return e}return null},this.getFoldedRowCount=function(a,b){for(var c=this.$foldData,d=b-a+1,e=0;e=b){b>h&&(h>=a?d-=b-h:d=0);break}g>=a&&(d-=h>=a?g-h:g-a+1)}return d},this.$addFoldLine=function(a){return this.$foldData.push(a),this.$foldData.sort(function(a,b){return a.start.row-b.start.row}),a},this.addFold=function(a,b){var c,d=this.$foldData,e=!1;a instanceof g?c=a:(c=new g(b,a),c.collapseChildren=b.collapseChildren),this.$clipRangeToDocument(c.range);var h=c.start.row,i=c.start.column,j=c.end.row,k=c.end.column;if(!(j>h||h==j&&k-2>=i))throw new Error("The range has to be at least 2 characters width");var l=this.getFoldAt(h,i,1),m=this.getFoldAt(j,k,-1);if(l&&m==l)return l.addSubFold(c);l&&!l.range.isStart(h,i)&&this.removeFold(l),m&&!m.range.isEnd(j,k)&&this.removeFold(m);var n=this.getFoldsInRange(c.range);n.length>0&&(this.removeFolds(n),n.forEach(function(a){c.addSubFold(a)}));for(var o=0;o0&&this.foldAll(a.start.row+1,a.end.row,a.collapseChildren-1),a.subFolds=[]},this.expandFolds=function(a){a.forEach(function(a){this.expandFold(a)},this)},this.unfold=function(a,b){var c,d;if(null==a?(c=new e(0,0,this.getLength(),0),b=!0):c="number"==typeof a?new e(a,0,a,this.getLine(a).length):"row"in a?e.fromPoints(a,a):a,d=this.getFoldsInRangeList(c),b)this.removeFolds(d);else for(var f=d;f.length;)this.expandFolds(f),f=this.getFoldsInRangeList(c);return d.length?d:void 0},this.isRowFolded=function(a,b){return!!this.getFoldLine(a,b)},this.getRowFoldEnd=function(a,b){var c=this.getFoldLine(a,b);return c?c.end.row:a},this.getRowFoldStart=function(a,b){var c=this.getFoldLine(a,b);return c?c.start.row:a},this.getFoldDisplayLine=function(a,b,c,d,e){null==d&&(d=a.start.row),null==e&&(e=0),null==b&&(b=a.end.row),null==c&&(c=this.getLine(b).length);var f=this.doc,g="";return a.walk(function(a,b,c,h){if(!(d>b)){if(b==d){if(e>c)return;h=Math.max(e,h)}g+=null!=a?a:f.getLine(b).substring(h,c)}},b,c),g},this.getDisplayLine=function(a,b,c,d){var e=this.getFoldLine(a);if(e)return this.getFoldDisplayLine(e,a,b,c,d);var f;return f=this.doc.getLine(a),f.substring(d||0,b||f.length)},this.$cloneFoldData=function(){var a=[];return a=this.$foldData.map(function(b){var c=b.folds.map(function(a){return a.clone()});return new f(a,c)})},this.toggleFold=function(a){var b,c,d=this.selection,e=d.getRange();if(e.isEmpty()){var f=e.start;if(b=this.getFoldAt(f.row,f.column))return void this.expandFold(b);(c=this.findMatchingBracket(f))?1==e.comparePoint(c)?e.end=c:(e.start=c,e.start.column++,e.end.column--):(c=this.findMatchingBracket({row:f.row,column:f.column+1}))?(1==e.comparePoint(c)?e.end=c:e.start=c,e.start.column++):e=this.getCommentFoldRange(f.row,f.column)||e}else{var g=this.getFoldsInRange(e);if(a&&g.length)return void this.expandFolds(g);1==g.length&&(b=g[0])}if(b||(b=this.getFoldAt(e.start.row,e.start.column)),b&&b.range.toString()==e.toString())return void this.expandFold(b);var h="...";if(!e.isMultiLine()){if(h=this.getTextRange(e),h.length<4)return;h=h.trim().substring(0,2)+".."}this.addFold(h,e)},this.getCommentFoldRange=function(a,b,c){var d=new h(this,a,b),f=d.getCurrentToken();if(f&&/^comment|string/.test(f.type)){var g=new e,i=new RegExp(f.type.replace(/\..*/,"\\."));if(1!=c){do f=d.stepBackward();while(f&&i.test(f.type));d.stepForward()}if(g.start.row=d.getCurrentTokenRow(),g.start.column=d.getCurrentTokenColumn()+2,d=new h(this,a,b),-1!=c){do f=d.stepForward();while(f&&i.test(f.type));f=d.stepBackward()}else f=d.getCurrentToken();return g.end.row=d.getCurrentTokenRow(),g.end.column=d.getCurrentTokenColumn()+f.value.length-2,g}},this.foldAll=function(a,b,c){void 0==c&&(c=1e5);var d=this.foldWidgets;if(d){b=b||this.getLength(),a=a||0;for(var e=a;b>e;e++)if(null==d[e]&&(d[e]=this.getFoldWidget(e)),"start"==d[e]){var f=this.getFoldWidgetRange(e);if(f&&f.isMultiLine()&&f.end.row<=b&&f.start.row>=a){e=f.end.row;try{var g=this.addFold("...",f);g&&(g.collapseChildren=c)}catch(h){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(a){if(!this.$foldStyles[a])throw new Error("invalid fold style: "+a+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=a){this.$foldStyle=a,"manual"==a&&this.unfold();var b=this.$foldMode;this.$setFolding(null),this.$setFolding(b)}},this.$setFolding=function(a){if(this.$foldMode!=a){if(this.$foldMode=a,this.removeListener("change",this.$updateFoldWidgets),this._emit("changeAnnotation"),!a||"manual"==this.$foldStyle)return void(this.foldWidgets=null);this.foldWidgets=[],this.getFoldWidget=a.getFoldWidget.bind(a,this,this.$foldStyle),this.getFoldWidgetRange=a.getFoldWidgetRange.bind(a,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets)}},this.getParentFoldRangeData=function(a,b){var c=this.foldWidgets;if(!c||b&&c[a])return{};for(var d,e=a-1;e>=0;){var f=c[e];if(null==f&&(f=c[e]=this.getFoldWidget(e)),"start"==f){var g=this.getFoldWidgetRange(e);if(d||(d=g),g&&g.end.row>=a)break}e--}return{range:-1!==e&&g,firstRange:d}},this.onFoldWidgetClick=function(a,b){b=b.domEvent;var c={children:b.shiftKey,all:b.ctrlKey||b.metaKey,siblings:b.altKey},d=this.$toggleFoldWidget(a,c);if(!d){var e=b.target||b.srcElement;e&&/ace_fold-widget/.test(e.className)&&(e.className+=" ace_invalid")}},this.$toggleFoldWidget=function(a,b){if(this.getFoldWidget){var c=this.getFoldWidget(a),d=this.getLine(a),e="end"===c?-1:1,f=this.getFoldAt(a,-1===e?0:d.length,e);if(f)return void(b.children||b.all?this.removeFold(f):this.expandFold(f));var g=this.getFoldWidgetRange(a,!0);if(g&&!g.isMultiLine()&&(f=this.getFoldAt(g.start.row,g.start.column,1),f&&g.isEqual(f.range)))return void this.removeFold(f);if(b.siblings){var h=this.getParentFoldRangeData(a);if(h.range)var i=h.range.start.row+1,j=h.range.end.row;this.foldAll(i,j,b.all?1e4:0)}else b.children?(j=g?g.end.row:this.getLength(),this.foldAll(a+1,g.end.row,b.all?1e4:0)):g&&(b.all&&(g.collapseChildren=1e4),this.addFold("...",g));return g}},this.toggleFoldWidget=function(a){var b=this.selection.getCursor().row;b=this.getRowFoldStart(b);var c=this.$toggleFoldWidget(b,{});if(!c){var d=this.getParentFoldRangeData(b,!0);if(c=d.range||d.firstRange){b=c.start.row;var e=this.getFoldAt(b,this.getLine(b).length,1);e?this.removeFold(e):this.addFold("...",c)}}},this.updateFoldWidgets=function(a){var b=a.data,c=b.range,d=c.start.row,e=c.end.row-d;if(0===e)this.foldWidgets[d]=null;else if("removeText"==b.action||"removeLines"==b.action)this.foldWidgets.splice(d,e+1,null);else{var f=Array(e+1);f.unshift(d,1),this.foldWidgets.splice.apply(this.foldWidgets,f)}}}var e=a("../range").Range,f=a("./fold_line").FoldLine,g=a("./fold").Fold,h=a("../token_iterator").TokenIterator;b.Folding=d}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(a,b,c){"use strict";function d(){this.findMatchingBracket=function(a,b){if(0==a.column)return null;var c=b||this.getLine(a.row).charAt(a.column-1);if(""==c)return null;var d=c.match(/([\(\[\{])|([\)\]\}])/);return d?d[1]?this.$findClosingBracket(d[1],a):this.$findOpeningBracket(d[2],a):null},this.getBracketRange=function(a){var b,c=this.getLine(a.row),d=!0,e=c.charAt(a.column-1),g=e&&e.match(/([\(\[\{])|([\)\]\}])/);if(g||(e=c.charAt(a.column),a={row:a.row,column:a.column+1},g=e&&e.match(/([\(\[\{])|([\)\]\}])/),d=!1),!g)return null;if(g[1]){var h=this.$findClosingBracket(g[1],a);if(!h)return null;b=f.fromPoints(a,h),d||(b.end.column++,b.start.column--),b.cursor=b.end}else{var h=this.$findOpeningBracket(g[2],a);if(!h)return null;b=f.fromPoints(h,a),d||(b.start.column++,b.end.column--),b.cursor=b.start}return b},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end|start|begin)\b/,"")+")+"));for(var i=b.column-g.getCurrentTokenColumn()-2,j=h.value;;){for(;i>=0;){var k=j.charAt(i);if(k==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else k==a&&(f+=1);i-=1}do h=g.stepBackward();while(h&&!c.test(h.type));if(null==h)break;j=h.value,i=j.length-1}return null}},this.$findClosingBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:end|start|begin)\b/,"")+")+"));for(var i=b.column-g.getCurrentTokenColumn();;){for(var j=h.value,k=j.length;k>i;){var l=j.charAt(i);if(l==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else l==a&&(f+=1);i+=1}do h=g.stepForward();while(h&&!c.test(h.type));if(null==h)break;i=0}return null}}}var e=a("../token_iterator").TokenIterator,f=a("../range").Range;b.BracketMatch=d}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/lang"),f=a("./config"),g=a("./lib/event_emitter").EventEmitter,h=a("./selection").Selection,i=a("./mode/text").Mode,j=a("./range").Range,k=a("./document").Document,l=a("./background_tokenizer").BackgroundTokenizer,m=a("./search_highlight").SearchHighlight,n=function(a,b){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),"object"==typeof a&&a.getLine||(a=new k(a)),this.setDocument(a),this.selection=new h(this),f.resetOptions(this),this.setMode(b),f._signal("session",this)};(function(){function a(a){return 4352>a?!1:a>=4352&&4447>=a||a>=4515&&4519>=a||a>=4602&&4607>=a||a>=9001&&9002>=a||a>=11904&&11929>=a||a>=11931&&12019>=a||a>=12032&&12245>=a||a>=12272&&12283>=a||a>=12288&&12350>=a||a>=12353&&12438>=a||a>=12441&&12543>=a||a>=12549&&12589>=a||a>=12593&&12686>=a||a>=12688&&12730>=a||a>=12736&&12771>=a||a>=12784&&12830>=a||a>=12832&&12871>=a||a>=12880&&13054>=a||a>=13056&&19903>=a||a>=19968&&42124>=a||a>=42128&&42182>=a||a>=43360&&43388>=a||a>=44032&&55203>=a||a>=55216&&55238>=a||a>=55243&&55291>=a||a>=63744&&64255>=a||a>=65040&&65049>=a||a>=65072&&65106>=a||a>=65108&&65126>=a||a>=65128&&65131>=a||a>=65281&&65376>=a||a>=65504&&65510>=a}d.implement(this,g),this.setDocument=function(a){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=a,a.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(a){if(!a)return this.$docRowCache=[],void(this.$screenRowCache=[]);var b=this.$docRowCache.length,c=this.$getRowCacheIndex(this.$docRowCache,a)+1;b>c&&(this.$docRowCache.splice(c,b),this.$screenRowCache.splice(c,b))},this.$getRowCacheIndex=function(a,b){for(var c=0,d=a.length-1;d>=c;){var e=c+d>>1,f=a[e];if(b>f)c=e+1;else{if(!(f>b))return e;d=e-1}}return c-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(a){var b=a.data;this.$resetRowCache(b.start.row)},this.onChange=function(a){var b=a.data;this.$modified=!0,this.$resetRowCache(b.range.start.row);var c=this.$updateInternalDataOnChange(a);this.$fromUndo||!this.$undoManager||b.ignore||(this.$deltasDoc.push(b),c&&0!=c.length&&this.$deltasFold.push({action:"removeFolds",folds:c}),this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(b),this._signal("change",a)},this.setValue=function(a){this.doc.setValue(a),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(a){return this.bgTokenizer.getState(a)},this.getTokens=function(a){return this.bgTokenizer.getTokens(a)},this.getTokenAt=function(a,b){var c,d=this.bgTokenizer.getTokens(a),e=0;if(null==b)f=d.length-1,e=this.getLine(a).length;else for(var f=0;f=b));f++);return(c=d[f])?(c.index=f,c.start=e-c.value.length,c):null},this.setUndoManager=function(a){if(this.$undoManager=a,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),a){var b=this;this.$syncInformUndoManager=function(){b.$informUndoManager.cancel(),b.$deltasFold.length&&(b.$deltas.push({group:"fold",deltas:b.$deltasFold}),b.$deltasFold=[]),b.$deltasDoc.length&&(b.$deltas.push({group:"doc",deltas:b.$deltasDoc}),b.$deltasDoc=[]),b.$deltas.length>0&&a.execute({action:"aceupdate",args:[b.$deltas,b],merge:b.mergeUndoDeltas}),b.mergeUndoDeltas=!1,b.$deltas=[]},this.$informUndoManager=e.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?e.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(a){this.setOption("useSoftTabs",a)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(a){this.setOption("tabSize",a)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(a){return this.$useSoftTabs&&a.column%this.$tabSize===0},this.$overwrite=!1,this.setOverwrite=function(a){this.setOption("overwrite",a)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(a,b){this.$decorations[a]||(this.$decorations[a]=""),this.$decorations[a]+=" "+b,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(a,b){this.$decorations[a]=(this.$decorations[a]||"").replace(" "+b,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(a){this.$breakpoints=[];for(var b=0;b0&&(d=!!c.charAt(b-1).match(this.tokenRe)),d||(d=!!c.charAt(b).match(this.tokenRe)),d)var e=this.tokenRe;else if(/^\s+$/.test(c.slice(b-1,b+1)))var e=/\s/;else var e=this.nonTokenRe;var f=b;if(f>0){do f--;while(f>=0&&c.charAt(f).match(e));f++}for(var g=b;ga&&(a=b.screenWidth)}),this.lineWidgetWidth=a},this.$computeWidth=function(a){if(this.$modified||a){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var b=this.doc.getAllLines(),c=this.$rowLengthCache,d=0,e=0,f=this.$foldData[e],g=f?f.start.row:1/0,h=b.length,i=0;h>i;i++){if(i>g){if(i=f.end.row+1,i>=h)break;f=this.$foldData[e++],g=f?f.start.row:1/0}null==c[i]&&(c[i]=this.$getStringScreenWidth(b[i])[0]),c[i]>d&&(d=c[i])}this.screenWidth=d}},this.getLine=function(a){return this.doc.getLine(a)},this.getLines=function(a,b){return this.doc.getLines(a,b)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(a){return this.doc.getTextRange(a||this.selection.getRange())},this.insert=function(a,b){return this.doc.insert(a,b)},this.remove=function(a){return this.doc.remove(a)},this.undoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=a.length-1;-1!=d;d--){var e=a[d];"doc"==e.group?(this.doc.revertDeltas(e.deltas),c=this.$getUndoSelection(e.deltas,!0,c)):e.deltas.forEach(function(a){this.addFolds(a.folds)},this)}return this.$fromUndo=!1,c&&this.$undoSelect&&!b&&this.selection.setSelectionRange(c),c}},this.redoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=0;da.end.column&&(f.start.column+=h),f.end.row==a.end.row&&f.end.column>a.end.column&&(f.end.column+=h)),g&&f.start.row>=a.end.row&&(f.start.row+=g,f.end.row+=g)}if(f.end=this.insert(f.start,d),e.length){var i=a.start,k=f.start,g=k.row-i.row,h=k.column-i.column;this.addFolds(e.map(function(a){return a=a.clone(),a.start.row==i.row&&(a.start.column+=h),a.end.row==i.row&&(a.end.column+=h),a.start.row+=g,a.end.row+=g,a}))}return f},this.indentRows=function(a,b,c){c=c.replace(/\t/g,this.getTabString());for(var d=a;b>=d;d++)this.insert({row:d,column:0},c)},this.outdentRows=function(a){for(var b=a.collapseRows(),c=new j(0,0,0,0),d=this.getTabSize(),e=b.start.row;e<=b.end.row;++e){var f=this.getLine(e);c.start.row=e,c.end.row=e;for(var g=0;d>g&&" "==f.charAt(g);++g);d>g&&" "==f.charAt(g)?(c.start.column=g,c.end.column=g+1):(c.start.column=0,c.end.column=g),this.remove(c)}},this.$moveLines=function(a,b,c){if(a=this.getRowFoldStart(a),b=this.getRowFoldEnd(b),0>c){var d=this.getRowFoldStart(a+c);if(0>d)return 0;var e=d-a}else if(c>0){var d=this.getRowFoldEnd(b+c);if(d>this.doc.getLength()-1)return 0;var e=d-b}else{a=this.$clipRowToDocument(a),b=this.$clipRowToDocument(b);var e=b-a+1}var f=new j(a,0,b,Number.MAX_VALUE),g=this.getFoldsInRange(f).map(function(a){return a=a.clone(),a.start.row+=e,a.end.row+=e,a}),h=0==c?this.doc.getLines(a,b):this.doc.removeLines(a,b);return this.doc.insertLines(a+e,h),g.length&&this.addFolds(g),e},this.moveLinesUp=function(a,b){return this.$moveLines(a,b,-1)},this.moveLinesDown=function(a,b){return this.$moveLines(a,b,1)},this.duplicateLines=function(a,b){return this.$moveLines(a,b,0)},this.$clipRowToDocument=function(a){return Math.max(0,Math.min(a,this.doc.getLength()-1))},this.$clipColumnToRow=function(a,b){return 0>b?0:Math.min(this.doc.getLine(a).length,b)},this.$clipPositionToDocument=function(a,b){if(b=Math.max(0,b),0>a)a=0,b=0;else{var c=this.doc.getLength();a>=c?(a=c-1,b=this.doc.getLine(c-1).length):b=Math.min(this.doc.getLine(a).length,b)}return{row:a,column:b}},this.$clipRangeToDocument=function(a){a.start.row<0?(a.start.row=0,a.start.column=0):a.start.column=this.$clipColumnToRow(a.start.row,a.start.column);var b=this.doc.getLength()-1;return a.end.row>b?(a.end.row=b,a.end.column=this.doc.getLine(b).length):a.end.column=this.$clipColumnToRow(a.end.row,a.end.column),a},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(a){if(a!=this.$useWrapMode){if(this.$useWrapMode=a,this.$modified=!0,this.$resetRowCache(0),a){var b=this.getLength();this.$wrapData=Array(b),this.$updateWrapData(0,b-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(a,b){(this.$wrapLimitRange.min!==a||this.$wrapLimitRange.max!==b)&&(this.$wrapLimitRange={min:a,max:b},this.$modified=!0,this._signal("changeWrapMode"))},this.adjustWrapLimit=function(a,b){var c=this.$wrapLimitRange;c.max<0&&(c={min:b,max:b});var d=this.$constrainWrapLimit(a,c.min,c.max);return d!=this.$wrapLimit&&d>1?(this.$wrapLimit=d,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(a,b,c){return b&&(a=Math.max(b,a)),c&&(a=Math.min(c,a)),a},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(a){this.setWrapLimitRange(a,a)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(a){var b,c=this.$useWrapMode,d=a.data.action,e=a.data.range.start.row,f=a.data.range.end.row,g=a.data.range.start,h=a.data.range.end,i=null;if(-1!=d.indexOf("Lines")?(f="insertLines"==d?e+a.data.lines.length:e,b=a.data.lines?a.data.lines.length:f-e):b=f-e,this.$updating=!0,0!=b)if(-1!=d.indexOf("remove")){this[c?"$wrapData":"$rowLengthCache"].splice(e,b);var j=this.$foldData;i=this.getFoldsInRange(a.data.range),this.removeFolds(i);var k=this.getFoldLine(h.row),l=0;if(k){k.addRemoveChars(h.row,h.column,g.column-h.column),k.shiftRow(-b);var m=this.getFoldLine(e);m&&m!==k&&(m.merge(k),k=m),l=j.indexOf(k)+1}for(l;l=h.row&&k.shiftRow(-b)}f=e}else{var n=Array(b);n.unshift(e,0);var o=c?this.$wrapData:this.$rowLengthCache;o.splice.apply(o,n);var j=this.$foldData,k=this.getFoldLine(e),l=0;if(k){var p=k.range.compareInside(g.row,g.column);0==p?(k=k.split(g.row,g.column),k&&(k.shiftRow(b),k.addRemoveChars(f,0,h.column-g.column))):-1==p&&(k.addRemoveChars(e,0,h.column-g.column),k.shiftRow(b)),l=j.indexOf(k)+1}for(l;l=e&&k.shiftRow(b)}}else{b=Math.abs(a.data.range.start.column-a.data.range.end.column),-1!=d.indexOf("remove")&&(i=this.getFoldsInRange(a.data.range),this.removeFolds(i),b=-b);var k=this.getFoldLine(e);k&&k.addRemoveChars(e,g.column,b)}return c&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,c?this.$updateWrapData(e,f):this.$updateRowLengthCache(e,f),i},this.$updateRowLengthCache=function(a,b,c){this.$rowLengthCache[a]=null,this.$rowLengthCache[b]=null},this.$updateWrapData=function(a,b){var c,d,e=this.doc.getAllLines(),f=this.getTabSize(),g=this.$wrapData,i=this.$wrapLimit,j=a;for(b=Math.min(b,e.length-1);b>=j;)d=this.getFoldLine(j,d),d?(c=[],d.walk(function(a,b,d,f){var g;if(null!=a){g=this.$getDisplayTokens(a,c.length),g[0]=h;for(var i=1;ib;){var l=g+b;if(a[l-1]>=o&&a[l]>=o)d(l);else if(a[l]!=h&&a[l]!=k){for(var m=Math.max(l-(j?10:b-(b>>2)),g-1);l>m&&a[l]m&&a[l]m&&a[l]==n;)l--}else for(;l>m&&a[l]m?d(++l):(l=g+b,a[l]==c&&l--,d(l))}else{for(l;l!=g-1&&a[l]!=h;l--);if(l>g){d(l);continue}for(l=g+b;lj;j++)g.push(q)}else 32==i?g.push(o):i>39&&48>i||i>57&&64>i?g.push(n):i>=4352&&a(i)?g.push(b,c):g.push(b)}return g},this.$getStringScreenWidth=function(b,c,d){if(0==c)return[0,0];null==c&&(c=1/0),d=d||0;var e,f;for(f=0;f=4352&&a(e)?2:1,!(d>c));f++);return[d,f]},this.lineWidgets=null,this.getRowLength=function(a){if(this.lineWidgets)var b=this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0;else b=0;return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.getRowLineCount=function(a){return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1:1},this.getScreenLastRowColumn=function(a){var b=this.screenToDocumentPosition(a,Number.MAX_VALUE);return this.documentToScreenColumn(b.row,b.column)},this.getDocumentLastRowColumn=function(a,b){var c=this.documentToScreenRow(a,b);return this.getScreenLastRowColumn(c)},this.getDocumentLastRowColumnPosition=function(a,b){var c=this.documentToScreenRow(a,b);return this.screenToDocumentPosition(c,Number.MAX_VALUE/10)},this.getRowSplitData=function(a){return this.$useWrapMode?this.$wrapData[a]:void 0},this.getScreenTabSize=function(a){return this.$tabSize-a%this.$tabSize},this.screenToDocumentRow=function(a,b){return this.screenToDocumentPosition(a,b).row},this.screenToDocumentColumn=function(a,b){return this.screenToDocumentPosition(a,b).column},this.screenToDocumentPosition=function(a,b){if(0>a)return{row:0,column:0};var c,d,e=0,f=0,g=0,h=0,i=this.$screenRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var g=i[j],e=this.$docRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getLength()-1,n=this.getNextFoldLine(e),o=n?n.start.row:1/0;a>=g&&(h=this.getRowLength(e),!(g+h>a||e>=m));)g+=h,e++,e>o&&(e=n.end.row+1,n=this.getNextFoldLine(e,n),o=n?n.start.row:1/0),l&&(this.$docRowCache.push(e),this.$screenRowCache.push(g));if(n&&n.start.row<=e)c=this.getFoldDisplayLine(n),e=n.start.row;else{if(a>=g+h||e>m)return{row:m,column:this.getLine(m).length};c=this.getLine(e),n=null}if(this.$useWrapMode){var p=this.$wrapData[e];if(p){var q=Math.floor(a-g);d=p[q],q>0&&p.length&&(f=p[q-1]||p[p.length-1],c=c.substring(f))}}return f+=this.$getStringScreenWidth(c,b)[1],this.$useWrapMode&&f>=d&&(f=d-1),n?n.idxToPosition(f):{row:e,column:f}},this.documentToScreenPosition=function(a,b){if("undefined"==typeof b)var c=this.$clipPositionToDocument(a.row,a.column);else c=this.$clipPositionToDocument(a,b);a=c.row,b=c.column;var d=0,e=null,f=null;f=this.getFoldAt(a,b,1),f&&(a=f.start.row,b=f.start.column);var g,h=0,i=this.$docRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var h=i[j],d=this.$screenRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getNextFoldLine(h),n=m?m.start.row:1/0;a>h;){if(h>=n){if(g=m.end.row+1,g>a)break;m=this.getNextFoldLine(g,m),n=m?m.start.row:1/0}else g=h+1;d+=this.getRowLength(h),h=g,l&&(this.$docRowCache.push(h),this.$screenRowCache.push(d))}var o="";if(m&&h>=n?(o=this.getFoldDisplayLine(m,a,b),e=m.start.row):(o=this.getLine(a).substring(0,b),e=a),this.$useWrapMode){var p=this.$wrapData[e];if(p){for(var q=0;o.length>=p[q];)d++,q++;o=o.substring(p[q-1]||0,o.length)}}return{row:d,column:this.$getStringScreenWidth(o)[0]}},this.documentToScreenColumn=function(a,b){return this.documentToScreenPosition(a,b).column},this.documentToScreenRow=function(a,b){return this.documentToScreenPosition(a,b).row},this.getScreenLength=function(){var a=0,b=null;if(this.$useWrapMode)for(var c=this.$wrapData.length,d=0,e=0,b=this.$foldData[e++],f=b?b.start.row:1/0;c>d;){var g=this.$wrapData[d];a+=g?g.length+1:1,d++,d>f&&(d=b.end.row+1,b=this.$foldData[e++],f=b?b.start.row:1/0)}else{a=this.getLength();for(var h=this.$foldData,e=0;e=l;l++){for(var m=0;j>m;m++)if(-1==e[l+m].search(h[m]))continue a;var n=e[l],o=e[l+j-1],p=n.length-n.match(h[0])[0].length,q=o.match(h[j-1])[0].length;i&&i.end.row===l&&i.end.column>p||(g.push(i=new f(l,p,l+j-1,q)),j>2&&(l=l+j-2))}}else for(var r=0;rr&&g[r].start.columnr&&g[m].end.column>v&&g[m].end.row==c.end.row;)m--;for(g=g.slice(r,m+1),r=0,m=g.length;m>r;r++)g[r].start.row+=c.start.row,g[r].end.row+=c.start.row}return g},this.replace=function(a,b){var c=this.$options,d=this.$assembleRegExp(c);if(c.$isMultiLine)return b;if(d){var e=d.exec(a);if(!e||e[0].length!=a.length)return null;if(b=a.replace(d,b),c.preserveCase){b=b.split("");for(var f=Math.min(a.length,a.length);f--;){var g=a[f];g&&g.toLowerCase()!=g?b[f]=b[f].toUpperCase():b[f]=b[f].toLowerCase()}b=b.join("")}return b}},this.$matchIterator=function(a,b){var c=this.$assembleRegExp(b);if(!c)return!1;var e,g=this,h=b.backwards;if(b.$isMultiLine)var i=c.length,j=function(b,d,g){var h=b.search(c[0]);if(-1!=h){for(var j=1;i>j;j++)if(b=a.getLine(d+j),-1==b.search(c[j]))return;var k=b.match(c[i-1])[0].length,l=new f(d,h,d+i-1,k);return 1==c.offset?(l.start.row--,l.start.column=Number.MAX_VALUE):g&&(l.start.column+=g),e(l)?!0:void 0}};else if(h)var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=g.length-1;h>=0;h--)if(e(g[h],b,f))return!0};else var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=0;h=g;d--)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=h,g=f.row;d>=g;d--)if(c(a.getLine(d),d))return}}:function(c){var d=f.row,e=a.getLine(d).substr(f.column);if(!c(e,d,f.column)){for(d+=1;h>=d;d++)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=g,h=f.row;h>=d;d++)if(c(a.getLine(d),d))return}};return{forEach:i}}}).call(g.prototype),b.Search=g}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(a,b,c){"use strict";function d(a,b){this.platform=b||(g.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(a),this.$singleCommand=!0}function e(a,b){d.call(this,a,b),this.$singleCommand=!1}var f=a("../lib/keys"),g=a("../lib/useragent"),h=f.KEY_MODS;e.prototype=d.prototype,function(){this.addCommand=function(a){this.commands[a.name]&&this.removeCommand(a),this.commands[a.name]=a,a.bindKey&&this._buildKeyHash(a)},this.removeCommand=function(a,b){var c=a&&("string"==typeof a?a:a.name);a=this.commands[c],b||delete this.commands[c];var d=this.commandKeyBinding;for(var e in d){var f=d[e];if(f==a)delete d[e];else if(Array.isArray(f)){var g=f.indexOf(a);-1!=g&&(f.splice(g,1),1==f.length&&(d[e]=f[0]))}}},this.bindKey=function(a,b,c){return"object"==typeof a&&(a=a[this.platform]),a?"function"==typeof b?this.addCommand({exec:b,bindKey:a,name:b.name||a}):void a.split("|").forEach(function(a){var d="";if(-1!=a.indexOf(" ")){var e=a.split(/\s+/);a=e.pop(),e.forEach(function(a){var b=this.parseKeys(a),c=h[b.hashId]+b.key;d+=(d?" ":"")+c,this._addCommandToBinding(d,"chainKeys")},this),d+=" "}var f=this.parseKeys(a),g=h[f.hashId]+f.key;this._addCommandToBinding(d+g,b,c)},this):void 0},this._addCommandToBinding=function(a,b,c){var d,e=this.commandKeyBinding;b?!e[a]||this.$singleCommand?e[a]=b:(Array.isArray(e[a])?-1!=(d=e[a].indexOf(b))&&e[a].splice(d,1):e[a]=[e[a]],c||b.isDefault?e[a].unshift(b):e[a].push(b)):delete e[a]},this.addCommands=function(a){a&&Object.keys(a).forEach(function(b){var c=a[b];if(c){if("string"==typeof c)return this.bindKey(c,b);"function"==typeof c&&(c={exec:c}),"object"==typeof c&&(c.name||(c.name=b),this.addCommand(c))}},this)},this.removeCommands=function(a){Object.keys(a).forEach(function(b){this.removeCommand(a[b])},this)},this.bindKeys=function(a){Object.keys(a).forEach(function(b){this.bindKey(b,a[b])},this)},this._buildKeyHash=function(a){this.bindKey(a.bindKey,a)},this.parseKeys=function(a){var b=a.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(a){return a}),c=b.pop(),d=f[c];if(f.FUNCTION_KEYS[d])c=f.FUNCTION_KEYS[d].toLowerCase();else{if(!b.length)return{key:c,hashId:-1};if(1==b.length&&"shift"==b[0])return{key:c.toUpperCase(),hashId:-1}}for(var e=0,g=b.length;g--;){var h=f.KEY_MODS[b[g]];if(null==h)return"undefined"!=typeof console&&console.error("invalid modifier "+b[g]+" in "+a),!1;e|=h}return{key:c,hashId:e}},this.findKeyCommand=function(a,b){var c=h[a]+b;return this.commandKeyBinding[c]},this.handleKeyboard=function(a,b,c,d){var e=h[b]+c,f=this.commandKeyBinding[e];return a.$keyChain&&(a.$keyChain+=" "+e,f=this.commandKeyBinding[a.$keyChain]||f),!f||"chainKeys"!=f&&"chainKeys"!=f[f.length-1]?(a.$keyChain&&d>0&&(a.$keyChain=""),{command:f}):(a.$keyChain=a.$keyChain||e,{command:"null"})}}.call(d.prototype),b.HashHandler=d,b.MultiHashHandler=e}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("../lib/oop"),e=a("../keyboard/hash_handler").MultiHashHandler,f=a("../lib/event_emitter").EventEmitter,g=function(a,b){e.call(this,b,a),this.byName=this.commands,this.setDefaultHandler("exec",function(a){return a.command.exec(a.editor,a.args||{})})};d.inherits(g,e),function(){d.implement(this,f),this.exec=function(a,b,c){if(Array.isArray(a)){for(var d=a.length;d--;)if(this.exec(a[d],b,c))return!0;return!1}if("string"==typeof a&&(a=this.commands[a]),!a)return!1;if(b&&b.$readOnly&&!a.readOnly)return!1;var e={editor:b,command:a,args:c};return e.returnValue=this._emit("exec",e),this._signal("afterExec",e),e.returnValue===!1?!1:!0},this.toggleRecording=function(a){return this.$inReplay?void 0:(a&&a._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(a){this.macro.push([a.command,a.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0))},this.replay=function(a){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(a);try{this.$inReplay=!0,this.macro.forEach(function(b){"string"==typeof b?this.exec(b,a):this.exec(b[0],a,b[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(a){return a.map(function(a){return"string"!=typeof a[0]&&(a[0]=a[0].name),a[1]||(a=a[0]),a})}}.call(g.prototype),b.CommandManager=g}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(a,b,c){"use strict";function d(a,b){return{win:a,mac:b}}var e=a("../lib/lang"),f=a("../config"),g=a("../range").Range;b.commands=[{name:"showSettingsMenu",bindKey:d("Ctrl-,","Command-,"),exec:function(a){f.loadModule("ace/ext/settings_menu",function(b){b.init(a),a.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:d("Alt-E","Ctrl-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:d("Alt-Shift-E","Ctrl-Shift-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:d("Ctrl-A","Command-A"),exec:function(a){a.selectAll()},readOnly:!0},{name:"centerselection",bindKey:d(null,"Ctrl-L"),exec:function(a){a.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:d("Ctrl-L","Command-L"),exec:function(a){var b=parseInt(prompt("Enter line number:"),10);isNaN(b)||a.gotoLine(b)},readOnly:!0},{name:"fold",bindKey:d("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(a){a.session.toggleFold(!1)},scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:d("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(a){a.session.toggleFold(!0)},scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:d("F2","F2"),exec:function(a){a.session.toggleFoldWidget()},scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:d("Alt-F2","Alt-F2"),exec:function(a){a.session.toggleFoldWidget(!0)},scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:d("Ctrl-Alt-0","Ctrl-Command-Option-0"),exec:function(a){a.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:d("Alt-0","Command-Option-0"),exec:function(a){a.session.foldAll(),a.session.unfold(a.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:d("Alt-Shift-0","Command-Option-Shift-0"),exec:function(a){a.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:d("Ctrl-K","Command-G"),exec:function(a){a.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:d("Ctrl-Shift-K","Command-Shift-G"),exec:function(a){a.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:d("Alt-K","Ctrl-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:d("Alt-Shift-K","Ctrl-Shift-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findPrevious()},readOnly:!0},{name:"find",bindKey:d("Ctrl-F","Command-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(a){a.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:d("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(a){a.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:d("Ctrl-Home","Command-Home|Command-Up"),exec:function(a){a.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:d("Shift-Up","Shift-Up"),exec:function(a){a.getSelection().selectUp()},multiSelectAction:"forEach",readOnly:!0},{name:"golineup",bindKey:d("Up","Up|Ctrl-P"),exec:function(a,b){a.navigateUp(b.times)},multiSelectAction:"forEach",readOnly:!0},{name:"selecttoend",bindKey:d("Ctrl-Shift-End","Command-Shift-Down"),exec:function(a){a.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:d("Ctrl-End","Command-End|Command-Down"),exec:function(a){a.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:d("Shift-Down","Shift-Down"),exec:function(a){a.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:d("Down","Down|Ctrl-N"),exec:function(a,b){a.navigateDown(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:d("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(a){a.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:d("Ctrl-Left","Option-Left"),exec:function(a){a.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:d("Alt-Shift-Left","Command-Shift-Left"),exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:d("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(a){a.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:d("Shift-Left","Shift-Left"),exec:function(a){a.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:d("Left","Left|Ctrl-B"),exec:function(a,b){a.navigateLeft(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:d("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(a){a.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:d("Ctrl-Right","Option-Right"),exec:function(a){a.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:d("Alt-Shift-Right","Command-Shift-Right"),exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:d("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(a){a.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:d("Shift-Right","Shift-Right"),exec:function(a){a.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:d("Right","Right|Ctrl-F"),exec:function(a,b){a.navigateRight(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(a){a.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:d(null,"Option-PageDown"),exec:function(a){a.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:d("PageDown","PageDown|Ctrl-V"),exec:function(a){a.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(a){a.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:d(null,"Option-PageUp"),exec:function(a){a.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(a){a.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:d("Ctrl-Up",null),exec:function(a){a.renderer.scrollBy(0,-2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:d("Ctrl-Down",null),exec:function(a){a.renderer.scrollBy(0,2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:d("Ctrl-Alt-E","Command-Option-E"),exec:function(a){a.commands.toggleRecording(a)},readOnly:!0},{name:"replaymacro",bindKey:d("Ctrl-Shift-E","Command-Shift-E"),exec:function(a){a.commands.replay(a)},readOnly:!0},{name:"jumptomatching",bindKey:d("Ctrl-P","Ctrl-P"),exec:function(a){a.jumpToMatching()},multiSelectAction:"forEach",readOnly:!0},{name:"selecttomatching",bindKey:d("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(a){a.jumpToMatching(!0)},multiSelectAction:"forEach",readOnly:!0},{name:"passKeysToBrowser",bindKey:d("null","null"),exec:function(){},passEvent:!0,readOnly:!0},{name:"cut",exec:function(a){var b=a.getSelectionRange();a._emit("cut",b),a.selection.isEmpty()||(a.session.remove(b),a.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"removeline",bindKey:d("Ctrl-D","Command-D"),exec:function(a){a.removeLines(); +},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:d("Ctrl-Shift-D","Command-Shift-D"),exec:function(a){a.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:d("Ctrl-Alt-S","Command-Alt-S"),exec:function(a){a.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:d("Ctrl-/","Command-/"),exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:d("Ctrl-Shift-/","Command-Shift-/"),exec:function(a){a.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:d("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(a){a.modifyNumber(1)},multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:d("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(a){a.modifyNumber(-1)},multiSelectAction:"forEach"},{name:"replace",bindKey:d("Ctrl-H","Command-Option-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a,!0)})}},{name:"undo",bindKey:d("Ctrl-Z","Command-Z"),exec:function(a){a.undo()}},{name:"redo",bindKey:d("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(a){a.redo()}},{name:"copylinesup",bindKey:d("Alt-Shift-Up","Command-Option-Up"),exec:function(a){a.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:d("Alt-Up","Option-Up"),exec:function(a){a.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:d("Alt-Shift-Down","Command-Option-Down"),exec:function(a){a.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:d("Alt-Down","Option-Down"),exec:function(a){a.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:d("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(a){a.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:d("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(a){a.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:d("Shift-Delete",null),exec:function(a){return a.selection.isEmpty()?void a.remove("left"):!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:d("Alt-Backspace","Command-Backspace"),exec:function(a){a.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:d("Alt-Delete","Ctrl-K"),exec:function(a){a.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:d("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(a){a.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:d("Ctrl-Delete","Alt-Delete"),exec:function(a){a.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:d("Shift-Tab","Shift-Tab"),exec:function(a){a.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:d("Tab","Tab"),exec:function(a){a.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:d("Ctrl-[","Ctrl-["),exec:function(a){a.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:d("Ctrl-]","Ctrl-]"),exec:function(a){a.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(a,b){a.insert(b)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(a,b){a.insert(e.stringRepeat(b.text||"",b.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:d(null,"Ctrl-O"),exec:function(a){a.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:d("Ctrl-T","Ctrl-T"),exec:function(a){a.transposeLetters()},multiSelectAction:function(a){a.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:d("Ctrl-U","Ctrl-U"),exec:function(a){a.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:d("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(a){a.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:d("Ctrl-Shift-L","Command-Shift-L"),exec:function(a){var b=a.selection.getRange();b.start.column=b.end.column=0,b.end.row++,a.selection.setRange(b,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:d(null,null),exec:function(a){for(var b=a.selection.isBackwards(),c=b?a.selection.getSelectionLead():a.selection.getSelectionAnchor(),d=b?a.selection.getSelectionAnchor():a.selection.getSelectionLead(),f=a.session.doc.getLine(c.row).length,h=a.session.doc.getTextRange(a.selection.getRange()),i=h.replace(/\n\s*/," ").length,j=a.session.doc.getLine(c.row),k=c.row+1;k<=d.row+1;k++){var l=e.stringTrimLeft(e.stringTrimRight(a.session.doc.getLine(k)));0!==l.length&&(l=" "+l),j+=l}d.row+10?(a.selection.moveCursorTo(c.row,c.column),a.selection.selectTo(c.row,c.column+i)):(f=a.session.doc.getLine(c.row).length>f?f+1:f,a.selection.moveCursorTo(c.row,f))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:d(null,null),exec:function(a){var b=a.session.doc.getLength()-1,c=a.session.doc.getLine(b).length,d=a.selection.rangeList.ranges,e=[];d.length<1&&(d=[a.selection.getRange()]);for(var f=0;f=d.lastRow||c.end.row<=d.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==b.scrollIntoView&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(a){if(this.$mergeUndoDeltas){var b=this.prevOp,c=this.$mergeableCommands,d=b.command&&a.command.name==b.command.name;if("insertstring"==a.command.name){var e=a.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),d=d&&this.mergeNextCommand&&(!/\s/.test(e)||/\s/.test(b.args)),this.mergeNextCommand=!0}else d=d&&-1!==c.indexOf(a.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(d=!1),d?this.session.mergeUndoDeltas=!0:-1!==c.indexOf(a.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(a,b){if(a&&"string"==typeof a){this.$keybindingId=a;var c=this;r.loadModule(["keybinding",a],function(d){c.$keybindingId==a&&c.keyBinding.setKeyboardHandler(d&&d.handler),b&&b()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(a),b&&b()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(a){if(this.session!=a){var b=this.session;if(b){this.session.removeEventListener("change",this.$onDocumentChange),this.session.removeEventListener("changeMode",this.$onChangeMode),this.session.removeEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.session.removeEventListener("changeTabSize",this.$onChangeTabSize),this.session.removeEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.session.removeEventListener("changeWrapMode",this.$onChangeWrapMode),this.session.removeEventListener("onChangeFold",this.$onChangeFold),this.session.removeEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.session.removeEventListener("changeBackMarker",this.$onChangeBackMarker),this.session.removeEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.session.removeEventListener("changeAnnotation",this.$onChangeAnnotation),this.session.removeEventListener("changeOverwrite",this.$onCursorChange),this.session.removeEventListener("changeScrollTop",this.$onScrollTopChange),this.session.removeEventListener("changeScrollLeft",this.$onScrollLeftChange);var c=this.session.getSelection();c.removeEventListener("changeCursor",this.$onCursorChange),c.removeEventListener("changeSelection",this.$onSelectionChange)}this.session=a,a?(this.$onDocumentChange=this.onDocumentChange.bind(this),a.addEventListener("change",this.$onDocumentChange),this.renderer.setSession(a),this.$onChangeMode=this.onChangeMode.bind(this),a.addEventListener("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),a.addEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),a.addEventListener("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),a.addEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),a.addEventListener("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),a.addEventListener("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.addEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.addEventListener("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.addEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.addEventListener("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.addEventListener("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.addEventListener("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.addEventListener("changeScrollLeft",this.$onScrollLeftChange),this.selection=a.getSelection(),this.selection.addEventListener("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.addEventListener("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(a)),this._signal("changeSession",{session:a,oldSession:b}),b&&b._signal("changeEditor",{oldEditor:this}),a&&a._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(a,b){return this.session.doc.setValue(a),b?1==b?this.navigateFileEnd():-1==b&&this.navigateFileStart():this.selectAll(),a},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(a){this.renderer.onResize(a)},this.setTheme=function(a,b){this.renderer.setTheme(a,b)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(a){this.renderer.setStyle(a)},this.unsetStyle=function(a){this.renderer.unsetStyle(a)},this.getFontSize=function(){return this.getOption("fontSize")||e.computedStyle(this.container,"fontSize")},this.setFontSize=function(a){this.setOption("fontSize",a)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var a=this;this.$highlightPending=!0,setTimeout(function(){a.$highlightPending=!1;var b=a.session;if(b&&b.bgTokenizer){var c=b.findMatchingBracket(a.getCursorPosition());if(c)var d=new n(c.row,c.column,c.row,c.column+1);else if(b.$mode.getMatching)var d=b.$mode.getMatching(a.session);d&&(b.$bracketHighlight=b.addMarker(d,"ace_bracket","text"))}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var a=this;this.$highlightTagPending=!0,setTimeout(function(){a.$highlightTagPending=!1;var b=a.session;if(b&&b.bgTokenizer){var c=a.getCursorPosition(),d=new s(a.session,c.row,c.column),e=d.getCurrentToken();if(!e||-1===e.type.indexOf("tag-name"))return b.removeMarker(b.$tagHighlight),void(b.$tagHighlight=null);var f=e.value,g=0,h=d.stepBackward();if("<"==h.value){do h=e,e=d.stepForward(),e&&e.value===f&&-1!==e.type.indexOf("tag-name")&&("<"===h.value?g++:"=0)}else{do e=h,h=d.stepBackward(),e&&e.value===f&&-1!==e.type.indexOf("tag-name")&&("<"===h.value?g++:"=g);d.stepForward()}if(!e)return b.removeMarker(b.$tagHighlight),void(b.$tagHighlight=null);var i=d.getCurrentTokenRow(),j=d.getCurrentTokenColumn(),k=new n(i,j,i,j+e.value.length);b.$tagHighlight&&0!==k.compareRange(b.$backMarkers[b.$tagHighlight].range)&&(b.removeMarker(b.$tagHighlight),b.$tagHighlight=null),k&&!b.$tagHighlight&&(b.$tagHighlight=b.addMarker(k,"ace_bracket","text"))}},50)}},this.focus=function(){var a=this;setTimeout(function(){a.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(a){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",a))},this.onBlur=function(a){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",a))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(a){var b,c=a.data,d=c.range;b=d.start.row==d.end.row&&"insertLines"!=c.action&&"removeLines"!=c.action?d.end.row:1/0,this.renderer.updateLines(d.start.row,b,this.session.$useWrapMode),this._signal("change",a),this.$cursorChange(),this.$updateHighlightActiveLine()},this.onTokenizerUpdate=function(a){var b=a.data;this.renderer.updateLines(b.first,b.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||this.renderer.scrollCursorIntoView(),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var a,b=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(a=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(a=!1)),b.$highlightLineMarker&&!a)b.removeMarker(b.$highlightLineMarker.id),b.$highlightLineMarker=null;else if(!b.$highlightLineMarker&&a){var c=new n(a.row,a.column,a.row,1/0);c.id=b.addMarker(c,"ace_active-line","screenLine"),b.$highlightLineMarker=c}else a&&(b.$highlightLineMarker.start.row=a.row,b.$highlightLineMarker.end.row=a.row,b.$highlightLineMarker.start.column=a.column,b._signal("changeBackMarker"))},this.onSelectionChange=function(a){var b=this.session;if(b.$selectionMarker&&b.removeMarker(b.$selectionMarker),b.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var c=this.selection.getRange(),d=this.getSelectionStyle();b.$selectionMarker=b.addMarker(c,"ace_selection",d)}var e=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(e),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var a=this.session,b=this.getSelectionRange();if(!b.isEmpty()&&!b.isMultiLine()){var c=b.start.column-1,d=b.end.column+1,e=a.getLine(b.start.row),f=e.length,g=e.substring(Math.max(c,0),Math.min(d,f));if(!(c>=0&&/^[\w\d]/.test(g)||f>=d&&/[\w\d]$/.test(g))&&(g=e.substring(b.start.column,b.end.column),/^[\w\d]+$/.test(g))){var h=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:g});return h}}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(a){this.renderer.updateText(),this._emit("changeMode",a)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var a=this.getSelectedText();return this._signal("copy",a),a},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(a){if(!this.$readOnly){var b={text:a};this._signal("paste",b),this.insert(b.text,!0)}},this.execCommand=function(a,b){return this.commands.exec(a,this,b)},this.insert=function(a,b){var c=this.session,d=c.getMode(),e=this.getCursorPosition();if(this.getBehavioursEnabled()&&!b){var f=d.transformAction(c.getState(e.row),"insertion",this,c,a);f&&(a!==f.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),a=f.text)}if(" "==a&&(a=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){var g=new n.fromPoints(e,e);g.end.column+=a.length,this.session.remove(g)}}else{var g=this.getSelectionRange();e=this.session.remove(g),this.clearSelection()}if("\n"==a||"\r\n"==a){var h=c.getLine(e.row);if(e.column>h.search(/\S|$/)){var i=h.substr(e.column).search(/\S|$/);c.doc.removeInLine(e.row,e.column,e.column+i)}}this.clearSelection();var j=e.column,k=c.getState(e.row),h=c.getLine(e.row),l=d.checkOutdent(k,h,a);if(c.insert(e,a),f&&f.selection&&this.selection.setSelectionRange(2==f.selection.length?new n(e.row,j+f.selection[0],e.row,j+f.selection[1]):new n(e.row+f.selection[0],f.selection[1],e.row+f.selection[2],f.selection[3])),c.getDocument().isNewLine(a)){var m=d.getNextLineIndent(k,h.slice(0,e.column),c.getTabString());c.insert({row:e.row+1,column:0},m)}l&&d.autoOutdent(k,c,e.row)},this.onTextInput=function(a){this.keyBinding.onTextInput(a)},this.onCommandKey=function(a,b,c){this.keyBinding.onCommandKey(a,b,c)},this.setOverwrite=function(a){this.session.setOverwrite(a)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(a){this.setOption("scrollSpeed",a)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(a){this.setOption("dragDelay",a)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(a){this.setOption("selectionStyle",a)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(a){this.setOption("highlightActiveLine",a)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(a){this.setOption("highlightSelectedWord",a)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(a){this.renderer.setAnimatedScroll(a)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(a){this.renderer.setShowInvisibles(a)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(a){this.renderer.setDisplayIndentGuides(a)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(a){this.renderer.setShowPrintMargin(a)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(a){this.renderer.setPrintMarginColumn(a)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(a){this.setOption("readOnly",a)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(a){this.setOption("behavioursEnabled",a)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(a){this.setOption("wrapBehavioursEnabled",a)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(a){this.setOption("showFoldWidgets",a)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(a){this.selection.isEmpty()&&("left"==a?this.selection.selectLeft():this.selection.selectRight());var b=this.getSelectionRange();if(this.getBehavioursEnabled()){var c=this.session,d=c.getState(b.start.row),e=c.getMode().transformAction(d,"deletion",this,c,b);if(0===b.end.column){var f=c.getTextRange(b);if("\n"==f[f.length-1]){var g=c.getLine(b.end.row);/^\s+$/.test(g)&&(b.end.column=g.length)}}e&&(b=e)}this.session.remove(b),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var a=this.getSelectionRange();a.start.column==a.end.column&&a.start.row==a.end.row&&(a.end.column=0,a.end.row++),this.session.remove(a),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var a=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(a)},this.transposeLetters=function(){if(this.selection.isEmpty()){var a=this.getCursorPosition(),b=a.column;if(0!==b){var c,d,e=this.session.getLine(a.row);bb.toLowerCase()?1:0});for(var d=new n(0,0,0,0),e=a.first;e<=a.last;e++){var f=b.getLine(e);d.start.row=e,d.end.row=e,d.end.column=f.length,b.replace(d,c[e-a.first])}},this.toggleCommentLines=function(){var a=this.session.getState(this.getCursorPosition().row),b=this.$getSelectedRows();this.session.getMode().toggleCommentLines(a,this.session,b.first,b.last)},this.toggleBlockComment=function(){var a=this.getCursorPosition(),b=this.session.getState(a.row),c=this.getSelectionRange();this.session.getMode().toggleBlockComment(b,this.session,c,a)},this.getNumberAt=function(a,b){var c=/[\-]?[0-9]+(?:\.[0-9]+)?/g;c.lastIndex=0;for(var d=this.session.getLine(a);c.lastIndex=b){var f={value:e[0],start:e.index,end:e.index+e[0].length};return f}}return null},this.modifyNumber=function(a){var b=this.selection.getCursor().row,c=this.selection.getCursor().column,d=new n(b,c-1,b,c),e=this.session.getTextRange(d);if(!isNaN(parseFloat(e))&&isFinite(e)){var f=this.getNumberAt(b,c);if(f){var g=f.value.indexOf(".")>=0?f.start+f.value.indexOf(".")+1:f.end,h=f.start+f.value.length-g,i=parseFloat(f.value);i*=Math.pow(10,h),a*=g!==f.end&&g>c?Math.pow(10,f.end-c-1):Math.pow(10,f.end-c),i+=a,i/=Math.pow(10,h);var j=i.toFixed(h),k=new n(b,f.start,b,f.end);this.session.replace(k,j),this.moveCursorTo(b,Math.max(f.start+1,c+j.length-f.value.length))}}},this.removeLines=function(){var a,b=this.$getSelectedRows();a=0===b.first||b.last+1=g;)f[h].moveBy(e,0),h--}b.fromOrientedRange(b.ranges[0]),b.rangeList.attach(this.session)}},this.$getSelectedRows=function(){var a=this.getSelectionRange().collapseRows();return{first:this.session.getRowFoldStart(a.start.row),last:this.session.getRowFoldEnd(a.end.row)}},this.onCompositionStart=function(a){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(a){this.renderer.setCompositionText(a)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(a){return a>=this.getFirstVisibleRow()&&a<=this.getLastVisibleRow()},this.isRowFullyVisible=function(a){return a>=this.renderer.getFirstFullyVisibleRow()&&a<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(a,b){var c=this.renderer,d=this.renderer.layerConfig,e=a*Math.floor(d.height/d.lineHeight);this.$blockScrolling++,b===!0?this.selection.$moveSelection(function(){this.moveCursorBy(e,0)}):b===!1&&(this.selection.moveCursorBy(e,0),this.selection.clearSelection()),this.$blockScrolling--;var f=c.scrollTop;c.scrollBy(0,e*d.lineHeight),null!=b&&c.scrollCursorIntoView(null,.5),c.animateScrolling(f)},this.selectPageDown=function(){this.$moveByPage(1,!0); +},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(a){this.renderer.scrollToRow(a)},this.scrollToLine=function(a,b,c,d){this.renderer.scrollToLine(a,b,c,d)},this.centerSelection=function(){var a=this.getSelectionRange(),b={row:Math.floor(a.start.row+(a.end.row-a.start.row)/2),column:Math.floor(a.start.column+(a.end.column-a.start.column)/2)};this.renderer.alignCursor(b,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(a,b){this.selection.moveCursorTo(a,b)},this.moveCursorToPosition=function(a){this.selection.moveCursorToPosition(a)},this.jumpToMatching=function(a,b){var c=this.getCursorPosition(),d=new s(this.session,c.row,c.column),e=d.getCurrentToken(),f=e||d.stepForward();if(f){var g,h,i=!1,j={},k=c.column-f.start,l={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(f.value.match(/[{}()\[\]]/g)){for(;k=0;--f)this.$tryReplace(c[f],a)&&d++;return this.selection.setSelectionRange(e),this.$blockScrolling-=1,d},this.$tryReplace=function(a,b){var c=this.session.getTextRange(a);return b=this.$search.replace(c,b),null!==b?(a.end=this.session.replace(a,b),a):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(a,b,c){b||(b={}),"string"==typeof a||a instanceof RegExp?b.needle=a:"object"==typeof a&&d.mixin(b,a);var e=this.selection.getRange();null==b.needle&&(a=this.session.getTextRange(e)||this.$search.$options.needle,a||(e=this.session.getWordRange(e.start.row,e.start.column),a=this.session.getTextRange(e)),this.$search.set({needle:a})),this.$search.set(b),b.start||this.$search.set({start:e});var f=this.$search.find(this.session);return b.preventScroll?f:f?(this.revealRange(f,c),f):(b.backwards?e.start=e.end:e.end=e.start,void this.selection.setRange(e))},this.findNext=function(a,b){this.find({skipCurrent:!0,backwards:!1},a,b)},this.findPrevious=function(a,b){this.find(a,{skipCurrent:!0,backwards:!0},b)},this.revealRange=function(a,b){this.$blockScrolling+=1,this.session.unfold(a),this.selection.setSelectionRange(a),this.$blockScrolling-=1;var c=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(a.start,a.end,.5),b!==!1&&this.renderer.animateScrolling(c)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy()},this.setAutoScrollEditorIntoView=function(a){if(a){var b,c=this,d=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var e=this.$scrollAnchor;e.style.cssText="position:absolute",this.container.insertBefore(e,this.container.firstChild);var f=this.on("changeSelection",function(){d=!0}),g=this.renderer.on("beforeRender",function(){d&&(b=c.renderer.container.getBoundingClientRect())}),h=this.renderer.on("afterRender",function(){if(d&&b&&(c.isFocused()||c.searchBox&&c.searchBox.isFocused())){var a=c.renderer,f=a.$cursorLayer.$pixelPos,g=a.layerConfig,h=f.top-g.offset;d=f.top>=0&&h+b.top<0?!0:f.topwindow.innerHeight?!1:null,null!=d&&(e.style.top=h+"px",e.style.left=f.left+"px",e.style.height=g.lineHeight+"px",e.scrollIntoView(d)),d=b=null}});this.setAutoScrollEditorIntoView=function(a){a||(delete this.setAutoScrollEditorIntoView,this.removeEventListener("changeSelection",f),this.renderer.removeEventListener("afterRender",h),this.renderer.removeEventListener("beforeRender",g))}}},this.$resetCursorStyle=function(){var a=this.$cursorStyle||"ace",b=this.renderer.$cursorLayer;b&&(b.setSmoothBlinking(/smooth/.test(a)),b.isBlinking=!this.$readOnly&&"wide"!=a,e.setCssClass(b.element,"ace_slim-cursors",/slim/.test(a)))}}).call(t.prototype),r.defineOptions(t.prototype,"editor",{selectionStyle:{set:function(a){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:a})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(a){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(a){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(a){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(a){this.setAutoScrollEditorIntoView(a)}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",foldStyle:"session",mode:"session"}),b.Editor=t}),ace.define("ace/undomanager",["require","exports","module"],function(a,b,c){"use strict";var d=function(){this.reset()};(function(){this.execute=function(a){var b=a.args[0];this.$doc=a.args[1],a.merge&&this.hasUndo()&&(this.dirtyCounter--,b=this.$undoStack.pop().concat(b)),this.$undoStack.push(b),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(a){var b=this.$undoStack.pop(),c=null;return b&&(c=this.$doc.undoChanges(b,a),this.$redoStack.push(b),this.dirtyCounter--),c},this.redo=function(a){var b=this.$redoStack.pop(),c=null;return b&&(c=this.$doc.redoChanges(b,a),this.$undoStack.push(b),this.dirtyCounter++),c},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter}}).call(d.prototype),b.UndoManager=d}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("../lib/dom"),e=a("../lib/oop"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=function(a){this.element=d.createElement("div"),this.element.className="ace_layer ace_gutter-layer",a.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){e.implement(this,g),this.setSession=function(a){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=a,a&&a.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(a,b)},this.removeGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(a,b)},this.setAnnotations=function(a){this.$annotations=[];for(var b=0;bg&&(p=f.end.row+1,f=b.getNextFoldLine(p,f),g=f?f.start.row:1/0),p>e){for(;this.$cells.length>o+1;)n=this.$cells.pop(),this.element.removeChild(n.element);break}n=this.$cells[++o],n||(n={element:null,textNode:null,foldWidget:null},n.element=d.createElement("div"),n.textNode=document.createTextNode(""),n.element.appendChild(n.textNode),this.element.appendChild(n.element),this.$cells[o]=n);var q="ace_gutter-cell ";i[p]&&(q+=i[p]),j[p]&&(q+=j[p]),this.$annotations[p]&&(q+=this.$annotations[p].className),n.element.className!=q&&(n.element.className=q);var r=b.getRowLength(p)*a.lineHeight+"px";if(r!=n.element.style.height&&(n.element.style.height=r),h){var s=h[p];null==s&&(s=h[p]=b.getFoldWidget(p))}if(s){n.foldWidget||(n.foldWidget=d.createElement("span"),n.element.appendChild(n.foldWidget));var q="ace_fold-widget ace_"+s;q+="start"==s&&p==g&&pc.right-b.right?"foldWidgets":void 0}}).call(h.prototype),b.Gutter=h}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(a,b,c){"use strict";var d=a("../range").Range,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_marker-layer",a.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setMarkers=function(a){this.markers=a},this.update=function(a){var a=a||this.config;if(a){this.config=a;var b=[];for(var c in this.markers){var d=this.markers[c];if(d.range){var e=d.range.clipRows(a.firstRow,a.lastRow);if(!e.isEmpty())if(e=e.toScreenRange(this.session),d.renderer){var f=this.$getTop(e.start.row,a),g=this.$padding+e.start.column*a.characterWidth;d.renderer(b,e,g,f,a)}else"fullLine"==d.type?this.drawFullLineMarker(b,e,d.clazz,a):"screenLine"==d.type?this.drawScreenLineMarker(b,e,d.clazz,a):e.isMultiLine()?"text"==d.type?this.drawTextMarker(b,e,d.clazz,a):this.drawMultiLineMarker(b,e,d.clazz,a):this.drawSingleLineMarker(b,e,d.clazz+" ace_start",a)}else d.update(b,this,this.session,a)}this.element.innerHTML=b.join("")}},this.$getTop=function(a,b){return(a-b.firstRowScreen)*b.lineHeight},this.drawTextMarker=function(a,b,c,e,f){var g=b.start.row,h=new d(g,b.start.column,g,this.session.getScreenLastRowColumn(g));for(this.drawSingleLineMarker(a,h,c+" ace_start",e,1,f),g=b.end.row,h=new d(g,0,g,b.end.column),this.drawSingleLineMarker(a,h,c,e,0,f),g=b.start.row+1;g"),h=this.$getTop(b.end.row,d);var j=b.end.column*d.characterWidth;a.push("
"),g=(b.end.row-b.start.row-1)*d.lineHeight,0>g||(h=this.$getTop(b.start.row+1,d),a.push("
"))},this.drawSingleLineMarker=function(a,b,c,d,e,f){var g=d.lineHeight,h=(b.end.column+(e||0)-b.start.column)*d.characterWidth,i=this.$getTop(b.start.row,d),j=this.$padding+b.start.column*d.characterWidth;a.push("
")},this.drawFullLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;b.start.row!=b.end.row&&(g+=this.$getTop(b.end.row,d)-f),a.push("
")},this.drawScreenLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;a.push("
")}}).call(f.prototype),b.Marker=f}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=(a("../lib/useragent"),a("../lib/event_emitter").EventEmitter),h=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_text-layer",a.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){d.implement(this,g),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var a="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;return this.EOL_CHAR!=a?(this.EOL_CHAR=a,!0):void 0},this.setPadding=function(a){this.$padding=a,this.element.style.padding="0 "+a+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(a){this.$fontMetrics=a,this.$fontMetrics.on("changeCharacterSize",function(a){this._signal("changeCharacterSize",a)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(a){this.session=a,a&&this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(a){return this.showInvisibles==a?!1:(this.showInvisibles=a,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(a){return this.displayIndentGuides==a?!1:(this.displayIndentGuides=a,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var a=this.session.getTabSize();this.tabSize=a;for(var b=this.$tabStrings=[0],c=1;a+1>c;c++)b.push(this.showInvisibles?""+this.TAB_CHAR+f.stringRepeat(" ",c-1)+"":f.stringRepeat(" ",c));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var d="ace_indent-guide",e="",g="";if(this.showInvisibles){d+=" ace_invisible",e=" ace_invisible_space",g=" ace_invisible_tab";var h=f.stringRepeat(this.SPACE_CHAR,this.tabSize),i=this.TAB_CHAR+f.stringRepeat(" ",this.tabSize-1)}else var h=f.stringRepeat(" ",this.tabSize),i=h;this.$tabStrings[" "]=""+h+"",this.$tabStrings[" "]=""+i+""}},this.updateLines=function(a,b,c){(this.config.lastRow!=a.lastRow||this.config.firstRow!=a.firstRow)&&this.scrollLines(a),this.config=a;for(var d=Math.max(b,a.firstRow),e=Math.min(c,a.lastRow),f=this.element.childNodes,g=0,h=a.firstRow;d>h;h++){var i=this.session.getFoldLine(h);if(i){if(i.containsRow(d)){d=i.start.row;break}h=i.end.row}g++}for(var h=d,i=this.session.getNextFoldLine(h),j=i?i.start.row:1/0;h>j&&(h=i.end.row+1,i=this.session.getNextFoldLine(h,i),j=i?i.start.row:1/0),!(h>e);){var k=f[g++];if(k){var l=[];this.$renderLine(l,h,!this.$useLineGroups(),h==j?i:!1),k.style.height=a.lineHeight*this.session.getRowLength(h)+"px",k.innerHTML=l.join("")}h++}},this.scrollLines=function(a){var b=this.config;if(this.config=a,!b||b.lastRow0;d--)c.removeChild(c.firstChild);if(b.lastRow>a.lastRow)for(var d=this.session.getFoldedRowCount(a.lastRow+1,b.lastRow);d>0;d--)c.removeChild(c.lastChild);if(a.firstRowb.lastRow){var e=this.$renderLinesFragment(a,b.lastRow+1,a.lastRow);c.appendChild(e)}},this.$renderLinesFragment=function(a,b,c){for(var d=this.element.ownerDocument.createDocumentFragment(),f=b,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),!(f>c);){var i=e.createElement("div"),j=[];if(this.$renderLine(j,f,!1,f==h?g:!1),i.innerHTML=j.join(""),this.$useLineGroups())i.className="ace_line_group",d.appendChild(i),i.style.height=a.lineHeight*this.session.getRowLength(f)+"px";else for(;i.firstChild;)d.appendChild(i.firstChild);f++}return d},this.update=function(a){this.config=a;for(var b=[],c=a.firstRow,d=a.lastRow,e=c,f=this.session.getNextFoldLine(e),g=f?f.start.row:1/0;e>g&&(e=f.end.row+1,f=this.session.getNextFoldLine(e,f),g=f?f.start.row:1/0),!(e>d);)this.$useLineGroups()&&b.push("
"),this.$renderLine(b,e,!1,e==g?f:!1),this.$useLineGroups()&&b.push("
"),e++;this.element.innerHTML=b.join("")},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(a,b,c,d){var e=this,g=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,h=function(a,c,d,g,h){if(c)return e.showInvisibles?""+f.stringRepeat(e.SPACE_CHAR,a.length)+"":f.stringRepeat(" ",a.length);if("&"==a)return"&";if("<"==a)return"<";if(" "==a){var i=e.session.getScreenTabSize(b+g);return b+=i-1,e.$tabStrings[i]}if(" "==a){var j=e.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",k=e.showInvisibles?e.SPACE_CHAR:"";return b+=1,""+k+""}return d?""+e.SPACE_CHAR+"":(b+=1,""+a+"")},i=d.replace(g,h);if(this.$textToken[c.type])a.push(i);else{var j="ace_"+c.type.replace(/\./g," ace_"),k="";"fold"==c.type&&(k=" style='width:"+c.value.length*this.config.characterWidth+"px;' "),a.push("",i,"")}return b+d.length},this.renderIndentGuide=function(a,b,c){var d=b.search(this.$indentGuideRe);return 0>=d||d>=c?b:" "==b[0]?(d-=d%this.tabSize,a.push(f.stringRepeat(this.$tabStrings[" "],d/this.tabSize)),b.substr(d)):" "==b[0]?(a.push(f.stringRepeat(this.$tabStrings[" "],d)),b.substr(d)):b},this.$renderWrappedLine=function(a,b,c,d){for(var e=0,f=0,g=c[0],h=0,i=0;i=g;)h=this.$renderToken(a,h,j,k.substring(0,g-e)),k=k.substring(g-e),e=g,d||a.push("","
"),f++,h=0,g=c[f]||Number.MAX_VALUE;0!=k.length&&(e+=k.length,h=this.$renderToken(a,h,j,k))}}},this.$renderSimpleLine=function(a,b){var c=0,d=b[0],e=d.value;this.displayIndentGuides&&(e=this.renderIndentGuide(a,e)),e&&(c=this.$renderToken(a,c,d,e));for(var f=1;f"),e.length){var f=this.session.getRowSplitData(b);f&&f.length?this.$renderWrappedLine(a,e,f,c):this.$renderSimpleLine(a,e)}this.showInvisibles&&(d&&(b=d.end.row),a.push("",b==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"")),c||a.push("
")},this.$getFoldLineTokens=function(a,b){function c(a,b,c){for(var d=0,f=0;f+a[d].value.lengthc-b&&(g=g.substring(0,c-b)),e.push({type:a[d].type,value:g}),f=b+g.length,d+=1}for(;c>f&&dc?{type:a[d].type,value:g.substring(0,c-f)}:a[d]),f+=g.length,d+=1}}var d=this.session,e=[],f=d.getTokens(a);return b.walk(function(a,b,g,h,i){null!=a?e.push({type:"fold",value:a}):(i&&(f=d.getTokens(b)),f.length&&c(f,h,g))},b.end.row,this.session.getLine(b.end.row).length),e},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(h.prototype),b.Text=h}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict";var d,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),void 0===d&&(d="opacity"in this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),e.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateVisibility.bind(this)};(function(){this.$updateVisibility=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.visibility=a?"":"hidden"},this.$updateOpacity=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.opacity=a?"":"0"},this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},this.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},this.setSmoothBlinking=function(a){a==this.smoothBlinking||d||(this.smoothBlinking=a,e.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.$updateCursors=(a?this.$updateOpacity:this.$updateVisibility).bind(this),this.restartTimer())},this.addCursor=function(){var a=e.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},this.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},this.hideCursor=function(){this.isVisible=!1,e.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,e.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&e.removeCssClass(this.element,"ace_smooth-blinking"),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){e.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var b=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),b()},this.blinkInterval),b()}},this.getPixelPosition=function(a,b){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var c=this.session.documentToScreenPosition(a),d=this.$padding+c.column*this.config.characterWidth,e=(c.row-(b?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:d,top:e}},this.update=function(a){this.config=a;var b=this.session.$selectionMarkers,c=0,d=0;(void 0===b||0===b.length)&&(b=[{cursor:null}]);for(var c=0,e=b.length;e>c;c++){var f=this.getPixelPosition(b[c].cursor,!0);if(!((f.top>a.height+a.offset||f.top<0)&&c>1)){var g=(this.cursors[d++]||this.addCursor()).style;g.left=f.left+"px",g.top=f.top+"px",g.width=a.characterWidth+"px",g.height=a.lineHeight+"px"}}for(;this.cursors.length>d;)this.removeCursor();var h=this.session.getOverwrite();this.$setOverwrite(h),this.$pixelPos=f,this.restartTimer()},this.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?e.addCssClass(this.element,"ace_overwrite-cursors"):e.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(f.prototype),b.Cursor=f}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/event"),g=a("./lib/event_emitter").EventEmitter,h=function(a){this.element=e.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=e.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),a.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,f.addListener(this.element,"scroll",this.onScroll.bind(this)),f.addListener(this.element,"mousedown",f.preventDefault)};(function(){d.implement(this,g),this.setVisible=function(a){this.element.style.display=a?"":"none",this.isVisible=a}}).call(h.prototype);var i=function(a,b){h.call(this,a), +this.scrollTop=0,b.$scrollbarWidth=this.width=e.scrollbarWidth(a.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};d.inherits(i,h),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(a){this.element.style.height=a+"px"},this.setInnerHeight=function(a){this.inner.style.height=a+"px"},this.setScrollHeight=function(a){this.inner.style.height=a+"px"},this.setScrollTop=function(a){this.scrollTop!=a&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=a)}}.call(i.prototype);var j=function(a,b){h.call(this,a),this.scrollLeft=0,this.height=b.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};d.inherits(j,h),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(a){this.element.style.width=a+"px"},this.setInnerWidth=function(a){this.inner.style.width=a+"px"},this.setScrollWidth=function(a){this.inner.style.width=a+"px"},this.setScrollLeft=function(a){this.scrollLeft!=a&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=a)}}.call(j.prototype),b.ScrollBar=i,b.ScrollBarV=i,b.ScrollBarH=j,b.VScrollBar=i,b.HScrollBar=j}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(a,b,c){"use strict";var d=a("./lib/event"),e=function(a,b){this.onRender=a,this.pending=!1,this.changes=0,this.window=b||window};(function(){this.schedule=function(a){if(this.changes=this.changes|a,!this.pending&&this.changes){this.pending=!0;var b=this;d.nextFrame(function(){b.pending=!1;for(var a;a=b.changes;)b.changes=0,b.onRender(a)},this.window)}}}).call(e.prototype),b.RenderLoop=e}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=a("../lib/useragent"),h=a("../lib/event_emitter").EventEmitter,i=0,j=b.FontMetrics=function(a,b){this.el=e.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=e.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=e.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),a.appendChild(this.el),i||this.$testFractionalRect(),this.$measureNode.innerHTML=f.stringRepeat("X",i),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){d.implement(this,h),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var a=e.createElement("div");this.$setMeasureNodeStyles(a.style),a.style.width="0.2px",document.documentElement.appendChild(a);var b=a.getBoundingClientRect().width;i=b>0&&1>b?50:100,a.parentNode.removeChild(a)},this.$setMeasureNodeStyles=function(a,b){a.width=a.height="auto",a.left=a.top="-100px",a.visibility="hidden",a.position="fixed",a.whiteSpace="pre",g.isIE<8?a["font-family"]="inherit":a.font="inherit",a.overflow=b?"hidden":"visible"},this.checkForSizeChanges=function(){var a=this.$measureSizes();if(a&&(this.$characterSize.width!==a.width||this.$characterSize.height!==a.height)){this.$measureNode.style.fontWeight="bold";var b=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=a,this.charSizes=Object.create(null),this.allowBoldFonts=b&&b.width===a.width&&b.height===a.height,this._emit("changeCharacterSize",{data:a})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var a=this;return this.$pollSizeChangesTimer=setInterval(function(){a.checkForSizeChanges()},500)},this.setPolling=function(a){a?this.$pollSizeChanges():this.$pollSizeChangesTimer&&this.$pollSizeChangesTimer},this.$measureSizes=function(){if(50===i){var a=null;try{a=this.$measureNode.getBoundingClientRect()}catch(b){a={width:0,height:0}}var c={height:a.height,width:a.width/i}}else var c={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/i};return 0===c.width||0===c.height?null:c},this.$measureCharWidth=function(a){this.$main.innerHTML=f.stringRepeat(a,i);var b=this.$main.getBoundingClientRect();return b.width/i},this.getCharacterWidth=function(a){var b=this.charSizes[a];return void 0===b&&(this.charSizes[a]=this.$measureCharWidth(a)/this.$characterSize.width),b},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(j.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(a,b,c){"use strict";var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./config"),g=a("./lib/useragent"),h=a("./layer/gutter").Gutter,i=a("./layer/marker").Marker,j=a("./layer/text").Text,k=a("./layer/cursor").Cursor,l=a("./scrollbar").HScrollBar,m=a("./scrollbar").VScrollBar,n=a("./renderloop").RenderLoop,o=a("./layer/font_metrics").FontMetrics,p=a("./lib/event_emitter").EventEmitter,q='.ace_editor { position: relative; overflow: hidden; font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace; direction: ltr; } .ace_scroller { position: absolute; overflow: hidden; top: 0; bottom: 0; background-color: inherit; -ms-user-select: none; -moz-user-select: none; -webkit-user-select: none; user-select: none; cursor: text; } .ace_content { position: absolute; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; min-width: 100%; } .ace_dragging .ace_scroller:before{ position: absolute; top: 0; left: 0; right: 0; bottom: 0; content: \'\'; background: rgba(250, 250, 250, 0.01); z-index: 1000; } .ace_dragging.ace_dark .ace_scroller:before{ background: rgba(0, 0, 0, 0.01); } .ace_selecting, .ace_selecting * { cursor: text !important; } .ace_gutter { position: absolute; overflow : hidden; width: auto; top: 0; bottom: 0; left: 0; cursor: default; z-index: 4; -ms-user-select: none; -moz-user-select: none; -webkit-user-select: none; user-select: none; } .ace_gutter-active-line { position: absolute; left: 0; right: 0; } .ace_scroller.ace_scroll-left { box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset; } .ace_gutter-cell { padding-left: 19px; padding-right: 6px; background-repeat: no-repeat; } .ace_gutter-cell.ace_error { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg=="); background-repeat: no-repeat; background-position: 2px center; } .ace_gutter-cell.ace_warning { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg=="); background-position: 2px center; } .ace_gutter-cell.ace_info { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII="); background-position: 2px center; } .ace_dark .ace_gutter-cell.ace_info { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC"); } .ace_scrollbar { position: absolute; right: 0; bottom: 0; z-index: 6; } .ace_scrollbar-inner { position: absolute; cursor: text; left: 0; top: 0; } .ace_scrollbar-v{ overflow-x: hidden; overflow-y: scroll; top: 0; } .ace_scrollbar-h { overflow-x: scroll; overflow-y: hidden; left: 0; } .ace_print-margin { position: absolute; height: 100%; } .ace_text-input { position: absolute; z-index: 0; width: 0.5em; height: 1em; opacity: 0; background: transparent; -moz-appearance: none; appearance: none; border: none; resize: none; outline: none; overflow: hidden; font: inherit; padding: 0 1px; margin: 0 -1px; text-indent: -1em; -ms-user-select: text; -moz-user-select: text; -webkit-user-select: text; user-select: text; } .ace_text-input.ace_composition { background: inherit; color: inherit; z-index: 1000; opacity: 1; text-indent: 0; } .ace_layer { z-index: 1; position: absolute; overflow: hidden; white-space: pre; height: 100%; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; pointer-events: none; } .ace_gutter-layer { position: relative; width: auto; text-align: right; pointer-events: auto; } .ace_text-layer { font: inherit !important; } .ace_cjk { display: inline-block; text-align: center; } .ace_cursor-layer { z-index: 4; } .ace_cursor { z-index: 4; position: absolute; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-left: 2px solid } .ace_slim-cursors .ace_cursor { border-left-width: 1px; } .ace_overwrite-cursors .ace_cursor { border-left-width: 0; border-bottom: 1px solid; } .ace_hidden-cursors .ace_cursor { opacity: 0.2; } .ace_smooth-blinking .ace_cursor { -webkit-transition: opacity 0.18s; transition: opacity 0.18s; } .ace_editor.ace_multiselect .ace_cursor { border-left-width: 1px; } .ace_marker-layer .ace_step, .ace_marker-layer .ace_stack { position: absolute; z-index: 3; } .ace_marker-layer .ace_selection { position: absolute; z-index: 5; } .ace_marker-layer .ace_bracket { position: absolute; z-index: 6; } .ace_marker-layer .ace_active-line { position: absolute; z-index: 2; } .ace_marker-layer .ace_selected-word { position: absolute; z-index: 4; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } .ace_line .ace_fold { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; height: 11px; margin-top: -2px; vertical-align: middle; background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII="); background-repeat: no-repeat, repeat-x; background-position: center center, top left; color: transparent; border: 1px solid black; border-radius: 2px; cursor: pointer; pointer-events: auto; } .ace_dark .ace_fold { } .ace_fold:hover{ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC"); } .ace_tooltip { background-color: #FFF; background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1)); background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1)); border: 1px solid gray; border-radius: 1px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); color: black; max-width: 100%; padding: 3px 4px; position: fixed; z-index: 999999; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; cursor: default; white-space: pre; word-wrap: break-word; line-height: normal; font-style: normal; font-weight: normal; letter-spacing: normal; pointer-events: none; } .ace_folding-enabled > .ace_gutter-cell { padding-right: 13px; } .ace_fold-widget { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 -12px 0 1px; display: none; width: 11px; vertical-align: top; background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg=="); background-repeat: no-repeat; background-position: center; border-radius: 3px; border: 1px solid transparent; cursor: pointer; } .ace_folding-enabled .ace_fold-widget { display: inline-block; } .ace_fold-widget.ace_end { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg=="); } .ace_fold-widget.ace_closed { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA=="); } .ace_fold-widget:hover { border: 1px solid rgba(0, 0, 0, 0.3); background-color: rgba(255, 255, 255, 0.2); box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7); } .ace_fold-widget:active { border: 1px solid rgba(0, 0, 0, 0.4); background-color: rgba(0, 0, 0, 0.05); box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8); } .ace_dark .ace_fold-widget { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC"); } .ace_dark .ace_fold-widget.ace_end { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg=="); } .ace_dark .ace_fold-widget.ace_closed { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg=="); } .ace_dark .ace_fold-widget:hover { box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); background-color: rgba(255, 255, 255, 0.1); } .ace_dark .ace_fold-widget:active { box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); } .ace_fold-widget.ace_invalid { background-color: #FFB4B4; border-color: #DE5555; } .ace_fade-fold-widgets .ace_fold-widget { -webkit-transition: opacity 0.4s ease 0.05s; transition: opacity 0.4s ease 0.05s; opacity: 0; } .ace_fade-fold-widgets:hover .ace_fold-widget { -webkit-transition: opacity 0.05s ease 0.05s; transition: opacity 0.05s ease 0.05s; opacity:1; } .ace_underline { text-decoration: underline; } .ace_bold { font-weight: bold; } .ace_nobold .ace_bold { font-weight: normal; } .ace_italic { font-style: italic; } .ace_error-marker { background-color: rgba(255, 0, 0,0.2); position: absolute; z-index: 9; } .ace_highlight-marker { background-color: rgba(255, 255, 0,0.2); position: absolute; z-index: 8; } ';e.importCssString(q,"ace_editor");var r=function(a,b){var c=this;this.container=a||e.createElement("div"),this.$keepTextAreaAtCursor=!g.isOldIE,e.addCssClass(this.container,"ace_editor"),this.setTheme(b),this.$gutter=e.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=e.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=e.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new h(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new i(this.content);var d=this.$textLayer=new j(this.content);this.canvas=d.element,this.$markerFront=new i(this.content),this.$cursorLayer=new k(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new m(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollTop(a.data-c.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollLeft(a.data-c.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new o(this.container,500),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(a){c.updateCharacterSize(),c.onResize(!0,c.gutterWidth,c.$size.width,c.$size.height),c._signal("changeCharacterSize",a)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new n(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),f.resetOptions(this),f._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,d.implement(this,p),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(a){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=a,a&&this.scrollMargin.top&&a.getScrollTop()<=0&&a.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(a),this.$markerBack.setSession(a),this.$markerFront.setSession(a),this.$gutterLayer.setSession(a),this.$textLayer.setSession(a),a&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(a,b,c){if(void 0===b&&(b=1/0),this.$changedLines?(this.$changedLines.firstRow>a&&(this.$changedLines.firstRow=a),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar()},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(a){a?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(a,b,c,d){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=a?1:0;var e=this.container;d||(d=e.clientHeight||e.scrollHeight),c||(c=e.clientWidth||e.scrollWidth);var f=this.$updateCachedSize(a,b,c,d);if(!this.$size.scrollerHeight||!c&&!d)return this.resizing=0;a&&(this.$gutterLayer.$padding=null),a?this.$renderChanges(f|this.$changes,!0):this.$loop.schedule(f|this.$changes),this.resizing&&(this.resizing=0)}},this.$updateCachedSize=function(a,b,c,d){d-=this.$extraHeight||0;var e=0,f=this.$size,g={width:f.width,height:f.height,scrollerHeight:f.scrollerHeight,scrollerWidth:f.scrollerWidth};return d&&(a||f.height!=d)&&(f.height=d,e|=this.CHANGE_SIZE,f.scrollerHeight=f.height,this.$horizScroll&&(f.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",e|=this.CHANGE_SCROLL),c&&(a||f.width!=c)&&(e|=this.CHANGE_SIZE,f.width=c,null==b&&(b=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=b,this.scrollBarH.element.style.left=this.scroller.style.left=b+"px",f.scrollerWidth=Math.max(0,c-b-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||a)&&(e|=this.CHANGE_FULL)),f.$dirty=!c||!d,e&&this._signal("resize",g),e},this.onGutterResize=function(){var a=this.$showGutter?this.$gutter.offsetWidth:0;a!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,a,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var a=this.$size.scrollerWidth-2*this.$padding,b=Math.floor(a/this.characterWidth);return this.session.adjustWrapLimit(b,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(a){this.setOption("animatedScroll",a)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(a){this.setOption("showInvisibles",a)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(a){this.setOption("displayIndentGuides",a)},this.setShowPrintMargin=function(a){this.setOption("showPrintMargin",a)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(a){this.setOption("printMarginColumn",a)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(a){return this.setOption("showGutter",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var a=this.$cursorLayer.$pixelPos,b=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var c=this.session.selection.getCursor();c.column=0,a=this.$cursorLayer.getPixelPosition(c,!0),b*=this.session.getRowLength(c.row)}this.$gutterLineHighlight.style.top=a.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=b+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var a=e.createElement("div");a.className="ace_layer ace_print-margin-layer",this.$printMarginEl=e.createElement("div"),this.$printMarginEl.className="ace_print-margin",a.appendChild(this.$printMarginEl),this.content.insertBefore(a,this.content.firstChild)}var b=this.$printMarginEl.style;b.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",b.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.content},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var a=this.layerConfig,b=this.$cursorLayer.$pixelPos.top,c=this.$cursorLayer.$pixelPos.left;b-=a.offset;var d=this.lineHeight;if(!(0>b||b>a.height-d)){var e=this.characterWidth;if(this.$composition){var f=this.textarea.value.replace(/^\x01+/,"");e*=this.session.$getStringScreenWidth(f)[0]+2,d+=2}c-=this.scrollLeft,c>this.$size.scrollerWidth-e&&(c=this.$size.scrollerWidth-e),c+=this.gutterWidth,this.textarea.style.height=d+"px",this.textarea.style.width=e+"px",this.textarea.style.left=Math.min(c,this.$size.scrollerWidth-e)+"px",this.textarea.style.top=Math.min(b,this.$size.height-d)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var a=Math.floor((this.layerConfig.height+this.layerConfig.offset)/this.layerConfig.lineHeight);return this.layerConfig.firstRow-1+a},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(a){this.$padding=a,this.$textLayer.setPadding(a),this.$cursorLayer.setPadding(a),this.$markerFront.setPadding(a),this.$markerBack.setPadding(a),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(a,b,c,d){var e=this.scrollMargin;e.top=0|a,e.bottom=0|b,e.right=0|d,e.left=0|c,e.v=e.top+e.bottom,e.h=e.left+e.right,e.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-e.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(a){this.setOption("hScrollBarAlwaysVisible",a)},this.getVScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(a){this.setOption("vScrollBarAlwaysVisible",a)},this.$updateScrollBarV=function(){var a=this.layerConfig.maxHeight,b=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(a-=(b-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>a-b&&(a=this.scrollTop+b,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(a+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(a,b){if(this.$changes&&(a|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!a&&!b)return void(this.$changes|=a);if(this.$size.$dirty)return this.$changes|=a,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var c=this.layerConfig;if(a&this.CHANGE_FULL||a&this.CHANGE_SIZE||a&this.CHANGE_TEXT||a&this.CHANGE_LINES||a&this.CHANGE_SCROLL||a&this.CHANGE_H_SCROLL){if(a|=this.$computeLayerConfig(),c.firstRow!=this.layerConfig.firstRow&&c.firstRowScreen==this.layerConfig.firstRowScreen){var d=this.scrollTop+(c.firstRow-this.layerConfig.firstRow)*this.lineHeight;d>0&&(this.scrollTop=d,a|=this.CHANGE_SCROLL,a|=this.$computeLayerConfig())}c=this.layerConfig,this.$updateScrollBarV(),a&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-c.offset+"px",this.content.style.marginTop=-c.offset+"px",this.content.style.width=c.width+2*this.$padding+"px",this.content.style.height=c.minHeight+"px"}return a&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),a&this.CHANGE_FULL?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender")):a&this.CHANGE_SCROLL?(a&this.CHANGE_TEXT||a&this.CHANGE_LINES?this.$textLayer.update(c):this.$textLayer.scrollLines(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender")):(a&this.CHANGE_TEXT?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c)):a&this.CHANGE_LINES?(this.$updateLines()||a&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(c):(a&this.CHANGE_TEXT||a&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(c),a&this.CHANGE_CURSOR&&(this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(c),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(c),void this._signal("afterRender"))},this.$autosize=function(){var a=this.session.getScreenLength()*this.lineHeight,b=this.$maxLines*this.lineHeight,c=Math.max((this.$minLines||1)*this.lineHeight,Math.min(b,a))+this.scrollMargin.v+(this.$extraHeight||0),d=a>b;if(c!=this.desiredHeight||this.$size.height!=this.desiredHeight||d!=this.$vScroll){d!=this.$vScroll&&(this.$vScroll=d,this.scrollBarV.setVisible(d));var e=this.container.clientWidth;this.container.style.height=c+"px",this.$updateCachedSize(!0,this.$gutterWidth,e,c),this.desiredHeight=c,this._signal("autosize")}},this.$computeLayerConfig=function(){this.$maxLines&&this.lineHeight>1&&this.$autosize();var a=this.session,b=this.$size,c=b.height<=2*this.lineHeight,d=this.session.getScreenLength(),e=d*this.lineHeight,f=this.scrollTop%this.lineHeight,g=b.scrollerHeight+this.lineHeight,h=this.$getLongestLine(),i=!c&&(this.$hScrollBarAlwaysVisible||b.scrollerWidth-h-2*this.$padding<0),j=this.$horizScroll!==i;j&&(this.$horizScroll=i,this.scrollBarH.setVisible(i));var k=!this.$maxLines&&this.$scrollPastEnd?(b.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;e+=k,this.session.setScrollTop(Math.max(-this.scrollMargin.top,Math.min(this.scrollTop,e-b.scrollerHeight+this.scrollMargin.bottom))),this.session.setScrollLeft(Math.max(-this.scrollMargin.left,Math.min(this.scrollLeft,h+2*this.$padding-b.scrollerWidth+this.scrollMargin.right)));var l=!c&&(this.$vScrollBarAlwaysVisible||b.scrollerHeight-e+k<0||this.scrollTop),m=this.$vScroll!==l; +m&&(this.$vScroll=l,this.scrollBarV.setVisible(l));var n,o,p=Math.ceil(g/this.lineHeight)-1,q=Math.max(0,Math.round((this.scrollTop-f)/this.lineHeight)),r=q+p,s=this.lineHeight;q=a.screenToDocumentRow(q,0);var t=a.getFoldLine(q);t&&(q=t.start.row),n=a.documentToScreenRow(q,0),o=a.getRowLength(q)*s,r=Math.min(a.screenToDocumentRow(r,0),a.getLength()-1),g=b.scrollerHeight+a.getRowLength(r)*s+o,f=this.scrollTop-n*s;var u=0;return this.layerConfig.width!=h&&(u=this.CHANGE_H_SCROLL),(j||m)&&(u=this.$updateCachedSize(!0,this.gutterWidth,b.width,b.height),this._signal("scrollbarVisibilityChanged"),m&&(h=this.$getLongestLine())),this.layerConfig={width:h,padding:this.$padding,firstRow:q,firstRowScreen:n,lastRow:r,lineHeight:s,characterWidth:this.characterWidth,minHeight:g,maxHeight:e,offset:f,gutterOffset:Math.max(0,Math.ceil((f+b.height-b.scrollerHeight)/s)),height:this.$size.scrollerHeight},u},this.$updateLines=function(){var a=this.$changedLines.firstRow,b=this.$changedLines.lastRow;this.$changedLines=null;var c=this.layerConfig;return a>c.lastRow+1||bf?(b&&(f-=b*this.$size.scrollerHeight),0===f&&(f=-this.scrollMargin.top),this.session.setScrollTop(f)):i+this.$size.scrollerHeight-he?(ec;++c)e.push(f(c/this.STEPS,a,b-a));return e},this.scrollToLine=function(a,b,c,d){var e=this.$cursorLayer.getPixelPosition({row:a,column:0}),f=e.top;b&&(f-=this.$size.scrollerHeight/2);var g=this.scrollTop;this.session.setScrollTop(f),c!==!1&&this.animateScrolling(g,d)},this.animateScrolling=function(a,b){var c=this.scrollTop;if(this.$animatedScroll){var d=this;if(a!=c){if(this.$scrollAnimation){var e=this.$scrollAnimation.steps;if(e.length&&(a=e[0],a==c))return}var f=d.$calcSteps(a,c);this.$scrollAnimation={from:a,to:c,steps:f},clearInterval(this.$timer),d.session.setScrollTop(f.shift()),d.session.$scrollTop=c,this.$timer=setInterval(function(){f.length?(d.session.setScrollTop(f.shift()),d.session.$scrollTop=c):null!=c?(d.session.$scrollTop=-1,d.session.setScrollTop(c),c=null):(d.$timer=clearInterval(d.$timer),d.$scrollAnimation=null,b&&b())},10)}}},this.scrollToY=function(a){this.scrollTop!==a&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=a)},this.scrollToX=function(a){this.scrollLeft!==a&&(this.scrollLeft=a),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(a,b){this.session.setScrollTop(b),this.session.setScrollLeft(b)},this.scrollBy=function(a,b){b&&this.session.setScrollTop(this.session.getScrollTop()+b),a&&this.session.setScrollLeft(this.session.getScrollLeft()+a)},this.isScrollableBy=function(a,b){return 0>b&&this.session.getScrollTop()>=1-this.scrollMargin.top?!0:b>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom?!0:0>a&&this.session.getScrollLeft()>=1-this.scrollMargin.left?!0:a>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right?!0:void 0},this.pixelToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=(a+this.scrollLeft-c.left-this.$padding)/this.characterWidth,e=Math.floor((b+this.scrollTop-c.top)/this.lineHeight),f=Math.round(d);return{row:e,column:f,side:d-f>0?1:-1}},this.screenToTextCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=Math.round((a+this.scrollLeft-c.left-this.$padding)/this.characterWidth),e=(b+this.scrollTop-c.top)/this.lineHeight;return this.session.screenToDocumentPosition(e,Math.max(d,0))},this.textToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=this.session.documentToScreenPosition(a,b),e=this.$padding+Math.round(d.column*this.characterWidth),f=d.row*this.lineHeight;return{pageX:c.left+e-this.scrollLeft,pageY:c.top+f-this.scrollTop}},this.visualizeFocus=function(){e.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){e.removeCssClass(this.container,"ace_focus")},this.showComposition=function(a){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,e.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(a){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(e.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(a,b){function c(c){if(d.$themeId!=a)return b&&b();if(c.cssClass){e.importCssString(c.cssText,c.cssClass,d.container.ownerDocument),d.theme&&e.removeCssClass(d.container,d.theme.cssClass);var f="padding"in c?c.padding:"padding"in(d.theme||{})?4:d.$padding;d.$padding&&f!=d.$padding&&d.setPadding(f),d.$theme=c.cssClass,d.theme=c,e.addCssClass(d.container,c.cssClass),e.setCssClass(d.container,"ace_dark",c.isDark),d.$size&&(d.$size.width=0,d.$updateSizeAsync()),d._dispatchEvent("themeLoaded",{theme:c}),b&&b()}}var d=this;if(this.$themeId=a,d._dispatchEvent("themeChange",{theme:a}),a&&"string"!=typeof a)c(a);else{var g=a||this.$options.theme.initialValue;f.loadModule(["theme",g],c)}},this.getTheme=function(){return this.$themeId},this.setStyle=function(a,b){e.setCssClass(this.container,a,b!==!1)},this.unsetStyle=function(a){e.removeCssClass(this.container,a)},this.setCursorStyle=function(a){this.scroller.style.cursor!=a&&(this.scroller.style.cursor=a)},this.setMouseCursor=function(a){this.scroller.style.cursor=a},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(r.prototype),f.defineOptions(r.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(a){this.$textLayer.setShowInvisibles(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(a){"number"==typeof a&&(this.$printMarginColumn=a),this.$showPrintMargin=!!a,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(a){this.$gutter.style.display=a?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(a){e.setCssClass(this.$gutter,"ace_fade-fold-widgets",a)},initialValue:!1},showFoldWidgets:{set:function(a){this.$gutterLayer.setShowFoldWidgets(a)},initialValue:!0},showLineNumbers:{set:function(a){this.$gutterLayer.setShowLineNumbers(a),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(a){this.$textLayer.setDisplayIndentGuides(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(a){return this.$gutterLineHighlight?(this.$gutterLineHighlight.style.display=a?"":"none",void(this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight())):(this.$gutterLineHighlight=e.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight))},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(a){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(a){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(a){"number"==typeof a&&(a+="px"),this.container.style.fontSize=a,this.updateFontSize()},initialValue:12},fontFamily:{set:function(a){this.container.style.fontFamily=a,this.updateFontSize()}},maxLines:{set:function(a){this.updateFull()}},minLines:{set:function(a){this.updateFull()}},scrollPastEnd:{set:function(a){a=+a||0,this.$scrollPastEnd!=a&&(this.$scrollPastEnd=a,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(a){this.$gutterLayer.$fixedWidth=!!a,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(a){this.setTheme(a)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),b.VirtualRenderer=r}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(a,b,d){"use strict";var e=a("../lib/oop"),f=a("../lib/net"),g=a("../lib/event_emitter").EventEmitter,h=a("../config"),i=function(b,d,e,f){if(this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),a.nameToUrl&&!a.toUrl&&(a.toUrl=a.nameToUrl),h.get("packaged")||!a.toUrl)f=f||h.moduleUrl(d.id,"worker");else{var g=this.$normalizePath;f=f||g(a.toUrl("ace/worker/worker.js",null,"_"));var i={};b.forEach(function(b){i[b]=g(a.toUrl(b,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}try{var j=d.src,k=c(19),l=new k([j],{type:"application/javascript"}),m=(window.URL||window.webkitURL).createObjectURL(l);this.$worker=new Worker(m)}catch(n){if(!(n instanceof window.DOMException))throw n;var l=this.$workerBlob(f),o=window.URL||window.webkitURL,p=o.createObjectURL(l);this.$worker=new Worker(p),o.revokeObjectURL(p)}this.$worker.postMessage({init:!0,tlns:i,module:d.id,classname:e}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){e.implement(this,g),this.onMessage=function(a){var b=a.data;switch(b.type){case"event":this._signal(b.name,{data:b.data});break;case"call":var c=this.callbacks[b.id];c&&(c(b.data),delete this.callbacks[b.id]);break;case"error":this.reportError(b.data);break;case"log":window.console&&console.log&&console.log.apply(console,b.data)}},this.reportError=function(a){window.console&&console.error&&console.error(a)},this.$normalizePath=function(a){return f.qualifyURL(a)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(a,b){this.$worker.postMessage({command:a,args:b})},this.call=function(a,b,c){if(c){var d=this.callbackId++;this.callbacks[d]=c,b.push(d)}this.send(a,b)},this.emit=function(a,b){try{this.$worker.postMessage({event:a,data:{data:b.data}})}catch(c){console.error(c.stack)}},this.attachToDocument=function(a){this.$doc&&this.terminate(),this.$doc=a,this.call("setValue",[a.getValue()]),a.on("change",this.changeListener)},this.changeListener=function(a){this.deltaQueue?this.deltaQueue.push(a.data):(this.deltaQueue=[a.data],setTimeout(this.$sendDeltaQueue,0))},this.$sendDeltaQueue=function(){var a=this.deltaQueue;a&&(this.deltaQueue=null,a.length>20&&a.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:a}))},this.$workerBlob=function(a){var b="importScripts('"+f.qualifyURL(a)+"');";try{return new Blob([b],{type:"application/javascript"})}catch(c){var d=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,e=new d;return e.append(b),e.getBlob("application/javascript")}}}).call(i.prototype);var j=function(a,b,c){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var d=null,e=!1,f=Object.create(g),i=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(a){i.messageBuffer.push(a),d&&(e?setTimeout(j):j())},this.setEmitSync=function(a){e=a};var j=function(){var a=i.messageBuffer.shift();a.command?d[a.command].apply(d,a.args):a.event&&f._signal(a.event,a.data)};f.postMessage=function(a){i.onMessage({data:a})},f.callback=function(a,b){this.postMessage({type:"call",id:b,data:a})},f.emit=function(a,b){this.postMessage({type:"event",name:a,data:b})},h.loadModule(["worker",b],function(a){for(d=new a[c](f);i.messageBuffer.length;)j()})};j.prototype=i.prototype,b.UIWorkerClient=j,b.WorkerClient=i}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(a,b,c){"use strict";var d=a("./range").Range,e=a("./lib/event_emitter").EventEmitter,f=a("./lib/oop"),g=function(a,b,c,d,e,f){var g=this;this.length=b,this.session=a,this.doc=a.getDocument(),this.mainClass=e,this.othersClass=f,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=d,this.$onCursorChange=function(){setTimeout(function(){g.onCursorChange()})},this.$pos=c;var h=a.getUndoManager().$undoStack||a.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=h.length,this.setup(),a.selection.on("changeCursor",this.$onCursorChange)};(function(){f.implement(this,e),this.setup=function(){var a=this,b=this.doc,c=this.session,e=this.$pos;this.selectionBefore=c.selection.toJSON(),c.selection.inMultiSelectMode&&c.selection.toSingleRange(),this.pos=b.createAnchor(e.row,e.column),this.markerId=c.addMarker(new d(e.row,e.column,e.row,e.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(b){c.removeMarker(a.markerId),a.markerId=c.addMarker(new d(b.value.row,b.value.column,b.value.row,b.value.column+a.length),a.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(c){var d=b.createAnchor(c.row,c.column);a.others.push(d)}),c.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var a=this.session,b=this;this.othersActive=!0,this.others.forEach(function(c){c.markerId=a.addMarker(new d(c.row,c.column,c.row,c.column+b.length),b.othersClass,null,!1),c.on("change",function(e){a.removeMarker(c.markerId),c.markerId=a.addMarker(new d(e.value.row,e.value.column,e.value.row,e.value.column+b.length),b.othersClass,null,!1)})})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var a=0;a=this.pos.column&&c.start.column<=this.pos.column+this.length+1){var f=c.start.column-this.pos.column;if(this.length+=e,!this.session.$fromUndo){if("insertText"===b.action)for(var g=this.others.length-1;g>=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=this.pos.column&&b.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",a)):(this.hideOtherMarkers(),this._emit("cursorLeave",a))}},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var a=0;ac;c++)a.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}).call(g.prototype),b.PlaceHolder=g}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(a,b,c){function d(a,b){return a.row==b.row&&a.column==b.column}function e(a){var b=a.domEvent,c=b.altKey,e=b.shiftKey,h=b.ctrlKey,i=a.getAccelKey(),j=a.getButton();if(h&&g.isMac&&(j=b.button),a.editor.inMultiSelectMode&&2==j)return void a.editor.textInput.onContextMenu(a.domEvent);if(!h&&!c&&!i)return void(0===j&&a.editor.inMultiSelectMode&&a.editor.exitMultiSelectMode());if(0===j){var k,l=a.editor,m=l.selection,n=l.inMultiSelectMode,o=a.getDocumentPosition(),p=m.getCursor(),q=a.inSelection()||m.isEmpty()&&d(o,p),r=a.x,s=a.y,t=function(a){r=a.clientX,s=a.clientY},u=l.session,v=l.renderer.pixelToScreenCoordinates(r,s),w=v;if(l.$mouseHandler.$enableJumpToDef)h&&c||i&&c?k="add":c&&(k="block");else if(i&&!c){if(k="add",!n&&e)return}else c&&(k="block");if(k&&g.isMac&&b.ctrlKey&&l.$mouseHandler.cancelContextMenu(),"add"==k){if(!n&&q)return;if(!n){var x=m.toOrientedRange();l.addSelectionMarker(x)}var y=m.rangeList.rangeAtPoint(o);l.$blockScrolling++,l.inVirtualSelectionMode=!0,e&&(y=null,x=m.ranges[0],l.removeSelectionMarker(x)),l.once("mouseup",function(){var a=m.toOrientedRange();y&&a.isEmpty()&&d(y.cursor,a.cursor)?m.substractPoint(a.cursor):(e?m.substractPoint(x.cursor):x&&(l.removeSelectionMarker(x),m.addRange(x)),m.addRange(a)),l.$blockScrolling--,l.inVirtualSelectionMode=!1})}else if("block"==k){a.stop(),l.inVirtualSelectionMode=!0;var z,A=[],B=function(){var a=l.renderer.pixelToScreenCoordinates(r,s),b=u.screenToDocumentPosition(a.row,a.column);d(w,a)&&d(b,m.lead)||(w=a,l.selection.moveToPosition(b),l.renderer.scrollCursorIntoView(),l.removeSelectionMarkers(A),A=m.rectangularRangeBlock(w,v),l.$mouseHandler.$clickSelection&&1==A.length&&A[0].isEmpty()&&(A[0]=l.$mouseHandler.$clickSelection.clone()),A.forEach(l.addSelectionMarker,l),l.updateSelectionMarkers())};n&&!i?m.toSingleRange():!n&&i&&(z=m.toOrientedRange(),l.addSelectionMarker(z)),e?v=u.documentToScreenPosition(m.lead):m.moveToPosition(o),w={row:-1,column:-1};var C=function(a){clearInterval(E),l.removeSelectionMarkers(A),A.length||(A=[m.toOrientedRange()]),l.$blockScrolling++,z&&(l.removeSelectionMarker(z),m.toSingleRange(z));for(var b=0;b1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),b||this.fromOrientedRange(a)}},this.toSingleRange=function(a){a=a||this.ranges[0];var b=this.rangeList.removeAll();b.length&&this.$onRemoveRange(b),a&&this.fromOrientedRange(a)},this.substractPoint=function(a){var b=this.rangeList.substractPoint(a);return b?(this.$onRemoveRange(b),b[0]):void 0},this.mergeOverlappingRanges=function(){var a=this.rangeList.merge();a.length?this.$onRemoveRange(a):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(a){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(a),this._signal("addRange",{range:a})},this.$onRemoveRange=function(a){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var b=this.rangeList.ranges.pop();a.push(b),this.rangeCount=0}for(var c=a.length;c--;){var d=this.ranges.indexOf(a[c]);this.ranges.splice(d,1)}this._signal("removeRange",{ranges:a}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),b=b||this.ranges[0],b&&!b.isEqual(this.getRange())&&this.fromOrientedRange(b)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new h,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var c=this.getRange(),d=this.isBackwards(),e=c.start.row,f=c.end.row;if(e==f){if(d)var g=c.end,h=c.start;else var g=c.start,h=c.end;return this.addRange(i.fromPoints(h,h)),void this.addRange(i.fromPoints(g,g))}var j=[],k=this.getLineRange(e,!0);k.start.column=c.start.column,j.push(k);for(var l=e+1;f>l;l++)j.push(this.getLineRange(l,!0));k=this.getLineRange(f,!0),k.end.column=c.end.column,j.push(k),j.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var d=this.session.documentToScreenPosition(this.selectionLead),e=this.session.documentToScreenPosition(this.selectionAnchor),f=this.rectangularRangeBlock(d,e);f.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(a,b,c){var d=[],f=a.columng&&(g=0),0>k&&(k=0),k==l&&(c=!0);for(var m=k;l>=m;m++){var n=i.fromPoints(this.session.screenToDocumentPosition(m,g),this.session.screenToDocumentPosition(m,h));if(n.isEmpty()){if(o&&e(n.end,o))break;var o=n.end}n.cursor=f?n.start:n.end,d.push(n)}if(j&&d.reverse(),!c){for(var p=d.length-1;d[p].isEmpty()&&p>0;)p--;if(p>0)for(var q=0;d[q].isEmpty();)q++;for(var r=p;r>=q;r--)d[r].isEmpty()&&d.splice(r,1)}return d}}.call(j.prototype);var r=a("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(a){a.cursor||(a.cursor=a.end);var b=this.getSelectionStyle();return a.marker=this.session.addMarker(a,"ace_selection",b),this.session.$selectionMarkers.push(a),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,a},this.removeSelectionMarker=function(a){if(a.marker){this.session.removeMarker(a.marker);var b=this.session.$selectionMarkers.indexOf(a);-1!=b&&this.session.$selectionMarkers.splice(b,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(a){for(var b=this.session.$selectionMarkers,c=a.length;c--;){var d=a[c];if(d.marker){this.session.removeMarker(d.marker);var e=b.indexOf(d);-1!=e&&b.splice(e,1)}}this.session.selectionMarkerCount=b.length},this.$onAddRange=function(a){this.addSelectionMarker(a.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(a){this.removeSelectionMarkers(a.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(a){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(n.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(a){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(n.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(a){var b=a.command,c=a.editor;if(c.multiSelect){if(b.multiSelectAction)"forEach"==b.multiSelectAction?d=c.forEachSelection(b,a.args):"forEachLine"==b.multiSelectAction?d=c.forEachSelection(b,a.args,!0):"single"==b.multiSelectAction?(c.exitMultiSelectMode(),d=b.exec(c,a.args||{})):d=b.multiSelectAction(c,a.args||{});else{var d=b.exec(c,a.args||{});c.multiSelect.addRange(c.multiSelect.toOrientedRange()),c.multiSelect.mergeOverlappingRanges()}return d}},this.forEachSelection=function(a,b,c){if(!this.inVirtualSelectionMode){var d,e=c&&c.keepOrder,f=1==c||c&&c.$byLines,g=this.session,h=this.selection,i=h.rangeList,k=(e?h:i).ranges;if(!k.length)return a.exec?a.exec(this,b||{}):a(this,b||{});var l=h._eventRegistry;h._eventRegistry={};var m=new j(g);this.inVirtualSelectionMode=!0;for(var n=k.length;n--;){if(f)for(;n>0&&k[n].start.row==k[n-1].end.row;)n--;m.fromOrientedRange(k[n]),m.index=n,this.selection=g.selection=m;var o=a.exec?a.exec(this,b||{}):a(this,b||{});d||void 0===o||(d=o),m.toOrientedRange(k[n])}m.detach(),this.selection=g.selection=h,this.inVirtualSelectionMode=!1,h._eventRegistry=l,h.mergeOverlappingRanges();var p=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(), +p&&p.from==p.to&&this.renderer.animateScrolling(p.from),d}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var a="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var b=this.multiSelect.rangeList.ranges,c=[],d=0;dd.length||c.length<2||!c[1])return this.commands.exec("insertstring",this,a);for(var e=d.length;e--;){var f=d[e];f.isEmpty()||this.session.remove(f),this.session.insert(f.start,c[e])}}},this.findAll=function(a,b,c){if(b=b||{},b.needle=a||b.needle,void 0==b.needle){var d=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();b.needle=this.session.getTextRange(d)}this.$search.set(b);var e=this.$search.findAll(this.session);if(!e.length)return 0;this.$blockScrolling+=1;var f=this.multiSelect;c||f.toSingleRange(e[0]);for(var g=e.length;g--;)f.addRange(e[g],!0);return d&&f.rangeList.rangeAtPoint(d.start)&&f.addRange(d,!0),this.$blockScrolling-=1,e.length},this.selectMoreLines=function(a,b){var c=this.selection.toOrientedRange(),d=c.cursor==c.end,e=this.session.documentToScreenPosition(c.cursor);this.selection.$desiredColumn&&(e.column=this.selection.$desiredColumn);var f=this.session.screenToDocumentPosition(e.row+a,e.column);if(c.isEmpty())var g=f;else var h=this.session.documentToScreenPosition(d?c.end:c.start),g=this.session.screenToDocumentPosition(h.row+a,h.column);if(d){var j=i.fromPoints(f,g);j.cursor=j.start}else{var j=i.fromPoints(g,f);j.cursor=j.end}if(j.desiredColumn=e.column,this.selection.inMultiSelectMode){if(b)var k=c.cursor}else this.selection.addRange(c);this.selection.addRange(j),k&&this.selection.substractPoint(k)},this.transposeSelections=function(a){for(var b=this.session,c=b.multiSelect,d=c.ranges,e=d.length;e--;){var f=d[e];if(f.isEmpty()){var g=b.getWordRange(f.start.row,f.start.column);f.start.row=g.start.row,f.start.column=g.start.column,f.end.row=g.end.row,f.end.column=g.end.column}}c.mergeOverlappingRanges();for(var h=[],e=d.length;e--;){var f=d[e];h.unshift(b.getTextRange(f))}0>a?h.unshift(h.pop()):h.push(h.shift());for(var e=d.length;e--;){var f=d[e],g=f.clone();b.replace(f,h[e]),f.start.row=g.start.row,f.start.column=g.start.column}},this.selectMore=function(a,b,c){var e=this.session,f=e.multiSelect,g=f.toOrientedRange();if(!g.isEmpty()||(g=e.getWordRange(g.start.row,g.start.column),g.cursor=-1==a?g.start:g.end,this.multiSelect.addRange(g),!c)){var h=e.getTextRange(g),i=d(e,h,a);i&&(i.cursor=-1==a?i.start:i.end,this.$blockScrolling+=1,this.session.unfold(i),this.multiSelect.addRange(i),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),b&&this.multiSelect.substractPoint(g.cursor)}},this.alignCursors=function(){var a=this.session,b=a.multiSelect,c=b.ranges,d=-1,e=c.filter(function(a){return a.cursor.row==d?!0:void(d=a.cursor.row)});if(c.length&&e.length!=c.length-1){e.forEach(function(a){b.substractPoint(a.cursor)});var f=0,g=1/0,h=c.map(function(b){var c=b.cursor,d=a.getLine(c.row),e=d.substr(c.column).search(/\S/g);return-1==e&&(e=0),c.column>f&&(f=c.column),g>e&&(g=e),e});c.forEach(function(b,c){var d=b.cursor,e=f-d.column,j=h[c]-g;e>j?a.insert(d,m.stringRepeat(" ",e-j)):a.remove(new i(d.row,d.column,d.row,d.column-e+j)),b.start.column=b.end.column=f,b.start.row=b.end.row=d.row,b.cursor=b.end}),b.fromOrientedRange(c[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var j=this.selection.getRange(),k=j.start.row,l=j.end.row,n=k==l;if(n){var o,p=this.session.getLength();do o=this.session.getLine(l);while(/[=:]/.test(o)&&++l0);0>k&&(k=0),l>=p&&(l=p-1)}var q=this.session.doc.removeLines(k,l);q=this.$reAlignText(q,n),this.session.doc.insert({row:k,column:0},q.join("\n")+"\n"),n||(j.start.column=0,j.end.column=q[q.length-1].length),this.selection.setRange(j)}},this.$reAlignText=function(a,b){function c(a){return m.stringRepeat(" ",a)}function d(a){return a[2]?c(g)+a[2]+c(h-a[2].length+i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function e(a){return a[2]?c(g+h-a[2].length)+a[2]+c(i," ")+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function f(a){return a[2]?c(g)+a[2]+c(i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}var g,h,i,j=!0,k=!0;return a.map(function(a){var b=a.match(/(\s*)(.*?)(\s*)([=:].*)/);return b?null==g?(g=b[1].length,h=b[2].length,i=b[3].length,b):(g+h+i!=b[1].length+b[2].length+b[3].length&&(k=!1),g!=b[1].length&&(j=!1),g>b[1].length&&(g=b[1].length),hb[3].length&&(i=b[3].length),b):[a]}).map(b?d:j?k?e:d:f)}}).call(r.prototype),b.onSessionChange=function(a){var b=a.session;b&&!b.multiSelect&&(b.$selectionMarkers=[],b.selection.$initRangeList(),b.multiSelect=b.selection),this.multiSelect=b&&b.multiSelect;var c=a.oldSession;c&&(c.multiSelect.off("addRange",this.$onAddRange),c.multiSelect.off("removeRange",this.$onRemoveRange),c.multiSelect.off("multiSelect",this.$onMultiSelect),c.multiSelect.off("singleSelect",this.$onSingleSelect),c.multiSelect.lead.off("change",this.$checkMultiselectChange),c.multiSelect.anchor.off("change",this.$checkMultiselectChange)),b&&(b.multiSelect.on("addRange",this.$onAddRange),b.multiSelect.on("removeRange",this.$onRemoveRange),b.multiSelect.on("multiSelect",this.$onMultiSelect),b.multiSelect.on("singleSelect",this.$onSingleSelect),b.multiSelect.lead.on("change",this.$checkMultiselectChange),b.multiSelect.anchor.on("change",this.$checkMultiselectChange)),b&&this.inMultiSelectMode!=b.selection.inMultiSelectMode&&(b.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},b.MultiSelect=f,a("./config").defineOptions(r.prototype,"editor",{enableMultiselect:{set:function(a){f(this),a?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",k)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",k))},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(a,b,c){"use strict";var d=a("../../range").Range,e=b.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(a,b,c){var d=a.getLine(c);return this.foldingStartMarker.test(d)?"start":"markbeginend"==b&&this.foldingStopMarker&&this.foldingStopMarker.test(d)?"end":""},this.getFoldWidgetRange=function(a,b,c){return null},this.indentationBlock=function(a,b,c){var e=/\S/,f=a.getLine(b),g=f.search(e);if(-1!=g){for(var h=c||f.length,i=a.getLength(),j=b,k=b;++b=l)break;k=b}}if(k>j){var m=a.getLine(k).length;return new d(j,h,k,m)}}},this.openingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e+1},h=a.$findClosingBracket(b,g,f);if(h){var i=a.foldWidgets[h.row];return null==i&&(i=a.getFoldWidget(h.row)),"start"==i&&h.row>g.row&&(h.row--,h.column=a.getLine(h.row).length),d.fromPoints(g,h)}},this.closingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e},h=a.$findOpeningBracket(b,g);return h?(h.column++,g.column--,d.fromPoints(h,g)):void 0}}).call(e.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict";b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter { background: #f0f0f0; color: #333; } .ace-tm .ace_print-margin { width: 1px; background: #e8e8e8; } .ace-tm .ace_fold { background-color: #6B72E6; } .ace-tm { background-color: #FFFFFF; color: black; } .ace-tm .ace_cursor { color: black; } .ace-tm .ace_invisible { color: rgb(191, 191, 191); } .ace-tm .ace_storage, .ace-tm .ace_keyword { color: blue; } .ace-tm .ace_constant { color: rgb(197, 6, 11); } .ace-tm .ace_constant.ace_buildin { color: rgb(88, 72, 246); } .ace-tm .ace_constant.ace_language { color: rgb(88, 92, 246); } .ace-tm .ace_constant.ace_library { color: rgb(6, 150, 14); } .ace-tm .ace_invalid { background-color: rgba(255, 0, 0, 0.1); color: red; } .ace-tm .ace_support.ace_function { color: rgb(60, 76, 114); } .ace-tm .ace_support.ace_constant { color: rgb(6, 150, 14); } .ace-tm .ace_support.ace_type, .ace-tm .ace_support.ace_class { color: rgb(109, 121, 222); } .ace-tm .ace_keyword.ace_operator { color: rgb(104, 118, 135); } .ace-tm .ace_string { color: rgb(3, 106, 7); } .ace-tm .ace_comment { color: rgb(76, 136, 107); } .ace-tm .ace_comment.ace_doc { color: rgb(0, 102, 255); } .ace-tm .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191); } .ace-tm .ace_constant.ace_numeric { color: rgb(0, 0, 205); } .ace-tm .ace_variable { color: rgb(49, 132, 149); } .ace-tm .ace_xml-pe { color: rgb(104, 104, 91); } .ace-tm .ace_entity.ace_name.ace_function { color: #0000A2; } .ace-tm .ace_heading { color: rgb(12, 7, 255); } .ace-tm .ace_list { color:rgb(185, 6, 144); } .ace-tm .ace_meta.ace_tag { color:rgb(0, 22, 142); } .ace-tm .ace_string.ace_regex { color: rgb(255, 0, 0) } .ace-tm .ace_marker-layer .ace_selection { background: rgb(181, 213, 255); } .ace-tm.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px white; border-radius: 2px; } .ace-tm .ace_marker-layer .ace_step { background: rgb(252, 255, 0); } .ace-tm .ace_marker-layer .ace_stack { background: rgb(164, 229, 101); } .ace-tm .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192); } .ace-tm .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.07); } .ace-tm .ace_gutter-active-line { background-color : #dcdcdc; } .ace-tm .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } .ace-tm .ace_indent-guide { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y; } ';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(a,b,c){"use strict";function d(a){this.session=a,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeEditor",this.$onChangeEditor)}var e=(a("./lib/oop"),a("./lib/dom"));a("./range").Range,function(){this.getRowLength=function(a){var b;return b=this.lineWidgets?this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0:0,this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.$getWidgetScreenLength=function(){var a=0;return this.lineWidgets.forEach(function(b){b&&b.rowCount&&(a+=b.rowCount)}),a},this.$onChangeEditor=function(a){this.attach(a.editor)},this.attach=function(a){a&&a.widgetManager&&a.widgetManager!=this&&a.widgetManager.detach(),this.editor!=a&&(this.detach(),this.editor=a,a&&(a.widgetManager=this,a.renderer.on("beforeRender",this.measureWidgets),a.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(a){var b=this.editor;if(b){this.editor=null,b.widgetManager=null,b.renderer.off("beforeRender",this.measureWidgets),b.renderer.off("afterRender",this.renderWidgets);var c=this.session.lineWidgets;c&&c.forEach(function(a){a&&a.el&&a.el.parentNode&&(a._inDocument=!1,a.el.parentNode.removeChild(a.el))})}},this.updateOnChange=function(a){var b=this.session.lineWidgets;if(b){var c=a.data,d=c.range,e=d.start.row,f=d.end.row-e;if(0===f);else if("removeText"==c.action||"removeLines"==c.action){var g=b.splice(e+1,f);g.forEach(function(a){a&&this.removeLineWidget(a)},this),this.$updateRows()}else{var h=new Array(f);h.unshift(e,0),b.splice.apply(b,h),this.$updateRows()}}},this.$updateRows=function(){var a=this.session.lineWidgets;if(a){var b=!0;a.forEach(function(a,c){a&&(b=!1,a.row=c)}),b&&(this.session.lineWidgets=null)}},this.addLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[a.row]=a;var b=this.editor.renderer;return a.html&&!a.el&&(a.el=e.createElement("div"),a.el.innerHTML=a.html),a.el&&(e.addCssClass(a.el,"ace_lineWidgetContainer"),a.el.style.position="absolute",a.el.style.zIndex=5,b.container.appendChild(a.el),a._inDocument=!0),a.coverGutter||(a.el.style.zIndex=3),a.pixelHeight||(a.pixelHeight=a.el.offsetHeight),null==a.rowCount&&(a.rowCount=a.pixelHeight/b.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,b),a},this.removeLineWidget=function(a){if(a._inDocument=!1,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch(b){}this.session.lineWidgets&&(this.session.lineWidgets[a.row]=void 0),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},this.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(a,b){var c=this.session._changedWidgets,d=b.layerConfig;if(c&&c.length){for(var e=1/0,f=0;fh&&(h=0)),g.rowCount!=h&&(g.rowCount=h,g.row0&&!d[e];)e--;this.firstRow=c.firstRow,this.lastRow=c.lastRow,b.$cursorLayer.config=c;for(var g=e;f>=g;g++){var h=d[g];if(h&&h.el){h._inDocument||(h._inDocument=!0,b.container.appendChild(h.el));var i=b.$cursorLayer.getPixelPosition({row:g,column:0},!0).top;h.coverLine||(i+=c.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=i-c.offset+"px";var j=h.coverGutter?0:b.gutterWidth;h.fixedWidth||(j-=b.scrollLeft),h.el.style.left=j+"px",h.fixedWidth?h.el.style.right=b.scrollBar.getWidth()+"px":h.el.style.right=""}}}}}.call(d.prototype),b.LineWidgets=d}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(a,b,c){"use strict";function d(a,b,c){for(var d=0,e=a.length-1;e>=d;){var f=d+e>>1,g=c(b,a[f]);if(g>0)d=f+1;else{if(!(0>g))return f;e=f-1}}return-(d+1)}function e(a,b,c){var e=a.getAnnotations().sort(h.comparePoints);if(e.length){var f=d(e,{row:b,column:-1},h.comparePoints);0>f&&(f=-f-1),f>=e.length-1?f=c>0?0:e.length-1:0===f&&0>c&&(f=e.length-1);var g=e[f];if(g&&c){if(g.row===b){do g=e[f+=c];while(g&&g.row===b);if(!g)return e.slice()}var i=[];b=g.row;do i[0>c?"unshift":"push"](g),g=e[f+=c];while(g&&g.row==b);return i.length&&i}}}var f=a("../line_widgets").LineWidgets,g=a("../lib/dom"),h=a("../range").Range;b.showErrorMarker=function(a,b){var c=a.session;c.widgetManager||(c.widgetManager=new f(c),c.widgetManager.attach(a));var d=a.getCursorPosition(),h=d.row,i=c.lineWidgets&&c.lineWidgets[h];i?i.destroy():h-=b;var j,k=e(c,h,b);if(k){var l=k[0];d.column=(l.pos&&"number"!=typeof l.column?l.pos.sc:l.column)||0,d.row=l.row,j=a.renderer.$gutterLayer.$annotations[d.row]}else{if(i)return;j={text:["Looks good!"],className:"ace_ok"}}a.session.unfold(d.row),a.selection.moveToPosition(d);var m={row:d.row,fixedWidth:!0,coverGutter:!0,el:g.createElement("div")},n=m.el.appendChild(g.createElement("div")),o=m.el.appendChild(g.createElement("div"));o.className="error_widget_arrow "+j.className;var p=a.renderer.$cursorLayer.getPixelPosition(d).left;o.style.left=p+a.renderer.gutterWidth-5+"px",m.el.className="error_widget_wrapper",n.className="error_widget "+j.className,n.innerHTML=j.text.join("
"),n.appendChild(g.createElement("div"));var q=function(a,b,c){return 0!==b||"esc"!==c&&"return"!==c?void 0:(m.destroy(),{command:"null"})};m.destroy=function(){a.$mouseHandler.isMousePressed||(a.keyBinding.removeKeyboardHandler(q),c.widgetManager.removeLineWidget(m),a.off("changeSelection",m.destroy),a.off("changeSession",m.destroy),a.off("mouseup",m.destroy),a.off("change",m.destroy))},a.keyBinding.addKeyboardHandler(q),a.on("changeSelection",m.destroy),a.on("changeSession",m.destroy),a.on("mouseup",m.destroy),a.on("change",m.destroy),a.session.widgetManager.addLineWidget(m),m.el.onmousedown=a.focus.bind(a),a.renderer.scrollCursorIntoView(null,.5,{bottom:m.el.offsetHeight})},g.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; } ","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(a,b,c){"use strict";a("./lib/fixoldbrowsers");var d=a("./lib/dom"),e=a("./lib/event"),f=a("./editor").Editor,g=a("./edit_session").EditSession,h=a("./undomanager").UndoManager,i=a("./virtual_renderer").VirtualRenderer;a("./worker/worker_client"),a("./keyboard/hash_handler"),a("./placeholder"),a("./multi_select"),a("./mode/folding/fold_mode"),a("./theme/textmate"),a("./ext/error_marker"),b.config=a("./config"),b.acequire=a,b.edit=function(a){if("string"==typeof a){var c=a;if(a=document.getElementById(c),!a)throw new Error("ace.edit can't find div #"+c)}if(a&&a.env&&a.env.editor instanceof f)return a.env.editor;var g="";if(a&&/input|textarea/i.test(a.tagName)){var h=a;g=h.value,a=d.createElement("pre"),h.parentNode.replaceChild(a,h)}else g=d.getInnerText(a),a.innerHTML="";var j=b.createEditSession(g),k=new f(new i(a));k.setSession(j);var l={document:j,editor:k,onResize:k.resize.bind(k,null)};return h&&(l.textarea=h),e.addListener(window,"resize",l.onResize),k.on("destroy",function(){e.removeListener(window,"resize",l.onResize),l.editor.container.env=null}),k.container.env=k.env=l,k},b.createEditSession=function(a,b){var c=new g(a,b);return c.setUndoManager(new h),c},b.EditSession=g,b.UndoManager=h}),function(){ace.acequire(["ace/ace"],function(a){a&&a.config.init(!0),window.ace||(window.ace=a);for(var b in a)a.hasOwnProperty(b)&&(window.ace[b]=a[b])})}(),a.exports=window.ace.acequire("ace/ace")},function(a,b,c){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){"use strict";var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};d.inherits(f,e),b.JsonHighlightRules=f}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(a,b,c){"use strict";var d=a("../range").Range,e=function(){};(function(){this.checkOutdent=function(a,b){return/^\s+$/.test(a)?/^\s*\}/.test(b):!1},this.autoOutdent=function(a,b){var c=a.getLine(b),e=c.match(/^(\s*\})/);if(!e)return 0;var f=e[1].length,g=a.findMatchingBracket({row:b,column:f});if(!g||g.row==b)return 0;var h=this.$getIndent(a.getLine(g.row));a.replace(new d(b,0,b,f-1),h)},this.$getIndent=function(a){return a.match(/^\s*/)[0]}}).call(e.prototype),b.MatchingBraceOutdent=e}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(a,b,c){"use strict";var d,e=a("../../lib/oop"),f=a("../behaviour").Behaviour,g=a("../../token_iterator").TokenIterator,h=a("../../lib/lang"),i=["text","paren.rparen","punctuation.operator"],j=["text","paren.rparen","punctuation.operator","comment"],k={},l=function(a){var b=-1;return a.multiSelect&&(b=a.selection.index,k.rangeCount!=a.multiSelect.rangeCount&&(k={rangeCount:a.multiSelect.rangeCount})),k[b]?d=k[b]:void(d=k[b]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""})},m=function(){this.add("braces","insertion",function(a,b,c,e,f){var g=c.getCursorPosition(),i=e.doc.getLine(g.row);if("{"==f){l(c);var j=c.getSelectionRange(),k=e.doc.getTextRange(j);if(""!==k&&"{"!==k&&c.getWrapBehavioursEnabled())return{text:"{"+k+"}",selection:!1};if(m.isSaneInsertion(c,e))return/[\]\}\)]/.test(i[g.column])||c.inMultiSelectMode?(m.recordAutoInsert(c,e,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(c,e,"{"),{text:"{",selection:[1,1]})}else if("}"==f){l(c);var n=i.substring(g.column,g.column+1);if("}"==n){var o=e.$findOpeningBracket("}",{column:g.column+1,row:g.row});if(null!==o&&m.isAutoInsertedClosing(g,i,f))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if("\n"==f||"\r\n"==f){l(c);var p="";m.isMaybeInsertedClosing(g,i)&&(p=h.stringRepeat("}",d.maybeInsertedBrackets),m.clearMaybeInsertedClosing());var n=i.substring(g.column,g.column+1);if("}"===n){var q=e.findMatchingBracket({row:g.row,column:g.column+1},"}");if(!q)return null;var r=this.$getIndent(e.getLine(q.row))}else{if(!p)return void m.clearMaybeInsertedClosing();var r=this.$getIndent(i)}var s=r+e.getTabString();return{text:"\n"+s+"\n"+r+p,selection:[1,s.length,1,s.length]}}m.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(a,b,c,e,f){var g=e.doc.getTextRange(f);if(!f.isMultiLine()&&"{"==g){l(c);var h=e.doc.getLine(f.start.row),i=h.substring(f.end.column,f.end.column+1);if("}"==i)return f.end.column++,f;d.maybeInsertedBrackets--}}),this.add("parens","insertion",function(a,b,c,d,e){if("("==e){l(c);var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"("+g+")",selection:!1};if(m.isSaneInsertion(c,d))return m.recordAutoInsert(c,d,")"),{text:"()",selection:[1,1]}}else if(")"==e){l(c);var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if(")"==j){var k=d.$findOpeningBracket(")",{column:h.column+1,row:h.row});if(null!==k&&m.isAutoInsertedClosing(h,i,e))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"("==f){l(c);var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(")"==h)return e.end.column++,e}}),this.add("brackets","insertion",function(a,b,c,d,e){if("["==e){l(c);var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"["+g+"]",selection:!1};if(m.isSaneInsertion(c,d))return m.recordAutoInsert(c,d,"]"),{text:"[]",selection:[1,1]}}else if("]"==e){l(c);var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if("]"==j){var k=d.$findOpeningBracket("]",{column:h.column+1,row:h.row});if(null!==k&&m.isAutoInsertedClosing(h,i,e))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"["==f){l(c);var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if("]"==h)return e.end.column++,e}}),this.add("string_dquotes","insertion",function(a,b,c,d,e){if('"'==e||"'"==e){l(c);var f=e,g=c.getSelectionRange(),h=d.doc.getTextRange(g);if(""!==h&&"'"!==h&&'"'!=h&&c.getWrapBehavioursEnabled())return{text:f+h+f,selection:!1};var i=c.getCursorPosition(),j=d.doc.getLine(i.row),k=j.substring(i.column-1,i.column);if("\\"==k)return null;for(var n,o=d.getTokens(g.start.row),p=0,q=-1,r=0;rq&&(q=n.value.indexOf(f)),!(n.value.length+p>g.start.column));r++)p+=o[r].value.length;if(!n||0>q&&"comment"!==n.type&&("string"!==n.type||g.start.column!==n.value.length+p-1&&n.value.lastIndexOf(f)===n.value.length-1)){if(!m.isSaneInsertion(c,d))return;return{text:f+f,selection:[1,1]}}if(n&&"string"===n.type){var s=j.substring(i.column,i.column+1);if(s==f)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&('"'==f||"'"==f)){l(c);var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(h==f)return e.end.column++,e}})};m.isSaneInsertion=function(a,b){var c=a.getCursorPosition(),d=new g(b,c.row,c.column);if(!this.$matchTokenType(d.getCurrentToken()||"text",i)){var e=new g(b,c.row,c.column+1);if(!this.$matchTokenType(e.getCurrentToken()||"text",i))return!1}return d.stepForward(),d.getCurrentTokenRow()!==c.row||this.$matchTokenType(d.getCurrentToken()||"text",j)},m.$matchTokenType=function(a,b){return b.indexOf(a.type||a)>-1},m.recordAutoInsert=function(a,b,c){var e=a.getCursorPosition(),f=b.doc.getLine(e.row);this.isAutoInsertedClosing(e,f,d.autoInsertedLineEnd[0])||(d.autoInsertedBrackets=0),d.autoInsertedRow=e.row,d.autoInsertedLineEnd=c+f.substr(e.column),d.autoInsertedBrackets++},m.recordMaybeInsert=function(a,b,c){var e=a.getCursorPosition(),f=b.doc.getLine(e.row);this.isMaybeInsertedClosing(e,f)||(d.maybeInsertedBrackets=0),d.maybeInsertedRow=e.row,d.maybeInsertedLineStart=f.substr(0,e.column)+c,d.maybeInsertedLineEnd=f.substr(e.column),d.maybeInsertedBrackets++},m.isAutoInsertedClosing=function(a,b,c){return d.autoInsertedBrackets>0&&a.row===d.autoInsertedRow&&c===d.autoInsertedLineEnd[0]&&b.substr(a.column)===d.autoInsertedLineEnd},m.isMaybeInsertedClosing=function(a,b){return d.maybeInsertedBrackets>0&&a.row===d.maybeInsertedRow&&b.substr(a.column)===d.maybeInsertedLineEnd&&b.substr(0,a.column)==d.maybeInsertedLineStart},m.popAutoInsertedClosing=function(){d.autoInsertedLineEnd=d.autoInsertedLineEnd.substr(1),d.autoInsertedBrackets--},m.clearMaybeInsertedClosing=function(){d&&(d.maybeInsertedBrackets=0,d.maybeInsertedRow=-1)},e.inherits(m,f),b.CstyleBehaviour=m}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(a,b,c){"use strict";var d=a("../../lib/oop"),e=a("../../range").Range,f=a("./fold_mode").FoldMode,g=b.FoldMode=function(a){a&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+a.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+a.end)))};d.inherits(g,f),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(a,b,c,d){var e=a.getLine(c),f=e.match(this.foldingStartMarker);if(f){var g=f.index;if(f[1])return this.openingBracketBlock(a,f[1],c,g);var h=a.getCommentFoldRange(c,g+f[0].length,1);return h&&!h.isMultiLine()&&(d?h=this.getSectionRange(a,c):"all"!=b&&(h=null)),h}if("markbegin"!==b){var f=e.match(this.foldingStopMarker);if(f){var g=f.index+f[0].length;return f[1]?this.closingBracketBlock(a,f[1],c,g):a.getCommentFoldRange(c,g,-1)}}},this.getSectionRange=function(a,b){var c=a.getLine(b),d=c.search(/\S/),f=b,g=c.length;b+=1;for(var h=b,i=a.getLength();++bj)break;var k=this.getFoldWidgetRange(a,"all",b);if(k){if(k.start.row<=f)break;if(k.isMultiLine())b=k.end.row;else if(d==j)break}h=b}}return new e(f,g,h,a.getLine(h).length)}}.call(g.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(a,b,d){"use strict";var e=a("../lib/oop"),f=a("./text").Mode,g=a("./json_highlight_rules").JsonHighlightRules,h=a("./matching_brace_outdent").MatchingBraceOutdent,i=a("./behaviour/cstyle").CstyleBehaviour,j=a("./folding/cstyle").FoldMode,k=a("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=g,this.$outdent=new h,this.$behaviour=new i,this.foldingRules=new j};e.inherits(l,f),function(){this.getNextLineIndent=function(a,b,c){var d=this.$getIndent(b);if("start"==a){var e=b.match(/^.*[\{\(\[]\s*$/);e&&(d+=c)}return d},this.checkOutdent=function(a,b,c){return this.$outdent.checkOutdent(b,c)},this.autoOutdent=function(a,b,c){this.$outdent.autoOutdent(b,c)},this.createWorker=function(a){var b=new k(["ace"],c(17),"JsonWorker");return b.attachToDocument(a.getDocument()),b.on("error",function(b){a.setAnnotations([b.data])}),b.on("ok",function(){a.clearAnnotations()}),b},this.$id="ace/mode/json"}.call(l.prototype),b.Mode=l})},function(a,b,c){ace.define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(a,b,c){"use strict";var d=a("../lib/dom"),e=a("../lib/lang"),f=a("../lib/event"),g=" .ace_search { background-color: #ddd; border: 1px solid #cbcbcb; border-top: 0 none; max-width: 325px; overflow: hidden; margin: 0; padding: 4px; padding-right: 6px; padding-bottom: 0; position: absolute; top: 0px; z-index: 99; white-space: normal; } .ace_search.left { border-left: 0 none; border-radius: 0px 0px 5px 0px; left: 0; } .ace_search.right { border-radius: 0px 0px 0px 5px; border-right: 0 none; right: 0; } .ace_search_form, .ace_replace_form { border-radius: 3px; border: 1px solid #cbcbcb; float: left; margin-bottom: 4px; overflow: hidden; } .ace_search_form.ace_nomatch { outline: 1px solid red; } .ace_search_field { background-color: white; border-right: 1px solid #cbcbcb; border: 0 none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; float: left; height: 22px; outline: 0; padding: 0 7px; width: 214px; margin: 0; } .ace_searchbtn, .ace_replacebtn { background: #fff; border: 0 none; border-left: 1px solid #dcdcdc; cursor: pointer; float: left; height: 22px; margin: 0; padding: 0; position: relative; } .ace_searchbtn:last-child, .ace_replacebtn:last-child { border-top-right-radius: 3px; border-bottom-right-radius: 3px; } .ace_searchbtn:disabled { background: none; cursor: default; } .ace_searchbtn { background-position: 50% 50%; background-repeat: no-repeat; width: 27px; } .ace_searchbtn.prev { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADFJREFUeNpiSU1NZUAC/6E0I0yACYskCpsJiySKIiY0SUZk40FyTEgCjGgKwTRAgAEAQJUIPCE+qfkAAAAASUVORK5CYII=); } .ace_searchbtn.next { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpiTE1NZQCC/0DMyIAKwGJMUAYDEo3M/s+EpvM/mkKwCQxYjIeLMaELoLMBAgwAU7UJObTKsvAAAAAASUVORK5CYII=); } .ace_searchbtn_close { background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0; border-radius: 50%; border: 0 none; color: #656565; cursor: pointer; float: right; font: 16px/16px Arial; height: 14px; margin: 5px 1px 9px 5px; padding: 0; text-align: center; width: 14px; } .ace_searchbtn_close:hover { background-color: #656565; background-position: 50% 100%; color: white; } .ace_replacebtn.prev { width: 54px } .ace_replacebtn.next { width: 27px } .ace_button { margin-left: 2px; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -o-user-select: none; -ms-user-select: none; user-select: none; overflow: hidden; opacity: 0.7; border: 1px solid rgba(100,100,100,0.23); padding: 1px; -moz-box-sizing: border-box; box-sizing: border-box; color: black; } .ace_button:hover { background-color: #eee; opacity:1; } .ace_button:active { background-color: #ddd; } .ace_button.checked { border-color: #3399ff; opacity:1; } .ace_search_options{ margin-bottom: 3px; text-align: right; -webkit-user-select: none; -moz-user-select: none; -o-user-select: none; -ms-user-select: none; user-select: none; }",h=a("../keyboard/hash_handler").HashHandler,i=a("../lib/keys"); +d.importCssString(g,"ace_searchbox");var j=''.replace(/>\s+/g,">"),k=function(a,b,c){var e=d.createElement("div");e.innerHTML=j,this.element=e.firstChild,this.$init(),this.setEditor(a)};(function(){this.setEditor=function(a){a.searchBox=this,a.container.appendChild(this.element),this.editor=a},this.$initElements=function(a){this.searchBox=a.querySelector(".ace_search_form"),this.replaceBox=a.querySelector(".ace_replace_form"),this.searchOptions=a.querySelector(".ace_search_options"),this.regExpOption=a.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=a.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=a.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field")},this.$init=function(){var a=this.element;this.$initElements(a);var b=this;f.addListener(a,"mousedown",function(a){setTimeout(function(){b.activeInput.focus()},0),f.stopPropagation(a)}),f.addListener(a,"click",function(a){var c=a.target||a.srcElement,d=c.getAttribute("action");d&&b[d]?b[d]():b.$searchBarKb.commands[d]&&b.$searchBarKb.commands[d].exec(b),f.stopPropagation(a)}),f.addCommandKeyListener(a,function(a,c,d){var e=i.keyCodeToString(d),g=b.$searchBarKb.findKeyCommand(c,e);g&&g.exec&&(g.exec(b),f.stopEvent(a))}),this.$onChange=e.delayedCall(function(){b.find(!1,!1)}),f.addListener(this.searchInput,"input",function(){b.$onChange.schedule(20)}),f.addListener(this.searchInput,"focus",function(){b.activeInput=b.searchInput,b.searchInput.value&&b.highlight()}),f.addListener(this.replaceInput,"focus",function(){b.activeInput=b.replaceInput,b.searchInput.value&&b.highlight()})},this.$closeSearchBarKb=new h([{bindKey:"Esc",name:"closeSearchBar",exec:function(a){a.searchBox.hide()}}]),this.$searchBarKb=new h,this.$searchBarKb.bindKeys({"Ctrl-f|Command-f|Ctrl-H|Command-Option-F":function(a){var b=a.isReplace=!a.isReplace;a.replaceBox.style.display=b?"":"none",a[b?"replaceInput":"searchInput"].focus()},"Ctrl-G|Command-G":function(a){a.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(a){a.findPrev()},esc:function(a){setTimeout(function(){a.hide()})},Return:function(a){a.activeInput==a.replaceInput&&a.replace(),a.findNext()},"Shift-Return":function(a){a.activeInput==a.replaceInput&&a.replace(),a.findPrev()},"Alt-Return":function(a){a.activeInput==a.replaceInput&&a.replaceAll(),a.findAll()},Tab:function(a){(a.activeInput==a.replaceInput?a.searchInput:a.replaceInput).focus()}}),this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(a){a.regExpOption.checked=!a.regExpOption.checked,a.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(a){a.caseSensitiveOption.checked=!a.caseSensitiveOption.checked,a.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(a){a.wholeWordOption.checked=!a.wholeWordOption.checked,a.$syncOptions()}}]),this.$syncOptions=function(){d.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),d.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),d.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked),this.find(!1,!1)},this.highlight=function(a){this.editor.session.highlight(a||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},this.find=function(a,b){var c=this.editor.find(this.searchInput.value,{skipCurrent:a,backwards:b,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),e=!c&&this.searchInput.value;d.setCssClass(this.searchBox,"ace_nomatch",e),this.editor._emit("findSearchBox",{match:!e}),this.highlight()},this.findNext=function(){this.find(!0,!1)},this.findPrev=function(){this.find(!0,!0)},this.findAll=function(){var a=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),b=!a&&this.searchInput.value;d.setCssClass(this.searchBox,"ace_nomatch",b),this.editor._emit("findSearchBox",{match:!b}),this.highlight(),this.hide()},this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},this.hide=function(){this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},this.show=function(a,b){this.element.style.display="",this.replaceBox.style.display=b?"":"none",this.isReplace=b,a&&(this.searchInput.value=a),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb)},this.isFocused=function(){var a=document.activeElement;return a==this.searchInput||a==this.replaceInput}}).call(k.prototype),b.SearchBox=k,b.Search=function(a,b){var c=a.searchBox||new k(a);c.show(a.session.getTextRange(),b)}}),function(){ace.acequire(["ace/ext/searchbox"],function(){})}()},function(a,b,c){a.exports.id="ace/mode/json_worker",a.exports.src='"no use strict";(function(window){if(void 0===window.window||!window.document){window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console,window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:"error",data:{message:message,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf("!")){var chunks=moduleName.split("!");return window.normalizeModule(parentId,chunks[0])+"!"+window.normalizeModule(parentId,chunks[1])}if("."==moduleName.charAt(0)){var base=parentId.split("/").slice(0,-1).join("/");for(moduleName=(base?base+"/":"")+moduleName;-1!==moduleName.indexOf(".")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\.\\//,"").replace(/\\/\\.\\//,"/").replace(/[^\\/]+\\/\\.\\.\\//,"")}}return moduleName},window.acequire=function(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error("worker.js acequire() accepts only (parentId, id) as arguments");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;var chunks=id.split("/");if(!window.acequire.tlns)return console.log("unable to load "+id);chunks[0]=window.acequire.tlns[chunks[0]]||chunks[0];var path=chunks.join("/")+".js";return window.acequire.id=id,importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,"string"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),"function"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=["require","exports","module"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case"require":return req;case"exports":return module.exports;case"module":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},window.initBaseUrls=function initBaseUrls(topLevelNamespaces){acequire.tlns=topLevelNamespaces},window.initSender=function initSender(){var EventEmitter=window.acequire("ace/lib/event_emitter").EventEmitter,oop=window.acequire("ace/lib/oop"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:"call",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:"event",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.command){if(!main[msg.command])throw Error("Unknown command:"+msg.command);main[msg.command].apply(main,msg.args)}else if(msg.init){initBaseUrls(msg.tlns),acequire("ace/lib/es5-shim"),sender=window.sender=initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}else msg.event&&sender&&sender._signal(msg.event,msg.data)}}})(this),ace.define("ace/lib/oop",["require","exports","module"],function(acequire,exports){"use strict";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(acequire,exports){"use strict";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){"object"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?"unshift":"push"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define("ace/range",["require","exports","module"],function(acequire,exports){"use strict";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){"object"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){"object"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){var delta=e.data,range=delta.range;if(!(range.start.row==range.end.row&&range.start.row!=this.row||range.start.row>this.row||range.start.row==this.row&&range.start.column>this.column)){var row=this.row,column=this.column,start=range.start,end=range.end;"insertText"===delta.action?start.row===row&&column>=start.column?start.column===column&&this.$insertRight||(start.row===end.row?column+=end.column-start.column:(column-=start.column,row+=end.row-start.row)):start.row!==end.row&&row>start.row&&(row+=end.row-start.row):"insertLines"===delta.action?start.row===row&&0===column&&this.$insertRight||row>=start.row&&(row+=end.row-start.row):"removeText"===delta.action?start.row===row&&column>start.column?column=end.column>=column?start.column:Math.max(0,column-(end.column-start.column)):start.row!==end.row&&row>start.row?(end.row===row&&(column=Math.max(0,column-end.column)+start.column),row-=end.row-start.row):end.row===row&&(row-=end.row-start.row,column=Math.max(0,column-end.column)+start.column):"removeLines"==delta.action&&row>=start.row&&(row>=end.row?row-=end.row-start.row:(row=start.row,column=0)),this.setPosition(row,column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal("change",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Range=acequire("./range").Range,Anchor=acequire("./anchor").Anchor,Document=function(text){this.$lines=[],0===text.length?this.$lines=[""]:Array.isArray(text)?this._insertLines(0,text):this.insert({row:0,column:0},text)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength();this.remove(new Range(0,0,len,this.getLine(len-1).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0==="aaa".split(/a/).length?function(text){return text.replace(/\\r\\n|\\r/g,"\\n").split("\\n")}:function(text){return text.split(/\\r\\n|\\r|\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\r\\n|\\r|\\n)/m);this.$autoNewLine=match?match[1]:"\\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\\r\\n";case"unix":return"\\n";default:return this.$autoNewLine||"\\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return"\\r\\n"==text||"\\r"==text||"\\n"==text},this.getLine=function(row){return this.$lines[row]||""},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){if(range.start.row==range.end.row)return this.getLine(range.start.row).substring(range.start.column,range.end.column);var lines=this.getLines(range.start.row,range.end.row);lines[0]=(lines[0]||"").substring(range.start.column);var l=lines.length-1;return range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column)),lines.join(this.getNewLineCharacter())},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):0>position.row&&(position.row=0),position},this.insert=function(position,text){if(!text||0===text.length)return position;position=this.$clipPosition(position),1>=this.getLength()&&this.$detectNewLine(text);var lines=this.$split(text),firstLine=lines.splice(0,1)[0],lastLine=0==lines.length?null:lines.splice(lines.length-1,1)[0];return position=this.insertInLine(position,firstLine),null!==lastLine&&(position=this.insertNewLine(position),position=this._insertLines(position.row,lines),position=this.insertInLine(position,lastLine||"")),position},this.insertLines=function(row,lines){return row>=this.getLength()?this.insert({row:row,column:0},"\\n"+lines.join("\\n")):this._insertLines(Math.max(row,0),lines)},this._insertLines=function(row,lines){if(0==lines.length)return{row:row,column:0};for(;lines.length>61440;){var end=this._insertLines(row,lines.slice(0,61440));lines=lines.slice(61440),row=end.row}var args=[row,0];args.push.apply(args,lines),this.$lines.splice.apply(this.$lines,args);var range=new Range(row,0,row+lines.length,0),delta={action:"insertLines",range:range,lines:lines};return this._signal("change",{data:delta}),range.end},this.insertNewLine=function(position){position=this.$clipPosition(position);var line=this.$lines[position.row]||"";this.$lines[position.row]=line.substring(0,position.column),this.$lines.splice(position.row+1,0,line.substring(position.column,line.length));var end={row:position.row+1,column:0},delta={action:"insertText",range:Range.fromPoints(position,end),text:this.getNewLineCharacter()};return this._signal("change",{data:delta}),end},this.insertInLine=function(position,text){if(0==text.length)return position;var line=this.$lines[position.row]||"";this.$lines[position.row]=line.substring(0,position.column)+text+line.substring(position.column);var end={row:position.row,column:position.column+text.length},delta={action:"insertText",range:Range.fromPoints(position,end),text:text};return this._signal("change",{data:delta}),end},this.remove=function(range){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),range.start=this.$clipPosition(range.start),range.end=this.$clipPosition(range.end),range.isEmpty())return range.start;var firstRow=range.start.row,lastRow=range.end.row;if(range.isMultiLine()){var firstFullRow=0==range.start.column?firstRow:firstRow+1,lastFullRow=lastRow-1;range.end.column>0&&this.removeInLine(lastRow,0,range.end.column),lastFullRow>=firstFullRow&&this._removeLines(firstFullRow,lastFullRow),firstFullRow!=firstRow&&(this.removeInLine(firstRow,range.start.column,this.getLine(firstRow).length),this.removeNewLine(range.start.row))}else this.removeInLine(firstRow,range.start.column,range.end.column);return range.start},this.removeInLine=function(row,startColumn,endColumn){if(startColumn!=endColumn){var range=new Range(row,startColumn,row,endColumn),line=this.getLine(row),removed=line.substring(startColumn,endColumn),newLine=line.substring(0,startColumn)+line.substring(endColumn,line.length);this.$lines.splice(row,1,newLine);var delta={action:"removeText",range:range,text:removed};return this._signal("change",{data:delta}),range.start}},this.removeLines=function(firstRow,lastRow){return 0>firstRow||lastRow>=this.getLength()?this.remove(new Range(firstRow,0,lastRow+1,0)):this._removeLines(firstRow,lastRow)},this._removeLines=function(firstRow,lastRow){var range=new Range(firstRow,0,lastRow+1,0),removed=this.$lines.splice(firstRow,lastRow-firstRow+1),delta={action:"removeLines",range:range,nl:this.getNewLineCharacter(),lines:removed};return this._signal("change",{data:delta}),removed},this.removeNewLine=function(row){var firstLine=this.getLine(row),secondLine=this.getLine(row+1),range=new Range(row,firstLine.length,row+1,0),line=firstLine+secondLine;this.$lines.splice(row,2,line);var delta={action:"removeText",range:range,text:this.getNewLineCharacter()};this._signal("change",{data:delta})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0==text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;if(this.remove(range),text)var end=this.insert(range.start,text);else end=range.start;return end},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++){var delta=deltas[i],range=Range.fromPoints(delta.range.start,delta.range.end);"insertLines"==delta.action?this.insertLines(range.start.row,delta.lines):"insertText"==delta.action?this.insert(range.start,delta.text):"removeLines"==delta.action?this._removeLines(range.start.row,range.end.row-1):"removeText"==delta.action&&this.remove(range)}},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--){var delta=deltas[i],range=Range.fromPoints(delta.range.start,delta.range.end);"insertLines"==delta.action?this._removeLines(range.start.row,range.end.row-1):"insertText"==delta.action?this.remove(range):"removeLines"==delta.action?this._insertLines(range.start.row,delta.lines):"removeText"==delta.action&&this.insert(range.start,delta.text)}},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define("ace/lib/lang",["require","exports","module"],function(acequire,exports){"use strict";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split("").reverse().join("")},exports.stringRepeat=function(string,count){for(var result="";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\s\\s*/,trimEndRegexp=/\\s\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,"")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,"")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&"object"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function(obj){if("object"!=typeof obj||!obj)return obj;var cons=obj.constructor;if(cons===RegExp)return obj;var copy=cons();for(var key in obj)copy[key]="object"==typeof obj[key]?exports.deepCopy(obj[key]):obj[key];return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\]\\/\\\\])/g,"\\\\$1")},exports.escapeHTML=function(str){return str.replace(/&/g,"&").replace(/"/g,""").replace(/\'/g,"'").replace(/="0"&&"9">=ch;)string+=ch,next();if("."===ch)for(string+=".";next()&&ch>="0"&&"9">=ch;)string+=ch;if("e"===ch||"E"===ch)for(string+=ch,next(),("-"===ch||"+"===ch)&&(string+=ch,next());ch>="0"&&"9">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error("Bad number"),void 0):number},string=function(){var hex,i,uffff,string="";if(\'"\'===ch)for(;next();){if(\'"\'===ch)return next(),string;if("\\\\"===ch)if(next(),"u"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if("string"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error("Bad string")},white=function(){for(;ch&&" ">=ch;)next()},word=function(){switch(ch){case"t":return next("t"),next("r"),next("u"),next("e"),!0;case"f":return next("f"),next("a"),next("l"),next("s"),next("e"),!1;case"n":return next("n"),next("u"),next("l"),next("l"),null}error("Unexpected \'"+ch+"\'")},array=function(){var array=[];if("["===ch){if(next("["),white(),"]"===ch)return next("]"),array;for(;ch;){if(array.push(value()),white(),"]"===ch)return next("]"),array;next(","),white()}}error("Bad array")},object=function(){var key,object={};if("{"===ch){if(next("{"),white(),"}"===ch)return next("}"),object;for(;ch;){if(key=string(),white(),next(":"),Object.hasOwnProperty.call(object,key)&&error(\'Duplicate key "\'+key+\'"\'),object[key]=value(),white(),"}"===ch)return next("}"),object;next(","),white()}}error("Bad object")};return value=function(){switch(white(),ch){case"{":return object();case"[":return array();case\'"\':return string();case"-":return number();default:return ch>="0"&&"9">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=" ",result=value(),white(),ch&&error("Syntax error"),"function"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&"object"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({"":result},""):result}}),ace.define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(acequire,exports){"use strict";var oop=acequire("../lib/oop"),Mirror=acequire("../worker/mirror").Mirror,parse=acequire("./json/json_parse"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue();try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);return this.sender.emit("error",{row:pos.row,column:pos.column,text:e.message,type:"error"}),void 0}this.sender.emit("ok")}}.call(JsonWorker.prototype)}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,"sentinel",{}),"sentinel"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if("function"!=typeof target)throw new TypeError("Function.prototype.bind called on incompatible "+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,"__defineGetter__"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,"XXX"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return"[object Array]"==_toString(obj)});var boxedString=Object("a"),splitString="a"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,thisp=arguments[1],i=-1,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError;\nfor(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=[],thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError("reduce of empty array with no initial value")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError("reduceRight of empty array with no initial value")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(object,property){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if("object"!=typeof prototype)throw new TypeError("typeof prototype["+typeof prototype+"] != \'object\'");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom="undefined"==typeof document||doesDefinePropertyWork(document.createElement("div"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR="Property description must be an object: ",ERR_NON_OBJECT_TARGET="Object.defineProperty called on non-object: ",ERR_ACCESSORS_NOT_SUPPORTED="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(object,property,descriptor){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if("object"!=typeof descriptor&&"function"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,"value"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,"get")&&defineGetter(object,property,descriptor.get),owns(descriptor,"set")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return"function"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name="";owns(object,name);)name+="?";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError("Object.keys called on a non-object");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws=" \\n \\f\\r   ᠎              \\u2028\\u2029";if(!String.prototype.trim||ws.trim()){ws="["+ws+"]";var trimBeginRegexp=RegExp("^"+ws+ws+"*"),trimEndRegexp=RegExp(ws+ws+"*$");String.prototype.trim=function(){return(this+"").replace(trimBeginRegexp,"").replace(trimEndRegexp,"")}}var toObject=function(o){if(null==o)throw new TypeError("can\'t convert "+o+" to object");return Object(o)}});'; +},function(a,b,c){a.exports=function(){throw new Error("define cannot be used indirect")}},function(a,b,c){(function(b){function c(){if(b.Blob)try{return new Blob(["asdf"],{type:"text/plain"}),Blob}catch(a){}var c=b.WebKitBlobBuilder||b.MozBlobBuilder||b.MSBlobBuilder;return function(a,b){var d=new c,e=b.endings,f=b.type;if(e)for(var g=0,h=a.length;h>g;++g)d.append(a[g],e);else for(var g=0,h=a.length;h>g;++g)d.append(a[g]);return f?d.getBlob(f):d.getBlob()}}a.exports=c()}).call(b,function(){return this}())}])}),function(){function a(a){return a.target}function b(a){return a.source}function c(a,b){try{for(var c in b)Object.defineProperty(a.prototype,c,{value:b[c],enumerable:!1})}catch(d){a.prototype=b}}function d(a){for(var b=-1,c=a.length,d=[];c>++b;)d.push(a[b]);return d}function e(a){return Array.prototype.slice.call(a)}function f(){}function g(a){return a}function h(){return!0}function i(a){return"function"==typeof a?a:function(){return a}}function j(a,b,c){return function(){var d=c.apply(b,arguments);return arguments.length?a:d}}function k(a){return null!=a&&!isNaN(a)}function l(a){return a.length}function m(a){return a.trim().replace(/\s+/g," ")}function n(a){for(var b=1;a*b%1;)b*=10;return b}function o(a){return 1===a.length?function(b,c){a(null==b?c:null)}:a}function p(a){return a.responseText}function q(a){return JSON.parse(a.responseText)}function r(a){var b=document.createRange();return b.selectNode(document.body),b.createContextualFragment(a.responseText)}function s(a){return a.responseXML}function t(){}function u(a){function b(){for(var b,d=c,e=-1,f=d.length;f>++e;)(b=d[e].on)&&b.apply(this,arguments);return a}var c=[],d=new f;return b.on=function(b,e){var f,g=d.get(b);return 2>arguments.length?g&&g.on:(g&&(g.on=null,c=c.slice(0,f=c.indexOf(g)).concat(c.slice(f+1)),d.remove(b)),e&&c.push(d.set(b,{on:e})),a)},b}function v(a,b){return b-(a?1+Math.floor(Math.log(a+Math.pow(10,1+Math.floor(Math.log(a)/Math.LN10)-b))/Math.LN10):1)}function w(a){return a+""}function x(a,b){var c=Math.pow(10,3*Math.abs(8-b));return{scale:b>8?function(a){return a/c}:function(a){return a*c},symbol:a}}function y(a){return function(b){return 0>=b?0:b>=1?1:a(b)}}function z(a){return function(b){return 1-a(1-b)}}function A(a){return function(b){return.5*(.5>b?a(2*b):2-a(2-2*b))}}function B(a){return a*a}function C(a){return a*a*a}function D(a){if(0>=a)return 0;if(a>=1)return 1;var b=a*a,c=b*a;return 4*(.5>a?c:3*(a-b)+c-.75)}function E(a){return function(b){return Math.pow(b,a)}}function F(a){return 1-Math.cos(a*Ke/2)}function G(a){return Math.pow(2,10*(a-1))}function H(a){return 1-Math.sqrt(1-a*a)}function I(a,b){var c;return 2>arguments.length&&(b=.45),arguments.length?c=b/(2*Ke)*Math.asin(1/a):(a=1,c=b/4),function(d){return 1+a*Math.pow(2,10*-d)*Math.sin(2*(d-c)*Ke/b)}}function J(a){return a||(a=1.70158),function(b){return b*b*((a+1)*b-a)}}function K(a){return 1/2.75>a?7.5625*a*a:2/2.75>a?7.5625*(a-=1.5/2.75)*a+.75:2.5/2.75>a?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375}function L(){d3.event.stopPropagation(),d3.event.preventDefault()}function M(){for(var a,b=d3.event;a=b.sourceEvent;)b=a;return b}function N(a){for(var b=new t,c=0,d=arguments.length;d>++c;)b[arguments[c]]=u(b);return b.of=function(c,d){return function(e){try{var f=e.sourceEvent=d3.event;e.target=a,d3.event=e,b[e.type].apply(c,d)}finally{d3.event=f}}},b}function O(a){var b=[a.a,a.b],c=[a.c,a.d],d=Q(b),e=P(b,c),f=Q(R(c,b,-e))||0;b[0]*c[1]a?"0"+Math.max(0,a).toString(16):Math.min(255,a).toString(16)}function Z(a,b,c){var d,e,f,g=0,h=0,i=0;if(d=/([a-z]+)\((.*)\)/i.exec(a))switch(e=d[2].split(","),d[1]){case"hsl":return c(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100);case"rgb":return b(ba(e[0]),ba(e[1]),ba(e[2]))}return(f=ff.get(a))?b(f.r,f.g,f.b):(null!=a&&"#"===a.charAt(0)&&(4===a.length?(g=a.charAt(1),g+=g,h=a.charAt(2),h+=h,i=a.charAt(3),i+=i):7===a.length&&(g=a.substring(1,3),h=a.substring(3,5),i=a.substring(5,7)),g=parseInt(g,16),h=parseInt(h,16),i=parseInt(i,16)),b(g,h,i))}function $(a,b,c){var d,e,f=Math.min(a/=255,b/=255,c/=255),g=Math.max(a,b,c),h=g-f,i=(g+f)/2;return h?(e=.5>i?h/(g+f):h/(2-g-f),d=a==g?(b-c)/h+(c>b?6:0):b==g?(c-a)/h+2:(a-b)/h+4,d*=60):e=d=0,ca(d,e,i)}function _(a,b,c){a=aa(a),b=aa(b),c=aa(c);var d=na((.4124564*a+.3575761*b+.1804375*c)/kf),e=na((.2126729*a+.7151522*b+.072175*c)/lf),f=na((.0193339*a+.119192*b+.9503041*c)/mf);return ia(116*e-16,500*(d-e),200*(e-f))}function aa(a){return.04045>=(a/=255)?a/12.92:Math.pow((a+.055)/1.055,2.4)}function ba(a){var b=parseFloat(a);return"%"===a.charAt(a.length-1)?Math.round(2.55*b):b}function ca(a,b,c){return new da(a,b,c)}function da(a,b,c){this.h=a,this.s=b,this.l=c}function ea(a,b,c){function d(a){return a>360?a-=360:0>a&&(a+=360),60>a?f+(g-f)*a/60:180>a?g:240>a?f+(g-f)*(240-a)/60:f}function e(a){return Math.round(255*d(a))}var f,g;return a%=360,0>a&&(a+=360),b=0>b?0:b>1?1:b,c=0>c?0:c>1?1:c,g=.5>=c?c*(1+b):c+b-c*b,f=2*c-g,W(e(a+120),e(a),e(a-120))}function fa(a,b,c){return new ga(a,b,c)}function ga(a,b,c){this.h=a,this.c=b,this.l=c}function ha(a,b,c){return ia(c,Math.cos(a*=Me)*b,Math.sin(a)*b)}function ia(a,b,c){return new ja(a,b,c)}function ja(a,b,c){this.l=a,this.a=b,this.b=c}function ka(a,b,c){var d=(a+16)/116,e=d+b/500,f=d-c/200;return e=ma(e)*kf,d=ma(d)*lf,f=ma(f)*mf,W(oa(3.2404542*e-1.5371385*d-.4985314*f),oa(-.969266*e+1.8760108*d+.041556*f),oa(.0556434*e-.2040259*d+1.0572252*f))}function la(a,b,c){return fa(180*(Math.atan2(c,b)/Ke),Math.sqrt(b*b+c*c),a)}function ma(a){return a>.206893034?a*a*a:(a-4/29)/7.787037}function na(a){return a>.008856?Math.pow(a,1/3):7.787037*a+4/29}function oa(a){return Math.round(255*(.00304>=a?12.92*a:1.055*Math.pow(a,1/2.4)-.055))}function pa(a){return Qe(a,tf),a}function qa(a){return function(){return of(a,this)}}function ra(a){return function(){return pf(a,this)}}function sa(a,b){function c(){this.removeAttribute(a)}function d(){this.removeAttributeNS(a.space,a.local)}function e(){this.setAttribute(a,b)}function f(){this.setAttributeNS(a.space,a.local,b)}function g(){var c=b.apply(this,arguments);null==c?this.removeAttribute(a):this.setAttribute(a,c)}function h(){var c=b.apply(this,arguments);null==c?this.removeAttributeNS(a.space,a.local):this.setAttributeNS(a.space,a.local,c)}return a=d3.ns.qualify(a),null==b?a.local?d:c:"function"==typeof b?a.local?h:g:a.local?f:e}function ta(a){return RegExp("(?:^|\\s+)"+d3.requote(a)+"(?:\\s+|$)","g")}function ua(a,b){function c(){for(var c=-1;e>++c;)a[c](this,b)}function d(){for(var c=-1,d=b.apply(this,arguments);e>++c;)a[c](this,d)}a=a.trim().split(/\s+/).map(va);var e=a.length;return"function"==typeof b?d:c}function va(a){var b=ta(a);return function(c,d){if(e=c.classList)return d?e.add(a):e.remove(a);var e=c.className,f=null!=e.baseVal,g=f?e.baseVal:e;d?(b.lastIndex=0,b.test(g)||(g=m(g+" "+a),f?e.baseVal=g:c.className=g)):g&&(g=m(g.replace(b," ")),f?e.baseVal=g:c.className=g)}}function wa(a,b,c){function d(){this.style.removeProperty(a)}function e(){this.style.setProperty(a,b,c)}function f(){var d=b.apply(this,arguments);null==d?this.style.removeProperty(a):this.style.setProperty(a,d,c)}return null==b?d:"function"==typeof b?f:e}function xa(a,b){function c(){delete this[a]}function d(){this[a]=b}function e(){var c=b.apply(this,arguments);null==c?delete this[a]:this[a]=c}return null==b?c:"function"==typeof b?e:d}function ya(a){return{__data__:a}}function za(a){return function(){return sf(this,a)}}function Aa(a){return arguments.length||(a=d3.ascending),function(b,c){return a(b&&b.__data__,c&&c.__data__)}}function Ba(a,b,c){function d(){var b=this[f];b&&(this.removeEventListener(a,b,b.$),delete this[f])}function e(){function e(a){var c=d3.event;d3.event=a,h[0]=g.__data__;try{b.apply(g,h)}finally{d3.event=c}}var g=this,h=Oe(arguments);d.call(this),this.addEventListener(a,this[f]=e,e.$=c),e._=b}var f="__on"+a,g=a.indexOf(".");return g>0&&(a=a.substring(0,g)),b?e:d}function Ca(a,b){for(var c=0,d=a.length;d>c;c++)for(var e,f=a[c],g=0,h=f.length;h>g;g++)(e=f[g])&&b(e,g,c);return a}function Da(a){return Qe(a,vf),a}function Ea(a,b){return Qe(a,xf),a.id=b,a}function Fa(a,b,c,d){var e=a.__transition__||(a.__transition__={active:0,count:0}),g=e[c];if(!g){var h=d.time;return g=e[c]={tween:new f,event:d3.dispatch("start","end"),time:h,ease:d.ease,delay:d.delay,duration:d.duration},++e.count,d3.timer(function(d){function f(d){return e.active>c?j():(e.active=c,m.start.call(a,k,b),g.tween.forEach(function(c,d){(d=d.call(a,k,b))&&p.push(d)}),i(d)||d3.timer(i,0,h),1)}function i(d){if(e.active!==c)return j();for(var f=(d-n)/o,g=l(f),h=p.length;h>0;)p[--h].call(a,g);return f>=1?(j(),m.end.call(a,k,b),1):void 0}function j(){return--e.count?delete e[c]:delete a.__transition__,1}var k=a.__data__,l=g.ease,m=g.event,n=g.delay,o=g.duration,p=[];return d>=n?f(d):d3.timer(f,n,h),1},0,h),g}}function Ga(a){return null==a&&(a=""),function(){this.textContent=a}}function Ha(a,b,c,d){var e=a.id;return Ca(a,"function"==typeof c?function(a,f,g){a.__transition__[e].tween.set(b,d(c.call(a,a.__data__,f,g)))}:(c=d(c),function(a){a.__transition__[e].tween.set(b,c)}))}function Ia(){for(var a,b=Date.now(),c=Ef;c;)a=b-c.then,a>=c.delay&&(c.flush=c.callback(a)),c=c.next;var d=Ja()-b;d>24?(isFinite(d)&&(clearTimeout(Bf),Bf=setTimeout(Ia,d)),Af=0):(Af=1,Ff(Ia))}function Ja(){for(var a=null,b=Ef,c=1/0;b;)b.flush?(delete Df[b.callback.id],b=a?a.next=b.next:Ef=b.next):(c=Math.min(c,b.then+b.delay),b=(a=b).next);return c}function Ka(a,b){var c=a.ownerSVGElement||a;if(c.createSVGPoint){var d=c.createSVGPoint();if(0>Gf&&(window.scrollX||window.scrollY)){c=d3.select(document.body).append("svg").style("position","absolute").style("top",0).style("left",0);var e=c[0][0].getScreenCTM();Gf=!(e.f||e.e),c.remove()}return Gf?(d.x=b.pageX,d.y=b.pageY):(d.x=b.clientX,d.y=b.clientY),d=d.matrixTransform(a.getScreenCTM().inverse()),[d.x,d.y]}var f=a.getBoundingClientRect();return[b.clientX-f.left-a.clientLeft,b.clientY-f.top-a.clientTop]}function La(){}function Ma(a){var b=a[0],c=a[a.length-1];return c>b?[b,c]:[c,b]}function Na(a){return a.rangeExtent?a.rangeExtent():Ma(a.range())}function Oa(a,b){var c,d=0,e=a.length-1,f=a[d],g=a[e];return f>g&&(c=d,d=e,e=c,c=f,f=g,g=c),(b=b(g-f))&&(a[d]=b.floor(f),a[e]=b.ceil(g)),a}function Pa(){return Math}function Qa(a,b,c,d){function e(){var e=Math.min(a.length,b.length)>2?Xa:Wa,i=d?U:T;return g=e(a,b,i,c),h=e(b,a,i,d3.interpolate),f}function f(a){return g(a)}var g,h;return f.invert=function(a){return h(a)},f.domain=function(b){return arguments.length?(a=b.map(Number),e()):a},f.range=function(a){return arguments.length?(b=a,e()):b},f.rangeRound=function(a){return f.range(a).interpolate(d3.interpolateRound)},f.clamp=function(a){return arguments.length?(d=a,e()):d},f.interpolate=function(a){return arguments.length?(c=a,e()):c},f.ticks=function(b){return Ua(a,b)},f.tickFormat=function(b){return Va(a,b)},f.nice=function(){return Oa(a,Sa),e()},f.copy=function(){return Qa(a,b,c,d)},e()}function Ra(a,b){return d3.rebind(a,b,"range","rangeRound","interpolate","clamp")}function Sa(a){return a=Math.pow(10,Math.round(Math.log(a)/Math.LN10)-1),a&&{floor:function(b){return Math.floor(b/a)*a},ceil:function(b){return Math.ceil(b/a)*a}}}function Ta(a,b){var c=Ma(a),d=c[1]-c[0],e=Math.pow(10,Math.floor(Math.log(d/b)/Math.LN10)),f=b/d*e;return.15>=f?e*=10:.35>=f?e*=5:.75>=f&&(e*=2),c[0]=Math.ceil(c[0]/e)*e,c[1]=Math.floor(c[1]/e)*e+.5*e,c[2]=e,c}function Ua(a,b){return d3.range.apply(d3,Ta(a,b))}function Va(a,b){return d3.format(",."+Math.max(0,-Math.floor(Math.log(Ta(a,b)[2])/Math.LN10+.01))+"f")}function Wa(a,b,c,d){var e=c(a[0],a[1]),f=d(b[0],b[1]);return function(a){return f(e(a))}}function Xa(a,b,c,d){var e=[],f=[],g=0,h=Math.min(a.length,b.length)-1;for(a[h]=++g;)e.push(c(a[g-1],a[g])),f.push(d(b[g-1],b[g]));return function(b){var c=d3.bisect(a,b,1,h)-1;return f[c](e[c](b))}}function Ya(a,b){function c(c){return a(b(c))}var d=b.pow;return c.invert=function(b){return d(a.invert(b))},c.domain=function(e){return arguments.length?(b=0>e[0]?$a:Za,d=b.pow,a.domain(e.map(b)),c):a.domain().map(d)},c.nice=function(){return a.domain(Oa(a.domain(),Pa)),c},c.ticks=function(){var c=Ma(a.domain()),e=[];if(c.every(isFinite)){var f=Math.floor(c[0]),g=Math.ceil(c[1]),h=d(c[0]),i=d(c[1]);if(b===$a)for(e.push(d(f));g>f++;)for(var j=9;j>0;j--)e.push(d(f)*j);else{for(;g>f;f++)for(var j=1;10>j;j++)e.push(d(f)*j);e.push(d(f))}for(f=0;h>e[f];f++);for(g=e.length;e[g-1]>i;g--);e=e.slice(f,g)}return e},c.tickFormat=function(a,e){if(2>arguments.length&&(e=Hf),!arguments.length)return e;var f,g=Math.max(.1,a/c.ticks().length),h=b===$a?(f=-1e-12,Math.floor):(f=1e-12,Math.ceil);return function(a){return g>=a/d(h(b(a)+f))?e(a):""}},c.copy=function(){return Ya(a.copy(),b)},Ra(c,a)}function Za(a){return Math.log(0>a?0:a)/Math.LN10}function $a(a){return-Math.log(a>0?0:-a)/Math.LN10}function _a(a,b){function c(b){return a(d(b))}var d=ab(b),e=ab(1/b);return c.invert=function(b){return e(a.invert(b))},c.domain=function(b){return arguments.length?(a.domain(b.map(d)),c):a.domain().map(e)},c.ticks=function(a){return Ua(c.domain(),a)},c.tickFormat=function(a){return Va(c.domain(),a)},c.nice=function(){return c.domain(Oa(c.domain(),Sa))},c.exponent=function(a){if(!arguments.length)return b;var f=c.domain();return d=ab(b=a),e=ab(1/b),c.domain(f)},c.copy=function(){return _a(a.copy(),b)},Ra(c,a)}function ab(a){return function(b){return 0>b?-Math.pow(-b,a):Math.pow(b,a)}}function bb(a,b){function c(b){return g[((e.get(b)||e.set(b,a.push(b)))-1)%g.length]}function d(b,c){return d3.range(a.length).map(function(a){return b+c*a})}var e,g,h;return c.domain=function(d){if(!arguments.length)return a;a=[],e=new f;for(var g,h=-1,i=d.length;i>++h;)e.has(g=d[h])||e.set(g,a.push(g));return c[b.t].apply(c,b.a)},c.range=function(a){return arguments.length?(g=a,h=0,b={t:"range",a:arguments},c):g},c.rangePoints=function(e,f){2>arguments.length&&(f=0);var i=e[0],j=e[1],k=(j-i)/(Math.max(1,a.length-1)+f);return g=d(2>a.length?(i+j)/2:i+k*f/2,k),h=0,b={t:"rangePoints",a:arguments},c},c.rangeBands=function(e,f,i){2>arguments.length&&(f=0),3>arguments.length&&(i=f);var j=e[1]arguments.length&&(f=0),3>arguments.length&&(i=f);var j=e[1]++c;)e[c-1]=d3.quantile(a,c/f);return d}function d(a){return isNaN(a=+a)?NaN:b[d3.bisect(e,a)]}var e;return d.domain=function(b){return arguments.length?(a=b.filter(function(a){return!isNaN(a)}).sort(d3.ascending),c()):a},d.range=function(a){return arguments.length?(b=a,c()):b},d.quantiles=function(){return e},d.copy=function(){return cb(a,b)},c()}function db(a,b,c){function d(b){return c[Math.max(0,Math.min(g,Math.floor(f*(b-a))))]}function e(){return f=c.length/(b-a),g=c.length-1,d}var f,g;return d.domain=function(c){return arguments.length?(a=+c[0],b=+c[c.length-1],e()):[a,b]},d.range=function(a){return arguments.length?(c=a,e()):c},d.copy=function(){return db(a,b,c)},e()}function eb(a,b){function c(c){return b[d3.bisect(a,c)]}return c.domain=function(b){return arguments.length?(a=b,c):a},c.range=function(a){return arguments.length?(b=a,c):b},c.copy=function(){return eb(a,b)},c}function fb(a){function b(a){return+a}return b.invert=b,b.domain=b.range=function(c){return arguments.length?(a=c.map(b),b):a},b.ticks=function(b){return Ua(a,b)},b.tickFormat=function(b){return Va(a,b)},b.copy=function(){return fb(a)},b}function gb(a){return a.innerRadius}function hb(a){return a.outerRadius}function ib(a){return a.startAngle}function jb(a){return a.endAngle}function kb(a){function b(b){function g(){k.push("M",f(a(l),j))}for(var h,k=[],l=[],m=-1,n=b.length,o=i(c),p=i(d);n>++m;)e.call(this,h=b[m],m)?l.push([+o.call(this,h,m),+p.call(this,h,m)]):l.length&&(g(),l=[]);return l.length&&g(),k.length?k.join(""):null}var c=lb,d=mb,e=h,f=nb,g=f.key,j=.7;return b.x=function(a){return arguments.length?(c=a,b):c},b.y=function(a){return arguments.length?(d=a,b):d},b.defined=function(a){return arguments.length?(e=a,b):e},b.interpolate=function(a){return arguments.length?(g="function"==typeof a?f=a:(f=Of.get(a)||nb).key,b):g},b.tension=function(a){return arguments.length?(j=a,b):j},b}function lb(a){return a[0]}function mb(a){return a[1]}function nb(a){return a.join("L")}function ob(a){return nb(a)+"Z"}function pb(a){for(var b=0,c=a.length,d=a[0],e=[d[0],",",d[1]];c>++b;)e.push("V",(d=a[b])[1],"H",d[0]);return e.join("")}function qb(a){for(var b=0,c=a.length,d=a[0],e=[d[0],",",d[1]];c>++b;)e.push("H",(d=a[b])[0],"V",d[1]);return e.join("")}function rb(a,b){return 4>a.length?nb(a):a[1]+ub(a.slice(1,a.length-1),vb(a,b))}function sb(a,b){return 3>a.length?nb(a):a[0]+ub((a.push(a[0]),a),vb([a[a.length-2]].concat(a,[a[1]]),b))}function tb(a,b){return 3>a.length?nb(a):a[0]+ub(a,vb(a,b))}function ub(a,b){if(1>b.length||a.length!=b.length&&a.length!=b.length+2)return nb(a);var c=a.length!=b.length,d="",e=a[0],f=a[1],g=b[0],h=g,i=1;if(c&&(d+="Q"+(f[0]-2*g[0]/3)+","+(f[1]-2*g[1]/3)+","+f[0]+","+f[1],e=a[1],i=2),b.length>1){h=b[1],f=a[i],i++,d+="C"+(e[0]+g[0])+","+(e[1]+g[1])+","+(f[0]-h[0])+","+(f[1]-h[1])+","+f[0]+","+f[1];for(var j=2;b.length>j;j++,i++)f=a[i],h=b[j],d+="S"+(f[0]-h[0])+","+(f[1]-h[1])+","+f[0]+","+f[1]}if(c){var k=a[i];d+="Q"+(f[0]+2*h[0]/3)+","+(f[1]+2*h[1]/3)+","+k[0]+","+k[1]}return d}function vb(a,b){for(var c,d=[],e=(1-b)/2,f=a[0],g=a[1],h=1,i=a.length;i>++h;)c=f,f=g,g=a[h],d.push([e*(g[0]-c[0]),e*(g[1]-c[1])]);return d}function wb(a){if(3>a.length)return nb(a);var b=1,c=a.length,d=a[0],e=d[0],f=d[1],g=[e,e,e,(d=a[1])[0]],h=[f,f,f,d[1]],i=[e,",",f];for(Bb(i,g,h);c>++b;)d=a[b],g.shift(),g.push(d[0]),h.shift(),h.push(d[1]),Bb(i,g,h);for(b=-1;2>++b;)g.shift(),g.push(d[0]),h.shift(),h.push(d[1]),Bb(i,g,h);return i.join("")}function xb(a){if(4>a.length)return nb(a);for(var b,c=[],d=-1,e=a.length,f=[0],g=[0];3>++d;)b=a[d],f.push(b[0]),g.push(b[1]);for(c.push(Ab(Rf,f)+","+Ab(Rf,g)),--d;e>++d;)b=a[d],f.shift(),f.push(b[0]),g.shift(),g.push(b[1]),Bb(c,f,g);return c.join("")}function yb(a){for(var b,c,d=-1,e=a.length,f=e+4,g=[],h=[];4>++d;)c=a[d%e],g.push(c[0]),h.push(c[1]);for(b=[Ab(Rf,g),",",Ab(Rf,h)],--d;f>++d;)c=a[d%e],g.shift(),g.push(c[0]),h.shift(),h.push(c[1]),Bb(b,g,h);return b.join("")}function zb(a,b){var c=a.length-1;if(c)for(var d,e,f=a[0][0],g=a[0][1],h=a[c][0]-f,i=a[c][1]-g,j=-1;c>=++j;)d=a[j],e=j/c,d[0]=b*d[0]+(1-b)*(f+e*h),d[1]=b*d[1]+(1-b)*(g+e*i);return wb(a)}function Ab(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3]}function Bb(a,b,c){a.push("C",Ab(Pf,b),",",Ab(Pf,c),",",Ab(Qf,b),",",Ab(Qf,c),",",Ab(Rf,b),",",Ab(Rf,c))}function Cb(a,b){return(b[1]-a[1])/(b[0]-a[0])}function Db(a){for(var b=0,c=a.length-1,d=[],e=a[0],f=a[1],g=d[0]=Cb(e,f);c>++b;)d[b]=(g+(g=Cb(e=f,f=a[b+1])))/2;return d[b]=g,d}function Eb(a){for(var b,c,d,e,f=[],g=Db(a),h=-1,i=a.length-1;i>++h;)b=Cb(a[h],a[h+1]),1e-6>Math.abs(b)?g[h]=g[h+1]=0:(c=g[h]/b,d=g[h+1]/b,e=c*c+d*d,e>9&&(e=3*b/Math.sqrt(e),g[h]=e*c,g[h+1]=e*d));for(h=-1;i>=++h;)e=(a[Math.min(i,h+1)][0]-a[Math.max(0,h-1)][0])/(6*(1+g[h]*g[h])),f.push([e||0,g[h]*e||0]);return f}function Fb(a){return 3>a.length?nb(a):a[0]+ub(a,Eb(a))}function Gb(a){for(var b,c,d,e=-1,f=a.length;f>++e;)b=a[e],c=b[0],d=b[1]+Mf,b[0]=c*Math.cos(d),b[1]=c*Math.sin(d);return a}function Hb(a){function b(b){function h(){q.push("M",j(a(s),n),m,l(a(r.reverse()),n),"Z")}for(var k,o,p,q=[],r=[],s=[],t=-1,u=b.length,v=i(c),w=i(e),x=c===d?function(){return o}:i(d),y=e===f?function(){return p}:i(f);u>++t;)g.call(this,k=b[t],t)?(r.push([o=+v.call(this,k,t),p=+w.call(this,k,t)]),s.push([+x.call(this,k,t),+y.call(this,k,t)])):r.length&&(h(),r=[],s=[]);return r.length&&h(),q.length?q.join(""):null}var c=lb,d=lb,e=0,f=mb,g=h,j=nb,k=j.key,l=j,m="L",n=.7;return b.x=function(a){return arguments.length?(c=d=a,b):d},b.x0=function(a){return arguments.length?(c=a,b):c},b.x1=function(a){return arguments.length?(d=a,b):d},b.y=function(a){return arguments.length?(e=f=a,b):f},b.y0=function(a){return arguments.length?(e=a,b):e},b.y1=function(a){return arguments.length?(f=a,b):f},b.defined=function(a){return arguments.length?(g=a,b):g},b.interpolate=function(a){return arguments.length?(k="function"==typeof a?j=a:(j=Of.get(a)||nb).key,l=j.reverse||j,m=j.closed?"M":"L",b):k},b.tension=function(a){return arguments.length?(n=a,b):n},b}function Ib(a){return a.radius}function Jb(a){return[a.x,a.y]}function Kb(a){return function(){var b=a.apply(this,arguments),c=b[0],d=b[1]+Mf;return[c*Math.cos(d),c*Math.sin(d)]}}function Lb(){return 64}function Mb(){return"circle"}function Nb(a){var b=Math.sqrt(a/Ke);return"M0,"+b+"A"+b+","+b+" 0 1,1 0,"+-b+"A"+b+","+b+" 0 1,1 0,"+b+"Z"}function Ob(a,b){a.attr("transform",function(a){return"translate("+b(a)+",0)"})}function Pb(a,b){a.attr("transform",function(a){return"translate(0,"+b(a)+")"})}function Qb(a,b,c){if(d=[],c&&b.length>1){for(var d,e,f,g=Ma(a.domain()),h=-1,i=b.length,j=(b[1]-b[0])/++c;i>++h;)for(e=c;--e>0;)(f=+b[h]-e*j)>=g[0]&&d.push(f);for(--h,e=0;c>++e&&(f=+b[h]+e*j)++i;)f=g[i],null!=f&&(Zb(f,b,c),a.charge+=f.charge,d+=f.charge*f.cx,e+=f.charge*f.cy);if(a.point){a.leaf||(a.point.x+=Math.random()-.5,a.point.y+=Math.random()-.5);var j=b*c[a.point.index];a.charge+=a.pointCharge=j,d+=j*a.point.x,e+=j*a.point.y}a.cx=d/a.charge,a.cy=e/a.charge}function $b(){return 20}function _b(){return 1}function ac(a){return a.x}function bc(a){return a.y}function cc(a,b,c){a.y0=b,a.y=c}function dc(a){return d3.range(a.length)}function ec(a){for(var b=-1,c=a[0].length,d=[];c>++b;)d[b]=0;return d}function fc(a){for(var b,c=1,d=0,e=a[0][1],f=a.length;f>c;++c)(b=a[c][1])>e&&(d=c,e=b);return d}function gc(a){return a.reduce(hc,0)}function hc(a,b){return a+b[1]}function ic(a,b){return jc(a,Math.ceil(Math.log(b.length)/Math.LN2+1))}function jc(a,b){for(var c=-1,d=+a[0],e=(a[1]-d)/b,f=[];b>=++c;)f[c]=e*c+d;return f}function kc(a){return[d3.min(a),d3.max(a)]}function lc(a,b){return d3.rebind(a,b,"sort","children","value"),a.nodes=a,a.links=pc,a}function mc(a){return a.children}function nc(a){return a.value}function oc(a,b){return b.value-a.value}function pc(a){return d3.merge(a.map(function(a){return(a.children||[]).map(function(b){return{source:a,target:b}})}))}function qc(a,b){return a.value-b.value}function rc(a,b){var c=a._pack_next;a._pack_next=b,b._pack_prev=a,b._pack_next=c,c._pack_prev=b}function sc(a,b){a._pack_next=b,b._pack_prev=a}function tc(a,b){var c=b.x-a.x,d=b.y-a.y,e=a.r+b.r;return e*e-c*c-d*d>.001}function uc(a){function b(a){k=Math.min(a.x-a.r,k),l=Math.max(a.x+a.r,l),m=Math.min(a.y-a.r,m),n=Math.max(a.y+a.r,n)}if((c=a.children)&&(j=c.length)){var c,d,e,f,g,h,i,j,k=1/0,l=-1/0,m=1/0,n=-1/0;if(c.forEach(vc),d=c[0],d.x=-d.r,d.y=0,b(d),j>1&&(e=c[1],e.x=e.r,e.y=0,b(e),j>2))for(f=c[2],yc(d,e,f),b(f),rc(d,f),d._pack_prev=f,rc(f,e),e=d._pack_next,g=3;j>g;g++){yc(d,e,f=c[g]);var o=0,p=1,q=1;for(h=e._pack_next;h!==e;h=h._pack_next,p++)if(tc(h,f)){o=1;break}if(1==o)for(i=d._pack_prev;i!==h._pack_prev&&!tc(i,f);i=i._pack_prev,q++);o?(q>p||p==q&&e.rg;g++)f=c[g],f.x-=r,f.y-=s,t=Math.max(t,f.r+Math.sqrt(f.x*f.x+f.y*f.y));a.r=t,c.forEach(wc)}}function vc(a){a._pack_next=a._pack_prev=a}function wc(a){delete a._pack_next,delete a._pack_prev}function xc(a,b,c,d){var e=a.children;if(a.x=b+=d*a.x,a.y=c+=d*a.y,a.r*=d,e)for(var f=-1,g=e.length;g>++f;)xc(e[f],b,c,d)}function yc(a,b,c){var d=a.r+c.r,e=b.x-a.x,f=b.y-a.y;if(d&&(e||f)){var g=b.r+c.r,h=e*e+f*f;g*=g,d*=d;var i=.5+(d-g)/(2*h),j=Math.sqrt(Math.max(0,2*g*(d+h)-(d-=h)*d-g*g))/(2*h);c.x=a.x+i*e+j*f,c.y=a.y+i*f-j*e}else c.x=a.x+d,c.y=a.y}function zc(a){return 1+d3.max(a,function(a){return a.y})}function Ac(a){return a.reduce(function(a,b){return a+b.x},0)/a.length}function Bc(a){var b=a.children;return b&&b.length?Bc(b[0]):a}function Cc(a){var b,c=a.children;return c&&(b=c.length)?Cc(c[b-1]):a}function Dc(a,b){return a.parent==b.parent?1:2}function Ec(a){var b=a.children;return b&&b.length?b[0]:a._tree.thread}function Fc(a){var b,c=a.children;return c&&(b=c.length)?c[b-1]:a._tree.thread}function Gc(a,b){var c=a.children;if(c&&(e=c.length))for(var d,e,f=-1;e>++f;)b(d=Gc(c[f],b),a)>0&&(a=d);return a}function Hc(a,b){return a.x-b.x}function Ic(a,b){return b.x-a.x}function Jc(a,b){return a.depth-b.depth}function Kc(a,b){function c(a,d){var e=a.children;if(e&&(g=e.length))for(var f,g,h=null,i=-1;g>++i;)f=e[i],c(f,h),h=f;b(a,d)}c(a,null)}function Lc(a){for(var b,c=0,d=0,e=a.children,f=e.length;--f>=0;)b=e[f]._tree,b.prelim+=c,b.mod+=c,c+=b.shift+(d+=b.change)}function Mc(a,b,c){a=a._tree,b=b._tree;var d=c/(b.number-a.number);a.change+=d,b.change-=d,b.shift+=c,b.prelim+=c,b.mod+=c}function Nc(a,b,c){return a._tree.ancestor.parent==b.parent?a._tree.ancestor:c}function Oc(a){return{x:a.x,y:a.y,dx:a.dx,dy:a.dy}}function Pc(a,b){var c=a.x+b[3],d=a.y+b[0],e=a.dx-b[1]-b[3],f=a.dy-b[0]-b[2];return 0>e&&(c+=e/2,e=0),0>f&&(d+=f/2,f=0),{x:c,y:d,dx:e,dy:f}}function Qc(a,b){function c(a,c){return d3.xhr(a,b,c).response(d)}function d(a){return c.parse(a.responseText)}function e(b){return b.map(f).join(a)}function f(a){return g.test(a)?'"'+a.replace(/\"/g,'""')+'"':a}var g=RegExp('["'+a+"\n]"),h=a.charCodeAt(0);return c.parse=function(a){var b;return c.parseRows(a,function(a){return b?b(a):void(b=Function("d","return {"+a.map(function(a,b){return JSON.stringify(a)+": d["+b+"]"}).join(",")+"}"))})},c.parseRows=function(a,b){function c(){if(k>=j)return g;if(e)return e=!1,f;var b=k;if(34===a.charCodeAt(b)){for(var c=b;j>c++;)if(34===a.charCodeAt(c)){if(34!==a.charCodeAt(c+1))break;++c}k=c+2;var d=a.charCodeAt(c+1);return 13===d?(e=!0,10===a.charCodeAt(c+2)&&++k):10===d&&(e=!0),a.substring(b+1,c).replace(/""/g,'"')}for(;j>k;){var d=a.charCodeAt(k++),i=1;if(10===d)e=!0;else if(13===d)e=!0,10===a.charCodeAt(k)&&(++k,++i);else if(d!==h)continue;return a.substring(b,k-i)}return a.substring(b)}for(var d,e,f={},g={},i=[],j=a.length,k=0,l=0;(d=c())!==g;){for(var m=[];d!==f&&d!==g;)m.push(d),d=c();(!b||(m=b(m,l++)))&&i.push(m)}return i},c.format=function(a){return a.map(e).join("\n")},c}function Rc(a,b){bg.hasOwnProperty(a.type)&&bg[a.type](a,b)}function Sc(a,b,c){var d,e=-1,f=a.length-c;for(b.lineStart();f>++e;)d=a[e],b.point(d[0],d[1]);b.lineEnd()}function Tc(a,b){var c=-1,d=a.length;for(b.polygonStart();d>++c;)Sc(a[c],b,1);b.polygonEnd()}function Uc(a){return[Math.atan2(a[1],a[0]),Math.asin(Math.max(-1,Math.min(1,a[2])))]}function Vc(a,b){return Le>Math.abs(a[0]-b[0])&&Le>Math.abs(a[1]-b[1])}function Wc(a){var b=a[0],c=a[1],d=Math.cos(c);return[d*Math.cos(b),d*Math.sin(b),Math.sin(c)]}function Xc(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]}function Yc(a,b){return[a[1]*b[2]-a[2]*b[1],a[2]*b[0]-a[0]*b[2],a[0]*b[1]-a[1]*b[0]]}function Zc(a,b){a[0]+=b[0],a[1]+=b[1],a[2]+=b[2]}function $c(a,b){return[a[0]*b,a[1]*b,a[2]*b]}function _c(a){var b=Math.sqrt(a[0]*a[0]+a[1]*a[1]+a[2]*a[2]);a[0]/=b,a[1]/=b,a[2]/=b}function ad(a){function b(b){function d(c,d){c=a(c,d),b.point(c[0],c[1])}function f(){k=NaN,p.point=g,b.lineStart()}function g(d,f){var g=Wc([d,f]),h=a(d,f);c(k,l,j,m,n,o,k=h[0],l=h[1],j=d,m=g[0],n=g[1],o=g[2],e,b),b.point(k,l)}function h(){p.point=d,b.lineEnd()}function i(){var a,d,i,q,r,s,t;f(),p.point=function(b,c){g(a=b,d=c),i=k,q=l,r=m,s=n,t=o,p.point=g},p.lineEnd=function(){c(k,l,j,m,n,o,i,q,a,r,s,t,e,b),p.lineEnd=h,h()}}var j,k,l,m,n,o,p={point:d,lineStart:f,lineEnd:h,polygonStart:function(){b.polygonStart(),p.lineStart=i},polygonEnd:function(){b.polygonEnd(),p.lineStart=f}};return p}function c(b,e,f,g,h,i,j,k,l,m,n,o,p,q){var r=j-b,s=k-e,t=r*r+s*s;if(t>4*d&&p--){var u=g+m,v=h+n,w=i+o,x=Math.sqrt(u*u+v*v+w*w),y=Math.asin(w/=x),z=Le>Math.abs(Math.abs(w)-1)?(f+l)/2:Math.atan2(v,u),A=a(z,y),B=A[0],C=A[1],D=B-b,E=C-e,F=s*D-r*E;(F*F/t>d||Math.abs((r*D+s*E)/t-.5)>.3)&&(c(b,e,f,g,h,i,B,C,z,u/=x,v/=x,w,p,q),q.point(B,C),c(B,C,z,u,v,w,j,k,l,m,n,o,p,q))}}var d=.5,e=16;return b.precision=function(a){return arguments.length?(e=(d=a*a)>0&&16,b):Math.sqrt(d)},b}function bd(a,b){function c(a,b){var c=Math.sqrt(f-2*e*Math.sin(b))/e;return[c*Math.sin(a*=e),g-c*Math.cos(a)]}var d=Math.sin(a),e=(d+Math.sin(b))/2,f=1+d*(2*e-d),g=Math.sqrt(f)/e;return c.invert=function(a,b){var c=g-b;return[Math.atan2(a,c)/e,Math.asin((f-(a*a+c*c)*e*e)/(2*e))]},c}function cd(a){function b(a,b){d>a&&(d=a),a>f&&(f=a),e>b&&(e=b),b>g&&(g=b)}function c(){h.point=h.lineEnd=La}var d,e,f,g,h={point:b,lineStart:La,lineEnd:La,polygonStart:function(){h.lineEnd=c},polygonEnd:function(){h.point=b}};return function(b){return g=f=-(d=e=1/0),d3.geo.stream(b,a(h)),[[d,e],[f,g]]}}function dd(a,b){if(!eg){++fg,a*=Me;var c=Math.cos(b*=Me);gg+=(c*Math.cos(a)-gg)/fg,hg+=(c*Math.sin(a)-hg)/fg,ig+=(Math.sin(b)-ig)/fg}}function ed(){var a,b;eg=1,fd(),eg=2;var c=jg.point;jg.point=function(d,e){c(a=d,b=e)},jg.lineEnd=function(){jg.point(a,b),gd(),jg.lineEnd=gd}}function fd(){function a(a,e){a*=Me;var f=Math.cos(e*=Me),g=f*Math.cos(a),h=f*Math.sin(a),i=Math.sin(e),j=Math.atan2(Math.sqrt((j=c*i-d*h)*j+(j=d*g-b*i)*j+(j=b*h-c*g)*j),b*g+c*h+d*i);fg+=j,gg+=j*(b+(b=g)),hg+=j*(c+(c=h)),ig+=j*(d+(d=i))}var b,c,d;eg>1||(1>eg&&(eg=1,fg=gg=hg=ig=0),jg.point=function(e,f){e*=Me;var g=Math.cos(f*=Me);b=g*Math.cos(e),c=g*Math.sin(e),d=Math.sin(f),jg.point=a})}function gd(){jg.point=dd}function hd(a,b){var c=Math.cos(a),d=Math.sin(a);return function(e,f,g,h){null!=e?(e=id(c,e),f=id(c,f),(g>0?f>e:e>f)&&(e+=2*g*Ke)):(e=a+2*g*Ke,f=a);for(var i,j=g*b,k=e;g>0?k>f:f>k;k-=j)h.point((i=Uc([c,-d*Math.cos(k),-d*Math.sin(k)]))[0],i[1])}}function id(a,b){var c=Wc(b);c[0]-=a,_c(c);var d=Math.acos(Math.max(-1,Math.min(1,-c[1])));return((0>-c[2]?-d:d)+2*Math.PI-Le)%(2*Math.PI)}function jd(a,b,c){return function(d){function e(b,c){a(b,c)&&d.point(b,c)}function f(a,b){q.point(a,b)}function g(){r.point=f,q.lineStart()}function h(){ +r.point=e,q.lineEnd()}function i(a,b){t.point(a,b),p.push([a,b])}function j(){t.lineStart(),p=[]}function k(){i(p[0][0],p[0][1]),t.lineEnd();var a,b=t.clean(),c=s.buffer(),e=c.length;if(!e)return o=!0,n+=pd(p,-1),void(p=null);if(p=null,1&b){a=c[0],m+=pd(a,1);var f,e=a.length-1,g=-1;for(d.lineStart();e>++g;)d.point((f=a[g])[0],f[1]);return void d.lineEnd()}e>1&&2&b&&c.push(c.pop().concat(c.shift())),l.push(c.filter(nd))}var l,m,n,o,p,q=b(d),r={point:e,lineStart:g,lineEnd:h,polygonStart:function(){r.point=i,r.lineStart=j,r.lineEnd=k,o=!1,n=m=0,l=[],d.polygonStart()},polygonEnd:function(){r.point=e,r.lineStart=g,r.lineEnd=h,l=d3.merge(l),l.length?kd(l,c,d):(-Le>m||o&&-Le>n)&&(d.lineStart(),c(null,null,1,d),d.lineEnd()),d.polygonEnd(),l=null},sphere:function(){d.polygonStart(),d.lineStart(),c(null,null,1,d),d.lineEnd(),d.polygonEnd()}},s=od(),t=b(s);return r}}function kd(a,b,c){var d=[],e=[];if(a.forEach(function(a){var b=a.length;if(!(1>=b)){var c=a[0],f=a[b-1],g={point:c,points:a,other:null,visited:!1,entry:!0,subject:!0},h={point:c,points:[c],other:g,visited:!1,entry:!1,subject:!1};g.other=h,d.push(g),e.push(h),g={point:f,points:[f],other:null,visited:!1,entry:!1,subject:!0},h={point:f,points:[f],other:g,visited:!1,entry:!0,subject:!1},g.other=h,d.push(g),e.push(h)}}),e.sort(md),ld(d),ld(e),d.length)for(var f,g,h,i=d[0];;){for(f=i;f.visited;)if((f=f.next)===i)return;g=f.points,c.lineStart();do{if(f.visited=f.other.visited=!0,f.entry){if(f.subject)for(var j=0;g.length>j;j++)c.point((h=g[j])[0],h[1]);else b(f.point,f.next.point,1,c);f=f.next}else{if(f.subject){g=f.prev.points;for(var j=g.length;--j>=0;)c.point((h=g[j])[0],h[1])}else b(f.point,f.prev.point,-1,c);f=f.prev}f=f.other,g=f.points}while(!f.visited);c.lineEnd()}}function ld(a){if(b=a.length){for(var b,c,d=0,e=a[0];b>++d;)e.next=c=a[d],c.prev=e,e=c;e.next=c=a[0],c.prev=e}}function md(a,b){return(0>(a=a.point)[0]?a[1]-Ke/2-Le:Ke/2-a[1])-(0>(b=b.point)[0]?b[1]-Ke/2-Le:Ke/2-b[1])}function nd(a){return a.length>1}function od(){var a,b=[];return{lineStart:function(){b.push(a=[])},point:function(b,c){a.push([b,c])},lineEnd:La,buffer:function(){var c=b;return b=[],a=null,c}}}function pd(a,b){if(!(c=a.length))return 0;for(var c,d,e,f=0,g=0,h=a[0],i=h[0],j=h[1],k=Math.cos(j),l=Math.atan2(b*Math.sin(i)*k,Math.sin(j)),m=1-b*Math.cos(i)*k,n=l;c>++f;)h=a[f],k=Math.cos(j=h[1]),d=Math.atan2(b*Math.sin(i=h[0])*k,Math.sin(j)),e=1-b*Math.cos(i)*k,Le>Math.abs(m-2)&&Le>Math.abs(e-2)||(Le>Math.abs(e)||Le>Math.abs(m)||(Le>Math.abs(Math.abs(d-l)-Ke)?e+m>2&&(g+=4*(d-l)):g+=Le>Math.abs(m-2)?4*(d-n):((3*Ke+d-l)%(2*Ke)-Ke)*(m+e)),n=l,l=d,m=e);return g}function qd(a){var b,c=NaN,d=NaN,e=NaN;return{lineStart:function(){a.lineStart(),b=1},point:function(f,g){var h=f>0?Ke:-Ke,i=Math.abs(f-c);Le>Math.abs(i-Ke)?(a.point(c,d=(d+g)/2>0?Ke/2:-Ke/2),a.point(e,d),a.lineEnd(),a.lineStart(),a.point(h,d),a.point(f,d),b=0):e!==h&&i>=Ke&&(Le>Math.abs(c-e)&&(c-=e*Le),Le>Math.abs(f-h)&&(f-=h*Le),d=rd(c,d,f,g),a.point(e,d),a.lineEnd(),a.lineStart(),a.point(h,d),b=0),a.point(c=f,d=g),e=h},lineEnd:function(){a.lineEnd(),c=d=NaN},clean:function(){return 2-b}}}function rd(a,b,c,d){var e,f,g=Math.sin(a-c);return Math.abs(g)>Le?Math.atan((Math.sin(b)*(f=Math.cos(d))*Math.sin(c)-Math.sin(d)*(e=Math.cos(b))*Math.sin(a))/(e*f*g)):(b+d)/2}function sd(a,b,c,d){var e;if(null==a)e=c*Ke/2,d.point(-Ke,e),d.point(0,e),d.point(Ke,e),d.point(Ke,0),d.point(Ke,-e),d.point(0,-e),d.point(-Ke,-e),d.point(-Ke,0),d.point(-Ke,e);else if(Math.abs(a[0]-b[0])>Le){var f=(a[0]f}function c(a){var c,e,f,g;return{lineStart:function(){f=e=!1,g=1},point:function(h,i){var j,k=[h,i],l=b(h,i);!c&&(f=e=l)&&a.lineStart(),l!==e&&(j=d(c,k),(Vc(c,j)||Vc(k,j))&&(k[0]+=Le,k[1]+=Le,l=b(k[0],k[1]))),l!==e&&(g=0,(e=l)?(a.lineStart(),j=d(k,c),a.point(j[0],j[1])):(j=d(c,k),a.point(j[0],j[1]),a.lineEnd()),c=j),!l||c&&Vc(c,k)||a.point(k[0],k[1]),c=k},lineEnd:function(){e&&a.lineEnd(),c=null},clean:function(){return g|(f&&e)<<1}}}function d(a,b){var c=Wc(a,0),d=Wc(b,0),e=[1,0,0],g=Yc(c,d),h=Xc(g,g),i=g[0],j=h-i*i;if(!j)return a;var k=f*h/j,l=-f*i/j,m=Yc(e,g),n=$c(e,k),o=$c(g,l);Zc(n,o);var p=m,q=Xc(n,p),r=Xc(p,p),s=Math.sqrt(q*q-r*(Xc(n,n)-1)),t=$c(p,(-q-s)/r);return Zc(t,n),Uc(t)}var e=a*Me,f=Math.cos(e),g=hd(e,6*Me);return jd(b,c,g)}function ud(a,b){function c(c,d){return c=a(c,d),b(c[0],c[1])}return a.invert&&b.invert&&(c.invert=function(c,d){return c=b.invert(c,d),a.invert(c[0],c[1])}),c}function vd(a,b){return[a,b]}function wd(a,b,c){var d=d3.range(a,b-Le,c).concat(b);return function(a){return d.map(function(b){return[a,b]})}}function xd(a,b,c){var d=d3.range(a,b-Le,c).concat(b);return function(a){return d.map(function(b){return[b,a]})}}function yd(a,b,c,d){function e(a){var b=Math.sin(a*=n)*o,c=Math.sin(n-a)*o,d=c*j+b*l,e=c*k+b*m,f=c*g+b*i;return[Math.atan2(e,d)/Me,Math.atan2(f,Math.sqrt(d*d+e*e))/Me]}var f=Math.cos(b),g=Math.sin(b),h=Math.cos(d),i=Math.sin(d),j=f*Math.cos(a),k=f*Math.sin(a),l=h*Math.cos(c),m=h*Math.sin(c),n=Math.acos(Math.max(-1,Math.min(1,g*i+f*h*Math.cos(c-a)))),o=1/Math.sin(n);return e.distance=n,e}function zd(a,b){return[a/(2*Ke),Math.max(-.5,Math.min(.5,Math.log(Math.tan(Ke/4+b/2))/(2*Ke)))]}function Ad(a){return"m0,"+a+"a"+a+","+a+" 0 1,1 0,"+-2*a+"a"+a+","+a+" 0 1,1 0,"+2*a+"z"}function Bd(a){var b=ad(function(b,c){return a([b*Ne,c*Ne])});return function(a){return a=b(a),{point:function(b,c){a.point(b*Me,c*Me)},sphere:function(){a.sphere()},lineStart:function(){a.lineStart()},lineEnd:function(){a.lineEnd()},polygonStart:function(){a.polygonStart()},polygonEnd:function(){a.polygonEnd()}}}}function Cd(){function a(a,b){g.push("M",a,",",b,f)}function b(a,b){g.push("M",a,",",b),h.point=c}function c(a,b){g.push("L",a,",",b)}function d(){h.point=a}function e(){g.push("Z")}var f=Ad(4.5),g=[],h={point:a,lineStart:function(){h.point=b},lineEnd:d,polygonStart:function(){h.lineEnd=e},polygonEnd:function(){h.lineEnd=d,h.point=a},pointRadius:function(a){return f=Ad(a),h},result:function(){if(g.length){var a=g.join("");return g=[],a}}};return h}function Dd(a){function b(b,c){a.moveTo(b,c),a.arc(b,c,g,0,2*Ke)}function c(b,c){a.moveTo(b,c),h.point=d}function d(b,c){a.lineTo(b,c)}function e(){h.point=b}function f(){a.closePath()}var g=4.5,h={point:b,lineStart:function(){h.point=c},lineEnd:e,polygonStart:function(){h.lineEnd=f},polygonEnd:function(){h.lineEnd=e,h.point=b},pointRadius:function(a){return g=a,h},result:La};return h}function Ed(){function a(a,b){og+=e*a-d*b,d=a,e=b}var b,c,d,e;pg.point=function(f,g){pg.point=a,b=d=f,c=e=g},pg.lineEnd=function(){a(b,c)}}function Fd(a,b){eg||(gg+=a,hg+=b,++ig)}function Gd(){function a(a,d){var e=a-b,f=d-c,g=Math.sqrt(e*e+f*f);gg+=g*(b+a)/2,hg+=g*(c+d)/2,ig+=g,b=a,c=d}var b,c;if(1!==eg){if(!(1>eg))return;eg=1,gg=hg=ig=0}qg.point=function(d,e){qg.point=a,b=d,c=e}}function Hd(){qg.point=Fd}function Id(){function a(a,b){var c=e*a-d*b;gg+=c*(d+a),hg+=c*(e+b),ig+=3*c,d=a,e=b}var b,c,d,e;2>eg&&(eg=2,gg=hg=ig=0),qg.point=function(f,g){qg.point=a,b=d=f,c=e=g},qg.lineEnd=function(){a(b,c)}}function Jd(){function a(a,b){if(a*=Me,b*=Me,!(Le>Math.abs(Math.abs(f)-Ke/2)&&Le>Math.abs(Math.abs(b)-Ke/2))){var c=Math.cos(b),i=Math.sin(b);if(Le>Math.abs(f-Ke/2))sg+=2*(a-d);else{var j=a-e,k=Math.cos(j),l=Math.atan2(Math.sqrt((l=c*Math.sin(j))*l+(l=g*i-h*c*k)*l),h*i+g*c*k),m=(l+Ke+f+b)/4;sg+=(0>j&&j>-Ke||j>Ke?-4:4)*Math.atan(Math.sqrt(Math.abs(Math.tan(m)*Math.tan(m-l/2)*Math.tan(m-Ke/4-f/2)*Math.tan(m-Ke/4-b/2))))}d=e,e=a,f=b,g=c,h=i}}var b,c,d,e,f,g,h;tg.point=function(i,j){tg.point=a,d=e=(b=i)*Me,f=(c=j)*Me,g=Math.cos(f),h=Math.sin(f)},tg.lineEnd=function(){a(b,c)}}function Kd(a){return Ld(function(){return a})()}function Ld(a){function b(a){return a=g(a[0]*Me,a[1]*Me),[a[0]*k+h,i-a[1]*k]}function c(a){return a=g.invert((a[0]-h)/k,(i-a[1])/k),[a[0]*Ne,a[1]*Ne]}function d(){g=ud(f=Nd(p,q,r),e);var a=e(n,o);return h=l-a[0]*k,i=m+a[1]*k,b}var e,f,g,h,i,j=ad(function(a,b){return a=e(a,b),[a[0]*k+h,i-a[1]*k]}),k=150,l=480,m=250,n=0,o=0,p=0,q=0,r=0,s=kg,t=null;return b.stream=function(a){return Md(f,s(j(a)))},b.clipAngle=function(a){return arguments.length?(s=null==a?(t=a,kg):td(t=+a),b):t},b.scale=function(a){return arguments.length?(k=+a,d()):k},b.translate=function(a){return arguments.length?(l=+a[0],m=+a[1],d()):[l,m]},b.center=function(a){return arguments.length?(n=a[0]%360*Me,o=a[1]%360*Me,d()):[n*Ne,o*Ne]},b.rotate=function(a){return arguments.length?(p=a[0]%360*Me,q=a[1]%360*Me,r=a.length>2?a[2]%360*Me:0,d()):[p*Ne,q*Ne,r*Ne]},d3.rebind(b,j,"precision"),function(){return e=a.apply(this,arguments),b.invert=e.invert&&c,d()}}function Md(a,b){return{point:function(c,d){d=a(c*Me,d*Me),c=d[0],b.point(c>Ke?c-2*Ke:-Ke>c?c+2*Ke:c,d[1])},sphere:function(){b.sphere()},lineStart:function(){b.lineStart()},lineEnd:function(){b.lineEnd()},polygonStart:function(){b.polygonStart()},polygonEnd:function(){b.polygonEnd()}}}function Nd(a,b,c){return a?b||c?ud(Pd(a),Qd(b,c)):Pd(a):b||c?Qd(b,c):vd}function Od(a){return function(b,c){return b+=a,[b>Ke?b-2*Ke:-Ke>b?b+2*Ke:b,c]}}function Pd(a){var b=Od(a);return b.invert=Od(-a),b}function Qd(a,b){function c(a,b){var c=Math.cos(b),h=Math.cos(a)*c,i=Math.sin(a)*c,j=Math.sin(b),k=j*d+h*e;return[Math.atan2(i*f-k*g,h*d-j*e),Math.asin(Math.max(-1,Math.min(1,k*f+i*g)))]}var d=Math.cos(a),e=Math.sin(a),f=Math.cos(b),g=Math.sin(b);return c.invert=function(a,b){var c=Math.cos(b),h=Math.cos(a)*c,i=Math.sin(a)*c,j=Math.sin(b),k=j*f-i*g;return[Math.atan2(i*f+j*g,h*d+k*e),Math.asin(Math.max(-1,Math.min(1,k*d-h*e)))]},c}function Rd(a,b){function c(b,c){var d=Math.cos(b),e=Math.cos(c),f=a(d*e);return[f*e*Math.sin(b),f*Math.sin(c)]}return c.invert=function(a,c){var d=Math.sqrt(a*a+c*c),e=b(d),f=Math.sin(e),g=Math.cos(e);return[Math.atan2(a*f,d*g),Math.asin(d&&c*f/d)]},c}function Sd(a,b,c,d){var e,f,g,h,i,j,k;return e=d[a],f=e[0],g=e[1],e=d[b],h=e[0],i=e[1],e=d[c],j=e[0],k=e[1],(k-g)*(h-f)-(i-g)*(j-f)>0}function Td(a,b,c){return(c[0]-b[0])*(a[1]-b[1])<(c[1]-b[1])*(a[0]-b[0])}function Ud(a,b,c,d){var e=a[0],f=c[0],g=b[0]-e,h=d[0]-f,i=a[1],j=c[1],k=b[1]-i,l=d[1]-j,m=(h*(i-j)-l*(e-f))/(l*g-h*k);return[e+m*g,i+m*k]}function Vd(a,b){var c={list:a.map(function(a,b){return{index:b,x:a[0],y:a[1]}}).sort(function(a,b){return a.yb.y?1:a.xb.x?1:0}),bottomSite:null},d={list:[],leftEnd:null,rightEnd:null,init:function(){d.leftEnd=d.createHalfEdge(null,"l"),d.rightEnd=d.createHalfEdge(null,"l"),d.leftEnd.r=d.rightEnd,d.rightEnd.l=d.leftEnd,d.list.unshift(d.leftEnd,d.rightEnd)},createHalfEdge:function(a,b){return{edge:a,side:b,vertex:null,l:null,r:null}},insert:function(a,b){b.l=a,b.r=a.r,a.r.l=b,a.r=b},leftBound:function(a){var b=d.leftEnd;do b=b.r;while(b!=d.rightEnd&&e.rightOf(b,a));return b=b.l},del:function(a){a.l.r=a.r,a.r.l=a.l,a.edge=null},right:function(a){return a.r},left:function(a){return a.l},leftRegion:function(a){return null==a.edge?c.bottomSite:a.edge.region[a.side]},rightRegion:function(a){return null==a.edge?c.bottomSite:a.edge.region[vg[a.side]]}},e={bisect:function(a,b){var c={region:{l:a,r:b},ep:{l:null,r:null}},d=b.x-a.x,e=b.y-a.y,f=d>0?d:-d,g=e>0?e:-e;return c.c=a.x*d+a.y*e+.5*(d*d+e*e),f>g?(c.a=1,c.b=e/d,c.c/=d):(c.b=1,c.a=d/e,c.c/=e),c},intersect:function(a,b){var c=a.edge,d=b.edge;if(!c||!d||c.region.r==d.region.r)return null;var e=c.a*d.b-c.b*d.a;if(1e-10>Math.abs(e))return null;var f,g,h=(c.c*d.b-d.c*c.b)/e,i=(d.c*c.a-c.c*d.a)/e,j=c.region.r,k=d.region.r;j.y=g.region.r.x;return l&&"l"===f.side||!l&&"r"===f.side?null:{x:h,y:i}},rightOf:function(a,b){var c=a.edge,d=c.region.r,e=b.x>d.x;if(e&&"l"===a.side)return 1;if(!e&&"r"===a.side)return 0;if(1===c.a){var f=b.y-d.y,g=b.x-d.x,h=0,i=0;if(!e&&0>c.b||e&&c.b>=0?i=h=f>=c.b*g:(i=b.x+b.y*c.b>c.c,0>c.b&&(i=!i),i||(h=1)),!h){var j=d.x-c.region.l.x;i=c.b*(g*g-f*f)c.b&&(i=!i)}}else{var k=c.c-c.a*b.x,l=b.y-k,m=b.x-d.x,n=k-d.y;i=l*l>m*m+n*n}return"l"===a.side?i:!i},endPoint:function(a,c,d){a.ep[c]=d,a.ep[vg[c]]&&b(a)},distance:function(a,b){var c=a.x-b.x,d=a.y-b.y;return Math.sqrt(c*c+d*d)}},f={list:[],insert:function(a,b,c){a.vertex=b,a.ystar=b.y+c;for(var d=0,e=f.list,g=e.length;g>d;d++){var h=e[d];if(!(a.ystar>h.ystar||a.ystar==h.ystar&&b.x>h.vertex.x))break}e.splice(d,0,a)},del:function(a){for(var b=0,c=f.list,d=c.length;d>b&&c[b]!=a;++b);c.splice(b,1)},empty:function(){return 0===f.list.length},nextEvent:function(a){for(var b=0,c=f.list,d=c.length;d>b;++b)if(c[b]==a)return c[b+1];return null},min:function(){var a=f.list[0];return{x:a.vertex.x,y:a.ystar}},extractMin:function(){return f.list.shift()}};d.init(),c.bottomSite=c.list.shift();for(var g,h,i,j,k,l,m,n,o,p,q,r,s,t=c.list.shift();;)if(f.empty()||(g=f.min()),t&&(f.empty()||t.yn.y&&(o=m,m=n,n=o,s="r"),r=e.bisect(m,n),l=d.createHalfEdge(r,s),d.insert(j,l),e.endPoint(r,vg[s],q),p=e.intersect(j,l),p&&(f.del(j),f.insert(j,p,e.distance(p,m))),p=e.intersect(l,k),p&&f.insert(l,p,e.distance(p,m))}for(h=d.right(d.leftEnd);h!=d.rightEnd;h=d.right(h))b(h.edge)}function Wd(){return{leaf:!0,nodes:[],point:null}}function Xd(a,b,c,d,e,f){if(!a(b,c,d,e,f)){var g=.5*(c+e),h=.5*(d+f),i=b.nodes;i[0]&&Xd(a,i[0],c,d,g,h),i[1]&&Xd(a,i[1],g,d,e,h),i[2]&&Xd(a,i[2],c,h,g,f),i[3]&&Xd(a,i[3],g,h,e,f)}}function Yd(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function Zd(a,b,c,d){for(var e,f,g=0,h=b.length,i=c.length;h>g;){if(d>=i)return-1;if(e=b.charCodeAt(g++),37===e){if(f=Og[b.charAt(g++)],!f||0>(d=f(a,c,d)))return-1}else if(e!=c.charCodeAt(d++))return-1}return d}function $d(a){return RegExp("^(?:"+a.map(d3.requote).join("|")+")","i")}function _d(a){for(var b=new f,c=-1,d=a.length;d>++c;)b.set(a[c].toLowerCase(),c);return b}function ae(a,b,c){a+="";var d=a.length;return c>d?Array(c-d+1).join(b)+a:a}function be(a,b,c){Hg.lastIndex=0;var d=Hg.exec(b.substring(c));return d?c+=d[0].length:-1}function ce(a,b,c){Gg.lastIndex=0;var d=Gg.exec(b.substring(c));return d?c+=d[0].length:-1}function de(a,b,c){Kg.lastIndex=0;var d=Kg.exec(b.substring(c));return d?(a.m=Lg.get(d[0].toLowerCase()),c+=d[0].length):-1}function ee(a,b,c){Ig.lastIndex=0;var d=Ig.exec(b.substring(c));return d?(a.m=Jg.get(d[0].toLowerCase()),c+=d[0].length):-1}function fe(a,b,c){return Zd(a,""+Ng.c,b,c)}function ge(a,b,c){return Zd(a,""+Ng.x,b,c)}function he(a,b,c){return Zd(a,""+Ng.X,b,c)}function ie(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+4));return d?(a.y=+d[0],c+=d[0].length):-1}function je(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.y=ke(+d[0]),c+=d[0].length):-1}function ke(a){return a+(a>68?1900:2e3)}function le(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.m=d[0]-1,c+=d[0].length):-1}function me(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.d=+d[0],c+=d[0].length):-1}function ne(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.H=+d[0],c+=d[0].length):-1}function oe(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.M=+d[0],c+=d[0].length):-1}function pe(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+2));return d?(a.S=+d[0],c+=d[0].length):-1}function qe(a,b,c){Pg.lastIndex=0;var d=Pg.exec(b.substring(c,c+3));return d?(a.L=+d[0],c+=d[0].length):-1}function re(a,b,c){var d=Qg.get(b.substring(c,c+=2).toLowerCase());return null==d?-1:(a.p=d,c)}function se(a){var b=a.getTimezoneOffset(),c=b>0?"-":"+",d=~~(Math.abs(b)/60),e=Math.abs(b)%60;return c+ae(d,"0",2)+ae(e,"0",2)}function te(a){return a.toISOString()}function ue(a,b,c){function d(b){var c=a(b),d=f(c,1);return d-b>b-c?c:d}function e(c){return b(c=a(new wg(c-1)),1),c}function f(a,c){return b(a=new wg(+a),c),a}function g(a,d,f){var g=e(a),h=[];if(f>1)for(;d>g;)c(g)%f||h.push(new Date(+g)),b(g,1);else for(;d>g;)h.push(new Date(+g)),b(g,1);return h}function h(a,b,c){try{wg=Yd;var d=new Yd;return d._=a,g(d,b,c)}finally{wg=Date}}a.floor=a,a.round=d,a.ceil=e,a.offset=f,a.range=g;var i=a.utc=ve(a);return i.floor=i,i.round=ve(d),i.ceil=ve(e),i.offset=ve(f),i.range=h,a}function ve(a){return function(b,c){try{wg=Yd;var d=new Yd;return d._=b,a(d,c)._}finally{wg=Date}}}function we(a,b,c){function d(b){return a(b)}return d.invert=function(b){return ye(a.invert(b))},d.domain=function(b){return arguments.length?(a.domain(b),d):a.domain().map(ye)},d.nice=function(a){return d.domain(Oa(d.domain(),function(){return a}))},d.ticks=function(c,e){var f=xe(d.domain());if("function"!=typeof c){var g=f[1]-f[0],h=g/c,i=d3.bisect(Sg,h);if(i==Sg.length)return b.year(f,c);if(!i)return a.ticks(c).map(ye);Math.log(h/Sg[i-1])b?[b,c]:[c,b]}function ye(a){return new Date(a)}function ze(a){return function(b){for(var c=a.length-1,d=a[c];!d[1](b);)d=a[--c];return d[0](b)}}function Ae(a){var b=new Date(a,0,1);return b.setFullYear(a),b}function Be(a){var b=a.getFullYear(),c=Ae(b),d=Ae(b+1);return b+(a-c)/(d-c)}function Ce(a){var b=new Date(Date.UTC(a,0,1));return b.setUTCFullYear(a),b}function De(a){var b=a.getUTCFullYear(),c=Ce(b),d=Ce(b+1);return b+(a-c)/(d-c)}var Ee=".",Fe=",",Ge=[3,3];Date.now||(Date.now=function(){return+new Date});try{document.createElement("div").style.setProperty("opacity",0,"")}catch(He){var Ie=CSSStyleDeclaration.prototype,Je=Ie.setProperty;Ie.setProperty=function(a,b,c){Je.call(this,a,b+"",c)}}d3={version:"3.0.2"};var Ke=Math.PI,Le=1e-6,Me=Ke/180,Ne=180/Ke,Oe=e;try{Oe(document.documentElement.childNodes)[0].nodeType}catch(Pe){Oe=d}var Qe=[].__proto__?function(a,b){a.__proto__=b}:function(a,b){for(var c in b)a[c]=b[c]};d3.map=function(a){var b=new f;for(var c in a)b.set(c,a[c]);return b},c(f,{has:function(a){return Re+a in this},get:function(a){return this[Re+a]},set:function(a,b){return this[Re+a]=b},remove:function(a){return a=Re+a,a in this&&delete this[a]},keys:function(){var a=[];return this.forEach(function(b){a.push(b)}),a},values:function(){var a=[];return this.forEach(function(b,c){a.push(c)}),a},entries:function(){var a=[];return this.forEach(function(b,c){a.push({key:b,value:c})}),a},forEach:function(a){for(var b in this)b.charCodeAt(0)===Se&&a.call(this,b.substring(1),this[b])}});var Re="\x00",Se=Re.charCodeAt(0);d3.functor=i,d3.rebind=function(a,b){for(var c,d=1,e=arguments.length;e>++d;)a[c=arguments[d]]=j(a,b,b[c]);return a},d3.ascending=function(a,b){return b>a?-1:a>b?1:a>=b?0:NaN},d3.descending=function(a,b){return a>b?-1:b>a?1:b>=a?0:NaN},d3.mean=function(a,b){var c,d=a.length,e=0,f=-1,g=0;if(1===arguments.length)for(;d>++f;)k(c=a[f])&&(e+=(c-e)/++g);else for(;d>++f;)k(c=b.call(a,a[f],f))&&(e+=(c-e)/++g);return g?e:void 0},d3.median=function(a,b){return arguments.length>1&&(a=a.map(b)),a=a.filter(k),a.length?d3.quantile(a.sort(d3.ascending),.5):void 0},d3.min=function(a,b){var c,d,e=-1,f=a.length;if(1===arguments.length){for(;f>++e&&(null==(c=a[e])||c!=c);)c=void 0;for(;f>++e;)null!=(d=a[e])&&c>d&&(c=d)}else{for(;f>++e&&(null==(c=b.call(a,a[e],e))||c!=c);)c=void 0;for(;f>++e;)null!=(d=b.call(a,a[e],e))&&c>d&&(c=d)}return c},d3.max=function(a,b){var c,d,e=-1,f=a.length;if(1===arguments.length){for(;f>++e&&(null==(c=a[e])||c!=c);)c=void 0;for(;f>++e;)null!=(d=a[e])&&d>c&&(c=d)}else{for(;f>++e&&(null==(c=b.call(a,a[e],e))||c!=c);)c=void 0;for(;f>++e;)null!=(d=b.call(a,a[e],e))&&d>c&&(c=d)}return c},d3.extent=function(a,b){var c,d,e,f=-1,g=a.length;if(1===arguments.length){for(;g>++f&&(null==(c=e=a[f])||c!=c);)c=e=void 0;for(;g>++f;)null!=(d=a[f])&&(c>d&&(c=d),d>e&&(e=d))}else{for(;g>++f&&(null==(c=e=b.call(a,a[f],f))||c!=c);)c=void 0;for(;g>++f;)null!=(d=b.call(a,a[f],f))&&(c>d&&(c=d),d>e&&(e=d))}return[c,e]},d3.random={normal:function(a,b){var c=arguments.length;return 2>c&&(b=1),1>c&&(a=0),function(){var c,d,e;do c=2*Math.random()-1,d=2*Math.random()-1,e=c*c+d*d;while(!e||e>1);return a+b*c*Math.sqrt(-2*Math.log(e)/e)}},logNormal:function(a,b){var c=arguments.length;2>c&&(b=1),1>c&&(a=0);var d=d3.random.normal();return function(){return Math.exp(a+b*d())}},irwinHall:function(a){return function(){for(var b=0,c=0;a>c;c++)b+=Math.random();return b/a}}},d3.sum=function(a,b){var c,d=0,e=a.length,f=-1;if(1===arguments.length)for(;e>++f;)isNaN(c=+a[f])||(d+=c);else for(;e>++f;)isNaN(c=+b.call(a,a[f],f))||(d+=c);return d},d3.quantile=function(a,b){var c=(a.length-1)*b+1,d=Math.floor(c),e=+a[d-1],f=c-d;return f?e+f*(a[d]-e):e},d3.shuffle=function(a){for(var b,c,d=a.length;d;)c=0|Math.random()*d--,b=a[d],a[d]=a[c],a[c]=b;return a},d3.transpose=function(a){return d3.zip.apply(d3,a)},d3.zip=function(){if(!(d=arguments.length))return[];for(var a=-1,b=d3.min(arguments,l),c=Array(b);b>++a;)for(var d,e=-1,f=c[a]=Array(d);d>++e;)f[e]=arguments[e][a];return c},d3.bisector=function(a){return{left:function(b,c,d,e){for(3>arguments.length&&(d=0),4>arguments.length&&(e=b.length);e>d;){var f=d+e>>>1;c>a.call(b,b[f],f)?d=f+1:e=f}return d},right:function(b,c,d,e){for(3>arguments.length&&(d=0),4>arguments.length&&(e=b.length);e>d;){var f=d+e>>>1;a.call(b,b[f],f)>c?e=f:d=f+1}return d}}};var Te=d3.bisector(function(a){return a});d3.bisectLeft=Te.left,d3.bisect=d3.bisectRight=Te.right,d3.nest=function(){function a(b,h){if(h>=g.length)return d?d.call(e,b):c?b.sort(c):b;for(var i,j,k,l=-1,m=b.length,n=g[h++],o=new f,p={};m>++l;)(k=o.get(i=n(j=b[l])))?k.push(j):o.set(i,[j]);return o.forEach(function(b,c){p[b]=a(c,h)}),p}function b(a,c){if(c>=g.length)return a;var d,e=[],f=h[c++];for(d in a)e.push({key:d,values:b(a[d],c)});return f&&e.sort(function(a,b){return f(a.key,b.key)}),e}var c,d,e={},g=[],h=[];return e.map=function(b){return a(b,0)},e.entries=function(c){return b(a(c,0),0)},e.key=function(a){return g.push(a),e},e.sortKeys=function(a){return h[g.length-1]=a,e},e.sortValues=function(a){return c=a,e},e.rollup=function(a){return d=a,e},e},d3.keys=function(a){var b=[];for(var c in a)b.push(c);return b},d3.values=function(a){var b=[];for(var c in a)b.push(a[c]);return b},d3.entries=function(a){var b=[];for(var c in a)b.push({key:c,value:a[c]});return b},d3.permute=function(a,b){for(var c=[],d=-1,e=b.length;e>++d;)c[d]=a[b[d]];return c},d3.merge=function(a){return Array.prototype.concat.apply([],a)},d3.range=function(a,b,c){if(3>arguments.length&&(c=1,2>arguments.length&&(b=a,a=0)),1/0===(b-a)/c)throw Error("infinite range");var d,e=[],f=n(Math.abs(c)),g=-1;if(a*=f,b*=f,c*=f,0>c)for(;(d=a+c*++g)>b;)e.push(d/f);else for(;b>(d=a+c*++g);)e.push(d/f);return e},d3.requote=function(a){return a.replace(Ue,"\\$&")};var Ue=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;d3.round=function(a,b){return b?Math.round(a*(b=Math.pow(10,b)))/b:Math.round(a)},d3.xhr=function(a,b,c){function d(){var a=j.status;!a&&j.responseText||a>=200&&300>a||304===a?f.load.call(e,i.call(e,j)):f.error.call(e,j)}var e={},f=d3.dispatch("progress","load","error"),h={},i=g,j=new(window.XDomainRequest&&/^(http(s)?:)?\/\//.test(a)?XDomainRequest:XMLHttpRequest);return"onload"in j?j.onload=j.onerror=d:j.onreadystatechange=function(){j.readyState>3&&d()},j.onprogress=function(a){var b=d3.event;d3.event=a;try{f.progress.call(e,j)}finally{d3.event=b}},e.header=function(a,b){return a=(a+"").toLowerCase(),2>arguments.length?h[a]:(null==b?delete h[a]:h[a]=b+"",e)},e.mimeType=function(a){return arguments.length?(b=null==a?null:a+"",e):b},e.response=function(a){return i=a,e},["get","post"].forEach(function(a){e[a]=function(){return e.send.apply(e,[a].concat(Oe(arguments)))}}),e.send=function(c,d,f){if(2===arguments.length&&"function"==typeof d&&(f=d,d=null),j.open(c,a,!0),null==b||"accept"in h||(h.accept=b+",*/*"),j.setRequestHeader)for(var g in h)j.setRequestHeader(g,h[g]);return null!=b&&j.overrideMimeType&&j.overrideMimeType(b),null!=f&&e.on("error",f).on("load",function(a){f(null,a)}),j.send(null==d?null:d),e},e.abort=function(){return j.abort(),e},d3.rebind(e,f,"on"),2===arguments.length&&"function"==typeof b&&(c=b,b=null),null==c?e:e.get(o(c))},d3.text=function(){return d3.xhr.apply(d3,arguments).response(p)},d3.json=function(a,b){return d3.xhr(a,"application/json",b).response(q)},d3.html=function(a,b){return d3.xhr(a,"text/html",b).response(r)},d3.xml=function(){return d3.xhr.apply(d3,arguments).response(s)};var Ve={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};d3.ns={prefix:Ve,qualify:function(a){var b=a.indexOf(":"),c=a;return b>=0&&(c=a.substring(0,b),a=a.substring(b+1)),Ve.hasOwnProperty(c)?{space:Ve[c],local:a}:a}},d3.dispatch=function(){for(var a=new t,b=-1,c=arguments.length;c>++b;)a[arguments[b]]=u(a);return a},t.prototype.on=function(a,b){var c=a.indexOf("."),d="";return c>0&&(d=a.substring(c+1),a=a.substring(0,c)),2>arguments.length?this[a].on(d):this[a].on(d,b)},d3.format=function(a){var b=We.exec(a),c=b[1]||" ",d=b[2]||">",e=b[3]||"",f=b[4]||"",g=b[5],h=+b[6],i=b[7],j=b[8],k=b[9],l=1,m="",n=!1;switch(j&&(j=+j.substring(1)),(g||"0"===c&&"="===d)&&(g=c="0",d="=",i&&(h-=Math.floor((h-1)/4))),k){case"n":i=!0,k="g";break;case"%":l=100,m="%",k="f";break;case"p":l=100,m="%",k="r";break;case"b":case"o":case"x":case"X":f&&(f="0"+k.toLowerCase());case"c":case"d":n=!0,j=0;break;case"s":l=-1,k="r"}"#"===f&&(f=""),"r"!=k||j||(k="g"),k=Xe.get(k)||w;var o=g&&i;return function(a){if(n&&a%1)return"";var b=0>a||0===a&&0>1/a?(a=-a,"-"):e;if(0>l){var p=d3.formatPrefix(a,j);a=p.scale(a),m=p.symbol}else a*=l;a=k(a,j),!g&&i&&(a=Ye(a));var q=f.length+a.length+(o?0:b.length),r=h>q?Array(q=h-q+1).join(c):"";return o&&(a=Ye(r+a)),Ee&&a.replace(".",Ee),b+=f,("<"===d?b+a+r:">"===d?r+b+a:"^"===d?r.substring(0,q>>=1)+b+a+r.substring(q):b+(o?a:r+a))+m}};var We=/(?:([^{])?([<>=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/,Xe=d3.map({b:function(a){return a.toString(2)},c:function(a){return String.fromCharCode(a)},o:function(a){return a.toString(8)},x:function(a){return a.toString(16)},X:function(a){return a.toString(16).toUpperCase()},g:function(a,b){return a.toPrecision(b)},e:function(a,b){return a.toExponential(b)},f:function(a,b){return a.toFixed(b)},r:function(a,b){return d3.round(a,b=v(a,b)).toFixed(Math.max(0,Math.min(20,b)))}}),Ye=g;if(Ge){var Ze=Ge.length;Ye=function(a){for(var b=a.lastIndexOf("."),c=b>=0?"."+a.substring(b+1):(b=a.length,""),d=[],e=0,f=Ge[0];b>0&&f>0;)d.push(a.substring(b-=f,b+f)),f=Ge[e=(e+1)%Ze];return d.reverse().join(Fe||"")+c}}var $e=["y","z","a","f","p","n","μ","m","","k","M","G","T","P","E","Z","Y"].map(x);d3.formatPrefix=function(a,b){var c=0;return a&&(0>a&&(a*=-1),b&&(a=d3.round(a,v(a,b))),c=1+Math.floor(1e-12+Math.log(a)/Math.LN10),c=Math.max(-24,Math.min(24,3*Math.floor((0>=c?c+1:c-1)/3)))),$e[8+c/3]};var _e=function(){return g},af=d3.map({linear:_e,poly:E,quad:function(){return B},cubic:function(){return C},sin:function(){return F},exp:function(){return G},circle:function(){return H},elastic:I,back:J,bounce:function(){return K}}),bf=d3.map({"in":g,out:z,"in-out":A,"out-in":function(a){return A(z(a))}});d3.ease=function(a){var b=a.indexOf("-"),c=b>=0?a.substring(0,b):a,d=b>=0?a.substring(b+1):"in";return c=af.get(c)||_e,d=bf.get(d)||g,y(d(c.apply(null,Array.prototype.slice.call(arguments,1))))},d3.event=null,d3.transform=function(a){var b=document.createElementNS(d3.ns.prefix.svg,"g");return(d3.transform=function(a){b.setAttribute("transform",a);var c=b.transform.baseVal.consolidate();return new O(c?c.matrix:cf)})(a)},O.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var cf={a:1,b:0,c:0,d:1,e:0,f:0};d3.interpolate=function(a,b){for(var c,d=d3.interpolators.length;--d>=0&&!(c=d3.interpolators[d](a,b)););return c},d3.interpolateNumber=function(a,b){return b-=a,function(c){return a+b*c}},d3.interpolateRound=function(a,b){return b-=a,function(c){return Math.round(a+b*c)}},d3.interpolateString=function(a,b){var c,d,e,f,g,h=0,i=0,j=[],k=[];for(df.lastIndex=0,d=0;c=df.exec(b);++d)c.index&&j.push(b.substring(h,i=c.index)),k.push({i:j.length,x:c[0]}),j.push(null),h=df.lastIndex;for(b.length>h&&j.push(b.substring(h)),d=0,f=k.length;(c=df.exec(a))&&f>d;++d)if(g=k[d],g.x==c[0]){if(g.i)if(null==j[g.i+1])for(j[g.i-1]+=g.x,j.splice(g.i,1),e=d+1;f>e;++e)k[e].i--;else for(j[g.i-1]+=g.x+j[g.i+1],j.splice(g.i,2),e=d+1;f>e;++e)k[e].i-=2;else if(null==j[g.i+1])j[g.i]=g.x;else for(j[g.i]=g.x+j[g.i+1],j.splice(g.i+1,1),e=d+1;f>e;++e)k[e].i--;k.splice(d,1),f--,d--}else g.x=d3.interpolateNumber(parseFloat(c[0]),parseFloat(g.x));for(;f>d;)g=k.pop(),null==j[g.i+1]?j[g.i]=g.x:(j[g.i]=g.x+j[g.i+1],j.splice(g.i+1,1)),f--;return 1===j.length?null==j[0]?k[0].x:function(){return b}:function(a){for(d=0;f>d;++d)j[(g=k[d]).i]=g.x(a);return j.join("")}},d3.interpolateTransform=function(a,b){var c,d=[],e=[],f=d3.transform(a),g=d3.transform(b),h=f.translate,i=g.translate,j=f.rotate,k=g.rotate,l=f.skew,m=g.skew,n=f.scale,o=g.scale;return h[0]!=i[0]||h[1]!=i[1]?(d.push("translate(",null,",",null,")"),e.push({i:1,x:d3.interpolateNumber(h[0],i[0])},{i:3,x:d3.interpolateNumber(h[1],i[1])})):i[0]||i[1]?d.push("translate("+i+")"):d.push(""),j!=k?(j-k>180?k+=360:k-j>180&&(j+=360),e.push({i:d.push(d.pop()+"rotate(",null,")")-2,x:d3.interpolateNumber(j,k)})):k&&d.push(d.pop()+"rotate("+k+")"),l!=m?e.push({i:d.push(d.pop()+"skewX(",null,")")-2,x:d3.interpolateNumber(l,m)}):m&&d.push(d.pop()+"skewX("+m+")"),n[0]!=o[0]||n[1]!=o[1]?(c=d.push(d.pop()+"scale(",null,",",null,")"),e.push({i:c-4,x:d3.interpolateNumber(n[0],o[0])},{i:c-2,x:d3.interpolateNumber(n[1],o[1])})):(1!=o[0]||1!=o[1])&&d.push(d.pop()+"scale("+o+")"),c=e.length,function(a){for(var b,f=-1;c>++f;)d[(b=e[f]).i]=b.x(a);return d.join("")}},d3.interpolateRgb=function(a,b){a=d3.rgb(a),b=d3.rgb(b);var c=a.r,d=a.g,e=a.b,f=b.r-c,g=b.g-d,h=b.b-e;return function(a){return"#"+Y(Math.round(c+f*a))+Y(Math.round(d+g*a))+Y(Math.round(e+h*a))}},d3.interpolateHsl=function(a,b){a=d3.hsl(a),b=d3.hsl(b);var c=a.h,d=a.s,e=a.l,f=b.h-c,g=b.s-d,h=b.l-e;return f>180?f-=360:-180>f&&(f+=360),function(a){return ea(c+f*a,d+g*a,e+h*a)+""}},d3.interpolateLab=function(a,b){a=d3.lab(a),b=d3.lab(b);var c=a.l,d=a.a,e=a.b,f=b.l-c,g=b.a-d,h=b.b-e;return function(a){return ka(c+f*a,d+g*a,e+h*a)+""}},d3.interpolateHcl=function(a,b){a=d3.hcl(a),b=d3.hcl(b);var c=a.h,d=a.c,e=a.l,f=b.h-c,g=b.c-d,h=b.l-e;return f>180?f-=360:-180>f&&(f+=360),function(a){return ha(c+f*a,d+g*a,e+h*a)+""}},d3.interpolateArray=function(a,b){var c,d=[],e=[],f=a.length,g=b.length,h=Math.min(a.length,b.length);for(c=0;h>c;++c)d.push(d3.interpolate(a[c],b[c]));for(;f>c;++c)e[c]=a[c];for(;g>c;++c)e[c]=b[c];return function(a){for(c=0;h>c;++c)e[c]=d[c](a);return e}},d3.interpolateObject=function(a,b){var c,d={},e={};for(c in a)c in b?d[c]=S(c)(a[c],b[c]):e[c]=a[c];for(c in b)c in a||(e[c]=b[c]);return function(a){for(c in d)e[c]=d[c](a);return e}};var df=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g;d3.interpolators=[d3.interpolateObject,function(a,b){return b instanceof Array&&d3.interpolateArray(a,b)},function(a,b){return("string"==typeof a||"string"==typeof b)&&d3.interpolateString(a+"",b+"")},function(a,b){return("string"==typeof b?ff.has(b)||/^(#|rgb\(|hsl\()/.test(b):b instanceof V)&&d3.interpolateRgb(a,b); +},function(a,b){return!isNaN(a=+a)&&!isNaN(b=+b)&&d3.interpolateNumber(a,b)}],V.prototype.toString=function(){return this.rgb()+""},d3.rgb=function(a,b,c){return 1===arguments.length?a instanceof X?W(a.r,a.g,a.b):Z(""+a,W,ea):W(~~a,~~b,~~c)};var ef=X.prototype=new V;ef.brighter=function(a){a=Math.pow(.7,arguments.length?a:1);var b=this.r,c=this.g,d=this.b,e=30;return b||c||d?(b&&e>b&&(b=e),c&&e>c&&(c=e),d&&e>d&&(d=e),W(Math.min(255,Math.floor(b/a)),Math.min(255,Math.floor(c/a)),Math.min(255,Math.floor(d/a)))):W(e,e,e)},ef.darker=function(a){return a=Math.pow(.7,arguments.length?a:1),W(Math.floor(a*this.r),Math.floor(a*this.g),Math.floor(a*this.b))},ef.hsl=function(){return $(this.r,this.g,this.b)},ef.toString=function(){return"#"+Y(this.r)+Y(this.g)+Y(this.b)};var ff=d3.map({aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"});ff.forEach(function(a,b){ff.set(a,Z(b,W,ea))}),d3.hsl=function(a,b,c){return 1===arguments.length?a instanceof da?ca(a.h,a.s,a.l):Z(""+a,$,ca):ca(+a,+b,+c)};var gf=da.prototype=new V;gf.brighter=function(a){return a=Math.pow(.7,arguments.length?a:1),ca(this.h,this.s,this.l/a)},gf.darker=function(a){return a=Math.pow(.7,arguments.length?a:1),ca(this.h,this.s,a*this.l)},gf.rgb=function(){return ea(this.h,this.s,this.l)},d3.hcl=function(a,b,c){return 1===arguments.length?a instanceof ga?fa(a.h,a.c,a.l):a instanceof ja?la(a.l,a.a,a.b):la((a=_((a=d3.rgb(a)).r,a.g,a.b)).l,a.a,a.b):fa(+a,+b,+c)};var hf=ga.prototype=new V;hf.brighter=function(a){return fa(this.h,this.c,Math.min(100,this.l+jf*(arguments.length?a:1)))},hf.darker=function(a){return fa(this.h,this.c,Math.max(0,this.l-jf*(arguments.length?a:1)))},hf.rgb=function(){return ha(this.h,this.c,this.l).rgb()},d3.lab=function(a,b,c){return 1===arguments.length?a instanceof ja?ia(a.l,a.a,a.b):a instanceof ga?ha(a.l,a.c,a.h):_((a=d3.rgb(a)).r,a.g,a.b):ia(+a,+b,+c)};var jf=18,kf=.95047,lf=1,mf=1.08883,nf=ja.prototype=new V;nf.brighter=function(a){return ia(Math.min(100,this.l+jf*(arguments.length?a:1)),this.a,this.b)},nf.darker=function(a){return ia(Math.max(0,this.l-jf*(arguments.length?a:1)),this.a,this.b)},nf.rgb=function(){return ka(this.l,this.a,this.b)};var of=function(a,b){return b.querySelector(a)},pf=function(a,b){return b.querySelectorAll(a)},qf=document.documentElement,rf=qf.matchesSelector||qf.webkitMatchesSelector||qf.mozMatchesSelector||qf.msMatchesSelector||qf.oMatchesSelector,sf=function(a,b){return rf.call(a,b)};"function"==typeof Sizzle&&(of=function(a,b){return Sizzle(a,b)[0]||null},pf=function(a,b){return Sizzle.uniqueSort(Sizzle(a,b))},sf=Sizzle.matchesSelector);var tf=[];d3.selection=function(){return uf},d3.selection.prototype=tf,tf.select=function(a){var b,c,d,e,f=[];"function"!=typeof a&&(a=qa(a));for(var g=-1,h=this.length;h>++g;){f.push(b=[]),b.parentNode=(d=this[g]).parentNode;for(var i=-1,j=d.length;j>++i;)(e=d[i])?(b.push(c=a.call(e,e.__data__,i)),c&&"__data__"in e&&(c.__data__=e.__data__)):b.push(null)}return pa(f)},tf.selectAll=function(a){var b,c,d=[];"function"!=typeof a&&(a=ra(a));for(var e=-1,f=this.length;f>++e;)for(var g=this[e],h=-1,i=g.length;i>++h;)(c=g[h])&&(d.push(b=Oe(a.call(c,c.__data__,h))),b.parentNode=c);return pa(d)},tf.attr=function(a,b){if(2>arguments.length){if("string"==typeof a){var c=this.node();return a=d3.ns.qualify(a),a.local?c.getAttributeNS(a.space,a.local):c.getAttribute(a)}for(b in a)this.each(sa(b,a[b]));return this}return this.each(sa(a,b))},tf.classed=function(a,b){if(2>arguments.length){if("string"==typeof a){var c=this.node(),d=(a=a.trim().split(/^|\s+/g)).length,e=-1;if(b=c.classList){for(;d>++e;)if(!b.contains(a[e]))return!1}else for(b=c.className,null!=b.baseVal&&(b=b.baseVal);d>++e;)if(!ta(a[e]).test(b))return!1;return!0}for(b in a)this.each(ua(b,a[b]));return this}return this.each(ua(a,b))},tf.style=function(a,b,c){var d=arguments.length;if(3>d){if("string"!=typeof a){2>d&&(b="");for(c in a)this.each(wa(c,a[c],b));return this}if(2>d)return getComputedStyle(this.node(),null).getPropertyValue(a);c=""}return this.each(wa(a,b,c))},tf.property=function(a,b){if(2>arguments.length){if("string"==typeof a)return this.node()[a];for(b in a)this.each(xa(b,a[b]));return this}return this.each(xa(a,b))},tf.text=function(a){return arguments.length?this.each("function"==typeof a?function(){var b=a.apply(this,arguments);this.textContent=null==b?"":b}:null==a?function(){this.textContent=""}:function(){this.textContent=a}):this.node().textContent},tf.html=function(a){return arguments.length?this.each("function"==typeof a?function(){var b=a.apply(this,arguments);this.innerHTML=null==b?"":b}:null==a?function(){this.innerHTML=""}:function(){this.innerHTML=a}):this.node().innerHTML},tf.append=function(a){function b(){return this.appendChild(document.createElementNS(this.namespaceURI,a))}function c(){return this.appendChild(document.createElementNS(a.space,a.local))}return a=d3.ns.qualify(a),this.select(a.local?c:b)},tf.insert=function(a,b){function c(){return this.insertBefore(document.createElementNS(this.namespaceURI,a),of(b,this))}function d(){return this.insertBefore(document.createElementNS(a.space,a.local),of(b,this))}return a=d3.ns.qualify(a),this.select(a.local?d:c)},tf.remove=function(){return this.each(function(){var a=this.parentNode;a&&a.removeChild(this)})},tf.data=function(a,b){function c(a,c){var d,e,g,h=a.length,l=c.length,m=Math.min(h,l),n=Math.max(h,l),o=[],p=[],q=[];if(b){var r,s=new f,t=[],u=c.length;for(d=-1;h>++d;)r=b.call(e=a[d],e.__data__,d),s.has(r)?q[u++]=e:s.set(r,e),t.push(r);for(d=-1;l>++d;)r=b.call(c,g=c[d],d),s.has(r)?(o[d]=e=s.get(r),e.__data__=g,p[d]=q[d]=null):(p[d]=ya(g),o[d]=q[d]=null),s.remove(r);for(d=-1;h>++d;)s.has(t[d])&&(q[d]=a[d])}else{for(d=-1;m>++d;)e=a[d],g=c[d],e?(e.__data__=g,o[d]=e,p[d]=q[d]=null):(p[d]=ya(g),o[d]=q[d]=null);for(;l>d;++d)p[d]=ya(c[d]),o[d]=q[d]=null;for(;n>d;++d)q[d]=a[d],p[d]=o[d]=null}p.update=o,p.parentNode=o.parentNode=q.parentNode=a.parentNode,i.push(p),j.push(o),k.push(q)}var d,e,g=-1,h=this.length;if(!arguments.length){for(a=Array(h=(d=this[0]).length);h>++g;)(e=d[g])&&(a[g]=e.__data__);return a}var i=Da([]),j=pa([]),k=pa([]);if("function"==typeof a)for(;h>++g;)c(d=this[g],a.call(d,d.parentNode.__data__,g));else for(;h>++g;)c(d=this[g],a);return j.enter=function(){return i},j.exit=function(){return k},j},tf.datum=function(a){return arguments.length?this.property("__data__",a):this.property("__data__")},tf.filter=function(a){var b,c,d,e=[];"function"!=typeof a&&(a=za(a));for(var f=0,g=this.length;g>f;f++){e.push(b=[]),b.parentNode=(c=this[f]).parentNode;for(var h=0,i=c.length;i>h;h++)(d=c[h])&&a.call(d,d.__data__,h)&&b.push(d)}return pa(e)},tf.order=function(){for(var a=-1,b=this.length;b>++a;)for(var c,d=this[a],e=d.length-1,f=d[e];--e>=0;)(c=d[e])&&(f&&f!==c.nextSibling&&f.parentNode.insertBefore(c,f),f=c);return this},tf.sort=function(a){a=Aa.apply(this,arguments);for(var b=-1,c=this.length;c>++b;)this[b].sort(a);return this.order()},tf.on=function(a,b,c){var d=arguments.length;if(3>d){if("string"!=typeof a){2>d&&(b=!1);for(c in a)this.each(Ba(c,a[c],b));return this}if(2>d)return(d=this.node()["__on"+a])&&d._;c=!1}return this.each(Ba(a,b,c))},tf.each=function(a){return Ca(this,function(b,c,d){a.call(b,b.__data__,c,d)})},tf.call=function(a){var b=Oe(arguments);return a.apply(b[0]=this,b),this},tf.empty=function(){return!this.node()},tf.node=function(){for(var a=0,b=this.length;b>a;a++)for(var c=this[a],d=0,e=c.length;e>d;d++){var f=c[d];if(f)return f}return null},tf.transition=function(){var a,b,c=wf||++yf,d=[],e=Object.create(zf);e.time=Date.now();for(var f=-1,g=this.length;g>++f;){d.push(a=[]);for(var h=this[f],i=-1,j=h.length;j>++i;)(b=h[i])&&Fa(b,i,c,e),a.push(b)}return Ea(d,c)};var uf=pa([[document]]);uf[0].parentNode=qf,d3.select=function(a){return"string"==typeof a?uf.select(a):pa([[a]])},d3.selectAll=function(a){return"string"==typeof a?uf.selectAll(a):pa([Oe(a)])};var vf=[];d3.selection.enter=Da,d3.selection.enter.prototype=vf,vf.append=tf.append,vf.insert=tf.insert,vf.empty=tf.empty,vf.node=tf.node,vf.select=function(a){for(var b,c,d,e,f,g=[],h=-1,i=this.length;i>++h;){d=(e=this[h]).update,g.push(b=[]),b.parentNode=e.parentNode;for(var j=-1,k=e.length;k>++j;)(f=e[j])?(b.push(d[j]=c=a.call(e.parentNode,f.__data__,j)),c.__data__=f.__data__):b.push(null)}return pa(g)};var wf,xf=[],yf=0,zf={ease:D,delay:0,duration:250};xf.call=tf.call,xf.empty=tf.empty,xf.node=tf.node,d3.transition=function(a){return arguments.length?wf?a.transition():a:uf.transition()},d3.transition.prototype=xf,xf.select=function(a){var b,c,d,e=this.id,f=[];"function"!=typeof a&&(a=qa(a));for(var g=-1,h=this.length;h>++g;){f.push(b=[]);for(var i=this[g],j=-1,k=i.length;k>++j;)(d=i[j])&&(c=a.call(d,d.__data__,j))?("__data__"in d&&(c.__data__=d.__data__),Fa(c,j,e,d.__transition__[e]),b.push(c)):b.push(null)}return Ea(f,e)},xf.selectAll=function(a){var b,c,d,e,f,g=this.id,h=[];"function"!=typeof a&&(a=ra(a));for(var i=-1,j=this.length;j>++i;)for(var k=this[i],l=-1,m=k.length;m>++l;)if(d=k[l]){f=d.__transition__[g],c=a.call(d,d.__data__,l),h.push(b=[]);for(var n=-1,o=c.length;o>++n;)Fa(e=c[n],n,g,f),b.push(e)}return Ea(h,g)},xf.filter=function(a){var b,c,d,e=[];"function"!=typeof a&&(a=za(a));for(var f=0,g=this.length;g>f;f++){e.push(b=[]);for(var c=this[f],h=0,i=c.length;i>h;h++)(d=c[h])&&a.call(d,d.__data__,h)&&b.push(d)}return Ea(e,this.id,this.time).ease(this.ease())},xf.attr=function(a,b){function c(){this.removeAttribute(f)}function d(){this.removeAttributeNS(f.space,f.local)}if(2>arguments.length){for(b in a)this.attr(b,a[b]);return this}var e=S(a),f=d3.ns.qualify(a);return Ha(this,"attr."+a,b,function(a){function b(){var b,c=this.getAttribute(f);return c!==a&&(b=e(c,a),function(a){this.setAttribute(f,b(a))})}function g(){var b,c=this.getAttributeNS(f.space,f.local);return c!==a&&(b=e(c,a),function(a){this.setAttributeNS(f.space,f.local,b(a))})}return null==a?f.local?d:c:(a+="",f.local?g:b)})},xf.attrTween=function(a,b){function c(a,c){var d=b.call(this,a,c,this.getAttribute(e));return d&&function(a){this.setAttribute(e,d(a))}}function d(a,c){var d=b.call(this,a,c,this.getAttributeNS(e.space,e.local));return d&&function(a){this.setAttributeNS(e.space,e.local,d(a))}}var e=d3.ns.qualify(a);return this.tween("attr."+a,e.local?d:c)},xf.style=function(a,b,c){function d(){this.style.removeProperty(a)}var e=arguments.length;if(3>e){if("string"!=typeof a){2>e&&(b="");for(c in a)this.style(c,a[c],b);return this}c=""}var f=S(a);return Ha(this,"style."+a,b,function(b){function e(){var d,e=getComputedStyle(this,null).getPropertyValue(a);return e!==b&&(d=f(e,b),function(b){this.style.setProperty(a,d(b),c)})}return null==b?d:(b+="",e)})},xf.styleTween=function(a,b,c){return 3>arguments.length&&(c=""),this.tween("style."+a,function(d,e){var f=b.call(this,d,e,getComputedStyle(this,null).getPropertyValue(a));return f&&function(b){this.style.setProperty(a,f(b),c)}})},xf.text=function(a){return Ha(this,"text",a,Ga)},xf.remove=function(){return this.each("end.transition",function(){var a;!this.__transition__&&(a=this.parentNode)&&a.removeChild(this)})},xf.ease=function(a){var b=this.id;return 1>arguments.length?this.node().__transition__[b].ease:("function"!=typeof a&&(a=d3.ease.apply(d3,arguments)),Ca(this,function(c){c.__transition__[b].ease=a}))},xf.delay=function(a){var b=this.id;return Ca(this,"function"==typeof a?function(c,d,e){c.__transition__[b].delay=0|a.call(c,c.__data__,d,e)}:(a|=0,function(c){c.__transition__[b].delay=a}))},xf.duration=function(a){var b=this.id;return Ca(this,"function"==typeof a?function(c,d,e){c.__transition__[b].duration=Math.max(1,0|a.call(c,c.__data__,d,e))}:(a=Math.max(1,0|a),function(c){c.__transition__[b].duration=a}))},xf.each=function(a,b){var c=this.id;if(2>arguments.length){var d=zf,e=wf;wf=c,Ca(this,function(b,d,e){zf=b.__transition__[c],a.call(b,b.__data__,d,e)}),zf=d,wf=e}else Ca(this,function(d){d.__transition__[c].event.on(a,b)});return this},xf.transition=function(){for(var a,b,c,d,e=this.id,f=++yf,g=[],h=0,i=this.length;i>h;h++){g.push(a=[]);for(var b=this[h],j=0,k=b.length;k>j;j++)(c=b[j])&&(d=Object.create(c.__transition__[e]),d.delay+=d.duration,Fa(c,j,f,d)),a.push(c)}return Ea(g,f)},xf.tween=function(a,b){var c=this.id;return 2>arguments.length?this.node().__transition__[c].tween.get(a):Ca(this,null==b?function(b){b.__transition__[c].tween.remove(a)}:function(d){d.__transition__[c].tween.set(a,b)})};var Af,Bf,Cf=0,Df={},Ef=null;d3.timer=function(a,b,c){if(3>arguments.length){if(2>arguments.length)b=0;else if(!isFinite(b))return;c=Date.now()}var d=Df[a.id];d&&d.callback===a?(d.then=c,d.delay=b):Df[a.id=++Cf]=Ef={callback:a,then:c,delay:b,next:Ef},Af||(Bf=clearTimeout(Bf),Af=1,Ff(Ia))},d3.timer.flush=function(){for(var a,b=Date.now(),c=Ef;c;)a=b-c.then,c.delay||(c.flush=c.callback(a)),c=c.next;Ja()};var Ff=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){setTimeout(a,17)};d3.mouse=function(a){return Ka(a,M())};var Gf=/WebKit/.test(navigator.userAgent)?-1:0;d3.touches=function(a,b){return 2>arguments.length&&(b=M().touches),b?Oe(b).map(function(b){var c=Ka(a,b);return c.identifier=b.identifier,c}):[]},d3.scale={},d3.scale.linear=function(){return Qa([0,1],[0,1],d3.interpolate,!1)},d3.scale.log=function(){return Ya(d3.scale.linear(),Za)};var Hf=d3.format(".0e");Za.pow=function(a){return Math.pow(10,a)},$a.pow=function(a){return-Math.pow(10,-a)},d3.scale.pow=function(){return _a(d3.scale.linear(),1)},d3.scale.sqrt=function(){return d3.scale.pow().exponent(.5)},d3.scale.ordinal=function(){return bb([],{t:"range",a:[[]]})},d3.scale.category10=function(){return d3.scale.ordinal().range(If)},d3.scale.category20=function(){return d3.scale.ordinal().range(Jf)},d3.scale.category20b=function(){return d3.scale.ordinal().range(Kf)},d3.scale.category20c=function(){return d3.scale.ordinal().range(Lf)};var If=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],Jf=["#1f77b4","#aec7e8","#ff7f0e","#ffbb78","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5","#8c564b","#c49c94","#e377c2","#f7b6d2","#7f7f7f","#c7c7c7","#bcbd22","#dbdb8d","#17becf","#9edae5"],Kf=["#393b79","#5254a3","#6b6ecf","#9c9ede","#637939","#8ca252","#b5cf6b","#cedb9c","#8c6d31","#bd9e39","#e7ba52","#e7cb94","#843c39","#ad494a","#d6616b","#e7969c","#7b4173","#a55194","#ce6dbd","#de9ed6"],Lf=["#3182bd","#6baed6","#9ecae1","#c6dbef","#e6550d","#fd8d3c","#fdae6b","#fdd0a2","#31a354","#74c476","#a1d99b","#c7e9c0","#756bb1","#9e9ac8","#bcbddc","#dadaeb","#636363","#969696","#bdbdbd","#d9d9d9"];d3.scale.quantile=function(){return cb([],[])},d3.scale.quantize=function(){return db(0,1,[0,1])},d3.scale.threshold=function(){return eb([.5],[0,1])},d3.scale.identity=function(){return fb([0,1])},d3.svg={},d3.svg.arc=function(){function a(){var a=b.apply(this,arguments),f=c.apply(this,arguments),g=d.apply(this,arguments)+Mf,h=e.apply(this,arguments)+Mf,i=(g>h&&(i=g,g=h,h=i),h-g),j=Ke>i?"0":"1",k=Math.cos(g),l=Math.sin(g),m=Math.cos(h),n=Math.sin(h);return i>=Nf?a?"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+-f+"A"+f+","+f+" 0 1,1 0,"+f+"M0,"+a+"A"+a+","+a+" 0 1,0 0,"+-a+"A"+a+","+a+" 0 1,0 0,"+a+"Z":"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+-f+"A"+f+","+f+" 0 1,1 0,"+f+"Z":a?"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L"+a*m+","+a*n+"A"+a+","+a+" 0 "+j+",0 "+a*k+","+a*l+"Z":"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L0,0Z"}var b=gb,c=hb,d=ib,e=jb;return a.innerRadius=function(c){return arguments.length?(b=i(c),a):b},a.outerRadius=function(b){return arguments.length?(c=i(b),a):c},a.startAngle=function(b){return arguments.length?(d=i(b),a):d},a.endAngle=function(b){return arguments.length?(e=i(b),a):e},a.centroid=function(){var a=(b.apply(this,arguments)+c.apply(this,arguments))/2,f=(d.apply(this,arguments)+e.apply(this,arguments))/2+Mf;return[Math.cos(f)*a,Math.sin(f)*a]},a};var Mf=-Ke/2,Nf=2*Ke-1e-6;d3.svg.line=function(){return kb(g)};var Of=d3.map({linear:nb,"linear-closed":ob,"step-before":pb,"step-after":qb,basis:wb,"basis-open":xb,"basis-closed":yb,bundle:zb,cardinal:tb,"cardinal-open":rb,"cardinal-closed":sb,monotone:Fb});Of.forEach(function(a,b){b.key=a,b.closed=/-closed$/.test(a)});var Pf=[0,2/3,1/3,0],Qf=[0,1/3,2/3,0],Rf=[0,1/6,2/3,1/6];d3.svg.line.radial=function(){var a=kb(Gb);return a.radius=a.x,delete a.x,a.angle=a.y,delete a.y,a},pb.reverse=qb,qb.reverse=pb,d3.svg.area=function(){return Hb(g)},d3.svg.area.radial=function(){var a=Hb(Gb);return a.radius=a.x,delete a.x,a.innerRadius=a.x0,delete a.x0,a.outerRadius=a.x1,delete a.x1,a.angle=a.y,delete a.y,a.startAngle=a.y0,delete a.y0,a.endAngle=a.y1,delete a.y1,a},d3.svg.chord=function(){function c(a,b){var c=d(this,h,a,b),i=d(this,j,a,b);return"M"+c.p0+f(c.r,c.p1,c.a1-c.a0)+(e(c,i)?g(c.r,c.p1,c.r,c.p0):g(c.r,c.p1,i.r,i.p0)+f(i.r,i.p1,i.a1-i.a0)+g(i.r,i.p1,c.r,c.p0))+"Z"}function d(a,b,c,d){var e=b.call(a,c,d),f=k.call(a,e,d),g=l.call(a,e,d)+Mf,h=m.call(a,e,d)+Mf;return{r:f,a0:g,a1:h,p0:[f*Math.cos(g),f*Math.sin(g)],p1:[f*Math.cos(h),f*Math.sin(h)]}}function e(a,b){return a.a0==b.a0&&a.a1==b.a1}function f(a,b,c){return"A"+a+","+a+" 0 "+ +(c>Ke)+",1 "+b}function g(a,b,c,d){return"Q 0,0 "+d}var h=b,j=a,k=Ib,l=ib,m=jb;return c.radius=function(a){return arguments.length?(k=i(a),c):k},c.source=function(a){return arguments.length?(h=i(a),c):h},c.target=function(a){return arguments.length?(j=i(a),c):j},c.startAngle=function(a){return arguments.length?(l=i(a),c):l},c.endAngle=function(a){return arguments.length?(m=i(a),c):m},c},d3.svg.diagonal=function(){function c(a,b){var c=d.call(this,a,b),g=e.call(this,a,b),h=(c.y+g.y)/2,i=[c,{x:c.x,y:h},{x:g.x,y:h},g];return i=i.map(f),"M"+i[0]+"C"+i[1]+" "+i[2]+" "+i[3]}var d=b,e=a,f=Jb;return c.source=function(a){return arguments.length?(d=i(a),c):d},c.target=function(a){return arguments.length?(e=i(a),c):e},c.projection=function(a){return arguments.length?(f=a,c):f},c},d3.svg.diagonal.radial=function(){var a=d3.svg.diagonal(),b=Jb,c=a.projection;return a.projection=function(a){return arguments.length?c(Kb(b=a)):b},a},d3.svg.symbol=function(){function a(a,d){return(Sf.get(b.call(this,a,d))||Nb)(c.call(this,a,d))}var b=Mb,c=Lb;return a.type=function(c){return arguments.length?(b=i(c),a):b},a.size=function(b){return arguments.length?(c=i(b),a):c},a};var Sf=d3.map({circle:Nb,cross:function(a){var b=Math.sqrt(a/5)/2;return"M"+-3*b+","+-b+"H"+-b+"V"+-3*b+"H"+b+"V"+-b+"H"+3*b+"V"+b+"H"+b+"V"+3*b+"H"+-b+"V"+b+"H"+-3*b+"Z"},diamond:function(a){var b=Math.sqrt(a/(2*Uf)),c=b*Uf;return"M0,"+-b+"L"+c+",0 0,"+b+" "+-c+",0Z"},square:function(a){var b=Math.sqrt(a)/2;return"M"+-b+","+-b+"L"+b+","+-b+" "+b+","+b+" "+-b+","+b+"Z"},"triangle-down":function(a){var b=Math.sqrt(a/Tf),c=b*Tf/2;return"M0,"+c+"L"+b+","+-c+" "+-b+","+-c+"Z"},"triangle-up":function(a){var b=Math.sqrt(a/Tf),c=b*Tf/2;return"M0,"+-c+"L"+b+","+c+" "+-b+","+c+"Z"}});d3.svg.symbolTypes=Sf.keys();var Tf=Math.sqrt(3),Uf=Math.tan(30*Me);d3.svg.axis=function(){function a(a){a.each(function(){var a,l=d3.select(this),m=null==j?c.ticks?c.ticks.apply(c,i):c.domain():j,n=null==b?c.tickFormat?c.tickFormat.apply(c,i):String:b,o=Qb(c,m,k),p=l.selectAll(".minor").data(o,String),q=p.enter().insert("line","g").attr("class","tick minor").style("opacity",1e-6),r=d3.transition(p.exit()).style("opacity",1e-6).remove(),s=d3.transition(p).style("opacity",1),t=l.selectAll("g").data(m,String),u=t.enter().insert("g","path").style("opacity",1e-6),v=d3.transition(t.exit()).style("opacity",1e-6).remove(),w=d3.transition(t).style("opacity",1),x=Na(c),y=l.selectAll(".domain").data([0]),z=d3.transition(y),A=c.copy(),B=this.__chart__||A;this.__chart__=A,y.enter().append("path").attr("class","domain"),u.append("line").attr("class","tick"),u.append("text");var C=u.select("line"),D=w.select("line"),E=t.select("text").text(n),F=u.select("text"),G=w.select("text");switch(d){case"bottom":a=Ob,q.attr("y2",f),s.attr("x2",0).attr("y2",f),C.attr("y2",e),F.attr("y",Math.max(e,0)+h),D.attr("x2",0).attr("y2",e),G.attr("x",0).attr("y",Math.max(e,0)+h),E.attr("dy",".71em").style("text-anchor","middle"),z.attr("d","M"+x[0]+","+g+"V0H"+x[1]+"V"+g);break;case"top":a=Ob,q.attr("y2",-f),s.attr("x2",0).attr("y2",-f),C.attr("y2",-e),F.attr("y",-(Math.max(e,0)+h)),D.attr("x2",0).attr("y2",-e),G.attr("x",0).attr("y",-(Math.max(e,0)+h)),E.attr("dy","0em").style("text-anchor","middle"),z.attr("d","M"+x[0]+","+-g+"V0H"+x[1]+"V"+-g);break;case"left":a=Pb,q.attr("x2",-f),s.attr("x2",-f).attr("y2",0),C.attr("x2",-e),F.attr("x",-(Math.max(e,0)+h)),D.attr("x2",-e).attr("y2",0),G.attr("x",-(Math.max(e,0)+h)).attr("y",0),E.attr("dy",".32em").style("text-anchor","end"),z.attr("d","M"+-g+","+x[0]+"H0V"+x[1]+"H"+-g);break;case"right":a=Pb,q.attr("x2",f),s.attr("x2",f).attr("y2",0),C.attr("x2",e),F.attr("x",Math.max(e,0)+h),D.attr("x2",e).attr("y2",0),G.attr("x",Math.max(e,0)+h).attr("y",0),E.attr("dy",".32em").style("text-anchor","start"),z.attr("d","M"+g+","+x[0]+"H0V"+x[1]+"H"+g)}if(c.ticks)u.call(a,B),w.call(a,A),v.call(a,A),q.call(a,B),s.call(a,A),r.call(a,A);else{var H=A.rangeBand()/2,I=function(a){return A(a)+H};u.call(a,I),w.call(a,I)}})}var b,c=d3.scale.linear(),d="bottom",e=6,f=6,g=6,h=3,i=[10],j=null,k=0;return a.scale=function(b){return arguments.length?(c=b,a):c},a.orient=function(b){return arguments.length?(d=b,a):d},a.ticks=function(){return arguments.length?(i=arguments,a):i},a.tickValues=function(b){return arguments.length?(j=b,a):j},a.tickFormat=function(c){return arguments.length?(b=c,a):b},a.tickSize=function(b,c){if(!arguments.length)return e;var d=arguments.length-1;return e=+b,f=d>1?+c:e,g=d>0?+arguments[d]:e,a},a.tickPadding=function(b){return arguments.length?(h=+b,a):h},a.tickSubdivide=function(b){return arguments.length?(k=+b,a):k},a},d3.svg.brush=function(){function a(f){f.each(function(){var f,g=d3.select(this),k=g.selectAll(".background").data([0]),l=g.selectAll(".extent").data([0]),m=g.selectAll(".resize").data(j,String);g.style("pointer-events","all").on("mousedown.brush",e).on("touchstart.brush",e),k.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),l.enter().append("rect").attr("class","extent").style("cursor","move"),m.enter().append("g").attr("class",function(a){return"resize "+a}).style("cursor",function(a){return Vf[a]}).append("rect").attr("x",function(a){return/[ew]$/.test(a)?-3:null}).attr("y",function(a){return/^[ns]/.test(a)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),m.style("display",a.empty()?"none":null),m.exit().remove(),h&&(f=Na(h),k.attr("x",f[0]).attr("width",f[1]-f[0]),c(g)),i&&(f=Na(i),k.attr("y",f[0]).attr("height",f[1]-f[0]),d(g)),b(g)})}function b(a){a.selectAll(".resize").attr("transform",function(a){return"translate("+k[+/e$/.test(a)][0]+","+k[+/^s/.test(a)][1]+")"})}function c(a){a.select(".extent").attr("x",k[0][0]),a.selectAll(".extent,.n>rect,.s>rect").attr("width",k[1][0]-k[0][0])}function d(a){a.select(".extent").attr("y",k[0][1]),a.selectAll(".extent,.e>rect,.w>rect").attr("height",k[1][1]-k[0][1])}function e(){function e(){var a=d3.event.changedTouches;return a?d3.touches(r,a)[0]:d3.mouse(r)}function j(){32==d3.event.keyCode&&(y||(p=null,z[0]-=k[1][0],z[1]-=k[1][1],y=2),L())}function l(){32==d3.event.keyCode&&2==y&&(z[0]+=k[1][0],z[1]+=k[1][1],y=0,L())}function m(){var a=e(),f=!1;q&&(a[0]+=q[0],a[1]+=q[1]),y||(d3.event.altKey?(p||(p=[(k[0][0]+k[1][0])/2,(k[0][1]+k[1][1])/2]),z[0]=k[+(a[0]j?(e=d,d=j):e=j),k[0][c]!==d||k[1][c]!==e?(f=null,k[0][c]=d,k[1][c]=e,!0):void 0}function o(){m(),u.style("pointer-events","all").selectAll(".resize").style("display",a.empty()?"none":null),d3.select("body").style("cursor",null),A.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),t({type:"brushend"}),L()}var p,q,r=this,s=d3.select(d3.event.target),t=g.of(r,arguments),u=d3.select(r),v=s.datum(),w=!/^(n|s)$/.test(v)&&h,x=!/^(e|w)$/.test(v)&&i,y=s.classed("extent"),z=e(),A=d3.select(window).on("mousemove.brush",m).on("mouseup.brush",o).on("touchmove.brush",m).on("touchend.brush",o).on("keydown.brush",j).on("keyup.brush",l);if(y)z[0]=k[0][0]-z[0],z[1]=k[0][1]-z[1];else if(v){var B=+/w$/.test(v),C=+/^n/.test(v);q=[k[1-B][0]-z[0],k[1-C][1]-z[1]],z[0]=k[B][0],z[1]=k[C][1]}else d3.event.altKey&&(p=z.slice());u.style("pointer-events","none").selectAll(".resize").style("display",null),d3.select("body").style("cursor",s.style("cursor")),t({type:"brushstart"}),m(),L()}var f,g=N(a,"brushstart","brush","brushend"),h=null,i=null,j=Wf[0],k=[[0,0],[0,0]];return a.x=function(b){return arguments.length?(h=b,j=Wf[!h<<1|!i],a):h},a.y=function(b){return arguments.length?(i=b,j=Wf[!h<<1|!i],a):i},a.extent=function(b){var c,d,e,g,j;return arguments.length?(f=[[0,0],[0,0]],h&&(c=b[0],d=b[1],i&&(c=c[0],d=d[0]),f[0][0]=c,f[1][0]=d,h.invert&&(c=h(c),d=h(d)),c>d&&(j=c,c=d,d=j),k[0][0]=0|c,k[1][0]=0|d),i&&(e=b[0],g=b[1],h&&(e=e[1],g=g[1]),f[0][1]=e,f[1][1]=g,i.invert&&(e=i(e),g=i(g)),e>g&&(j=e,e=g,g=j),k[0][1]=0|e,k[1][1]=0|g),a):(b=f||k,h&&(c=b[0][0],d=b[1][0],f||(c=k[0][0],d=k[1][0],h.invert&&(c=h.invert(c),d=h.invert(d)),c>d&&(j=c,c=d,d=j))),i&&(e=b[0][1],g=b[1][1],f||(e=k[0][1],g=k[1][1],i.invert&&(e=i.invert(e),g=i.invert(g)),e>g&&(j=e,e=g,g=j))),h&&i?[[c,e],[d,g]]:h?[c,d]:i&&[e,g])},a.clear=function(){return f=null,k[0][0]=k[0][1]=k[1][0]=k[1][1]=0,a},a.empty=function(){return h&&k[0][0]===k[1][0]||i&&k[0][1]===k[1][1]},d3.rebind(a,g,"on")};var Vf={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Wf=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];d3.behavior={},d3.behavior.drag=function(){function a(){this.on("mousedown.drag",b).on("touchstart.drag",b)}function b(){function a(){var a=h.parentNode;return null!=k?d3.touches(a).filter(function(a){return a.identifier===k})[0]:d3.mouse(a)}function b(){if(!h.parentNode)return e();var b=a(),c=b[0]-l[0],d=b[1]-l[1];m|=c|d,l=b,L(),i({type:"drag",x:b[0]+g[0],y:b[1]+g[1],dx:c,dy:d})}function e(){i({type:"dragend"}),m&&(L(),d3.event.target===j&&n.on("click.drag",f,!0)),n.on(null!=k?"touchmove.drag-"+k:"mousemove.drag",null).on(null!=k?"touchend.drag-"+k:"mouseup.drag",null)}function f(){L(),n.on("click.drag",null)}var g,h=this,i=c.of(h,arguments),j=d3.event.target,k=d3.event.touches?d3.event.changedTouches[0].identifier:null,l=a(),m=0,n=d3.select(window).on(null!=k?"touchmove.drag-"+k:"mousemove.drag",b).on(null!=k?"touchend.drag-"+k:"mouseup.drag",e,!0);d?(g=d.apply(h,arguments),g=[g.x-l[0],g.y-l[1]]):g=[0,0],null==k&&L(),i({type:"dragstart"})}var c=N(a,"drag","dragstart","dragend"),d=null;return a.origin=function(b){return arguments.length?(d=b,a):d},d3.rebind(a,c,"on")},d3.behavior.zoom=function(){function a(){this.on("mousedown.zoom",h).on("mousewheel.zoom",i).on("mousemove.zoom",j).on("DOMMouseScroll.zoom",i).on("dblclick.zoom",k).on("touchstart.zoom",l).on("touchmove.zoom",m).on("touchend.zoom",l)}function b(a){return[(a[0]-u[0])/v,(a[1]-u[1])/v]}function c(a){return[a[0]*v+u[0],a[1]*v+u[1]]}function d(a){v=Math.max(w[0],Math.min(w[1],a))}function e(a,b){b=c(b),u[0]+=a[0]-b[0],u[1]+=a[1]-b[1]}function f(){q&&q.domain(p.range().map(function(a){return(a-u[0])/v}).map(p.invert)),s&&s.domain(r.range().map(function(a){return(a-u[1])/v}).map(r.invert))}function g(a){f(),d3.event.preventDefault(),a({type:"zoom",scale:v,translate:u})}function h(){function a(){j=1,e(d3.mouse(f),l),g(h)}function c(){j&&L(),k.on("mousemove.zoom",null).on("mouseup.zoom",null),j&&d3.event.target===i&&k.on("click.zoom",d,!0)}function d(){L(),k.on("click.zoom",null)}var f=this,h=x.of(f,arguments),i=d3.event.target,j=0,k=d3.select(window).on("mousemove.zoom",a).on("mouseup.zoom",c),l=b(d3.mouse(f));window.focus(),L()}function i(){n||(n=b(d3.mouse(this))),d(Math.pow(2,.002*Rb())*v),e(d3.mouse(this),n),g(x.of(this,arguments))}function j(){n=null}function k(){var a=d3.mouse(this),c=b(a),f=Math.log(v)/Math.LN2;d(Math.pow(2,d3.event.shiftKey?Math.ceil(f)-1:Math.floor(f)+1)),e(a,c),g(x.of(this,arguments))}function l(){var a=d3.touches(this),c=Date.now();if(o=v,n={},a.forEach(function(a){n[a.identifier]=b(a)}),L(),1===a.length){if(500>c-t){var f=a[0],h=b(a[0]);d(2*v),e(f,h),g(x.of(this,arguments))}t=c}}function m(){var a=d3.touches(this),b=a[0],c=n[b.identifier];if(f=a[1]){var f,h=n[f.identifier];b=[(b[0]+f[0])/2,(b[1]+f[1])/2],c=[(c[0]+h[0])/2,(c[1]+h[1])/2],d(d3.event.scale*o)}e(b,c),t=null,g(x.of(this,arguments))}var n,o,p,q,r,s,t,u=[0,0],v=1,w=Yf,x=N(a,"zoom");return a.translate=function(b){return arguments.length?(u=b.map(Number),f(),a):u},a.scale=function(b){ +return arguments.length?(v=+b,f(),a):v},a.scaleExtent=function(b){return arguments.length?(w=null==b?Yf:b.map(Number),a):w},a.x=function(b){return arguments.length?(q=b,p=b.copy(),u=[0,0],v=1,a):q},a.y=function(b){return arguments.length?(s=b,r=b.copy(),u=[0,0],v=1,a):s},d3.rebind(a,x,"on")};var Xf,Yf=[0,1/0];d3.layout={},d3.layout.bundle=function(){return function(a){for(var b=[],c=-1,d=a.length;d>++c;)b.push(Sb(a[c]));return b}},d3.layout.chord=function(){function a(){var a,j,l,m,n,o={},p=[],q=d3.range(f),r=[];for(c=[],d=[],a=0,m=-1;f>++m;){for(j=0,n=-1;f>++n;)j+=e[m][n];p.push(j),r.push(d3.range(f)),a+=j}for(g&&q.sort(function(a,b){return g(p[a],p[b])}),h&&r.forEach(function(a,b){a.sort(function(a,c){return h(e[b][a],e[b][c])})}),a=(2*Ke-k*f)/a,j=0,m=-1;f>++m;){for(l=j,n=-1;f>++n;){var s=q[m],t=r[s][n],u=e[s][t],v=j,w=j+=u*a;o[s+"-"+t]={index:s,subindex:t,startAngle:v,endAngle:w,value:u}}d[s]={index:s,startAngle:l,endAngle:j,value:(j-l)/a},j+=k}for(m=-1;f>++m;)for(n=m-1;f>++n;){var x=o[m+"-"+n],y=o[n+"-"+m];(x.value||y.value)&&c.push(x.value(e-c)*h){var i=b.charge*h*h;return a.px-=f*i,a.py-=g*i,!0}if(b.point&&isFinite(h)){var i=b.pointCharge*h*h;a.px-=f*i,a.py-=g*i}}return!b.charge}}function b(a){a.px=d3.event.x,a.py=d3.event.y,j.resume()}var c,d,e,f,h,j={},k=d3.dispatch("start","tick","end"),l=[1,1],m=.9,n=$b,o=_b,p=-30,q=.1,r=.8,s=[],t=[];return j.tick=function(){if(.005>(d*=.99))return k.end({type:"end",alpha:d=0}),!0;var b,c,g,i,j,n,o,r,u,v=s.length,w=t.length;for(c=0;w>c;++c)g=t[c],i=g.source,j=g.target,r=j.x-i.x,u=j.y-i.y,(n=r*r+u*u)&&(n=d*f[c]*((n=Math.sqrt(n))-e[c])/n,r*=n,u*=n,j.x-=r*(o=i.weight/(j.weight+i.weight)),j.y-=u*o,i.x+=r*(o=1-o),i.y+=u*o);if((o=d*q)&&(r=l[0]/2,u=l[1]/2,c=-1,o))for(;v>++c;)g=s[c],g.x+=(r-g.x)*o,g.y+=(u-g.y)*o;if(p)for(Zb(b=d3.geom.quadtree(s),d,h),c=-1;v>++c;)(g=s[c]).fixed||b.visit(a(g));for(c=-1;v>++c;)g=s[c],g.fixed?(g.x=g.px,g.y=g.py):(g.x-=(g.px-(g.px=g.x))*m,g.y-=(g.py-(g.py=g.y))*m);k.tick({type:"tick",alpha:d})},j.nodes=function(a){return arguments.length?(s=a,j):s},j.links=function(a){return arguments.length?(t=a,j):t},j.size=function(a){return arguments.length?(l=a,j):l},j.linkDistance=function(a){return arguments.length?(n=i(a),j):n},j.distance=j.linkDistance,j.linkStrength=function(a){return arguments.length?(o=i(a),j):o},j.friction=function(a){return arguments.length?(m=a,j):m},j.charge=function(a){return arguments.length?(p="function"==typeof a?a:+a,j):p},j.gravity=function(a){return arguments.length?(q=a,j):q},j.theta=function(a){return arguments.length?(r=a,j):r},j.alpha=function(a){return arguments.length?(d?d=a>0?a:0:a>0&&(k.start({type:"start",alpha:d=a}),d3.timer(j.tick)),j):d},j.start=function(){function a(a,d){for(var e,f=b(c),g=-1,h=f.length;h>++g;)if(!isNaN(e=f[g][a]))return e;return Math.random()*d}function b(){if(!g){for(g=[],d=0;k>d;++d)g[d]=[];for(d=0;m>d;++d){var a=t[d];g[a.source.index].push(a.target),g[a.target.index].push(a.source)}}return g[c]}var c,d,g,i,k=s.length,m=t.length,q=l[0],r=l[1];for(c=0;k>c;++c)(i=s[c]).index=c,i.weight=0;for(e=[],f=[],c=0;m>c;++c)i=t[c],"number"==typeof i.source&&(i.source=s[i.source]),"number"==typeof i.target&&(i.target=s[i.target]),e[c]=n.call(this,i,c),f[c]=o.call(this,i,c),++i.source.weight,++i.target.weight;for(c=0;k>c;++c)i=s[c],isNaN(i.x)&&(i.x=a("x",q)),isNaN(i.y)&&(i.y=a("y",r)),isNaN(i.px)&&(i.px=i.x),isNaN(i.py)&&(i.py=i.y);if(h=[],"function"==typeof p)for(c=0;k>c;++c)h[c]=+p.call(this,s[c],c);else for(c=0;k>c;++c)h[c]=p;return j.resume()},j.resume=function(){return j.alpha(.1)},j.stop=function(){return j.alpha(0)},j.drag=function(){c||(c=d3.behavior.drag().origin(g).on("dragstart",Vb).on("drag",b).on("dragend",Wb)),this.on("mouseover.force",Xb).on("mouseout.force",Yb).call(c)},d3.rebind(j,k,"on")},d3.layout.partition=function(){function a(b,c,d,e){var f=b.children;if(b.x=c,b.y=b.depth*e,b.dx=d,b.dy=e,f&&(g=f.length)){var g,h,i,j=-1;for(d=b.value?d/b.value:0;g>++j;)a(h=f[j],c,i=h.value*d,e),c+=i}}function b(a){var c=a.children,d=0;if(c&&(e=c.length))for(var e,f=-1;e>++f;)d=Math.max(d,b(c[f]));return 1+d}function c(c,f){var g=d.call(this,c,f);return a(g[0],0,e[0],e[1]/b(g[0])),g}var d=d3.layout.hierarchy(),e=[1,1];return c.size=function(a){return arguments.length?(e=a,c):e},lc(c,d)},d3.layout.pie=function(){function a(f){var g=f.map(function(c,d){return+b.call(a,c,d)}),h=+("function"==typeof d?d.apply(this,arguments):d),i=(("function"==typeof e?e.apply(this,arguments):e)-d)/d3.sum(g),j=d3.range(f.length);null!=c&&j.sort(c===Zf?function(a,b){return g[b]-g[a]}:function(a,b){return c(f[a],f[b])});var k=[];return j.forEach(function(a){var b;k[a]={data:f[a],value:b=g[a],startAngle:h,endAngle:h+=b*i}}),k}var b=Number,c=Zf,d=0,e=2*Ke;return a.value=function(c){return arguments.length?(b=c,a):b},a.sort=function(b){return arguments.length?(c=b,a):c},a.startAngle=function(b){return arguments.length?(d=b,a):d},a.endAngle=function(b){return arguments.length?(e=b,a):e},a};var Zf={};d3.layout.stack=function(){function a(g,i){var j=g.map(function(c,d){return b.call(a,c,d)}),k=j.map(function(b){return b.map(function(b,c){return[f.call(a,b,c),h.call(a,b,c)]})}),l=c.call(a,k,i);j=d3.permute(j,l),k=d3.permute(k,l);var m,n,o,p=d.call(a,k,i),q=j.length,r=j[0].length;for(n=0;r>n;++n)for(e.call(a,j[0][n],o=p[n],k[0][n][1]),m=1;q>m;++m)e.call(a,j[m][n],o+=k[m-1][n][1],k[m][n][1]);return g}var b=g,c=dc,d=ec,e=cc,f=ac,h=bc;return a.values=function(c){return arguments.length?(b=c,a):b},a.order=function(b){return arguments.length?(c="function"==typeof b?b:$f.get(b)||dc,a):c},a.offset=function(b){return arguments.length?(d="function"==typeof b?b:_f.get(b)||ec,a):d},a.x=function(b){return arguments.length?(f=b,a):f},a.y=function(b){return arguments.length?(h=b,a):h},a.out=function(b){return arguments.length?(e=b,a):e},a};var $f=d3.map({"inside-out":function(a){var b,c,d=a.length,e=a.map(fc),f=a.map(gc),g=d3.range(d).sort(function(a,b){return e[a]-e[b]}),h=0,i=0,j=[],k=[];for(b=0;d>b;++b)c=g[b],i>h?(h+=f[c],j.push(c)):(i+=f[c],k.push(c));return k.reverse().concat(j)},reverse:function(a){return d3.range(a.length).reverse()},"default":dc}),_f=d3.map({silhouette:function(a){var b,c,d,e=a.length,f=a[0].length,g=[],h=0,i=[];for(c=0;f>c;++c){for(b=0,d=0;e>b;b++)d+=a[b][c][1];d>h&&(h=d),g.push(d)}for(c=0;f>c;++c)i[c]=(h-g[c])/2;return i},wiggle:function(a){var b,c,d,e,f,g,h,i,j,k=a.length,l=a[0],m=l.length,n=[];for(n[0]=i=j=0,c=1;m>c;++c){for(b=0,e=0;k>b;++b)e+=a[b][c][1];for(b=0,f=0,h=l[c][0]-l[c-1][0];k>b;++b){for(d=0,g=(a[b][c][1]-a[b][c-1][1])/(2*h);b>d;++d)g+=(a[d][c][1]-a[d][c-1][1])/h;f+=g*a[b][c][1]}n[c]=i-=e?f/e*h:0,j>i&&(j=i)}for(c=0;m>c;++c)n[c]-=j;return n},expand:function(a){var b,c,d,e=a.length,f=a[0].length,g=1/e,h=[];for(c=0;f>c;++c){for(b=0,d=0;e>b;b++)d+=a[b][c][1];if(d)for(b=0;e>b;b++)a[b][c][1]/=d;else for(b=0;e>b;b++)a[b][c][1]=g}for(c=0;f>c;++c)h[c]=0;return h},zero:ec});d3.layout.histogram=function(){function a(a,f){for(var g,h,i=[],j=a.map(c,this),k=d.call(this,j,f),l=e.call(this,k,j,f),f=-1,m=j.length,n=l.length-1,o=b?1:1/m;n>++f;)g=i[f]=[],g.dx=l[f+1]-(g.x=l[f]),g.y=0;if(n>0)for(f=-1;m>++f;)h=j[f],h>=k[0]&&k[1]>=h&&(g=i[d3.bisect(l,h,1,n)-1],g.y+=o,g.push(a[f]));return i}var b=!0,c=Number,d=kc,e=ic;return a.value=function(b){return arguments.length?(c=b,a):c},a.range=function(b){return arguments.length?(d=i(b),a):d},a.bins=function(b){return arguments.length?(e="number"==typeof b?function(a){return jc(a,b)}:i(b),a):e},a.frequency=function(c){return arguments.length?(b=!!c,a):b},a},d3.layout.hierarchy=function(){function a(b,g,h){var i=e.call(c,b,g);if(b.depth=g,h.push(b),i&&(j=i.length)){for(var j,k,l=-1,m=b.children=[],n=0,o=g+1;j>++l;)k=a(i[l],o,h),k.parent=b,m.push(k),n+=k.value;d&&m.sort(d),f&&(b.value=n)}else f&&(b.value=+f.call(c,b,g)||0);return b}function b(a,d){var e=a.children,g=0;if(e&&(h=e.length))for(var h,i=-1,j=d+1;h>++i;)g+=b(e[i],j);else f&&(g=+f.call(c,a,d)||0);return f&&(a.value=g),g}function c(b){var c=[];return a(b,0,c),c}var d=oc,e=mc,f=nc;return c.sort=function(a){return arguments.length?(d=a,c):d},c.children=function(a){return arguments.length?(e=a,c):e},c.value=function(a){return arguments.length?(f=a,c):f},c.revalue=function(a){return b(a,0),a},c},d3.layout.pack=function(){function a(a,e){var f=b.call(this,a,e),g=f[0];g.x=0,g.y=0,Kc(g,function(a){a.r=Math.sqrt(a.value)}),Kc(g,uc);var h=d[0],i=d[1],j=Math.max(2*g.r/h,2*g.r/i);if(c>0){var k=c*j/2;Kc(g,function(a){a.r+=k}),Kc(g,uc),Kc(g,function(a){a.r-=k}),j=Math.max(2*g.r/h,2*g.r/i)}return xc(g,h/2,i/2,1/j),f}var b=d3.layout.hierarchy().sort(qc),c=0,d=[1,1];return a.size=function(b){return arguments.length?(d=b,a):d},a.padding=function(b){return arguments.length?(c=+b,a):c},lc(a,b)},d3.layout.cluster=function(){function a(a,e){var f,g=b.call(this,a,e),h=g[0],i=0;Kc(h,function(a){var b=a.children;b&&b.length?(a.x=Ac(b),a.y=zc(b)):(a.x=f?i+=c(a,f):0,a.y=0,f=a)});var j=Bc(h),k=Cc(h),l=j.x-c(j,k)/2,m=k.x+c(k,j)/2;return Kc(h,function(a){a.x=(a.x-l)/(m-l)*d[0],a.y=(1-(h.y?a.y/h.y:1))*d[1]}),g}var b=d3.layout.hierarchy().sort(null).value(null),c=Dc,d=[1,1];return a.separation=function(b){return arguments.length?(c=b,a):c},a.size=function(b){return arguments.length?(d=b,a):d},lc(a,b)},d3.layout.tree=function(){function a(a,e){function f(a,b){var d=a.children,e=a._tree;if(d&&(g=d.length)){for(var g,i,j,k=d[0],l=k,m=-1;g>++m;)j=d[m],f(j,i),l=h(j,i,l),i=j;Lc(a);var n=.5*(k._tree.prelim+j._tree.prelim);b?(e.prelim=b._tree.prelim+c(a,b),e.mod=e.prelim-n):e.prelim=n}else b&&(e.prelim=b._tree.prelim+c(a,b))}function g(a,b){a.x=a._tree.prelim+b;var c=a.children;if(c&&(d=c.length)){var d,e=-1;for(b+=a._tree.mod;d>++e;)g(c[e],b)}}function h(a,b,d){if(b){for(var e,f=a,g=a,h=b,i=a.parent.children[0],j=f._tree.mod,k=g._tree.mod,l=h._tree.mod,m=i._tree.mod;h=Fc(h),f=Ec(f),h&&f;)i=Ec(i),g=Fc(g),g._tree.ancestor=a,e=h._tree.prelim+l-f._tree.prelim-j+c(h,f),e>0&&(Mc(Nc(h,a,d),a,e),j+=e,k+=e),l+=h._tree.mod,j+=f._tree.mod,m+=i._tree.mod,k+=g._tree.mod;h&&!Fc(g)&&(g._tree.thread=h,g._tree.mod+=l-k),f&&!Ec(i)&&(i._tree.thread=f,i._tree.mod+=j-m,d=a)}return d}var i=b.call(this,a,e),j=i[0];Kc(j,function(a,b){a._tree={ancestor:a,prelim:0,mod:0,change:0,shift:0,number:b?b._tree.number+1:0}}),f(j),g(j,-j._tree.prelim);var k=Gc(j,Ic),l=Gc(j,Hc),m=Gc(j,Jc),n=k.x-c(k,l)/2,o=l.x+c(l,k)/2,p=m.depth||1;return Kc(j,function(a){a.x=(a.x-n)/(o-n)*d[0],a.y=a.depth/p*d[1],delete a._tree}),i}var b=d3.layout.hierarchy().sort(null).value(null),c=Dc,d=[1,1];return a.separation=function(b){return arguments.length?(c=b,a):c},a.size=function(b){return arguments.length?(d=b,a):d},lc(a,b)},d3.layout.treemap=function(){function a(a,b){for(var c,d,e=-1,f=a.length;f>++e;)d=(c=a[e]).value*(0>b?0:b),c.area=isNaN(d)||0>=d?0:d}function b(c){var f=c.children;if(f&&f.length){var g,h,i,j=l(c),k=[],m=f.slice(),o=1/0,p="slice"===n?j.dx:"dice"===n?j.dy:"slice-dice"===n?1&c.depth?j.dy:j.dx:Math.min(j.dx,j.dy);for(a(m,j.dx*j.dy/c.value),k.area=0;(i=m.length)>0;)k.push(g=m[i-1]),k.area+=g.area,"squarify"!==n||o>=(h=d(k,p))?(m.pop(),o=h):(k.area-=k.pop().area,e(k,p,j,!1),p=Math.min(j.dx,j.dy),k.length=k.area=0,o=1/0);k.length&&(e(k,p,j,!0),k.length=k.area=0),f.forEach(b)}}function c(b){var d=b.children;if(d&&d.length){var f,g=l(b),h=d.slice(),i=[];for(a(h,g.dx*g.dy/b.value),i.area=0;f=h.pop();)i.push(f),i.area+=f.area,null!=f.z&&(e(i,f.z?g.dx:g.dy,g,!h.length),i.length=i.area=0);d.forEach(c)}}function d(a,b){for(var c,d=a.area,e=0,f=1/0,g=-1,h=a.length;h>++g;)(c=a[g].area)&&(f>c&&(f=c),c>e&&(e=c));return d*=d,b*=b,d?Math.max(b*e*o/d,d/(b*f*o)):1/0}function e(a,b,c,d){var e,f=-1,g=a.length,h=c.x,j=c.y,k=b?i(a.area/b):0;if(b==c.dx){for((d||k>c.dy)&&(k=c.dy);g>++f;)e=a[f],e.x=h,e.y=j,e.dy=k,h+=e.dx=Math.min(c.x+c.dx-h,k?i(e.area/k):0);e.z=!0,e.dx+=c.x+c.dx-h,c.y+=k,c.dy-=k}else{for((d||k>c.dx)&&(k=c.dx);g>++f;)e=a[f],e.x=h,e.y=j,e.dx=k,j+=e.dy=Math.min(c.y+c.dy-j,k?i(e.area/k):0);e.z=!1,e.dy+=c.y+c.dy-j,c.x+=k,c.dx-=k}}function f(d){var e=g||h(d),f=e[0];return f.x=0,f.y=0,f.dx=j[0],f.dy=j[1],g&&h.revalue(f),a([f],f.dx*f.dy/f.value),(g?c:b)(f),m&&(g=e),e}var g,h=d3.layout.hierarchy(),i=Math.round,j=[1,1],k=null,l=Oc,m=!1,n="squarify",o=.5*(1+Math.sqrt(5));return f.size=function(a){return arguments.length?(j=a,f):j},f.padding=function(a){function b(b){var c=a.call(f,b,b.depth);return null==c?Oc(b):Pc(b,"number"==typeof c?[c,c,c,c]:c)}function c(b){return Pc(b,a)}if(!arguments.length)return k;var d;return l=null==(k=a)?Oc:"function"==(d=typeof a)?b:"number"===d?(a=[a,a,a,a],c):c,f},f.round=function(a){return arguments.length?(i=a?Math.round:Number,f):i!=Number},f.sticky=function(a){return arguments.length?(m=a,g=null,f):m},f.ratio=function(a){return arguments.length?(o=a,f):o},f.mode=function(a){return arguments.length?(n=a+"",f):n},lc(f,h)},d3.csv=Qc(",","text/csv"),d3.tsv=Qc(" ","text/tab-separated-values"),d3.geo={},d3.geo.stream=function(a,b){ag.hasOwnProperty(a.type)?ag[a.type](a,b):Rc(a,b)};var ag={Feature:function(a,b){Rc(a.geometry,b)},FeatureCollection:function(a,b){for(var c=a.features,d=-1,e=c.length;e>++d;)Rc(c[d].geometry,b)}},bg={Sphere:function(a,b){b.sphere()},Point:function(a,b){var c=a.coordinates;b.point(c[0],c[1])},MultiPoint:function(a,b){for(var c,d=a.coordinates,e=-1,f=d.length;f>++e;)c=d[e],b.point(c[0],c[1])},LineString:function(a,b){Sc(a.coordinates,b,0)},MultiLineString:function(a,b){for(var c=a.coordinates,d=-1,e=c.length;e>++d;)Sc(c[d],b,0)},Polygon:function(a,b){Tc(a.coordinates,b)},MultiPolygon:function(a,b){for(var c=a.coordinates,d=-1,e=c.length;e>++d;)Tc(c[d],b)},GeometryCollection:function(a,b){for(var c=a.geometries,d=-1,e=c.length;e>++d;)Rc(c[d],b)}};d3.geo.albersUsa=function(){function a(a){return b(a)(a)}function b(a){var b=a[0],g=a[1];return g>50?d:-140>b?e:21>g?f:c}var c=d3.geo.albers(),d=d3.geo.albers().rotate([160,0]).center([0,60]).parallels([55,65]),e=d3.geo.albers().rotate([160,0]).center([0,20]).parallels([8,18]),f=d3.geo.albers().rotate([60,0]).center([0,10]).parallels([8,18]);return a.scale=function(b){return arguments.length?(c.scale(b),d.scale(.6*b),e.scale(b),f.scale(1.5*b),a.translate(c.translate())):c.scale()},a.translate=function(b){if(!arguments.length)return c.translate();var g=c.scale(),h=b[0],i=b[1];return c.translate(b),d.translate([h-.4*g,i+.17*g]),e.translate([h-.19*g,i+.2*g]),f.translate([h+.58*g,i+.43*g]),a},a.scale(c.scale())},(d3.geo.albers=function(){var a=29.5*Me,b=45.5*Me,c=Ld(bd),d=c(a,b);return d.parallels=function(d){return arguments.length?c(a=d[0]*Me,b=d[1]*Me):[a*Ne,b*Ne]},d.rotate([98,0]).center([0,38]).scale(1e3)}).raw=bd;var cg=Rd(function(a){return Math.sqrt(2/(1+a))},function(a){return 2*Math.asin(a/2)});(d3.geo.azimuthalEqualArea=function(){return Kd(cg)}).raw=cg;var dg=Rd(function(a){var b=Math.acos(a);return b&&b/Math.sin(b)},g);(d3.geo.azimuthalEquidistant=function(){return Kd(dg)}).raw=dg,d3.geo.bounds=cd(g),d3.geo.centroid=function(a){eg=fg=gg=hg=ig=0,d3.geo.stream(a,jg);var b;return fg&&Math.abs(b=Math.sqrt(gg*gg+hg*hg+ig*ig))>Le?[Math.atan2(hg,gg)*Ne,Math.asin(Math.max(-1,Math.min(1,ig/b)))*Ne]:void 0};var eg,fg,gg,hg,ig,jg={sphere:function(){2>eg&&(eg=2,fg=gg=hg=ig=0)},point:dd,lineStart:fd,lineEnd:gd,polygonStart:function(){2>eg&&(eg=2,fg=gg=hg=ig=0),jg.lineStart=ed},polygonEnd:function(){jg.lineStart=fd}};d3.geo.circle=function(){function a(){var a="function"==typeof d?d.apply(this,arguments):d,b=Nd(-a[0]*Me,-a[1]*Me,0).invert,e=[];return c(null,null,1,{point:function(a,c){e.push(a=b(a,c)),a[0]*=Ne,a[1]*=Ne}}),{type:"Polygon",coordinates:[e]}}var b,c,d=[0,0],e=6;return a.origin=function(b){return arguments.length?(d=b,a):d},a.angle=function(d){return arguments.length?(c=hd((b=+d)*Me,e*Me),a):b},a.precision=function(d){return arguments.length?(c=hd(b*Me,(e=+d)*Me),a):e},a.angle(90)};var kg=jd(h,qd,sd);(d3.geo.equirectangular=function(){return Kd(vd).scale(250/Ke)}).raw=vd.invert=vd;var lg=Rd(function(a){return 1/a},Math.atan);(d3.geo.gnomonic=function(){return Kd(lg)}).raw=lg,d3.geo.graticule=function(){function a(){return{type:"MultiLineString",coordinates:b()}}function b(){return d3.range(Math.ceil(d/i)*i,c,i).map(g).concat(d3.range(Math.ceil(f/j)*j,e,j).map(h))}var c,d,e,f,g,h,i=22.5,j=i,k=2.5;return a.lines=function(){return b().map(function(a){return{type:"LineString",coordinates:a}})},a.outline=function(){return{type:"Polygon",coordinates:[g(d).concat(h(e).slice(1),g(c).reverse().slice(1),h(f).reverse().slice(1))]}},a.extent=function(b){return arguments.length?(d=+b[0][0],c=+b[1][0],f=+b[0][1],e=+b[1][1],d>c&&(b=d,d=c,c=b),f>e&&(b=f,f=e,e=b),a.precision(k)):[[d,f],[c,e]]},a.step=function(b){return arguments.length?(i=+b[0],j=+b[1],a):[i,j]},a.precision=function(b){return arguments.length?(k=+b,g=wd(f,e,k),h=xd(d,c,k),a):k},a.extent([[-180+Le,-90+Le],[180-Le,90-Le]])},d3.geo.interpolate=function(a,b){return yd(a[0]*Me,a[1]*Me,b[0]*Me,b[1]*Me)},d3.geo.greatArc=function(){function c(){for(var a=d||g.apply(this,arguments),b=e||h.apply(this,arguments),c=f||d3.geo.interpolate(a,b),e=0,j=i/c.distance,k=[a];1>(e+=j);)k.push(c(e));return k.push(b),{type:"LineString",coordinates:k}}var d,e,f,g=b,h=a,i=6*Me;return c.distance=function(){return(f||d3.geo.interpolate(d||g.apply(this,arguments),e||h.apply(this,arguments))).distance},c.source=function(a){return arguments.length?(g=a,d="function"==typeof a?null:a,f=d&&e?d3.geo.interpolate(d,e):null,c):g},c.target=function(a){return arguments.length?(h=a,e="function"==typeof a?null:a,f=d&&e?d3.geo.interpolate(d,e):null,c):h},c.precision=function(a){return arguments.length?(i=a*Me,c):i/Me},c},zd.invert=function(a,b){return[2*Ke*a,2*Math.atan(Math.exp(2*Ke*b))-Ke/2]},(d3.geo.mercator=function(){return Kd(zd).scale(500)}).raw=zd;var mg=Rd(function(){return 1},Math.asin);(d3.geo.orthographic=function(){return Kd(mg)}).raw=mg,d3.geo.path=function(){function a(a){return a&&d3.geo.stream(a,d(e.pointRadius("function"==typeof f?+f.apply(this,arguments):f))),e.result()}var b,c,d,e,f=4.5;return a.area=function(a){return ng=0,d3.geo.stream(a,d(pg)),ng},a.centroid=function(a){return eg=gg=hg=ig=0,d3.geo.stream(a,d(qg)),ig?[gg/ig,hg/ig]:void 0},a.bounds=function(a){return cd(d)(a)},a.projection=function(c){return arguments.length?(d=(b=c)?c.stream||Bd(c):g,a):b},a.context=function(b){return arguments.length?(e=null==(c=b)?new Cd:new Dd(b),a):c},a.pointRadius=function(b){return arguments.length?(f="function"==typeof b?b:+b,a):f},a.projection(d3.geo.albersUsa()).context(null)};var ng,og,pg={point:La,lineStart:La,lineEnd:La,polygonStart:function(){og=0,pg.lineStart=Ed},polygonEnd:function(){pg.lineStart=pg.lineEnd=pg.point=La,ng+=Math.abs(og/2)}},qg={point:Fd,lineStart:Gd,lineEnd:Hd,polygonStart:function(){qg.lineStart=Id},polygonEnd:function(){qg.point=Fd,qg.lineStart=Gd,qg.lineEnd=Hd}};d3.geo.area=function(a){return rg=0,d3.geo.stream(a,tg),rg};var rg,sg,tg={sphere:function(){rg+=4*Ke},point:La,lineStart:La,lineEnd:La,polygonStart:function(){sg=0,tg.lineStart=Jd},polygonEnd:function(){rg+=0>sg?4*Ke+sg:sg,tg.lineStart=tg.lineEnd=tg.point=La}};d3.geo.projection=Kd,d3.geo.projectionMutator=Ld;var ug=Rd(function(a){return 1/(1+a)},function(a){return 2*Math.atan(a)});(d3.geo.stereographic=function(){return Kd(ug)}).raw=ug,d3.geom={},d3.geom.hull=function(a){if(3>a.length)return[];var b,c,d,e,f,g,h,i,j,k,l=a.length,m=l-1,n=[],o=[],p=0;for(b=1;l>b;++b)a[b][1]b;++b)b!==p&&(e=a[b][1]-a[p][1],d=a[b][0]-a[p][0],n.push({angle:Math.atan2(e,d),index:b}));for(n.sort(function(a,b){return a.angle-b.angle}),j=n[0].angle,i=n[0].index,h=0,b=1;m>b;++b)c=n[b].index,j==n[b].angle?(d=a[i][0]-a[p][0],e=a[i][1]-a[p][1],f=a[c][0]-a[p][0],g=a[c][1]-a[p][1],d*d+e*e>=f*f+g*g?n[b].index=-1:(n[h].index=-1,j=n[b].angle,h=b,i=c)):(j=n[b].angle,h=b,i=c);for(o.push(p),b=0,c=0;2>b;++c)-1!==n[c].index&&(o.push(n[c].index),b++);for(k=o.length;m>c;++c)if(-1!==n[c].index){for(;!Sd(o[k-2],o[k-1],n[c].index,a);)--k;o[k++]=n[c].index}var q=[];for(b=0;k>b;++b)q.push(a[o[b]]);return q},d3.geom.polygon=function(a){return a.area=function(){for(var b=0,c=a.length,d=a[c-1][1]*a[0][0]-a[c-1][0]*a[0][1];c>++b;)d+=a[b-1][1]*a[b][0]-a[b-1][0]*a[b][1];return.5*d},a.centroid=function(b){var c,d,e=-1,f=a.length,g=0,h=0,i=a[f-1];for(arguments.length||(b=-1/(6*a.area()));f>++e;)c=i,i=a[e],d=c[0]*i[1]-i[0]*c[1],g+=(c[0]+i[0])*d,h+=(c[1]+i[1])*d;return[g*b,h*b]},a.clip=function(b){for(var c,d,e,f,g,h,i=-1,j=a.length,k=a[j-1];j>++i;){for(c=b.slice(),b.length=0,f=a[i],g=c[(e=c.length)-1],d=-1;e>++d;)h=c[d],Td(h,k,f)?(Td(g,k,f)||b.push(Ud(g,h,k,f)),b.push(h)):Td(g,k,f)&&b.push(Ud(g,h,k,f)),g=h;k=f}return b},a},d3.geom.voronoi=function(a){var b=a.map(function(){return[]}),c=1e6;return Vd(a,function(a){var d,e,f,g,h,i;1===a.a&&a.b>=0?(d=a.ep.r,e=a.ep.l):(d=a.ep.l,e=a.ep.r),1===a.a?(h=d?d.y:-c,f=a.c-a.b*h,i=e?e.y:c,g=a.c-a.b*i):(f=d?d.x:-c,h=a.c-a.a*f,g=e?e.x:c,i=a.c-a.a*g);var j=[f,h],k=[g,i];b[a.region.l.index].push(j,k),b[a.region.r.index].push(j,k)}),b=b.map(function(b,c){var d=a[c][0],e=a[c][1],f=b.map(function(a){return Math.atan2(a[0]-d,a[1]-e)});return d3.range(b.length).sort(function(a,b){return f[a]-f[b]}).filter(function(a,b,c){return!b||f[a]-f[c[b-1]]>Le}).map(function(a){return b[a]})}),b.forEach(function(b,d){var e=b.length;if(!e)return b.push([-c,-c],[-c,c],[c,c],[c,-c]);if(!(e>2)){var f=a[d],g=b[0],h=b[1],i=f[0],j=f[1],k=g[0],l=g[1],m=h[0],n=h[1],o=Math.abs(m-k),p=n-l;if(Le>Math.abs(p)){var q=l>j?-c:c;b.push([-c,q],[c,q])}else if(Le>o){var r=k>i?-c:c;b.push([r,-c],[r,c])}else{var q=(k-i)*(n-l)>(m-k)*(l-j)?c:-c,s=Math.abs(p)-o;Le>Math.abs(s)?b.push([0>p?q:-q,q]):(s>0&&(q*=-1),b.push([-c,q],[c,q]))}}}),b};var vg={l:"r",r:"l"};d3.geom.delaunay=function(a){var b=a.map(function(){return[]}),c=[];return Vd(a,function(c){b[c.region.l.index].push(a[c.region.r.index])}),b.forEach(function(b,d){var e=a[d],f=e[0],g=e[1];b.forEach(function(a){a.angle=Math.atan2(a[0]-f,a[1]-g)}),b.sort(function(a,b){return a.angle-b.angle});for(var h=0,i=b.length-1;i>h;h++)c.push([e,b[h],b[h+1]])}),c},d3.geom.quadtree=function(a,b,c,d,e){function f(a,b,c,d,e,f){if(!isNaN(b.x)&&!isNaN(b.y))if(a.leaf){var h=a.point;h?.01>Math.abs(h.x-b.x)+Math.abs(h.y-b.y)?g(a,b,c,d,e,f):(a.point=null,g(a,h,c,d,e,f),g(a,b,c,d,e,f)):a.point=b}else g(a,b,c,d,e,f)}function g(a,b,c,d,e,g){var h=.5*(c+e),i=.5*(d+g),j=b.x>=h,k=b.y>=i,l=(k<<1)+j;a.leaf=!1,a=a.nodes[l]||(a.nodes[l]=Wd()),j?c=h:e=h,k?d=i:g=i,f(a,b,c,d,e,g)}var h,i=-1,j=a.length;if(5>arguments.length)if(3===arguments.length)e=c,d=b,c=b=0;else for(b=c=1/0,d=e=-1/0;j>++i;)h=a[i],b>h.x&&(b=h.x),c>h.y&&(c=h.y),h.x>d&&(d=h.x),h.y>e&&(e=h.y);var k=d-b,l=e-c;k>l?e=c+k:d=b+l;var m=Wd();return m.add=function(a){f(m,a,b,c,d,e)},m.visit=function(a){Xd(a,m,b,c,d,e)},a.forEach(m.add),m},d3.time={};var wg=Date,xg=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];Yd.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){yg.setUTCDate.apply(this._,arguments)},setDay:function(){yg.setUTCDay.apply(this._,arguments)},setFullYear:function(){yg.setUTCFullYear.apply(this._,arguments)},setHours:function(){yg.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){yg.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){yg.setUTCMinutes.apply(this._,arguments)},setMonth:function(){yg.setUTCMonth.apply(this._,arguments)},setSeconds:function(){yg.setUTCSeconds.apply(this._,arguments)},setTime:function(){yg.setTime.apply(this._,arguments)}};var yg=Date.prototype,zg="%a %b %e %X %Y",Ag="%m/%d/%Y",Bg="%H:%M:%S",Cg=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Dg=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],Eg=["January","February","March","April","May","June","July","August","September","October","November","December"],Fg=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];d3.time.format=function(a){function b(b){for(var d,e,f,g=[],h=-1,i=0;c>++h;)37===a.charCodeAt(h)&&(g.push(a.substring(i,h)),null!=(e=Mg[d=a.charAt(++h)])&&(d=a.charAt(++h)),(f=Ng[d])&&(d=f(b,null==e?"e"===d?" ":"0":e)),g.push(d),i=h+1);return g.push(a.substring(i,h)),g.join("")}var c=a.length;return b.parse=function(b){var c={y:1900,m:0,d:1,H:0,M:0,S:0,L:0},d=Zd(c,a,b,0);if(d!=b.length)return null;"p"in c&&(c.H=c.H%12+12*c.p);var e=new wg;return e.setFullYear(c.y,c.m,c.d),e.setHours(c.H,c.M,c.S,c.L),e},b.toString=function(){return a},b};var Gg=$d(Cg),Hg=$d(Dg),Ig=$d(Eg),Jg=_d(Eg),Kg=$d(Fg),Lg=_d(Fg),Mg={"-":"",_:" ",0:"0"},Ng={a:function(a){return Dg[a.getDay()]},A:function(a){return Cg[a.getDay()]},b:function(a){return Fg[a.getMonth()]},B:function(a){return Eg[a.getMonth()]},c:d3.time.format(zg),d:function(a,b){return ae(a.getDate(),b,2)},e:function(a,b){return ae(a.getDate(),b,2)},H:function(a,b){return ae(a.getHours(),b,2)},I:function(a,b){return ae(a.getHours()%12||12,b,2)},j:function(a,b){return ae(1+d3.time.dayOfYear(a),b,3)},L:function(a,b){return ae(a.getMilliseconds(),b,3)},m:function(a,b){return ae(a.getMonth()+1,b,2)},M:function(a,b){return ae(a.getMinutes(),b,2)},p:function(a){return a.getHours()>=12?"PM":"AM"},S:function(a,b){return ae(a.getSeconds(),b,2)},U:function(a,b){return ae(d3.time.sundayOfYear(a),b,2)},w:function(a){return a.getDay()},W:function(a,b){return ae(d3.time.mondayOfYear(a),b,2)},x:d3.time.format(Ag),X:d3.time.format(Bg),y:function(a,b){return ae(a.getFullYear()%100,b,2)},Y:function(a,b){return ae(a.getFullYear()%1e4,b,4)},Z:se,"%":function(){return"%"}},Og={a:be,A:ce,b:de,B:ee,c:fe,d:me,e:me,H:ne,I:ne,L:qe,m:le,M:oe,p:re,S:pe,x:ge,X:he,y:je,Y:ie},Pg=/^\s*\d+/,Qg=d3.map({am:0,pm:1});d3.time.format.utc=function(a){function b(a){try{wg=Yd;var b=new wg;return b._=a,c(b)}finally{wg=Date}}var c=d3.time.format(a);return b.parse=function(a){try{wg=Yd;var b=c.parse(a);return b&&b._}finally{wg=Date}},b.toString=c.toString,b};var Rg=d3.time.format.utc("%Y-%m-%dT%H:%M:%S.%LZ");d3.time.format.iso=Date.prototype.toISOString?te:Rg,te.parse=function(a){var b=new Date(a);return isNaN(b)?null:b},te.toString=Rg.toString,d3.time.second=ue(function(a){return new wg(1e3*Math.floor(a/1e3))},function(a,b){a.setTime(a.getTime()+1e3*Math.floor(b))},function(a){return a.getSeconds()}),d3.time.seconds=d3.time.second.range,d3.time.seconds.utc=d3.time.second.utc.range,d3.time.minute=ue(function(a){return new wg(6e4*Math.floor(a/6e4))},function(a,b){a.setTime(a.getTime()+6e4*Math.floor(b))},function(a){return a.getMinutes()}),d3.time.minutes=d3.time.minute.range,d3.time.minutes.utc=d3.time.minute.utc.range,d3.time.hour=ue(function(a){var b=a.getTimezoneOffset()/60;return new wg(36e5*(Math.floor(a/36e5-b)+b))},function(a,b){a.setTime(a.getTime()+36e5*Math.floor(b))},function(a){return a.getHours()}),d3.time.hours=d3.time.hour.range,d3.time.hours.utc=d3.time.hour.utc.range,d3.time.day=ue(function(a){var b=new wg(1970,0);return b.setFullYear(a.getFullYear(),a.getMonth(),a.getDate()),b},function(a,b){a.setDate(a.getDate()+b)},function(a){return a.getDate()-1}),d3.time.days=d3.time.day.range,d3.time.days.utc=d3.time.day.utc.range,d3.time.dayOfYear=function(a){var b=d3.time.year(a);return Math.floor((a-b-6e4*(a.getTimezoneOffset()-b.getTimezoneOffset()))/864e5)},xg.forEach(function(a,b){a=a.toLowerCase(),b=7-b;var c=d3.time[a]=ue(function(a){return(a=d3.time.day(a)).setDate(a.getDate()-(a.getDay()+b)%7),a},function(a,b){a.setDate(a.getDate()+7*Math.floor(b))},function(a){var c=d3.time.year(a).getDay();return Math.floor((d3.time.dayOfYear(a)+(c+b)%7)/7)-(c!==b)});d3.time[a+"s"]=c.range,d3.time[a+"s"].utc=c.utc.range,d3.time[a+"OfYear"]=function(a){var c=d3.time.year(a).getDay();return Math.floor((d3.time.dayOfYear(a)+(c+b)%7)/7)}}),d3.time.week=d3.time.sunday,d3.time.weeks=d3.time.sunday.range,d3.time.weeks.utc=d3.time.sunday.utc.range,d3.time.weekOfYear=d3.time.sundayOfYear,d3.time.month=ue(function(a){return a=d3.time.day(a),a.setDate(1),a},function(a,b){a.setMonth(a.getMonth()+b)},function(a){return a.getMonth()}),d3.time.months=d3.time.month.range,d3.time.months.utc=d3.time.month.utc.range,d3.time.year=ue(function(a){return a=d3.time.day(a),a.setMonth(0,1),a},function(a,b){a.setFullYear(a.getFullYear()+b)},function(a){return a.getFullYear()}),d3.time.years=d3.time.year.range,d3.time.years.utc=d3.time.year.utc.range;var Sg=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Tg=[[d3.time.second,1],[d3.time.second,5],[d3.time.second,15],[d3.time.second,30],[d3.time.minute,1],[d3.time.minute,5],[d3.time.minute,15],[d3.time.minute,30],[d3.time.hour,1],[d3.time.hour,3],[d3.time.hour,6],[d3.time.hour,12],[d3.time.day,1],[d3.time.day,2],[d3.time.week,1],[d3.time.month,1],[d3.time.month,3],[d3.time.year,1]],Ug=[[d3.time.format("%Y"),h],[d3.time.format("%B"),function(a){return a.getMonth()}],[d3.time.format("%b %d"),function(a){return 1!=a.getDate()}],[d3.time.format("%a %d"),function(a){return a.getDay()&&1!=a.getDate()}],[d3.time.format("%I %p"),function(a){return a.getHours()}],[d3.time.format("%I:%M"),function(a){return a.getMinutes()}],[d3.time.format(":%S"),function(a){return a.getSeconds()}],[d3.time.format(".%L"),function(a){return a.getMilliseconds()}]],Vg=d3.scale.linear(),Wg=ze(Ug);Tg.year=function(a,b){return Vg.domain(a.map(Be)).ticks(b).map(Ae)},d3.time.scale=function(){return we(d3.scale.linear(),Tg,Wg)};var Xg=Tg.map(function(a){return[a[0].utc,a[1]]}),Yg=[[d3.time.format.utc("%Y"),h],[d3.time.format.utc("%B"),function(a){return a.getUTCMonth()}],[d3.time.format.utc("%b %d"),function(a){return 1!=a.getUTCDate()}],[d3.time.format.utc("%a %d"),function(a){return a.getUTCDay()&&1!=a.getUTCDate()}],[d3.time.format.utc("%I %p"),function(a){return a.getUTCHours()}],[d3.time.format.utc("%I:%M"),function(a){return a.getUTCMinutes()}],[d3.time.format.utc(":%S"),function(a){return a.getUTCSeconds()}],[d3.time.format.utc(".%L"),function(a){return a.getUTCMilliseconds()}]],Zg=ze(Yg);Xg.year=function(a,b){return Vg.domain(a.map(De)).ticks(b).map(Ce)},d3.time.scale.utc=function(){return we(d3.scale.linear(),Xg,Zg)}}(),function(){function a(a,b){return new Date(b,a+1,0).getDate()}function b(a,b,c){return function(d,e,f){var g=a(d),h=[];if(d>g&&b(g),f>1)for(;e>g;){var i=new Date(+g);c(i)%f===0&&h.push(i),b(g)}else for(;e>g;)h.push(new Date(+g)),b(g);return h}}var c=window.nv||{};c.version="1.1.15b",c.dev=!0,window.nv=c,c.tooltip=c.tooltip||{},c.utils=c.utils||{},c.models=c.models||{},c.charts={},c.graphs=[],c.logs={},c.dispatch=d3.dispatch("render_start","render_end"),c.dev&&(c.dispatch.on("render_start",function(a){c.logs.startTime=+new Date}),c.dispatch.on("render_end",function(a){c.logs.endTime=+new Date,c.logs.totalTime=c.logs.endTime-c.logs.startTime,c.log("total",c.logs.totalTime)})),c.log=function(){if(c.dev&&console.log&&console.log.apply);else if(c.dev&&"function"==typeof console.log&&Function.prototype.bind){ +var a=Function.prototype.bind.call(console.log,console);a.apply(console,arguments)}return arguments[arguments.length-1]},c.render=function(a){a=a||1,c.render.active=!0,c.dispatch.render_start(),setTimeout(function(){for(var b,d,e=0;a>e&&(d=c.render.queue[e]);e++)b=d.generate(),typeof d.callback==typeof Function&&d.callback(b),c.graphs.push(b);c.render.queue.splice(0,e),c.render.queue.length?setTimeout(arguments.callee,0):(c.dispatch.render_end(),c.render.active=!1)},0)},c.render.active=!1,c.render.queue=[],c.addGraph=function(a){typeof arguments[0]==typeof Function&&(a={generate:arguments[0],callback:arguments[1]}),c.render.queue.push(a),c.render.active||c.render()},c.identity=function(a){return a},c.strip=function(a){return a.replace(/(\s|&)/g,"")},d3.time.monthEnd=function(a){return new Date(a.getFullYear(),a.getMonth(),0)},d3.time.monthEnds=b(d3.time.monthEnd,function(b){b.setUTCDate(b.getUTCDate()+1),b.setDate(a(b.getMonth()+1,b.getFullYear()))},function(a){return a.getMonth()}),c.interactiveGuideline=function(){"use strict";function a(l){l.each(function(l){function m(){var c=d3.mouse(this),d=c[0],e=c[1],i=!0,j=!1;if(k&&(d=d3.event.offsetX,e=d3.event.offsetY,"svg"!==d3.event.target.tagName&&(i=!1),d3.event.target.className.baseVal.match("nv-legend")&&(j=!0)),i&&(d-=f.left,e-=f.top),0>d||0>e||d>o||e>p||d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement||j){if(k&&d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement&&d3.event.relatedTarget.className.match(b.nvPointerEventsClass))return;return h.elementMouseout({mouseX:d,mouseY:e}),void a.renderGuideLine(null)}var l=g.invert(d);h.elementMousemove({mouseX:d,mouseY:e,pointXValue:l}),"dblclick"===d3.event.type&&h.elementDblclick({mouseX:d,mouseY:e,pointXValue:l})}var n=d3.select(this),o=d||960,p=e||400,q=n.selectAll("g.nv-wrap.nv-interactiveLineLayer").data([l]),r=q.enter().append("g").attr("class"," nv-wrap nv-interactiveLineLayer");r.append("g").attr("class","nv-interactiveGuideLine"),j&&(j.on("mousemove",m,!0).on("mouseout",m,!0).on("dblclick",m),a.renderGuideLine=function(a){if(i){var b=q.select(".nv-interactiveGuideLine").selectAll("line").data(null!=a?[c.utils.NaNtoZero(a)]:[],String);b.enter().append("line").attr("class","nv-guideline").attr("x1",function(a){return a}).attr("x2",function(a){return a}).attr("y1",p).attr("y2",0),b.exit().remove()}})})}var b=c.models.tooltip(),d=null,e=null,f={left:0,top:0},g=d3.scale.linear(),h=(d3.scale.linear(),d3.dispatch("elementMousemove","elementMouseout","elementDblclick")),i=!0,j=null,k=-1!==navigator.userAgent.indexOf("MSIE");return a.dispatch=h,a.tooltip=b,a.margin=function(b){return arguments.length?(f.top="undefined"!=typeof b.top?b.top:f.top,f.left="undefined"!=typeof b.left?b.left:f.left,a):f},a.width=function(b){return arguments.length?(d=b,a):d},a.height=function(b){return arguments.length?(e=b,a):e},a.xScale=function(b){return arguments.length?(g=b,a):g},a.showGuideLine=function(b){return arguments.length?(i=b,a):i},a.svgContainer=function(b){return arguments.length?(j=b,a):j},a},c.interactiveBisect=function(a,b,c){"use strict";if(!a instanceof Array)return null;"function"!=typeof c&&(c=function(a,b){return a.x});var d=d3.bisector(c).left,e=d3.max([0,d(a,b)-1]),f=c(a[e],e);if("undefined"==typeof f&&(f=e),f===b)return e;var g=d3.min([e+1,a.length-1]),h=c(a[g],g);return"undefined"==typeof h&&(h=g),Math.abs(h-b)>=Math.abs(f-b)?e:g},c.nearestValueIndex=function(a,b,c){"use strict";var d=1/0,e=null;return a.forEach(function(a,f){var g=Math.abs(b-a);d>=g&&c>g&&(d=g,e=f)}),e},function(){"use strict";window.nv.tooltip={},window.nv.models.tooltip=function(){function a(){if(l){var a=d3.select(l);"svg"!==a.node().tagName&&(a=a.select("svg"));var b=a.node()?a.attr("viewBox"):null;if(b){b=b.split(" ");var c=parseInt(a.style("width"))/b[2];n.left=n.left*c,n.top=n.top*c}}}function b(a){var b;b=l?d3.select(l):d3.select("body");var c=b.select(".nvtooltip");return null===c.node()&&(c=b.append("div").attr("class","nvtooltip "+(k?k:"xy-tooltip")).attr("id",p)),c.node().innerHTML=a,c.style("top",0).style("left",0).style("opacity",0),c.selectAll("div, table, td, tr").classed(q,!0),c.classed(q,!0),c.node()}function d(){if(o&&u(f)){a();var e=n.left,k=null!=j?j:n.top,p=b(t(f));if(m=p,l){var q=l.getElementsByTagName("svg")[0],r=(q?q.getBoundingClientRect():l.getBoundingClientRect(),{left:0,top:0});if(q){var s=q.getBoundingClientRect(),v=l.getBoundingClientRect(),w=s.top;if(0>w){var x=l.getBoundingClientRect();w=Math.abs(w)>x.height?0:w}r.top=Math.abs(w-v.top),r.left=Math.abs(s.left-v.left)}e+=l.offsetLeft+r.left-2*l.scrollLeft,k+=l.offsetTop+r.top-2*l.scrollTop}return i&&i>0&&(k=Math.floor(k/i)*i),c.tooltip.calcTooltipPosition([e,k],g,h,p),d}}var e=null,f=null,g="w",h=50,i=25,j=null,k=null,l=null,m=null,n={left:null,top:null},o=!0,p="nvtooltip-"+Math.floor(1e5*Math.random()),q="nv-pointer-events-none",r=function(a,b){return a},s=function(a){return a},t=function(a){if(null!=e)return e;if(null==a)return"";var b=d3.select(document.createElement("table")),c=b.selectAll("thead").data([a]).enter().append("thead");c.append("tr").append("td").attr("colspan",3).append("strong").classed("x-value",!0).html(s(a.value));var d=b.selectAll("tbody").data([a]).enter().append("tbody"),f=d.selectAll("tr").data(function(a){return a.series}).enter().append("tr").classed("highlight",function(a){return a.highlight});f.append("td").classed("legend-color-guide",!0).append("div").style("background-color",function(a){return a.color}),f.append("td").classed("key",!0).html(function(a){return a.key}),f.append("td").classed("value",!0).html(function(a,b){return r(a.value,b)}),f.selectAll("td").each(function(a){if(a.highlight){var b=d3.scale.linear().domain([0,1]).range(["#fff",a.color]),c=.6;d3.select(this).style("border-bottom-color",b(c)).style("border-top-color",b(c))}});var g=b.node().outerHTML;return void 0!==a.footer&&(g+=""),g},u=function(a){return a&&a.series&&a.series.length>0?!0:!1};return d.nvPointerEventsClass=q,d.content=function(a){return arguments.length?(e=a,d):e},d.tooltipElem=function(){return m},d.contentGenerator=function(a){return arguments.length?("function"==typeof a&&(t=a),d):t},d.data=function(a){return arguments.length?(f=a,d):f},d.gravity=function(a){return arguments.length?(g=a,d):g},d.distance=function(a){return arguments.length?(h=a,d):h},d.snapDistance=function(a){return arguments.length?(i=a,d):i},d.classes=function(a){return arguments.length?(k=a,d):k},d.chartContainer=function(a){return arguments.length?(l=a,d):l},d.position=function(a){return arguments.length?(n.left="undefined"!=typeof a.left?a.left:n.left,n.top="undefined"!=typeof a.top?a.top:n.top,d):n},d.fixedTop=function(a){return arguments.length?(j=a,d):j},d.enabled=function(a){return arguments.length?(o=a,d):o},d.valueFormatter=function(a){return arguments.length?("function"==typeof a&&(r=a),d):r},d.headerFormatter=function(a){return arguments.length?("function"==typeof a&&(s=a),d):s},d.id=function(){return p},d},c.tooltip.show=function(a,b,d,e,f,g){var h=document.createElement("div");h.className="nvtooltip "+(g?g:"xy-tooltip");var i=f;(!f||f.tagName.match(/g|svg/i))&&(i=document.getElementsByTagName("body")[0]),h.style.left=0,h.style.top=0,h.style.opacity=0,h.innerHTML=b,i.appendChild(h),f&&(a[0]=a[0]-f.scrollLeft,a[1]=a[1]-f.scrollTop),c.tooltip.calcTooltipPosition(a,d,e,h)},c.tooltip.findFirstNonSVGParent=function(a){for(;null!==a.tagName.match(/^g|svg$/i);)a=a.parentNode;return a},c.tooltip.findTotalOffsetTop=function(a,b){var c=b;do isNaN(a.offsetTop)||(c+=a.offsetTop);while(a=a.offsetParent);return c},c.tooltip.findTotalOffsetLeft=function(a,b){var c=b;do isNaN(a.offsetLeft)||(c+=a.offsetLeft);while(a=a.offsetParent);return c},c.tooltip.calcTooltipPosition=function(a,b,d,e){var f,g,h=parseInt(e.offsetHeight),i=parseInt(e.offsetWidth),j=c.utils.windowSize().width,k=c.utils.windowSize().height,l=window.pageYOffset,m=window.pageXOffset;k=window.innerWidth>=document.body.scrollWidth?k:k-16,j=window.innerHeight>=document.body.scrollHeight?j:j-16,b=b||"s",d=d||20;var n=function(a){return c.tooltip.findTotalOffsetTop(a,g)},o=function(a){return c.tooltip.findTotalOffsetLeft(a,f)};switch(b){case"e":f=a[0]-i-d,g=a[1]-h/2;var p=o(e),q=n(e);m>p&&(f=a[0]+d>m?a[0]+d:m-p+f),l>q&&(g=l-q+g),q+h>l+k&&(g=l+k-q+g-h);break;case"w":f=a[0]+d,g=a[1]-h/2;var p=o(e),q=n(e);p+i>j&&(f=a[0]-i-d),l>q&&(g=l+5),q+h>l+k&&(g=l+k-q+g-h);break;case"n":f=a[0]-i/2-5,g=a[1]+d;var p=o(e),q=n(e);m>p&&(f=m+5),p+i>j&&(f=f-i/2+5),q+h>l+k&&(g=l+k-q+g-h);break;case"s":f=a[0]-i/2,g=a[1]-h-d;var p=o(e),q=n(e);m>p&&(f=m+5),p+i>j&&(f=f-i/2+5),l>q&&(g=l);break;case"none":f=a[0],g=a[1]-d;var p=o(e),q=n(e)}return e.style.left=f+"px",e.style.top=g+"px",e.style.opacity=1,e.style.position="absolute",e},c.tooltip.cleanup=function(){for(var a=document.getElementsByClassName("nvtooltip"),b=[];a.length;)b.push(a[0]),a[0].style.transitionDelay="0 !important",a[0].style.opacity=0,a[0].className="nvtooltip-pending-removal";setTimeout(function(){for(;b.length;){var a=b.pop();a.parentNode.removeChild(a)}},500)}}(),c.utils.windowSize=function(){var a={width:640,height:480};return document.body&&document.body.offsetWidth&&(a.width=document.body.offsetWidth,a.height=document.body.offsetHeight),"CSS1Compat"==document.compatMode&&document.documentElement&&document.documentElement.offsetWidth&&(a.width=document.documentElement.offsetWidth,a.height=document.documentElement.offsetHeight),window.innerWidth&&window.innerHeight&&(a.width=window.innerWidth,a.height=window.innerHeight),a},c.utils.windowResize=function(a){if(void 0!==a){var b=window.onresize;window.onresize=function(c){"function"==typeof b&&b(c),a(c)}}},c.utils.getColor=function(a){return arguments.length?"[object Array]"===Object.prototype.toString.call(a)?function(b,c){return b.color||a[c%a.length]}:a:c.utils.defaultColor()},c.utils.defaultColor=function(){var a=d3.scale.category20().range();return function(b,c){return b.color||a[c%a.length]}},c.utils.customTheme=function(a,b,c){b=b||function(a){return a.key},c=c||d3.scale.category20().range();var d=c.length;return function(e,f){var g=b(e);return d||(d=c.length),"undefined"!=typeof a[g]?"function"==typeof a[g]?a[g]():a[g]:c[--d]}},c.utils.pjax=function(a,b){function d(d){d3.html(d,function(d){var e=d3.select(b).node();e.parentNode.replaceChild(d3.select(d).select(b).node(),e),c.utils.pjax(a,b)})}d3.selectAll(a).on("click",function(){history.pushState(this.href,this.textContent,this.href),d(this.href),d3.event.preventDefault()}),d3.select(window).on("popstate",function(){d3.event.state&&d(d3.event.state)})},c.utils.calcApproxTextWidth=function(a){if("function"==typeof a.style&&"function"==typeof a.text){var b=parseInt(a.style("font-size").replace("px","")),c=a.text().length;return c*b*.5}return 0},c.utils.NaNtoZero=function(a){return"number"!=typeof a||isNaN(a)||null===a||a===1/0?0:a},c.utils.optionsFunc=function(a){return a&&d3.map(a).forEach(function(a,b){"function"==typeof this[a]&&this[a](b)}.bind(this)),this},c.models.axis=function(){"use strict";function a(c){return c.each(function(a){var c=d3.select(this),f=c.selectAll("g.nv-wrap.nv-axis").data([a]),r=f.enter().append("g").attr("class","nvd3 nv-wrap nv-axis"),s=(r.append("g"),f.select("g"));null!==o?b.ticks(o):("top"==b.orient()||"bottom"==b.orient())&&b.ticks(Math.abs(g.range()[1]-g.range()[0])/100),s.transition().call(b),q=q||b.scale();var t=b.tickFormat();null==t&&(t=q.tickFormat());var u=s.selectAll("text.nv-axislabel").data([h||null]);switch(u.exit().remove(),b.orient()){case"top":u.enter().append("text").attr("class","nv-axislabel");var v=2==g.range().length?g.range()[1]:g.range()[g.range().length-1]+(g.range()[1]-g.range()[0]);if(u.attr("text-anchor","middle").attr("y",0).attr("x",v/2),i){var w=f.selectAll("g.nv-axisMaxMin").data(g.domain());w.enter().append("g").attr("class","nv-axisMaxMin").append("text"),w.exit().remove(),w.attr("transform",function(a,b){return"translate("+g(a)+",0)"}).select("text").attr("dy","-0.5em").attr("y",-b.tickPadding()).attr("text-anchor","middle").text(function(a,b){var c=t(a);return(""+c).match("NaN")?"":c}),w.transition().attr("transform",function(a,b){return"translate("+g.range()[b]+",0)"})}break;case"bottom":var x=36,y=30,z=s.selectAll("g").select("text");if(k%360){z.each(function(a,b){var c=this.getBBox().width;c>y&&(y=c)});var A=Math.abs(Math.sin(k*Math.PI/180)),x=(A?A*y:y)+30;z.attr("transform",function(a,b,c){return"rotate("+k+" 0,0)"}).style("text-anchor",k%360>0?"start":"end")}u.enter().append("text").attr("class","nv-axislabel");var v=2==g.range().length?g.range()[1]:g.range()[g.range().length-1]+(g.range()[1]-g.range()[0]);if(u.attr("text-anchor","middle").attr("y",x).attr("x",v/2),i){var w=f.selectAll("g.nv-axisMaxMin").data([g.domain()[0],g.domain()[g.domain().length-1]]);w.enter().append("g").attr("class","nv-axisMaxMin").append("text"),w.exit().remove(),w.attr("transform",function(a,b){return"translate("+(g(a)+(n?g.rangeBand()/2:0))+",0)"}).select("text").attr("dy",".71em").attr("y",b.tickPadding()).attr("transform",function(a,b,c){return"rotate("+k+" 0,0)"}).style("text-anchor",k?k%360>0?"start":"end":"middle").text(function(a,b){var c=t(a);return(""+c).match("NaN")?"":c}),w.transition().attr("transform",function(a,b){return"translate("+(g(a)+(n?g.rangeBand()/2:0))+",0)"})}m&&z.attr("transform",function(a,b){return"translate(0,"+(b%2==0?"0":"12")+")"});break;case"right":if(u.enter().append("text").attr("class","nv-axislabel"),u.style("text-anchor",l?"middle":"begin").attr("transform",l?"rotate(90)":"").attr("y",l?-Math.max(d.right,e)+12:-10).attr("x",l?g.range()[0]/2:b.tickPadding()),i){var w=f.selectAll("g.nv-axisMaxMin").data(g.domain());w.enter().append("g").attr("class","nv-axisMaxMin").append("text").style("opacity",0),w.exit().remove(),w.attr("transform",function(a,b){return"translate(0,"+g(a)+")"}).select("text").attr("dy",".32em").attr("y",0).attr("x",b.tickPadding()).style("text-anchor","start").text(function(a,b){var c=t(a);return(""+c).match("NaN")?"":c}),w.transition().attr("transform",function(a,b){return"translate(0,"+g.range()[b]+")"}).select("text").style("opacity",1)}break;case"left":if(u.enter().append("text").attr("class","nv-axislabel"),u.style("text-anchor",l?"middle":"end").attr("transform",l?"rotate(-90)":"").attr("y",l?-Math.max(d.left,e)+p:-10).attr("x",l?-g.range()[0]/2:-b.tickPadding()),i){var w=f.selectAll("g.nv-axisMaxMin").data(g.domain());w.enter().append("g").attr("class","nv-axisMaxMin").append("text").style("opacity",0),w.exit().remove(),w.attr("transform",function(a,b){return"translate(0,"+q(a)+")"}).select("text").attr("dy",".32em").attr("y",0).attr("x",-b.tickPadding()).attr("text-anchor","end").text(function(a,b){var c=t(a);return(""+c).match("NaN")?"":c}),w.transition().attr("transform",function(a,b){return"translate(0,"+g.range()[b]+")"}).select("text").style("opacity",1)}}if(u.text(function(a){return a}),!i||"left"!==b.orient()&&"right"!==b.orient()||(s.selectAll("g").each(function(a,b){d3.select(this).select("text").attr("opacity",1),(g(a)g.range()[0]-10)&&((a>1e-10||-1e-10>a)&&d3.select(this).attr("opacity",0),d3.select(this).select("text").attr("opacity",0))}),g.domain()[0]==g.domain()[1]&&0==g.domain()[0]&&f.selectAll("g.nv-axisMaxMin").style("opacity",function(a,b){return b?0:1})),i&&("top"===b.orient()||"bottom"===b.orient())){var B=[];f.selectAll("g.nv-axisMaxMin").each(function(a,b){try{b?B.push(g(a)-this.getBBox().width-4):B.push(g(a)+this.getBBox().width+4)}catch(c){b?B.push(g(a)-4):B.push(g(a)+4)}}),s.selectAll("g").each(function(a,b){(g(a)B[1])&&(a>1e-10||-1e-10>a?d3.select(this).remove():d3.select(this).select("text").remove())})}j&&s.selectAll(".tick").filter(function(a){return!parseFloat(Math.round(1e5*a.__data__)/1e6)&&void 0!==a.__data__}).classed("zero",!0),q=g.copy()}),a}var b=d3.svg.axis(),d={top:0,right:0,bottom:0,left:0},e=75,f=60,g=d3.scale.linear(),h=null,i=!0,j=!0,k=0,l=!0,m=!1,n=!1,o=null,p=12;b.scale(g).orient("bottom").tickFormat(function(a){return a});var q;return a.axis=b,d3.rebind(a,b,"orient","tickValues","tickSubdivide","tickSize","tickPadding","tickFormat"),d3.rebind(a,g,"domain","range","rangeBand","rangeBands"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(d.top="undefined"!=typeof b.top?b.top:d.top,d.right="undefined"!=typeof b.right?b.right:d.right,d.bottom="undefined"!=typeof b.bottom?b.bottom:d.bottom,d.left="undefined"!=typeof b.left?b.left:d.left,a):d},a.width=function(b){return arguments.length?(e=b,a):e},a.ticks=function(b){return arguments.length?(o=b,a):o},a.height=function(b){return arguments.length?(f=b,a):f},a.axisLabel=function(b){return arguments.length?(h=b,a):h},a.showMaxMin=function(b){return arguments.length?(i=b,a):i},a.highlightZero=function(b){return arguments.length?(j=b,a):j},a.scale=function(c){return arguments.length?(g=c,b.scale(g),n="function"==typeof g.rangeBands,d3.rebind(a,g,"domain","range","rangeBand","rangeBands"),a):g},a.rotateYLabel=function(b){return arguments.length?(l=b,a):l},a.rotateLabels=function(b){return arguments.length?(k=b,a):k},a.staggerLabels=function(b){return arguments.length?(m=b,a):m},a.axisLabelDistance=function(b){return arguments.length?(p=b,a):p},a},c.models.historicalBar=function(){"use strict";function a(v){return v.each(function(a){var v=h-g.left-g.right,w=i-g.top-g.bottom,x=d3.select(this);k.domain(b||d3.extent(a[0].values.map(m).concat(o))),q?k.range(e||[.5*v/a[0].values.length,v*(a[0].values.length-.5)/a[0].values.length]):k.range(e||[0,v]),l.domain(d||d3.extent(a[0].values.map(n).concat(p))).range(f||[w,0]),k.domain()[0]===k.domain()[1]&&(k.domain()[0]?k.domain([k.domain()[0]-.01*k.domain()[0],k.domain()[1]+.01*k.domain()[1]]):k.domain([-1,1])),l.domain()[0]===l.domain()[1]&&(l.domain()[0]?l.domain([l.domain()[0]+.01*l.domain()[0],l.domain()[1]-.01*l.domain()[1]]):l.domain([-1,1]));var y=x.selectAll("g.nv-wrap.nv-historicalBar-"+j).data([a[0].values]),z=y.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBar-"+j),A=z.append("defs"),B=z.append("g"),C=y.select("g");B.append("g").attr("class","nv-bars"),y.attr("transform","translate("+g.left+","+g.top+")"),x.on("click",function(a,b){t.chartClick({data:a,index:b,pos:d3.event,id:j})}),A.append("clipPath").attr("id","nv-chart-clip-path-"+j).append("rect"),y.select("#nv-chart-clip-path-"+j+" rect").attr("width",v).attr("height",w),C.attr("clip-path",r?"url(#nv-chart-clip-path-"+j+")":"");var D=y.select(".nv-bars").selectAll(".nv-bar").data(function(a){return a},function(a,b){return m(a,b)});D.exit().remove();D.enter().append("rect").attr("x",0).attr("y",function(a,b){return c.utils.NaNtoZero(l(Math.max(0,n(a,b))))}).attr("height",function(a,b){return c.utils.NaNtoZero(Math.abs(l(n(a,b))-l(0)))}).attr("transform",function(b,c){return"translate("+(k(m(b,c))-v/a[0].values.length*.45)+",0)"}).on("mouseover",function(b,c){u&&(d3.select(this).classed("hover",!0),t.elementMouseover({point:b,series:a[0],pos:[k(m(b,c)),l(n(b,c))],pointIndex:c,seriesIndex:0,e:d3.event}))}).on("mouseout",function(b,c){u&&(d3.select(this).classed("hover",!1),t.elementMouseout({point:b,series:a[0],pointIndex:c,seriesIndex:0,e:d3.event}))}).on("click",function(a,b){u&&(t.elementClick({value:n(a,b),data:a,index:b,pos:[k(m(a,b)),l(n(a,b))],e:d3.event,id:j}),d3.event.stopPropagation())}).on("dblclick",function(a,b){u&&(t.elementDblClick({value:n(a,b),data:a,index:b,pos:[k(m(a,b)),l(n(a,b))],e:d3.event,id:j}),d3.event.stopPropagation())});D.attr("fill",function(a,b){return s(a,b)}).attr("class",function(a,b,c){return(n(a,b)<0?"nv-bar negative":"nv-bar positive")+" nv-bar-"+c+"-"+b}).transition().attr("transform",function(b,c){return"translate("+(k(m(b,c))-v/a[0].values.length*.45)+",0)"}).attr("width",v/a[0].values.length*.9),D.transition().attr("y",function(a,b){var d=n(a,b)<0?l(0):l(0)-l(n(a,b))<1?l(0)-1:l(n(a,b));return c.utils.NaNtoZero(d)}).attr("height",function(a,b){return c.utils.NaNtoZero(Math.max(Math.abs(l(n(a,b))-l(0)),1))})}),a}var b,d,e,f,g={top:0,right:0,bottom:0,left:0},h=960,i=500,j=Math.floor(1e4*Math.random()),k=d3.scale.linear(),l=d3.scale.linear(),m=function(a){return a.x},n=function(a){return a.y},o=[],p=[0],q=!1,r=!0,s=c.utils.defaultColor(),t=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),u=!0;return a.highlightPoint=function(a,b){d3.select(".nv-historicalBar-"+j).select(".nv-bars .nv-bar-0-"+a).classed("hover",b)},a.clearHighlights=function(){d3.select(".nv-historicalBar-"+j).select(".nv-bars .nv-bar.hover").classed("hover",!1)},a.dispatch=t,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(m=b,a):m},a.y=function(b){return arguments.length?(n=b,a):n},a.margin=function(b){return arguments.length?(g.top="undefined"!=typeof b.top?b.top:g.top,g.right="undefined"!=typeof b.right?b.right:g.right,g.bottom="undefined"!=typeof b.bottom?b.bottom:g.bottom,g.left="undefined"!=typeof b.left?b.left:g.left,a):g},a.width=function(b){return arguments.length?(h=b,a):h},a.height=function(b){return arguments.length?(i=b,a):i},a.xScale=function(b){return arguments.length?(k=b,a):k},a.yScale=function(b){return arguments.length?(l=b,a):l},a.xDomain=function(c){return arguments.length?(b=c,a):b},a.yDomain=function(b){return arguments.length?(d=b,a):d},a.xRange=function(b){return arguments.length?(e=b,a):e},a.yRange=function(b){return arguments.length?(f=b,a):f},a.forceX=function(b){return arguments.length?(o=b,a):o},a.forceY=function(b){return arguments.length?(p=b,a):p},a.padData=function(b){return arguments.length?(q=b,a):q},a.clipEdge=function(b){return arguments.length?(r=b,a):r},a.color=function(b){return arguments.length?(s=c.utils.getColor(b),a):s},a.id=function(b){return arguments.length?(j=b,a):j},a.interactive=function(b){return arguments.length?(u=!1,a):u},a},c.models.bullet=function(){"use strict";function a(c){return c.each(function(a,c){var d=m-b.left-b.right,o=n-b.top-b.bottom,r=d3.select(this),s=f.call(this,a,c).slice().sort(d3.descending),t=g.call(this,a,c).slice().sort(d3.descending),u=h.call(this,a,c).slice().sort(d3.descending),v=i.call(this,a,c).slice(),w=j.call(this,a,c).slice(),x=k.call(this,a,c).slice(),y=d3.scale.linear().domain(d3.extent(d3.merge([l,s]))).range(e?[d,0]:[0,d]);this.__chart__||d3.scale.linear().domain([0,1/0]).range(y.range());this.__chart__=y;var z=d3.min(s),A=d3.max(s),B=s[1],C=r.selectAll("g.nv-wrap.nv-bullet").data([a]),D=C.enter().append("g").attr("class","nvd3 nv-wrap nv-bullet"),E=D.append("g"),F=C.select("g");E.append("rect").attr("class","nv-range nv-rangeMax"),E.append("rect").attr("class","nv-range nv-rangeAvg"),E.append("rect").attr("class","nv-range nv-rangeMin"),E.append("rect").attr("class","nv-measure"),E.append("path").attr("class","nv-markerTriangle"),C.attr("transform","translate("+b.left+","+b.top+")");var G=function(a){return Math.abs(y(a)-y(0))},H=function(a){return y(0>a?a:0)};F.select("rect.nv-rangeMax").attr("height",o).attr("width",G(A>0?A:z)).attr("x",H(A>0?A:z)).datum(A>0?A:z),F.select("rect.nv-rangeAvg").attr("height",o).attr("width",G(B)).attr("x",H(B)).datum(B),F.select("rect.nv-rangeMin").attr("height",o).attr("width",G(A)).attr("x",H(A)).attr("width",G(A>0?z:A)).attr("x",H(A>0?z:A)).datum(A>0?z:A),F.select("rect.nv-measure").style("fill",p).attr("height",o/3).attr("y",o/3).attr("width",0>u?y(0)-y(u[0]):y(u[0])-y(0)).attr("x",H(u)).on("mouseover",function(){q.elementMouseover({value:u[0],label:x[0]||"Current",pos:[y(u[0]),o/2]})}).on("mouseout",function(){q.elementMouseout({value:u[0],label:x[0]||"Current"})});var I=o/6;t[0]?F.selectAll("path.nv-markerTriangle").attr("transform",function(a){return"translate("+y(t[0])+","+o/2+")"}).attr("d","M0,"+I+"L"+I+","+-I+" "+-I+","+-I+"Z").on("mouseover",function(){q.elementMouseover({value:t[0],label:w[0]||"Previous",pos:[y(t[0]),o/2]})}).on("mouseout",function(){q.elementMouseout({value:t[0],label:w[0]||"Previous"})}):F.selectAll("path.nv-markerTriangle").remove(),C.selectAll(".nv-range").on("mouseover",function(a,b){var c=v[b]||(b?1==b?"Mean":"Minimum":"Maximum");q.elementMouseover({value:a,label:c,pos:[y(a),o/2]})}).on("mouseout",function(a,b){var c=v[b]||(b?1==b?"Mean":"Minimum":"Maximum");q.elementMouseout({value:a,label:c})})}),a}var b={top:0,right:0,bottom:0,left:0},d="left",e=!1,f=function(a){return a.ranges},g=function(a){return a.markers},h=function(a){return a.measures},i=function(a){return a.rangeLabels?a.rangeLabels:[]},j=function(a){return a.markerLabels?a.markerLabels:[]},k=function(a){return a.measureLabels?a.measureLabels:[]},l=[0],m=380,n=30,o=null,p=c.utils.getColor(["#1f77b4"]),q=d3.dispatch("elementMouseover","elementMouseout");return a.dispatch=q,a.options=c.utils.optionsFunc.bind(a),a.orient=function(b){return arguments.length?(d=b,e="right"==d||"bottom"==d,a):d},a.ranges=function(b){return arguments.length?(f=b,a):f},a.markers=function(b){return arguments.length?(g=b,a):g},a.measures=function(b){return arguments.length?(h=b,a):h},a.forceX=function(b){return arguments.length?(l=b,a):l},a.width=function(b){return arguments.length?(m=b,a):m},a.height=function(b){return arguments.length?(n=b,a):n},a.margin=function(c){return arguments.length?(b.top="undefined"!=typeof c.top?c.top:b.top,b.right="undefined"!=typeof c.right?c.right:b.right,b.bottom="undefined"!=typeof c.bottom?c.bottom:b.bottom,b.left="undefined"!=typeof c.left?c.left:b.left,a):b},a.tickFormat=function(b){return arguments.length?(o=b,a):o},a.color=function(b){return arguments.length?(p=c.utils.getColor(b),a):p},a},c.models.bulletChart=function(){"use strict";function a(c){return c.each(function(d,n){var r=d3.select(this),s=(j||parseInt(r.style("width"))||960)-f.left-f.right,t=k-f.top-f.bottom,u=this;if(a.update=function(){a(c)},a.container=this,!d||!g.call(this,d,n)){var v=r.selectAll(".nv-noData").data([o]);return v.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),v.attr("x",f.left+s/2).attr("y",18+f.top+t/2).text(function(a){return a}),a}r.selectAll(".nv-noData").remove();var w=g.call(this,d,n).slice().sort(d3.descending),x=h.call(this,d,n).slice().sort(d3.descending),y=i.call(this,d,n).slice().sort(d3.descending),z=r.selectAll("g.nv-wrap.nv-bulletChart").data([d]),A=z.enter().append("g").attr("class","nvd3 nv-wrap nv-bulletChart"),B=A.append("g"),C=z.select("g");B.append("g").attr("class","nv-bulletWrap"),B.append("g").attr("class","nv-titles"),z.attr("transform","translate("+f.left+","+f.top+")");var D=d3.scale.linear().domain([0,Math.max(w[0],x[0],y[0])]).range(e?[s,0]:[0,s]),E=this.__chart__||d3.scale.linear().domain([0,1/0]).range(D.range());this.__chart__=D;var F=B.select(".nv-titles").append("g").attr("text-anchor","end").attr("transform","translate(-6,"+(k-f.top-f.bottom)/2+")");F.append("text").attr("class","nv-title").text(function(a){return a.title}),F.append("text").attr("class","nv-subtitle").attr("dy","1em").text(function(a){return a.subtitle}),b.width(s).height(t);var G=C.select(".nv-bulletWrap");d3.transition(G).call(b);var H=l||D.tickFormat(s/100),I=C.selectAll("g.nv-tick").data(D.ticks(s/50),function(a){return this.textContent||H(a)}),J=I.enter().append("g").attr("class","nv-tick").attr("transform",function(a){return"translate("+E(a)+",0)"}).style("opacity",1e-6);J.append("line").attr("y1",t).attr("y2",7*t/6),J.append("text").attr("text-anchor","middle").attr("dy","1em").attr("y",7*t/6).text(H);var K=d3.transition(I).attr("transform",function(a){return"translate("+D(a)+",0)"}).style("opacity",1);K.select("line").attr("y1",t).attr("y2",7*t/6),K.select("text").attr("y",7*t/6),d3.transition(I.exit()).attr("transform",function(a){return"translate("+D(a)+",0)"}).style("opacity",1e-6).remove(),p.on("tooltipShow",function(a){a.key=d.title,m&&q(a,u.parentNode)})}),d3.timer.flush(),a}var b=c.models.bullet(),d="left",e=!1,f={top:5,right:40,bottom:20,left:120},g=function(a){return a.ranges},h=function(a){return a.markers},i=function(a){return a.measures},j=null,k=55,l=null,m=!0,n=function(a,b,c,d,e){return"

"+b+"

"+c+"

"},o="No Data Available.",p=d3.dispatch("tooltipShow","tooltipHide"),q=function(b,d){var e=b.pos[0]+(d.offsetLeft||0)+f.left,g=b.pos[1]+(d.offsetTop||0)+f.top,h=n(b.key,b.label,b.value,b,a);c.tooltip.show([e,g],h,b.value<0?"e":"w",null,d)};return b.dispatch.on("elementMouseover.tooltip",function(a){p.tooltipShow(a)}),b.dispatch.on("elementMouseout.tooltip",function(a){p.tooltipHide(a)}),p.on("tooltipHide",function(){m&&c.tooltip.cleanup()}),a.dispatch=p,a.bullet=b,d3.rebind(a,b,"color"),a.options=c.utils.optionsFunc.bind(a),a.orient=function(b){return arguments.length?(d=b,e="right"==d||"bottom"==d,a):d},a.ranges=function(b){return arguments.length?(g=b,a):g},a.markers=function(b){return arguments.length?(h=b,a):h},a.measures=function(b){return arguments.length?(i=b,a):i},a.width=function(b){return arguments.length?(j=b,a):j},a.height=function(b){return arguments.length?(k=b,a):k},a.margin=function(b){return arguments.length?(f.top="undefined"!=typeof b.top?b.top:f.top,f.right="undefined"!=typeof b.right?b.right:f.right,f.bottom="undefined"!=typeof b.bottom?b.bottom:f.bottom,f.left="undefined"!=typeof b.left?b.left:f.left,a):f},a.tickFormat=function(b){return arguments.length?(l=b,a):l},a.tooltips=function(b){return arguments.length?(m=b,a):m},a.tooltipContent=function(b){return arguments.length?(n=b,a):n},a.noData=function(b){return arguments.length?(o=b,a):o},a},c.models.cumulativeLineChart=function(){"use strict";function a(x){return x.each(function(x){function F(b,c){d3.select(a.container).style("cursor","ew-resize")}function J(a,b){H.x=d3.event.x,H.i=Math.round(G.invert(H.x)),L()}function K(b,c){d3.select(a.container).style("cursor","auto"),z.index=H.i,D.stateChange(z)}function L(){da.data([H]);var b=a.transitionDuration();a.transitionDuration(0),a.update(),a.transitionDuration(b)}var M=d3.select(this).classed("nv-chart-"+y,!0),N=this,O=(n||parseInt(M.style("width"))||960)-l.left-l.right,P=(o||parseInt(M.style("height"))||400)-l.top-l.bottom;if(a.update=function(){M.transition().duration(E).call(a)},a.container=this,z.disabled=x.map(function(a){return!!a.disabled}),!A){var Q;A={};for(Q in z)z[Q]instanceof Array?A[Q]=z[Q].slice(0):A[Q]=z[Q]}var R=d3.behavior.drag().on("dragstart",F).on("drag",J).on("dragend",K);if(!(x&&x.length&&x.filter(function(a){return a.values.length}).length)){var S=M.selectAll(".nv-noData").data([B]);return S.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),S.attr("x",l.left+O/2).attr("y",l.top+P/2).text(function(a){return a}),a}if(M.selectAll(".nv-noData").remove(),d=f.xScale(),e=f.yScale(),w)f.yDomain(null);else{var T=x.filter(function(a){return!a.disabled}).map(function(a,b){var c=d3.extent(a.values,f.y());return c[0]<-.95&&(c[0]=-.95),[(c[0]-c[1])/(1+c[1]),(c[1]-c[0])/(1+c[0])]}),U=[d3.min(T,function(a){return a[0]}),d3.max(T,function(a){return a[1]})];f.yDomain(U)}G.domain([0,x[0].values.length-1]).range([0,O]).clamp(!0);var x=b(H.i,x),V=v?"none":"all",W=M.selectAll("g.nv-wrap.nv-cumulativeLine").data([x]),X=W.enter().append("g").attr("class","nvd3 nv-wrap nv-cumulativeLine").append("g"),Y=W.select("g");if(X.append("g").attr("class","nv-interactive"),X.append("g").attr("class","nv-x nv-axis").style("pointer-events","none"),X.append("g").attr("class","nv-y nv-axis"),X.append("g").attr("class","nv-background"),X.append("g").attr("class","nv-linesWrap").style("pointer-events",V),X.append("g").attr("class","nv-avgLinesWrap").style("pointer-events","none"),X.append("g").attr("class","nv-legendWrap"),X.append("g").attr("class","nv-controlsWrap"),p&&(i.width(O),Y.select(".nv-legendWrap").datum(x).call(i),l.top!=i.height()&&(l.top=i.height(),P=(o||parseInt(M.style("height"))||400)-l.top-l.bottom),Y.select(".nv-legendWrap").attr("transform","translate(0,"+-l.top+")")), +u){var Z=[{key:"Re-scale y-axis",disabled:!w}];j.width(140).color(["#444","#444","#444"]).rightAlign(!1).margin({top:5,right:0,bottom:5,left:20}),Y.select(".nv-controlsWrap").datum(Z).attr("transform","translate(0,"+-l.top+")").call(j)}W.attr("transform","translate("+l.left+","+l.top+")"),s&&Y.select(".nv-y.nv-axis").attr("transform","translate("+O+",0)");var $=x.filter(function(a){return a.tempDisabled});W.select(".tempDisabled").remove(),$.length&&W.append("text").attr("class","tempDisabled").attr("x",O/2).attr("y","-.71em").style("text-anchor","end").text($.map(function(a){return a.key}).join(", ")+" values cannot be calculated for this time period."),v&&(k.width(O).height(P).margin({left:l.left,top:l.top}).svgContainer(M).xScale(d),W.select(".nv-interactive").call(k)),X.select(".nv-background").append("rect"),Y.select(".nv-background rect").attr("width",O).attr("height",P),f.y(function(a){return a.display.y}).width(O).height(P).color(x.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!x[b].disabled&&!x[b].tempDisabled}));var _=Y.select(".nv-linesWrap").datum(x.filter(function(a){return!a.disabled&&!a.tempDisabled}));_.call(f),x.forEach(function(a,b){a.seriesIndex=b});var aa=x.filter(function(a){return!a.disabled&&!!C(a)}),ba=Y.select(".nv-avgLinesWrap").selectAll("line").data(aa,function(a){return a.key}),ca=function(a){var b=e(C(a));return 0>b?0:b>P?P:b};ba.enter().append("line").style("stroke-width",2).style("stroke-dasharray","10,10").style("stroke",function(a,b){return f.color()(a,a.seriesIndex)}).attr("x1",0).attr("x2",O).attr("y1",ca).attr("y2",ca),ba.style("stroke-opacity",function(a){var b=e(C(a));return 0>b||b>P?0:1}).attr("x1",0).attr("x2",O).attr("y1",ca).attr("y2",ca),ba.exit().remove();var da=_.selectAll(".nv-indexLine").data([H]);da.enter().append("rect").attr("class","nv-indexLine").attr("width",3).attr("x",-2).attr("fill","red").attr("fill-opacity",.5).style("pointer-events","all").call(R),da.attr("transform",function(a){return"translate("+G(a.i)+",0)"}).attr("height",P),q&&(g.scale(d).ticks(Math.min(x[0].values.length,O/70)).tickSize(-P,0),Y.select(".nv-x.nv-axis").attr("transform","translate(0,"+e.range()[0]+")"),d3.transition(Y.select(".nv-x.nv-axis")).call(g)),r&&(h.scale(e).ticks(P/36).tickSize(-O,0),d3.transition(Y.select(".nv-y.nv-axis")).call(h)),Y.select(".nv-background rect").on("click",function(){H.x=d3.mouse(this)[0],H.i=Math.round(G.invert(H.x)),z.index=H.i,D.stateChange(z),L()}),f.dispatch.on("elementClick",function(a){H.i=a.pointIndex,H.x=G(H.i),z.index=H.i,D.stateChange(z),L()}),j.dispatch.on("legendClick",function(b,c){b.disabled=!b.disabled,w=!b.disabled,z.rescaleY=w,D.stateChange(z),a.update()}),i.dispatch.on("stateChange",function(b){z.disabled=b.disabled,D.stateChange(z),a.update()}),k.dispatch.on("elementMousemove",function(b){f.clearHighlights();var d,e,i,j=[];if(x.filter(function(a,b){return a.seriesIndex=b,!a.disabled}).forEach(function(g,h){e=c.interactiveBisect(g.values,b.pointXValue,a.x()),f.highlightPoint(h,e,!0);var k=g.values[e];"undefined"!=typeof k&&("undefined"==typeof d&&(d=k),"undefined"==typeof i&&(i=a.xScale()(a.x()(k,e))),j.push({key:g.key,value:a.y()(k,e),color:m(g,g.seriesIndex)}))}),j.length>2){var n=a.yScale().invert(b.mouseY),o=Math.abs(a.yScale().domain()[0]-a.yScale().domain()[1]),p=.03*o,q=c.nearestValueIndex(j.map(function(a){return a.value}),n,p);null!==q&&(j[q].highlight=!0)}var r=g.tickFormat()(a.x()(d,e),e);k.tooltip.position({left:i+l.left,top:b.mouseY+l.top}).chartContainer(N.parentNode).enabled(t).valueFormatter(function(a,b){return h.tickFormat()(a)}).data({value:r,series:j})(),k.renderGuideLine(i)}),k.dispatch.on("elementMouseout",function(a){D.tooltipHide(),f.clearHighlights()}),D.on("tooltipShow",function(a){t&&I(a,N.parentNode)}),D.on("changeState",function(b){"undefined"!=typeof b.disabled&&(x.forEach(function(a,c){a.disabled=b.disabled[c]}),z.disabled=b.disabled),"undefined"!=typeof b.index&&(H.i=b.index,H.x=G(H.i),z.index=b.index,da.data([H])),"undefined"!=typeof b.rescaleY&&(w=b.rescaleY),a.update()})}),a}function b(a,b){return b.map(function(b,c){if(!b.values)return b;var d=b.values[a];if(null==d)return b;var e=f.y()(d,a);return-.95>e&&!F?(b.tempDisabled=!0,b):(b.tempDisabled=!1,b.values=b.values.map(function(a,b){return a.display={y:(f.y()(a,b)-e)/(1+e)},a}),b)})}var d,e,f=c.models.line(),g=c.models.axis(),h=c.models.axis(),i=c.models.legend(),j=c.models.legend(),k=c.interactiveGuideline(),l={top:30,right:30,bottom:50,left:60},m=c.utils.defaultColor(),n=null,o=null,p=!0,q=!0,r=!0,s=!1,t=!0,u=!0,v=!1,w=!0,x=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},y=f.id(),z={index:0,rescaleY:w},A=null,B="No Data Available.",C=function(a){return a.average},D=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),E=250,F=!1;g.orient("bottom").tickPadding(7),h.orient(s?"right":"left"),j.updateState(!1);var G=d3.scale.linear(),H={i:0,x:0},I=function(b,d){var e=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=g.tickFormat()(f.x()(b.point,b.pointIndex)),k=h.tickFormat()(f.y()(b.point,b.pointIndex)),l=x(b.series.key,j,k,b,a);c.tooltip.show([e,i],l,null,null,d)};return f.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+l.left,a.pos[1]+l.top],D.tooltipShow(a)}),f.dispatch.on("elementMouseout.tooltip",function(a){D.tooltipHide(a)}),D.on("tooltipHide",function(){t&&c.tooltip.cleanup()}),a.dispatch=D,a.lines=f,a.legend=i,a.xAxis=g,a.yAxis=h,a.interactiveLayer=k,d3.rebind(a,f,"defined","isArea","x","y","xScale","yScale","size","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","useVoronoi","id"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(l.top="undefined"!=typeof b.top?b.top:l.top,l.right="undefined"!=typeof b.right?b.right:l.right,l.bottom="undefined"!=typeof b.bottom?b.bottom:l.bottom,l.left="undefined"!=typeof b.left?b.left:l.left,a):l},a.width=function(b){return arguments.length?(n=b,a):n},a.height=function(b){return arguments.length?(o=b,a):o},a.color=function(b){return arguments.length?(m=c.utils.getColor(b),i.color(m),a):m},a.rescaleY=function(b){return arguments.length?(w=b,a):w},a.showControls=function(b){return arguments.length?(u=b,a):u},a.useInteractiveGuideline=function(b){return arguments.length?(v=b,b===!0&&(a.interactive(!1),a.useVoronoi(!1)),a):v},a.showLegend=function(b){return arguments.length?(p=b,a):p},a.showXAxis=function(b){return arguments.length?(q=b,a):q},a.showYAxis=function(b){return arguments.length?(r=b,a):r},a.rightAlignYAxis=function(b){return arguments.length?(s=b,h.orient(b?"right":"left"),a):s},a.tooltips=function(b){return arguments.length?(t=b,a):t},a.tooltipContent=function(b){return arguments.length?(x=b,a):x},a.state=function(b){return arguments.length?(z=b,a):z},a.defaultState=function(b){return arguments.length?(A=b,a):A},a.noData=function(b){return arguments.length?(B=b,a):B},a.average=function(b){return arguments.length?(C=b,a):C},a.transitionDuration=function(b){return arguments.length?(E=b,a):E},a.noErrorCheck=function(b){return arguments.length?(F=b,a):F},a},c.models.discreteBar=function(){"use strict";function a(c){return c.each(function(a){var c=j-i.left-i.right,l=k-i.top-i.bottom,w=d3.select(this);a.forEach(function(a,b){a.values.forEach(function(a){a.series=b})});var x=b&&d?[]:a.map(function(a){return a.values.map(function(a,b){return{x:o(a,b),y:p(a,b),y0:a.y0}})});m.domain(b||d3.merge(x).map(function(a){return a.x})).rangeBands(e||[0,c],.1),n.domain(d||d3.extent(d3.merge(x).map(function(a){return a.y}).concat(q))),s?n.range(f||[l-(n.domain()[0]<0?12:0),n.domain()[1]>0?12:0]):n.range(f||[l,0]),g=g||m,h=h||n.copy().range([n(0),n(0)]);var y=w.selectAll("g.nv-wrap.nv-discretebar").data([a]),z=y.enter().append("g").attr("class","nvd3 nv-wrap nv-discretebar"),A=z.append("g");y.select("g");A.append("g").attr("class","nv-groups"),y.attr("transform","translate("+i.left+","+i.top+")");var B=y.select(".nv-groups").selectAll(".nv-group").data(function(a){return a},function(a){return a.key});B.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),B.exit().transition().style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),B.attr("class",function(a,b){return"nv-group nv-series-"+b}).classed("hover",function(a){return a.hover}),B.transition().style("stroke-opacity",1).style("fill-opacity",.75);var C=B.selectAll("g.nv-bar").data(function(a){return a.values});C.exit().remove();var D=C.enter().append("g").attr("transform",function(a,b,c){return"translate("+(m(o(a,b))+.05*m.rangeBand())+", "+n(0)+")"}).on("mouseover",function(b,c){d3.select(this).classed("hover",!0),u.elementMouseover({value:p(b,c),point:b,series:a[b.series],pos:[m(o(b,c))+m.rangeBand()*(b.series+.5)/a.length,n(p(b,c))],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("mouseout",function(b,c){d3.select(this).classed("hover",!1),u.elementMouseout({value:p(b,c),point:b,series:a[b.series],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("click",function(b,c){u.elementClick({value:p(b,c),point:b,series:a[b.series],pos:[m(o(b,c))+m.rangeBand()*(b.series+.5)/a.length,n(p(b,c))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(b,c){u.elementDblClick({value:p(b,c),point:b,series:a[b.series],pos:[m(o(b,c))+m.rangeBand()*(b.series+.5)/a.length,n(p(b,c))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()});D.append("rect").attr("height",0).attr("width",.9*m.rangeBand()/a.length),s?(D.append("text").attr("text-anchor","middle"),C.select("text").text(function(a,b){return t(p(a,b))}).transition().attr("x",.9*m.rangeBand()/2).attr("y",function(a,b){return p(a,b)<0?n(p(a,b))-n(0)+12:-4})):C.selectAll("text").remove(),C.attr("class",function(a,b){return p(a,b)<0?"nv-bar negative":"nv-bar positive"}).style("fill",function(a,b){return a.color||r(a,b)}).style("stroke",function(a,b){return a.color||r(a,b)}).select("rect").attr("class",v).transition().attr("width",.9*m.rangeBand()/a.length),C.transition().attr("transform",function(a,b){var c=m(o(a,b))+.05*m.rangeBand(),d=p(a,b)<0?n(0):n(0)-n(p(a,b))<1?n(0)-1:n(p(a,b));return"translate("+c+", "+d+")"}).select("rect").attr("height",function(a,b){return Math.max(Math.abs(n(p(a,b))-n(d&&d[0]||0))||1)}),g=m.copy(),h=n.copy()}),a}var b,d,e,f,g,h,i={top:0,right:0,bottom:0,left:0},j=960,k=500,l=Math.floor(1e4*Math.random()),m=d3.scale.ordinal(),n=d3.scale.linear(),o=function(a){return a.x},p=function(a){return a.y},q=[0],r=c.utils.defaultColor(),s=!1,t=d3.format(",.2f"),u=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),v="discreteBar";return a.dispatch=u,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(o=b,a):o},a.y=function(b){return arguments.length?(p=b,a):p},a.margin=function(b){return arguments.length?(i.top="undefined"!=typeof b.top?b.top:i.top,i.right="undefined"!=typeof b.right?b.right:i.right,i.bottom="undefined"!=typeof b.bottom?b.bottom:i.bottom,i.left="undefined"!=typeof b.left?b.left:i.left,a):i},a.width=function(b){return arguments.length?(j=b,a):j},a.height=function(b){return arguments.length?(k=b,a):k},a.xScale=function(b){return arguments.length?(m=b,a):m},a.yScale=function(b){return arguments.length?(n=b,a):n},a.xDomain=function(c){return arguments.length?(b=c,a):b},a.yDomain=function(b){return arguments.length?(d=b,a):d},a.xRange=function(b){return arguments.length?(e=b,a):e},a.yRange=function(b){return arguments.length?(f=b,a):f},a.forceY=function(b){return arguments.length?(q=b,a):q},a.color=function(b){return arguments.length?(r=c.utils.getColor(b),a):r},a.id=function(b){return arguments.length?(l=b,a):l},a.showValues=function(b){return arguments.length?(s=b,a):s},a.valueFormat=function(b){return arguments.length?(t=b,a):t},a.rectClass=function(b){return arguments.length?(v=b,a):v},a},c.models.discreteBarChart=function(){"use strict";function a(c){return c.each(function(c){var k=d3.select(this),q=this,v=(i||parseInt(k.style("width"))||960)-h.left-h.right,w=(j||parseInt(k.style("height"))||400)-h.top-h.bottom;if(a.update=function(){s.beforeUpdate(),k.transition().duration(t).call(a)},a.container=this,!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var x=k.selectAll(".nv-noData").data([r]);return x.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),x.attr("x",h.left+v/2).attr("y",h.top+w/2).text(function(a){return a}),a}k.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale().clamp(!0);var y=k.selectAll("g.nv-wrap.nv-discreteBarWithAxes").data([c]),z=y.enter().append("g").attr("class","nvd3 nv-wrap nv-discreteBarWithAxes").append("g"),A=z.append("defs"),B=y.select("g");z.append("g").attr("class","nv-x nv-axis"),z.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),z.append("g").attr("class","nv-barsWrap"),B.attr("transform","translate("+h.left+","+h.top+")"),n&&B.select(".nv-y.nv-axis").attr("transform","translate("+v+",0)"),e.width(v).height(w);var C=B.select(".nv-barsWrap").datum(c.filter(function(a){return!a.disabled}));if(C.transition().call(e),A.append("clipPath").attr("id","nv-x-label-clip-"+e.id()).append("rect"),B.select("#nv-x-label-clip-"+e.id()+" rect").attr("width",b.rangeBand()*(o?2:1)).attr("height",16).attr("x",-b.rangeBand()/(o?1:2)),l){f.scale(b).ticks(v/100).tickSize(-w,0),B.select(".nv-x.nv-axis").attr("transform","translate(0,"+(d.range()[0]+(e.showValues()&&d.domain()[0]<0?16:0))+")"),B.select(".nv-x.nv-axis").transition().call(f);var D=B.select(".nv-x.nv-axis").selectAll("g");o&&D.selectAll("text").attr("transform",function(a,b,c){return"translate(0,"+(c%2==0?"5":"17")+")"})}m&&(g.scale(d).ticks(w/36).tickSize(-v,0),B.select(".nv-y.nv-axis").transition().call(g)),B.select(".nv-zeroLine line").attr("x1",0).attr("x2",v).attr("y1",d(0)).attr("y2",d(0)),s.on("tooltipShow",function(a){p&&u(a,q.parentNode)})}),a}var b,d,e=c.models.discreteBar(),f=c.models.axis(),g=c.models.axis(),h={top:15,right:10,bottom:50,left:60},i=null,j=null,k=c.utils.getColor(),l=!0,m=!0,n=!1,o=!1,p=!0,q=function(a,b,c,d,e){return"

"+b+"

"+c+"

"},r="No Data Available.",s=d3.dispatch("tooltipShow","tooltipHide","beforeUpdate"),t=250;f.orient("bottom").highlightZero(!1).showMaxMin(!1).tickFormat(function(a){return a}),g.orient(n?"right":"left").tickFormat(d3.format(",.1f"));var u=function(b,d){var h=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=f.tickFormat()(e.x()(b.point,b.pointIndex)),k=g.tickFormat()(e.y()(b.point,b.pointIndex)),l=q(b.series.key,j,k,b,a);c.tooltip.show([h,i],l,b.value<0?"n":"s",null,d)};return e.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+h.left,a.pos[1]+h.top],s.tooltipShow(a)}),e.dispatch.on("elementMouseout.tooltip",function(a){s.tooltipHide(a)}),s.on("tooltipHide",function(){p&&c.tooltip.cleanup()}),a.dispatch=s,a.discretebar=e,a.xAxis=f,a.yAxis=g,d3.rebind(a,e,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","id","showValues","valueFormat"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(h.top="undefined"!=typeof b.top?b.top:h.top,h.right="undefined"!=typeof b.right?b.right:h.right,h.bottom="undefined"!=typeof b.bottom?b.bottom:h.bottom,h.left="undefined"!=typeof b.left?b.left:h.left,a):h},a.width=function(b){return arguments.length?(i=b,a):i},a.height=function(b){return arguments.length?(j=b,a):j},a.color=function(b){return arguments.length?(k=c.utils.getColor(b),e.color(k),a):k},a.showXAxis=function(b){return arguments.length?(l=b,a):l},a.showYAxis=function(b){return arguments.length?(m=b,a):m},a.rightAlignYAxis=function(b){return arguments.length?(n=b,g.orient(b?"right":"left"),a):n},a.staggerLabels=function(b){return arguments.length?(o=b,a):o},a.tooltips=function(b){return arguments.length?(p=b,a):p},a.tooltipContent=function(b){return arguments.length?(q=b,a):q},a.noData=function(b){return arguments.length?(r=b,a):r},a.transitionDuration=function(b){return arguments.length?(t=b,a):t},a},c.models.distribution=function(){"use strict";function a(c){return c.each(function(a){var c=(e-("x"===g?d.left+d.right:d.top+d.bottom),"x"==g?"y":"x"),k=d3.select(this);b=b||j;var l=k.selectAll("g.nv-distribution").data([a]),m=l.enter().append("g").attr("class","nvd3 nv-distribution"),n=(m.append("g"),l.select("g"));l.attr("transform","translate("+d.left+","+d.top+")");var o=n.selectAll("g.nv-dist").data(function(a){return a},function(a){return a.key});o.enter().append("g"),o.attr("class",function(a,b){return"nv-dist nv-series-"+b}).style("stroke",function(a,b){return i(a,b)});var p=o.selectAll("line.nv-dist"+g).data(function(a){return a.values});p.enter().append("line").attr(g+"1",function(a,c){return b(h(a,c))}).attr(g+"2",function(a,c){return b(h(a,c))}),o.exit().selectAll("line.nv-dist"+g).transition().attr(g+"1",function(a,b){return j(h(a,b))}).attr(g+"2",function(a,b){return j(h(a,b))}).style("stroke-opacity",0).remove(),p.attr("class",function(a,b){return"nv-dist"+g+" nv-dist"+g+"-"+b}).attr(c+"1",0).attr(c+"2",f),p.transition().attr(g+"1",function(a,b){return j(h(a,b))}).attr(g+"2",function(a,b){return j(h(a,b))}),b=j.copy()}),a}var b,d={top:0,right:0,bottom:0,left:0},e=400,f=8,g="x",h=function(a){return a[g]},i=c.utils.defaultColor(),j=d3.scale.linear();return a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(d.top="undefined"!=typeof b.top?b.top:d.top,d.right="undefined"!=typeof b.right?b.right:d.right,d.bottom="undefined"!=typeof b.bottom?b.bottom:d.bottom,d.left="undefined"!=typeof b.left?b.left:d.left,a):d},a.width=function(b){return arguments.length?(e=b,a):e},a.axis=function(b){return arguments.length?(g=b,a):g},a.size=function(b){return arguments.length?(f=b,a):f},a.getData=function(b){return arguments.length?(h=d3.functor(b),a):h},a.scale=function(b){return arguments.length?(j=b,a):j},a.color=function(b){return arguments.length?(i=c.utils.getColor(b),a):i},a},c.models.historicalBarChart=function(){"use strict";function a(c){return c.each(function(r){var y=d3.select(this),z=this,A=(k||parseInt(y.style("width"))||960)-i.left-i.right,B=(l||parseInt(y.style("height"))||400)-i.top-i.bottom;if(a.update=function(){y.transition().duration(w).call(a)},a.container=this,s.disabled=r.map(function(a){return!!a.disabled}),!t){var C;t={};for(C in s)s[C]instanceof Array?t[C]=s[C].slice(0):t[C]=s[C]}if(!(r&&r.length&&r.filter(function(a){return a.values.length}).length)){var D=y.selectAll(".nv-noData").data([u]);return D.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),D.attr("x",i.left+A/2).attr("y",i.top+B/2).text(function(a){return a}),a}y.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale();var E=y.selectAll("g.nv-wrap.nv-historicalBarChart").data([r]),F=E.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBarChart").append("g"),G=E.select("g");F.append("g").attr("class","nv-x nv-axis"),F.append("g").attr("class","nv-y nv-axis"),F.append("g").attr("class","nv-barsWrap"),F.append("g").attr("class","nv-legendWrap"),m&&(h.width(A),G.select(".nv-legendWrap").datum(r).call(h),i.top!=h.height()&&(i.top=h.height(),B=(l||parseInt(y.style("height"))||400)-i.top-i.bottom),E.select(".nv-legendWrap").attr("transform","translate(0,"+-i.top+")")),E.attr("transform","translate("+i.left+","+i.top+")"),p&&G.select(".nv-y.nv-axis").attr("transform","translate("+A+",0)"),e.width(A).height(B).color(r.map(function(a,b){return a.color||j(a,b)}).filter(function(a,b){return!r[b].disabled}));var H=G.select(".nv-barsWrap").datum(r.filter(function(a){return!a.disabled}));H.transition().call(e),n&&(f.scale(b).tickSize(-B,0),G.select(".nv-x.nv-axis").attr("transform","translate(0,"+d.range()[0]+")"),G.select(".nv-x.nv-axis").transition().call(f)),o&&(g.scale(d).ticks(B/36).tickSize(-A,0),G.select(".nv-y.nv-axis").transition().call(g)),h.dispatch.on("legendClick",function(b,d){b.disabled=!b.disabled,r.filter(function(a){return!a.disabled}).length||r.map(function(a){return a.disabled=!1,E.selectAll(".nv-series").classed("disabled",!1),a}),s.disabled=r.map(function(a){return!!a.disabled}),v.stateChange(s),c.transition().call(a)}),h.dispatch.on("legendDblclick",function(b){r.forEach(function(a){a.disabled=!0}),b.disabled=!1,s.disabled=r.map(function(a){return!!a.disabled}),v.stateChange(s),a.update()}),v.on("tooltipShow",function(a){q&&x(a,z.parentNode)}),v.on("changeState",function(b){"undefined"!=typeof b.disabled&&(r.forEach(function(a,c){a.disabled=b.disabled[c]}),s.disabled=b.disabled),a.update()})}),a}var b,d,e=c.models.historicalBar(),f=c.models.axis(),g=c.models.axis(),h=c.models.legend(),i={top:30,right:90,bottom:50,left:90},j=c.utils.defaultColor(),k=null,l=null,m=!1,n=!0,o=!0,p=!1,q=!0,r=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},s={},t=null,u="No Data Available.",v=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),w=250;f.orient("bottom").tickPadding(7),g.orient(p?"right":"left");var x=function(b,d){if(d){var h=d3.select(d).select("svg"),i=h.node()?h.attr("viewBox"):null;if(i){i=i.split(" ");var j=parseInt(h.style("width"))/i[2];b.pos[0]=b.pos[0]*j,b.pos[1]=b.pos[1]*j}}var k=b.pos[0]+(d.offsetLeft||0),l=b.pos[1]+(d.offsetTop||0),m=f.tickFormat()(e.x()(b.point,b.pointIndex)),n=g.tickFormat()(e.y()(b.point,b.pointIndex)),o=r(b.series.key,m,n,b,a);c.tooltip.show([k,l],o,null,null,d)};return e.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+i.left,a.pos[1]+i.top],v.tooltipShow(a)}),e.dispatch.on("elementMouseout.tooltip",function(a){v.tooltipHide(a)}),v.on("tooltipHide",function(){q&&c.tooltip.cleanup()}),a.dispatch=v,a.bars=e,a.legend=h,a.xAxis=f,a.yAxis=g,d3.rebind(a,e,"defined","isArea","x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","id","interpolate","highlightPoint","clearHighlights","interactive"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(i.top="undefined"!=typeof b.top?b.top:i.top,i.right="undefined"!=typeof b.right?b.right:i.right,i.bottom="undefined"!=typeof b.bottom?b.bottom:i.bottom,i.left="undefined"!=typeof b.left?b.left:i.left,a):i},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.color=function(b){return arguments.length?(j=c.utils.getColor(b),h.color(j),a):j},a.showLegend=function(b){return arguments.length?(m=b,a):m},a.showXAxis=function(b){return arguments.length?(n=b,a):n},a.showYAxis=function(b){return arguments.length?(o=b,a):o},a.rightAlignYAxis=function(b){return arguments.length?(p=b,g.orient(b?"right":"left"),a):p},a.tooltips=function(b){return arguments.length?(q=b,a):q},a.tooltipContent=function(b){return arguments.length?(r=b,a):r},a.state=function(b){return arguments.length?(s=b,a):s},a.defaultState=function(b){return arguments.length?(t=b,a):t},a.noData=function(b){return arguments.length?(u=b,a):u},a.transitionDuration=function(b){return arguments.length?(w=b,a):w},a},c.models.indentedTree=function(){"use strict";function a(b){return b.each(function(b){function c(b,d,e){return d3.event.stopPropagation(),d3.event.shiftKey&&!e?(d3.event.shiftKey=!1,b.values&&b.values.forEach(function(a){(a.values||a._values)&&c(a,0,!0)}),!0):g(b)?(b.values?(b._values=b.values,b.values=null):(b.values=b._values,b._values=null),void a.update()):!0}function d(a){return a._values&&a._values.length?n:a.values&&a.values.length?o:""}function f(a){return a._values&&a._values.length}function g(a){var b=a.values||a._values;return b&&b.length}var s=1,t=d3.select(this),u=d3.layout.tree().children(function(a){return a.values}).size([e,k]);a.update=function(){t.transition().duration(600).call(a)},b[0]||(b[0]={key:j});var v=u.nodes(b[0]),w=d3.select(this).selectAll("div").data([[v]]),x=w.enter().append("div").attr("class","nvd3 nv-wrap nv-indentedtree"),y=x.append("table"),z=w.select("table").attr("width","100%").attr("class",m);if(h){var A=y.append("thead"),B=A.append("tr");l.forEach(function(a){B.append("th").attr("width",a.width?a.width:"10%").style("text-align","numeric"==a.type?"right":"left").append("span").text(a.label)})}var C=z.selectAll("tbody").data(function(a){return a});C.enter().append("tbody"),s=d3.max(v,function(a){return a.depth}),u.size([e,s*k]);var D=C.selectAll("tr").data(function(a){return a.filter(function(a){return i&&!a.children?i(a):!0})},function(a,b){return a.id||a.id||++r});D.exit().remove(),D.select("img.nv-treeicon").attr("src",d).classed("folded",f);var E=D.enter().append("tr");l.forEach(function(a,b){var e=E.append("td").style("padding-left",function(a){return(b?0:a.depth*k+12+(d(a)?0:16))+"px"},"important").style("text-align","numeric"==a.type?"right":"left");0==b&&e.append("img").classed("nv-treeicon",!0).classed("nv-folded",f).attr("src",d).style("width","14px").style("height","14px").style("padding","0 1px").style("display",function(a){return d(a)?"inline-block":"none"}).on("click",c),e.each(function(c){!b&&q(c)?d3.select(this).append("a").attr("href",q).attr("class",d3.functor(a.classes)).append("span"):d3.select(this).append("span"),d3.select(this).select("span").attr("class",d3.functor(a.classes)).text(function(b){return a.format?a.format(b):b[a.key]||"-"})}),a.showCount&&(e.append("span").attr("class","nv-childrenCount"),D.selectAll("span.nv-childrenCount").text(function(a){return a.values&&a.values.length||a._values&&a._values.length?"("+(a.values&&a.values.filter(function(a){return i?i(a):!0}).length||a._values&&a._values.filter(function(a){return i?i(a):!0}).length||0)+")":""}))}),D.order().on("click",function(a){p.elementClick({row:this,data:a,pos:[a.x,a.y]})}).on("dblclick",function(a){p.elementDblclick({row:this,data:a,pos:[a.x,a.y]})}).on("mouseover",function(a){p.elementMouseover({row:this,data:a,pos:[a.x,a.y]})}).on("mouseout",function(a){p.elementMouseout({row:this,data:a,pos:[a.x,a.y]})})}),a}var b={top:0,right:0,bottom:0,left:0},d=960,e=500,f=c.utils.defaultColor(),g=Math.floor(1e4*Math.random()),h=!0,i=!1,j="No Data Available.",k=20,l=[{key:"key",label:"Name",type:"text"}],m=null,n="images/grey-plus.png",o="images/grey-minus.png",p=d3.dispatch("elementClick","elementDblclick","elementMouseover","elementMouseout"),q=function(a){return a.url},r=0;return a.options=c.utils.optionsFunc.bind(a),a.margin=function(c){return arguments.length?(b.top="undefined"!=typeof c.top?c.top:b.top,b.right="undefined"!=typeof c.right?c.right:b.right,b.bottom="undefined"!=typeof c.bottom?c.bottom:b.bottom,b.left="undefined"!=typeof c.left?c.left:b.left,a):b},a.width=function(b){return arguments.length?(d=b,a):d},a.height=function(b){return arguments.length?(e=b,a):e},a.color=function(b){return arguments.length?(f=c.utils.getColor(b),scatter.color(f),a):f},a.id=function(b){return arguments.length?(g=b,a):g},a.header=function(b){return arguments.length?(h=b,a):h},a.noData=function(b){return arguments.length?(j=b,a):j},a.filterZero=function(b){return arguments.length?(i=b,a):i},a.columns=function(b){return arguments.length?(l=b,a):l},a.tableClass=function(b){return arguments.length?(m=b,a):m},a.iconOpen=function(b){return arguments.length?(n=b,a):n},a.iconClose=function(b){return arguments.length?(o=b,a):o},a.getUrl=function(b){return arguments.length?(q=b,a):q},a},c.models.legend=function(){"use strict";function a(m){return m.each(function(a){var m=d-b.left-b.right,n=d3.select(this),o=n.selectAll("g.nv-legend").data([a]),p=(o.enter().append("g").attr("class","nvd3 nv-legend").append("g"),o.select("g"));o.attr("transform","translate("+b.left+","+b.top+")");var q=p.selectAll(".nv-series").data(function(a){return a}),r=q.enter().append("g").attr("class","nv-series").on("mouseover",function(a,b){l.legendMouseover(a,b)}).on("mouseout",function(a,b){l.legendMouseout(a,b)}).on("click",function(b,c){l.legendClick(b,c),j&&(k?(a.forEach(function(a){a.disabled=!0}),b.disabled=!1):(b.disabled=!b.disabled,a.every(function(a){return a.disabled})&&a.forEach(function(a){a.disabled=!1})),l.stateChange({disabled:a.map(function(a){return!!a.disabled})}))}).on("dblclick",function(b,c){l.legendDblclick(b,c),j&&(a.forEach(function(a){a.disabled=!0}),b.disabled=!1,l.stateChange({disabled:a.map(function(a){return!!a.disabled})}))});if(r.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),r.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8"),q.classed("disabled",function(a){return a.disabled}),q.exit().remove(),q.select("circle").style("fill",function(a,b){return a.color||g(a,b)}).style("stroke",function(a,b){return a.color||g(a,b)}),q.select("text").text(f),h){var s=[];q.each(function(a,b){var d,e=d3.select(this).select("text");try{if(d=e.getComputedTextLength(),0>=d)throw Error()}catch(f){d=c.utils.calcApproxTextWidth(e)}s.push(d+28)});for(var t=0,u=0,v=[];m>u&&tm&&t>1;){v=[],t--;for(var w=0;w(v[w%t]||0)&&(v[w%t]=s[w]);u=v.reduce(function(a,b,c,d){return a+b})}for(var x=[],y=0,z=0;t>y;y++)x[y]=z,z+=v[y];q.attr("transform",function(a,b){return"translate("+x[b%t]+","+(5+20*Math.floor(b/t))+")"}),i?p.attr("transform","translate("+(d-b.right-u)+","+b.top+")"):p.attr("transform","translate(0,"+b.top+")"),e=b.top+b.bottom+20*Math.ceil(s.length/t)}else{var A,B=5,C=5,D=0;q.attr("transform",function(a,c){var e=d3.select(this).select("text").node().getComputedTextLength()+28;return A=C,dD&&(D=C),"translate("+A+","+B+")"}),p.attr("transform","translate("+(d-b.right-D)+","+b.top+")"),e=b.top+b.bottom+B+15}}),a}var b={top:5,right:0,bottom:5,left:0},d=400,e=20,f=function(a){return a.key},g=c.utils.defaultColor(),h=!0,i=!0,j=!0,k=!1,l=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange");return a.dispatch=l,a.options=c.utils.optionsFunc.bind(a),a.margin=function(c){return arguments.length?(b.top="undefined"!=typeof c.top?c.top:b.top,b.right="undefined"!=typeof c.right?c.right:b.right,b.bottom="undefined"!=typeof c.bottom?c.bottom:b.bottom,b.left="undefined"!=typeof c.left?c.left:b.left,a):b},a.width=function(b){return arguments.length?(d=b,a):d},a.height=function(b){return arguments.length?(e=b,a):e},a.key=function(b){return arguments.length?(f=b,a):f},a.color=function(b){return arguments.length?(g=c.utils.getColor(b),a):g},a.align=function(b){return arguments.length?(h=b,a):h},a.rightAlign=function(b){return arguments.length?(i=b,a):i},a.updateState=function(b){return arguments.length?(j=b,a):j},a.radioButtonMode=function(b){return arguments.length?(k=b,a):k},a},c.models.line=function(){"use strict";function a(r){return r.each(function(a){var r=g-f.left-f.right,s=h-f.top-f.bottom,t=d3.select(this);b=e.xScale(),d=e.yScale(),p=p||b,q=q||d;var u=t.selectAll("g.nv-wrap.nv-line").data([a]),v=u.enter().append("g").attr("class","nvd3 nv-wrap nv-line"),w=v.append("defs"),x=v.append("g"),y=u.select("g");x.append("g").attr("class","nv-groups"),x.append("g").attr("class","nv-scatterWrap"),u.attr("transform","translate("+f.left+","+f.top+")"),e.width(r).height(s);var z=u.select(".nv-scatterWrap");z.transition().call(e),w.append("clipPath").attr("id","nv-edge-clip-"+e.id()).append("rect"),u.select("#nv-edge-clip-"+e.id()+" rect").attr("width",r).attr("height",s>0?s:0),y.attr("clip-path",n?"url(#nv-edge-clip-"+e.id()+")":""),z.attr("clip-path",n?"url(#nv-edge-clip-"+e.id()+")":"");var A=u.select(".nv-groups").selectAll(".nv-group").data(function(a){return a},function(a){return a.key});A.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),A.exit().remove(),A.attr("class",function(a,b){return"nv-group nv-series-"+b}).classed("hover",function(a){return a.hover}).style("fill",function(a,b){ +return i(a,b)}).style("stroke",function(a,b){return i(a,b)}),A.transition().style("stroke-opacity",1).style("fill-opacity",.5);var B=A.selectAll("path.nv-area").data(function(a){return m(a)?[a]:[]});B.enter().append("path").attr("class","nv-area").attr("d",function(a){return d3.svg.area().interpolate(o).defined(l).x(function(a,b){return c.utils.NaNtoZero(p(j(a,b)))}).y0(function(a,b){return c.utils.NaNtoZero(q(k(a,b)))}).y1(function(a,b){return q(d.domain()[0]<=0?d.domain()[1]>=0?0:d.domain()[1]:d.domain()[0])}).apply(this,[a.values])}),A.exit().selectAll("path.nv-area").remove(),B.transition().attr("d",function(a){return d3.svg.area().interpolate(o).defined(l).x(function(a,d){return c.utils.NaNtoZero(b(j(a,d)))}).y0(function(a,b){return c.utils.NaNtoZero(d(k(a,b)))}).y1(function(a,b){return d(d.domain()[0]<=0?d.domain()[1]>=0?0:d.domain()[1]:d.domain()[0])}).apply(this,[a.values])});var C=A.selectAll("path.nv-line").data(function(a){return[a.values]});C.enter().append("path").attr("class","nv-line").attr("d",d3.svg.line().interpolate(o).defined(l).x(function(a,b){return c.utils.NaNtoZero(p(j(a,b)))}).y(function(a,b){return c.utils.NaNtoZero(q(k(a,b)))})),C.transition().attr("d",d3.svg.line().interpolate(o).defined(l).x(function(a,d){return c.utils.NaNtoZero(b(j(a,d)))}).y(function(a,b){return c.utils.NaNtoZero(d(k(a,b)))})),p=b.copy(),q=d.copy()}),a}var b,d,e=c.models.scatter(),f={top:0,right:0,bottom:0,left:0},g=960,h=500,i=c.utils.defaultColor(),j=function(a){return a.x},k=function(a){return a.y},l=function(a,b){return!isNaN(k(a,b))&&null!==k(a,b)},m=function(a){return a.area},n=!1,o="linear";e.size(16).sizeDomain([16,256]);var p,q;return a.dispatch=e.dispatch,a.scatter=e,d3.rebind(a,e,"id","interactive","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","forceX","forceY","forceSize","clipVoronoi","useVoronoi","clipRadius","padData","highlightPoint","clearHighlights"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(f.top="undefined"!=typeof b.top?b.top:f.top,f.right="undefined"!=typeof b.right?b.right:f.right,f.bottom="undefined"!=typeof b.bottom?b.bottom:f.bottom,f.left="undefined"!=typeof b.left?b.left:f.left,a):f},a.width=function(b){return arguments.length?(g=b,a):g},a.height=function(b){return arguments.length?(h=b,a):h},a.x=function(b){return arguments.length?(j=b,e.x(b),a):j},a.y=function(b){return arguments.length?(k=b,e.y(b),a):k},a.clipEdge=function(b){return arguments.length?(n=b,a):n},a.color=function(b){return arguments.length?(i=c.utils.getColor(b),e.color(i),a):i},a.interpolate=function(b){return arguments.length?(o=b,a):o},a.defined=function(b){return arguments.length?(l=b,a):l},a.isArea=function(b){return arguments.length?(m=d3.functor(b),a):m},a},c.models.lineChart=function(){"use strict";function a(t){return t.each(function(t){var A=d3.select(this),B=this,C=(l||parseInt(A.style("width"))||960)-j.left-j.right,D=(m||parseInt(A.style("height"))||400)-j.top-j.bottom;if(a.update=function(){A.transition().duration(y).call(a)},a.container=this,u.disabled=t.map(function(a){return!!a.disabled}),!v){var E;v={};for(E in u)u[E]instanceof Array?v[E]=u[E].slice(0):v[E]=u[E]}if(!(t&&t.length&&t.filter(function(a){return a.values.length}).length)){var F=A.selectAll(".nv-noData").data([w]);return F.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),F.attr("x",j.left+C/2).attr("y",j.top+D/2).text(function(a){return a}),a}A.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale();var G=A.selectAll("g.nv-wrap.nv-lineChart").data([t]),H=G.enter().append("g").attr("class","nvd3 nv-wrap nv-lineChart").append("g"),I=G.select("g");H.append("rect").style("opacity",0),H.append("g").attr("class","nv-x nv-axis"),H.append("g").attr("class","nv-y nv-axis"),H.append("g").attr("class","nv-linesWrap"),H.append("g").attr("class","nv-legendWrap"),H.append("g").attr("class","nv-interactive"),I.select("rect").attr("width",C).attr("height",D>0?D:0),n&&(h.width(C),I.select(".nv-legendWrap").datum(t).call(h),j.top!=h.height()&&(j.top=h.height(),D=(m||parseInt(A.style("height"))||400)-j.top-j.bottom),G.select(".nv-legendWrap").attr("transform","translate(0,"+-j.top+")")),G.attr("transform","translate("+j.left+","+j.top+")"),q&&I.select(".nv-y.nv-axis").attr("transform","translate("+C+",0)"),r&&(i.width(C).height(D).margin({left:j.left,top:j.top}).svgContainer(A).xScale(b),G.select(".nv-interactive").call(i)),e.width(C).height(D).color(t.map(function(a,b){return a.color||k(a,b)}).filter(function(a,b){return!t[b].disabled}));var J=I.select(".nv-linesWrap").datum(t.filter(function(a){return!a.disabled}));J.transition().call(e),o&&(f.scale(b).ticks(C/100).tickSize(-D,0),I.select(".nv-x.nv-axis").attr("transform","translate(0,"+d.range()[0]+")"),I.select(".nv-x.nv-axis").transition().call(f)),p&&(g.scale(d).ticks(D/36).tickSize(-C,0),I.select(".nv-y.nv-axis").transition().call(g)),h.dispatch.on("stateChange",function(b){u=b,x.stateChange(u),a.update()}),i.dispatch.on("elementMousemove",function(b){e.clearHighlights();var d,h,l,m=[];if(t.filter(function(a,b){return a.seriesIndex=b,!a.disabled}).forEach(function(f,g){h=c.interactiveBisect(f.values,b.pointXValue,a.x()),e.highlightPoint(g,h,!0);var i=f.values[h];"undefined"!=typeof i&&("undefined"==typeof d&&(d=i),"undefined"==typeof l&&(l=a.xScale()(a.x()(i,h))),m.push({key:f.key,value:a.y()(i,h),color:k(f,f.seriesIndex)}))}),m.length>2){var n=a.yScale().invert(b.mouseY),o=Math.abs(a.yScale().domain()[0]-a.yScale().domain()[1]),p=.03*o,q=c.nearestValueIndex(m.map(function(a){return a.value}),n,p);null!==q&&(m[q].highlight=!0)}var r=f.tickFormat()(a.x()(d,h));i.tooltip.position({left:l+j.left,top:b.mouseY+j.top}).chartContainer(B.parentNode).enabled(s).valueFormatter(function(a,b){return g.tickFormat()(a)}).data({value:r,series:m})(),i.renderGuideLine(l)}),i.dispatch.on("elementMouseout",function(a){x.tooltipHide(),e.clearHighlights()}),x.on("tooltipShow",function(a){s&&z(a,B.parentNode)}),x.on("changeState",function(b){"undefined"!=typeof b.disabled&&t.length===b.disabled.length&&(t.forEach(function(a,c){a.disabled=b.disabled[c]}),u.disabled=b.disabled),a.update()})}),a}var b,d,e=c.models.line(),f=c.models.axis(),g=c.models.axis(),h=c.models.legend(),i=c.interactiveGuideline(),j={top:30,right:20,bottom:50,left:60},k=c.utils.defaultColor(),l=null,m=null,n=!0,o=!0,p=!0,q=!1,r=!1,s=!0,t=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},u={},v=null,w="No Data Available.",x=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),y=250;f.orient("bottom").tickPadding(7),g.orient(q?"right":"left");var z=function(b,d){var h=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=f.tickFormat()(e.x()(b.point,b.pointIndex)),k=g.tickFormat()(e.y()(b.point,b.pointIndex)),l=t(b.series.key,j,k,b,a);c.tooltip.show([h,i],l,null,null,d)};return e.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+j.left,a.pos[1]+j.top],x.tooltipShow(a)}),e.dispatch.on("elementMouseout.tooltip",function(a){x.tooltipHide(a)}),x.on("tooltipHide",function(){s&&c.tooltip.cleanup()}),a.dispatch=x,a.lines=e,a.legend=h,a.xAxis=f,a.yAxis=g,a.interactiveLayer=i,d3.rebind(a,e,"defined","isArea","x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","useVoronoi","id","interpolate"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(l=b,a):l},a.height=function(b){return arguments.length?(m=b,a):m},a.color=function(b){return arguments.length?(k=c.utils.getColor(b),h.color(k),a):k},a.showLegend=function(b){return arguments.length?(n=b,a):n},a.showXAxis=function(b){return arguments.length?(o=b,a):o},a.showYAxis=function(b){return arguments.length?(p=b,a):p},a.rightAlignYAxis=function(b){return arguments.length?(q=b,g.orient(b?"right":"left"),a):q},a.useInteractiveGuideline=function(b){return arguments.length?(r=b,b===!0&&(a.interactive(!1),a.useVoronoi(!1)),a):r},a.tooltips=function(b){return arguments.length?(s=b,a):s},a.tooltipContent=function(b){return arguments.length?(t=b,a):t},a.state=function(b){return arguments.length?(u=b,a):u},a.defaultState=function(b){return arguments.length?(v=b,a):v},a.noData=function(b){return arguments.length?(w=b,a):w},a.transitionDuration=function(b){return arguments.length?(y=b,a):y},a},c.models.linePlusBarChart=function(){"use strict";function a(c){return c.each(function(c){var o=d3.select(this),p=this,t=(m||parseInt(o.style("width"))||960)-l.left-l.right,z=(n||parseInt(o.style("height"))||400)-l.top-l.bottom;if(a.update=function(){o.transition().call(a)},u.disabled=c.map(function(a){return!!a.disabled}),!v){var A;v={};for(A in u)u[A]instanceof Array?v[A]=u[A].slice(0):v[A]=u[A]}if(!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var B=o.selectAll(".nv-noData").data([w]);return B.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),B.attr("x",l.left+t/2).attr("y",l.top+z/2).text(function(a){return a}),a}o.selectAll(".nv-noData").remove();var C=c.filter(function(a){return!a.disabled&&a.bar}),D=c.filter(function(a){return!a.bar});b=D.filter(function(a){return!a.disabled}).length&&D.filter(function(a){return!a.disabled})[0].values.length?f.xScale():g.xScale(),d=g.yScale(),e=f.yScale();var E=d3.select(this).selectAll("g.nv-wrap.nv-linePlusBar").data([c]),F=E.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),G=E.select("g");F.append("g").attr("class","nv-x nv-axis"),F.append("g").attr("class","nv-y1 nv-axis"),F.append("g").attr("class","nv-y2 nv-axis"),F.append("g").attr("class","nv-barsWrap"),F.append("g").attr("class","nv-linesWrap"),F.append("g").attr("class","nv-legendWrap"),r&&(k.width(t/2),G.select(".nv-legendWrap").datum(c.map(function(a){return a.originalKey=void 0===a.originalKey?a.key:a.originalKey,a.key=a.originalKey+(a.bar?" (left axis)":" (right axis)"),a})).call(k),l.top!=k.height()&&(l.top=k.height(),z=(n||parseInt(o.style("height"))||400)-l.top-l.bottom),G.select(".nv-legendWrap").attr("transform","translate("+t/2+","+-l.top+")")),E.attr("transform","translate("+l.left+","+l.top+")"),f.width(t).height(z).color(c.map(function(a,b){return a.color||q(a,b)}).filter(function(a,b){return!c[b].disabled&&!c[b].bar})),g.width(t).height(z).color(c.map(function(a,b){return a.color||q(a,b)}).filter(function(a,b){return!c[b].disabled&&c[b].bar}));var H=G.select(".nv-barsWrap").datum(C.length?C:[{values:[]}]),I=G.select(".nv-linesWrap").datum(D[0]&&!D[0].disabled?D:[{values:[]}]);d3.transition(H).call(g),d3.transition(I).call(f),h.scale(b).ticks(t/100).tickSize(-z,0),G.select(".nv-x.nv-axis").attr("transform","translate(0,"+d.range()[0]+")"),d3.transition(G.select(".nv-x.nv-axis")).call(h),i.scale(d).ticks(z/36).tickSize(-t,0),d3.transition(G.select(".nv-y1.nv-axis")).style("opacity",C.length?1:0).call(i),j.scale(e).ticks(z/36).tickSize(C.length?0:-t,0),G.select(".nv-y2.nv-axis").style("opacity",D.length?1:0).attr("transform","translate("+t+",0)"),d3.transition(G.select(".nv-y2.nv-axis")).call(j),k.dispatch.on("stateChange",function(b){u=b,x.stateChange(u),a.update()}),x.on("tooltipShow",function(a){s&&y(a,p.parentNode)}),x.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),u.disabled=b.disabled),a.update()})}),a}var b,d,e,f=c.models.line(),g=c.models.historicalBar(),h=c.models.axis(),i=c.models.axis(),j=c.models.axis(),k=c.models.legend(),l={top:30,right:60,bottom:50,left:60},m=null,n=null,o=function(a){return a.x},p=function(a){return a.y},q=c.utils.defaultColor(),r=!0,s=!0,t=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},u={},v=null,w="No Data Available.",x=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState");g.padData(!0),f.clipEdge(!1).padData(!0),h.orient("bottom").tickPadding(7).highlightZero(!1),i.orient("left"),j.orient("right");var y=function(b,d){var e=b.pos[0]+(d.offsetLeft||0),g=b.pos[1]+(d.offsetTop||0),k=h.tickFormat()(f.x()(b.point,b.pointIndex)),l=(b.series.bar?i:j).tickFormat()(f.y()(b.point,b.pointIndex)),m=t(b.series.key,k,l,b,a);c.tooltip.show([e,g],m,b.value<0?"n":"s",null,d)};return f.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+l.left,a.pos[1]+l.top],x.tooltipShow(a)}),f.dispatch.on("elementMouseout.tooltip",function(a){x.tooltipHide(a)}),g.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+l.left,a.pos[1]+l.top],x.tooltipShow(a)}),g.dispatch.on("elementMouseout.tooltip",function(a){x.tooltipHide(a)}),x.on("tooltipHide",function(){s&&c.tooltip.cleanup()}),a.dispatch=x,a.legend=k,a.lines=f,a.bars=g,a.xAxis=h,a.y1Axis=i,a.y2Axis=j,d3.rebind(a,f,"defined","size","clipVoronoi","interpolate"),a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(o=b,f.x(b),g.x(b),a):o},a.y=function(b){return arguments.length?(p=b,f.y(b),g.y(b),a):p},a.margin=function(b){return arguments.length?(l.top="undefined"!=typeof b.top?b.top:l.top,l.right="undefined"!=typeof b.right?b.right:l.right,l.bottom="undefined"!=typeof b.bottom?b.bottom:l.bottom,l.left="undefined"!=typeof b.left?b.left:l.left,a):l},a.width=function(b){return arguments.length?(m=b,a):m},a.height=function(b){return arguments.length?(n=b,a):n},a.color=function(b){return arguments.length?(q=c.utils.getColor(b),k.color(q),a):q},a.showLegend=function(b){return arguments.length?(r=b,a):r},a.tooltips=function(b){return arguments.length?(s=b,a):s},a.tooltipContent=function(b){return arguments.length?(t=b,a):t},a.state=function(b){return arguments.length?(u=b,a):u},a.defaultState=function(b){return arguments.length?(v=b,a):v},a.noData=function(b){return arguments.length?(w=b,a):w},a},c.models.lineWithFocusChart=function(){"use strict";function a(c){return c.each(function(c){function x(a){var b=+("e"==a),c=b?1:-1,d=I/3;return"M"+.5*c+","+d+"A6,6 0 0 "+b+" "+6.5*c+","+(d+6)+"V"+(2*d-6)+"A6,6 0 0 "+b+" "+.5*c+","+2*d+"ZM"+2.5*c+","+(d+8)+"V"+(2*d-8)+"M"+4.5*c+","+(d+8)+"V"+(2*d-8)}function C(){n.empty()||n.extent(v),Q.data([n.empty()?e.domain():v]).each(function(a,c){var d=e(a[0])-b.range()[0],f=b.range()[1]-e(a[1]);d3.select(this).select(".left").attr("width",0>d?0:d),d3.select(this).select(".right").attr("x",e(a[1])).attr("width",0>f?0:f)})}function D(){v=n.empty()?null:n.extent();var a=n.empty()?e.domain():n.extent();if(!(Math.abs(a[0]-a[1])<=1)){z.brush({extent:a,brush:n}),C();var b=M.select(".nv-focus .nv-linesWrap").datum(c.filter(function(a){return!a.disabled}).map(function(b,c){return{key:b.key,values:b.values.filter(function(b,c){return g.x()(b,c)>=a[0]&&g.x()(b,c)<=a[1]})}}));b.transition().duration(A).call(g),M.select(".nv-focus .nv-x.nv-axis").transition().duration(A).call(i),M.select(".nv-focus .nv-y.nv-axis").transition().duration(A).call(j)}}var E=d3.select(this),F=this,G=(r||parseInt(E.style("width"))||960)-o.left-o.right,H=(s||parseInt(E.style("height"))||400)-o.top-o.bottom-t,I=t-p.top-p.bottom;if(a.update=function(){E.transition().duration(A).call(a)},a.container=this,!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var J=E.selectAll(".nv-noData").data([y]);return J.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),J.attr("x",o.left+G/2).attr("y",o.top+H/2).text(function(a){return a}),a}E.selectAll(".nv-noData").remove(),b=g.xScale(),d=g.yScale(),e=h.xScale(),f=h.yScale();var K=E.selectAll("g.nv-wrap.nv-lineWithFocusChart").data([c]),L=K.enter().append("g").attr("class","nvd3 nv-wrap nv-lineWithFocusChart").append("g"),M=K.select("g");L.append("g").attr("class","nv-legendWrap");var N=L.append("g").attr("class","nv-focus");N.append("g").attr("class","nv-x nv-axis"),N.append("g").attr("class","nv-y nv-axis"),N.append("g").attr("class","nv-linesWrap");var O=L.append("g").attr("class","nv-context");O.append("g").attr("class","nv-x nv-axis"),O.append("g").attr("class","nv-y nv-axis"),O.append("g").attr("class","nv-linesWrap"),O.append("g").attr("class","nv-brushBackground"),O.append("g").attr("class","nv-x nv-brush"),u&&(m.width(G),M.select(".nv-legendWrap").datum(c).call(m),o.top!=m.height()&&(o.top=m.height(),H=(s||parseInt(E.style("height"))||400)-o.top-o.bottom-t),M.select(".nv-legendWrap").attr("transform","translate(0,"+-o.top+")")),K.attr("transform","translate("+o.left+","+o.top+")"),g.width(G).height(H).color(c.map(function(a,b){return a.color||q(a,b)}).filter(function(a,b){return!c[b].disabled})),h.defined(g.defined()).width(G).height(I).color(c.map(function(a,b){return a.color||q(a,b)}).filter(function(a,b){return!c[b].disabled})),M.select(".nv-context").attr("transform","translate(0,"+(H+o.bottom+p.top)+")");var P=M.select(".nv-context .nv-linesWrap").datum(c.filter(function(a){return!a.disabled}));d3.transition(P).call(h),i.scale(b).ticks(G/100).tickSize(-H,0),j.scale(d).ticks(H/36).tickSize(-G,0),M.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+H+")"),n.x(e).on("brush",function(){var b=a.transitionDuration();a.transitionDuration(0),D(),a.transitionDuration(b)}),v&&n.extent(v);var Q=M.select(".nv-brushBackground").selectAll("g").data([v||n.extent()]),R=Q.enter().append("g");R.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",I),R.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",I);var S=M.select(".nv-x.nv-brush").call(n);S.selectAll("rect").attr("height",I),S.selectAll(".resize").append("path").attr("d",x),D(),k.scale(e).ticks(G/100).tickSize(-I,0),M.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+f.range()[0]+")"),d3.transition(M.select(".nv-context .nv-x.nv-axis")).call(k),l.scale(f).ticks(I/36).tickSize(-G,0),d3.transition(M.select(".nv-context .nv-y.nv-axis")).call(l),M.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+f.range()[0]+")"),m.dispatch.on("stateChange",function(b){a.update()}),z.on("tooltipShow",function(a){w&&B(a,F.parentNode)})}),a}var b,d,e,f,g=c.models.line(),h=c.models.line(),i=c.models.axis(),j=c.models.axis(),k=c.models.axis(),l=c.models.axis(),m=c.models.legend(),n=d3.svg.brush(),o={top:30,right:30,bottom:30,left:60},p={top:0,right:30,bottom:20,left:60},q=c.utils.defaultColor(),r=null,s=null,t=100,u=!0,v=null,w=!0,x=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},y="No Data Available.",z=d3.dispatch("tooltipShow","tooltipHide","brush"),A=250;g.clipEdge(!0),h.interactive(!1),i.orient("bottom").tickPadding(5),j.orient("left"),k.orient("bottom").tickPadding(5),l.orient("left");var B=function(b,d){var e=b.pos[0]+(d.offsetLeft||0),f=b.pos[1]+(d.offsetTop||0),h=i.tickFormat()(g.x()(b.point,b.pointIndex)),k=j.tickFormat()(g.y()(b.point,b.pointIndex)),l=x(b.series.key,h,k,b,a);c.tooltip.show([e,f],l,null,null,d)};return g.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+o.left,a.pos[1]+o.top],z.tooltipShow(a)}),g.dispatch.on("elementMouseout.tooltip",function(a){z.tooltipHide(a)}),z.on("tooltipHide",function(){w&&c.tooltip.cleanup()}),a.dispatch=z,a.legend=m,a.lines=g,a.lines2=h,a.xAxis=i,a.yAxis=j,a.x2Axis=k,a.y2Axis=l,d3.rebind(a,g,"defined","isArea","size","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","id"),a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(g.x(b),h.x(b),a):g.x},a.y=function(b){return arguments.length?(g.y(b),h.y(b),a):g.y},a.margin=function(b){return arguments.length?(o.top="undefined"!=typeof b.top?b.top:o.top,o.right="undefined"!=typeof b.right?b.right:o.right,o.bottom="undefined"!=typeof b.bottom?b.bottom:o.bottom,o.left="undefined"!=typeof b.left?b.left:o.left,a):o},a.margin2=function(b){return arguments.length?(p=b,a):p},a.width=function(b){return arguments.length?(r=b,a):r},a.height=function(b){return arguments.length?(s=b,a):s},a.height2=function(b){return arguments.length?(t=b,a):t},a.color=function(b){return arguments.length?(q=c.utils.getColor(b),m.color(q),a):q},a.showLegend=function(b){return arguments.length?(u=b,a):u},a.tooltips=function(b){return arguments.length?(w=b,a):w},a.tooltipContent=function(b){return arguments.length?(x=b,a):x},a.interpolate=function(b){return arguments.length?(g.interpolate(b),h.interpolate(b),a):g.interpolate()},a.noData=function(b){return arguments.length?(y=b,a):y},a.xTickFormat=function(b){return arguments.length?(i.tickFormat(b),k.tickFormat(b),a):i.tickFormat()},a.yTickFormat=function(b){return arguments.length?(j.tickFormat(b),l.tickFormat(b),a):j.tickFormat()},a.brushExtent=function(b){return arguments.length?(v=b,a):v},a.transitionDuration=function(b){return arguments.length?(A=b,a):A},a},c.models.linePlusBarWithFocusChart=function(){"use strict";function a(c){return c.each(function(c){function G(a){var b=+("e"==a),c=b?1:-1,d=R/3;return"M"+.5*c+","+d+"A6,6 0 0 "+b+" "+6.5*c+","+(d+6)+"V"+(2*d-6)+"A6,6 0 0 "+b+" "+.5*c+","+2*d+"ZM"+2.5*c+","+(d+8)+"V"+(2*d-8)+"M"+4.5*c+","+(d+8)+"V"+(2*d-8)}function L(){u.empty()||u.extent(E),ca.data([u.empty()?e.domain():E]).each(function(a,b){var c=e(a[0])-e.range()[0],d=e.range()[1]-e(a[1]);d3.select(this).select(".left").attr("width",0>c?0:c),d3.select(this).select(".right").attr("x",e(a[1])).attr("width",0>d?0:d)})}function M(){E=u.empty()?null:u.extent(),b=u.empty()?e.domain():u.extent(),I.brush({extent:b,brush:u}),L(),l.width(P).height(Q).color(c.map(function(a,b){return a.color||C(a,b)}).filter(function(a,b){return!c[b].disabled&&c[b].bar})),j.width(P).height(Q).color(c.map(function(a,b){return a.color||C(a,b)}).filter(function(a,b){return!c[b].disabled&&!c[b].bar}));var a=Z.select(".nv-focus .nv-barsWrap").datum(T.length?T.map(function(a,c){return{key:a.key,values:a.values.filter(function(a,c){return l.x()(a,c)>=b[0]&&l.x()(a,c)<=b[1]})}}):[{values:[]}]),h=Z.select(".nv-focus .nv-linesWrap").datum(U[0].disabled?[{values:[]}]:U.map(function(a,c){return{key:a.key,values:a.values.filter(function(a,c){return j.x()(a,c)>=b[0]&&j.x()(a,c)<=b[1]})}}));d=T.length?l.xScale():j.xScale(),n.scale(d).ticks(P/100).tickSize(-Q,0),n.domain([Math.ceil(b[0]),Math.floor(b[1])]),Z.select(".nv-x.nv-axis").transition().duration(J).call(n),a.transition().duration(J).call(l),h.transition().duration(J).call(j),Z.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+f.range()[0]+")"),p.scale(f).ticks(Q/36).tickSize(-P,0),Z.select(".nv-focus .nv-y1.nv-axis").style("opacity",T.length?1:0),q.scale(g).ticks(Q/36).tickSize(T.length?0:-P,0),Z.select(".nv-focus .nv-y2.nv-axis").style("opacity",U.length?1:0).attr("transform","translate("+d.range()[1]+",0)"),Z.select(".nv-focus .nv-y1.nv-axis").transition().duration(J).call(p),Z.select(".nv-focus .nv-y2.nv-axis").transition().duration(J).call(q)}var N=d3.select(this),O=this,P=(x||parseInt(N.style("width"))||960)-v.left-v.right,Q=(y||parseInt(N.style("height"))||400)-v.top-v.bottom-z,R=z-w.top-w.bottom;if(a.update=function(){N.transition().duration(J).call(a)},a.container=this,!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var S=N.selectAll(".nv-noData").data([H]);return S.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),S.attr("x",v.left+P/2).attr("y",v.top+Q/2).text(function(a){return a}),a}N.selectAll(".nv-noData").remove();var T=c.filter(function(a){return!a.disabled&&a.bar}),U=c.filter(function(a){return!a.bar});d=l.xScale(),e=o.scale(),f=l.yScale(),g=j.yScale(),h=m.yScale(),i=k.yScale();var V=c.filter(function(a){return!a.disabled&&a.bar}).map(function(a){return a.values.map(function(a,b){return{x:A(a,b),y:B(a,b)}})}),W=c.filter(function(a){return!a.disabled&&!a.bar}).map(function(a){return a.values.map(function(a,b){return{x:A(a,b),y:B(a,b)}})});d.range([0,P]),e.domain(d3.extent(d3.merge(V.concat(W)),function(a){return a.x})).range([0,P]);var X=N.selectAll("g.nv-wrap.nv-linePlusBar").data([c]),Y=X.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),Z=X.select("g");Y.append("g").attr("class","nv-legendWrap");var $=Y.append("g").attr("class","nv-focus");$.append("g").attr("class","nv-x nv-axis"),$.append("g").attr("class","nv-y1 nv-axis"),$.append("g").attr("class","nv-y2 nv-axis"),$.append("g").attr("class","nv-barsWrap"),$.append("g").attr("class","nv-linesWrap");var _=Y.append("g").attr("class","nv-context");_.append("g").attr("class","nv-x nv-axis"),_.append("g").attr("class","nv-y1 nv-axis"),_.append("g").attr("class","nv-y2 nv-axis"),_.append("g").attr("class","nv-barsWrap"),_.append("g").attr("class","nv-linesWrap"),_.append("g").attr("class","nv-brushBackground"),_.append("g").attr("class","nv-x nv-brush"),D&&(t.width(P/2),Z.select(".nv-legendWrap").datum(c.map(function(a){return a.originalKey=void 0===a.originalKey?a.key:a.originalKey,a.key=a.originalKey+(a.bar?" (left axis)":" (right axis)"),a})).call(t),v.top!=t.height()&&(v.top=t.height(),Q=(y||parseInt(N.style("height"))||400)-v.top-v.bottom-z),Z.select(".nv-legendWrap").attr("transform","translate("+P/2+","+-v.top+")")),X.attr("transform","translate("+v.left+","+v.top+")"),m.width(P).height(R).color(c.map(function(a,b){return a.color||C(a,b)}).filter(function(a,b){return!c[b].disabled&&c[b].bar})),k.width(P).height(R).color(c.map(function(a,b){return a.color||C(a,b)}).filter(function(a,b){return!c[b].disabled&&!c[b].bar}));var aa=Z.select(".nv-context .nv-barsWrap").datum(T.length?T:[{values:[]}]),ba=Z.select(".nv-context .nv-linesWrap").datum(U[0].disabled?[{values:[]}]:U);Z.select(".nv-context").attr("transform","translate(0,"+(Q+v.bottom+w.top)+")"),aa.transition().call(m),ba.transition().call(k),u.x(e).on("brush",M),E&&u.extent(E);var ca=Z.select(".nv-brushBackground").selectAll("g").data([E||u.extent()]),da=ca.enter().append("g");da.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",R),da.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",R);var ea=Z.select(".nv-x.nv-brush").call(u);ea.selectAll("rect").attr("height",R),ea.selectAll(".resize").append("path").attr("d",G),o.ticks(P/100).tickSize(-R,0),Z.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+h.range()[0]+")"),Z.select(".nv-context .nv-x.nv-axis").transition().call(o),r.scale(h).ticks(R/36).tickSize(-P,0),Z.select(".nv-context .nv-y1.nv-axis").style("opacity",T.length?1:0).attr("transform","translate(0,"+e.range()[0]+")"),Z.select(".nv-context .nv-y1.nv-axis").transition().call(r),s.scale(i).ticks(R/36).tickSize(T.length?0:-P,0),Z.select(".nv-context .nv-y2.nv-axis").style("opacity",U.length?1:0).attr("transform","translate("+e.range()[1]+",0)"),Z.select(".nv-context .nv-y2.nv-axis").transition().call(s),t.dispatch.on("stateChange",function(b){a.update()}),I.on("tooltipShow",function(a){F&&K(a,O.parentNode)}),M()}),a}var b,d,e,f,g,h,i,j=c.models.line(),k=c.models.line(),l=c.models.historicalBar(),m=c.models.historicalBar(),n=c.models.axis(),o=c.models.axis(),p=c.models.axis(),q=c.models.axis(),r=c.models.axis(),s=c.models.axis(),t=c.models.legend(),u=d3.svg.brush(),v={top:30,right:30,bottom:30,left:60},w={top:0,right:30,bottom:20,left:60},x=null,y=null,z=100,A=function(a){return a.x},B=function(a){return a.y},C=c.utils.defaultColor(),D=!0,E=null,F=!0,G=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},H="No Data Available.",I=d3.dispatch("tooltipShow","tooltipHide","brush"),J=0;j.clipEdge(!0),k.interactive(!1),n.orient("bottom").tickPadding(5),p.orient("left"),q.orient("right"),o.orient("bottom").tickPadding(5),r.orient("left"),s.orient("right");var K=function(d,e){b&&(d.pointIndex+=Math.ceil(b[0]));var f=d.pos[0]+(e.offsetLeft||0),g=d.pos[1]+(e.offsetTop||0),h=n.tickFormat()(j.x()(d.point,d.pointIndex)),i=(d.series.bar?p:q).tickFormat()(j.y()(d.point,d.pointIndex)),k=G(d.series.key,h,i,d,a);c.tooltip.show([f,g],k,d.value<0?"n":"s",null,e)};return j.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+v.left,a.pos[1]+v.top],I.tooltipShow(a)}),j.dispatch.on("elementMouseout.tooltip",function(a){I.tooltipHide(a)}),l.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+v.left,a.pos[1]+v.top],I.tooltipShow(a)}),l.dispatch.on("elementMouseout.tooltip",function(a){I.tooltipHide(a)}),I.on("tooltipHide",function(){F&&c.tooltip.cleanup()}),a.dispatch=I,a.legend=t,a.lines=j,a.lines2=k,a.bars=l,a.bars2=m,a.xAxis=n,a.x2Axis=o,a.y1Axis=p,a.y2Axis=q,a.y3Axis=r,a.y4Axis=s,d3.rebind(a,j,"defined","size","clipVoronoi","interpolate"),a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(A=b,j.x(b),l.x(b),a):A},a.y=function(b){return arguments.length?(B=b,j.y(b),l.y(b),a):B},a.margin=function(b){return arguments.length?(v.top="undefined"!=typeof b.top?b.top:v.top,v.right="undefined"!=typeof b.right?b.right:v.right,v.bottom="undefined"!=typeof b.bottom?b.bottom:v.bottom,v.left="undefined"!=typeof b.left?b.left:v.left,a):v},a.width=function(b){return arguments.length?(x=b,a):x},a.height=function(b){return arguments.length?(y=b,a):y},a.color=function(b){return arguments.length?(C=c.utils.getColor(b),t.color(C),a):C},a.showLegend=function(b){return arguments.length?(D=b,a):D},a.tooltips=function(b){return arguments.length?(F=b,a):F},a.tooltipContent=function(b){return arguments.length?(G=b,a):G},a.noData=function(b){return arguments.length?(H=b,a):H},a.brushExtent=function(b){return arguments.length?(E=b,a):E},a},c.models.multiBar=function(){"use strict";function a(c){return c.each(function(a){var c=k-j.left-j.right,B=l-j.top-j.bottom,C=d3.select(this);w&&a.length&&(w=[{values:a[0].values.map(function(a){return{x:a.x,y:0,series:a.series,size:.01}})}]),t&&(a=d3.layout.stack().offset(u).values(function(a){return a.values}).y(q)(!a.length&&w?w:a)),a.forEach(function(a,b){a.values.forEach(function(a){a.series=b})}),t&&a[0].values.map(function(b,c){var d=0,e=0;a.map(function(a){var b=a.values[c];b.size=Math.abs(b.y),b.y<0?(b.y1=e,e-=b.size):(b.y1=b.size+d,d+=b.size)})});var D=d&&e?[]:a.map(function(a){return a.values.map(function(a,b){return{x:p(a,b),y:q(a,b),y0:a.y0,y1:a.y1}})});m.domain(d||d3.merge(D).map(function(a){return a.x})).rangeBands(f||[0,c],z),n.domain(e||d3.extent(d3.merge(D).map(function(a){return t?a.y>0?a.y1:a.y1+a.y:a.y}).concat(r))).range(g||[B,0]),m.domain()[0]===m.domain()[1]&&(m.domain()[0]?m.domain([m.domain()[0]-.01*m.domain()[0],m.domain()[1]+.01*m.domain()[1]]):m.domain([-1,1])),n.domain()[0]===n.domain()[1]&&(n.domain()[0]?n.domain([n.domain()[0]+.01*n.domain()[0],n.domain()[1]-.01*n.domain()[1]]):n.domain([-1,1])),h=h||m,i=i||n;var E=C.selectAll("g.nv-wrap.nv-multibar").data([a]),F=E.enter().append("g").attr("class","nvd3 nv-wrap nv-multibar"),G=F.append("defs"),H=F.append("g"),I=E.select("g");H.append("g").attr("class","nv-groups"),E.attr("transform","translate("+j.left+","+j.top+")"),G.append("clipPath").attr("id","nv-edge-clip-"+o).append("rect"),E.select("#nv-edge-clip-"+o+" rect").attr("width",c).attr("height",B),I.attr("clip-path",s?"url(#nv-edge-clip-"+o+")":"");var J=E.select(".nv-groups").selectAll(".nv-group").data(function(a){return a},function(a,b){return b});J.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),J.exit().transition().selectAll("rect.nv-bar").delay(function(b,c){return c*y/a[0].values.length}).attr("y",function(a){return i(t?a.y0:0)}).attr("height",0).remove(),J.attr("class",function(a,b){return"nv-group nv-series-"+b}).classed("hover",function(a){return a.hover}).style("fill",function(a,b){return v(a,b)}).style("stroke",function(a,b){return v(a,b)}),J.transition().style("stroke-opacity",1).style("fill-opacity",.75);var K=J.selectAll("rect.nv-bar").data(function(b){return w&&!a.length?w.values:b.values; +});K.exit().remove();K.enter().append("rect").attr("class",function(a,b){return q(a,b)<0?"nv-bar negative":"nv-bar positive"}).attr("x",function(b,c,d){return t?0:d*m.rangeBand()/a.length}).attr("y",function(a){return i(t?a.y0:0)}).attr("height",0).attr("width",m.rangeBand()/(t?1:a.length)).attr("transform",function(a,b){return"translate("+m(p(a,b))+",0)"});K.style("fill",function(a,b,c){return v(a,c,b)}).style("stroke",function(a,b,c){return v(a,c,b)}).on("mouseover",function(b,c){d3.select(this).classed("hover",!0),A.elementMouseover({value:q(b,c),point:b,series:a[b.series],pos:[m(p(b,c))+m.rangeBand()*(t?a.length/2:b.series+.5)/a.length,n(q(b,c)+(t?b.y0:0))],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("mouseout",function(b,c){d3.select(this).classed("hover",!1),A.elementMouseout({value:q(b,c),point:b,series:a[b.series],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("click",function(b,c){A.elementClick({value:q(b,c),point:b,series:a[b.series],pos:[m(p(b,c))+m.rangeBand()*(t?a.length/2:b.series+.5)/a.length,n(q(b,c)+(t?b.y0:0))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(b,c){A.elementDblClick({value:q(b,c),point:b,series:a[b.series],pos:[m(p(b,c))+m.rangeBand()*(t?a.length/2:b.series+.5)/a.length,n(q(b,c)+(t?b.y0:0))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()}),K.attr("class",function(a,b){return q(a,b)<0?"nv-bar negative":"nv-bar positive"}).transition().attr("transform",function(a,b){return"translate("+m(p(a,b))+",0)"}),x&&(b||(b=a.map(function(){return!0})),K.style("fill",function(a,c,d){return d3.rgb(x(a,c)).darker(b.map(function(a,b){return b}).filter(function(a,c){return!b[c]})[d]).toString()}).style("stroke",function(a,c,d){return d3.rgb(x(a,c)).darker(b.map(function(a,b){return b}).filter(function(a,c){return!b[c]})[d]).toString()})),t?K.transition().delay(function(b,c){return c*y/a[0].values.length}).attr("y",function(a,b){return n(t?a.y1:0)}).attr("height",function(a,b){return Math.max(Math.abs(n(a.y+(t?a.y0:0))-n(t?a.y0:0)),1)}).attr("x",function(b,c){return t?0:b.series*m.rangeBand()/a.length}).attr("width",m.rangeBand()/(t?1:a.length)):K.transition().delay(function(b,c){return c*y/a[0].values.length}).attr("x",function(b,c){return b.series*m.rangeBand()/a.length}).attr("width",m.rangeBand()/a.length).attr("y",function(a,b){return q(a,b)<0?n(0):n(0)-n(q(a,b))<1?n(0)-1:n(q(a,b))||0}).attr("height",function(a,b){return Math.max(Math.abs(n(q(a,b))-n(0)),1)||0}),h=m.copy(),i=n.copy()}),a}var b,d,e,f,g,h,i,j={top:0,right:0,bottom:0,left:0},k=960,l=500,m=d3.scale.ordinal(),n=d3.scale.linear(),o=Math.floor(1e4*Math.random()),p=function(a){return a.x},q=function(a){return a.y},r=[0],s=!0,t=!1,u="zero",v=c.utils.defaultColor(),w=!1,x=null,y=1200,z=.1,A=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return a.dispatch=A,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(p=b,a):p},a.y=function(b){return arguments.length?(q=b,a):q},a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.xScale=function(b){return arguments.length?(m=b,a):m},a.yScale=function(b){return arguments.length?(n=b,a):n},a.xDomain=function(b){return arguments.length?(d=b,a):d},a.yDomain=function(b){return arguments.length?(e=b,a):e},a.xRange=function(b){return arguments.length?(f=b,a):f},a.yRange=function(b){return arguments.length?(g=b,a):g},a.forceY=function(b){return arguments.length?(r=b,a):r},a.stacked=function(b){return arguments.length?(t=b,a):t},a.stackOffset=function(b){return arguments.length?(u=b,a):u},a.clipEdge=function(b){return arguments.length?(s=b,a):s},a.color=function(b){return arguments.length?(v=c.utils.getColor(b),a):v},a.barColor=function(b){return arguments.length?(x=c.utils.getColor(b),a):x},a.disabled=function(c){return arguments.length?(b=c,a):b},a.id=function(b){return arguments.length?(o=b,a):o},a.hideable=function(b){return arguments.length?(w=b,a):w},a.delay=function(b){return arguments.length?(y=b,a):y},a.groupSpacing=function(b){return arguments.length?(z=b,a):z},a},c.models.multiBarChart=function(){"use strict";function a(c){return c.each(function(c){var w=d3.select(this),E=this,F=(k||parseInt(w.style("width"))||960)-j.left-j.right,G=(l||parseInt(w.style("height"))||400)-j.top-j.bottom;if(a.update=function(){w.transition().duration(C).call(a)},a.container=this,x.disabled=c.map(function(a){return!!a.disabled}),!y){var H;y={};for(H in x)x[H]instanceof Array?y[H]=x[H].slice(0):y[H]=x[H]}if(!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var I=w.selectAll(".nv-noData").data([z]);return I.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),I.attr("x",j.left+F/2).attr("y",j.top+G/2).text(function(a){return a}),a}w.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale();var J=w.selectAll("g.nv-wrap.nv-multiBarWithLegend").data([c]),K=J.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarWithLegend").append("g"),L=J.select("g");if(K.append("g").attr("class","nv-x nv-axis"),K.append("g").attr("class","nv-y nv-axis"),K.append("g").attr("class","nv-barsWrap"),K.append("g").attr("class","nv-legendWrap"),K.append("g").attr("class","nv-controlsWrap"),o&&(h.width(F-B()),e.barColor()&&c.forEach(function(a,b){a.color=d3.rgb("#ccc").darker(1.5*b).toString()}),L.select(".nv-legendWrap").datum(c).call(h),j.top!=h.height()&&(j.top=h.height(),G=(l||parseInt(w.style("height"))||400)-j.top-j.bottom),L.select(".nv-legendWrap").attr("transform","translate("+B()+","+-j.top+")")),n){var M=[{key:"Grouped",disabled:e.stacked()},{key:"Stacked",disabled:!e.stacked()}];i.width(B()).color(["#444","#444","#444"]),L.select(".nv-controlsWrap").datum(M).attr("transform","translate(0,"+-j.top+")").call(i)}J.attr("transform","translate("+j.left+","+j.top+")"),r&&L.select(".nv-y.nv-axis").attr("transform","translate("+F+",0)"),e.disabled(c.map(function(a){return a.disabled})).width(F).height(G).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled}));var N=L.select(".nv-barsWrap").datum(c.filter(function(a){return!a.disabled}));if(N.transition().call(e),p){f.scale(b).ticks(F/100).tickSize(-G,0),L.select(".nv-x.nv-axis").attr("transform","translate(0,"+d.range()[0]+")"),L.select(".nv-x.nv-axis").transition().call(f);var O=L.select(".nv-x.nv-axis > g").selectAll("g");if(O.selectAll("line, text").style("opacity",1),t){var P=function(a,b){return"translate("+a+","+b+")"},Q=5,R=17;O.selectAll("text").attr("transform",function(a,b,c){return P(0,c%2==0?Q:R)});var S=d3.selectAll(".nv-x.nv-axis .nv-wrap g g text")[0].length;L.selectAll(".nv-x.nv-axis .nv-axisMaxMin text").attr("transform",function(a,b){return P(0,0===b||S%2!==0?R:Q)})}s&&O.filter(function(a,b){return b%Math.ceil(c[0].values.length/(F/100))!==0}).selectAll("text, line").style("opacity",0),u&&O.selectAll(".tick text").attr("transform","rotate("+u+" 0,0)").style("text-anchor",u>0?"start":"end"),L.select(".nv-x.nv-axis").selectAll("g.nv-axisMaxMin text").style("opacity",1)}q&&(g.scale(d).ticks(G/36).tickSize(-F,0),L.select(".nv-y.nv-axis").transition().call(g)),h.dispatch.on("stateChange",function(b){x=b,A.stateChange(x),a.update()}),i.dispatch.on("legendClick",function(b,c){if(b.disabled){switch(M=M.map(function(a){return a.disabled=!0,a}),b.disabled=!1,b.key){case"Grouped":e.stacked(!1);break;case"Stacked":e.stacked(!0)}x.stacked=e.stacked(),A.stateChange(x),a.update()}}),A.on("tooltipShow",function(a){v&&D(a,E.parentNode)}),A.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),x.disabled=b.disabled),"undefined"!=typeof b.stacked&&(e.stacked(b.stacked),x.stacked=b.stacked),a.update()})}),a}var b,d,e=c.models.multiBar(),f=c.models.axis(),g=c.models.axis(),h=c.models.legend(),i=c.models.legend(),j={top:30,right:20,bottom:50,left:60},k=null,l=null,m=c.utils.defaultColor(),n=!0,o=!0,p=!0,q=!0,r=!1,s=!0,t=!1,u=0,v=!0,w=function(a,b,c,d,e){return"

"+a+"

"+c+" on "+b+"

"},x={stacked:!1},y=null,z="No Data Available.",A=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),B=function(){return n?180:0},C=250;e.stacked(!1),f.orient("bottom").tickPadding(7).highlightZero(!0).showMaxMin(!1).tickFormat(function(a){return a}),g.orient(r?"right":"left").tickFormat(d3.format(",.1f")),i.updateState(!1);var D=function(b,d){var h=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=f.tickFormat()(e.x()(b.point,b.pointIndex)),k=g.tickFormat()(e.y()(b.point,b.pointIndex)),l=w(b.series.key,j,k,b,a);c.tooltip.show([h,i],l,b.value<0?"n":"s",null,d)};return e.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+j.left,a.pos[1]+j.top],A.tooltipShow(a)}),e.dispatch.on("elementMouseout.tooltip",function(a){A.tooltipHide(a)}),A.on("tooltipHide",function(){v&&c.tooltip.cleanup()}),a.dispatch=A,a.multibar=e,a.legend=h,a.xAxis=f,a.yAxis=g,d3.rebind(a,e,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","stacked","stackOffset","delay","barColor","groupSpacing"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.color=function(b){return arguments.length?(m=c.utils.getColor(b),h.color(m),a):m},a.showControls=function(b){return arguments.length?(n=b,a):n},a.showLegend=function(b){return arguments.length?(o=b,a):o},a.showXAxis=function(b){return arguments.length?(p=b,a):p},a.showYAxis=function(b){return arguments.length?(q=b,a):q},a.rightAlignYAxis=function(b){return arguments.length?(r=b,g.orient(b?"right":"left"),a):r},a.reduceXTicks=function(b){return arguments.length?(s=b,a):s},a.rotateLabels=function(b){return arguments.length?(u=b,a):u},a.staggerLabels=function(b){return arguments.length?(t=b,a):t},a.tooltip=function(b){return arguments.length?(w=b,a):w},a.tooltips=function(b){return arguments.length?(v=b,a):v},a.tooltipContent=function(b){return arguments.length?(w=b,a):w},a.state=function(b){return arguments.length?(x=b,a):x},a.defaultState=function(b){return arguments.length?(y=b,a):y},a.noData=function(b){return arguments.length?(z=b,a):z},a.transitionDuration=function(b){return arguments.length?(C=b,a):C},a},c.models.multiBarHorizontal=function(){"use strict";function a(c){return c.each(function(a){var c=k-j.left-j.right,m=l-j.top-j.bottom;d3.select(this);u&&(a=d3.layout.stack().offset("zero").values(function(a){return a.values}).y(q)(a)),a.forEach(function(a,b){a.values.forEach(function(a){a.series=b})}),u&&a[0].values.map(function(b,c){var d=0,e=0;a.map(function(a){var b=a.values[c];b.size=Math.abs(b.y),b.y<0?(b.y1=e-b.size,e-=b.size):(b.y1=d,d+=b.size)})});var z=d&&e?[]:a.map(function(a){return a.values.map(function(a,b){return{x:p(a,b),y:q(a,b),y0:a.y0,y1:a.y1}})});n.domain(d||d3.merge(z).map(function(a){return a.x})).rangeBands(f||[0,m],.1),o.domain(e||d3.extent(d3.merge(z).map(function(a){return u?a.y>0?a.y1+a.y:a.y1:a.y}).concat(r))),v&&!u?o.range(g||[o.domain()[0]<0?x:0,c-(o.domain()[1]>0?x:0)]):o.range(g||[0,c]),h=h||n,i=i||d3.scale.linear().domain(o.domain()).range([o(0),o(0)]);var B=d3.select(this).selectAll("g.nv-wrap.nv-multibarHorizontal").data([a]),C=B.enter().append("g").attr("class","nvd3 nv-wrap nv-multibarHorizontal"),D=(C.append("defs"),C.append("g"));B.select("g");D.append("g").attr("class","nv-groups"),B.attr("transform","translate("+j.left+","+j.top+")");var E=B.select(".nv-groups").selectAll(".nv-group").data(function(a){return a},function(a,b){return b});E.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),E.exit().transition().style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),E.attr("class",function(a,b){return"nv-group nv-series-"+b}).classed("hover",function(a){return a.hover}).style("fill",function(a,b){return s(a,b)}).style("stroke",function(a,b){return s(a,b)}),E.transition().style("stroke-opacity",1).style("fill-opacity",.75);var F=E.selectAll("g.nv-bar").data(function(a){return a.values});F.exit().remove();var G=F.enter().append("g").attr("transform",function(b,c,d){return"translate("+i(u?b.y0:0)+","+(u?0:d*n.rangeBand()/a.length+n(p(b,c)))+")"});G.append("rect").attr("width",0).attr("height",n.rangeBand()/(u?1:a.length)),F.on("mouseover",function(b,c){d3.select(this).classed("hover",!0),A.elementMouseover({value:q(b,c),point:b,series:a[b.series],pos:[o(q(b,c)+(u?b.y0:0)),n(p(b,c))+n.rangeBand()*(u?a.length/2:b.series+.5)/a.length],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("mouseout",function(b,c){d3.select(this).classed("hover",!1),A.elementMouseout({value:q(b,c),point:b,series:a[b.series],pointIndex:c,seriesIndex:b.series,e:d3.event})}).on("click",function(b,c){A.elementClick({value:q(b,c),point:b,series:a[b.series],pos:[n(p(b,c))+n.rangeBand()*(u?a.length/2:b.series+.5)/a.length,o(q(b,c)+(u?b.y0:0))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(b,c){A.elementDblClick({value:q(b,c),point:b,series:a[b.series],pos:[n(p(b,c))+n.rangeBand()*(u?a.length/2:b.series+.5)/a.length,o(q(b,c)+(u?b.y0:0))],pointIndex:c,seriesIndex:b.series,e:d3.event}),d3.event.stopPropagation()}),G.append("text"),v&&!u?(F.select("text").attr("text-anchor",function(a,b){return q(a,b)<0?"end":"start"}).attr("y",n.rangeBand()/(2*a.length)).attr("dy",".32em").text(function(a,b){return y(q(a,b))}),F.transition().select("text").attr("x",function(a,b){return q(a,b)<0?-4:o(q(a,b))-o(0)+4})):F.selectAll("text").text(""),w&&!u?(G.append("text").classed("nv-bar-label",!0),F.select("text.nv-bar-label").attr("text-anchor",function(a,b){return q(a,b)<0?"start":"end"}).attr("y",n.rangeBand()/(2*a.length)).attr("dy",".32em").text(function(a,b){return p(a,b)}),F.transition().select("text.nv-bar-label").attr("x",function(a,b){return q(a,b)<0?o(0)-o(q(a,b))+4:-4})):F.selectAll("text.nv-bar-label").text(""),F.attr("class",function(a,b){return q(a,b)<0?"nv-bar negative":"nv-bar positive"}),t&&(b||(b=a.map(function(){return!0})),F.style("fill",function(a,c,d){return d3.rgb(t(a,c)).darker(b.map(function(a,b){return b}).filter(function(a,c){return!b[c]})[d]).toString()}).style("stroke",function(a,c,d){return d3.rgb(t(a,c)).darker(b.map(function(a,b){return b}).filter(function(a,c){return!b[c]})[d]).toString()})),u?F.transition().attr("transform",function(a,b){return"translate("+o(a.y1)+","+n(p(a,b))+")"}).select("rect").attr("width",function(a,b){return Math.abs(o(q(a,b)+a.y0)-o(a.y0))}).attr("height",n.rangeBand()):F.transition().attr("transform",function(b,c){return"translate("+o(q(b,c)<0?q(b,c):0)+","+(b.series*n.rangeBand()/a.length+n(p(b,c)))+")"}).select("rect").attr("height",n.rangeBand()/a.length).attr("width",function(a,b){return Math.max(Math.abs(o(q(a,b))-o(0)),1)}),h=n.copy(),i=o.copy()}),a}var b,d,e,f,g,h,i,j={top:0,right:0,bottom:0,left:0},k=960,l=500,m=Math.floor(1e4*Math.random()),n=d3.scale.ordinal(),o=d3.scale.linear(),p=function(a){return a.x},q=function(a){return a.y},r=[0],s=c.utils.defaultColor(),t=null,u=!1,v=!1,w=!1,x=60,y=d3.format(",.2f"),z=1200,A=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return a.dispatch=A,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(p=b,a):p},a.y=function(b){return arguments.length?(q=b,a):q},a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.xScale=function(b){return arguments.length?(n=b,a):n},a.yScale=function(b){return arguments.length?(o=b,a):o},a.xDomain=function(b){return arguments.length?(d=b,a):d},a.yDomain=function(b){return arguments.length?(e=b,a):e},a.xRange=function(b){return arguments.length?(f=b,a):f},a.yRange=function(b){return arguments.length?(g=b,a):g},a.forceY=function(b){return arguments.length?(r=b,a):r},a.stacked=function(b){return arguments.length?(u=b,a):u},a.color=function(b){return arguments.length?(s=c.utils.getColor(b),a):s},a.barColor=function(b){return arguments.length?(t=c.utils.getColor(b),a):t},a.disabled=function(c){return arguments.length?(b=c,a):b},a.id=function(b){return arguments.length?(m=b,a):m},a.delay=function(b){return arguments.length?(z=b,a):z},a.showValues=function(b){return arguments.length?(v=b,a):v},a.showBarLabels=function(b){return arguments.length?(w=b,a):w},a.valueFormat=function(b){return arguments.length?(y=b,a):y},a.valuePadding=function(b){return arguments.length?(x=b,a):x},a},c.models.multiBarHorizontalChart=function(){"use strict";function a(c){return c.each(function(c){var r=d3.select(this),t=this,B=(k||parseInt(r.style("width"))||960)-j.left-j.right,C=(l||parseInt(r.style("height"))||400)-j.top-j.bottom;if(a.update=function(){r.transition().duration(z).call(a)},a.container=this,u.disabled=c.map(function(a){return!!a.disabled}),!v){var D;v={};for(D in u)u[D]instanceof Array?v[D]=u[D].slice(0):v[D]=u[D]}if(!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var E=r.selectAll(".nv-noData").data([w]);return E.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),E.attr("x",j.left+B/2).attr("y",j.top+C/2).text(function(a){return a}),a}r.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale();var F=r.selectAll("g.nv-wrap.nv-multiBarHorizontalChart").data([c]),G=F.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarHorizontalChart").append("g"),H=F.select("g");if(G.append("g").attr("class","nv-x nv-axis"),G.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),G.append("g").attr("class","nv-barsWrap"),G.append("g").attr("class","nv-legendWrap"),G.append("g").attr("class","nv-controlsWrap"),o&&(h.width(B-y()),e.barColor()&&c.forEach(function(a,b){a.color=d3.rgb("#ccc").darker(1.5*b).toString()}),H.select(".nv-legendWrap").datum(c).call(h),j.top!=h.height()&&(j.top=h.height(),C=(l||parseInt(r.style("height"))||400)-j.top-j.bottom),H.select(".nv-legendWrap").attr("transform","translate("+y()+","+-j.top+")")),n){var I=[{key:"Grouped",disabled:e.stacked()},{key:"Stacked",disabled:!e.stacked()}];i.width(y()).color(["#444","#444","#444"]),H.select(".nv-controlsWrap").datum(I).attr("transform","translate(0,"+-j.top+")").call(i)}F.attr("transform","translate("+j.left+","+j.top+")"),e.disabled(c.map(function(a){return a.disabled})).width(B).height(C).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled}));var J=H.select(".nv-barsWrap").datum(c.filter(function(a){return!a.disabled}));if(J.transition().call(e),p){f.scale(b).ticks(C/24).tickSize(-B,0),H.select(".nv-x.nv-axis").transition().call(f);var K=H.select(".nv-x.nv-axis").selectAll("g");K.selectAll("line, text")}q&&(g.scale(d).ticks(B/100).tickSize(-C,0),H.select(".nv-y.nv-axis").attr("transform","translate(0,"+C+")"),H.select(".nv-y.nv-axis").transition().call(g)),H.select(".nv-zeroLine line").attr("x1",d(0)).attr("x2",d(0)).attr("y1",0).attr("y2",-C),h.dispatch.on("stateChange",function(b){u=b,x.stateChange(u),a.update()}),i.dispatch.on("legendClick",function(b,c){if(b.disabled){switch(I=I.map(function(a){return a.disabled=!0,a}),b.disabled=!1,b.key){case"Grouped":e.stacked(!1);break;case"Stacked":e.stacked(!0)}u.stacked=e.stacked(),x.stateChange(u),a.update()}}),x.on("tooltipShow",function(a){s&&A(a,t.parentNode)}),x.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),u.disabled=b.disabled),"undefined"!=typeof b.stacked&&(e.stacked(b.stacked),u.stacked=b.stacked),a.update()})}),a}var b,d,e=c.models.multiBarHorizontal(),f=c.models.axis(),g=c.models.axis(),h=c.models.legend().height(30),i=c.models.legend().height(30),j={top:30,right:20,bottom:50,left:60},k=null,l=null,m=c.utils.defaultColor(),n=!0,o=!0,p=!0,q=!0,r=!1,s=!0,t=function(a,b,c,d,e){return"

"+a+" - "+b+"

"+c+"

"},u={stacked:r},v=null,w="No Data Available.",x=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),y=function(){return n?180:0},z=250;e.stacked(r),f.orient("left").tickPadding(5).highlightZero(!1).showMaxMin(!1).tickFormat(function(a){return a}),g.orient("bottom").tickFormat(d3.format(",.1f")),i.updateState(!1);var A=function(b,d){var h=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=f.tickFormat()(e.x()(b.point,b.pointIndex)),k=g.tickFormat()(e.y()(b.point,b.pointIndex)),l=t(b.series.key,j,k,b,a);c.tooltip.show([h,i],l,b.value<0?"e":"w",null,d)};return e.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+j.left,a.pos[1]+j.top],x.tooltipShow(a)}),e.dispatch.on("elementMouseout.tooltip",function(a){x.tooltipHide(a)}),x.on("tooltipHide",function(){s&&c.tooltip.cleanup()}),a.dispatch=x,a.multibar=e,a.legend=h,a.xAxis=f,a.yAxis=g,d3.rebind(a,e,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","delay","showValues","showBarLabels","valueFormat","stacked","barColor"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.color=function(b){return arguments.length?(m=c.utils.getColor(b),h.color(m),a):m},a.showControls=function(b){return arguments.length?(n=b,a):n},a.showLegend=function(b){return arguments.length?(o=b,a):o},a.showXAxis=function(b){return arguments.length?(p=b,a):p},a.showYAxis=function(b){return arguments.length?(q=b,a):q},a.tooltip=function(b){return arguments.length?(t=b,a):t},a.tooltips=function(b){return arguments.length?(s=b,a):s},a.tooltipContent=function(b){return arguments.length?(t=b,a):t},a.state=function(b){return arguments.length?(u=b,a):u},a.defaultState=function(b){return arguments.length?(v=b,a):v},a.noData=function(b){return arguments.length?(w=b,a):w},a.transitionDuration=function(b){return arguments.length?(z=b,a):z},a},c.models.multiChart=function(){"use strict";function a(c){return c.each(function(c){var l=d3.select(this),A=this;a.update=function(){l.transition().call(a)},a.container=this;var B=(h||parseInt(l.style("width"))||960)-f.left-f.right,C=(i||parseInt(l.style("height"))||400)-f.top-f.bottom,D=c.filter(function(a){return!a.disabled&&"line"==a.type&&1==a.yAxis}),E=c.filter(function(a){return!a.disabled&&"line"==a.type&&2==a.yAxis}),F=c.filter(function(a){return!a.disabled&&"bar"==a.type&&1==a.yAxis}),G=c.filter(function(a){return!a.disabled&&"bar"==a.type&&2==a.yAxis}),H=c.filter(function(a){return!a.disabled&&"area"==a.type&&1==a.yAxis}),I=c.filter(function(a){return!a.disabled&&"area"==a.type&&2==a.yAxis}),J=c.filter(function(a){return!a.disabled&&1==a.yAxis}).map(function(a){return a.values.map(function(a,b){return{x:a.x,y:a.y}})}),K=c.filter(function(a){return!a.disabled&&2==a.yAxis}).map(function(a){return a.values.map(function(a,b){return{x:a.x,y:a.y}})});b.domain(d3.extent(d3.merge(J.concat(K)),function(a){return a.x})).range([0,B]);var L=l.selectAll("g.wrap.multiChart").data([c]),M=L.enter().append("g").attr("class","wrap nvd3 multiChart").append("g");M.append("g").attr("class","x axis"),M.append("g").attr("class","y1 axis"),M.append("g").attr("class","y2 axis"),M.append("g").attr("class","lines1Wrap"),M.append("g").attr("class","lines2Wrap"),M.append("g").attr("class","bars1Wrap"),M.append("g").attr("class","bars2Wrap"),M.append("g").attr("class","stack1Wrap"),M.append("g").attr("class","stack2Wrap"),M.append("g").attr("class","legendWrap");var N=L.select("g");j&&(x.width(B/2),N.select(".legendWrap").datum(c.map(function(a){return a.originalKey=void 0===a.originalKey?a.key:a.originalKey,a.key=a.originalKey+(1==a.yAxis?"":" (right axis)"),a})).call(x),f.top!=x.height()&&(f.top=x.height(),C=(i||parseInt(l.style("height"))||400)-f.top-f.bottom),N.select(".legendWrap").attr("transform","translate("+B/2+","+-f.top+")")),o.width(B).height(C).interpolate("monotone").color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&1==c[b].yAxis&&"line"==c[b].type})),p.width(B).height(C).interpolate("monotone").color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&2==c[b].yAxis&&"line"==c[b].type})),q.width(B).height(C).color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&1==c[b].yAxis&&"bar"==c[b].type})),r.width(B).height(C).color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&2==c[b].yAxis&&"bar"==c[b].type})),s.width(B).height(C).color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&1==c[b].yAxis&&"area"==c[b].type})),t.width(B).height(C).color(c.map(function(a,b){return a.color||g[b%g.length]}).filter(function(a,b){return!c[b].disabled&&2==c[b].yAxis&&"area"==c[b].type})),N.attr("transform","translate("+f.left+","+f.top+")");var O=N.select(".lines1Wrap").datum(D),P=N.select(".bars1Wrap").datum(F),Q=N.select(".stack1Wrap").datum(H),R=N.select(".lines2Wrap").datum(E),S=N.select(".bars2Wrap").datum(G),T=N.select(".stack2Wrap").datum(I),U=H.length?H.map(function(a){return a.values}).reduce(function(a,b){return a.map(function(a,c){return{x:a.x,y:a.y+b[c].y}})}).concat([{x:0,y:0}]):[],V=I.length?I.map(function(a){return a.values}).reduce(function(a,b){return a.map(function(a,c){return{x:a.x,y:a.y+b[c].y}})}).concat([{x:0,y:0}]):[];m.domain(d||d3.extent(d3.merge(J).concat(U),function(a){return a.y})).range([0,C]),n.domain(e||d3.extent(d3.merge(K).concat(V),function(a){return a.y})).range([0,C]),o.yDomain(m.domain()),q.yDomain(m.domain()),s.yDomain(m.domain()),p.yDomain(n.domain()),r.yDomain(n.domain()),t.yDomain(n.domain()),H.length&&d3.transition(Q).call(s),I.length&&d3.transition(T).call(t),F.length&&d3.transition(P).call(q),G.length&&d3.transition(S).call(r),D.length&&d3.transition(O).call(o),E.length&&d3.transition(R).call(p),u.ticks(B/100).tickSize(-C,0),N.select(".x.axis").attr("transform","translate(0,"+C+")"),d3.transition(N.select(".x.axis")).call(u),v.ticks(C/36).tickSize(-B,0),d3.transition(N.select(".y1.axis")).call(v),w.ticks(C/36).tickSize(-B,0),d3.transition(N.select(".y2.axis")).call(w),N.select(".y2.axis").style("opacity",K.length?1:0).attr("transform","translate("+b.range()[1]+",0)"),x.dispatch.on("stateChange",function(b){a.update()}),y.on("tooltipShow",function(a){k&&z(a,A.parentNode)})}),a}var b,d,e,f={top:30,right:20,bottom:50,left:60},g=d3.scale.category20().range(),h=null,i=null,j=!0,k=!0,l=function(a,b,c,d,e){return"

"+a+"

"+c+" at "+b+"

"},b=d3.scale.linear(),m=d3.scale.linear(),n=d3.scale.linear(),o=c.models.line().yScale(m),p=c.models.line().yScale(n),q=c.models.multiBar().stacked(!1).yScale(m),r=c.models.multiBar().stacked(!1).yScale(n),s=c.models.stackedArea().yScale(m),t=c.models.stackedArea().yScale(n),u=c.models.axis().scale(b).orient("bottom").tickPadding(5),v=c.models.axis().scale(m).orient("left"),w=c.models.axis().scale(n).orient("right"),x=c.models.legend().height(30),y=d3.dispatch("tooltipShow","tooltipHide"),z=function(b,d){var e=b.pos[0]+(d.offsetLeft||0),f=b.pos[1]+(d.offsetTop||0),g=u.tickFormat()(o.x()(b.point,b.pointIndex)),h=(2==b.series.yAxis?w:v).tickFormat()(o.y()(b.point,b.pointIndex)),i=l(b.series.key,g,h,b,a);c.tooltip.show([e,f],i,void 0,void 0,d.offsetParent)};return o.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),o.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),p.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),p.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),q.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),q.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),r.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),r.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),s.dispatch.on("tooltipShow",function(a){return Math.round(100*s.y()(a.point))?(a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],void y.tooltipShow(a)):(setTimeout(function(){d3.selectAll(".point.hover").classed("hover",!1)},0),!1)}),s.dispatch.on("tooltipHide",function(a){y.tooltipHide(a)}),t.dispatch.on("tooltipShow",function(a){return Math.round(100*t.y()(a.point))?(a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],void y.tooltipShow(a)):(setTimeout(function(){d3.selectAll(".point.hover").classed("hover",!1)},0),!1)}),t.dispatch.on("tooltipHide",function(a){y.tooltipHide(a)}),o.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),o.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),p.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+f.left,a.pos[1]+f.top],y.tooltipShow(a)}),p.dispatch.on("elementMouseout.tooltip",function(a){y.tooltipHide(a)}),y.on("tooltipHide",function(){k&&c.tooltip.cleanup()}),a.dispatch=y,a.lines1=o,a.lines2=p,a.bars1=q,a.bars2=r,a.stack1=s,a.stack2=t,a.xAxis=u,a.yAxis1=v,a.yAxis2=w,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(getX=b,o.x(b),q.x(b),a):getX},a.y=function(b){return arguments.length?(getY=b,o.y(b),q.y(b),a):getY},a.yDomain1=function(b){return arguments.length?(d=b,a):d},a.yDomain2=function(b){return arguments.length?(e=b,a):e},a.margin=function(b){return arguments.length?(f=b,a):f},a.width=function(b){return arguments.length?(h=b,a):h},a.height=function(b){return arguments.length?(i=b,a):i},a.color=function(b){return arguments.length?(g=b,x.color(b),a):g},a.showLegend=function(b){return arguments.length?(j=b,a):j},a.tooltips=function(b){return arguments.length?(k=b,a):k},a.tooltipContent=function(b){return arguments.length?(l=b,a):l},a},c.models.ohlcBar=function(){"use strict";function a(c){return c.each(function(a){var c=h-g.left-g.right,w=i-g.top-g.bottom,y=d3.select(this);k.domain(b||d3.extent(a[0].values.map(m).concat(s))),u?k.range(e||[.5*c/a[0].values.length,c*(a[0].values.length-.5)/a[0].values.length]):k.range(e||[0,c]),l.domain(d||[d3.min(a[0].values.map(r).concat(t)),d3.max(a[0].values.map(q).concat(t))]).range(f||[w,0]),k.domain()[0]===k.domain()[1]&&(k.domain()[0]?k.domain([k.domain()[0]-.01*k.domain()[0],k.domain()[1]+.01*k.domain()[1]]):k.domain([-1,1])),l.domain()[0]===l.domain()[1]&&(l.domain()[0]?l.domain([l.domain()[0]+.01*l.domain()[0],l.domain()[1]-.01*l.domain()[1]]):l.domain([-1,1]));var z=d3.select(this).selectAll("g.nv-wrap.nv-ohlcBar").data([a[0].values]),A=z.enter().append("g").attr("class","nvd3 nv-wrap nv-ohlcBar"),B=A.append("defs"),C=A.append("g"),D=z.select("g");C.append("g").attr("class","nv-ticks"),z.attr("transform","translate("+g.left+","+g.top+")"),y.on("click",function(a,b){x.chartClick({data:a,index:b,pos:d3.event, +id:j})}),B.append("clipPath").attr("id","nv-chart-clip-path-"+j).append("rect"),z.select("#nv-chart-clip-path-"+j+" rect").attr("width",c).attr("height",w),D.attr("clip-path",v?"url(#nv-chart-clip-path-"+j+")":"");var E=z.select(".nv-ticks").selectAll(".nv-tick").data(function(a){return a});E.exit().remove();E.enter().append("path").attr("class",function(a,b,c){return(o(a,b)>p(a,b)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+c+"-"+b}).attr("d",function(b,d){var e=c/a[0].values.length*.9;return"m0,0l0,"+(l(o(b,d))-l(q(b,d)))+"l"+-e/2+",0l"+e/2+",0l0,"+(l(r(b,d))-l(o(b,d)))+"l0,"+(l(p(b,d))-l(r(b,d)))+"l"+e/2+",0l"+-e/2+",0z"}).attr("transform",function(a,b){return"translate("+k(m(a,b))+","+l(q(a,b))+")"}).on("mouseover",function(b,c){d3.select(this).classed("hover",!0),x.elementMouseover({point:b,series:a[0],pos:[k(m(b,c)),l(n(b,c))],pointIndex:c,seriesIndex:0,e:d3.event})}).on("mouseout",function(b,c){d3.select(this).classed("hover",!1),x.elementMouseout({point:b,series:a[0],pointIndex:c,seriesIndex:0,e:d3.event})}).on("click",function(a,b){x.elementClick({value:n(a,b),data:a,index:b,pos:[k(m(a,b)),l(n(a,b))],e:d3.event,id:j}),d3.event.stopPropagation()}).on("dblclick",function(a,b){x.elementDblClick({value:n(a,b),data:a,index:b,pos:[k(m(a,b)),l(n(a,b))],e:d3.event,id:j}),d3.event.stopPropagation()});E.attr("class",function(a,b,c){return(o(a,b)>p(a,b)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+c+"-"+b}),d3.transition(E).attr("transform",function(a,b){return"translate("+k(m(a,b))+","+l(q(a,b))+")"}).attr("d",function(b,d){var e=c/a[0].values.length*.9;return"m0,0l0,"+(l(o(b,d))-l(q(b,d)))+"l"+-e/2+",0l"+e/2+",0l0,"+(l(r(b,d))-l(o(b,d)))+"l0,"+(l(p(b,d))-l(r(b,d)))+"l"+e/2+",0l"+-e/2+",0z"})}),a}var b,d,e,f,g={top:0,right:0,bottom:0,left:0},h=960,i=500,j=Math.floor(1e4*Math.random()),k=d3.scale.linear(),l=d3.scale.linear(),m=function(a){return a.x},n=function(a){return a.y},o=function(a){return a.open},p=function(a){return a.close},q=function(a){return a.high},r=function(a){return a.low},s=[],t=[],u=!1,v=!0,w=c.utils.defaultColor(),x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return a.dispatch=x,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(m=b,a):m},a.y=function(b){return arguments.length?(n=b,a):n},a.open=function(b){return arguments.length?(o=b,a):o},a.close=function(b){return arguments.length?(p=b,a):p},a.high=function(b){return arguments.length?(q=b,a):q},a.low=function(b){return arguments.length?(r=b,a):r},a.margin=function(b){return arguments.length?(g.top="undefined"!=typeof b.top?b.top:g.top,g.right="undefined"!=typeof b.right?b.right:g.right,g.bottom="undefined"!=typeof b.bottom?b.bottom:g.bottom,g.left="undefined"!=typeof b.left?b.left:g.left,a):g},a.width=function(b){return arguments.length?(h=b,a):h},a.height=function(b){return arguments.length?(i=b,a):i},a.xScale=function(b){return arguments.length?(k=b,a):k},a.yScale=function(b){return arguments.length?(l=b,a):l},a.xDomain=function(c){return arguments.length?(b=c,a):b},a.yDomain=function(b){return arguments.length?(d=b,a):d},a.xRange=function(b){return arguments.length?(e=b,a):e},a.yRange=function(b){return arguments.length?(f=b,a):f},a.forceX=function(b){return arguments.length?(s=b,a):s},a.forceY=function(b){return arguments.length?(t=b,a):t},a.padData=function(b){return arguments.length?(u=b,a):u},a.clipEdge=function(b){return arguments.length?(v=b,a):v},a.color=function(b){return arguments.length?(w=c.utils.getColor(b),a):w},a.id=function(b){return arguments.length?(j=b,a):j},a},c.models.pie=function(){"use strict";function a(c){return c.each(function(a){function c(a){a.endAngle=isNaN(a.endAngle)?0:a.endAngle,a.startAngle=isNaN(a.startAngle)?0:a.startAngle,r||(a.innerRadius=0);var b=d3.interpolate(this._current,a);return this._current=b(0),function(a){return E(b(a))}}var i=e-b.left-b.right,l=f-b.top-b.bottom,x=Math.min(i,l)/2,y=x-x/5,z=d3.select(this),A=z.selectAll(".nv-wrap.nv-pie").data(a),B=A.enter().append("g").attr("class","nvd3 nv-wrap nv-pie nv-chart-"+j),C=B.append("g"),D=A.select("g");C.append("g").attr("class","nv-pie"),C.append("g").attr("class","nv-pieLabels"),A.attr("transform","translate("+b.left+","+b.top+")"),D.select(".nv-pie").attr("transform","translate("+i/2+","+l/2+")"),D.select(".nv-pieLabels").attr("transform","translate("+i/2+","+l/2+")"),z.on("click",function(a,b){w.chartClick({data:a,index:b,pos:d3.event,id:j})});var E=d3.svg.arc().outerRadius(y);t&&E.startAngle(t),u&&E.endAngle(u),r&&E.innerRadius(x*v);var F=d3.layout.pie().sort(null).value(function(a){return a.disabled?0:h(a)}),G=A.select(".nv-pie").selectAll(".nv-slice").data(F),H=A.select(".nv-pieLabels").selectAll(".nv-label").data(F);G.exit().remove(),H.exit().remove();var I=G.enter().append("g").attr("class","nv-slice").on("mouseover",function(a,b){d3.select(this).classed("hover",!0),w.elementMouseover({label:g(a.data),value:h(a.data),point:a.data,pointIndex:b,pos:[d3.event.pageX,d3.event.pageY],id:j})}).on("mouseout",function(a,b){d3.select(this).classed("hover",!1),w.elementMouseout({label:g(a.data),value:h(a.data),point:a.data,index:b,id:j})}).on("click",function(a,b){w.elementClick({label:g(a.data),value:h(a.data),point:a.data,index:b,pos:d3.event,id:j}),d3.event.stopPropagation()}).on("dblclick",function(a,b){w.elementDblClick({label:g(a.data),value:h(a.data),point:a.data,index:b,pos:d3.event,id:j}),d3.event.stopPropagation()});G.attr("fill",function(a,b){return k(a,b)}).attr("stroke",function(a,b){return k(a,b)});I.append("path").each(function(a){this._current=a});if(G.select("path").transition().attr("d",E).attrTween("d",c),m){var J=d3.svg.arc().innerRadius(0);n&&(J=E),o&&(J=d3.svg.arc().outerRadius(E.outerRadius())),H.enter().append("g").classed("nv-label",!0).each(function(a,b){var c=d3.select(this);c.attr("transform",function(a){if(s){a.outerRadius=y+10,a.innerRadius=y+15;var b=(a.startAngle+a.endAngle)/2*(180/Math.PI);return(a.startAngle+a.endAngle)/2q?d[p]:""})}}),a}var b={top:0,right:0,bottom:0,left:0},e=500,f=500,g=function(a){return a.x},h=function(a){return a.y},i=function(a){return a.description},j=Math.floor(1e4*Math.random()),k=c.utils.defaultColor(),l=d3.format(",.2f"),m=!0,n=!0,o=!1,p="key",q=.02,r=!1,s=!1,t=!1,u=!1,v=.5,w=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return a.dispatch=w,a.options=c.utils.optionsFunc.bind(a),a.margin=function(c){return arguments.length?(b.top="undefined"!=typeof c.top?c.top:b.top,b.right="undefined"!=typeof c.right?c.right:b.right,b.bottom="undefined"!=typeof c.bottom?c.bottom:b.bottom,b.left="undefined"!=typeof c.left?c.left:b.left,a):b},a.width=function(b){return arguments.length?(e=b,a):e},a.height=function(b){return arguments.length?(f=b,a):f},a.values=function(b){return c.log("pie.values() is no longer supported."),a},a.x=function(b){return arguments.length?(g=b,a):g},a.y=function(b){return arguments.length?(h=d3.functor(b),a):h},a.description=function(b){return arguments.length?(i=b,a):i},a.showLabels=function(b){return arguments.length?(m=b,a):m},a.labelSunbeamLayout=function(b){return arguments.length?(s=b,a):s},a.donutLabelsOutside=function(b){return arguments.length?(o=b,a):o},a.pieLabelsOutside=function(b){return arguments.length?(n=b,a):n},a.labelType=function(b){return arguments.length?(p=b,p=p||"key",a):p},a.donut=function(b){return arguments.length?(r=b,a):r},a.donutRatio=function(b){return arguments.length?(v=b,a):v},a.startAngle=function(b){return arguments.length?(t=b,a):t},a.endAngle=function(b){return arguments.length?(u=b,a):u},a.id=function(b){return arguments.length?(j=b,a):j},a.color=function(b){return arguments.length?(k=c.utils.getColor(b),a):k},a.valueFormat=function(b){return arguments.length?(l=b,a):l},a.labelThreshold=function(b){return arguments.length?(q=b,a):q},a},c.models.pieChart=function(){"use strict";function a(c){return c.each(function(c){var i=d3.select(this),j=(f||parseInt(i.style("width"))||960)-e.left-e.right,k=(g||parseInt(i.style("height"))||400)-e.top-e.bottom;if(a.update=function(){i.transition().call(a)},a.container=this,l.disabled=c.map(function(a){return!!a.disabled}),!m){var p;m={};for(p in l)l[p]instanceof Array?m[p]=l[p].slice(0):m[p]=l[p]}if(!c||!c.length){var q=i.selectAll(".nv-noData").data([n]);return q.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),q.attr("x",e.left+j/2).attr("y",e.top+k/2).text(function(a){return a}),a}i.selectAll(".nv-noData").remove();var r=i.selectAll("g.nv-wrap.nv-pieChart").data([c]),s=r.enter().append("g").attr("class","nvd3 nv-wrap nv-pieChart").append("g"),t=r.select("g");s.append("g").attr("class","nv-pieWrap"),s.append("g").attr("class","nv-legendWrap"),h&&(d.width(j).key(b.x()),r.select(".nv-legendWrap").datum(c).call(d),e.top!=d.height()&&(e.top=d.height(),k=(g||parseInt(i.style("height"))||400)-e.top-e.bottom),r.select(".nv-legendWrap").attr("transform","translate(0,"+-e.top+")")),r.attr("transform","translate("+e.left+","+e.top+")"),b.width(j).height(k);var u=t.select(".nv-pieWrap").datum([c]);d3.transition(u).call(b),d.dispatch.on("stateChange",function(b){l=b,o.stateChange(l),a.update()}),b.dispatch.on("elementMouseout.tooltip",function(a){o.tooltipHide(a)}),o.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),l.disabled=b.disabled),a.update()})}),a}var b=c.models.pie(),d=c.models.legend(),e={top:30,right:20,bottom:20,left:20},f=null,g=null,h=!0,i=c.utils.defaultColor(),j=!0,k=function(a,b,c,d){return"

"+a+"

"+b+"

"},l={},m=null,n="No Data Available.",o=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),p=function(d,e){var f=b.description()(d.point)||b.x()(d.point),g=d.pos[0]+(e&&e.offsetLeft||0),h=d.pos[1]+(e&&e.offsetTop||0),i=b.valueFormat()(b.y()(d.point)),j=k(f,i,d,a);c.tooltip.show([g,h],j,d.value<0?"n":"s",null,e)};return b.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+e.left,a.pos[1]+e.top],o.tooltipShow(a)}),o.on("tooltipShow",function(a){j&&p(a)}),o.on("tooltipHide",function(){j&&c.tooltip.cleanup()}),a.legend=d,a.dispatch=o,a.pie=b,d3.rebind(a,b,"valueFormat","values","x","y","description","id","showLabels","donutLabelsOutside","pieLabelsOutside","labelType","donut","donutRatio","labelThreshold"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(e.top="undefined"!=typeof b.top?b.top:e.top,e.right="undefined"!=typeof b.right?b.right:e.right,e.bottom="undefined"!=typeof b.bottom?b.bottom:e.bottom,e.left="undefined"!=typeof b.left?b.left:e.left,a):e},a.width=function(b){return arguments.length?(f=b,a):f},a.height=function(b){return arguments.length?(g=b,a):g},a.color=function(e){return arguments.length?(i=c.utils.getColor(e),d.color(i),b.color(i),a):i},a.showLegend=function(b){return arguments.length?(h=b,a):h},a.tooltips=function(b){return arguments.length?(j=b,a):j},a.tooltipContent=function(b){return arguments.length?(k=b,a):k},a.state=function(b){return arguments.length?(l=b,a):l},a.defaultState=function(b){return arguments.length?(m=b,a):m},a.noData=function(b){return arguments.length?(n=b,a):n},a},c.models.scatter=function(){"use strict";function a(O){return O.each(function(a){function O(){if(!w)return!1;var b=d3.merge(a.map(function(a,b){return a.values.map(function(a,c){var d=o(a,c),e=p(a,c);return[l(d)+1e-7*Math.random(),m(e)+1e-7*Math.random(),b,c,a]}).filter(function(a,b){return y(a[4],b)})}));if(M===!0){if(C){var c=T.select("defs").selectAll(".nv-point-clips").data([k]).enter();c.append("clipPath").attr("class","nv-point-clips").attr("id","nv-points-clip-"+k);var d=T.select("#nv-points-clip-"+k).selectAll("circle").data(b);d.enter().append("circle").attr("r",D),d.exit().remove(),d.attr("cx",function(a){return a[0]}).attr("cy",function(a){return a[1]}),T.select(".nv-point-paths").attr("clip-path","url(#nv-points-clip-"+k+")")}b.length&&(b.push([l.range()[0]-20,m.range()[0]-20,null,null]),b.push([l.range()[1]+20,m.range()[1]+20,null,null]),b.push([l.range()[0]-20,m.range()[0]+20,null,null]),b.push([l.range()[1]+20,m.range()[1]-20,null,null]));var e=d3.geom.polygon([[-10,-10],[-10,i+10],[h+10,i+10],[h+10,-10]]),f=d3.geom.voronoi(b).map(function(a,c){return{data:e.clip(a),series:b[c][2],point:b[c][3]}}),j=T.select(".nv-point-paths").selectAll("path").data(f);j.enter().append("path").attr("class",function(a,b){return"nv-path-"+b}),j.exit().remove(),j.attr("d",function(a){return 0===a.data.length?"M 0 0":"M"+a.data.join("L")+"Z"});var n=function(b,c){if(N)return 0;var d=a[b.series];if("undefined"!=typeof d){var e=d.values[b.point];c({point:e,series:d,pos:[l(o(e,b.point))+g.left,m(p(e,b.point))+g.top],seriesIndex:b.series,pointIndex:b.point})}};j.on("click",function(a){n(a,L.elementClick)}).on("mouseover",function(a){n(a,L.elementMouseover)}).on("mouseout",function(a,b){n(a,L.elementMouseout)})}else T.select(".nv-groups").selectAll(".nv-group").selectAll(".nv-point").on("click",function(b,c){if(N||!a[b.series])return 0;var d=a[b.series],e=d.values[c];L.elementClick({point:e,series:d,pos:[l(o(e,c))+g.left,m(p(e,c))+g.top],seriesIndex:b.series,pointIndex:c})}).on("mouseover",function(b,c){if(N||!a[b.series])return 0;var d=a[b.series],e=d.values[c];L.elementMouseover({point:e,series:d,pos:[l(o(e,c))+g.left,m(p(e,c))+g.top],seriesIndex:b.series,pointIndex:c})}).on("mouseout",function(b,c){if(N||!a[b.series])return 0;var d=a[b.series],e=d.values[c];L.elementMouseout({point:e,series:d,seriesIndex:b.series,pointIndex:c})});N=!1}var P=h-g.left-g.right,Q=i-g.top-g.bottom,R=d3.select(this);a.forEach(function(a,b){a.values.forEach(function(a){a.series=b})});var S=E&&F&&I?[]:d3.merge(a.map(function(a){return a.values.map(function(a,b){return{x:o(a,b),y:p(a,b),size:q(a,b)}})}));l.domain(E||d3.extent(S.map(function(a){return a.x}).concat(t))),z&&a[0]?l.range(G||[(P*A+P)/(2*a[0].values.length),P-P*(1+A)/(2*a[0].values.length)]):l.range(G||[0,P]),m.domain(F||d3.extent(S.map(function(a){return a.y}).concat(u))).range(H||[Q,0]),n.domain(I||d3.extent(S.map(function(a){return a.size}).concat(v))).range(J||[16,256]),(l.domain()[0]===l.domain()[1]||m.domain()[0]===m.domain()[1])&&(K=!0),l.domain()[0]===l.domain()[1]&&(l.domain()[0]?l.domain([l.domain()[0]-.01*l.domain()[0],l.domain()[1]+.01*l.domain()[1]]):l.domain([-1,1])),m.domain()[0]===m.domain()[1]&&(m.domain()[0]?m.domain([m.domain()[0]-.01*m.domain()[0],m.domain()[1]+.01*m.domain()[1]]):m.domain([-1,1])),isNaN(l.domain()[0])&&l.domain([-1,1]),isNaN(m.domain()[0])&&m.domain([-1,1]),b=b||l,d=d||m,e=e||n;var T=R.selectAll("g.nv-wrap.nv-scatter").data([a]),U=T.enter().append("g").attr("class","nvd3 nv-wrap nv-scatter nv-chart-"+k+(K?" nv-single-point":"")),V=U.append("defs"),W=U.append("g"),X=T.select("g");W.append("g").attr("class","nv-groups"),W.append("g").attr("class","nv-point-paths"),T.attr("transform","translate("+g.left+","+g.top+")"),V.append("clipPath").attr("id","nv-edge-clip-"+k).append("rect"),T.select("#nv-edge-clip-"+k+" rect").attr("width",P).attr("height",Q>0?Q:0),X.attr("clip-path",B?"url(#nv-edge-clip-"+k+")":""),N=!0;var Y=T.select(".nv-groups").selectAll(".nv-group").data(function(a){return a},function(a){return a.key});if(Y.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),Y.exit().remove(),Y.attr("class",function(a,b){return"nv-group nv-series-"+b}).classed("hover",function(a){return a.hover}),Y.transition().style("fill",function(a,b){return j(a,b)}).style("stroke",function(a,b){return j(a,b)}).style("stroke-opacity",1).style("fill-opacity",.5),s){var Z=Y.selectAll("circle.nv-point").data(function(a){return a.values},x);Z.enter().append("circle").style("fill",function(a,b){return a.color}).style("stroke",function(a,b){return a.color}).attr("cx",function(a,d){return c.utils.NaNtoZero(b(o(a,d)))}).attr("cy",function(a,b){return c.utils.NaNtoZero(d(p(a,b)))}).attr("r",function(a,b){return Math.sqrt(n(q(a,b))/Math.PI)}),Z.exit().remove(),Y.exit().selectAll("path.nv-point").transition().attr("cx",function(a,b){return c.utils.NaNtoZero(l(o(a,b)))}).attr("cy",function(a,b){return c.utils.NaNtoZero(m(p(a,b)))}).remove(),Z.each(function(a,b){d3.select(this).classed("nv-point",!0).classed("nv-point-"+b,!0).classed("hover",!1)}),Z.transition().attr("cx",function(a,b){return c.utils.NaNtoZero(l(o(a,b)))}).attr("cy",function(a,b){return c.utils.NaNtoZero(m(p(a,b)))}).attr("r",function(a,b){return Math.sqrt(n(q(a,b))/Math.PI)})}else{var Z=Y.selectAll("path.nv-point").data(function(a){return a.values});Z.enter().append("path").style("fill",function(a,b){return a.color}).style("stroke",function(a,b){return a.color}).attr("transform",function(a,c){return"translate("+b(o(a,c))+","+d(p(a,c))+")"}).attr("d",d3.svg.symbol().type(r).size(function(a,b){return n(q(a,b))})),Z.exit().remove(),Y.exit().selectAll("path.nv-point").transition().attr("transform",function(a,b){return"translate("+l(o(a,b))+","+m(p(a,b))+")"}).remove(),Z.each(function(a,b){d3.select(this).classed("nv-point",!0).classed("nv-point-"+b,!0).classed("hover",!1)}),Z.transition().attr("transform",function(a,b){return"translate("+l(o(a,b))+","+m(p(a,b))+")"}).attr("d",d3.svg.symbol().type(r).size(function(a,b){return n(q(a,b))}))}clearTimeout(f),f=setTimeout(O,300),b=l.copy(),d=m.copy(),e=n.copy()}),a}var b,d,e,f,g={top:0,right:0,bottom:0,left:0},h=960,i=500,j=c.utils.defaultColor(),k=Math.floor(1e5*Math.random()),l=d3.scale.linear(),m=d3.scale.linear(),n=d3.scale.linear(),o=function(a){return a.x},p=function(a){return a.y},q=function(a){return a.size||1},r=function(a){return a.shape||"circle"},s=!0,t=[],u=[],v=[],w=!0,x=null,y=function(a){return!a.notActive},z=!1,A=.1,B=!1,C=!0,D=function(){return 25},E=null,F=null,G=null,H=null,I=null,J=null,K=!1,L=d3.dispatch("elementClick","elementMouseover","elementMouseout"),M=!0,N=!1;return a.clearHighlights=function(){d3.selectAll(".nv-chart-"+k+" .nv-point.hover").classed("hover",!1)},a.highlightPoint=function(a,b,c){d3.select(".nv-chart-"+k+" .nv-series-"+a+" .nv-point-"+b).classed("hover",c)},L.on("elementMouseover.point",function(b){w&&a.highlightPoint(b.seriesIndex,b.pointIndex,!0)}),L.on("elementMouseout.point",function(b){w&&a.highlightPoint(b.seriesIndex,b.pointIndex,!1)}),a.dispatch=L,a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(o=d3.functor(b),a):o},a.y=function(b){return arguments.length?(p=d3.functor(b),a):p},a.size=function(b){return arguments.length?(q=d3.functor(b),a):q},a.margin=function(b){return arguments.length?(g.top="undefined"!=typeof b.top?b.top:g.top,g.right="undefined"!=typeof b.right?b.right:g.right,g.bottom="undefined"!=typeof b.bottom?b.bottom:g.bottom,g.left="undefined"!=typeof b.left?b.left:g.left,a):g},a.width=function(b){return arguments.length?(h=b,a):h},a.height=function(b){return arguments.length?(i=b,a):i},a.xScale=function(b){return arguments.length?(l=b,a):l},a.yScale=function(b){return arguments.length?(m=b,a):m},a.zScale=function(b){return arguments.length?(n=b,a):n},a.xDomain=function(b){return arguments.length?(E=b,a):E},a.yDomain=function(b){return arguments.length?(F=b,a):F},a.sizeDomain=function(b){return arguments.length?(I=b,a):I},a.xRange=function(b){return arguments.length?(G=b,a):G},a.yRange=function(b){return arguments.length?(H=b,a):H},a.sizeRange=function(b){return arguments.length?(J=b,a):J},a.forceX=function(b){return arguments.length?(t=b,a):t},a.forceY=function(b){return arguments.length?(u=b,a):u},a.forceSize=function(b){return arguments.length?(v=b,a):v},a.interactive=function(b){return arguments.length?(w=b,a):w},a.pointKey=function(b){return arguments.length?(x=b,a):x},a.pointActive=function(b){return arguments.length?(y=b,a):y},a.padData=function(b){return arguments.length?(z=b,a):z},a.padDataOuter=function(b){return arguments.length?(A=b,a):A},a.clipEdge=function(b){return arguments.length?(B=b,a):B},a.clipVoronoi=function(b){return arguments.length?(C=b,a):C},a.useVoronoi=function(b){return arguments.length?(M=b,M===!1&&(C=!1),a):M},a.clipRadius=function(b){return arguments.length?(D=b,a):D},a.color=function(b){return arguments.length?(j=c.utils.getColor(b),a):j},a.shape=function(b){return arguments.length?(r=b,a):r},a.onlyCircles=function(b){return arguments.length?(s=b,a):s},a.id=function(b){return arguments.length?(k=b,a):k},a.singlePoint=function(b){return arguments.length?(K=b,a):K},a},c.models.scatterChart=function(){"use strict";function a(c){return c.each(function(c){function B(){if(z)return U.select(".nv-point-paths").style("pointer-events","all"),!1;U.select(".nv-point-paths").style("pointer-events","none");var a=d3.mouse(this);n.distortion(y).focus(a[0]),o.distortion(y).focus(a[1]),U.select(".nv-scatterWrap").call(b),u&&U.select(".nv-x.nv-axis").call(d),v&&U.select(".nv-y.nv-axis").call(e),U.select(".nv-distributionX").datum(c.filter(function(a){return!a.disabled})).call(h),U.select(".nv-distributionY").datum(c.filter(function(a){return!a.disabled})).call(i)}var C=d3.select(this),D=this,N=(k||parseInt(C.style("width"))||960)-j.left-j.right,O=(l||parseInt(C.style("height"))||400)-j.top-j.bottom;if(a.update=function(){C.transition().duration(I).call(a)},a.container=this,E.disabled=c.map(function(a){return!!a.disabled}),!F){var P;F={};for(P in E)E[P]instanceof Array?F[P]=E[P].slice(0):F[P]=E[P]}if(!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var Q=C.selectAll(".nv-noData").data([H]);return Q.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),Q.attr("x",j.left+N/2).attr("y",j.top+O/2).text(function(a){return a}),a}C.selectAll(".nv-noData").remove(),J=J||n,K=K||o;var R=C.selectAll("g.nv-wrap.nv-scatterChart").data([c]),S=R.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+b.id()),T=S.append("g"),U=R.select("g");if(T.append("rect").attr("class","nvd3 nv-background"),T.append("g").attr("class","nv-x nv-axis"),T.append("g").attr("class","nv-y nv-axis"),T.append("g").attr("class","nv-scatterWrap"),T.append("g").attr("class","nv-distWrap"),T.append("g").attr("class","nv-legendWrap"),T.append("g").attr("class","nv-controlsWrap"),t){var V=x?N/2:N;f.width(V),R.select(".nv-legendWrap").datum(c).call(f),j.top!=f.height()&&(j.top=f.height(),O=(l||parseInt(C.style("height"))||400)-j.top-j.bottom),R.select(".nv-legendWrap").attr("transform","translate("+(N-V)+","+-j.top+")")}if(x&&(g.width(180).color(["#444"]),U.select(".nv-controlsWrap").datum(M).attr("transform","translate(0,"+-j.top+")").call(g)),R.attr("transform","translate("+j.left+","+j.top+")"),w&&U.select(".nv-y.nv-axis").attr("transform","translate("+N+",0)"),b.width(N).height(O).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),0!==p&&b.xDomain(null),0!==q&&b.yDomain(null),R.select(".nv-scatterWrap").datum(c.filter(function(a){return!a.disabled})).call(b),0!==p){var W=n.domain()[1]-n.domain()[0];b.xDomain([n.domain()[0]-p*W,n.domain()[1]+p*W])}if(0!==q){var X=o.domain()[1]-o.domain()[0];b.yDomain([o.domain()[0]-q*X,o.domain()[1]+q*X])}(0!==q||0!==p)&&R.select(".nv-scatterWrap").datum(c.filter(function(a){return!a.disabled})).call(b),u&&(d.scale(n).ticks(d.ticks()&&d.ticks().length?d.ticks():N/100).tickSize(-O,0),U.select(".nv-x.nv-axis").attr("transform","translate(0,"+o.range()[0]+")").call(d)),v&&(e.scale(o).ticks(e.ticks()&&e.ticks().length?e.ticks():O/36).tickSize(-N,0),U.select(".nv-y.nv-axis").call(e)),r&&(h.getData(b.x()).scale(n).width(N).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),T.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),U.select(".nv-distributionX").attr("transform","translate(0,"+o.range()[0]+")").datum(c.filter(function(a){return!a.disabled})).call(h)),s&&(i.getData(b.y()).scale(o).width(O).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),T.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),U.select(".nv-distributionY").attr("transform","translate("+(w?N:-i.size())+",0)").datum(c.filter(function(a){return!a.disabled})).call(i)),d3.fisheye&&(U.select(".nv-background").attr("width",N).attr("height",O),U.select(".nv-background").on("mousemove",B),U.select(".nv-background").on("click",function(){z=!z}),b.dispatch.on("elementClick.freezeFisheye",function(){z=!z})),g.dispatch.on("legendClick",function(c,f){c.disabled=!c.disabled,y=c.disabled?0:2.5,U.select(".nv-background").style("pointer-events",c.disabled?"none":"all"),U.select(".nv-point-paths").style("pointer-events",c.disabled?"all":"none"),c.disabled?(n.distortion(y).focus(0),o.distortion(y).focus(0),U.select(".nv-scatterWrap").call(b),U.select(".nv-x.nv-axis").call(d),U.select(".nv-y.nv-axis").call(e)):z=!1,a.update()}),f.dispatch.on("stateChange",function(b){E.disabled=b.disabled,G.stateChange(E),a.update()}),b.dispatch.on("elementMouseover.tooltip",function(a){d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-distx-"+a.pointIndex).attr("y1",function(b,c){return a.pos[1]-O}),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-disty-"+a.pointIndex).attr("x2",a.pos[0]+h.size()),a.pos=[a.pos[0]+j.left,a.pos[1]+j.top],G.tooltipShow(a)}),G.on("tooltipShow",function(a){A&&L(a,D.parentNode)}),G.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),E.disabled=b.disabled),a.update()}),J=n.copy(),K=o.copy()}),a}var b=c.models.scatter(),d=c.models.axis(),e=c.models.axis(),f=c.models.legend(),g=c.models.legend(),h=c.models.distribution(),i=c.models.distribution(),j={top:30,right:20,bottom:50,left:75},k=null,l=null,m=c.utils.defaultColor(),n=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):b.xScale(),o=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):b.yScale(),p=0,q=0,r=!1,s=!1,t=!0,u=!0,v=!0,w=!1,x=!!d3.fisheye,y=0,z=!1,A=!0,B=function(a,b,c){return""+b+""},C=function(a,b,c){return""+c+""},D=null,E={},F=null,G=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),H="No Data Available.",I=250;b.xScale(n).yScale(o),d.orient("bottom").tickPadding(10),e.orient(w?"right":"left").tickPadding(10),h.axis("x"),i.axis("y"),g.updateState(!1);var J,K,L=function(f,g){var h=f.pos[0]+(g.offsetLeft||0),i=f.pos[1]+(g.offsetTop||0),k=f.pos[0]+(g.offsetLeft||0),l=o.range()[0]+j.top+(g.offsetTop||0),m=n.range()[0]+j.left+(g.offsetLeft||0),p=f.pos[1]+(g.offsetTop||0),q=d.tickFormat()(b.x()(f.point,f.pointIndex)),r=e.tickFormat()(b.y()(f.point,f.pointIndex));null!=B&&c.tooltip.show([k,l],B(f.series.key,q,r,f,a),"n",1,g,"x-nvtooltip"),null!=C&&c.tooltip.show([m,p],C(f.series.key,q,r,f,a),"e",1,g,"y-nvtooltip"),null!=D&&c.tooltip.show([h,i],D(f.series.key,q,r,f,a),f.value<0?"n":"s",null,g)},M=[{key:"Magnify",disabled:!0}];return b.dispatch.on("elementMouseout.tooltip",function(a){G.tooltipHide(a),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-distx-"+a.pointIndex).attr("y1",0),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-disty-"+a.pointIndex).attr("x2",i.size())}),G.on("tooltipHide",function(){A&&c.tooltip.cleanup()}),a.dispatch=G,a.scatter=b,a.legend=f,a.controls=g,a.xAxis=d,a.yAxis=e,a.distX=h,a.distY=i,d3.rebind(a,b,"id","interactive","pointActive","x","y","shape","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","sizeRange","forceX","forceY","forceSize","clipVoronoi","clipRadius","useVoronoi"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.color=function(b){return arguments.length?(m=c.utils.getColor(b),f.color(m),h.color(m),i.color(m),a):m},a.showDistX=function(b){return arguments.length?(r=b,a):r},a.showDistY=function(b){return arguments.length?(s=b,a):s},a.showControls=function(b){return arguments.length?(x=b,a):x},a.showLegend=function(b){return arguments.length?(t=b,a):t},a.showXAxis=function(b){return arguments.length?(u=b,a):u},a.showYAxis=function(b){return arguments.length?(v=b,a):v},a.rightAlignYAxis=function(b){return arguments.length?(w=b,e.orient(b?"right":"left"),a):w},a.fisheye=function(b){return arguments.length?(y=b,a):y},a.xPadding=function(b){return arguments.length?(p=b,a):p},a.yPadding=function(b){return arguments.length?(q=b,a):q},a.tooltips=function(b){return arguments.length?(A=b,a):A},a.tooltipContent=function(b){return arguments.length?(D=b,a):D},a.tooltipXContent=function(b){return arguments.length?(B=b,a):B},a.tooltipYContent=function(b){return arguments.length?(C=b,a):C},a.state=function(b){return arguments.length?(E=b,a):E},a.defaultState=function(b){return arguments.length?(F=b,a):F},a.noData=function(b){return arguments.length?(H=b,a):H},a.transitionDuration=function(b){return arguments.length?(I=b,a):I},a},c.models.scatterPlusLineChart=function(){"use strict";function a(c){return c.each(function(c){function z(){if(x)return S.select(".nv-point-paths").style("pointer-events","all"),!1;S.select(".nv-point-paths").style("pointer-events","none");var a=d3.mouse(this);n.distortion(w).focus(a[0]),o.distortion(w).focus(a[1]),S.select(".nv-scatterWrap").datum(c.filter(function(a){return!a.disabled})).call(b),s&&S.select(".nv-x.nv-axis").call(d),t&&S.select(".nv-y.nv-axis").call(e),S.select(".nv-distributionX").datum(c.filter(function(a){return!a.disabled})).call(h),S.select(".nv-distributionY").datum(c.filter(function(a){return!a.disabled})).call(i)}var A=d3.select(this),B=this,L=(k||parseInt(A.style("width"))||960)-j.left-j.right,M=(l||parseInt(A.style("height"))||400)-j.top-j.bottom;if(a.update=function(){A.transition().duration(G).call(a)},a.container=this,C.disabled=c.map(function(a){return!!a.disabled}),!D){var N;D={};for(N in C)C[N]instanceof Array?D[N]=C[N].slice(0):D[N]=C[N]}if(!(c&&c.length&&c.filter(function(a){return a.values.length}).length)){var O=A.selectAll(".nv-noData").data([F]);return O.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),O.attr("x",j.left+L/2).attr("y",j.top+M/2).text(function(a){return a}),a}A.selectAll(".nv-noData").remove(),n=b.xScale(),o=b.yScale(),H=H||n,I=I||o;var P=A.selectAll("g.nv-wrap.nv-scatterChart").data([c]),Q=P.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+b.id()),R=Q.append("g"),S=P.select("g");R.append("rect").attr("class","nvd3 nv-background").style("pointer-events","none"),R.append("g").attr("class","nv-x nv-axis"),R.append("g").attr("class","nv-y nv-axis"), +R.append("g").attr("class","nv-scatterWrap"),R.append("g").attr("class","nv-regressionLinesWrap"),R.append("g").attr("class","nv-distWrap"),R.append("g").attr("class","nv-legendWrap"),R.append("g").attr("class","nv-controlsWrap"),P.attr("transform","translate("+j.left+","+j.top+")"),u&&S.select(".nv-y.nv-axis").attr("transform","translate("+L+",0)"),r&&(f.width(L/2),P.select(".nv-legendWrap").datum(c).call(f),j.top!=f.height()&&(j.top=f.height(),M=(l||parseInt(A.style("height"))||400)-j.top-j.bottom),P.select(".nv-legendWrap").attr("transform","translate("+L/2+","+-j.top+")")),v&&(g.width(180).color(["#444"]),S.select(".nv-controlsWrap").datum(K).attr("transform","translate(0,"+-j.top+")").call(g)),b.width(L).height(M).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),P.select(".nv-scatterWrap").datum(c.filter(function(a){return!a.disabled})).call(b),P.select(".nv-regressionLinesWrap").attr("clip-path","url(#nv-edge-clip-"+b.id()+")");var T=P.select(".nv-regressionLinesWrap").selectAll(".nv-regLines").data(function(a){return a});T.enter().append("g").attr("class","nv-regLines");var U=T.selectAll(".nv-regLine").data(function(a){return[a]});U.enter().append("line").attr("class","nv-regLine").style("stroke-opacity",0);U.transition().attr("x1",n.range()[0]).attr("x2",n.range()[1]).attr("y1",function(a,b){return o(n.domain()[0]*a.slope+a.intercept)}).attr("y2",function(a,b){return o(n.domain()[1]*a.slope+a.intercept)}).style("stroke",function(a,b,c){return m(a,c)}).style("stroke-opacity",function(a,b){return a.disabled||"undefined"==typeof a.slope||"undefined"==typeof a.intercept?0:1}),s&&(d.scale(n).ticks(d.ticks()?d.ticks():L/100).tickSize(-M,0),S.select(".nv-x.nv-axis").attr("transform","translate(0,"+o.range()[0]+")").call(d)),t&&(e.scale(o).ticks(e.ticks()?e.ticks():M/36).tickSize(-L,0),S.select(".nv-y.nv-axis").call(e)),p&&(h.getData(b.x()).scale(n).width(L).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),R.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),S.select(".nv-distributionX").attr("transform","translate(0,"+o.range()[0]+")").datum(c.filter(function(a){return!a.disabled})).call(h)),q&&(i.getData(b.y()).scale(o).width(M).color(c.map(function(a,b){return a.color||m(a,b)}).filter(function(a,b){return!c[b].disabled})),R.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),S.select(".nv-distributionY").attr("transform","translate("+(u?L:-i.size())+",0)").datum(c.filter(function(a){return!a.disabled})).call(i)),d3.fisheye&&(S.select(".nv-background").attr("width",L).attr("height",M),S.select(".nv-background").on("mousemove",z),S.select(".nv-background").on("click",function(){x=!x}),b.dispatch.on("elementClick.freezeFisheye",function(){x=!x})),g.dispatch.on("legendClick",function(c,f){c.disabled=!c.disabled,w=c.disabled?0:2.5,S.select(".nv-background").style("pointer-events",c.disabled?"none":"all"),S.select(".nv-point-paths").style("pointer-events",c.disabled?"all":"none"),c.disabled?(n.distortion(w).focus(0),o.distortion(w).focus(0),S.select(".nv-scatterWrap").call(b),S.select(".nv-x.nv-axis").call(d),S.select(".nv-y.nv-axis").call(e)):x=!1,a.update()}),f.dispatch.on("stateChange",function(b){C=b,E.stateChange(C),a.update()}),b.dispatch.on("elementMouseover.tooltip",function(a){d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-distx-"+a.pointIndex).attr("y1",a.pos[1]-M),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-disty-"+a.pointIndex).attr("x2",a.pos[0]+h.size()),a.pos=[a.pos[0]+j.left,a.pos[1]+j.top],E.tooltipShow(a)}),E.on("tooltipShow",function(a){y&&J(a,B.parentNode)}),E.on("changeState",function(b){"undefined"!=typeof b.disabled&&(c.forEach(function(a,c){a.disabled=b.disabled[c]}),C.disabled=b.disabled),a.update()}),H=n.copy(),I=o.copy()}),a}var b=c.models.scatter(),d=c.models.axis(),e=c.models.axis(),f=c.models.legend(),g=c.models.legend(),h=c.models.distribution(),i=c.models.distribution(),j={top:30,right:20,bottom:50,left:75},k=null,l=null,m=c.utils.defaultColor(),n=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):b.xScale(),o=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):b.yScale(),p=!1,q=!1,r=!0,s=!0,t=!0,u=!1,v=!!d3.fisheye,w=0,x=!1,y=!0,z=function(a,b,c){return""+b+""},A=function(a,b,c){return""+c+""},B=function(a,b,c,d){return"

"+a+"

"+d+"

"},C={},D=null,E=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),F="No Data Available.",G=250;b.xScale(n).yScale(o),d.orient("bottom").tickPadding(10),e.orient(u?"right":"left").tickPadding(10),h.axis("x"),i.axis("y"),g.updateState(!1);var H,I,J=function(f,g){var h=f.pos[0]+(g.offsetLeft||0),i=f.pos[1]+(g.offsetTop||0),k=f.pos[0]+(g.offsetLeft||0),l=o.range()[0]+j.top+(g.offsetTop||0),m=n.range()[0]+j.left+(g.offsetLeft||0),p=f.pos[1]+(g.offsetTop||0),q=d.tickFormat()(b.x()(f.point,f.pointIndex)),r=e.tickFormat()(b.y()(f.point,f.pointIndex));null!=z&&c.tooltip.show([k,l],z(f.series.key,q,r,f,a),"n",1,g,"x-nvtooltip"),null!=A&&c.tooltip.show([m,p],A(f.series.key,q,r,f,a),"e",1,g,"y-nvtooltip"),null!=B&&c.tooltip.show([h,i],B(f.series.key,q,r,f.point.tooltip,f,a),f.value<0?"n":"s",null,g)},K=[{key:"Magnify",disabled:!0}];return b.dispatch.on("elementMouseout.tooltip",function(a){E.tooltipHide(a),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-distx-"+a.pointIndex).attr("y1",0),d3.select(".nv-chart-"+b.id()+" .nv-series-"+a.seriesIndex+" .nv-disty-"+a.pointIndex).attr("x2",i.size())}),E.on("tooltipHide",function(){y&&c.tooltip.cleanup()}),a.dispatch=E,a.scatter=b,a.legend=f,a.controls=g,a.xAxis=d,a.yAxis=e,a.distX=h,a.distY=i,d3.rebind(a,b,"id","interactive","pointActive","x","y","shape","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","sizeRange","forceX","forceY","forceSize","clipVoronoi","clipRadius","useVoronoi"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(j.top="undefined"!=typeof b.top?b.top:j.top,j.right="undefined"!=typeof b.right?b.right:j.right,j.bottom="undefined"!=typeof b.bottom?b.bottom:j.bottom,j.left="undefined"!=typeof b.left?b.left:j.left,a):j},a.width=function(b){return arguments.length?(k=b,a):k},a.height=function(b){return arguments.length?(l=b,a):l},a.color=function(b){return arguments.length?(m=c.utils.getColor(b),f.color(m),h.color(m),i.color(m),a):m},a.showDistX=function(b){return arguments.length?(p=b,a):p},a.showDistY=function(b){return arguments.length?(q=b,a):q},a.showControls=function(b){return arguments.length?(v=b,a):v},a.showLegend=function(b){return arguments.length?(r=b,a):r},a.showXAxis=function(b){return arguments.length?(s=b,a):s},a.showYAxis=function(b){return arguments.length?(t=b,a):t},a.rightAlignYAxis=function(b){return arguments.length?(u=b,e.orient(b?"right":"left"),a):u},a.fisheye=function(b){return arguments.length?(w=b,a):w},a.tooltips=function(b){return arguments.length?(y=b,a):y},a.tooltipContent=function(b){return arguments.length?(B=b,a):B},a.tooltipXContent=function(b){return arguments.length?(z=b,a):z},a.tooltipYContent=function(b){return arguments.length?(A=b,a):A},a.state=function(b){return arguments.length?(C=b,a):C},a.defaultState=function(b){return arguments.length?(D=b,a):D},a.noData=function(b){return arguments.length?(F=b,a):F},a.transitionDuration=function(b){return arguments.length?(G=b,a):G},a},c.models.sparkline=function(){"use strict";function a(c){return c.each(function(a){var c=h-g.left-g.right,j=i-g.top-g.bottom,p=d3.select(this);k.domain(b||d3.extent(a,m)).range(e||[0,c]),l.domain(d||d3.extent(a,n)).range(f||[j,0]);var q=p.selectAll("g.nv-wrap.nv-sparkline").data([a]),r=q.enter().append("g").attr("class","nvd3 nv-wrap nv-sparkline");r.append("g"),q.select("g");q.attr("transform","translate("+g.left+","+g.top+")");var s=q.selectAll("path").data(function(a){return[a]});s.enter().append("path"),s.exit().remove(),s.style("stroke",function(a,b){return a.color||o(a,b)}).attr("d",d3.svg.line().x(function(a,b){return k(m(a,b))}).y(function(a,b){return l(n(a,b))}));var t=q.selectAll("circle.nv-point").data(function(a){function b(b){if(-1!=b){var c=a[b];return c.pointIndex=b,c}return null}var c=a.map(function(a,b){return n(a,b)}),d=b(c.lastIndexOf(l.domain()[1])),e=b(c.indexOf(l.domain()[0])),f=b(c.length-1);return[e,d,f].filter(function(a){return null!=a})});t.enter().append("circle"),t.exit().remove(),t.attr("cx",function(a,b){return k(m(a,a.pointIndex))}).attr("cy",function(a,b){return l(n(a,a.pointIndex))}).attr("r",2).attr("class",function(a,b){return m(a,a.pointIndex)==k.domain()[1]?"nv-point nv-currentValue":n(a,a.pointIndex)==l.domain()[0]?"nv-point nv-minValue":"nv-point nv-maxValue"})}),a}var b,d,e,f,g={top:2,right:0,bottom:2,left:0},h=400,i=32,j=!0,k=d3.scale.linear(),l=d3.scale.linear(),m=function(a){return a.x},n=function(a){return a.y},o=c.utils.getColor(["#000"]);return a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(g.top="undefined"!=typeof b.top?b.top:g.top,g.right="undefined"!=typeof b.right?b.right:g.right,g.bottom="undefined"!=typeof b.bottom?b.bottom:g.bottom,g.left="undefined"!=typeof b.left?b.left:g.left,a):g},a.width=function(b){return arguments.length?(h=b,a):h},a.height=function(b){return arguments.length?(i=b,a):i},a.x=function(b){return arguments.length?(m=d3.functor(b),a):m},a.y=function(b){return arguments.length?(n=d3.functor(b),a):n},a.xScale=function(b){return arguments.length?(k=b,a):k},a.yScale=function(b){return arguments.length?(l=b,a):l},a.xDomain=function(c){return arguments.length?(b=c,a):b},a.yDomain=function(b){return arguments.length?(d=b,a):d},a.xRange=function(b){return arguments.length?(e=b,a):e},a.yRange=function(b){return arguments.length?(f=b,a):f},a.animate=function(b){return arguments.length?(j=b,a):j},a.color=function(b){return arguments.length?(o=c.utils.getColor(b),a):o},a},c.models.sparklinePlus=function(){"use strict";function a(c){return c.each(function(m){function q(){if(!j){var a=A.selectAll(".nv-hoverValue").data(i),c=a.enter().append("g").attr("class","nv-hoverValue").style("stroke-opacity",0).style("fill-opacity",0);a.exit().transition().duration(250).style("stroke-opacity",0).style("fill-opacity",0).remove(),a.attr("transform",function(a){return"translate("+b(e.x()(m[a],a))+",0)"}).transition().duration(250).style("stroke-opacity",1).style("fill-opacity",1),i.length&&(c.append("line").attr("x1",0).attr("y1",-f.top).attr("x2",0).attr("y2",u),c.append("text").attr("class","nv-xValue").attr("x",-6).attr("y",-f.top).attr("text-anchor","end").attr("dy",".9em"),A.select(".nv-hoverValue .nv-xValue").text(k(e.x()(m[i[0]],i[0]))),c.append("text").attr("class","nv-yValue").attr("x",6).attr("y",-f.top).attr("text-anchor","start").attr("dy",".9em"),A.select(".nv-hoverValue .nv-yValue").text(l(e.y()(m[i[0]],i[0]))))}}function r(){function a(a,b){for(var c=Math.abs(e.x()(a[0],0)-b),d=0,f=0;fc;++c){for(b=0,d=0;bb;b++)a[b][c][1]/=d;else for(b=0;e>b;b++)a[b][c][1]=g}for(c=0;f>c;++c)h[c]=0;return h}}),a}var b,d,e={top:0,right:0,bottom:0,left:0},f=960,g=500,h=c.utils.defaultColor(),i=Math.floor(1e5*Math.random()),j=function(a){return a.x},k=function(a){return a.y},l="stack",m="zero",n="default",o="linear",p=!1,q=c.models.scatter(),r=d3.dispatch("tooltipShow","tooltipHide","areaClick","areaMouseover","areaMouseout");return q.size(2.2).sizeDomain([2.2,2.2]),q.dispatch.on("elementClick.area",function(a){r.areaClick(a)}),q.dispatch.on("elementMouseover.tooltip",function(a){a.pos=[a.pos[0]+e.left,a.pos[1]+e.top],r.tooltipShow(a)}),q.dispatch.on("elementMouseout.tooltip",function(a){r.tooltipHide(a)}),a.dispatch=r,a.scatter=q,d3.rebind(a,q,"interactive","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","forceX","forceY","forceSize","clipVoronoi","useVoronoi","clipRadius","highlightPoint","clearHighlights"),a.options=c.utils.optionsFunc.bind(a),a.x=function(b){return arguments.length?(j=d3.functor(b),a):j},a.y=function(b){return arguments.length?(k=d3.functor(b),a):k},a.margin=function(b){return arguments.length?(e.top="undefined"!=typeof b.top?b.top:e.top,e.right="undefined"!=typeof b.right?b.right:e.right,e.bottom="undefined"!=typeof b.bottom?b.bottom:e.bottom,e.left="undefined"!=typeof b.left?b.left:e.left,a):e},a.width=function(b){return arguments.length?(f=b,a):f},a.height=function(b){return arguments.length?(g=b,a):g},a.clipEdge=function(b){return arguments.length?(p=b,a):p},a.color=function(b){return arguments.length?(h=c.utils.getColor(b),a):h},a.offset=function(b){return arguments.length?(m=b,a):m},a.order=function(b){return arguments.length?(n=b,a):n},a.style=function(b){if(!arguments.length)return l;switch(l=b){case"stack":a.offset("zero"),a.order("default");break;case"stream":a.offset("wiggle"),a.order("inside-out");break;case"stream-center":a.offset("silhouette"),a.order("inside-out");break;case"expand":a.offset("expand"),a.order("default");break;case"stack_percent":a.offset(a.d3_stackedOffset_stackPercent),a.order("default")}return a},a.interpolate=function(b){return arguments.length?(o=b,a):o},a},c.models.stackedAreaChart=function(){"use strict";function a(v){return v.each(function(v){var G=d3.select(this),H=this,I=(l||parseInt(G.style("width"))||960)-k.left-k.right,J=(m||parseInt(G.style("height"))||400)-k.top-k.bottom;if(a.update=function(){G.transition().duration(E).call(a)},a.container=this,x.disabled=v.map(function(a){return!!a.disabled}),!y){var K;y={};for(K in x)x[K]instanceof Array?y[K]=x[K].slice(0):y[K]=x[K]}if(!(v&&v.length&&v.filter(function(a){return a.values.length}).length)){var L=G.selectAll(".nv-noData").data([z]);return L.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),L.attr("x",k.left+I/2).attr("y",k.top+J/2).text(function(a){return a}),a}G.selectAll(".nv-noData").remove(),b=e.xScale(),d=e.yScale();var M=G.selectAll("g.nv-wrap.nv-stackedAreaChart").data([v]),N=M.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedAreaChart").append("g"),O=M.select("g");if(N.append("rect").style("opacity",0),N.append("g").attr("class","nv-x nv-axis"),N.append("g").attr("class","nv-y nv-axis"),N.append("g").attr("class","nv-stackedWrap"),N.append("g").attr("class","nv-legendWrap"),N.append("g").attr("class","nv-controlsWrap"),N.append("g").attr("class","nv-interactive"),O.select("rect").attr("width",I).attr("height",J),p){var P=o?I-B:I;h.width(P),O.select(".nv-legendWrap").datum(v).call(h),k.top!=h.height()&&(k.top=h.height(),J=(m||parseInt(G.style("height"))||400)-k.top-k.bottom),O.select(".nv-legendWrap").attr("transform","translate("+(I-P)+","+-k.top+")")}if(o){var Q=[{key:D.stacked||"Stacked",metaKey:"Stacked",disabled:"stack"!=e.style(),style:"stack"},{key:D.stream||"Stream",metaKey:"Stream",disabled:"stream"!=e.style(),style:"stream"},{key:D.expanded||"Expanded",metaKey:"Expanded",disabled:"expand"!=e.style(),style:"expand"},{key:D.stack_percent||"Stack %",metaKey:"Stack_Percent",disabled:"stack_percent"!=e.style(),style:"stack_percent"}];B=C.length/3*260,Q=Q.filter(function(a){return-1!==C.indexOf(a.metaKey)}),i.width(B).color(["#444","#444","#444"]),O.select(".nv-controlsWrap").datum(Q).call(i),k.top!=Math.max(i.height(),h.height())&&(k.top=Math.max(i.height(),h.height()),J=(m||parseInt(G.style("height"))||400)-k.top-k.bottom),O.select(".nv-controlsWrap").attr("transform","translate(0,"+-k.top+")")}M.attr("transform","translate("+k.left+","+k.top+")"),s&&O.select(".nv-y.nv-axis").attr("transform","translate("+I+",0)"),t&&(j.width(I).height(J).margin({left:k.left,top:k.top}).svgContainer(G).xScale(b),M.select(".nv-interactive").call(j)),e.width(I).height(J);var R=O.select(".nv-stackedWrap").datum(v);R.transition().call(e),q&&(f.scale(b).ticks(I/100).tickSize(-J,0),O.select(".nv-x.nv-axis").attr("transform","translate(0,"+J+")"),O.select(".nv-x.nv-axis").transition().duration(0).call(f)),r&&(g.scale(d).ticks("wiggle"==e.offset()?0:J/36).tickSize(-I,0).setTickFormat("expand"==e.style()||"stack_percent"==e.style()?d3.format("%"):w),O.select(".nv-y.nv-axis").transition().duration(0).call(g)),e.dispatch.on("areaClick.toggle",function(b){1===v.filter(function(a){return!a.disabled}).length?v.forEach(function(a){a.disabled=!1}):v.forEach(function(a,c){a.disabled=c!=b.seriesIndex}),x.disabled=v.map(function(a){return!!a.disabled}),A.stateChange(x),a.update()}),h.dispatch.on("stateChange",function(b){x.disabled=b.disabled,A.stateChange(x),a.update()}),i.dispatch.on("legendClick",function(b,c){b.disabled&&(Q=Q.map(function(a){return a.disabled=!0,a}),b.disabled=!1,e.style(b.style),x.style=e.style(),A.stateChange(x),a.update())}),j.dispatch.on("elementMousemove",function(b){e.clearHighlights();var d,h,i,l=[];if(v.filter(function(a,b){return a.seriesIndex=b,!a.disabled}).forEach(function(f,g){h=c.interactiveBisect(f.values,b.pointXValue,a.x()),e.highlightPoint(g,h,!0);var j=f.values[h];if("undefined"!=typeof j){"undefined"==typeof d&&(d=j),"undefined"==typeof i&&(i=a.xScale()(a.x()(j,h)));var k="expand"==e.style()?j.display.y:a.y()(j,h);l.push({key:f.key,value:k,color:n(f,f.seriesIndex),stackedValue:j.display})}}),l.reverse(),l.length>2){var m=a.yScale().invert(b.mouseY),o=null;l.forEach(function(a,b){m=Math.abs(m);var c=Math.abs(a.stackedValue.y0),d=Math.abs(a.stackedValue.y);return m>=c&&d+c>=m?void(o=b):void 0}),null!=o&&(l[o].highlight=!0)}var p=f.tickFormat()(a.x()(d,h)),q="expand"==e.style()?function(a,b){return d3.format(".1%")(a)}:function(a,b){return g.tickFormat()(a)};j.tooltip.position({left:i+k.left,top:b.mouseY+k.top}).chartContainer(H.parentNode).enabled(u).valueFormatter(q).data({value:p,series:l})(),j.renderGuideLine(i)}),j.dispatch.on("elementMouseout",function(a){A.tooltipHide(),e.clearHighlights()}),A.on("tooltipShow",function(a){u&&F(a,H.parentNode)}),A.on("changeState",function(b){"undefined"!=typeof b.disabled&&v.length===b.disabled.length&&(v.forEach(function(a,c){a.disabled=b.disabled[c]}),x.disabled=b.disabled),"undefined"!=typeof b.style&&e.style(b.style),a.update()})}),a}var b,d,e=c.models.stackedArea(),f=c.models.axis(),g=c.models.axis(),h=c.models.legend(),i=c.models.legend(),j=c.interactiveGuideline(),k={top:30,right:25,bottom:50,left:60},l=null,m=null,n=c.utils.defaultColor(),o=!0,p=!0,q=!0,r=!0,s=!1,t=!1,u=!0,v=function(a,b,c,d,e){return"

"+a+"

"+c+" on "+b+"

"},w=d3.format(",.2f"),x={style:e.style()},y=null,z="No Data Available.",A=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),B=250,C=["Stacked","Stream","Expanded"],D={},E=250;f.orient("bottom").tickPadding(7),g.orient(s?"right":"left"),i.updateState(!1);var F=function(b,d){var h=b.pos[0]+(d.offsetLeft||0),i=b.pos[1]+(d.offsetTop||0),j=f.tickFormat()(e.x()(b.point,b.pointIndex)),k=g.tickFormat()(e.y()(b.point,b.pointIndex)),l=v(b.series.key,j,k,b,a);c.tooltip.show([h,i],l,b.value<0?"n":"s",null,d)};return e.dispatch.on("tooltipShow",function(a){a.pos=[a.pos[0]+k.left,a.pos[1]+k.top],A.tooltipShow(a)}),e.dispatch.on("tooltipHide",function(a){A.tooltipHide(a)}),A.on("tooltipHide",function(){u&&c.tooltip.cleanup()}),a.dispatch=A,a.stacked=e,a.legend=h,a.controls=i,a.xAxis=f,a.yAxis=g,a.interactiveLayer=j,d3.rebind(a,e,"x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","sizeDomain","interactive","useVoronoi","offset","order","style","clipEdge","forceX","forceY","forceSize","interpolate"),a.options=c.utils.optionsFunc.bind(a),a.margin=function(b){return arguments.length?(k.top="undefined"!=typeof b.top?b.top:k.top,k.right="undefined"!=typeof b.right?b.right:k.right,k.bottom="undefined"!=typeof b.bottom?b.bottom:k.bottom,k.left="undefined"!=typeof b.left?b.left:k.left,a):k},a.width=function(b){return arguments.length?(l=b,a):l},a.height=function(b){return arguments.length?(m=b,a):m},a.color=function(b){return arguments.length?(n=c.utils.getColor(b),h.color(n),e.color(n),a):n},a.showControls=function(b){return arguments.length?(o=b,a):o},a.showLegend=function(b){return arguments.length?(p=b,a):p},a.showXAxis=function(b){return arguments.length?(q=b,a):q},a.showYAxis=function(b){return arguments.length?(r=b,a):r},a.rightAlignYAxis=function(b){return arguments.length?(s=b,g.orient(b?"right":"left"),a):s},a.useInteractiveGuideline=function(b){return arguments.length?(t=b,b===!0&&(a.interactive(!1),a.useVoronoi(!1)),a):t},a.tooltip=function(b){return arguments.length?(v=b,a):v},a.tooltips=function(b){return arguments.length?(u=b,a):u},a.tooltipContent=function(b){return arguments.length?(v=b,a):v},a.state=function(b){return arguments.length?(x=b,a):x},a.defaultState=function(b){return arguments.length?(y=b,a):y},a.noData=function(b){return arguments.length?(z=b,a):z},a.transitionDuration=function(b){return arguments.length?(E=b,a):E},a.controlsData=function(b){return arguments.length?(C=b,a):C},a.controlLabels=function(b){return arguments.length?"object"!=typeof b?D:(D=b,a):D},g.setTickFormat=g.tickFormat,g.tickFormat=function(a){return arguments.length?(w=a,g):w},a}}(),function(){function a(a,c,d){return b(a,c,d)}function b(a,i,k,l){l=l||{},i&&!d(i)&&(k=i,i=void 0),i=i||new Date,k=k||j,k.formats=k.formats||{};var m=i.getTime(),n=l.timezone,o=typeof n;if((l.utc||"number"==o||"string"==o)&&(i=c(i)),n){if("string"==o)var p="-"==n[0]?-1:1,q=parseInt(n.slice(1,3),10),r=parseInt(n.slice(3,5),10),n=60*p*q+r;o&&(i=new Date(i.getTime()+6e4*n))}return a.replace(/%([-_0]?.)/g,function(a,c){var d;if(2==c.length){if(d=c[0],"-"==d)d="";else if("_"==d)d=" ";else{if("0"!=d)return a;d="0"}c=c[1]}switch(c){case"A":return k.days[i.getDay()];case"a":return k.shortDays[i.getDay()];case"B":return k.months[i.getMonth()];case"b":return k.shortMonths[i.getMonth()];case"C":return e(Math.floor(i.getFullYear()/100),d);case"D":return b(k.formats.D||"%m/%d/%y",i,k);case"d":return e(i.getDate(),d);case"e":return i.getDate();case"F":return b(k.formats.F||"%Y-%m-%d",i,k);case"H":return e(i.getHours(),d);case"h":return k.shortMonths[i.getMonth()];case"I":return e(f(i),d);case"j":return d=new Date(i.getFullYear(),0,1),d=Math.ceil((i.getTime()-d.getTime())/864e5),e(d,3);case"k":return e(i.getHours(),null==d?" ":d);case"L":return e(Math.floor(m%1e3),3);case"l":return e(f(i),null==d?" ":d);case"M":return e(i.getMinutes(),d);case"m":return e(i.getMonth()+1,d);case"n":return"\n";case"o":return String(i.getDate())+g(i.getDate());case"P":return i.getHours()<12?k.am:k.pm;case"p":return i.getHours()<12?k.AM:k.PM;case"R":return b(k.formats.R||"%H:%M",i,k);case"r":return b(k.formats.r||"%I:%M:%S %p",i,k);case"S":return e(i.getSeconds(),d);case"s":return Math.floor(m/1e3);case"T":return b(k.formats.T||"%H:%M:%S",i,k);case"t":return" ";case"U":return e(h(i,"sunday"),d);case"u":return d=i.getDay(),0==d?7:d;case"v":return b(k.formats.v||"%e-%b-%Y",i,k);case"W":return e(h(i,"monday"),d);case"w":return i.getDay();case"Y":return i.getFullYear();case"y":return d=String(i.getFullYear()),d.slice(d.length-2);case"Z":return l.utc?"GMT":(d=i.toString().match(/\((\w+)\)/))&&d[1]||"";case"z":return l.utc?"+0000":(d="number"==typeof n?n:-i.getTimezoneOffset(),(0>d?"-":"+")+e(Math.abs(d/60))+e(d%60));default:return c}})}function c(a){var b=6e4*(a.getTimezoneOffset()||0);return new Date(a.getTime()+b)}function d(a){for(var b=0,c=k.length,b=0;c>b;++b)if("function"!=typeof a[k[b]])return!1;return!0}function e(a,b,c){if("number"==typeof b&&(c=b,b="0"),null==b&&(b="0"),c=c||2,a=String(a),b)for(;a.length12&&(a-=12),a}function g(a){var b=a%10;if(a%=100,a>=11&&13>=a||0===b||b>=4)return"th";switch(b){case 1:return"st";case 2:return"nd";case 3:return"rd"}}function h(a,b){var b=b||"sunday",c=a.getDay();"monday"==b&&(0==c?c=6:c--);var d=new Date(a.getFullYear(),0,1);return Math.floor(((a-d)/864e5+7-c)/7)}var i;i="undefined"!=typeof module?module.exports=a:function(){return this||(0,eval)("this")}();var j={days:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),shortDays:"Sun Mon Tue Wed Thu Fri Sat".split(" "),months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),AM:"AM",PM:"PM",am:"am",pm:"pm"};i.strftime=a,i.strftimeTZ=a.strftimeTZ=function(a,c,d,e){return"number"!=typeof d&&"string"!=typeof d||null!=e||(e=d,d=void 0),b(a,c,d,{timezone:e})},i.strftimeUTC=a.strftimeUTC=function(a,c,d){return b(a,c,d,{utc:!0})},i.localizedStrftime=a.localizedStrftime=function(a){return function(c,d){return b(c,d,a)}};var k=["getTime","getTimezoneOffset","getDay","getDate","getMonth","getFullYear","getYear","getHours","getMinutes","getSeconds"]}(),Date.ext={},Date.ext.util={},Date.ext.util.xPad=function(a,b,c){for("undefined"==typeof c&&(c=10);parseInt(a,10)1;c/=10)a=b.toString()+a;return a.toString()},Date.prototype.locale="en-GB",document.getElementsByTagName("html")&&document.getElementsByTagName("html")[0].lang&&(Date.prototype.locale=document.getElementsByTagName("html")[0].lang),Date.ext.locales={},Date.ext.locales.en={a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a %d %b %Y %T %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%T"},Date.ext.locales["en-US"]=Date.ext.locales.en,Date.ext.locales["en-US"].c="%a %d %b %Y %r %Z",Date.ext.locales["en-US"].x="%D",Date.ext.locales["en-US"].X="%r",Date.ext.locales["en-GB"]=Date.ext.locales.en,Date.ext.locales["en-AU"]=Date.ext.locales["en-GB"],Date.ext.formats={a:function(a){return Date.ext.locales[a.locale].a[a.getDay()]},A:function(a){return Date.ext.locales[a.locale].A[a.getDay()]},b:function(a){return Date.ext.locales[a.locale].b[a.getMonth()]},B:function(a){return Date.ext.locales[a.locale].B[a.getMonth()]},c:"toLocaleString",C:function(a){return Date.ext.util.xPad(parseInt(a.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(a){return Date.ext.util.xPad(parseInt(Date.ext.util.G(a)/100,10),0)},G:function(a){var b=a.getFullYear(),c=parseInt(Date.ext.formats.V(a),10),d=parseInt(Date.ext.formats.W(a),10);return d>c?b++:0===d&&c>=52&&b--,b},H:["getHours","0"], +I:function(a){var b=a.getHours()%12;return Date.ext.util.xPad(0===b?12:b,0)},j:function(a){var b=a-new Date(""+a.getFullYear()+"/1/1 GMT");b+=6e4*a.getTimezoneOffset();var c=parseInt(b/6e4/60/24,10)+1;return Date.ext.util.xPad(c,0,100)},m:function(a){return Date.ext.util.xPad(a.getMonth()+1,0)},M:["getMinutes","0"],p:function(a){return Date.ext.locales[a.locale].p[a.getHours()>=12?1:0]},P:function(a){return Date.ext.locales[a.locale].P[a.getHours()>=12?1:0]},S:["getSeconds","0"],u:function(a){var b=a.getDay();return 0===b?7:b},U:function(a){var b=parseInt(Date.ext.formats.j(a),10),c=6-a.getDay(),d=parseInt((b+c)/7,10);return Date.ext.util.xPad(d,0)},V:function(a){var b=parseInt(Date.ext.formats.W(a),10),c=new Date(""+a.getFullYear()+"/1/1").getDay(),d=b+(c>4||1>=c?0:1);return 53==d&&new Date(""+a.getFullYear()+"/12/31").getDay()<4?d=1:0===d&&(d=Date.ext.formats.V(new Date(""+(a.getFullYear()-1)+"/12/31"))),Date.ext.util.xPad(d,0)},w:"getDay",W:function(a){var b=parseInt(Date.ext.formats.j(a),10),c=7-Date.ext.formats.u(a),d=parseInt((b+c)/7,10);return Date.ext.util.xPad(d,0,10)},y:function(a){return Date.ext.util.xPad(a.getFullYear()%100,0)},Y:"getFullYear",z:function(a){var b=a.getTimezoneOffset(),c=Date.ext.util.xPad(parseInt(Math.abs(b/60),10),0),d=Date.ext.util.xPad(b%60,0);return(b>0?"-":"+")+c+d},Z:function(a){return a.toString().replace(/^.*\(([^)]+)\)$/,"$1")},"%":function(a){return"%"}},Date.ext.aggregates={c:"locale",D:"%m/%d/%y",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:" ",T:"%H:%M:%S",x:"locale",X:"locale"},Date.ext.aggregates.z=Date.ext.formats.z(new Date),Date.ext.aggregates.Z=Date.ext.formats.Z(new Date),Date.ext.unsupported={},Date.prototype.strftime=function(a){this.locale in Date.ext.locales||(this.locale.replace(/-[a-zA-Z]+$/,"")in Date.ext.locales?this.locale=this.locale.replace(/-[a-zA-Z]+$/,""):this.locale="en-GB");for(var b=this;a.match(/%[cDhnrRtTxXzZ]/);)a=a.replace(/%([cDhnrRtTxXzZ])/g,function(a,c){var d=Date.ext.aggregates[c];return"locale"==d?Date.ext.locales[b.locale][c]:d});var c=a.replace(/%([aAbBCdegGHIjmMpPSuUVwWyY%])/g,function(a,c){var d=Date.ext.formats[c];return"string"==typeof d?b[d]():"function"==typeof d?d.call(b,b):"object"==typeof d&&"string"==typeof d[0]?Date.ext.util.xPad(b[d[0]](),d[1]):c});return b=null,c},printStackTrace.implementation=function(){},printStackTrace.implementation.prototype={run:function(a,b){return a=a||this.createException(),b=b||this.mode(a),"other"===b?this.other(arguments.callee):this[b](a)},createException:function(){try{this.undef()}catch(a){return a}},mode:function(a){return a.arguments&&a.stack?"chrome":"string"==typeof a.message&&"undefined"!=typeof window&&window.opera?a.stacktrace?a.message.indexOf("\n")>-1&&a.message.split("\n").length>a.stacktrace.split("\n").length?"opera9":a.stack?a.stacktrace.indexOf("called from line")<0?"opera10b":"opera11":"opera10a":"opera9":a.stack?"firefox":"other"},instrumentFunction:function(a,b,c){a=a||window;var d=a[b];a[b]=function(){return c.call(this,printStackTrace().slice(4)),a[b]._instrumented.apply(this,arguments)},a[b]._instrumented=d},deinstrumentFunction:function(a,b){a[b].constructor===Function&&a[b]._instrumented&&a[b]._instrumented.constructor===Function&&(a[b]=a[b]._instrumented)},chrome:function(a){var b=(a.stack+"\n").replace(/^\S[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^([^\(]+?)([\n$])/gm,"{anonymous}()@$1$2").replace(/^Object.\s*\(([^\)]+)\)/gm,"{anonymous}()@$1").split("\n");return b.pop(),b},firefox:function(a){return a.stack.replace(/(?:\n@:0)?\s+$/m,"").replace(/^\(/gm,"{anonymous}(").split("\n")},opera11:function(a){for(var b="{anonymous}",c=/^.*line (\d+), column (\d+)(?: in (.+))? in (\S+):$/,d=a.stacktrace.split("\n"),e=[],f=0,g=d.length;g>f;f+=2){var h=c.exec(d[f]);if(h){var i=h[4]+":"+h[1]+":"+h[2],j=h[3]||"global code";j=j.replace(//,"$1").replace(//,b),e.push(j+"@"+i+" -- "+d[f+1].replace(/^\s+/,""))}}return e},opera10b:function(a){for(var b=/^(.*)@(.+):(\d+)$/,c=a.stacktrace.split("\n"),d=[],e=0,f=c.length;f>e;e++){var g=b.exec(c[e]);if(g){var h=g[1]?g[1]+"()":"global code";d.push(h+"@"+g[2]+":"+g[3])}}return d},opera10a:function(a){for(var b="{anonymous}",c=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,d=a.stacktrace.split("\n"),e=[],f=0,g=d.length;g>f;f+=2){var h=c.exec(d[f]);if(h){var i=h[3]||b;e.push(i+"()@"+h[2]+":"+h[1]+" -- "+d[f+1].replace(/^\s+/,""))}}return e},opera9:function(a){for(var b="{anonymous}",c=/Line (\d+).*script (?:in )?(\S+)/i,d=a.message.split("\n"),e=[],f=2,g=d.length;g>f;f+=2){var h=c.exec(d[f]);h&&e.push(b+"()@"+h[2]+":"+h[1]+" -- "+d[f+1].replace(/^\s+/,""))}return e},other:function(a){for(var b,c,d="{anonymous}",e=/function\s*([\w\-$]+)?\s*\(/i,f=[],g=10;a&&f.lengthk;++k)if(c=a[b-k-1],e=c.indexOf("//"),e>=0&&(c=c.substr(0,e)),c){if(i=c+i,d=g.exec(i),d&&d[1])return d[1];if(d=f.exec(i),d&&d[1])return d[1];if(d=h.exec(i),d&&d[1])return d[1]}return"(?)"}},CanvasRenderingContext2D.prototype.installPattern=function(a){if("undefined"!=typeof this.isPatternInstalled)throw"Must un-install old line pattern before installing a new one.";this.isPatternInstalled=!0;var b=[0,0],c=[],d=this.beginPath,e=this.lineTo,f=this.moveTo,g=this.stroke;this.uninstallPattern=function(){this.beginPath=d,this.lineTo=e,this.moveTo=f,this.stroke=g,this.uninstallPattern=void 0,this.isPatternInstalled=void 0},this.beginPath=function(){c=[],d.call(this)},this.moveTo=function(a,b){c.push([[a,b]]),f.call(this,a,b)},this.lineTo=function(a,b){var d=c[c.length-1];d.push([a,b])},this.stroke=function(){if(0===c.length)return void g.call(this);for(var d=0;ds;){var t=a[r];s+=b[1]?b[1]:t,s>p?(b=[r,s-p],s=p):b=[(r+1)%a.length,0],r%2===0?e.call(this,s,0):f.call(this,s,0),r=(r+1)%a.length}this.restore(),i=l,j=m}g.call(this),c=[]}},CanvasRenderingContext2D.prototype.uninstallPattern=function(){throw"Must install a line pattern before uninstalling it."};var DygraphOptions=function(){var a=function(a){this.dygraph_=a,this.yAxes_=[],this.xAxis_={},this.series_={},this.global_=this.dygraph_.attrs_,this.user_=this.dygraph_.user_attrs_||{},this.labels_=[],this.highlightSeries_=this.get("highlightSeriesOpts")||{},this.reparseSeries()};return a.AXIS_STRING_MAPPINGS_={y:0,Y:0,y1:0,Y1:0,y2:1,Y2:1},a.axisToIndex_=function(b){if("string"==typeof b){if(a.AXIS_STRING_MAPPINGS_.hasOwnProperty(b))return a.AXIS_STRING_MAPPINGS_[b];throw"Unknown axis : "+b}if("number"==typeof b){if(0===b||1===b)return b;throw"Dygraphs only supports two y-axes, indexed from 0-1."}if(b)throw"Unknown axis : "+b;return 0},a.prototype.reparseSeries=function(){var b=this.get("labels");if(b){this.labels_=b.slice(1),this.yAxes_=[{series:[],options:{}}],this.xAxis_={options:{}},this.series_={};var c=!this.user_.series;if(c){for(var d=0,e=0;e1&&Dygraph.update(this.yAxes_[1].options,j.y2||{}),Dygraph.update(this.xAxis_.options,j.x||{})}},a.prototype.get=function(a){var b=this.getGlobalUser_(a);return null!==b?b:this.getGlobalDefault_(a)},a.prototype.getGlobalUser_=function(a){return this.user_.hasOwnProperty(a)?this.user_[a]:null},a.prototype.getGlobalDefault_=function(a){return this.global_.hasOwnProperty(a)?this.global_[a]:Dygraph.DEFAULT_ATTRS.hasOwnProperty(a)?Dygraph.DEFAULT_ATTRS[a]:null},a.prototype.getForAxis=function(a,b){var c,d;if("number"==typeof b)c=b,d=0===c?"y":"y2";else{if("y1"==b&&(b="y"),"y"==b)c=0;else if("y2"==b)c=1;else{if("x"!=b)throw"Unknown axis "+b;c=-1}d=b}var e=-1==c?this.xAxis_:this.yAxes_[c];if(e){var f=e.options;if(f.hasOwnProperty(a))return f[a]}var g=this.getGlobalUser_(a);if(null!==g)return g;var h=Dygraph.DEFAULT_ATTRS.axes[d];return h.hasOwnProperty(a)?h[a]:this.getGlobalDefault_(a)},a.prototype.getForSeries=function(a,b){if(b===this.dygraph_.getHighlightSeries()&&this.highlightSeries_.hasOwnProperty(a))return this.highlightSeries_[a];if(!this.series_.hasOwnProperty(b))throw"Unknown series: "+b;var c=this.series_[b],d=c.options;return d.hasOwnProperty(a)?d[a]:this.getForAxis(a,c.yAxis)},a.prototype.numAxes=function(){return this.yAxes_.length},a.prototype.axisForSeries=function(a){return this.series_[a].yAxis},a.prototype.axisOptions=function(a){return this.yAxes_[a].options},a.prototype.seriesForAxis=function(a){return this.yAxes_[a].series},a.prototype.seriesNames=function(){return this.labels_},a}(),DygraphLayout=function(a){this.dygraph_=a,this.points=[],this.setNames=[],this.annotations=[],this.yAxes_=null,this.xTicks_=null,this.yTicks_=null};DygraphLayout.prototype.attr_=function(a){return this.dygraph_.attr_(a)},DygraphLayout.prototype.addDataset=function(a,b){this.points.push(b),this.setNames.push(a)},DygraphLayout.prototype.getPlotArea=function(){return this.area_},DygraphLayout.prototype.computePlotArea=function(){var a={x:0,y:0};a.w=this.dygraph_.width_-a.x-this.attr_("rightGap"),a.h=this.dygraph_.height_;var b={chart_div:this.dygraph_.graphDiv,reserveSpaceLeft:function(b){var c={x:a.x,y:a.y,w:b,h:a.h};return a.x+=b,a.w-=b,c},reserveSpaceRight:function(b){var c={x:a.x+a.w-b,y:a.y,w:b,h:a.h};return a.w-=b,c},reserveSpaceTop:function(b){var c={x:a.x,y:a.y,w:a.w,h:b};return a.y+=b,a.h-=b,c},reserveSpaceBottom:function(b){var c={x:a.x,y:a.y+a.h-b,w:a.w,h:b};return a.h-=b,c},chartRect:function(){return{x:a.x,y:a.y,w:a.w,h:a.h}}};this.dygraph_.cascadeEvents_("layout",b),this.area_=a},DygraphLayout.prototype.setAnnotations=function(a){this.annotations=[];for(var b=this.attr_("xValueParser")||function(a){return a},c=0;c=0&&1>=d&&this.xticks.push([d,c]);for(this.yticks=[],a=0;a=0&&1>=d&&this.yticks.push([a,d,c])},DygraphLayout.prototype._evaluateAnnotations=function(){var a,b={};for(a=0;a=0;d--)c.childNodes[d].className==b&&c.removeChild(c.childNodes[d]);for(var e=document.bgColor,f=this.dygraph_.graphDiv;f!=document;){var g=f.currentStyle.backgroundColor;if(g&&"transparent"!=g){e=g;break}f=f.parentNode}var h=this.area;a({x:0,y:0,w:h.x,h:this.height}),a({x:h.x,y:0,w:this.width-h.x,h:h.y}),a({x:h.x+h.w,y:0,w:this.width-h.x-h.w,h:this.height}),a({x:h.x,y:h.y+h.h,w:this.width-h.x,h:this.height-h.h-h.y})},DygraphCanvasRenderer._getIteratorPredicate=function(a){return a?DygraphCanvasRenderer._predicateThatSkipsEmptyPoints:null},DygraphCanvasRenderer._predicateThatSkipsEmptyPoints=function(a,b){return null!==a[b].yval},DygraphCanvasRenderer._drawStyledLine=function(a,b,c,d,e,f,g){var h=a.dygraph,i=h.getOption("stepPlot",a.setName);Dygraph.isArrayLike(d)||(d=null);var j=h.getOption("drawGapEdgePoints",a.setName),k=a.points,l=Dygraph.createIterator(k,0,k.length,DygraphCanvasRenderer._getIteratorPredicate(h.getOption("connectSeparatedPoints"))),m=d&&d.length>=2,n=a.drawingContext;n.save(),m&&n.installPattern(d);var o=DygraphCanvasRenderer._drawSeries(a,l,c,g,e,j,i,b);DygraphCanvasRenderer._drawPointsOnLine(a,o,f,b,g),m&&n.uninstallPattern(),n.restore()},DygraphCanvasRenderer._drawSeries=function(a,b,c,d,e,f,g,h){var i,j,k=null,l=null,m=null,n=[],o=!0,p=a.drawingContext;p.beginPath(),p.strokeStyle=h,p.lineWidth=c;for(var q=b.array_,r=b.end_,s=b.predicate_,t=b.start_;r>t;t++){if(j=q[t],s){for(;r>t&&!s(q,t);)t++;if(t==r)break;j=q[t]}if(null===j.canvasy||j.canvasy!=j.canvasy)g&&null!==k&&(p.moveTo(k,l),p.lineTo(j.canvasx,l)),k=l=null;else{if(i=!1,f||!k){b.nextIdx_=t,b.next(),m=b.hasNext?b.peek.canvasy:null;var u=null===m||m!=m;i=!k&&u,f&&(!o&&!k||b.hasNext&&u)&&(i=!0)}null!==k?c&&(g&&(p.moveTo(k,l),p.lineTo(j.canvasx,l)),p.lineTo(j.canvasx,j.canvasy)):p.moveTo(j.canvasx,j.canvasy),(e||i)&&n.push([j.canvasx,j.canvasy,j.idx]),k=j.canvasx,l=j.canvasy}o=!1}return p.stroke(),n},DygraphCanvasRenderer._drawPointsOnLine=function(a,b,c,d,e){for(var f=a.drawingContext,g=0;g=0;d--)b.visibility()[d]||c.splice(d,1);var e=function(){for(var a=0;a=0;p--){var q=c[p];if(b.getOption("fillGraph",q)){var r=b.getOption("stepPlot",q),s=n[p],t=b.axisPropertiesForSeries(q),u=1+t.minyval*t.yscale;0>u?u=0:u>1&&(u=1),u=i.h*u+i.y;var v,w=j[p],x=Dygraph.createIterator(w,0,w.length,DygraphCanvasRenderer._getIteratorPredicate(b.getOption("connectSeparatedPoints"))),y=NaN,z=[-1,-1],A=new RGBColorParser(s),B="rgba("+A.r+","+A.g+","+A.b+","+l+")";h.fillStyle=B,h.beginPath();for(var C,D=!0;x.hasNext;){var E=x.next();if(Dygraph.isOK(E.y)){if(m){if(!D&&C==E.xval)continue;D=!1,C=E.xval,f=o[E.canvasx];var F;F=void 0===f?u:g?f[0]:f,v=[E.canvasy,F],r?-1===z[0]?o[E.canvasx]=[E.canvasy,u]:o[E.canvasx]=[E.canvasy,z[0]]:o[E.canvasx]=E.canvasy}else v=[E.canvasy,u];isNaN(y)||(h.moveTo(y,z[0]),r?h.lineTo(E.canvasx,z[0]):h.lineTo(E.canvasx,v[0]),g&&f?h.lineTo(E.canvasx,f[1]):h.lineTo(E.canvasx,v[1]),h.lineTo(y,z[1]),h.closePath()),z=v,y=E.canvasx}else y=NaN,null===E.y_stacked||isNaN(E.y_stacked)||(o[E.canvasx]=i.h*E.y_stacked+i.y)}g=r,h.fill()}}}};var Dygraph=function(a,b,c,d){this.is_initial_draw_=!0,this.readyFns_=[],void 0!==d?(this.warn("Using deprecated four-argument dygraph constructor"),this.__old_init__(a,b,c,d)):this.__init__(a,b,c)};Dygraph.NAME="Dygraph",Dygraph.VERSION="1.0.1",Dygraph.__repr__=function(){return"["+this.NAME+" "+this.VERSION+"]"},Dygraph.toString=function(){return this.__repr__()},Dygraph.DEFAULT_ROLL_PERIOD=1,Dygraph.DEFAULT_WIDTH=480,Dygraph.DEFAULT_HEIGHT=320,Dygraph.ANIMATION_STEPS=12,Dygraph.ANIMATION_DURATION=200,Dygraph.KMB_LABELS=["K","M","B","T","Q"],Dygraph.KMG2_BIG_LABELS=["k","M","G","T","P","E","Z","Y"],Dygraph.KMG2_SMALL_LABELS=["m","u","n","p","f","a","z","y"],Dygraph.numberValueFormatter=function(a,b,c,d){var e=b("sigFigs");if(null!==e)return Dygraph.floatFormat(a,e);var f,g=b("digitsAfterDecimal"),h=b("maxNumberWidth"),i=b("labelsKMB"),j=b("labelsKMG2");if(f=0!==a&&(Math.abs(a)>=Math.pow(10,h)||Math.abs(a)=0;p--,o/=k)if(n>=o){f=Dygraph.round_(a/o,g)+l[p];break}if(j){var q=String(a.toExponential()).split("e-");2===q.length&&q[1]>=3&&q[1]<=24&&(f=q[1]%3>0?Dygraph.round_(q[0]/Dygraph.pow(10,q[1]%3),g):Number(q[0]).toFixed(2),f+=m[Math.floor(q[1]/3)-1])}}return f},Dygraph.numberAxisLabelFormatter=function(a,b,c,d){return Dygraph.numberValueFormatter(a,c,d)},Dygraph.dateString_=function(a){var b=Dygraph.zeropad,c=new Date(a),d=""+c.getFullYear(),e=b(c.getMonth()+1),f=b(c.getDate()),g="",h=3600*c.getHours()+60*c.getMinutes()+c.getSeconds();return h&&(g=" "+Dygraph.hmsString_(a)),d+"/"+e+"/"+f+g},Dygraph.dateAxisFormatter=function(a,b){if(b>=Dygraph.DECADAL)return a.strftime("%Y");if(b>=Dygraph.MONTHLY)return a.strftime("%b %y");var c=3600*a.getHours()+60*a.getMinutes()+a.getSeconds()+a.getMilliseconds();return 0===c||b>=Dygraph.DAILY?new Date(a.getTime()+36e5).strftime("%d%b"):Dygraph.hmsString_(a.getTime())},Dygraph.Plotters=DygraphCanvasRenderer._Plotters,Dygraph.DEFAULT_ATTRS={highlightCircleSize:3,highlightSeriesOpts:null,highlightSeriesBackgroundAlpha:.5,labelsDivWidth:250,labelsDivStyles:{},labelsSeparateLines:!1,labelsShowZeroValues:!0,labelsKMB:!1,labelsKMG2:!1,showLabelsOnHighlight:!0,digitsAfterDecimal:2,maxNumberWidth:6,sigFigs:null,strokeWidth:1,strokeBorderWidth:0,strokeBorderColor:"white",axisTickSize:3,axisLabelFontSize:14,xAxisLabelWidth:50,yAxisLabelWidth:50,rightGap:5,showRoller:!1,xValueParser:Dygraph.dateParser,delimiter:",",sigma:2,errorBars:!1,fractions:!1,wilsonInterval:!0,customBars:!1,fillGraph:!1,fillAlpha:.15,connectSeparatedPoints:!1,stackedGraph:!1,stackedGraphNaNFill:"all",hideOverlayOnMouseOut:!0,legend:"onmouseover",stepPlot:!1,avoidMinZero:!1,xRangePad:0,yRangePad:null,drawAxesAtZero:!1,titleHeight:28,xLabelHeight:18,yLabelWidth:18,drawXAxis:!0,drawYAxis:!0,axisLineColor:"black",axisLineWidth:.3,gridLineWidth:.3,axisLabelColor:"black",axisLabelFont:"Arial",axisLabelWidth:50,drawYGrid:!0,drawXGrid:!0,gridLineColor:"rgb(128,128,128)",interactionModel:null,animatedZooms:!1,showRangeSelector:!1,rangeSelectorHeight:40,rangeSelectorPlotStrokeColor:"#808FAB",rangeSelectorPlotFillColor:"#A7B1C4",plotter:[Dygraph.Plotters.fillPlotter,Dygraph.Plotters.errorPlotter,Dygraph.Plotters.linePlotter],plugins:[],axes:{x:{pixelsPerLabel:60,axisLabelFormatter:Dygraph.dateAxisFormatter,valueFormatter:Dygraph.dateString_,drawGrid:!0,independentTicks:!0,ticker:null},y:{pixelsPerLabel:30,valueFormatter:Dygraph.numberValueFormatter,axisLabelFormatter:Dygraph.numberAxisLabelFormatter,drawGrid:!0,independentTicks:!0,ticker:null},y2:{pixelsPerLabel:30,valueFormatter:Dygraph.numberValueFormatter,axisLabelFormatter:Dygraph.numberAxisLabelFormatter,drawGrid:!1,independentTicks:!1,ticker:null}}},Dygraph.HORIZONTAL=1,Dygraph.VERTICAL=2,Dygraph.PLUGINS=[],Dygraph.addedAnnotationCSS=!1,Dygraph.prototype.__old_init__=function(a,b,c,d){if(null!==c){for(var e=["Date"],f=0;f=0;e--){var f=d[e][0],g=d[e][1];if(g.call(f,c),c.propagationStopped)break}return c.defaultPrevented},Dygraph.prototype.isZoomed=function(a){if(null===a||void 0===a)return this.zoomed_x_||this.zoomed_y_;if("x"===a)return this.zoomed_x_;if("y"===a)return this.zoomed_y_;throw"axis parameter is ["+a+"] must be null, 'x' or 'y'."},Dygraph.prototype.toString=function(){var a=this.maindiv_,b=a&&a.id?a.id:a;return"[Dygraph "+b+"]"},Dygraph.prototype.attr_=function(a,b){return b?this.attributes_.getForSeries(a,b):this.attributes_.get(a)},Dygraph.prototype.getOption=function(a,b){return this.attr_(a,b)},Dygraph.prototype.getOptionForAxis=function(a,b){return this.attributes_.getForAxis(a,b)},Dygraph.prototype.optionsViewForAxis_=function(a){var b=this;return function(c){var d=b.user_attrs_.axes;return d&&d[a]&&d[a].hasOwnProperty(c)?d[a][c]:"undefined"!=typeof b.user_attrs_[c]?b.user_attrs_[c]:(d=b.attrs_.axes,d&&d[a]&&d[a].hasOwnProperty(c)?d[a][c]:"y"==a&&b.axes_[0].hasOwnProperty(c)?b.axes_[0][c]:"y2"==a&&b.axes_[1].hasOwnProperty(c)?b.axes_[1][c]:b.attr_(c))}},Dygraph.prototype.rollPeriod=function(){return this.rollPeriod_},Dygraph.prototype.xAxisRange=function(){return this.dateWindow_?this.dateWindow_:this.xAxisExtremes()},Dygraph.prototype.xAxisExtremes=function(){var a=this.attr_("xRangePad")/this.plotter_.area.w;if(0===this.numRows())return[0-a,1+a]; +var b=this.rawData_[0][0],c=this.rawData_[this.rawData_.length-1][0];if(a){var d=c-b;b-=d*a,c+=d*a}return[b,c]},Dygraph.prototype.yAxisRange=function(a){if("undefined"==typeof a&&(a=0),0>a||a>=this.axes_.length)return null;var b=this.axes_[a];return[b.computedValueRange[0],b.computedValueRange[1]]},Dygraph.prototype.yAxisRanges=function(){for(var a=[],b=0;ba||a>this.rawData_.length?null:0>b||b>this.rawData_[a].length?null:this.rawData_[a][b]},Dygraph.prototype.createInterface_=function(){var a=this.maindiv_;this.graphDiv=document.createElement("div"),this.graphDiv.style.textAlign="left",a.appendChild(this.graphDiv),this.canvas_=Dygraph.createCanvas(),this.canvas_.style.position="absolute",this.hidden_=this.createPlotKitCanvas_(this.canvas_),this.resizeElements_(),this.canvas_ctx_=Dygraph.getContext(this.canvas_),this.hidden_ctx_=Dygraph.getContext(this.hidden_),this.graphDiv.appendChild(this.hidden_),this.graphDiv.appendChild(this.canvas_),this.mouseEventElement_=this.createMouseEventElement_(),this.layout_=new DygraphLayout(this);var b=this;this.mouseMoveHandler_=function(a){b.mouseMove_(a)},this.mouseOutHandler_=function(a){var c=a.target||a.fromElement,d=a.relatedTarget||a.toElement;Dygraph.isNodeContainedBy(c,b.graphDiv)&&!Dygraph.isNodeContainedBy(d,b.graphDiv)&&b.mouseOut_(a)},this.addAndTrackEvent(window,"mouseout",this.mouseOutHandler_),this.addAndTrackEvent(this.mouseEventElement_,"mousemove",this.mouseMoveHandler_),this.resizeHandler_||(this.resizeHandler_=function(a){b.resize()},this.addAndTrackEvent(window,"resize",this.resizeHandler_))},Dygraph.prototype.resizeElements_=function(){this.graphDiv.style.width=this.width_+"px",this.graphDiv.style.height=this.height_+"px",this.canvas_.width=this.width_,this.canvas_.height=this.height_,this.canvas_.style.width=this.width_+"px",this.canvas_.style.height=this.height_+"px",this.hidden_.width=this.width_,this.hidden_.height=this.height_,this.hidden_.style.width=this.width_+"px",this.hidden_.style.height=this.height_+"px"},Dygraph.prototype.destroy=function(){this.canvas_ctx_.restore(),this.hidden_ctx_.restore();var a=function(b){for(;b.hasChildNodes();)a(b.firstChild),b.removeChild(b.firstChild)};this.removeTrackedEvents_(),Dygraph.removeEvent(window,"mouseout",this.mouseOutHandler_),Dygraph.removeEvent(this.mouseEventElement_,"mousemove",this.mouseMoveHandler_),Dygraph.removeEvent(window,"resize",this.resizeHandler_),this.resizeHandler_=null,a(this.maindiv_);var b=function(a){for(var b in a)"object"==typeof a[b]&&(a[b]=null)};b(this.layout_),b(this.plotter_),b(this)},Dygraph.prototype.createPlotKitCanvas_=function(a){var b=Dygraph.createCanvas();return b.style.position="absolute",b.style.top=a.style.top,b.style.left=a.style.left,b.width=this.width_,b.height=this.height_,b.style.width=this.width_+"px",b.style.height=this.height_+"px",b},Dygraph.prototype.createMouseEventElement_=function(){if(this.isUsingExcanvas_){var a=document.createElement("div");return a.style.position="absolute",a.style.backgroundColor="white",a.style.filter="alpha(opacity=0)",a.style.width=this.width_+"px",a.style.height=this.height_+"px",this.graphDiv.appendChild(a),a}return this.canvas_},Dygraph.prototype.setColors_=function(){var a=this.getLabels(),b=a.length-1;this.colors_=[],this.colorsMap_={};var c,d=this.attr_("colors");if(d){for(c=0;b>c;c++)if(this.visibility()[c]){var e=d[c%d.length];this.colors_.push(e),this.colorsMap_[a[1+c]]=e}}else{var f=this.attr_("colorSaturation")||1,g=this.attr_("colorValue")||.5,h=Math.ceil(b/2);for(c=1;b>=c;c++)if(this.visibility()[c-1]){var i=c%2?Math.ceil(c/2):h+c/2,j=1*i/(1+b),e=Dygraph.hsvToRGB(j,f,g);this.colors_.push(e),this.colorsMap_[a[c]]=e}}},Dygraph.prototype.getColors=function(){return this.colors_},Dygraph.prototype.getPropertiesForSeries=function(a){for(var b=-1,c=this.getLabels(),d=1;d=f;f++)g=Dygraph.zoomAnimationFunction(f,h),i[f-1]=[a[0]*(1-g)+g*b[0],a[1]*(1-g)+g*b[1]];if(null!==c&&null!==d)for(f=1;h>=f;f++){g=Dygraph.zoomAnimationFunction(f,h);for(var k=[],l=0;lh;h++){var i=f[h];if(Dygraph.isValidPoint(i,!0)){var j=Math.abs(i.canvasx-a);b>j&&(b=j,c=i.idx)}}return c},Dygraph.prototype.findClosestPoint=function(a,b){for(var c,d,e,f,g,h,i,j=1/0,k=this.layout_.points.length-1;k>=0;--k)for(var l=this.layout_.points[k],m=0;mc&&(j=c,g=f,h=k,i=f.idx));var n=this.layout_.setNames[h];return{row:i,seriesName:n,point:g}},Dygraph.prototype.findStackedPoint=function(a,b){for(var c,d,e=this.findClosestRow(a),f=0;f=i.length)){var j=i[h];if(Dygraph.isValidPoint(j)){var k=j.canvasy;if(a>j.canvasx&&h+10){var n=(a-j.canvasx)/m;k+=n*(l.canvasy-j.canvasy)}}}else if(a0){var o=i[h-1];if(Dygraph.isValidPoint(o)){var m=j.canvasx-o.canvasx;if(m>0){var n=(j.canvasx-a)/m;k+=n*(o.canvasy-j.canvasy)}}}(0===f||b>k)&&(c=j,d=f)}}}var p=this.layout_.setNames[d];return{row:e,seriesName:p,point:c}},Dygraph.prototype.mouseMove_=function(a){var b=this.layout_.points;if(void 0!==b&&null!==b){var c=this.eventToDomCoords(a),d=c[0],e=c[1],f=this.attr_("highlightSeriesOpts"),g=!1;if(f&&!this.isSeriesLocked()){var h;h=this.attr_("stackedGraph")?this.findStackedPoint(d,e):this.findClosestPoint(d,e),g=this.setSelection(h.row,h.seriesName)}else{var i=this.findClosestRow(d);g=this.setSelection(i)}var j=this.attr_("highlightCallback");j&&g&&j(a,this.lastx_,this.selPoints_,this.lastRow_,this.highlightSet_)}},Dygraph.prototype.getLeftBoundary_=function(a){if(this.boundaryIds_[a])return this.boundaryIds_[a][0];for(var b=0;ba?d:b-d;if(0>=e)return void(this.fadeLevel&&this.updateSelection_(1));var f=++this.animateId,g=this;Dygraph.repeatAndCleanup(function(c){g.animateId==f&&(g.fadeLevel+=a,0===g.fadeLevel?g.clearSelection():g.updateSelection_(g.fadeLevel/b))},e,c,function(){})},Dygraph.prototype.updateSelection_=function(a){this.cascadeEvents_("select",{selectedX:this.lastx_,selectedPoints:this.selPoints_});var b,c=this.canvas_ctx_;if(this.attr_("highlightSeriesOpts")){c.clearRect(0,0,this.width_,this.height_);var d=1-this.attr_("highlightSeriesBackgroundAlpha");if(d){var e=!0;if(e){if(void 0===a)return void this.animateSelection_(1);d*=a}c.fillStyle="rgba(255,255,255,"+d+")",c.fillRect(0,0,this.width_,this.height_)}this.plotter_._renderLineChart(this.highlightSet_,c)}else if(this.previousVerticalX_>=0){var f=0,g=this.attr_("labels");for(b=1;bf&&(f=h)}var i=this.previousVerticalX_;c.clearRect(i-f-1,0,2*f+2,this.height_)}if(this.isUsingExcanvas_&&this.currentZoomRectArgs_&&Dygraph.prototype.drawZoomRect_.apply(this,this.currentZoomRectArgs_),this.selPoints_.length>0){var j=this.selPoints_[0].canvasx;for(c.save(),b=0;b=0){a!=this.lastRow_&&(d=!0),this.lastRow_=a;for(var e=0;e=0&&(d=!0),this.lastRow_=-1;return this.selPoints_.length?this.lastx_=this.selPoints_[0].xval:this.lastx_=-1,void 0!==b&&(this.highlightSet_!==b&&(d=!0),this.highlightSet_=b),void 0!==c&&(this.lockedSet_=c),d&&this.updateSelection_(void 0),d},Dygraph.prototype.mouseOut_=function(a){this.attr_("unhighlightCallback")&&this.attr_("unhighlightCallback")(a),this.attr_("hideOverlayOnMouseOut")&&!this.lockedSet_&&this.clearSelection()},Dygraph.prototype.clearSelection=function(){return this.cascadeEvents_("deselect",{}),this.lockedSet_=!1,this.fadeLevel?void this.animateSelection_(-1):(this.canvas_ctx_.clearRect(0,0,this.width_,this.height_),this.fadeLevel=0,this.selPoints_=[],this.lastx_=-1,this.lastRow_=-1,void(this.highlightSet_=null))},Dygraph.prototype.getSelection=function(){if(!this.selPoints_||this.selPoints_.length<1)return-1;for(var a=0;ac&&(g=c),c>h&&(h=c),(null===e||h>e)&&(e=h),(null===d||d>g)&&(d=g)}}else for(b=0;be)&&(e=c),(null===d||d>c)&&(d=c));return[d,e]},Dygraph.prototype.predraw_=function(){var a=new Date;this.layout_.computePlotArea(),this.computeYAxes_(),this.plotter_&&(this.cascadeEvents_("clearChart"),this.plotter_.clear()),this.is_initial_draw_||(this.canvas_ctx_.restore(),this.hidden_ctx_.restore()),this.canvas_ctx_.save(),this.hidden_ctx_.save(),this.plotter_=new DygraphCanvasRenderer(this,this.hidden_,this.hidden_ctx_,this.layout_),this.createRollInterface_(),this.cascadeEvents_("predraw"),this.rolledSeries_=[null];for(var b=1;b=b))for(var c=b;cc[1]&&(c[1]=n),n=1;c--)if(this.visibility()[c-1]){if(b){e=a[c];var o=b[0],p=b[1],q=null,r=null;for(d=0;d=o&&null===q&&(q=d),e[d][0]<=p&&(r=d);null===q&&(q=0);for(var s=q,t=!0;t&&s>0;)s--,t=m(e[s]);null===r&&(r=e.length-1);var u=r;for(t=!0;t&&u0&&(this.setIndexByName_[f[0]]=0);for(var g=0,h=1;h0;){var c=this.readyFns_.pop();c(this)}},Dygraph.prototype.computeYAxes_=function(){var a,b,c,d,e;if(void 0!==this.axes_&&this.user_attrs_.hasOwnProperty("valueRange")===!1)for(a=[],c=0;cc;c++)this.axes_[c].valueWindow=a[c]}for(b=0;bi;i++){var j=this.axes_[i],k=this.attributes_.getForAxis("logscale",i),l=this.attributes_.getForAxis("includeZero",i),m=this.attributes_.getForAxis("independentTicks",i);if(d=this.attributes_.seriesForAxis(i),b=!0,e=.1,null!==this.attr_("yRangePad")&&(b=!1,e=this.attr_("yRangePad")/this.plotter_.area.h),0===d.length)j.extremeRange=[0,1];else{for(var n,o,p=1/0,q=-(1/0),r=0;r0&&(p=0),0>q&&(q=0)),p==1/0&&(p=0),q==-(1/0)&&(q=1),c=q-p,0===c&&(0!==q?c=Math.abs(q):(q=1,c=1));var s,t;if(k)if(b)s=q+e*c,t=p;else{var u=Math.exp(Math.log(c)*e);s=q*u,t=p/u}else s=q+e*c,t=p-e*c,b&&!this.attr_("avoidMinZero")&&(0>t&&p>=0&&(t=0),s>0&&0>=q&&(s=0));j.extremeRange=[t,s]}if(j.valueWindow)j.computedValueRange=[j.valueWindow[0],j.valueWindow[1]];else if(j.valueRange){var v=g(j.valueRange[0])?j.extremeRange[0]:j.valueRange[0],w=g(j.valueRange[1])?j.extremeRange[1]:j.valueRange[1];if(!b)if(j.logscale){var u=Math.exp(Math.log(c)*e);v*=u,w/=u}else c=w-v,v-=c*e,w+=c*e;j.computedValueRange=[v,w]}else j.computedValueRange=j.extremeRange;if(m){j.independentTicks=m;var x=this.optionsViewForAxis_("y"+(i?"2":"")),y=x("ticker");j.ticks=y(j.computedValueRange[0],j.computedValueRange[1],this.height_,x,this),f||(f=j)}}if(void 0===f)throw'Configuration Error: At least one axis has to have the "independentTicks" option activated.';for(var i=0;h>i;i++){var j=this.axes_[i];if(!j.independentTicks){for(var x=this.optionsViewForAxis_("y"+(i?"2":"")),y=x("ticker"),z=f.ticks,A=f.computedValueRange[1]-f.computedValueRange[0],B=j.computedValueRange[1]-j.computedValueRange[0],C=[],D=0;D=i&&(i=null);null!==i?d.push([h,i]):d.push([h,e?[null,null]:f?[null,null,null]:i])}return d},Dygraph.prototype.rollingAverage=function(a,b){b=Math.min(b,a.length);var c,d,e,f,g,h,i,j,k=[],l=this.attr_("sigma");if(this.fractions_){var m=0,n=0,o=100;for(e=0;e=0&&(m-=a[e-b][1][0],n-=a[e-b][1][1]);var p=a[e][0],q=n?m/n:0;if(this.attr_("errorBars"))if(this.attr_("wilsonInterval"))if(n){var r=0>q?0:q,s=n,t=l*Math.sqrt(r*(1-r)/s+l*l/(4*s*s)),u=1+l*l/n;c=(r+l*l/(2*n)-t)/u,d=(r+l*l/(2*n)+t)/u,k[e]=[p,[r*o,(r-c)*o,(d-r)*o]]}else k[e]=[p,[0,0,0]];else j=n?l*Math.sqrt(q*(1-q)/n):1,k[e]=[p,[o*q,o*j,o*j]];else k[e]=[p,o*q]}}else if(this.attr_("customBars")){c=0;var v=0;d=0;var w=0;for(e=0;e=0){var y=a[e-b];null===y[1][1]||isNaN(y[1][1])||(c-=y[1][0],v-=y[1][1],d-=y[1][2],w-=1)}w?k[e]=[a[e][0],[1*v/w,1*(v-c)/w,1*(d-v)/w]]:k[e]=[a[e][0],[null,null,null]]}}else if(this.attr_("errorBars"))for(e=0;ef;f++)g=a[f][1][0],null===g||isNaN(g)||(i++,h+=a[f][1][0],z+=Math.pow(a[f][1][1],2));if(i)j=Math.sqrt(z)/i,k[e]=[a[e][0],[h/i,l*j,l*j]];else{var A=1==b?a[e][1][0]:null;k[e]=[a[e][0],[A,A,A]]}}else{if(1==b)return a;for(e=0;ef;f++)g=a[f][1],null===g||isNaN(g)||(i++,h+=a[f][1]);i?k[e]=[a[e][0],h/i]:k[e]=[a[e][0],null]}}return k},Dygraph.prototype.detectTypeFromString_=function(a){var b=!1,c=a.indexOf("-");c>0&&"e"!=a[c-1]&&"E"!=a[c-1]||a.indexOf("/")>=0||isNaN(parseFloat(a))?b=!0:8==a.length&&a>"19700101"&&"20371231">a&&(b=!0),this.setXAxisOptions_(b)},Dygraph.prototype.setXAxisOptions_=function(a){a?(this.attrs_.xValueParser=Dygraph.dateParser,this.attrs_.axes.x.valueFormatter=Dygraph.dateString_,this.attrs_.axes.x.ticker=Dygraph.dateTicker,this.attrs_.axes.x.axisLabelFormatter=Dygraph.dateAxisFormatter):(this.attrs_.xValueParser=function(a){return parseFloat(a)},this.attrs_.axes.x.valueFormatter=function(a){return a},this.attrs_.axes.x.ticker=Dygraph.numericLinearTicks,this.attrs_.axes.x.axisLabelFormatter=this.attrs_.axes.x.valueFormatter)},Dygraph.prototype.parseFloat_=function(a,b,c){var d=parseFloat(a);if(!isNaN(d))return d;if(/^ *$/.test(a))return null;if(/^ *nan *$/i.test(a))return NaN;var e="Unable to parse '"+a+"' as a number";return null!==c&&null!==b&&(e+=" on line "+(1+b)+" ('"+c+"') of CSV."),this.error(e),null},Dygraph.prototype.parseCSV_=function(a){var b,c,d=[],e=Dygraph.detectLineDelimiter(a),f=a.split(e||"\n"),g=this.attr_("delimiter");-1==f[0].indexOf(g)&&f[0].indexOf(" ")>=0&&(g=" ");var h=0;"labels"in this.user_attrs_||(h=1,this.attrs_.labels=f[0].split(g),this.attributes_.reparseSeries());for(var i,j=0,k=!1,l=this.attr_("labels").length,m=!1,n=h;n0&&q[0]0;)b=String.fromCharCode(65+(a-1)%26)+b.toLowerCase(),a=Math.floor((a-1)/26);return b},c=a.getNumberOfColumns(),d=a.getNumberOfRows(),e=a.getColumnType(0);if("date"==e||"datetime"==e)this.attrs_.xValueParser=Dygraph.dateParser,this.attrs_.axes.x.valueFormatter=Dygraph.dateString_,this.attrs_.axes.x.ticker=Dygraph.dateTicker,this.attrs_.axes.x.axisLabelFormatter=Dygraph.dateAxisFormatter;else{if("number"!=e)return this.error("only 'date', 'datetime' and 'number' types are supported for column 1 of DataTable input (Got '"+e+"')"),null;this.attrs_.xValueParser=function(a){return parseFloat(a)},this.attrs_.axes.x.valueFormatter=function(a){return a},this.attrs_.axes.x.ticker=Dygraph.numericLinearTicks,this.attrs_.axes.x.axisLabelFormatter=this.attrs_.axes.x.valueFormatter}var f,g,h=[],i={},j=!1;for(f=1;c>f;f++){var k=a.getColumnType(f);if("number"==k)h.push(f);else if("string"==k&&this.attr_("displayAnnotations")){var l=h[h.length-1];i.hasOwnProperty(l)?i[l].push(f):i[l]=[f],j=!0}else this.error("Only 'number' is supported as a dependent type with Gviz. 'string' is only supported if displayAnnotations is true")}var m=[a.getColumnLabel(0)];for(f=0;ff;f++){var q=[];if("undefined"!=typeof a.getValue(f,0)&&null!==a.getValue(f,0)){if("date"==e||"datetime"==e?q.push(a.getValue(f,0).getTime()):q.push(a.getValue(f,0)),this.attr_("errorBars"))for(g=0;c-1>g;g++)q.push([a.getValue(f,1+2*g),a.getValue(f,2+2*g)]);else{ +for(g=0;g0&&q[0]0&&this.setAnnotations(p,!0),this.attributes_.reparseSeries()},Dygraph.prototype.start_=function(){var a=this.file_;if("function"==typeof a&&(a=a()),Dygraph.isArrayLike(a))this.rawData_=this.parseArray_(a),this.predraw_();else if("object"==typeof a&&"function"==typeof a.getColumnRange)this.parseDataTable_(a),this.predraw_();else if("string"==typeof a){var b=Dygraph.detectLineDelimiter(a);if(b)this.loadedEvent_(a);else{var c;c=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");var d=this;c.onreadystatechange=function(){4==c.readyState&&(200===c.status||0===c.status)&&d.loadedEvent_(c.responseText)},c.open("GET",a,!0),c.send(null)}}else this.error("Unknown data format: "+typeof a)},Dygraph.prototype.updateOptions=function(a,b){"undefined"==typeof b&&(b=!1);var c=a.file,d=Dygraph.mapLegacyOptions_(a);"rollPeriod"in d&&(this.rollPeriod_=d.rollPeriod),"dateWindow"in d&&(this.dateWindow_=d.dateWindow,"isZoomedIgnoreProgrammaticZoom"in d||(this.zoomed_x_=null!==d.dateWindow)),"valueRange"in d&&!("isZoomedIgnoreProgrammaticZoom"in d)&&(this.zoomed_y_=null!==d.valueRange);var e=Dygraph.isPixelChangingOptionList(this.attr_("labels"),d);Dygraph.updateDeep(this.user_attrs_,d),this.attributes_.reparseSeries(),c?(this.file_=c,b||this.start_()):b||(e?this.predraw_():this.renderGraph_(!1))},Dygraph.mapLegacyOptions_=function(a){var b={};for(var c in a)"file"!=c&&a.hasOwnProperty(c)&&(b[c]=a[c]);var d=function(a,c,d){b.axes||(b.axes={}),b.axes[a]||(b.axes[a]={}),b.axes[a][c]=d},e=function(c,e,f){"undefined"!=typeof a[c]&&(Dygraph.warn("Option "+c+" is deprecated. Use the "+f+" option for the "+e+" axis instead. (e.g. { axes : { "+e+" : { "+f+" : ... } } } (see http://dygraphs.com/per-axis.html for more information."),d(e,f,a[c]),delete b[c])};return e("xValueFormatter","x","valueFormatter"),e("pixelsPerXLabel","x","pixelsPerLabel"),e("xAxisLabelFormatter","x","axisLabelFormatter"),e("xTicker","x","ticker"),e("yValueFormatter","y","valueFormatter"),e("pixelsPerYLabel","y","pixelsPerLabel"),e("yAxisLabelFormatter","y","axisLabelFormatter"),e("yTicker","y","ticker"),b},Dygraph.prototype.resize=function(a,b){if(!this.resize_lock){this.resize_lock=!0,null===a!=(null===b)&&(this.warn("Dygraph.resize() should be called with zero parameters or two non-NULL parameters. Pretending it was zero."),a=b=null);var c=this.width_,d=this.height_;a?(this.maindiv_.style.width=a+"px",this.maindiv_.style.height=b+"px",this.width_=a,this.height_=b):(this.width_=this.maindiv_.clientWidth,this.height_=this.maindiv_.clientHeight),(c!=this.width_||d!=this.height_)&&(this.resizeElements_(),this.predraw_()),this.resize_lock=!1}},Dygraph.prototype.adjustRoll=function(a){this.rollPeriod_=a,this.predraw_()},Dygraph.prototype.visibility=function(){for(this.attr_("visibility")||(this.attrs_.visibility=[]);this.attr_("visibility").lengtha||a>=c.length?this.warn("invalid series number in setVisibility: "+a):(c[a]=b,this.predraw_())},Dygraph.prototype.size=function(){return{width:this.width_,height:this.height_}},Dygraph.prototype.setAnnotations=function(a,b){return Dygraph.addAnnotationRule(),this.annotations_=a,this.layout_?(this.layout_.setAnnotations(this.annotations_),void(b||this.predraw_())):void this.warn("Tried to setAnnotations before dygraph was ready. Try setting them in a ready() block. See dygraphs.com/tests/annotation.html")},Dygraph.prototype.annotations=function(){return this.annotations_},Dygraph.prototype.getLabels=function(){var a=this.attr_("labels");return a?a.slice():null},Dygraph.prototype.indexFromSetName=function(a){return this.setIndexByName_[a]},Dygraph.prototype.ready=function(a){this.is_initial_draw_?this.readyFns_.push(a):a(this)},Dygraph.addAnnotationRule=function(){if(!Dygraph.addedAnnotationCSS){var a="border: 1px solid black; background-color: white; text-align: center;",b=document.createElement("style");b.type="text/css",document.getElementsByTagName("head")[0].appendChild(b);for(var c=0;ca?"0"+a:""+a},Dygraph.hmsString_=function(a){var b=Dygraph.zeropad,c=new Date(a);return c.getSeconds()?b(c.getHours())+":"+b(c.getMinutes())+":"+b(c.getSeconds()):b(c.getHours())+":"+b(c.getMinutes())},Dygraph.round_=function(a,b){var c=Math.pow(10,b);return Math.round(a*c)/c},Dygraph.binarySearch=function(a,b,c,d,e){if((null===d||void 0===d||null===e||void 0===e)&&(d=0,e=b.length-1),d>e)return-1;(null===c||void 0===c)&&(c=0);var f,g=function(a){return a>=0&&aa?c>0&&(f=h-1,g(f)&&b[f]i?0>c&&(f=h+1,g(f)&&b[f]>a)?h:Dygraph.binarySearch(a,b,c,h+1,e):-1},Dygraph.dateParser=function(a){var b,c;if((-1==a.search("-")||-1!=a.search("T")||-1!=a.search("Z"))&&(c=Dygraph.dateStrToMillis(a),c&&!isNaN(c)))return c;if(-1!=a.search("-")){for(b=a.replace("-","/","g");-1!=b.search("-");)b=b.replace("-","/");c=Dygraph.dateStrToMillis(b)}else 8==a.length?(b=a.substr(0,4)+"/"+a.substr(4,2)+"/"+a.substr(6,2),c=Dygraph.dateStrToMillis(b)):c=Dygraph.dateStrToMillis(a);return(!c||isNaN(c))&&Dygraph.error("Couldn't parse "+a+" as a date"),c},Dygraph.dateStrToMillis=function(a){return new Date(a).getTime()},Dygraph.update=function(a,b){if("undefined"!=typeof b&&null!==b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a},Dygraph.updateDeep=function(a,b){function c(a){return"object"==typeof Node?a instanceof Node:"object"==typeof a&&"number"==typeof a.nodeType&&"string"==typeof a.nodeName}if("undefined"!=typeof b&&null!==b)for(var d in b)b.hasOwnProperty(d)&&(null===b[d]?a[d]=null:Dygraph.isArrayLike(b[d])?a[d]=b[d].slice():c(b[d])?a[d]=b[d]:"object"==typeof b[d]?(("object"!=typeof a[d]||null===a[d])&&(a[d]={}),Dygraph.updateDeep(a[d],b[d])):a[d]=b[d]);return a},Dygraph.isArrayLike=function(a){var b=typeof a;return"object"!=b&&("function"!=b||"function"!=typeof a.item)||null===a||"number"!=typeof a.length||3===a.nodeType?!1:!0},Dygraph.isDateLike=function(a){return"object"!=typeof a||null===a||"function"!=typeof a.getTime?!1:!0},Dygraph.clone=function(a){for(var b=[],c=0;c=b||Dygraph.requestAnimFrame.call(window,function(){var b=(new Date).getTime(),j=b-g;e=f,f=Math.floor(j/c);var k=f-e,l=f+k>h;l||f>=h?(a(h),d()):(0!==k&&a(f),i())})}()},Dygraph.isPixelChangingOptionList=function(a,b){var c={annotationClickHandler:!0,annotationDblClickHandler:!0,annotationMouseOutHandler:!0,annotationMouseOverHandler:!0,axisLabelColor:!0,axisLineColor:!0,axisLineWidth:!0,clickCallback:!0,digitsAfterDecimal:!0,drawCallback:!0,drawHighlightPointCallback:!0,drawPoints:!0,drawPointCallback:!0,drawXGrid:!0,drawYGrid:!0,fillAlpha:!0,gridLineColor:!0,gridLineWidth:!0,hideOverlayOnMouseOut:!0,highlightCallback:!0,highlightCircleSize:!0,interactionModel:!0,isZoomedIgnoreProgrammaticZoom:!0,labelsDiv:!0,labelsDivStyles:!0,labelsDivWidth:!0,labelsKMB:!0,labelsKMG2:!0,labelsSeparateLines:!0,labelsShowZeroValues:!0,legend:!0,maxNumberWidth:!0,panEdgeFraction:!0,pixelsPerYLabel:!0,pointClickCallback:!0,pointSize:!0,rangeSelectorPlotFillColor:!0,rangeSelectorPlotStrokeColor:!0,showLabelsOnHighlight:!0,showRoller:!0,sigFigs:!0,strokeWidth:!0,underlayCallback:!0,unhighlightCallback:!0,xAxisLabelFormatter:!0,xTicker:!0,xValueFormatter:!0,yAxisLabelFormatter:!0,yValueFormatter:!0,zoomCallback:!0},d=!1,e={};if(a)for(var f=1;fn;n++){i=n==b-1?h:i+g;var o=j();a.lineTo(o[0],o[1])}a.fill(),a.stroke()},Dygraph.shapeFunction_=function(a,b,c){return function(d,e,f,g,h,i,j){f.strokeStyle=i,f.fillStyle="white",Dygraph.regularShape_(f,a,j,g,h,b,c)}},Dygraph.Circles={DEFAULT:function(a,b,c,d,e,f,g){c.beginPath(),c.fillStyle=f,c.arc(d,e,g,0,2*Math.PI,!1),c.fill()},TRIANGLE:Dygraph.shapeFunction_(3),SQUARE:Dygraph.shapeFunction_(4,Math.PI/4),DIAMOND:Dygraph.shapeFunction_(4),PENTAGON:Dygraph.shapeFunction_(5),HEXAGON:Dygraph.shapeFunction_(6),CIRCLE:function(a,b,c,d,e,f,g){c.beginPath(),c.strokeStyle=f,c.fillStyle="white",c.arc(d,e,g,0,2*Math.PI,!1),c.fill(),c.stroke()},STAR:Dygraph.shapeFunction_(5,0,4*Math.PI/5),PLUS:function(a,b,c,d,e,f,g){c.strokeStyle=f,c.beginPath(),c.moveTo(d+g,e),c.lineTo(d-g,e),c.closePath(),c.stroke(),c.beginPath(),c.moveTo(d,e+g),c.lineTo(d,e-g),c.closePath(),c.stroke()},EX:function(a,b,c,d,e,f,g){c.strokeStyle=f,c.beginPath(),c.moveTo(d+g,e+g),c.lineTo(d-g,e-g),c.closePath(),c.stroke(),c.beginPath(),c.moveTo(d+g,e-g),c.lineTo(d-g,e+g),c.closePath(),c.stroke()}},Dygraph.IFrameTarp=function(){this.tarps=[]},Dygraph.IFrameTarp.prototype.cover=function(){for(var a=document.getElementsByTagName("iframe"),b=0;bb?1/Math.pow(a,-b):Math.pow(a,b)},Dygraph.dateSetters={ms:Date.prototype.setMilliseconds,s:Date.prototype.setSeconds,m:Date.prototype.setMinutes,h:Date.prototype.setHours},Dygraph.setDateSameTZ=function(a,b){var c=a.getTimezoneOffset();for(var d in b)if(b.hasOwnProperty(d)){var e=Dygraph.dateSetters[d];if(!e)throw"Invalid setter: "+d;e.call(a,b[d]),a.getTimezoneOffset()!=c&&a.setTime(a.getTime()+60*(c-a.getTimezoneOffset())*1e3)}},Dygraph.GVizChart=function(a){this.container=a},Dygraph.GVizChart.prototype.draw=function(a,b){this.container.innerHTML="","undefined"!=typeof this.date_graph&&this.date_graph.destroy(),this.date_graph=new Dygraph(this.container,a,b)},Dygraph.GVizChart.prototype.setSelection=function(a){var b=!1;a.length&&(b=a[0].row),this.date_graph.setSelection(b)},Dygraph.GVizChart.prototype.getSelection=function(){var a=[],b=this.date_graph.getSelection();if(0>b)return a;for(var c=this.date_graph.layout_.points,d=0;dc.boundedDates[1]&&(d-=e-c.boundedDates[1],e=d+c.dateRange),b.dateWindow_=[d,e],c.is2DPan)for(var f=c.dragEndY-c.dragStartY,g=0;gd&&2>e&&void 0!==b.lastx_&&-1!=b.lastx_&&Dygraph.Interaction.treatMouseOpAsClick(b,a,c),c.isPanning=!1,c.is2DPan=!1,c.initialLeftmostDate=null,c.dateRange=null,c.valueRange=null,c.boundedDates=null,c.boundedValues=null,c.axes=null},Dygraph.Interaction.startZoom=function(a,b,c){c.isZooming=!0,c.zoomMoved=!1},Dygraph.Interaction.moveZoom=function(a,b,c){c.zoomMoved=!0,c.dragEndX=b.dragGetX_(a,c),c.dragEndY=b.dragGetY_(a,c);var d=Math.abs(c.dragStartX-c.dragEndX),e=Math.abs(c.dragStartY-c.dragEndY);c.dragDirection=e/2>d?Dygraph.VERTICAL:Dygraph.HORIZONTAL,b.drawZoomRect_(c.dragDirection,c.dragStartX,c.dragEndX,c.dragStartY,c.dragEndY,c.prevDragDirection,c.prevEndX,c.prevEndY),c.prevEndX=c.dragEndX,c.prevEndY=c.dragEndY,c.prevDragDirection=c.dragDirection},Dygraph.Interaction.treatMouseOpAsClick=function(a,b,c){var d=a.attr_("clickCallback"),e=a.attr_("pointClickCallback"),f=null;if(e){for(var g=-1,h=Number.MAX_VALUE,i=0;ik)&&(h=k,g=i)}var l=a.attr_("highlightCircleSize")+2;l*l>=h&&(f=a.selPoints_[g])}f&&e(b,f),d&&d(b,a.lastx_,a.selPoints_)},Dygraph.Interaction.endZoom=function(a,b,c){c.isZooming=!1,c.dragEndX=b.dragGetX_(a,c),c.dragEndY=b.dragGetY_(a,c);var d=Math.abs(c.dragEndX-c.dragStartX),e=Math.abs(c.dragEndY-c.dragStartY);2>d&&2>e&&void 0!==b.lastx_&&-1!=b.lastx_&&Dygraph.Interaction.treatMouseOpAsClick(b,a,c);var f=b.getArea();if(d>=10&&c.dragDirection==Dygraph.HORIZONTAL){var g=Math.min(c.dragStartX,c.dragEndX),h=Math.max(c.dragStartX,c.dragEndX);g=Math.max(g,f.x),h=Math.min(h,f.x+f.w),h>g&&b.doZoomX_(g,h),c.cancelNextDblclick=!0}else if(e>=10&&c.dragDirection==Dygraph.VERTICAL){var i=Math.min(c.dragStartY,c.dragEndY),j=Math.max(c.dragStartY,c.dragEndY);i=Math.max(i,f.y),j=Math.min(j,f.y+f.h),j>i&&b.doZoomY_(i,j),c.cancelNextDblclick=!0}else c.zoomMoved&&b.clearZoomRect_();c.dragStartX=null,c.dragStartY=null},Dygraph.Interaction.startTouch=function(a,b,c){a.preventDefault(),a.touches.length>1&&(c.startTimeForDoubleTapMs=null);for(var d=[],e=0;e=2){c.initialPinchCenter={pageX:.5*(d[0].pageX+d[1].pageX),pageY:.5*(d[0].pageY+d[1].pageY),dataX:.5*(d[0].dataX+d[1].dataX),dataY:.5*(d[0].dataY+d[1].dataY)};var g=180/Math.PI*Math.atan2(c.initialPinchCenter.pageY-d[0].pageY,d[0].pageX-c.initialPinchCenter.pageX);g=Math.abs(g),g>90&&(g=90-g),c.touchDirections={x:67.5>g,y:g>22.5}}c.initialRange={x:b.xAxisRange(),y:b.yAxisRange()}},Dygraph.Interaction.moveTouch=function(a,b,c){c.startTimeForDoubleTapMs=null;var d,e=[];for(d=0;d=2){var o=h[1].pageX-i.pageX;m=(e[1].pageX-g.pageX)/o;var p=h[1].pageY-i.pageY;n=(e[1].pageY-g.pageY)/p}m=Math.min(8,Math.max(.125,m)),n=Math.min(8,Math.max(.125,n));var q=!1;if(c.touchDirections.x&&(b.dateWindow_=[i.dataX-j.dataX+(c.initialRange.x[0]-i.dataX)/m,i.dataX-j.dataX+(c.initialRange.x[1]-i.dataX)/m],q=!0),c.touchDirections.y)for(d=0;1>d;d++){var r=b.axes_[d],s=b.attributes_.getForAxis("logscale",d);s||(r.valueWindow=[i.dataY-j.dataY+(c.initialRange.y[0]-i.dataY)/n,i.dataY-j.dataY+(c.initialRange.y[1]-i.dataY)/n],q=!0)}if(b.drawGraph_(!1),q&&e.length>1&&b.attr_("zoomCallback")){var t=b.xAxisRange();b.attr_("zoomCallback")(t[0],t[1],b.yAxisRanges())}},Dygraph.Interaction.endTouch=function(a,b,c){if(0!==a.touches.length)Dygraph.Interaction.startTouch(a,b,c);else if(1==a.changedTouches.length){var d=(new Date).getTime(),e=a.changedTouches[0];c.startTimeForDoubleTapMs&&d-c.startTimeForDoubleTapMs<500&&c.doubleTapX&&Math.abs(c.doubleTapX-e.screenX)<50&&c.doubleTapY&&Math.abs(c.doubleTapY-e.screenY)<50?b.resetZoom():(c.startTimeForDoubleTapMs=d,c.doubleTapX=e.screenX,c.doubleTapY=e.screenY)}},Dygraph.Interaction.defaultModel={mousedown:function(a,b,c){a.button&&2==a.button||(c.initializeMouseDown(a,b,c),a.altKey||a.shiftKey?Dygraph.startPan(a,b,c):Dygraph.startZoom(a,b,c))},mousemove:function(a,b,c){c.isZooming?Dygraph.moveZoom(a,b,c):c.isPanning&&Dygraph.movePan(a,b,c)},mouseup:function(a,b,c){c.isZooming?Dygraph.endZoom(a,b,c):c.isPanning&&Dygraph.endPan(a,b,c)},touchstart:function(a,b,c){Dygraph.Interaction.startTouch(a,b,c)},touchmove:function(a,b,c){Dygraph.Interaction.moveTouch(a,b,c)},touchend:function(a,b,c){Dygraph.Interaction.endTouch(a,b,c)},mouseout:function(a,b,c){c.isZooming&&(c.dragEndX=null,c.dragEndY=null,b.clearZoomRect_())},dblclick:function(a,b,c){return c.cancelNextDblclick?void(c.cancelNextDblclick=!1):void(a.altKey||a.shiftKey||b.resetZoom())}},Dygraph.DEFAULT_ATTRS.interactionModel=Dygraph.Interaction.defaultModel,Dygraph.defaultInteractionModel=Dygraph.Interaction.defaultModel,Dygraph.endZoom=Dygraph.Interaction.endZoom,Dygraph.moveZoom=Dygraph.Interaction.moveZoom,Dygraph.startZoom=Dygraph.Interaction.startZoom,Dygraph.endPan=Dygraph.Interaction.endPan,Dygraph.movePan=Dygraph.Interaction.movePan,Dygraph.startPan=Dygraph.Interaction.startPan,Dygraph.Interaction.nonInteractiveModel_={mousedown:function(a,b,c){c.initializeMouseDown(a,b,c)},mouseup:function(a,b,c){c.dragEndX=b.dragGetX_(a,c),c.dragEndY=b.dragGetY_(a,c);var d=Math.abs(c.dragEndX-c.dragStartX),e=Math.abs(c.dragEndY-c.dragStartY);2>d&&2>e&&void 0!==b.lastx_&&-1!=b.lastx_&&Dygraph.Interaction.treatMouseOpAsClick(b,a,c)}},Dygraph.Interaction.dragIsPanInteractionModel={mousedown:function(a,b,c){c.initializeMouseDown(a,b,c),Dygraph.startPan(a,b,c)},mousemove:function(a,b,c){c.isPanning&&Dygraph.movePan(a,b,c)},mouseup:function(a,b,c){c.isPanning&&Dygraph.endPan(a,b,c)}},Dygraph.TickList=void 0,Dygraph.Ticker=void 0,Dygraph.numericLinearTicks=function(a,b,c,d,e,f){var g=function(a){return"logscale"===a?!1:d(a)};return Dygraph.numericTicks(a,b,c,g,e,f)},Dygraph.numericTicks=function(a,b,c,d,e,f){var g,h,i,j,k=d("pixelsPerLabel"),l=[];if(f)for(g=0;g=j/4){for(var p=n;p>=m;p--){var q=Dygraph.PREFERRED_LOG_TICK_VALUES[p],r=Math.log(q/a)/Math.log(b/a)*c,s={v:q};null===o?o={tickValue:q,pixel_coord:r}:Math.abs(r-o.pixel_coord)>=k?o={tickValue:q,pixel_coord:r}:s.label="",l.push(s)}l.reverse()}}if(0===l.length){var t,u,v=d("labelsKMG2");v?(t=[1,2,4,8,16,32,64,128,256],u=16):(t=[1,2,5,10,20,50,100],u=10);var w,x,y,z,A=Math.ceil(c/k),B=Math.abs(b-a)/A,C=Math.floor(Math.log(B)/Math.log(u)),D=Math.pow(u,C);for(h=0;hk));h++);for(x>y&&(w*=-1),g=0;j>g;g++)i=x+g*w,l.push({v:i})}}var E=d("axisLabelFormatter");for(g=0;g=0?Dygraph.getDateAxis(a,b,g,d,e):[]},Dygraph.SECONDLY=0,Dygraph.TWO_SECONDLY=1,Dygraph.FIVE_SECONDLY=2,Dygraph.TEN_SECONDLY=3,Dygraph.THIRTY_SECONDLY=4,Dygraph.MINUTELY=5,Dygraph.TWO_MINUTELY=6,Dygraph.FIVE_MINUTELY=7,Dygraph.TEN_MINUTELY=8,Dygraph.THIRTY_MINUTELY=9,Dygraph.HOURLY=10,Dygraph.TWO_HOURLY=11,Dygraph.SIX_HOURLY=12,Dygraph.DAILY=13,Dygraph.WEEKLY=14,Dygraph.MONTHLY=15,Dygraph.QUARTERLY=16,Dygraph.BIANNUAL=17,Dygraph.ANNUAL=18,Dygraph.DECADAL=19,Dygraph.CENTENNIAL=20,Dygraph.NUM_GRANULARITIES=21,Dygraph.SHORT_SPACINGS=[],Dygraph.SHORT_SPACINGS[Dygraph.SECONDLY]=1e3,Dygraph.SHORT_SPACINGS[Dygraph.TWO_SECONDLY]=2e3,Dygraph.SHORT_SPACINGS[Dygraph.FIVE_SECONDLY]=5e3,Dygraph.SHORT_SPACINGS[Dygraph.TEN_SECONDLY]=1e4,Dygraph.SHORT_SPACINGS[Dygraph.THIRTY_SECONDLY]=3e4,Dygraph.SHORT_SPACINGS[Dygraph.MINUTELY]=6e4,Dygraph.SHORT_SPACINGS[Dygraph.TWO_MINUTELY]=12e4,Dygraph.SHORT_SPACINGS[Dygraph.FIVE_MINUTELY]=3e5,Dygraph.SHORT_SPACINGS[Dygraph.TEN_MINUTELY]=6e5,Dygraph.SHORT_SPACINGS[Dygraph.THIRTY_MINUTELY]=18e5,Dygraph.SHORT_SPACINGS[Dygraph.HOURLY]=36e5,Dygraph.SHORT_SPACINGS[Dygraph.TWO_HOURLY]=72e5,Dygraph.SHORT_SPACINGS[Dygraph.SIX_HOURLY]=216e5,Dygraph.SHORT_SPACINGS[Dygraph.DAILY]=864e5,Dygraph.SHORT_SPACINGS[Dygraph.WEEKLY]=6048e5,Dygraph.LONG_TICK_PLACEMENTS=[],Dygraph.LONG_TICK_PLACEMENTS[Dygraph.MONTHLY]={months:[0,1,2,3,4,5,6,7,8,9,10,11],year_mod:1},Dygraph.LONG_TICK_PLACEMENTS[Dygraph.QUARTERLY]={months:[0,3,6,9],year_mod:1},Dygraph.LONG_TICK_PLACEMENTS[Dygraph.BIANNUAL]={months:[0,6],year_mod:1},Dygraph.LONG_TICK_PLACEMENTS[Dygraph.ANNUAL]={months:[0],year_mod:1},Dygraph.LONG_TICK_PLACEMENTS[Dygraph.DECADAL]={months:[0],year_mod:10},Dygraph.LONG_TICK_PLACEMENTS[Dygraph.CENTENNIAL]={months:[0],year_mod:100},Dygraph.PREFERRED_LOG_TICK_VALUES=function(){for(var a=[],b=-39;39>=b;b++)for(var c=Math.pow(10,b),d=1;9>=d;d++){var e=c*d;a.push(e)}return a}(),Dygraph.pickDateTickGranularity=function(a,b,c,d){for(var e=d("pixelsPerLabel"),f=0;f=e)return f}return-1},Dygraph.numDateTicks=function(a,b,c){if(c=j?(l=k.getSeconds(),Dygraph.setDateSameTZ(k,{s:l-l%j})):(Dygraph.setDateSameTZ(k,{s:0}),j/=60,60>=j?(l=k.getMinutes(),Dygraph.setDateSameTZ(k,{m:l-l%j})):(Dygraph.setDateSameTZ(k,{m:0}),j/=60,24>=j?(l=k.getHours(),k.setHours(l-l%j)):(k.setHours(0),j/=24,7==j&&k.setDate(k.getDate()-k.getDay())))),a=k.getTime();var m=new Date(a).getTimezoneOffset(),n=i>=Dygraph.SHORT_SPACINGS[Dygraph.TWO_HOURLY];for(f=a;b>=f;f+=i){if(k=new Date(f),n&&k.getTimezoneOffset()!=m){var o=k.getTimezoneOffset()-m;f+=60*o*1e3,k=new Date(f),m=k.getTimezoneOffset(),new Date(f+i).getTimezoneOffset()!=m&&(f+=i,k=new Date(f),m=k.getTimezoneOffset())}h.push({v:f,label:g(k,c,d,e)})}}else{var p,q=1;c=u;u++)if(u%q===0)for(var v=0;vf||f>b||h.push({v:f,label:g(new Date(f),c,d,e)})}}return h},Dygraph&&Dygraph.DEFAULT_ATTRS&&Dygraph.DEFAULT_ATTRS.axes&&Dygraph.DEFAULT_ATTRS.axes.x&&Dygraph.DEFAULT_ATTRS.axes.y&&Dygraph.DEFAULT_ATTRS.axes.y2&&(Dygraph.DEFAULT_ATTRS.axes.x.ticker=Dygraph.dateTicker,Dygraph.DEFAULT_ATTRS.axes.y.ticker=Dygraph.numericTicks,Dygraph.DEFAULT_ATTRS.axes.y2.ticker=Dygraph.numericTicks),Dygraph.Plugins={},Dygraph.Plugins.Annotations=function(){var a=function(){this.annotations_=[]};return a.prototype.toString=function(){return"Annotations Plugin"},a.prototype.activate=function(a){return{clearChart:this.clearChart,didDrawChart:this.didDrawChart}},a.prototype.detachLabels=function(){for(var a=0;ag.x+g.w||j.canvasyg.y+g.h)){ +var k=j.annotation,l=6;k.hasOwnProperty("tickHeight")&&(l=k.tickHeight);var m=document.createElement("div");for(var n in e)e.hasOwnProperty(n)&&(m.style[n]=e[n]);k.hasOwnProperty("icon")||(m.className="dygraphDefaultAnnotation"),k.hasOwnProperty("cssClass")&&(m.className+=" "+k.cssClass);var o=k.hasOwnProperty("width")?k.width:16,p=k.hasOwnProperty("height")?k.height:16;if(k.hasOwnProperty("icon")){var q=document.createElement("img");q.src=k.icon,q.width=o,q.height=p,m.appendChild(q)}else j.annotation.hasOwnProperty("shortText")&&m.appendChild(document.createTextNode(j.annotation.shortText));var r=j.canvasx-o/2;m.style.left=r+"px";var s=0;if(k.attachAtBottom){var t=g.y+g.h-p-l;h[r]?t-=h[r]:h[r]=0,h[r]+=l+p,s=t}else s=j.canvasy-p-l;m.style.top=s+"px",m.style.width=o+"px",m.style.height=p+"px",m.title=j.annotation.text,m.style.color=b.colorsMap_[j.name],m.style.borderColor=b.colorsMap_[j.name],k.div=m,b.addAndTrackEvent(m,"click",f("clickHandler","annotationClickHandler",j,this)),b.addAndTrackEvent(m,"mouseover",f("mouseOverHandler","annotationMouseOverHandler",j,this)),b.addAndTrackEvent(m,"mouseout",f("mouseOutHandler","annotationMouseOutHandler",j,this)),b.addAndTrackEvent(m,"dblclick",f("dblClickHandler","annotationDblClickHandler",j,this)),d.appendChild(m),this.annotations_.push(m);var u=a.drawingContext;if(u.save(),u.strokeStyle=b.colorsMap_[j.name],u.beginPath(),k.attachAtBottom){var t=s+p;u.moveTo(j.canvasx,t),u.lineTo(j.canvasx,t+l)}else u.moveTo(j.canvasx,j.canvasy),u.lineTo(j.canvasx,j.canvasy-2-l);u.closePath(),u.stroke(),u.restore()}}},a.prototype.destroy=function(){this.detachLabels()},a}(),Dygraph.Plugins.Axes=function(){var a=function(){this.xlabels_=[],this.ylabels_=[]};return a.prototype.toString=function(){return"Axes Plugin"},a.prototype.activate=function(a){return{layout:this.layout,clearChart:this.clearChart,willDrawChart:this.willDrawChart}},a.prototype.layout=function(a){var b=a.dygraph;if(b.getOption("drawYAxis")){var c=b.getOption("yAxisLabelWidth")+2*b.getOption("axisTickSize");a.reserveSpaceLeft(c)}if(b.getOption("drawXAxis")){var d;d=b.getOption("xAxisHeight")?b.getOption("xAxisHeight"):b.getOptionForAxis("axisLabelFontSize","x")+2*b.getOption("axisTickSize"),a.reserveSpaceBottom(d)}if(2==b.numAxes()){if(b.getOption("drawYAxis")){var c=b.getOption("yAxisLabelWidth")+2*b.getOption("axisTickSize");a.reserveSpaceRight(c)}}else b.numAxes()>2&&b.error("Only two y-axes are supported at this time. (Trying to use "+b.numAxes()+")")},a.prototype.detachLabels=function(){function a(a){for(var b=0;b0){var s=d.numAxes();for(i=0;iw&&(w=0),w+v+3>m?e.style.bottom="0px":e.style.top=w+"px",0===h[0]?(e.style.left=r.x-d.getOption("yAxisLabelWidth")-d.getOption("axisTickSize")+"px",e.style.textAlign="right"):1==h[0]&&(e.style.left=r.x+r.w+d.getOption("axisTickSize")+"px",e.style.textAlign="left"),e.style.width=d.getOption("yAxisLabelWidth")+"px",k.appendChild(e),this.ylabels_.push(e)}var x=this.ylabels_[0],v=d.getOptionForAxis("axisLabelFontSize","y"),y=parseInt(x.style.top,10)+v;y>m-v&&(x.style.top=parseInt(x.style.top,10)-v/2+"px")}var z;if(d.getOption("drawAxesAtZero")){var A=d.toPercentXCoord(0);(A>1||0>A||isNaN(A))&&(A=0),z=b(r.x+A*r.w)}else z=b(r.x);j.strokeStyle=d.getOptionForAxis("axisLineColor","y"),j.lineWidth=d.getOptionForAxis("axisLineWidth","y"),j.beginPath(),j.moveTo(z,c(r.y)),j.lineTo(z,c(r.y+r.h)),j.closePath(),j.stroke(),2==d.numAxes()&&(j.strokeStyle=d.getOptionForAxis("axisLineColor","y2"),j.lineWidth=d.getOptionForAxis("axisLineWidth","y2"),j.beginPath(),j.moveTo(c(r.x+r.w),c(r.y)),j.lineTo(c(r.x+r.w),c(r.y+r.h)),j.closePath(),j.stroke())}if(d.getOption("drawXAxis")){if(q.xticks)for(i=0;il&&(B=l-d.getOption("xAxisLabelWidth"),e.style.textAlign="right"),0>B&&(B=0,e.style.textAlign="left"),e.style.left=B+"px",e.style.width=d.getOption("xAxisLabelWidth")+"px",k.appendChild(e),this.xlabels_.push(e)}j.strokeStyle=d.getOptionForAxis("axisLineColor","x"),j.lineWidth=d.getOptionForAxis("axisLineWidth","x"),j.beginPath();var C;if(d.getOption("drawAxesAtZero")){var A=d.toPercentYCoord(0,0);(A>1||0>A)&&(A=1),C=c(r.y+A*r.h)}else C=c(r.y+r.h);j.moveTo(b(r.x),C),j.lineTo(b(r.x+r.w),C),j.closePath(),j.stroke()}j.restore()}},a}(),Dygraph.Plugins.ChartLabels=function(){var a=function(){this.title_div_=null,this.xlabel_div_=null,this.ylabel_div_=null,this.y2label_div_=null};a.prototype.toString=function(){return"ChartLabels Plugin"},a.prototype.activate=function(a){return{layout:this.layout,didDrawChart:this.didDrawChart}};var b=function(a){var b=document.createElement("div");return b.style.position="absolute",b.style.left=a.x+"px",b.style.top=a.y+"px",b.style.width=a.w+"px",b.style.height=a.h+"px",b};a.prototype.detachLabels_=function(){for(var a=[this.title_div_,this.xlabel_div_,this.ylabel_div_,this.y2label_div_],b=0;b=2);for(g=j.yticks,i.save(),f=0;f=2;for(p&&i.installPattern(q),i.strokeStyle=h.getOptionForAxis("gridLineColor","x"),i.lineWidth=h.getOptionForAxis("gridLineWidth","x"),f=0;f":" "),j=a.getOption("strokePattern",k[h]),i=c(j,l.color,e),f+=""+i+" "+k[h]+"")}return f}var m=a.optionsViewForAxis_("x"),n=m("valueFormatter");f=n(b,m,k[0],a),""!==f&&(f+=":");var o=[],p=a.numAxes();for(h=0;p>h;h++)o[h]=a.optionsViewForAxis_("y"+(h?1+h:""));var q=a.getOption("labelsShowZeroValues");g=a.getOption("labelsSeparateLines");var r=a.getHighlightSeries();for(h=0;h");var l=a.getPropertiesForSeries(s.name),t=o[l.axis-1],u=t("valueFormatter"),v=u(s.yval,t,s.name,a),w=s.name==r?" class='highlight'":"";f+=" "+s.name+": "+v+""}}return f},c=function(a,b,c){var d=/MSIE/.test(navigator.userAgent)&&!window.opera;if(d)return"—";if(!a||a.length<=1)return'
';var e,f,g,h,i,j=0,k=0,l=[];for(e=0;e<=a.length;e++)j+=a[e%a.length];if(i=Math.floor(c/(j-a[0])),i>1){for(e=0;ef;f++)for(e=0;k>e;e+=2)g=l[e%l.length],h=e';return m},a}(),Dygraph.Plugins.RangeSelector=function(){var a=function(){this.isIE_=/MSIE/.test(navigator.userAgent)&&!window.opera,this.hasTouchInterface_="undefined"!=typeof TouchEvent,this.isMobileDevice_=/mobile|android/gi.test(navigator.appVersion),this.interfaceCreated_=!1};return a.prototype.toString=function(){return"RangeSelector Plugin"},a.prototype.activate=function(a){return this.dygraph_=a,this.isUsingExcanvas_=a.isUsingExcanvas_,this.getOption_("showRangeSelector")&&this.createInterface_(),{layout:this.reserveSpace_,predraw:this.renderStaticLayer_,didDrawChart:this.renderInteractiveLayer_}},a.prototype.destroy=function(){this.bgcanvas_=null,this.fgcanvas_=null,this.leftZoomHandle_=null,this.rightZoomHandle_=null,this.iePanOverlay_=null},a.prototype.getOption_=function(a){return this.dygraph_.getOption(a)},a.prototype.setDefaultOption_=function(a,b){return this.dygraph_.attrs_[a]=b},a.prototype.createInterface_=function(){this.createCanvases_(),this.isUsingExcanvas_&&this.createIEPanOverlay_(),this.createZoomHandles_(),this.initInteraction_(),this.getOption_("animatedZooms")&&(this.dygraph_.warn("Animated zooms and range selector are not compatible; disabling animatedZooms."),this.dygraph_.updateOptions({animatedZooms:!1},!0)),this.interfaceCreated_=!0,this.addToGraph_()},a.prototype.addToGraph_=function(){var a=this.graphDiv_=this.dygraph_.graphDiv;a.appendChild(this.bgcanvas_),a.appendChild(this.fgcanvas_),a.appendChild(this.leftZoomHandle_),a.appendChild(this.rightZoomHandle_)},a.prototype.removeFromGraph_=function(){var a=this.graphDiv_;a.removeChild(this.bgcanvas_),a.removeChild(this.fgcanvas_),a.removeChild(this.leftZoomHandle_),a.removeChild(this.rightZoomHandle_),this.graphDiv_=null},a.prototype.reserveSpace_=function(a){this.getOption_("showRangeSelector")&&a.reserveSpaceBottom(this.getOption_("rangeSelectorHeight")+4)},a.prototype.renderStaticLayer_=function(){this.updateVisibility_()&&(this.resize_(),this.drawStaticLayer_())},a.prototype.renderInteractiveLayer_=function(){this.updateVisibility_()&&!this.isChangingRange_&&(this.placeZoomHandles_(),this.drawInteractiveLayer_())},a.prototype.updateVisibility_=function(){var a=this.getOption_("showRangeSelector");if(a)this.interfaceCreated_?this.graphDiv_&&this.graphDiv_.parentNode||this.addToGraph_():this.createInterface_();else if(this.graphDiv_){this.removeFromGraph_();var b=this.dygraph_;setTimeout(function(){b.width_=0,b.resize()},1)}return a},a.prototype.resize_=function(){function a(a,b){a.style.top=b.y+"px",a.style.left=b.x+"px",a.width=b.w,a.height=b.h,a.style.width=a.width+"px",a.style.height=a.height+"px"}var b=this.dygraph_.layout_.getPlotArea(),c=0;this.getOption_("drawXAxis")&&(c=this.getOption_("xAxisHeight")||this.getOption_("axisLabelFontSize")+2*this.getOption_("axisTickSize")),this.canvasRect_={x:b.x,y:b.y+b.h+c+4,w:b.w,h:this.getOption_("rangeSelectorHeight")},a(this.bgcanvas_,this.canvasRect_),a(this.fgcanvas_,this.canvasRect_)},a.prototype.createCanvases_=function(){this.bgcanvas_=Dygraph.createCanvas(),this.bgcanvas_.className="dygraph-rangesel-bgcanvas",this.bgcanvas_.style.position="absolute",this.bgcanvas_.style.zIndex=9,this.bgcanvas_ctx_=Dygraph.getContext(this.bgcanvas_),this.fgcanvas_=Dygraph.createCanvas(),this.fgcanvas_.className="dygraph-rangesel-fgcanvas",this.fgcanvas_.style.position="absolute",this.fgcanvas_.style.zIndex=9,this.fgcanvas_.style.cursor="default",this.fgcanvas_ctx_=Dygraph.getContext(this.fgcanvas_)},a.prototype.createIEPanOverlay_=function(){this.iePanOverlay_=document.createElement("div"),this.iePanOverlay_.style.position="absolute",this.iePanOverlay_.style.backgroundColor="white",this.iePanOverlay_.style.filter="alpha(opacity=0)",this.iePanOverlay_.style.display="none",this.iePanOverlay_.style.cursor="move",this.fgcanvas_.appendChild(this.iePanOverlay_)},a.prototype.createZoomHandles_=function(){var a=new Image;a.className="dygraph-rangesel-zoomhandle",a.style.position="absolute",a.style.zIndex=10,a.style.visibility="hidden",a.style.cursor="col-resize",/MSIE 7/.test(navigator.userAgent)?(a.width=7,a.height=14,a.style.backgroundColor="white",a.style.border="1px solid #333333"):(a.width=9,a.height=16,a.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAYAAADESFVDAAAAAXNSR0IArs4c6QAAAAZiS0dEANAAzwDP4Z7KegAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9sHGw0cMqdt1UwAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAaElEQVQoz+3SsRFAQBCF4Z9WJM8KCDVwownl6YXsTmCUsyKGkZzcl7zkz3YLkypgAnreFmDEpHkIwVOMfpdi9CEEN2nGpFdwD03yEqDtOgCaun7sqSTDH32I1pQA2Pb9sZecAxc5r3IAb21d6878xsAAAAAASUVORK5CYII="),this.isMobileDevice_&&(a.width*=2,a.height*=2),this.leftZoomHandle_=a,this.rightZoomHandle_=a.cloneNode(!1)},a.prototype.initInteraction_=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o=this,p=this.isIE_?document:window,q=0,r=null,s=!1,t=!1,u=!this.isMobileDevice_&&!this.isUsingExcanvas_,v=new Dygraph.IFrameTarp;a=function(a){var b=o.dygraph_.xAxisExtremes(),c=(b[1]-b[0])/o.canvasRect_.w,d=b[0]+(a.leftHandlePos-o.canvasRect_.x)*c,e=b[0]+(a.rightHandlePos-o.canvasRect_.x)*c;return[d,e]},b=function(a){return Dygraph.cancelEvent(a),s=!0,q=a.clientX,r=a.target?a.target:a.srcElement,("mousedown"===a.type||"dragstart"===a.type)&&(Dygraph.addEvent(p,"mousemove",c),Dygraph.addEvent(p,"mouseup",d)),o.fgcanvas_.style.cursor="col-resize",v.cover(),!0},c=function(a){if(!s)return!1;Dygraph.cancelEvent(a);var b=a.clientX-q;if(Math.abs(b)<4)return!0;q=a.clientX;var c,d=o.getZoomHandleStatus_();r==o.leftZoomHandle_?(c=d.leftHandlePos+b,c=Math.min(c,d.rightHandlePos-r.width-3),c=Math.max(c,o.canvasRect_.x)):(c=d.rightHandlePos+b,c=Math.min(c,o.canvasRect_.x+o.canvasRect_.w),c=Math.max(c,d.leftHandlePos+r.width+3));var f=r.width/2;return r.style.left=c-f+"px",o.drawInteractiveLayer_(),u&&e(),!0},d=function(a){return s?(s=!1,v.uncover(),Dygraph.removeEvent(p,"mousemove",c),Dygraph.removeEvent(p,"mouseup",d),o.fgcanvas_.style.cursor="default",u||e(),!0):!1},e=function(){try{var b=o.getZoomHandleStatus_();if(o.isChangingRange_=!0,b.isZoomed){var c=a(b);o.dygraph_.doZoomXDates_(c[0],c[1])}else o.dygraph_.resetZoom()}finally{o.isChangingRange_=!1}},f=function(a){if(o.isUsingExcanvas_)return a.srcElement==o.iePanOverlay_;var b=o.leftZoomHandle_.getBoundingClientRect(),c=b.left+b.width/2;b=o.rightZoomHandle_.getBoundingClientRect();var d=b.left+b.width/2;return a.clientX>c&&a.clientX=o.canvasRect_.x+o.canvasRect_.w?(e=o.canvasRect_.x+o.canvasRect_.w,d=e-f):(d+=b,e+=b);var g=o.leftZoomHandle_.width/2;return o.leftZoomHandle_.style.left=d-g+"px",o.rightZoomHandle_.style.left=e-g+"px",o.drawInteractiveLayer_(),u&&j(),!0},i=function(a){return t?(t=!1,Dygraph.removeEvent(p,"mousemove",h),Dygraph.removeEvent(p,"mouseup",i),u||j(),!0):!1},j=function(){try{o.isChangingRange_=!0,o.dygraph_.dateWindow_=a(o.getZoomHandleStatus_()),o.dygraph_.drawGraph_(!1)}finally{o.isChangingRange_=!1}},k=function(a){if(!s&&!t){var b=f(a)?"move":"default";b!=o.fgcanvas_.style.cursor&&(o.fgcanvas_.style.cursor=b)}},l=function(a){"touchstart"==a.type&&1==a.targetTouches.length?b(a.targetTouches[0])&&Dygraph.cancelEvent(a):"touchmove"==a.type&&1==a.targetTouches.length?c(a.targetTouches[0])&&Dygraph.cancelEvent(a):d(a)},m=function(a){"touchstart"==a.type&&1==a.targetTouches.length?g(a.targetTouches[0])&&Dygraph.cancelEvent(a):"touchmove"==a.type&&1==a.targetTouches.length?h(a.targetTouches[0])&&Dygraph.cancelEvent(a):i(a)},n=function(a,b){for(var c=["touchstart","touchend","touchmove","touchcancel"],d=0;d1&&null!==i[d][1]){if(c="number"!=typeof i[d][1])for(a=[],b=[],f=0;f0)&&(n=Math.min(n,h),o=Math.max(o,h));var p=.25;if(j)for(o=Dygraph.log10(o),o+=o*p,n=Dygraph.log10(n),d=0;dthis.canvasRect_.x||c+1=0==r>=4?null:(j=h-f,l=e-g,n=g*f-e*h,o=j*a+l*b+n,p=j*c+l*d+n,0!==o&&0!==p&&o>=0==p>=0?null:(s=i*l-j*k,0===s?null:(t=0>s?-s/2:s/2,t=0,u=k*n-l*m,v.x=(0>u?u-t:u+t)/s,u=j*m-i*n,v.y=(0>u?u-t:u+t)/s,v)))}b.exports=d},{}],3:[function(a,b,c){b.exports.degree=a("./src/degree.js"),b.exports.betweenness=a("./src/betweenness.js")},{"./src/betweenness.js":4,"./src/degree.js":5}],4:[function(a,b,c){function d(a,b){ +function c(a){p[a]/=2}function d(a){p[a.id]=0}function e(a){i=a.id,h(i),f()}function f(){for(a.forEachNode(g);k.length;){for(var b=k.pop(),c=(1+o[b])/n[b],d=l[b],e=0;e1&&(e=Array.prototype.splice.call(arguments,1));for(var f=0;fd;++d){var e=a.links[d],f=e.fromId!==a.id?u[e.fromId]:u[e.toId];f&&f.pos&&b.push(f)}return b}function o(a){var b=u[a];b.mass=r(a)}function p(a){return a&&(a.isPinned||a.data&&a.data.isPinned)}function q(a){var b=u[a];return b||(j(a),b=u[a]),b}function r(a){return 1+b.getLinks(a).length/3}if(!b)throw new Error("Graph structure cannot be undefined");var s=a("ngraph.physics.simulator"),t=s(c),u="function"==typeof Object.create?Object.create(null):{},v={},w=t.settings.springTransform||e;i(),g();var x={step:function(){return t.step()},getNodePosition:function(a){return q(a).pos},setNodePosition:function(a){var b=q(a);b.setPosition.apply(b,Array.prototype.slice.call(arguments,1))},getLinkPosition:function(a){var b=v[a];return b?{from:b.from.pos,to:b.to.pos}:void 0},getGraphRect:function(){return t.getBBox()},pinNode:function(a,b){var c=q(a.id);c.isPinned=!!b},isNodePinned:function(a){return q(a.id).isPinned},dispose:function(){b.off("changed",h)},getBody:f,getSpring:d,simulator:t};return x}function e(){}b.exports=d,b.exports.simulator=a("ngraph.physics.simulator")},{"ngraph.physics.simulator":8}],8:[function(a,b,c){function d(b){function c(){var a,b=m.length;if(b)for(o.insertBodies(m);b--;)a=m[b],a.force.reset(),o.updateBodyForce(a),r.update(a);for(b=n.length;b--;)q.update(n[b])}var d=a("./lib/spring"),e=a("ngraph.expose"),f=a("ngraph.merge");b=f(b,{springLength:30,springCoeff:8e-4,gravity:-1.2,theta:.8,dragCoeff:.02,timeStep:20,stableThreshold:.009});var g=b.createQuadTree||a("ngraph.quadtreebh"),h=b.createBounds||a("./lib/bounds"),i=b.createDragForce||a("./lib/dragForce"),j=b.createSpringForce||a("./lib/springForce"),k=b.integrator||a("./lib/eulerIntegrator"),l=b.createBody||a("./lib/createBody"),m=[],n=[],o=g(b),p=h(m,b),q=j(b),r=i(b),s={bodies:m,springs:n,settings:b,step:function(){c();var a=k(m,b.timeStep);return p.update(),ab))return m.splice(b,1),0===m.length&&p.reset(),!0}},addSpring:function(a,b,c,e,f){if(!a||!b)throw new Error("Cannot add null spring to force simulator");"number"!=typeof c&&(c=-1);var g=new d(a,b,c,f>=0?f:-1,e);return n.push(g),g},removeSpring:function(a){if(a){var b=n.indexOf(a);return b>-1?(n.splice(b,1),!0):void 0}},getBestNewBodyPosition:function(a){return p.getBestNewPosition(a)},getBBox:function(){return p.box},gravity:function(a){return void 0!==a?(b.gravity=a,o.options({gravity:a}),this):b.gravity},theta:function(a){return void 0!==a?(b.theta=a,o.options({theta:a}),this):b.theta}};return e(b,s),s}b.exports=d},{"./lib/bounds":9,"./lib/createBody":10,"./lib/dragForce":11,"./lib/eulerIntegrator":12,"./lib/spring":13,"./lib/springForce":14,"ngraph.expose":15,"ngraph.merge":24,"ngraph.quadtreebh":17}],9:[function(a,b,c){b.exports=function(b,c){function d(){var a=b.length;if(0!==a){for(var c=Number.MAX_VALUE,d=Number.MAX_VALUE,e=Number.MIN_VALUE,g=Number.MIN_VALUE;a--;){var h=b[a];h.isPinned?(h.pos.x=h.prevPos.x,h.pos.y=h.prevPos.y):(h.prevPos.x=h.pos.x,h.prevPos.y=h.pos.y),h.pos.xe&&(e=h.pos.x),h.pos.yg&&(g=h.pos.y)}f.x1=c,f.x2=e,f.y1=d,f.y2=g}}var e=a("ngraph.random").random(42),f={x1:0,y1:0,x2:0,y2:0};return{box:f,update:d,reset:function(){f.x1=f.y1=0,f.x2=f.y2=0},getBestNewPosition:function(a){var b=f,d=0,g=0;if(a.length){for(var h=0;hc;++c){var i=a[c],j=b/i.mass;i.velocity.x+=j*i.force.x,i.velocity.y+=j*i.force.y;var k=i.velocity.x,l=i.velocity.y,m=Math.sqrt(k*k+l*l);m>1&&(i.velocity.x=k/m,i.velocity.y=l/m),d=b*i.velocity.x,f=b*i.velocity.y,i.pos.x+=d,i.pos.y+=f,e+=Math.abs(d),g+=Math.abs(f)}return(e*e+g*g)/a.length}b.exports=d},{}],13:[function(a,b,c){function d(a,b,c,d,e){this.from=a,this.to=b,this.length=c,this.coeff=d,this.weight="number"==typeof e?e:1}b.exports=d},{}],14:[function(a,b,c){b.exports=function(b){var c=a("ngraph.merge"),d=a("ngraph.random").random(42),e=a("ngraph.expose");b=c(b,{springCoeff:2e-4,springLength:80});var f={update:function(a){var c=a.from,e=a.to,f=a.length<0?b.springLength:a.length,g=e.pos.x-c.pos.x,h=e.pos.y-c.pos.y,i=Math.sqrt(g*g+h*h);0===i&&(g=(d.nextDouble()-.5)/50,h=(d.nextDouble()-.5)/50,i=Math.sqrt(g*g+h*h));var j=i-f,k=(!a.coeff||a.coeff<0?b.springCoeff:a.coeff)*j/i*a.weight;c.force.x+=k*g,c.force.y+=k*h,e.force.x-=k*g,e.force.y-=k*h}};return e(b,f,["springCoeff","springLength"]),f}},{"ngraph.expose":15,"ngraph.merge":24,"ngraph.random":25}],15:[function(a,b,c){function d(a,b,c){var d="[object Array]"===Object.prototype.toString.call(c);if(d)for(var f=0;f0&&h(i.pos,g.pos));if(0===j&&h(i.pos,g.pos))return}k.push(f,i),k.push(f,g)}else{var q=g.pos.x,r=g.pos.y;f.mass=f.mass+g.mass,f.massX=f.massX+g.mass*q,f.massY=f.massY+g.mass*r;var s=0,t=f.left,u=(f.right+t)/2,v=f.top,w=(f.bottom+v)/2;if(q>u){s+=1;var x=t;t=u,u+=u-x}if(r>w){s+=2;var y=v;v=w,w+=w-y}var z=d(f,s);z?k.push(z,g):(z=o(),z.left=t,z.top=v,z.right=u,z.bottom=w,z.body=g,e(f,s,z))}}},r=function(a){var b,d,e,f,g=j,h=0,k=0,m=1,n=0,o=1;for(g[0]=p;m;){var q=g[n],r=q.body;m-=1,n+=1;var s=r!==a;r&&s?(d=r.pos.x-a.pos.x,e=r.pos.y-a.pos.y,f=Math.sqrt(d*d+e*e),0===f&&(d=(c.nextDouble()-.5)/50,e=(c.nextDouble()-.5)/50,f=Math.sqrt(d*d+e*e)),b=i*r.mass*a.mass/(f*f*f),h+=b*d,k+=b*e):s&&(d=q.massX/q.mass-a.pos.x,e=q.massY/q.mass-a.pos.y,f=Math.sqrt(d*d+e*e),0===f&&(d=(c.nextDouble()-.5)/50,e=(c.nextDouble()-.5)/50,f=Math.sqrt(d*d+e*e)),(q.right-q.left)/fh&&(c=h),h>e&&(e=h),d>i&&(d=i),i>f&&(f=i)}var j=e-c,k=f-d;for(j>k?f=d+j:e=c+k,n=0,p=o(),p.left=c,p.right=e,p.top=d,p.bottom=f,b=g-1,b>0&&(p.body=a[b]);b--;)q(a[b],p)};return{insertBodies:s,updateBodyForce:r,options:function(a){return a?("number"==typeof a.gravity&&(i=a.gravity),"number"==typeof a.theta&&(l=a.theta),this):{gravity:i,theta:l}}}}},{"./insertStack":18,"./isSamePosition":19,"./node":20,"ngraph.random":25}],18:[function(a,b,c){function d(){this.stack=[],this.popIdx=0}function e(a,b){this.node=a,this.body=b}b.exports=d,d.prototype={isEmpty:function(){return 0===this.popIdx},push:function(a,b){var c=this.stack[this.popIdx];c?(c.node=a,c.body=b):this.stack[this.popIdx]=new e(a,b),++this.popIdx},pop:function(){return this.popIdx>0?this.stack[--this.popIdx]:void 0},reset:function(){this.popIdx=0}}},{}],19:[function(a,b,c){b.exports=function(a,b){var c=Math.abs(a.x-b.x),d=Math.abs(a.y-b.y);return 1e-8>c&&1e-8>d}},{}],20:[function(a,b,c){b.exports=function(){this.body=null,this.quad0=null,this.quad1=null,this.quad2=null,this.quad3=null,this.mass=0,this.massX=0,this.massY=0,this.left=0,this.top=0,this.bottom=0,this.right=0}},{}],21:[function(a,b,c){function d(a,b,c){var d;b=b||e,c=c||e,d="string"==typeof a?JSON.parse(a):a;var g,h=f();if(void 0===d.links||void 0===d.nodes)throw new Error("Cannot load graph without links and nodes");for(g=0;ga)throw new Error("Invalid number of nodes");var b,c=n();for(b=0;a-1>b;++b)c.addLink(b,b+1),c.addLink(a+b,a+b+1),c.addLink(b,a+b);return c.addLink(a-1,2*a-1),c}function e(a){if(!a||0>a)throw new Error("Invalid number of nodes");var b=d(a);return b.addLink(0,a-1),b.addLink(a,2*a-1),b}function f(a){if(!a||1>a)throw new Error("At least two nodes are expected for complete graph");var b,c,d=n();for(b=0;a>b;++b)for(c=b+1;a>c;++c)b!==c&&d.addLink(b,c);return d}function g(a,b){if(!a||!b||0>a||0>b)throw new Error("Graph dimensions are invalid. Number of nodes in each partition should be greater than 0");var c,d,e=n();for(c=0;a>c;++c)for(d=a;a+b>d;++d)e.addLink(c,d);return e}function h(a){if(!a||0>a)throw new Error("Invalid number of nodes");var b,c=n();for(c.addNode(0),b=1;a>b;++b)c.addLink(b-1,b);return c}function i(a,b){if(1>a||1>b)throw new Error("Invalid number of nodes in grid graph");var c,d,e=n();if(1===a&&1===b)return e.addNode(0),e;for(c=0;a>c;++c)for(d=0;b>d;++d){var f=c+d*a;c>0&&e.addLink(f,c-1+d*a),d>0&&e.addLink(f,c+(d-1)*a)}return e}function j(a,b,c){if(1>a||1>b||1>c)throw new Error("Invalid number of nodes in grid3 graph");var d,e,f,g=n();if(1===a&&1===b&&1===c)return g.addNode(0),g;for(f=0;c>f;++f)for(d=0;a>d;++d)for(e=0;b>e;++e){var h=f*a*b,i=d+e*a+h;d>0&&g.addLink(i,d-1+e*a+h),e>0&&g.addLink(i,d+(e-1)*a+h),f>0&&g.addLink(i,d+e*a+(f-1)*a*b)}return g}function k(a){if(0>a)throw new Error("Invalid number of nodes in balanced tree");var b,c=n(),d=Math.pow(2,a);for(0===a&&c.addNode(1),b=1;d>b;++b){var e=b,f=2*e,g=2*e+1;c.addLink(e,f),c.addLink(e,g)}return c}function l(a){if(0>a)throw new Error("Number of nodes shoul be >= 0");var b,c=n();for(b=0;a>b;++b)c.addNode(b);return c}function m(b,c,d,e){if(c>=b)throw new Error("Choose smaller `k`. It cannot be larger than number of nodes `n`");var f,g,h=a("ngraph.random").random(e||42),i=n();for(f=0;b>f;++f)i.addNode(f);for(var j=Math.floor(c/2+1),k=1;j>k;++k)for(f=0;b>f;++f)g=(k+f)%b,i.addLink(f,g);for(k=1;j>k;++k)for(f=0;b>f;++f)if(h.nextDouble()b)return!1;M(),D.splice(b,1);var c=j(a.fromId),d=j(a.toId);return c&&(b=e(a,c.links),b>=0&&c.links.splice(b,1)),d&&(b=e(a,d.links),b>=0&&d.links.splice(b,1)),K(a,"remove"),N(),!0}function q(a,b){var c,d=j(a);if(!d)return null;for(c=0;cb;++b)a(D[b])}function t(a,b,c){var d=j(a);return d&&d.links&&"function"==typeof b?c?v(d.links,a,b):u(d.links,a,b):void 0}function u(a,b,c){for(var d,e=0;e0&&(O.fire("changed",J),J.length=0)}function z(){return Object.keys?A:B}function A(a){if("function"==typeof a)for(var b=Object.keys(C),c=0;cc;c+=1)if(b[c]===a)return c;return-1}function f(a){this.id=a,this.links=[],this.data=null}function g(a,b,c,d){this.fromId=a,this.toId=b,this.data=c,this.id=d}b.exports=d;var h=a("ngraph.events")},{"ngraph.events":6}],24:[function(a,b,c){function d(a,b){var c;if(a||(a={}),b)for(c in b)if(b.hasOwnProperty(c)){var e=a.hasOwnProperty(c),f=typeof b[c],g=!e||typeof a[c]!==f;g?a[c]=b[c]:"object"===f&&(a[c]=d(a[c],b[c]))}return a}b.exports=d},{}],25:[function(a,b,c){function d(a){var b="number"==typeof a?a:+new Date,c=function(){return b=b+2127912214+(b<<12)&4294967295,b=4294967295&(3345072700^b^b>>>19),b=b+374761393+(b<<5)&4294967295,b=4294967295&(b+3550635116^b<<9),b=b+4251993797+(b<<3)&4294967295,b=4294967295&(3042594569^b^b>>>16),(268435455&b)/268435456};return{next:function(a){return Math.floor(c()*a)},nextDouble:function(){return c()}}}function e(a,b){var c=b||d();if("function"!=typeof c.next)throw new Error("customRandom does not match expected API: next() function is missing");return{forEach:function(b){var d,e,f;for(d=a.length-1;d>0;--d)e=c.next(d+1),f=a[e],a[e]=a[d],a[d]=f,b(f);a.length&&b(a[0])},shuffle:function(){var b,d,e;for(b=a.length-1;b>0;--b)d=c.next(b+1),e=a[d],a[d]=a[b],a[b]=e;return a}}}b.exports={random:d,randomIterator:e}},{}],26:[function(a,b,c){function d(a,b,c){function d(a){h.nodes.push(i(a))}function e(a){h.links.push(j(a))}function f(a){var b={id:a.id};return void 0!==a.data&&(b.data=a.data),b}function g(a){var b={fromId:a.fromId,toId:a.toId};return void 0!==a.data&&(b.data=a.data),b}var h={nodes:[],links:[]},i=b||f,j=c||g;return a.forEachNode(d),a.forEachLink(e),JSON.stringify(h)}b.exports=d},{}],27:[function(a,b,c){function d(a,b){var c=e(a);if(void 0===b)return c;for(var d=Object.keys(b),f=0;fc?d=-1:c>o&&(d=1),h(a,d,{x:a.touches[0].clientX,y:a.touches[0].clientY}),o=c,r(a),s(a)}},B=function(a){n=!1,e.off("touchmove",A),e.off("touchend",B),e.off("touchcancel",B),k=null,d&&d(a)},C=function(a,c){r(a),s(a),l=c.clientX,m=c.clientY,k=a.target||a.srcElement,b&&b(a,{x:l,y:m}),n||(n=!0,e.on("touchmove",A),e.on("touchend",B),e.on("touchcancel",B))},D=function(a){return 1===a.touches.length?C(a,a.touches[0]):void(2===a.touches.length&&(r(a),s(a),o=z(a.touches[0],a.touches[1])))};return a.addEventListener("mousedown",v),a.addEventListener("touchstart",D),{onStart:function(a){return b=a,this},onDrag:function(a){return c=a,this},onStop:function(a){return d=a,this},onScroll:function(a){return y(a),this},release:function(){a.removeEventListener("mousedown",v),a.removeEventListener("touchstart",D),e.off("mousemove",u),e.off("mouseup",w),e.off("touchmove",A),e.off("touchend",B),e.off("touchcancel",B),y(null)}}}b.exports=d;var e=a("../Utils/documentEvents.js"),f=a("../Utils/browserInfo.js"),g=a("../Utils/findElementPosition.js")},{"../Utils/browserInfo.js":39,"../Utils/documentEvents.js":40,"../Utils/findElementPosition.js":41}],36:[function(a,b,c){function d(a,b){var c=e(b),d=null,f={},g={x:0,y:0};return c.mouseDown(function(a,b){d=a,g.x=b.clientX,g.y=b.clientY,c.mouseCapture(d);var e=f[a.id];return e&&e.onStart&&e.onStart(b,g),!0}).mouseUp(function(a){c.releaseMouseCapture(d),d=null;var b=f[a.id];return b&&b.onStop&&b.onStop(),!0}).mouseMove(function(a,b){if(d){var c=f[d.id];return c&&c.onDrag&&c.onDrag(b,{x:b.clientX-g.x,y:b.clientY-g.y}),g.x=b.clientX,g.y=b.clientY,!0}}),{bindDragNDrop:function(a,b){f[a.id]=b,b||delete f[a.id]}}}b.exports=d;var e=a("../WebGL/webglInputEvents.js")},{"../WebGL/webglInputEvents.js":57}],37:[function(a,b,c){function d(a,b){function c(a){return l[a]}b=e(b,{maxX:1024,maxY:1024,seed:"Deterministic randomness made me do this"});var d=f(b.seed),h=new g(Number.MAX_VALUE,Number.MAX_VALUE,Number.MIN_VALUE,Number.MIN_VALUE),i={},j=function(a){return{x:d.next(b.maxX),y:d.next(b.maxY)}},k=function(a,b){a.xb.x2&&(b.x2=a.x),a.yb.y2&&(b.y2=a.y)},l="function"==typeof Object.create?Object.create(null):{},m=function(a){l[a.id]=j(a),k(l[a.id],h)},n=function(){0!==a.getNodesCount()&&(h.x1=Number.MAX_VALUE,h.y1=Number.MAX_VALUE,h.x2=Number.MIN_VALUE,h.y2=Number.MIN_VALUE,a.forEachNode(m))},o=function(a){i[a.id]=a},p=function(a){for(var b=0;b=0:"boolean"==typeof Q?Q:!0}function d(){P=P||window.document.body,N=N||f(a,{springLength:80,springCoeff:2e-4}),O=O||g(a,{container:P}),b.hasOwnProperty("renderLinks")||(b.renderLinks=!0),b.prerender=b.prerender||0,K=(O.inputManager||i)(a,O)}function m(){O.beginRender(),b.renderLinks&&O.renderLinks(),O.renderNodes(),O.endRender()}function n(){return V=N.step()&&!W,m(),!V}function o(a){return L?void(U+=a):void(a?(U+=a,L=j(function(){return n()},J)):(T=0,U=0,L=j(n,J)))}function p(){X||(V=!1,L.restart())}function q(){if("number"==typeof b.prerender&&b.prerender>0)for(var a=0;ab,c)})),a.forEachNode(w),F(),a.on("changed",C)}function I(){R=!1,F(),E(),h.off("resize",D),Z.off(),L.stop(),a.forEachLink(function(a){b.renderLinks&&v(a)}),a.forEachNode(function(a){x(a),t(a)}),N.dispose(),z()}var J=30;b=b||{};var K,L,M,N=b.layout,O=b.graphics,P=b.container,Q=void 0!==b.interactive?b.interactive:!0,R=!1,S=!0,T=0,U=0,V=!1,W=!1,X=!1,Y={offsetX:0,offsetY:0,scale:1},Z=e({});return{run:function(a){return R||(d(),q(),y(),r(),H(),R=!0),o(a),this},reset:function(){O.resetScale(),r(),Y.scale=1},pause:function(){X=!0,L.stop()},resume:function(){X=!1,L.restart()},rerender:function(){return m(),this},zoomOut:function(){return G(!0)},zoomIn:function(){return G(!1)},moveTo:function(a,b){O.graphCenterChanged(Y.offsetX-a*Y.scale,Y.offsetY-b*Y.scale),m()},getGraphics:function(){return O},dispose:function(){I()},on:function(a,b){return Z.on(a,b),this},off:function(a,b){return Z.off(a,b),this}}}b.exports=d;var e=a("ngraph.events"),f=a("ngraph.forcelayout"),g=a("./svgGraphics.js"),h=a("../Utils/windowEvents.js"),i=a("../Input/domInputManager.js"),j=a("../Utils/timer.js"),k=a("../Utils/getDimensions.js"),l=a("../Input/dragndrop.js")},{"../Input/domInputManager.js":34,"../Input/dragndrop.js":35,"../Utils/getDimensions.js":42,"../Utils/timer.js":46,"../Utils/windowEvents.js":47,"./svgGraphics.js":49,"ngraph.events":6,"ngraph.forcelayout":7}],49:[function(a,b,c){function d(){function a(){var a=e("svg");return b=e("g").attr("buffered-rendering","dynamic"),a.appendChild(b),a}var b,c,d,h=0,i=0,j=1,k={},l={},m=function(a){return e("rect").attr("width",10).attr("height",10).attr("fill","#00a2e8")},n=function(a,b){a.attr("x",b.x-5).attr("y",b.y-5)},o=function(a){return e("line").attr("stroke","#999")},p=function(a,b,c){a.attr("x1",b.x).attr("y1",b.y).attr("x2",c.x).attr("y2",c.y)},q=function(a){a.fire("rescaled")},r={x:0,y:0},s={x:0,y:0},t={x:0,y:0},u=function(){if(b){var a="matrix("+j+", 0, 0,"+j+","+h+","+i+")";b.attr("transform",a)}};c=a();var v={getNodeUI:function(a){return k[a]},getLinkUI:function(a){return l[a]},node:function(a){return"function"==typeof a?(m=a,this):void 0},link:function(a){return"function"==typeof a?(o=a,this):void 0},placeNode:function(a){return n=a,this},placeLink:function(a){return p=a,this},beginRender:function(){},endRender:function(){},graphCenterChanged:function(a,b){h=a,i=b,u()},inputManager:g,translateRel:function(a,d){var e=c.createSVGPoint(),f=b.getCTM(),g=c.createSVGPoint().matrixTransform(f.inverse());e.x=a,e.y=d,e=e.matrixTransform(f.inverse()),e.x=(e.x-g.x)*f.a,e.y=(e.y-g.y)*f.d,f.e+=e.x,f.f+=e.y;var h="matrix("+f.a+", 0, 0,"+f.d+","+f.e+","+f.f+")";b.attr("transform",h)},scale:function(a,d){var e=c.createSVGPoint();e.x=d.x,e.y=d.y,e=e.matrixTransform(b.getCTM().inverse());var f=c.createSVGMatrix().translate(e.x,e.y).scale(a).translate(-e.x,-e.y),g=b.getCTM().multiply(f);j=g.a,h=g.e,i=g.f;var k="matrix("+g.a+", 0, 0,"+g.d+","+g.e+","+g.f+")";return b.attr("transform",k),q(this),j},resetScale:function(){j=1;var a="matrix(1, 0, 0, 1, 0, 0)";return b.attr("transform",a),q(this),this},init:function(a){a.appendChild(c),u(),"function"==typeof d&&d(c)},release:function(a){c&&a&&a.removeChild(c)},addLink:function(a,c){var d=o(a);if(d)return d.position=c,d.link=a,l[a.id]=d,b.childElementCount>0?b.insertBefore(d,b.firstChild):b.appendChild(d),d},releaseLink:function(a){var c=l[a.id];c&&(b.removeChild(c),delete l[a.id])},addNode:function(a,c){var d=m(a);if(d)return d.position=c,d.node=a,k[a.id]=d,b.appendChild(d),d},releaseNode:function(a){var c=k[a.id];c&&(b.removeChild(c),delete k[a.id])},renderNodes:function(){for(var a in k)if(k.hasOwnProperty(a)){var b=k[a];r.x=b.position.x,r.y=b.position.y,n(b,r,b.node)}},renderLinks:function(){for(var a in l)if(l.hasOwnProperty(a)){var b=l[a];s.x=b.position.from.x,s.y=b.position.from.y,t.x=b.position.to.x,t.y=b.position.to.y,p(b,s,t,b.link)}},getGraphicsRoot:function(a){return"function"==typeof a&&(c?a(c):d=a),c},getSvgRoot:function(){return c}};return f(v),v}b.exports=d;var e=a("simplesvg"),f=a("ngraph.events"),g=a("../Input/domInputManager.js")},{"../Input/domInputManager.js":34,"ngraph.events":6,simplesvg:27}],50:[function(a,b,c){function d(a){a=k(a,{enableBlending:!0,preserveDrawingBuffer:!1,clearColor:!1,clearColorValue:{r:1,g:1,b:1,a:1}});var b,c,d,l,m,n,o,p,q=0,r=0,s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t=[],u=[],v={},w={},x=f(),y=g(),z=function(a){return h()},A=function(a){return i(3014898687)},B=function(){x.updateTransform(s),y.updateTransform(s)},C=function(){s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},D=function(){b&&c&&(l=c.width=Math.max(b.offsetWidth,1),m=c.height=Math.max(b.offsetHeight,1),d&&d.viewport(0,0,l,m),x&&x.updateSize(l/2,m/2),y&&y.updateSize(l/2,m/2))},E=function(a){a.fire("rescaled")};c=window.document.createElement("canvas");var F={getLinkUI:function(a){return w[a]},getNodeUI:function(a){return v[a]},node:function(a){return"function"==typeof a?(z=a,this):void 0},link:function(a){return"function"==typeof a?(A=a,this):void 0},placeNode:function(a){return n=a,this},placeLink:function(a){return o=a,this},inputManager:e,beginRender:function(){},endRender:function(){r>0&&x.render(),q>0&&y.render()},bringLinkToFront:function(a){var b,c,d=x.getFrontLinkId();x.bringToFront(a),d>a.id&&(b=a.id,c=u[d],u[d]=u[b],u[d].id=d,u[b]=c,u[b].id=b)},graphCenterChanged:function(a,b){s[12]=2*a/l-1,s[13]=1-2*b/m,B()},addLink:function(a,b){var c=r++,d=A(a);return d.id=c,d.pos=b,x.createLink(d),u[c]=d,w[a.id]=d,d},addNode:function(a,b){var c=q++,d=z(a);return d.id=c,d.position=b,d.node=a,y.createNode(d),t[c]=d,v[a.id]=d,d},translateRel:function(a,b){s[12]+=2*s[0]*a/l/s[0],s[13]-=2*s[5]*b/m/s[5],B()},scale:function(a,b){var c=2*b.x/l-1,d=1-2*b.y/m;return c-=s[12],d-=s[13],s[12]+=c*(1-a),s[13]+=d*(1-a),s[0]*=a,s[5]*=a,B(),E(this),s[0]},resetScale:function(){return C(),d&&(D(),B()),this},init:function(e){var f={};if(a.preserveDrawingBuffer&&(f.preserveDrawingBuffer=!0),b=e,D(),C(),b.appendChild(c),d=c.getContext("experimental-webgl",f),!d){var g="Could not initialize WebGL. Seems like the browser doesn't support it.";throw window.alert(g),g}if(a.enableBlending&&(d.blendFunc(d.SRC_ALPHA,d.ONE_MINUS_SRC_ALPHA),d.enable(d.BLEND)),a.clearColor){var h=a.clearColorValue;d.clearColor(h.r,h.g,h.b,h.a),this.beginRender=function(){d.clear(d.COLOR_BUFFER_BIT)}}x.load(d),x.updateSize(l/2,m/2),y.load(d),y.updateSize(l/2,m/2),B(),"function"==typeof p&&p(c)},release:function(a){c&&a&&a.removeChild(c)},isSupported:function(){var a=window.document.createElement("canvas"),b=a&&a.getContext&&a.getContext("experimental-webgl");return b},releaseLink:function(a){r>0&&(r-=1);var b=w[a.id];delete w[a.id],x.removeLink(b);var c=b.id;if(r>c){if(0===r||r===c)return;var d=u[r];u[c]=d,d.id=c}},releaseNode:function(a){q>0&&(q-=1);var b=v[a.id];delete v[a.id],y.removeNode(b);var c=b.id;if(q>c){if(0===q||q===c)return;var d=t[q];t[c]=d,d.id=c,y.replaceProperties(b,d)}},renderNodes:function(){for(var a={x:0,y:0},b=0;q>b;++b){var c=t[b];a.x=c.position.x,a.y=-c.position.y,n&&n(c,a),y.position(c,a)}},renderLinks:function(){if(!this.omitLinksRendering)for(var a={x:0,y:0},b={x:0,y:0},c=0;r>c;++c){var d=u[c],e=d.pos.from;b.x=e.x,b.y=-e.y,e=d.pos.to,a.x=e.x,a.y=-e.y,o&&o(d,b,a),x.position(d,b,a)}},getGraphicsRoot:function(a){return"function"==typeof a&&(c?a(c):p=a),c},setNodeProgram:function(a){if(!d&&a)y=a;else if(a)throw"Not implemented. Cannot swap shader on the fly... Yet."},setLinkProgram:function(a){if(!d&&a)x=a;else if(a)throw"Not implemented. Cannot swap shader on the fly... Yet."},transformClientToGraphCoordinates:function(a){return a.x=2*a.x/l-1,a.y=1-2*a.y/m,a.x=(a.x-s[12])/s[0],a.y=(a.y-s[13])/s[5],a.x*=l/2,a.y*=-m/2,a},getNodeAtClientPos:function(a,b){if("function"!=typeof b)return null;this.transformClientToGraphCoordinates(a);for(var c=0;q>c;++c)if(b(t[c],a.x,a.y))return t[c].node;return null}};return j(F),F}b.exports=d;var e=a("../Input/webglInputManager.js"),f=a("../WebGL/webglLinkProgram.js"),g=a("../WebGL/webglNodeProgram.js"),h=a("../WebGL/webglSquare.js"),i=a("../WebGL/webglLine.js"),j=a("ngraph.events"),k=a("ngraph.merge")},{"../Input/webglInputManager.js":36,"../WebGL/webglLine.js":58,"../WebGL/webglLinkProgram.js":59,"../WebGL/webglNodeProgram.js":60,"../WebGL/webglSquare.js":61,"ngraph.events":6,"ngraph.merge":24}],51:[function(a,b,c){function d(a){var b=10414335;if("string"==typeof a&&a)if(4===a.length&&(a=a.replace(/([^#])/g,"$1$1")),9===a.length)b=parseInt(a.substr(1),16);else{if(7!==a.length)throw'Color expected in hex format with preceding "#". E.g. #00ff00. Got value: '+a;b=parseInt(a.substr(1),16)<<8|255}else"number"==typeof a&&(b=a);return b}b.exports=d},{}],52:[function(a,b,c){function d(a){this.canvas=window.document.createElement("canvas"),this.ctx=this.canvas.getContext("2d"),this.isDirty=!1,this.canvas.width=this.canvas.height=a}b.exports=d},{}],53:[function(a,b,c){function d(a){function b(b,c){var d=a.createShader(c);if(a.shaderSource(d,b),a.compileShader(d),!a.getShaderParameter(d,a.COMPILE_STATUS)){var e=a.getShaderInfoLog(d);throw window.alert(e),e}return d}function c(c,d){var e=a.createProgram(),f=b(c,a.VERTEX_SHADER),g=b(d,a.FRAGMENT_SHADER);if(a.attachShader(e,f),a.attachShader(e,g),a.linkProgram(e),!a.getProgramParameter(e,a.LINK_STATUS)){var h=a.getShaderInfoLog(e);throw window.alert(h),h}return e}function d(a,b,c){if((b+1)*c>a.length){var d=new Float32Array(a.length*c*2);return d.set(a),d}return a}function g(b,c){for(var d={},e=0;ee;++e)a[b+e]=a[c+e]}function f(a,b,c,d){for(var e=0;d>e;++e){var f=a[b+e];a[b+e]=a[c+e],a[c+e]=f}}b.exports=d},{}],54:[function(a,b,c){function d(a){function b(){var a;for(w.isDirty=!1,a=0;a=u.length&&i();var f=u[d.textureNumber];f.ctx.drawImage(b,d.col*q,d.row*q,q,q),v[a]=b.src,s[b.src]=e,f.isDirty=!0,c(e)}function k(b){var c=b/a<<0,d=b%a,e=d/p<<0,f=d%p;return{textureNumber:c,row:e,col:f}}function l(){w.isDirty=!0,t=0,o=null}function m(){o&&(window.clearTimeout(o),t+=1,o=null),t>10?l():o=window.setTimeout(l,400)}function n(a,b){var c=u[a.textureNumber].canvas,d=u[b.textureNumber].ctx,e=b.col*q,f=b.row*q;d.drawImage(c,a.col*q,a.row*q,q,q,e,f,q,q),u[a.textureNumber].isDirty=!0,u[b.textureNumber].isDirty=!0}var o,p=Math.sqrt(a||1024)<<0,q=p,r=1,s={},t=0,u=[],v=[];if(!e(a))throw"Tiles per texture should be power of two.";var w={isDirty:!1,clearDirty:b,remove:c,getTextures:d,getCoordinates:g,load:h};return w}function e(a){return 0===(a&a-1)}var f=a("./texture.js");b.exports=d},{"./texture.js":52}],55:[function(a,b,c){function d(a,b){return{_texture:0,_offset:0,size:"number"==typeof a?a:32,src:b}}b.exports=d},{}],56:[function(a,b,c){function d(){function a(a,b){a.nativeObject&&q.deleteTexture(a.nativeObject);var c=q.createTexture();q.activeTexture(q["TEXTURE"+b]),q.bindTexture(q.TEXTURE_2D,c),q.texImage2D(q.TEXTURE_2D,0,q.RGBA,q.RGBA,q.UNSIGNED_BYTE,a.canvas),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MAG_FILTER,q.LINEAR),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MIN_FILTER,q.LINEAR_MIPMAP_NEAREST),q.generateMipmap(q.TEXTURE_2D),q.uniform1i(t["sampler"+b],b),a.nativeObject=c}function b(){if(o.isDirty){var b,c=o.getTextures();for(b=0;b0&&(C-=1),a.id0&&(a.src&&o.remove(a.src),s.copyArrayPart(D,a.id*y,C*y,y))}function k(a,b){b._offset=a._offset}function l(a){x=!0,w=a}function m(a,b){u=a,v=b,x=!0}function n(){q.useProgram(p),q.bindBuffer(q.ARRAY_BUFFER,r),q.bufferData(q.ARRAY_BUFFER,D,q.DYNAMIC_DRAW),x&&(x=!1,q.uniformMatrix4fv(t.transform,!1,w),q.uniform2f(t.screenSize,u,v)),q.vertexAttribPointer(t.vertexPos,2,q.FLOAT,!1,3*Float32Array.BYTES_PER_ELEMENT,0),q.vertexAttribPointer(t.customAttributes,1,q.FLOAT,!1,3*Float32Array.BYTES_PER_ELEMENT,8),b(),q.drawArrays(q.TRIANGLES,0,6*C)}var o,p,q,r,s,t,u,v,w,x,y=18,z=e(),A=f(),B=1024,C=0,D=new Float32Array(64);return{load:c,position:d,createNode:i,removeNode:j,replaceProperties:k,updateTransform:l,updateSize:m,render:n}}function e(){return["precision mediump float;","varying vec4 color;","varying vec3 vTextureCoord;","uniform sampler2D u_sampler0;","uniform sampler2D u_sampler1;","uniform sampler2D u_sampler2;","uniform sampler2D u_sampler3;","void main(void) {"," if (vTextureCoord.z == 0.) {"," gl_FragColor = texture2D(u_sampler0, vTextureCoord.xy);"," } else if (vTextureCoord.z == 1.) {"," gl_FragColor = texture2D(u_sampler1, vTextureCoord.xy);"," } else if (vTextureCoord.z == 2.) {"," gl_FragColor = texture2D(u_sampler2, vTextureCoord.xy);"," } else if (vTextureCoord.z == 3.) {"," gl_FragColor = texture2D(u_sampler3, vTextureCoord.xy);"," } else { gl_FragColor = vec4(0, 1, 0, 1); }","}"].join("\n")}function f(){return["attribute vec2 a_vertexPos;","attribute float a_customAttributes;","uniform vec2 u_screenSize;","uniform mat4 u_transform;","uniform float u_tilesPerTexture;","varying vec3 vTextureCoord;","void main(void) {"," gl_Position = u_transform * vec4(a_vertexPos/u_screenSize, 0, 1);","float corner = mod(a_customAttributes, 4.);","float tileIndex = mod(floor(a_customAttributes / 4.), u_tilesPerTexture);","float tilesPerRow = sqrt(u_tilesPerTexture);","float tileSize = 1./tilesPerRow;","float tileColumn = mod(tileIndex, tilesPerRow);","float tileRow = floor(tileIndex/tilesPerRow);","if(corner == 0.0) {"," vTextureCoord.xy = vec2(0, 1);","} else if(corner == 1.0) {"," vTextureCoord.xy = vec2(1, 1);","} else if(corner == 2.0) {"," vTextureCoord.xy = vec2(0, 0);","} else {"," vTextureCoord.xy = vec2(1, 0);","}","vTextureCoord *= tileSize;","vTextureCoord.x += tileColumn * tileSize;","vTextureCoord.y += tileRow * tileSize;","vTextureCoord.z = floor(floor(a_customAttributes / 4.)/u_tilesPerTexture);","}"].join("\n")}var g=a("./webglAtlas.js"),h=a("./webgl.js");b.exports=d},{"./webgl.js":53,"./webglAtlas.js":54}],57:[function(a,b,c){function d(a){function b(){t=null}function c(a){t=a}function d(a){return"function"==typeof a&&A.push(a),C}function f(a){return"function"==typeof a&&z.push(a),C}function g(a){return"function"==typeof a&&y.push(a),C}function h(a){return"function"==typeof a&&x.push(a),C}function i(a){return"function"==typeof a&&w.push(a),C}function j(a){return"function"==typeof a&&v.push(a),C}function k(a){return"function"==typeof a&&u.push(a),C}function l(a,b,c){if(a&&a.size){var d=a.position,e=a.size;return d.x-ee-f&&d[0]===c?p(A,d):p(z,d),f=e,p(x,d)&&n(a))})}if(a.webglInputEvents)return a.webglInputEvents;var r,s,t=null,u=[],v=[],w=[],x=[],y=[],z=[],A=[],B=a.getGraphicsRoot();q(B);var C={mouseEnter:k,mouseLeave:j,mouseDown:i,mouseUp:h,mouseMove:g,click:f,dblClick:d,mouseCapture:c,releaseMouseCapture:b};return a.webglInputEvents=C,C}var e=a("../Utils/documentEvents.js");b.exports=d},{"../Utils/documentEvents.js":40}],58:[function(a,b,c){function d(a){return{color:e(a)}}var e=a("./parseColor.js");b.exports=d},{"./parseColor.js":51}],59:[function(a,b,c){function d(){var a,b,c,d,f,g,h,i,j,k,l=6,m=2*(2*Float32Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT),n=["precision mediump float;","varying vec4 color;","void main(void) {"," gl_FragColor = color;","}"].join("\n"),o=["attribute vec2 a_vertexPos;","attribute vec4 a_color;","uniform vec2 u_screenSize;","uniform mat4 u_transform;","varying vec4 color;","void main(void) {"," gl_Position = u_transform * vec4(a_vertexPos/u_screenSize, 0.0, 1.0);"," color = a_color.abgr;","}"].join("\n"),p=0,q=new ArrayBuffer(16*m),r=new Float32Array(q),s=new Uint32Array(q),t=function(){if((p+1)*m>q.byteLength){var a=new ArrayBuffer(2*q.byteLength),b=new Float32Array(a),c=new Uint32Array(a);c.set(s),r=b,s=c,q=a}};return{load:function(g){b=g,d=e(g),a=d.createProgram(o,n),b.useProgram(a),f=d.getLocations(a,["a_vertexPos","a_color","u_screenSize","u_transform"]),b.enableVertexAttribArray(f.vertexPos),b.enableVertexAttribArray(f.color),c=b.createBuffer()},position:function(a,b,c){var d=a.id,e=d*l;r[e]=b.x,r[e+1]=b.y,s[e+2]=a.color,r[e+3]=c.x,r[e+4]=c.y,s[e+5]=a.color},createLink:function(a){t(),p+=1,g=a.id},removeLink:function(a){p>0&&(p-=1),a.id0&&d.copyArrayPart(s,a.id*l,p*l,l)},updateTransform:function(a){k=!0,j=a},updateSize:function(a,b){h=a,i=b,k=!0},render:function(){b.useProgram(a),b.bindBuffer(b.ARRAY_BUFFER,c),b.bufferData(b.ARRAY_BUFFER,q,b.DYNAMIC_DRAW),k&&(k=!1,b.uniformMatrix4fv(f.transform,!1,j),b.uniform2f(f.screenSize,h,i)),b.vertexAttribPointer(f.vertexPos,2,b.FLOAT,!1,3*Float32Array.BYTES_PER_ELEMENT,0),b.vertexAttribPointer(f.color,4,b.UNSIGNED_BYTE,!0,3*Float32Array.BYTES_PER_ELEMENT,8),b.drawArrays(b.LINES,0,2*p),g=p-1},bringToFront:function(a){g>a.id&&d.swapArrayPart(r,a.id*l,g*l,l),g>0&&(g-=1)},getFrontLinkId:function(){return g}}}var e=a("./webgl.js");b.exports=d},{"./webgl.js":53}],60:[function(a,b,c){function d(){function a(){if((A+1)*u>=x.byteLength){var a=new ArrayBuffer(2*x.byteLength),b=new Float32Array(a),c=new Uint32Array(a);c.set(z),y=b,z=c,x=a}}function b(a){l=a,o=e(a),k=o.createProgram(w,v),l.useProgram(k),n=o.getLocations(k,["a_vertexPos","a_color","u_screenSize","u_transform"]),l.enableVertexAttribArray(n.vertexPos),l.enableVertexAttribArray(n.color),m=l.createBuffer()}function c(a,b){var c=a.id;y[c*t]=b.x,y[c*t+1]=b.y,y[c*t+2]=a.size,z[c*t+3]=a.color}function d(a){s=!0,r=a}function f(a,b){p=a,q=b,s=!0}function g(a){A>0&&(A-=1),a.id0&&o.copyArrayPart(z,a.id*t,A*t,t)}function h(){a(),A+=1}function i(){}function j(){l.useProgram(k),l.bindBuffer(l.ARRAY_BUFFER,m),l.bufferData(l.ARRAY_BUFFER,x,l.DYNAMIC_DRAW),s&&(s=!1,l.uniformMatrix4fv(n.transform,!1,r),l.uniform2f(n.screenSize,p,q)),l.vertexAttribPointer(n.vertexPos,3,l.FLOAT,!1,t*Float32Array.BYTES_PER_ELEMENT,0),l.vertexAttribPointer(n.color,4,l.UNSIGNED_BYTE,!0,t*Float32Array.BYTES_PER_ELEMENT,12),l.drawArrays(l.POINTS,0,A)}var k,l,m,n,o,p,q,r,s,t=4,u=3*Float32Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT,v=["precision mediump float;","varying vec4 color;","void main(void) {"," gl_FragColor = color;","}"].join("\n"),w=["attribute vec3 a_vertexPos;","attribute vec4 a_color;","uniform vec2 u_screenSize;","uniform mat4 u_transform;","varying vec4 color;","void main(void) {"," gl_Position = u_transform * vec4(a_vertexPos.xy/u_screenSize, 0, 1);"," gl_PointSize = a_vertexPos.z * u_transform[0][0];"," color = a_color.abgr;","}"].join("\n"),x=new ArrayBuffer(16*u),y=new Float32Array(x),z=new Uint32Array(x),A=0;return{load:b,position:c,updateTransform:d,updateSize:f,removeNode:g,createNode:h,replaceProperties:i,render:j}}var e=a("./webgl.js");b.exports=d},{"./webgl.js":53}],61:[function(a,b,c){function d(a,b){return{size:"number"==typeof a?a:10,color:e(b)}}var e=a("./parseColor.js");b.exports=d},{"./parseColor.js":51}],62:[function(a,b,c){b.exports="0.7.12"},{}]},{},[1])(1)}),function(){function a(b,c,d){function e(a){var e=b(a),f=d>e,g=d3.extent(b.range()),h=g[0],i=g[1],j=f?d-h:i-d;return 0==j&&(j=i-h),(f?-1:1)*j*(c+1)/(c+j/Math.abs(e-d))+d}return e.distortion=function(a){return arguments.length?(c=+a,e):c},e.focus=function(a){return arguments.length?(d=+a,e):d},e.copy=function(){return a(b.copy(),c,d)},e.nice=b.nice,e.ticks=b.ticks,e.tickFormat=b.tickFormat,d3.rebind(e,b,"domain","range")}d3.fisheye={scale:function(b){return a(b(),3,0)},circular:function(){function a(a){var b=a.x-g[0],f=a.y-g[1],h=Math.sqrt(b*b+f*f);if(!h||h>=e)return{x:a.x,y:a.y,z:1};var i=c*(1-Math.exp(-h*d))/h*.75+.25;return{x:g[0]+b*i,y:g[1]+f*i,z:Math.min(i,10)}}function b(){return c=Math.exp(f),c=c/(c-1)*e,d=f/e,a}var c,d,e=200,f=2,g=[0,0];return a.radius=function(a){return arguments.length?(e=+a,b()):e},a.distortion=function(a){return arguments.length?(f=+a,b()):f},a.focus=function(b){return arguments.length?(g=b,a):g},b()}}}(),function(a){"use strict";function b(a){}function c(a){a.stopPropagation()}a.fn.pagination=function(d){function e(b,d){var e=d>=1&&d<=g.lastPage,f=a("").append(b),h=a("
  • ").append(f);return e?(f.click(function(){g.click(d)}),a(".arango-pagination").next().children().first().removeClass("disabledPag"),a(".arango-pagination").prev().children().first().removeClass("disabledPag")):(h.addClass("disabledPag"),setTimeout(function(){a(h).find("i").hasClass("fa-angle-right")?a(".arango-pagination").next().children().first().addClass("disabledPag"):a(h).find("i").hasClass("fa-angle-left")&&a(".arango-pagination").prev().children().first().addClass("disabledPag")},50)),f.click(c),d===g.page&&h.addClass("active active-arango-pagination-button"),h}function f(){var b,c=a('
      ');for(c.append(e(g.prev,g.page-1)),b=i;j>=b;b+=1)c.append(e(b,b));return c.append(e(g.next,g.page+1))}var g=a.extend({prev:'',next:'',left:3,right:3,page:1,lastPage:1,click:b},d||{}),h=g.left+g.right,i=Math.max(1,g.page-g.left),j=i+h;return g.lastPage",n="
      ",o=":empty",G="\n",m=">>> ",l="... ",k=2,c=""+i+"ansi-",q="",r=/\[(\d*)(?:;(\d*))*m/,b=function(){function a(){this.stylize=L(this.stylize,this),this._closeSpan=L(this._closeSpan,this),this._openSpan=L(this._openSpan,this),this.getClasses=L(this.getClasses,this),this._style=L(this._style,this),this._color=L(this._color,this),this._remove=L(this._remove,this),this._append=L(this._append,this),this.klasses=[]}return a.prototype.COLORS=["black","red","green","yellow","blue","magenta","cyan","white"],a.prototype._append=function(a){return a=""+c+a,-1===this.klasses.indexOf(a)?this.klasses.push(a):void 0},a.prototype._remove=function(){var a,b,d,e,f,g;for(d=1<=arguments.length?M.call(arguments,0):[],g=[],e=0,f=d.length;f>e;e++)b=d[e],"fonts"===b||"color"===b||"background-color"===b?g.push(this.klasses=function(){var d,e,f,g;for(f=this.klasses,g=[],d=0,e=f.length;e>d;d++)a=f[d],a.indexOf(b)!==c.length&&g.push(a);return g}.call(this)):(b=""+c+b,g.push(this.klasses=function(){var c,d,e,f;for(e=this.klasses,f=[],c=0,d=e.length;d>c;c++)a=e[c],a!==b&&f.push(a);return f}.call(this)));return g},a.prototype._color=function(a){return this.COLORS[a]},a.prototype._style=function(a){if(""===a&&(a=0),a=parseInt(a),!isNaN(a))switch(a){case 0:return this.klasses=[];case 1:return this._append("bold");case 2:return this._append("lighter");case 3:return this._append("italic");case 4:return this._append("underline");case 5:return this._append("blink");case 6:return this._append("blink-rapid");case 8:return this._append("hidden");case 9:return this._append("line-through");case 10:return this._remove("fonts");case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:return this._remove("fonts"),this._append("fonts-"+(a-10));case 20:return this._append("fraktur");case 21:return this._remove("bold","lighter");case 22:return this._remove("bold","lighter");case 23:return this._remove("italic","fraktur");case 24:return this._remove("underline");case 25:return this._remove("blink","blink-rapid");case 28:return this._remove("hidden");case 29:return this._remove("line-through");case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:return this._remove("color"),this._append("color-"+this._color(a-30));case 39:return this._remove("color");case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:return this._remove("background-color"),this._append("background-color-"+this._color(a-40));case 49:return this._remove("background-color");case 51:return this._append("framed");case 53:return this._append("overline");case 54:return this._remove("framed");case 55:return this._remove("overline")}},a.prototype.getClasses=function(){return this.klasses.join(" ")},a.prototype._openSpan=function(a){return''+a},a.prototype._closeSpan=function(a){return""+a+""},a.prototype.stylize=function(a){var b,c,d,e,f,g;for(a=this._openSpan(a),d=0;(d=a.indexOf(q,d))&&-1!==d;)if(c=a.slice(d).match(r)){for(g=c.slice(1),e=0,f=g.length;f>e;e++)b=g[e],this._style(b);a=this._closeSpan(a.slice(0,d))+this._openSpan(a.slice(d+1+c[0].length))}else d++;return this._closeSpan(a)},a}(),K=function(a,b){return''+(b||"")+""},t=function(){function c(c,d,e,g){this._HideComposition=L(this._HideComposition,this),this._ShowComposition=L(this._ShowComposition,this),this._UpdateComposition=L(this._UpdateComposition,this),this._EndComposition=L(this._EndComposition,this),this._StartComposition=L(this._StartComposition,this),this._CheckComposition=L(this._CheckComposition,this),this._ProcessMatch=L(this._ProcessMatch,this),this._HandleKey=L(this._HandleKey,this),this._HandleChar=L(this._HandleChar,this),this.isMobile=!!navigator.userAgent.match(/iPhone|iPad|iPod|Android/i),this.isIos=!!navigator.userAgent.match(/iPhone|iPad|iPod/i),this.isAndroid=!!navigator.userAgent.match(/Android/i),this.$window=a(window),this.header=d||"",this.prompt_label_main="string"==typeof e?e:m,this.prompt_label_continue=g||l,this.indent_width=k,this.state=I,this.input_queue=[],this.input_callback=null,this.multiline_callback=null,this.history=[],this.history_index=0,this.history_new="",this.history_active=!1,this.shortcuts={},this.$container=a("
      ").appendTo(c),this.$container.css({top:0,left:0,right:0, +bottom:0,position:"absolute",overflow:"auto"}),this.$console=a('
      ').appendTo(this.$container),this.$console.css({margin:0,position:"relative","min-height":"100%","box-sizing":"border-box","-moz-box-sizing":"border-box","-webkit-box-sizing":"border-box"}),this.$console_focused=!0,this.$input_container=a(n).appendTo(this.$container),this.$input_container.css({position:"absolute",width:1,height:0,overflow:"hidden"}),this.$input_source=a(this.isAndroid?"":"\n    "}function g(a,b){var d,e="";return e+="\n        ",(d=c.defaultValue)?d=d.call(a,{hash:{},data:b}):(d=a.defaultValue,d=typeof d===j?d.apply(a):d),e+=k(d)+"\n    "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var h,i="",j="function",k=this.escapeExpression,l=this;return i+="",(h=c.name)?h=h.call(b,{hash:{},data:e}):(h=b.name,h=typeof h===j?h.apply(b):h),i+=k(h)+"\n\n    ",h=c["if"].call(b,b.isBody,{hash:{},inverse:l.program(3,g,e),fn:l.program(1,f,e),data:e}),(h||0===h)&&(i+=h),i+="\n\n",(h=c.description)?h=h.call(b,{hash:{},data:e}):(h=b.description,h=typeof h===j?h.apply(b):h),(h||0===h)&&(i+=h),i+='\n\n'})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.param_required=a(function(a,b,c,d,e){function f(a,b){var d,e="";return e+="\n		",d=c["if"].call(a,a.isFile,{hash:{},inverse:t.program(4,h,b),fn:t.program(2,g,b),data:b}),(d||0===d)&&(e+=d),e+="\n	"}function g(a,b){var d,e="";return e+='\n			\n		"}function h(a,b){var d,e="";return e+="\n			",d=c["if"].call(a,a.defaultValue,{hash:{},inverse:t.program(7,j,b),fn:t.program(5,i,b),data:b}),(d||0===d)&&(e+=d),e+="\n		"}function i(a,b){var d,e="";return e+="\n				\n			"}function j(a,b){var d,e="";return e+="\n				\n				
      \n
      \n '}function k(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.isFile,{hash:{},inverse:t.program(12,m,b),fn:t.program(10,l,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function l(a,b){var d,e="";return e+="\n \n "}function m(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.defaultValue,{hash:{},inverse:t.program(15,o,b),fn:t.program(13,n,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function n(a,b){var d,e="";return e+="\n \n "}function o(a,b){var d,e="";return e+="\n \n "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var p,q="",r="function",s=this.escapeExpression,t=this;return q+="",(p=c.name)?p=p.call(b,{hash:{},data:e}):(p=b.name,p=typeof p===r?p.apply(b):p),q+=s(p)+"\n\n ",p=c["if"].call(b,b.isBody,{hash:{},inverse:t.program(9,k,e),fn:t.program(1,f,e),data:e}),(p||0===p)&&(q+=p),q+="\n\n\n ",(p=c.description)?p=p.call(b,{hash:{},data:e}):(p=b.description,p=typeof p===r?p.apply(b):p),(p||0===p)&&(q+=p),q+='\n\n\n'})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.main=a(function(a,b,c,d,e){return this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{},"\n
      \n
        \n
      \n
      \n"})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.signature=a(function(a,b,c,d,e){this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var f,g="",h="function",i=this.escapeExpression;return g+='
      \n\n
      \n\n
      \n
      \n ',(f=c.signature)?f=f.call(b,{hash:{},data:e}):(f=b.signature,f=typeof f===h?f.apply(b):f),(f||0===f)&&(g+=f),g+='\n
      \n\n
      \n
      ',(f=c.sampleJSON)?f=f.call(b,{hash:{},data:e}):(f=b.sampleJSON,f=typeof f===h?f.apply(b):f),g+=i(f)+'
      \n \n
      \n
      \n\n'})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.status_code=a(function(a,b,c,d,e){this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var f,g="",h="function",i=this.escapeExpression;return g+="",(f=c.code)?f=f.call(b,{hash:{},data:e}):(f=b.code,f=typeof f===h?f.apply(b):f),g+=i(f)+"\n",(f=c.reason)?f=f.call(b,{hash:{},data:e}):(f=b.reason,f=typeof f===h?f.apply(b):f),(f||0===f)&&(g+=f),g+="\n\n"})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.param_readonly=a(function(a,b,c,d,e){function f(a,b){var d,e="";return e+="\n \n "}function g(a,b){var d,e="";return e+="\n ",(d=c.defaultValue)?d=d.call(a,{hash:{},data:b}):(d=a.defaultValue,d=typeof d===j?d.apply(a):d),e+=k(d)+"\n "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var h,i="",j="function",k=this.escapeExpression,l=this;return i+="",(h=c.name)?h=h.call(b,{hash:{},data:e}):(h=b.name,h=typeof h===j?h.apply(b):h),i+=k(h)+"\n\n ",h=c["if"].call(b,b.isBody,{hash:{},inverse:l.program(3,g,e),fn:l.program(1,f,e),data:e}),(h||0===h)&&(i+=h),i+="\n\n",(h=c.description)?h=h.call(b,{hash:{},data:e}):(h=b.description,h=typeof h===j?h.apply(b):h),(h||0===h)&&(i+=h),i+='\n\n'})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.content_type=a(function(a,b,c,d,e){function f(a,b){var d,e="";return e+="\n ",d=c.each.call(a,a.produces,{hash:{},inverse:l.noop,fn:l.program(2,g,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function g(a,b){var c,d="";return d+='\n \n "}function h(a,b){return'\n \n'}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var i,j="",k="function",l=this;return j+='\n\n"})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.resource=a(function(a,b,c,d,e){this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var f,g="",h="function",i=this.escapeExpression;return g+="\n\n"})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.operation=a(function(a,b,c,d,e){function f(a,b){var d,e="";return e+="\n

      Implementation Notes hide

      \n
      \n

      ",(d=c.notes)?d=d.call(a,{hash:{},data:b}):(d=a.notes,d=typeof d===o?d.apply(a):d),(d||0===d)&&(e+=d),e+="

      \n
      \n "}function g(a,b){var d,e="";return e+="\n

      Examples show

      \n \n "}function h(a,b){return'\n

      Response Class

      \n

      \n
      \n
      \n '}function i(a,b){return'\n

      Parameters

      \n \n \n \n \n \n \n \n \n \n \n\n \n
      ParameterValueDescriptionData Type
      \n '}function j(a,b){return"\n
      \n

      Status Codes

      \n \n \n \n \n \n \n \n \n \n
      HTTP Status CodeReason
      \n "}function k(a,b){return"\n "}function l(a,b){return"\n
      \n \n \n \n
      \n "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var m,n="",o="function",p=this.escapeExpression,q=this;return n+="\n \n"})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.param_list=a(function(a,b,c,d,e){function f(a,b){return"\n "}function g(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.defaultValue,{hash:{},inverse:p.program(6,i,b),fn:p.program(4,h,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function h(a,b){return"\n "}function i(a,b){return"\n \n "}function j(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.isDefault,{hash:{},inverse:p.program(11,l,b),fn:p.program(9,k,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function k(a,b){var d,e="";return e+="\n \n "}function l(a,b){var d,e="";return e+="\n \n "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var m,n,o="",p=this,q="function",r=this.escapeExpression;return o+="",(m=c.name)?m=m.call(b,{hash:{},data:e}):(m=b.name,m=typeof m===q?m.apply(b):m),o+=r(m)+"\n\n \n\n",(n=c.description)?n=n.call(b,{hash:{},data:e}):(n=b.description,n=typeof n===q?n.apply(b):n),(n||0===n)&&(o+=n),o+='\n\n'})}(),function(){var a=Handlebars.template,b=Handlebars.templates=Handlebars.templates||{};b.param=a(function(a,b,c,d,e){function f(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.isFile,{hash:{},inverse:r.program(4,h,b),fn:r.program(2,g,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function g(a,b){var d,e="";return e+='\n \n "}function h(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.defaultValue,{hash:{},inverse:r.program(7,j,b),fn:r.program(5,i,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function i(a,b){var d,e="";return e+="\n \n "}function j(a,b){var d,e="";return e+="\n \n
      \n
      \n '}function k(a,b){var d,e="";return e+="\n ",d=c["if"].call(a,a.defaultValue,{hash:{},inverse:r.program(12,m,b),fn:r.program(10,l,b),data:b}),(d||0===d)&&(e+=d),e+="\n "}function l(a,b){var d,e="";return e+="\n \n "}function m(a,b){var d,e="";return e+="\n \n "}this.compilerInfo=[2,">= 1.0.0-rc.3"],c=c||a.helpers,e=e||{};var n,o="",p="function",q=this.escapeExpression,r=this;return o+="",(n=c.name)?n=n.call(b,{hash:{},data:e}):(n=b.name,n=typeof n===p?n.apply(b):n),o+=q(n)+"\n\n\n ",n=c["if"].call(b,b.isBody,{hash:{},inverse:r.program(9,k,e),fn:r.program(1,f,e),data:e}),(n||0===n)&&(o+=n),o+="\n\n\n",(n=c.description)?n=n.call(b,{hash:{},data:e}):(n=b.description,n=typeof n===p?n.apply(b):n),(n||0===n)&&(o+=n),o+='\n\n \n\n\n'})}(),function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s={}.hasOwnProperty,t=function(a,b){function c(){this.constructor=a}for(var d in b)s.call(b,d)&&(a[d]=b[d]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a};i=function(a){function d(){return j=d.__super__.constructor.apply(this,arguments)}return t(d,a),d.prototype.dom_id="swagger_ui",d.prototype.options=null,d.prototype.api=null,d.prototype.headerView=null,d.prototype.mainView=null,d.prototype.initialize=function(a){var c=this;return null==a&&(a={}),null!=a.dom_id&&(this.dom_id=a.dom_id,delete a.dom_id),null==$("#"+this.dom_id)&&$("body").append('
      '),this.options=a,this.options.success=function(){return c.render()},this.options.progress=function(a){return c.showMessage(a)},this.options.failure=function(a){return c.onLoadFailure(a)},this.headerView=new b({el:$("#header")}),this.headerView.on("update-swagger-ui",function(a){return c.updateSwaggerUi(a)})},d.prototype.updateSwaggerUi=function(a){return this.options.discoveryUrl=a.discoveryUrl,this.options.apiKey=a.apiKey,this.load()},d.prototype.load=function(){var a;return null!=(a=this.mainView)&&a.clear(),this.headerView.update(this.options.discoveryUrl,this.options.apiKey),this.api=new SwaggerApi(this.options)},d.prototype.render=function(){switch(this.showMessage("Finished Loading Resource Information. Rendering Swagger UI..."),this.mainView=new c({model:this.api,el:$("#"+this.dom_id)}).render(),this.showMessage(),this.options.docExpansion){case"full":Docs.expandOperationsForResource("");break;case"list":Docs.collapseOperationsForResource("")}return this.options.onComplete&&this.options.onComplete(this.api,this),setTimeout(function(){return Docs.shebang()},400)},d.prototype.showMessage=function(a){return null==a&&(a=""),$("#message-bar").removeClass("message-fail"),$("#message-bar").addClass("message-success"),$("#message-bar").html(a)},d.prototype.onLoadFailure=function(a){var b;return null==a&&(a=""),$("#message-bar").removeClass("message-success"),$("#message-bar").addClass("message-fail"),b=$("#message-bar").html(a),null!=this.options.onFailure&&this.options.onFailure(a),b},d}(Backbone.Router),window.SwaggerUi=i,b=function(a){function b(){return k=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.events={"click #show-pet-store-icon":"showPetStore","click #show-wordnik-dev-icon":"showWordnikDev","click #explore":"showCustom","keyup #input_baseUrl":"showCustomOnKeyup","keyup #input_apiKey":"showCustomOnKeyup"},b.prototype.initialize=function(){},b.prototype.showPetStore=function(a){return this.trigger("update-swagger-ui",{discoveryUrl:"http://petstore.swagger.wordnik.com/api/api-docs.json",apiKey:"special-key"})},b.prototype.showWordnikDev=function(a){return this.trigger("update-swagger-ui",{discoveryUrl:"http://api.wordnik.com/v4/resources.json",apiKey:""})},b.prototype.showCustomOnKeyup=function(a){return 13===a.keyCode?this.showCustom():void 0},b.prototype.showCustom=function(a){return null!=a&&a.preventDefault(),this.trigger("update-swagger-ui",{discoveryUrl:$("#input_baseUrl").val(),apiKey:$("#input_apiKey").val()})},b.prototype.update=function(a,b,c){return null==c&&(c=!1),$("#input_baseUrl").val(a),$("#input_apiKey").val(b),c?this.trigger("update-swagger-ui",{discoveryUrl:a,apiKey:b}):void 0},b}(Backbone.View),c=function(a){function b(){return l=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.initialize=function(){},b.prototype.render=function(){var a,b,c,d;for($(this.el).html(Handlebars.templates.main(this.model)),d=this.model.apisArray,b=0,c=d.length;c>b;b++)a=d[b],this.addResource(a);return this},b.prototype.addResource=function(a){var b;return b=new f({model:a,tagName:"li",id:"resource_"+a.name,className:"resource"}),$("#resources").append(b.render().el)},b.prototype.clear=function(){return $(this.el).html("")},b}(Backbone.View),f=function(a){function b(){return m=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.initialize=function(){},b.prototype.render=function(){var a,b,c,d;for($(this.el).html(Handlebars.templates.resource(this.model)),this.number=0,d=this.model.operationsArray,b=0,c=d.length;c>b;b++)a=d[b],this.addOperation(a);return this},b.prototype.addOperation=function(a){var b;return a.number=this.number,b=new d({model:a,tagName:"li",className:"endpoint"}),$(".endpoints",$(this.el)).append(b.render().el),this.number++},b}(Backbone.View),d=function(b){function c(){return n=c.__super__.constructor.apply(this,arguments)}return t(c,b),c.prototype.events={"submit .sandbox":"submitOperation","click .submit":"submitOperation","click .response_hider":"hideResponse","click .hider":"toggleText","click .toggleOperation":"toggleOperationContent"},c.prototype.initialize=function(){},c.prototype.render=function(){var b,c,d,e,f,h,i,j,k,l,m,n,o;for(d=jQuery.inArray(this.model.httpMethod,this.model.supportedSubmitMethods())>=0,d||(this.model.isReadOnly=!0),$(this.el).html(Handlebars.templates.operation(this.model)),this.model.responseClassSignature&&"string"!==this.model.responseClassSignature?(h={sampleJSON:this.model.responseSampleJSON,isParam:!1,signature:this.model.responseClassSignature},f=new g({model:h,tagName:"div"}),$(".model-signature",$(this.el)).append(f.render().el)):$(".model-signature",$(this.el)).html(this.model.responseClass),b={isParam:!1},this.model.supportedContentTypes&&(b.produces=this.model.supportedContentTypes),this.model.produces&&(b.produces=this.model.produces),c=new a({model:b}),$(".content-type",$(this.el)).append(c.render().el),n=this.model.parameters,j=0,l=n.length;l>j;j++)e=n[j],this.addParameter(e);for(o=this.model.errorResponses,k=0,m=o.length;m>k;k++)i=o[k], +this.addStatusCode(i);return this},c.prototype.addParameter=function(a){var b;return b=new e({model:a,tagName:"tr",readOnly:this.model.isReadOnly}),$(".operation-params",$(this.el)).append(b.render().el)},c.prototype.addStatusCode=function(a){var b;return b=new h({model:a,tagName:"tr"}),$(".operation-status",$(this.el)).append(b.render().el)},c.prototype.submitOperation=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E=this;if(null!=a&&a.preventDefault(),e=$(".sandbox",$(this.el)),d=!0,e.find("input.required").each(function(){var a=this;return $(this).removeClass("error"),""===jQuery.trim($(this).val())?($(this).addClass("error"),$(this).wiggle({callback:function(){return $(a).focus()}}),d=!1):void 0}),d){for(j={},z=e.serializeArray(),p=0,t=z.length;t>p;p++)k=z[p],null!=k.value&&jQuery.trim(k.value).length>0&&(j[k.name]=k.value);if(h=0!==e.children().find('input[type~="file"]').size(),i=!1,c="application/json",this.model.consumes&&this.model.consumes.length>0)c=this.model.consumes[0];else{for(A=this.model.parameters,q=0,u=A.length;u>q;q++)k=A[q],"form"===k.paramType&&(i=!0,c=!1);h?c=!1:"post"===this.model.httpMethod.toLowerCase()&&i===!1&&(c="application/json")}if(h){for(b=new FormData,B=this.model.parameters,r=0,v=B.length;v>r;r++)m=B[r],"body"===m.paramType&&"file"!==m.name&&b.append(m.name,j[m.name]);$.each(e.children().find('input[type~="file"]'),function(a,c){return b.append($(c).attr("name"),c.files[0])}),console.log(b)}else if(i)for(b=new FormData,C=this.model.parameters,s=0,w=C.length;w>s;s++)m=C[s],b.append(m.name,j[m.name]);else for(b=null,D=this.model.parameters,y=0,x=D.length;x>y;y++)m=D[y],"body"===m.paramType&&(b=j[m.name]);return log("bodyParam = "+b),f=null,g=this.model.supportHeaderParams()?(f=this.model.getHeaderParams(j),this.model.urlify(j,!1)):this.model.urlify(j,!0),log("submitting "+g),$(".request_url",$(this.el)).html("
      "+g+"
      "),$(".response_throbber",$(this.el)).show(),l={type:this.model.httpMethod,url:g,headers:f,data:b,contentType:c,dataType:"json",processData:!1,error:function(a,b,c){return E.showErrorStatus(a,b,c)},success:function(a){return E.showResponse(a)},complete:function(a){return E.showCompleteStatus(a)}},n=$("td select[name=contentType]",$(this.el)).val(),n&&(l.contentType=n),o=$(".content > .content-type > div > select[name=contentType]",$(this.el)).val(),o&&(l.headers=null!=l.headers?l.headers:{},l.headers.accept=o),jQuery.ajax(l),!1}},c.prototype.hideResponse=function(a){return null!=a&&a.preventDefault(),$(".response",$(this.el)).slideUp(),$(".response_hider",$(this.el)).fadeOut()},c.prototype.toggleText=function(a){var b;return null!=a&&a.preventDefault(),b=this.$(a.target),"show"===b.html()?b.html("hide"):b.html("show"),b.parent().next("div").slideToggle()},c.prototype.showResponse=function(a){var b;return b=JSON.stringify(a,null," ").replace(/\n/g,"
      "),$(".response_body",$(this.el)).html(escape(b))},c.prototype.showErrorStatus=function(a){return this.showStatus(a)},c.prototype.showCompleteStatus=function(a){return this.showStatus(a)},c.prototype.formatXml=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;for(i=/(>)(<)(\/*)/g,k=/[ ]*(.*)[ ]+\n/g,b=/(<.+>)(.+\n)/g,a=a.replace(i,"$1\n$2$3").replace(k,"$1\n").replace(b,"$1\n$2"),h=0,c="",f=a.split("\n"),d=0,e="other",j={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0},l=function(a){var b,f,g,h,i,k,l;return k={single:Boolean(a.match(/<.+\/>/)),closing:Boolean(a.match(/<\/.+>/)),opening:Boolean(a.match(/<[^!?].*>/))},i=function(){var a;a=[];for(g in k)l=k[g],l&&a.push(g);return a}()[0],i=void 0===i?"other":i,b=e+"->"+i,e=i,h="",d+=j[b],h=function(){var a,b,c;for(c=[],f=a=0,b=d;b>=0?b>a:a>b;f=b>=0?++a:--a)c.push(" ");return c}().join(""),"opening->closing"===b?c=c.substr(0,c.length-1)+a+"\n":c+=h+a+"\n"},m=0,n=f.length;n>m;m++)g=f[m],l(g);return c},c.prototype.showStatus=function(a){var b,c,d,e;try{b=$("").text(JSON.stringify(JSON.parse(a.responseText),null,2)),d=$('
      ').append(b)}catch(f){c=f,b=$("").text(this.formatXml(a.responseText)),d=$('
      ').append(b)}return e=d,$(".response_code",$(this.el)).html("
      "+a.status+"
      "),$(".response_body",$(this.el)).html(e),$(".response_headers",$(this.el)).html("
      "+a.getAllResponseHeaders()+"
      "),$(".response",$(this.el)).slideDown(),$(".response_hider",$(this.el)).show(),$(".response_throbber",$(this.el)).hide(),hljs.highlightBlock($(".response_body",$(this.el))[0])},c.prototype.toggleOperationContent=function(){var a;return a=$("#"+Docs.escapeResourceName(this.model.resourceName)+"_"+this.model.nickname+"_"+this.model.httpMethod+"_"+this.model.number+"_content"),a.is(":visible")?Docs.collapseOperation(a):Docs.expandOperation(a)},c}(Backbone.View),h=function(a){function b(){return o=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.initialize=function(){},b.prototype.render=function(){var a;return a=this.template(),$(this.el).html(a(this.model)),this},b.prototype.template=function(){return Handlebars.templates.status_code},b}(Backbone.View),e=function(b){function c(){return p=c.__super__.constructor.apply(this,arguments)}return t(c,b),c.prototype.initialize=function(){},c.prototype.render=function(){var b,c,d,e,f;return"body"===this.model.paramType&&(this.model.isBody=!0),"file"===this.model.dataType&&(this.model.isFile=!0),f=this.template(),$(this.el).html(f(this.model)),d={sampleJSON:this.model.sampleJSON,isParam:!0,signature:this.model.signature},this.model.sampleJSON?(e=new g({model:d,tagName:"div"}),$(".model-signature",$(this.el)).append(e.render().el)):$(".model-signature",$(this.el)).html(this.model.signature),b={isParam:!1},this.model.supportedContentTypes&&(b.produces=this.model.supportedContentTypes),this.model.produces&&(b.produces=this.model.produces),c=new a({model:b}),$(".content-type",$(this.el)).append(c.render().el),this},c.prototype.template=function(){return this.model.isList?Handlebars.templates.param_list:this.options.readOnly?this.model.required?Handlebars.templates.param_readonly_required:Handlebars.templates.param_readonly:this.model.required?Handlebars.templates.param_required:Handlebars.templates.param},c}(Backbone.View),g=function(a){function b(){return q=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.events={"click a.description-link":"switchToDescription","click a.snippet-link":"switchToSnippet","mousedown .snippet":"snippetToTextArea"},b.prototype.initialize=function(){},b.prototype.render=function(){var a;return a=this.template(),$(this.el).html(a(this.model)),this.switchToDescription(),this.isParam=this.model.isParam,this.isParam&&$(".notice",$(this.el)).text("Click to set as parameter value"),this},b.prototype.template=function(){return Handlebars.templates.signature},b.prototype.switchToDescription=function(a){return null!=a&&a.preventDefault(),$(".snippet",$(this.el)).hide(),$(".description",$(this.el)).show(),$(".description-link",$(this.el)).addClass("selected"),$(".snippet-link",$(this.el)).removeClass("selected")},b.prototype.switchToSnippet=function(a){return null!=a&&a.preventDefault(),$(".description",$(this.el)).hide(),$(".snippet",$(this.el)).show(),$(".snippet-link",$(this.el)).addClass("selected"),$(".description-link",$(this.el)).removeClass("selected")},b.prototype.snippetToTextArea=function(a){var b;return this.isParam&&(null!=a&&a.preventDefault(),b=$("textarea",$(this.el.parentNode.parentNode.parentNode)),""===$.trim(b.val()))?b.val(this.model.sampleJSON):void 0},b}(Backbone.View),a=function(a){function b(){return r=b.__super__.constructor.apply(this,arguments)}return t(b,a),b.prototype.initialize=function(){},b.prototype.render=function(){var a;return a=this.template(),$(this.el).html(a(this.model)),this.isParam=this.model.isParam,this.isParam?$("label[for=contentType]",$(this.el)).text("Parameter content type:"):$("label[for=contentType]",$(this.el)).text("Response Content Type"),this},b.prototype.template=function(){return Handlebars.templates.content_type},b}(Backbone.View)}.call(this);var hljs=new function(){function a(a){return a.replace(/&/gm,"&").replace(//gm,">")}function b(a){for(var b=a.firstChild;b;b=b.nextSibling){if("CODE"==b.nodeName)return b;if(3!=b.nodeType||!b.nodeValue.match(/\s+/))break}}function c(a,b){return Array.prototype.map.call(a.childNodes,function(a){return 3==a.nodeType?b?a.nodeValue.replace(/\n/g,""):a.nodeValue:"BR"==a.nodeName?"\n":c(a,b)}).join("")}function d(a){var b=(a.className+" "+a.parentNode.className).split(/\s+/);b=b.map(function(a){return a.replace(/^language-/,"")});for(var c=0;c"}for(var g=0,h="",i=[];b.length||c.length;){var j=e().splice(0,1)[0];if(h+=a(d.substr(g,j.offset-g)),g=j.offset,"start"==j.event)h+=f(j.node),i.push(j.node);else if("stop"==j.event){var k,l=i.length;do l--,k=i[l],h+="";while(k!=j.node);for(i.splice(l,1);l'+e[0]+""):c+=e[0],d=r.lR.lastIndex,e=r.lR.exec(b)}return c+b.substr(d)}function l(){if(r.sL&&!n[r.sL])return a(s);var b=r.sL?h(r.sL,s):i(s);return r.r>0&&(u+=b.keyword_count,t+=b.r),''+b.value+""}function m(){return void 0!==r.sL?l():k()}function o(b,c){var d=b.cN?'':"";b.rB?(v+=d,s=""):b.eB?(v+=a(c)+d,s=""):(v+=d,s=c),r=Object.create(b,{parent:{value:r}}),t+=b.r}function p(b,c){if(s+=b,void 0===c)return v+=m(),0;var g=d(c,r);if(g)return v+=m(),o(g,c),g.rB?0:c.length;var h=e(r,c);if(h){h.rE||h.eE||(s+=c),v+=m();do r.cN&&(v+=""),r=r.parent;while(r!=h.parent);return h.eE&&(v+=a(c)),s="",h.starts&&o(h.starts,""),h.rE?0:c.length}if(f(c,r))throw"Illegal";return s+=c,c.length||1}var q=n[b];g(q);var r=q,s="",t=0,u=0,v="";try{for(var w,x,y=0;;){if(r.t.lastIndex=y,w=r.t.exec(c),!w)break;x=p(c.substr(y,w.index-y),w[0]),y=w.index+x}return p(c.substr(y)),{r:t,keyword_count:u,value:v,language:b}}catch(z){if("Illegal"==z)return{r:0,keyword_count:0,value:a(c)};throw z}}function i(b){var c={keyword_count:0,r:0,value:a(b)},d=c;for(var e in n)if(n.hasOwnProperty(e)){var f=h(e,b);f.language=e,f.keyword_count+f.r>d.keyword_count+d.r&&(d=f),f.keyword_count+f.r>c.keyword_count+c.r&&(d=c,c=f)}return d.language&&(c.second_best=d),c}function j(a,b,c){return b&&(a=a.replace(/^((<[^>]+>|\t)+)/gm,function(a,c,d,e){return c.replace(/\t/g,b)})),c&&(a=a.replace(/\n/g,"
      ")),a}function k(a,b,g){var k=c(a,g),l=d(a);if("no-highlight"!=l){var m=l?h(l,k):i(k);l=m.language;var n=e(a);if(n.length){var o=document.createElement("pre");o.innerHTML=m.value,m.value=f(n,e(o),k)}m.value=j(m.value,b,g);var p=a.className;p.match("(\\s|^)(language-)?"+l+"(\\s|$)")||(p=p?p+" "+l:l),a.innerHTML=m.value,a.className=p,a.result={language:l,kw:m.keyword_count,re:m.r},m.second_best&&(a.second_best={language:m.second_best.language,kw:m.second_best.keyword_count,re:m.second_best.r})}}function l(){l.called||(l.called=!0,Array.prototype.map.call(document.getElementsByTagName("pre"),b).filter(Boolean).forEach(function(a){k(a,hljs.tabReplace)}))}function m(){window.addEventListener("DOMContentLoaded",l,!1),window.addEventListener("load",l,!1)}var n={};this.LANGUAGES=n,this.highlight=h,this.highlightAuto=i,this.fixMarkup=j,this.highlightBlock=k,this.initHighlighting=l,this.initHighlightingOnLoad=m,this.IR="[a-zA-Z][a-zA-Z0-9_]*",this.UIR="[a-zA-Z_][a-zA-Z0-9_]*",this.NR="\\b\\d+(\\.\\d+)?",this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",this.BNR="\\b(0b[01]+)",this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|\\.|-|-=|/|/=|:|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",this.BE={b:"\\\\[\\s\\S]",r:0},this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE],r:0},this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE],r:0},this.CLCM={cN:"comment",b:"//",e:"$"},this.CBLCLM={cN:"comment",b:"/\\*",e:"\\*/"},this.HCM={cN:"comment",b:"#",e:"$"},this.NM={cN:"number",b:this.NR,r:0},this.CNM={cN:"number",b:this.CNR,r:0},this.BNM={cN:"number",b:this.BNR,r:0},this.inherit=function(a,b){var c={};for(var d in a)c[d]=a[d];if(b)for(var d in b)c[d]=b[d];return c}};hljs.LANGUAGES.xml=function(a){var b="[A-Za-z0-9\\._:-]+",c={eW:!0,c:[{cN:"attribute",b:b,r:0},{b:'="',rB:!0,e:'"',c:[{cN:"value",b:'"',eW:!0}]},{b:"='",rB:!0,e:"'",c:[{cN:"value",b:"'",eW:!0}]},{b:"=",c:[{cN:"value",b:"[^\\s/>]+"}]}]};return{cI:!0,c:[{cN:"pi",b:"<\\?",e:"\\?>",r:10},{cN:"doctype",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"|$)",e:">",k:{title:"style"},c:[c],starts:{e:"",rE:!0,sL:"css"}},{cN:"tag",b:"|$)",e:">",k:{title:"script"},c:[c],starts:{e:"",rE:!0,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},{cN:"tag",b:"",c:[{cN:"title",b:"[^ />]+"},c]}]}}(hljs),hljs.LANGUAGES.json=function(a){var b={literal:"true false null"},c=[a.QSM,a.CNM],d={cN:"value",e:",",eW:!0,eE:!0,c:c,k:b},e={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:!0,eE:!0,c:[a.BE],i:"\\n",starts:d}],i:"\\S"},f={b:"\\[",e:"\\]",c:[a.inherit(d,{cN:null})],i:"\\S"};return c.splice(c.length,0,e,f),{c:c,k:b,i:"\\S"}}(hljs),!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;"undefined"!=typeof window?b=window:"undefined"!=typeof global?b=global:"undefined"!=typeof self&&(b=self),b.Joi=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;ge;++e){var g=this._inner.matches[e],i=g.schema;if(!i){var j=g.is._validate(g.ref(b.parent,c),null,c,b.parent).errors;if(i=j?g.otherwise:g.then,!i)continue}var k=i._validate(a,b,c);if(!k.errors)return k;d=d.concat(k.errors)}return{errors:d.length?d:h.create("alternatives.base",null,b,c)}},i.Alternatives.prototype["try"]=function(){var a=d.flatten(Array.prototype.slice.call(arguments));d.assert(a.length,"Cannot add other alternatives without at least one schema");for(var b=this.clone(),c=0,e=a.length;e>c;++c){var g=f.schema(a[c]);g._refs.length&&(b._refs=b._refs.concat(g._refs)),b._inner.matches.push({schema:g})}return b},i.Alternatives.prototype.when=function(a,b){d.assert(g.isRef(a)||"string"==typeof a,"Invalid reference:",a),d.assert(b,"Missing options"),d.assert("object"==typeof b,"Invalid options"),d.assert(b.hasOwnProperty("is"),'Missing "is" directive'),d.assert(void 0!==b.then||void 0!==b.otherwise,'options must have at least one of "then" or "otherwise"');var c=this.clone(),e={ref:f.ref(a),is:f.schema(b.is),then:void 0!==b.then?f.schema(b.then):void 0,otherwise:void 0!==b.otherwise?f.schema(b.otherwise):void 0};return g.push(c._refs,e.ref),c._refs=c._refs.concat(e.is._refs),e.then&&e.then._refs&&(c._refs=c._refs.concat(e.then._refs)),e.otherwise&&e.otherwise._refs&&(c._refs=c._refs.concat(e.otherwise._refs)),c._inner.matches.push(e),c},i.Alternatives.prototype.describe=function(){for(var a=[],b=0,c=this._inner.matches.length;c>b;++b){var d=this._inner.matches[b];if(d.schema)a.push(d.schema.describe());else{var e={ref:d.ref.toString(),is:d.is.describe()};d.then&&(e.then=d.then.describe()),d.otherwise&&(e.otherwise=d.otherwise.describe()),a.push(e)}}return a},b.exports=new i.Alternatives},{"./any":2,"./cast":6,"./errors":8,"./ref":14,hoek:16}],2:[function(a,b,c){(function(c){var d=(a("path"),a("hoek")),e=a("./ref"),f=a("./errors"),g=null,h=null,i={};i.defaults={abortEarly:!0,convert:!0,allowUnknown:!1,skipFunctions:!1,stripUnknown:!1,language:{}},b.exports=i.Any=function(){this.isJoi=!0,this._type="any",this._settings=null,this._valids=new i.Set,this._invalids=new i.Set,this._tests=[],this._refs=[],this._flags={},this._description=null,this._unit=null,this._notes=[],this._tags=[],this._examples=[],this._meta=[],this._inner={}},i.Any.prototype.isImmutable=!0,i.Any.prototype.clone=function(){var a={};a.__proto__=Object.getPrototypeOf(this),a.isJoi=!0,a._type=this._type,a._settings=i.concatSettings(this._settings),a._valids=d.clone(this._valids),a._invalids=d.clone(this._invalids),a._tests=this._tests.slice(),a._refs=this._refs.slice(),a._flags=d.clone(this._flags),a._description=this._description,a._unit=this._unit,a._notes=this._notes.slice(),a._tags=this._tags.slice(),a._examples=this._examples.slice(),a._meta=this._meta.slice(),a._inner={};for(var b=Object.keys(this._inner),c=0,e=b.length;e>c;++c){var f=b[c];a._inner[f]=this._inner[f]?this._inner[f].slice():null}return a},i.Any.prototype.concat=function(a){d.assert(a&&a.isJoi,"Invalid schema object"),d.assert("any"===a._type||a._type===this._type,"Cannot merge with another type:",a._type);var b=this.clone();b._settings=b._settings?i.concatSettings(b._settings,a._settings):a._settings,b._valids.merge(a._valids,a._invalids),b._invalids.merge(a._invalids,a._valids),b._tests=b._tests.concat(a._tests),b._refs=b._refs.concat(a._refs),d.merge(b._flags,a._flags),b._description=a._description||b._description,b._unit=a._unit||b._unit,b._notes=b._notes.concat(a._notes),b._tags=b._tags.concat(a._tags),b._examples=b._examples.concat(a._examples),b._meta=b._meta.concat(a._meta);for(var c=Object.keys(a._inner),e=0,f=c.length;f>e;++e){var g=c[e];a._inner[g]&&(b._inner[g]=b._inner[g]?b._inner[g].concat(a._inner[g]):a._inner[g].slice())}return b},i.Any.prototype._test=function(a,b,c){d.assert(!this._flags.allowOnly,"Cannot define rules when valid values specified");var e=this.clone();return e._tests.push({func:c,name:a,arg:b}),e},i.Any.prototype.options=function(a){d.assert(!a.context,"Cannot override context");var b=this.clone();return b._settings=i.concatSettings(b._settings,a),b},i.Any.prototype.strict=function(){var a=this.clone();return a._settings=a._settings||{},a._settings.convert=!1,a},i.Any.prototype._allow=function(){for(var a=d.flatten(Array.prototype.slice.call(arguments)),b=0,c=a.length;c>b;++b){var e=a[b];this._invalids.remove(e),this._valids.add(e,this._refs)}},i.Any.prototype.allow=function(){var a=this.clone();return a._allow.apply(a,arguments),a},i.Any.prototype.valid=i.Any.prototype.equal=function(){d.assert(!this._tests.length,"Cannot set valid values when rules specified");var a=this.allow.apply(this,arguments);return a._flags.allowOnly=!0,a},i.Any.prototype.invalid=i.Any.prototype.not=function(a){for(var b=this.clone(),c=d.flatten(Array.prototype.slice.call(arguments)),e=0,f=c.length;f>e;++e){var a=c[e];b._valids.remove(a),b._invalids.add(a,this._refs)}return b},i.Any.prototype.required=i.Any.prototype.exist=function(){var a=this.clone();return a._flags.presence="required",a},i.Any.prototype.optional=function(){var a=this.clone();return delete a._flags.presence,a},i.Any.prototype["default"]=function(a){var b=this.clone();return b._flags["default"]=a,e.push(b._refs,a),b},i.Any.prototype.forbidden=function(){var a=this.clone();return a._flags.presence="forbidden",a},i.Any.prototype.when=function(b,c){d.assert(c&&"object"==typeof c,"Invalid options"),d.assert(void 0!==c.then||void 0!==c.otherwise,'options must have at least one of "then" or "otherwise"'),h=h||a("./cast");var e=c.then?this.concat(h.schema(c.then)):this,f=c.otherwise?this.concat(h.schema(c.otherwise)):this;g=g||a("./alternatives");var i=g.when(b,{is:c.is,then:e,otherwise:f});return i._flags.presence="ignore",i},i.Any.prototype.description=function(a){d.assert(a&&"string"==typeof a,"Description must be a non-empty string");var b=this.clone();return b._description=a,b},i.Any.prototype.notes=function(a){d.assert(a&&("string"==typeof a||Array.isArray(a)),"Notes must be a non-empty string or array");var b=this.clone();return b._notes=b._notes.concat(a),b},i.Any.prototype.tags=function(a){d.assert(a&&("string"==typeof a||Array.isArray(a)),"Tags must be a non-empty string or array");var b=this.clone();return b._tags=b._tags.concat(a),b},i.Any.prototype.meta=function(a){d.assert(void 0!==a,"Meta cannot be undefined");var b=this.clone();return b._meta=b._meta.concat(a),b},i.Any.prototype.example=function(a){d.assert(arguments.length,"Missing example");var b=this._validate(a,null,i.defaults);d.assert(!b.errors,"Bad example:",b.errors&&f.process(b.errors,a));var c=this.clone();return c._examples=c._examples.concat(a),c},i.Any.prototype.unit=function(a){d.assert(a&&"string"==typeof a,"Unit name must be a non-empty string");var b=this.clone();return b._unit=a,b},i.Any.prototype._validate=function(a,b,c,d){var g=this;b=b||{key:"",path:"",parent:null,reference:d},this._settings&&(c=i.concatSettings(c,this._settings));var h=[],j=function(){return{value:void 0!==a?a:e.isRef(g._flags["default"])?g._flags["default"](b.parent,c):g._flags["default"],errors:h.length?h:null}};if(this._flags.presence){if("required"===this._flags.presence&&void 0===a)return h.push(f.create("any.required",null,b,c)),j();if("forbidden"===this._flags.presence)return void 0===a?j():(h.push(f.create("any.unknown",null,b,c)),j())}else if(void 0===a)return j();if(this._valids.has(a,b,c,this._flags.insensitive))return j();if(this._invalids.has(a,b,c,this._flags.insensitive)&&(h.push(f.create(""===a?"any.empty":"any.invalid",null,b,c)),c.abortEarly||void 0===a))return j();if(this._base){var k=this._base.call(this,a,b,c);if(k.errors)return a=k.value,h=h.concat(k.errors),j();if(k.value!==a){if(a=k.value,this._valids.has(a,b,c,this._flags.insensitive))return j();if(this._invalids.has(a,b,c,this._flags.insensitive)&&(h.push(f.create("any.invalid",null,b,c)),c.abortEarly))return j()}}if(this._flags.allowOnly&&(h.push(f.create("any.allowOnly",{valids:this._valids.toString(!1)},b,c)),c.abortEarly))return j();for(var l=0,m=this._tests.length;m>l;++l){var n=this._tests[l],o=n.func.call(this,a,b,c);if(o&&(h.push(o),c.abortEarly))return j()}return j()},i.Any.prototype._validateWithOptions=function(a,b,c){var d=i.concatSettings(i.defaults,b),e=this._validate(a,null,d),g=f.process(e.errors,a);return c?c(g,e.value):{error:g,value:e.value}},i.Any.prototype.validate=function(a,b){var c=this._validate(a,null,i.defaults),d=f.process(c.errors,a);return b?b(d,c.value):{error:d,value:c.value}},i.Any.prototype.describe=function(){var a={type:this._type};Object.keys(this._flags).length&&(a.flags=this._flags),this._description&&(a.description=this._description),this._notes.length&&(a.notes=this._notes),this._tags.length&&(a.tags=this._tags),this._meta.length&&(a.meta=this._meta),this._examples.length&&(a.examples=this._examples),this._unit&&(a.unit=this._unit);var b=this._valids.values();b.length&&(a.valids=b);var c=this._invalids.values();c.length&&(a.invalids=c),a.rules=[];for(var d=0,e=this._tests.length;e>d;++d){var f=this._tests[d],g={name:f.name};f.arg&&(g.arg=f.arg),a.rules.push(g)}return a.rules.length||delete a.rules,a},i.Set=function(){this._set=[]},i.Set.prototype.add=function(a,b){d.assert(null===a||void 0===a||a instanceof Date||c.isBuffer(a)||e.isRef(a)||"function"!=typeof a&&"object"!=typeof a,"Value cannot be an object or function"),"function"!=typeof a&&this.has(a,null,null,!1)||(e.push(b,a),this._set.push(a))},i.Set.prototype.merge=function(a,b){for(var c=0,d=a._set.length;d>c;++c)this.add(a._set[c]);for(c=0,d=b._set.length;d>c;++c)this.remove(b._set[c])},i.Set.prototype.remove=function(a){this._set=this._set.filter(function(b){return a!==b})},i.Set.prototype.has=function(a,b,d,f){for(var g=0,h=this._set.length;h>g;++g){var i=this._set[g];if(e.isRef(i)&&(i=i(b.reference||b.parent,d)),typeof a==typeof i&&(a===i||a instanceof Date&&i instanceof Date&&a.getTime()===i.getTime()||f&&"string"==typeof a&&a.toLowerCase()===i.toLowerCase()||c.isBuffer(a)&&c.isBuffer(i)&&a.length===i.length&&a.toString("binary")===i.toString("binary")))return!0}return!1},i.Set.prototype.values=function(){return this._set.slice()},i.Set.prototype.toString=function(a){for(var b="",c=0,d=this._set.length;d>c;++c){var e=this._set[c];(void 0!==e||a)&&(b+=(b?", ":"")+i.stringify(e))}return b},i.stringify=function(a){return void 0===a?"undefined":null===a?"null":"string"==typeof a?a:a.toString()},i.concatSettings=function(a,b){if(!a&&!b)return null;var c={};if(a)for(var e=Object.keys(a),f=0,g=e.length;g>f;++f){var h=e[f];c[h]=a[h]}if(b)for(var i=Object.keys(b),j=0,k=i.length;k>j;++j){var h=i[j];"language"===h&&c.hasOwnProperty(h)?c[h]=d.applyToDefaults(c[h],b[h]):c[h]=b[h]}return c}}).call(this,a("buffer").Buffer)},{"./alternatives":1,"./cast":6,"./errors":8,"./ref":14,buffer:24,hoek:16,path:28}],3:[function(a,b,c){var d=a("./any"),e=a("./cast"),f=a("./errors"),g=a("hoek"),h={};h.Array=function(){d.call(this),this._type="array",this._inner.inclusions=[],this._inner.exclusions=[]},g.inherits(h.Array,d),h.Array.prototype._base=function(a,b,c){var d={value:a};if("string"==typeof a&&c.convert)try{var e=JSON.parse(a);Array.isArray(e)&&(d.value=e)}catch(g){}if(!Array.isArray(d.value))return d.errors=f.create("array.base",null,b,c),d;if(this._inner.inclusions.length||this._inner.exclusions.length)for(var h=0,i=d.value.length;i>h;++h){for(var j=d.value[h],k=!1,l={key:h,path:(b.path?b.path+".":"")+h,parent:d.value,reference:b.reference},m=0,n=this._inner.exclusions.length;n>m;++m){var o=this._inner.exclusions[m]._validate(j,l,{});if(!o.errors)return d.errors=f.create("array.excludes",{pos:h},{key:b.key,path:l.path},c),d}for(m=0,n=this._inner.inclusions.length;n>m;++m){var o=this._inner.inclusions[m]._validate(j,l,c);if(!o.errors){d.value[h]=o.value,k=!0;break}if(1===n)return d.errors=f.create("array.includesOne",{pos:h,reason:o.errors},{key:b.key,path:l.path},c),d}if(this._inner.inclusions.length&&!k)return d.errors=f.create("array.includes",{pos:h},{key:b.key,path:l.path},c),d}return d},h.Array.prototype.describe=function(){var a=d.prototype.describe.call(this);if(this._inner.inclusions.length){a.includes=[];for(var b=0,c=this._inner.inclusions.length;c>b;++b)a.includes.push(this._inner.inclusions[b].describe())}if(this._inner.exclusions.length){a.excludes=[];for(var b=0,c=this._inner.exclusions.length;c>b;++b)a.excludes.push(this._inner.exclusions[b].describe())}return a},h.Array.prototype.includes=function(){var a=g.flatten(Array.prototype.slice.call(arguments)).map(function(a){return e.schema(a)}),b=this.clone();return b._inner.inclusions=b._inner.inclusions.concat(a),b},h.Array.prototype.excludes=function(){var a=g.flatten(Array.prototype.slice.call(arguments)).map(function(a){return e.schema(a)}),b=this.clone();return b._inner.exclusions=b._inner.exclusions.concat(a),b},h.Array.prototype.min=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return b.length>=a?null:f.create("array.min",{limit:a},c,d)})},h.Array.prototype.max=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return b.length<=a?null:f.create("array.max",{limit:a},c,d)})},h.Array.prototype.length=function(a){return g.assert(g.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return b.length===a?null:f.create("array.length",{limit:a},c,d)})},b.exports=new h.Array},{"./any":2,"./cast":6,"./errors":8,hoek:16}],4:[function(a,b,c){(function(c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Binary=function(){d.call(this),this._type="binary"},f.inherits(g.Binary,d),g.Binary.prototype._base=function(a,b,d){var f={value:a};if("string"==typeof a&&d.convert)try{var g=new c(a,this._flags.encoding);f.value=g}catch(h){}return f.errors=c.isBuffer(f.value)?null:e.create("binary.base",null,b,d),f},g.Binary.prototype.encoding=function(a){f.assert(c.isEncoding(a),"Invalid encoding:",a);var b=this.clone();return b._flags.encoding=a,b},g.Binary.prototype.min=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return b.length>=a?null:e.create("binary.min",{limit:a},c,d)})},g.Binary.prototype.max=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return b.length<=a?null:e.create("binary.max",{limit:a},c,d)})},g.Binary.prototype.length=function(a){return f.assert(f.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return b.length===a?null:e.create("binary.length",{limit:a},c,d)})},b.exports=new g.Binary}).call(this,a("buffer").Buffer)},{"./any":2,"./errors":8,buffer:24,hoek:16}],5:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Boolean=function(){d.call(this),this._type="boolean"},f.inherits(g.Boolean,d),g.Boolean.prototype._base=function(a,b,c){var d={value:a};if("string"==typeof a&&c.convert){var f=a.toLowerCase();d.value="true"===f||"yes"===f||"on"===f?!0:"false"===f||"no"===f||"off"===f?!1:a}return d.errors="boolean"==typeof d.value?null:e.create("boolean.base",null,b,c),d},b.exports=new g.Boolean},{"./any":2,"./errors":8,hoek:16}],6:[function(a,b,c){var d=a("hoek"),e=a("./ref"),f={any:null,date:a("./date"),string:a("./string"),number:a("./number"),"boolean":a("./boolean"),alt:null,object:null};c.schema=function(b){ +return f.any=f.any||new(a("./any")),f.alt=f.alt||a("./alternatives"),f.object=f.object||a("./object"),b&&"object"==typeof b?b.isJoi?b:Array.isArray(b)?f.alt["try"](b):b instanceof RegExp?f.string.regex(b):b instanceof Date?f.date.valid(b):f.object.keys(b):"string"==typeof b?f.string.valid(b):"number"==typeof b?f.number.valid(b):"boolean"==typeof b?f["boolean"].valid(b):e.isRef(b)?f.any.valid(b):(d.assert(null===b,"Invalid schema content:",b),f.any.valid(null))},c.ref=function(a){return e.isRef(a)?a:e.create(a)}},{"./alternatives":1,"./any":2,"./boolean":5,"./date":7,"./number":12,"./object":13,"./ref":14,"./string":15,hoek:16}],7:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Date=function(){d.call(this),this._type="date"},f.inherits(g.Date,d),g.Date.prototype._base=function(a,b,c){var d={value:c.convert&&g.toDate(a)||a};return d.errors=d.value instanceof Date&&!isNaN(d.value.getTime())?null:e.create("date.base",null,b,c),d},g.toDate=function(a){if(a instanceof Date)return a;if("string"==typeof a||f.isInteger(a)){"string"==typeof a&&/^\d+$/.test(a)&&(a=parseInt(a,10));var b=new Date(a);if(!isNaN(b.getTime()))return b}return null},g.Date.prototype.min=function(a){return a=g.toDate(a),f.assert(a,"Invalid date format"),this._test("min",a,function(b,c,d){return b.getTime()>=a.getTime()?null:e.create("date.min",{limit:a},c,d)})},g.Date.prototype.max=function(a){return a=g.toDate(a),f.assert(a,"Invalid date format"),this._test("max",a,function(b,c,d){return b.getTime()<=a.getTime()?null:e.create("date.max",{limit:a},c,d)})},b.exports=new g.Date},{"./any":2,"./errors":8,hoek:16}],8:[function(a,b,c){var d=a("hoek"),e=a("./language"),f={};f.Err=function(a,b,c,d){this.type=a,this.context=b||{},this.context.key=c.key,this.path=c.path,this.options=d},f.Err.prototype.toString=function(){var a=this,b=this.options.language;this.context.key=this.context.key||b.root||e.errors.root;var c=d.reach(b,this.type)||d.reach(e.errors,this.type),f=/\{\{\!?key\}\}/.test(c);c=f?c:"{{!key}} "+c;var g=c.replace(/\{\{(\!?)([^}]+)\}\}/g,function(b,c,e){var f=d.reach(a.context,e),g=Array.isArray(f)?f.join(", "):f.toString();return c?d.escapeHtml(g):g});return g},c.create=function(a,b,c,d){return new f.Err(a,b,c,d)},c.process=function(a,b){if(!a||!a.length)return null;for(var c=[],d=0,e=a.length;e>d;++d){var g=a[d];c.push({message:g.toString(),path:g.path||g.context.key,type:g.type})}var h="";c.forEach(function(a){h+=(h?". ":"")+a.message});var i=new Error(h);return i.name="ValidationError",i.details=c,i._object=b,i.annotate=f.annotate,i},f.annotate=function(){for(var a=d.clone(this._object||{}),b={},c=this.details.length,e=c-1;e>=0;--e)for(var f=c-e,g=this.details[e],h=g.path.split("."),i=a,j=0,k=h.length;k>j&&i;++j){var l=h[j];if(k>j+1)i=i[l];else{var m=i[l];if(void 0!==m){delete i[l];var n=l+"_$key$_"+f+"_$end$_";i[n]=m,b[g.path]=n}else if(b[g.path]){var o=b[g.path],p=o.replace("_$end$_",", "+f+"_$end$_");i[p]=i[o],b[g.path]=p,delete i[o]}else i["_$miss$_"+l+"|"+f+"_$end$_"]="__missing__"}}var q=JSON.stringify(a,null,2);q=q.replace(/_\$key\$_([, \d]+)_\$end\$_\"/g,function(a,b){return'" ['+b+"]"});var r=q.replace(/\"_\$miss\$_([^\|]+)\|(\d+)_\$end\$_\"\: \"__missing__\"/g,function(a,b,c){return'"'+b+'" ['+c+"]: -- missing --"});for(r+="\n",e=0;c>e;++e)r+="\n["+(e+1)+"] "+this.details[e].message;return r+=""}},{"./language":11,hoek:16}],9:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Function=function(){d.call(this),this._type="func"},f.inherits(g.Function,d),g.Function.prototype._base=function(a,b,c){return{value:a,errors:"function"==typeof a?null:e.create("function.base",null,b,c)}},b.exports=new g.Function},{"./any":2,"./errors":8,hoek:16}],10:[function(a,b,c){var d=(a("hoek"),a("./any")),e=a("./cast"),f=a("./ref"),g={alternatives:a("./alternatives"),array:a("./array"),"boolean":a("./boolean"),binary:a("./binary"),date:a("./date"),func:a("./function"),number:a("./number"),object:a("./object"),string:a("./string")};g.root=function(){var a=new d,b=a.clone();return b.any=function(){return a},b.alternatives=b.alt=function(){return arguments.length?g.alternatives["try"].apply(g.alternatives,arguments):g.alternatives},b.array=function(){return g.array},b["boolean"]=b.bool=function(){return g["boolean"]},b.binary=function(){return g.binary},b.date=function(){return g.date},b.func=function(){return g.func},b.number=function(){return g.number},b.object=function(){return arguments.length?g.object.keys.apply(g.object,arguments):g.object},b.string=function(){return g.string},b.ref=function(){return f.create.apply(null,arguments)},b.isRef=function(a){return f.isRef(a)},b.validate=function(b){var c=arguments[arguments.length-1],d="function"==typeof c?c:null,f=arguments.length-(d?1:0);if(1===f)return a.validate(b,d);var g=3===f?arguments[2]:{},h=e.schema(arguments[1]);return h._validateWithOptions(b,g,d)},b.describe=function(){var b=arguments.length?e.schema(arguments[0]):a;return b.describe()},b.compile=function(a){return e.schema(a)},b.assert=function(a,c){var d=b.validate(a,c).error;if(d)throw new Error(d.annotate())},b},b.exports=g.root()},{"./alternatives":1,"./any":2,"./array":3,"./binary":4,"./boolean":5,"./cast":6,"./date":7,"./function":9,"./number":12,"./object":13,"./ref":14,"./string":15,hoek:16}],11:[function(a,b,c){c.errors={root:"value",any:{unknown:"is not allowed",invalid:"contains an invalid value",empty:"is not allowed to be empty",required:"is required",allowOnly:"must be one of {{valids}}"},alternatives:{base:"not matching any of the allowed alternatives"},array:{base:"must be an array",includes:"position {{pos}} does not match any of the allowed types",includesOne:"position {{pos}} fails because {{reason}}",excludes:"position {{pos}} contains an excluded value",min:"must contain at least {{limit}} items",max:"must contain less than or equal to {{limit}} items",length:"must contain {{limit}} items"},"boolean":{base:"must be a boolean"},binary:{base:"must be a buffer or a string",min:"must be at least {{limit}} bytes",max:"must be less than or equal to {{limit}} bytes",length:"must be {{limit}} bytes"},date:{base:"must be a number of milliseconds or valid date string",min:"must be larger than or equal to {{limit}}",max:"must be less than or equal to {{limit}}"},"function":{base:"must be a Function"},object:{base:"must be an object",min:"must have at least {{limit}} children",max:"must have less than or equal to {{limit}} children",length:"must have {{limit}} children",allowUnknown:"is not allowed","with":"missing required peer {{peer}}",without:"conflict with forbidden peer {{peer}}",missing:"must contain at least one of {{peers}}",xor:"contains a conflict between exclusive peers {{peers}}",or:"must contain at least one of {{peers}}",and:"contains {{present}} without its required peers {{missing}}",assert:"validation failed because {{ref}} failed to {{message}}",rename:{multiple:"cannot rename child {{from}} because multiple renames are disabled and another key was already renamed to {{to}}",override:"cannot rename child {{from}} because override is disabled and target {{to}} exists"}},number:{base:"must be a number",min:"must be larger than or equal to {{limit}}",max:"must be less than or equal to {{limit}}","float":"must be a float or double",integer:"must be an integer",negative:"must be a negative number",positive:"must be a positive number"},string:{base:"must be a string",min:"length must be at least {{limit}} characters long",max:"length must be less than or equal to {{limit}} characters long",length:"length must be {{limit}} characters long",alphanum:"must only contain alpha-numeric characters",token:"must only contain alpha-numeric and underscore characters",regex:"fails to match the required pattern",email:"must be a valid email",isoDate:"must be a valid ISO 8601 date",guid:"must be a valid GUID",hostname:"must be a valid hostname",lowercase:"must only contain lowercase characters",uppercase:"must only contain uppercase characters",trim:"must not have leading or trailing whitespace"}}},{}],12:[function(a,b,c){var d=a("./any"),e=a("./errors"),f=a("hoek"),g={};g.Number=function(){d.call(this),this._type="number"},f.inherits(g.Number,d),g.Number.prototype._base=function(a,b,c){var d={errors:null,value:a};if("string"==typeof a&&c.convert){var f=parseFloat(a);d.value=isNaN(f)||!isFinite(a)?NaN:f}return d.errors="number"!=typeof d.value||isNaN(d.value)?e.create("number.base",null,b,c):null,d},g.Number.prototype.min=function(a){return f.assert(f.isInteger(a),"limit must be an integer"),this._test("min",a,function(b,c,d){return b>=a?null:e.create("number.min",{limit:a},c,d)})},g.Number.prototype.max=function(a){return f.assert(f.isInteger(a),"limit must be an integer"),this._test("max",a,function(b,c,d){return a>=b?null:e.create("number.max",{limit:a},c,d)})},g.Number.prototype.integer=function(){return this._test("integer",void 0,function(a,b,c){return f.isInteger(a)?null:e.create("number.integer",null,b,c)})},g.Number.prototype.negative=function(){return this._test("negative",void 0,function(a,b,c){return 0>a?null:e.create("number.negative",null,b,c)})},g.Number.prototype.positive=function(){return this._test("positive",void 0,function(a,b,c){return a>0?null:e.create("number.positive",null,b,c)})},b.exports=new g.Number},{"./any":2,"./errors":8,hoek:16}],13:[function(a,b,c){var d=a("hoek"),e=a("topo"),f=a("./any"),g=a("./cast"),h=(a("./ref"),a("./errors")),i={};i.Object=function(){f.call(this),this._type="object",this._inner.children=null,this._inner.renames=[],this._inner.dependencies=[],this._inner.patterns=[]},d.inherits(i.Object,f),i.Object.prototype._base=function(a,b,c){var e=a,f=[],g=function(){return{value:e,errors:f.length?f:null}};if("string"==typeof a&&c.convert)try{a=JSON.parse(a)}catch(j){}if(!a||"object"!=typeof a||Array.isArray(a))return f.push(h.create("object.base",null,b,c)),g();if(e===a){e={},e.__proto__=Object.getPrototypeOf(a);for(var k=Object.keys(a),l=0,m=k.length;m>l;++l)e[k[l]]=a[k[l]]}else e=a;for(var n={},o=0,p=this._inner.renames.length;p>o;++o){var q=this._inner.renames[o];if(void 0!==e[q.from]){if(!q.options.multiple&&n[q.to]&&(f.push(h.create("object.rename.multiple",{from:q.from,to:q.to},b,c)),c.abortEarly))return g();if(e.hasOwnProperty(q.to)&&!q.options.override&&!n[q.to]&&(f.push(h.create("object.rename.override",{from:q.from,to:q.to},b,c)),c.abortEarly))return g();e[q.to]=e[q.from],n[q.to]=!0,q.options.alias||delete e[q.from]}}for(var r=0,s=this._inner.dependencies.length;s>r;++r){var t=this._inner.dependencies[r],j=i[t.type](null!==t.key&&a[t.key],t.peers,e,{key:t.key,path:(b.path?b.path+".":"")+t.key},c);if(j&&(f.push(j),c.abortEarly))return g()}if(!this._inner.children&&!this._inner.patterns.length)return g();var u,v=d.mapToObject(Object.keys(e));if(this._inner.children)for(var w=0,x=this._inner.children.length;x>w;++w){var y=this._inner.children[w],u=y.key,q=e[u];delete v[u];var z={key:u,path:(b.path?b.path+".":"")+u,parent:e,reference:b.reference},A=y.schema._validate(q,z,c);if(A.errors&&(f=f.concat(A.errors),c.abortEarly))return g();void 0!==A.value&&(e[u]=A.value)}var B=Object.keys(v);if(B.length&&this._inner.patterns.length){for(w=0,x=B.length;x>w;++w)for(var u=B[w],C=0,D=this._inner.patterns.length;D>C;++C){var E=this._inner.patterns[C];if(E.regex.test(u)){delete v[u];var q=e[u],z={key:u,path:(b.path?b.path+".":"")+u,parent:e,reference:b.reference},A=E.rule._validate(q,z,c);if(A.errors&&(f=f.concat(A.errors),c.abortEarly))return g();void 0!==A.value&&(e[u]=A.value)}}B=Object.keys(v)}if(B.length){if(c.stripUnknown||c.skipFunctions){for(var F=!1,G=0,H=B.length;H>G;++G)u=B[G],c.stripUnknown?delete e[u]:"function"==typeof e[u]&&(delete v[u],F=!0);if(c.stripUnknown)return g();F&&(B=Object.keys(v))}if(B.length&&(void 0!==this._flags.allowUnknown?!this._flags.allowUnknown:!c.allowUnknown))for(var I=0,J=B.length;J>I;++I)f.push(h.create("object.allowUnknown",null,{key:B[I],path:b.path},c))}return g()},i.Object.prototype.keys=function(a){d.assert(null===a||void 0===a||"object"==typeof a,"Object schema must be a valid object"),d.assert(!a||!a.isJoi,"Object schema cannot be a joi schema");var b=this.clone();if(!a)return b._inner.children=null,b;var c=Object.keys(a);if(!c.length)return b._inner.children=[],b;var f=new e;if(b._inner.children)for(var h=0,i=b._inner.children.length;i>h;++h){var j=b._inner.children[h];f.add(j,{after:j._refs,group:j.key})}for(var k=0,l=c.length;l>k;++k){var m=c[k],j=a[m],n=g.schema(j);f.add({key:m,schema:n},{after:n._refs,group:m})}return b._inner.children=f.nodes,b},i.Object.prototype.unknown=function(a){var b=this.clone();return b._flags.allowUnknown=a!==!1,b},i.Object.prototype.length=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("length",a,function(b,c,d){return Object.keys(b).length===a?null:h.create("object.length",{limit:a},c,d)})},i.Object.prototype.min=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("min",a,function(b,c,d){return Object.keys(b).length>=a?null:h.create("object.min",{limit:a},c,d)})},i.Object.prototype.max=function(a){return d.assert(d.isInteger(a)&&a>=0,"limit must be a positive integer"),this._test("max",a,function(b,c,d){return Object.keys(b).length<=a?null:h.create("object.max",{limit:a},c,d)})},i.Object.prototype.pattern=function(a,b){d.assert(a instanceof RegExp,"Invalid regular expression"),d.assert(void 0!==b,"Invalid rule");var c=this.clone();return c._inner.patterns.push({regex:a,rule:g.schema(b)}),c},i.Object.prototype["with"]=function(a,b){return this._dependency("with",a,b)},i.Object.prototype.without=function(a,b){return this._dependency("without",a,b)},i.Object.prototype.xor=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("xor",null,a)},i.Object.prototype.or=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("or",null,a)},i.Object.prototype.and=function(){var a=d.flatten(Array.prototype.slice.call(arguments));return this._dependency("and",null,a)},i.renameDefaults={alias:!1,multiple:!1,override:!1},i.Object.prototype.rename=function(a,b,c){d.assert("string"==typeof a,"Rename missing the from argument"),d.assert("string"==typeof b,"Rename missing the to argument"),d.assert(b!==a,"Cannot rename key to same name:",a);for(var e=0,f=this._inner.renames.length;f>e;++e)d.assert(this._inner.renames[e].from!==a,"Cannot rename the same key multiple times");var g=this.clone();return g._inner.renames.push({from:a,to:b,options:d.applyToDefaults(i.renameDefaults,c||{})}),g},i.Object.prototype._dependency=function(a,b,c){c=[].concat(c);for(var e=0,f=c.length;f>e;e++)d.assert("string"==typeof c[e],a,"peers must be a string or array of strings");var g=this.clone();return g._inner.dependencies.push({type:a,key:b,peers:c}),g},i["with"]=function(a,b,c,d,e){if(void 0===a)return null;for(var f=0,g=b.length;g>f;++f){var i=b[f];if(!c.hasOwnProperty(i)||void 0===c[i])return h.create("object.with",{peer:i},d,e)}return null},i.without=function(a,b,c,d,e){if(void 0===a)return null;for(var f=0,g=b.length;g>f;++f){var i=b[f];if(c.hasOwnProperty(i)&&void 0!==c[i])return h.create("object.without",{peer:i},d,e)}return null},i.xor=function(a,b,c,d,e){for(var f=[],g=0,i=b.length;i>g;++g){var j=b[g];c.hasOwnProperty(j)&&void 0!==c[j]&&f.push(j)}return 1===f.length?null:0===f.length?h.create("object.missing",{peers:b},d,e):h.create("object.xor",{peers:b},d,e)},i.or=function(a,b,c,d,e){for(var f=0,g=b.length;g>f;++f){var i=b[f];if(c.hasOwnProperty(i)&&void 0!==c[i])return null}return h.create("object.missing",{peers:b},d,e)},i.and=function(a,b,c,d,e){for(var f=[],g=[],i=b.length,j=0;i>j;++j){var k=b[j];c.hasOwnProperty(k)&&void 0!==c[k]?g.push(k):f.push(k)}var l=f.length===i||g.length===i;return l?null:h.create("object.and",{present:g,missing:f},d,e)},i.Object.prototype.describe=function(a){var b=f.prototype.describe.call(this);if(this._inner.children&&!a){b.children={};for(var c=0,e=this._inner.children.length;e>c;++c){var g=this._inner.children[c];b.children[g.key]=g.schema.describe()}}return this._inner.dependencies.length&&(b.dependencies=d.clone(this._inner.dependencies)),b},i.Object.prototype.assert=function(a,b,c){a=g.ref(a),d.assert(a.isContext||a.depth>1,"Cannot use assertions for root level references - use direct key rules instead");var e=g.schema(b);return this._test("assert",{cast:e,ref:a},function(b,d,f){var g=e._validate(a(b),null,f,b);return g.errors?h.create("object.assert",{ref:a.path.join("."),message:c},d,f):null})},b.exports=new i.Object},{"./any":2,"./cast":6,"./errors":8,"./ref":14,hoek:16,topo:21}],14:[function(a,b,c){var d=a("hoek");c.create=function(a,b){d.assert("string"==typeof a,"Invalid reference key:",a);var c=d.clone(b),e=function(a,b){return d.reach(e.isContext?b.context:a,e.key,c)};return e.isContext=a[0]===(c&&c.contextPrefix||"$"),e.key=e.isContext?a.slice(1):a,e.path=e.key.split(c&&c.separator||"."),e.depth=e.path.length,e.root=e.path[0],e.isJoi=!0,e.toString=function(){return(e.isContext?"context:":"ref:")+e.key},e},c.isRef=function(a){return"function"==typeof a&&a.isJoi},c.push=function(a,b){c.isRef(b)&&!b.isContext&&a.push(b.root)}},{hoek:16}],15:[function(a,b,c){(function(c){var d=a("net"),e=a("hoek"),f=a("isemail"),g=a("./any"),h=a("./errors"),i={};i.String=function(){g.call(this),this._type="string",this._invalids.add("")},e.inherits(i.String,g),i.String.prototype._base=function(a,b,c){return"string"==typeof a&&c.convert&&(this._flags["case"]&&(a="upper"===this._flags["case"]?a.toLocaleUpperCase():a.toLocaleLowerCase()),this._flags.trim&&(a=a.trim())),{value:a,errors:"string"==typeof a?null:h.create("string.base",null,b,c)}},i.String.prototype.insensitive=function(){var a=this.clone();return a._flags.insensitive=!0,a},i.String.prototype.min=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("min",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return g>=a?null:h.create("string.min",{limit:a},e,f)})},i.String.prototype.max=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("max",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return a>=g?null:h.create("string.max",{limit:a},e,f)})},i.String.prototype.length=function(a,b){return e.assert(e.isInteger(a)&&a>=0,"limit must be a positive integer"),e.assert(!b||c.isEncoding(b),"Invalid encoding:",b),this._test("length",a,function(d,e,f){var g=b?c.byteLength(d,b):d.length;return g===a?null:h.create("string.length",{limit:a},e,f)})},i.String.prototype.regex=function(a){return e.assert(a instanceof RegExp,"pattern must be a RegExp"),this._test("regex",a,function(b,c,d){return a.test(b)?null:h.create("string.regex",null,c,d)})},i.String.prototype.alphanum=function(){return this._test("alphanum",void 0,function(a,b,c){return/^[a-zA-Z0-9]+$/.test(a)?null:h.create("string.alphanum",null,b,c)})},i.String.prototype.token=function(){return this._test("token",void 0,function(a,b,c){return/^\w+$/.test(a)?null:h.create("string.token",null,b,c)})},i.String.prototype.email=function(){return this._test("email",void 0,function(a,b,c){return f(a)?null:h.create("string.email",null,b,c)})},i.String.prototype.isoDate=function(){var a=/^(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))$/;return this._test("isoDate",void 0,function(b,c,d){return a.test(b)?null:h.create("string.isoDate",null,c,d)})},i.String.prototype.guid=function(){var a=/^[A-F0-9]{8}(?:-?[A-F0-9]{4}){3}-?[A-F0-9]{12}$/i,b=/^\{[A-F0-9]{8}(?:-?[A-F0-9]{4}){3}-?[A-F0-9]{12}\}$/i;return this._test("guid",void 0,function(c,d,e){return a.test(c)||b.test(c)?null:h.create("string.guid",null,d,e)})},i.String.prototype.hostname=function(){var a=/^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$/;return this._test("hostname",void 0,function(b,c,e){return b.length<=255&&a.test(b)||d.isIPv6(b)?null:h.create("string.hostname",null,c,e)})},i.String.prototype.lowercase=function(){var a=this._test("lowercase",void 0,function(a,b,c){return c.convert||a===a.toLocaleLowerCase()?null:h.create("string.lowercase",null,b,c)});return a._flags["case"]="lower",a},i.String.prototype.uppercase=function(a){var b=this._test("uppercase",void 0,function(a,b,c){return c.convert||a===a.toLocaleUpperCase()?null:h.create("string.uppercase",null,b,c)});return b._flags["case"]="upper",b},i.String.prototype.trim=function(){var a=this._test("trim",void 0,function(a,b,c){return c.convert||a===a.trim()?null:h.create("string.trim",null,b,c)});return a._flags.trim=!0,a},b.exports=new i.String}).call(this,a("buffer").Buffer)},{"./any":2,"./errors":8,buffer:24,hoek:16,isemail:19,net:23}],16:[function(a,b,c){b.exports=a("./lib")},{"./lib":18}],17:[function(a,b,c){(function(a){var b={};c.escapeJavaScript=function(a){if(!a)return"";for(var c="",d=0,e=a.length;e>d;++d){var f=a.charCodeAt(d);c+=b.isSafe(f)?a[d]:b.escapeJavaScriptChar(f)}return c},c.escapeHtml=function(a){if(!a)return"";for(var c="",d=0,e=a.length;e>d;++d){var f=a.charCodeAt(d);c+=b.isSafe(f)?a[d]:b.escapeHtmlChar(f)}return c},b.escapeJavaScriptChar=function(c){if(c>=256)return"\\u"+b.padLeft(""+c,4);var d=new a(String.fromCharCode(c),"ascii").toString("hex");return"\\x"+b.padLeft(d,2)},b.escapeHtmlChar=function(c){var d=b.namedHtml[c];if("undefined"!=typeof d)return d;if(c>=256)return"&#"+c+";";var e=new a(String.fromCharCode(c),"ascii").toString("hex");return"&#x"+b.padLeft(e,2)+";"},b.padLeft=function(a,b){for(;a.lengthb;++b)(b>=97||b>=65&&90>=b||b>=48&&57>=b||32===b||46===b||44===b||45===b||58===b||95===b)&&(a[b]=null);return a}()}).call(this,a("buffer").Buffer)},{buffer:24}],18:[function(a,b,c){(function(b,d){var e=a("path"),f=a("util"),g=a("./escape"),h={};c.clone=function(a,b){if("object"!=typeof a||null===a)return a;b=b||{orig:[],copy:[]};var e=b.orig.indexOf(a);if(-1!==e)return b.copy[e];var f,g=!1;if(Array.isArray(a))f=[],g=!0;else if(d.isBuffer(a))f=new d(a);else if(a instanceof Date)f=new Date(a.getTime());else if(a instanceof RegExp)f=new RegExp(a);else{var h=Object.getPrototypeOf(a);!h||h.isImmutable?f=a:(f={},f.__proto__=h,g=!0)}if(b.orig.push(a),b.copy.push(f),g)for(var i in a)a.hasOwnProperty(i)&&(f[i]=c.clone(a[i],b));return f},c.merge=function(a,b,e,f){if(c.assert(a&&"object"==typeof a,"Invalid target value: must be an object"),c.assert(null===b||void 0===b||"object"==typeof b,"Invalid source value: must be null, undefined, or an object"),!b)return a;if(Array.isArray(b)){c.assert(Array.isArray(a),"Cannot merge array onto an object"),f===!1&&(a.length=0);for(var g=0,h=b.length;h>g;++g)a.push(c.clone(b[g]));return a}for(var i=Object.keys(b),j=0,k=i.length;k>j;++j){var l=i[j],m=b[l];m&&"object"==typeof m?!a[l]||"object"!=typeof a[l]||Array.isArray(a[l])^Array.isArray(m)||m instanceof Date||d.isBuffer(m)||m instanceof RegExp?a[l]=c.clone(m):c.merge(a[l],m,e,f):null!==m&&void 0!==m?a[l]=m:e!==!1&&(a[l]=m)}return a},c.applyToDefaults=function(a,b){if(c.assert(a&&"object"==typeof a,"Invalid defaults value: must be an object"),c.assert(!b||b===!0||"object"==typeof b,"Invalid options value: must be true, falsy or an object"),!b)return null;var d=c.clone(a);return b===!0?d:c.merge(d,b,!1,!1)},c.cloneWithShallow=function(a,b){return a&&"object"==typeof a?h.shallow(a,b,function(){return c.clone(a)}):a},c.applyToDefaultsWithShallow=function(a,b,d){return h.shallow(b,d,function(){return c.applyToDefaults(a,b)})},h.shallow=function(a,b,c){for(var d={},e=0,f=b.length;f>e;++e){var g=b[e];a.hasOwnProperty(g)&&(d[g]=a[g],a[g]=void 0)}var h=c();for(e=0;f>e;++e){var g=b[e];d.hasOwnProperty(g)&&(a[g]=d[g],h[g]=d[g])}return h},c.unique=function(a,b){for(var c={},d=[],e=0,f=a.length;f>e;++e){var g=b?a[e][b]:a[e];c[g]!==!0&&(d.push(a[e]),c[g]=!0)}return d},c.mapToObject=function(a,b){if(!a)return null;for(var c={},d=0,e=a.length;e>d;++d)b?a[d][b]&&(c[a[d][b]]=!0):c[a[d]]=!0;return c},c.intersect=function(a,b,d){if(!a||!b)return[];for(var e=[],f=Array.isArray(a)?c.mapToObject(a):a,g={},h=0,i=b.length;i>h;++h)if(f[b[h]]&&!g[b[h]]){if(d)return b[h];e.push(b[h]),g[b[h]]=!0}return d?null:e},c.flatten=function(a,b){for(var d=b||[],e=0,f=a.length;f>e;++e)Array.isArray(a[e])?c.flatten(a[e],d):d.push(a[e]);return d},c.reach=function(a,b,d){d=d||{},"string"==typeof d&&(d={separator:d});for(var e=b.split(d.separator||"."),f=a,g=0,h=e.length;h>g;++g){if(!f||!f.hasOwnProperty(e[g])||"object"!=typeof f&&d.functions===!1){c.assert(!d.strict||g+1===h,"Missing segment",e[g],"in reach path ",b),c.assert("object"==typeof f||d.functions===!0||"function"!=typeof f,"Invalid segment",e[g],"in reach path ",b),f=d["default"]||void 0;break}f=f[e[g]]}return f},c.formatStack=function(a){for(var b=[],c=0,d=a.length;d>c;++c){var e=a[c];b.push([e.getFileName(),e.getLineNumber(),e.getColumnNumber(),e.getFunctionName(),e.isConstructor()])}return b},c.formatTrace=function(a){for(var b=[],c=0,d=a.length;d>c;++c){var e=a[c];b.push((e[4]?"new ":"")+e[3]+" ("+e[0]+":"+e[1]+":"+e[2]+")")}return b},c.callStack=function(a){var b=Error.prepareStackTrace;Error.prepareStackTrace=function(a,b){return b};var d={};Error.captureStackTrace(d,arguments.callee);var e=d.stack;Error.prepareStackTrace=b;var f=c.formatStack(e);return a?f.slice(a):f},c.displayStack=function(a){var b=c.callStack(void 0===a?1:a+1);return c.formatTrace(b)},c.abortThrow=!1,c.abort=function(a,d){if("test"===b.env.NODE_ENV||c.abortThrow===!0)throw new Error(a||"Unknown error");var e="";d||(e=c.displayStack(1).join("\n ")),console.log("ABORT: "+a+"\n "+e),b.exit(1)},c.assert=function(a){if(!a){for(var b=[],c=1,d=arguments.length;d>c;++c)b.push(arguments[c]);throw b=b.map(function(a){return"string"==typeof a?a:a instanceof Error?a.message:JSON.stringify(a)}),new Error(b.join(" ")||"Unknown error")}},c.Timer=function(){this.ts=0,this.reset()},c.Timer.prototype.reset=function(){this.ts=Date.now()},c.Timer.prototype.elapsed=function(){return Date.now()-this.ts},c.Bench=function(){this.ts=0,this.reset()},c.Bench.prototype.reset=function(){this.ts=c.Bench.now()},c.Bench.prototype.elapsed=function(){return c.Bench.now()-this.ts},c.Bench.now=function(){var a=b.hrtime();return 1e3*a[0]+a[1]/1e6},c.escapeRegex=function(a){return a.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")},c.base64urlEncode=function(a,b){var c=d.isBuffer(a)?a:new d(a,b||"binary");return c.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")},c.base64urlDecode=function(a,b){if(a&&!/^[\w\-]*$/.test(a))return new Error("Invalid character");try{var c=new d(a,"base64");return"buffer"===b?c:c.toString(b||"binary")}catch(e){return e}},c.escapeHeaderAttribute=function(a){return c.assert(/^[ \w\!#\$%&'\(\)\*\+,\-\.\/\:;<\=>\?@\[\]\^`\{\|\}~\"\\]*$/.test(a),"Bad attribute value ("+a+")"),a.replace(/\\/g,"\\\\").replace(/\"/g,'\\"')},c.escapeHtml=function(a){return g.escapeHtml(a)},c.escapeJavaScript=function(a){return g.escapeJavaScript(a)},c.nextTick=function(a){return function(){var c=arguments;b.nextTick(function(){a.apply(null,c)})}},c.once=function(a){if(a._hoekOnce)return a;var b=!1,c=function(){b||(b=!0,a.apply(null,arguments))};return c._hoekOnce=!0,c},c.isAbsolutePath=function(a,c){return a?e.isAbsolute?e.isAbsolute(a):(c=c||b.platform,"win32"!==c?"/"===a[0]:!!/^(?:[a-zA-Z]:[\\\/])|(?:[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/])/.test(a)):!1},c.isInteger=function(a){return"number"==typeof a&&parseFloat(a)===parseInt(a,10)&&!isNaN(a)},c.ignore=function(){},c.inherits=f.inherits,c.transform=function(a,b,d){c.assert(null==a||"object"==typeof a,"Invalid source object: must be null, undefined, or an object");for(var e={},f=Object.keys(b),g=0,h=f.length;h>g;++g){var i=f[g],j=i.split("."),k=b[i];c.assert("string"==typeof k,'All mappings must be "." delineated strings');for(var l,m=e;j.length>1;)l=j.shift(),m[l]||(m[l]={}),m=m[l];l=j.shift(),m[l]=c.reach(a,k,d)}return e}}).call(this,a("_process"),a("buffer").Buffer)},{"./escape":17,_process:29,buffer:24,path:28,util:31}],19:[function(a,b,c){b.exports=a("./lib/isemail")},{"./lib/isemail":20}],20:[function(a,b,c){(function(c){function d(a){for(var b=-(1/0),c=0,d=a.length;d>c;c++)a[c]>b&&(b=a[c]);return b}function e(b,e,ta){function ua(){if(!Pa&&d(xa)=48&&57>=a&&xa.push(p)}for(var b={},c=0;ce&&(e=l),e=wa?e:ja>e,ta&&ta(e),e}"function"==typeof e&&(ta=e,e={}),e||(e={});var va,wa;"number"==typeof e.errorLevel?(wa=!0,va=e.errorLevel):(wa=!!e.errorLevel,va=l);var xa=[l],ya={now:ka,prev:ka,stack:[ka]},za="",Aa="",Ba=0,Ca={},Da={};Ca[ka]="",Ca[la]="",Da[ka]=[""],Da[la]=[""];for(var Ea=0,Fa=0,Ga=!1,Ha=!1,Ia=0,Ja=0;Ja64?xa.push(E):(ya.prev===na||ya.prev===oa)&&xa.push(B),ya.now=la,ya.stack=[la],Ea=0,Fa=0,Ha=!1;break;default:if(Ha)switch(ya.prev){case na:case oa:xa.push(T);break;case pa:xa.push(U);break;default:throw new Error("more atext found where none is allowed, but unrecognized prev context: "+ya.prev)}else ya.prev=ya.now,Ba=za.charCodeAt(0),(33>Ba||Ba>126||10===Ba||~ra.indexOf(za))&&xa.push(X),Ca[ka]+=za,Da[ka][Ea]+=za,Fa++}break;case la:switch(za){case"(":0===Fa?xa.push(0===Ea?B:z):(xa.push(t),Ha=!0),ya.stack.push(ya.now),ya.now=na;break;case".":0===Fa?xa.push(0===Ea?_:S):Ga?xa.push(ca):Fa>63&&xa.push(G),Ha=!1,Fa=0,Ea++,Da[la][Ea]="",Ca[la]+=za;break;case"[":0===Ca[la].length?(Ha=!0,Fa++,ya.stack.push(ya.now),ya.now=ma,Ca[la]+=za,Da[la][Ea]+=za,Ca[ma]=""):xa.push(X);break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}0===Fa?xa.push(0===Ea?B:w):(xa.push(u),Ha=!0),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ha)switch(ya.prev){case na:case oa:xa.push(T);break;case ma:xa.push(V);break;default:throw new Error("more atext found where none is allowed, but unrecognized prev context: "+ya.prev)}Ba=za.charCodeAt(0),Ga=!1,33>Ba||Ba>126||~ra.indexOf(za)?xa.push(X):"-"===za?(0===Fa&&xa.push(ba),Ga=!0):Ba>47&&58>Ba||Ba>64&&91>Ba||Ba>96&&123>Ba||xa.push(C),Ca[la]+=za,Da[la][Ea]+=za,Fa++}break;case ma:switch(za){case"]":if(d(xa)La?xa.push(M):Ka.length===La&&xa.push(s)):Ka.length!==La&&xa.push(J),":"===Oa[0]&&":"!==Oa[1]?xa.push(N):":"===Oa[Oa.length-1]&&":"!==Oa[Oa.length-2]?xa.push(O):Ka.every(g)?xa.push(r):xa.push(L)}}else xa.push(H); +Ca[la]+=za,Da[la][Ea]+=za,Fa++,ya.prev=ya.now,ya.now=ya.stack.pop();break;case"\\":xa.push(I),ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ba=za.charCodeAt(0),Ba>127||0===Ba||"["===za){xa.push(P);break}(33>Ba||127===Ba)&&xa.push(I),Ca[ma]+=za,Ca[la]+=za,Da[la][Ea]+=za,Fa++}break;case pa:switch(za){case"\\":ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}Ca[ka]+=" ",Da[ka][Ea]+=" ",Fa++,xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;case'"':Ca[ka]+=za,Da[ka][Ea]+=za,Fa++,ya.prev=ya.now,ya.now=ya.stack.pop();break;default:Ba=za.charCodeAt(0),Ba>127||0===Ba||10===Ba?xa.push(Y):(32>Ba||127===Ba)&&xa.push(x),Ca[ka]+=za,Da[ka][Ea]+=za,Fa++}break;case qa:switch(Ba=za.charCodeAt(0),Ba>127?xa.push(W):(31>Ba&&9!==Ba||127===Ba)&&xa.push(y),ya.prev=ya.now,ya.now=ya.stack.pop(),za="\\"+za,ya.now){case na:break;case pa:Ca[ka]+=za,Da[ka][Ea]+=za,Fa+=2;break;case ma:Ca[la]+=za,Da[la][Ea]+=za,Fa+=2;break;default:throw new Error("quoted pair logic invoked in an invalid context: "+ya.now)}break;case na:switch(za){case"(":ya.stack.push(ya.now),ya.now=na;break;case")":ya.prev=ya.now,ya.now=ya.stack.pop();break;case"\\":ya.stack.push(ya.now),ya.now=qa;break;case"\r":case" ":case" ":if("\r"===za&&(++Ja===b.length||"\n"!==b[Ja])){xa.push(ia);break}xa.push(u),ya.stack.push(ya.now),ya.now=oa,Aa=za;break;default:if(Ba=za.charCodeAt(0),Ba>127||0===Ba||10===Ba){xa.push(Z);break}(32>Ba||127===Ba)&&xa.push(A)}break;case oa:if("\r"===Aa){if("\r"===za){xa.push(ga);break}++Ia>1?xa.push(w):Ia=1}switch(za){case"\r":(++Ja===b.length||"\n"!==b[Ja])&&xa.push(ia);break;case" ":case" ":break;default:"\r"===Aa&&xa.push(ha),Ia=0,ya.prev=ya.now,ya.now=ya.stack.pop(),Ja--}Aa=za;break;default:throw new Error("unknown context: "+ya.now)}if(d(xa)>k)break}d(xa)255?xa.push(F):Ca[ka].length+Ca[la].length+1>254?xa.push(D):Fa>63&&xa.push(G));var Pa=!1;if(e.checkDNS&&d(xa)[]:;@\\,."',sa=/\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ta=/^[a-fA-F\d]{0,4}$/;window.hasOwnProperty("TEST_BUILD")||(g=ta.test.bind(ta)),b.exports=e}).call(this,a("_process"))},{_process:29,dns:23}],21:[function(a,b,c){arguments[4][16][0].apply(c,arguments)},{"./lib":22}],22:[function(a,b,c){var d=a("hoek"),e={};c=b.exports=e.Topo=function(){this._items=[],this.nodes=[]},e.Topo.prototype.add=function(a,b){var c=this;b=b||{};var e=[].concat(b.before||[]),f=[].concat(b.after||[]),g=b.group||"?";d.assert(-1===e.indexOf(g),"Item cannot come before itself:",g),d.assert(-1===e.indexOf("?"),"Item cannot come before unassociated items"),d.assert(-1===f.indexOf(g),"Item cannot come after itself:",g),d.assert(-1===f.indexOf("?"),"Item cannot come after unassociated items"),[].concat(a).forEach(function(a,b){var d={seq:c._items.length,before:e,after:f,group:g,node:a};c._items.push(d)});var h=this._sort();return d.assert(!h,"item","?"!==g?"added into group "+g:"","created a dependencies error"),this.nodes},e.Topo.prototype._sort=function(){for(var a={},b={},c={},d=0,e=this._items.length;e>d;++d){var f=this._items[d],g=f.seq,h=f.group;a[h]=a[h]||[],a[h].push(g),b[g]=[f.before];for(var i=f.after,j=0,k=i.length;k>j;++j)c[i[j]]=(c[i[j]]||[]).concat(g)}var l=Object.keys(b);for(d=0,e=l.length;e>d;++d){var m=l[d],n=[],o=Object.keys(b[m]);for(j=0,k=o.length;k>j;++j){var h=b[m][o[j]];a[h]=a[h]||[],a[h].forEach(function(a){n.push(a)})}b[m]=n}var p=Object.keys(c);for(d=0,e=p.length;e>d;++d){var h=p[d];if(a[h])for(j=0,k=a[h].length;k>j;++j){var m=a[h][j];b[m]=b[m].concat(c[h])}}var q={};for(l=Object.keys(b),d=0,e=l.length;e>d;++d){var m=l[d],r=b[m];for(j=0,k=r.length;k>j;++j)q[r[j]]=(q[r[j]]||[]).concat(m)}var s={},t=[];for(d=0,e=this._items.length;e>d;++d){var u=d;if(q[d])for(u=null,j=0,k=this._items.length;k>j;++j)if(s[j]!==!0){q[j]||(q[j]=[]);for(var v=q[j].length,w=0,x=0,y=v;y>x;++x)t.indexOf(q[j][x])>=0&&++w;if(w===v){u=j;break}}null!==u&&(u=u.toString(),s[u]=!0,t.push(u))}if(t.length!==this._items.length)return new Error("Invalid dependencies");var z={};this._items.forEach(function(a){z[a.seq]=a});var A=[];this._items=t.map(function(a){var b=z[a];return A.push(b.node),b}),this.nodes=A}},{hoek:16}],23:[function(a,b,c){},{}],24:[function(a,b,c){function d(a,b,c){if(!(this instanceof d))return new d(a,b,c);var e,f=typeof a;if("number"===f)e=a>0?a>>>0:0;else if("string"===f)"base64"===b&&(a=C(a)),e=d.byteLength(a,b);else{if("object"!==f||null===a)throw new Error("First argument needs to be a number, array or string.");"Buffer"===a.type&&E(a.data)&&(a=a.data),e=+a.length>0?Math.floor(+a.length):0}var g;T?g=d._augment(new Uint8Array(e)):(g=this,g.length=e,g._isBuffer=!0);var h;if(T&&"number"==typeof a.byteLength)g._set(a);else if(F(a))if(d.isBuffer(a))for(h=0;e>h;h++)g[h]=a.readUInt8(h);else for(h=0;e>h;h++)g[h]=(a[h]%256+256)%256;else if("string"===f)g.write(a,0,b);else if("number"===f&&!T&&!c)for(h=0;e>h;h++)g[h]=0;return g}function e(a,b,c,d){c=Number(c)||0;var e=a.length-c;d?(d=Number(d),d>e&&(d=e)):d=e;var f=b.length;Q(f%2===0,"Invalid hex string"),d>f/2&&(d=f/2);for(var g=0;d>g;g++){var h=parseInt(b.substr(2*g,2),16);Q(!isNaN(h),"Invalid hex string"),a[c+g]=h}return g}function f(a,b,c,d){var e=L(H(b),a,c,d);return e}function g(a,b,c,d){var e=L(I(b),a,c,d);return e}function h(a,b,c,d){return g(a,b,c,d)}function i(a,b,c,d){var e=L(K(b),a,c,d);return e}function j(a,b,c,d){var e=L(J(b),a,c,d);return e}function k(a,b,c){return 0===b&&c===a.length?R.fromByteArray(a):R.fromByteArray(a.slice(b,c))}function l(a,b,c){var d="",e="";c=Math.min(a.length,c);for(var f=b;c>f;f++)a[f]<=127?(d+=M(e)+String.fromCharCode(a[f]),e=""):e+="%"+a[f].toString(16);return d+M(e)}function m(a,b,c){var d="";c=Math.min(a.length,c);for(var e=b;c>e;e++)d+=String.fromCharCode(a[e]);return d}function n(a,b,c){return m(a,b,c)}function o(a,b,c){var d=a.length;(!b||0>b)&&(b=0),(!c||0>c||c>d)&&(c=d);for(var e="",f=b;c>f;f++)e+=G(a[f]);return e}function p(a,b,c){for(var d=a.slice(b,c),e="",f=0;f=e)){var f;return c?(f=a[b],e>b+1&&(f|=a[b+1]<<8)):(f=a[b]<<8,e>b+1&&(f|=a[b+1])),f}}function r(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+3=e)){var f;return c?(e>b+2&&(f=a[b+2]<<16),e>b+1&&(f|=a[b+1]<<8),f|=a[b],e>b+3&&(f+=a[b+3]<<24>>>0)):(e>b+1&&(f=a[b+1]<<16),e>b+2&&(f|=a[b+2]<<8),e>b+3&&(f|=a[b+3]),f+=a[b]<<24>>>0),f}}function s(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+1=e)){var f=q(a,b,c,!0),g=32768&f;return g?-1*(65535-f+1):f}}function t(a,b,c,d){d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(void 0!==b&&null!==b,"missing offset"),Q(b+3=e)){var f=r(a,b,c,!0),g=2147483648&f;return g?-1*(4294967295-f+1):f}}function u(a,b,c,d){return d||(Q("boolean"==typeof c,"missing or invalid endian"),Q(b+3=f)){for(var g=0,h=Math.min(f-c,2);h>g;g++)a[c+g]=(b&255<<8*(d?g:1-g))>>>8*(d?g:1-g);return c+2}}function x(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f)){for(var g=0,h=Math.min(f-c,4);h>g;g++)a[c+g]=b>>>8*(d?g:3-g)&255;return c+4}}function y(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+1=f))return b>=0?w(a,b,c,d,e):w(a,65535+b+1,c,d,e),c+2}function z(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f))return b>=0?x(a,b,c,d,e):x(a,4294967295+b+1,c,d,e),c+4}function A(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+3=f))return S.write(a,b,c,d,23,4),c+4}function B(a,b,c,d,e){e||(Q(void 0!==b&&null!==b,"missing value"),Q("boolean"==typeof d,"missing or invalid endian"),Q(void 0!==c&&null!==c,"missing offset"),Q(c+7=f))return S.write(a,b,c,d,52,8),c+8}function C(a){for(a=D(a).replace(V,"");a.length%4!==0;)a+="=";return a}function D(a){return a.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function E(a){return(Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)})(a)}function F(a){return E(a)||d.isBuffer(a)||a&&"object"==typeof a&&"number"==typeof a.length}function G(a){return 16>a?"0"+a.toString(16):a.toString(16)}function H(a){for(var b=[],c=0;c=d)b.push(d);else{var e=c;d>=55296&&57343>=d&&c++;for(var f=encodeURIComponent(a.slice(e,c+1)).substr(1).split("%"),g=0;g>8,d=b%256,e.push(d),e.push(c);return e}function K(a){return R.toByteArray(a)}function L(a,b,c,d){for(var e=0;d>e&&!(e+c>=b.length||e>=a.length);e++)b[e+c]=a[e];return e}function M(a){try{return decodeURIComponent(a)}catch(b){return String.fromCharCode(65533)}}function N(a,b){Q("number"==typeof a,"cannot write a non-number as a number"),Q(a>=0,"specified a negative value for writing an unsigned value"),Q(b>=a,"value is larger than maximum value for type"),Q(Math.floor(a)===a,"value has a fractional component")}function O(a,b,c){Q("number"==typeof a,"cannot write a non-number as a number"),Q(b>=a,"value larger than maximum allowed value"),Q(a>=c,"value smaller than minimum allowed value"),Q(Math.floor(a)===a,"value has a fractional component")}function P(a,b,c){Q("number"==typeof a,"cannot write a non-number as a number"),Q(b>=a,"value larger than maximum allowed value"),Q(a>=c,"value smaller than minimum allowed value")}function Q(a,b){if(!a)throw new Error(b||"Failed assertion")}var R=a("base64-js"),S=a("ieee754");c.Buffer=d,c.SlowBuffer=d,c.INSPECT_MAX_BYTES=50,d.poolSize=8192;var T=function(){try{var a=new ArrayBuffer(0),b=new Uint8Array(a);return b.foo=function(){return 42},42===b.foo()&&"function"==typeof b.subarray&&0===new Uint8Array(1).subarray(1,1).byteLength}catch(c){return!1}}();d.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},d.isBuffer=function(a){return!(null==a||!a._isBuffer)},d.byteLength=function(a,b){var c;switch(a=a.toString(),b||"utf8"){case"hex":c=a.length/2;break;case"utf8":case"utf-8":c=H(a).length;break;case"ascii":case"binary":case"raw":c=a.length;break;case"base64":c=K(a).length;break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":c=2*a.length;break;default:throw new Error("Unknown encoding")}return c},d.concat=function(a,b){if(Q(E(a),"Usage: Buffer.concat(list[, length])"),0===a.length)return new d(0);if(1===a.length)return a[0];var c;if(void 0===b)for(b=0,c=0;cf&&a[f]===b[f];f++);return f!==g&&(c=a[f],e=b[f]),e>c?-1:c>e?1:0},d.prototype.write=function(a,b,c,d){if(isFinite(b))isFinite(c)||(d=c,c=void 0);else{var k=d;d=b,b=c,c=k}b=Number(b)||0;var l=this.length-b;c?(c=Number(c),c>l&&(c=l)):c=l,d=String(d||"utf8").toLowerCase();var m;switch(d){case"hex":m=e(this,a,b,c);break;case"utf8":case"utf-8":m=f(this,a,b,c);break;case"ascii":m=g(this,a,b,c);break;case"binary":m=h(this,a,b,c);break;case"base64":m=i(this,a,b,c);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":m=j(this,a,b,c);break;default:throw new Error("Unknown encoding")}return m},d.prototype.toString=function(a,b,c){var d=this;if(a=String(a||"utf8").toLowerCase(),b=Number(b)||0,c=void 0===c?d.length:Number(c),c===b)return"";var e;switch(a){case"hex":e=o(d,b,c);break;case"utf8":case"utf-8":e=l(d,b,c);break;case"ascii":e=m(d,b,c);break;case"binary":e=n(d,b,c);break;case"base64":e=k(d,b,c);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":e=p(d,b,c);break;default:throw new Error("Unknown encoding")}return e},d.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},d.prototype.equals=function(a){return Q(d.isBuffer(a),"Argument must be a Buffer"),0===d.compare(this,a)},d.prototype.compare=function(a){return Q(d.isBuffer(a),"Argument must be a Buffer"),d.compare(this,a)},d.prototype.copy=function(a,b,c,d){var e=this;if(c||(c=0),d||0===d||(d=this.length),b||(b=0),d!==c&&0!==a.length&&0!==e.length){Q(d>=c,"sourceEnd < sourceStart"),Q(b>=0&&b=0&&c=0&&d<=e.length,"sourceEnd out of bounds"),d>this.length&&(d=this.length),a.length-bf||!T)for(var g=0;f>g;g++)a[g+b]=this[g+c];else a._set(this.subarray(c,c+f),b)}},d.prototype.slice=function(a,b){var c=this.length;if(a=~~a,b=void 0===b?c:~~b,0>a?(a+=c,0>a&&(a=0)):a>c&&(a=c),0>b?(b+=c,0>b&&(b=0)):b>c&&(b=c),a>b&&(b=a),T)return d._augment(this.subarray(a,b));for(var e=b-a,f=new d(e,void 0,!0),g=0;e>g;g++)f[g]=this[g+a];return f},d.prototype.get=function(a){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(a)},d.prototype.set=function(a,b){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(a,b)},d.prototype.readUInt8=function(a,b){return b||(Q(void 0!==a&&null!==a,"missing offset"),Q(a=this.length?void 0:this[a]},d.prototype.readUInt16LE=function(a,b){return q(this,a,!0,b)},d.prototype.readUInt16BE=function(a,b){return q(this,a,!1,b)},d.prototype.readUInt32LE=function(a,b){return r(this,a,!0,b)},d.prototype.readUInt32BE=function(a,b){return r(this,a,!1,b)},d.prototype.readInt8=function(a,b){if(b||(Q(void 0!==a&&null!==a,"missing offset"),Q(a=this.length)){var c=128&this[a];return c?-1*(255-this[a]+1):this[a]}},d.prototype.readInt16LE=function(a,b){return s(this,a,!0,b)},d.prototype.readInt16BE=function(a,b){return s(this,a,!1,b)},d.prototype.readInt32LE=function(a,b){return t(this,a,!0,b)},d.prototype.readInt32BE=function(a,b){return t(this,a,!1,b)},d.prototype.readFloatLE=function(a,b){return u(this,a,!0,b)},d.prototype.readFloatBE=function(a,b){return u(this,a,!1,b)},d.prototype.readDoubleLE=function(a,b){return v(this,a,!0,b)},d.prototype.readDoubleBE=function(a,b){return v(this,a,!1,b)},d.prototype.writeUInt8=function(a,b,c){return c||(Q(void 0!==a&&null!==a,"missing value"),Q(void 0!==b&&null!==b,"missing offset"),Q(b=this.length?void 0:(this[b]=a,b+1)},d.prototype.writeUInt16LE=function(a,b,c){return w(this,a,b,!0,c)},d.prototype.writeUInt16BE=function(a,b,c){return w(this,a,b,!1,c)},d.prototype.writeUInt32LE=function(a,b,c){return x(this,a,b,!0,c)},d.prototype.writeUInt32BE=function(a,b,c){return x(this,a,b,!1,c)},d.prototype.writeInt8=function(a,b,c){return c||(Q(void 0!==a&&null!==a,"missing value"),Q(void 0!==b&&null!==b,"missing offset"),Q(b=this.length?void 0:(a>=0?this.writeUInt8(a,b,c):this.writeUInt8(255+a+1,b,c),b+1)},d.prototype.writeInt16LE=function(a,b,c){return y(this,a,b,!0,c)},d.prototype.writeInt16BE=function(a,b,c){return y(this,a,b,!1,c)},d.prototype.writeInt32LE=function(a,b,c){return z(this,a,b,!0,c)},d.prototype.writeInt32BE=function(a,b,c){return z(this,a,b,!1,c)},d.prototype.writeFloatLE=function(a,b,c){return A(this,a,b,!0,c)},d.prototype.writeFloatBE=function(a,b,c){return A(this,a,b,!1,c)},d.prototype.writeDoubleLE=function(a,b,c){return B(this,a,b,!0,c)},d.prototype.writeDoubleBE=function(a,b,c){return B(this,a,b,!1,c)},d.prototype.fill=function(a,b,c){if(a||(a=0),b||(b=0),c||(c=this.length),Q(c>=b,"end < start"),c!==b&&0!==this.length){Q(b>=0&&b=0&&c<=this.length,"end out of bounds");var d;if("number"==typeof a)for(d=b;c>d;d++)this[d]=a;else{var e=H(a.toString()),f=e.length;for(d=b;c>d;d++)this[d]=e[d%f]}return this}},d.prototype.inspect=function(){for(var a=[],b=this.length,d=0;b>d;d++)if(a[d]=G(this[d]),d===c.INSPECT_MAX_BYTES){a[d+1]="...";break}return""},d.prototype.toArrayBuffer=function(){if("undefined"!=typeof Uint8Array){if(T)return new d(this).buffer;for(var a=new Uint8Array(this.length),b=0,c=a.length;c>b;b+=1)a[b]=this[b];return a.buffer}throw new Error("Buffer.toArrayBuffer not supported in this browser")};var U=d.prototype;d._augment=function(a){return a._isBuffer=!0,a._get=a.get,a._set=a.set,a.get=U.get,a.set=U.set,a.write=U.write,a.toString=U.toString,a.toLocaleString=U.toString,a.toJSON=U.toJSON,a.equals=U.equals,a.compare=U.compare,a.copy=U.copy,a.slice=U.slice,a.readUInt8=U.readUInt8,a.readUInt16LE=U.readUInt16LE,a.readUInt16BE=U.readUInt16BE,a.readUInt32LE=U.readUInt32LE,a.readUInt32BE=U.readUInt32BE,a.readInt8=U.readInt8,a.readInt16LE=U.readInt16LE,a.readInt16BE=U.readInt16BE,a.readInt32LE=U.readInt32LE,a.readInt32BE=U.readInt32BE,a.readFloatLE=U.readFloatLE,a.readFloatBE=U.readFloatBE,a.readDoubleLE=U.readDoubleLE,a.readDoubleBE=U.readDoubleBE,a.writeUInt8=U.writeUInt8,a.writeUInt16LE=U.writeUInt16LE,a.writeUInt16BE=U.writeUInt16BE,a.writeUInt32LE=U.writeUInt32LE,a.writeUInt32BE=U.writeUInt32BE,a.writeInt8=U.writeInt8,a.writeInt16LE=U.writeInt16LE,a.writeInt16BE=U.writeInt16BE,a.writeInt32LE=U.writeInt32LE,a.writeInt32BE=U.writeInt32BE,a.writeFloatLE=U.writeFloatLE,a.writeFloatBE=U.writeFloatBE,a.writeDoubleLE=U.writeDoubleLE,a.writeDoubleBE=U.writeDoubleBE,a.fill=U.fill,a.inspect=U.inspect,a.toArrayBuffer=U.toArrayBuffer,a};var V=/[^+\/0-9A-z]/g},{"base64-js":25,ieee754:26}],25:[function(a,b,c){var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";!function(a){"use strict";function b(a){var b=a.charCodeAt(0);return b===g?62:b===h?63:i>b?-1:i+10>b?b-i+26+26:k+26>b?b-k:j+26>b?b-j+26:void 0}function c(a){function c(a){j[l++]=a}var d,e,g,h,i,j;if(a.length%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var k=a.length;i="="===a.charAt(k-2)?2:"="===a.charAt(k-1)?1:0,j=new f(3*a.length/4-i),g=i>0?a.length-4:a.length;var l=0;for(d=0,e=0;g>d;d+=4,e+=3)h=b(a.charAt(d))<<18|b(a.charAt(d+1))<<12|b(a.charAt(d+2))<<6|b(a.charAt(d+3)),c((16711680&h)>>16),c((65280&h)>>8),c(255&h);return 2===i?(h=b(a.charAt(d))<<2|b(a.charAt(d+1))>>4,c(255&h)):1===i&&(h=b(a.charAt(d))<<10|b(a.charAt(d+1))<<4|b(a.charAt(d+2))>>2,c(h>>8&255),c(255&h)),j}function e(a){function b(a){return d.charAt(a)}function c(a){return b(a>>18&63)+b(a>>12&63)+b(a>>6&63)+b(63&a)}var e,f,g,h=a.length%3,i="";for(e=0,g=a.length-h;g>e;e+=3)f=(a[e]<<16)+(a[e+1]<<8)+a[e+2],i+=c(f);switch(h){case 1:f=a[a.length-1],i+=b(f>>2),i+=b(f<<4&63),i+="==";break;case 2:f=(a[a.length-2]<<8)+a[a.length-1],i+=b(f>>10),i+=b(f>>4&63),i+=b(f<<2&63),i+="="}return i}var f="undefined"!=typeof Uint8Array?Uint8Array:Array,g="+".charCodeAt(0),h="/".charCodeAt(0),i="0".charCodeAt(0),j="a".charCodeAt(0),k="A".charCodeAt(0);a.toByteArray=c,a.fromByteArray=e}("undefined"==typeof c?this.base64js={}:c)},{}],26:[function(a,b,c){c.read=function(a,b,c,d,e){var f,g,h=8*e-d-1,i=(1<>1,k=-7,l=c?e-1:0,m=c?-1:1,n=a[b+l];for(l+=m,f=n&(1<<-k)-1,n>>=-k,k+=h;k>0;f=256*f+a[b+l],l+=m,k-=8);for(g=f&(1<<-k)-1,f>>=-k,k+=d;k>0;g=256*g+a[b+l],l+=m,k-=8);if(0===f)f=1-j;else{if(f===i)return g?NaN:(n?-1:1)*(1/0);g+=Math.pow(2,d),f-=j}return(n?-1:1)*g*Math.pow(2,f-d)},c.write=function(a,b,c,d,e,f){var g,h,i,j=8*f-e-1,k=(1<>1,m=23===e?Math.pow(2,-24)-Math.pow(2,-77):0,n=d?0:f-1,o=d?1:-1,p=0>b||0===b&&0>1/b?1:0;for(b=Math.abs(b),isNaN(b)||b===1/0?(h=isNaN(b)?1:0,g=k):(g=Math.floor(Math.log(b)/Math.LN2),b*(i=Math.pow(2,-g))<1&&(g--,i*=2),b+=g+l>=1?m/i:m*Math.pow(2,1-l),b*i>=2&&(g++,i/=2),g+l>=k?(h=0,g=k):g+l>=1?(h=(b*i-1)*Math.pow(2,e),g+=l):(h=b*Math.pow(2,l-1)*Math.pow(2,e),g=0));e>=8;a[c+n]=255&h,n+=o,h/=256,e-=8);for(g=g<0;a[c+n]=255&g,n+=o,g/=256,j-=8);a[c+n-o]|=128*p}},{}],27:[function(a,b,c){"function"==typeof Object.create?b.exports=function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})}:b.exports=function(a,b){a.super_=b;var c=function(){};c.prototype=b.prototype,a.prototype=new c,a.prototype.constructor=a}},{}],28:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a,b){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("_process"))},{_process:29}],29:[function(a,b,c){function d(){}var e=b.exports={};e.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),e.title="browser",e.browser=!0,e.env={},e.argv=[],e.on=d,e.addListener=d,e.once=d,e.off=d,e.removeListener=d,e.removeAllListeners=d,e.emit=d,e.binding=function(a){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(a){throw new Error("process.chdir is not supported")}},{}],30:[function(a,b,c){b.exports=function(a){return a&&"object"==typeof a&&"function"==typeof a.copy&&"function"==typeof a.fill&&"function"==typeof a.readUInt8}},{}],31:[function(a,b,c){(function(b,d){function e(a,b){var d={seen:[],stylize:g};return arguments.length>=3&&(d.depth=arguments[2]),arguments.length>=4&&(d.colors=arguments[3]),p(b)?d.showHidden=b:b&&c._extend(d,b),v(d.showHidden)&&(d.showHidden=!1),v(d.depth)&&(d.depth=2),v(d.colors)&&(d.colors=!1),v(d.customInspect)&&(d.customInspect=!0),d.colors&&(d.stylize=f),i(d,a,d.depth)}function f(a,b){var c=e.styles[b];return c?"["+e.colors[c][0]+"m"+a+"["+e.colors[c][1]+"m":a}function g(a,b){return a}function h(a){var b={};return a.forEach(function(a,c){b[a]=!0}),b}function i(a,b,d){if(a.customInspect&&b&&A(b.inspect)&&b.inspect!==c.inspect&&(!b.constructor||b.constructor.prototype!==b)){var e=b.inspect(d,a);return t(e)||(e=i(a,e,d)),e}var f=j(a,b);if(f)return f;var g=Object.keys(b),p=h(g);if(a.showHidden&&(g=Object.getOwnPropertyNames(b)),z(b)&&(g.indexOf("message")>=0||g.indexOf("description")>=0))return k(b);if(0===g.length){if(A(b)){var q=b.name?": "+b.name:"";return a.stylize("[Function"+q+"]","special")}if(w(b))return a.stylize(RegExp.prototype.toString.call(b),"regexp");if(y(b))return a.stylize(Date.prototype.toString.call(b),"date");if(z(b))return k(b)}var r="",s=!1,u=["{","}"];if(o(b)&&(s=!0,u=["[","]"]),A(b)){var v=b.name?": "+b.name:"";r=" [Function"+v+"]"}if(w(b)&&(r=" "+RegExp.prototype.toString.call(b)),y(b)&&(r=" "+Date.prototype.toUTCString.call(b)),z(b)&&(r=" "+k(b)),0===g.length&&(!s||0==b.length))return u[0]+r+u[1];if(0>d)return w(b)?a.stylize(RegExp.prototype.toString.call(b),"regexp"):a.stylize("[Object]","special");a.seen.push(b);var x;return x=s?l(a,b,d,p,g):g.map(function(c){return m(a,b,d,p,c,s)}),a.seen.pop(),n(x,r,u)}function j(a,b){if(v(b))return a.stylize("undefined","undefined");if(t(b)){var c="'"+JSON.stringify(b).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return a.stylize(c,"string")}return s(b)?a.stylize(""+b,"number"):p(b)?a.stylize(""+b,"boolean"):q(b)?a.stylize("null","null"):void 0}function k(a){return"["+Error.prototype.toString.call(a)+"]"}function l(a,b,c,d,e){for(var f=[],g=0,h=b.length;h>g;++g)F(b,String(g))?f.push(m(a,b,c,d,String(g),!0)):f.push("");return e.forEach(function(e){e.match(/^\d+$/)||f.push(m(a,b,c,d,e,!0))}),f}function m(a,b,c,d,e,f){var g,h,j;if(j=Object.getOwnPropertyDescriptor(b,e)||{value:b[e]},j.get?h=j.set?a.stylize("[Getter/Setter]","special"):a.stylize("[Getter]","special"):j.set&&(h=a.stylize("[Setter]","special")),F(d,e)||(g="["+e+"]"),h||(a.seen.indexOf(j.value)<0?(h=q(c)?i(a,j.value,null):i(a,j.value,c-1),h.indexOf("\n")>-1&&(h=f?h.split("\n").map(function(a){return" "+a}).join("\n").substr(2):"\n"+h.split("\n").map(function(a){return" "+a}).join("\n"))):h=a.stylize("[Circular]","special")),v(g)){if(f&&e.match(/^\d+$/))return h;g=JSON.stringify(""+e),g.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(g=g.substr(1,g.length-2),g=a.stylize(g,"name")):(g=g.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),g=a.stylize(g,"string"))}return g+": "+h}function n(a,b,c){var d=0,e=a.reduce(function(a,b){return d++,b.indexOf("\n")>=0&&d++,a+b.replace(/\u001b\[\d\d?m/g,"").length+1},0);return e>60?c[0]+(""===b?"":b+"\n ")+" "+a.join(",\n ")+" "+c[1]:c[0]+b+" "+a.join(", ")+" "+c[1]}function o(a){return Array.isArray(a)}function p(a){return"boolean"==typeof a}function q(a){return null===a}function r(a){return null==a}function s(a){return"number"==typeof a}function t(a){return"string"==typeof a}function u(a){return"symbol"==typeof a}function v(a){return void 0===a}function w(a){return x(a)&&"[object RegExp]"===C(a)}function x(a){return"object"==typeof a&&null!==a}function y(a){return x(a)&&"[object Date]"===C(a)}function z(a){return x(a)&&("[object Error]"===C(a)||a instanceof Error)}function A(a){return"function"==typeof a}function B(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||"undefined"==typeof a}function C(a){return Object.prototype.toString.call(a)}function D(a){return 10>a?"0"+a.toString(10):a.toString(10)}function E(){var a=new Date,b=[D(a.getHours()),D(a.getMinutes()),D(a.getSeconds())].join(":");return[a.getDate(),J[a.getMonth()],b].join(" ")}function F(a,b){return Object.prototype.hasOwnProperty.call(a,b)}var G=/%[sdj%]/g;c.format=function(a){if(!t(a)){for(var b=[],c=0;c=f)return a;switch(a){case"%s":return String(d[c++]);case"%d":return Number(d[c++]);case"%j":try{return JSON.stringify(d[c++])}catch(b){return"[Circular]"}default:return a}}),h=d[c];f>c;h=d[++c])g+=q(h)||!x(h)?" "+h:" "+e(h);return g},c.deprecate=function(a,e){function f(){if(!g){if(b.throwDeprecation)throw new Error(e);b.traceDeprecation?console.trace(e):console.error(e),g=!0}return a.apply(this,arguments)}if(v(d.process))return function(){return c.deprecate(a,e).apply(this,arguments)};if(b.noDeprecation===!0)return a;var g=!1;return f};var H,I={};c.debuglog=function(a){if(v(H)&&(H=b.env.NODE_DEBUG||""),a=a.toUpperCase(),!I[a])if(new RegExp("\\b"+a+"\\b","i").test(H)){var d=b.pid;I[a]=function(){var b=c.format.apply(c,arguments);console.error("%s %d: %s",a,d,b)}}else I[a]=function(){};return I[a]},c.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"},c.isArray=o,c.isBoolean=p,c.isNull=q,c.isNullOrUndefined=r,c.isNumber=s,c.isString=t,c.isSymbol=u,c.isUndefined=v,c.isRegExp=w,c.isObject=x,c.isDate=y,c.isError=z,c.isFunction=A, +c.isPrimitive=B,c.isBuffer=a("./support/isBuffer");var J=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];c.log=function(){console.log("%s - %s",E(),c.format.apply(c,arguments))},c.inherits=a("inherits"),c._extend=function(a,b){if(!b||!x(b))return a;for(var c=Object.keys(b),d=c.length;d--;)a[c[d]]=b[c[d]];return a}}).call(this,a("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":30,_process:29,inherits:27}],joi:[function(a,b,c){arguments[4][16][0].apply(c,arguments)},{"./lib":10}]},{},[])("joi")});var CryptoJS=CryptoJS||function(a,b){var c={},d=c.lib={},e=function(){},f=d.Base={extend:function(a){e.prototype=this;var b=new e;return a&&b.mixIn(a),b.hasOwnProperty("init")||(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var a=this.extend();return a.init.apply(a,arguments),a},init:function(){},mixIn:function(a){for(var b in a)a.hasOwnProperty(b)&&(this[b]=a[b]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},g=d.WordArray=f.extend({init:function(a,c){a=this.words=a||[],this.sigBytes=c!=b?c:4*a.length},toString:function(a){return(a||i).stringify(this)},concat:function(a){var b=this.words,c=a.words,d=this.sigBytes;if(a=a.sigBytes,this.clamp(),d%4)for(var e=0;a>e;e++)b[d+e>>>2]|=(c[e>>>2]>>>24-8*(e%4)&255)<<24-8*((d+e)%4);else if(65535e;e+=4)b[d+e>>>2]=c[e>>>2];else b.push.apply(b,c);return this.sigBytes+=a,this},clamp:function(){var b=this.words,c=this.sigBytes;b[c>>>2]&=4294967295<<32-8*(c%4),b.length=a.ceil(c/4)},clone:function(){var a=f.clone.call(this);return a.words=this.words.slice(0),a},random:function(b){for(var c=[],d=0;b>d;d+=4)c.push(4294967296*a.random()|0);return new g.init(c,b)}}),h=c.enc={},i=h.Hex={stringify:function(a){var b=a.words;a=a.sigBytes;for(var c=[],d=0;a>d;d++){var e=b[d>>>2]>>>24-8*(d%4)&255;c.push((e>>>4).toString(16)),c.push((15&e).toString(16))}return c.join("")},parse:function(a){for(var b=a.length,c=[],d=0;b>d;d+=2)c[d>>>3]|=parseInt(a.substr(d,2),16)<<24-4*(d%8);return new g.init(c,b/2)}},j=h.Latin1={stringify:function(a){var b=a.words;a=a.sigBytes;for(var c=[],d=0;a>d;d++)c.push(String.fromCharCode(b[d>>>2]>>>24-8*(d%4)&255));return c.join("")},parse:function(a){for(var b=a.length,c=[],d=0;b>d;d++)c[d>>>2]|=(255&a.charCodeAt(d))<<24-8*(d%4);return new g.init(c,b)}},k=h.Utf8={stringify:function(a){try{return decodeURIComponent(escape(j.stringify(a)))}catch(b){throw Error("Malformed UTF-8 data")}},parse:function(a){return j.parse(unescape(encodeURIComponent(a)))}},l=d.BufferedBlockAlgorithm=f.extend({reset:function(){this._data=new g.init,this._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=k.parse(a)),this._data.concat(a),this._nDataBytes+=a.sigBytes},_process:function(b){var c=this._data,d=c.words,e=c.sigBytes,f=this.blockSize,h=e/(4*f),h=b?a.ceil(h):a.max((0|h)-this._minBufferSize,0);if(b=h*f,e=a.min(4*b,e),b){for(var i=0;b>i;i+=f)this._doProcessBlock(d,i);i=d.splice(0,b),c.sigBytes-=e}return new g.init(i,e)},clone:function(){var a=f.clone.call(this);return a._data=this._data.clone(),a},_minBufferSize:0});d.Hasher=l.extend({cfg:f.extend(),init:function(a){this.cfg=this.cfg.extend(a),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(a){return this._append(a),this._process(),this},finalize:function(a){return a&&this._append(a),this._doFinalize()},blockSize:16,_createHelper:function(a){return function(b,c){return new a.init(c).finalize(b)}},_createHmacHelper:function(a){return function(b,c){return new m.HMAC.init(a,c).finalize(b)}}});var m=c.algo={};return c}(Math);if(function(a){function b(a,b,c,d,e,f,g){return a=a+(b&c|~b&d)+e+g,(a<>>32-f)+b}function c(a,b,c,d,e,f,g){return a=a+(b&d|c&~d)+e+g,(a<>>32-f)+b}function d(a,b,c,d,e,f,g){return a=a+(b^c^d)+e+g,(a<>>32-f)+b}function e(a,b,c,d,e,f,g){return a=a+(c^(b|~d))+e+g,(a<>>32-f)+b}for(var f=CryptoJS,g=f.lib,h=g.WordArray,i=g.Hasher,g=f.algo,j=[],k=0;64>k;k++)j[k]=4294967296*a.abs(a.sin(k+1))|0;g=g.MD5=i.extend({_doReset:function(){this._hash=new h.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(a,f){for(var g=0;16>g;g++){var h=f+g,i=a[h];a[h]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var g=this._hash.words,h=a[f+0],i=a[f+1],k=a[f+2],l=a[f+3],m=a[f+4],n=a[f+5],o=a[f+6],p=a[f+7],q=a[f+8],r=a[f+9],s=a[f+10],t=a[f+11],u=a[f+12],v=a[f+13],w=a[f+14],x=a[f+15],y=g[0],z=g[1],A=g[2],B=g[3],y=b(y,z,A,B,h,7,j[0]),B=b(B,y,z,A,i,12,j[1]),A=b(A,B,y,z,k,17,j[2]),z=b(z,A,B,y,l,22,j[3]),y=b(y,z,A,B,m,7,j[4]),B=b(B,y,z,A,n,12,j[5]),A=b(A,B,y,z,o,17,j[6]),z=b(z,A,B,y,p,22,j[7]),y=b(y,z,A,B,q,7,j[8]),B=b(B,y,z,A,r,12,j[9]),A=b(A,B,y,z,s,17,j[10]),z=b(z,A,B,y,t,22,j[11]),y=b(y,z,A,B,u,7,j[12]),B=b(B,y,z,A,v,12,j[13]),A=b(A,B,y,z,w,17,j[14]),z=b(z,A,B,y,x,22,j[15]),y=c(y,z,A,B,i,5,j[16]),B=c(B,y,z,A,o,9,j[17]),A=c(A,B,y,z,t,14,j[18]),z=c(z,A,B,y,h,20,j[19]),y=c(y,z,A,B,n,5,j[20]),B=c(B,y,z,A,s,9,j[21]),A=c(A,B,y,z,x,14,j[22]),z=c(z,A,B,y,m,20,j[23]),y=c(y,z,A,B,r,5,j[24]),B=c(B,y,z,A,w,9,j[25]),A=c(A,B,y,z,l,14,j[26]),z=c(z,A,B,y,q,20,j[27]),y=c(y,z,A,B,v,5,j[28]),B=c(B,y,z,A,k,9,j[29]),A=c(A,B,y,z,p,14,j[30]),z=c(z,A,B,y,u,20,j[31]),y=d(y,z,A,B,n,4,j[32]),B=d(B,y,z,A,q,11,j[33]),A=d(A,B,y,z,t,16,j[34]),z=d(z,A,B,y,w,23,j[35]),y=d(y,z,A,B,i,4,j[36]),B=d(B,y,z,A,m,11,j[37]),A=d(A,B,y,z,p,16,j[38]),z=d(z,A,B,y,s,23,j[39]),y=d(y,z,A,B,v,4,j[40]),B=d(B,y,z,A,h,11,j[41]),A=d(A,B,y,z,l,16,j[42]),z=d(z,A,B,y,o,23,j[43]),y=d(y,z,A,B,r,4,j[44]),B=d(B,y,z,A,u,11,j[45]),A=d(A,B,y,z,x,16,j[46]),z=d(z,A,B,y,k,23,j[47]),y=e(y,z,A,B,h,6,j[48]),B=e(B,y,z,A,p,10,j[49]),A=e(A,B,y,z,w,15,j[50]),z=e(z,A,B,y,n,21,j[51]),y=e(y,z,A,B,u,6,j[52]),B=e(B,y,z,A,l,10,j[53]),A=e(A,B,y,z,s,15,j[54]),z=e(z,A,B,y,i,21,j[55]),y=e(y,z,A,B,q,6,j[56]),B=e(B,y,z,A,x,10,j[57]),A=e(A,B,y,z,o,15,j[58]),z=e(z,A,B,y,v,21,j[59]),y=e(y,z,A,B,m,6,j[60]),B=e(B,y,z,A,t,10,j[61]),A=e(A,B,y,z,k,15,j[62]),z=e(z,A,B,y,r,21,j[63]);g[0]=g[0]+y|0,g[1]=g[1]+z|0,g[2]=g[2]+A|0,g[3]=g[3]+B|0},_doFinalize:function(){var b=this._data,c=b.words,d=8*this._nDataBytes,e=8*b.sigBytes;c[e>>>5]|=128<<24-e%32;var f=a.floor(d/4294967296);for(c[(e+64>>>9<<4)+15]=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8),c[(e+64>>>9<<4)+14]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8),b.sigBytes=4*(c.length+1),this._process(),b=this._hash,c=b.words,d=0;4>d;d++)e=c[d],c[d]=16711935&(e<<8|e>>>24)|4278255360&(e<<24|e>>>8);return b},clone:function(){var a=i.clone.call(this);return a._hash=this._hash.clone(),a}}),f.MD5=i._createHelper(g),f.HmacMD5=i._createHmacHelper(g)}(Math),!function(){var a=function(b){var c=new a.Index;return c.pipeline.add(a.trimmer,a.stopWordFilter,a.stemmer),b&&b.call(c,c),c};a.version="0.5.8",a.utils={},a.utils.warn=function(a){return function(b){a.console&&console.warn&&console.warn(b)}}(this),a.EventEmitter=function(){this.events={}},a.EventEmitter.prototype.addListener=function(){var a=Array.prototype.slice.call(arguments),b=a.pop(),c=a;if("function"!=typeof b)throw new TypeError("last argument must be a function");c.forEach(function(a){this.hasHandler(a)||(this.events[a]=[]),this.events[a].push(b)},this)},a.EventEmitter.prototype.removeListener=function(a,b){if(this.hasHandler(a)){var c=this.events[a].indexOf(b);this.events[a].splice(c,1),this.events[a].length||delete this.events[a]}},a.EventEmitter.prototype.emit=function(a){if(this.hasHandler(a)){var b=Array.prototype.slice.call(arguments,1);this.events[a].forEach(function(a){a.apply(void 0,b)})}},a.EventEmitter.prototype.hasHandler=function(a){return a in this.events},a.tokenizer=function(a){return arguments.length&&null!=a&&void 0!=a?Array.isArray(a)?a.map(function(a){return a.toLowerCase()}):a.toString().trim().toLowerCase().split(/[\s\-]+/):[]},a.Pipeline=function(){this._stack=[]},a.Pipeline.registeredFunctions={},a.Pipeline.registerFunction=function(b,c){c in this.registeredFunctions&&a.utils.warn("Overwriting existing registered function: "+c),b.label=c,a.Pipeline.registeredFunctions[b.label]=b},a.Pipeline.warnIfFunctionNotRegistered=function(b){var c=b.label&&b.label in this.registeredFunctions;c||a.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",b)},a.Pipeline.load=function(b){var c=new a.Pipeline;return b.forEach(function(b){var d=a.Pipeline.registeredFunctions[b];if(!d)throw new Error("Cannot load un-registered function: "+b);c.add(d)}),c},a.Pipeline.prototype.add=function(){var b=Array.prototype.slice.call(arguments);b.forEach(function(b){a.Pipeline.warnIfFunctionNotRegistered(b),this._stack.push(b)},this)},a.Pipeline.prototype.after=function(b,c){a.Pipeline.warnIfFunctionNotRegistered(c);var d=this._stack.indexOf(b)+1;this._stack.splice(d,0,c)},a.Pipeline.prototype.before=function(b,c){a.Pipeline.warnIfFunctionNotRegistered(c);var d=this._stack.indexOf(b);this._stack.splice(d,0,c)},a.Pipeline.prototype.remove=function(a){var b=this._stack.indexOf(a);this._stack.splice(b,1)},a.Pipeline.prototype.run=function(a){for(var b=[],c=a.length,d=this._stack.length,e=0;c>e;e++){for(var f=a[e],g=0;d>g&&(f=this._stack[g](f,e,a),void 0!==f);g++);void 0!==f&&b.push(f)}return b},a.Pipeline.prototype.reset=function(){this._stack=[]},a.Pipeline.prototype.toJSON=function(){return this._stack.map(function(b){return a.Pipeline.warnIfFunctionNotRegistered(b),b.label})},a.Vector=function(){this._magnitude=null,this.list=void 0,this.length=0},a.Vector.Node=function(a,b,c){this.idx=a,this.val=b,this.next=c},a.Vector.prototype.insert=function(b,c){this._magnitude=void 0;var d=this.list;if(!d)return this.list=new a.Vector.Node(b,c,d),this.length++;if(bc.idx?c=c.next:(d+=b.val*c.val,b=b.next,c=c.next);return d},a.Vector.prototype.similarity=function(a){return this.dot(a)/(this.magnitude()*a.magnitude())},a.SortedSet=function(){this.length=0,this.elements=[]},a.SortedSet.load=function(a){var b=new this;return b.elements=a,b.length=a.length,b},a.SortedSet.prototype.add=function(){var a,b;for(a=0;a=d?f===a?e:-1:a>f?this.indexOf(a,e,c):f>a?this.indexOf(a,b,e):f===a?e:void 0},a.SortedSet.prototype.locationFor=function(a,b,c){var b=b||0,c=c||this.elements.length,d=c-b,e=b+Math.floor(d/2),f=this.elements[e];if(1>=d){if(f>a)return e;if(a>f)return e+1}return a>f?this.locationFor(a,e,c):f>a?this.locationFor(a,b,e):void 0},a.SortedSet.prototype.intersect=function(b){for(var c=new a.SortedSet,d=0,e=0,f=this.length,g=b.length,h=this.elements,i=b.elements;!(d>f-1||e>g-1);)h[d]!==i[e]?h[d]i[e]&&e++:(c.add(h[d]),d++,e++);return c},a.SortedSet.prototype.clone=function(){var b=new a.SortedSet;return b.elements=this.toArray(),b.length=b.elements.length,b},a.SortedSet.prototype.union=function(a){var b,c,d;return this.length>=a.length?(b=this,c=a):(b=a,c=this),d=b.clone(),d.add.apply(d,c.toArray()),d},a.SortedSet.prototype.toJSON=function(){return this.toArray()},a.Index=function(){this._fields=[],this._ref="id",this.pipeline=new a.Pipeline,this.documentStore=new a.Store,this.tokenStore=new a.TokenStore,this.corpusTokens=new a.SortedSet,this.eventEmitter=new a.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},a.Index.prototype.on=function(){var a=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,a)},a.Index.prototype.off=function(a,b){return this.eventEmitter.removeListener(a,b)},a.Index.load=function(b){b.version!==a.version&&a.utils.warn("version mismatch: current "+a.version+" importing "+b.version);var c=new this;return c._fields=b.fields,c._ref=b.ref,c.documentStore=a.Store.load(b.documentStore),c.tokenStore=a.TokenStore.load(b.tokenStore),c.corpusTokens=a.SortedSet.load(b.corpusTokens),c.pipeline=a.Pipeline.load(b.pipeline),c},a.Index.prototype.field=function(a,b){var b=b||{},c={name:a,boost:b.boost||1};return this._fields.push(c),this},a.Index.prototype.ref=function(a){return this._ref=a,this},a.Index.prototype.add=function(b,c){var d={},e=new a.SortedSet,f=b[this._ref],c=void 0===c?!0:c;this._fields.forEach(function(c){var f=this.pipeline.run(a.tokenizer(b[c.name]));d[c.name]=f,a.SortedSet.prototype.add.apply(e,f)},this),this.documentStore.set(f,e),a.SortedSet.prototype.add.apply(this.corpusTokens,e.toArray());for(var g=0;g0&&(d=1+Math.log(this.tokenStore.length/c)),this._idfCache[b]=d},a.Index.prototype.search=function(b){var c=this.pipeline.run(a.tokenizer(b)),d=new a.Vector,e=[],f=this._fields.reduce(function(a,b){return a+b.boost},0),g=c.some(function(a){return this.tokenStore.has(a)},this);if(!g)return[];c.forEach(function(b,c,g){var h=1/g.length*this._fields.length*f,i=this,j=this.tokenStore.expand(b).reduce(function(c,e){var f=i.corpusTokens.indexOf(e),g=i.idf(e),j=1,k=new a.SortedSet;if(e!==b){var l=Math.max(3,e.length-b.length);j=1/Math.log(l)}return f>-1&&d.insert(f,h*g*j),Object.keys(i.tokenStore.get(e)).forEach(function(a){k.add(a)}),c.union(k)},new a.SortedSet);e.push(j)},this);var h=e.reduce(function(a,b){return a.intersect(b)});return h.map(function(a){return{ref:a,score:d.similarity(this.documentVector(a))}},this).sort(function(a,b){return b.score-a.score})},a.Index.prototype.documentVector=function(b){for(var c=this.documentStore.get(b),d=c.length,e=new a.Vector,f=0;d>f;f++){var g=c.elements[f],h=this.tokenStore.get(g)[b].tf,i=this.idf(g);e.insert(this.corpusTokens.indexOf(g),h*i)}return e},a.Index.prototype.toJSON=function(){return{version:a.version,fields:this._fields,ref:this._ref,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},a.Index.prototype.use=function(a){var b=Array.prototype.slice.call(arguments,1);b.unshift(this),a.apply(this,b)},a.Store=function(){this.store={},this.length=0},a.Store.load=function(b){var c=new this;return c.length=b.length,c.store=Object.keys(b.store).reduce(function(c,d){return c[d]=a.SortedSet.load(b.store[d]),c},{}),c},a.Store.prototype.set=function(a,b){this.has(a)||this.length++,this.store[a]=b},a.Store.prototype.get=function(a){return this.store[a]},a.Store.prototype.has=function(a){return a in this.store},a.Store.prototype.remove=function(a){this.has(a)&&(delete this.store[a],this.length--)},a.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},a.stemmer=function(){var a={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},b={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},c="[^aeiou]",d="[aeiouy]",e=c+"[^aeiouy]*",f=d+"[aeiou]*",g="^("+e+")?"+f+e,h="^("+e+")?"+f+e+"("+f+")?$",i="^("+e+")?"+f+e+f+e,j="^("+e+")?"+d,k=new RegExp(g),l=new RegExp(i),m=new RegExp(h),n=new RegExp(j),o=/^(.+?)(ss|i)es$/,p=/^(.+?)([^s])s$/,q=/^(.+?)eed$/,r=/^(.+?)(ed|ing)$/,s=/.$/,t=/(at|bl|iz)$/,u=new RegExp("([^aeiouylsz])\\1$"),v=new RegExp("^"+e+d+"[^aeiouwxy]$"),w=/^(.+?[^aeiou])y$/,x=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,y=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,z=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,A=/^(.+?)(s|t)(ion)$/,B=/^(.+?)e$/,C=/ll$/,D=new RegExp("^"+e+d+"[^aeiouwxy]$"),E=function(c){var d,e,f,g,h,i,j;if(c.length<3)return c;if(f=c.substr(0,1),"y"==f&&(c=f.toUpperCase()+c.substr(1)),g=o,h=p,g.test(c)?c=c.replace(g,"$1$2"):h.test(c)&&(c=c.replace(h,"$1$2")),g=q,h=r,g.test(c)){var E=g.exec(c);g=k,g.test(E[1])&&(g=s,c=c.replace(g,""))}else if(h.test(c)){var E=h.exec(c);d=E[1],h=n,h.test(d)&&(c=d,h=t,i=u,j=v,h.test(c)?c+="e":i.test(c)?(g=s,c=c.replace(g,"")):j.test(c)&&(c+="e"))}if(g=w,g.test(c)){var E=g.exec(c);d=E[1],c=d+"i"}if(g=x,g.test(c)){var E=g.exec(c);d=E[1],e=E[2],g=k,g.test(d)&&(c=d+a[e])}if(g=y,g.test(c)){var E=g.exec(c);d=E[1],e=E[2],g=k,g.test(d)&&(c=d+b[e])}if(g=z,h=A,g.test(c)){var E=g.exec(c);d=E[1],g=l,g.test(d)&&(c=d)}else if(h.test(c)){var E=h.exec(c);d=E[1]+E[2],h=l,h.test(d)&&(c=d)}if(g=B,g.test(c)){var E=g.exec(c);d=E[1],g=l,h=m,i=D,(g.test(d)||h.test(d)&&!i.test(d))&&(c=d)}return g=C,h=l,g.test(c)&&h.test(c)&&(g=s,c=c.replace(g,"")),"y"==f&&(c=f.toLowerCase()+c.substr(1)),c};return E}(),a.Pipeline.registerFunction(a.stemmer,"stemmer"),a.stopWordFilter=function(b){return-1===a.stopWordFilter.stopWords.indexOf(b)?b:void 0},a.stopWordFilter.stopWords=new a.SortedSet,a.stopWordFilter.stopWords.length=119,a.stopWordFilter.stopWords.elements=["","a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"],a.Pipeline.registerFunction(a.stopWordFilter,"stopWordFilter"),a.trimmer=function(a){return a.replace(/^\W+/,"").replace(/\W+$/,"")},a.Pipeline.registerFunction(a.trimmer,"trimmer"),a.TokenStore=function(){this.root={docs:{}},this.length=0},a.TokenStore.load=function(a){var b=new this;return b.root=a.root,b.length=a.length,b},a.TokenStore.prototype.add=function(a,b,c){var c=c||this.root,d=a[0],e=a.slice(1);return d in c||(c[d]={docs:{}}),0===e.length?(c[d].docs[b.ref]=b,void(this.length+=1)):this.add(e,b,c[d])},a.TokenStore.prototype.has=function(a){if(!a)return!1;for(var b=this.root,c=0;ca;a++)this.events[arguments[a]]=[]},b.prototype.listenTo=function(a,b,c){this.removeListener(a,b,c),a.events[b].push({handler:c,scope:this})},b.prototype.addListener=function(a,b,c){this.removeListener(this,a,b),this.events[a].push({handler:b,scope:c})},b.prototype.removeListener=function(a,b,c){if(a&&a.events)for(a=a.events[b],b=a.length-1;b>=0;b--)a[b].handler===c&&a.splice(b,1)},b.prototype.fire=function(a,b){for(var c=this.events[a],d=0,e=c.length;e>d;d++){var f=c[d];f.handler.call(f.scope,b)}});for(var c in a)b.prototype[c]=a[c];return b},AmCharts.addChart=function(a){AmCharts.charts.push(a)},AmCharts.removeChart=function(a){for(var b=AmCharts.charts,c=b.length-1;c>=0;c--)b[c]==a&&b.splice(c,1)},AmCharts.isModern=!0,AmCharts.getIEVersion=function(){var a=0;if("Microsoft Internet Explorer"==navigator.appName){var b=navigator.userAgent,c=/MSIE ([0-9]{1,}[.0-9]{0,})/;null!=c.exec(b)&&(a=parseFloat(RegExp.$1))}else"Netscape"==navigator.appName&&(b=navigator.userAgent,c=/Trident\/.*rv:([0-9]{1,}[.0-9]{0,})/,null!=c.exec(b)&&(a=parseFloat(RegExp.$1)));return a},AmCharts.applyLang=function(a,b){var c=AmCharts.translations;b.dayNames=AmCharts.extend({},AmCharts.dayNames),b.shortDayNames=AmCharts.extend({},AmCharts.shortDayNames),b.monthNames=AmCharts.extend({},AmCharts.monthNames),b.shortMonthNames=AmCharts.extend({},AmCharts.shortMonthNames),c&&(c=c[a])&&(AmCharts.lang=c,c.monthNames&&(b.dayNames=AmCharts.extend({},c.dayNames),b.shortDayNames=AmCharts.extend({},c.shortDayNames),b.monthNames=AmCharts.extend({},c.monthNames),b.shortMonthNames=AmCharts.extend({},c.shortMonthNames)))},AmCharts.IEversion=AmCharts.getIEVersion(),9>AmCharts.IEversion&&0=0;c--)a[c]==b&&a.splice(c,1)},AmCharts.isInArray=function(a,b){for(var c=0;c"),i>10)return j;if(j){var l=j.getBBox();if(l.width>h){l=Math.ceil(l.width/h),j.remove();for(var j=[],m=0;-1<(index=b.indexOf(" ",m));)j.push(index),m=index+1;Math.round(b.length/2);for(var n,m=0;mm;m++)n=Math.round(b.length/l*m),b=b.substr(0,n)+k+b.substr(n);return AmCharts.text(a,b,c,d,e,f,g)}return AmCharts.wrappedText(a,b,c,d,e,f,g,h,i+1)}return j}},AmCharts.getStyle=function(a,b){var c="";return document.defaultView&&document.defaultView.getComputedStyle?c=document.defaultView.getComputedStyle(a,"").getPropertyValue(b):a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),c=a.currentStyle[b]),c},AmCharts.removePx=function(a){return void 0!=a?Number(a.substring(0,a.length-2)):void 0},AmCharts.getURL=function(a,b){if(a)if("_self"!=b&&b)if("_top"==b&&window.top)window.top.location.href=a;else if("_parent"==b&&window.parent)window.parent.location.href=a;else if("_blank"==b)window.open(a);else{var c=document.getElementsByName(b)[0];c?c.src=a:(c=AmCharts.windows[b])&&c.opener&&!c.opener.closed?c.location.href=a:AmCharts.windows[b]=window.open(a)}else window.location.href=a},AmCharts.ifArray=function(a){return a&&00){var f;for(f=0;e>f;f++){var g=d[f];g&&g[a]&&g[a]()}}}}},AmCharts.toNumber=function(a){return"number"==typeof a?a:Number(String(a).replace(/[^0-9\-.]+/g,""))},AmCharts.toColor=function(a){if(""!==a&&void 0!==a)if(-1!=a.indexOf(",")){a=a.split(",");var b;for(b=0;bc&&(b=c),d=Number(a),-1!=a.indexOf("!")&&(d=b-Number(a.substr(1))),-1!=a.indexOf("%")&&(d=b*Number(a.substr(0,a.length-1))/100)),d},AmCharts.fitToBounds=function(a,b,c){return b>a&&(a=b),a>c&&(a=c),a},AmCharts.isDefined=function(a){return void 0===a?!1:!0},AmCharts.stripNumbers=function(a){return a.replace(/[0-9]+/g,"")},AmCharts.roundTo=function(a,b){if(0>b)return a;var c=Math.pow(10,b);return Math.round(a*c)/c},AmCharts.toFixed=function(a,b){var c=String(Math.round(a*Math.pow(10,b)));if(b>0){var d=c.length;if(b>d){var e;for(e=0;b-d>e;e++)c="0"+c}return d=c.substring(0,c.length-b),""===d&&(d=0),d+"."+c.substring(c.length-b,c.length)}return String(c)},AmCharts.formatDuration=function(a,b,c,d,e,f){var g=AmCharts.intervals,h=f.decimalSeparator;if(a>=g[b].contains){var i=a-Math.floor(a/g[b].contains)*g[b].contains;return"ss"==b&&(i=AmCharts.formatNumber(i,f),1==i.split(h)[0].length&&(i="0"+i)),("mm"==b||"hh"==b)&&10>i&&(i="0"+i),c=i+""+d[b]+c,a=Math.floor(a/g[b].contains),b=g[b].nextInterval,AmCharts.formatDuration(a,b,c,d,e,f)}if("ss"==b&&(a=AmCharts.formatNumber(a,f),1==a.split(h)[0].length&&(a="0"+a)),("mm"==b||"hh"==b)&&10>a&&(a="0"+a),c=a+""+d[b]+c,g[e].count>g[b].count)for(a=g[b].count;aa?"-":"",a=Math.abs(a);var h=String(a),i=!1;-1!=h.indexOf("e")&&(i=!0),c>=0&&!i&&(h=AmCharts.toFixed(a,c));var j="";if(i)j=h;else{var k,h=h.split("."),i=String(h[0]);for(k=i.length;k>=0;k-=3)j=k!=i.length?0!==k?i.substring(k-3,k)+b+j:i.substring(k-3,k)+j:i.substring(k-3,k);void 0!==h[1]&&(j=j+f+h[1]),void 0!==c&&c>0&&"0"!=j&&(j=AmCharts.addZeroes(j,f,c))}return j=g+j,""===g&&!0===d&&0!==a&&(j="+"+j),!0===e&&(j+="%"),j},AmCharts.addZeroes=function(a,b,c){return a=a.split(b),void 0===a[1]&&c>0&&(a[1]="0"),a[1].length=c.x-5&&a<=c.x+c.width+5&&b>=c.y-5&&b<=c.y+c.height+5?!0:!1},AmCharts.isPercents=function(a){return-1!=String(a).indexOf("%")?!0:void 0},AmCharts.findPosX=function(a){var b=a,c=a.offsetLeft;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetLeft;for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollLeft||0}return c},AmCharts.findPosY=function(a){var b=a,c=a.offsetTop;if(a.offsetParent){for(;a=a.offsetParent;)c+=a.offsetTop;for(;(b=b.parentNode)&&b!=document.body;)c-=b.scrollTop||0}return c},AmCharts.findIfFixed=function(a){if(a.offsetParent)for(;a=a.offsetParent;)if("fixed"==AmCharts.getStyle(a,"position"))return!0;return!1},AmCharts.findIfAuto=function(a){return a.style&&"auto"==AmCharts.getStyle(a,"overflow")?!0:a.parentNode?AmCharts.findIfAuto(a.parentNode):!1},AmCharts.findScrollLeft=function(a,b){return a.scrollLeft&&(b+=a.scrollLeft),a.parentNode?AmCharts.findScrollLeft(a.parentNode,b):b},AmCharts.findScrollTop=function(a,b){return a.scrollTop&&(b+=a.scrollTop),a.parentNode?AmCharts.findScrollTop(a.parentNode,b):b},AmCharts.formatValue=function(a,b,c,d,e,f,g,h){if(b){void 0===e&&(e="");var i;for(i=0;ia&&(j="-"),a=Math.abs(a),a>1){for(f=b.length-1;f>-1;f--)if(a>=b[f].number&&(g=a/b[f].number,h=Number(d.precision),1>h&&(h=1),c=AmCharts.roundTo(g,h),h=AmCharts.formatNumber(c,{precision:-1,decimalSeparator:d.decimalSeparator,thousandsSeparator:d.thousandsSeparator}),!e||g==c)){i=j+""+h+b[f].prefix;break}}else for(f=0;f"==a&&(a="easeOutSine"),"<"==a&&(a="easeInSine"),"elastic"==a&&(a="easeOutElastic"),a},AmCharts.getObjById=function(a,b){var c,d;for(d=0;d")),a},AmCharts.fixBrakes=function(a){if(AmCharts.isModern){var b=RegExp("
      ","g");a&&(a=a.replace(b,"\n"))}else a=AmCharts.fixNewLines(a);return a},AmCharts.deleteObject=function(a,b){if(a&&((void 0===b||null===b)&&(b=20),0!==b))if("[object Array]"===Object.prototype.toString.call(a))for(var c=0;cb?d*(7.5625*(b-=1.5/2.75)*b+.75)+c:2.5/2.75>b?d*(7.5625*(b-=2.25/2.75)*b+.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+.984375)+c},AmCharts.easeInSine=function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},AmCharts.easeOutSine=function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},AmCharts.easeOutElastic=function(a,b,c,d,e){a=1.70158;var f=0,g=d;return 0===b?c:1==(b/=e)?c+d:(f||(f=.3*e),gb?Math.abs(b)-1:Math.abs(b);var e;for(e=0;c>e;e++)d+="0";return 0>b?Number("0."+d+String(a)):Number(String(a)+d)},AmCharts.setCN=function(a,b,c,d){if(a.addClassNames&&b&&(b=b.node)&&c){var e=b.getAttribute("class");a=a.classNamePrefix+"-",d&&(a=""),e?b.setAttribute("class",e+" "+a+c):b.setAttribute("class",a+c)}},AmCharts.parseDefs=function(a,b){for(var c in a){var d=typeof a[c];if(0b&&(b=10),1>c&&(c=10),this.div=a,this.width=b,this.height=c,this.rBin=document.createElement("div"),AmCharts.hasSVG?(AmCharts.SVG=!0,b=this.createSvgElement("svg"),a.appendChild(b),this.container=b,this.addDefs(d),this.R=new AmCharts.SVGRenderer(this)):AmCharts.isIE&&AmCharts.VMLRenderer&&(AmCharts.VML=!0,AmCharts.vmlStyleSheet||(document.namespaces.add("amvml","urn:schemas-microsoft-com:vml"),31>document.styleSheets.length?(b=document.createStyleSheet(),b.addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true"),AmCharts.vmlStyleSheet=b):document.styleSheets[0].addRule(".amvml","behavior:url(#default#VML); display:inline-block; antialias:true")),this.container=a,this.R=new AmCharts.VMLRenderer(this,d),this.R.disableSelection(a))},createSvgElement:function(a){return document.createElementNS(AmCharts.SVG_NS,a)},circle:function(a,b,c,d){var e=new AmCharts.AmDObject("circle",this);return e.attr({r:c,cx:a,cy:b}),this.addToContainer(e.node,d),e},ellipse:function(a,b,c,d,e){var f=new AmCharts.AmDObject("ellipse",this);return f.attr({rx:c,ry:d,cx:a,cy:b}),this.addToContainer(f.node,e),f},setSize:function(a,b){a>0&&b>0&&(this.container.style.width=a+"px",this.container.style.height=b+"px")},rect:function(a,b,c,d,e,f,g){var h=new AmCharts.AmDObject("rect",this);return AmCharts.VML&&(e=Math.round(100*e/Math.min(c,d)),c+=2*f,d+=2*f,h.bw=f,h.node.style.marginLeft=-f,h.node.style.marginTop=-f),1>c&&(c=1),1>d&&(d=1),h.attr({x:a,y:b,width:c,height:d,rx:e,ry:e,"stroke-width":f}),this.addToContainer(h.node,g),h},image:function(a,b,c,d,e,f){var g=new AmCharts.AmDObject("image",this);return g.attr({x:b,y:c,width:d,height:e}),this.R.path(g,a),this.addToContainer(g.node,f),g},addToContainer:function(a,b){b||(b=this.container),b.appendChild(a)},text:function(a,b,c){return this.R.text(a,b,c)},path:function(a,b,c,d){var e=new AmCharts.AmDObject("path",this);return d||(d="100,100"),e.attr({cs:d}),c?e.attr({dd:a}):e.attr({d:a}),this.addToContainer(e.node,b),e},set:function(a){return this.R.set(a)},remove:function(a){if(a){var b=this.rBin;b.appendChild(a),b.innerHTML=""}},renderFix:function(){var a,b=this.container,c=b.style;try{a=b.getScreenCTM()||b.createSVGMatrix()}catch(d){a=b.createSVGMatrix()}b=1-a.e%1,a=1-a.f%1,b>.5&&--b,a>.5&&--a,b&&(c.left=b+"px"),a&&(c.top=a+"px")},update:function(){this.R.update()},addDefs:function(a){if(AmCharts.hasSVG){var b=this.createSvgElement("desc"),c=this.container;c.setAttribute("version","1.1"),c.style.position="absolute",this.setSize(this.width,this.height),AmCharts.rtl&&(c.setAttribute("direction","rtl"),c.style.left="auto",c.style.right="0px"),b.appendChild(document.createTextNode("JavaScript chart by amCharts "+a.version)),c.appendChild(b),a.defs&&(b=this.createSvgElement("defs"),c.appendChild(b),AmCharts.parseDefs(a.defs,b),this.defs=b)}}}),AmCharts.AmDObject=AmCharts.Class({construct:function(a,b){this.D=b,this.R=b.R,this.node=this.R.create(this,a),this.y=this.x=0,this.scale=1},attr:function(a){return this.R.attr(this,a),this},getAttr:function(a){return this.node.getAttribute(a)},setAttr:function(a,b){return this.R.setAttr(this,a,b),this},clipRect:function(a,b,c,d){this.R.clipRect(this,a,b,c,d)},translate:function(a,b,c,d){d||(a=Math.round(a),b=Math.round(b)),this.R.move(this,a,b,c),this.x=a,this.y=b,this.scale=c,this.angle&&this.rotate(this.angle)},rotate:function(a,b){this.R.rotate(this,a,b),this.angle=a},animate:function(a,b,c){for(var d in a)if(a.hasOwnProperty(d)){var e=d,f=a[d];c=AmCharts.getEffect(c),this.R.animate(this,e,f,b,c)}},push:function(a){if(a){var b=this.node;b.appendChild(a.node);var c=a.clipPath;c&&b.appendChild(c),(a=a.grad)&&b.appendChild(a)}},text:function(a){this.R.setText(this,a)},remove:function(){this.R.remove(this)},clear:function(){var a=this.node;if(a.hasChildNodes())for(;1<=a.childNodes.length;)a.removeChild(a.firstChild)},hide:function(){this.setAttr("visibility","hidden")},show:function(){this.setAttr("visibility","visible")},getBBox:function(){return this.R.getBBox(this)},toFront:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;b&&b.appendChild(a)}},toPrevious:function(){var a=this.node;a&&this.prevNextNode&&(a=a.parentNode)&&a.insertBefore(this.prevNextNode,null)},toBack:function(){var a=this.node;if(a){this.prevNextNode=a.nextSibling;var b=a.parentNode;if(b){var c=b.firstChild;c&&b.insertBefore(a,c)}}},mouseover:function(a){return this.R.addListener(this,"mouseover",a),this},mouseout:function(a){return this.R.addListener(this,"mouseout",a),this},click:function(a){return this.R.addListener(this,"click",a),this},dblclick:function(a){return this.R.addListener(this,"dblclick",a),this},mousedown:function(a){return this.R.addListener(this,"mousedown",a),this},mouseup:function(a){return this.R.addListener(this,"mouseup",a),this},touchstart:function(a){return this.R.addListener(this,"touchstart",a),this},touchend:function(a){return this.R.addListener(this,"touchend",a),this},contextmenu:function(a){return this.node.addEventListener?this.node.addEventListener("contextmenu",a,!0):this.R.addListener(this,"contextmenu",a),this},stop:function(a){AmCharts.removeFromArray(this.R.animations,this.an_x),AmCharts.removeFromArray(this.R.animations,this.an_y)},length:function(){return this.node.childNodes.length},gradient:function(a,b,c){this.R.gradient(this,a,b,c)},pattern:function(a,b){a&&this.R.pattern(this,a,b)}}),AmCharts.SVGRenderer=AmCharts.Class({construct:function(a){this.D=a,this.animations=[]},create:function(a,b){return document.createElementNS(AmCharts.SVG_NS,b)},attr:function(a,b){for(var c in b)b.hasOwnProperty(c)&&this.setAttr(a,c,b[c])},setAttr:function(a,b,c){void 0!==c&&a.node.setAttribute(b,c)},animate:function(a,b,c,d,e){var f=a.node;a["an_"+b]&&AmCharts.removeFromArray(this.animations,a["an_"+b]),"translate"==b?(f=(f=f.getAttribute("transform"))?String(f).substring(10,f.length-1):"0,0",f=f.split(", ").join(" "),f=f.split(" ").join(","),0===f&&(f="0,0")):f=Number(f.getAttribute(b)),c={obj:a,frame:0,attribute:b,from:f,to:c,time:d,effect:e},this.animations.push(c),a["an_"+b]=c},update:function(){var a,b=this.animations;for(a=b.length-1;a>=0;a--){var c,d,e,f=b[a],g=1e3*f.time/AmCharts.updateRate,h=f.frame+1,i=f.obj,j=f.attribute;g>=h?(f.frame++,"translate"==j?(c=f.from.split(","),j=Number(c[0]),c=Number(c[1]),isNaN(c)&&(c=0),d=f.to.split(","),e=Number(d[0]),d=Number(d[1]),e=0===e-j?e:Math.round(AmCharts[f.effect](0,h,j,e-j,g)),f=0===d-c?d:Math.round(AmCharts[f.effect](0,h,c,d-c,g)),j="transform",f="translate("+e+","+f+")"):(d=Number(f.from),c=Number(f.to),e=c-d,f=AmCharts[f.effect](0,h,d,e,g),isNaN(f)&&(f=c),0===e&&this.animations.splice(a,1)),this.setAttr(i,j,f)):("translate"==j?(d=f.to.split(","),e=Number(d[0]),d=Number(d[1]),i.translate(e,d)):(c=Number(f.to),this.setAttr(i,j,c)),this.animations.splice(a,1))}},getBBox:function(a){if(a=a.node)try{return a.getBBox()}catch(b){}return{width:0,height:0,x:0,y:0}},path:function(a,b){a.node.setAttributeNS(AmCharts.SVG_XLINK,"xlink:href",b)},clipRect:function(a,b,c,d,e){var f=a.node,g=a.clipPath;g&&this.D.remove(g);var h=f.parentNode;h&&(f=document.createElementNS(AmCharts.SVG_NS,"clipPath"),g=AmCharts.getUniqueId(),f.setAttribute("id",g),this.D.rect(b,c,d,e,0,0,f),h.appendChild(f),b="#",AmCharts.baseHref&&!AmCharts.isIE&&(b=this.removeTarget(window.location.href)+b),this.setAttr(a,"clip-path","url("+b+g+")"),this.clipPathC++,a.clipPath=f)},text:function(a,b,c){var d=new AmCharts.AmDObject("text",this.D);a=String(a).split("\n");var e,f=b["font-size"];for(e=0;e0&&f>0&&(b.style.width=a+"px",b.style.height=f+"px",e&&e.setSize(a,f),this.balloon=AmCharts.processObject(this.balloon,AmCharts.AmBalloon,this.theme),this.balloon.chart=this,this.balloon.setBounds(2,2,a-2,f)),this.realWidth=a,this.realHeight=f,this.divRealWidth=c,this.divRealHeight=d}},destroy:function(){this.chartDiv.innerHTML="",this.clearTimeOuts(),this.interval&&clearInterval(this.interval),this.interval=NaN,this.legend&&this.legend.destroy()},clearTimeOuts:function(){var a=this.timeOuts;if(a){var b;for(b=0;b=0;a--)b[a].remove();this.labels=[],this.allLabels=[]},updateHeight:function(){var a=this.divRealHeight,b=this.legend;if(b){var c=this.legendDiv.offsetHeight,b=b.position;("top"==b||"bottom"==b)&&(a-=c,(0>a||isNaN(a))&&(a=0),this.chartDiv.style.height=a+"px")}return a},updateWidth:function(){var a=this.divRealWidth,b=this.divRealHeight,c=this.legend;if(c){var d=this.legendDiv,e=d.offsetWidth;isNaN(c.width)||(e=c.width),c.ieW&&(e=c.ieW);var f=d.offsetHeight,d=d.style,g=this.chartDiv.style,c=c.position;("right"==c||"left"==c)&&(a-=e,(0>a||isNaN(a))&&(a=0),g.width=a+"px","left"==c?(g.left=e+"px",d.left="0px"):(g.left="0px",d.left=a+"px"),b>f&&(d.top=(b-f)/2+"px"))}return a},getTitleHeight:function(){var a=0,b=this.titles,c=!0;if(0=0;a--){var b=this.animations[a],c=1e3*b.time/AmCharts.updateRate,d=b.frame+1,e=b.obj,f=b.attribute;if(c>=d){b.frame++;var g=Number(b.from),h=Number(b.to)-g,c=AmCharts[b.effect](0,d,g,h,c);0===h?(this.animations.splice(a,1),e.node.style[f]=Number(b.to)+b.suffix):e.node.style[f]=c+b.suffix}else e.node.style[f]=Number(b.to)+b.suffix,this.animations.splice(a,1)}},inIframe:function(){try{return window.self!==window.top}catch(a){return!0}},brr:function(){var a,b=window.location.hostname.split(".");if(2<=b.length&&(a=b[b.length-2]+"."+b[b.length-1]),this.amLink&&(b=this.amLink.parentNode)&&b.removeChild(this.amLink),b=this.creditsPosition,"amcharts.com"!=a||!0===this.inIframe()){var c=a=0,d=this.realWidth,e=this.realHeight,f=this.type;("serial"==f||"xy"==f||"gantt"==f)&&(a=this.marginLeftReal,c=this.marginTopReal,d=a+this.plotAreaWidth,e=c+this.plotAreaHeight);var g="http://www.amcharts.com/javascript-charts/",h="JavaScript charts",i="JS chart by amCharts";"ammap"==this.product&&(g="http://www.ammap.com/javascript-maps/",h="Interactive JavaScript maps",i="JS map by amCharts"),f=document.createElement("a"),i=document.createTextNode(i),f.setAttribute("href",g),f.setAttribute("title",h),f.appendChild(i),this.chartDiv.appendChild(f),this.amLink=f,g=f.style,g.position="absolute",g.textDecoration="none",g.color=this.color,g.fontFamily=this.fontFamily,g.fontSize=this.fontSize+"px",g.opacity=.7,g.display="block";var h=f.offsetWidth,f=f.offsetHeight,i=5+a,j=c+5;"bottom-left"==b&&(i=5+a,j=e-f-3),"bottom-right"==b&&(i=d-h-5,j=e-f-3),"top-right"==b&&(i=d-h-5,j=c+5),g.left=i+"px",g.top=j+"px"}}}),AmCharts.Slice=AmCharts.Class({construct:function(){}}),AmCharts.SerialDataItem=AmCharts.Class({construct:function(){}}),AmCharts.GraphDataItem=AmCharts.Class({construct:function(){}}),AmCharts.Guide=AmCharts.Class({construct:function(a){this.cname="Guide",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.Title=AmCharts.Class({construct:function(a){this.cname="Title",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.Label=AmCharts.Class({construct:function(a){this.cname="Label",AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.AmBalloon=AmCharts.Class({construct:function(a){this.cname="AmBalloon",this.enabled=!0,this.fillColor="#FFFFFF",this.fillAlpha=.8,this.borderThickness=2,this.borderColor="#FFFFFF",this.borderAlpha=1,this.cornerRadius=0,this.maxWidth=220,this.horizontalPadding=8,this.verticalPadding=4,this.pointerWidth=6,this.pointerOrientation="V",this.color="#000000",this.adjustBorderColor=!0,this.show=this.follow=this.showBullet=!1,this.bulletSize=3,this.shadowAlpha=.4,this.shadowColor="#000000",this.fadeOutDuration=this.animationDuration=.3,this.fixedPosition=!1,this.offsetY=6,this.offsetX=1,this.textAlign="center",AmCharts.isModern||(this.offsetY*=1.5),AmCharts.applyTheme(this,a,this.cname)},draw:function(){var a=this.pointToX,b=this.pointToY;this.deltaSignX=this.deltaSignY=1;var c=this.chart;if(AmCharts.VML&&(this.fadeOutDuration=0),this.xAnim&&c.stopAnim(this.xAnim),this.yAnim&&c.stopAnim(this.yAnim),!isNaN(a)){var d=this.follow,e=c.container,f=this.set;if(AmCharts.remove(f),this.removeDiv(),f=e.set(),f.node.style.pointerEvents="none",this.set=f,c.balloonsSet.push(f),this.show){var g=this.l,h=this.t,i=this.r,j=this.b,k=this.balloonColor,l=this.fillColor,m=this.borderColor,n=l;void 0!=k&&(this.adjustBorderColor?n=m=k:l=k);var o=this.horizontalPadding,p=this.verticalPadding,q=this.pointerWidth,r=this.pointerOrientation,s=this.cornerRadius,t=c.fontFamily,u=this.fontSize;void 0==u&&(u=c.fontSize);var k=document.createElement("div"),v=c.classNamePrefix;k.className=v+"-balloon-div",this.className&&(k.className=k.className+" "+v+"-balloon-div-"+this.className),v=k.style,v.pointerEvents="none",v.position="absolute";var w=this.minWidth,x="";isNaN(w)||(x="min-width:"+(w-2*o)+"px; "),k.innerHTML='
      '+this.text+"
      ",c.chartDiv.appendChild(k),this.textDiv=k,u=k.offsetWidth,t=k.offsetHeight,k.clientHeight&&(u=k.clientWidth,t=k.clientHeight),t+=2*p,x=u+2*o,!isNaN(w)&&w>x&&(x=w),window.opera&&(t+=2);var y=!1,u=this.offsetY;c.handDrawn&&(u+=c.handDrawScatter+2),"H"!=r?(w=a-x/2,h+t+10>b&&"down"!=r?(y=!0,d&&(b+=u),u=b+q,this.deltaSignY=-1):(d&&(b-=u),u=b-t-q,this.deltaSignY=1)):(2*q>t&&(q=t/2),u=b-t/2,g+(i-g)/2>a?(w=a+q,this.deltaSignX=-1):(w=a-x-q,this.deltaSignX=1)),u+t>=j&&(u=j-t),h>u&&(u=h),g>w&&(w=g),w+x>i&&(w=i-x);var z,h=u+p,j=w+o,p=this.shadowAlpha,A=this.shadowColor,o=this.borderThickness,B=this.bulletSize;s>0||0===q?(p>0&&(a=AmCharts.rect(e,x,t,l,0,o+1,A,p,this.cornerRadius),AmCharts.isModern?a.translate(1,1):a.translate(4,4),f.push(a)),l=AmCharts.rect(e,x,t,l,this.fillAlpha,o,m,this.borderAlpha,this.cornerRadius),this.showBullet&&(z=AmCharts.circle(e,B,n,this.fillAlpha),f.push(z))):(n=[],s=[],"H"!=r?(g=a-w,g>x-q&&(g=x-q),q>g&&(g=q),n=[0,g-q,a-w,g+q,x,x,0,0],s=y?[0,0,b-u,0,0,t,t,0]:[t,t,b-u,t,t,0,0,t]):(n=b-u,n>t-q&&(n=t-q),q>n&&(n=q),s=[0,n-q,b-u,n+q,t,t,0,0],n=g+(i-g)/2>a?[0,0,a>w?0:a-w,0,0,x,x,0]:[x,x,w+x>a?x:a-w,x,x,0,0,x]),p>0&&(a=AmCharts.polygon(e,n,s,l,0,o,A,p),a.translate(1,1),f.push(a)),l=AmCharts.polygon(e,n,s,l,this.fillAlpha,o,m,this.borderAlpha)),this.bg=l,f.push(l),l.toFront(),AmCharts.setCN(c,l,"balloon-bg"),this.className&&AmCharts.setCN(c,l,"balloon-bg-"+this.className),e=1*this.deltaSignX,v.left=j+"px",v.top=h+"px",f.translate(w-e,u),l=l.getBBox(),this.bottom=u+t+1,this.yPos=l.y+u,z&&z.translate(this.pointToX-w+e,b-u),b=this.animationDuration,0this.r-d.width&&(a=this.r-d.width),e0){a.destroyTO=setTimeout(function(){a.destroy.call(a)},1e3*b),a.follow=!1,a.show=!1;var d=a.set;d&&(d.setAttr("opacity",a.fillAlpha),a.fadeAnim1=d.animate({opacity:0},b,"easeInSine")),a.textDiv&&(a.fadeAnim2=c.animate({node:a.textDiv},"opacity",1,0,b,"easeInSine",""))}else a.show=!1,a.follow=!1,a.destroy()},setPosition:function(a,b,c){this.pointToX=a,this.pointToY=b,c&&(a==this.previousX&&b==this.previousY||this.draw()),this.previousX=a,this.previousY=b},followCursor:function(a){var b=this;(b.follow=a)?(b.pShowBullet=b.showBullet,b.showBullet=!1):void 0!==b.pShowBullet&&(b.showBullet=b.pShowBullet),clearInterval(b.interval);var c=b.chart.mouseX,d=b.chart.mouseY;!isNaN(c)&&a&&(b.pointToX=c-b.offsetX*b.deltaSignX,b.pointToY=d,b.followMouse(),b.interval=setInterval(function(){b.followMouse.call(b)},40))},removeDiv:function(){if(this.textDiv){var a=this.textDiv.parentNode;a&&a.removeChild(this.textDiv)}},destroy:function(){clearInterval(this.interval),AmCharts.remove(this.set),this.removeDiv(),this.set=null}}),AmCharts.circle=function(a,b,c,d,e,f,g,h,i){return 0>=b&&(b=.001),(void 0==e||0===e)&&(e=.01),void 0===f&&(f="#000000"),void 0===g&&(g=0),d={fill:c,stroke:f,"fill-opacity":d,"stroke-width":e,"stroke-opacity":g},a=isNaN(i)?a.circle(0,0,b).attr(d):a.ellipse(0,0,b,i).attr(d),h&&a.gradient("radialGradient",[c,AmCharts.adjustLuminosity(c,-.6)]),a},AmCharts.text=function(a,b,c,d,e,f,g,h){return f||(f="middle"),"right"==f&&(f="end"),"left"==f&&(f="start"),isNaN(h)&&(h=1),void 0!==b&&(b=String(b),AmCharts.isIE&&!AmCharts.isModern&&(b=b.replace("&","&"),b=b.replace("&","&"))),c={fill:c,"font-family":d,"font-size":e,opacity:h},!0===g&&(c["font-weight"]="bold"),c["text-anchor"]=f,a.text(b,c)},AmCharts.polygon=function(a,b,c,d,e,f,g,h,i,j,k){isNaN(f)&&(f=.01),isNaN(h)&&(h=e);var l=d,m=!1;for("object"==typeof l&&10&&(e["stroke-dasharray"]=k),k=AmCharts.dx,f=AmCharts.dy,a.handDrawn&&(c=AmCharts.makeHD(b,c,a.handDrawScatter),b=c[0],c=c[1]),g=Math.round,j&&(g=AmCharts.doNothing),j="M"+(g(b[0])+k)+","+(g(c[0])+f),h=1;hb&&(b=Math.abs(b),n=-b),0>c&&(c=Math.abs(c),o=-c),n+=AmCharts.dx,o+=AmCharts.dy,e={fill:l,stroke:g,"fill-opacity":e,"stroke-opacity":h},void 0!==k&&k>0&&(e["stroke-dasharray"]=k),a=a.rect(n,o,b,c,i,f).attr(e),m&&a.gradient("linearGradient",d,j),a},AmCharts.bullet=function(a,b,c,d,e,f,g,h,i,j,k){var l;switch("circle"==b&&(b="round"),b){case"round":l=AmCharts.circle(a,c/2,d,e,f,g,h);break;case"square":l=AmCharts.polygon(a,[-c/2,c/2,c/2,-c/2],[c/2,c/2,-c/2,-c/2],d,e,f,g,h,j-180);break;case"rectangle":l=AmCharts.polygon(a,[-c,c,c,-c],[c/2,c/2,-c/2,-c/2],d,e,f,g,h,j-180);break;case"diamond":l=AmCharts.polygon(a,[-c/2,0,c/2,0],[0,-c/2,0,c/2],d,e,f,g,h);break;case"triangleUp":l=AmCharts.triangle(a,c,0,d,e,f,g,h);break;case"triangleDown":l=AmCharts.triangle(a,c,180,d,e,f,g,h);break;case"triangleLeft":l=AmCharts.triangle(a,c,270,d,e,f,g,h);break;case"triangleRight":l=AmCharts.triangle(a,c,90,d,e,f,g,h);break;case"bubble":l=AmCharts.circle(a,c/2,d,e,f,g,h,!0);break;case"line":l=AmCharts.line(a,[-c/2,c/2],[0,0],d,e,f,g,h);break;case"yError":l=a.set(),l.push(AmCharts.line(a,[0,0],[-c/2,c/2],d,e,f)),l.push(AmCharts.line(a,[-i,i],[-c/2,-c/2],d,e,f)),l.push(AmCharts.line(a,[-i,i],[c/2,c/2],d,e,f));break;case"xError":l=a.set(),l.push(AmCharts.line(a,[-c/2,c/2],[0,0],d,e,f)),l.push(AmCharts.line(a,[-c/2,-c/2],[-i,i],d,e,f)),l.push(AmCharts.line(a,[c/2,c/2],[-i,i],d,e,f))}return l&&l.pattern(k),l},AmCharts.triangle=function(a,b,c,d,e,f,g,h){(void 0===f||0===f)&&(f=1),void 0===g&&(g="#000"),void 0===h&&(h=0),d={fill:d,stroke:g,"fill-opacity":e,"stroke-width":f,"stroke-opacity":h},b/=2;var i;return 0===c&&(i=" M"+-b+","+b+" L0,"+-b+" L"+b+","+b+" Z"),180==c&&(i=" M"+-b+","+-b+" L0,"+b+" L"+b+","+-b+" Z"),90==c&&(i=" M"+-b+","+-b+" L"+b+",0 L"+-b+","+b+" Z"),270==c&&(i=" M"+-b+",0 L"+b+","+b+" L"+b+","+-b+" Z"),a.path(i).attr(d)},AmCharts.line=function(a,b,c,d,e,f,g,h,i,j,k){if(a.handDrawn&&!k)return AmCharts.handDrawnLine(a,b,c,d,e,f,g,h,i,j,k);for(f={fill:"none","stroke-width":f},void 0!==g&&g>0&&(f["stroke-dasharray"]=g),isNaN(e)||(f["stroke-opacity"]=e),d&&(f.stroke=d),d=Math.round,j&&(d=AmCharts.doNothing),j=AmCharts.dx,e=AmCharts.dy,g="M"+(d(b[0])+j)+","+(d(c[0])+e),h=1;h=l;l++){var m=g+l*i+Math.random()*c,n=h+l*j+Math.random()*c;d.push(m),e.push(n)}return[d,e]},AmCharts.handDrawnLine=function(a,b,c,d,e,f,g,h,i,j,k){var l=a.set();for(k=1;k359.94&&(p=359.94),e>=p&&(e=p);var q=1/180*Math.PI,p=b+Math.sin(d*q)*h,r=c-Math.cos(d*q)*n,s=b+Math.sin(d*q)*f,t=c-Math.cos(d*q)*g,u=b+Math.sin((d+e)*q)*f,v=c-Math.cos((d+e)*q)*g,w=b+Math.sin((d+e)*q)*h,q=c-Math.cos((d+e)*q)*n,x={fill:AmCharts.adjustLuminosity(j.fill,-.2),"stroke-opacity":0,"fill-opacity":j["fill-opacity"]},y=0;180Math.abs(e)&&1>=Math.abs(u-s)&&1>=Math.abs(v-t)&&(z=!0)),e="";var A;if(l&&(x["fill-opacity"]=0,x["stroke-opacity"]=j["stroke-opacity"]/2,x.stroke=j.stroke),i>0&&(A=" M"+p+","+(r+i)+" L"+s+","+(t+i),o?(z||(A+=" A"+(b-f)+","+(i+c-g)+","+(b+f)+","+(i+c+g)+","+s+","+(t+i)+","+u+","+(v+i)),A+=" L"+w+","+(q+i),h>0&&(z||(A+=" B"+(b-h)+","+(i+c-n)+","+(b+h)+","+(i+c+n)+","+w+","+(i+q)+","+p+","+(i+r)))):(A+=" A"+f+","+g+",0,"+y+",1,"+u+","+(v+i)+" L"+w+","+(q+i),h>0&&(A+=" A"+h+","+n+",0,"+y+",0,"+p+","+(r+i))),A=a.path(A+" Z",void 0,void 0,"1000,1000").attr(x),d.push(A),A=a.path(" M"+p+","+r+" L"+p+","+(r+i)+" L"+s+","+(t+i)+" L"+s+","+t+" L"+p+","+r+" Z",void 0,void 0,"1000,1000").attr(x),i=a.path(" M"+u+","+v+" L"+u+","+(v+i)+" L"+w+","+(q+i)+" L"+w+","+q+" L"+u+","+v+" Z",void 0,void 0,"1000,1000").attr(x),d.push(A),d.push(i)),o?(z||(e=" A"+m(b-f)+","+m(c-g)+","+m(b+f)+","+m(c+g)+","+m(s)+","+m(t)+","+m(u)+","+m(v)),f=" M"+m(p)+","+m(r)+" L"+m(s)+","+m(t)+e+" L"+m(w)+","+m(q)):f=" M"+p+","+r+" L"+s+","+t+(" A"+f+","+g+",0,"+y+",1,"+u+","+v)+" L"+w+","+q,h>0&&(o?z||(f+=" B"+(b-h)+","+(c-n)+","+(b+h)+","+(c+n)+","+w+","+q+","+p+","+r):f+=" A"+h+","+n+",0,"+y+",0,"+p+","+r),a.handDrawn&&(b=AmCharts.line(a,[p,s],[r,t],j.stroke,j.thickness*Math.random()*a.handDrawThickness,j["stroke-opacity"]),d.push(b)),a=a.path(f+" Z",void 0,void 0,"1000,1000").attr(j),k){for(b=[],c=0;ca.length&&(a=String(a[0])+String(a[0])+String(a[1])+String(a[1])+String(a[2])+String(a[2])),b=b||0;var c,d,e="#";for(d=0;3>d;d++)c=parseInt(a.substr(2*d,2),16),c=Math.round(Math.min(Math.max(0,c+c*b),255)).toString(16),e+=("00"+c).substr(c.length);return e},AmCharts.AmLegend=AmCharts.Class({construct:function(a){this.enabled=!0,this.cname="AmLegend",this.createEvents("rollOverMarker","rollOverItem","rollOutMarker","rollOutItem","showItem","hideItem","clickMarker","rollOverItem","rollOutItem","clickLabel"),this.position="bottom",this.borderColor=this.color="#000000",this.borderAlpha=0,this.markerLabelGap=5,this.verticalGap=10,this.align="left",this.horizontalGap=0,this.spacing=10,this.markerDisabledColor="#AAB3B3",this.markerType="square",this.markerSize=16,this.markerBorderThickness=this.markerBorderAlpha=1,this.marginBottom=this.marginTop=0,this.marginLeft=this.marginRight=20,this.autoMargins=!0,this.valueWidth=50,this.switchable=!0,this.switchType="x",this.switchColor="#FFFFFF",this.rollOverColor="#CC0000",this.reversedOrder=!1,this.labelText="[[title]]",this.valueText="[[value]]",this.useMarkerColorForLabels=!1,this.rollOverGraphAlpha=1,this.textClickEnabled=!1,this.equalWidths=!0,this.dateFormat="DD-MM-YYYY",this.backgroundColor="#FFFFFF",this.backgroundAlpha=0,this.useGraphSettings=!1,this.showEntries=!0,AmCharts.applyTheme(this,a,this.cname)},setData:function(a){this.legendData=a,this.invalidateSize()},invalidateSize:function(){this.destroy(),this.entries=[],this.valueLabels=[];var a=this.legendData;this.enabled&&(AmCharts.ifArray(a)||AmCharts.ifArray(this.data))&&this.drawLegend()},drawLegend:function(){var a=this.chart,b=this.position,c=this.width,d=a.divRealWidth,e=a.divRealHeight,f=this.div,g=this.legendData;if(this.data&&(g=this.data),isNaN(this.fontSize)&&(this.fontSize=a.fontSize),"right"==b||"left"==b)this.maxColumns=1,this.autoMargins&&(this.marginLeft=this.marginRight=10);else if(this.autoMargins){this.marginRight=a.marginRight,this.marginLeft=a.marginLeft;var h=a.autoMarginOffset;"bottom"==b?(this.marginBottom=h,this.marginTop=0):(this.marginTop=h,this.marginBottom=0)}if(c=void 0!==c?AmCharts.toCoordinate(c,d):a.realWidth,"outside"==b?(c=f.offsetWidth,e=f.offsetHeight,f.clientHeight&&(c=f.clientWidth,e=f.clientHeight)):(isNaN(c)||(f.style.width=c+"px"),f.className="amChartsLegend "+a.classNamePrefix+"-legend-div"),this.divWidth=c,(b=this.container)?(b.container.innerHTML="",f.appendChild(b.container),b.width=c,b.height=e,b.addDefs(a)):b=new AmCharts.AmDraw(f,c,e,a),this.container=b,this.lx=0,this.ly=8,e=this.markerSize,e>this.fontSize&&(this.ly=e/2-1),e>0&&(this.lx+=e+this.markerLabelGap),this.titleWidth=0,(e=this.title)&&(e=AmCharts.text(this.container,e,this.color,a.fontFamily,this.fontSize,"start",!0),AmCharts.setCN(a,e,"legend-title"),e.translate(this.marginLeft,this.marginTop+this.verticalGap+this.ly+1),a=e.getBBox(),this.titleWidth=a.width+15,this.titleHeight=a.height+6),this.index=this.maxLabelWidth=0,this.showEntries){for(a=0;am&&(m=u),r=r.height,r>n&&(n=r)}var u=n=0,v=f,w=0,x=0;for(s=0;sx&&(x=r.height),z+r.width>l&&s>0&&0!==u&&(n++,u=0,z=f,v=z+r.width+f+k,w=w+x+j,x=0),y.translate(z,w),u++,!isNaN(i)&&u>=i&&(u=0,n++,w=w+x+j,x=0),q.push(y)}r=q.getBBox(),i=r.height+2*j-1,"left"==a||"right"==a?(k=r.width+2*f,h=k+b+c,g.style.width=h+"px",this.ieW=h):k=h-b-c-1,c=AmCharts.polygon(this.container,[0,k,k,0],[0,0,i,i],this.backgroundColor,this.backgroundAlpha,1,this.borderColor,this.borderAlpha),AmCharts.setCN(this.chart,c,"legend-bg"),p.push(c),p.translate(b,d),c.toBack(),b=f,("top"==a||"bottom"==a||"absolute"==a||"outside"==a)&&("center"==this.align?b=f+(k-r.width)/2:"right"==this.align&&(b=f+k-r.width)),q.translate(b,j+1),this.titleHeight>i&&(i=this.titleHeight),a=i+d+e+1,0>a&&(a=0),a>this.chart.divRealHeight&&(g.style.top="0px"),g.style.height=Math.round(a)+"px",o.setSize(this.divWidth,a)},createEntry:function(a){if(!1!==a.visibleInLegend){var b=this.chart,c=a.markerType;a.legendEntryWidth=this.markerSize,c||(c=this.markerType);var d=a.color,e=a.alpha;a.legendKeyColor&&(d=a.legendKeyColor()),a.legendKeyAlpha&&(e=a.legendKeyAlpha());var f;!0===a.hidden&&(f=d=this.markerDisabledColor);var g=a.pattern,h=a.customMarker;h||(h=this.customMarker);var i=this.container,j=this.markerSize,k=0,l=0,m=j/2;if(this.useGraphSettings){if(c=a.type,this.switchType=void 0,"line"==c||"step"==c||"smoothedLine"==c||"ohlc"==c)g=i.set(),a.hidden||(d=a.lineColorR,f=a.bulletBorderColorR),k=AmCharts.line(i,[0,2*j],[j/2,j/2],d,a.lineAlpha,a.lineThickness,a.dashLength),AmCharts.setCN(b,k,"graph-stroke"),g.push(k),a.bullet&&(a.hidden||(d=a.bulletColorR),k=AmCharts.bullet(i,a.bullet,a.bulletSize,d,a.bulletAlpha,a.bulletBorderThickness,f,a.bulletBorderAlpha))&&(AmCharts.setCN(b,k,"graph-bullet"),k.translate(j+1,j/2),g.push(k)),m=0,k=j,l=j/3;else{var n;a.getGradRotation&&(n=a.getGradRotation()),k=a.fillColorsR,!0===a.hidden&&(k=d),(g=this.createMarker("rectangle",k,a.fillAlphas,a.lineThickness,d,a.lineAlpha,n,g))&&(m=j,g.translate(m,j/2)),k=j}AmCharts.setCN(b,g,"graph-"+c),AmCharts.setCN(b,g,"graph-"+a.id)}else h?(b.path&&(h=b.path+h),g=i.image(h,0,0,j,j)):(g=this.createMarker(c,d,e,void 0,void 0,void 0,void 0,g))&&g.translate(j/2,j/2);AmCharts.setCN(b,g,"legend-marker"),this.addListeners(g,a),i=i.set([g]),this.switchable&&a.switchable&&i.setAttr("cursor","pointer"),void 0!=a.id&&AmCharts.setCN(b,i,"legend-item-"+a.id),AmCharts.setCN(b,i,a.className,!0),(f=this.switchType)&&"none"!=f&&("x"==f?(c=this.createX(),c.translate(j/2,j/2)):c=this.createV(),c.dItem=a,!0!==a.hidden?"x"==f?c.hide():c.show():"x"!=f&&c.hide(),this.switchable||c.hide(),this.addListeners(c,a),a.legendSwitch=c,i.push(c),AmCharts.setCN(b,c,"legend-switch")),f=this.color,a.showBalloon&&this.textClickEnabled&&void 0!==this.selectedColor&&(f=this.selectedColor),this.useMarkerColorForLabels&&(f=d),!0===a.hidden&&(f=this.markerDisabledColor),d=AmCharts.massReplace(this.labelText,{"[[title]]":a.title}),c=this.fontSize,g&&(c>=j&&g.translate(m,j/2+this.ly-c/2+(c+2-j)/2-l),a.legendEntryWidth=g.getBBox().width);var o;d&&(d=AmCharts.fixBrakes(d),a.legendTextReal=d,o=this.labelWidth,o=isNaN(o)?AmCharts.text(this.container,d,f,b.fontFamily,c,"start"):AmCharts.wrappedText(this.container,d,f,b.fontFamily,c,"start",!1,o,0),AmCharts.setCN(b,o,"legend-label"),o.translate(this.lx+k,this.ly),i.push(o),b=o.getBBox().width,this.maxLabelWidthd&&(d=c+7,AmCharts.VML&&(d+=3)),c=b.container.rect(a.legendEntryWidth,0,f,d,0,0).attr({stroke:"none",fill:"#fff","fill-opacity":.005}),c.dItem=a,b.entries[b.index-1].push(c),c.mouseover(function(c){b.rollOverLabel(a,c)}).mouseout(function(c){b.rollOutLabel(a,c)}).click(function(c){b.clickLabel(a,c)})}},createV:function(){var a=this.markerSize;return AmCharts.polygon(this.container,[a/5,a/2,a-a/5,a/2],[a/3,a-a/5,a/5,a/1.7],this.switchColor)},createX:function(){var a=(this.markerSize-4)/2,b={stroke:this.switchColor,"stroke-width":3},c=this.container,d=AmCharts.line(c,[-a,a],[-a,a]).attr(b),a=AmCharts.line(c,[-a,a],[a,-a]).attr(b);return this.container.set([d,a])},createMarker:function(a,b,c,d,e,f,g,h){var i=this.markerSize,j=this.container;return e||(e=this.markerBorderColor),e||(e=b),isNaN(d)&&(d=this.markerBorderThickness),isNaN(f)&&(f=this.markerBorderAlpha),AmCharts.bullet(j,a,i,b,c,d,e,f,i,g,h)},validateNow:function(){this.invalidateSize()},updateValues:function(){var a,b=this.valueLabels,c=this.chart,d=this.data;for(a=0;a0?b*d:b/d,c.minZoomLevel,c.maxZoomLevel),d=this.mouseX/this.mapWidth,c=this.mouseY/this.mapHeight,d=(this.zoomX()-d)*(a/b)+d,b=(this.zoomY()-c)*(a/b)+c,this.zoomTo(a,d,b)}},addLegend:function(a,b){return a.position="absolute",a.autoMargins=!1,a.valueWidth=0,a.switchable=!1,AmCharts.AmMap.base.addLegend.call(this,a,b),void 0==a.enabled&&(a.enabled=!0),a},handleLegendEvent:function(){}, +createDescriptionsDiv:function(){if(!this.descriptionsDiv){var a=document.createElement("div"),b=a.style;b.position="absolute",b.left="0px",b.top="0px",this.descriptionsDiv=a}this.containerDiv.appendChild(this.descriptionsDiv)},drawChart:function(){AmCharts.AmMap.base.drawChart.call(this);var a=this.dataProvider;this.dataProvider=a=AmCharts.extend(a,new AmCharts.MapData,!0),this.areasSettings=AmCharts.processObject(this.areasSettings,AmCharts.AreasSettings,this.theme),this.imagesSettings=AmCharts.processObject(this.imagesSettings,AmCharts.ImagesSettings,this.theme),this.linesSettings=AmCharts.processObject(this.linesSettings,AmCharts.LinesSettings,this.theme);var b=this.container;this.mapContainer&&this.mapContainer.remove(),this.mapContainer=b.set(),this.graphsSet.push(this.mapContainer);var c;a.map&&(c=AmCharts.maps[a.map]),a.mapVar&&(c=a.mapVar),c?(this.svgData=c.svg,this.getBounds(),this.buildEverything()):(a=a.mapURL)&&this.loadXml(a),this.balloonsSet.toFront()},drawBg:function(){var a=this;a.background.click(function(){a.handleBackgroundClick()})},buildEverything:function(){var a=this;if(0=1?(b=1,a.preventHover=!1,a.wheelBusy=!1):setTimeout(function(){a.updateSize.call(a)},AmCharts.updateRate),b>.8&&(a.preventHover=!1)):(b=1,a.preventHover=!1,a.wheelBusy=!1),a.tweenPercent=b,a.rescaleMapAndObjects()},rescaleMapAndObjects:function(){var a=this.initialScale,b=this.initialX,c=this.initialY,d=this.tweenPercent,a=a+(this.finalScale-a)*d;if(this.mapContainer.translate(b+(this.finalX-b)*d,c+(this.finalY-c)*d,a),this.areasSettings.adjustOutlineThickness)for(b=this.dataProvider.areas,c=0;ca-this.previousClickTime&&20Math.abs(n-h)&&(b.isDragging=!0),!isNaN(n)){var o=5*Math.abs(n-h)/i,i=a.scale,i=AmCharts.fitToBounds(h>n?i+i*o:i-i*o,g.minZoomLevel,g.maxZoomLevel),g=b.zoomLevel(),p=b.middleXP,n=b.middleYP,o=j/m,q=k/l,p=(b.zoomX()-p*q)*(i/g)+p*q,n=(b.zoomY()-n*o)*(i/g)+n*o;.1d/f?.8*e/(c*g):.8*f/(d*g),h.minZoomLevel,h.maxZoomLevel);this.zoomToMapXY(e,(a+c/2)*g,(b+d/2)*g)},zoomToLatLongRectangle:function(a,b,c,d){var e=this.dataProvider,f=this.zoomControl,g=Math.abs(c-a),h=Math.abs(b-d),i=Math.abs(e.rightLongitude-e.leftLongitude),e=Math.abs(e.topLatitude-e.bottomLatitude),f=AmCharts.fitToBounds(g/i>h/e?.8*i/g:.8*e/h,f.minZoomLevel,f.maxZoomLevel);this.zoomToLongLat(f,a+(c-a)/2,d+(b-d)/2)},getGroupById:function(a){var b=[];return this.getGroup(this.imagesProcessor.allObjects,a,b),this.getGroup(this.linesProcessor.allObjects,a,b),this.getGroup(this.areasProcessor.allObjects,a,b),b},zoomToGroup:function(a){a="object"==typeof a?a:this.getGroupById(a);var b,c,d,e,f;for(f=0;fh||isNaN(b))&&(b=h),(i>e||isNaN(e))&&(e=i),(c>j||isNaN(c))&&(c=j),(g>d||isNaN(d))&&(d=g)}a=this.mapSet.getBBox(),c-=a.x,d-=a.x,e-=a.y,b-=a.y,this.zoomToRectangle(c,b,d-c,e-b)},getGroup:function(a,b,c){if(a){var d;for(d=0;df/i?.8*h/e:.8*i/f:a.zoomLevel,i=this.zoomControl,h=AmCharts.fitToBounds(h,i.minZoomLevel,i.maxZoomLevel),isNaN(a.zoomX)&&isNaN(a.zoomY)&&isNaN(a.zoomLatitude)&&isNaN(a.zoomLongitude)&&(a=this.mapSet.getBBox(),this.zoomToMapXY(h,-a.x*b+c+e/2,-a.y*b+d+f/2)))}},zoomToSelectedObject:function(){this.zoomToObject(this.selectedObject)},zoomTo:function(a,b,c,d){var e=this.zoomControl;a=AmCharts.fitToBounds(a,e.minZoomLevel,e.maxZoomLevel),e=this.zoomLevel(),isNaN(b)&&(b=this.realWidth/this.mapWidth,b=(this.zoomX()-.5*b)*(a/e)+.5*b),isNaN(c)&&(c=this.realHeight/this.mapHeight,c=(this.zoomY()-.5*c)*(a/e)+.5*c),this.stopAnimation(),isNaN(a)||(e=this.mapContainer,this.initialX=e.x,this.initialY=e.y,this.initialScale=e.scale,this.finalX=this.mapWidth*b,this.finalY=this.mapHeight*c,this.finalScale=a,this.finalX!=this.initialX||this.finalY!=this.initialY||this.finalScale!=this.initialScale?d?(this.tweenPercent=1,this.rescaleMapAndObjects(),this.wheelBusy=!1):this.animateMap():this.wheelBusy=!1)},loadXml:function(a){var b;b=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP"),b.overrideMimeType&&b.overrideMimeType("text/xml"),b.open("GET",a,!1),b.send(),this.parseXMLObject(b.responseXML),this.svgData&&this.buildEverything()},stopAnimation:function(){this.frame=this.totalFrames},processObjects:function(){var a=this.container,b=this.stageImagesContainer;b&&b.remove(),this.stageImagesContainer=b=a.set(),this.trendLinesSet.push(b);var c=this.stageLinesContainer;c&&c.remove(),this.stageLinesContainer=c=a.set(),this.trendLinesSet.push(c);var d=this.mapImagesContainer;d&&d.remove(),this.mapImagesContainer=d=a.set(),this.mapContainer.push(d);var e=this.mapLinesContainer;e&&e.remove(),this.mapLinesContainer=e=a.set(),this.mapContainer.push(e),this.linesAboveImages?(d.toFront(),b.toFront(),e.toFront(),c.toFront()):(e.toFront(),c.toFront(),d.toFront(),b.toFront()),(a=this.selectedObject)&&(this.imagesProcessor.reset(),this.linesProcessor.reset(),this.linesAboveImages?(this.imagesProcessor.process(a),this.linesProcessor.process(a)):(this.linesProcessor.process(a),this.imagesProcessor.process(a))),this.rescaleObjects()},processAreas:function(){this.areasProcessor.process(this.dataProvider)},buildSVGMap:function(){var a=this.svgData.g.path,b=this.container,c=b.set();void 0===a.length&&(a=[a]);var d;for(d=0;df/d?c/e:d/f;a.translate(-b.x*c,-b.y*c,c),this.mapScale=c,this.mapHeight=f*c,this.mapWidth=e*c}else b=group.transform.match(/([\-]?[\d.]+)/g),a.translate(b[0],b[1],b[2])},zoomIn:function(){this.skipClick=!0;var a=this.zoomLevel()*this.zoomControl.zoomFactor;this.zoomTo(a)},zoomOut:function(){this.skipClick=!0;var a=this.zoomLevel()/this.zoomControl.zoomFactor;this.zoomTo(a)},moveLeft:function(){this.skipClick=!0;var a=this.zoomX()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveRight:function(){this.skipClick=!0;var a=this.zoomX()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),a,this.zoomY())},moveUp:function(){this.skipClick=!0;var a=this.zoomY()+this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},moveDown:function(){this.skipClick=!0;var a=this.zoomY()-this.zoomControl.panStepSize;this.zoomTo(this.zoomLevel(),this.zoomX(),a)},zoomX:function(){return this.mapSet?Math.round(1e4*this.mapContainer.x/this.mapWidth)/1e4:NaN},zoomY:function(){return this.mapSet?Math.round(1e4*this.mapContainer.y/this.mapHeight)/1e4:NaN},goHome:function(){this.selectObject(this.dataProvider);var a={type:"homeButtonClicked",chart:this};this.fire(a.type,a)},zoomLevel:function(){return Math.round(1e5*this.mapContainer.scale)/1e5},showDescriptionAndGetUrl:function(){var a=this.selectedObject;if(a){this.showDescription();var b=a.url;if(b)AmCharts.getURL(b,a.urlTarget);else if(b=a.linkToObject){if("string"==typeof b){var c=this.getObjectById(b);if(c)return void this.selectObject(c)}b&&a.passZoomValuesToTarget&&(b.zoomLatitude=this.zoomLatitude(),b.zoomLongitude=this.zoomLongitude(),b.zoomLevel=this.zoomLevel()),this.extendMapData(b)||this.selectObject(b)}}},extendMapData:function(a){var b=a.objectType;return"MapImage"!=b&&"MapArea"!=b&&"MapLine"!=b?(AmCharts.extend(a,new AmCharts.MapData,!0),this.dataProvider=a,this.zoomInstantly=!0,this.validateData(),!0):void 0},showDescription:function(a){if(a||(a=this.selectedObject),this.allowMultipleDescriptionWindows||this.closeAllDescriptions(),a.description){var b=a.descriptionWindow;b&&b.close(),b=new AmCharts.DescriptionWindow,a.descriptionWindow=b;var c=a.descriptionWindowWidth,d=a.descriptionWindowHeight,e=a.descriptionWindowLeft,f=a.descriptionWindowTop,g=a.descriptionWindowRight,h=a.descriptionWindowBottom;isNaN(g)||(e=this.realWidth-g),isNaN(h)||(f=this.realHeight-h);var i=a.descriptionWindowX;isNaN(i)||(e=i),i=a.descriptionWindowY,isNaN(i)||(f=i),isNaN(e)&&(e=this.mouseX,e=e>this.realWidth/2?e-c-20:e+20),isNaN(f)&&(f=this.mouseY),b.maxHeight=d,i=a.title,a.titleTr&&(i=a.titleTr),b.show(this,this.descriptionsDiv,a.description,i),a=b.div.style,a.position="absolute",a.width=c+"px",a.maxHeight=d+"px",isNaN(h)||(f-=b.div.offsetHeight),isNaN(g)||(e-=b.div.offsetWidth),a.left=e+"px",a.top=f+"px"}},parseXMLObject:function(a){var b={root:{}};this.parseXMLNode(b,"root",a),this.svgData=b.root.svg,this.getBounds()},getBounds:function(){var a=this.dataProvider;try{var b=this.svgData.defs["amcharts:ammap"];a.leftLongitude=Number(b.leftLongitude),a.rightLongitude=Number(b.rightLongitude),a.topLatitude=Number(b.topLatitude),a.bottomLatitude=Number(b.bottomLatitude),a.projection=b.projection;var c=b.wrappedLongitudes;c&&(a.rightLongitude+=360),a.wrappedLongitudes=c}catch(d){}},recalcLongitude:function(a){var b=this.dataProvider.wrappedLongitudes;return void 0!=a&&b&&a89.5&&(a=89.5),-89.5>a&&(a=-89.5),a=AmCharts.degreesToRadians(a),a=.5*Math.log((1+Math.sin(a))/(1-Math.sin(a))),AmCharts.radiansToDegrees(a/2)},zoomLatitude:function(){return this.coordinateToLatitude((-this.mapContainer.y+this.previousHeight/2)/this.zoomLevel())},zoomLongitude:function(){return this.coordinateToLongitude((-this.mapContainer.x+this.previousWidth/2)/this.zoomLevel())},getAreaCenterLatitude:function(a){a=a.displayObject.getBBox();var b=this.mapScale;return a=-this.mapSet.getBBox().y*b+(a.y+a.height/2)*b,this.coordinateToLatitude(a)},getAreaCenterLongitude:function(a){a=a.displayObject.getBBox();var b=this.mapScale;return a=-this.mapSet.getBBox().x*b+(a.x+a.width/2)*b,this.coordinateToLongitude(a)},coordinateToLatitude:function(a){var b;if(this.mapSet){var c=this.dataProvider,d=c.bottomLatitude,e=c.topLatitude;b=this.mapHeight,"mercator"==c.projection?(c=this.mercatorLatitudeToCoordinate(d),e=this.mercatorLatitudeToCoordinate(e),a=2*Math.atan(Math.exp(2*(a*(c-e)/b+e)*Math.PI/180))-.5*Math.PI,b=AmCharts.radiansToDegrees(a)):b=a/b*(d-e)+e}return Math.round(1e6*b)/1e6},coordinateToLongitude:function(a){var b,c=this.dataProvider;return this.mapSet&&(b=a/this.mapWidth*(c.rightLongitude-c.leftLongitude)+c.leftLongitude),Math.round(1e6*b)/1e6},milesToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/69.172},kilometersToPixels:function(a){var b=this.dataProvider;return this.mapWidth/(b.rightLongitude-b.leftLongitude)*a/111.325},handleBackgroundClick:function(a){if(this.backgroundZoomsToTop&&!this.mapWasDragged){var b=this.dataProvider;if(this.checkIfClickable(b))this.clickMapObject(b);else{a=b.zoomX;var c=b.zoomY,d=b.zoomLongitude,e=b.zoomLatitude,b=b.zoomLevel;isNaN(a)||isNaN(c)||this.zoomTo(b,a,c),isNaN(d)||isNaN(e)||this.zoomToLongLat(b,d,e,!0)}}},parseXMLNode:function(a,b,c,d){void 0===d&&(d="");var e,f,g;if(c){var h=c.childNodes.length;for(e=0;h>e;e++){f=c.childNodes[e];var i=f.nodeName,j=f.nodeValue?this.trim(f.nodeValue):"",k=!1;if(f.attributes&&0=0;b--)if(-1===" \n\r \f             ​\u2028\u2029 ".indexOf(a.charAt(b))){a=a.substring(0,b+1);break}return-1===" \n\r \f             ​\u2028\u2029 ".indexOf(a.charAt(0))?a:""}},destroy:function(){var a=this.svgAreas;if(a)for(var b=0;bw;w++)u=e+w*f,u=AmCharts.line(b,[1,e-2],[u,u],c.gridColor,c.gridAlpha,1),AmCharts.setCN(a,u,"zoom-grid"),v.push(u);u=new AmCharts.SimpleButton,u.setDownHandler(c.draggerDown,c),u.setClickHandler(c.draggerUp,c),u.init(b,e,f,h,i,j,k,l,m,n),AmCharts.setCN(a,u.set,"zoom-dragger"),v.push(u.set),c.dragger=u.set,c.previousY=NaN,o-=f,q=Math.log(q/100)/Math.log(p),p=Math.log(r/100)/Math.log(p),c.realStepSize=o/(p-q),c.realGridHeight=o,c.stepMax=p}g&&(g=b.set(),AmCharts.setCN(a,g,"zoom-control-pan"),d.push(g),v&&v.translate(e,4*e),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panLeft.gif",c.iconSize),v.setClickHandler(a.moveLeft,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(0,e),AmCharts.setCN(a,v.set,"pan-left"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panRight.gif",c.iconSize),v.setClickHandler(a.moveRight,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(2*e,e),AmCharts.setCN(a,v.set,"pan-right"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panUp.gif",c.iconSize),v.setClickHandler(a.moveUp,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(e,0),AmCharts.setCN(a,v.set,"pan-up"),g.push(v.set),v=new AmCharts.SimpleButton,v.setIcon(a.pathToImages+"panDown.gif",c.iconSize),v.setClickHandler(a.moveDown,a),v.init(b,e,e,h,i,j,k,l,m,n,s),v.set.translate(e,2*e),AmCharts.setCN(a,v.set,"pan-down"),g.push(v.set),i=new AmCharts.SimpleButton,i.setIcon(a.pathToImages+c.homeIconFile,c.iconSize),i.setClickHandler(a.goHome,a),i.init(b,e,e,h,0,0,k,0,m,n,s),i.set.translate(e,e),AmCharts.setCN(a,i.set,"pan-home"),g.push(i.set),d.push(g))},draggerDown:function(){this.chart.stopDrag(),this.isDragging=!0},draggerUp:function(){this.isDragging=!1},handleBgUp:function(){var a=this.chart,b=100*Math.pow(this.zoomFactor,this.stepMax-(a.mouseY-this.zoomSet.y-this.set.y-this.buttonSize-this.realStepSize/2)/this.realStepSize);a.zoomTo(b)},update:function(){var a,b=this.zoomFactor,c=this.realStepSize,d=this.stepMax,e=this.dragger,f=this.buttonSize,g=this.chart;this.isDragging?(g.stopDrag(),a=e.y+(g.mouseY-this.previousY),a=AmCharts.fitToBounds(a,f,this.realGridHeight+f),c=100*Math.pow(b,d-(a-f)/c),g.zoomTo(c,NaN,NaN,!0)):(a=Math.log(g.zoomLevel()/100)/Math.log(b),a=(d-a)*c+f),this.previousY=g.mouseY,this.previousDY!=a&&e&&(e.translate(0,a),this.previousDY=a)}}),AmCharts.SimpleButton=AmCharts.Class({construct:function(){},init:function(a,b,c,d,e,f,g,h,i,j,k){var l=this;l.rollOverColor=j,l.color=d,j=a.set(),l.set=j,d=AmCharts.rect(a,b,c,d,e,f,g,h,i),j.push(d),(e=l.iconPath)&&(f=l.iconSize,a=a.image(e,(b-f)/2,(c-f)/2,f,f),j.push(a),a.setAttr("opacity",k),a.mousedown(function(){l.handleDown()}).mouseup(function(){l.handleUp()}).mouseover(function(){l.handleOver()}).mouseout(function(){l.handleOut()})),d.mousedown(function(){l.handleDown()}).touchstart(function(){l.handleDown()}).mouseup(function(){l.handleUp()}).touchend(function(){l.handleUp()}).mouseover(function(){l.handleOver()}).mouseout(function(){l.handleOut()}),l.bg=d},setIcon:function(a,b){this.iconPath=a,this.iconSize=b},setClickHandler:function(a,b){this.clickHandler=a,this.scope=b},setDownHandler:function(a,b){this.downHandler=a,this.scope=b},handleUp:function(){var a=this.clickHandler;a&&a.call(this.scope)},handleDown:function(){var a=this.downHandler;a&&a.call(this.scope)},handleOver:function(){this.bg.setAttr("fill",this.rollOverColor)},handleOut:function(){this.bg.setAttr("fill",this.color)}}),AmCharts.SmallMap=AmCharts.Class({construct:function(a){this.cname="SmallMap",this.mapColor="#e6e6e6",this.rectangleColor="#FFFFFF",this.top=this.right=10,this.minimizeButtonWidth=16,this.backgroundColor="#9A9A9A",this.backgroundAlpha=1,this.borderColor="#FFFFFF",this.borderThickness=3,this.borderAlpha=1,this.size=.2,this.enabled=!0,AmCharts.applyTheme(this,a,this.cname)},init:function(a,b){var c=this;if(c.enabled){c.chart=a,c.container=b,c.width=a.realWidth*c.size,c.height=a.realHeight*c.size,AmCharts.remove(c.set);var d=b.set();c.set=d,AmCharts.setCN(a,d,"small-map");var e=b.set();c.allSet=e,d.push(e),c.buildSVGMap();var f=c.borderThickness,g=c.borderColor,h=AmCharts.rect(b,c.width+f,c.height+f,c.backgroundColor,c.backgroundAlpha,f,g,c.borderAlpha);AmCharts.setCN(a,h,"small-map-bg"),h.translate(-f/2,-f/2),e.push(h),h.toBack();var i,j,h=c.minimizeButtonWidth,k=new AmCharts.SimpleButton;k.setIcon(a.pathToImages+"arrowDown.gif",h),k.setClickHandler(c.minimize,c),k.init(b,h,h,g,1,1,g,1),AmCharts.setCN(a,k.set,"small-map-down"),k=k.set,c.downButtonSet=k,d.push(k);var l=new AmCharts.SimpleButton;l.setIcon(a.pathToImages+"arrowUp.gif",h),l.setClickHandler(c.maximize,c),l.init(b,h,h,g,1,1,g,1),AmCharts.setCN(a,l.set,"small-map-up"),g=l.set,c.upButtonSet=g,g.hide(),d.push(g);var m,n;isNaN(c.top)||(i=a.getY(c.top)+f,n=0),isNaN(c.bottom)||(i=a.getY(c.bottom,!0)-c.height-f,n=c.height-h+f/2),isNaN(c.left)||(j=a.getX(c.left)+f,m=-f/2),isNaN(c.right)||(j=a.getX(c.right,!0)-c.width-f,m=c.width-h+f/2),f=b.set(),f.clipRect(1,1,c.width,c.height),e.push(f),c.rectangleC=f,d.translate(j,i),k.translate(m,n),g.translate(m,n),e.mouseup(function(){c.handleMouseUp()}),c.drawRectangle()}else AmCharts.remove(c.allSet),AmCharts.remove(c.downButtonSet),AmCharts.remove(c.upButtonSet)},minimize:function(){this.downButtonSet.hide(),this.upButtonSet.show(),this.allSet.hide()},maximize:function(){this.downButtonSet.show(),this.upButtonSet.hide(),this.allSet.show()},buildSVGMap:function(){var a=this.chart,b={fill:this.mapColor,stroke:this.mapColor,"stroke-opacity":1},c=a.svgData.g.path,d=this.container,e=d.set();AmCharts.setCN(a,e,"small-map-image");var f;for(f=0;f0&&b>0&&(e.setAttr("width",Math.ceil(c+1)),e.setAttr("height",Math.ceil(b+1))),this.rWidth=c,this.rHeight=b},drawRectangle:function(){var a=this.rectangle;AmCharts.remove(a),a=AmCharts.rect(this.container,10,10,"#000",0,1,this.rectangleColor,1),AmCharts.setCN(this.chart,a,"small-map-rectangle"),this.rectangleC.push(a),this.rectangle=a},handleMouseUp:function(){var a=this.chart,b=a.zoomLevel();a.zoomTo(b,-((a.mouseX-this.set.x-this.dx-this.rWidth/2)/this.mapWidth)*b,-((a.mouseY-this.set.y-this.dy-this.rHeight/2)/this.mapHeight)*b)}}),AmCharts.AreasProcessor=AmCharts.Class({construct:function(a){this.chart=a},process:function(a){this.updateAllAreas(),this.allObjects=[],a=a.areas;var b,c,d,e=this.chart,f=a.length,g=0,h=e.svgAreasById,i=!1,j=!1,k=0;for(c=0;f>c;c++)d=a[c],d=d.value,(!1===i||d>i)&&(i=d),(!1===j||j>d)&&(j=d),isNaN(d)||(g+=Math.abs(d),k++);for(isNaN(e.minValue)||(j=e.minValue),isNaN(e.maxValue)||(i=e.maxValue),e.maxValueReal=i,e.minValueReal=j,c=0;f>c;c++)d=a[c],isNaN(d.value)?d.percents=void 0:(d.percents=(d.value-j)/g*100,j==i&&(d.percents=100));for(c=0;f>c;c++){d=a[c];var l=h[d.id];b=e.areasSettings,l&&l.className&&(g=e.areasClasses[l.className])&&(b=g,b=AmCharts.processObject(b,AmCharts.AreasSettings,e.theme));var m=b.color,n=b.alpha,o=b.outlineThickness,p=b.rollOverColor,q=b.selectedColor,r=b.rollOverAlpha,s=b.outlineColor,t=b.outlineAlpha,u=b.balloonText,v=b.selectable,w=b.pattern,x=b.rollOverOutlineColor,y=b.bringForwardOnHover,z=b.preserveOriginalAttributes;if(this.allObjects.push(d),d.chart=e,d.baseSettings=b,d.autoZoomReal=void 0==d.autoZoom?b.autoZoom:d.autoZoom,g=d.color,void 0==g&&(g=m),k=d.alpha,isNaN(k)&&(k=n),n=d.rollOverAlpha,isNaN(n)&&(n=r),isNaN(n)&&(n=k),r=d.rollOverColor,void 0==r&&(r=p),p=d.pattern,void 0==p&&(p=w),w=d.selectedColor,void 0==w&&(w=q),(q=d.balloonText)||(q=u),void 0==b.colorSolid||isNaN(d.value)||(u=Math.floor((d.value-j)/((i-j)/e.colorSteps)),u==e.colorSteps&&u--,colorPercent=1/(e.colorSteps-1)*u,i==j&&(colorPercent=1),d.colorReal=AmCharts.getColorFade(g,b.colorSolid,colorPercent)),void 0!=d.color&&(d.colorReal=d.color),void 0==d.selectable&&(d.selectable=v),void 0==d.colorReal&&(d.colorReal=m),m=d.outlineColor,void 0==m&&(m=s),s=d.outlineAlpha,isNaN(s)&&(s=t),t=d.outlineThickness,isNaN(t)&&(t=o),o=d.rollOverOutlineColor,void 0==o&&(o=x),void 0==d.bringForwardOnHover&&(d.bringForwardOnHover=y),void 0==d.preserveOriginalAttributes&&(d.preserveOriginalAttributes=z),d.alphaReal=k,d.rollOverColorReal=r,d.rollOverAlphaReal=n,d.balloonTextReal=q,d.selectedColorReal=w,d.outlineColorReal=m,d.outlineAlphaReal=s,d.rollOverOutlineColorReal=o,d.outlineThicknessReal=t,d.patternReal=p,AmCharts.processDescriptionWindow(b,d),l&&(b=l.area,x=l.title,d.enTitle=l.title,x&&!d.title&&(d.title=x),(l=e.language)?(x=AmCharts.mapTranslations)&&(l=x[l])&&l[d.enTitle]&&(d.titleTr=l[d.enTitle]):d.titleTr=void 0,b)){d.displayObject=b,d.mouseEnabled&&e.addObjectEventListeners(b,d);var A;void 0!=g&&(A=g),void 0!=d.colorReal&&(A=d.showAsSelected||e.selectedObject==d?d.selectedColorReal:d.colorReal),b.node.setAttribute("class",""),AmCharts.setCN(e,b,"map-area"),AmCharts.setCN(e,b,"map-area-"+b.id),d.preserveOriginalAttributes||(b.setAttr("fill",A),b.setAttr("stroke",m),b.setAttr("stroke-opacity",s),b.setAttr("stroke-width",t),b.setAttr("fill-opacity",k)),p&&b.pattern(p,e.mapScale),d.hidden&&b.hide()}}},updateAllAreas:function(){var a,b=this.chart,c=b.areasSettings,d=c.unlistedAreasColor,e=c.unlistedAreasAlpha,f=c.unlistedAreasOutlineColor,g=c.unlistedAreasOutlineAlpha,h=b.svgAreas,i=b.dataProvider,j=i.areas,k={};for(a=0;a0&&(i=x.getBBox(),d=AmCharts.rect(d,i.width+16,i.height+10,h,y),AmCharts.setCN(c,d,"map-image-label-background"),void 0!=a.id&&AmCharts.setCN(c,d,"map-image-label-background-"+a.id),w.push(d),a.labelBG=d),a.imageLabel=x,w.push(x),AmCharts.setCN(c,w,"map-image-container"),void 0!=a.id&&AmCharts.setCN(c,w,"map-image-container-"+a.id)),isNaN(a.latitude)||isNaN(a.longitude)?f.push(w):e.push(w),w&&(w.rotation=a.rotation),this.updateSizeAndPosition(a),a.mouseEnabled&&c.addObjectEventListeners(w,a),a.hidden&&w.hide()},updateSizeAndPosition:function(a){var b=this.chart,c=a.displayObject,d=b.getX(a.left),e=b.getY(a.top),f=a.image.getBBox();isNaN(a.right)||(d=b.getX(a.right,!0)-f.width*a.scale),isNaN(a.bottom)||(e=b.getY(a.bottom,!0)-f.height*a.scale);var g=a.longitude,h=a.latitude,f=this.objectsToResize;this.allSvgObjects.push(c),this.allObjects.push(a);var i=a.imageLabel;isNaN(d)||isNaN(e)?isNaN(h)||isNaN(g)||(d=b.longitudeToCoordinate(g),e=b.latitudeToCoordinate(h),c.translate(d,e,NaN,!0),!a.fixedSize)||(d=1,(a.showAsSelected||b.selectedObject==a)&&(d=a.selectedScaleReal),f.push({image:c,scale:d})):c.translate(d,e),this.positionLabel(i,a,a.labelPositionReal)},positionLabel:function(a,b,c){if(a){var d=b.image,e=0,f=0,g=0,h=0;d&&(h=d.getBBox(),f=d.y,e=d.x,g=h.width,h=h.height,b.svgPath&&(g*=b.scale,h*=b.scale));var d=a.getBBox(),i=d.width,j=d.height;"right"==c&&(e+=g+i/2+5,f+=h/2-2),"left"==c&&(e+=-i/2-5,f+=h/2-2),"top"==c&&(f-=j/2+3,e+=g/2),"bottom"==c&&(f+=h+j/2,e+=g/2),"middle"==c&&(e+=g/2,f+=h/2),a.translate(e+b.labelShiftX,f+b.labelShiftY),b.labelBG&&b.labelBG.translate(e-d.width/2+b.labelShiftX-9,f+b.labelShiftY-d.height/2-3)}},createPredefinedImage:function(a,b,c,d,e,f){var g,h=this.chart.container;switch(d){case"circle":g=AmCharts.circle(h,e/2,a,1,c,b,1);break;case"rectangle":g=AmCharts.polygon(h,[-e/2,e/2,e/2,-e/2],[f/2,f/2,-f/2,-f/2],a,1,c,b,1);break;case"bubble":g=AmCharts.circle(h,e/2,a,1,c,b,1,!0)}return g},reset:function(){this.objectsToResize=[],this.allSvgObjects=[],this.allObjects=[],this.allLabels=[]}}),AmCharts.ImagesSettings=AmCharts.Class({construct:function(a){this.cname="ImagesSettings",this.balloonText="[[title]]",this.alpha=1,this.borderAlpha=0,this.borderThickness=1,this.labelPosition="right",this.labelColor="#000000",this.labelFontSize=11,this.color="#000000",this.labelRollOverColor="#00CC00",this.centered=!0,this.rollOverScale=this.selectedScale=1,this.descriptionWindowWidth=250,this.bringForwardOnHover=!0,AmCharts.applyTheme(this,a,this.cname)}}),AmCharts.LinesProcessor=AmCharts.Class({construct:function(a){this.chart=a,this.reset()},process:function(a){var b,c=a.lines,d=this.chart,e=d.linesSettings,f=this.objectsToResize,g=d.mapLinesContainer,h=d.stageLinesContainer,i=e.thickness,j=e.dashLength,k=e.arrow,l=e.arrowSize,m=e.arrowColor,n=e.arrowAlpha,o=e.color,p=e.alpha,q=e.rollOverColor,r=e.selectedColor,s=e.rollOverAlpha,t=e.balloonText,u=e.bringForwardOnHover,v=d.container;for(b=0;b0)for(C=[],K=0;M>K;K++)C.push(d.longitudeToCoordinate(L[K]));if(M=F.length,M>0)for(D=[],K=0;M>K;K++)D.push(d.latitudeToCoordinate(F[K]));if(0B-M?N-90:N+90),"both"==G&&(B=AmCharts.polygon(v,[-J/2,0,J/2],[1.5*J,0,1.5*J],H,I,1,H,I),x.push(B),B.translate(O,P),B.rotate(N),AmCharts.setCN(d,L,"map-line-arrow"),void 0!=w.id&&AmCharts.setCN(d,L,"map-line-arrow-"+w.id),w.fixedSize&&f.push(B)),("start"==G||"both"==G)&&(B=C[0],P=D[0],1B-A?N-90:N+90),"middle"==G&&(B=C[C.length-1],A=D[D.length-1],1B-M?N-90:N+90),B=AmCharts.polygon(v,[-J/2,0,J/2],[1.5*J,0,1.5*J],H,I,1,H,I),AmCharts.setCN(d,L,"map-line-arrow"),void 0!=w.id&&AmCharts.setCN(d,L,"map-line-arrow-"+w.id),x.push(B),B.translate(O,P),B.rotate(N),w.fixedSize&&f.push(B),w.arrowSvg=B}w.fixedSize&&L&&(this.linesToResize.push({line:L,thickness:y}),this.linesToResize.push({line:z,thickness:3})),w.lineSvg=L,w.showAsSelected&&!isNaN(E)&&L.setAttr("stroke",E),0j;j++)k=AmCharts.getColorFade(c,d,1*j/(e-1)),k=AmCharts.rect(b,i,this.height,k,1,this.borderThickness,this.borderColor,1),AmCharts.setCN(a,k,"value-legend-color"),AmCharts.setCN(a,k,"value-legend-color-"+j),k.translate(i*j,g),f.push(k);d=c=0,e=f.getBBox(),g=a.getY(this.bottom,!0),i=a.getY(this.top),j=a.getX(this.right,!0),k=a.getX(this.left),isNaN(i)||(c=i),isNaN(g)||(c=g-e.height),isNaN(k)||(d=k),isNaN(j)||(d=j-e.width),f.translate(d,c)}else AmCharts.remove(this.set)}}),AmCharts.ObjectList=AmCharts.Class({construct:function(a){this.divId=a},init:function(a){this.chart=a;var b;b=this.divId,this.container&&(b=this.container),this.div=b="object"!=typeof b?document.getElementById(b):b,b=document.createElement("div"),b.className="ammapObjectList "+a.classNamePrefix+"-object-list-div",this.div.appendChild(b),this.addObjects(a.dataProvider,b)},addObjects:function(a,b){var c=this.chart,d=document.createElement("ul");d.className=c.classNamePrefix+"-object-list-ul";var e;if(a.areas)for(e=0;ef;++f){var i=g(a,b[f]);if(!i&&e.original)return e.original(b,c);d.push(i)}c&&c.apply(null,d)}else{if("string"==typeof b){var j=g(a,b);return!j&&e.original?e.original(b,c):(c&&c(),j)}if(e.original)return e.original(b,c)}},f=function(a,b){if(-1!==b.indexOf("!")){var c=b.split("!");return f(a,c[0])+"!"+f(a,c[1])}if("."==b.charAt(0)){var d=a.split("/").slice(0,-1).join("/");for(b=d+"/"+b;-1!==b.indexOf(".")&&e!=b;){var e=b;b=b.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return b},g=function(a,b){b=f(a,b);var c=d.modules[b];if(!c){if(c=d.payloads[b],"function"==typeof c){var g={},h={id:b,uri:"",exports:g,packaged:!0},i=function(a,c){return e(b,a,c)},j=c(i,g,h);g=j||h.exports,d.modules[b]=g,delete d.payloads[b]}c=d.modules[b]=g||c}return c};a(b)}}(),define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/multi_select","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(a,b,c){a("./lib/fixoldbrowsers");var d=a("./lib/dom"),e=a("./lib/event"),f=a("./editor").Editor,g=a("./edit_session").EditSession,h=a("./undomanager").UndoManager,i=a("./virtual_renderer").VirtualRenderer,j=a("./multi_select").MultiSelect;a("./worker/worker_client"),a("./keyboard/hash_handler"),a("./placeholder"),a("./mode/folding/fold_mode"),a("./theme/textmate"),a("./ext/error_marker"),b.config=a("./config"),b.require=a,b.edit=function(a){if("string"==typeof a){var c=a,a=document.getElementById(c);if(!a)throw new Error("ace.edit can't find div #"+c)}if(a.env&&a.env.editor instanceof f)return a.env.editor;var g=b.createEditSession(d.getInnerText(a));a.innerHTML="";var h=new f(new i(a));new j(h),h.setSession(g);var k={document:g,editor:h,onResize:h.resize.bind(h,null)};return e.addListener(window,"resize",k.onResize),h.on("destroy",function(){e.removeListener(window,"resize",k.onResize)}),a.env=h.env=k,h},b.createEditSession=function(a,b){var c=new g(a,b);return c.setUndoManager(new h),c},b.EditSession=g,b.UndoManager=h}),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(a,b,c){a("./regexp"),a("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(a,b,c){function d(a){return(a.global?"g":"")+(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.extended?"x":"")+(a.sticky?"y":"")}function e(a,b,c){if(Array.prototype.indexOf)return a.indexOf(b,c);for(var d=c||0;d1&&e(i,"")>-1&&(c=RegExp(this.source,f.replace.call(d(this),"g","")),f.replace.call(a.slice(i.index),c,function(){for(var a=1;ai.index&&this.lastIndex--}return i},h||(RegExp.prototype.test=function(a){var b=f.exec.call(this,a);return b&&this.global&&!b[0].length&&this.lastIndex>b.index&&this.lastIndex--,!!b}))}),define("ace/lib/es5-shim",["require","exports","module"],function(a,b,c){function d(){}function e(a){try{return Object.defineProperty(a,"sentinel",{}),"sentinel"in a}catch(b){}}function f(a){return a=+a,a!==a?a=0:0!==a&&a!==1/0&&a!==-(1/0)&&(a=(a>0||-1)*Math.floor(Math.abs(a))),a}Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError("Function.prototype.bind called on incompatible "+b);var c=o.call(arguments,1),e=function(){if(this instanceof e){var d=b.apply(this,c.concat(o.call(arguments)));return Object(d)===d?d:this}return b.apply(a,c.concat(o.call(arguments)))};return b.prototype&&(d.prototype=b.prototype,e.prototype=new d,d.prototype=null),e});var g,h,i,j,k,l=Function.prototype.call,m=Array.prototype,n=Object.prototype,o=m.slice,p=l.bind(n.toString),q=l.bind(n.hasOwnProperty);if((k=q(n,"__defineGetter__"))&&(g=l.bind(n.__defineGetter__),h=l.bind(n.__defineSetter__),i=l.bind(n.__lookupGetter__),j=l.bind(n.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function a(a){var b=new Array(a+2);return b[0]=b[1]=0,b}var b,c=[];return c.splice.apply(c,a(20)),c.splice.apply(c,a(26)),b=c.length,c.splice(5,0,"XXX"),b+1==c.length,b+1==c.length?!0:void 0}()){var r=Array.prototype.splice;Array.prototype.splice=function(a,b){return arguments.length?r.apply(this,[void 0===a?0:a,void 0===b?this.length-a:b].concat(o.call(arguments,2))):[]}}else Array.prototype.splice=function(a,b){var c=this.length;a>0?a>c&&(a=c):void 0==a?a=0:0>a&&(a=Math.max(c+a,0)),c>a+b||(b=c-a);var d=this.slice(a,a+b),e=o.call(arguments,2),f=e.length;if(a===c)f&&this.push.apply(this,e);else{var g=Math.min(b,c-a),h=a+g,i=h+f-g,j=c-h,k=c-g;if(h>i)for(var l=0;j>l;++l)this[i+l]=this[h+l];else if(i>h)for(l=j;l--;)this[i+l]=this[h+l];if(f&&a===k)this.length=k,this.push.apply(this,e);else for(this.length=k+f,l=0;f>l;++l)this[a+l]=e[l]}return d};Array.isArray||(Array.isArray=function(a){return"[object Array]"==p(a)});var s=Object("a"),t="a"!=s[0]||!(0 in s);if(Array.prototype.forEach||(Array.prototype.forEach=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=arguments[1],e=-1,f=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError;for(;++e>>0,e=Array(d),f=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var g=0;d>g;g++)g in c&&(e[g]=a.call(f,c[g],g,b));return e}),Array.prototype.filter||(Array.prototype.filter=function(a){var b,c=K(this),d=t&&"[object String]"==p(this)?this.split(""):c,e=d.length>>>0,f=[],g=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var h=0;e>h;h++)h in d&&(b=d[h],a.call(g,b,h,c)&&f.push(b));return f}),Array.prototype.every||(Array.prototype.every=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&!a.call(e,c[f],f,b))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&a.call(e,c[f],f,b))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var e,f=0;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f++];break}if(++f>=d)throw new TypeError("reduce of empty array with no initial value")}for(;d>f;f++)f in c&&(e=a.call(void 0,e,c[f],f,b));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(a){var b=K(this),c=t&&"[object String]"==p(this)?this.split(""):b,d=c.length>>>0;if("[object Function]"!=p(a))throw new TypeError(a+" is not a function");if(!d&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var e,f=d-1;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f--];break}if(--f<0)throw new TypeError("reduceRight of empty array with no initial value")}do f in this&&(e=a.call(void 0,e,c[f],f,b));while(f--);return e}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=0;for(arguments.length>1&&(d=f(arguments[1])),d=d>=0?d:Math.max(0,c+d);c>d;d++)if(d in b&&b[d]===a)return d;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(a){var b=t&&"[object String]"==p(this)?this.split(""):K(this),c=b.length>>>0;if(!c)return-1;var d=c-1;for(arguments.length>1&&(d=Math.min(d,f(arguments[1]))),d=d>=0?d:c-Math.abs(d);d>=0;d--)if(d in b&&a===b[d])return d;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(a){return a.__proto__||(a.constructor?a.constructor.prototype:n)}),!Object.getOwnPropertyDescriptor){var u="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(a,b){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(u+a);if(q(a,b)){var c,d,e;if(c={enumerable:!0,configurable:!0},k){var f=a.__proto__;a.__proto__=n;var d=i(a,b),e=j(a,b);if(a.__proto__=f,d||e)return d&&(c.get=d),e&&(c.set=e),c}return c.value=a[b],c}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(a){return Object.keys(a)}),!Object.create){var v;v=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var a={};for(var b in a)a[b]=null;return a.constructor=a.hasOwnProperty=a.propertyIsEnumerable=a.isPrototypeOf=a.toLocaleString=a.toString=a.valueOf=a.__proto__=null,a},Object.create=function(a,b){var c;if(null===a)c=v();else{if("object"!=typeof a)throw new TypeError("typeof prototype["+typeof a+"] != 'object'");var d=function(){};d.prototype=a,c=new d,c.__proto__=a}return void 0!==b&&Object.defineProperties(c,b),c}}if(Object.defineProperty){var w=e({}),x="undefined"==typeof document||e(document.createElement("div"));if(!w||!x)var y=Object.defineProperty}if(!Object.defineProperty||y){var z="Property description must be an object: ",A="Object.defineProperty called on non-object: ",B="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(a,b,c){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError(A+a);if("object"!=typeof c&&"function"!=typeof c||null===c)throw new TypeError(z+c);if(y)try{return y.call(Object,a,b,c)}catch(d){}if(q(c,"value"))if(k&&(i(a,b)||j(a,b))){var e=a.__proto__;a.__proto__=n,delete a[b],a[b]=c.value,a.__proto__=e}else a[b]=c.value;else{if(!k)throw new TypeError(B);q(c,"get")&&g(a,b,c.get),q(c,"set")&&h(a,b,c.set)}return a}}Object.defineProperties||(Object.defineProperties=function(a,b){for(var c in b)q(b,c)&&Object.defineProperty(a,c,b[c]);return a}),Object.seal||(Object.seal=function(a){return a}),Object.freeze||(Object.freeze=function(a){return a});try{Object.freeze(function(){})}catch(C){Object.freeze=function(a){return function(b){return"function"==typeof b?b:a(b)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(a){return a}),Object.isSealed||(Object.isSealed=function(a){return!1}),Object.isFrozen||(Object.isFrozen=function(a){return!1}),Object.isExtensible||(Object.isExtensible=function(a){if(Object(a)===a)throw new TypeError;for(var b="";q(a,b);)b+="?";a[b]=!0;var c=q(a,b);return delete a[b],c}),!Object.keys){var D=!0,E=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],F=E.length;for(var G in{toString:null})D=!1;Object.keys=function L(a){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError("Object.keys called on a non-object");var L=[];for(var b in a)q(a,b)&&L.push(b);if(D)for(var c=0,d=F;d>c;c++){var e=E[c];q(a,e)&&L.push(e)}return L}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||H.trim()){H="["+H+"]";var I=new RegExp("^"+H+H+"*"),J=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(I,"").replace(J,"")}}var K=function(a){if(null==a)throw new TypeError("can't convert "+a+" to object");return Object(a)}}),define("ace/lib/dom",["require","exports","module"],function(a,b,c){if("undefined"!=typeof document){var d="http://www.w3.org/1999/xhtml";b.getDocumentHead=function(a){return a||(a=document),a.head||a.getElementsByTagName("head")[0]||a.documentElement},b.createElement=function(a,b){return document.createElementNS?document.createElementNS(b||d,a):document.createElement(a)},b.hasCssClass=function(a,b){var c=a.className.split(/\s+/g);return-1!==c.indexOf(b)},b.addCssClass=function(a,c){b.hasCssClass(a,c)||(a.className+=" "+c)},b.removeCssClass=function(a,b){for(var c=a.className.split(/\s+/g);;){var d=c.indexOf(b);if(-1==d)break;c.splice(d,1)}a.className=c.join(" ")},b.toggleCssClass=function(a,b){for(var c=a.className.split(/\s+/g),d=!0;;){var e=c.indexOf(b);if(-1==e)break;d=!1,c.splice(e,1)}return d&&c.push(b),a.className=c.join(" "),d},b.setCssClass=function(a,c,d){d?b.addCssClass(a,c):b.removeCssClass(a,c)},b.hasCssString=function(a,b){var c,d=0;if(b=b||document,b.createStyleSheet&&(c=b.styleSheets)){for(;dk&&(h.altGr=!0)}}}if(c in e.MODIFIER_KEYS){switch(e.MODIFIER_KEYS[c]){case"Alt":d=2;break;case"Shift":d=4;break;case"Ctrl":d=1;break;default:d=8}c=-1}return 8&d&&(91===c||93===c)&&(c=-1),d||13!==c||!b.location&&3!==b.keyLocation||(a(b,d,-c),!b.defaultPrevented)?d||c in e.FUNCTION_KEYS||c in e.PRINTABLE_KEYS?a(b,d,c):!1:void 0}var e=a("./keys"),f=a("./useragent");b.addListener=function(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1);if(a.attachEvent){var d=function(){c.call(a,window.event)};c._wrapper=d,a.attachEvent("on"+b,d)}},b.removeListener=function(a,b,c){return a.removeEventListener?a.removeEventListener(b,c,!1):void(a.detachEvent&&a.detachEvent("on"+b,c._wrapper||c))},b.stopEvent=function(a){return b.stopPropagation(a),b.preventDefault(a),!1},b.stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},b.preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},b.getButton=function(a){return"dblclick"==a.type?0:"contextmenu"==a.type||a.ctrlKey&&f.isMac?2:a.preventDefault?a.button:{1:0,2:2,4:1}[a.button]},b.capture=function(a,c,d){function e(a){c&&c(a),d&&d(a),b.removeListener(document,"mousemove",c,!0),b.removeListener(document,"mouseup",e,!0),b.removeListener(document,"dragstart",e,!0)}return b.addListener(document,"mousemove",c,!0),b.addListener(document,"mouseup",e,!0),b.addListener(document,"dragstart",e,!0),e},b.addMouseWheelListener=function(a,c){"onmousewheel"in a?b.addListener(a,"mousewheel",function(a){var b=8;void 0!==a.wheelDeltaX?(a.wheelX=-a.wheelDeltaX/b,a.wheelY=-a.wheelDeltaY/b):(a.wheelX=0,a.wheelY=-a.wheelDelta/b),c(a)}):"onwheel"in a?b.addListener(a,"wheel",function(a){var b=.35;switch(a.deltaMode){case a.DOM_DELTA_PIXEL:a.wheelX=a.deltaX*b||0,a.wheelY=a.deltaY*b||0;break;case a.DOM_DELTA_LINE:case a.DOM_DELTA_PAGE:a.wheelX=5*(a.deltaX||0),a.wheelY=5*(a.deltaY||0)}c(a)}):b.addListener(a,"DOMMouseScroll",function(a){a.axis&&a.axis==a.HORIZONTAL_AXIS?(a.wheelX=5*(a.detail||0),a.wheelY=0):(a.wheelX=0,a.wheelY=5*(a.detail||0)),c(a)})},b.addMultiMouseDownListener=function(a,c,d,e){var g,h,i,j=0,k={2:"dblclick",3:"tripleclick",4:"quadclick"};b.addListener(a,"mousedown",function(a){if(0!==b.getButton(a)?j=0:a.detail>1?(j++,j>4&&(j=1)):j=1,f.isIE){var l=Math.abs(a.clientX-g)>5||Math.abs(a.clientY-h)>5;(!i||l)&&(j=1),i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),1==j&&(g=a.clientX,h=a.clientY)}if(d[e]("mousedown",a),j>4)j=0;else if(j>1)return d[e](k[j],a)}),f.isOldIE&&b.addListener(a,"dblclick",function(a){j=2,i&&clearTimeout(i),i=setTimeout(function(){i=null},c[j-1]||600),d[e]("mousedown",a),d[e](k[j],a)})};var g=!f.isMac||!f.isOpera||"KeyboardEvent"in window?function(a){return 0|(a.ctrlKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.metaKey?8:0)}:function(a){return 0|(a.metaKey?1:0)|(a.altKey?2:0)|(a.shiftKey?4:0)|(a.ctrlKey?8:0)};b.getModifierString=function(a){return e.KEY_MODS[g(a)]};var h=null,i=0;if(b.addCommandKeyListener=function(a,c){var e=b.addListener;if(f.isOldGecko||f.isOpera&&!("KeyboardEvent"in window)){var g=null;e(a,"keydown",function(a){g=a.keyCode}),e(a,"keypress",function(a){return d(c,a,g)})}else{var i=null;e(a,"keydown",function(a){h[a.keyCode]=!0;var b=d(c,a,a.keyCode);return i=a.defaultPrevented,b}),e(a,"keypress",function(a){i&&(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey)&&(b.stopEvent(a),i=null)}),e(a,"keyup",function(a){h[a.keyCode]=null}),h||(h=Object.create(null),e(window,"focus",function(a){h=Object.create(null)}))}},window.postMessage&&!f.isOldIE){var j=1;b.nextTick=function(a,c){c=c||window;var d="zero-timeout-message-"+j;b.addListener(c,"message",function e(f){f.data==d&&(b.stopPropagation(f),b.removeListener(c,"message",e),a())}),c.postMessage(d,"*")}}b.nextFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame,b.nextFrame?b.nextFrame=b.nextFrame.bind(window):b.nextFrame=function(a){setTimeout(a,17)}}),define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(a,b,c){var d=a("./oop"),e=function(){var a,b,c={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,"super":8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}};for(b in c.FUNCTION_KEYS)a=c.FUNCTION_KEYS[b].toLowerCase(),c[a]=parseInt(b,10);for(b in c.PRINTABLE_KEYS)a=c.PRINTABLE_KEYS[b].toLowerCase(),c[a]=parseInt(b,10);return d.mixin(c,c.MODIFIER_KEYS),d.mixin(c,c.PRINTABLE_KEYS),d.mixin(c,c.FUNCTION_KEYS),c.enter=c["return"],c.escape=c.esc,c.del=c["delete"],c[173]="-",function(){for(var a=["cmd","ctrl","alt","shift"],b=Math.pow(2,a.length);b--;)c.KEY_MODS[b]=a.filter(function(a){return b&c.KEY_MODS[a]}).join("-")+"-"}(),c}();d.mixin(b,e),b.keyCodeToString=function(a){var b=e[a];return"string"!=typeof b&&(b=String.fromCharCode(a)),b.toLowerCase()}}),define("ace/lib/oop",["require","exports","module"],function(a,b,c){b.inherits=function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})},b.mixin=function(a,b){for(var c in b)a[c]=b[c];return a},b.implement=function(a,c){b.mixin(a,c)}}),define("ace/lib/useragent",["require","exports","module"],function(a,b,c){if(b.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},b.getOS=function(){return b.isMac?b.OS.MAC:b.isLinux?b.OS.LINUX:b.OS.WINDOWS},"object"==typeof navigator){var d=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),e=navigator.userAgent;b.isWin="win"==d,b.isMac="mac"==d,b.isLinux="linux"==d,b.isIE="Microsoft Internet Explorer"==navigator.appName||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((e.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((e.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),b.isOldIE=b.isIE&&b.isIE<9,b.isGecko=b.isMozilla=window.controllers&&"Gecko"===window.navigator.product,b.isOldGecko=b.isGecko&&parseInt((e.match(/rv\:(\d+)/)||[])[1],10)<4,b.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),b.isWebKit=parseFloat(e.split("WebKit/")[1])||void 0,b.isChrome=parseFloat(e.split(" Chrome/")[1])||void 0,b.isAIR=e.indexOf("AdobeAIR")>=0,b.isIPad=e.indexOf("iPad")>=0,b.isTouchPad=e.indexOf("TouchPad")>=0}}),define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config"],function(a,b,c){a("./lib/fixoldbrowsers");var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/lang"),g=a("./lib/useragent"),h=a("./keyboard/textinput").TextInput,i=a("./mouse/mouse_handler").MouseHandler,j=a("./mouse/fold_handler").FoldHandler,k=a("./keyboard/keybinding").KeyBinding,l=a("./edit_session").EditSession,m=a("./search").Search,n=a("./range").Range,o=a("./lib/event_emitter").EventEmitter,p=a("./commands/command_manager").CommandManager,q=a("./commands/default_commands").commands,r=a("./config"),s=function(a,b){var c=a.getContainerElement();this.container=c,this.renderer=a,this.commands=new p(g.isMac?"mac":"win",q),this.textInput=new h(a.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.keyBinding=new k(this),this.$mouseHandler=new i(this),new j(this),this.$blockScrolling=0,this.$search=(new m).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=f.delayedCall(function(){this._signal("input",{}),this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(a,b){b._$emitInputEvent.schedule(31)}),this.setSession(b||new l("")),r.resetOptions(this),r._signal("editor",this)};(function(){d.implement(this,o),this.$initOperationListeners=function(){function a(a){return a[a.length-1]}this.selections=[],this.commands.on("exec",function(b){this.startOperation(b);var c=b.command;if("fileJump"==c.aceCommandGroup){var d=this.prevOp;d&&"fileJump"==d.command.aceCommandGroup||(this.lastFileJumpPos=a(this.selections))}else this.lastFileJumpPos=null}.bind(this),!0),this.commands.on("afterExec",function(a){var b=a.command;"fileJump"==b.aceCommandGroup&&this.lastFileJumpPos&&!this.curOp.selectionChanged&&this.selection.fromJSON(this.lastFileJumpPos),this.endOperation(a)}.bind(this),!0),this.$opResetTimer=f.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(a){if(this.curOp){if(!a||this.curOp.command)return;this.prevOp=this.curOp}a||(this.previousCommand=null,a={}),this.$opResetTimer.schedule(),this.curOp={command:a.command||{},args:a.args,scrollTop:this.renderer.scrollTop};var b=this.curOp.command;b&&b.scrollIntoView&&this.$blockScrolling++,this.selections.push(this.selection.toJSON())},this.endOperation=function(){if(this.curOp){var a=this.curOp.command;if(a&&a.scrollIntoView){switch(this.$blockScrolling--,a.scrollIntoView){case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var b=this.selection.getRange(),c=this.renderer.layerConfig;(b.start.row>=c.lastRow||b.end.row<=c.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==a.scrollIntoView&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$historyTracker=function(a){if(this.$mergeUndoDeltas){var b=this.prevOp,c=["backspace","del","insertstring"],d=b.command&&a.command.name==b.command.name;if("insertstring"==a.command.name){var e=a.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),d=d&&this.mergeNextCommand&&(!/\s/.test(e)||/\s/.test(b.args)),this.mergeNextCommand=!0}else d=d&&-1!==c.indexOf(a.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(d=!1),d?this.session.mergeUndoDeltas=!0:-1!==c.indexOf(a.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(a){if(a)if("string"==typeof a){this.$keybindingId=a;var b=this;r.loadModule(["keybinding",a],function(c){b.$keybindingId==a&&b.keyBinding.setKeyboardHandler(c&&c.handler)})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(a);else this.keyBinding.setKeyboardHandler(null)},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(a){if(this.session!=a){var b=this.session;if(b){this.session.removeEventListener("change",this.$onDocumentChange),this.session.removeEventListener("changeMode",this.$onChangeMode),this.session.removeEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.session.removeEventListener("changeTabSize",this.$onChangeTabSize),this.session.removeEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.session.removeEventListener("changeWrapMode",this.$onChangeWrapMode),this.session.removeEventListener("onChangeFold",this.$onChangeFold),this.session.removeEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.session.removeEventListener("changeBackMarker",this.$onChangeBackMarker),this.session.removeEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.session.removeEventListener("changeAnnotation",this.$onChangeAnnotation),this.session.removeEventListener("changeOverwrite",this.$onCursorChange),this.session.removeEventListener("changeScrollTop",this.$onScrollTopChange),this.session.removeEventListener("changeScrollLeft",this.$onScrollLeftChange);var c=this.session.getSelection();c.removeEventListener("changeCursor",this.$onCursorChange),c.removeEventListener("changeSelection",this.$onSelectionChange)}this.session=a,a&&(this.$onDocumentChange=this.onDocumentChange.bind(this),a.addEventListener("change",this.$onDocumentChange),this.renderer.setSession(a),this.$onChangeMode=this.onChangeMode.bind(this),a.addEventListener("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),a.addEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),a.addEventListener("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this), +a.addEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),a.addEventListener("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),a.addEventListener("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.addEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.addEventListener("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.addEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.addEventListener("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.addEventListener("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.addEventListener("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.addEventListener("changeScrollLeft",this.$onScrollLeftChange),this.selection=a.getSelection(),this.selection.addEventListener("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.addEventListener("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()),this._signal("changeSession",{session:a,oldSession:b}),b&&b._signal("changeEditor",{oldEditor:this}),a&&a._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(a,b){return this.session.doc.setValue(a),b?1==b?this.navigateFileEnd():-1==b&&this.navigateFileStart():this.selectAll(),a},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(a){this.renderer.onResize(a)},this.setTheme=function(a,b){this.renderer.setTheme(a,b)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(a){this.renderer.setStyle(a)},this.unsetStyle=function(a){this.renderer.unsetStyle(a)},this.getFontSize=function(){return this.getOption("fontSize")||e.computedStyle(this.container,"fontSize")},this.setFontSize=function(a){this.setOption("fontSize",a)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var a=this;this.$highlightPending=!0,setTimeout(function(){a.$highlightPending=!1;var b=a.session.findMatchingBracket(a.getCursorPosition());if(b)var c=new n(b.row,b.column,b.row,b.column+1);else if(a.session.$mode.getMatching)var c=a.session.$mode.getMatching(a.session);c&&(a.session.$bracketHighlight=a.session.addMarker(c,"ace_bracket","text"))},50)}},this.focus=function(){var a=this;setTimeout(function(){a.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus"))},this.onBlur=function(){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur"))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(a){var b,c=a.data,d=c.range;b=d.start.row==d.end.row&&"insertLines"!=c.action&&"removeLines"!=c.action?d.end.row:1/0,this.renderer.updateLines(d.start.row,b),this._signal("change",a),this.$cursorChange()},this.onTokenizerUpdate=function(a){var b=a.data;this.renderer.updateLines(b.first,b.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||this.renderer.scrollCursorIntoView(),this.$highlightBrackets(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var a,b=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(a=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(a=!1)),b.$highlightLineMarker&&!a)b.removeMarker(b.$highlightLineMarker.id),b.$highlightLineMarker=null;else if(!b.$highlightLineMarker&&a){var c=new n(a.row,a.column,a.row,1/0);c.id=b.addMarker(c,"ace_active-line","screenLine"),b.$highlightLineMarker=c}else a&&(b.$highlightLineMarker.start.row=a.row,b.$highlightLineMarker.end.row=a.row,b.$highlightLineMarker.start.column=a.column,b._signal("changeBackMarker"))},this.onSelectionChange=function(a){var b=this.session;if(b.$selectionMarker&&b.removeMarker(b.$selectionMarker),b.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var c=this.selection.getRange(),d=this.getSelectionStyle();b.$selectionMarker=b.addMarker(c,"ace_selection",d)}var e=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(e),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var a=this.session,b=this.getSelectionRange();if(!b.isEmpty()&&!b.isMultiLine()){var c=b.start.column-1,d=b.end.column+1,e=a.getLine(b.start.row),f=e.length,g=e.substring(Math.max(c,0),Math.min(d,f));if(!(c>=0&&/^[\w\d]/.test(g)||f>=d&&/[\w\d]$/.test(g))&&(g=e.substring(b.start.column,b.end.column),/^[\w\d]+$/.test(g))){var h=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:g});return h}}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(a){this.renderer.updateText(),this._emit("changeMode",a)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var a=this.getSelectedText();return this._signal("copy",a),a},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(a){if(!this.$readOnly){var b={text:a};this._signal("paste",b),this.insert(b.text,!0)}},this.execCommand=function(a,b){this.commands.exec(a,this,b)},this.insert=function(a,b){var c=this.session,d=c.getMode(),e=this.getCursorPosition();if(this.getBehavioursEnabled()&&!b){var f=d.transformAction(c.getState(e.row),"insertion",this,c,a);f&&(a!==f.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),a=f.text)}if(" "==a&&(a=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){var g=new n.fromPoints(e,e);g.end.column+=a.length,this.session.remove(g)}}else{var g=this.getSelectionRange();e=this.session.remove(g),this.clearSelection()}if("\n"==a||"\r\n"==a){var h=c.getLine(e.row);if(e.column>h.search(/\S|$/)){var i=h.substr(e.column).search(/\S|$/);c.doc.removeInLine(e.row,e.column,e.column+i)}}this.clearSelection();var j=e.column,k=c.getState(e.row),h=c.getLine(e.row),l=d.checkOutdent(k,h,a);c.insert(e,a);if(f&&f.selection&&(2==f.selection.length?this.selection.setSelectionRange(new n(e.row,j+f.selection[0],e.row,j+f.selection[1])):this.selection.setSelectionRange(new n(e.row+f.selection[0],f.selection[1],e.row+f.selection[2],f.selection[3]))),c.getDocument().isNewLine(a)){var m=d.getNextLineIndent(k,h.slice(0,e.column),c.getTabString());c.insert({row:e.row+1,column:0},m)}l&&d.autoOutdent(k,c,e.row)},this.onTextInput=function(a){this.keyBinding.onTextInput(a)},this.onCommandKey=function(a,b,c){this.keyBinding.onCommandKey(a,b,c)},this.setOverwrite=function(a){this.session.setOverwrite(a)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(a){this.setOption("scrollSpeed",a)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(a){this.setOption("dragDelay",a)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(a){this.setOption("selectionStyle",a)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(a){this.setOption("highlightActiveLine",a)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(a){this.setOption("highlightSelectedWord",a)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(a){this.renderer.setAnimatedScroll(a)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(a){this.renderer.setShowInvisibles(a)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(a){this.renderer.setDisplayIndentGuides(a)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(a){this.renderer.setShowPrintMargin(a)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(a){this.renderer.setPrintMarginColumn(a)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(a){this.setOption("readOnly",a)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(a){this.setOption("behavioursEnabled",a)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(a){this.setOption("wrapBehavioursEnabled",a)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(a){this.setOption("showFoldWidgets",a)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(a){this.selection.isEmpty()&&("left"==a?this.selection.selectLeft():this.selection.selectRight());var b=this.getSelectionRange();if(this.getBehavioursEnabled()){var c=this.session,d=c.getState(b.start.row),e=c.getMode().transformAction(d,"deletion",this,c,b);if(0===b.end.column){var f=c.getTextRange(b);if("\n"==f[f.length-1]){var g=c.getLine(b.end.row);/^\s+$/.test(g)&&(b.end.column=g.length)}}e&&(b=e)}this.session.remove(b),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var a=this.getSelectionRange();a.start.column==a.end.column&&a.start.row==a.end.row&&(a.end.column=0,a.end.row++),this.session.remove(a),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var a=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(a)},this.transposeLetters=function(){if(this.selection.isEmpty()){var a=this.getCursorPosition(),b=a.column;if(0!==b){var c,d,e=this.session.getLine(a.row);bb.toLowerCase()?1:0});for(var d=new n(0,0,0,0),e=a.first;e<=a.last;e++){var f=b.getLine(e);d.start.row=e,d.end.row=e,d.end.column=f.length,b.replace(d,c[e-a.first])}},this.toggleCommentLines=function(){var a=this.session.getState(this.getCursorPosition().row),b=this.$getSelectedRows();this.session.getMode().toggleCommentLines(a,this.session,b.first,b.last)},this.toggleBlockComment=function(){var a=this.getCursorPosition(),b=this.session.getState(a.row),c=this.getSelectionRange();this.session.getMode().toggleBlockComment(b,this.session,c,a)},this.getNumberAt=function(a,b){var c=/[\-]?[0-9]+(?:\.[0-9]+)?/g;c.lastIndex=0;for(var d=this.session.getLine(a);c.lastIndex=b){var f={value:e[0],start:e.index,end:e.index+e[0].length};return f}}return null},this.modifyNumber=function(a){var b=this.selection.getCursor().row,c=this.selection.getCursor().column,d=new n(b,c-1,b,c),e=this.session.getTextRange(d);if(!isNaN(parseFloat(e))&&isFinite(e)){var f=this.getNumberAt(b,c);if(f){var g=f.value.indexOf(".")>=0?f.start+f.value.indexOf(".")+1:f.end,h=f.start+f.value.length-g,i=parseFloat(f.value);i*=Math.pow(10,h),a*=g!==f.end&&g>c?Math.pow(10,f.end-c-1):Math.pow(10,f.end-c),i+=a,i/=Math.pow(10,h);var j=i.toFixed(h),k=new n(b,f.start,b,f.end);this.session.replace(k,j),this.moveCursorTo(b,Math.max(f.start+1,c+j.length-f.value.length))}}},this.removeLines=function(){var a,b=this.$getSelectedRows();a=0===b.first||b.last+1=g;)f[h].moveBy(e,0),h--}b.fromOrientedRange(b.ranges[0]),b.rangeList.attach(this.session)}},this.$getSelectedRows=function(){var a=this.getSelectionRange().collapseRows();return{first:this.session.getRowFoldStart(a.start.row),last:this.session.getRowFoldEnd(a.end.row)}},this.onCompositionStart=function(a){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(a){this.renderer.setCompositionText(a)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(a){return a>=this.getFirstVisibleRow()&&a<=this.getLastVisibleRow()},this.isRowFullyVisible=function(a){return a>=this.renderer.getFirstFullyVisibleRow()&&a<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(a,b){var c=this.renderer,d=this.renderer.layerConfig,e=a*Math.floor(d.height/d.lineHeight);this.$blockScrolling++,b===!0?this.selection.$moveSelection(function(){this.moveCursorBy(e,0)}):b===!1&&(this.selection.moveCursorBy(e,0),this.selection.clearSelection()),this.$blockScrolling--;var f=c.scrollTop;c.scrollBy(0,e*d.lineHeight),null!=b&&c.scrollCursorIntoView(null,.5),c.animateScrolling(f)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(a){this.renderer.scrollToRow(a)},this.scrollToLine=function(a,b,c,d){this.renderer.scrollToLine(a,b,c,d)},this.centerSelection=function(){var a=this.getSelectionRange(),b={row:Math.floor(a.start.row+(a.end.row-a.start.row)/2),column:Math.floor(a.start.column+(a.end.column-a.start.column)/2)};this.renderer.alignCursor(b,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(a,b){this.selection.moveCursorTo(a,b)},this.moveCursorToPosition=function(a){this.selection.moveCursorToPosition(a)},this.jumpToMatching=function(a){var b=this.getCursorPosition(),c=this.session.getBracketRange(b);if(!c){if(c=this.find({needle:/[{}()\[\]]/g,preventScroll:!0,start:{row:b.row,column:b.column-1}}),!c)return;var d=c.start;d.row==b.row&&Math.abs(d.column-b.column)<2&&(c=this.session.getBracketRange(d))}d=c&&c.cursor||d,d&&(a?c&&c.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(d.row,d.column):this.selection.moveTo(d.row,d.column))},this.gotoLine=function(a,b,c){this.selection.clearSelection(),this.session.unfold({row:a-1,column:b||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(a-1,b||0),this.$blockScrolling-=1,this.isRowFullyVisible(a-1)||this.scrollToLine(a-1,!0,c)},this.navigateTo=function(a,b){this.selection.moveTo(a,b)},this.navigateUp=function(a){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var b=this.selection.anchor.getPosition();return this.moveCursorToPosition(b)}this.selection.clearSelection(),this.selection.moveCursorBy(-a||-1,0)},this.navigateDown=function(a){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var b=this.selection.anchor.getPosition();return this.moveCursorToPosition(b)}this.selection.clearSelection(),this.selection.moveCursorBy(a||1,0)},this.navigateLeft=function(a){if(this.selection.isEmpty())for(a=a||1;a--;)this.selection.moveCursorLeft();else{var b=this.getSelectionRange().start;this.moveCursorToPosition(b)}this.clearSelection()},this.navigateRight=function(a){if(this.selection.isEmpty())for(a=a||1;a--;)this.selection.moveCursorRight();else{var b=this.getSelectionRange().end;this.moveCursorToPosition(b)}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(a,b){b&&this.$search.set(b);var c=this.$search.find(this.session),d=0;return c?(this.$tryReplace(c,a)&&(d=1),null!==c&&(this.selection.setSelectionRange(c),this.renderer.scrollSelectionIntoView(c.start,c.end)),d):d},this.replaceAll=function(a,b){b&&this.$search.set(b);var c=this.$search.findAll(this.session),d=0;if(!c.length)return d;this.$blockScrolling+=1;var e=this.getSelectionRange();this.selection.moveTo(0,0);for(var f=c.length-1;f>=0;--f)this.$tryReplace(c[f],a)&&d++;return this.selection.setSelectionRange(e),this.$blockScrolling-=1,d},this.$tryReplace=function(a,b){var c=this.session.getTextRange(a);return b=this.$search.replace(c,b),null!==b?(a.end=this.session.replace(a,b),a):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(a,b,c){b||(b={}),"string"==typeof a||a instanceof RegExp?b.needle=a:"object"==typeof a&&d.mixin(b,a);var e=this.selection.getRange();null==b.needle&&(a=this.session.getTextRange(e)||this.$search.$options.needle,a||(e=this.session.getWordRange(e.start.row,e.start.column),a=this.session.getTextRange(e)),this.$search.set({needle:a})),this.$search.set(b),b.start||this.$search.set({start:e});var f=this.$search.find(this.session);return b.preventScroll?f:f?(this.revealRange(f,c),f):(b.backwards?e.start=e.end:e.end=e.start,void this.selection.setRange(e))},this.findNext=function(a,b){this.find({skipCurrent:!0,backwards:!1},a,b)},this.findPrevious=function(a,b){this.find(a,{skipCurrent:!0,backwards:!0},b)},this.revealRange=function(a,b){this.$blockScrolling+=1,this.session.unfold(a),this.selection.setSelectionRange(a),this.$blockScrolling-=1;var c=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(a.start,a.end,.5),b!==!1&&this.renderer.animateScrolling(c)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this)},this.setAutoScrollEditorIntoView=function(a){if(a){var b,c=this,d=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var e=this.$scrollAnchor;e.style.cssText="position:absolute",this.container.insertBefore(e,this.container.firstChild);var f=this.on("changeSelection",function(){d=!0}),g=this.renderer.on("beforeRender",function(){d&&(b=c.renderer.container.getBoundingClientRect())}),h=this.renderer.on("afterRender",function(){if(d&&b&&c.isFocused()){var a=c.renderer,f=a.$cursorLayer.$pixelPos,g=a.layerConfig,h=f.top-g.offset;d=f.top>=0&&h+b.top<0?!0:f.topwindow.innerHeight?!1:null,null!=d&&(e.style.top=h+"px",e.style.left=f.left+"px",e.style.height=g.lineHeight+"px",e.scrollIntoView(d)),d=b=null}});this.setAutoScrollEditorIntoView=function(a){a||(delete this.setAutoScrollEditorIntoView,this.removeEventListener("changeSelection",f),this.renderer.removeEventListener("afterRender",h),this.renderer.removeEventListener("beforeRender",g))}}},this.$resetCursorStyle=function(){var a=this.$cursorStyle||"ace",b=this.renderer.$cursorLayer;b&&(b.setSmoothBlinking("smooth"==a),b.isBlinking=!this.$readOnly&&"wide"!=a)}}).call(s.prototype),r.defineOptions(s.prototype,"editor",{selectionStyle:{set:function(a){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:a})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(a){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(a){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(a){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(a){this.setAutoScrollEditorIntoView(a)}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",foldStyle:"session",mode:"session"}),b.Editor=s}),define("ace/lib/lang",["require","exports","module"],function(a,b,c){b.last=function(a){return a[a.length-1]},b.stringReverse=function(a){return a.split("").reverse().join("")},b.stringRepeat=function(a,b){for(var c="";b>0;)1&b&&(c+=a),(b>>=1)&&(a+=a);return c};var d=/^\s\s*/,e=/\s\s*$/;b.stringTrimLeft=function(a){return a.replace(d,"")},b.stringTrimRight=function(a){return a.replace(e,"")},b.copyObject=function(a){var b={};for(var c in a)b[c]=a[c];return b},b.copyArray=function(a){for(var b=[],c=0,d=a.length;d>c;c++)a[c]&&"object"==typeof a[c]?b[c]=this.copyObject(a[c]):b[c]=a[c];return b},b.deepCopy=function(a){if("object"!=typeof a||!a)return a;var c=a.constructor;if(c===RegExp)return a;var d=c();for(var e in a)"object"==typeof a[e]?d[e]=b.deepCopy(a[e]):d[e]=a[e];return d},b.arrayToMap=function(a){for(var b={},c=0;cc?{cursor:a.start,anchor:a.end}:{cursor:a.end,anchor:a.start}}var g=(a("../lib/dom"),a("../lib/event"),a("../lib/useragent"),0);(function(){this.onMouseDown=function(a){var b=a.inSelection(),c=a.getDocumentPosition();this.mousedownEvent=a;var d=this.editor,e=a.getButton();if(0!==e){var f=d.getSelectionRange(),g=f.isEmpty();return g&&d.selection.moveToPosition(c),void d.textInput.onContextMenu(a.domEvent)}return!b||d.isFocused()||(d.focus(),!this.$focusTimout||this.$clickSelection||d.inMultiSelectMode)?(this.captureMouse(a),!b||this.$clickSelection||a.getShiftKey()||d.inMultiSelectMode?this.startSelect(c):b&&(this.mousedownEvent.time=Date.now(),this.startSelect(c)),a.preventDefault()):(this.mousedownEvent.time=Date.now(),this.setState("focusWait"),void this.captureMouse(a))},this.startSelect=function(a){a=a||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var b=this.editor,c=this.mousedownEvent.getShiftKey();c?b.selection.selectToPosition(a):this.$clickSelection||b.selection.moveToPosition(a),b.renderer.scroller.setCapture&&b.renderer.scroller.setCapture(),b.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var a,b=this.editor,c=b.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var d=this.$clickSelection.comparePoint(c);if(-1==d)a=this.$clickSelection.end;else if(1==d)a=this.$clickSelection.start;else{var e=f(this.$clickSelection,c);c=e.cursor,a=e.anchor}b.selection.setSelectionAnchor(a.row,a.column)}b.selection.selectToPosition(c),b.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(a){var b,c=this.editor,d=c.renderer.screenToTextCoordinates(this.x,this.y),e=c.selection[a](d.row,d.column);if(this.$clickSelection){var g=this.$clickSelection.comparePoint(e.start),h=this.$clickSelection.comparePoint(e.end);if(-1==g&&0>=h)b=this.$clickSelection.end,(e.end.row!=d.row||e.end.column!=d.column)&&(d=e.start);else if(1==h&&g>=0)b=this.$clickSelection.start,(e.start.row!=d.row||e.start.column!=d.column)&&(d=e.end);else if(-1==g&&1==h)d=e.end,b=e.start;else{var i=f(this.$clickSelection,d);d=i.cursor,b=i.anchor}c.selection.setSelectionAnchor(b.row,b.column)}c.selection.selectToPosition(d),c.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var a=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),b=Date.now();(a>g||b-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(a){var b=a.getDocumentPosition(),c=this.editor,d=c.session,e=d.getBracketRange(b);e?(e.isEmpty()&&(e.start.column--,e.end.column++),this.setState("select")):(e=c.selection.getWordRange(b.row,b.column),this.setState("selectByWords")),this.$clickSelection=e,this[this.state]&&this[this.state](a)},this.onTripleClick=function(a){var b=a.getDocumentPosition(),c=this.editor;this.setState("selectByLines"),this.$clickSelection=c.selection.getLineRange(b.row),this[this.state]&&this[this.state](a)},this.onQuadClick=function(a){var b=this.editor;b.selectAll(),this.$clickSelection=b.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(a){if(!a.getAccelKey()){a.getShiftKey()&&a.wheelY&&!a.wheelX&&(a.wheelX=a.wheelY,a.wheelY=0);var b=a.domEvent.timeStamp,c=b-(this.$lastScrollTime||0),d=this.editor,e=d.renderer.isScrollableBy(a.wheelX*a.speed,a.wheelY*a.speed);return e||200>c?(this.$lastScrollTime=b,d.renderer.scrollBy(a.wheelX*a.speed,a.wheelY*a.speed),a.stop()):void 0}}}).call(d.prototype),b.DefaultHandlers=d}),define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(a,b,c){function d(a){function b(){var b=l.getDocumentPosition().row,e=i.$annotations[b];if(!e)return c();var f=g.session.getLength();if(b==f){var h=g.renderer.pixelToScreenCoordinates(0,l.y).row,k=l.$pos;if(h>g.session.documentToScreenRow(k.row,k.column))return c()}if(m!=e)if(m=e.text.join("
      "),j.setHtml(m),j.show(),g.on("mousewheel",c),a.$tooltipFollowsMouse)d(l);else{var n=i.$cells[g.session.documentToScreenRow(b,0)].element,o=n.getBoundingClientRect(),p=j.getElement().style;p.left=o.right+"px",p.top=o.bottom+"px"}}function c(){k&&(k=clearTimeout(k)),m&&(j.hide(),m=null,g.removeEventListener("mousewheel",c))}function d(a){j.setPosition(a.x,a.y)}var g=a.editor,i=g.renderer.$gutterLayer,j=new e(g.container);a.editor.setDefaultHandler("guttermousedown",function(b){if(g.isFocused()&&0==b.getButton()){var c=i.getRegion(b);if("foldWidgets"!=c){var d=b.getDocumentPosition().row,e=g.session.selection;if(b.getShiftKey())e.selectTo(d,0);else{if(2==b.domEvent.detail)return g.selectAll(),b.preventDefault();a.$clickSelection=g.selection.getLineRange(d)}return a.setState("selectByLines"),a.captureMouse(b),b.preventDefault()}}});var k,l,m;a.editor.setDefaultHandler("guttermousemove",function(e){var g=e.domEvent.target||e.domEvent.srcElement;return f.hasCssClass(g,"ace_fold-widget")?c():(m&&a.$tooltipFollowsMouse&&d(e),l=e,void(k||(k=setTimeout(function(){k=null,l&&!a.isMousePressed?b():c()},50))))}),h.addListener(g.renderer.$gutter,"mouseout",function(a){l=null,m&&!k&&(k=setTimeout(function(){k=null,c()},50))}),g.on("changeSession",c)}function e(a){i.call(this,a)}var f=a("../lib/dom"),g=a("../lib/oop"),h=a("../lib/event"),i=a("../tooltip").Tooltip;g.inherits(e,i),function(){this.setPosition=function(a,b){var c=window.innerWidth||document.documentElement.clientWidth,d=window.innerHeight||document.documentElement.clientHeight,e=this.getWidth(),f=this.getHeight();a+=15,b+=15,a+e>c&&(a-=a+e-c),b+f>d&&(b-=20+f),i.prototype.setPosition.call(this,a,b)}}.call(e.prototype),b.GutterHandler=d}),define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(a,b,c){function d(a){this.isOpen=!1,this.$element=null,this.$parentNode=a}var e=(a("./lib/oop"),a("./lib/dom"));(function(){this.$init=function(){return this.$element=e.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(a){e.setInnerText(this.getElement(),a)},this.setHtml=function(a){this.getElement().innerHTML=a},this.setPosition=function(a,b){this.getElement().style.left=a+"px",this.getElement().style.top=b+"px"},this.setClassName=function(a){e.addCssClass(this.getElement(),a)},this.show=function(a,b,c){null!=a&&this.setText(a),null!=b&&null!=c&&this.setPosition(b,c),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(d.prototype),b.Tooltip=d}),define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(a,b,c){var d=a("../lib/event"),e=a("../lib/useragent"),f=b.MouseEvent=function(a,b){this.domEvent=a,this.editor=b,this.x=this.clientX=a.clientX,this.y=this.clientY=a.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){d.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){d.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var a=this.editor,b=a.getSelectionRange();if(b.isEmpty())this.$inSelection=!1;else{var c=this.getDocumentPosition();this.$inSelection=b.contains(c.row,c.column)}return this.$inSelection},this.getButton=function(){return d.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=e.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(f.prototype)}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(a,b,c){function d(a){function b(a,b){var c=Date.now(),d=!b||a.row!=b.row,f=!b||a.column!=b.column;if(!C||d||f)q.$blockScrolling+=1,q.moveCursorToPosition(a),q.$blockScrolling-=1,C=c,D={x:u,y:v};else{var g=e(D.x,D.y,u,v);g>k?C=null:c-C>=j&&(q.renderer.scrollCursorIntoView(),C=null)}}function c(a,b){var c=Date.now(),d=q.renderer.layerConfig.lineHeight,e=q.renderer.layerConfig.characterWidth,f=q.renderer.scroller.getBoundingClientRect(),g={x:{left:u-f.left,right:f.right-u},y:{top:v-f.top,bottom:f.bottom-v}},h=Math.min(g.x.left,g.x.right),j=Math.min(g.y.top,g.y.bottom),k={row:a.row,column:a.column};2>=h/e&&(k.column+=g.x.left=j/d&&(k.row+=g.y.top=i&&q.renderer.scrollCursorIntoView(k):B=c:B=null}function d(){var a=y;y=q.renderer.screenToTextCoordinates(u,v),b(y,a),c(y,a)}function l(){x=q.selection.toOrientedRange(),t=q.session.addMarker(x,"ace_selection",q.getSelectionStyle()),q.clearSelection(),q.isFocused()&&q.renderer.$cursorLayer.setBlinking(!1),clearInterval(w),w=setInterval(d,20),F=0,g.addListener(document,"mousemove",n)}function m(){clearInterval(w),q.session.removeMarker(t),t=null,q.$blockScrolling+=1,q.selection.fromOrientedRange(x),q.$blockScrolling-=1,q.isFocused()&&!A&&q.renderer.$cursorLayer.setBlinking(!q.getReadOnly()),x=null,F=0,B=null,C=null,g.removeListener(document,"mousemove",n)}function n(){null==G&&(G=setTimeout(function(){null!=G&&t&&m()},20))}function o(a){var b=a.types;return!b||Array.prototype.some.call(b,function(a){return"text/plain"==a||"Text"==a})}function p(a){var b=["copy","copymove","all","uninitialized"],c=["move","copymove","linkmove","all","uninitialized"],d=h.isMac?a.altKey:a.ctrlKey,e="uninitialized";try{e=a.dataTransfer.effectAllowed.toLowerCase()}catch(a){}var f="none";return d&&b.indexOf(e)>=0?f="copy":c.indexOf(e)>=0?f="move":b.indexOf(e)>=0&&(f="copy"),f}var q=a.editor,r=f.createElement("img");r.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",h.isOpera&&(r.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");var s=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];s.forEach(function(b){a[b]=this[b]},this),q.addEventListener("mousedown",this.onMouseDown.bind(a));var t,u,v,w,x,y,z,A,B,C,D,E=q.container,F=0;this.onDragStart=function(a){if(this.cancelDrag||!E.draggable){var b=this;return setTimeout(function(){b.startSelect(),b.captureMouse(a)},0),a.preventDefault()}x=q.getSelectionRange();var c=a.dataTransfer;c.effectAllowed=q.getReadOnly()?"copy":"copyMove",h.isOpera&&(q.container.appendChild(r),r._top=r.offsetTop),c.setDragImage&&c.setDragImage(r,0,0),h.isOpera&&q.container.removeChild(r),c.clearData(),c.setData("Text",q.session.getTextRange()),A=!0,this.setState("drag")},this.onDragEnd=function(a){if(E.draggable=!1,A=!1,this.setState(null),!q.getReadOnly()){var b=a.dataTransfer.dropEffect;z||"move"!=b||q.session.remove(q.getSelectionRange()),q.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging")},this.onDragEnter=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(t||l(),F++,a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragOver=function(a){return!q.getReadOnly()&&o(a.dataTransfer)?(t||(l(),F++),null!==G&&(G=null),u=a.clientX,v=a.clientY,a.dataTransfer.dropEffect=z=p(a),g.preventDefault(a)):void 0},this.onDragLeave=function(a){return F--,0>=F&&t?(m(),z=null,g.preventDefault(a)):void 0},this.onDrop=function(a){if(t){var b=a.dataTransfer;if(A)switch(z){case"move":x=x.contains(y.row,y.column)?{start:y,end:y}:q.moveText(x,y);break;case"copy":x=q.moveText(x,y,!0)}else{var c=b.getData("Text");x={start:y,end:q.session.insert(y,c)},q.focus(),z=null}return m(),g.preventDefault(a)}},g.addListener(E,"dragstart",this.onDragStart.bind(a)),g.addListener(E,"dragend",this.onDragEnd.bind(a)),g.addListener(E,"dragenter",this.onDragEnter.bind(a)),g.addListener(E,"dragover",this.onDragOver.bind(a)),g.addListener(E,"dragleave",this.onDragLeave.bind(a)),g.addListener(E,"drop",this.onDrop.bind(a));var G=null}function e(a,b,c,d){return Math.sqrt(Math.pow(c-a,2)+Math.pow(d-b,2))}var f=a("../lib/dom"),g=a("../lib/event"),h=a("../lib/useragent"),i=200,j=200,k=5;(function(){this.dragWait=function(){var a=Date.now()-this.mousedownEvent.time;a>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var a=this.editor.container;a.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(a){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var a=this.editor.container;a.draggable=!0,this.editor.renderer.$cursorLayer.setBlinking(!1),this.editor.setStyle("ace_dragging"),this.setState("dragReady")},this.onMouseDrag=function(a){var b=this.editor.container;if(h.isIE&&"dragReady"==this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>3&&b.dragDrop()}if("dragWait"===this.state){var c=e(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);c>0&&(b.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(a){if(this.$dragEnabled){this.mousedownEvent=a;var b=this.editor,c=a.inSelection(),d=a.getButton(),e=a.domEvent.detail||1;if(1===e&&0===d&&c){if(a.editor.inMultiSelectMode&&(a.getAccelKey()||a.getShiftKey()))return;this.mousedownEvent.time=Date.now();var f=a.domEvent.target||a.domEvent.srcElement;if("unselectable"in f&&(f.unselectable="on"),b.getDragDelay()){if(h.isWebKit){this.cancelDrag=!0;var g=b.container;g.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(a,this.onMouseDrag.bind(this)),a.defaultPrevented=!0}}}}).call(d.prototype),b.DragdropHandler=d}),define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/event_emitter"],function(a,b,c){"no use strict";function d(d){if(k.packaged=d||a.packaged||c.packaged||j.define&&define.packaged,!j.document)return"";for(var f={},g="",h=document.getElementsByTagName("script"),i=0;io;o++){var q=n[o];0===q.name.indexOf("data-ace-")&&(f[e(q.name.replace(/^data-ace-/,""))]=q.value)}var r=m.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);r&&(g=r[1])}}g&&(f.base=f.base||g,f.packaged=!0),f.basePath=f.base,f.workerPath=f.workerPath||f.base,f.modePath=f.modePath||f.base,f.themePath=f.themePath||f.base,delete f.base;for(var s in f)"undefined"!=typeof f[s]&&b.set(s,f[s])}function e(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}var f=a("./lib/lang"),g=a("./lib/oop"),h=a("./lib/net"),i=a("./lib/event_emitter").EventEmitter,j=function(){return this}(),k={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};b.get=function(a){if(!k.hasOwnProperty(a))throw new Error("Unknown config key: "+a);return k[a]},b.set=function(a,b){if(!k.hasOwnProperty(a))throw new Error("Unknown config key: "+a);k[a]=b},b.all=function(){return f.copyObject(k)},g.implement(b,i),b.moduleUrl=function(a,b){if(k.$moduleUrls[a])return k.$moduleUrls[a];var c=a.split("/");b=b||c[c.length-2]||"";var d="snippets"==b?"/":"-",e=c[c.length-1];if("-"==d){var f=new RegExp("^"+b+"[\\-_]|[\\-_]"+b+"$","g");e=e.replace(f,"")}(!e||e==b)&&c.length>1&&(e=c[c.length-2]);var g=k[b+"Path"];return null==g?g=k.basePath:"/"==d&&(b=d=""),g&&"/"!=g.slice(-1)&&(g+="/"),g+b+d+e+this.get("suffix")},b.setModuleUrl=function(a,b){return k.$moduleUrls[a]=b},b.$loading={},b.loadModule=function(c,d){var e,f;Array.isArray(c)&&(f=c[0],c=c[1]);try{e=a(c)}catch(g){}if(e&&!b.$loading[c])return d&&d(e);if(b.$loading[c]||(b.$loading[c]=[]),b.$loading[c].push(d),!(b.$loading[c].length>1)){var i=function(){a([c],function(a){b._emit("load.module",{name:c,module:a});var d=b.$loading[c];b.$loading[c]=null,d.forEach(function(b){b&&b(a)})})};return b.get("packaged")?void h.loadScript(b.moduleUrl(c,f),i):i()}},b.init=d;var l={setOptions:function(a){Object.keys(a).forEach(function(b){this.setOption(b,a[b])},this)},getOptions:function(a){var b={};return a?Array.isArray(a)||(b=a,a=Object.keys(b)):a=Object.keys(this.$options),a.forEach(function(a){b[a]=this.getOption(a)},this),b},setOption:function(a,b){if(this["$"+a]!==b){var c=this.$options[a];if(!c)return void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'));if(c.forwardTo)return this[c.forwardTo]&&this[c.forwardTo].setOption(a,b);c.handlesSet||(this["$"+a]=b),c&&c.set&&c.set.call(this,b)}},getOption:function(a){var b=this.$options[a];return b?b.forwardTo?this[b.forwardTo]&&this[b.forwardTo].getOption(a):b&&b.get?b.get.call(this):this["$"+a]:void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+a+'"'))}},m={};b.defineOptions=function(a,b,c){return a.$options||(m[b]=a.$options={}),Object.keys(c).forEach(function(b){var d=c[b];"string"==typeof d&&(d={forwardTo:d}),d.name||(d.name=b),a.$options[d.name]=d,"initialValue"in d&&(a["$"+d.name]=d.initialValue)}),g.implement(a,l),this},b.resetOptions=function(a){Object.keys(a.$options).forEach(function(b){var c=a.$options[b];"value"in c&&a.setOption(b,c.value)})},b.setDefaultValue=function(a,c,d){var e=m[a]||(m[a]={});e[c]&&(e.forwardTo?b.setDefaultValue(e.forwardTo,c,d):e[c].value=d)},b.setDefaultValues=function(a,c){Object.keys(c).forEach(function(d){b.setDefaultValue(a,d,c[d])})}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(a,b,c){var d=a("./dom");b.get=function(a,b){var c=new XMLHttpRequest;c.open("GET",a,!0),c.onreadystatechange=function(){4===c.readyState&&b(c.responseText)},c.send(null)},b.loadScript=function(a,b){var c=d.getDocumentHead(),e=document.createElement("script");e.src=a,c.appendChild(e),e.onload=e.onreadystatechange=function(a,c){(c||!e.readyState||"loaded"==e.readyState||"complete"==e.readyState)&&(e=e.onload=e.onreadystatechange=null,c||b())}},b.qualifyURL=function(a){var b=document.createElement("a");return b.href=a,b.href}}),define("ace/lib/event_emitter",["require","exports","module"],function(a,b,c){var d={},e=function(){this.propagationStopped=!0},f=function(){this.defaultPrevented=!0};d._emit=d._dispatchEvent=function(a,b){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var c=this._eventRegistry[a]||[],d=this._defaultHandlers[a];if(c.length||d){"object"==typeof b&&b||(b={}),b.type||(b.type=a),b.stopPropagation||(b.stopPropagation=e),b.preventDefault||(b.preventDefault=f),c=c.slice();for(var g=0;ga?!1:a>=4352&&4447>=a||a>=4515&&4519>=a||a>=4602&&4607>=a||a>=9001&&9002>=a||a>=11904&&11929>=a||a>=11931&&12019>=a||a>=12032&&12245>=a||a>=12272&&12283>=a||a>=12288&&12350>=a||a>=12353&&12438>=a||a>=12441&&12543>=a||a>=12549&&12589>=a||a>=12593&&12686>=a||a>=12688&&12730>=a||a>=12736&&12771>=a||a>=12784&&12830>=a||a>=12832&&12871>=a||a>=12880&&13054>=a||a>=13056&&19903>=a||a>=19968&&42124>=a||a>=42128&&42182>=a||a>=43360&&43388>=a||a>=44032&&55203>=a||a>=55216&&55238>=a||a>=55243&&55291>=a||a>=63744&&64255>=a||a>=65040&&65049>=a||a>=65072&&65106>=a||a>=65108&&65126>=a||a>=65128&&65131>=a||a>=65281&&65376>=a||a>=65504&&65510>=a}d.implement(this,g),this.setDocument=function(a){this.doc&&this.doc.removeListener("change",this.$onChange), +this.doc=a,a.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(a){if(!a)return this.$docRowCache=[],void(this.$screenRowCache=[]);var b=this.$docRowCache.length,c=this.$getRowCacheIndex(this.$docRowCache,a)+1;b>c&&(this.$docRowCache.splice(c,b),this.$screenRowCache.splice(c,b))},this.$getRowCacheIndex=function(a,b){for(var c=0,d=a.length-1;d>=c;){var e=c+d>>1,f=a[e];if(b>f)c=e+1;else{if(!(f>b))return e;d=e-1}}return c-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(a){var b=a.data;this.$resetRowCache(b.start.row)},this.onChange=function(a){var b=a.data;this.$modified=!0,this.$resetRowCache(b.range.start.row);var c=this.$updateInternalDataOnChange(a);this.$fromUndo||!this.$undoManager||b.ignore||(this.$deltasDoc.push(b),c&&0!=c.length&&this.$deltasFold.push({action:"removeFolds",folds:c}),this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(b),this._signal("change",a)},this.setValue=function(a){this.doc.setValue(a),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(a){return this.bgTokenizer.getState(a)},this.getTokens=function(a){return this.bgTokenizer.getTokens(a)},this.getTokenAt=function(a,b){var c,d=this.bgTokenizer.getTokens(a),e=0;if(null==b)f=d.length-1,e=this.getLine(a).length;else for(var f=0;f=b));f++);return(c=d[f])?(c.index=f,c.start=e-c.value.length,c):null},this.setUndoManager=function(a){if(this.$undoManager=a,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),a){var b=this;this.$syncInformUndoManager=function(){b.$informUndoManager.cancel(),b.$deltasFold.length&&(b.$deltas.push({group:"fold",deltas:b.$deltasFold}),b.$deltasFold=[]),b.$deltasDoc.length&&(b.$deltas.push({group:"doc",deltas:b.$deltasDoc}),b.$deltasDoc=[]),b.$deltas.length>0&&a.execute({action:"aceupdate",args:[b.$deltas,b],merge:b.mergeUndoDeltas}),b.mergeUndoDeltas=!1,b.$deltas=[]},this.$informUndoManager=e.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?e.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(a){this.setOption("useSoftTabs",a)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(a){this.setOption("tabSize",a)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(a){return this.$useSoftTabs&&a.column%this.$tabSize===0},this.$overwrite=!1,this.setOverwrite=function(a){this.setOption("overwrite",a)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(a,b){this.$decorations[a]||(this.$decorations[a]=""),this.$decorations[a]+=" "+b,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(a,b){this.$decorations[a]=(this.$decorations[a]||"").replace(" "+b,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(a){this.$breakpoints=[];for(var b=0;b0&&(d=!!c.charAt(b-1).match(this.tokenRe)),d||(d=!!c.charAt(b).match(this.tokenRe)),d)var e=this.tokenRe;else if(/^\s+$/.test(c.slice(b-1,b+1)))var e=/\s/;else var e=this.nonTokenRe;var f=b;if(f>0){do f--;while(f>=0&&c.charAt(f).match(e));f++}for(var g=b;ga&&(a=b.screenWidth)}),this.lineWidgetWidth=a},this.$computeWidth=function(a){if(this.$modified||a){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var b=this.doc.getAllLines(),c=this.$rowLengthCache,d=0,e=0,f=this.$foldData[e],g=f?f.start.row:1/0,h=b.length,i=0;h>i;i++){if(i>g){if(i=f.end.row+1,i>=h)break;f=this.$foldData[e++],g=f?f.start.row:1/0}null==c[i]&&(c[i]=this.$getStringScreenWidth(b[i])[0]),c[i]>d&&(d=c[i])}this.screenWidth=d}},this.getLine=function(a){return this.doc.getLine(a)},this.getLines=function(a,b){return this.doc.getLines(a,b)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(a){return this.doc.getTextRange(a||this.selection.getRange())},this.insert=function(a,b){return this.doc.insert(a,b)},this.remove=function(a){return this.doc.remove(a)},this.undoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=a.length-1;-1!=d;d--){var e=a[d];"doc"==e.group?(this.doc.revertDeltas(e.deltas),c=this.$getUndoSelection(e.deltas,!0,c)):e.deltas.forEach(function(a){this.addFolds(a.folds)},this)}return this.$fromUndo=!1,c&&this.$undoSelect&&!b&&this.selection.setSelectionRange(c),c}},this.redoChanges=function(a,b){if(a.length){this.$fromUndo=!0;for(var c=null,d=0;da.end.column&&(f.start.column+=h),f.end.row==a.end.row&&f.end.column>a.end.column&&(f.end.column+=h)),g&&f.start.row>=a.end.row&&(f.start.row+=g,f.end.row+=g)}if(f.end=this.insert(f.start,d),e.length){var i=a.start,k=f.start,g=k.row-i.row,h=k.column-i.column;this.addFolds(e.map(function(a){return a=a.clone(),a.start.row==i.row&&(a.start.column+=h),a.end.row==i.row&&(a.end.column+=h),a.start.row+=g,a.end.row+=g,a}))}return f},this.indentRows=function(a,b,c){c=c.replace(/\t/g,this.getTabString());for(var d=a;b>=d;d++)this.insert({row:d,column:0},c)},this.outdentRows=function(a){for(var b=a.collapseRows(),c=new j(0,0,0,0),d=this.getTabSize(),e=b.start.row;e<=b.end.row;++e){var f=this.getLine(e);c.start.row=e,c.end.row=e;for(var g=0;d>g&&" "==f.charAt(g);++g);d>g&&" "==f.charAt(g)?(c.start.column=g,c.end.column=g+1):(c.start.column=0,c.end.column=g),this.remove(c)}},this.$moveLines=function(a,b,c){if(a=this.getRowFoldStart(a),b=this.getRowFoldEnd(b),0>c){var d=this.getRowFoldStart(a+c);if(0>d)return 0;var e=d-a}else if(c>0){var d=this.getRowFoldEnd(b+c);if(d>this.doc.getLength()-1)return 0;var e=d-b}else{a=this.$clipRowToDocument(a),b=this.$clipRowToDocument(b);var e=b-a+1}var f=new j(a,0,b,Number.MAX_VALUE),g=this.getFoldsInRange(f).map(function(a){return a=a.clone(),a.start.row+=e,a.end.row+=e,a}),h=0==c?this.doc.getLines(a,b):this.doc.removeLines(a,b);return this.doc.insertLines(a+e,h),g.length&&this.addFolds(g),e},this.moveLinesUp=function(a,b){return this.$moveLines(a,b,-1)},this.moveLinesDown=function(a,b){return this.$moveLines(a,b,1)},this.duplicateLines=function(a,b){return this.$moveLines(a,b,0)},this.$clipRowToDocument=function(a){return Math.max(0,Math.min(a,this.doc.getLength()-1))},this.$clipColumnToRow=function(a,b){return 0>b?0:Math.min(this.doc.getLine(a).length,b)},this.$clipPositionToDocument=function(a,b){if(b=Math.max(0,b),0>a)a=0,b=0;else{var c=this.doc.getLength();a>=c?(a=c-1,b=this.doc.getLine(c-1).length):b=Math.min(this.doc.getLine(a).length,b)}return{row:a,column:b}},this.$clipRangeToDocument=function(a){a.start.row<0?(a.start.row=0,a.start.column=0):a.start.column=this.$clipColumnToRow(a.start.row,a.start.column);var b=this.doc.getLength()-1;return a.end.row>b?(a.end.row=b,a.end.column=this.doc.getLine(b).length):a.end.column=this.$clipColumnToRow(a.end.row,a.end.column),a},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(a){if(a!=this.$useWrapMode){if(this.$useWrapMode=a,this.$modified=!0,this.$resetRowCache(0),a){var b=this.getLength();this.$wrapData=Array(b),this.$updateWrapData(0,b-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(a,b){(this.$wrapLimitRange.min!==a||this.$wrapLimitRange.max!==b)&&(this.$wrapLimitRange={min:a,max:b},this.$modified=!0,this._signal("changeWrapMode"))},this.adjustWrapLimit=function(a,b){var c=this.$wrapLimitRange;c.max<0&&(c={min:b,max:b});var d=this.$constrainWrapLimit(a,c.min,c.max);return d!=this.$wrapLimit&&d>1?(this.$wrapLimit=d,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(a,b,c){return b&&(a=Math.max(b,a)),c&&(a=Math.min(c,a)),a},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(a){this.setWrapLimitRange(a,a)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(a){var b,c=this.$useWrapMode,d=a.data.action,e=a.data.range.start.row,f=a.data.range.end.row,g=a.data.range.start,h=a.data.range.end,i=null;if(-1!=d.indexOf("Lines")?(f="insertLines"==d?e+a.data.lines.length:e,b=a.data.lines?a.data.lines.length:f-e):b=f-e,this.$updating=!0,0!=b)if(-1!=d.indexOf("remove")){this[c?"$wrapData":"$rowLengthCache"].splice(e,b);var j=this.$foldData;i=this.getFoldsInRange(a.data.range),this.removeFolds(i);var k=this.getFoldLine(h.row),l=0;if(k){k.addRemoveChars(h.row,h.column,g.column-h.column),k.shiftRow(-b);var m=this.getFoldLine(e);m&&m!==k&&(m.merge(k),k=m),l=j.indexOf(k)+1}for(l;l=h.row&&k.shiftRow(-b)}f=e}else{var n=Array(b);n.unshift(e,0);var o=c?this.$wrapData:this.$rowLengthCache;o.splice.apply(o,n);var j=this.$foldData,k=this.getFoldLine(e),l=0;if(k){var p=k.range.compareInside(g.row,g.column);0==p?(k=k.split(g.row,g.column),k.shiftRow(b),k.addRemoveChars(f,0,h.column-g.column)):-1==p&&(k.addRemoveChars(e,0,h.column-g.column),k.shiftRow(b)),l=j.indexOf(k)+1}for(l;l=e&&k.shiftRow(b)}}else{b=Math.abs(a.data.range.start.column-a.data.range.end.column),-1!=d.indexOf("remove")&&(i=this.getFoldsInRange(a.data.range),this.removeFolds(i),b=-b);var k=this.getFoldLine(e);k&&k.addRemoveChars(e,g.column,b)}return c&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,c?this.$updateWrapData(e,f):this.$updateRowLengthCache(e,f),i},this.$updateRowLengthCache=function(a,b,c){this.$rowLengthCache[a]=null,this.$rowLengthCache[b]=null},this.$updateWrapData=function(a,b){var c,d,e=this.doc.getAllLines(),f=this.getTabSize(),g=this.$wrapData,h=this.$wrapLimit,i=a;for(b=Math.min(b,e.length-1);b>=i;)d=this.getFoldLine(i,d),d?(c=[],d.walk(function(a,b,d,f){var g;if(null!=a){g=this.$getDisplayTokens(a,c.length),g[0]=k;for(var h=1;hb;){var i=f+b;if(a[i-1]>=p&&a[i]>=p)c(i);else if(a[i]!=k&&a[i]!=n){for(var j=Math.max(i-(h?10:b-(b>>2)),f-1);i>j&&a[i]j&&a[i]j&&a[i]==o;)i--}else for(;i>j&&a[i]j?c(++i):(i=f+b,c(i))}else{for(i;i!=f-1&&a[i]!=k;i--);if(i>f){c(i);continue}for(i=f+b;ij;j++)f.push(r)}else 32==i?f.push(p):i>39&&48>i||i>57&&64>i?f.push(o):i>=4352&&b(i)?f.push(c,h):f.push(c)}return f},this.$getStringScreenWidth=function(a,c,d){if(0==c)return[0,0];null==c&&(c=1/0),d=d||0;var e,f;for(f=0;f=4352&&b(e)?2:1,!(d>c));f++);return[d,f]},this.lineWidgets=null,this.getRowLength=function(a){if(this.lineWidgets)var b=this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0;else b=0;return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.getRowLineCount=function(a){return this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1:1},this.getScreenLastRowColumn=function(a){var b=this.screenToDocumentPosition(a,Number.MAX_VALUE);return this.documentToScreenColumn(b.row,b.column)},this.getDocumentLastRowColumn=function(a,b){var c=this.documentToScreenRow(a,b);return this.getScreenLastRowColumn(c)},this.getDocumentLastRowColumnPosition=function(a,b){var c=this.documentToScreenRow(a,b);return this.screenToDocumentPosition(c,Number.MAX_VALUE/10)},this.getRowSplitData=function(a){return this.$useWrapMode?this.$wrapData[a]:void 0},this.getScreenTabSize=function(a){return this.$tabSize-a%this.$tabSize},this.screenToDocumentRow=function(a,b){return this.screenToDocumentPosition(a,b).row},this.screenToDocumentColumn=function(a,b){return this.screenToDocumentPosition(a,b).column},this.screenToDocumentPosition=function(a,b){if(0>a)return{row:0,column:0};var c,d,e=0,f=0,g=0,h=0,i=this.$screenRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var g=i[j],e=this.$docRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getLength()-1,n=this.getNextFoldLine(e),o=n?n.start.row:1/0;a>=g&&(h=this.getRowLength(e),!(g+h>a||e>=m));)g+=h,e++,e>o&&(e=n.end.row+1,n=this.getNextFoldLine(e,n),o=n?n.start.row:1/0),l&&(this.$docRowCache.push(e),this.$screenRowCache.push(g));if(n&&n.start.row<=e)c=this.getFoldDisplayLine(n),e=n.start.row;else{if(a>=g+h||e>m)return{row:m,column:this.getLine(m).length};c=this.getLine(e),n=null}if(this.$useWrapMode){var p=this.$wrapData[e];if(p){var q=Math.floor(a-g);d=p[q],q>0&&p.length&&(f=p[q-1]||p[p.length-1],c=c.substring(f))}}return f+=this.$getStringScreenWidth(c,b)[1],this.$useWrapMode&&f>=d&&(f=d-1),n?n.idxToPosition(f):{row:e,column:f}},this.documentToScreenPosition=function(a,b){if("undefined"==typeof b)var c=this.$clipPositionToDocument(a.row,a.column);else c=this.$clipPositionToDocument(a,b);a=c.row,b=c.column;var d=0,e=null,f=null;f=this.getFoldAt(a,b,1),f&&(a=f.start.row,b=f.start.column);var g,h=0,i=this.$docRowCache,j=this.$getRowCacheIndex(i,a),k=i.length;if(k&&j>=0)var h=i[j],d=this.$screenRowCache[j],l=a>i[k-1];else var l=!k;for(var m=this.getNextFoldLine(h),n=m?m.start.row:1/0;a>h;){if(h>=n){if(g=m.end.row+1,g>a)break;m=this.getNextFoldLine(g,m),n=m?m.start.row:1/0}else g=h+1;d+=this.getRowLength(h),h=g,l&&(this.$docRowCache.push(h),this.$screenRowCache.push(d))}var o="";if(m&&h>=n?(o=this.getFoldDisplayLine(m,a,b),e=m.start.row):(o=this.getLine(a).substring(0,b),e=a),this.$useWrapMode){var p=this.$wrapData[e];if(p){for(var q=0;o.length>=p[q];)d++,q++;o=o.substring(p[q-1]||0,o.length)}}return{row:d,column:this.$getStringScreenWidth(o)[0]}},this.documentToScreenColumn=function(a,b){return this.documentToScreenPosition(a,b).column},this.documentToScreenRow=function(a,b){return this.documentToScreenPosition(a,b).row},this.getScreenLength=function(){var a=0,b=null;if(this.$useWrapMode)for(var c=this.$wrapData.length,d=0,e=0,b=this.$foldData[e++],f=b?b.start.row:1/0;c>d;){var g=this.$wrapData[d];a+=g?g.length+1:1,d++,d>f&&(d=b.end.row+1,b=this.$foldData[e++],f=b?b.start.row:1/0)}else{a=this.getLength();for(var h=this.$foldData,e=0;eb.row||a.row==b.row&&a.column>b.column},this.getRange=function(){var a=this.anchor,b=this.lead;return this.isEmpty()?g.fromPoints(b,b):this.isBackwards()?g.fromPoints(b,a):g.fromPoints(a,b)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var a=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(a,this.doc.getLine(a).length)},this.setRange=this.setSelectionRange=function(a,b){b?(this.setSelectionAnchor(a.end.row,a.end.column),this.selectTo(a.start.row,a.start.column)):(this.setSelectionAnchor(a.start.row,a.start.column),this.selectTo(a.end.row,a.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(a){var b=this.lead;this.$isEmpty&&this.setSelectionAnchor(b.row,b.column),a.call(this)},this.selectTo=function(a,b){this.$moveSelection(function(){this.moveCursorTo(a,b)})},this.selectToPosition=function(a){this.$moveSelection(function(){this.moveCursorToPosition(a)})},this.moveTo=function(a,b){this.clearSelection(),this.moveCursorTo(a,b)},this.moveToPosition=function(a){this.clearSelection(),this.moveCursorToPosition(a)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(a,b){if("undefined"==typeof b){var c=a||this.lead;a=c.row,b=c.column}return this.session.getWordRange(a,b)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var a=this.getCursor(),b=this.session.getAWordRange(a.row,a.column);this.setSelectionRange(b)},this.getLineRange=function(a,b){var c,d="number"==typeof a?a:this.lead.row,e=this.session.getFoldLine(d);return e?(d=e.start.row,c=e.end.row):c=d,b===!0?new g(d,0,c,this.session.getLine(c).length):new g(d,0,c+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,-1))this.moveCursorTo(a.start.row,a.start.column);else if(0==b.column)b.row>0&&this.moveCursorTo(b.row-1,this.doc.getLine(b.row-1).length);else{var c=this.session.getTabSize();this.session.isTabStop(b)&&this.doc.getLine(b.row).slice(b.column-c,b.column).split(" ").length-1==c?this.moveCursorBy(0,-c):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var a,b=this.lead.getPosition();if(a=this.session.getFoldAt(b.row,b.column,1))this.moveCursorTo(a.end.row,a.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(b.column=d)}}this.moveCursorTo(b.row,b.column)},this.moveCursorFileEnd=function(){var a=this.doc.getLength()-1,b=this.doc.getLine(a).length;this.moveCursorTo(a,b)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var a,b=this.lead.row,c=this.lead.column,d=this.doc.getLine(b),e=d.substring(c);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var f=this.session.getFoldAt(b,c,1);return f?void this.moveCursorTo(f.end.row,f.end.column):((a=this.session.nonTokenRe.exec(e))&&(c+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,e=d.substring(c)),c>=d.length?(this.moveCursorTo(b,d.length),this.moveCursorRight(),void(b=c?(this.moveCursorTo(b,0),this.moveCursorLeft(),void(b>0&&this.moveCursorWordLeft())):((f=this.session.tokenRe.exec(g))&&(c-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),void this.moveCursorTo(b,c))},this.$shortWordEndIndex=function(a){var b,c,d=0,e=/\s/,f=this.session.tokenRe;if(f.lastIndex=0,b=this.session.tokenRe.exec(a))d=this.session.tokenRe.lastIndex;else{for(;(c=a[d])&&e.test(c);)d++;if(1>d)for(f.lastIndex=0;(c=a[d])&&!f.test(c);)if(f.lastIndex=0,d++,e.test(c)){if(d>2){d--;break}for(;(c=a[d])&&e.test(c);)d++;if(d>2)break}}return f.lastIndex=0,d},this.moveCursorShortWordRight=function(){var a=this.lead.row,b=this.lead.column,c=this.doc.getLine(a),d=c.substring(b),e=this.session.getFoldAt(a,b,1);if(e)return this.moveCursorTo(e.end.row,e.end.column);if(b==c.length){var f=this.doc.getLength();do a++,d=this.doc.getLine(a);while(f>a&&/^\s*$/.test(d));/^\s+/.test(d)||(d=""),b=0}var g=this.$shortWordEndIndex(d);this.moveCursorTo(a,b+g)},this.moveCursorShortWordLeft=function(){var a,b=this.lead.row,c=this.lead.column;if(a=this.session.getFoldAt(b,c,-1))return this.moveCursorTo(a.start.row,a.start.column); +var d=this.session.getLine(b).substring(0,c);if(0==c){do b--,d=this.doc.getLine(b);while(b>0&&/^\s*$/.test(d));c=d.length,/\s+$/.test(d)||(d="")}var f=e.stringReverse(d),g=this.$shortWordEndIndex(f);return this.moveCursorTo(b,c-g)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(a,b){var c=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===b&&(this.$desiredColumn?c.column=this.$desiredColumn:this.$desiredColumn=c.column);var d=this.session.screenToDocumentPosition(c.row+a,c.column);0!==a&&0===b&&d.row===this.lead.row&&d.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[d.row]&&d.row++,this.moveCursorTo(d.row,d.column+b,0===b)},this.moveCursorToPosition=function(a){this.moveCursorTo(a.row,a.column)},this.moveCursorTo=function(a,b,c){var d=this.session.getFoldAt(a,b,1);d&&(a=d.start.row,b=d.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(a,b),this.$keepDesiredColumnOnChange=!1,c||(this.$desiredColumn=null)},this.moveCursorToScreen=function(a,b,c){var d=this.session.screenToDocumentPosition(a,b);this.moveCursorTo(d.row,d.column,c)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(a){this.setSelectionRange(a,a.cursor==a.start),this.$desiredColumn=a.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(a){var b=this.getRange();return a?(a.start.column=b.start.column,a.start.row=b.start.row,a.end.column=b.end.column,a.end.row=b.end.row):a=b,a.cursor=this.isBackwards()?a.start:a.end,a.desiredColumn=this.$desiredColumn,a},this.getRangeOfMovements=function(a){var b=this.getCursor();try{a.call(null,this);var c=this.getCursor();return g.fromPoints(b,c)}catch(d){return g.fromPoints(b,b)}finally{this.moveCursorToPosition(b)}},this.toJSON=function(){if(this.rangeCount)var a=this.ranges.map(function(a){var b=a.clone();return b.isBackwards=a.cursor==a.start,b});else{var a=this.getRange();a.isBackwards=this.isBackwards()}return a},this.fromJSON=function(a){if(void 0==a.start){if(this.rangeList){this.toSingleRange(a[0]);for(var b=a.length;b--;){var c=g.fromPoints(a[b].start,a[b].end);a.isBackwards&&(c.cursor=c.start),this.addRange(c,!0)}return}a=a[0]}this.rangeList&&this.toSingleRange(a),this.setSelectionRange(a,a.isBackwards)},this.isEqual=function(a){if((a.length||this.rangeCount)&&a.length!=this.rangeCount)return!1;if(!a.length||!this.ranges)return this.getRange().isEqual(a);for(var b=this.ranges.length;b--;)if(!this.ranges[b].isEqual(a[b]))return!1;return!0}}).call(h.prototype),b.Selection=h}),define("ace/range",["require","exports","module"],function(a,b,c){var d=function(a,b){return a.row-b.row||a.column-b.column},e=function(a,b,c,d){this.start={row:a,column:b},this.end={row:c,column:d}};(function(){this.isEqual=function(a){return this.start.row===a.start.row&&this.end.row===a.end.row&&this.start.column===a.start.column&&this.end.column===a.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(a,b){return 0==this.compare(a,b)},this.compareRange=function(a){var b,c=a.end,d=a.start;return b=this.compare(c.row,c.column),1==b?(b=this.compare(d.row,d.column),1==b?2:0==b?1:0):-1==b?-2:(b=this.compare(d.row,d.column),-1==b?-1:1==b?42:0)},this.comparePoint=function(a){return this.compare(a.row,a.column)},this.containsRange=function(a){return 0==this.comparePoint(a.start)&&0==this.comparePoint(a.end)},this.intersects=function(a){var b=this.compareRange(a);return-1==b||0==b||1==b},this.isEnd=function(a,b){return this.end.row==a&&this.end.column==b},this.isStart=function(a,b){return this.start.row==a&&this.start.column==b},this.setStart=function(a,b){"object"==typeof a?(this.start.column=a.column,this.start.row=a.row):(this.start.row=a,this.start.column=b)},this.setEnd=function(a,b){"object"==typeof a?(this.end.column=a.column,this.end.row=a.row):(this.end.row=a,this.end.column=b)},this.inside=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)||this.isStart(a,b)?!1:!0:!1},this.insideStart=function(a,b){return 0==this.compare(a,b)?this.isEnd(a,b)?!1:!0:!1},this.insideEnd=function(a,b){return 0==this.compare(a,b)?this.isStart(a,b)?!1:!0:!1},this.compare=function(a,b){return this.isMultiLine()||a!==this.start.row?athis.end.row?1:this.start.row===a?b>=this.start.column?0:-1:this.end.row===a?b<=this.end.column?0:1:0:bthis.end.column?1:0},this.compareStart=function(a,b){return this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.compareEnd=function(a,b){return this.end.row==a&&this.end.column==b?1:this.compare(a,b)},this.compareInside=function(a,b){return this.end.row==a&&this.end.column==b?1:this.start.row==a&&this.start.column==b?-1:this.compare(a,b)},this.clipRows=function(a,b){if(this.end.row>b)var c={row:b+1,column:0};else if(this.end.rowb)var d={row:b+1,column:0};else if(this.start.row=b;b++)a(f.getLine(b),b)}var f=b.doc,g=!0,i=!0,j=1/0,k=b.getTabSize(),l=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var m=this.lineCommentStart.map(h.escapeRegExp).join("|"),n=this.lineCommentStart[0];else var m=h.escapeRegExp(this.lineCommentStart),n=this.lineCommentStart;m=new RegExp("^(\\s*)(?:"+m+") ?"),l=b.getUseSoftTabs();var o=function(a,b){var c=a.match(m);if(c){var d=c[1].length,e=c[0].length;s(a,d,e)||" "!=c[0][e-1]||e--,f.removeInLine(b,d,e)}},p=n+" ",q=function(a,b){(!g||/\S/.test(a))&&(s(a,j,j)?f.insertInLine({row:b,column:j},p):f.insertInLine({row:b,column:j},n))},r=function(a,b){return m.test(a)},s=function(a,b,c){for(var d=0;b--&&" "==a.charAt(b);)d++;if(d%k!=0)return!1;for(var d=0;" "==a.charAt(c++);)d++;return k>2?d%k!=k-1:d%k==0}}else{if(!this.blockComment)return!1;var n=this.blockComment.start,t=this.blockComment.end,m=new RegExp("^(\\s*)(?:"+h.escapeRegExp(n)+")"),u=new RegExp("(?:"+h.escapeRegExp(t)+")\\s*$"),q=function(a,b){r(a,b)||(!g||/\S/.test(a))&&(f.insertInLine({row:b,column:a.length},t),f.insertInLine({row:b,column:j},n))},o=function(a,b){var c;(c=a.match(u))&&f.removeInLine(b,a.length-c[0].length,a.length),(c=a.match(m))&&f.removeInLine(b,c[1].length,c[0].length)},r=function(a,c){if(m.test(a))return!0;for(var d=b.getTokens(c),e=0;ec&&(j=c),i&&!r(a,b)&&(i=!1)):v>a.length&&(v=a.length)}),j==1/0&&(j=v,g=!1,i=!1),l&&j%k!=0&&(j=Math.floor(j/k)*k),e(i?o:q)},this.toggleBlockComment=function(a,b,c,d){var e=this.blockComment;if(e){!e.start&&e[0]&&(e=e[0]);var f,g,h=new i(b,d.row,d.column),k=h.getCurrentToken(),l=(b.selection,b.selection.toOrientedRange());if(k&&/comment/.test(k.type)){for(var m,n;k&&/comment/.test(k.type);){var o=k.value.indexOf(e.start);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;m=new j(p,q,p,q+e.start.length);break}k=h.stepBackward()}for(var h=new i(b,d.row,d.column),k=h.getCurrentToken();k&&/comment/.test(k.type);){var o=k.value.indexOf(e.end);if(-1!=o){var p=h.getCurrentTokenRow(),q=h.getCurrentTokenColumn()+o;n=new j(p,q,p,q+e.end.length);break}k=h.stepForward()}n&&b.remove(n),m&&(b.remove(m),f=m.start.row,g=-e.start.length)}else g=e.start.length,f=c.start.row,b.insert(c.end,e.end),b.insert(c.start,e.start);l.start.row==f&&(l.start.column+=g),l.end.row==f&&(l.end.column+=g),b.selection.fromOrientedRange(l)}},this.getNextLineIndent=function(a,b,c){return this.$getIndent(b)},this.checkOutdent=function(a,b,c){return!1},this.autoOutdent=function(a,b,c){},this.$getIndent=function(a){return a.match(/^\s*/)[0]},this.createWorker=function(a){return null},this.createModeDelegates=function(a){this.$embeds=[],this.$modes={};for(var b in a)a[b]&&(this.$embeds.push(b),this.$modes[b]=new a[b]);for(var c=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],b=0;bf;f++)if("string"==typeof e[f].token)/keyword|support|storage/.test(e[f].token)&&c.push(e[f].regex);else if("object"==typeof e[f].token)for(var h=0,i=e[f].token.length;i>h;h++)if(/keyword|support|storage/.test(e[f].token[h])){var d=e[f].regex.match(/\(.+?\)/g)[h];c.push(d.substr(1,d.length-2))}this.completionKeywords=c}return a?c.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(a,b,c,d){var e=this.$keywordList||this.$createKeywordList();return e.map(function(a){return{name:a,value:a,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(k.prototype),b.Mode=k}),define("ace/tokenizer",["require","exports","module"],function(a,b,c){var d=1e3,e=function(a){this.states=a,this.regExps={},this.matchMappings={};for(var b in this.states){for(var c=this.states[b],d=[],e=0,f=this.matchMappings[b]={defaultToken:"text"},g="g",h=[],i=0;i1?j.onMatch=this.$applyToken:j.onMatch=j.token);l>1&&(/\\\d/.test(j.regex)?k=j.regex.replace(/\\([0-9]+)/g,function(a,b){return"\\"+(parseInt(b,10)+e+1)}):(l=1,k=this.removeCapturingGroups(j.regex)),j.splitRegex||"string"==typeof j.token||h.push(j)),f[e]=i,e+=l,d.push(k),j.onMatch||(j.onMatch=null)}}h.forEach(function(a){a.splitRegex=this.createSplitterRegexp(a.regex,g)},this),this.regExps[b]=new RegExp("("+d.join(")|(")+")|($)",g)}};(function(){this.$setMaxTokenCount=function(a){d=0|a},this.$applyToken=function(a){var b=this.splitRegex.exec(a).slice(1),c=this.token.apply(this,b);if("string"==typeof c)return[{type:c,value:a}];for(var d=[],e=0,f=c.length;f>e;e++)b[e]&&(d[d.length]={type:c[e],value:b[e]});return d},this.$arrayTokens=function(a){if(!a)return[];var b=this.splitRegex.exec(a);if(!b)return"text";for(var c=[],d=this.tokenArray,e=0,f=d.length;f>e;e++)b[e+1]&&(c[c.length]={type:d[e],value:b[e+1]});return c},this.removeCapturingGroups=function(a){var b=a.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(a,b){return b?"(?:":a});return b},this.createSplitterRegexp=function(a,b){if(-1!=a.indexOf("(?=")){var c=0,d=!1,e={};a.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(a,b,f,g,h,i){return d?d="]"!=h:h?d=!0:g?(c==e.stack&&(e.end=i+1,e.stack=-1),c--):f&&(c++,1!=f.length&&(e.stack=c,e.start=i)),a}),null!=e.end&&/^\)*$/.test(a.substr(e.end))&&(a=a.substring(0,e.start)+a.substr(e.end))}return new RegExp(a,(b||"").replace("g",""))},this.getLineTokens=function(a,b){if(b&&"string"!=typeof b){var c=b.slice(0);b=c[0]}else var c=[];var e=b||"start",f=this.states[e];f||(e="start",f=this.states[e]);var g=this.matchMappings[e],h=this.regExps[e];h.lastIndex=0;for(var i,j=[],k=0,l={type:null,value:""};i=h.exec(a);){var m=g.defaultToken,n=null,o=i[0],p=h.lastIndex;if(p-o.length>k){var q=a.substring(k,p-o.length);l.type==m?l.value+=q:(l.type&&j.push(l),l={type:m,value:q})}for(var r=0;rd){for(;k1&&c[0]!==e&&c.unshift(e),{tokens:j,state:c.length?c:e}}}).call(e.prototype),b.Tokenizer=e}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(a,b,c){var d=a("../lib/lang"),e=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(a,b){if(b)for(var c in a){for(var d=a[c],e=0;e=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var a=this.$rowTokens,b=this.$tokenIndex,c=a[b].start;if(void 0!==c)return c;for(c=0;b>0;)b-=1,c+=a[b].value.length;return c}}).call(d.prototype),b.TokenIterator=d}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=a("./range").Range,g=a("./anchor").Anchor,h=function(a){this.$lines=[],0===a.length?this.$lines=[""]:Array.isArray(a)?this._insertLines(0,a):this.insert({row:0,column:0},a)};(function(){d.implement(this,e),this.setValue=function(a){var b=this.getLength();this.remove(new f(0,0,b,this.getLine(b-1).length)),this.insert({row:0,column:0},a)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(a,b){return new g(this,a,b)},0==="aaa".split(/a/).length?this.$split=function(a){return a.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(a){return a.split(/\r\n|\r|\n/)},this.$detectNewLine=function(a){var b=a.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=b?b[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(a){this.$newLineMode!==a&&(this.$newLineMode=a,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(a){return"\r\n"==a||"\r"==a||"\n"==a},this.getLine=function(a){return this.$lines[a]||""},this.getLines=function(a,b){return this.$lines.slice(a,b+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(a){if(a.start.row==a.end.row)return this.getLine(a.start.row).substring(a.start.column,a.end.column);var b=this.getLines(a.start.row,a.end.row);b[0]=(b[0]||"").substring(a.start.column);var c=b.length-1;return a.end.row-a.start.row==c&&(b[c]=b[c].substring(0,a.end.column)),b.join(this.getNewLineCharacter())},this.$clipPosition=function(a){var b=this.getLength();return a.row>=b?(a.row=Math.max(0,b-1),a.column=this.getLine(b-1).length):a.row<0&&(a.row=0),a},this.insert=function(a,b){if(!b||0===b.length)return a;a=this.$clipPosition(a),this.getLength()<=1&&this.$detectNewLine(b);var c=this.$split(b),d=c.splice(0,1)[0],e=0==c.length?null:c.splice(c.length-1,1)[0];return a=this.insertInLine(a,d),null!==e&&(a=this.insertNewLine(a),a=this._insertLines(a.row,c),a=this.insertInLine(a,e||"")),a},this.insertLines=function(a,b){return a>=this.getLength()?this.insert({row:a,column:0},"\n"+b.join("\n")):this._insertLines(Math.max(a,0),b)},this._insertLines=function(a,b){if(0==b.length)return{row:a,column:0};for(;b.length>61440;){var c=this._insertLines(a,b.slice(0,61440));b=b.slice(61440),a=c.row}var d=[a,0];d.push.apply(d,b),this.$lines.splice.apply(this.$lines,d);var e=new f(a,0,a+b.length,0),g={action:"insertLines",range:e,lines:b};return this._signal("change",{data:g}),e.end},this.insertNewLine=function(a){a=this.$clipPosition(a);var b=this.$lines[a.row]||"";this.$lines[a.row]=b.substring(0,a.column),this.$lines.splice(a.row+1,0,b.substring(a.column,b.length));var c={row:a.row+1,column:0},d={action:"insertText",range:f.fromPoints(a,c),text:this.getNewLineCharacter()};return this._signal("change",{data:d}),c},this.insertInLine=function(a,b){if(0==b.length)return a;var c=this.$lines[a.row]||"";this.$lines[a.row]=c.substring(0,a.column)+b+c.substring(a.column);var d={row:a.row,column:a.column+b.length},e={action:"insertText",range:f.fromPoints(a,d),text:b};return this._signal("change",{data:e}),d},this.remove=function(a){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),a.start=this.$clipPosition(a.start),a.end=this.$clipPosition(a.end),a.isEmpty())return a.start;var b=a.start.row,c=a.end.row;if(a.isMultiLine()){var d=0==a.start.column?b:b+1,e=c-1;a.end.column>0&&this.removeInLine(c,0,a.end.column),e>=d&&this._removeLines(d,e),d!=b&&(this.removeInLine(b,a.start.column,this.getLine(b).length),this.removeNewLine(a.start.row))}else this.removeInLine(b,a.start.column,a.end.column);return a.start},this.removeInLine=function(a,b,c){if(b!=c){var d=new f(a,b,a,c),e=this.getLine(a),g=e.substring(b,c),h=e.substring(0,b)+e.substring(c,e.length);this.$lines.splice(a,1,h);var i={action:"removeText",range:d,text:g};return this._signal("change",{data:i}),d.start}},this.removeLines=function(a,b){return 0>a||b>=this.getLength()?this.remove(new f(a,0,b+1,0)):this._removeLines(a,b)},this._removeLines=function(a,b){var c=new f(a,0,b+1,0),d=this.$lines.splice(a,b-a+1),e={action:"removeLines",range:c,nl:this.getNewLineCharacter(),lines:d};return this._signal("change",{data:e}),d},this.removeNewLine=function(a){var b=this.getLine(a),c=this.getLine(a+1),d=new f(a,b.length,a+1,0),e=b+c;this.$lines.splice(a,2,e);var g={action:"removeText",range:d,text:this.getNewLineCharacter()};this._signal("change",{data:g})},this.replace=function(a,b){if(a instanceof f||(a=f.fromPoints(a.start,a.end)),0==b.length&&a.isEmpty())return a.start;if(b==this.getTextRange(a))return a.end;if(this.remove(a),b)var c=this.insert(a.start,b);else c=a.start;return c},this.applyDeltas=function(a){for(var b=0;b=0;b--){var c=a[b],d=f.fromPoints(c.range.start,c.range.end);"insertLines"==c.action?this._removeLines(d.start.row,d.end.row-1):"insertText"==c.action?this.remove(d):"removeLines"==c.action?this._insertLines(d.start.row,c.lines):"removeText"==c.action&&this.insert(d.start,c.text)}},this.indexToPosition=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=b||0,f=c.length;f>e;e++)if(a-=c[e].length+d,0>a)return{row:e,column:a+c[e].length+d};return{row:f-1,column:c[f-1].length}},this.positionToIndex=function(a,b){for(var c=this.$lines||this.getAllLines(),d=this.getNewLineCharacter().length,e=0,f=Math.min(a.row,c.length),g=b||0;f>g;++g)e+=c[g].length+d;return e+a.column}}).call(h.prototype),b.Document=h}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=b.Anchor=function(a,b,c){this.$onChange=this.onChange.bind(this),this.attach(a),"undefined"==typeof c?this.setPosition(b.row,b.column):this.setPosition(b,c)};(function(){d.implement(this,e),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(a){var b=a.data,c=b.range;if((c.start.row!=c.end.row||c.start.row==this.row)&&!(c.start.row>this.row||c.start.row==this.row&&c.start.column>this.column)){var d=this.row,e=this.column,f=c.start,g=c.end;"insertText"===b.action?f.row===d&&f.column<=e?f.column===e&&this.$insertRight||(f.row===g.row?e+=g.column-f.column:(e-=f.column,d+=g.row-f.row)):f.row!==g.row&&f.row=e?f.column:Math.max(0,e-(g.column-f.column)):f.row!==g.row&&f.row=this.document.getLength()?(c.row=Math.max(0,this.document.getLength()-1),c.column=this.document.getLine(c.row).length):0>a?(c.row=0,c.column=0):(c.row=a,c.column=Math.min(this.document.getLine(c.row).length,Math.max(0,b))),0>b&&(c.column=0),c}}).call(f.prototype)}),define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/event_emitter").EventEmitter,f=function(a,b){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=a;var c=this;this.$worker=function(){if(c.running){for(var a=new Date,b=c.currentLine,d=-1,e=c.doc;c.lines[b];)b++;var f=b,g=e.getLength(),h=0;for(c.running=!1;g>b;){c.$tokenizeRow(b),d=b;do b++;while(c.lines[b]);if(h++,h%5==0&&new Date-a>20)return c.running=setTimeout(c.$worker,20),void(c.currentLine=b)}c.currentLine=b,d>=f&&c.fireUpdateEvent(f,d)}}};(function(){d.implement(this,e),this.setTokenizer=function(a){this.tokenizer=a,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(a){this.doc=a,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(a,b){var c={first:a,last:b};this._signal("update",{data:c})},this.start=function(a){this.currentLine=Math.min(a||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(a){var b=a.range,c=b.start.row,d=b.end.row-c;if(0===d)this.lines[c]=null;else if("removeText"==a.action||"removeLines"==a.action)this.lines.splice(c,d+1,null),this.states.splice(c,d+1,null);else{var e=Array(d+1);e.unshift(c,1),this.lines.splice.apply(this.lines,e),this.states.splice.apply(this.states,e)}this.currentLine=Math.min(c,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(a){return this.lines[a]||this.$tokenizeRow(a)},this.getState=function(a){return this.currentLine==a&&this.$tokenizeRow(a),this.states[a]||"start"},this.$tokenizeRow=function(a){var b=this.doc.getLine(a),c=this.states[a-1],d=this.tokenizer.getLineTokens(b,c,a);return this.states[a]+""!=d.state+""?(this.states[a]=d.state,this.lines[a+1]=null,this.currentLine>a+1&&(this.currentLine=a+1)):this.currentLine==a&&(this.currentLine=a+1),this.lines[a]=d.tokens}}).call(f.prototype),b.BackgroundTokenizer=f}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(a,b,c){var d=a("./lib/lang"),e=(a("./lib/oop"),a("./range").Range),f=function(a,b,c){this.setRegexp(a),this.clazz=b,this.type=c||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(a){this.regExp+""!=a+""&&(this.regExp=a,this.cache=[])},this.update=function(a,b,c,f){if(this.regExp)for(var g=f.firstRow,h=f.lastRow,i=g;h>=i;i++){var j=this.cache[i];null==j&&(j=d.getMatchOffsets(c.getLine(i),this.regExp),j.length>this.MAX_RANGES&&(j=j.slice(0,this.MAX_RANGES)),j=j.map(function(a){return new e(i,a.offset,i,a.offset+a.length)}),this.cache[i]=j.length?j:"");for(var k=j.length;k--;)b.drawSingleLineMarker(a,j[k].toScreenRange(c),this.clazz,f)}}}).call(f.prototype),b.SearchHighlight=f}),define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(a,b,c){function d(){this.getFoldAt=function(a,b,c){var d=this.getFoldLine(a);if(!d)return null;for(var e=d.folds,f=0;f=a)return e;if(e.end.row>a)return null}return null},this.getNextFoldLine=function(a,b){var c=this.$foldData,d=0;for(b&&(d=c.indexOf(b)),-1==d&&(d=0),d;d=a)return e}return null},this.getFoldedRowCount=function(a,b){for(var c=this.$foldData,d=b-a+1,e=0;e=b){b>h&&(h>=a?d-=b-h:d=0);break}g>=a&&(d-=h>=a?g-h:g-a+1)}return d},this.$addFoldLine=function(a){return this.$foldData.push(a),this.$foldData.sort(function(a,b){return a.start.row-b.start.row}),a},this.addFold=function(a,b){var c,d=this.$foldData,e=!1;a instanceof g?c=a:(c=new g(b,a),c.collapseChildren=b.collapseChildren),this.$clipRangeToDocument(c.range);var h=c.start.row,i=c.start.column,j=c.end.row,k=c.end.column;if(!(j>h||h==j&&k-2>=i))throw new Error("The range has to be at least 2 characters width");var l=this.getFoldAt(h,i,1),m=this.getFoldAt(j,k,-1);if(l&&m==l)return l.addSubFold(c);if(l&&!l.range.isStart(h,i)||m&&!m.range.isEnd(j,k))throw new Error("A fold can't intersect already existing fold"+c.range+l.range);var n=this.getFoldsInRange(c.range);n.length>0&&(this.removeFolds(n),n.forEach(function(a){c.addSubFold(a)}));for(var o=0;o0&&this.foldAll(a.start.row+1,a.end.row,a.collapseChildren-1),a.subFolds=[]},this.expandFolds=function(a){a.forEach(function(a){this.expandFold(a)},this)},this.unfold=function(a,b){var c,d;if(null==a?(c=new e(0,0,this.getLength(),0),b=!0):c="number"==typeof a?new e(a,0,a,this.getLine(a).length):"row"in a?e.fromPoints(a,a):a,d=this.getFoldsInRangeList(c),b)this.removeFolds(d);else for(var f=d;f.length;)this.expandFolds(f),f=this.getFoldsInRangeList(c);return d.length?d:void 0},this.isRowFolded=function(a,b){return!!this.getFoldLine(a,b)},this.getRowFoldEnd=function(a,b){var c=this.getFoldLine(a,b);return c?c.end.row:a},this.getRowFoldStart=function(a,b){var c=this.getFoldLine(a,b);return c?c.start.row:a},this.getFoldDisplayLine=function(a,b,c,d,e){null==d&&(d=a.start.row,e=0),null==b&&(b=a.end.row,c=this.getLine(b).length);var f=this.doc,g="";return a.walk(function(a,b,c,h){if(!(d>b)){if(b==d){if(e>c)return;h=Math.max(e,h)}g+=null!=a?a:f.getLine(b).substring(h,c)}},b,c),g},this.getDisplayLine=function(a,b,c,d){var e=this.getFoldLine(a);if(e)return this.getFoldDisplayLine(e,a,b,c,d);var f;return f=this.doc.getLine(a),f.substring(d||0,b||f.length)},this.$cloneFoldData=function(){var a=[];return a=this.$foldData.map(function(b){var c=b.folds.map(function(a){return a.clone()});return new f(a,c)})},this.toggleFold=function(a){var b,c,d=this.selection,e=d.getRange();if(e.isEmpty()){var f=e.start;if(b=this.getFoldAt(f.row,f.column))return void this.expandFold(b);(c=this.findMatchingBracket(f))?1==e.comparePoint(c)?e.end=c:(e.start=c,e.start.column++,e.end.column--):(c=this.findMatchingBracket({row:f.row,column:f.column+1}))?(1==e.comparePoint(c)?e.end=c:e.start=c,e.start.column++):e=this.getCommentFoldRange(f.row,f.column)||e}else{var g=this.getFoldsInRange(e);if(a&&g.length)return void this.expandFolds(g);1==g.length&&(b=g[0])}if(b||(b=this.getFoldAt(e.start.row,e.start.column)),b&&b.range.toString()==e.toString())return void this.expandFold(b);var h="...";if(!e.isMultiLine()){if(h=this.getTextRange(e),h.length<4)return;h=h.trim().substring(0,2)+".."}this.addFold(h,e)},this.getCommentFoldRange=function(a,b,c){var d=new h(this,a,b),f=d.getCurrentToken();if(f&&/^comment|string/.test(f.type)){var g=new e,i=new RegExp(f.type.replace(/\..*/,"\\."));if(1!=c){do f=d.stepBackward();while(f&&i.test(f.type));d.stepForward()}if(g.start.row=d.getCurrentTokenRow(),g.start.column=d.getCurrentTokenColumn()+2,d=new h(this,a,b),-1!=c){do f=d.stepForward();while(f&&i.test(f.type));f=d.stepBackward()}else f=d.getCurrentToken();return g.end.row=d.getCurrentTokenRow(),g.end.column=d.getCurrentTokenColumn()+f.value.length-2,g}},this.foldAll=function(a,b,c){void 0==c&&(c=1e5);var d=this.foldWidgets;if(d){b=b||this.getLength(),a=a||0;for(var e=a;b>e;e++)if(null==d[e]&&(d[e]=this.getFoldWidget(e)),"start"==d[e]){var f=this.getFoldWidgetRange(e);if(f&&f.isMultiLine()&&f.end.row<=b&&f.start.row>=a){e=f.end.row;try{var g=this.addFold("...",f);g&&(g.collapseChildren=c)}catch(h){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(a){if(!this.$foldStyles[a])throw new Error("invalid fold style: "+a+"["+Object.keys(this.$foldStyles).join(", ")+"]"); +if(this.$foldStyle!=a){this.$foldStyle=a,"manual"==a&&this.unfold();var b=this.$foldMode;this.$setFolding(null),this.$setFolding(b)}},this.$setFolding=function(a){if(this.$foldMode!=a){if(this.$foldMode=a,this.removeListener("change",this.$updateFoldWidgets),this._emit("changeAnnotation"),!a||"manual"==this.$foldStyle)return void(this.foldWidgets=null);this.foldWidgets=[],this.getFoldWidget=a.getFoldWidget.bind(a,this,this.$foldStyle),this.getFoldWidgetRange=a.getFoldWidgetRange.bind(a,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets)}},this.getParentFoldRangeData=function(a,b){var c=this.foldWidgets;if(!c||b&&c[a])return{};for(var d,e=a-1;e>=0;){var f=c[e];if(null==f&&(f=c[e]=this.getFoldWidget(e)),"start"==f){var g=this.getFoldWidgetRange(e);if(d||(d=g),g&&g.end.row>=a)break}e--}return{range:-1!==e&&g,firstRange:d}},this.onFoldWidgetClick=function(a,b){b=b.domEvent;var c={children:b.shiftKey,all:b.ctrlKey||b.metaKey,siblings:b.altKey},d=this.$toggleFoldWidget(a,c);if(!d){var e=b.target||b.srcElement;e&&/ace_fold-widget/.test(e.className)&&(e.className+=" ace_invalid")}},this.$toggleFoldWidget=function(a,b){if(this.getFoldWidget){var c=this.getFoldWidget(a),d=this.getLine(a),e="end"===c?-1:1,f=this.getFoldAt(a,-1===e?0:d.length,e);if(f)return void(b.children||b.all?this.removeFold(f):this.expandFold(f));var g=this.getFoldWidgetRange(a,!0);if(g&&!g.isMultiLine()&&(f=this.getFoldAt(g.start.row,g.start.column,1),f&&g.isEqual(f.range)))return void this.removeFold(f);if(b.siblings){var h=this.getParentFoldRangeData(a);if(h.range)var i=h.range.start.row+1,j=h.range.end.row;this.foldAll(i,j,b.all?1e4:0)}else b.children?(j=g?g.end.row:this.getLength(),this.foldAll(a+1,g.end.row,b.all?1e4:0)):g&&(b.all&&(g.collapseChildren=1e4),this.addFold("...",g));return g}},this.toggleFoldWidget=function(a){var b=this.selection.getCursor().row;b=this.getRowFoldStart(b);var c=this.$toggleFoldWidget(b,{});if(!c){var d=this.getParentFoldRangeData(b,!0);if(c=d.range||d.firstRange){b=c.start.row;var e=this.getFoldAt(b,this.getLine(b).length,1);e?this.removeFold(e):this.addFold("...",c)}}},this.updateFoldWidgets=function(a){var b=a.data,c=b.range,d=c.start.row,e=c.end.row-d;if(0===e)this.foldWidgets[d]=null;else if("removeText"==b.action||"removeLines"==b.action)this.foldWidgets.splice(d,e+1,null);else{var f=Array(e+1);f.unshift(d,1),this.foldWidgets.splice.apply(this.foldWidgets,f)}}}var e=a("../range").Range,f=a("./fold_line").FoldLine,g=a("./fold").Fold,h=a("../token_iterator").TokenIterator;b.Folding=d}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(a,b,c){function d(a,b){this.foldData=a,Array.isArray(b)?this.folds=b:b=this.folds=[b];var c=b[b.length-1];this.range=new e(b[0].start.row,b[0].start.column,c.end.row,c.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(a){a.setFoldLine(this)},this)}var e=a("../range").Range;(function(){this.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(b){b.start.row+=a,b.end.row+=a})},this.addFold=function(a){if(a.sameRow){if(a.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(a,b){return-a.range.compareEnd(b.start.row,b.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else{if(a.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column}a.foldLine=this},this.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},this.walk=function(a,b,c){var d,e,f,g=0,h=this.folds,i=!0;null==b&&(b=this.end.row,c=this.end.column);for(var j=0;ja)return{row:b.start.row,column:b.start.column+a};if(a-=b.placeholder.length,0>a)return b.start;c=b.end.column}return{row:this.end.row,column:this.end.column+a}}}).call(d.prototype),b.FoldLine=d}),define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(a,b,c){function d(a,b){a.row-=b.row,0==a.row&&(a.column-=b.column)}function e(a,b){d(a.start,b),d(a.end,b)}function f(a,b){0==a.row&&(a.column+=b.column),a.row+=b.row}function g(a,b){f(a.start,b),f(a.end,b)}var h=(a("../range").Range,a("../range_list").RangeList),i=a("../lib/oop"),j=b.Fold=function(a,b){this.foldLine=null,this.placeholder=b,this.range=a,this.start=a.start,this.end=a.end,this.sameRow=a.start.row==a.end.row,this.subFolds=this.ranges=[]};i.inherits(j,h),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(a){this.foldLine=a,this.subFolds.forEach(function(b){b.setFoldLine(a)})},this.clone=function(){var a=this.range.clone(),b=new j(a,this.placeholder);return this.subFolds.forEach(function(a){b.subFolds.push(a.clone())}),b.collapseChildren=this.collapseChildren,b},this.addSubFold=function(a){if(!this.range.isEqual(a)){if(!this.range.containsRange(a))throw new Error("A fold can't intersect already existing fold"+a.range+this.range);e(a,this.start);for(var b=a.start.row,c=a.start.column,d=0,f=-1;d0)){var i=e(a,g.start);return 0===h?b&&0!==i?-f-2:f:i>0||0===i&&!b?f:-f-1}}return-f-1},this.add=function(a){var b=!a.isEmpty(),c=this.pointIndex(a.start,b);0>c&&(c=-c-1);var d=this.pointIndex(a.end,b,c);return 0>d?d=-d-1:d++,this.ranges.splice(c,d-c,a)},this.addList=function(a){for(var b=[],c=a.length;c--;)b.push.call(b,this.add(a[c]));return b},this.substractPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges.splice(b,1):void 0},this.merge=function(){var a=[],b=this.ranges;b=b.sort(function(a,b){return e(a.start,b.start)});for(var c,d=b[0],f=1;fg||(0!=g||c.isEmpty()||d.isEmpty())&&(e(c.end,d.end)<0&&(c.end.row=d.end.row,c.end.column=d.end.column),b.splice(f,1),a.push(d),d=c,f--)}return this.ranges=b,a},this.contains=function(a,b){return this.pointIndex({row:a,column:b})>=0},this.containsPoint=function(a){return this.pointIndex(a)>=0},this.rangeAtPoint=function(a){var b=this.pointIndex(a);return b>=0?this.ranges[b]:void 0},this.clipRows=function(a,b){var c=this.ranges;if(c[0].start.row>b||c[c.length-1].start.rowd&&(d=-d-1);var e=this.pointIndex({row:b,column:0},d);0>e&&(e=-e-1);for(var f=[],g=d;e>g;g++)f.push(c[g]);return f},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(a){this.session&&this.detach(),this.session=a,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(a){var b=a.data.range;if("i"==a.data.action[0])var c=b.start,d=b.end;else var d=b.start,c=b.end;for(var e=c.row,f=d.row,g=f-e,h=-c.column+d.column,i=this.ranges,j=0,k=i.length;k>j;j++){var l=i[j];if(!(l.end.rowe)break;if(l.start.row==e&&l.start.column>=c.column&&(l.start.column==c.column&&this.$insertRight||(l.start.column+=h,l.start.row+=g)),l.end.row==e&&l.end.column>=c.column){if(l.end.column==c.column&&this.$insertRight)continue;l.end.column==c.column&&h>0&&k-1>j&&l.end.column>l.start.column&&l.end.column==i[j+1].start.column&&(l.end.column-=h),l.end.column+=h,l.end.row+=g}}}if(0!=g&&k>j)for(;k>j;j++){var l=i[j];l.start.row+=g,l.end.row+=g}}}).call(f.prototype),b.RangeList=f}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(a,b,c){function d(){this.findMatchingBracket=function(a,b){if(0==a.column)return null;var c=b||this.getLine(a.row).charAt(a.column-1);if(""==c)return null;var d=c.match(/([\(\[\{])|([\)\]\}])/);return d?d[1]?this.$findClosingBracket(d[1],a):this.$findOpeningBracket(d[2],a):null},this.getBracketRange=function(a){var b,c=this.getLine(a.row),d=!0,e=c.charAt(a.column-1),g=e&&e.match(/([\(\[\{])|([\)\]\}])/);if(g||(e=c.charAt(a.column),a={row:a.row,column:a.column+1},g=e&&e.match(/([\(\[\{])|([\)\]\}])/),d=!1),!g)return null;if(g[1]){var h=this.$findClosingBracket(g[1],a);if(!h)return null;b=f.fromPoints(a,h),d||(b.end.column++,b.start.column--),b.cursor=b.end}else{var h=this.$findOpeningBracket(g[2],a);if(!h)return null;b=f.fromPoints(h,a),d||(b.start.column++,b.end.column--),b.cursor=b.start}return b},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("rparen",".paren")+")+"));for(var i=b.column-g.getCurrentTokenColumn()-2,j=h.value;;){for(;i>=0;){var k=j.charAt(i);if(k==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else k==a&&(f+=1);i-=1}do h=g.stepBackward();while(h&&!c.test(h.type));if(null==h)break;j=h.value,i=j.length-1}return null}},this.$findClosingBracket=function(a,b,c){var d=this.$brackets[a],f=1,g=new e(this,b.row,b.column),h=g.getCurrentToken();if(h||(h=g.stepForward()),h){c||(c=new RegExp("(\\.?"+h.type.replace(".","\\.").replace("lparen",".paren")+")+"));for(var i=b.column-g.getCurrentTokenColumn();;){for(var j=h.value,k=j.length;k>i;){var l=j.charAt(i);if(l==d){if(f-=1,0==f)return{row:g.getCurrentTokenRow(),column:i+g.getCurrentTokenColumn()}}else l==a&&(f+=1);i+=1}do h=g.stepForward();while(h&&!c.test(h.type));if(null==h)break;i=0}return null}}}var e=a("../token_iterator").TokenIterator,f=a("../range").Range;b.BracketMatch=d}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(a,b,c){var d=a("./lib/lang"),e=a("./lib/oop"),f=a("./range").Range,g=function(){this.$options={}};(function(){this.set=function(a){return e.mixin(this.$options,a),this},this.getOptions=function(){return d.copyObject(this.$options)},this.setOptions=function(a){this.$options=a},this.find=function(a){var b=this.$matchIterator(a,this.$options);if(!b)return!1;var c=null;return b.forEach(function(a,b,d){if(a.start)c=a;else{var e=a.offset+(d||0);c=new f(b,e,b,e+a.length)}return!0}),c},this.findAll=function(a){var b=this.$options;if(!b.needle)return[];this.$assembleRegExp(b);var c=b.range,e=c?a.getLines(c.start.row,c.end.row):a.doc.getAllLines(),g=[],h=b.re;if(b.$isMultiLine){var i,j=h.length,k=e.length-j;a:for(var l=h.offset||0;k>=l;l++){for(var m=0;j>m;m++)if(-1==e[l+m].search(h[m]))continue a;var n=e[l],o=e[l+j-1],p=n.length-n.match(h[0])[0].length,q=o.match(h[j-1])[0].length;i&&i.end.row===l&&i.end.column>p||(g.push(i=new f(l,p,l+j-1,q)),j>2&&(l=l+j-2))}}else for(var r=0;rr&&g[r].start.columnr&&g[m].end.column>v&&g[m].end.row==c.end.row;)m--;for(g=g.slice(r,m+1),r=0,m=g.length;m>r;r++)g[r].start.row+=c.start.row,g[r].end.row+=c.start.row}return g},this.replace=function(a,b){var c=this.$options,d=this.$assembleRegExp(c);if(c.$isMultiLine)return b;if(d){var e=d.exec(a);if(!e||e[0].length!=a.length)return null;if(b=a.replace(d,b),c.preserveCase){b=b.split("");for(var f=Math.min(a.length,a.length);f--;){var g=a[f];g&&g.toLowerCase()!=g?b[f]=b[f].toUpperCase():b[f]=b[f].toLowerCase()}b=b.join("")}return b}},this.$matchIterator=function(a,b){var c=this.$assembleRegExp(b);if(!c)return!1;var e,g=this,h=b.backwards;if(b.$isMultiLine)var i=c.length,j=function(b,d,g){var h=b.search(c[0]);if(-1!=h){for(var j=1;i>j;j++)if(b=a.getLine(d+j),-1==b.search(c[j]))return;var k=b.match(c[i-1])[0].length,l=new f(d,h,d+i-1,k);return 1==c.offset?(l.start.row--,l.start.column=Number.MAX_VALUE):g&&(l.start.column+=g),e(l)?!0:void 0}};else if(h)var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=g.length-1;h>=0;h--)if(e(g[h],b,f))return!0};else var j=function(a,b,f){for(var g=d.getMatchOffsets(a,c),h=0;h=g;d--)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=h,g=f.row;d>=g;d--)if(c(a.getLine(d),d))return}}:function(c){var d=f.row,e=a.getLine(d).substr(f.column);if(!c(e,d,f.column)){for(d+=1;h>=d;d++)if(c(a.getLine(d),d))return;if(0!=b.wrap)for(d=g,h=f.row;h>=d;d++)if(c(a.getLine(d),d))return}};return{forEach:i}}}).call(g.prototype),b.Search=g}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../keyboard/hash_handler").HashHandler,f=a("../lib/event_emitter").EventEmitter,g=function(a,b){e.call(this,b,a),this.byName=this.commands,this.setDefaultHandler("exec",function(a){return a.command.exec(a.editor,a.args||{})})};d.inherits(g,e),function(){d.implement(this,f),this.exec=function(a,b,c){if("string"==typeof a&&(a=this.commands[a]),!a)return!1;if(b&&b.$readOnly&&!a.readOnly)return!1;var d={editor:b,command:a,args:c},e=this._emit("exec",d);return this._signal("afterExec",d),e===!1?!1:!0},this.toggleRecording=function(a){return this.$inReplay?void 0:(a&&a._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(a){this.macro.push([a.command,a.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0))},this.replay=function(a){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(a);try{this.$inReplay=!0,this.macro.forEach(function(b){"string"==typeof b?this.exec(b,a):this.exec(b[0],a,b[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(a){return a.map(function(a){return"string"!=typeof a[0]&&(a[0]=a[0].name),a[1]||(a=a[0]),a})}}.call(g.prototype),b.CommandManager=g}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(a,b,c){function d(a,b){if(this.platform=b||(f.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.__defineGetter__&&this.__defineSetter__&&"undefined"!=typeof console&&console.error){var c=!1,d=function(){c||(c=!0,console.error("commmandKeyBinding has too many m's. use commandKeyBinding"))};this.__defineGetter__("commmandKeyBinding",function(){return d(),this.commandKeyBinding}),this.__defineSetter__("commmandKeyBinding",function(a){return d(),this.commandKeyBinding=a})}else this.commmandKeyBinding=this.commandKeyBinding;this.addCommands(a)}var e=a("../lib/keys"),f=a("../lib/useragent");(function(){this.addCommand=function(a){this.commands[a.name]&&this.removeCommand(a),this.commands[a.name]=a,a.bindKey&&this._buildKeyHash(a)},this.removeCommand=function(a){var b="string"==typeof a?a:a.name;a=this.commands[b],delete this.commands[b];var c=this.commandKeyBinding;for(var d in c)for(var e in c[d])c[d][e]==a&&delete c[d][e]},this.bindKey=function(a,b){if(a){if("function"==typeof b)return void this.addCommand({exec:b,bindKey:a,name:b.name||a});var c=this.commandKeyBinding;a.split("|").forEach(function(a){var d=this.parseKeys(a,b),e=d.hashId;(c[e]||(c[e]={}))[d.key]=b},this)}},this.addCommands=function(a){a&&Object.keys(a).forEach(function(b){var c=a[b];if(c){if("string"==typeof c)return this.bindKey(c,b);"function"==typeof c&&(c={exec:c}),"object"==typeof c&&(c.name||(c.name=b),this.addCommand(c))}},this)},this.removeCommands=function(a){Object.keys(a).forEach(function(b){this.removeCommand(a[b])},this)},this.bindKeys=function(a){Object.keys(a).forEach(function(b){this.bindKey(b,a[b])},this)},this._buildKeyHash=function(a){var b=a.bindKey;if(b){var c="string"==typeof b?b:b[this.platform];this.bindKey(c,a)}},this.parseKeys=function(a){-1!=a.indexOf(" ")&&(a=a.split(/\s+/).pop());var b=a.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(a){return a}),c=b.pop(),d=e[c];if(e.FUNCTION_KEYS[d])c=e.FUNCTION_KEYS[d].toLowerCase();else{if(!b.length)return{key:c,hashId:-1};if(1==b.length&&"shift"==b[0])return{key:c.toUpperCase(),hashId:-1}}for(var f=0,g=b.length;g--;){var h=e.KEY_MODS[b[g]];if(null==h)return"undefined"!=typeof console&&console.error("invalid modifier "+b[g]+" in "+a),!1;f|=h}return{key:c,hashId:f}},this.findKeyCommand=function(a,b){var c=this.commandKeyBinding;return c[a]&&c[a][b]},this.handleKeyboard=function(a,b,c,d){return{command:this.findKeyCommand(b,c)}}}).call(d.prototype),b.HashHandler=d}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config"],function(a,b,c){function d(a,b){return{win:a,mac:b}}var e=a("../lib/lang"),f=a("../config");b.commands=[{name:"showSettingsMenu",bindKey:d("Ctrl-,","Command-,"),exec:function(a){f.loadModule("ace/ext/settings_menu",function(b){b.init(a),a.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:d("Alt-E","Ctrl-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:d("Alt-Shift-E","Ctrl-Shift-E"),exec:function(a){f.loadModule("ace/ext/error_marker",function(b){b.showErrorMarker(a,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:d("Ctrl-A","Command-A"),exec:function(a){a.selectAll()},readOnly:!0},{name:"centerselection",bindKey:d(null,"Ctrl-L"),exec:function(a){a.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:d("Ctrl-L","Command-L"),exec:function(a){var b=parseInt(prompt("Enter line number:"),10);isNaN(b)||a.gotoLine(b)},readOnly:!0},{name:"fold",bindKey:d("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(a){a.session.toggleFold(!1)},scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:d("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(a){a.session.toggleFold(!0)},scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:d("F2","F2"),exec:function(a){a.session.toggleFoldWidget()},scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:d("Alt-F2","Alt-F2"),exec:function(a){a.session.toggleFoldWidget(!0)},scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:d("Ctrl-Alt-0","Ctrl-Command-Option-0"),exec:function(a){a.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:d("Alt-0","Command-Option-0"),exec:function(a){a.session.foldAll(),a.session.unfold(a.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:d("Alt-Shift-0","Command-Option-Shift-0"),exec:function(a){a.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:d("Ctrl-K","Command-G"),exec:function(a){a.findNext()},readOnly:!0},{name:"findprevious",bindKey:d("Ctrl-Shift-K","Command-Shift-G"),exec:function(a){a.findPrevious()},readOnly:!0},{name:"selectOrFindNext",bindKey:d("ALt-K","Ctrl-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:d("Alt-Shift-K","Ctrl-Shift-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findPrevious()},readOnly:!0},{name:"find",bindKey:d("Ctrl-F","Command-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(a){a.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:d("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(a){a.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:d("Ctrl-Home","Command-Home|Command-Up"),exec:function(a){a.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:d("Shift-Up","Shift-Up"),exec:function(a){a.getSelection().selectUp()},multiSelectAction:"forEach",readOnly:!0},{name:"golineup",bindKey:d("Up","Up|Ctrl-P"),exec:function(a,b){a.navigateUp(b.times)},multiSelectAction:"forEach",readOnly:!0},{name:"selecttoend",bindKey:d("Ctrl-Shift-End","Command-Shift-Down"),exec:function(a){a.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:d("Ctrl-End","Command-End|Command-Down"),exec:function(a){a.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:d("Shift-Down","Shift-Down"),exec:function(a){a.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:d("Down","Down|Ctrl-N"),exec:function(a,b){a.navigateDown(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:d("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(a){a.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:d("Ctrl-Left","Option-Left"),exec:function(a){a.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:d("Alt-Shift-Left","Command-Shift-Left"),exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:d("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(a){a.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:d("Shift-Left","Shift-Left"),exec:function(a){a.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:d("Left","Left|Ctrl-B"),exec:function(a,b){a.navigateLeft(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:d("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(a){a.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:d("Ctrl-Right","Option-Right"),exec:function(a){a.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:d("Alt-Shift-Right","Command-Shift-Right"),exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:d("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(a){a.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:d("Shift-Right","Shift-Right"),exec:function(a){a.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:d("Right","Right|Ctrl-F"),exec:function(a,b){a.navigateRight(b.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(a){a.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:d(null,"Option-PageDown"),exec:function(a){a.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:d("PageDown","PageDown|Ctrl-V"),exec:function(a){a.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(a){a.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:d(null,"Option-PageUp"),exec:function(a){a.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(a){a.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:d("Ctrl-Up",null),exec:function(a){a.renderer.scrollBy(0,-2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:d("Ctrl-Down",null),exec:function(a){a.renderer.scrollBy(0,2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:d("Ctrl-Alt-E","Command-Option-E"),exec:function(a){a.commands.toggleRecording(a)},readOnly:!0},{name:"replaymacro",bindKey:d("Ctrl-Shift-E","Command-Shift-E"),exec:function(a){a.commands.replay(a)},readOnly:!0},{name:"jumptomatching",bindKey:d("Ctrl-P","Ctrl-Shift-P"),exec:function(a){a.jumpToMatching()},multiSelectAction:"forEach",readOnly:!0},{name:"selecttomatching",bindKey:d("Ctrl-Shift-P",null),exec:function(a){a.jumpToMatching(!0)},multiSelectAction:"forEach",readOnly:!0},{name:"cut",exec:function(a){var b=a.getSelectionRange();a._emit("cut",b),a.selection.isEmpty()||(a.session.remove(b),a.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"removeline",bindKey:d("Ctrl-D","Command-D"),exec:function(a){a.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:d("Ctrl-Shift-D","Command-Shift-D"),exec:function(a){a.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:d("Ctrl-Alt-S","Command-Alt-S"),exec:function(a){a.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:d("Ctrl-/","Command-/"),exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:d("Ctrl-Shift-/","Command-Shift-/"),exec:function(a){a.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:d("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(a){a.modifyNumber(1)},multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:d("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(a){a.modifyNumber(-1)},multiSelectAction:"forEach"},{name:"replace",bindKey:d("Ctrl-H","Command-Option-F"),exec:function(a){f.loadModule("ace/ext/searchbox",function(b){b.Search(a,!0)})}},{name:"undo",bindKey:d("Ctrl-Z","Command-Z"),exec:function(a){a.undo()}},{name:"redo",bindKey:d("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(a){a.redo()}},{name:"copylinesup",bindKey:d("Alt-Shift-Up","Command-Option-Up"),exec:function(a){a.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:d("Alt-Up","Option-Up"),exec:function(a){a.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:d("Alt-Shift-Down","Command-Option-Down"),exec:function(a){a.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:d("Alt-Down","Option-Down"),exec:function(a){a.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:d("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(a){a.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:d("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(a){a.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:d("Shift-Delete",null),exec:function(a){return a.selection.isEmpty()?void a.remove("left"):!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:d("Alt-Backspace","Command-Backspace"),exec:function(a){a.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:d("Alt-Delete","Ctrl-K"),exec:function(a){a.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:d("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(a){a.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:d("Ctrl-Delete","Alt-Delete"),exec:function(a){a.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:d("Shift-Tab","Shift-Tab"),exec:function(a){a.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:d("Tab","Tab"),exec:function(a){a.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:d("Ctrl-[","Ctrl-["),exec:function(a){a.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:d("Ctrl-]","Ctrl-]"), +exec:function(a){a.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(a,b){a.insert(b)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(a,b){a.insert(e.stringRepeat(b.text||"",b.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:d(null,"Ctrl-O"),exec:function(a){a.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:d("Ctrl-T","Ctrl-T"),exec:function(a){a.transposeLetters()},multiSelectAction:function(a){a.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:d("Ctrl-U","Ctrl-U"),exec:function(a){a.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:d("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(a){a.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"}]}),define("ace/undomanager",["require","exports","module"],function(a,b,c){var d=function(){this.reset()};(function(){this.execute=function(a){var b=a.args[0];this.$doc=a.args[1],a.merge&&this.hasUndo()&&(this.dirtyCounter--,b=this.$undoStack.pop().concat(b)),this.$undoStack.push(b),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(a){var b=this.$undoStack.pop(),c=null;return b&&(c=this.$doc.undoChanges(b,a),this.$redoStack.push(b),this.dirtyCounter--),c},this.redo=function(a){var b=this.$redoStack.pop(),c=null;return b&&(c=this.$doc.redoChanges(b,a),this.$undoStack.push(b),this.dirtyCounter++),c},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter}}).call(d.prototype),b.UndoManager=d}),define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./config"),g=a("./lib/useragent"),h=a("./layer/gutter").Gutter,i=a("./layer/marker").Marker,j=a("./layer/text").Text,k=a("./layer/cursor").Cursor,l=a("./scrollbar").HScrollBar,m=a("./scrollbar").VScrollBar,n=a("./renderloop").RenderLoop,o=a("./layer/font_metrics").FontMetrics,p=a("./lib/event_emitter").EventEmitter,q='.ace_editor {position: relative;overflow: hidden;font-family: \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;font-size: 12px;line-height: normal;direction: ltr;}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_content {position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: text;min-width: 100%;}.ace_dragging, .ace_dragging * {cursor: move !important;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;text-indent: -1em;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;}.ace_text-input.ace_composition {background: #f8f8f8;color: #111;z-index: 1000;opacity: 1;text-indent: 0;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;white-space: pre;height: 100%;width: 100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;/* setting pointer-events: auto; on node under the mouse, which changesduring scroll, will break mouse wheel scrolling in Safari */pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;}.ace_text-layer {font: inherit !important;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;border-left: 2px solid}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0px;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_smooth-blinking .ace_cursor {-moz-transition: opacity 0.18s;-webkit-transition: opacity 0.18s;-o-transition: opacity 0.18s;-ms-transition: opacity 0.18s;transition: opacity 0.18s;}.ace_editor.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}.ace_line .ace_fold {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;-moz-border-radius: 2px;-webkit-border-radius: 2px;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;display: block;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}/*** Dark version for fold widgets*/.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {-moz-transition: opacity 0.4s ease 0.05s;-webkit-transition: opacity 0.4s ease 0.05s;-o-transition: opacity 0.4s ease 0.05s;-ms-transition: opacity 0.4s ease 0.05s;transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {-moz-transition: opacity 0.05s ease 0.05s;-webkit-transition: opacity 0.05s ease 0.05s;-o-transition: opacity 0.05s ease 0.05s;-ms-transition: opacity 0.05s ease 0.05s;transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}';e.importCssString(q,"ace_editor");var r=function(a,b){var c=this;this.container=a||e.createElement("div"),this.$keepTextAreaAtCursor=!g.isOldIE,e.addCssClass(this.container,"ace_editor"),this.setTheme(b),this.$gutter=e.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=e.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=e.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new h(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new i(this.content);var d=this.$textLayer=new j(this.content);this.canvas=d.element,this.$markerFront=new i(this.content),this.$cursorLayer=new k(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new m(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollTop(a.data-c.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(a){c.$scrollAnimation||c.session.setScrollLeft(a.data-c.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new o(this.container,500),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(a){c.updateCharacterSize(),c.onResize(!0,c.gutterWidth,c.$size.width,c.$size.height),c._signal("changeCharacterSize",a)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new n(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),f.resetOptions(this),f._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,d.implement(this,p),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(a){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=a,a&&(this.scrollMargin.top&&a.getScrollTop()<=0&&a.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(a),this.$markerBack.setSession(a),this.$markerFront.setSession(a),this.$gutterLayer.setSession(a),this.$textLayer.setSession(a),this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(a,b){void 0===b&&(b=1/0),this.$changedLines?(this.$changedLines.firstRow>a&&(this.$changedLines.firstRow=a),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$changedLines.lastRow2)){this.resizing>0?this.resizing++:this.resizing=a?1:0;var e=this.container;d||(d=e.clientHeight||e.scrollHeight),c||(c=e.clientWidth||e.scrollWidth);var f=this.$updateCachedSize(a,b,c,d);if(!this.$size.scrollerHeight||!c&&!d)return this.resizing=0;a&&(this.$gutterLayer.$padding=null),a?this.$renderChanges(f|this.$changes,!0):this.$loop.schedule(f|this.$changes),this.resizing&&(this.resizing=0)}},this.$updateCachedSize=function(a,b,c,d){d-=this.$extraHeight||0;var e=0,f=this.$size,g={width:f.width,height:f.height,scrollerHeight:f.scrollerHeight,scrollerWidth:f.scrollerWidth};return d&&(a||f.height!=d)&&(f.height=d,e|=this.CHANGE_SIZE,f.scrollerHeight=f.height,this.$horizScroll&&(f.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",e|=this.CHANGE_SCROLL),c&&(a||f.width!=c)&&(e|=this.CHANGE_SIZE,f.width=c,null==b&&(b=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=b,this.scrollBarH.element.style.left=this.scroller.style.left=b+"px",f.scrollerWidth=Math.max(0,c-b-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||a)&&(e|=this.CHANGE_FULL)),f.$dirty=!c||!d,e&&this._signal("resize",g),e},this.onGutterResize=function(){var a=this.$showGutter?this.$gutter.offsetWidth:0;a!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,a,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var a=this.$size.scrollerWidth-2*this.$padding,b=Math.floor(a/this.characterWidth);return this.session.adjustWrapLimit(b,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(a){this.setOption("animatedScroll",a)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(a){this.setOption("showInvisibles",a)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(a){this.setOption("displayIndentGuides",a)},this.setShowPrintMargin=function(a){this.setOption("showPrintMargin",a)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(a){this.setOption("printMarginColumn",a)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(a){return this.setOption("showGutter",a)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(a){this.setOption("fadeFoldWidgets",a)},this.setHighlightGutterLine=function(a){this.setOption("highlightGutterLine",a)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var a=this.$cursorLayer.$pixelPos,b=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var c=this.session.selection.getCursor();c.column=0,a=this.$cursorLayer.getPixelPosition(c,!0),b*=this.session.getRowLength(c.row)}this.$gutterLineHighlight.style.top=a.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=b+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var a=e.createElement("div");a.className="ace_layer ace_print-margin-layer",this.$printMarginEl=e.createElement("div"),this.$printMarginEl.className="ace_print-margin",a.appendChild(this.$printMarginEl),this.content.insertBefore(a,this.content.firstChild)}var b=this.$printMarginEl.style;b.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",b.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.content},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var a=this.layerConfig,b=this.$cursorLayer.$pixelPos.top,c=this.$cursorLayer.$pixelPos.left;b-=a.offset;var d=this.lineHeight;if(!(0>b||b>a.height-d)){var e=this.characterWidth;if(this.$composition){var f=this.textarea.value.replace(/^\x01+/,"");e*=this.session.$getStringScreenWidth(f)[0]+2,d+=2,b-=1}c-=this.scrollLeft,c>this.$size.scrollerWidth-e&&(c=this.$size.scrollerWidth-e),c-=this.scrollBar.width,this.textarea.style.height=d+"px",this.textarea.style.width=e+"px",this.textarea.style.right=Math.max(0,this.$size.scrollerWidth-c-e)+"px",this.textarea.style.bottom=Math.max(0,this.$size.height-b-d)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var a=Math.floor((this.layerConfig.height+this.layerConfig.offset)/this.layerConfig.lineHeight);return this.layerConfig.firstRow-1+a},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(a){this.$padding=a,this.$textLayer.setPadding(a),this.$cursorLayer.setPadding(a),this.$markerFront.setPadding(a),this.$markerBack.setPadding(a),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(a,b,c,d){var e=this.scrollMargin;e.top=0|a,e.bottom=0|b,e.right=0|d,e.left=0|c,e.v=e.top+e.bottom,e.h=e.left+e.right,e.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-e.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(a){this.setOption("hScrollBarAlwaysVisible",a)},this.getVScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(a){this.setOption("vScrollBarAlwaysVisible",a)},this.$updateScrollBarV=function(){this.scrollBarV.setScrollHeight(this.layerConfig.maxHeight+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(a,b){if(this.$changes&&(a|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!a&&!b)return void(this.$changes|=a);if(this.$size.$dirty)return this.$changes|=a,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var c=this.layerConfig;return(a&this.CHANGE_FULL||a&this.CHANGE_SIZE||a&this.CHANGE_TEXT||a&this.CHANGE_LINES||a&this.CHANGE_SCROLL||a&this.CHANGE_H_SCROLL)&&(a|=this.$computeLayerConfig(),c=this.layerConfig,this.$updateScrollBarV(),a&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-c.offset+"px",this.content.style.marginTop=-c.offset+"px",this.content.style.width=c.width+2*this.$padding+"px",this.content.style.height=c.minHeight+"px"),a&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),a&this.CHANGE_FULL?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender")):a&this.CHANGE_SCROLL?(a&this.CHANGE_TEXT||a&this.CHANGE_LINES?this.$textLayer.update(c):this.$textLayer.scrollLines(c),this.$showGutter&&this.$gutterLayer.update(c),this.$markerBack.update(c),this.$markerFront.update(c),this.$cursorLayer.update(c),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender")):(a&this.CHANGE_TEXT?(this.$textLayer.update(c),this.$showGutter&&this.$gutterLayer.update(c)):a&this.CHANGE_LINES?(this.$updateLines()||a&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(c):(a&this.CHANGE_TEXT||a&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(c),a&this.CHANGE_CURSOR&&(this.$cursorLayer.update(c),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(c),a&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(c),void this._signal("afterRender"))},this.$autosize=function(){var a=this.session.getScreenLength()*this.lineHeight,b=this.$maxLines*this.lineHeight,c=Math.max((this.$minLines||1)*this.lineHeight,Math.min(b,a))+this.scrollMargin.v+(this.$extraHeight||0),d=a>b;if(c!=this.desiredHeight||this.$size.height!=this.desiredHeight||d!=this.$vScroll){d!=this.$vScroll&&(this.$vScroll=d,this.scrollBarV.setVisible(d));var e=this.container.clientWidth;this.container.style.height=c+"px",this.$updateCachedSize(!0,this.$gutterWidth,e,c),this.desiredHeight=c}},this.$computeLayerConfig=function(){this.$maxLines&&this.lineHeight>1&&this.$autosize();var a=this.session,b=this.$size,c=b.height<=2*this.lineHeight,d=this.session.getScreenLength(),e=d*this.lineHeight,f=this.scrollTop%this.lineHeight,g=b.scrollerHeight+this.lineHeight,h=this.$getLongestLine(),i=!c&&(this.$hScrollBarAlwaysVisible||b.scrollerWidth-h-2*this.$padding<0),j=this.$horizScroll!==i;j&&(this.$horizScroll=i,this.scrollBarH.setVisible(i)),!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>e-b.scrollerHeight&&(e+=Math.min((b.scrollerHeight-this.lineHeight)*this.$scrollPastEnd,this.scrollTop-e+b.scrollerHeight));var k=!c&&(this.$vScrollBarAlwaysVisible||b.scrollerHeight-e<0),l=this.$vScroll!==k;l&&(this.$vScroll=k,this.scrollBarV.setVisible(k)),this.session.setScrollTop(Math.max(-this.scrollMargin.top,Math.min(this.scrollTop,e-b.scrollerHeight+this.scrollMargin.bottom))),this.session.setScrollLeft(Math.max(-this.scrollMargin.left,Math.min(this.scrollLeft,h+2*this.$padding-b.scrollerWidth+this.scrollMargin.right)));var m,n,o=Math.ceil(g/this.lineHeight)-1,p=Math.max(0,Math.round((this.scrollTop-f)/this.lineHeight)),q=p+o,r=this.lineHeight;p=a.screenToDocumentRow(p,0);var s=a.getFoldLine(p);s&&(p=s.start.row),m=a.documentToScreenRow(p,0),n=a.getRowLength(p)*r,q=Math.min(a.screenToDocumentRow(q,0),a.getLength()-1),g=b.scrollerHeight+a.getRowLength(q)*r+n,f=this.scrollTop-m*r;var t=0;return this.layerConfig.width!=h&&(t=this.CHANGE_H_SCROLL),(j||l)&&(t=this.$updateCachedSize(!0,this.gutterWidth,b.width,b.height),this._signal("scrollbarVisibilityChanged"),l&&(h=this.$getLongestLine())),this.layerConfig={width:h,padding:this.$padding,firstRow:p,firstRowScreen:m,lastRow:q,lineHeight:r,characterWidth:this.characterWidth,minHeight:g,maxHeight:e,offset:f,gutterOffset:Math.max(0,Math.ceil((f+b.height-b.scrollerHeight)/r)),height:this.$size.scrollerHeight},t},this.$updateLines=function(){var a=this.$changedLines.firstRow,b=this.$changedLines.lastRow;this.$changedLines=null;var c=this.layerConfig;return a>c.lastRow+1||bf?(b&&(f-=b*this.$size.scrollerHeight),0===f&&(f=-this.scrollMargin.top),this.session.setScrollTop(f)):i+this.$size.scrollerHeight-he?(ec;++c)e.push(f(c/this.STEPS,a,b-a));return e},this.scrollToLine=function(a,b,c,d){var e=this.$cursorLayer.getPixelPosition({row:a,column:0}),f=e.top;b&&(f-=this.$size.scrollerHeight/2);var g=this.scrollTop;this.session.setScrollTop(f),c!==!1&&this.animateScrolling(g,d)},this.animateScrolling=function(a,b){var c=this.scrollTop;if(this.$animatedScroll){var d=this;if(a!=c){if(this.$scrollAnimation){var e=this.$scrollAnimation.steps;if(e.length&&(a=e[0],a==c))return}var f=d.$calcSteps(a,c);this.$scrollAnimation={from:a,to:c,steps:f},clearInterval(this.$timer),d.session.setScrollTop(f.shift()),d.session.$scrollTop=c,this.$timer=setInterval(function(){f.length?(d.session.setScrollTop(f.shift()),d.session.$scrollTop=c):null!=c?(d.session.$scrollTop=-1,d.session.setScrollTop(c),c=null):(d.$timer=clearInterval(d.$timer),d.$scrollAnimation=null,b&&b())},10)}}},this.scrollToY=function(a){this.scrollTop!==a&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=a)},this.scrollToX=function(a){this.scrollLeft!==a&&(this.scrollLeft=a),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(a,b){this.session.setScrollTop(b),this.session.setScrollLeft(b)},this.scrollBy=function(a,b){b&&this.session.setScrollTop(this.session.getScrollTop()+b),a&&this.session.setScrollLeft(this.session.getScrollLeft()+a)},this.isScrollableBy=function(a,b){return 0>b&&this.session.getScrollTop()>=1-this.scrollMargin.top?!0:b>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight-(this.$size.scrollerHeight-this.lineHeight)*this.$scrollPastEnd<-1+this.scrollMargin.bottom?!0:0>a&&this.session.getScrollLeft()>=1-this.scrollMargin.left?!0:a>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right?!0:void 0},this.pixelToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=(a+this.scrollLeft-c.left-this.$padding)/this.characterWidth,e=Math.floor((b+this.scrollTop-c.top)/this.lineHeight),f=Math.round(d);return{row:e,column:f,side:d-f>0?1:-1}},this.screenToTextCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=Math.round((a+this.scrollLeft-c.left-this.$padding)/this.characterWidth),e=(b+this.scrollTop-c.top)/this.lineHeight;return this.session.screenToDocumentPosition(e,Math.max(d,0))},this.textToScreenCoordinates=function(a,b){var c=this.scroller.getBoundingClientRect(),d=this.session.documentToScreenPosition(a,b),e=this.$padding+Math.round(d.column*this.characterWidth),f=d.row*this.lineHeight;return{pageX:c.left+e-this.scrollLeft,pageY:c.top+f-this.scrollTop}},this.visualizeFocus=function(){e.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){e.removeCssClass(this.container,"ace_focus")},this.showComposition=function(a){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,e.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(a){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(e.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(a,b){function c(c){if(d.$themeId!=a)return b&&b();if(c.cssClass){e.importCssString(c.cssText,c.cssClass,d.container.ownerDocument),d.theme&&e.removeCssClass(d.container,d.theme.cssClass);var f="padding"in c?c.padding:"padding"in(d.theme||{})?4:d.$padding;d.$padding&&f!=d.$padding&&d.setPadding(f),d.$theme=c.cssClass,d.theme=c,e.addCssClass(d.container,c.cssClass),e.setCssClass(d.container,"ace_dark",c.isDark),d.$size&&(d.$size.width=0,d.$updateSizeAsync()),d._dispatchEvent("themeLoaded",{theme:c}),b&&b()}}var d=this;if(this.$themeId=a,d._dispatchEvent("themeChange",{theme:a}),a&&"string"!=typeof a)c(a);else{var g=a||this.$options.theme.initialValue;f.loadModule(["theme",g],c)}},this.getTheme=function(){return this.$themeId},this.setStyle=function(a,b){e.setCssClass(this.container,a,b!==!1)},this.unsetStyle=function(a){e.removeCssClass(this.container,a)},this.setCursorStyle=function(a){this.content.style.cursor!=a&&(this.content.style.cursor=a)},this.setMouseCursor=function(a){this.content.style.cursor=a},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(r.prototype),f.defineOptions(r.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(a){this.$textLayer.setShowInvisibles(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(a){"number"==typeof a&&(this.$printMarginColumn=a),this.$showPrintMargin=!!a,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(a){this.$gutter.style.display=a?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(a){e.setCssClass(this.$gutter,"ace_fade-fold-widgets",a)},initialValue:!1},showFoldWidgets:{set:function(a){this.$gutterLayer.setShowFoldWidgets(a)},initialValue:!0},showLineNumbers:{set:function(a){this.$gutterLayer.setShowLineNumbers(a),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(a){this.$textLayer.setDisplayIndentGuides(a)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(a){return this.$gutterLineHighlight?(this.$gutterLineHighlight.style.display=a?"":"none",void(this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight())):(this.$gutterLineHighlight=e.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight))},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(a){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(a){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(a){"number"==typeof a&&(a+="px"),this.container.style.fontSize=a,this.updateFontSize()},initialValue:12},fontFamily:{set:function(a){this.container.style.fontFamily=a,this.updateFontSize()}},maxLines:{set:function(a){this.updateFull()}},minLines:{set:function(a){this.updateFull()}},scrollPastEnd:{set:function(a){a=+a||0,this.$scrollPastEnd!=a&&(this.$scrollPastEnd=a,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(a){this.$gutterLayer.$fixedWidth=!!a,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(a){this.setTheme(a)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),b.VirtualRenderer=r}),define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/dom"),e=a("../lib/oop"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=function(a){this.element=d.createElement("div"),this.element.className="ace_layer ace_gutter-layer",a.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){e.implement(this,g),this.setSession=function(a){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=a,a.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(a,b)},this.removeGutterDecoration=function(a,b){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(a,b)},this.setAnnotations=function(a){this.$annotations=[];for(var b=0;bg&&(p=f.end.row+1,f=b.getNextFoldLine(p,f),g=f?f.start.row:1/0),p>e){for(;this.$cells.length>o+1;)n=this.$cells.pop(),this.element.removeChild(n.element);break}n=this.$cells[++o],n||(n={element:null,textNode:null,foldWidget:null},n.element=d.createElement("div"),n.textNode=document.createTextNode(""),n.element.appendChild(n.textNode),this.element.appendChild(n.element),this.$cells[o]=n);var q="ace_gutter-cell ";i[p]&&(q+=i[p]),j[p]&&(q+=j[p]),this.$annotations[p]&&(q+=this.$annotations[p].className),n.element.className!=q&&(n.element.className=q);var r=b.getRowLength(p)*a.lineHeight+"px";if(r!=n.element.style.height&&(n.element.style.height=r),h){var s=h[p];null==s&&(s=h[p]=b.getFoldWidget(p))}if(s){n.foldWidget||(n.foldWidget=d.createElement("span"),n.element.appendChild(n.foldWidget));var q="ace_fold-widget ace_"+s;q+="start"==s&&p==g&&pc.right-b.right?"foldWidgets":void 0}}).call(h.prototype),b.Gutter=h}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(a,b,c){var d=a("../range").Range,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_marker-layer",a.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setMarkers=function(a){this.markers=a},this.update=function(a){var a=a||this.config;if(a){this.config=a;var b=[];for(var c in this.markers){var d=this.markers[c];if(d.range){var f=d.range.clipRows(a.firstRow,a.lastRow);if(!f.isEmpty())if(f=f.toScreenRange(this.session),d.renderer){var g=this.$getTop(f.start.row,a),h=this.$padding+f.start.column*a.characterWidth;d.renderer(b,f,h,g,a)}else"fullLine"==d.type?this.drawFullLineMarker(b,f,d.clazz,a):"screenLine"==d.type?this.drawScreenLineMarker(b,f,d.clazz,a):f.isMultiLine()?"text"==d.type?this.drawTextMarker(b,f,d.clazz,a):this.drawMultiLineMarker(b,f,d.clazz,a):this.drawSingleLineMarker(b,f,d.clazz+" ace_start",a)}else d.update(b,this,this.session,a)}this.element=e.setInnerHtml(this.element,b.join(""))}},this.$getTop=function(a,b){return(a-b.firstRowScreen)*b.lineHeight},this.drawTextMarker=function(a,b,c,e,f){var g=b.start.row,h=new d(g,b.start.column,g,this.session.getScreenLastRowColumn(g));for(this.drawSingleLineMarker(a,h,c+" ace_start",e,1,f),g=b.end.row,h=new d(g,0,g,b.end.column),this.drawSingleLineMarker(a,h,c,e,0,f),g=b.start.row+1;g
      "),h=this.$getTop(b.end.row,d);var j=b.end.column*d.characterWidth;a.push("
      "),g=(b.end.row-b.start.row-1)*d.lineHeight,0>g||(h=this.$getTop(b.start.row+1,d),a.push("
      "))},this.drawSingleLineMarker=function(a,b,c,d,e,f){var g=d.lineHeight,h=(b.end.column+(e||0)-b.start.column)*d.characterWidth,i=this.$getTop(b.start.row,d),j=this.$padding+b.start.column*d.characterWidth;a.push("
      ")},this.drawFullLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;b.start.row!=b.end.row&&(g+=this.$getTop(b.end.row,d)-f),a.push("
      ")},this.drawScreenLineMarker=function(a,b,c,d,e){var f=this.$getTop(b.start.row,d),g=d.lineHeight;a.push("
      ")}}).call(f.prototype),b.Marker=f}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=(a("../lib/useragent"),a("../lib/event_emitter").EventEmitter),h=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_text-layer",a.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){d.implement(this,g),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var a="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;return this.EOL_CHAR!=a?(this.EOL_CHAR=a,!0):void 0},this.setPadding=function(a){this.$padding=a,this.element.style.padding="0 "+a+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(a){this.$fontMetrics=a,this.$fontMetrics.on("changeCharacterSize",function(a){this._signal("changeCharacterSize",a)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(a){this.session=a,this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(a){return this.showInvisibles==a?!1:(this.showInvisibles=a,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(a){return this.displayIndentGuides==a?!1:(this.displayIndentGuides=a,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var a=this.session.getTabSize();this.tabSize=a;for(var b=this.$tabStrings=[0],c=1;a+1>c;c++)this.showInvisibles?b.push(""+this.TAB_CHAR+f.stringRepeat(" ",c-1)+""):b.push(f.stringRepeat(" ",c));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var d="ace_indent-guide",e="",g="";if(this.showInvisibles){d+=" ace_invisible",e=" ace_invisible_space",g=" ace_invisible_tab";var h=f.stringRepeat(this.SPACE_CHAR,this.tabSize),i=this.TAB_CHAR+f.stringRepeat(" ",this.tabSize-1)}else var h=f.stringRepeat(" ",this.tabSize),i=h;this.$tabStrings[" "]=""+h+"",this.$tabStrings[" "]=""+i+""}},this.updateLines=function(a,b,c){(this.config.lastRow!=a.lastRow||this.config.firstRow!=a.firstRow)&&this.scrollLines(a),this.config=a;for(var d=Math.max(b,a.firstRow),f=Math.min(c,a.lastRow),g=this.element.childNodes,h=0,i=a.firstRow;d>i;i++){var j=this.session.getFoldLine(i);if(j){if(j.containsRow(d)){d=j.start.row;break}i=j.end.row}h++}for(var i=d,j=this.session.getNextFoldLine(i),k=j?j.start.row:1/0;;){if(i>k&&(i=j.end.row+1,j=this.session.getNextFoldLine(i,j),k=j?j.start.row:1/0),i>f)break;var l=g[h++];if(l){var m=[];this.$renderLine(m,i,!this.$useLineGroups(),i==k?j:!1),l.style.height=a.lineHeight*this.session.getRowLength(i)+"px",e.setInnerHtml(l,m.join(""))}i++}},this.scrollLines=function(a){var b=this.config;if(this.config=a,!b||b.lastRow0;d--)c.removeChild(c.firstChild);if(b.lastRow>a.lastRow)for(var d=this.session.getFoldedRowCount(a.lastRow+1,b.lastRow);d>0;d--)c.removeChild(c.lastChild);if(a.firstRowb.lastRow){var e=this.$renderLinesFragment(a,b.lastRow+1,a.lastRow);c.appendChild(e)}},this.$renderLinesFragment=function(a,b,c){for(var d=this.element.ownerDocument.createDocumentFragment(),f=b,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>c)break;var i=e.createElement("div"),j=[];if(this.$renderLine(j,f,!1,f==h?g:!1),i.innerHTML=j.join(""),this.$useLineGroups())i.className="ace_line_group",d.appendChild(i),i.style.height=a.lineHeight*this.session.getRowLength(f)+"px";else for(;i.firstChild;)d.appendChild(i.firstChild);f++}return d},this.update=function(a){this.config=a;for(var b=[],c=a.firstRow,d=a.lastRow,f=c,g=this.session.getNextFoldLine(f),h=g?g.start.row:1/0;;){if(f>h&&(f=g.end.row+1,g=this.session.getNextFoldLine(f,g),h=g?g.start.row:1/0),f>d)break;this.$useLineGroups()&&b.push("
      "),this.$renderLine(b,f,!1,f==h?g:!1),this.$useLineGroups()&&b.push("
      "),f++}this.element=e.setInnerHtml(this.element,b.join(""))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(a,b,c,d){var e=this,g=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,h=function(a,c,d,g,h){if(c)return e.showInvisibles?""+f.stringRepeat(e.SPACE_CHAR,a.length)+"":f.stringRepeat(" ",a.length);if("&"==a)return"&";if("<"==a)return"<";if(" "==a){var i=e.session.getScreenTabSize(b+g);return b+=i-1,e.$tabStrings[i]}if(" "==a){var j=e.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",k=e.showInvisibles?e.SPACE_CHAR:"";return b+=1,""+k+""}return d?""+e.SPACE_CHAR+"":(b+=1,""+a+"")},i=d.replace(g,h);if(this.$textToken[c.type])a.push(i);else{var j="ace_"+c.type.replace(/\./g," ace_"),k="";"fold"==c.type&&(k=" style='width:"+c.value.length*this.config.characterWidth+"px;' "),a.push("",i,"")}return b+d.length},this.renderIndentGuide=function(a,b,c){var d=b.search(this.$indentGuideRe);return 0>=d||d>=c?b:" "==b[0]?(d-=d%this.tabSize,a.push(f.stringRepeat(this.$tabStrings[" "],d/this.tabSize)),b.substr(d)):" "==b[0]?(a.push(f.stringRepeat(this.$tabStrings[" "],d)),b.substr(d)):b},this.$renderWrappedLine=function(a,b,c,d){for(var e=0,f=0,g=c[0],h=0,i=0;i=g;)h=this.$renderToken(a,h,j,k.substring(0,g-e)),k=k.substring(g-e),e=g,d||a.push("
      ","
      "),f++,h=0,g=c[f]||Number.MAX_VALUE;0!=k.length&&(e+=k.length,h=this.$renderToken(a,h,j,k))}}},this.$renderSimpleLine=function(a,b){var c=0,d=b[0],e=d.value;this.displayIndentGuides&&(e=this.renderIndentGuide(a,e)),e&&(c=this.$renderToken(a,c,d,e));for(var f=1;f"),e.length){var f=this.session.getRowSplitData(b);f&&f.length?this.$renderWrappedLine(a,e,f,c):this.$renderSimpleLine(a,e)}this.showInvisibles&&(d&&(b=d.end.row),a.push("",b==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"")),c||a.push("
      ")},this.$getFoldLineTokens=function(a,b){function c(a,b,c){for(var d=0,f=0;f+a[d].value.lengthc-b&&(g=g.substring(0,c-b)),e.push({type:a[d].type,value:g}),f=b+g.length,d+=1}for(;c>f&&dc?e.push({type:a[d].type,value:g.substring(0,c-f)}):e.push(a[d]),f+=g.length,d+=1}}var d=this.session,e=[],f=d.getTokens(a);return b.walk(function(a,b,g,h,i){null!=a?e.push({type:"fold",value:a}):(i&&(f=d.getTokens(b)),f.length&&c(f,h,g))},b.end.row,this.session.getLine(b.end.row).length),e},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(h.prototype),b.Text=h}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(a,b,c){var d,e=a("../lib/dom"),f=function(a){this.element=e.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),void 0===d&&(d="opacity"in this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),e.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateVisibility.bind(this)};(function(){this.$updateVisibility=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.visibility=a?"":"hidden"},this.$updateOpacity=function(a){for(var b=this.cursors,c=b.length;c--;)b[c].style.opacity=a?"":"0"},this.$padding=0,this.setPadding=function(a){this.$padding=a},this.setSession=function(a){this.session=a},this.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},this.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},this.setSmoothBlinking=function(a){a==this.smoothBlinking||d||(this.smoothBlinking=a,e.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.$updateCursors=(a?this.$updateOpacity:this.$updateVisibility).bind(this),this.restartTimer())},this.addCursor=function(){var a=e.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},this.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},this.hideCursor=function(){this.isVisible=!1,e.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,e.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&e.removeCssClass(this.element,"ace_smooth-blinking"),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){e.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var b=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),b()},this.blinkInterval),b()}},this.getPixelPosition=function(a,b){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var c=this.session.documentToScreenPosition(a),d=this.$padding+c.column*this.config.characterWidth,e=(c.row-(b?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:d,top:e}},this.update=function(a){this.config=a;var b=this.session.$selectionMarkers,c=0,d=0;(void 0===b||0===b.length)&&(b=[{cursor:null}]);for(var c=0,e=b.length;e>c;c++){var f=this.getPixelPosition(b[c].cursor,!0);if(!((f.top>a.height+a.offset||f.top<0)&&c>1)){var g=(this.cursors[d++]||this.addCursor()).style;g.left=f.left+"px",g.top=f.top+"px",g.width=a.characterWidth+"px",g.height=a.lineHeight+"px"}}for(;this.cursors.length>d;)this.removeCursor();var h=this.session.getOverwrite();this.$setOverwrite(h),this.$pixelPos=f,this.restartTimer()},this.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?e.addCssClass(this.element,"ace_overwrite-cursors"):e.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(f.prototype),b.Cursor=f}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(a,b,c){var d=a("./lib/oop"),e=a("./lib/dom"),f=a("./lib/event"),g=a("./lib/event_emitter").EventEmitter,h=function(a){this.element=e.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=e.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),a.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,f.addListener(this.element,"scroll",this.onScroll.bind(this)),f.addListener(this.element,"mousedown",f.preventDefault)};(function(){d.implement(this,g),this.setVisible=function(a){this.element.style.display=a?"":"none",this.isVisible=a}}).call(h.prototype);var i=function(a,b){h.call(this,a),this.scrollTop=0,b.$scrollbarWidth=this.width=e.scrollbarWidth(a.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};d.inherits(i,h),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(a){this.element.style.height=a+"px"},this.setInnerHeight=function(a){this.inner.style.height=a+"px"},this.setScrollHeight=function(a){this.inner.style.height=a+"px"},this.setScrollTop=function(a){this.scrollTop!=a&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=a)}}.call(i.prototype);var j=function(a,b){h.call(this,a),this.scrollLeft=0,this.height=b.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};d.inherits(j,h),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(a){this.element.style.width=a+"px"},this.setInnerWidth=function(a){this.inner.style.width=a+"px"},this.setScrollWidth=function(a){this.inner.style.width=a+"px"},this.setScrollLeft=function(a){this.scrollLeft!=a&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=a)}}.call(j.prototype),b.ScrollBar=i,b.ScrollBarV=i,b.ScrollBarH=j,b.VScrollBar=i,b.HScrollBar=j}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(a,b,c){var d=a("./lib/event"),e=function(a,b){this.onRender=a,this.pending=!1,this.changes=0,this.window=b||window};(function(){this.schedule=function(a){if(this.changes=this.changes|a,!this.pending&&this.changes){this.pending=!0;var b=this;d.nextFrame(function(){b.pending=!1;for(var a;a=b.changes;)b.changes=0,b.onRender(a)},this.window)}}}).call(e.prototype),b.RenderLoop=e}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event_emitter"],function(a,b,c){var d=a("../lib/oop"),e=a("../lib/dom"),f=a("../lib/lang"),g=a("../lib/event_emitter").EventEmitter,h=0,i=b.FontMetrics=function(a,b){this.el=e.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=e.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=e.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode), +a.appendChild(this.el),h||this.$testFractionalRect(),this.$measureNode.innerHTML=f.stringRepeat("X",h),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){d.implement(this,g),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var a=e.createElement("div");this.$setMeasureNodeStyles(a.style),a.style.width="0.2px",document.documentElement.appendChild(a);var b=a.getBoundingClientRect().width;h=b>0&&1>b?1:100,a.parentNode.removeChild(a)},this.$setMeasureNodeStyles=function(a,b){a.width=a.height="auto",a.left=a.top="-100px",a.visibility="hidden",a.position="fixed",a.whiteSpace="pre",a.font="inherit",a.overflow=b?"hidden":"visible"},this.checkForSizeChanges=function(){var a=this.$measureSizes();if(a&&(this.$characterSize.width!==a.width||this.$characterSize.height!==a.height)){this.$measureNode.style.fontWeight="bold";var b=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=a,this.charSizes=Object.create(null),this.allowBoldFonts=b&&b.width===a.width&&b.height===a.height,this._emit("changeCharacterSize",{data:a})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var a=this;return this.$pollSizeChangesTimer=setInterval(function(){a.checkForSizeChanges()},500)},this.setPolling=function(a){a?this.$pollSizeChanges():this.$pollSizeChangesTimer&&this.$pollSizeChangesTimer},this.$measureSizes=function(){if(1===h)var a=this.$measureNode.getBoundingClientRect(),b={height:a.height,width:a.width};else var b={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/h};return 0===b.width||0===b.height?null:b},this.$measureCharWidth=function(a){this.$main.innerHTML=f.stringRepeat(a,h);var b=this.$main.getBoundingClientRect();return b.width/h},this.getCharacterWidth=function(a){var b=this.charSizes[a];return void 0===b&&(this.charSizes[a]=this.$measureCharWidth(a)/this.$characterSize.width),b},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(i.prototype)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(a,b,c){function d(a,b,c){return p.$options.wrap=!0,p.$options.needle=b,p.$options.backwards=-1==c,p.find(a)}function e(a,b){return a.row==b.row&&a.column==b.column}function f(a){a.$multiselectOnSessionChange||(a.$onAddRange=a.$onAddRange.bind(a),a.$onRemoveRange=a.$onRemoveRange.bind(a),a.$onMultiSelect=a.$onMultiSelect.bind(a),a.$onSingleSelect=a.$onSingleSelect.bind(a),a.$multiselectOnSessionChange=b.onSessionChange.bind(a),a.$multiselectOnSessionChange(a),a.on("changeSession",a.$multiselectOnSessionChange),a.on("mousedown",k),a.commands.addCommands(n.defaultCommands),g(a))}function g(a){function b(b){d&&(a.renderer.setMouseCursor(""),d=!1)}var c=a.textInput.getElement(),d=!1;l.addListener(c,"keydown",function(c){18!=c.keyCode||c.ctrlKey||c.shiftKey||c.metaKey?d&&b():d||(a.renderer.setMouseCursor("crosshair"),d=!0)}),l.addListener(c,"keyup",b),l.addListener(c,"blur",b)}var h=a("./range_list").RangeList,i=a("./range").Range,j=a("./selection").Selection,k=a("./mouse/multi_select_handler").onMouseDown,l=a("./lib/event"),m=a("./lib/lang"),n=a("./commands/multi_select_commands");b.commands=n.defaultCommands.concat(n.multiSelectCommands);var o=a("./search").Search,p=new o,q=a("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(q.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(a,b){if(a){if(!this.inMultiSelectMode&&0==this.rangeCount){var c=this.toOrientedRange();if(this.rangeList.add(c),this.rangeList.add(a),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),b||this.fromOrientedRange(a);this.rangeList.removeAll(),this.rangeList.add(c),this.$onAddRange(c)}a.cursor||(a.cursor=a.end);var d=this.rangeList.add(a);return this.$onAddRange(a),d.length&&this.$onRemoveRange(d),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),b||this.fromOrientedRange(a)}},this.toSingleRange=function(a){a=a||this.ranges[0];var b=this.rangeList.removeAll();b.length&&this.$onRemoveRange(b),a&&this.fromOrientedRange(a)},this.substractPoint=function(a){var b=this.rangeList.substractPoint(a);return b?(this.$onRemoveRange(b),b[0]):void 0},this.mergeOverlappingRanges=function(){var a=this.rangeList.merge();a.length?this.$onRemoveRange(a):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(a){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(a),this._signal("addRange",{range:a})},this.$onRemoveRange=function(a){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var b=this.rangeList.ranges.pop();a.push(b),this.rangeCount=0}for(var c=a.length;c--;){var d=this.ranges.indexOf(a[c]);this.ranges.splice(d,1)}this._signal("removeRange",{ranges:a}),0==this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),b=b||this.ranges[0],b&&!b.isEqual(this.getRange())&&this.fromOrientedRange(b)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new h,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var c=this.getRange(),d=this.isBackwards(),e=c.start.row,f=c.end.row;if(e==f){if(d)var g=c.end,h=c.start;else var g=c.start,h=c.end;return this.addRange(i.fromPoints(h,h)),void this.addRange(i.fromPoints(g,g))}var j=[],k=this.getLineRange(e,!0);k.start.column=c.start.column,j.push(k);for(var l=e+1;f>l;l++)j.push(this.getLineRange(l,!0));k=this.getLineRange(f,!0),k.end.column=c.end.column,j.push(k),j.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var a=this.rangeList.ranges,b=a[a.length-1],c=i.fromPoints(a[0].start,b.end);this.toSingleRange(),this.setSelectionRange(c,b.cursor==b.start)}else{var d=this.session.documentToScreenPosition(this.selectionLead),e=this.session.documentToScreenPosition(this.selectionAnchor),f=this.rectangularRangeBlock(d,e);f.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(a,b,c){var d=[],f=a.columng&&(g=0),0>k&&(k=0),k==l&&(c=!0);for(var m=k;l>=m;m++){var n=i.fromPoints(this.session.screenToDocumentPosition(m,g),this.session.screenToDocumentPosition(m,h));if(n.isEmpty()){if(o&&e(n.end,o))break;var o=n.end}n.cursor=f?n.start:n.end,d.push(n)}if(j&&d.reverse(),!c){for(var p=d.length-1;d[p].isEmpty()&&p>0;)p--;if(p>0)for(var q=0;d[q].isEmpty();)q++;for(var r=p;r>=q;r--)d[r].isEmpty()&&d.splice(r,1)}return d}}.call(j.prototype);var r=a("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(a){a.cursor||(a.cursor=a.end);var b=this.getSelectionStyle();return a.marker=this.session.addMarker(a,"ace_selection",b),this.session.$selectionMarkers.push(a),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,a},this.removeSelectionMarker=function(a){if(a.marker){this.session.removeMarker(a.marker);var b=this.session.$selectionMarkers.indexOf(a);-1!=b&&this.session.$selectionMarkers.splice(b,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(a){for(var b=this.session.$selectionMarkers,c=a.length;c--;){var d=a[c];if(d.marker){this.session.removeMarker(d.marker);var e=b.indexOf(d);-1!=e&&b.splice(e,1)}}this.session.selectionMarkerCount=b.length},this.$onAddRange=function(a){this.addSelectionMarker(a.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(a){this.removeSelectionMarkers(a.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(a){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(n.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(a){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(n.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(a){var b=a.command,c=a.editor;if(c.multiSelect){if(b.multiSelectAction)"forEach"==b.multiSelectAction?d=c.forEachSelection(b,a.args):"forEachLine"==b.multiSelectAction?d=c.forEachSelection(b,a.args,!0):"single"==b.multiSelectAction?(c.exitMultiSelectMode(),d=b.exec(c,a.args||{})):d=b.multiSelectAction(c,a.args||{});else{var d=b.exec(c,a.args||{});c.multiSelect.addRange(c.multiSelect.toOrientedRange()),c.multiSelect.mergeOverlappingRanges()}return d}},this.forEachSelection=function(a,b,c){if(!this.inVirtualSelectionMode){var d,e=this.session,f=this.selection,g=f.rangeList,h=f._eventRegistry;f._eventRegistry={};var i=new j(e);this.inVirtualSelectionMode=!0;for(var k=g.ranges.length;k--;){if(c)for(;k>0&&g.ranges[k].start.row==g.ranges[k-1].end.row;)k--;i.fromOrientedRange(g.ranges[k]),i.id=g.ranges[k].marker,this.selection=e.selection=i;var l=a.exec(this,b||{});void 0!==d&&(d=l),i.toOrientedRange(g.ranges[k])}i.detach(),this.selection=e.selection=f,this.inVirtualSelectionMode=!1,f._eventRegistry=h,f.mergeOverlappingRanges();var m=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),m&&m.from==m.to&&this.renderer.animateScrolling(m.from),d}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var a="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var b=this.multiSelect.rangeList.ranges,c=[],d=0;dd.length||c.length<2||!c[1])return this.commands.exec("insertstring",this,a);for(var e=d.length;e--;){var f=d[e];f.isEmpty()||this.session.remove(f),this.session.insert(f.start,c[e])}}},this.findAll=function(a,b,c){b=b||{},b.needle=a||b.needle,this.$search.set(b);var d=this.$search.findAll(this.session);if(!d.length)return 0;this.$blockScrolling+=1;var e=this.multiSelect;c||e.toSingleRange(d[0]);for(var f=d.length;f--;)e.addRange(d[f],!0);return this.$blockScrolling-=1,d.length},this.selectMoreLines=function(a,b){var c=this.selection.toOrientedRange(),d=c.cursor==c.end,e=this.session.documentToScreenPosition(c.cursor);this.selection.$desiredColumn&&(e.column=this.selection.$desiredColumn);var f=this.session.screenToDocumentPosition(e.row+a,e.column);if(c.isEmpty())var g=f;else var h=this.session.documentToScreenPosition(d?c.end:c.start),g=this.session.screenToDocumentPosition(h.row+a,h.column);if(d){var j=i.fromPoints(f,g);j.cursor=j.start}else{var j=i.fromPoints(g,f);j.cursor=j.end}if(j.desiredColumn=e.column,this.selection.inMultiSelectMode){if(b)var k=c.cursor}else this.selection.addRange(c);this.selection.addRange(j),k&&this.selection.substractPoint(k)},this.transposeSelections=function(a){for(var b=this.session,c=b.multiSelect,d=c.ranges,e=d.length;e--;){var f=d[e];if(f.isEmpty()){var g=b.getWordRange(f.start.row,f.start.column);f.start.row=g.start.row,f.start.column=g.start.column,f.end.row=g.end.row,f.end.column=g.end.column}}c.mergeOverlappingRanges();for(var h=[],e=d.length;e--;){var f=d[e];h.unshift(b.getTextRange(f))}0>a?h.unshift(h.pop()):h.push(h.shift());for(var e=d.length;e--;){var f=d[e],g=f.clone();b.replace(f,h[e]),f.start.row=g.start.row,f.start.column=g.start.column}},this.selectMore=function(a,b){var c=this.session,e=c.multiSelect,f=e.toOrientedRange();f.isEmpty()&&(f=c.getWordRange(f.start.row,f.start.column),f.cursor=-1==a?f.start:f.end,this.multiSelect.addRange(f));var g=c.getTextRange(f),h=d(c,g,a);h&&(h.cursor=-1==a?h.start:h.end,this.$blockScrolling+=1,this.session.unfold(h),this.multiSelect.addRange(h),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),b&&this.multiSelect.substractPoint(f.cursor)},this.alignCursors=function(){var a=this.session,b=a.multiSelect,c=b.ranges;if(c.length){var d=-1,e=c.filter(function(a){return a.cursor.row==d?!0:void(d=a.cursor.row)});b.$onRemoveRange(e);var f=0,g=1/0,h=c.map(function(b){var c=b.cursor,d=a.getLine(c.row),e=d.substr(c.column).search(/\S/g);return-1==e&&(e=0),c.column>f&&(f=c.column),g>e&&(g=e),e});c.forEach(function(b,c){var d=b.cursor,e=f-d.column,j=h[c]-g;e>j?a.insert(d,m.stringRepeat(" ",e-j)):a.remove(new i(d.row,d.column,d.row,d.column-e+j)),b.start.column=b.end.column=f,b.start.row=b.end.row=d.row,b.cursor=b.end}),b.fromOrientedRange(c[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var j=this.selection.getRange(),k=j.start.row,l=j.end.row,n=k==l;if(n){var o,p=this.session.getLength();do o=this.session.getLine(l);while(/[=:]/.test(o)&&++l0);0>k&&(k=0),l>=p&&(l=p-1)}var q=this.session.doc.removeLines(k,l);q=this.$reAlignText(q,n),this.session.doc.insert({row:k,column:0},q.join("\n")+"\n"),n||(j.start.column=0,j.end.column=q[q.length-1].length),this.selection.setRange(j)}},this.$reAlignText=function(a,b){function c(a){return m.stringRepeat(" ",a)}function d(a){return a[2]?c(g)+a[2]+c(h-a[2].length+i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function e(a){return a[2]?c(g+h-a[2].length)+a[2]+c(i," ")+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}function f(a){return a[2]?c(g)+a[2]+c(i)+a[4].replace(/^([=:])\s+/,"$1 "):a[0]}var g,h,i,j=!0,k=!0;return a.map(function(a){var b=a.match(/(\s*)(.*?)(\s*)([=:].*)/);return b?null==g?(g=b[1].length,h=b[2].length,i=b[3].length,b):(g+h+i!=b[1].length+b[2].length+b[3].length&&(k=!1),g!=b[1].length&&(j=!1),g>b[1].length&&(g=b[1].length),hb[3].length&&(i=b[3].length),b):[a]}).map(b?d:j?k?e:d:f)}}).call(r.prototype),b.onSessionChange=function(a){var b=a.session;b.multiSelect||(b.$selectionMarkers=[],b.selection.$initRangeList(),b.multiSelect=b.selection),this.multiSelect=b.multiSelect;var c=a.oldSession;c&&(c.multiSelect.removeEventListener("addRange",this.$onAddRange),c.multiSelect.removeEventListener("removeRange",this.$onRemoveRange),c.multiSelect.removeEventListener("multiSelect",this.$onMultiSelect),c.multiSelect.removeEventListener("singleSelect",this.$onSingleSelect)),b.multiSelect.on("addRange",this.$onAddRange),b.multiSelect.on("removeRange",this.$onRemoveRange),b.multiSelect.on("multiSelect",this.$onMultiSelect),b.multiSelect.on("singleSelect",this.$onSingleSelect),this.inMultiSelectMode!=b.selection.inMultiSelectMode&&(b.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},b.MultiSelect=f,a("./config").defineOptions(r.prototype,"editor",{enableMultiselect:{set:function(a){f(this),a?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",k)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",k))},value:!0}})}),define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event"],function(a,b,c){function d(a,b){return a.row==b.row&&a.column==b.column}function e(a){var b=a.domEvent,c=b.altKey,e=b.shiftKey,g=a.getAccelKey(),h=a.getButton();if(a.editor.inMultiSelectMode&&2==h)return void a.editor.textInput.onContextMenu(a.domEvent);if(!g&&!c)return void(0===h&&a.editor.inMultiSelectMode&&a.editor.exitMultiSelectMode());var i=a.editor,j=i.selection,k=i.inMultiSelectMode,l=a.getDocumentPosition(),m=j.getCursor(),n=a.inSelection()||j.isEmpty()&&d(l,m),o=a.x,p=a.y,q=function(a){o=a.clientX,p=a.clientY},r=function(){var a=i.renderer.pixelToScreenCoordinates(o,p),b=s.screenToDocumentPosition(a.row,a.column);d(u,a)&&d(b,j.selectionLead)||(u=a,i.selection.moveToPosition(b),i.renderer.scrollCursorIntoView(),i.removeSelectionMarkers(v),v=j.rectangularRangeBlock(u,t),v.forEach(i.addSelectionMarker,i),i.updateSelectionMarkers())},s=i.session,t=i.renderer.pixelToScreenCoordinates(o,p),u=t;if(!g||c||e||0!==h){if(c&&0===h){a.stop(),k&&!g?j.toSingleRange():!k&&g&&j.addRange();var v=[];e?(t=s.documentToScreenPosition(j.lead),r()):j.moveToPosition(l);var w=function(a){clearInterval(y),i.removeSelectionMarkers(v);for(var b=0;b20&&a.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:a}))},this.$workerBlob=function(a){var b="importScripts('"+e.qualifyURL(a)+"');";try{return new Blob([b],{type:"application/javascript"})}catch(c){var d=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,f=new d;return f.append(b),f.getBlob("application/javascript")}}}).call(h.prototype);var i=function(a,b,c){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var d=null,e=!1,h=Object.create(f),i=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(a){i.messageBuffer.push(a),d&&(e?setTimeout(j):j())},this.setEmitSync=function(a){e=a};var j=function(){var a=i.messageBuffer.shift();a.command?d[a.command].apply(d,a.args):a.event&&h._signal(a.event,a.data)};h.postMessage=function(a){i.onMessage({data:a})},h.callback=function(a,b){this.postMessage({type:"call",id:b,data:a})},h.emit=function(a,b){this.postMessage({type:"event",name:a,data:b})},g.loadModule(["worker",b],function(a){for(d=new a[c](h);i.messageBuffer.length;)j()})};i.prototype=h.prototype,b.UIWorkerClient=i,b.WorkerClient=h}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(a,b,c){var d=a("./range").Range,e=a("./lib/event_emitter").EventEmitter,f=a("./lib/oop"),g=function(a,b,c,d,e,f){var g=this;this.length=b,this.session=a,this.doc=a.getDocument(),this.mainClass=e,this.othersClass=f,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=d,this.$onCursorChange=function(){setTimeout(function(){g.onCursorChange()})},this.$pos=c;var h=a.getUndoManager().$undoStack||a.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=h.length,this.setup(),a.selection.on("changeCursor",this.$onCursorChange)};(function(){f.implement(this,e),this.setup=function(){var a=this,b=this.doc,c=this.session,e=this.$pos;this.pos=b.createAnchor(e.row,e.column),this.markerId=c.addMarker(new d(e.row,e.column,e.row,e.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(b){c.removeMarker(a.markerId),a.markerId=c.addMarker(new d(b.value.row,b.value.column,b.value.row,b.value.column+a.length),a.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(c){var d=b.createAnchor(c.row,c.column);a.others.push(d)}),c.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var a=this.session,b=this;this.othersActive=!0,this.others.forEach(function(c){c.markerId=a.addMarker(new d(c.row,c.column,c.row,c.column+b.length),b.othersClass,null,!1),c.on("change",function(e){a.removeMarker(c.markerId),c.markerId=a.addMarker(new d(e.value.row,e.value.column,e.value.row,e.value.column+b.length),b.othersClass,null,!1)})})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var a=0;a=this.pos.column&&c.start.column<=this.pos.column+this.length+1){var f=c.start.column-this.pos.column;if(this.length+=e,!this.session.$fromUndo){if("insertText"===b.action)for(var g=this.others.length-1;g>=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=0;g--){var h=this.others[g],i={row:h.row,column:h.column+f};h.row===c.start.row&&c.start.column=this.pos.column&&b.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",a)):(this.hideOtherMarkers(),this._emit("cursorLeave",a))}},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var a=0;ac;c++)a.undo(!0)}}).call(g.prototype),b.PlaceHolder=g}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(a,b,c){var d=a("../../range").Range,e=b.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(a,b,c){var d=a.getLine(c);return this.foldingStartMarker.test(d)?"start":"markbeginend"==b&&this.foldingStopMarker&&this.foldingStopMarker.test(d)?"end":""},this.getFoldWidgetRange=function(a,b,c){return null},this.indentationBlock=function(a,b,c){var e=/\S/,f=a.getLine(b),g=f.search(e);if(-1!=g){for(var h=c||f.length,i=a.getLength(),j=b,k=b;++b=l)break;k=b}}if(k>j){var m=a.getLine(k).length;return new d(j,h,k,m)}}},this.openingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e+1},h=a.$findClosingBracket(b,g,f);if(h){var i=a.foldWidgets[h.row];return null==i&&(i=a.getFoldWidget(h.row)),"start"==i&&h.row>g.row&&(h.row--,h.column=a.getLine(h.row).length),d.fromPoints(g,h)}},this.closingBracketBlock=function(a,b,c,e,f){var g={row:c,column:e},h=a.$findOpeningBracket(b,g);return h?(h.column++,g.column--,d.fromPoints(h,g)):void 0}}).call(e.prototype)}),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(a,b,c){function d(a,b,c){for(var d=0,e=a.length-1;e>=d;){var f=d+e>>1,g=c(b,a[f]);if(g>0)d=f+1;else{if(!(0>g))return f;e=f-1}}return-(d+1)}function e(a,b,c){var e=a.getAnnotations().sort(h.comparePoints);if(e.length){var f=d(e,{row:b,column:-1},h.comparePoints);0>f&&(f=-f-1),f>=e.length-1?f=c>0?0:e.length-1:0===f&&0>c&&(f=e.length-1);var g=e[f];if(g&&c){if(g.row===b){do g=e[f+=c];while(g&&g.row===b);if(!g)return e.slice()}var i=[];b=g.row; +do i[0>c?"unshift":"push"](g),g=e[f+=c];while(g&&g.row==b);return i.length&&i}}}var f=a("ace/line_widgets").LineWidgets,g=a("ace/lib/dom"),h=a("ace/range").Range;b.showErrorMarker=function(a,b){var c=a.session;c.widgetManager||(c.widgetManager=new f(c),c.widgetManager.attach(a));var d=a.getCursorPosition(),h=d.row,i=c.lineWidgets&&c.lineWidgets[h];i?i.destroy():h-=b;var j,k=e(c,h,b);if(k){var l=k[0];d.column=(l.pos&&"number"!=typeof l.column?l.pos.sc:l.column)||0,d.row=l.row,j=a.renderer.$gutterLayer.$annotations[d.row]}else{if(i)return;j={text:["Looks good!"],className:"ace_ok"}}a.session.unfold(d.row),a.selection.moveToPosition(d);var m={row:d.row,fixedWidth:!0,coverGutter:!0,el:g.createElement("div")},n=m.el.appendChild(g.createElement("div")),o=m.el.appendChild(g.createElement("div"));o.className="error_widget_arrow "+j.className;var p=a.renderer.$cursorLayer.getPixelPosition(d).left;o.style.left=p+a.renderer.gutterWidth-5+"px",m.el.className="error_widget_wrapper",n.className="error_widget "+j.className,n.innerHTML=j.text.join("
      "),n.appendChild(g.createElement("div"));var q=function(a,b,c){return 0!==b||"esc"!==c&&"return"!==c?void 0:(m.destroy(),{command:"null"})};m.destroy=function(){a.$mouseHandler.isMousePressed||(a.keyBinding.removeKeyboardHandler(q),c.widgetManager.removeLineWidget(m),a.off("changeSelection",m.destroy),a.off("changeSession",m.destroy),a.off("mouseup",m.destroy),a.off("change",m.destroy))},a.keyBinding.addKeyboardHandler(q),a.on("changeSelection",m.destroy),a.on("changeSession",m.destroy),a.on("mouseup",m.destroy),a.on("change",m.destroy),a.session.widgetManager.addLineWidget(m),m.el.onmousedown=a.focus.bind(a),a.renderer.scrollCursorIntoView(null,.5,{bottom:m.el.offsetHeight})},g.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(a,b,c){function d(a){this.session=a,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.detach=this.detach.bind(this),this.session.on("change",this.updateOnChange)}var e=(a("./lib/oop"),a("./lib/dom"));a("./range").Range;(function(){this.getRowLength=function(a){var b;return b=this.lineWidgets?this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0:0,this.$useWrapMode&&this.$wrapData[a]?this.$wrapData[a].length+1+b:1+b},this.$getWidgetScreenLength=function(){var a=0;return this.lineWidgets.forEach(function(b){b&&b.rowCount&&(a+=b.rowCount)}),a},this.attach=function(a){a.widgetManager&&a.widgetManager!=this&&a.widgetManager.detach(),this.editor!=a&&(this.detach(),this.editor=a,this.editor.on("changeSession",this.detach),a.widgetManager=this,a.setOption("enableLineWidgets",!0),a.renderer.on("beforeRender",this.measureWidgets),a.renderer.on("afterRender",this.renderWidgets))},this.detach=function(a){if(!a||a.session!=this.session){var b=this.editor;if(b){b.off("changeSession",this.detach),this.editor=null,b.widgetManager=null,b.renderer.off("beforeRender",this.measureWidgets),b.renderer.off("afterRender",this.renderWidgets);var c=this.session.lineWidgets;c&&c.forEach(function(a){a&&a.el&&a.el.parentNode&&(a._inDocument=!1,a.el.parentNode.removeChild(a.el))})}}},this.updateOnChange=function(a){var b=this.session.lineWidgets;if(b){var c=a.data,d=c.range,e=d.start.row,f=d.end.row-e;if(0===f);else if("removeText"==c.action||"removeLines"==c.action){var g=b.splice(e+1,f);g.forEach(function(a){a&&this.removeLineWidget(a)},this),this.$updateRows()}else{var h=new Array(f);h.unshift(e,0),b.splice.apply(b,h),this.$updateRows()}}},this.$updateRows=function(){var a=this.session.lineWidgets;if(a){var b=!0;a.forEach(function(a,c){a&&(b=!1,a.row=c)}),b&&(this.session.lineWidgets=null)}},this.addLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[a.row]=a;var b=this.editor.renderer;return a.html&&!a.el&&(a.el=e.createElement("div"),a.el.innerHTML=a.html),a.el&&(e.addCssClass(a.el,"ace_lineWidgetContainer"),a.el.style.position="absolute",a.el.style.zIndex=5,b.container.appendChild(a.el),a._inDocument=!0),a.coverGutter||(a.el.style.zIndex=3),a.pixelHeight||(a.pixelHeight=a.el.offsetHeight),null==a.rowCount&&(a.rowCount=a.pixelHeight/b.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,b),a},this.removeLineWidget=function(a){if(a._inDocument=!1,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch(b){}this.session.lineWidgets&&(this.session.lineWidgets[a.row]=void 0),this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},this.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(a,b){var c=this.session._changedWidgets,d=b.layerConfig;if(c&&c.length){for(var e=1/0,f=0;fh&&(h=0)),g.rowCount!=h&&(g.rowCount=h,g.row0&&!d[e];)e--;this.firstRow=c.firstRow,this.lastRow=c.lastRow,b.$cursorLayer.config=c;for(var g=e;f>=g;g++){var h=d[g];if(h&&h.el){h._inDocument||(h._inDocument=!0,b.container.appendChild(h.el));var i=b.$cursorLayer.getPixelPosition({row:g,column:0},!0).top;h.coverLine||(i+=c.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=i-c.offset+"px";var j=h.coverGutter?0:b.gutterWidth;h.fixedWidth||(j-=b.scrollLeft),h.el.style.left=j+"px",h.fixedWidth?h.el.style.right=b.scrollBar.getWidth()+"px":h.el.style.right=""}}}}}).call(d.prototype),b.LineWidgets=d}),function(){window.require(["ace/ace"],function(a){a&&a.config.init(),window.ace||(window.ace={});for(var b in a)a.hasOwnProperty(b)&&(ace[b]=a[b])})}(),define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tm",b.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm .ace_scroller {background-color: #FFFFFF;}.ace-tm .ace_cursor {border-left: 2px solid black;}.ace-tm .ace_overwrite-cursors .ace_cursor {border-left: 0px;border-bottom: 1px solid black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_markup.ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_markup.ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./json_highlight_rules").JsonHighlightRules,h=a("./matching_brace_outdent").MatchingBraceOutdent,i=a("./behaviour/cstyle").CstyleBehaviour,j=a("./folding/cstyle").FoldMode,k=a("../worker/worker_client").WorkerClient,l=function(){this.$tokenizer=new f((new g).getRules()),this.$outdent=new h,this.$behaviour=new i,this.foldingRules=new j};d.inherits(l,e),function(){this.getNextLineIndent=function(a,b,c){var d=this.$getIndent(b);if("start"==a){var e=b.match(/^.*[\{\(\[]\s*$/);e&&(d+=c)}return d},this.checkOutdent=function(a,b,c){return this.$outdent.checkOutdent(b,c)},this.autoOutdent=function(a,b,c){this.$outdent.autoOutdent(b,c)},this.createWorker=function(a){var b=new k(["ace"],"ace/mode/json_worker","JsonWorker");return b.attachToDocument(a.getDocument()),b.on("error",function(b){a.setAnnotations([b.data])}),b.on("ok",function(){a.clearAnnotations()}),b}}.call(l.prototype),b.Mode=l}),define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};d.inherits(f,e),b.JsonHighlightRules=f}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(a,b,c){var d=a("../range").Range,e=function(){};(function(){this.checkOutdent=function(a,b){return/^\s+$/.test(a)?/^\s*\}/.test(b):!1},this.autoOutdent=function(a,b){var c=a.getLine(b),e=c.match(/^(\s*\})/);if(!e)return 0;var f=e[1].length,g=a.findMatchingBracket({row:b,column:f});if(!g||g.row==b)return 0;var h=this.$getIndent(a.getLine(g.row));a.replace(new d(b,0,b,f-1),h)},this.$getIndent=function(a){var b=a.match(/^(\s+)/);return b?b[1]:""}}).call(e.prototype),b.MatchingBraceOutdent=e}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(a,b,c){var d=a("../../lib/oop"),e=a("../behaviour").Behaviour,f=a("../../token_iterator").TokenIterator,g=a("../../lib/lang"),h=["text","paren.rparen","punctuation.operator"],i=["text","paren.rparen","punctuation.operator","comment"],j=0,k=-1,l="",m=0,n=-1,o="",p="",q=function(){q.isSaneInsertion=function(a,b){var c=a.getCursorPosition(),d=new f(b,c.row,c.column);if(!this.$matchTokenType(d.getCurrentToken()||"text",h)){var e=new f(b,c.row,c.column+1);if(!this.$matchTokenType(e.getCurrentToken()||"text",h))return!1}return d.stepForward(),d.getCurrentTokenRow()!==c.row||this.$matchTokenType(d.getCurrentToken()||"text",i)},q.$matchTokenType=function(a,b){return b.indexOf(a.type||a)>-1},q.recordAutoInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isAutoInsertedClosing(d,e,l[0])||(j=0),k=d.row,l=c+e.substr(d.column),j++},q.recordMaybeInsert=function(a,b,c){var d=a.getCursorPosition(),e=b.doc.getLine(d.row);this.isMaybeInsertedClosing(d,e)||(m=0),n=d.row,o=e.substr(0,d.column)+c,p=e.substr(d.column),m++},q.isAutoInsertedClosing=function(a,b,c){return j>0&&a.row===k&&c===l[0]&&b.substr(a.column)===l},q.isMaybeInsertedClosing=function(a,b){return m>0&&a.row===n&&b.substr(a.column)===p&&b.substr(0,a.column)==o},q.popAutoInsertedClosing=function(){l=l.substr(1),j--},q.clearMaybeInsertedClosing=function(){m=0,n=-1},this.add("braces","insertion",function(a,b,c,d,e){var f=c.getCursorPosition(),h=d.doc.getLine(f.row);if("{"==e){var i=c.getSelectionRange(),j=d.doc.getTextRange(i);if(""!==j&&"{"!==j&&c.getWrapBehavioursEnabled())return{text:"{"+j+"}",selection:!1};if(q.isSaneInsertion(c,d))return/[\]\}\)]/.test(h[f.column])?(q.recordAutoInsert(c,d,"}"),{text:"{}",selection:[1,1]}):(q.recordMaybeInsert(c,d,"{"),{text:"{",selection:[1,1]})}else if("}"==e){var k=h.substring(f.column,f.column+1);if("}"==k){var l=d.$findOpeningBracket("}",{column:f.column+1,row:f.row});if(null!==l&&q.isAutoInsertedClosing(f,h,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if("\n"==e||"\r\n"==e){var n="";q.isMaybeInsertedClosing(f,h)&&(n=g.stringRepeat("}",m),q.clearMaybeInsertedClosing());var k=h.substring(f.column,f.column+1);if("}"==k||""!==n){var o=d.findMatchingBracket({row:f.row,column:f.column},"}");if(!o)return null;var p=this.getNextLineIndent(a,h.substring(0,f.column),d.getTabString()),r=this.$getIndent(h);return{text:"\n"+p+"\n"+r+n,selection:[1,p.length,1,p.length]}}}}),this.add("braces","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"{"==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.end.column,e.end.column+1);if("}"==h)return e.end.column++,e;m--}}),this.add("parens","insertion",function(a,b,c,d,e){if("("==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"("+g+")",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,")"),{text:"()",selection:[1,1]}}else if(")"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if(")"==j){var k=d.$findOpeningBracket(")",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"("==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(")"==h)return e.end.column++,e}}),this.add("brackets","insertion",function(a,b,c,d,e){if("["==e){var f=c.getSelectionRange(),g=d.doc.getTextRange(f);if(""!==g&&c.getWrapBehavioursEnabled())return{text:"["+g+"]",selection:!1};if(q.isSaneInsertion(c,d))return q.recordAutoInsert(c,d,"]"),{text:"[]",selection:[1,1]}}else if("]"==e){var h=c.getCursorPosition(),i=d.doc.getLine(h.row),j=i.substring(h.column,h.column+1);if("]"==j){var k=d.$findOpeningBracket("]",{column:h.column+1,row:h.row});if(null!==k&&q.isAutoInsertedClosing(h,i,e))return q.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&"["==f){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if("]"==h)return e.end.column++,e}}),this.add("string_dquotes","insertion",function(a,b,c,d,e){if('"'==e||"'"==e){var f=e,g=c.getSelectionRange(),h=d.doc.getTextRange(g);if(""!==h&&"'"!==h&&'"'!=h&&c.getWrapBehavioursEnabled())return{text:f+h+f,selection:!1};var i=c.getCursorPosition(),j=d.doc.getLine(i.row),k=j.substring(i.column-1,i.column);if("\\"==k)return null;for(var l,m=d.getTokens(g.start.row),n=0,o=-1,p=0;po&&(o=l.value.indexOf(f)),!(l.value.length+n>g.start.column));p++)n+=m[p].value.length;if(!l||0>o&&"comment"!==l.type&&("string"!==l.type||g.start.column!==l.value.length+n-1&&l.value.lastIndexOf(f)===l.value.length-1)){if(!q.isSaneInsertion(c,d))return;return{text:f+f,selection:[1,1]}}if(l&&"string"===l.type){var r=j.substring(i.column,i.column+1);if(r==f)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(a,b,c,d,e){var f=d.doc.getTextRange(e);if(!e.isMultiLine()&&('"'==f||"'"==f)){var g=d.doc.getLine(e.start.row),h=g.substring(e.start.column+1,e.start.column+2);if(h==f)return e.end.column++,e}})};d.inherits(q,e),b.CstyleBehaviour=q}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(a,b,c){var d=a("../../lib/oop"),e=(a("../../range").Range,a("./fold_mode").FoldMode),f=b.FoldMode=function(){};d.inherits(f,e),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(a,b,c){var d=a.getLine(c),e=d.match(this.foldingStartMarker);if(e){var f=e.index;return e[1]?this.openingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f+e[0].length,1)}if("markbeginend"===b){var e=d.match(this.foldingStopMarker);if(e){var f=e.index+e[0].length;return e[1]?this.closingBracketBlock(a,e[1],c,f):a.getCommentFoldRange(c,f,-1)}}}}.call(f.prototype)}),define("ace/mode/aql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/aql_highlight_rules","ace/range"],function(a,b,c){var d=a("../lib/oop"),e=a("./text").Mode,f=a("../tokenizer").Tokenizer,g=a("./aql_highlight_rules").AqlHighlightRules,h=a("../range").Range,i=function(){this.$tokenizer=new f((new g).getRules())};d.inherits(i,e),function(){this.toggleCommentLines=function(a,b,c,d){for(var e=!0,f=/^(\s*)\/\//,g=c;d>=g;g++)if(!f.test(b.getLine(g))){e=!1;break}if(e)for(var i=new h(0,0,0,0),g=c;d>=g;g++){var j=b.getLine(g),k=j.match(f);i.start.row=g,i.end.row=g,i.end.column=k[0].length,b.replace(i,k[1])}else b.indentRows(c,d,"//")}}.call(i.prototype),b.Mode=i}),define("ace/mode/aql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(a,b,c){var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=function(){var a="for|return|filter|sort|limit|let|collect|asc|desc|if|in|into|insert|update|remove|replace|options|with|and|or|not|distinct",b="(to_bool|to_number|to_string|to_list|is_null|is_bool|is_number|is_string|is_list|is_document|concat|concat_separator|char_length|lower|upper|substring|left|right|trim|reverse|contains|like|floor|ceil|round|abs|rand|sqrt|length|min|max|average|sum|median|variance_population|variance_sample|first|last|unique|matches|merge|merge_recursive|has|attributes|values|unset|keep|near|within|within_rectangle|is_in_polygon|fulltext|paths|traversal|traversal_tree|edges|stddev_sample|stddev_population|slice|nth|position|translate|zip|call|apply|push|append|pop|shift|unshift|remove_value|remove_values|remove_nth|graph_paths|shortest_path|graph_shortest_path|graph_distance_to|graph_traversal|graph_traversal_tree|graph_edges|graph_vertices|neighbors|graph_neighbors|graph_common_neighbors|graph_common_properties|graph_eccentricity|graph_betweenness|graph_closeness|graph_absolute_eccentricity|graph_absolute_betweenness|graph_absolute_closeness|graph_diameter|graph_radius|date_now|date_timestamp|date_iso8601|date_dayofweek|date_year|date_month|date_day|date_hour|date_minute|date_second|date_millisecond|fail|passthru|sleep|not_null|first_list|first_document|parse_identifier|current_user|current_database|collections|document|union|union_distinct|intersection|flatten|ltrim|rtrim|find_first|find_last|split|substitute|assemble|md5|sha1|random_token|AQL_LAST_ENTRY)",c=this.createKeywordMapper({"support.function":b,keyword:a,"constant.language":"null","constant.language.boolean":"true|false"},"identifier",!0);this.$rules={start:[{token:"comment",regex:/\/\/.*$/},{token:"comment",regex:/\/\*/,next:"comment_ml"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"string",regex:"`.*?`"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:c,regex:"[a-zA-Z_][a-zA-Z0-9_]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|@>|<@|&&|\\||!|<|>|<=|=>|==|!=|="},{token:"paren.lparen",regex:"[\\(\\{]"},{token:"paren.rparen",regex:"[\\)\\}]"},{token:"text",regex:"\\s+"}],comment_ml:[{token:"comment",regex:/\*\//,next:"start"},{defaultToken:"comment"}]}};d.inherits(f,e),b.AqlHighlightRules=f}),EdgeShaper.shapes=Object.freeze({NONE:0,ARROW:1}),NodeShaper.shapes=Object.freeze({NONE:0,CIRCLE:1,RECT:2,IMAGE:3});var modalDialogHelper=modalDialogHelper||{};!function(){"use strict";var a,b=function(a){$(document).bind("keypress.key13",function(b){b.which&&13===b.which&&$(a).click()})},c=function(){$(document).unbind("keypress.key13")},d=function(a,b,c,d,e){var f,g,h=function(){e(f)},i=modalDialogHelper.modalDivTemplate(a,b,c,h),j=document.createElement("tr"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("th"),n=document.createElement("button"),o=1;f=function(){var a={};return _.each($("#"+c+"table tr:not(#first_row)"),function(b){var c=$(".keyCell input",b).val(),d=$(".valueCell input",b).val();a[c]=d}),a},i.appendChild(j),j.id="first_row",j.appendChild(k),k.className="keyCell",j.appendChild(l),l.className="valueCell",j.appendChild(m),m.className="actionCell",m.appendChild(n),n.id=c+"new",n.className="graphViewer-icon-button gv-icon-small add",g=function(a,b){var d,e,f,g=/^_(id|rev|key|from|to)/,h=document.createElement("tr"),j=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th");g.test(b)||(i.appendChild(h),h.appendChild(k),k.className="keyCell",e=document.createElement("input"),e.type="text",e.id=c+b+"_key",e.value=b,k.appendChild(e),h.appendChild(l),l.className="valueCell",f=document.createElement("input"),f.type="text",f.id=c+b+"_value","object"==typeof a?f.value=JSON.stringify(a):f.value=a,l.appendChild(f),h.appendChild(j),j.className="actionCell",d=document.createElement("button"),d.id=c+b+"_delete",d.className="graphViewer-icon-button gv-icon-small delete",j.appendChild(d),d.onclick=function(){i.removeChild(h)})},n.onclick=function(){g("","new_"+o),o++},_.each(d,g),$("#"+c+"modal").modal("show")},e=function(a,b,c,d,e){var f=modalDialogHelper.modalDivTemplate(a,b,c,e),g=document.createElement("tr"),h=document.createElement("th"),i=document.createElement("pre");f.appendChild(g),g.appendChild(h),h.appendChild(i),i.className="gv-object-view",i.innerHTML=JSON.stringify(d,null,2),$("#"+c+"modal").modal("show")},f=function(a,b){var c=document.createElement("input");return c.type="text",c.id=a,c.value=b,c},g=function(a,b){var c=document.createElement("input");return c.type="checkbox",c.id=a,c.checked=b,c},h=function(a,b,c){var d=document.createElement("select");return d.id=a,_.each(_.sortBy(b,function(a){return a.toLowerCase()}),function(a){var b=document.createElement("option");b.value=a,b.selected=a===c,b.appendChild(document.createTextNode(a)),d.appendChild(b)}),d},i=function(a){var b=$(".decission_"+a),c=$("input[type='radio'][name='"+a+"']:checked").attr("id");b.each(function(){$(this).attr("decider")===c?$(this).css("display",""):$(this).css("display","none")})},j=function(b,c,d,e,f,g,h,j){var k=document.createElement("input"),l=b+c,m=document.createElement("label"),n=document.createElement("tbody");k.id=l,k.type="radio",k.name=d,k.className="gv-radio-button",m.className="radio",h.appendChild(m),m.appendChild(k),m.appendChild(document.createTextNode(e)),j.appendChild(n),$(n).toggleClass("decission_"+d,!0),$(n).attr("decider",l),_.each(g,function(c){a(n,b,c)}),f?k.checked=!0:k.checked=!1,m.onclick=function(a){i(d),a.stopPropagation()},i(d)},k=function(a,b,c,d,e,f){var g,h=[],i=a+b,j=1,k=document.createElement("th"),l=document.createElement("button"),m=document.createElement("input"),n=function(a){j++;var c,d=document.createElement("tr"),g=document.createElement("th"),k=document.createElement("th"),l=document.createElement("th"),m=document.createElement("input"),n=document.createElement("button");m.type="text",m.id=i+"_"+j,m.value=a||"",c=0===h.length?$(f):$(h[h.length-1]),c.after(d),d.appendChild(g),g.className="collectionTh capitalize",g.appendChild(document.createTextNode(b+" "+j+":")),d.appendChild(k),k.className="collectionTh",k.appendChild(m),n.id=i+"_"+j+"_remove",n.className="graphViewer-icon-button gv-icon-small delete",n.onclick=function(){e.removeChild(d),h.splice(h.indexOf(d),1)},l.appendChild(n),d.appendChild(l),h.push(d)};for(m.type="text",m.id=i+"_1",d.appendChild(m),k.appendChild(l),f.appendChild(k),l.onclick=function(){n()},l.id=i+"_addLine",l.className="graphViewer-icon-button gv-icon-small add","string"==typeof c&&c.length>0&&(c=[c]),c.length>0&&(m.value=c[0]),g=1;ga?"0"+a:a};return a.getUTCFullYear()+"-"+b(a.getUTCMonth()+1)+"-"+b(a.getUTCDate())+" "+b(a.getUTCHours())+":"+b(a.getUTCMinutes())+":"+b(a.getUTCSeconds())},escapeHtml:function(a){return String(a).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}}}(),function(){"use strict";if(!window.hasOwnProperty("TEST_BUILD")){var a=function(){var a={};return a.createTemplate=function(a){var b=$("#"+a.replace(".","\\.")).html();return{render:function(a){return _.template(b,a)}}},a};window.templateEngine=new a}}(),Module.prototype.moduleCache={},Module.prototype.moduleCache["/internal"]=new Module("/internal"),"undefined"==typeof global&&"undefined"!=typeof window&&(global=window),global.module=Module.prototype.moduleCache["/"]=new Module("/"),Module.prototype.normalise=function(a){var b,c,d,e,f;if(""===a)return this.id;for(d=a.split("/"),"."===d[0]||".."===d[0]?(e=this.id.split("/"),e.pop(),e=e.concat(d)):e=d,c=[],b=0;b "+a.browserOutputBuffer,"jssuccess"),a.browserOutputBuffer=""},$(document).ajaxSend(function(b,c,d){d.url=a.arango.databasePrefix(d.url)})}(),function(){"use strict";window.dygraphConfig={defaultFrame:12e5,zeropad:function(a){return 10>a?"0"+a:a},xAxisFormat:function(a){if(-1===a)return"";var b=new Date(a);return this.zeropad(b.getHours())+":"+this.zeropad(b.getMinutes())+":"+this.zeropad(b.getSeconds())},mergeObjects:function(a,b,c){c||(c=[]);var d,e={};return c.forEach(function(c){var d=a[c],f=b[c];void 0===d&&(d={}),void 0===f&&(f={}),e[c]=_.extend(d,f)}),d=_.extend(a,b),Object.keys(e).forEach(function(a){d[a]=e[a]}),d},mapStatToFigure:{residentSize:["times","residentSizePercent"],pageFaults:["times","majorPageFaultsPerSecond","minorPageFaultsPerSecond"],systemUserTime:["times","systemTimePerSecond","userTimePerSecond"],totalTime:["times","avgQueueTime","avgRequestTime","avgIoTime"],dataTransfer:["times","bytesSentPerSecond","bytesReceivedPerSecond"],requests:["times","getsPerSecond","putsPerSecond","postsPerSecond","deletesPerSecond","patchesPerSecond","headsPerSecond","optionsPerSecond","othersPerSecond"]},colors:["#617e2b","#296e9c","#81ccd8","#7ca530","#3c3c3c","#aa90bd","#e1811d","#c7d4b2","#d0b2d4"],figureDependedOptions:{clusterRequestsPerSecond:{showLabelsOnHighlight:!0,title:"",header:"Cluster Requests per Second",stackedGraph:!0,div:"lineGraphLegend",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},residentSize:{header:"Resident Size",axes:{y:{labelsKMG2:!1,axisLabelFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"},valueFormatter:function(a){return parseFloat(100*a.toPrecision(3))+"%"}}}},pageFaults:{header:"Page Faults",visibility:[!0,!1],labels:["datetime","Major Page","Minor Page"],div:"pageFaultsChart",labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},systemUserTime:{div:"systemUserTimeChart",header:"System and User Time",labels:["datetime","System Time","User Time"],stackedGraph:!0,labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}},totalTime:{div:"totalTimeChart",header:"Total Time",labels:["datetime","Queue","Computation","I/O"],labelsKMG2:!1,axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}},stackedGraph:!0},dataTransfer:{header:"Data Transfer",labels:["datetime","Bytes sent","Bytes received"],stackedGraph:!0,div:"dataTransferChart"},requests:{header:"Requests",labels:["datetime","GET","PUT","POST","DELETE","PATCH","HEAD","OPTIONS","OTHER"],stackedGraph:!0,div:"requestsChart",axes:{y:{valueFormatter:function(a){return parseFloat(a.toPrecision(3))},axisLabelFormatter:function(a){return 0===a?0:parseFloat(a.toPrecision(3))}}}}},getDashBoardFigures:function(a){var b=[],c=this;return Object.keys(this.figureDependedOptions).forEach(function(d){"clusterRequestsPerSecond"!==d&&(c.figureDependedOptions[d].div||a)&&b.push(d)}),b},getDefaultConfig:function(a){var b=this,c={digitsAfterDecimal:1,drawGapPoints:!0,fillGraph:!0,showLabelsOnHighlight:!1,strokeWidth:1,lineWidth:1,strokeBorderWidth:1,includeZero:!0,highlightCircleSize:2.5,labelsSeparateLines:!0,strokeBorderColor:"#ffffff",interactionModel:{},maxNumberWidth:10,colors:[this.colors[0]],xAxisLabelWidth:"50",rightGap:15,showRangeSelector:!1,rangeSelectorHeight:50,rangeSelectorPlotStrokeColor:"#365300",rangeSelectorPlotFillColor:"",pixelsPerLabel:50,labelsKMG2:!0,dateWindow:[(new Date).getTime()-this.defaultFrame,(new Date).getTime()],axes:{x:{valueFormatter:function(a){return b.xAxisFormat(a)}},y:{ticker:Dygraph.numericLinearTicks}}};return this.figureDependedOptions[a]&&(c=this.mergeObjects(c,this.figureDependedOptions[a],["axes"]),c.div&&c.labels&&(c.colors=this.getColors(c.labels),c.labelsDiv=document.getElementById(c.div+"Legend"),c.legend="always",c.showLabelsOnHighlight=!0)),c},getDetailChartConfig:function(a){var b=_.extend(this.getDefaultConfig(a),{showRangeSelector:!0,interactionModel:null,showLabelsOnHighlight:!0,highlightCircleSize:2.5,legend:"always",labelsDiv:"div#detailLegend.dashboard-legend-inner"});return"pageFaults"===a&&(b.visibility=[!0,!0]),b.labels||(b.labels=["datetime",b.header],b.colors=this.getColors(b.labels)),b},getColors:function(a){var b;return b=this.colors.concat([]),b.slice(0,a.length-1)}}}(),module.define("underscore",function(a,b){(function(){function c(a){function b(b,c,d,e,f,g){for(;f>=0&&g>f;f+=a){var h=e?e[f]:f;d=c(d,b[h],h,b)}return d}return function(c,d,e,f){d=v(d,f,4);var g=!C(c)&&u.keys(c),h=(g||c).length,i=a>0?0:h-1;return arguments.length<3&&(e=c[g?g[i]:i],i+=a),b(c,d,e,g,i,h)}}function d(a){return function(b,c,d){c=w(c,d);for(var e=B(b),f=a>0?0:e-1;f>=0&&e>f;f+=a)if(c(b[f],f,b))return f;return-1}}function e(a,b,c){return function(d,e,f){var g=0,h=B(d);if("number"==typeof f)a>0?g=f>=0?f:Math.max(f+h,g):h=f>=0?Math.min(f+1,h):f+h+1;else if(c&&f&&h)return f=c(d,e),d[f]===e?f:-1;if(e!==e)return f=b(m.call(d,g,h),u.isNaN),f>=0?f+g:-1;for(f=a>0?g:h-1;f>=0&&h>f;f+=a)if(d[f]===e)return f;return-1}}function f(a,b){var c=H.length,d=a.constructor,e=u.isFunction(d)&&d.prototype||j,f="constructor";for(u.has(a,f)&&!u.contains(b,f)&&b.push(f);c--;)f=H[c],f in a&&a[f]!==e[f]&&!u.contains(b,f)&&b.push(f)}var g=this,h=g._,i=Array.prototype,j=Object.prototype,k=Function.prototype,l=i.push,m=i.slice,n=j.toString,o=j.hasOwnProperty,p=Array.isArray,q=Object.keys,r=k.bind,s=Object.create,t=function(){},u=function(a){return a instanceof u?a:this instanceof u?void(this._wrapped=a):new u(a)};"undefined"!=typeof a?("undefined"!=typeof b&&b.exports&&(a=b.exports=u),a._=u):g._=u,u.VERSION="1.8.3";var v=function(a,b,c){if(void 0===b)return a;switch(null==c?3:c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)};case 4:return function(c,d,e,f){return a.call(b,c,d,e,f)}}return function(){return a.apply(b,arguments)}},w=function(a,b,c){return null==a?u.identity:u.isFunction(a)?v(a,b,c):u.isObject(a)?u.matcher(a):u.property(a)};u.iteratee=function(a,b){return w(a,b,1/0)};var x=function(a,b){return function(c){var d=arguments.length;if(2>d||null==c)return c;for(var e=1;d>e;e++)for(var f=arguments[e],g=a(f),h=g.length,i=0;h>i;i++){var j=g[i];b&&void 0!==c[j]||(c[j]=f[j])}return c}},y=function(a){if(!u.isObject(a))return{};if(s)return s(a);t.prototype=a;var b=new t;return t.prototype=null,b},z=function(a){return function(b){return null==b?void 0:b[a]}},A=Math.pow(2,53)-1,B=z("length"),C=function(a){var b=B(a);return"number"==typeof b&&b>=0&&A>=b};u.each=u.forEach=function(a,b,c){b=v(b,c);var d,e;if(C(a))for(d=0,e=a.length;e>d;d++)b(a[d],d,a);else{var f=u.keys(a);for(d=0,e=f.length;e>d;d++)b(a[f[d]],f[d],a)}return a},u.map=u.collect=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=Array(e),g=0;e>g;g++){var h=d?d[g]:g;f[g]=b(a[h],h,a)}return f},u.reduce=u.foldl=u.inject=c(1),u.reduceRight=u.foldr=c(-1),u.find=u.detect=function(a,b,c){var d;return d=C(a)?u.findIndex(a,b,c):u.findKey(a,b,c),void 0!==d&&-1!==d?a[d]:void 0},u.filter=u.select=function(a,b,c){var d=[];return b=w(b,c),u.each(a,function(a,c,e){b(a,c,e)&&d.push(a)}),d},u.reject=function(a,b,c){return u.filter(a,u.negate(w(b)),c)},u.every=u.all=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(!b(a[g],g,a))return!1}return!0},u.some=u.any=function(a,b,c){b=w(b,c);for(var d=!C(a)&&u.keys(a),e=(d||a).length,f=0;e>f;f++){var g=d?d[f]:f;if(b(a[g],g,a))return!0}return!1},u.contains=u.includes=u.include=function(a,b,c,d){return C(a)||(a=u.values(a)),("number"!=typeof c||d)&&(c=0),u.indexOf(a,b,c)>=0},u.invoke=function(a,b){var c=m.call(arguments,2),d=u.isFunction(b);return u.map(a,function(a){var e=d?b:a[b];return null==e?e:e.apply(a,c)})},u.pluck=function(a,b){return u.map(a,u.property(b))},u.where=function(a,b){return u.filter(a,u.matcher(b))},u.findWhere=function(a,b){return u.find(a,u.matcher(b))},u.max=function(a,b,c){var d,e,f=-(1/0),g=-(1/0);if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],d>f&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(e>g||e===-(1/0)&&f===-(1/0))&&(f=a,g=e)});return f},u.min=function(a,b,c){var d,e,f=1/0,g=1/0;if(null==b&&null!=a){a=C(a)?a:u.values(a);for(var h=0,i=a.length;i>h;h++)d=a[h],f>d&&(f=d)}else b=w(b,c),u.each(a,function(a,c,d){e=b(a,c,d),(g>e||e===1/0&&f===1/0)&&(f=a,g=e)});return f},u.shuffle=function(a){for(var b,c=C(a)?a:u.values(a),d=c.length,e=Array(d),f=0;d>f;f++)b=u.random(0,f),b!==f&&(e[f]=e[b]),e[b]=c[f];return e},u.sample=function(a,b,c){return null==b||c?(C(a)||(a=u.values(a)),a[u.random(a.length-1)]):u.shuffle(a).slice(0,Math.max(0,b))},u.sortBy=function(a,b,c){return b=w(b,c),u.pluck(u.map(a,function(a,c,d){return{value:a,index:c,criteria:b(a,c,d)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;if(c!==d){if(c>d||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.index-b.index}),"value")};var D=function(a){return function(b,c,d){var e={};return c=w(c,d),u.each(b,function(d,f){var g=c(d,f,b);a(e,d,g)}),e}};u.groupBy=D(function(a,b,c){u.has(a,c)?a[c].push(b):a[c]=[b]}),u.indexBy=D(function(a,b,c){a[c]=b}),u.countBy=D(function(a,b,c){u.has(a,c)?a[c]++:a[c]=1}),u.toArray=function(a){return a?u.isArray(a)?m.call(a):C(a)?u.map(a,u.identity):u.values(a):[]},u.size=function(a){return null==a?0:C(a)?a.length:u.keys(a).length},u.partition=function(a,b,c){b=w(b,c);var d=[],e=[];return u.each(a,function(a,c,f){(b(a,c,f)?d:e).push(a)}),[d,e]},u.first=u.head=u.take=function(a,b,c){return null==a?void 0:null==b||c?a[0]:u.initial(a,a.length-b)},u.initial=function(a,b,c){return m.call(a,0,Math.max(0,a.length-(null==b||c?1:b)))},u.last=function(a,b,c){return null==a?void 0:null==b||c?a[a.length-1]:u.rest(a,Math.max(0,a.length-b))},u.rest=u.tail=u.drop=function(a,b,c){return m.call(a,null==b||c?1:b)},u.compact=function(a){return u.filter(a,u.identity)};var E=function(a,b,c,d){for(var e=[],f=0,g=d||0,h=B(a);h>g;g++){var i=a[g];if(C(i)&&(u.isArray(i)||u.isArguments(i))){b||(i=E(i,b,c));var j=0,k=i.length;for(e.length+=k;k>j;)e[f++]=i[j++]}else c||(e[f++]=i)}return e};u.flatten=function(a,b){return E(a,b,!1)},u.without=function(a){return u.difference(a,m.call(arguments,1))},u.uniq=u.unique=function(a,b,c,d){u.isBoolean(b)||(d=c,c=b,b=!1),null!=c&&(c=w(c,d));for(var e=[],f=[],g=0,h=B(a);h>g;g++){var i=a[g],j=c?c(i,g,a):i;b?(g&&f===j||e.push(i),f=j):c?u.contains(f,j)||(f.push(j),e.push(i)):u.contains(e,i)||e.push(i)}return e},u.union=function(){return u.uniq(E(arguments,!0,!0))},u.intersection=function(a){for(var b=[],c=arguments.length,d=0,e=B(a);e>d;d++){var f=a[d];if(!u.contains(b,f)){for(var g=1;c>g&&u.contains(arguments[g],f);g++);g===c&&b.push(f)}}return b},u.difference=function(a){var b=E(arguments,!0,!0,1);return u.filter(a,function(a){return!u.contains(b,a)})},u.zip=function(){return u.unzip(arguments)},u.unzip=function(a){for(var b=a&&u.max(a,B).length||0,c=Array(b),d=0;b>d;d++)c[d]=u.pluck(a,d);return c},u.object=function(a,b){for(var c={},d=0,e=B(a);e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},u.findIndex=d(1),u.findLastIndex=d(-1),u.sortedIndex=function(a,b,c,d){c=w(c,d,1);for(var e=c(b),f=0,g=B(a);g>f;){var h=Math.floor((f+g)/2);c(a[h])f;f++,a+=c)e[f]=a;return e};var F=function(a,b,c,d,e){if(!(d instanceof b))return a.apply(c,e);var f=y(a.prototype),g=a.apply(f,e);return u.isObject(g)?g:f};u.bind=function(a,b){if(r&&a.bind===r)return r.apply(a,m.call(arguments,1));if(!u.isFunction(a))throw new TypeError("Bind must be called on a function");var c=m.call(arguments,2),d=function(){return F(a,d,b,this,c.concat(m.call(arguments)))};return d},u.partial=function(a){var b=m.call(arguments,1),c=function(){for(var d=0,e=b.length,f=Array(e),g=0;e>g;g++)f[g]=b[g]===u?arguments[d++]:b[g];for(;d=d)throw new Error("bindAll must be passed function names");for(b=1;d>b;b++)c=arguments[b],a[c]=u.bind(a[c],a);return a},u.memoize=function(a,b){var c=function(d){var e=c.cache,f=""+(b?b.apply(this,arguments):d);return u.has(e,f)||(e[f]=a.apply(this,arguments)),e[f]};return c.cache={},c},u.delay=function(a,b){var c=m.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},u.defer=u.partial(u.delay,u,1),u.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:u.now(),g=null,f=a.apply(d,e),g||(d=e=null)};return function(){var j=u.now();h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k||k>b?(g&&(clearTimeout(g),g=null),h=j,f=a.apply(d,e),g||(d=e=null)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},u.debounce=function(a,b,c){var d,e,f,g,h,i=function(){var j=u.now()-g;b>j&&j>=0?d=setTimeout(i,b-j):(d=null,c||(h=a.apply(f,e),d||(f=e=null)))};return function(){f=this,e=arguments,g=u.now();var j=c&&!d;return d||(d=setTimeout(i,b)),j&&(h=a.apply(f,e),f=e=null),h}},u.wrap=function(a,b){return u.partial(b,a)},u.negate=function(a){return function(){return!a.apply(this,arguments)}},u.compose=function(){var a=arguments,b=a.length-1;return function(){for(var c=b,d=a[b].apply(this,arguments);c--;)d=a[c].call(this,d);return d}},u.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},u.before=function(a,b){var c;return function(){return--a>0&&(c=b.apply(this,arguments)),1>=a&&(b=null),c}},u.once=u.partial(u.before,2);var G=!{toString:null}.propertyIsEnumerable("toString"),H=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];u.keys=function(a){if(!u.isObject(a))return[];if(q)return q(a);var b=[];for(var c in a)u.has(a,c)&&b.push(c);return G&&f(a,b),b},u.allKeys=function(a){if(!u.isObject(a))return[];var b=[];for(var c in a)b.push(c);return G&&f(a,b),b},u.values=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=a[b[e]];return d},u.mapObject=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=e.length,g={},h=0;f>h;h++)d=e[h],g[d]=b(a[d],d,a);return g},u.pairs=function(a){for(var b=u.keys(a),c=b.length,d=Array(c),e=0;c>e;e++)d[e]=[b[e],a[b[e]]];return d},u.invert=function(a){for(var b={},c=u.keys(a),d=0,e=c.length;e>d;d++)b[a[c[d]]]=c[d];return b},u.functions=u.methods=function(a){var b=[];for(var c in a)u.isFunction(a[c])&&b.push(c);return b.sort()},u.extend=x(u.allKeys),u.extendOwn=u.assign=x(u.keys),u.findKey=function(a,b,c){b=w(b,c);for(var d,e=u.keys(a),f=0,g=e.length;g>f;f++)if(d=e[f],b(a[d],d,a))return d},u.pick=function(a,b,c){var d,e,f={},g=a;if(null==g)return f;u.isFunction(b)?(e=u.allKeys(g),d=v(b,c)):(e=E(arguments,!1,!1,1),d=function(a,b,c){return b in c},g=Object(g));for(var h=0,i=e.length;i>h;h++){var j=e[h],k=g[j];d(k,j,g)&&(f[j]=k)}return f},u.omit=function(a,b,c){if(u.isFunction(b))b=u.negate(b);else{var d=u.map(E(arguments,!1,!1,1),String);b=function(a,b){return!u.contains(d,b)}}return u.pick(a,b,c)},u.defaults=x(u.allKeys,!0),u.create=function(a,b){var c=y(a);return b&&u.extendOwn(c,b),c},u.clone=function(a){return u.isObject(a)?u.isArray(a)?a.slice():u.extend({},a):a},u.tap=function(a,b){return b(a),a},u.isMatch=function(a,b){var c=u.keys(b),d=c.length;if(null==a)return!d;for(var e=Object(a),f=0;d>f;f++){var g=c[f];if(b[g]!==e[g]||!(g in e))return!1}return!0};var I=function(a,b,c,d){if(a===b)return 0!==a||1/a===1/b;if(null==a||null==b)return a===b;a instanceof u&&(a=a._wrapped),b instanceof u&&(b=b._wrapped);var e=n.call(a);if(e!==n.call(b))return!1;switch(e){case"[object RegExp]":case"[object String]":return""+a==""+b;case"[object Number]":return+a!==+a?+b!==+b:0===+a?1/+a===1/b:+a===+b;case"[object Date]":case"[object Boolean]":return+a===+b}var f="[object Array]"===e;if(!f){if("object"!=typeof a||"object"!=typeof b)return!1;var g=a.constructor,h=b.constructor;if(g!==h&&!(u.isFunction(g)&&g instanceof g&&u.isFunction(h)&&h instanceof h)&&"constructor"in a&&"constructor"in b)return!1}c=c||[],d=d||[];for(var i=c.length;i--;)if(c[i]===a)return d[i]===b;if(c.push(a),d.push(b),f){if(i=a.length,i!==b.length)return!1;for(;i--;)if(!I(a[i],b[i],c,d))return!1}else{var j,k=u.keys(a);if(i=k.length,u.keys(b).length!==i)return!1;for(;i--;)if(j=k[i],!u.has(b,j)||!I(a[j],b[j],c,d))return!1}return c.pop(),d.pop(),!0};u.isEqual=function(a,b){return I(a,b)},u.isEmpty=function(a){return null==a?!0:C(a)&&(u.isArray(a)||u.isString(a)||u.isArguments(a))?0===a.length:0===u.keys(a).length},u.isElement=function(a){return!(!a||1!==a.nodeType)},u.isArray=p||function(a){return"[object Array]"===n.call(a)},u.isObject=function(a){var b=typeof a;return"function"===b||"object"===b&&!!a},u.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(a){u["is"+a]=function(b){return n.call(b)==="[object "+a+"]"}}),u.isArguments(arguments)||(u.isArguments=function(a){return u.has(a,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(u.isFunction=function(a){return"function"==typeof a||!1}),u.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},u.isNaN=function(a){return u.isNumber(a)&&a!==+a},u.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"===n.call(a)},u.isNull=function(a){return null===a},u.isUndefined=function(a){return void 0===a},u.has=function(a,b){return null!=a&&o.call(a,b)},u.noConflict=function(){return g._=h,this},u.identity=function(a){return a},u.constant=function(a){return function(){return a}},u.noop=function(){},u.property=z,u.propertyOf=function(a){return null==a?function(){}:function(b){return a[b]}},u.matcher=u.matches=function(a){return a=u.extendOwn({},a),function(b){return u.isMatch(b,a)}},u.times=function(a,b,c){var d=Array(Math.max(0,a));b=v(b,c,1);for(var e=0;a>e;e++)d[e]=b(e);return d},u.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))},u.now=Date.now||function(){return(new Date).getTime()};var J={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},K=u.invert(J),L=function(a){var b=function(b){return a[b]},c="(?:"+u.keys(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}};u.escape=L(J),u.unescape=L(K),u.result=function(a,b,c){var d=null==a?void 0:a[b];return void 0===d&&(d=c),u.isFunction(d)?d.call(a):d};var M=0;u.uniqueId=function(a){var b=++M+"";return a?a+b:b},u.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var N=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},P=/\\|'|\r|\n|\u2028|\u2029/g,Q=function(a){return"\\"+O[a]};u.template=function(a,b,c){!b&&c&&(b=c),b=u.defaults({},b,u.templateSettings);var d=RegExp([(b.escape||N).source,(b.interpolate||N).source,(b.evaluate||N).source].join("|")+"|$","g"),e=0,f="__p+='";a.replace(d,function(b,c,d,g,h){return f+=a.slice(e,h).replace(P,Q),e=h+b.length,c?f+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'":d?f+="'+\n((__t=("+d+"))==null?'':__t)+\n'":g&&(f+="';\n"+g+"\n__p+='"),b}),f+="';\n",b.variable||(f="with(obj||{}){\n"+f+"}\n"),f="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+f+"return __p;\n";try{var g=new Function(b.variable||"obj","_",f)}catch(h){throw h.source=f,h}var i=function(a){return g.call(this,a,u)},j=b.variable||"obj";return i.source="function("+j+"){\n"+f+"}",i},u.chain=function(a){var b=u(a);return b._chain=!0,b};var R=function(a,b){return a._chain?u(b).chain():b};u.mixin=function(a){u.each(u.functions(a),function(b){var c=u[b]=a[b];u.prototype[b]=function(){var a=[this._wrapped];return l.apply(a,arguments),R(this,c.apply(u,a))}})},u.mixin(u),u.each(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=i[a];u.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!==a&&"splice"!==a||0!==c.length||delete c[0],R(this,c)}}),u.each(["concat","join","slice"],function(a){var b=i[a];u.prototype[a]=function(){return R(this,b.apply(this._wrapped,arguments))}}),u.prototype.value=function(){return this._wrapped},u.prototype.valueOf=u.prototype.toJSON=u.prototype.value,u.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return u})}).call(this)}),module.define("org/arangodb/aql/explainer",function(a,b){function c(a){"use strict";["COLOR_RESET","COLOR_CYAN","COLOR_BLUE","COLOR_GREEN","COLOR_MAGENTA","COLOR_YELLOW","COLOR_RED","COLOR_WHITE","COLOR_BOLD_CYAN","COLOR_BOLD_BLUE","COLOR_BOLD_GREEN","COLOR_BOLD_MAGENTA","COLOR_BOLD_YELLOW","COLOR_BOLD_RED","COLOR_BOLD_WHITE"].forEach(function(b){A[b]=a?y[b]:""})}function d(a){"use strict";return"`"+a+"`"}function e(a){"use strict";return A.COLOR_CYAN+a+A.COLOR_RESET}function f(a){"use strict";return A.COLOR_BLUE+a+A.COLOR_RESET}function g(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function h(a){"use strict";return"#"===a[0]?A.COLOR_MAGENTA+a+A.COLOR_RESET:A.COLOR_YELLOW+a+A.COLOR_RESET}function i(a){"use strict";return A.COLOR_GREEN+a+A.COLOR_RESET}function j(a){"use strict";return A.COLOR_RED+a+A.COLOR_RESET}function k(a){"use strict";return"`"+A.COLOR_YELLOW+a+A.COLOR_RESET+"`"}function l(a){"use strict";return A.COLOR_MAGENTA+a+A.COLOR_RESET}function m(a){"use strict";return A.COLOR_BOLD_BLUE+a+A.COLOR_RESET}function n(a){"use strict";return 0>a&&(a=0),new Array(a).join(" ")}function o(a,b){"use strict";var c=".{1,"+b+"}(\\s|$)|\\S+?(\\s|$)";return a.match(new RegExp(c,"g")).join("\n")}function p(a){"use strict";B.appendLine(m("Query string:")),B.appendLine(" "+g(o(a,100).replace(/\n+/g,"\n ",a))),B.appendLine()}function q(a){"use strict";if(void 0!==a){B.appendLine(m("Write query options:"));var b=Object.keys(a),c="Option".length;b.forEach(function(a){a.length>c&&(c=a.length)}),B.appendLine(" "+l("Option")+n(1+c-"Option".length)+" "+l("Value")),b.forEach(function(b){B.appendLine(" "+e(b)+n(1+c-b.length)+" "+g(JSON.stringify(a[b])))}),B.appendLine()}}function r(a){"use strict";if(B.appendLine(m("Optimization rules applied:")),0===a.length)B.appendLine(" "+g("none"));else{var b=String("Id").length;B.appendLine(" "+n(1+b-String("Id").length)+l("Id")+" "+l("RuleName"));for(var c=0;cb&&(b=e),e=a.type.length,e>o&&(o=e),e=a.fields.map(d).join(", ").length,e>q&&(q=e),e=a.collection.length,e>c&&(c=e)});var r=" "+n(1+b-String("Id").length)+l("Id")+" "+l("Type")+n(1+o-"Type".length)+" "+l("Collection")+n(1+c-"Collection".length)+" "+l("Unique")+n(1+f-"Unique".length)+" "+l("Sparse")+n(1+i-"Sparse".length)+" "+l("Selectivity Est.")+" "+l("Fields")+n(1+q-"Fields".length)+" "+l("Ranges");B.appendLine(r);for(var s=0;sv&&(v=String(a.id).length),String(a.type).length>u&&(u=String(a.type).length),String(a.estimatedNrItems).length>w&&(w=String(a.estimatedNrItems).length)})};y(x.nodes,0);var z,A={},C={},D={},E=[],F=!0,G=function(a){return/^[0-9_]/.test(a.name)?h("#"+a.name):(C.hasOwnProperty(a.id)&&(D[a.name]=C[a.id]),h(a.name))},H=function(a){switch(F=F&&-1!==["value","object","object element","array"].indexOf(a.type),a.type){case"reference":if(A.hasOwnProperty(a.name)){var b=A[a.name];if(delete A[a.name],Array.isArray(b)){var c=H(b[1])+"["+new Array(b[0]+1).join("*");return"no-op"!==b[2].type&&(c+=" "+e("FILTER")+" "+H(b[2])),"no-op"!==b[3].type&&(c+=" "+e("LIMIT ")+" "+H(b[3])),"no-op"!==b[4].type&&(c+=" "+e("RETURN ")+" "+H(b[4])),c+="]"}return H(b)+"[*]"}return G(a);case"collection":return j(a.name)+" "+f("/* all collection documents */");case"value":return g(JSON.stringify(a.value));case"object":return a.hasOwnProperty("subNodes")?"{ "+a.subNodes.map(H).join(", ")+" }":"{ }";case"object element":return g(JSON.stringify(a.name))+" : "+H(a.subNodes[0]);case"calculated object element":return"[ "+H(a.subNodes[0])+" ] : "+H(a.subNodes[1]);case"array":return a.hasOwnProperty("subNodes")?"[ "+a.subNodes.map(H).join(", ")+" ]":"[ ]";case"unary not":return"! "+H(a.subNodes[0]);case"unary plus":return"+ "+H(a.subNodes[0]);case"unary minus":return"- "+H(a.subNodes[0]);case"array limit":return H(a.subNodes[0])+", "+H(a.subNodes[1]);case"attribute access":return H(a.subNodes[0])+"."+k(a.name);case"indexed access":return H(a.subNodes[0])+"["+H(a.subNodes[1])+"]";case"range":return H(a.subNodes[0])+" .. "+H(a.subNodes[1])+" "+f("/* range */");case"expand":case"expansion":return a.subNodes.length>2?A[a.subNodes[0].subNodes[0].name]=[a.levels,a.subNodes[0].subNodes[1],a.subNodes[2],a.subNodes[3],a.subNodes[4]]:A[a.subNodes[0].subNodes[0].name]=a.subNodes[0].subNodes[1],H(a.subNodes[1]);case"verticalizer":return H(a.subNodes[0]);case"user function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+") "+f("/* user-defined function */");case"function call":return i(a.name)+"("+(a.subNodes&&a.subNodes[0].subNodes||[]).map(H).join(", ")+")";case"plus":return H(a.subNodes[0])+" + "+H(a.subNodes[1]);case"minus":return H(a.subNodes[0])+" - "+H(a.subNodes[1]);case"times":return H(a.subNodes[0])+" * "+H(a.subNodes[1]);case"division":return H(a.subNodes[0])+" / "+H(a.subNodes[1]);case"modulus":return H(a.subNodes[0])+" % "+H(a.subNodes[1]);case"compare not in":return H(a.subNodes[0])+" not in "+H(a.subNodes[1]);case"compare in":return H(a.subNodes[0])+" in "+H(a.subNodes[1]);case"compare ==":return H(a.subNodes[0])+" == "+H(a.subNodes[1]);case"compare !=":return H(a.subNodes[0])+" != "+H(a.subNodes[1]);case"compare >":return H(a.subNodes[0])+" > "+H(a.subNodes[1]);case"compare >=":return H(a.subNodes[0])+" >= "+H(a.subNodes[1]);case"compare <":return H(a.subNodes[0])+" < "+H(a.subNodes[1]);case"compare <=":return H(a.subNodes[0])+" <= "+H(a.subNodes[1]);case"logical or":return H(a.subNodes[0])+" || "+H(a.subNodes[1]);case"logical and":return H(a.subNodes[0])+" && "+H(a.subNodes[1]);case"ternary":return H(a.subNodes[0])+" ? "+H(a.subNodes[1])+" : "+H(a.subNodes[2]);default:return"unhandled node type ("+a.type+")"}},I=function(a,b,c){var d=c.isConstant?g(JSON.stringify(c.bound)):H(c.bound);return k(a)+" "+b[c.include?1:0]+" "+d},J=function(a){var b=[];return a.forEach(function(a){var c=a.attr;a.lowConst.hasOwnProperty("bound")&&a.highConst.hasOwnProperty("bound")&&JSON.stringify(a.lowConst.bound)===JSON.stringify(a.highConst.bound)&&(a.equality=!0),a.equality?a.lowConst.hasOwnProperty("bound")?b.push(I(c,["==","=="],a.lowConst)):a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,["==","=="],a))}):(a.lowConst.hasOwnProperty("bound")&&b.push(I(c,[">",">="],a.lowConst)),a.highConst.hasOwnProperty("bound")&&b.push(I(c,["<","<="],a.highConst)),a.hasOwnProperty("lows")&&a.lows.forEach(function(a){b.push(I(c,[">",">="],a))}),a.hasOwnProperty("highs")&&a.highs.forEach(function(a){b.push(I(c,["<","<="],a))}))}),b.length>1?"("+b.join(" && ")+")":b[0]},K=function(a){switch(a.type){case"SingletonNode":return e("ROOT");case"NoResultsNode":return e("EMPTY")+" "+f("/* empty result set */");case"EnumerateCollectionNode":return C[a.outVariable.id]=a.collection,e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* full collection scan"+(a.random?", random order":"")+" */");case"EnumerateListNode":return e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+G(a.inVariable)+" "+f("/* list iteration */");case"IndexRangeNode":C[a.outVariable.id]=a.collection;var b=a.index;return b.ranges=a.ranges.map(J).join(" || "),b.collection=a.collection,b.node=a.id,E.push(b),e("FOR")+" "+G(a.outVariable)+" "+e("IN")+" "+j(a.collection)+" "+f("/* "+(a.reverse?"reverse ":"")+a.index.type+" index scan */");case"CalculationNode":return e("LET")+" "+G(a.outVariable)+" = "+H(a.expression)+" "+f("/* "+a.expressionType+" expression */");case"FilterNode":return e("FILTER")+" "+G(a.inVariable);case"AggregateNode":return e("COLLECT")+" "+a.aggregates.map(function(a){return G(a.outVariable)+" = "+G(a.inVariable)}).join(", ")+(a.count?" "+e("WITH COUNT"):"")+(a.outVariable?" "+e("INTO")+" "+G(a.outVariable):"")+(a.keepVariables?" "+e("KEEP")+" "+a.keepVariables.map(function(a){return G(a)}).join(", "):"")+" "+f("/* "+a.aggregationOptions.method+"*/");case"SortNode":return e("SORT")+" "+a.elements.map(function(a){return G(a.inVariable)+" "+e(a.ascending?"ASC":"DESC")}).join(", ");case"LimitNode":return e("LIMIT")+" "+g(JSON.stringify(a.offset))+", "+g(JSON.stringify(a.limit));case"ReturnNode":return e("RETURN")+" "+G(a.inVariable);case"SubqueryNode":return e("LET")+" "+G(a.outVariable)+" = ... "+f("/* subquery */");case"InsertNode":return z=a.modificationFlags,e("INSERT")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"UpdateNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("UPDATE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("UPDATE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"ReplaceNode":return z=a.modificationFlags,a.hasOwnProperty("inKeyVariable")?e("REPLACE")+" "+G(a.inKeyVariable)+" "+e("WITH")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection):e("REPLACE")+" "+G(a.inDocVariable)+" "+e("IN")+" "+j(a.collection);case"UpsertNode":return z=a.modificationFlags,e("UPSERT")+" "+G(a.inDocVariable)+" "+e("INSERT")+" "+G(a.insertVariable)+" "+e(a.isReplace?"REPLACE":"UPDATE")+" "+G(a.updateVariable)+" "+e("IN")+" "+j(a.collection);case"RemoveNode":return z=a.modificationFlags,e("REMOVE")+" "+G(a.inVariable)+" "+e("IN")+" "+j(a.collection);case"RemoteNode":return e("REMOTE");case"DistributeNode":return e("DISTRIBUTE");case"ScatterNode":return e("SCATTER");case"GatherNode":return e("GATHER")}return"unhandled node type ("+a.type+")"},L=0,M=[],N=function(a,b){return n(1+a+a)+(b?"* ":"- ")},O=function(a){D={},F=!0,"SubqueryNode"===a.type&&M.push(L)},P=function(a){-1!==["EnumerateCollectionNode","EnumerateListNode","IndexRangeNode","SubqueryNode"].indexOf(a.type)?L++:"ReturnNode"===a.type&&M.length>0?L=M.pop():"SingletonNode"===a.type&&L++},Q=function(){return F?" "+f("/* const assignment */"):""},R=function(){var a=[];for(var b in D)D.hasOwnProperty(b)&&a.push(h(b)+" : "+j(D[b]));return a.length>0?" "+f("/* collections used:")+" "+a.join(", ")+" "+f("*/"):""},S=function(a){O(a);var b=" "+n(1+v-String(a.id).length)+h(a.id)+" "+e(a.type)+n(1+u-String(a.type).length)+" "+n(1+w-String(a.estimatedNrItems).length)+g(a.estimatedNrItems)+" "+N(L,"SingletonNode"===a.type)+K(a);"CalculationNode"===a.type&&(b+=R()+Q()),B.appendLine(b),P(a)};p(a),B.appendLine(m("Execution plan:"));var T=" "+n(1+v-String("Id").length)+l("Id")+" "+l("NodeType")+n(1+u-String("NodeType").length)+" "+n(1+w-String("Est.").length)+l("Est.")+" "+l("Comment");B.appendLine(T);for(var U=[o];U.length>0;){var V=U.pop(),W=c[V];S(W),d.hasOwnProperty(V)&&(U=U.concat(d[V])),"SubqueryNode"===W.type&&(U=U.concat([W.subquery.nodes[0].id]))}B.appendLine(),t(E),B.appendLine(),r(x.rules),q(z),s(b.warnings)}function v(a,b,d){"use strict";if("string"==typeof a&&(a={query:a}),!(a instanceof Object))throw"ArangoStatement needs initial data";b=b||{},c(void 0===b.colors?!0:b.colors);var e=w._createStatement(a),f=e.explain(b);return B.clearOutput(),u(a.query,f,!0),void 0===d||d?void z(B.getOutput()):B.getOutput()}var w=require("org/arangodb").db,x=require("internal"),y=x.COLORS,z=x.print,A={};"function"==typeof x.printBrowser&&(z=x.printBrowser);var B={output:"",appendLine:function(a){a?this.output+=a+"\n":this.output+="\n"},getOutput:function(){return this.output},clearOutput:function(){this.output=""}};a.explain=v}),module.define("org/arangodb/aql/functions",function(a,b){var c=require("internal"),d=require("org/arangodb"),e=d.db,f=d.ArangoError,g=function(){"use strict";var a=e._collection("_aqlfunctions");if(null===a){var b=new f;throw b.errorNum=d.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code,b.errorMessage="collection '_aqlfunctions' not found",b}return a},h=function(a){"use strict";var b=[];if(null!==a&&void 0!==a&&a.length>0){var c=a.toUpperCase();a.length>1&&"::"!==a.substr(a.length-2,2)&&(c+="::"),g().toArray().forEach(function(a){a.name.toUpperCase().substr(0,c.length)===c&&b.push(a)})}else b=g().toArray();return b},i=function(a){"use strict";if("string"!=typeof a||!a.match(/^[a-zA-Z0-9_]+(::[a-zA-Z0-9_]+)+$/)||"_"===a.substr(0,1)){var b=new f;throw b.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.code,b.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_NAME.message,b}},j=function(a,b){"use strict";if("function"==typeof a&&(a=String(a)+"\n"),"string"==typeof a){if(a="("+a+"\n)",!c.parse)return a;try{if(c.parse(a,b))return a}catch(e){}}var g=new f;throw g.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,g.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,g},k=function(a){"use strict";var b=null;i(a);try{b=g().document(a.toUpperCase())}catch(e){}if(null===b){var h=new f;throw h.errorNum=d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.code,h.errorMessage=c.sprintf(d.errors.ERROR_QUERY_FUNCTION_NOT_FOUND.message,a),h}return g().remove(b._id),c.reloadAqlFunctions(),!0},l=function(a){"use strict";if(0===a.length){var b=new f;throw b.errorNum=d.errors.ERROR_BAD_PARAMETER.code,b.errorMessage=d.errors.ERROR_BAD_PARAMETER.message,b}var e=0;return h(a).forEach(function(a){g().remove(a._id),e++}),e>0&&c.reloadAqlFunctions(),e},m=function(a,b,h){i(a),b=j(b,a);var k,l="(function() { var callback = "+b+"; return callback; })()";try{if(c&&c.hasOwnProperty("executeScript")){var m=c.executeScript(l,void 0,"(user function "+a+")");if("function"!=typeof m)throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message+": code must be contained in function",k}}catch(n){throw k=new f,k.errorNum=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.code,k.errorMessage=d.errors.ERROR_QUERY_FUNCTION_INVALID_CODE.message,k}var o=e._executeTransaction({collections:{write:g().name()},action:function(a){var b=!1,c=require("internal").db._collection(a.collection),d=a.name;try{var e=c.document(d.toUpperCase());null!==e&&(c.remove(e._key),b=!0)}catch(f){}var g={_key:d.toUpperCase(),name:d,code:a.code,isDeterministic:a.isDeterministic||!1};return c.save(g),b},params:{name:a,code:b,isDeterministic:h,collection:g().name()}});return c.reloadAqlFunctions(),o},n=function(a){"use strict";var b=[];return h(a).forEach(function(a){b.push({name:a.name,code:a.code.substr(1,a.code.length-2).trim()})}),b};a.unregister=k,a.unregisterGroup=l,a.register=m,a.toArray=n}),module.define("org/arangodb/aql/queries",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh");a.clearSlow=function(){var a=c.db,b=a._connection.DELETE("/_api/query/slow","");return d.checkRequestResult(b),b},a.slow=function(){var a=c.db,b=a._connection.GET("/_api/query/slow","");return d.checkRequestResult(b),b},a.current=function(){var a=c.db,b=a._connection.GET("/_api/query/current","");return d.checkRequestResult(b),b},a.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/query/properties"):e._connection.PUT("/_api/query/properties",JSON.stringify(a)),d.checkRequestResult(b),b},a.kill=function(a){"object"==typeof a&&a.hasOwnProperty("id")&&(a=a.id);var b=c.db,e=b._connection.DELETE("/_api/query/"+encodeURIComponent(a),"");return d.checkRequestResult(e),e}}),module.define("org/arangodb/graph/traversal",function(a,b){function c(a){if(null===a||"object"!=typeof a)return a;var b;if(Array.isArray(a))b=[],a.forEach(function(a){b.push(c(a))});else if(a instanceof Object){if(J&&a instanceof J)return a;b={},Object.keys(a).forEach(function(d){b[d]=c(a[d])})}return b}function d(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function e(a){var b=a;"string"==typeof b&&(b=K._collection(b));var c="object"==typeof ArangoClusterComm;return c&&require("org/arangodb/cluster").isCoordinator()&&(c=!1),{edgeCollection:b,useBuiltIn:c,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from)},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.useBuiltIn?this.edgeCollection.EDGES(a._id):this.edgeCollection.edges(a._id)},getInEdges:function(a){return this.useBuiltIn?this.edgeCollection.INEDGES(a._id):this.edgeCollection.inEdges(a._id)},getOutEdges:function(a){return this.useBuiltIn?this.edgeCollection.OUTEDGES(a._id):this.edgeCollection.outEdges(a._id)}}}function f(a){var b=a;return"string"==typeof b&&(b=F._graph(b)),{graph:b,getVertexId:function(a){return a._id},getPeerVertex:function(a,b){return a._from===b._id?K._document(a._to):a._to===b._id?K._document(a._from):null},getInVertex:function(a){return K._document(a._to)},getOutVertex:function(a){return K._document(a._from)},getEdgeId:function(a){return a._id},getEdgeFrom:function(a){return a._from},getEdgeTo:function(a){return a._to},getLabel:function(a){return a.$label},getAllEdges:function(a){return this.graph._EDGES(a._id)},getInEdges:function(a){return this.graph._INEDGES(a._id)},getOutEdges:function(a){return this.graph._OUTEDGES(a._id)}}}function g(a){return{graph:new E.Graph(a),getVertexId:function(a){return a.getId()},getPeerVertex:function(a,b){return a.getPeerVertex(b)},getInVertex:function(a){return a.getInVertex()},getOutVertex:function(a){return a.getOutVertex()},getEdgeId:function(a){return a.getId()},getEdgeFrom:function(a){return a._properties._from},getEdgeTo:function(a){return a._properties._to},getLabel:function(a){return a.getLabel()},getAllEdges:function(a){return a.edges()},getInEdges:function(a){return a.inbound()},getOutEdges:function(a){return a.outbound()}}}function h(a,b,c){var d,e=a.datasource,f=[],g=e.getOutEdges(b);return g.length>1&&a.sort&&g.sort(a.sort),d=a.buildVertices?a.expandFilter?function(b){try{var d=e.getInVertex(b);a.expandFilter(a,d,b,c)&&f.push({edge:b,vertex:d})}catch(g){}}:function(a){try{var b=e.getInVertex(a);f.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var d=e.getEdgeTo(b),g={_id:d,_key:d.substr(d.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&f.push({edge:b,vertex:g})}:function(a){var b=e.getEdgeTo(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};f.push({edge:a,vertex:c})},g.forEach(d),f}function i(a,b,c){var d=a.datasource,e=[],f=d.getInEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(b){try{var f=d.getOutVertex(b);a.expandFilter(a,f,b,c)&&e.push({edge:b,vertex:f})}catch(g){}}:function(a){try{var b=d.getOutVertex(a);e.push({edge:a,vertex:b})}catch(c){}}:a.expandFilter?function(b){var f=d.getEdgeFrom(b),g={_id:f,_key:f.substr(f.indexOf("/")+1)};a.expandFilter(a,g,b,c)&&e.push({edge:b,vertex:g})}:function(a){var b=d.getEdgeFrom(a),c={_id:b,_key:b.substr(b.indexOf("/")+1)};e.push({edge:a,vertex:c})},f.forEach(g),e}function j(a,b,c){var d=a.datasource,e=[],f=d.getAllEdges(b);f.length>1&&a.sort&&f.sort(a.sort);var g;return g=a.buildVertices?a.expandFilter?function(f){try{var g=d.getPeerVertex(f,b);a.expandFilter(a,g,f,c)&&e.push({edge:f,vertex:g})}catch(h){}}:function(a){try{var c=d.getPeerVertex(a,b);e.push({edge:a,vertex:c})}catch(f){}}:a.expandFilter?function(f){var g=d.getEdgeFrom(f);g===b._id&&(g=d.getEdgeTo(f));var h={_id:g,_key:g.substr(g.indexOf("/")+1)};a.expandFilter(a,h,f,c)&&e.push({edge:f,vertex:h})}:function(a){var c=d.getEdgeFrom(a);c===b._id&&(c=d.getEdgeTo(a));var f={_id:c,_key:c.substr(c.indexOf("/")+1)};e.push({edge:a,vertex:f})},f.forEach(g),e}function k(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=e.getOutEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getInVertex(h)})}return f}function l(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getInEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getOutVertex(h)})}return f}function m(a,b,c){var d,e=a.datasource,f=[];Array.isArray(a.labels)||(a.labels=[a.labels]);var g=a.datasource.getAllEdges(b);if(void 0!==g)for(d=0;d=0&&f.push({edge:h,vertex:e.getPeerVertex(h,b)})}return f}function n(a,b,d,e){b&&b.visited&&(b.visited.vertices&&b.visited.vertices.push(c(d)),b.visited.paths&&b.visited.paths.push(c(e)))}function o(a,b,c,d){b&&(b.hasOwnProperty("count")?++b.count:b.count=1)}function p(){}function q(){return""}function r(a,b,c){return c&&c.vertices&&c.vertices.length>a.maxDepth?D.PRUNE:void 0}function s(a,b,c){return c&&c.vertices&&c.vertices.length<=a.minDepth?D.EXCLUDE:void 0}function t(a,b,c){Array.isArray(a.matchingAttributes)||(a.matchingAttributes=[a.matchingAttributes]);var d=!1;a.matchingAttributes.forEach(function(a){var c=0,e=Object.keys(a);e.forEach(function(d){b[d]&&b[d]===a[d]&&c++}),c>0&&c===e.length&&(d=!0)});var e;return d||(e="exclude"),e}function u(a,b,c,d){var e=[];return a.forEach(function(a){var f=a(b,c,d);Array.isArray(f)||(f=[f]),e=e.concat(f)}),e}function v(a){function b(a){if(void 0!==a&&null!==a){var d=!1;if("string"==typeof a)a===D.EXCLUDE?(c.visit=!1,d=!0):a===D.PRUNE?(c.expand=!1,d=!0):""===a&&(d=!0);else if(Array.isArray(a)){var e;for(e=0;eb)break;d=a[b]}return c},run:function(a,b,c){for(var d=a.maxIterations,e=0,f=[{edge:null,vertex:c,parentIndex:-1}],g={edges:{},vertices:{}},h=0,i=1,j=x(a);1===i&&h=0;){var k,l=f[h],m=l.vertex,n=l.edge;if(e++>d){var o=new I;throw o.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,o.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,o}if(L(),null===l.visit||void 0===l.visit){if(l.visit=!1,k=this.createPath(f,h),a.uniqueness.vertices===D.UNIQUE_PATH&&(g.vertices=this.getPathItems(a.datasource.getVertexId,k.vertices)),a.uniqueness.edges===D.UNIQUE_PATH&&(g.edges=this.getPathItems(a.datasource.getEdgeId,k.edges)),!w(a,g,m,n)){h0;){if(e++>d){var l=new I;throw l.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,l.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,l}L();var m=f[f.length-1],n=m.vertex,o=m.edge;if(null===m.visit||void 0===m.visit){if(m.visit=!1,k&&(j.vertices===D.UNIQUE_PATH&&(h.vertices=this.getPathItems(a.datasource.getVertexId,g.vertices)),j.edges===D.UNIQUE_PATH&&(h.edges=this.getPathItems(a.datasource.getEdgeId,g.edges)),!w(a,h,n,o))){f.pop();continue}null!==o&&g.edges.push(o),g.vertices.push(n);var p=v(a.filter(a,n,g));if(a.order===D.PRE_ORDER&&p.visit?a.visitor(a,b,n,g):m.visit=p.visit||!1,p.expand){var q,r=a.expander(a,n,g);for(i&&r.reverse(),a.order===D.PRE_ORDER_EXPANDER&&p.visit&&a.visitor(a,b,n,g,r),q=0;q0&&g.edges.pop(),g.vertices.pop()}}}}function A(){return{nodes:{},requiresEndVertex:function(){return!0},makeNode:function(a){var b=a._id;return this.nodes.hasOwnProperty(b)||(this.nodes[b]={vertex:a,dist:1/0}),this.nodes[b]},vertexList:function(a){for(var b=[];a;)b.push(a),a=a.parent;return b},buildPath:function(a){for(var b={vertices:[a.vertex],edges:[]},c=a;c.parent;)b.vertices.unshift(c.parent.vertex),b.edges.unshift(c.parentEdge),c=c.parent;return b},run:function(a,b,c,d){var e=a.maxIterations,f=0,g=new H(function(a){return a.dist}),h=this.makeNode(c);for(h.dist=0,g.push(h);g.size()>0;){if(f++>e){var i=new I;throw i.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,i.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,i}L();var j,k,l=g.pop();if(l.vertex._id===d._id){var m=this.vertexList(l).reverse();for(k=m.length,j=0;k>j;++j)m[j].hide||a.visitor(a,b,m[j].vertex,this.buildPath(m[j]));return}if(!l.visited){if(l.dist===1/0)break;l.visited=!0;var n=this.buildPath(l),o=v(a.filter(a,l.vertex,n));if(o.visit||(l.hide=!0),o.expand){var p=l.dist,q=a.expander(a,l.vertex,n);for(k=q.length,j=0;k>j;++j){var r=this.makeNode(q[j].vertex);if(!r.visited){var s=q[j].edge,t=1;a.distance?t=a.distance(a,l.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(g++>f){var j=new I;throw j.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,j.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,j}var k,l,m=h.pop();if(e.hasOwnProperty(m.vertex._id)&&(delete e[m.vertex._id],a.visitor(a,b,m,this.buildPath(m)),d(e)))return;if(!m.visited){if(m.dist===1/0)break;m.visited=!0;var n=this.buildPath(m),o=v(a.filter(a,m.vertex,n));if(o.visit||(m.hide=!0),o.expand){var p=m.dist,q=a.expander(a,m.vertex,n);for(l=q.length,k=0;l>k;++k){var r=this.makeNode(q[k].vertex);if(!r.visited){var s=q[k].edge,t=1;a.distance?t=a.distance(a,m.vertex,r.vertex,s):a.weight&&(t="number"==typeof s[a.weight]?s[a.weight]:a.defaultWeight?a.defaultWeight:1/0);var u=p+t;u0;){if(f++>e){var h=new I;throw h.errorNum=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.code,h.errorMessage=G.errors.ERROR_GRAPH_TOO_MANY_ITERATIONS.message,h}L();var i,j,k=g.pop();if(k.vertex._id===d._id){var l=this.vertexList(k);for(a.order!==D.PRE_ORDER&&l.reverse(),j=l.length,i=0;j>i;++i)a.visitor(a,b,l[i].vertex,this.buildPath(l[i]));return}k.closed=!0;var m=this.buildPath(k),n=a.expander(a,k.vertex,m);for(j=n.length,i=0;j>i;++i){var o=this.makeNode(n[i].vertex);if(!o.closed){var p=k.g+1,q=o.visited;if(!q||p0&&f.push(s),void 0!==a.maxDepth&&null!==a.maxDepth&&a.maxDepth>0&&f.push(r),Array.isArray(a.filter)||("function"==typeof a.filter?a.filter=[a.filter]:a.filter=[]),a.filter.forEach(function(a){if("function"!=typeof a)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid filter function",d;f.push(a)}),f.length>1?a.filter=function(a,b,c){return u(f,a,b,c)}:1===f.length?a.filter=f[0]:a.filter=q,"function"!=typeof a.expander&&(a.expander=b(a.expander,{outbound:h,inbound:i,any:j},"expander")),"function"!=typeof a.expander)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid expander function",d;if("object"!=typeof a.datasource)throw d=new I,d.errorNum=G.errors.ERROR_BAD_PARAMETER.code,d.errorMessage="invalid datasource",d;this.config=a},D.prototype.traverse=function(a,b,c){var d;if(d=this.config.strategy===D.ASTAR_SEARCH?C():this.config.strategy===D.DIJKSTRA_SEARCH?A():this.config.strategy===D.DIJKSTRA_SEARCH_MULTI?B():this.config.strategy===D.BREADTH_FIRST?y():z(),void 0===b||null===b||"object"!=typeof b){var e=new I;throw e.errorNum=G.errors.ERROR_BAD_PARAMETER.code,e.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid startVertex specified for traversal",e}if(d.requiresEndVertex()&&(void 0===c||null===c||"object"!=typeof c)){var f=new I;throw f.errorNum=G.errors.ERROR_BAD_PARAMETER.code,f.errorMessage=G.errors.ERROR_BAD_PARAMETER.message+": invalid endVertex specified for traversal",f}try{d.run(this.config,a,b,c)}catch(g){if("object"!=typeof g||!g._intentionallyAborted)throw g}},D.UNIQUE_NONE=0,D.UNIQUE_PATH=1,D.UNIQUE_GLOBAL=2,D.BREADTH_FIRST=0,D.DEPTH_FIRST=1,D.ASTAR_SEARCH=2,D.DIJKSTRA_SEARCH=3,D.DIJKSTRA_SEARCH_MULTI=4,D.PRE_ORDER=0,D.POST_ORDER=1,D.PRE_ORDER_EXPANDER=2,D.FORWARD=0,D.BACKWARD=1,D.PRUNE="prune",D.EXCLUDE="exclude",a.collectionDatasourceFactory=e,a.generalGraphDatasourceFactory=f,a.graphDatasourceFactory=g,a.outboundExpander=h,a.inboundExpander=i,a.anyExpander=j,a.expandOutEdgesWithLabels=k,a.expandInEdgesWithLabels=l,a.expandEdgesWithLabels=m,a.trackingVisitor=n,a.countingVisitor=o,a.doNothingVisitor=p,a.visitAllFilter=q,a.maxDepthFilter=r,a.minDepthFilter=s,a.includeMatchingAttributesFilter=t,a.abortedException=N,a.Traverser=D}),module.define("org/arangodb/arango-collection-common",function(a,b){var c=require("org/arangodb/arango-collection").ArangoCollection,d=require("org/arangodb"),e=d.ArangoError,f=d.sprintf,g=d.db,h=require("org/arangodb/simple-query"),i=h.SimpleQueryAll,j=h.SimpleQueryByExample,k=h.SimpleQueryByCondition,l=h.SimpleQueryRange,m=h.SimpleQueryGeo,n=h.SimpleQueryNear,o=h.SimpleQueryWithin,p=h.SimpleQueryWithinRectangle,q=h.SimpleQueryFulltext;c.STATUS_CORRUPTED=0,c.STATUS_NEW_BORN=1,c.STATUS_UNLOADED=2,c.STATUS_LOADED=3,c.STATUS_UNLOADING=4,c.STATUS_DELETED=5,c.STATUS_LOADING=6,c.TYPE_DOCUMENT=2,c.TYPE_EDGE=3,c.prototype._PRINT=function(a){var b="unknown",d="unknown",e=this.name();switch(this.status()){case c.STATUS_NEW_BORN:b="new born";break;case c.STATUS_UNLOADED:b="unloaded";break;case c.STATUS_UNLOADING:b="unloading";break;case c.STATUS_LOADED:b="loaded";break;case c.STATUS_CORRUPTED:b="corrupted";break;case c.STATUS_DELETED:b="deleted"}switch(this.type()){case c.TYPE_DOCUMENT:d="document";break;case c.TYPE_EDGE:d="edge"}var f=require("internal").COLORS,g=a.useColor;a.output+="[ArangoCollection ",g&&(a.output+=f.COLOR_NUMBER), +a.output+=this._id,g&&(a.output+=f.COLOR_RESET),a.output+=', "',g&&(a.output+=f.COLOR_STRING),a.output+=e||"unknown",g&&(a.output+=f.COLOR_RESET),a.output+='" (type '+d+", status "+b+")]"},c.prototype.toString=function(){return"[ArangoCollection: "+this._id+"]"},c.prototype.all=function(){return new i(this)},c.prototype.byExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c=1?h=this.all():(c=f("FOR d IN %s FILTER rand() >= @prob RETURN d",this.name()),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute());else{if("number"!=typeof k){var l=new e;throw l.errorNum=d.errors.ERROR_ILLEGAL_NUMBER.code,l.errorMessage="expecting a number, got "+String(k),l}j>=1?h=this.all().limit(k):(c=f("FOR d IN %s FILTER rand() >= @prob LIMIT %d RETURN d",this.name(),k),c=g._createStatement({query:c}),1>j&&c.bind("prob",j),h=c.execute())}for(i=0;h.hasNext();){var m=h.next();a(m,i),i++}},c.prototype.removeByExample=function(a,b,c){throw"cannot call abstract removeByExample function"},c.prototype.replaceByExample=function(a,b,c,d){throw"cannot call abstract replaceByExample function"},c.prototype.updateByExample=function(a,b,c,d,e){throw"cannot call abstract updateExample function"}}),module.define("org/arangodb/arango-collection",function(a,b){function c(a,b){a.fields=[];var c,d=function(d){a.hasOwnProperty(d)||(a[d]=b[c][d])};for(c=0;c col = db.mycoll; \n > col = db._create("mycoll"); \n \nAdministration Functions: \n name() collection name \n status() status of the collection \n type() type of the collection \n truncate() delete all documents \n properties() show collection properties \n drop() delete a collection \n load() load a collection into memory \n unload() unload a collection from memory \n rename() renames a collection \n getIndexes() return defined indexes \n refresh() refreshes the status and name \n _help() this help \n \nDocument Functions: \n count() return number of documents \n save() create document and return handle \n document() get document by handle (_id or _key)\n replace(, , ) overwrite document \n update(, , , partially update document \n ) \n remove() delete document \n exists() checks whether a document exists \n first() first inserted/updated document \n last() last inserted/updated document \n \nAttributes: \n _database database object \n _id collection identifier ';d.prototype._help=function(){e.print(h)},d.prototype.name=function(){return null===this._name&&this.refresh(),this._name},d.prototype.status=function(){var a;return null===this._status&&this.refresh(),a=this._status,this._status===d.STATUS_UNLOADING&&(this._status=null),a},d.prototype.type=function(){return null===this._type&&this.refresh(),this._type},d.prototype.properties=function(a){var b,c,d={doCompact:!0,journalSize:!0,isSystem:!1,isVolatile:!1,waitForSync:!0,shardKeys:!1,numberOfShards:!1,keyOptions:!1,indexBuckets:!0};if(void 0===a)c=this._database._connection.GET(this._baseurl("properties")),f.checkRequestResult(c);else{var e={};for(b in d)d.hasOwnProperty(b)&&d[b]&&a.hasOwnProperty(b)&&(e[b]=a[b]);c=this._database._connection.PUT(this._baseurl("properties"),JSON.stringify(e)),f.checkRequestResult(c)}var g={};for(b in d)d.hasOwnProperty(b)&&c.hasOwnProperty(b)&&void 0!==c[b]&&(g[b]=c[b]);return g},d.prototype.rotate=function(){var a=this._database._connection.PUT(this._baseurl("rotate"),"");return f.checkRequestResult(a),a.result},d.prototype.figures=function(){var a=this._database._connection.GET(this._baseurl("figures"));return f.checkRequestResult(a),a.figures},d.prototype.checksum=function(a,b){var c="";a&&(c+="?withRevisions=true"),b&&(c+=(""===c?"?":"&")+"withData=true");var d=this._database._connection.GET(this._baseurl("checksum")+c);return f.checkRequestResult(d),{checksum:d.checksum,revision:d.revision}},d.prototype.revision=function(){var a=this._database._connection.GET(this._baseurl("revision"));return f.checkRequestResult(a),a.revision},d.prototype.drop=function(){var a=this._database._connection.DELETE(this._baseurl());f.checkRequestResult(a),this._status=d.STATUS_DELETED;var b,c=this._database;for(b in c)if(c.hasOwnProperty(b)){var e=c[b];e instanceof d&&e.name()===this.name()&&delete c[b]}},d.prototype.truncate=function(){var a=this._database._connection.PUT(this._baseurl("truncate"),"");f.checkRequestResult(a),this._status=null},d.prototype.load=function(a){var b={count:!0};void 0!==a&&(b.count=a);var c=this._database._connection.PUT(this._baseurl("load"),JSON.stringify(b));f.checkRequestResult(c),this._status=null},d.prototype.unload=function(){var a=this._database._connection.PUT(this._baseurl("unload"),"");f.checkRequestResult(a),this._status=null},d.prototype.rename=function(a){var b={name:a},c=this._database._connection.PUT(this._baseurl("rename"),JSON.stringify(b));f.checkRequestResult(c),delete this._database[this._name],this._database[a]=this,this._status=null,this._name=null},d.prototype.refresh=function(){var a=this._database._connection.GET(this._database._collectionurl(this._id)+"?useId=true");f.checkRequestResult(a),this._name=a.name,this._status=a.status,this._type=a.type},d.prototype.getIndexes=function(a){var b=this._database._connection.GET(this._indexurl()+"&withStats="+(a||!1));return f.checkRequestResult(b),b.indexes},d.prototype.index=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.GET(this._database._indexurl(a,this.name()));return f.checkRequestResult(b),b},d.prototype.dropIndex=function(a){a.hasOwnProperty("id")&&(a=a.id);var b=this._database._connection.DELETE(this._database._indexurl(a,this.name()));return null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_INDEX_NOT_FOUND.code?!1:(f.checkRequestResult(b),!0)},d.prototype.ensureCapConstraint=function(a,b){var c={type:"cap",size:a||void 0,byteSize:b||void 0},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueSkiplist=function(){var a=c({type:"skiplist",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureSkiplist=function(){var a=c({type:"skiplist",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureFulltextIndex=function(a,b){var c={type:"fulltext",minLength:b||void 0,fields:[a]},d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureUniqueConstraint=function(){var a=c({type:"hash",unique:!0},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureHashIndex=function(){var a=c({type:"hash",unique:!1},arguments),b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.ensureGeoIndex=function(a,b){var c;if("string"!=typeof a)throw"usage: ensureGeoIndex(, ) or ensureGeoIndex([, ])";c="boolean"==typeof b?{type:"geo",fields:[a],geoJson:b}:void 0===b?{type:"geo",fields:[a],geoJson:!1}:{type:"geo",fields:[a,b],geoJson:!1};var d=this._database._connection.POST(this._indexurl(),JSON.stringify(c));return f.checkRequestResult(d),d},d.prototype.ensureGeoConstraint=function(a,b){return this.ensureGeoIndex(a,b)},d.prototype.ensureIndex=function(a){if("object"!=typeof a||Array.isArray(a))throw"usage: ensureIndex()";var b=this._database._connection.POST(this._indexurl(),JSON.stringify(a));return f.checkRequestResult(b),b},d.prototype.count=function(){var a=this._database._connection.GET(this._baseurl("count"));return f.checkRequestResult(a),a.count},d.prototype.document=function(a){var b,c=null;if(a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.GET(this._documenturl(a)):this._database._connection.GET(this._documenturl(a),{"if-match":JSON.stringify(c)}),null!==b&&b.error===!0&&b.errorNum===e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code)throw new g(b);return f.checkRequestResult(b),b},d.prototype.exists=function(a){var b,c=null;if(void 0===a||null===a)throw new g({errorNum:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,errorMessage:e.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message});return a.hasOwnProperty("_id")&&(a.hasOwnProperty("_rev")&&(c=a._rev),a=a._id),b=null===c?this._database._connection.HEAD(this._documenturl(a)):this._database._connection.HEAD(this._documenturl(a),{"if-match":JSON.stringify(c)}),null===b||b.error!==!0||b.errorNum!==e.errors.ERROR_ARANGO_COLLECTION_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_NOT_FOUND.code&&b.errorNum!==e.errors.ERROR_HTTP_PRECONDITION_FAILED.code?(f.checkRequestResult(b),!0):!1},d.prototype.any=function(){var a=this._database._connection.PUT(this._prefixurl("/_api/simple/any"),JSON.stringify({collection:this._name}));return f.checkRequestResult(a),a.document},d.prototype.firstExample=function(a){var b,c;if(1===arguments.length)b=a;else for(b={},c=0;c) get collection by identifier/name \n _create(, ) creates a new collection \n _createEdgeCollection() creates a new edge collection \n _drop() delete a collection \n \nDocument Functions: \n _document() get document by handle (_id) \n _replace(, , ) overwrite document \n _update(, , , partially update document \n ) \n _remove() delete document \n _exists() checks whether a document exists \n _truncate() delete all documents \n \nDatabase Management Functions: \n _createDatabase() creates a new database \n _dropDatabase() drops an existing database \n _useDatabase() switches into an existing database\n _drop() delete a collection \n _name() name of the current database \n \nQuery / Transaction Functions: \n _executeTransaction() execute transaction \n _query() execute AQL query \n _createStatement() create and return AQL query ";c.prototype._help=function(){e.print(i)},c.prototype.toString=function(){return'[object ArangoDatabase "'+this._name()+'"]'},c.prototype._collections=function(){var a=this._connection.GET(this._collectionurl());if(f.checkRequestResult(a),void 0!==a.collections){var b,c=a.collections,d=[];for(b=0;b)"});if(!a.collections||"object"!=typeof a.collections)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid collections definition for transaction"});if(!a.action||"string"!=typeof a.action&&"function"!=typeof a.action)throw new g({error:!0,code:e.errors.ERROR_HTTP_BAD_PARAMETER.code,errorNum:e.errors.ERROR_BAD_PARAMETER.code,errorMessage:"missing/invalid action definition for transaction"});"function"==typeof a.action&&(a.action=String(a.action));var b=this._connection.POST("/_api/transaction",JSON.stringify(a));if(null!==b&&b.error===!0)throw new g(b);return f.checkRequestResult(b),b.result}}),module.define("org/arangodb/arango-query-cursor",function(a,b){function c(a,b){this._database=a,this._dbName=a._name(),this.data=b,this._hasNext=!1,this._hasMore=!1,this._pos=0,this._count=0,this._total=0,void 0!==b.result&&(this._count=b.result.length,this._pos0){if(a)d.print(b);else{var f=d.startCaptureMode();d.print(b),e+="\n\n"+d.stopCaptureMode(f)}this.hasNext()&&(e+="\ntype 'more' to show more documents\n",more=this)}return a||(d.print(e),e=""),e},c.prototype.toArray=function(){for(var a=[];this.hasNext();)a.push(this.next());return a};var f=e.createHelpHeadline("ArangoQueryCursor help")+'ArangoQueryCursor constructor: \n > cursor = stmt.execute() \nFunctions: \n hasNext() returns true if there are \n more results to fetch \n next() returns the next document \n toArray() returns all data from the cursor\n _help() this help \nAttributes: \n _database database object \nExample: \n > stmt = db._createStatement({ "query": "FOR c IN coll RETURN c" })\n > cursor = stmt.execute() \n > documents = cursor.toArray() \n > cursor = stmt.execute() \n > while (cursor.hasNext()) { print(cursor.next()) } ';c.prototype._help=function(){d.print(f)},c.prototype.hasNext=function(){return this._hasNext},c.prototype.next=function(){if(!this._hasNext)throw"No more results";var a=this.data.result[this._pos];if(this._pos++,this._pos===this._count&&(this._hasNext=!1,this._pos=0,this._hasMore&&this.data.id)){this._hasMore=!1;var b=this._database._connection.PUT(this._baseurl(),"");e.checkRequestResult(b),this.data=b,this._count=b.result.length,this._pos0&&(this._batchSize=b)},c.prototype.setOptions=function(a){this._options=a},c.prototype.setQuery=function(a){this._query=a&&"function"==typeof a.toAQL?a.toAQL():a},c.prototype.parse=function(){throw"cannot call abstract method parse()"},c.prototype.explain=function(){throw"cannot call abstract method explain()"},c.prototype.execute=function(){throw"cannot call abstract method execute()"},a.ArangoStatement=c}),module.define("org/arangodb/arango-statement",function(a,b){var c=require("internal"),d=require("org/arangodb/arangosh"),e=require("org/arangodb/arango-statement-common").ArangoStatement,f=require("org/arangodb/arango-query-cursor").ArangoQueryCursor;e.prototype.toString=function(){return d.getIdString(this,"ArangoStatement")};var g=d.createHelpHeadline("ArangoStatement help")+'Create an AQL query: \n > stmt = new ArangoStatement(db, { "query": "FOR..." }) \n > stmt = db._createStatement({ "query": "FOR..." }) \nSet query options: \n > stmt.setBatchSize() set the max. number of results \n to be transferred per roundtrip \n > stmt.setCount() set count flag (return number of\n results in "count" attribute) \nGet query options: \n > stmt.setBatchSize() return the max. number of results\n to be transferred per roundtrip \n > stmt.getCount() return count flag (return number\n of results in "count" attribute)\n > stmt.getQuery() return query string \n results in "count" attribute) \nBind parameters to a query: \n > stmt.bind(, ) bind single variable \n > stmt.bind() bind multiple variables \nExecute query: \n > cursor = stmt.execute() returns a cursor \nGet all results in an array: \n > docs = cursor.toArray() \nOr loop over the result set: \n > while (cursor.hasNext()) { print(cursor.next()) } ';e.prototype._help=function(){c.print(g)},e.prototype.parse=function(){var a={query:this._query},b=this._database._connection.POST("/_api/query",JSON.stringify(a));d.checkRequestResult(b);var c={bindVars:b.bindVars,collections:b.collections,ast:b.ast};return c},e.prototype.explain=function(a){var b=this._options||{};"object"==typeof b&&"object"==typeof a&&Object.keys(a).forEach(function(c){b[c]=a[c]});var c={query:this._query,bindVars:this._bindVars,options:b},e=this._database._connection.POST("/_api/explain",JSON.stringify(c));return d.checkRequestResult(e),b&&b.allPlans?{plans:e.plans,warnings:e.warnings,stats:e.stats}:{plan:e.plan,warnings:e.warnings,stats:e.stats}},e.prototype.execute=function(){var a={query:this._query,count:this._doCount,bindVars:this._bindVars};this._batchSize&&(a.batchSize=this._batchSize),this._options&&(a.options=this._options),void 0!==this._cache&&(a.cache=this._cache);var b=this._database._connection.POST("/_api/cursor",JSON.stringify(a));return d.checkRequestResult(b),new f(this._database,b)},a.ArangoStatement=e}),module.define("org/arangodb/arangosh",function(a,b){var c=require("internal");a.getIdString=function(a,b){var c="[object "+b;return a._id?c+=":"+a._id:a.data&&a.data._id&&(c+=":"+a.data._id),c+="]"},a.createHelpHeadline=function(a){var b,c="",d=Math.abs(78-a.length)/2;for(b=0;d>b;++b)c+="-";return"\n"+c+" "+a+" "+c+"\n"};var d=require("org/arangodb"),e=d.ArangoError;a.checkRequestResult=function(a){if(void 0===a)throw new e({error:!0,code:500,errorNum:d.ERROR_INTERNAL,errorMessage:"Unknown error. Request result is empty"});if(a.hasOwnProperty("error")){if(a.error){if(a.errorNum===d.ERROR_TYPE_ERROR)throw new TypeError(a.errorMessage);throw new e(a)}delete a.error}return a},a.HELP=a.createHelpHeadline("Help")+"Predefined objects: \n arango: ArangoConnection \n db: ArangoDatabase \n fm: FoxxManager \nExamples: \n > db._collections() list all collections \n > db._create() create a new collection \n > db._drop() drop a collection \n > db..toArray() list all documents \n > id = db..save({ ... }) save a document \n > db..remove(<_id>) delete a document \n > db..document(<_id>) retrieve a document \n > db..replace(<_id>, {...}) overwrite a document \n > db..update(<_id>, {...}) partially update a document\n > db..exists(<_id>) check if document exists \n > db._query().toArray() execute an AQL query \n > db._useDatabase() switch database \n > db._createDatabase() create a new database \n > db._listDatabases() list existing databases \n > help show help pages \n > exit \nNote: collection names and statuses may be cached in arangosh. \nTo refresh the list of collections and their statuses, issue: \n > db._collections(); \n \n"+(c.printBrowser?"To cancel the current prompt, press CTRL + z. \n \nPlease note that all variables defined with the var keyword will \ndisappear when the command is finished. To introduce variables that\nare persisting until the next command, omit the var keyword. \n\nType 'tutorial' for a tutorial or 'help' to see common examples":"To cancel the current prompt, press CTRL + d. \n"),a.helpExtended=a.createHelpHeadline("More help")+"Pager: \n > stop_pager() stop the pager output \n > start_pager() start the pager \nPretty printing: \n > stop_pretty_print() stop pretty printing \n > start_pretty_print() start pretty printing \nColor output: \n > stop_color_print() stop color printing \n > start_color_print() start color printing \nPrint function: \n > print(x) std. print function \n > print_plain(x) print without prettifying \n and without colors \n > clear() clear screen "}),module.define("org/arangodb/general-graph",function(a,b){var c=require("org/arangodb"),d=require("internal"),e=c.ArangoCollection,f=c.ArangoError,g=c.db,h=c.errors,i=require("underscore"),j=function(a){return"string"==typeof a?[a]:i.clone(a)},k=function(a){return a?Array.isArray(a)&&0===a.length?!1:"string"==typeof a||Array.isArray(a)?!0:!1:!1},l=function(a,b,d){var h=g._collection(a),i=!1;if(null!==h||d){if(!(h instanceof e)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.code,j.errorMessage=a+c.errors.ERROR_GRAPH_NOT_AN_ARANGO_COLLECTION.message,j}}else h=b===e.TYPE_DOCUMENT?g._create(a):g._createEdgeCollection(a),i=!0;return i},m=function(a,b){var d={},h={};return a.forEach(function(a){if(!(a.hasOwnProperty("collection")&&a.hasOwnProperty("from")&&a.hasOwnProperty("to")&&Array.isArray(a.from)&&Array.isArray(a.to))){var i=new f;throw i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i}a.from.concat(a.to).forEach(function(a){l(a,e.TYPE_DOCUMENT,b),d[a]=g[a]}),l(a.collection,e.TYPE_EDGE,b),h[a.collection]=g[a.collection]}),[d,h]},n=function(){var a=g._graphs;if(null===a||void 0===a){var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.code,b.errorMessage=c.errors.ERROR_GRAPH_NO_GRAPH_COLLECTION.message,b}return a},o=function(a){return i.map(a,function(a){var b=a.collection;return b+=": [",b+=a.from.join(", "),b+="] -> [",b+=a.to.join(", "),b+="]"})},p=function(a){var b={};return i.each(i.functions(a),function(c){b[c]=function(){return a[c].apply(a,arguments)}}),b},q=function(a){if(void 0===a)return{};if("string"==typeof a)return{_id:a};if("object"==typeof a)return Array.isArray(a)?i.map(a,function(a){return"string"==typeof a?{_id:a}:a}):a;var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.code,b.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT_STRING.message,b},r=function(a,b,d){var e=[],g=i.map(a,function(a){return a.name()});if(i.each(b,function(a){i.contains(g,a)||e.push(a)}),e.length>0){var h=new f;throw h.errorNum=c.errors.ERROR_BAD_PARAMETER.code,h.errorMessage=d+": "+e.join(" and ")+" are not known to the graph",h}return!0},s=function(a,b){this.query=a,b&&(this.type=b)};s.prototype.printQuery=function(){return this.query},s.prototype.isPathQuery=function(){return"path"===this.type},s.prototype.isPathVerticesQuery=function(){return"pathVertices"===this.type},s.prototype.isPathEdgesQuery=function(){return"pathEdges"===this.type},s.prototype.isEdgeQuery=function(){return"edge"===this.type},s.prototype.isVertexQuery=function(){return"vertex"===this.type},s.prototype.isNeighborQuery=function(){return"neighbor"===this.type},s.prototype.allowsRestrict=function(){return this.isEdgeQuery()||this.isVertexQuery()||this.isNeighborQuery()};var t=function(a){this.stack=[],this.callStack=[],this.bindVars={graphName:a.__name},this.graph=a,this.cursor=null,this.lastVar="",this._path=[],this._pathVertices=[],this._pathEdges=[],this._getPath=!1};t.prototype._addToPrint=function(a){var b=Array.prototype.slice.call(arguments);b.shift();var c={};c.name=a,b.length>0&&void 0!==b[0]?c.params=b:c.params=[],this.callStack.push(c)},t.prototype._PRINT=function(a){a.output="[ GraphAQL ",a.output+=this.graph.__name,i.each(this.callStack,function(b){a.prettyPrint&&(a.output+="\n"),a.output+=".",a.output+=b.name,a.output+="(";var c=0;for(c=0;c0&&(a.output+=", "),d.printRecursive(b.params[c],a);a.output+=")"}),a.output+=" ] "},t.prototype._clearCursor=function(){this.cursor&&(this.cursor.dispose(),this.cursor=null)},t.prototype._createCursor=function(){this.cursor||(this.cursor=this.execute())},t.prototype._edges=function(a,b){this._clearCursor(),this.options=b||{};var c=q(a),d="edges_"+this.stack.length,e="FOR "+d+" IN GRAPH_EDGES(@graphName";e+=this.getLastVar()?","+this.getLastVar():",{}",e+=",@options_"+this.stack.length+")",Array.isArray(c)||(c=[c]),this.options.edgeExamples=c,this.options.includeData=!0,this.bindVars["options_"+this.stack.length]=this.options;var f=new s(e,"edge");return this.stack.push(f),this.lastVar=d,this._path.push(d),this._pathEdges.push(d),this},t.prototype.edges=function(a){return this._addToPrint("edges",a),this._edges(a,{direction:"any"})},t.prototype.outEdges=function(a){return this._addToPrint("outEdges",a),this._edges(a,{direction:"outbound"})},t.prototype.inEdges=function(a){return this._addToPrint("inEdges",a),this._edges(a,{direction:"inbound"})},t.prototype._vertices=function(a,b,c){this._clearCursor(),this.options=b||{};var d=q(a),e="vertices_"+this.stack.length,f="FOR "+e+" IN GRAPH_VERTICES(@graphName,";if(void 0!==c)if(Array.isArray(c)){var g;for(f+="[",g=0;g0&&(f+=","),f+="MERGE(@vertexExample_"+this.stack.length+","+c[g]+")";f+="]"}else f+="MERGE(@vertexExample_"+this.stack.length+","+c+")";else f+="@vertexExample_"+this.stack.length;f+=",@options_"+this.stack.length+")",this.bindVars["vertexExample_"+this.stack.length]=d,this.bindVars["options_"+this.stack.length]=this.options;var h=new s(f,"vertex");return this.stack.push(h),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype.vertices=function(a){if(this._addToPrint("vertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,["{'_id': "+b+"._from}","{'_id': "+b+"._to}"])},t.prototype.fromVertices=function(a){if(this._addToPrint("fromVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._from}")},t.prototype.toVertices=function(a){if(this._addToPrint("toVertices",a),!this.getLastVar())return this._vertices(a);var b=this.getLastVar();return this._vertices(a,void 0,"{'_id': "+b+"._to}")},t.prototype.getLastVar=function(){return""===this.lastVar?!1:this.lastVar},t.prototype.path=function(){this._clearCursor();var a=new s("","path");return this.stack.push(a),this},t.prototype.pathVertices=function(){this._clearCursor();var a=new s("","pathVertices");return this.stack.push(a),this},t.prototype.pathEdges=function(){this._clearCursor();var a=new s("","pathEdges");return this.stack.push(a),this},t.prototype.neighbors=function(a,b){this._addToPrint("neighbors",a,b);var c,d=q(a),e="neighbors_"+this.stack.length,f="FOR "+e+" IN GRAPH_NEIGHBORS(@graphName,"+this.getLastVar()+",@options_"+this.stack.length+")";c=b?i.clone(b):{},c.neighborExamples=d,c.includeData=!0,this.bindVars["options_"+this.stack.length]=c;var g=new s(f,"neighbor");return this.stack.push(g),this.lastVar=e,this._path.push(e),this._pathVertices.push(e),this},t.prototype._getLastRestrictableStatementInfo=function(){for(var a=this.stack.length-1;!this.stack[a].allowsRestrict();)a--;return{statement:this.stack[a],options:this.bindVars["options_"+a]}},t.prototype.restrict=function(a){var b=j(a);if(0===b.length)return this;this._addToPrint("restrict",a),this._clearCursor();var c,d=this._getLastRestrictableStatementInfo(),e=d.statement,f=d.options;return e.isEdgeQuery()?(r(this.graph._edgeCollections(),b,"edge collections"),c=f.edgeCollectionRestriction||[],f.edgeCollectionRestriction=c.concat(a)):(e.isVertexQuery()||e.isNeighborQuery())&&(r(this.graph._vertexCollections(),b,"vertex collections"),c=f.vertexCollectionRestriction||[],f.vertexCollectionRestriction=c.concat(a)),this},t.prototype.filter=function(a){this._addToPrint("filter",a),this._clearCursor();var b=[];if("[object Array]"!==Object.prototype.toString.call(a)){if("[object Object]"!==Object.prototype.toString.call(a)){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_EXAMPLE_ARRAY_OBJECT.message,d}b=[a]}else b=a;var e="FILTER MATCHES("+this.getLastVar()+","+JSON.stringify(b)+")";return this.stack.push(new s(e)),this},t.prototype.printQuery=function(){return this.stack.map(function(a){return a.printQuery()}).join(" ")},t.prototype.execute=function(){this._clearCursor();var a=this.printQuery(),b=this.bindVars;return a+=this.stack[this.stack.length-1].isPathQuery()?" RETURN ["+this._path+"]":this.stack[this.stack.length-1].isPathVerticesQuery()?" RETURN FLATTEN(["+this._pathVertices+"])":this.stack[this.stack.length-1].isPathEdgesQuery()?" RETURN FLATTEN(["+this._pathEdges+"])":" RETURN "+this.getLastVar(),g._query(a,b,{count:!0})},t.prototype.toArray=function(){return this._createCursor(),this.cursor.toArray()},t.prototype.count=function(){return this._createCursor(),this.cursor.count()},t.prototype.hasNext=function(){return this._createCursor(),this.cursor.hasNext()},t.prototype.next=function(){return this._createCursor(),this.cursor.next()};var u=function(a,b){var d;if(arguments.length<2)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"2",d;if("string"!=typeof a||""===a)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must not be empty",d;if(!k(b))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,d.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must not be empty",d;return{collection:a,from:j(b),to:j(b)}},v=function(a,b,d){var e;if(arguments.length<3)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_NUMBER_OF_ARGUMENTS.message+"3",e;if("string"!=typeof a||""===a)throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg1 must be non empty string",e;if(!k(b))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg2 must be non empty string or array",e;if(!k(d))throw e=new f,e.errorNum=c.errors.ERROR_GRAPH_INVALID_PARAMETER.code,e.errorMessage=c.errors.ERROR_GRAPH_INVALID_PARAMETER.message+" arg3 must be non empty string or array",e;return{collection:a,from:j(b),to:j(d)}},w=function(){var a=n();return i.pluck(a.toArray(),"_key")},x=function(){return n().toArray()},y=function(){var a=[],b=arguments;return Object.keys(b).forEach(function(c){a.push(b[c])}),a},z=function(a){var b=arguments,c=0;Object.keys(b).forEach(function(d){c++,1!==c&&a.push(b[d])})},A=function(a){return a.from=a.from.sort(),a.to=a.to.sort(),a},B=function(a,b,d,g){Array.isArray(d)||(d=[]);var i,j,k,o=n(),p=!0;if(!a)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MISSING_NAME.message,i;if(b=b||[],!Array.isArray(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.code,i.errorMessage=c.errors.ERROR_GRAPH_CREATE_MALFORMED_EDGE_DEFINITION.message,i;var q=[],r={};b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,i.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,i;q.push(b),r[b]=a}),o.toArray().forEach(function(a){var b=a.edgeDefinitions;b.forEach(function(a){var b=a.collection;if(-1!==q.indexOf(b)&&JSON.stringify(a)!==JSON.stringify(r[b]))throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,i.errorMessage=b+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,i})});try{o.document(a)}catch(s){if(s.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw s;p=!1}if(p)throw i=new f,i.errorNum=c.errors.ERROR_GRAPH_DUPLICATE.code,i.errorMessage=c.errors.ERROR_GRAPH_DUPLICATE.message,i;j=m(b,!1),d.forEach(function(a){l(a,e.TYPE_DOCUMENT)}),b.forEach(function(a,c){var d=A(a);b[c]=d}),d=d.sort();var t=o.save({orphanCollections:d,edgeDefinitions:b,_key:a},g);return k=new H(a,b,j[0],j[1],d,t._rev,t._id)},C=function(a,b,c){Object.defineProperty(a,b,{enumerable:!1,writable:!0}),a[b]=c},D=function(a,b,c,d){d.__idsToRemove[c]=1,a.forEach(function(e){var f=e.edgeDefinitions;e.edgeDefinitions&&f.forEach(function(e){var f=e.from,h=e.to,i=e.collection;if(-1!==f.indexOf(b)||-1!==h.indexOf(b)){var j=g._collection(i).edges(c);j.forEach(function(b){d.__idsToRemove.hasOwnProperty(b._id)||(d.__collectionsToLock[i]=1,D(a,i,b._id,d))})}})})},E=function(a,b){i.each(b,function(b){var d=g._collection(b),e=p(d),h=e.save;e.save=function(d,e,g){if("string"!=typeof d||-1===d.indexOf("/")||"string"!=typeof e||-1===e.indexOf("/")){var j=new f;throw j.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,j.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,j}return a.__edgeDefinitions.forEach(function(a){if(a.collection===b){var g=d.split("/")[0],h=e.split("/")[0];if(!i.contains(a.from,g)||!i.contains(a.to,h)){var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_INVALID_EDGE.code,j.errorMessage=c.errors.ERROR_GRAPH_INVALID_EDGE.message+" between "+d+" and "+e+".",j}}}),h(d,e,g)},e.remove=function(c,d){-1===c.indexOf("/")&&(c=b+"/"+c);var e=n().toArray(),f=c.split("/")[0];a.__collectionsToLock[f]=1,D(e,f,c,a);try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)})},params:{ids:Object.keys(a.__idsToRemove),options:d}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=e})},F=function(a,b){i.each(b,function(b){var c=g._collection(b),d=p(c);d.remove=function(c,d){var e=n().toArray(),f=b;-1===c.indexOf("/")&&(c=b+"/"+c),a.__collectionsToLock[f]=1,e.forEach(function(b){var d=b.edgeDefinitions;b.edgeDefinitions&&d.forEach(function(b){var d=b.from,h=b.to,i=b.collection;if(-1!==d.indexOf(f)||-1!==h.indexOf(f)){var j=g._collection(i).edges(c);j.length>0&&(a.__collectionsToLock[i]=1,j.forEach(function(b){D(e,i,b._id,a)}))}})});try{g._executeTransaction({collections:{write:Object.keys(a.__collectionsToLock)},embed:!0,action:function(a){var b=require("internal").db;a.ids.forEach(function(c){a.options?b._remove(c,a.options):b._remove(c)}),a.options?b._remove(a.vertexId,a.options):b._remove(a.vertexId)},params:{ids:Object.keys(a.__idsToRemove),options:d,vertexId:c}})}catch(h){throw a.__idsToRemove={},a.__collectionsToLock={},h}return a.__idsToRemove={},a.__collectionsToLock={},!0},a[b]=d})},G=function(a){Object.keys(a).forEach(function(b){"_"!==b.substring(0,1)&&delete a[b]}),a.__edgeDefinitions.forEach(function(b){E(a,[b.collection]),F(a,b.from),F(a,b.to)}),F(a,a.__orphanCollections)},H=function(a,b,c,d,e,f,g){b.forEach(function(a,c){var d=A(a);b[c]=d}),e||(e=[]);var h="object"==typeof ArangoClusterComm;h&&require("org/arangodb/cluster").isCoordinator()&&(h=!1);var i=this;C(this,"__useBuiltIn",h),C(this,"__name",a),C(this,"__vertexCollections",c),C(this,"__edgeCollections",d),C(this,"__edgeDefinitions",b),C(this,"__idsToRemove",{}),C(this,"__collectionsToLock",{}),C(this,"__id",g),C(this,"__rev",f),C(this,"__orphanCollections",e),G(i)},I=function(a){var b,d,e,g=n();try{b=g.document(a)}catch(i){if(i.errorNum!==h.ERROR_ARANGO_DOCUMENT_NOT_FOUND.code)throw i;var j=new f;throw j.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,j.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,j}return d=m(b.edgeDefinitions,!0),e=b.orphanCollections,e||(e=[]),new H(a,b.edgeDefinitions,d[0],d[1],e,b._rev,b._id)},J=function(a){var b=n();return b.exists(a)},K=function(a,b,c){var d=!0;return c.forEach(function(c){if(c._key!==b){var e=c.edgeDefinitions;e&&e.forEach(function(b){var c=b.from,e=b.to,f=b.collection;(f===a||-1!==c.indexOf(a)||-1!==e.indexOf(a))&&(d=!1)});var f=c.orphanCollections;f&&-1!==f.indexOf(a)&&(d=!1)}}),d},L=function(a,b){var d,e=n();if(!e.exists(a)){var h=new f;throw h.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,h.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message,h}if(b===!0){var i=e.document(a),j=i.edgeDefinitions;j.forEach(function(a){var b=a.from,c=a.to,e=a.collection;d=n().toArray(),K(e,i._key,d)&&g._drop(e),b.forEach(function(a){K(a,i._key,d)&&g._drop(a)}),c.forEach(function(a){K(a,i._key,d)&&g._drop(a)})}),d=n().toArray(),i.orphanCollections||(i.orphanCollections=[]),i.orphanCollections.forEach(function(a){if(K(a,i._key,d))try{g._drop(a)}catch(b){}})}return e.remove(a),!0};H.prototype._edgeCollections=function(){return i.values(this.__edgeCollections)},H.prototype._vertexCollections=function(){var a=[];return i.each(this.__orphanCollections,function(b){a.push(g[b])}),i.union(i.values(this.__vertexCollections),a)},H.prototype._EDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].EDGES(a)):e.concat(this.__edgeCollections[d].edges(a)));return e},H.prototype._INEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].INEDGES(a)):e.concat(this.__edgeCollections[d].inEdges(a)));return e},H.prototype._OUTEDGES=function(a){var b;if(-1===a.indexOf("/"))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_NOT_FOUND.code,b.errorMessage=c.errors.ERROR_GRAPH_NOT_FOUND.message+": "+a,b;var d,e=[];for(d in this.__edgeCollections)this.__edgeCollections.hasOwnProperty(d)&&(e=this.__useBuiltIn?e.concat(this.__edgeCollections[d].OUTEDGES(a)):e.concat(this.__edgeCollections[d].outEdges(a)));return e},H.prototype._edges=function(a){var b=new t(this);return b.outEdges(a)},H.prototype._vertices=function(a){var b=new t(this);return b.vertices(a)},H.prototype._fromVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a); +if(e){var g=e._from,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._toVertex=function(a){if("string"!=typeof a||-1===a.indexOf("/")){var b=new f;throw b.errorNum=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.code,b.errorMessage=c.errors.ERROR_ARANGO_DOCUMENT_HANDLE_BAD.message,b}var d=this._getEdgeCollectionByName(a.split("/")[0]),e=d.document(a);if(e){var g=e._to,h=this._getVertexCollectionByName(g.split("/")[0]);return h.document(g)}},H.prototype._getEdgeCollectionByName=function(a){if(this.__edgeCollections[a])return this.__edgeCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_EDGE_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._getVertexCollectionByName=function(a){if(this.__vertexCollections[a])return this.__vertexCollections[a];var b=new f;throw b.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,b.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message+": "+a,b},H.prototype._neighbors=function(a,b){var c=new t(this);return b||(b={}),c.vertices(a).neighbors(b.neighborExamples,b).toArray()},H.prototype._commonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN e";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f};return g._query(h,i,{count:!0}).toArray()},H.prototype._countCommonNeighbors=function(a,b,c,d){var e=q(a),f=q(b),h="FOR e IN GRAPH_COMMON_NEIGHBORS(@graphName,@ex1,@ex2,@options1,@options2) RETURN [e.left, e.right, LENGTH(e.neighbors)]";c=c||{},d=d||{};var i={graphName:this.__name,options1:c,options2:d,ex1:e,ex2:f},j=g._query(h,i,{count:!0}).toArray(),k={},l={},m=[];return j.forEach(function(a){k[a[0]]||(k[a[0]]=[]),l={},l[a[1]]=a[2],k[a[0]].push(l)}),Object.keys(k).forEach(function(a){l={},l[a]=k[a],m.push(l)}),m},H.prototype._commonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) SORT ATTRIBUTES(e)[0] RETURN e";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e};return g._query(f,h,{count:!0}).toArray()},H.prototype._countCommonProperties=function(a,b,c){var d=q(a),e=q(b),f="FOR e IN GRAPH_COMMON_PROPERTIES(@graphName,@ex1,@ex2,@options) FOR a in ATTRIBUTES(e) SORT ATTRIBUTES(e)[0] RETURN [ ATTRIBUTES(e)[0], LENGTH(e[a]) ]";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h,{count:!0}).toArray(),j=[];return i.forEach(function(a){var b={};b[a[0]]=a[1],j.push(b)}),j},H.prototype._paths=function(a){var b="RETURN GRAPH_PATHS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return d},H.prototype._shortestPath=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_SHORTEST_PATH(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i},H.prototype._distanceTo=function(a,b,c){var d=q(a),e=q(b),f="RETURN GRAPH_DISTANCE_TO(@graphName,@ex1,@ex2,@options)";c=c||{};var h={graphName:this.__name,options:c,ex1:d,ex2:e},i=g._query(f,h).toArray();return i[0]},H.prototype._absoluteEccentricity=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_ECCENTRICITY(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._eccentricity=function(a){var b="RETURN GRAPH_ECCENTRICITY(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteCloseness=function(a,b){var c=q(a),d="RETURN GRAPH_ABSOLUTE_CLOSENESS(@graphName,@ex1,@options)";b=b||{};var e={graphName:this.__name,options:b,ex1:c},f=g._query(d,e).toArray();return 1===f.length?f[0]:f},H.prototype._closeness=function(a){var b="RETURN GRAPH_CLOSENESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._absoluteBetweenness=function(a,b){var c="RETURN GRAPH_ABSOLUTE_BETWEENNESS(@graphName,@example,@options)";b=b||{};var d={example:a,graphName:this.__name,options:b},e=g._query(c,d).toArray();return 1===e.length?e[0]:e},H.prototype._betweenness=function(a){var b="RETURN GRAPH_BETWEENNESS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._radius=function(a){var b="RETURN GRAPH_RADIUS(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._diameter=function(a){var b="RETURN GRAPH_DIAMETER(@graphName,@options)";a=a||{};var c={graphName:this.__name,options:a},d=g._query(b,c).toArray();return 1===d.length?d[0]:d},H.prototype._extendEdgeDefinitions=function(a){a=A(a);var b,d=this,e=a.collection;if(void 0!==this.__edgeCollections[e])throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.code,b.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_MULTI_USE.message,b;g._graphs.toArray().forEach(function(d){var g=d.edgeDefinitions;g.forEach(function(d){var g=d.collection;if(g===e&&JSON.stringify(d)!==JSON.stringify(a))throw b=new f,b.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.code,b.errorMessage=g+" "+c.errors.ERROR_GRAPH_COLLECTION_USE_IN_MULTI_GRAPHS.message,b})}),m([a]),this.__edgeDefinitions.push(a),g._graphs.update(this.__name,{edgeDefinitions:this.__edgeDefinitions}),this.__edgeCollections[a.collection]=g[a.collection],a.from.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),a.to.forEach(function(a){d[a]=g[a];var b=d.__orphanCollections.indexOf(a);-1!==b&&d.__orphanCollections.splice(b,1),void 0===d.__vertexCollections[a]&&(d.__vertexCollections[a]=g[a])}),G(this)};var M=function(a,b,c,d,e){var f=[],h=I(a._key),j=a.edgeDefinitions,k=!1;j.forEach(function(c,d){c.collection===b.collection?(k=!0,j[d].from=b.from,j[d].to=b.to,g._graphs.update(a._key,{edgeDefinitions:j}),a._key===e.__name&&(e.__edgeDefinitions[d].from=b.from,e.__edgeDefinitions[d].to=b.to)):(f=i.union(f,c.from),f=i.union(f,c.to))}),k&&(a._key===e.__name?(c.forEach(function(a){void 0===e.__vertexCollections[a]&&(e.__vertexCollections[a]=g[a]);try{e._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete e.__vertexCollections[a],e._addVertexCollection(a))})):(c.forEach(function(a){try{h._removeVertexCollection(a,!1)}catch(b){}}),d.forEach(function(a){-1===f.indexOf(a)&&(delete h.__vertexCollections[a],h._addVertexCollection(a))})))};H.prototype._editEdgeDefinitions=function(a){a=A(a);var b=this;if(void 0===this.__edgeCollections[a.collection]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}m([a]);var e,g=[];this.__edgeDefinitions.forEach(function(b){a.collection===b.collection&&(e=b)});var h=i.union(e.from,e.to),j=i.union(a.from,a.to);h.forEach(function(a){-1===j.indexOf(a)&&g.push(a)});var k=n().toArray();k.forEach(function(c){M(c,a,j,g,b)}),G(this)},H.prototype._deleteEdgeDefinition=function(a,b){if(void 0===this.__edgeCollections[a]){var d=new f;throw d.errorNum=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.code,d.errorMessage=c.errors.ERROR_GRAPH_EDGE_COLLECTION_NOT_USED.message,d}var e,h=this.__edgeDefinitions,j=this,k=[],l=[];h.forEach(function(b,c){b.collection===a?(e=c,l=b.from,l=i.union(l,b.to)):(k=i.union(k,b.from),k=i.union(k,b.to))}),this.__edgeDefinitions.splice(e,1),l.forEach(function(a){-1===k.indexOf(a)&&j.__orphanCollections.push(a)}),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections,edgeDefinitions:this.__edgeDefinitions}),b&&g._drop(a)},H.prototype._addVertexCollection=function(a,b){var d,e=g._collection(a);if(null===e){if(b===!1)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=a+c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;g._create(a)}else if(2!==e.type())throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.code,d.errorMessage=c.errors.ERROR_GRAPH_WRONG_COLLECTION_TYPE_VERTEX.message,d;if(void 0!==this.__vertexCollections[a])throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_EDGE_DEF.message,d;if(i.contains(this.__orphanCollections,a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.code,d.errorMessage=c.errors.ERROR_GRAPH_COLLECTION_USED_IN_ORPHANS.message,d;this.__orphanCollections.push(a),G(this),g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections})},H.prototype._orphanCollections=function(){return this.__orphanCollections},H.prototype._removeVertexCollection=function(a,b){var d;if(null===g._collection(a))throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.code,d.errorMessage=c.errors.ERROR_GRAPH_VERTEX_COL_DOES_NOT_EXIST.message,d;var e=this.__orphanCollections.indexOf(a);if(-1===e)throw d=new f,d.errorNum=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.code,d.errorMessage=c.errors.ERROR_GRAPH_NOT_IN_ORPHAN_COLLECTION.message,d;if(this.__orphanCollections.splice(e,1),delete this[a],g._graphs.update(this.__name,{orphanCollections:this.__orphanCollections}),b===!0){var h=n().toArray();K(a,null,h)&&g._drop(a)}G(this)},H.prototype._getConnectingEdges=function(a,b,c){c=c||{};var d={includeData:!0};c.vertex1CollectionRestriction&&(d.startVertexCollectionRestriction=c.vertex1CollectionRestriction),c.vertex2CollectionRestriction&&(d.endVertexCollectionRestriction=c.vertex2CollectionRestriction),c.edgeCollectionRestriction&&(d.edgeCollectionRestriction=c.edgeCollectionRestriction),c.edgeExamples&&(d.edgeExamples=c.edgeExamples),b&&(d.neighborExamples=b);var e="RETURN GRAPH_EDGES(@graphName,@vertexExample,@options)",f={graphName:this.__name,vertexExample:a,options:d},h=g._query(e,f).toArray();return h[0]},H.prototype._PRINT=function(a){var b=this.__name,c=o(this.__edgeDefinitions);a.output+="[ Graph ",a.output+=b,a.output+=" EdgeDefinitions: ",d.printRecursive(c,a),a.output+=" VertexCollections: ",d.printRecursive(this.__orphanCollections,a),a.output+=" ]"},a._undirectedRelation=u,a._directedRelation=function(){return v.apply(this,arguments)},a._relation=v,a._graph=I,a._edgeDefinitions=y,a._extendEdgeDefinitions=z,a._create=B,a._drop=L,a._exists=J,a._list=w,a._listObjects=x}),module.define("org/arangodb/graph-blueprint",function(a,b){var c=require("org/arangodb"),d=require("org/arangodb/is"),e=require("org/arangodb/graph-common"),f=e.Edge,g=e.Graph,h=e.Vertex,i=e.GraphArray,j=e.Iterator,k=require("org/arangodb/api/graph").GraphAPI;f.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,this._graph.emptyCachedPredecessors(),c=k.putEdge(this._graph._properties._key,this._properties._key,d),this._properties=c.edge,a},h.prototype.edges=function(a,b){var c,d,e=new i;for(d=k.postEdges(this._graph._vertices._database,this._graph._properties._key,this,{filter:{direction:a,labels:b}});d.hasNext();)c=new f(this._graph,d.next()),e.push(c);return e},h.prototype.getInEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("in",a)},h.prototype.getOutEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("out",a)},h.prototype.getEdges=function(){var a=Array.prototype.slice.call(arguments);return this.edges("any",a)},h.prototype.inbound=function(){return this.getInEdges()},h.prototype.outbound=function(){return this.getOutEdges()},h.prototype.setProperty=function(a,b){var c,d=this._properties;return d[a]=b,c=k.putVertex(this._graph._properties._key,this._properties._key,d),this._properties=c.vertex,a},g.prototype.initialize=function(a,b,e){var f;return d.notExisty(b)&&d.notExisty(e)?f=k.getGraph(a):("object"==typeof b&&"function"==typeof b.name&&(b=b.name()),"object"==typeof e&&"function"==typeof e.name&&(e=e.name()),f=k.postGraph({_key:a,vertices:b,edges:e})),this._properties=f.graph,this._vertices=c.db._collection(this._properties.edgeDefinitions[0].from[0]),this._edges=c.db._collection(this._properties.edgeDefinitions[0].collection),this._verticesCache={},this._edgesCache={},this.predecessors={},this.distances={},this},g.getAll=function(){return k.getAllGraphs()},g.drop=function(a){k.deleteGraph(a)},g.prototype.drop=function(){k.deleteGraph(this._properties._key)},g.prototype._saveEdge=function(a,b,c,d){var e;return this.emptyCachedPredecessors(),d._key=a,d._from=b,d._to=c,e=k.postEdge(this._properties._key,d),new f(this,e.edge)},g.prototype._saveVertex=function(a,b){var c;return d.existy(a)&&(b._key=a),c=k.postVertex(this._properties._key,b),new h(this,c.vertex)},g.prototype._replaceVertex=function(a,b){k.putVertex(this._properties._key,a,b)},g.prototype._replaceEdge=function(a,b){k.putEdge(this._properties._key,a,b)},g.prototype.getVertex=function(a){var b=k.getVertex(this._properties._key,a);return d.notExisty(b)?null:new h(this,b.vertex)},g.prototype.getVertices=function(){var a=k.getVertices(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new h(b,a)};return new j(c,a,"[vertex iterator]")},g.prototype.getEdge=function(a){var b=k.getEdge(this._properties._key,a);return d.notExisty(b)?null:new f(this,b.edge)},g.prototype.getEdges=function(){var a=k.getEdges(this._vertices._database,this._properties._key,{}),b=this,c=function(a){return new f(b,a)};return new j(c,a,"[edge iterator]")},g.prototype.removeVertex=function(a){this.emptyCachedPredecessors(),k.deleteVertex(this._properties._key,a._properties._key),a._properties=void 0},g.prototype.removeEdge=function(a){this.emptyCachedPredecessors(),k.deleteEdge(this._properties._key,a._properties._key),this._edgesCache[a._properties._id]=void 0,a._properties=void 0},a.Edge=f,a.Graph=g,a.Vertex=h,a.GraphArray=i,require("org/arangodb/graph/algorithms-common")}),module.define("org/arangodb/graph-common",function(a,b){var c,d,e,f,g,h=require("org/arangodb/is");g=function(a,b,c){this.next=function(){return b.hasNext()?a(b.next()):void 0},this.hasNext=function(){return b.hasNext()},this._PRINT=function(a){a.output+=c}},f=function(a){void 0!==a&&(this.length=a)},f.prototype=new Array(0),f.prototype.map=function(a,b){var c,d=this.length;if("function"!=typeof a)throw new TypeError;var e=new f(d);for(c=0;d>c;c++)this.hasOwnProperty(c)&&(e[c]=a.call(b,this[c],c,this));return e},f.prototype.getInVertex=function(){return this.map(function(a){return a.getInVertex()})},f.prototype.getOutVertex=function(){return this.map(function(a){return a.getOutVertex()})},f.prototype.getPeerVertex=function(a){return this.map(function(b){return b.getPeerVertex(a)})},f.prototype.setProperty=function(a,b){return this.map(function(c){return c.setProperty(a,b)})},f.prototype.edges=function(){return this.map(function(a){return a.edges()})},f.prototype.outbound=function(){return this.map(function(a){return a.outbound()})},f.prototype.inbound=function(){return this.map(function(a){return a.inbound()})},f.prototype.getInEdges=function(){var a=arguments;return this.map(function(b){return b.getInEdges.apply(b,a)})},f.prototype.getOutEdges=function(){var a=arguments;return this.map(function(b){return b.getOutEdges.apply(b,a)})},f.prototype.getEdges=function(){var a=arguments;return this.map(function(b){return b.getEdges.apply(b,a)})},f.prototype.degree=function(){return this.map(function(a){return a.degree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.inDegree()})},f.prototype.inDegree=function(){return this.map(function(a){return a.outDegree()})},f.prototype.properties=function(){return this.map(function(a){return a.properties()})},c=function(a,b){this._graph=a,this._id=b._key,this._properties=b},c.prototype.getId=function(){return this._properties._key},c.prototype.getLabel=function(){return this._properties.$label},c.prototype.getProperty=function(a){return this._properties[a]},c.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},c.prototype.properties=function(){return this._properties._shallowCopy},c.prototype.getInVertex=function(){return this._graph.getVertex(this._properties._to)},c.prototype.getOutVertex=function(){return this._graph.getVertex(this._properties._from)},c.prototype.getPeerVertex=function(a){return a._properties._id===this._properties._to?this._graph.getVertex(this._properties._from):a._properties._id===this._properties._from?this._graph.getVertex(this._properties._to):null},c.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Edge("'+this._properties._key+'")':a.output+="Edge("+this._properties._key+")":a.output+="Edge(<"+this._id+">)":a.output+="[deleted Edge]"},e=function(a,b){this._graph=a,this._id=b._key,this._properties=b},e.prototype.addInEdge=function(a,b,c,d){return this._graph.addEdge(a,this,b,c,d)},e.prototype.addOutEdge=function(a,b,c,d){return this._graph.addEdge(this,a,b,c,d)},e.prototype.degree=function(){return this.getEdges().length},e.prototype.inDegree=function(){return this.getInEdges().length},e.prototype.outDegree=function(){return this.getOutEdges().length},e.prototype.getId=function(){return this._properties._key},e.prototype.getProperty=function(a){return this._properties[a]},e.prototype.getPropertyKeys=function(){return this._properties.propertyKeys},e.prototype.properties=function(){return this._properties._shallowCopy},e.prototype._PRINT=function(a){this._properties._id?void 0!==this._properties._key?"string"==typeof this._properties._key?a.output+='Vertex("'+this._properties._key+'")':a.output+="Vertex("+this._properties._key+")":a.output+="Vertex(<"+this._id+">)":a.output+="[deleted Vertex]"},d=function(a,b,c,d){this.initialize(a,b,c,d)},d.prototype._prepareEdgeData=function(a,b){var c;return h.notExisty(a)&&h.object(b)&&(a=b,b=null),h.notExisty(b)&&h.existy(a)&&h.existy(a.$label)&&(b=a.$label),c=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{},c.$label=b,c},d.prototype._prepareVertexData=function(a){var b;return b=h.notExisty(a)||h.noObject(a)?{}:a._shallowCopy||{}},d.prototype.getOrAddVertex=function(a){var b=this.getVertex(a);return null===b&&(b=this.addVertex(a)),b},d.prototype.addEdge=function(a,b,c,d,e,f){var g,i;return g=h.string(a)?a:a._properties._id,i=h.string(b)?b:b._properties._id,this._saveEdge(c,g,i,this._prepareEdgeData(e,d),f)},d.prototype.addVertex=function(a,b,c){return this._saveVertex(a,this._prepareVertexData(b),c)},d.prototype.replaceVertex=function(a,b){this._replaceVertex(a,b)},d.prototype.replaceEdge=function(a,b){this._replaceEdge(a,b)},d.prototype.order=function(){return this._vertices.count()},d.prototype.size=function(){return this._edges.count()},d.prototype.emptyCachedPredecessors=function(){this.predecessors={}},d.prototype.getCachedPredecessors=function(a,b){var c;return this.predecessors[a.getId()]&&(c=this.predecessors[a.getId()][b.getId()]),c},d.prototype.setCachedPredecessors=function(a,b,c){this.predecessors[a.getId()]||(this.predecessors[a.getId()]={}),this.predecessors[a.getId()][b.getId()]=c},d.prototype.constructVertex=function(a){var b,c;"string"==typeof a?b=a:(b=a._id,c=a._rev);var d=this._verticesCache[b];if(void 0===d||d._rev!==c){var f=this._vertices.document(b);if(!f)throw"accessing a deleted vertex";this._verticesCache[b]=d=new e(this,f)}return d},d.prototype.constructEdge=function(a){var b,d,e,f;if("string"==typeof a?b=a:(b=a._id,d=a._rev),e=this._edgesCache[b],void 0===e||e._rev!==d){if(f=this._edges.document(b),!f)throw"accessing a deleted edge";this._edgesCache[b]=e=new c(this,f)}return e},d.prototype._PRINT=function(a){a.output+='Graph("'+this._properties._key+'")'},a.Edge=c,a.Graph=d,a.Vertex=e,a.GraphArray=f,a.Iterator=g}),module.define("org/arangodb/graph",function(a,b){var c=require("org/arangodb/graph-blueprint");Object.keys(c).forEach(function(b){a[b]=c[b]})}),module.define("org/arangodb/is",function(a,b){"use strict";function c(a){return null!==a&&void 0!==a}function d(a){return!c(a)}function e(a){return a!==!1&&c(a)}function f(a){return!e(a)}["Object","Array","Boolean","Date","Function","Number","String","RegExp"].forEach(function(b){a[b.toLowerCase()]=function(a){return Object.prototype.toString.call(a)==="[object "+b+"]"},a["no"+b]=function(a){return Object.prototype.toString.call(a)!=="[object "+b+"]"}}),a.existy=c,a.notExisty=d,a.truthy=e,a.falsy=f}),module.define("org/arangodb/mimetypes",function(a,b){a.mimeTypes={gif:["image/gif",!1],jpg:["image/jpg",!1],png:["image/png",!1],tiff:["image/tiff",!1],ico:["image/x-icon",!1],css:["text/css",!0],js:["text/javascript",!0],json:["application/json",!0],html:["text/html",!0],htm:["text/html",!0],pdf:["application/pdf",!1],ps:["application/postscript",!1],txt:["text/plain",!0],text:["text/plain",!0],xml:["application/xml",!0],dtd:["application/xml-dtd",!0],svg:["image/svg+xml",!0],ttf:["application/x-font-ttf",!1],otf:["application/x-font-opentype",!1],woff:["application/font-woff",!1],eot:["application/vnd.ms-fontobject",!1],bz2:["application/x-bzip2",!1],gz:["application/x-gzip",!1],tgz:["application/x-tar",!1],zip:["application/x-compressed-zip",!1],doc:["application/msword",!1],docx:["application/vnd.openxmlformats-officedocument.wordprocessingml.document",!1],dotx:["application/vnd.openxmlformats-officedocument.wordprocessingml.template",!1],potx:["application/vnd.openxmlformats-officedocument.presentationml.template",!1],ppsx:["application/vnd.openxmlformats-officedocument.presentationml.slideshow",!1],ppt:["application/vnd.ms-powerpoint",!1],pptx:["application/vnd.openxmlformats-officedocument.presentationml.presentation",!1],xls:["application/vnd.ms-excel",!1],xlsb:["application/vnd.ms-excel.sheet.binary.macroEnabled.12",!1],xlsx:["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",!1],xltx:["application/vnd.openxmlformats-officedocument.spreadsheetml.template",!1],swf:["application/x-shockwave-flash",!1]},a.extensions={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"image/svg+xml":["svg"],"application/postscript":["ps"],"image/png":["png"],"application/x-font-ttf":["ttf"],"application/vnd.ms-excel.sheet.binary.macroEnabled.12":["xlsb"],"application/x-font-opentype":["otf"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/x-bzip2":["bz2"],"application/json":["json"],"application/pdf":["pdf"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.ms-fontobject":["eot"],"application/xml-dtd":["dtd"],"application/x-shockwave-flash":["swf"],"image/gif":["gif"],"image/jpg":["jpg"],"application/xml":["xml"],"application/vnd.ms-excel":["xls"],"image/tiff":["tiff"],"application/vnd.ms-powerpoint":["ppt"],"application/font-woff":["woff"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"text/plain":["txt","text"],"application/x-tar":["tgz"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/x-gzip":["gz"],"text/javascript":["js"],"text/html":["html","htm"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"image/x-icon":["ico"],"application/x-compressed-zip":["zip"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"text/css":["css"],"application/msword":["doc"]}}),module.define("org/arangodb/replication",function(a,b){"use strict";var c=require("internal"),d=require("org/arangodb/arangosh"),e={},f={};e.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/logger-state");return d.checkRequestResult(b),b},f.start=function(a){var b=c.db,e="";void 0!==a&&(e="?from="+encodeURIComponent(a));var f=b._connection.PUT("/_api/replication/applier-start"+e,"");return d.checkRequestResult(f),f},f.stop=f.shutdown=function(){var a=c.db,b=a._connection.PUT("/_api/replication/applier-stop","");return d.checkRequestResult(b),b},f.state=function(){var a=c.db,b=a._connection.GET("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.forget=function(){var a=c.db,b=a._connection.DELETE("/_api/replication/applier-state");return d.checkRequestResult(b),b},f.properties=function(a){var b,e=c.db;return b=void 0===a?e._connection.GET("/_api/replication/applier-config"):e._connection.PUT("/_api/replication/applier-config",JSON.stringify(a)),d.checkRequestResult(b),b};var g=function(a){var b=c.db,e=JSON.stringify(a||{}),f=b._connection.PUT("/_api/replication/sync",e);return d.checkRequestResult(f),f},h=function(){var a=c.db,b=a._connection.GET("/_api/replication/server-id");return d.checkRequestResult(b),b.serverId};a.logger=e,a.applier=f,a.sync=g,a.serverId=h}),module.define("org/arangodb/simple-query-common",function(a,b){function c(a,b,c,d){this._documents=a,this._countTotal=a.length,this._skip=b,this._limit=c,this._cached=!1,this._extra={};var e=this;null!==d&&void 0!==d&&"object"==typeof d&&(["stats","warnings","profile"].forEach(function(a){d.hasOwnProperty(a)&&(e._extra[a]=d[a])}),this._cached=d.cached||!1),this.execute()}function d(){this._execution=null,this._skip=0,this._limit=null,this._countQuery=null,this._countTotal=null,this._batchSize=null}function e(a,b){return 0===a._limit?a=a.clone():0===b?(a=a.clone(),a._limit=0):null===a._limit?(a=a.clone(),a._limit=b):(a=a.clone(),bc&&(b=c);else if(this._skip<0){var d=-this._skip;c>d&&(b=c-d)}null!==this._limit&&b+this._limita){var b=new q;throw b.errorNum=p.ERROR_BAD_PARAMETER,b.errorMessage="limit must be non-negative",b}return e(this,a)},d.prototype.skip=function(a){var b,c;if((void 0===a||null===a)&&(a=0),null!==this._execution)throw"query is already executing";return null===this._limit?(b=this.clone(),null===this._skip||0===this._skip?b._skip=a:b._skip+=a):(c=this.clone().toArray(),b=new l(c),b._skip=a,b._countTotal=c._countTotal),b},d.prototype.toArray=function(){var a;for(this.execute(),a=[];this.hasNext();)a.push(this.next());return a},d.prototype.getBatchSize=function(){return this._batchSize},d.prototype.setBatchSize=function(a){a>=1&&(this._batchSize=a)},d.prototype.count=function(a){return this.execute(),void 0!==a&&a?this._countQuery:this._countTotal},d.prototype.hasNext=function(){return this.execute(),this._execution.hasNext()},d.prototype.next=function(){return this.execute(),this._execution.next()},d.prototype.dispose=function(){null!==this._execution&&this._execution.dispose(),this._execution=null,this._countQuery=null,this._countTotal=null},f.prototype=new d,f.prototype.constructor=f,f.prototype.clone=function(){var a;return a=new f(this._collection),a._skip=this._skip,a._limit=this._limit,a},f.prototype._PRINT=function(a){var b;b="SimpleQueryAll("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},l=function(a){this._documents=a},l.prototype=new d,l.prototype.constructor=l,l.prototype.clone=function(){var a;return a=new l(this._documents),a._skip=this._skip,a._limit=this._limit,a},l.prototype.execute=function(){null===this._execution&&(null===this._skip&&(this._skip=0),this._execution=new c(this._documents,this._skip,this._limit))},l.prototype._PRINT=function(a){var b;b="SimpleQueryArray(documents)",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},g.prototype=new d,g.prototype.constructor=g,g.prototype.clone=function(){var a;return a=new g(this._collection,this._example),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},g.prototype._PRINT=function(a){var b;b="SimpleQueryByExample("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},h.prototype=new d,h.prototype.constructor=h,h.prototype.clone=function(){var a;return a=new h(this._collection,this._condition),a._skip=this._skip,a._limit=this._limit,a._type=this._type,a._index=this._index,a},h.prototype._PRINT=function(a){var b;b="SimpleQueryByCondition("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},i.prototype=new d,i.prototype.constructor=i,i.prototype.clone=function(){var a;return a=new i(this._collection,this._attribute,this._left,this._right,this._type),a._skip=this._skip,a._limit=this._limit,a},i.prototype._PRINT=function(a){var b;b="SimpleQueryRange("+this._collection.name()+")",null!==this._skip&&0!==this._skip&&(b+=".skip("+this._skip+")"),null!==this._limit&&(b+=".limit("+this._limit+")"),a.output+=b},j.prototype._PRINT=function(a){var b;b="GeoIndex("+this._collection.name()+", "+this._index+")",a.output+=b},j.prototype.near=function(a,b){return new m(this._collection,a,b,this._index)},j.prototype.within=function(a,b,c){return new n(this._collection,a,b,c,this._index)},j.prototype.withinRectangle=function(a,b,c,d){return new o(this._collection,a,b,c,d,this._index)},m=function(a,b,c,d){var e,f;if(this._collection=a,this._latitude=b,this._longitude=c,this._index=void 0===d?null:d,this._distance=null,void 0===d)for(e=a.getIndexes(),f=0;f0&&(this._batchSize=a);var b={collection:this._collection.name()};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/all",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},i.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),example:this._example};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-example";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"hash":e="by-example-hash";break;case"skiplist":e="by-example-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},j.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),condition:this._condition};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e="by-condition";if(this.hasOwnProperty("_type"))switch(b.index=this._index,this._type){case"skiplist":e="by-condition-skiplist"}var f=this._collection._database._connection.PUT("/_api/simple/"+e,JSON.stringify(b));c.checkRequestResult(f),this._execution=new d(this._collection._database,f),f.hasOwnProperty("count")&&(this._countQuery=f.count,this._countTotal=f.count)}},n.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,right:this._right,left:this._left,closed:1===this._type};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/range",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},m.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/near",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},o.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude:this._latitude,longitude:this._longitude,radius:this._radius};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},p.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),latitude1:this._latitude1,longitude1:this._longitude1,latitude2:this._latitude2,longitude2:this._longitude2};null!==this._limit&&(b.limit=this._limit),null!==this._skip&&(b.skip=this._skip),null!==this._index&&(b.geo=this._index),null!==this._distance&&(b.distance=this._distance),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/within-rectangle",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},k.prototype.execute=function(a){if(null===this._execution){void 0!==a&&a>0&&(this._batchSize=a);var b={collection:this._collection.name(),attribute:this._attribute,query:this._query};null!==this._limit&&(b.limit=this._limit),null!==this._index&&(b.index=this._index),null!==this._skip&&(b.skip=this._skip),null!==this._batchSize&&(b.batchSize=this._batchSize);var e=this._collection._database._connection.PUT("/_api/simple/fulltext",JSON.stringify(b));c.checkRequestResult(e),this._execution=new d(this._collection._database,e),e.hasOwnProperty("count")&&(this._countQuery=e.count)}},a.GeneralArrayCursor=f,a.SimpleQueryAll=g,a.SimpleQueryArray=h,a.SimpleQueryByExample=i,a.SimpleQueryByCondition=j,a.SimpleQueryFulltext=k,a.SimpleQueryGeo=l,a.SimpleQueryNear=m,a.SimpleQueryRange=n,a.SimpleQueryWithin=o,a.SimpleQueryWithinRectangle=p}),module.define("org/arangodb/tutorial",function(a,b){var c=0,d="Type 'tutorial' again to get to the next chapter.",e=[{title:"Welcome to the tutorial!",text:"This is a user-interactive tutorial on ArangoDB and the ArangoDB shell.\nIt will give you a first look into ArangoDB and how it works."},{title:"JavaScript Shell",text:"On this shell's prompt, you can issue arbitrary JavaScript commands.\nSo you are able to do things like...:\n\n number = 123;\n number = number * 10;"},{title:"Running Complex Instructions",text:"You can also run more complex instructions, such as for loops:\n\n for (i = 0; i < 10; i++) { number = number + 1; }"},{title:"Printing Results",text:'As you can see, the result of the last command executed is printed automatically. To explicitly print a value at any other time, there is the print function:\n\n for (i = 0; i < 5; ++i) { print("I am a JavaScript shell"); }'},{title:"Creating Collections",text:"ArangoDB is a document database. This means that we store data as documents (which are similar to JavaScript objects) in so-called 'collections'. Let's create a collection named 'places' now:\n\n db._create('places');\n\nNote: each collection is identified by a unique name. Trying to create a collection that already exists will produce an error."},{title:"Displaying Collections",text:"Now you can take a look at the collection(s) you just created:\n\n db._collections();\n\nPlease note that all collections will be returned, including ArangoDB's pre-defined system collections."},{title:"Creating Documents",text:'Now we have a collection, but it is stil empty. So let\'s create some documents!\n\n db.places.save({ _key : "foo", city : "foo-city" });\n for (i = 0; i <= 10; i++) { db.places.save({ _key: "example" + i, zipcode: i }) };'},{title:"Displaying All Documents",text:"You want to take a look at your docs? No problem:\n\n db.places.toArray();"},{title:"Counting Documents",text:"To see how many documents there are in a collection, use the 'count' method:\n\n db.places.count();"},{title:"Retrieving Single Documents",text:"As you can see, each document has some meta attributes '_id', '_key' and '_rev'.\nThe '_key' attribute can be used to quickly retrieve a single document from a collection:\n\n db.places.document(\"foo\");\n db.places.document(\"example5\");"},{title:"Retrieving Single Documents",text:"The '_id' attribute can also be used to retrieve documents using the 'db' object:\n\n db._document(\"places/foo\");\n db._document(\"places/example5\");"},{title:"Modifying Documents",text:'You can modify existing documents. Try to add a new attribute to a document and verify whether it has been added:\n\n db._update("places/foo", { zipcode: 39535 });\n db._document("places/foo");'},{title:"Document Revisions",text:"Note that after updating the document, its '_rev' attribute changed automatically.\nThe '_rev' attribute contains a document revision number, and it can be used for conditional modifications. Here's an example of how to avoid lost updates in case multiple clients are accessing the documents in parallel:\n\n doc = db._document(\"places/example1\");\n db._update(\"places/example1\", { someValue: 23 });\n db._update(doc, { someValue: 42 });\n\nNote that the first update will succeed because it was unconditional. The second update however is conditional because we're also passing the document's revision id in the first parameter to _update. As the revision id we're passing to update does not match the document's current revision anymore, the update is rejected."},{title:"Removing Documents",text:'Deleting single documents can be achieved by providing the document _id or _key:\n\n db._remove("places/example7");\n db.places.remove("example8");\n db.places.count();'},{title:"Searching Documents",text:'Searching for documents with specific attributes can be done by using the byExample method:\n\n db._create("users");\n for (i = 0; i < 10; ++i) { db.users.save({ name: "username" + i, active: (i % 3 == 0), age: 30 + i }); }\n db.users.byExample({ active: false }).toArray();\n db.users.byExample({ name: "username3", active: true }).toArray();\n'},{title:"Running AQL Queries",text:'ArangoDB also provides a query language for more complex matching:\n\n db._query("FOR u IN users FILTER u.active == true && u.age >= 33 RETURN { username: u.name, age: u.age }").toArray();'},{title:"Using Databases",text:"By default, the ArangoShell connects to the default database. The default database is named '_system'. To create another database, use the '_createDatabase' method of the 'db' object. To switch into an existing database, use '_useDatabase'. To get rid of a database and all of its collections, use '_dropDatabase':\n\n db._createDatabase(\"mydb\");\n db._useDatabase(\"mydb\");\n db._dropDatabase(\"mydb\");"}];a._PRINT=function(a){function b(a){return a.replace(/\n {2}(.+?)(?=\n)/g,"\n "+f.COLOR_MAGENTA+"$1"+f.COLOR_RESET)}var f=require("internal").COLORS,g=f.COLOR_BOLD_BLUE+(c+1)+". "+e[c].title+f.COLOR_RESET;a.output+="\n\n"+g+"\n\n"+b(e[c].text+"\n")+"\n",++c,c>=e.length?(a.output+="Congratulations! You finished the tutorial.\n",c=0):a.output+=d+"\n"}}),module.define("org/arangodb-common",function(a,b){"use strict";var c=require("internal"),d=require("fs"),e=require("org/arangodb/mimetypes").mimeTypes;Object.keys(c.errors).forEach(function(b){a[b]=c.errors[b].code}),a.errors=c.errors,a.ArangoError=c.ArangoError,a.defineModule=function(a,e){var f,g,h;f=d.read(e),h=c.db._collection("_modules"),null===h&&(h=c.db._create("_modules",{isSystem:!0})),a=b.normalize(a),g=h.firstExample({path:a}),null===g?h.save({path:a,content:f}):h.replace(g,{path:a,content:f})},a.guessContentType=function(a,b){var c=/\.([a-zA-Z0-9]+)$/,d=c.exec(a);if(null!==d){var f=d[1];if(e.hasOwnProperty(f)){var g=e[f];return g[1]?g[0]+"; charset=utf-8":g[0]}}return b?b:"text/plain; charset=utf-8"},a.normalizeURL=function(a){var b,c,d,e,f,g;if(""===a)return"./";for(d=a.split("/"),"."===d[0]||".."===d[0]?(f=d[0]+"/",d.shift(),e=d):""===d[0]?(f="/",d.shift(),e=d):(f="./",e=d),c=[],b=0;b0&&(l=d[h]>=k.length?d[h]:k.length);var m=h;e.hasOwnProperty("rename")&&e.rename.hasOwnProperty(h)&&(m=e.rename[h]),f.push({id:h,fixedLength:l,length:l||m.length}),g[0][j++]=m}b.forEach(function(a,b){g[b+1]=[],f.forEach(function(c){if(a.hasOwnProperty(c.id)){var d;d=e.prettyStrings&&"string"==typeof a[c.id]?a[c.id]:JSON.stringify(a[c.id])||"",g[b+1].push(d),d.length>c.length&&!c.fixedLength&&(c.length=Math.min(d.length,100))}else g[b+1].push("")})});var n=function(){var b=[];return f.forEach(function(c){b.push(a.stringPadding("",c.length,"-","r"))}),e.framed?"+-"+b.join("-+-")+"-+\n":b.join(" ")+"\n"},o=function(){var d="";return e.framed&&(d+=n()),g.forEach(function(b,c){var g=[];b.forEach(function(c,d){var e=f[d].length,h=b[d];h.length>e&&(h=h.substr(0,e-k.length)+k),g.push(a.stringPadding(h,e," ","r"))}),d+=e.framed?"| "+g.join(" | ")+" |\n":g.join(" ")+"\n",0===c&&(d+=n())}),d+=n(),e.hideTotal||(d+=c.sprintf(e.totalString,String(b.length))),d};Array.isArray(b)&&(0===b.length?a.print(e.emptyString||"no document(s)"):a.print(o()))},a.stringPadding=function(a,b,c,d){function e(a,b){var c,d="";for(c=0;a>c;++c)d+=b;return d}if("undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=" "),b+1>=a.length)switch(d||"r"){case"l":a=e(b+1-a.length,c)+a;break;case"b":var f=b-a.length,g=Math.ceil(f/2),h=f-g;a=e(h+1,c)+a+e(g+1,c);break;default:a+=e(b+1-a.length,c)}return a},a.throwDownloadError=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.code,errorMessage:a.errors.ERROR_APPLICATION_DOWNLOAD_FAILED.message+": "+String(b)})},a.throwFileNotFound=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_FILE_NOT_FOUND.code,errorMessage:a.errors.ERROR_FILE_NOT_FOUND.message+": "+String(b)})},a.throwBadParameter=function(b){throw new a.ArangoError({errorNum:a.errors.ERROR_BAD_PARAMETER.code,errorMessage:a.errors.ERROR_BAD_PARAMETER.message+": "+String(b)})},a.checkParameter=function(b,c,d){var e;for(e=0;ec?"\\u000":256>c?"\\u00":4096>c?"\\u0":"\\u",b+=c.toString(16),i[a]=b,b}function b(b){return'"'+b.replace(n,a)+'"'}function c(a){var b,c="";if(a.prettyPrint)for(c+="\n",b=0;b=b.emit&&(h.output(b.output),b.output=""),b.path=i,g=", "}b.level=f-1,b.output+=" ",c(b),d&&(b.output+=j.COLOR_PUNCTUATION),b.output+="]",d&&(b.output+=j.COLOR_RESET)}}function e(a,d){var e=d.useColor,f=" ";e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="{",e&&(d.output+=j.COLOR_RESET);var g=d.level+1;d.level=g;var i;try{i=Object.keys(a)}catch(k){i=[]}var l,n=i.length;for(l=0;n>l;++l){var o=i[l],p=a[o];e&&(d.output+=j.COLOR_PUNCTUATION),d.output+=f,e&&(d.output+=j.COLOR_RESET),c(d),e&&(d.output+=j.COLOR_INDEX),d.output+=b(o),e&&(d.output+=j.COLOR_RESET),d.output+=" : ";var q=d.path;d.path+="["+o+"]",m(p,d),d.path=q,f=", ",d.emit&&d.output.length>=d.emit&&(h.output(d.output),d.output="")}d.level=g-1,d.output+=" ",c(d),e&&(d.output+=j.COLOR_PUNCTUATION),d.output+="}",e&&(d.output+=j.COLOR_RESET)}function f(){var a;for(a=0;a0&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var c={customInspect:!0,emit:16384,level:0,limitString:80,names:[],output:"",path:"~",prettyPrint:l,seen:[],showFunction:!1,useColor:k,useToString:!0};m(arguments[a],c),b(c.output)}b("\n")}var h=require("internal");global.ArangoError?(h.ArangoError=global.ArangoError,delete global.ArangoError):(h.ArangoError=function(a){void 0!==a&&(this.error=a.error,this.code=a.code,this.errorNum=a.errorNum,this.errorMessage=a.errorMessage),this.message=this.toString()},h.ArangoError.prototype=new Error),h.ArangoError.prototype._PRINT=function(a){a.output+=this.toString()},h.ArangoError.prototype.toString=function(){var a=this.errorNum,b=this.errorMessage||this.message;return"[ArangoError "+a+": "+b+"]"},global.SleepAndRequeue&&(h.SleepAndRequeue=global.SleepAndRequeue,delete global.SleepAndRequeue,h.SleepAndRequeue.prototype._PRINT=function(a){a.output+=this.toString()},h.SleepAndRequeue.prototype.toString=function(){return"[SleepAndRequeue sleep: "+this.sleep+"]"}),h.threadNumber=0,global.THREAD_NUMBER&&(h.threadNumber=global.THREAD_NUMBER,delete global.THREAD_NUMBER),h.developmentMode=!1,global.LOGFILE_PATH&&(h.logfilePath=global.LOGFILE_PATH,delete global.LOGFILE_PATH),h.quiet=!1,global.ARANGO_QUIET&&(h.quiet=global.ARANGO_QUIET,delete global.ARANGO_QUIET),h.valgrind=!1,global.VALGRIND&&(h.valgrind=global.VALGRIND,delete global.VALGRIND),h.coverage=!1,global.COVERAGE&&(h.coverage=global.COVERAGE,delete global.COVERAGE),h.version="unknown",global.VERSION&&(h.version=global.VERSION,delete global.VERSION),h.platform="unknown",global.SYS_PLATFORM&&(h.platform=global.SYS_PLATFORM,delete global.SYS_PLATFORM),h.bytesSentDistribution=[],global.BYTES_SENT_DISTRIBUTION&&(h.bytesSentDistribution=global.BYTES_SENT_DISTRIBUTION,delete global.BYTES_SENT_DISTRIBUTION),h.bytesReceivedDistribution=[],global.BYTES_RECEIVED_DISTRIBUTION&&(h.bytesReceivedDistribution=global.BYTES_RECEIVED_DISTRIBUTION,delete global.BYTES_RECEIVED_DISTRIBUTION),h.connectionTimeDistribution=[],global.CONNECTION_TIME_DISTRIBUTION&&(h.connectionTimeDistribution=global.CONNECTION_TIME_DISTRIBUTION,delete global.CONNECTION_TIME_DISTRIBUTION),h.requestTimeDistribution=[],global.REQUEST_TIME_DISTRIBUTION&&(h.requestTimeDistribution=global.REQUEST_TIME_DISTRIBUTION,delete global.REQUEST_TIME_DISTRIBUTION),h.startupPath="",global.STARTUP_PATH&&(h.startupPath=global.STARTUP_PATH,delete global.STARTUP_PATH),""===h.startupPath&&(h.startupPath="."),global.CONFIGURE_ENDPOINT&&(h.configureEndpoint=global.CONFIGURE_ENDPOINT,delete global.CONFIGURE_ENDPOINT),global.REMOVE_ENDPOINT&&(h.removeEndpoint=global.REMOVE_ENDPOINT,delete global.REMOVE_ENDPOINT),global.LIST_ENDPOINTS&&(h.listEndpoints=global.LIST_ENDPOINTS,delete global.LIST_ENDPOINTS),global.SYS_BASE64DECODE&&(h.base64Decode=global.SYS_BASE64DECODE,delete global.SYS_BASE64DECODE),global.SYS_BASE64ENCODE&&(h.base64Encode=global.SYS_BASE64ENCODE,delete global.SYS_BASE64ENCODE),global.SYS_DEBUG_SEGFAULT&&(h.debugSegfault=global.SYS_DEBUG_SEGFAULT,delete global.SYS_DEBUG_SEGFAULT),global.SYS_DEBUG_SET_FAILAT&&(h.debugSetFailAt=global.SYS_DEBUG_SET_FAILAT,delete global.SYS_DEBUG_SET_FAILAT),global.SYS_DEBUG_REMOVE_FAILAT&&(h.debugRemoveFailAt=global.SYS_DEBUG_REMOVE_FAILAT,delete global.SYS_DEBUG_REMOVE_FAILAT),global.SYS_DEBUG_CLEAR_FAILAT&&(h.debugClearFailAt=global.SYS_DEBUG_CLEAR_FAILAT,delete global.SYS_DEBUG_CLEAR_FAILAT),global.SYS_DEBUG_CAN_USE_FAILAT&&(h.debugCanUseFailAt=global.SYS_DEBUG_CAN_USE_FAILAT,delete global.SYS_DEBUG_CAN_USE_FAILAT),global.SYS_DOWNLOAD&&(h.download=global.SYS_DOWNLOAD,delete global.SYS_DOWNLOAD),global.SYS_EXECUTE&&(h.executeScript=global.SYS_EXECUTE,delete global.SYS_EXECUTE),global.SYS_GET_CURRENT_REQUEST&&(h.getCurrentRequest=global.SYS_GET_CURRENT_REQUEST,delete global.SYS_GET_CURRENT_REQUEST),global.SYS_GET_CURRENT_RESPONSE&&(h.getCurrentResponse=global.SYS_GET_CURRENT_RESPONSE,delete global.SYS_GET_CURRENT_RESPONSE),h.extend=function(a,b){return Object.getOwnPropertyNames(b).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))}),a},global.SYS_LOAD&&(h.load=global.SYS_LOAD,delete global.SYS_LOAD),global.SYS_LOG_LEVEL&&(h.logLevel=global.SYS_LOG_LEVEL,delete global.SYS_LOG_LEVEL),global.SYS_MD5&&(h.md5=global.SYS_MD5,delete global.SYS_MD5),global.SYS_GEN_RANDOM_NUMBERS&&(h.genRandomNumbers=global.SYS_GEN_RANDOM_NUMBERS,delete global.SYS_GEN_RANDOM_NUMBERS),global.SYS_GEN_RANDOM_ALPHA_NUMBERS&&(h.genRandomAlphaNumbers=global.SYS_GEN_RANDOM_ALPHA_NUMBERS,delete global.SYS_GEN_RANDOM_ALPHA_NUMBERS),global.SYS_GEN_RANDOM_SALT&&(h.genRandomSalt=global.SYS_GEN_RANDOM_SALT,delete global.SYS_GEN_RANDOM_SALT),global.SYS_HMAC&&(h.hmac=global.SYS_HMAC,delete global.SYS_HMAC),global.SYS_PBKDF2&&(h.pbkdf2=global.SYS_PBKDF2,delete global.SYS_PBKDF2),global.SYS_CREATE_NONCE&&(h.createNonce=global.SYS_CREATE_NONCE,delete global.SYS_CREATE_NONCE),global.SYS_CHECK_AND_MARK_NONCE&&(h.checkAndMarkNonce=global.SYS_CHECK_AND_MARK_NONCE,delete global.SYS_CHECK_AND_MARK_NONCE),global.SYS_OUTPUT&&(h.stdOutput=global.SYS_OUTPUT,h.output=h.stdOutput,delete global.SYS_OUTPUT),global.SYS_PARSE&&(h.parse=global.SYS_PARSE,delete global.SYS_PARSE),global.SYS_PARSE_FILE&&(h.parseFile=global.SYS_PARSE_FILE,delete global.SYS_PARSE_FILE),global.SYS_PROCESS_STATISTICS&&(h.processStatistics=global.SYS_PROCESS_STATISTICS,delete global.SYS_PROCESS_STATISTICS),global.SYS_RAND&&(h.rand=global.SYS_RAND,delete global.SYS_RAND),global.SYS_SHA512&&(h.sha512=global.SYS_SHA512,delete global.SYS_SHA512),global.SYS_SHA384&&(h.sha384=global.SYS_SHA384,delete global.SYS_SHA384),global.SYS_SHA256&&(h.sha256=global.SYS_SHA256,delete global.SYS_SHA256),global.SYS_SHA224&&(h.sha224=global.SYS_SHA224,delete global.SYS_SHA224),global.SYS_SHA1&&(h.sha1=global.SYS_SHA1,delete global.SYS_SHA1),global.SYS_SERVER_STATISTICS&&(h.serverStatistics=global.SYS_SERVER_STATISTICS,delete global.SYS_SERVER_STATISTICS),global.SYS_SLEEP&&(h.sleep=global.SYS_SLEEP,delete global.SYS_SLEEP),global.SYS_TIME&&(h.time=global.SYS_TIME,delete global.SYS_TIME),global.SYS_WAIT&&(h.wait=global.SYS_WAIT,delete global.SYS_WAIT),global.SYS_IMPORT_CSV_FILE&&(h.importCsvFile=global.SYS_IMPORT_CSV_FILE,delete global.SYS_IMPORT_CSV_FILE),global.SYS_IMPORT_JSON_FILE&&(h.importJsonFile=global.SYS_IMPORT_JSON_FILE,delete global.SYS_IMPORT_JSON_FILE),global.SYS_PROCESS_CSV_FILE&&(h.processCsvFile=global.SYS_PROCESS_CSV_FILE,delete global.SYS_PROCESS_CSV_FILE),global.SYS_PROCESS_JSON_FILE&&(h.processJsonFile=global.SYS_PROCESS_JSON_FILE,delete global.SYS_PROCESS_JSON_FILE),global.SYS_CLIENT_STATISTICS&&(h.clientStatistics=global.SYS_CLIENT_STATISTICS,delete global.SYS_CLIENT_STATISTICS),global.SYS_HTTP_STATISTICS&&(h.httpStatistics=global.SYS_HTTP_STATISTICS,delete global.SYS_HTTP_STATISTICS),global.SYS_EXECUTE_EXTERNAL&&(h.executeExternal=global.SYS_EXECUTE_EXTERNAL,delete global.SYS_EXECUTE_EXTERNAL),global.SYS_EXECUTE_EXTERNAL_AND_WAIT&&(h.executeExternalAndWait=global.SYS_EXECUTE_EXTERNAL_AND_WAIT,delete global.SYS_EXECUTE_EXTERNAL_AND_WAIT),global.SYS_KILL_EXTERNAL&&(h.killExternal=global.SYS_KILL_EXTERNAL,delete global.SYS_KILL_EXTERNAL),global.SYS_STATUS_EXTERNAL&&(h.statusExternal=global.SYS_STATUS_EXTERNAL,delete global.SYS_STATUS_EXTERNAL),global.SYS_REGISTER_TASK&&(h.registerTask=global.SYS_REGISTER_TASK,delete global.SYS_REGISTER_TASK),global.SYS_UNREGISTER_TASK&&(h.unregisterTask=global.SYS_UNREGISTER_TASK,delete global.SYS_UNREGISTER_TASK),global.SYS_GET_TASK&&(h.getTask=global.SYS_GET_TASK,delete global.SYS_GET_TASK),global.SYS_TEST_PORT&&(h.testPort=global.SYS_TEST_PORT,delete global.SYS_TEST_PORT),global.SYS_IS_IP&&(h.isIP=global.SYS_IS_IP,delete global.SYS_IS_IP),h.unitTests=function(){return global.SYS_UNIT_TESTS},h.setUnitTestsResult=function(a){global.SYS_UNIT_TESTS_RESULT=a},h.toArgv=function(a,b){"undefined"==typeof b&&(b=!1);var c=[];for(var d in a)if(a.hasOwnProperty(d))if("commandSwitches"===d){for(var e="",f=0;f1?c.push(a[d][f]):e+=a[d][f];e.length>0&&c.push(e)}else"flatCommands"===d?c=c.concat(a[d]):b?c.push("--"+d+"="+a[d]):(c.push("--"+d),a[d]!==!1?a[d]!==!0?c.push(a[d]):c.push("true"):c.push("false"));return c},h.parseArgv=function(a,b){function c(b,d,e){if(d.indexOf(":")>0){var f=d.indexOf(":"),g=d.slice(0,f);b.hasOwnProperty(g)||(b[g]={}),c(b[g],d.slice(f+1,d.length),e)}else"true"===a[i+1]?b[d]=!0:"false"===a[i+1]?b[d]=!1:isNaN(a[i+1])?b[d]=a[i+1]:b[d]=parseInt(a[i+1])}function d(a,b){a.hasOwnProperty("commandSwitches")||(a.commandSwitches=[]),a.commandSwitches.push(b)}function e(a,b){for(var c=0;c2&&"--"===j.slice(0,2)){var k=j.slice(2,j.length);a.length>i&&"-"!==a[i+1].slice(0,1)?(c(h,k,a[i+1]),i++):d(h,k)}else"--"===j?g=!0:j.length>1&&"-"===j.slice(0,1)?e(h,j.slice(1,j.length)):f(h,j)}return h},h.COLORS={},global.COLORS?(h.COLORS=global.COLORS,delete global.COLORS):["COLOR_RED","COLOR_BOLD_RED","COLOR_GREEN","COLOR_BOLD_GREEN","COLOR_BLUE","COLOR_BOLD_BLUE","COLOR_YELLOW","COLOR_BOLD_YELLOW","COLOR_WHITE","COLOR_BOLD_WHITE","COLOR_CYAN","COLOR_BOLD_CYAN","COLOR_MAGENTA","COLOR_BOLD_MAGENTA","COLOR_BLACK","COLOR_BOLD_BLACK","COLOR_BLINK","COLOR_BRIGHT","COLOR_RESET"].forEach(function(a){h.COLORS[a]=""}),h.COLORS.COLOR_PUNCTUATION=h.COLORS.COLOR_RESET,h.COLORS.COLOR_STRING=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NUMBER=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_INDEX=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_TRUE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_FALSE=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_NULL=h.COLORS.COLOR_BRIGHT,h.COLORS.COLOR_UNDEFINED=h.COLORS.COLOR_BRIGHT;var i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},j=h.COLORS,k=!1;global.COLOR_OUTPUT&&(k=global.COLOR_OUTPUT,delete global.COLOR_OUTPUT);var l=!1;global.PRETTY_PRINT&&(l=global.PRETTY_PRINT,delete global.PRETTY_PRINT);var m,n=/[\\\"\x00-\x1f]/g,o=/function ([^\(]*)?\(\) \{ \[native code\] \}/,p=/function ([^\(]*)?\((.*)\) \{/;h.printRecursive=m=function(a,c){var f=c.useColor,g=c.customInspect,i=c.useToString,k=c.limitString,l=c.showFunction;"undefined"==typeof c.seen&&(c.seen=[],c.names=[]);var m=c.seen.indexOf(a);if(m>=0)c.output+=c.names[m];else if(a&&(a instanceof Object||"object"==typeof a&&null===Object.getPrototypeOf(a)))if(c.seen.push(a),c.names.push(c.path),g&&"function"==typeof a._PRINT)a._PRINT(c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="");else if(a instanceof Array)d(a,c);else if(a.toString===Object.prototype.toString||"object"==typeof a&&null===Object.getPrototypeOf(a)){var n=!1;try{(a instanceof Set||a instanceof Map||a instanceof WeakSet||a instanceof WeakMap||"function"==typeof a[Symbol.iterator])&&(c.output+=a.toString(),n=!0)}catch(q){}n||e(a,c),c.emit&&c.output.length>=c.emit&&(h.output(c.output),c.output="")}else if("function"==typeof a)try{var r=a.toString();if(00&&b(" "),"string"==typeof arguments[a])b(arguments[a]);else{var d={names:[],seen:[],path:"~",level:0,output:"",prettyPrint:!1,useColor:!1,customInspect:!0};c(arguments[a],d),b(d.output)}b("\n")},global.start_pretty_print=function(){require("internal").startPrettyPrint()},global.stop_pretty_print=function(){require("internal").stopPrettyPrint()},global.start_color_print=function(a){require("internal").startColorPrint(a,!1)},global.stop_color_print=function(){require("internal").stopColorPrint()}}(),function(){var a=require("internal");global.ArangoConnection&&(a.ArangoConnection=global.ArangoConnection,delete global.ArangoConnection),global.SYS_ARANGO&&(a.arango=global.SYS_ARANGO,delete global.SYS_ARANGO),a.wal={flush:function(b,c){if(a.arango){var d=b?"true":"false",e=c?"true":"false";return void a.arango.PUT("/_admin/wal/flush?waitForSync="+d+"&waitForCollector="+e,"")}throw"not connected"},properties:function(b){if(a.arango)return void 0!==b?a.arango.PUT("/_admin/wal/properties",JSON.stringify(b)):a.arango.GET("/_admin/wal/properties","");throw"not connected"}},a.reloadAqlFunctions=function(){if(a.arango)return void a.arango.POST("/_admin/aql/reload","");throw"not connected"},a.reloadRouting=function(){if(a.arango)return void a.arango.POST("/_admin/routing/reload","");throw"not connected"},a.routingCache=function(){if(a.arango)return a.arango.GET("/_admin/routing/routes","");throw"not connected"},a.reloadAuth=function(){if(a.arango)return void a.arango.POST("/_admin/auth/reload","");throw"not connected"},a.executeServer=function(b){if(a.arango)return a.arango.POST("/_admin/execute",b);throw"not connected"},a.appendCurlRequest=function(b){return function(c,d,e,f){var g,h,i;if("string"!=typeof e&&void 0!==e&&(e=a.inspect(e)),h="shell> curl ","POST"===c?(g=a.arango.POST_RAW(d,e,f),h+="-X "+c+" "):"PUT"===c?(g=a.arango.PUT_RAW(d,e,f),h+="-X "+c+" "):"GET"===c?g=a.arango.GET_RAW(d,f):"DELETE"===c?(g=a.arango.DELETE_RAW(d,f),h+="-X "+c+" "):"PATCH"===c?(g=a.arango.PATCH_RAW(d,e,f),h+="-X "+c+" "):"HEAD"===c?(g=a.arango.HEAD_RAW(d,f),h+="-X "+c+" "):"OPTION"===c&&(g=a.arango.OPTION_RAW(d,e,f),h+="-X "+c+" "),void 0!==f&&""!==f)for(i in f)f.hasOwnProperty(i)&&(h+="--header '"+i+": "+f[i]+"' ");return void 0!==e&&""!==e&&(h+="--data-binary @- "),h+="--dump - http://localhost:8529"+d,b(h),void 0!==e&&""!==e&&e&&(b(" <=b)return String(a);var c,d=[];for(c=1;cc;++c)b+="\n";a.print(b)},global.console=global.console||require("console"),global.db=require("org/arangodb").db,global.arango=require("org/arangodb").arango,global.fm=require("org/arangodb/foxx/manager"),global.ArangoStatement=require("org/arangodb/arango-statement").ArangoStatement,global.tutorial=require("org/arangodb/tutorial");var initHelp=function(){var a=require("internal");if(a.db)try{a.db._collections()}catch(b){}a.quiet!==!0&&(require("org/arangodb").checkAvailableVersions(),a.arango&&a.arango.isConnected&&a.arango.isConnected()&&a.print("Type 'tutorial' for a tutorial or 'help' to see common examples"))};if("undefined"==typeof window){if(initHelp(),global.IS_EXECUTE_SCRIPT||global.IS_EXECUTE_STRING||global.IS_CHECK_SCRIPT||global.IS_UNIT_TESTS||global.IS_JS_LINT)try{var __fs__=require("fs"),__rcf__=__fs__.join(__fs__.home(),".arangosh.rc"); +if(__fs__.exists(__rcf__)){var __content__=__fs__.read(__rcf__);eval(__content__)}}catch(e){require("console").warn("arangosh.rc: %s",String(e))}try{delete global.IS_EXECUTE_SCRIPT,delete global.IS_EXECUTE_STRING,delete global.IS_CHECK_SCRIPT,delete global.IS_UNIT_TESTS,delete global.IS_JS_LINT}catch(e){}}!function(){function a(a,b){i(a,g+b)}function b(a){var b=require("internal").ShapedJson,c=[];0a?-1:1}),c={};return _.each(b,function(b){c[b]=a.attributes[b]}),c}}),function(){"use strict";window.ArangoQuery=Backbone.Model.extend({urlRoot:"/_api/user",defaults:{name:"",type:"custom",value:""}})}(),window.Replication=Backbone.Model.extend({defaults:{state:{},server:{}},initialize:function(){}}),window.Statistics=Backbone.Model.extend({defaults:{},url:function(){"use strict";return"/_admin/statistics"}}),window.StatisticsDescription=Backbone.Model.extend({defaults:{figures:"",groups:""},url:function(){"use strict";return"/_admin/statistics-description"}}),window.Users=Backbone.Model.extend({defaults:{user:"",active:!1,extra:{}},idAttribute:"user",parse:function(a){return this.isNotNew=!0,a},isNew:function(){return!this.isNotNew},url:function(){return this.isNew()?"/_api/user":""!==this.get("user")?"/_api/user/"+this.get("user"):"/_api/user"},checkPassword:function(a){var b=!1;return $.ajax({cache:!1,type:"POST",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1,success:function(a){b=a.result}}),b},setPassword:function(a){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({passwd:a}),contentType:"application/json",processData:!1})},setExtras:function(a,b){$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+this.get("user"),data:JSON.stringify({extra:{name:a,img:b}}),contentType:"application/json",processData:!1})}}),function(){"use strict";window.CurrentDatabase=Backbone.Model.extend({url:"/_api/database/current",parse:function(a){return a.result}})}(),function(){"use strict";var a=function(a,b,c,d,e,f){var g={contentType:"application/json",processData:!1,type:c};b=b||function(){},f=_.extend({mount:a.encodedMount()},f);var h=_.reduce(f,function(a,b,c){return a+encodeURIComponent(c)+"="+encodeURIComponent(b)+"&"},"?");g.url="/_admin/aardvark/foxxes"+(d?"/"+d:"")+h.slice(0,h.length-1),void 0!==e&&(g.data=JSON.stringify(e)),$.ajax(g).then(function(a){b(null,a)},function(a){window.xhr=a,b(_.extend(a.status?new Error(a.responseJSON?a.responseJSON.errorMessage:a.responseText):new Error("Network Error"),{statusCode:a.status}))})};window.Foxx=Backbone.Model.extend({idAttribute:"mount",defaults:{author:"Unknown Author",name:"",version:"Unknown Version",description:"No description",license:"Unknown License",contributors:[],scripts:{},config:{},deps:{},git:"",system:!1,development:!1},isNew:function(){return!1},encodedMount:function(){return encodeURIComponent(this.get("mount"))},destroy:function(b,c){a(this,c,"DELETE",void 0,void 0,b)},isBroken:function(){return!1},needsAttention:function(){return this.isBroken()||this.needsConfiguration()||this.hasUnconfiguredDependencies()},needsConfiguration:function(){return _.any(this.get("config"),function(a){return void 0===a.current&&a.required!==!1})},hasUnconfiguredDependencies:function(){return _.any(this.get("deps"),function(a){return void 0===a.current&&a.definition.required!==!1})},getConfiguration:function(b){a(this,function(a,c){a||this.set("config",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","config")},setConfiguration:function(b,c){a(this,c,"PATCH","config",b)},getDependencies:function(b){a(this,function(a,c){a||this.set("deps",c),"function"==typeof b&&b(a,c)}.bind(this),"GET","deps")},setDependencies:function(b,c){a(this,c,"PATCH","deps",b)},toggleDevelopment:function(b,c){a(this,function(a,d){a||this.set("development",b),"function"==typeof c&&c(a,d)}.bind(this),"PATCH","devel",b)},runScript:function(b,c,d){a(this,d,"POST","scripts/"+b,c)},runTests:function(b,c){a(this,function(a,b){"function"==typeof c&&c(a?a.responseJSON:a,b)}.bind(this),"POST","tests",b)},isSystem:function(){return this.get("system")},isDevelopment:function(){return this.get("development")},download:function(){window.open("/_db/"+arango.getDatabaseName()+"/_admin/aardvark/foxxes/download/zip?mount="+this.encodedMount())}})}(),function(){"use strict";window.Graph=Backbone.Model.extend({idAttribute:"_key",urlRoot:"/_api/gharial",isNew:function(){return!this.get("_id")},parse:function(a){return a.graph||a},addEdgeDefinition:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/edge",data:JSON.stringify(a)})},deleteEdgeDefinition:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a})},modifyEdgeDefinition:function(a){$.ajax({async:!1,type:"PUT",url:this.urlRoot+"/"+this.get("_key")+"/edge/"+a.collection,data:JSON.stringify(a)})},addVertexCollection:function(a){$.ajax({async:!1,type:"POST",url:this.urlRoot+"/"+this.get("_key")+"/vertex",data:JSON.stringify({collection:a})})},deleteVertexCollection:function(a){$.ajax({async:!1,type:"DELETE",url:this.urlRoot+"/"+this.get("_key")+"/vertex/"+a})},defaults:{name:"",edgeDefinitions:[],orphanCollections:[]}})}(),function(){"use strict";window.newArangoLog=Backbone.Model.extend({defaults:{lid:"",level:"",timestamp:"",text:"",totalAmount:""},getLogStatus:function(){switch(this.get("level")){case 1:return"Error";case 2:return"Warning";case 3:return"Info";case 4:return"Debug";default:return"Unknown"}}})}(),function(){"use strict";window.Notification=Backbone.Model.extend({defaults:{title:"",date:0,content:"",priority:"",tags:"",seen:!1}})}(),function(){"use strict";window.queryManagementModel=Backbone.Model.extend({defaults:{id:"",query:"",started:"",runTime:""}})}(),function(){"use strict";window.PaginatedCollection=Backbone.Collection.extend({page:0,pagesize:10,totalAmount:0,getPage:function(){return this.page+1},setPage:function(a){return a>=this.getLastPageNumber()?void(this.page=this.getLastPageNumber()-1):1>a?void(this.page=0):void(this.page=a-1)},getLastPageNumber:function(){return Math.max(Math.ceil(this.totalAmount/this.pagesize),1)},getOffset:function(){return this.page*this.pagesize},getPageSize:function(){return this.pagesize},setPageSize:function(a){if("all"===a)this.pagesize="all";else try{a=parseInt(a,10),this.pagesize=a}catch(b){}},setToFirst:function(){this.page=0},setToLast:function(){this.setPage(this.getLastPageNumber())},setToPrev:function(){this.setPage(this.getPage()-1)},setToNext:function(){this.setPage(this.getPage()+1)},setTotal:function(a){this.totalAmount=a},getTotal:function(){return this.totalAmount},setTotalMinusOne:function(){this.totalAmount--}})}(),function(){"use strict";window.Airports=Backbone.Collection.extend({initialize:function(a){this.collectionName=a.collectionName},getAirports:function(a){var b=this;$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for a in airports return {Latitude: a.Latitude, Longitude: a.Longitude, Name: a.Name, City: a.City, _key: a._key}"}),contentType:"application/json",processData:!1,success:function(c){_.each(c.result,function(a){b.add(a)}),a&&a()},error:function(a){}})},getShortestFlight:function(a,b,c){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"RETURN SHORTEST_PATH(@@airports,@@flights,@start,@dest,'outbound',{})",bindVars:{"@flights":this.collectionName,"@airports":"airports",start:"airports/"+a,dest:"airports/"+b}}),contentType:"application/json",processData:!1,success:function(a){c(a.result[0])},error:function(a){}})},getFlightDistribution:function(a){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"FOR f IN @@flights COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(b){a(b.result)},error:function(a){}})},getFlightsForAirport:function(a,b){$.ajax({type:"POST",url:"/_api/cursor",data:JSON.stringify({query:"for f in @@flights filter f._from == @airport COLLECT dest = f._to WITH COUNT INTO n SORT n RETURN {Dest: SPLIT(dest, '/')[1], count: n}",bindVars:{airport:"airports/"+a,"@flights":this.collectionName}}),contentType:"application/json",processData:!1,success:function(a){b(a.result)},error:function(a){}})},model:window.Airport})}(),function(){"use strict";window.arangoCollections=Backbone.Collection.extend({url:"/_api/collection",model:arangoCollectionModel,searchOptions:{searchPhrase:null,includeSystem:!1,includeDocument:!0,includeEdge:!0,includeLoaded:!0,includeUnloaded:!0,sortBy:"name",sortOrder:1},translateStatus:function(a){switch(a){case 0:return"corrupted";case 1:return"new born collection";case 2:return"unloaded";case 3:return"loaded";case 4:return"in the process of being unloaded";case 5:return"deleted";case 6:return"loading";default:return}},translateTypePicture:function(a){var b="";switch(a){case"document":b+="fa-file-text-o";break;case"edge":b+="fa-share-alt";break;case"unknown":b+="fa-question";break;default:b+="fa-cogs"}return b},parse:function(a){var b=this;return _.each(a.collections,function(a){a.isSystem=arangoHelper.isSystemCollection(a),a.type=arangoHelper.collectionType(a),a.status=b.translateStatus(a.status),a.picture=b.translateTypePicture(a.type)}),a.collections},getPosition:function(a){var b,c=this.getFiltered(this.searchOptions),d=null,e=null;for(b=0;b0&&(d=c[b-1]),b0){var e,f=d.get("name").toLowerCase();for(e=0;ed?-1:1):0}),b},newCollection:function(a,b,c,d,e,f,g){var h={},i={};return i.name=a,i.waitForSync=b,d>0&&(i.journalSize=d),i.isSystem=c,i.type=parseInt(e,10),f&&(i.numberOfShards=f,i.shardKeys=g),h.status=!1,$.ajax({cache:!1,type:"POST",url:"/_api/collection",data:JSON.stringify(i),contentType:"application/json",processData:!1,async:!1,success:function(a){h.status=!0,h.data=a},error:function(a){h.status=!1,h.errorMessage=JSON.parse(a.responseText).errorMessage}}),h}})}(),function(){"use strict";window.ArangoDatabase=Backbone.Collection.extend({model:window.DatabaseModel,sortOptions:{desc:!1},url:"/_api/database",comparator:function(a,b){var c=a.get("name").toLowerCase(),d=b.get("name").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},parse:function(a){return a?_.map(a.result,function(a){return{name:a}}):void 0},initialize:function(){var a=this;this.fetch().done(function(){a.sort()})},setSortingDesc:function(a){this.sortOptions.desc=a},getDatabases:function(){var a=this;return this.fetch().done(function(){a.sort()}),this.models},getDatabasesForUser:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/user",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b.result},error:function(){a=[]}}),a.sort()},createDatabaseURL:function(a,b,c){var d=window.location,e=window.location.hash;b=b?"SSL"===b||"https:"===b?"https:":"http:":d.protocol,c=c||d.port;var f=b+"//"+window.location.hostname+":"+c+"/_db/"+encodeURIComponent(a)+"/_admin/aardvark/standalone.html";if(e){var g=e.split("/")[0];0===g.indexOf("#collection")&&(g="#collections"),0===g.indexOf("#application")&&(g="#applications"),f+=g}return f},getCurrentDatabase:function(){var a;return $.ajax({type:"GET",cache:!1,url:this.url+"/current",contentType:"application/json",processData:!1,async:!1,success:function(b){return 200===b.code?void(a=b.result.name):void(a=b)},error:function(b){a=b}}),a},hasSystemAccess:function(){var a=this.getDatabasesForUser();return _.contains(a,"_system")}})}(),window.arangoDocument=Backbone.Collection.extend({url:"/_api/document/",model:arangoDocumentModel,collectionInfo:{},deleteEdge:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/edge/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},deleteDocument:function(a,b){var c=!1;try{$.ajax({cache:!1,type:"DELETE",async:!1,contentType:"application/json",url:"/_api/document/"+a+"/"+b,success:function(){c=!0},error:function(){c=!1}})}catch(d){c=!1}return c},addDocument:function(a,b){var c=this;c.createTypeDocument(a,b)},createTypeEdge:function(a,b,c,d){var e,f=!1;return e=d?JSON.stringify({_key:d}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/edge?collection="+a+"&from="+b+"&to="+c,data:e,contentType:"application/json",processData:!1,success:function(a){f=a._id},error:function(a){f=!1}}),f},createTypeDocument:function(a,b){var c,d=!1;return c=b?JSON.stringify({_key:b}):JSON.stringify({}),$.ajax({cache:!1,type:"POST",async:!1,url:"/_api/document?collection="+encodeURIComponent(a),data:c,contentType:"application/json",processData:!1,success:function(a){d=a._id},error:function(a){d=!1}}),d},getCollectionInfo:function(a){var b=this;return $.ajax({cache:!1,type:"GET",url:"/_api/collection/"+a+"?"+arangoHelper.getRandomToken(),contentType:"application/json",processData:!1,async:!1,success:function(a){b.collectionInfo=a},error:function(a){}}),b.collectionInfo},getEdge:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/edge/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},getDocument:function(a,b){var c=!1,d=this;return this.clearDocument(),$.ajax({cache:!1,type:"GET",async:!1,url:"/_api/document/"+a+"/"+b,contentType:"application/json",processData:!1,success:function(a){d.add(a),c=!0},error:function(a){c=!1}}),c},saveEdge:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/edge/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},saveDocument:function(a,b,c){var d=!1;return $.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/document/"+a+"/"+b,data:c,contentType:"application/json",processData:!1,success:function(a){d=!0},error:function(a){d=!1}}),d},updateLocalDocument:function(a){this.clearDocument(),this.add(a)},clearDocument:function(){this.reset()}}),function(){"use strict";window.arangoDocuments=window.PaginatedCollection.extend({collectionID:1,filters:[],MAX_SORT:12e3,lastQuery:{},sortAttribute:"_key",url:"/_api/documents",model:window.arangoDocumentModel,loadTotal:function(){var a=this;$.ajax({cache:!1,type:"GET",url:"/_api/collection/"+this.collectionID+"/count",contentType:"application/json",processData:!1,async:!1,success:function(b){a.setTotal(b.count)}})},setCollection:function(a){this.resetFilter(),this.collectionID=a,this.setPage(1),this.loadTotal()},setSort:function(a){this.sortAttribute=a},getSort:function(){return this.sortAttribute},addFilter:function(a,b,c){this.filters.push({attr:a,op:b,val:c})},setFiltersForQuery:function(a){if(0===this.filters.length)return"";var b=" FILTER",c=_.map(this.filters,function(b,c){var d=" x.`";return d+=b.attr,d+="` ",d+=b.op,d+=" @param",d+=c,a["param"+c]=b.val,d});return b+c.join(" &&")},setPagesize:function(a){this.setPageSize(a)},resetFilter:function(){this.filters=[]},moveDocument:function(a,b,c,d){var e,f,g,h,i={"@collection":b,filterid:a};e="FOR x IN @@collection",e+=" FILTER x._key == @filterid",e+=" INSERT x IN ",e+=c,f="FOR x in @@collection",f+=" FILTER x._key == @filterid",f+=" REMOVE x IN @@collection",g={query:e,bindVars:i},h={query:f,bindVars:i},window.progressView.show(),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(g),contentType:"application/json",success:function(a){$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(h),contentType:"application/json",success:function(a){d&&d(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Documents inserted, but could not be removed.")}})},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not move selected documents.")}})},getDocuments:function(a){window.progressView.showWithDelay(300,"Fetching documents...");var b,c,d,e,f=this;c={"@collection":this.collectionID,offset:this.getOffset(),count:this.getPageSize()},b="FOR x IN @@collection LET att = SLICE(ATTRIBUTES(x), 0, 25)",b+=this.setFiltersForQuery(c),this.getTotal()0)&&(e.options={fullCount:!0}),$.ajax({cache:!1,type:"POST",async:!0,url:"/_api/cursor",data:JSON.stringify(e),contentType:"application/json",success:function(b){window.progressView.toShow=!1,f.clearDocuments(),b.extra&&void 0!==b.extra.stats.fullCount&&f.setTotal(b.extra.stats.fullCount),0!==f.getTotal()&&_.each(b.result,function(a){f.add({id:a._id,rev:a._rev,key:a._key,content:a})}),f.lastQuery=e,a(),window.progressView.hide()},error:function(a){window.progressView.hide(),arangoHelper.arangoNotification("Document error","Could not fetch requested documents.")}})},clearDocuments:function(){this.reset()},buildDownloadDocumentQuery:function(){var a,b,c;return c={"@collection":this.collectionID},a="FOR x in @@collection",a+=this.setFiltersForQuery(c),this.getTotal()0&&(b="At least one error occurred during upload")}catch(d){}}}),b}})}(),function(){"use strict";window.ArangoLogs=window.PaginatedCollection.extend({upto:!1,loglevel:0,totalPages:0,parse:function(a){var b=[];return _.each(a.lid,function(c,d){b.push({level:a.level[d],lid:c,text:a.text[d],timestamp:a.timestamp[d],totalAmount:a.totalAmount})}),this.totalAmount=a.totalAmount,this.totalPages=Math.ceil(this.totalAmount/this.pagesize),b},initialize:function(a){a.upto===!0&&(this.upto=!0),this.loglevel=a.loglevel},model:window.newArangoLog,url:function(){var a,b,c,d;c=this.page*this.pagesize;var e=this.totalAmount-(this.page+1)*this.pagesize;return 0>e&&this.page===this.totalPages-1?(e=0,d=this.totalAmount%this.pagesize):d=this.pagesize,0===this.totalAmount&&(d=1),a=this.upto?"upto":"level",b="/_admin/log?"+a+"="+this.loglevel+"&size="+d+"&offset="+e}})}(),function(){"use strict";window.ArangoQueries=Backbone.Collection.extend({initialize:function(a,b){var c;$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser===!1&&(this.activeUser="root")},url:"/_api/user/",model:ArangoQuery,activeUser:null,parse:function(a){var b,c=this;return _.each(a.result,function(a){if(a.user===c.activeUser)try{a.extra.queries&&(b=a.extra.queries)}catch(d){}}),b},saveCollectionQueries:function(){if(0===this.activeUser)return!1;var a=!1,b=[];return this.each(function(a){b.push({value:a.attributes.value,name:a.attributes.name})}),$.ajax({cache:!1,type:"PATCH",async:!1,url:"/_api/user/"+encodeURIComponent(this.activeUser),data:JSON.stringify({extra:{queries:b}}),contentType:"application/json",processData:!1,success:function(){a=!0},error:function(){a=!1}}),a},saveImportQueries:function(a,b){return 0===this.activeUser?!1:(window.progressView.show("Fetching documents..."),void $.ajax({cache:!1,type:"POST",async:!1,url:"query/upload/"+encodeURIComponent(this.activeUser),data:a,contentType:"application/json",processData:!1,success:function(){window.progressView.hide(),b()},error:function(){window.progressView.hide(),arangoHelper.arangoError("Query error","queries could not be imported")}}))}})}(),window.ArangoReplication=Backbone.Collection.extend({model:window.Replication,url:"../api/user",getLogState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/logger-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a},getApplyState:function(){var a;return $.ajax({type:"GET",cache:!1,url:"/_api/replication/applier-state",contentType:"application/json",processData:!1,async:!1,success:function(b){a=b},error:function(b){a=b}}),a}}),window.StatisticsCollection=Backbone.Collection.extend({model:window.Statistics,url:"/_admin/statistics"}),window.StatisticsDescriptionCollection=Backbone.Collection.extend({model:window.StatisticsDescription,url:"/_admin/statistics-description",parse:function(a){return a}}),window.ArangoUsers=Backbone.Collection.extend({model:window.Users,activeUser:null,activeUserSettings:{query:{},shell:{},testing:!0},sortOptions:{desc:!1},url:"/_api/user",comparator:function(a,b){var c=a.get("user").toLowerCase(),d=b.get("user").toLowerCase();return this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0},login:function(a,b){var c=null;return $.ajax("login",{async:!1,method:"POST",data:JSON.stringify({username:a,password:b}),dataType:"json"}).done(function(a){c=a.user}),this.activeUser=c,this.activeUser},setSortingDesc:function(a){this.sortOptions.desc=a},logout:function(){$.ajax("logout",{async:!1,method:"POST"}),this.activeUser=null,this.reset(),window.App.navigate(""),window.location.reload()},setUserSettings:function(a,b){this.activeUserSettings.identifier=b},loadUserSettings:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),contentType:"application/json",processData:!1,async:!1,success:function(b){a.activeUserSettings=b.extra},error:function(a){}})},saveUserSettings:function(){var a=this;$.ajax({cache:!1,type:"PUT",async:!1,url:"/_api/user/"+encodeURIComponent(a.activeUser),data:JSON.stringify({extra:a.activeUserSettings}),contentType:"application/json",processData:!1,success:function(a){},error:function(a){}})},parse:function(a){var b=[];return _.each(a.result,function(a){b.push(a)}),b},whoAmI:function(){if(this.activeUser)return this.activeUser;var a;return $.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user}),this.activeUser=a,this.activeUser}}),function(){"use strict";window.FoxxCollection=Backbone.Collection.extend({model:window.Foxx,sortOptions:{desc:!1},url:"/_admin/aardvark/foxxes",comparator:function(a,b){var c,d;return this.sortOptions.desc===!0?(c=a.get("mount"),d=b.get("mount"),d>c?1:c>d?-1:0):(c=a.get("mount"),d=b.get("mount"),c>d?1:d>c?-1:0)},setSortingDesc:function(a){this.sortOptions.desc=a},installFromGithub:function(a,b,c,d){var e="/_admin/aardvark/foxxes/git?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromStore:function(a,b,c,d){var e="/_admin/aardvark/foxxes/store?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},installFromZip:function(a,b,c,d){var e="/_admin/aardvark/foxxes/zip?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify({zipFile:a}),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})},generate:function(a,b,c,d){var e="/_admin/aardvark/foxxes/generate?mount="+encodeURIComponent(b);void 0!==d&&(e+=d?"&replace=true":"&upgrade=true"),$.ajax({cache:!1,type:"PUT",url:e,data:JSON.stringify(a),contentType:"application/json",processData:!1,success:function(a){c(a)},error:function(a){c(a)}})}})}(),function(){"use strict";window.GraphCollection=Backbone.Collection.extend({model:window.Graph,sortOptions:{desc:!1},url:"/_api/gharial",comparator:function(a,b){var c=a.get("_key")||"",d=b.get("_key")||"";return c=c.toLowerCase(),d=d.toLowerCase(),this.sortOptions.desc===!0?d>c?1:c>d?-1:0:c>d?1:d>c?-1:0; +},setSortingDesc:function(a){this.sortOptions.desc=a},parse:function(a){return a.error?void 0:a.graphs}})}(),function(){"use strict";window.NotificationCollection=Backbone.Collection.extend({model:window.Notification,url:""})}(),function(){"use strict";window.QueryManagementActive=Backbone.Collection.extend({model:window.queryManagementModel,url:function(){return"/_api/query/current"},killRunningQuery:function(a,b){$.ajax({url:"/_api/query/"+encodeURIComponent(a),type:"DELETE",success:function(a){b()}})}})}(),function(){"use strict";window.QueryManagementSlow=Backbone.Collection.extend({model:window.queryManagementModel,url:"/_api/query/slow",deleteSlowQueryHistory:function(a){var b=this;$.ajax({url:b.url,type:"DELETE",success:function(b){a()}})}})}(),function(){"use strict";window.PaginationView=Backbone.View.extend({collection:null,paginationDiv:"",idPrefix:"",rerender:function(){},jumpTo:function(a){this.collection.setPage(a),this.rerender()},firstPage:function(){this.jumpTo(1)},lastPage:function(){this.jumpTo(this.collection.getLastPageNumber())},firstDocuments:function(){this.jumpTo(1)},lastDocuments:function(){this.jumpTo(this.collection.getLastPageNumber())},prevDocuments:function(){this.jumpTo(this.collection.getPage()-1)},nextDocuments:function(){this.jumpTo(this.collection.getPage()+1)},renderPagination:function(){$(this.paginationDiv).html("");var a=this,b=this.collection.getPage(),c=this.collection.getLastPageNumber(),d=$(this.paginationDiv),e={page:b,lastPage:c,click:function(b){a.jumpTo(b),e.page=b}};d.html(""),d.pagination(e),$(this.paginationDiv).prepend('
      '),$(this.paginationDiv).append('
      ')}})}(),function(){"use strict";window.ApiView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("apiView.ejs"),initialize:function(){this.swaggerUi=new SwaggerUi({discoveryUrl:"api-docs.json",apiKey:!1,dom_id:"swagger-ui-container",supportHeaderParams:!0,supportedSubmitMethods:["get","post","put","delete","patch","head"],onComplete:function(){$("pre code").each(function(a,b){hljs.highlightBlock(b)})},onFailure:function(a){var b=document.createElement("div"),c=document.createElement("strong");c.appendChild(document.createTextNode("Sorry the code is not documented properly")),b.appendChild(c),b.appendChild(document.createElement("br")),b.appendChild(document.createTextNode(JSON.stringify(a))),$("#swagger-ui-container").append(b)},docExpansion:"none"})},render:function(){return $(this.el).html(this.template.render({})),this.swaggerUi.load(),this}})}(),function(){"use strict";window.ApplicationDetailView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationDetailView.ejs"),events:{"click .open":"openApp","click .delete":"deleteApp","click #app-config":"showConfigDialog","click #app-deps":"showDepsDialog","click #app-switch-mode":"toggleDevelopment","click #app-scripts [data-script]":"runScript","click #app-tests":"runTests","click #app-upgrade":"upgradeApp","click #download-app":"downloadApp","click #app-show-swagger":"showSwagger","click #app-show-readme":"showReadme","mouseenter #app-scripts":"showDropdown","mouseleave #app-scripts":"hideDropdown"},downloadApp:function(){this.model.isSystem()||this.model.download()},upgradeApp:function(){var a=this.model.get("mount");window.foxxInstallView.upgrade(a,function(){window.App.applicationDetail(encodeURIComponent(a))})},updateConfig:function(){this.model.getConfiguration(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-config")[this.model.needsConfiguration()?"show":"hide"]()}.bind(this))},updateDeps:function(){this.model.getDependencies(function(){$("#app-warning")[this.model.needsAttention()?"show":"hide"](),$("#app-warning-deps")[this.model.hasUnconfiguredDependencies()?"show":"hide"]()}.bind(this))},toggleDevelopment:function(){this.model.toggleDevelopment(!this.model.isDevelopment(),function(){this.model.isDevelopment()?($("#app-switch-mode").val("Set Pro"),$("#app-development-indicator").css("display","inline"),$("#app-development-path").css("display","inline")):($("#app-switch-mode").val("Set Dev"),$("#app-development-indicator").css("display","none"),$("#app-development-path").css("display","none"))}.bind(this))},runScript:function(a){a.preventDefault();var b=$(a.currentTarget).attr("data-script"),c=[window.modalView.createBlobEntry("app_script_arguments","Script arguments","",null,"optional",!1,[{rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty"}])],d=[window.modalView.createSuccessButton("Run script",function(){var a=$("#app_script_arguments").val();a=a&&JSON.parse(a),window.modalView.hide(),this.model.runScript(b,a,function(a,c){var d;d=a?"

      The script failed with an error"+(a.statusCode?" (HTTP "+a.statusCode+")":"")+":

      "+a.message+"
      ":c?"

      Script results:

      "+JSON.stringify(c,null,2)+"
      ":"

      The script ran successfully.

      ",window.modalView.show("modalTable.ejs",'Result of script "'+b+'"',void 0,void 0,void 0,d)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run script "'+b+'" on "'+this.model.get("mount")+'"',d,c)},showSwagger:function(a){a.preventDefault(),this.render("swagger")},showReadme:function(a){a.preventDefault(),this.render("readme")},runTests:function(a){a.preventDefault();var b="

      WARNING: Running tests may result in destructive side-effects including data loss. Please make sure not to run tests on a production database.

      ";this.model.isDevelopment()&&(b+="

      WARNING: This app is running in development mode. If any of the tests access the app's HTTP API they may become non-deterministic.

      ");var c=[window.modalView.createSuccessButton("Run tests",function(){window.modalView.hide(),this.model.runTests({reporter:"suite"},function(a,b){window.modalView.show("modalTestResults.ejs","Test results",void 0,void 0,void 0,a||b)})}.bind(this))];window.modalView.show("modalTable.ejs",'Run tests for app "'+this.model.get("mount")+'"',c,void 0,void 0,b)},render:function(a){return $(this.el).html(this.template.render({app:this.model,db:arangoHelper.currentDatabase(),mode:a})),$.get(this.appUrl()).success(function(){$(".open",this.el).prop("disabled",!1)}.bind(this)),this.updateConfig(),this.updateDeps(),$(this.el)},openApp:function(){window.open(this.appUrl(),this.model.get("title")).focus()},deleteApp:function(){var a=[window.modalView.createDeleteButton("Delete",function(){var a={teardown:$("#app_delete_run_teardown").is(":checked")};this.model.destroy(a,function(a,b){a||b.error!==!1||(window.modalView.hide(),window.App.navigate("applications",{trigger:!0}))})}.bind(this))],b=[window.modalView.createCheckboxEntry("app_delete_run_teardown","Run teardown?",!0,"Should this app's teardown script be executed before removing the app?",!0)];window.modalView.show("modalTable.ejs",'Delete Foxx App mounted at "'+this.model.get("mount")+'"',a,b,void 0,"

      Are you sure? There is no way back...

      ",!0)},appUrl:function(){return window.location.origin+"/_db/"+encodeURIComponent(arangoHelper.currentDatabase())+this.model.get("mount")},applyConfig:function(){var a={};_.each(this.model.get("config"),function(b,c){var d=$("#app_config_"+c),e=d.val();if("boolean"===b.type||"bool"===b.type)return void(a[c]=d.is(":checked"));if(""===e&&b.hasOwnProperty("default"))return a[c]=b["default"],void("json"===b.type&&(a[c]=JSON.stringify(b["default"])));if("number"===b.type)a[c]=parseFloat(e);else if("integer"===b.type||"int"===b.type)a[c]=parseInt(e,10);else{if("json"!==b.type)return void(a[c]=window.arangoHelper.escapeHtml(e));a[c]=e&&JSON.stringify(JSON.parse(e))}}),this.model.setConfiguration(a,function(){window.modalView.hide(),this.updateConfig()}.bind(this))},showConfigDialog:function(){if(!_.isEmpty(this.model.get("config"))){var a=_.map(this.model.get("config"),function(a,b){var c=void 0===a["default"]?"":String(a["default"]),d=void 0===a.current?"":String(a.current),e="createTextEntry",f=!1,g=[];return"boolean"===a.type||"bool"===a.type?(e="createCheckboxEntry",a["default"]=a["default"]||!1,c=a["default"]||!1,d=a.current||!1):"json"===a.type?(e="createBlobEntry",c=void 0===a["default"]?"":JSON.stringify(a["default"]),d=void 0===a.current?"":a.current,g.push({rule:function(a){return a&&JSON.parse(a)},msg:"Must be well-formed JSON or empty."})):"integer"===a.type||"int"===a.type?g.push({rule:Joi.number().integer().optional().allow(""),msg:"Has to be an integer."}):"number"===a.type?g.push({rule:Joi.number().optional().allow(""),msg:"Has to be a number."}):("password"===a.type&&(e="createPasswordEntry"),g.push({rule:Joi.string().optional().allow(""),msg:"Has to be a string."})),void 0===a["default"]&&a.required!==!1&&(f=!0,g.unshift({rule:Joi.any().required(),msg:"This field is required."})),window.modalView[e]("app_config_"+b,b,d,a.description,c,f,g)}),b=[window.modalView.createSuccessButton("Apply",this.applyConfig.bind(this))];window.modalView.show("modalTable.ejs","Configuration",b,a)}},applyDeps:function(){var a={};_.each(this.model.get("deps"),function(b,c){var d=$("#app_deps_"+c);a[c]=window.arangoHelper.escapeHtml(d.val())}),this.model.setDependencies(a,function(){window.modalView.hide(),this.updateDeps()}.bind(this))},showDepsDialog:function(){if(!_.isEmpty(this.model.get("deps"))){var a=_.map(this.model.get("deps"),function(a,b){var c=void 0===a.current?"":String(a.current),d="",e=a.definition.name;"*"!==a.definition.version&&(e+="@"+a.definition.version);var f=[{rule:Joi.string().optional().allow(""),msg:"Has to be a string."}];return a.definition.required&&f.push({rule:Joi.string().required(),msg:"This value is required."}),window.modalView.createTextEntry("app_deps_"+b,a.title,c,e,d,a.definition.required,f)}),b=[window.modalView.createSuccessButton("Apply",this.applyDeps.bind(this))];window.modalView.show("modalTable.ejs","Dependencies",b,a)}},showDropdown:function(){_.isEmpty(this.model.get("scripts"))||$("#scripts_dropdown").show(200)},hideDropdown:function(){$("#scripts_dropdown").hide()}})}(),function(){"use strict";window.ApplicationsView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("applicationsView.ejs"),events:{"click #addApp":"createInstallModal","click #foxxToggle":"slideToggle","click #checkDevel":"toggleDevel","click #checkProduction":"toggleProduction","click #checkSystem":"toggleSystem"},fixCheckboxes:function(){this._showDevel?$("#checkDevel").attr("checked","checked"):$("#checkDevel").removeAttr("checked"),this._showSystem?$("#checkSystem").attr("checked","checked"):$("#checkSystem").removeAttr("checked"),this._showProd?$("#checkProduction").attr("checked","checked"):$("#checkProduction").removeAttr("checked"),$("#checkDevel").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkSystem").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),$("#checkProduction").next().removeClass("fa fa-check-circle-o fa-circle-o").addClass("fa"),arangoHelper.setCheckboxStatus("#foxxDropdown")},toggleDevel:function(){var a=this;this._showDevel=!this._showDevel,_.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel)}),this.fixCheckboxes()},toggleProduction:function(){var a=this;this._showProd=!this._showProd,_.each(this._installedSubViews,function(b){b.toggle("production",a._showProd)}),this.fixCheckboxes()},toggleSystem:function(){this._showSystem=!this._showSystem;var a=this;_.each(this._installedSubViews,function(b){b.toggle("system",a._showSystem)}),this.fixCheckboxes()},reload:function(){var a=this;_.each(this._installedSubViews,function(a){a.undelegateEvents()}),this.collection.fetch({success:function(){a.createSubViews(),a.render()}})},createSubViews:function(){var a=this;this._installedSubViews={},a.collection.each(function(b){var c=new window.FoxxActiveView({model:b,appsView:a});a._installedSubViews[b.get("mount")]=c})},initialize:function(){this._installedSubViews={},this._showDevel=!0,this._showProd=!0,this._showSystem=!1,this.reload()},slideToggle:function(){$("#foxxToggle").toggleClass("activated"),$("#foxxDropdownOut").slideToggle(200)},createInstallModal:function(a){a.preventDefault(),window.foxxInstallView.install(this.reload.bind(this))},render:function(){this.collection.sort(),$(this.el).html(this.template.render({})),_.each(this._installedSubViews,function(a){$("#installedList").append(a.render())}),this.delegateEvents(),$("#checkDevel").attr("checked",this._showDevel),$("#checkProduction").attr("checked",this._showProd),$("#checkSystem").attr("checked",this._showSystem),arangoHelper.setCheckboxStatus("#foxxDropdown");var a=this;return _.each(this._installedSubViews,function(b){b.toggle("devel",a._showDevel),b.toggle("system",a._showSystem)}),arangoHelper.fixTooltips("icon_arangodb","left"),this}})}(),function(){"use strict";window.CollectionListItemView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("collectionsItemView.ejs"),initialize:function(){this.collectionsView=this.options.collectionsView},events:{"click .iconSet.icon_arangodb_settings2":"createEditPropertiesModal","click .pull-left":"noop","click .icon_arangodb_settings2":"editProperties","click .spanInfo":"showProperties",click:"selectCollection"},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el).attr("id","collection_"+this.model.get("name")),this},editProperties:function(a){a.stopPropagation(),this.createEditPropertiesModal()},showProperties:function(a){a.stopPropagation(),this.createInfoModal()},selectCollection:function(a){return $(a.target).hasClass("disabled")?0:void window.App.navigate("collection/"+encodeURIComponent(this.model.get("name"))+"/documents/1",{trigger:!0})},noop:function(a){a.stopPropagation()},unloadCollection:function(){this.model.unloadCollection(),window.modalView.hide()},loadCollection:function(){this.model.loadCollection(),window.modalView.hide()},truncateCollection:function(){this.model.truncateCollection(),this.render(),window.modalView.hide()},deleteCollection:function(){this.model.destroy({error:function(){arangoHelper.arangoError("Could not delete collection.")},success:function(){window.modalView.hide()}}),this.collectionsView.render()},saveModifiedCollection:function(){var a;a=window.isCoordinator()?this.model.get("name"):$("#change-collection-name").val();var b=this.model.get("status");if("loaded"===b){var c;try{c=JSON.parse(1024*$("#change-collection-size").val()*1024)}catch(d){return arangoHelper.arangoError("Please enter a valid number"),0}var e;try{if(e=JSON.parse($("#change-index-buckets").val()),1>e||parseInt(e)!==Math.pow(2,Math.log2(e)))throw"invalid indexBuckets value"}catch(d){return arangoHelper.arangoError("Please enter a valid number of index buckets"),0}var f;if(this.model.get("name")!==a&&(f=this.model.renameCollection(a)),f!==!0&&void 0!==f)return arangoHelper.arangoError("Collection error: "+f),0;var g=$("#change-collection-sync").val(),h=this.model.changeCollection(g,c,e);if(h!==!0)return arangoHelper.arangoNotification("Collection error",h),0;this.collectionsView.render(),window.modalView.hide()}else if("unloaded"===b)if(this.model.get("name")!==a){var i=this.model.renameCollection(a);i===!0?(this.collectionsView.render(),window.modalView.hide()):arangoHelper.arangoError("Collection error: "+i)}else window.modalView.hide()},createEditPropertiesModal:function(){var a=!1;"loaded"===this.model.get("status")&&(a=!0);var b=[],c=[];if(window.isCoordinator()||c.push(window.modalView.createTextEntry("change-collection-name","Name",this.model.get("name"),!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a){var d=this.model.getProperties().journalSize;d/=1048576,c.push(window.modalView.createTextEntry("change-collection-size","Journal size",d,"The maximal size of a journal or datafile (in MB). Must be at least 1.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}]));var e=this.model.getProperties().indexBuckets;c.push(window.modalView.createTextEntry("change-index-buckets","Index buckets",e,"The number of index buckets for this collection. Must be at least 1 and a power of 2.","",!0,[{rule:Joi.string().allow("").optional().regex(/^[1-9][0-9]*$/),msg:"Must be a number greater than 1 and a power of 2."}]));var f=this.model.getProperties().waitForSync;c.push(window.modalView.createSelectEntry("change-collection-sync","Wait for sync",f,"Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}]))}c.push(window.modalView.createReadOnlyEntry("change-collection-id","ID",this.model.get("id"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-type","Type",this.model.get("type"),"")),c.push(window.modalView.createReadOnlyEntry("change-collection-status","Status",this.model.get("status"),"")),b.push(window.modalView.createDeleteButton("Delete",this.deleteCollection.bind(this))),b.push(window.modalView.createDeleteButton("Truncate",this.truncateCollection.bind(this))),a?b.push(window.modalView.createNotificationButton("Unload",this.unloadCollection.bind(this))):b.push(window.modalView.createNotificationButton("Load",this.loadCollection.bind(this))),b.push(window.modalView.createSuccessButton("Save",this.saveModifiedCollection.bind(this))),window.modalView.show("modalTable.ejs","Modify Collection",b,c)},createInfoModal:function(){var a=[],b=this.model;window.modalView.show("modalCollectionInfo.ejs","Collection: "+this.model.get("name"),a,b)}})}(),function(){"use strict";window.CollectionsView=Backbone.View.extend({el:"#content",el2:"#collectionsThumbnailsIn",searchTimeout:null,template:templateEngine.createTemplate("collectionsView.ejs"),render:function(){var a=!1;$("#collectionsDropdown").is(":visible")&&(a=!0),$(this.el).html(this.template.render({})),this.setFilterValues(),a===!0&&$("#collectionsDropdown2").show();var b=this.collection.searchOptions;this.collection.getFiltered(b).forEach(function(a){$("#collectionsThumbnailsIn",this.el).append(new window.CollectionListItemView({model:a,collectionsView:this}).render().el)},this),"none"===$("#collectionsDropdown2").css("display")?$("#collectionsToggle").removeClass("activated"):$("#collectionsToggle").addClass("activated");var c;arangoHelper.setCheckboxStatus("#collectionsDropdown");try{c=b.searchPhrase.length}catch(d){}return $("#searchInput").val(b.searchPhrase),$("#searchInput").focus(),$("#searchInput")[0].setSelectionRange(c,c),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","left"),this},events:{"click #createCollection":"createCollection","keydown #searchInput":"restrictToSearchPhraseKey","change #searchInput":"restrictToSearchPhrase","click #searchSubmit":"restrictToSearchPhrase","click .checkSystemCollections":"checkSystem","click #checkLoaded":"checkLoaded","click #checkUnloaded":"checkUnloaded","click #checkDocument":"checkDocument","click #checkEdge":"checkEdge","click #sortName":"sortName","click #sortType":"sortType","click #sortOrder":"sortOrder","click #collectionsToggle":"toggleView","click .css-label":"checkBoxes"},updateCollectionsView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},toggleView:function(){$("#collectionsToggle").toggleClass("activated"),$("#collectionsDropdown2").slideToggle(200)},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},checkSystem:function(){var a=this.collection.searchOptions,b=a.includeSystem;a.includeSystem=$(".checkSystemCollections").is(":checked")===!0,b!==a.includeSystem&&this.render()},checkEdge:function(){var a=this.collection.searchOptions,b=a.includeEdge;a.includeEdge=$("#checkEdge").is(":checked")===!0,b!==a.includeEdge&&this.render()},checkDocument:function(){var a=this.collection.searchOptions,b=a.includeDocument;a.includeDocument=$("#checkDocument").is(":checked")===!0,b!==a.includeDocument&&this.render()},checkLoaded:function(){var a=this.collection.searchOptions,b=a.includeLoaded;a.includeLoaded=$("#checkLoaded").is(":checked")===!0,b!==a.includeLoaded&&this.render()},checkUnloaded:function(){var a=this.collection.searchOptions,b=a.includeUnloaded;a.includeUnloaded=$("#checkUnloaded").is(":checked")===!0,b!==a.includeUnloaded&&this.render()},sortName:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortName").is(":checked")===!0?"name":"type",b!==a.sortBy&&this.render()},sortType:function(){var a=this.collection.searchOptions,b=a.sortBy;a.sortBy=$("#sortType").is(":checked")===!0?"type":"name",b!==a.sortBy&&this.render()},sortOrder:function(){var a=this.collection.searchOptions,b=a.sortOrder;a.sortOrder=$("#sortOrder").is(":checked")===!0?-1:1,b!==a.sortOrder&&this.render()},setFilterValues:function(){var a=this.collection.searchOptions;$("#checkLoaded").attr("checked",a.includeLoaded),$("#checkUnloaded").attr("checked",a.includeUnloaded),$(".checkSystemCollections").attr("checked",a.includeSystem),$("#checkEdge").attr("checked",a.includeEdge),$("#checkDocument").attr("checked",a.includeDocument),$("#sortName").attr("checked","type"!==a.sortBy),$("#sortType").attr("checked","type"===a.sortBy),$("#sortOrder").attr("checked",1!==a.sortOrder)},search:function(){var a=this.collection.searchOptions,b=$("#searchInput").val();b!==a.searchPhrase&&(a.searchPhrase=b,this.render())},resetSearch:function(){this.searchTimeout&&(clearTimeout(this.searchTimeout),this.searchTimeout=null);var a=this.collection.searchOptions;a.searchPhrase=null},restrictToSearchPhraseKey:function(){var a=this;this.resetSearch(),a.searchTimeout=setTimeout(function(){a.search()},200)},restrictToSearchPhrase:function(){this.resetSearch(),this.search()},createCollection:function(a){a.preventDefault(),this.createNewCollectionModal()},submitCreateCollection:function(){var a=$("#new-collection-name").val(),b=$("#new-collection-size").val(),c=$("#new-collection-type").val(),d=$("#new-collection-sync").val(),e=1,f=[];if(window.isCoordinator()){if(e=$("#new-collection-shards").val(),""===e&&(e=1),e=parseInt(e,10),1>e)return arangoHelper.arangoError("Number of shards has to be an integer value greater or equal 1"),0;f=_.pluck($("#new-collection-shardBy").select2("data"),"text"),0===f.length&&f.push("_key")}if("_"===a.substr(0,1))return arangoHelper.arangoError('No "_" allowed as first character!'),0;var g=!1,h="true"===d;if(b>0)try{b=1024*JSON.parse(b)*1024}catch(i){return arangoHelper.arangoError("Please enter a valid number"),0}if(""===a)return arangoHelper.arangoError("No collection name entered!"),0;var j=this.collection.newCollection(a,h,g,b,c,e,f);j.status!==!0&&arangoHelper.arangoError(j.errorMessage),this.updateCollectionsView(),window.modalView.hide()},createNewCollectionModal:function(){var a=[],b=[],c={},d=[];b.push(window.modalView.createTextEntry("new-collection-name","Name","",!1,"",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only symbols, "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),b.push(window.modalView.createSelectEntry("new-collection-type","Type","","The type of the collection to create.",[{value:2,label:"Document"},{value:3,label:"Edge"}])),window.isCoordinator()&&(b.push(window.modalView.createTextEntry("new-collection-shards","Shards","","The number of shards to create. You cannot change this afterwards. Recommended: DBServers squared","",!0)),b.push(window.modalView.createSelect2Entry("new-collection-shardBy","shardBy","","The keys used to distribute documents on shards. Type the key and press return to add it.","_key",!1))),a.push(window.modalView.createSuccessButton("Save",this.submitCreateCollection.bind(this))),d.push(window.modalView.createTextEntry("new-collection-size","Journal size","","The maximal size of a journal or datafile (in MB). Must be at least 1.","",!1,[{rule:Joi.string().allow("").optional().regex(/^[0-9]*$/),msg:"Must be a number."}])),d.push(window.modalView.createSelectEntry("new-collection-sync","Sync","","Synchronise to disk before returning from a create or update of a document.",[{value:!1,label:"No"},{value:!0,label:"Yes"}])),c.header="Advanced",c.content=d,window.modalView.show("modalTable.ejs","New Collection",a,b,c)}})}(),function(){"use strict";function a(a,b){return(void 0===a||null===a)&&(a=0),a.toFixed(b)}window.DashboardView=Backbone.View.extend({el:"#content",interval:1e4,defaultTimeFrame:12e5,defaultDetailFrame:1728e5,history:{},graphs:{},events:{},tendencies:{asyncPerSecondCurrent:["asyncPerSecondCurrent","asyncPerSecondPercentChange"],syncPerSecondCurrent:["syncPerSecondCurrent","syncPerSecondPercentChange"],clientConnectionsCurrent:["clientConnectionsCurrent","clientConnectionsPercentChange"],clientConnectionsAverage:["clientConnections15M","clientConnections15MPercentChange"],numberOfThreadsCurrent:["numberOfThreadsCurrent","numberOfThreadsPercentChange"],numberOfThreadsAverage:["numberOfThreads15M","numberOfThreads15MPercentChange"],virtualSizeCurrent:["virtualSizeCurrent","virtualSizePercentChange"],virtualSizeAverage:["virtualSize15M","virtualSize15MPercentChange"]},barCharts:{totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]},barChartsElementNames:{queueTimeDistributionPercent:"Queue",requestTimeDistributionPercent:"Computation",bytesSentDistributionPercent:"Bytes sent",bytesReceivedDistributionPercent:"Bytes received"},getDetailFigure:function(a){var b=$(a.currentTarget).attr("id").replace(/ChartButton/g,"");return b},showDetail:function(a){var b,c=this,d=this.getDetailFigure(a);b=this.dygraphConfig.getDetailChartConfig(d),this.getHistoryStatistics(d),this.detailGraphFigure=d,window.modalView.hideFooter=!0,window.modalView.hide(),window.modalView.show("modalGraph.ejs",b.header,void 0,void 0,void 0,void 0,this.events),window.modalView.hideFooter=!1,$("#modal-dialog").on("hidden",function(){c.hidden()}),$("#modal-dialog").toggleClass("modal-chart-detail",!0),b.height=.7*$(window).height(),b.width=$(".modal-inner-detail").width(),b.labelsDiv=$(b.labelsDiv)[0],this.detailGraph=new Dygraph(document.getElementById("lineChartDetail"),this.history[this.server][d],b)},hidden:function(){this.detailGraph.destroy(),delete this.detailGraph,delete this.detailGraphFigure},getCurrentSize:function(a){"#"!==a.substr(0,1)&&(a="#"+a);var b,c;return $(a).attr("style",""),b=$(a).height(),c=$(a).width(),{height:b,width:c}},prepareDygraphs:function(){var a,b=this;this.dygraphConfig.getDashBoardFigures().forEach(function(c){a=b.dygraphConfig.getDefaultConfig(c);var d=b.getCurrentSize(a.div);a.height=d.height,a.width=d.width,b.graphs[c]=new Dygraph(document.getElementById(a.div),b.history[b.server][c]||[],a)})},initialize:function(){this.dygraphConfig=this.options.dygraphConfig,this.d3NotInitialised=!0,this.events["click .dashboard-sub-bar-menu-sign"]=this.showDetail.bind(this),this.events["mousedown .dygraph-rangesel-zoomhandle"]=this.stopUpdating.bind(this),this.events["mouseup .dygraph-rangesel-zoomhandle"]=this.startUpdating.bind(this),this.serverInfo=this.options.serverToShow,this.serverInfo?this.server=this.serverInfo.target:this.server="-local-",this.history[this.server]={}},updateCharts:function(){var a=this;return this.detailGraph?void this.updateLineChart(this.detailGraphFigure,!0):(this.prepareD3Charts(this.isUpdating),this.prepareResidentSize(this.isUpdating),this.updateTendencies(),void Object.keys(this.graphs).forEach(function(b){a.updateLineChart(b,!1)}))},updateTendencies:function(){var a=this,b=this.tendencies,c="";Object.keys(b).forEach(function(b){var d="",e=0;a.history.hasOwnProperty(a.server)&&a.history[a.server].hasOwnProperty(b)&&(e=a.history[a.server][b][1]),0>e?c="#d05448":(c="#7da817",d="+"),$("#"+b).html(a.history[a.server][b][0]+'
      '+d+e+"%")})},updateDateWindow:function(a,b){var c,d,e=(new Date).getTime();return b&&a.dateWindow_?(c=a.dateWindow_[0],d=e-a.dateWindow_[1]-5*this.interval>0?a.dateWindow_[1]:e,[c,d]):[e-this.defaultTimeFrame,e]},updateLineChart:function(a,b){var c=b?this.detailGraph:this.graphs[a],d={file:this.history[this.server][a],dateWindow:this.updateDateWindow(c,b)};c.updateOptions(d)},mergeDygraphHistory:function(a,b){var c,d=this;this.dygraphConfig.getDashBoardFigures(!0).forEach(function(e){d.dygraphConfig.mapStatToFigure[e]&&(d.history[d.server][e]||(d.history[d.server][e]=[]),c=[],d.dygraphConfig.mapStatToFigure[e].forEach(function(d){a[d]&&("times"===d?c.push(new Date(1e3*a[d][b])):c.push(a[d][b]))}),c.length>1&&d.history[d.server][e].push(c))})},cutOffHistory:function(a,b){for(var c=this;0!==c.history[c.server][a].length;){var d=c.history[c.server][a][0][0];if(d>=b)break;c.history[c.server][a].shift()}},cutOffDygraphHistory:function(a){var b=this,c=new Date(a);this.dygraphConfig.getDashBoardFigures(!0).forEach(function(a){b.dygraphConfig.mapStatToFigure[a]&&b.history[b.server][a]&&b.cutOffHistory(a,c)})},mergeHistory:function(b){var c,d=this;for(c=0;c=0;--c)d.values.push({label:this.getLabel(b[a[0]].cuts,c),value:b[a[0]].values[c]}),e.values.push({label:this.getLabel(b[a[1]].cuts,c),value:b[a[1]].values[c]});return[d,e]},getLabel:function(a,b){return a[b]?0===b?"0 - "+a[b]:a[b-1]+" - "+a[b]:">"+a[b-1]},getStatistics:function(a){var b=this,c="/_db/_system/_admin/aardvark/statistics/short",d="?start=";d+=b.nextStart?b.nextStart:((new Date).getTime()-b.defaultTimeFrame)/1e3,"-local-"!==b.server&&(c=b.serverInfo.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=short&DBserver="+b.serverInfo.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){c.times.length>0&&(b.isUpdating=!0,b.mergeHistory(c)),b.isUpdating!==!1&&(a&&a(),b.updateCharts())})},getHistoryStatistics:function(a){var b=this,c="statistics/long",d="?filter="+this.dygraphConfig.mapStatToFigure[a].join();"-local-"!==b.server&&(c=b.server.endpoint+"/_admin/aardvark/statistics/cluster",d+="&type=long&DBserver="+b.server.target,b.history.hasOwnProperty(b.server)||(b.history[b.server]={})),$.ajax(c+d,{async:!0}).done(function(c){ +var d;for(b.history[b.server][a]=[],d=0;de?a(e,2)+" MB":a(e/1024,2)+" GB";var g=a(100*c.history[c.server].residentSizePercent,2),h=[a(c.history[c.server].physicalMemory/1024/1024/1024,0)+" GB"];nv.addGraph(function(){var a=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,right:1,bottom:($("residentSizeChartContainer").outerHeight()-$("residentSizeChartContainer").height())/2,left:1}).showValues(!1).showYAxis(!1).showXAxis(!1).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).stacked(!0);return a.yAxis.tickFormat(function(a){return a+"%"}).showMaxMin(!1),a.xAxis.showMaxMin(!1),d3.select("#residentSizeChart svg").datum(c.history[c.server].residentSizeChart).call(a),d3.select("#residentSizeChart svg").select(".nv-zeroLine").remove(),b&&(d3.select("#residentSizeChart svg").select("#total").remove(),d3.select("#residentSizeChart svg").select("#percentage").remove()),d3.select(".dashboard-bar-chart-title .percentage").html(f+" ("+g+" %)"),d3.select(".dashboard-bar-chart-title .absolut").html(h[0]),nv.utils.windowResize(a.update),a},function(){d3.selectAll("#residentSizeChart .nv-bar").on("click",function(){})})},prepareD3Charts:function(b){var c=this,d={totalTimeDistribution:["queueTimeDistributionPercent","requestTimeDistributionPercent"],dataTransferDistribution:["bytesSentDistributionPercent","bytesReceivedDistributionPercent"]};this.d3NotInitialised&&(b=!1,this.d3NotInitialised=!1),_.each(Object.keys(d),function(b){var d=c.getCurrentSize("#"+b+"Container .dashboard-interior-chart"),e="#"+b+"Container svg";nv.addGraph(function(){var f=[0,.25,.5,.75,1],g=75,h=23,i=6;d.width<219?(f=[0,.5,1],g=72,h=21,i=5):d.width<299?(f=[0,.3334,.6667,1],g=77):d.width<379?g=87:d.width<459?g=95:d.width<539?g=100:d.width<619&&(g=105);var j=nv.models.multiBarHorizontalChart().x(function(a){return a.label}).y(function(a){return a.value}).width(d.width).height(d.height).margin({top:5,right:20,bottom:h,left:g}).showValues(!1).showYAxis(!0).showXAxis(!0).transitionDuration(100).tooltips(!1).showLegend(!1).showControls(!1).forceY([0,1]);j.yAxis.showMaxMin(!1);d3.select(".nv-y.nv-axis").selectAll("text").attr("transform","translate (0, "+i+")");return j.yAxis.tickValues(f).tickFormat(function(b){return a(100*b*100/100,0)+"%"}),d3.select(e).datum(c.history[c.server][b]).call(j),nv.utils.windowResize(j.update),j},function(){d3.selectAll(e+" .nv-bar").on("click",function(){})})})},stopUpdating:function(){this.isUpdating=!1},startUpdating:function(){var a=this;a.timer||(a.timer=window.setInterval(function(){a.getStatistics()},a.interval))},resize:function(){if(this.isUpdating){var a,b=this;_.each(this.graphs,function(c){a=b.getCurrentSize(c.maindiv_.id),c.resize(a.width,a.height)}),this.detailGraph&&(a=this.getCurrentSize(this.detailGraph.maindiv_.id),this.detailGraph.resize(a.width,a.height)),this.prepareD3Charts(!0),this.prepareResidentSize(!0)}},template:templateEngine.createTemplate("dashboardView.ejs"),render:function(a){a||$(this.el).html(this.template.render());var b=function(){this.prepareDygraphs(),this.isUpdating&&(this.prepareD3Charts(),this.prepareResidentSize(),this.updateTendencies()),this.startUpdating()}.bind(this),c=this.options.database.hasSystemAccess();c?this.getStatistics(b):($(".contentDiv").remove(),$(".headerBar").remove(),$(".dashboard-headerbar").remove(),$(".dashboard-row").remove(),$("#content").append('
      You do not have permission to view this page.
      '),$("#content").append("
      You can switch to '_system' to see the dashboard.
      "))}})}(),function(){"use strict";window.databaseView=Backbone.View.extend({users:null,el:"#content",template:templateEngine.createTemplate("databaseView.ejs"),dropdownVisible:!1,currentDB:"",events:{"click #createDatabase":"createDatabase","click #submitCreateDatabase":"submitCreateDatabase","click .editDatabase":"editDatabase","click .icon":"editDatabase","click #selectDatabase":"updateDatabase","click #submitDeleteDatabase":"submitDeleteDatabase","click .contentRowInactive a":"changeDatabase","keyup #databaseSearchInput":"search","click #databaseSearchSubmit":"search","click #databaseToggle":"toggleSettingsDropdown","click .css-label":"checkBoxes","click #dbSortDesc":"sorting","click svg":"switchDatabase"},sorting:function(){$("#dbSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#databaseDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},initialize:function(){this.collection.fetch({async:!1})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},render:function(){return this.currentDatabase(),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:"",currentDB:this.currentDB})),this.dropdownVisible===!0&&($("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").show()),arangoHelper.setCheckboxStatus("#databaseDropdown"),this.replaceSVGs(),this},toggleSettingsDropdown:function(){$("#dbSortDesc").attr("checked",this.collection.sortOptions.desc),$("#databaseToggle").toggleClass("activated"),$("#databaseDropdown2").slideToggle(200)},selectedDatabase:function(){return $("#selectDatabases").val()},handleError:function(a,b,c){return 409===a?void arangoHelper.arangoError("DB","Database "+c+" already exists."):400===a?void arangoHelper.arangoError("DB","Invalid Parameters"):403===a?void arangoHelper.arangoError("DB","Insufficent rights. Execute this from _system database"):void 0},validateDatabaseInfo:function(a,b,c){return""===b?(arangoHelper.arangoError("DB","You have to define an owner for the new database"),!1):""===a?(arangoHelper.arangoError("DB","You have to define a name for the new database"),!1):0===a.indexOf("_")?(arangoHelper.arangoError("DB ","Databasename should not start with _"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("DB","Databasename may only contain numbers, letters, _ and -"),!1)},createDatabase:function(a){a.preventDefault(),this.createAddDatabaseModal()},switchDatabase:function(a){var b=$(a.currentTarget).parent().find("h5").text(),c=this.collection.createDatabaseURL(b);window.location.replace(c)},submitCreateDatabase:function(){var a=this,b=$("#newDatabaseName").val(),c=$("#newUser").val(),d=$("#newPassword").val();if(this.validateDatabaseInfo(b,c,d)){var e={name:b,users:[{username:c,passwd:d,active:!0}]};this.collection.create(e,{wait:!0,error:function(c,d){a.handleError(d.status,d.statusText,b)},success:function(b){a.updateDatabases(),window.modalView.hide(),window.App.naviView.dbSelectionView.render($("#dbSelect"))}})}},submitDeleteDatabase:function(a){var b=this.collection.where({name:a});b[0].destroy({wait:!0,url:"/_api/database/"+a}),this.updateDatabases(),window.App.naviView.dbSelectionView.render($("#dbSelect")),window.modalView.hide()},currentDatabase:function(){this.currentDB=this.collection.getCurrentDatabase()},changeDatabase:function(a){var b=$(a.currentTarget).attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},updateDatabases:function(){var a=this;this.collection.fetch({success:function(){a.render(),window.App.handleSelectDatabase()}})},editDatabase:function(a){var b=this.evaluateDatabaseName($(a.currentTarget).attr("id"),"_edit-database"),c=!0;b===this.currentDB&&(c=!1),this.createEditDatabaseModal(b,c)},search:function(){var a,b,c,d;a=$("#databaseSearchInput"),b=$("#databaseSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("name").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b,currentDB:this.currentDB})),this.replaceSVGs(),a=$("#databaseSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},replaceSVGs:function(){$(".svgToReplace").each(function(){var a=$(this),b=a.attr("id"),c=a.attr("src");$.get(c,function(c){var d=$(c).find("svg");d.attr("id",b).attr("class","tile-icon-svg").removeAttr("xmlns:a"),a.replaceWith(d)},"xml")})},evaluateDatabaseName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},createEditDatabaseModal:function(a,b){var c=[],d=[];d.push(window.modalView.createReadOnlyEntry("id_name","Name",a,"")),b?c.push(window.modalView.createDeleteButton("Delete",this.submitDeleteDatabase.bind(this,a))):c.push(window.modalView.createDisabledButton("Delete")),window.modalView.show("modalTable.ejs","Edit database",c,d)},createAddDatabaseModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newDatabaseName","Name","",!1,"Database Name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Database name must start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No database name given."}])),b.push(window.modalView.createTextEntry("newUser","Username",null!==this.users?this.users.whoAmI():"root","Please define the owner of this database. This will be the only user having initial access to this database if authentication is turned on. Please note that if you specify a username different to your account you will not be able to access the database with your account after having creating it. Specifying a username is mandatory even with authentication turned off. If there is a failure you will be informed.","Database Owner",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateDatabase.bind(this))),window.modalView.show("modalTable.ejs","Create Database",a,b)}})}(),function(){"use strict";window.DBSelectionView=Backbone.View.extend({template:templateEngine.createTemplate("dbSelectionView.ejs"),events:{"click .dbSelectionLink":"changeDatabase"},initialize:function(a){this.current=a.current},changeDatabase:function(a){var b=$(a.currentTarget).closest(".dbSelectionLink.tab").attr("id"),c=this.collection.createDatabaseURL(b);window.location.replace(c)},render:function(a){return this.$el=a,this.$el.html(this.template.render({list:this.collection.getDatabasesForUser(),current:this.current.get("name")})),this.delegateEvents(),this.el}})}(),function(){"use strict";window.DemoView=Backbone.View.extend({MAPtarget:"M9,0C4.029,0,0,4.029,0,9s4.029,9,9,9s9-4.029,9-9S13.971,0,9,0z M9,15.93 c-3.83,0-6.93-3.1-6.93-6.93S5.17,2.07,9,2.07s6.93,3.1,6.93,6.93S12.83,15.93,9,15.93 M12.5,9c0,1.933-1.567,3.5-3.5,3.5S5.5,10.933,5.5,9S7.067,5.5,9,5.5 S12.5,7.067,12.5,9z",lineColors:["rgb(255,255,229)"],airportColor:"#222222",airportHighlightColor:"#FF4E4E",airportHoverColor:"#ff8f35",airportScale:.7,airportHighligthScale:.95,imageData:[],keyToLongLat:{},queries:[{name:"All Flights from SFO"},{name:"All Flights from JFK"},{name:"All Flights from DFW"},{name:"All Flights from ATL"},{name:"All Flights from CWA"},{name:"Flight distribution"}],el:"#content",initialize:function(a){var b=a.collectionName;this.airportCollection=new window.Airports({collectionName:b})},events:{"change #flightQuerySelect":"runSelectedQuery","keyup #demoSearchInput":"searchInput"},selectAirport:function(a){this.showAirportBalloon(a.currentTarget.id),$("#searchResults").slideUp(function(){$("#searchResults ul").html("")})},template:templateEngine.createTemplate("demoView.ejs"),generateIndex:function(){var a,b=this;b.index=lunr(function(){this.field("Name",{boost:10}),this.field("City"),this.field("_key")}),this.airportCollection.each(function(c){a=c.toJSON(),b.index.add({Name:a.Name,City:a.City,_key:a._key,id:a._key})})},render:function(){$(this.el).html(this.template.render({})),this.renderAvailableQueries();var a=function(){var a,b=[];this.airportCollection.each(function(c){a=c.toJSON(),b.push(a)}),this.imageData=this.prepareData(b),this.renderMap(),this.generateIndex()}.bind(this);return this.airportCollection.getAirports(a),this},renderAvailableQueries:function(){var a=0;_.each(this.queries,function(b){$("#flightQuerySelect").append('"),a++})},searchInput:function(a){var b=this,c=this.index.search($(a.currentTarget).val());b.resetDataHighlighting(),b.removeFlightLines(!0),_.each(c,function(a){b.setAirportColor(a.ref,b.airportHighlightColor,!1),b.setAirportSize(a.ref,b.airportHighligthScale,!1)}),1===c.length&&b.showAirportBalloon(c[0].ref),b.map.validateData()},insertAirportSelection:function(a){},runSelectedQuery:function(){this.resetDataHighlighting(),this.removeFlightLines(!0);var a=$("#flightQuerySelect option:selected").attr("position");"0"===a?this.loadAirportData("SFO"):"1"===a?this.loadAirportData("JFK"):"2"===a&&this.loadAirportData("DFW"),"3"===a&&this.loadAirportData("ATL"),"4"===a&&this.loadAirportData("CWA"),"5"===a&&(delete this.startPoint,this.loadFlightDistData())},calculateAirportSize:function(a,b){var c=this.getMinMax(b),d=(c.min,c.max),e=d/10,f=0,g=0;for(g=0;10>g;g++)if(a.countc&&(c=a.count)}),{min:b,max:c}},loadFlightDistData:function(){var a=this,b=new Date;this.airportCollection.getFlightDistribution(function(c){var d=new Date-b;a.removeFlightLines(!1);var e=0,f=0;a.resetDataHighlighting();var g=Math.pow(c[0].count,3),h=Math.pow(c[c.length-1].count,3),i=2.625/(h-g),j=function(a){return i*a-i*g};for(f=0;fc.length-6&&a.setAirportColor(k,"rgb(153,52,4)")}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
      ");var n="";for(n="Aggregation - Flight distribution
      Query needed: "+(d/1e3).toFixed(3)+" sec
      Number destinations: "+c.length+"
      Number flights: "+e+"
      Top 5:
      ",f=c.length-1;f>Math.max(c.length-6,0);--f){var o=a.airportCollection.findWhere({_key:c[f].Dest});n+=o.get("Name")+" - "+o.get("_key")+": "+c[f].count+"",f>c.length-5&&(n+="
      ")}$("#demo-mapdiv-info").html(n),a.map.validateData()})},loadAirportData:function(a){$("#flightQuerySelect :nth-child(1)").prop("selected",!0);var b=this,c=new Date,d=this.airportCollection.findWhere({_key:a});this.airportCollection.getFlightsForAirport(a,function(e){var f=new Date-c;b.removeFlightLines(!1);var g=0,h=0;b.resetDataHighlighting();var i=Math.pow(e[0].count,3),j=Math.pow(e[e.length-1].count,3),k=2.625/(j-i),l=function(a){return k*a-k*i};for(h=0;he.length-6),g+=e[h].count}0===$("#demo-mapdiv-info").length&&$("#demo-mapdiv").append("
      ");var o="";for(o=""+d.get("Name").substr(0,25)+" - "+a+"
      Query needed: "+(f/1e3).toFixed(3)+" sec
      Number destinations: "+e.length+"
      Number flights: "+g+"
      Top 5:
      ",h=e.length-1;h>=Math.max(e.length-5,0);--h)d=b.airportCollection.findWhere({_key:e[h].Dest}),o+=d.get("Name").substr(0,25)+" - "+d.get("_key")+": "+e[h].count+"",h>e.length-5&&(o+="
      ");$("#demo-mapdiv-info").html(o),b.map.validateData()})},calculateFlightWidth:function(a,b){return 2},calculateFlightColor:function(a,b){return this.lineColors[0]},zoomToAirport:function(a){this.map.zoomToSelectedObject(this.map.getObjectById(a))},showAirportBalloon:function(a){this.map.allowMultipleDescriptionWindows=!0;var b=this.map.getObjectById(a);this.map.rollOverMapObject(b)},hideAirportBalloon:function(a){var b=this.map.getObjectById(a);this.map.rollOutMapObject(b)},setAirportColor:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.color=b)}),c&&this.map.validateData()},setAirportSize:function(a,b,c){_.each(this.imageData,function(c){c.id===a&&(c.scale=b)}),c&&this.map.validateData()},resetDataHighlighting:function(){var a=this;_.each(this.imageData,function(b){b.color=a.airportColor,b.scale=a.airportScale}),$("#demo-mapdiv-info").html("")},prepareData:function(a){var b=this,c=[];return _.each(a,function(a){c.push({id:a._key,latitude:a.Latitude,longitude:a.Longitude,svgPath:b.MAPtarget,color:b.airportColor,scale:b.airportScale,selectedScale:1,title:a.City+" ["+a._key+"]
      "+a.Name,rollOverColor:b.airportHoverColor,selectable:!0}),b.keyToLongLat[a._key]={lon:a.Longitude,lat:a.Latitude}}),c.push({color:"#FF0000",lines:[{latitudes:[51.5002,50.4422],longitudes:[-.1262,30.5367]}]}),c},createFlightEntry:function(a,b,c,d,e){return this.keyToLongLat.hasOwnProperty(a)&&this.keyToLongLat.hasOwnProperty(b)?{longitudes:[this.keyToLongLat[a].lon,this.keyToLongLat[b].lon],latitudes:[this.keyToLongLat[a].lat,this.keyToLongLat[b].lat],title:a+" - "+b+"
      "+c,color:d,thickness:e}:void 0},loadShortestPath:function(a,b){var c=this,d=new Date;this.airportCollection.getShortestFlight(a,b,function(a){var b=new Date-d;a.vertices||alert("Sorry there is no flight");for(var e=a.vertices,f=0;f
      Number switches: "+(e.length-2)+"
      Number flights: "+a.edges.length+"
      Airports:
      ",f=0;f"}$("#demo-mapdiv-info").html(i),c.map.validateData()})},renderMap:function(){var a=this;a.lines=[],AmCharts.theme=AmCharts.themes.light,a.map=AmCharts.makeChart("demo-mapdiv",{type:"map",showDescriptionOnHover:!1,dragMap:!0,creditsPosition:"bottom-left",pathToImages:"img/ammap/",dataProvider:{map:"usa2High",lines:a.lines,images:a.imageData,getAreasFromMap:!0},clickMapObject:function(b,c){void 0!==b.id&&3===b.id.length&&(c.shiftKey&&a.hasOwnProperty("startPoint")?(a.resetDataHighlighting(),a.removeFlightLines(!0),a.loadShortestPath(a.startPoint,b.id)):(a.startPoint=b.id,a.loadAirportData(b.id)))},balloon:{adjustBorderColor:!0,balloonColor:"#ffffff",color:"#000000",cornerRadius:5,fillColor:"#ffffff",fillAlpha:.75,borderThickness:1.5,borderColor:"#88A049",borderAlpha:.4,shadowAlpha:0,fontSize:10,verticalPadding:3,horizontalPadding:6},areasSettings:{autoZoom:!1,balloonText:""},linesSettings:{color:"#ff8f35",alpha:.75,thickness:2},linesAboveImages:!1})},removeFlightLines:function(a){this.lines.length=0,a&&this.map.validateData()},addFlightLines:function(a){_.each(a,function(a){this.addFlightLine(a.from,a.to,a.count,a.lineColor,a.lineWidth,!1)})},addFlightLine:function(a,b,c,d,e,f,g,h){var i=this.createFlightEntry(a,b,c,d,e);void 0!==i&&this.lines.push(i),this.setAirportColor(a,"#FFFFFF"),this.setAirportColor(b,this.airportHighlightColor),this.setAirportSize(a,1.5),this.setAirportSize(b,f),g&&this.setAirportColor(b,"rgb(153,52,4)")}})}(),function(){"use strict";var a=function(a){var b=a.split("/");return"collection/"+encodeURIComponent(b[0])+"/"+encodeURIComponent(b[1])};window.DocumentView=Backbone.View.extend({el:"#content",colid:0,docid:0,template:templateEngine.createTemplate("documentView.ejs"),events:{"click #saveDocumentButton":"saveDocument","click #deleteDocumentButton":"deleteDocumentModal","click #confirmDeleteDocument":"deleteDocument","click #document-from":"navigateToDocument","click #document-to":"navigateToDocument"},editor:0,setType:function(a){var b,c;return"edge"===a?(b=this.collection.getEdge(this.colid,this.docid),c="Edge: "):"document"===a&&(b=this.collection.getDocument(this.colid,this.docid),c="Document: "),b===!0?(this.type=a,this.fillInfo(c),this.fillEditor(),!0):void 0},deleteDocumentModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry("doc-delete-button","Delete","Delete this "+this.type+"?",void 0,void 0,!1,/[<>&'"]/)),a.push(window.modalView.createDeleteButton("Delete",this.deleteDocument.bind(this))),window.modalView.show("modalTable.ejs","Delete Document",a,b)},deleteDocument:function(){var a;if("document"===this.type){if(a=this.collection.deleteDocument(this.colid,this.docid),a===!1)return void arangoHelper.arangoError("Document error:","Could not delete")}else if("edge"===this.type&&(a=this.collection.deleteEdge(this.colid,this.docid),a===!1))return void arangoHelper.arangoError("Edge error:","Could not delete");if(a===!0){var b="collection/"+encodeURIComponent(this.colid)+"/documents/1";window.modalView.hide(),window.App.navigate(b,{trigger:!0})}},navigateToDocument:function(a){var b=$(a.target).attr("documentLink");b&&window.App.navigate(b,{trigger:!0})},fillInfo:function(b){var c=this.collection.first(),d=c.get("_id"),e=c.get("_key"),f=c.get("_rev"),g=c.get("_from"),h=c.get("_to");if($("#document-type").text(b),$("#document-id").text(d),$("#document-key").text(e),$("#document-rev").text(f),g&&h){var i=a(g),j=a(h);$("#document-from").text(g),$("#document-from").attr("documentLink",i),$("#document-to").text(h),$("#document-to").attr("documentLink",j)}else $(".edge-info-container").hide()},fillEditor:function(){var a=this.removeReadonlyKeys(this.collection.first().attributes);this.editor.set(a),$(".ace_content").attr("font-size","11pt")},jsonContentChanged:function(){this.enableSaveButton()},render:function(){$(this.el).html(this.template.render({})),this.disableSaveButton(),this.breadcrumb();var a=this,b=document.getElementById("documentEditor"),c={change:function(){a.jsonContentChanged()},search:!0,mode:"tree",modes:["tree","code"]};return this.editor=new JSONEditor(b,c),this},removeReadonlyKeys:function(a){return _.omit(a,["_key","_id","_from","_to","_rev"])},saveDocument:function(){var a,b;try{a=this.editor.get()}catch(c){return this.errorConfirmation(),void this.disableSaveButton()}if(a=JSON.stringify(a),"document"===this.type){if(b=this.collection.saveDocument(this.colid,this.docid,a),b===!1)return void arangoHelper.arangoError("Document error:","Could not save")}else if("edge"===this.type&&(b=this.collection.saveEdge(this.colid,this.docid,a),b===!1))return void arangoHelper.arangoError("Edge error:","Could not save");b===!0&&(this.successConfirmation(),this.disableSaveButton())},successConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#C6FFB0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},errorConfirmation:function(){$("#documentEditor .tree").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .tree").animate({backgroundColor:"#FFFFF"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFB0B0"},500),$("#documentEditor .ace_content").animate({backgroundColor:"#FFFFF"},500)},enableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!1),$("#saveDocumentButton").addClass("button-success"),$("#saveDocumentButton").removeClass("button-close")},disableSaveButton:function(){$("#saveDocumentButton").prop("disabled",!0),$("#saveDocumentButton").addClass("button-close"),$("#saveDocumentButton").removeClass("button-success")},breadcrumb:function(){var a=window.location.hash.split("/");$("#transparentHeader").append('")},escaped:function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}})}(),function(){"use strict";window.DocumentsView=window.PaginationView.extend({filters:{0:!0},filterId:0,paginationDiv:"#documentsToolbarF",idPrefix:"documents",addDocumentSwitch:!0,activeFilter:!1,lastCollectionName:void 0,restoredFilters:[],editMode:!1,allowUpload:!1,el:"#content",table:"#documentsTableID",template:templateEngine.createTemplate("documentsView.ejs"),collectionContext:{prev:null,next:null},editButtons:["#deleteSelected","#moveSelected"],initialize:function(){this.documentStore=this.options.documentStore,this.collectionsStore=this.options.collectionsStore,this.tableView=new window.TableView({el:this.table,collection:this.collection}),this.tableView.setRowClick(this.clicked.bind(this)),this.tableView.setRemoveClick(this.remove.bind(this))},setCollectionId:function(a,b){this.collection.setCollection(a);var c=arangoHelper.collectionApiType(a);this.pageid=b,this.type=c,this.checkCollectionState(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.collectionModel=this.collectionsStore.get(a)},getDocsCallback:function(){$("#documents_last").css("visibility","hidden"),$("#documents_first").css("visibility","hidden"),this.drawTable(),this.renderPaginationElements()},events:{"click #collectionPrev":"prevCollection","click #collectionNext":"nextCollection","click #filterCollection":"filterCollection","click #markDocuments":"editDocuments","click #indexCollection":"indexCollection","click #importCollection":"importCollection","click #exportCollection":"exportCollection","click #filterSend":"sendFilter","click #addFilterItem":"addFilterItem","click .removeFilterItem":"removeFilterItem","click #deleteSelected":"deleteSelectedDocs","click #moveSelected":"moveSelectedDocs","click #addDocumentButton":"addDocumentModal","click #documents_first":"firstDocuments","click #documents_last":"lastDocuments","click #documents_prev":"prevDocuments","click #documents_next":"nextDocuments","click #confirmDeleteBtn":"confirmDelete","click .key":"nop",keyup:"returnPressedHandler","keydown .queryline input":"filterValueKeydown","click #importModal":"showImportModal","click #resetView":"resetView","click #confirmDocImport":"startUpload","click #exportDocuments":"startDownload","change #newIndexType":"selectIndexType","click #createIndex":"createIndex","click .deleteIndex":"prepDeleteIndex","click #confirmDeleteIndexBtn":"deleteIndex","click #documentsToolbar ul":"resetIndexForms","click #indexHeader #addIndex":"toggleNewIndexView","click #indexHeader #cancelIndex":"toggleNewIndexView","change #documentSize":"setPagesize","change #docsSort":"setSorting"},showSpinner:function(){$("#uploadIndicator").show()},hideSpinner:function(){$("#uploadIndicator").hide()},showImportModal:function(){$("#docImportModal").modal("show")},hideImportModal:function(){$("#docImportModal").modal("hide")},setPagesize:function(){var a=$("#documentSize").find(":selected").val();this.collection.setPagesize(a),this.collection.getDocuments(this.getDocsCallback.bind(this))},setSorting:function(){var a=$("#docsSort").val();(""===a||void 0===a||null===a)&&(a="_key"),this.collection.setSort(a)},returnPressedHandler:function(a){13===a.keyCode&&$(a.target).is($("#docsSort"))&&this.collection.getDocuments(this.getDocsCallback.bind(this)),13===a.keyCode&&$("#confirmDeleteBtn").attr("disabled")===!1&&this.confirmDelete()},toggleNewIndexView:function(){$("#indexEditView").toggle("fast"),$("#newIndexView").toggle("fast"),this.resetIndexForms()},nop:function(a){a.stopPropagation()},resetView:function(){$("input").val(""),$("select").val("=="),this.removeAllFilterItems(),$("#documentSize").val(this.collection.getPageSize()),$("#documents_last").css("visibility","visible"),$("#documents_first").css("visibility","visible"),this.addDocumentSwitch=!0,this.collection.resetFilter(),this.collection.loadTotal(),this.restoredFilters=[],this.allowUpload=!1,this.files=void 0,this.file=void 0,$("#confirmDocImport").attr("disabled",!0),this.markFilterToggle(),this.collection.getDocuments(this.getDocsCallback.bind(this))},startDownload:function(){var a=this.collection.buildDownloadDocumentQuery();""!==a||void 0!==a||null!==a?window.open(encodeURI("query/result/download/"+btoa(JSON.stringify(a)))):arangoHelper.arangoError("Document error","could not download documents")},startUpload:function(){var a;return this.allowUpload===!0?(this.showSpinner(),a=this.collection.uploadDocuments(this.file),a!==!0?(this.hideSpinner(),this.hideImportModal(),this.resetView(),void arangoHelper.arangoError(a)):(this.hideSpinner(),this.hideImportModal(),void this.resetView())):void 0},uploadSetup:function(){var a=this;$("#importDocuments").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],$("#confirmDocImport").attr("disabled",!1),a.allowUpload=!0})},buildCollectionLink:function(a){return"collection/"+encodeURIComponent(a.get("name"))+"/documents/1"},markFilterToggle:function(){this.restoredFilters.length>0?$("#filterCollection").addClass("activated"):$("#filterCollection").removeClass("activated")},editDocuments:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),this.markFilterToggle(),$("#markDocuments").toggleClass("activated"),this.changeEditMode(),$("#filterHeader").hide(),$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").slideToggle(200),$("#exportHeader").hide()},filterCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),this.markFilterToggle(),this.activeFilter=!0,$("#importHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide(),$("#filterHeader").slideToggle(200);var a;for(a in this.filters)if(this.filters.hasOwnProperty(a))return void $("#attribute_name"+a).focus()},exportCollection:function(){$("#indexCollection").removeClass("activated"),$("#importCollection").removeClass("activated"),$("#filterHeader").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#exportCollection").toggleClass("activated"),this.markFilterToggle(),$("#exportHeader").slideToggle(200),$("#importHeader").hide(),$("#indexHeader").hide(),$("#filterHeader").hide(),$("#editHeader").hide()},importCollection:function(){this.markFilterToggle(),$("#indexCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#importCollection").toggleClass("activated"),$("#exportCollection").removeClass("activated"),$("#importHeader").slideToggle(200),$("#filterHeader").hide(),$("#indexHeader").hide(),$("#editHeader").hide(),$("#exportHeader").hide()},indexCollection:function(){this.markFilterToggle(),$("#importCollection").removeClass("activated"),$("#exportCollection").removeClass("activated"),$("#markDocuments").removeClass("activated"),this.changeEditMode(!1),$("#indexCollection").toggleClass("activated"),$("#newIndexView").hide(),$("#indexEditView").show(),$("#indexHeader").slideToggle(200),$("#importHeader").hide(),$("#editHeader").hide(),$("#filterHeader").hide(),$("#exportHeader").hide()},changeEditMode:function(a){a===!1||this.editMode===!0?($("#documentsTableID tbody tr").css("cursor","default"),$(".deleteButton").fadeIn(),$(".addButton").fadeIn(),$(".selected-row").removeClass("selected-row"),this.editMode=!1,this.tableView.setRowClick(this.clicked.bind(this))):($("#documentsTableID tbody tr").css("cursor","copy"),$(".deleteButton").fadeOut(),$(".addButton").fadeOut(),$(".selectedCount").text(0),this.editMode=!0, +this.tableView.setRowClick(this.editModeClick.bind(this)))},getFilterContent:function(){var a,b=[];for(a in this.filters)if(this.filters.hasOwnProperty(a)){var c=$("#attribute_value"+a).val();try{c=JSON.parse(c)}catch(d){c=String(c)}""!==$("#attribute_name"+a).val()&&b.push({attribute:$("#attribute_name"+a).val(),operator:$("#operator"+a).val(),value:c})}return b},sendFilter:function(){this.restoredFilters=this.getFilterContent();var a=this;this.collection.resetFilter(),this.addDocumentSwitch=!1,_.each(this.restoredFilters,function(b){void 0!==b.operator&&a.collection.addFilter(b.attribute,b.operator,b.value)}),this.collection.setToFirst(),this.collection.getDocuments(this.getDocsCallback.bind(this)),this.markFilterToggle()},restoreFilter:function(){var a=this,b=0;this.filterId=0,$("#docsSort").val(this.collection.getSort()),_.each(this.restoredFilters,function(c){0!==b&&a.addFilterItem(),void 0!==c.operator&&($("#attribute_name"+b).val(c.attribute),$("#operator"+b).val(c.operator),$("#attribute_value"+b).val(c.value)),b++,a.collection.addFilter(c.attribute,c.operator,c.value)})},addFilterItem:function(){var a=++this.filterId;$("#filterHeader").append('
      '),this.filters[a]=!0},filterValueKeydown:function(a){13===a.keyCode&&this.sendFilter()},removeFilterItem:function(a){var b=a.currentTarget,c=b.id.replace(/^removeFilter/,"");delete this.filters[c],delete this.restoredFilters[c],$(b.parentElement).remove()},removeAllFilterItems:function(){var a,b=$("#filterHeader").children().length;for(a=1;b>=a;a++)$("#removeFilter"+a).parent().remove();this.filters={0:!0},this.filterId=0},addDocumentModal:function(){var a=window.location.hash.split("/")[1],b=[],c=[],d=arangoHelper.collectionApiType(a,!0);return"edge"===d?(c.push(window.modalView.createTextEntry("new-edge-from-attr","_from","","document _id: document handle of the linked vertex (incoming relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _from attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-to","_to","","document _id: document handle of the linked vertex (outgoing relation)",void 0,!1,[{rule:Joi.string().required(),msg:"No _to attribute given."}])),c.push(window.modalView.createTextEntry("new-edge-key-attr","_key",void 0,"the edges unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addEdge.bind(this))),void window.modalView.show("modalTable.ejs","Create edge",b,c)):(c.push(window.modalView.createTextEntry("new-document-key-attr","_key",void 0,"the documents unique key(optional attribute, leave empty for autogenerated key","is optional: leave empty for autogenerated key",!1,[{}])),b.push(window.modalView.createSuccessButton("Create",this.addDocument.bind(this))),window.modalView.show("modalTable.ejs","Create document",b,c),void 0)},addEdge:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-edge-from-attr").last().val(),d=$(".modal-body #new-edge-to").last().val(),e=$(".modal-body #new-edge-key-attr").last().val();a=""!==e||void 0!==e?this.documentStore.createTypeEdge(b,c,d,e):this.documentStore.createTypeEdge(b,c,d),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating edge failed")},addDocument:function(){var a,b=window.location.hash.split("/")[1],c=$(".modal-body #new-document-key-attr").last().val();a=""!==c||void 0!==c?this.documentStore.createTypeDocument(b,c):this.documentStore.createTypeDocument(b),a!==!1?(window.modalView.hide(),window.location.hash="collection/"+a):arangoHelper.arangoError("Creating document failed")},moveSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createTextEntry("move-documents-to","Move to","",!1,"collection-name",!0,[{rule:Joi.string().regex(/^[a-zA-Z]/),msg:"Collection name must always start with a letter."},{rule:Joi.string().regex(/^[a-zA-Z0-9\-_]*$/),msg:'Only Symbols "_" and "-" are allowed.'},{rule:Joi.string().required(),msg:"No collection name given."}])),a.push(window.modalView.createSuccessButton("Move",this.confirmMoveSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Move documents",a,b))},confirmMoveSelectedDocs:function(){var a=this.getSelectedDocs(),b=this,c=$(".modal-body").last().find("#move-documents-to").val(),d=function(){this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()}.bind(this);_.each(a,function(a){b.collection.moveDocument(a,b.collection.collectionID,c,d)})},deleteSelectedDocs:function(){var a=[],b=[],c=this.getSelectedDocs();0!==c.length&&(b.push(window.modalView.createReadOnlyEntry(void 0,c.length+" documents selected","Do you want to delete all selected documents?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.confirmDeleteSelectedDocs.bind(this))),window.modalView.show("modalTable.ejs","Delete documents",a,b))},confirmDeleteSelectedDocs:function(){var a=this.getSelectedDocs(),b=[],c=this;_.each(a,function(a){var d=!1;"document"===c.type?(d=c.documentStore.deleteDocument(c.collection.collectionID,a),d?(b.push(!0),c.collection.setTotalMinusOne()):(b.push(!1),arangoHelper.arangoError("Document error","Could not delete document."))):"edge"===c.type&&(d=c.documentStore.deleteEdge(c.collection.collectionID,a),d===!0?(c.collection.setTotalMinusOne(),b.push(!0)):(b.push(!1),arangoHelper.arangoError("Edge error","Could not delete edge")))}),this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#markDocuments").click(),window.modalView.hide()},getSelectedDocs:function(){var a=[];return _.each($("#documentsTableID tbody tr"),function(b){$(b).hasClass("selected-row")&&a.push($($(b).children()[1]).find(".key").text())}),a},remove:function(a){this.docid=$(a.currentTarget).closest("tr").attr("id").substr(4),$("#confirmDeleteBtn").attr("disabled",!1),$("#docDeleteModal").modal("show")},confirmDelete:function(){$("#confirmDeleteBtn").attr("disabled",!0);var a=window.location.hash.split("/"),b=a[3];"source"!==b&&this.reallyDelete()},reallyDelete:function(){var a,b=this,c=($(b.target).closest("tr").get(0),!1);"document"===this.type?(a=this.documentStore.deleteDocument(this.collection.collectionID,this.docid),a?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Doc error")):"edge"===this.type&&(a=this.documentStore.deleteEdge(this.collection.collectionID,this.docid),a===!0?(this.collection.setTotalMinusOne(),c=!0):arangoHelper.arangoError("Edge error")),c===!0&&(this.collection.getDocuments(this.getDocsCallback.bind(this)),$("#docDeleteModal").modal("hide"))},editModeClick:function(a){var b=$(a.currentTarget);b.hasClass("selected-row")?b.removeClass("selected-row"):b.addClass("selected-row");var c=this.getSelectedDocs();$(".selectedCount").text(c.length),_.each(this.editButtons,function(a){c.length>0?($(a).prop("disabled",!1),$(a).removeClass("button-neutral"),$(a).removeClass("disabled"),"#moveSelected"===a?$(a).addClass("button-success"):$(a).addClass("button-danger")):($(a).prop("disabled",!0),$(a).addClass("disabled"),$(a).addClass("button-neutral"),"#moveSelected"===a?$(a).removeClass("button-success"):$(a).removeClass("button-danger"))})},clicked:function(a){var b=a.currentTarget;window.App.navigate("collection/"+this.collection.collectionID+"/"+$(b).attr("id").substr(4),!0)},drawTable:function(){this.tableView.setElement($(this.table)).render(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),$(".prettify").snippet("javascript",{style:"nedit",menu:!1,startText:!1,transparent:!0,showNum:!1})},checkCollectionState:function(){this.lastCollectionName===this.collectionName?this.activeFilter&&(this.filterCollection(),this.restoreFilter()):void 0!==this.lastCollectionName&&(this.collection.resetFilter(),this.collection.setSort("_key"),this.restoredFilters=[],this.activeFilter=!1)},render:function(){return $(this.el).html(this.template.render({})),this.tableView.setElement($(this.table)).drawLoading(),this.collectionContext=this.collectionsStore.getPosition(this.collection.collectionID),this.getIndex(),this.breadcrumb(),this.checkCollectionState(),this.lastCollectionName=this.collectionName,this.uploadSetup(),$("[data-toggle=tooltip]").tooltip(),$(".upload-info").tooltip(),arangoHelper.fixTooltips(".icon_arangodb, .arangoicon","top"),this.renderPaginationElements(),this.selectActivePagesize(),this.markFilterToggle(),this},rerender:function(){this.collection.getDocuments(this.getDocsCallback.bind(this))},selectActivePagesize:function(){$("#documentSize").val(this.collection.getPageSize())},renderPaginationElements:function(){this.renderPagination();var a=$("#totalDocuments");0===a.length&&($("#documentsToolbarFL").append(''),a=$("#totalDocuments")),"document"===this.type&&a.html(this.collection.getTotal()+" document(s)"),"edge"===this.type&&a.html(this.collection.getTotal()+" edge(s)")},breadcrumb:function(){this.collectionName=window.location.hash.split("/")[1],$("#transparentHeader").append('")},resetIndexForms:function(){$("#indexHeader input").val("").prop("checked",!1),$("#newIndexType").val("Cap").prop("selected",!0),this.selectIndexType()},stringToArray:function(a){var b=[];return a.split(",").forEach(function(a){a=a.replace(/(^\s+|\s+$)/g,""),""!==a&&b.push(a)}),b},createIndex:function(){var a,b,c,d,e=this,f=$("#newIndexType").val(),g={};switch(f){case"Cap":var h=parseInt($("#newCapSize").val(),10)||0,i=parseInt($("#newCapByteSize").val(),10)||0;g={type:"cap",size:h,byteSize:i};break;case"Geo":b=$("#newGeoFields").val();var j=e.checkboxToValue("#newGeoJson"),k=e.checkboxToValue("#newGeoConstraint"),l=e.checkboxToValue("#newGeoIgnoreNull");g={type:"geo",fields:e.stringToArray(b),geoJson:j,constraint:k,ignoreNull:l};break;case"Hash":b=$("#newHashFields").val(),c=e.checkboxToValue("#newHashUnique"),d=e.checkboxToValue("#newHashSparse"),g={type:"hash",fields:e.stringToArray(b),unique:c,sparse:d};break;case"Fulltext":b=$("#newFulltextFields").val();var m=parseInt($("#newFulltextMinLength").val(),10)||0;g={type:"fulltext",fields:e.stringToArray(b),minLength:m};break;case"Skiplist":b=$("#newSkiplistFields").val(),c=e.checkboxToValue("#newSkiplistUnique"),d=e.checkboxToValue("#newSkiplistSparse"),g={type:"skiplist",fields:e.stringToArray(b),unique:c,sparse:d}}if(a=e.collectionModel.createIndex(g),a===!0)$("#collectionEditIndexTable tbody tr").remove(),e.getIndex(),e.toggleNewIndexView(),e.resetIndexForms();else if(a.responseText){var n=JSON.parse(a.responseText);arangoHelper.arangoNotification("Document error",n.errorMessage)}else arangoHelper.arangoNotification("Document error","Could not create index.")},prepDeleteIndex:function(a){this.lastTarget=a,this.lastId=$(this.lastTarget.currentTarget).parent().parent().first().children().first().text(),$("#indexDeleteModal").modal("show")},deleteIndex:function(){var a=this.collectionModel.deleteIndex(this.lastId);a===!0?$(this.lastTarget.currentTarget).parent().parent().remove():arangoHelper.arangoError("Could not delete index"),$("#indexDeleteModal").modal("hide")},selectIndexType:function(){$(".newIndexClass").hide();var a=$("#newIndexType").val();$("#newIndexType"+a).show()},checkboxToValue:function(a){return $(a).prop("checked")},getIndex:function(){this.index=this.collectionModel.getIndex();var a="collectionInfoTh modal-text";if(this.index){var b="",c="";$.each(this.index.indexes,function(d,e){c="primary"===e.type||"edge"===e.type?'':'',void 0!==e.fields&&(b=e.fields.join(", "));var f=e.id.indexOf("/"),g=e.id.substr(f+1,e.id.length),h=e.hasOwnProperty("selectivityEstimate")?(100*e.selectivityEstimate).toFixed(2)+"%":"n/a",i=e.hasOwnProperty("sparse")?e.sparse:"n/a";$("#collectionEditIndexTable").append(""+g+""+e.type+""+e.unique+""+i+""+h+""+b+""+c+"")}),arangoHelper.fixTooltips("deleteIndex","left")}}})}(),function(){"use strict";window.EditListEntryView=Backbone.View.extend({template:templateEngine.createTemplate("editListEntryView.ejs"),initialize:function(a){this.key=a.key,this.value=a.value,this.render()},events:{"click .deleteAttribute":"removeRow"},render:function(){$(this.el).html(this.template.render({key:this.key,value:JSON.stringify(this.value),isReadOnly:this.isReadOnly()}))},isReadOnly:function(){return 0===this.key.indexOf("_")},getKey:function(){return $(".key").val()},getValue:function(){var val=$(".val").val();try{val=JSON.parse(val)}catch(e){try{return eval("val = "+val),val}catch(e2){return $(".val").val()}}return val},removeRow:function(){this.remove()}})}(),function(){"use strict";window.FooterView=Backbone.View.extend({el:"#footerBar",system:{},isOffline:!0,isOfflineCounter:0,firstLogin:!0,events:{"click .footer-center p":"showShortcutModal"},initialize:function(){var a=this;window.setInterval(function(){a.getVersion()},15e3),a.getVersion()},template:templateEngine.createTemplate("footerView.ejs"),showServerStatus:function(a){a===!0?($(".serverStatusIndicator").addClass("isOnline"),$(".serverStatusIndicator").addClass("fa-check-circle-o"),$(".serverStatusIndicator").removeClass("fa-times-circle-o")):($(".serverStatusIndicator").removeClass("isOnline"),$(".serverStatusIndicator").removeClass("fa-check-circle-o"),$(".serverStatusIndicator").addClass("fa-times-circle-o"))},showShortcutModal:function(){window.arangoHelper.hotkeysFunctions.showHotkeysModal()},getVersion:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(b){a.showServerStatus(!0),a.isOffline===!0&&(a.isOffline=!1,a.isOfflineCounter=0,a.firstLogin?a.firstLogin=!1:window.setTimeout(function(){a.showServerStatus(!0)},1e3),a.system.name=b.server,a.system.version=b.version,a.render())},error:function(b){a.isOffline=!0,a.isOfflineCounter++,a.isOfflineCounter>=1&&a.showServerStatus(!1)}}),a.system.hasOwnProperty("database")||$.ajax({type:"GET",cache:!1,url:"/_api/database/current",contentType:"application/json",processData:!1,async:!0,success:function(b){var c=b.result.name;a.system.database=c;var d=window.setInterval(function(){var b=$("#databaseNavi");b&&(window.clearTimeout(d),d=null,"_system"===c?($(".logs-menu").css("visibility","visible"),$(".logs-menu").css("display","inline"),$("#databaseNavi").css("display","inline")):($(".logs-menu").css("visibility","hidden"),$(".logs-menu").css("display","none")),a.render())},50)}})},renderVersion:function(){this.system.hasOwnProperty("database")&&this.system.hasOwnProperty("name")&&$(this.el).html(this.template.render({name:this.system.name,version:this.system.version,database:this.system.database}))},render:function(){return this.system.version||this.getVersion(),$(this.el).html(this.template.render({name:this.system.name,version:this.system.version})),this}})}(),function(){"use strict";window.FoxxActiveView=Backbone.View.extend({tagName:"div",className:"tile",template:templateEngine.createTemplate("foxxActiveView.ejs"),_show:!0,events:{click:"openAppDetailView"},openAppDetailView:function(){window.App.navigate("applications/"+encodeURIComponent(this.model.get("mount")),{trigger:!0})},toggle:function(a,b){switch(a){case"devel":this.model.isDevelopment()&&(this._show=b);break;case"production":this.model.isDevelopment()||this.model.isSystem()||(this._show=b);break;case"system":this.model.isSystem()&&(this._show=b)}this._show?$(this.el).show():$(this.el).hide()},render:function(){return $(this.el).html(this.template.render({model:this.model})),$(this.el)}})}(),function(){"use strict";var a=require("internal").errors,b=templateEngine.createTemplate("applicationListView.ejs"),c=function(a){this.collection=a.collection},d=function(b){if(window.hass=b,b.error===!1)this.collection.fetch({async:!1}),window.modalView.hide(),this.reload();else{var c=b;switch(b.hasOwnProperty("responseJSON")&&(c=b.responseJSON),c.errorNum){case a.ERROR_APPLICATION_DOWNLOAD_FAILED.code:alert("Unable to download application from the given repository.");break;default:alert("Error: "+c.errorNum+". "+c.errorMessage)}}},e=function(){window.modalView.modalBindValidation({id:"new-app-mount",validateInput:function(){return[{rule:Joi.string().regex(/^(\/(APP[^\/]+|(?!APP)[a-zA-Z0-9_\-%]+))+$/i),msg:"May not contain /APP"},{rule:Joi.string().regex(/^(\/[a-zA-Z0-9_\-%]+)+$/),msg:"Can only contain [a-zA-Z0-9_-%]"},{rule:Joi.string().regex(/^\/[^_]/),msg:"Mountpoints with _ are reserved for internal use"},{rule:Joi.string().regex(/[^\/]$/),msg:"May not end with /"},{rule:Joi.string().regex(/^\//),msg:"Has to start with /"},{rule:Joi.string().required().min(2),msg:"Has to be non-empty"}]}})},f=function(){window.modalView.modalBindValidation({id:"repository",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/),msg:"No valid github account and repository."}]}})},g=function(){window.modalView.modalBindValidation({id:"new-app-author",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-name",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z\-_][a-zA-Z0-9\-_]*$/),msg:"Can only contain a to z, A to Z, 0-9, '-' and '_'."}]}}),window.modalView.modalBindValidation({id:"new-app-description",validateInput:function(){return[{rule:Joi.string().required().min(1),msg:"Has to be non empty."}]}}),window.modalView.modalBindValidation({id:"new-app-license",validateInput:function(){return[{rule:Joi.string().required().regex(/^[a-zA-Z0-9 \.,;\-]+$/),msg:"Has to be non empty."}]}}),window.modalView.modalTestAll()},h=function(a){window.modalView.clearValidators();var b=$(a.currentTarget).attr("href").substr(1),c=$("#modalButton1");switch(this._upgrade||e(),b){case"newApp":c.html("Generate"),c.prop("disabled",!1),g();break;case"appstore":c.html("Install"),c.prop("disabled",!0);break;case"github":f(),c.html("Install"),c.prop("disabled",!1);break;case"zip":c.html("Install"),c.prop("disabled",!1)}c.prop("disabled")||window.modalView.modalTestAll()||c.prop("disabled",!0)},i=function(a){if(window.modalView.modalTestAll()){var b,c;this._upgrade?(b=this.mount,c=$("#new-app-teardown").prop("checked")):b=window.arangoHelper.escapeHtml($("#new-app-mount").val());var e=$(a.currentTarget).attr("appId"),f=$(a.currentTarget).attr("appVersion");void 0!==c?this.collection.installFromStore({name:e,version:f},b,d.bind(this),c):this.collection.installFromStore({name:e,version:f},b,d.bind(this))}},j=function(a,b){if(void 0===b?b=this._uploadData:this._uploadData=b,b&&window.modalView.modalTestAll()){var c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),void 0!==e?this.collection.installFromZip(b.filename,c,d.bind(this),e):this.collection.installFromZip(b.filename,c,d.bind(this))}},k=function(){if(window.modalView.modalTestAll()){var a,b,c,e;this._upgrade?(c=this.mount,e=$("#new-app-teardown").prop("checked")):c=window.arangoHelper.escapeHtml($("#new-app-mount").val()),a=window.arangoHelper.escapeHtml($("#repository").val()),b=window.arangoHelper.escapeHtml($("#tag").val()),""===b&&(b="master");var f={url:window.arangoHelper.escapeHtml($("#repository").val()),version:window.arangoHelper.escapeHtml($("#tag").val())};try{Joi.assert(a,Joi.string().regex(/^[a-zA-Z0-9_\-]+\/[a-zA-Z0-9_\-]+$/))}catch(g){return}void 0!==e?this.collection.installFromGithub(f,c,d.bind(this),e):this.collection.installFromGithub(f,c,d.bind(this))}},l=function(){if(window.modalView.modalTestAll()){var a,b;this._upgrade?(a=this.mount,b=$("#new-app-teardown").prop("checked")):a=window.arangoHelper.escapeHtml($("#new-app-mount").val());var c={name:window.arangoHelper.escapeHtml($("#new-app-name").val()),collectionNames:_.map($("#new-app-collections").select2("data"),function(a){return window.arangoHelper.escapeHtml(a.text)}),author:window.arangoHelper.escapeHtml($("#new-app-author").val()),license:window.arangoHelper.escapeHtml($("#new-app-license").val()),description:window.arangoHelper.escapeHtml($("#new-app-description").val())};void 0!==b?this.collection.generate(c,a,d.bind(this),b):this.collection.generate(c,a,d.bind(this))}},m=function(){var a=$(".modal-body .tab-pane.active").attr("id");switch(a){case"newApp":l.apply(this);break;case"github":k.apply(this);break;case"zip":j.apply(this)}},n=function(a,c){var d=[],e={"click #infoTab a":h.bind(a),"click .install-app":i.bind(a)};d.push(window.modalView.createSuccessButton("Generate",m.bind(a))),window.modalView.show("modalApplicationMount.ejs","Install Service",d,c,void 0,void 0,e),$("#new-app-collections").select2({tags:[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px"}),$("#upload-foxx-zip").uploadFile({url:"/_api/upload?multipart=true",allowedTypes:"zip",multiple:!1,onSuccess:j.bind(a)}),$.get("foxxes/fishbowl",function(a){var c=$("#appstore-content");_.each(_.sortBy(a,"name"),function(a){c.append(b.render(a))})}).fail(function(){var a=$("#appstore-content");a.append("Store is not available. ArangoDB is not able to connect to github.com")})};c.prototype.install=function(a){this.reload=a,this._upgrade=!1,this._uploadData=void 0,delete this.mount,n(this,!1),window.modalView.clearValidators(),e(),g()},c.prototype.upgrade=function(a,b){this.reload=b,this._upgrade=!0,this._uploadData=void 0,this.mount=a,n(this,!0),window.modalView.clearValidators(),g()},window.FoxxInstallView=c}(),function(){"use strict";window.GraphManagementView=Backbone.View.extend({el:"#content",template:templateEngine.createTemplate("graphManagementView.ejs"),edgeDefintionTemplate:templateEngine.createTemplate("edgeDefinitionTable.ejs"),eCollList:[],removedECollList:[],dropdownVisible:!1,events:{"click #deleteGraph":"deleteGraph","click .icon_arangodb_settings2.editGraph":"editGraph","click #createGraph":"addNewGraph","keyup #graphManagementSearchInput":"search","click #graphManagementSearchSubmit":"search","click .tile-graph":"redirectToGraphViewer","click #graphManagementToggle":"toggleGraphDropdown","click .css-label":"checkBoxes","change #graphSortDesc":"sorting"},redirectToGraphViewer:function(a){var b=$(a.currentTarget).attr("id");b=b.substr(0,b.length-5),window.location=window.location+"/"+encodeURIComponent(b)},loadGraphViewer:function(a){var b=this.collection.get(a).get("edgeDefinitions");if(b&&0!==b.length){var c={type:"gharial",graphName:a,baseUrl:require("internal").arango.databasePrefix("/")},d=$("#content").width()-75;$("#content").html("");var e=arangoHelper.calculateCenterDivHeight();this.ui=new GraphViewerUI($("#content")[0],c,d,e,{nodeShaper:{label:"_key",color:{type:"attribute",key:"_key"}}},!0),$(".contentDiv").height(e)}},handleResize:function(a){this.width&&this.width===a||(this.width=a,this.ui&&this.ui.changeWidth(a))},addNewGraph:function(a){a.preventDefault(),this.createEditGraphModal()},deleteGraph:function(){var a=this,b=$("#editGraphName")[0].value;this.collection.get(b).destroy({success:function(){a.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;arangoHelper.arangoError(d),window.modalView.hide()}})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},toggleGraphDropdown:function(){$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown2").slideToggle(200)},sorting:function(){$("#graphSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#graphManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(){return this.collection.fetch({async:!1}),this.collection.sort(),$(this.el).html(this.template.render({graphs:this.collection,searchString:""})),this.dropdownVisible===!0&&($("#graphManagementDropdown2").show(),$("#graphSortDesc").attr("checked",this.collection.sortOptions.desc),$("#graphManagementToggle").toggleClass("activated"),$("#graphManagementDropdown").show()),this.events["click .tableRow"]=this.showHideDefinition.bind(this),this.events['change tr[id*="newEdgeDefinitions"]']=this.setFromAndTo.bind(this),this.events["click .graphViewer-icon-button"]=this.addRemoveDefinition.bind(this),arangoHelper.setCheckboxStatus("#graphManagementDropdown"),this},setFromAndTo:function(a){a.stopPropagation();var b,c=this.calculateEdgeDefinitionMap();if(a.added){if(-1===this.eCollList.indexOf(a.added.id)&&-1!==this.removedECollList.indexOf(a.added.id))return b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$('input[id*="newEdgeDefinitions'+b+'"]').select2("val",null),void $('input[id*="newEdgeDefinitions'+b+'"]').attr("placeholder","The collection "+a.added.id+" is already used.");this.removedECollList.push(a.added.id),this.eCollList.splice(this.eCollList.indexOf(a.added.id),1)}else this.eCollList.push(a.removed.id),this.removedECollList.splice(this.removedECollList.indexOf(a.removed.id),1);c[a.val]?(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",c[a.val].from),$("#fromCollections"+b).attr("disabled",!0),$("#s2id_toCollections"+b).select2("val",c[a.val].to),$("#toCollections"+b).attr("disabled",!0)):(b=a.currentTarget.id.split("row_newEdgeDefinitions")[1],$("#s2id_fromCollections"+b).select2("val",null),$("#fromCollections"+b).attr("disabled",!1),$("#s2id_toCollections"+b).select2("val",null),$("#toCollections"+b).attr("disabled",!1))},editGraph:function(a){a.stopPropagation(),this.collection.fetch(),this.graphToEdit=this.evaluateGraphName($(a.currentTarget).attr("id"),"_settings");var b=this.collection.findWhere({_key:this.graphToEdit});this.createEditGraphModal(b)},saveEditedGraph:function(){var a,b,c,d,e,f=$("#editGraphName")[0].value,g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i={};if(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){if(d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),0!==b.length&&0!==c.length)){var f={collection:a,from:b,to:c};h.push(f),i[a]=f}}),0===h.length)return void $("#s2id_newEdgeDefinitions0 .select2-choices").css("border-color","red");var j=this.collection.findWhere({_key:f}),k=j.get("edgeDefinitions"),l=j.get("orphanCollections"),m=[];l.forEach(function(a){-1===g.indexOf(a)&&j.deleteVertexCollection(a)}),g.forEach(function(a){-1===l.indexOf(a)&&j.addVertexCollection(a)});var n=[],o=[],p=[];k.forEach(function(a){var b=a.collection;m.push(b);var c=i[b];void 0===c?p.push(b):JSON.stringify(c)!==JSON.stringify(a)&&o.push(b)}),h.forEach(function(a){var b=a.collection;-1===m.indexOf(b)&&n.push(b)}),n.forEach(function(a){j.addEdgeDefinition(i[a])}),o.forEach(function(a){j.modifyEdgeDefinition(i[a])}),p.forEach(function(a){j.deleteEdgeDefinition(a)}),this.updateGraphManagementView(),window.modalView.hide()},evaluateGraphName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},search:function(){var a,b,c,d;a=$("#graphManagementSearchInput"),b=$("#graphManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("_key").indexOf(b)}),$(this.el).html(this.template.render({graphs:d,searchString:b})),a=$("#graphManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},updateGraphManagementView:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},createNewGraph:function(){var a,b,c,d,e,f=$("#createNewGraphName").val(),g=_.pluck($("#newVertexCollections").select2("data"),"text"),h=[],i=this;return f?this.collection.findWhere({_key:f})?(arangoHelper.arangoError("The graph '"+f+"' already exists."),0):(e=$("[id^=s2id_newEdgeDefinitions]").toArray(),e.forEach(function(e){d=$(e).attr("id"),d=d.replace("s2id_newEdgeDefinitions",""),a=_.pluck($("#s2id_newEdgeDefinitions"+d).select2("data"),"text")[0],a&&""!==a&&(b=_.pluck($("#s2id_fromCollections"+d).select2("data"),"text"),c=_.pluck($("#s2id_toCollections"+d).select2("data"),"text"),1!==b&&1!==c&&h.push({collection:a,from:b,to:c}))}),void this.collection.create({name:f,edgeDefinitions:h,orphanCollections:g},{success:function(){i.updateGraphManagementView(),window.modalView.hide()},error:function(a,b){var c=JSON.parse(b.responseText),d=c.errorMessage;d=d.replace("<",""),d=d.replace(">",""),arangoHelper.arangoError(d)}})):(arangoHelper.arangoError("A name for the graph has to be provided."),0)},createEditGraphModal:function(a){var b,c=[],d=[],e=[],f=this.options.collectionCollection.models,g=this,h="",i=[{collection:"",from:"",to:""}],j="",k=function(a,b){return a=a.toLowerCase(),b=b.toLowerCase(),b>a?-1:a>b?1:0};if(this.eCollList=[],this.removedECollList=[],f.forEach(function(a){a.get("isSystem")||("edge"===a.get("type")?g.eCollList.push(a.id):d.push(a.id))}),window.modalView.enableHotKeys=!1,this.counter=0,a?(b="Edit Graph",h=a.get("_key"),i=a.get("edgeDefinitions"),i&&0!==i.length||(i=[{collection:"",from:"",to:""}]),j=a.get("orphanCollections"),e.push(window.modalView.createReadOnlyEntry("editGraphName","Name",h,"The name to identify the graph. Has to be unique")),c.push(window.modalView.createDeleteButton("Delete",this.deleteGraph.bind(this))),c.push(window.modalView.createSuccessButton("Save",this.saveEditedGraph.bind(this)))):(b="Create Graph",e.push(window.modalView.createTextEntry("createNewGraphName","Name","","The name to identify the graph. Has to be unique.","graphName",!0)),c.push(window.modalView.createSuccessButton("Create",this.createNewGraph.bind(this)))),i.forEach(function(a){0===g.counter?(a.collection&&(g.removedECollList.push(a.collection),g.eCollList.splice(g.eCollList.indexOf(a.collection),1)),e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!0,!1,!0,1,g.eCollList.sort(k)))):e.push(window.modalView.createSelect2Entry("newEdgeDefinitions"+g.counter,"Edge definitions",a.collection,"An edge definition defines a relation of the graph","Edge definitions",!1,!0,!1,1,g.eCollList.sort(k))),e.push(window.modalView.createSelect2Entry("fromCollections"+g.counter,"fromCollections",a.from,"The collections that contain the start vertices of the relation.","fromCollections",!0,!1,!1,10,d.sort(k))),e.push(window.modalView.createSelect2Entry("toCollections"+g.counter,"toCollections",a.to,"The collections that contain the end vertices of the relation.","toCollections",!0,!1,!1,10,d.sort(k))), +g.counter++}),e.push(window.modalView.createSelect2Entry("newVertexCollections","Vertex collections",j,"Collections that are part of a graph but not used in an edge definition","Vertex Collections",!1,!1,!1,10,d.sort(k))),window.modalView.show("modalGraphTable.ejs",b,c,e,void 0,void 0,this.events),a){var l;for(l=0;l<=this.counter;l++)$("#row_fromCollections"+l).hide(),$("#row_toCollections"+l).hide()}},showHideDefinition:function(a){a.stopPropagation();var b,c=$(a.currentTarget).attr("id");-1!==c.indexOf("row_newEdgeDefinitions")&&(b=c.split("row_newEdgeDefinitions")[1],$("#row_fromCollections"+b).toggle(),$("#row_toCollections"+b).toggle())},addRemoveDefinition:function(a){var b=[],c=this.options.collectionCollection.models;c.forEach(function(a){a.get("isSystem")||b.push(a.id)}),a.stopPropagation();var d,e=$(a.currentTarget).attr("id");return-1!==e.indexOf("addAfter_newEdgeDefinitions")?(this.counter++,$("#row_newVertexCollections").before(this.edgeDefintionTemplate.render({number:this.counter})),$("#newEdgeDefinitions"+this.counter).select2({tags:this.eCollList,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:1}),$("#fromCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),$("#toCollections"+this.counter).select2({tags:b,showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:10}),window.modalView.undelegateEvents(),void window.modalView.delegateEvents(this.events)):void(-1!==e.indexOf("remove_newEdgeDefinitions")&&(d=e.split("remove_newEdgeDefinitions")[1],$("#row_newEdgeDefinitions"+d).remove(),$("#row_fromCollections"+d).remove(),$("#row_toCollections"+d).remove()))},calculateEdgeDefinitionMap:function(){var a={};return this.collection.models.forEach(function(b){b.get("edgeDefinitions").forEach(function(b){a[b.collection]={from:b.from,to:b.to}})}),a}})}(),function(){"use strict";window.GraphTestView=Backbone.View.extend({el:"#content",graphContainer:"graphContainer",template:templateEngine.createTemplate("graphTestView.ejs"),events:{},render:function(){var a=this;$(this.el).html(this.template.render({})),_.each(this.jsonRequestDummy,function(b){a.parseResultOfTraversal(b)}),$("#"+this.graphContainer).height(arangoHelper.calculateCenterDivHeight());var b=Viva.Graph.generator(),c=b.grid(10,10);c=Viva.Graph.graph(),c.Name="ArangoDB Test Graph";for(var d=0;d0&&(m-=1),a.id0&&n.webglUtils.copyArrayPart(l,a.id*i,m*i,i)},replaceProperties:function(a,b){}}},parseResultOfTraversal:function(a,b){var c=this;if(0===a.length||0===a[0].length||0===a[0][0].length)return void(b&&b({errorCode:404}));a=a[0][0];a[0].vertex;_.each(a,function(a){var b=(a.vertex,a.path);_.each(b.vertices,function(a){var b=a;c.jsonNodes.push(b)}),_.each(b.edges,function(a){c.jsonEdges.push(a)})}),b&&b()},jsonNodes:[],jsonEdges:[],jsonRequestDummy:[[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike" +},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]],[[[{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"},path:{edges:[],vertices:[{_id:"persons/heinrich",_rev:"119147682536",_key:"heinrich",age:25,name:"Heinricht"}]}},{vertex:{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"},path:{edges:[],vertices:[{_id:"persons/lisa",_rev:"119151483624",_key:"lisa",age:25,name:"Lisa"}]}},{vertex:{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"},path:{edges:[],vertices:[{_id:"persons/114809749948",_rev:"114809749948",_key:"114809749948"}]}},{vertex:{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},path:{edges:[],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0}]}},{vertex:{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"},path:{edges:[{_id:"relationships/161099557720",_from:"persons/Heisenberg",_to:"persons/friederike",_rev:"161099557720",_key:"161099557720"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/friederike",_rev:"119156333288",_key:"friederike",age:25,name:"Friederike"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/158927387948",_from:"persons/Heisenberg",_to:"persons/frank",_rev:"158927387948",_key:"158927387948"}],vertices:[{_id:"persons/Heisenberg",_rev:"162005330776",_key:"Heisenberg",custom:!0},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},path:{edges:[],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[{_id:"relationships/172902401353",_from:"persons/158924176684",_to:"persons/hegenberg",_rev:"172902401353",_key:"172902401353"}],vertices:[{_id:"persons/158924176684",_rev:"158924176684",_key:"158924176684"},{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"},path:{edges:[],vertices:[{_id:"persons/hegenberg",_rev:"159548931372",_key:"hegenberg"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"},path:{edges:[{_id:"relationships/101909949",_from:"persons/heiko",_to:"persons/frank",_rev:"101909949",_key:"101909949"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/frank",_rev:"77399485",_key:"frank",age:25,name:"Frank"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[{_id:"relationships/98436541",_from:"persons/heiko",_to:"persons/jan",_rev:"98436541",_key:"98436541"}],vertices:[{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}},{vertex:{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},path:{edges:[],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"},path:{edges:[{_id:"relationships/thomas",_from:"persons/thomas",_to:"persons/heiko",_rev:"118806305512",_key:"thomas"}],vertices:[{_id:"persons/thomas",_rev:"87885245",_key:"thomas",age:25,name:"Heiko"},{_id:"persons/heiko",_rev:"57476541",_key:"heiko",age:25,name:"Heiko"}]}},{vertex:{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"},path:{edges:[],vertices:[{_id:"persons/gustav",_rev:"119140211432",_key:"gustav",age:25,name:"Gustav"}]}},{vertex:{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"},path:{edges:[],vertices:[{_id:"persons/jan",_rev:"68891053607",_key:"jan",age:44,name:"Jan"}]}}]]]]})}(),function(){"use strict";window.loginView=Backbone.View.extend({el:"#content",el2:".header",el3:".footer",init:function(){},events:{"submit #loginForm":"login"},template:templateEngine.createTemplate("loginView.ejs"),render:function(){return $(this.el).html(this.template.render({})),$(this.el2).hide(),$(this.el3).hide(),$("#loginUsername").focus(),this},login:function(a){a.preventDefault();var b=$("#loginUsername").val(),c=$("#loginPassword").val();b&&(b=this.collection.login(b,c),b&&($(this.el2).show(),$(this.el3).show(),window.location.reload(),$("#currentUser").text(b),this.collection.loadUserSettings()))}})}(),function(){"use strict";window.LogsView=window.PaginationView.extend({el:"#content",id:"#logContent",paginationDiv:"#logPaginationDiv",idPrefix:"logTable",fetchedAmount:!1,initialize:function(){this.convertModelToJSON()},currentLoglevel:"logall",events:{"click #arangoLogTabbar button":"setActiveLoglevel","click #logTable_first":"firstPage","click #logTable_last":"lastPage"},template:templateEngine.createTemplate("logsView.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbarElements:{id:"arangoLogTabbar",titles:[["Debug","logdebug"],["Warning","logwarning"],["Error","logerror"],["Info","loginfo"],["All","logall"]]},tableDescription:{id:"arangoLogTable",titles:["Loglevel","Date","Message"],rows:[]},convertedRows:null,setActiveLoglevel:function(a){$(".arangodb-tabbar").removeClass("arango-active-tab"),this.currentLoglevel!==a.currentTarget.id&&(this.currentLoglevel=a.currentTarget.id,this.convertModelToJSON())},initTotalAmount:function(){var a=this;this.collection=this.options[this.currentLoglevel],this.collection.fetch({data:$.param({test:!0}),success:function(){a.convertModelToJSON()}}),this.fetchedAmount=!0},invertArray:function(a){var b,c=[],d=0;for(b=a.length-1;b>=0;b--)c[d]=a[b],d++;return c},convertModelToJSON:function(){if(!this.fetchedAmount)return void this.initTotalAmount();var a,b=this,c=[];this.collection=this.options[this.currentLoglevel],this.collection.fetch({success:function(){b.collection.each(function(b){a=new Date(1e3*b.get("timestamp")),c.push([b.getLogStatus(),arangoHelper.formatDT(a),b.get("text")])}),b.tableDescription.rows=b.invertArray(c),b.render()}})},render:function(){return $(this.el).html(this.template.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#"+this.currentLoglevel).addClass("arango-active-tab"),$("#logContent").append('
      '),this.renderPagination(),this},rerender:function(){this.convertModelToJSON()}})}(),function(){"use strict";var a=function(a,b,c,d){return{type:a,title:b,callback:c,confirm:d}},b=function(a,b,c,d,e,f,g,h,i,j,k){var l={type:a,label:b};return void 0!==c&&(l.value=c),void 0!==d&&(l.info=d),void 0!==e&&(l.placeholder=e),void 0!==f&&(l.mandatory=f),void 0!==h&&(l.addDelete=h),void 0!==i&&(l.addAdd=i),void 0!==j&&(l.maxEntrySize=j),void 0!==k&&(l.tags=k),g&&(l.validateInput=function(){return g}),l};window.ModalView=Backbone.View.extend({_validators:[],_validateWatchers:[],baseTemplate:templateEngine.createTemplate("modalBase.ejs"),tableTemplate:templateEngine.createTemplate("modalTable.ejs"),el:"#modalPlaceholder",contentEl:"#modalContent",hideFooter:!1,confirm:{list:"#modal-delete-confirmation",yes:"#modal-confirm-delete",no:"#modal-abort-delete"},enabledHotkey:!1,enableHotKeys:!0,buttons:{SUCCESS:"success",NOTIFICATION:"notification",DELETE:"danger",NEUTRAL:"neutral",CLOSE:"close"},tables:{READONLY:"readonly",TEXT:"text",BLOB:"blob",PASSWORD:"password",SELECT:"select",SELECT2:"select2",CHECKBOX:"checkbox"},initialize:function(){Object.freeze(this.buttons),Object.freeze(this.tables)},createModalHotkeys:function(){$(this.el).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("input",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()}),$("select",$(this.el)).bind("keydown","return",function(){$(".modal-footer .button-success").click()})},createInitModalHotkeys:function(){var a=this;$(this.el).bind("keydown","left",function(){a.navigateThroughButtons("left")}),$(this.el).bind("keydown","right",function(){a.navigateThroughButtons("right")})},navigateThroughButtons:function(a){var b=$(".modal-footer button").is(":focus");b===!1?"left"===a?$(".modal-footer button").first().focus():"right"===a&&$(".modal-footer button").last().focus():b===!0&&("left"===a?$(":focus").prev().focus():"right"===a&&$(":focus").next().focus())},createCloseButton:function(b,c){var d=this;return a(this.buttons.CLOSE,b,function(){d.hide(),c&&c()})},createSuccessButton:function(b,c){return a(this.buttons.SUCCESS,b,c)},createNotificationButton:function(b,c){return a(this.buttons.NOTIFICATION,b,c)},createDeleteButton:function(b,c,d){return a(this.buttons.DELETE,b,c,d)},createNeutralButton:function(b,c){return a(this.buttons.NEUTRAL,b,c)},createDisabledButton:function(b){var c=a(this.buttons.NEUTRAL,b);return c.disabled=!0,c},createReadOnlyEntry:function(a,c,d,e,f,g){var h=b(this.tables.READONLY,c,d,e,void 0,void 0,void 0,f,g);return h.id=a,h},createTextEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.TEXT,c,d,e,f,g,h);return i.id=a,i},createBlobEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.BLOB,c,d,e,f,g,h);return i.id=a,i},createSelect2Entry:function(a,c,d,e,f,g,h,i,j,k){var l=b(this.tables.SELECT2,c,d,e,f,g,void 0,h,i,j,k);return l.id=a,l},createPasswordEntry:function(a,c,d,e,f,g,h){var i=b(this.tables.PASSWORD,c,d,e,f,g,h);return i.id=a,i},createCheckboxEntry:function(a,c,d,e,f){var g=b(this.tables.CHECKBOX,c,d,e);return g.id=a,f&&(g.checked=f),g},createSelectEntry:function(a,c,d,e,f){var g=b(this.tables.SELECT,c,null,e);return g.id=a,d&&(g.selected=d),g.options=f,g},createOptionEntry:function(a,b){return{label:a,value:b||a}},show:function(a,b,c,d,e,f,g,h){var i,j,k=this,l=!1;c=c||[],h=Boolean(h),this.clearValidators(),c.length>0?(c.forEach(function(a){a.type===k.buttons.CLOSE&&(l=!0),a.type===k.buttons.DELETE&&(j=j||a.confirm)}),l||(i=c.pop(),c.push(k.createCloseButton("Cancel")),c.push(i))):c.push(k.createCloseButton("Dismiss")),$(this.el).html(this.baseTemplate.render({title:b,buttons:c,hideFooter:this.hideFooter,confirm:j})),_.each(c,function(a,b){return!a.disabled&&a.callback?a.type!==k.buttons.DELETE||h?void $("#modalButton"+b).bind("click",a.callback):void $("#modalButton"+b).bind("click",function(){$(k.confirm.yes).unbind("click"),$(k.confirm.yes).bind("click",a.callback),$(k.confirm.list).css("display","block")}):void 0}),$(this.confirm.no).bind("click",function(){$(k.confirm.list).css("display","none")});var m=templateEngine.createTemplate(a);$(".modal-body").html(m.render({content:d,advancedContent:e,info:f})),$(".modalTooltips").tooltip({position:{my:"left top",at:"right+55 top-1"}});var n=d||[];e&&e.content&&(n=n.concat(e.content)),_.each(n,function(a){k.modalBindValidation(a),a.type===k.tables.SELECT2&&$("#"+a.id).select2({tags:a.tags||[],showSearchBox:!1,minimumResultsForSearch:-1,width:"336px",maximumSelectionSize:a.maxEntrySize||8})}),g&&(this.events=g,this.delegateEvents()),$("#modal-dialog").modal("show"),this.enabledHotkey===!1&&(this.createInitModalHotkeys(),this.enabledHotkey=!0),this.enableHotKeys&&this.createModalHotkeys();var o=$("#modal-dialog").find("input");o&&setTimeout(function(){var a=$("#modal-dialog");a.length>0&&(a=a.find("input"),a.length>0&&$(a[0]).focus())},800)},modalBindValidation:function(a){var b=this;if(a.hasOwnProperty("id")&&a.hasOwnProperty("validateInput")){var c=function(){var b=$("#"+a.id),c=a.validateInput(b),d=!1;return _.each(c,function(a){var c=b.val();if(a.rule||(a={rule:a}),"function"==typeof a.rule)try{a.rule(c)}catch(e){d=a.msg||e.message}else{var f=Joi.validate(c,a.rule);f.error&&(d=a.msg||f.error.message)}return d?!1:void 0}),d?d:void 0},d=$("#"+a.id);d.on("keyup focusout",function(){var a=c(),e=d.next()[0];a?(d.addClass("invalid-input"),e?$(e).text(a):d.after('

      '+a+"

      "),$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled")):(d.removeClass("invalid-input"),e&&$(e).remove(),b.modalTestAll())}),this._validators.push(c),this._validateWatchers.push(d)}},modalTestAll:function(){var a=_.map(this._validators,function(a){return a()}),b=_.any(a);return b?$(".modal-footer .button-success").prop("disabled",!0).addClass("disabled"):$(".modal-footer .button-success").prop("disabled",!1).removeClass("disabled"),!b},clearValidators:function(){this._validators=[],_.each(this._validateWatchers,function(a){a.unbind("keyup focusout")}),this._validateWatchers=[]},hide:function(){this.clearValidators(),$("#modal-dialog").modal("hide")}})}(),function(){"use strict";window.NavigationView=Backbone.View.extend({el:"#navigationBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown"},initialize:function(){this.userCollection=this.options.userCollection,this.currentDB=this.options.currentDB,this.dbSelectionView=new window.DBSelectionView({collection:this.options.database,current:this.currentDB}),this.userBarView=new window.UserBarView({userCollection:this.userCollection}),this.notificationView=new window.NotificationView({collection:this.options.notificationCollection}),this.statisticBarView=new window.StatisticBarView({currentDB:this.currentDB}),this.handleKeyboardHotkeys()},handleSelectDatabase:function(){this.dbSelectionView.render($("#dbSelect"))},template:templateEngine.createTemplate("navigationView.ejs"),render:function(){return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),this.dbSelectionView.render($("#dbSelect")),this.notificationView.render($("#notificationBar")),this.userCollection.whoAmI()&&this.userBarView.render(),this.statisticBarView.render($("#statisticBar")),window.App.arangoCollectionsStore.findWhere({name:"arangodbflightsdemo"})||$(".demo-menu").css("display","none"),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},handleKeyboardHotkeys:function(){arangoHelper.enableKeyboardHotkeys(!0)},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return""===c&&(c=$(b).attr("class")),"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):"dbselection"===c?($("#dbs_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){var a=this;$("#arangoCollectionSelect").change(function(){a.navigateBySelect()})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c||"link_dropdown"===c?void $("#link_dropdown").show(200):"tools"===c||"tools_dropdown"===c?void $("#tools_dropdown").show(200):"dbselection"===c||"dbs_dropdown"===c?void $("#dbs_dropdown").show(200):void 0},hideDropdown:function(a){var b=a.target||a.srcElement;b=$(b).closest(".dropdown");var c=b.attr("id");return"linkDropdown"===c?void $("#link_dropdown").hide():"toolsDropdown"===c?void $("#tools_dropdown").hide():"dbSelect"===c?void $("#dbs_dropdown").hide():void 0}})}(),function(){"use strict";window.NotificationView=Backbone.View.extend({events:{"click .navlogo #stat_hd":"toggleNotification","click .notificationItem .fa":"removeNotification","click #removeAllNotifications":"removeAllNotifications"},initialize:function(){this.collection.bind("add",this.renderNotifications.bind(this)),this.collection.bind("remove",this.renderNotifications.bind(this)),this.collection.bind("reset",this.renderNotifications.bind(this))},notificationItem:templateEngine.createTemplate("notificationItem.ejs"),el:"#notificationBar",template:templateEngine.createTemplate("notificationView.ejs"),toggleNotification:function(){var a=this.collection.length;0!==a&&$("#notification_menu").toggle()},removeAllNotifications:function(){this.collection.reset(),$("#notification_menu").hide()},removeNotification:function(a){var b=a.target.id;this.collection.get(b).destroy()},renderNotifications:function(){$("#stat_hd_counter").text(this.collection.length),0===this.collection.length?($("#stat_hd").removeClass("fullNotification"),$("#notification_menu").hide()):$("#stat_hd").addClass("fullNotification"),$(".innerDropdownInnerUL").html(this.notificationItem.render({notifications:this.collection}))},render:function(){return $(this.el).html(this.template.render({notifications:this.collection})),this.renderNotifications(),this.delegateEvents(),this.el}})}(),function(){"use strict";window.ProgressView=Backbone.View.extend({template:templateEngine.createTemplate("progressBase.ejs"),el:"#progressPlaceholder",el2:"#progressPlaceholderIcon",toShow:!1,lastDelay:0,action:function(){},events:{"click .progress-action button":"performAction"},performAction:function(){window.progressView.hide()},initialize:function(){},showWithDelay:function(a,b,c,d){var e=this;e.toShow=!0,e.lastDelay=a,setTimeout(function(){e.toShow===!0&&e.show(b,c,d)},e.lastDelay)},show:function(a,b,c){$(this.el).html(this.template.render({})),$(".progress-text").text(a),$(".progress-action").html(''),this.action=this.hide(),$(this.el).show()},hide:function(){var a=this;a.toShow=!1,$(this.el).hide(),this.action=function(){}}})}(),function(){"use strict";window.queryManagementView=Backbone.View.extend({el:"#content",id:"#queryManagementContent",templateActive:templateEngine.createTemplate("queryManagementViewActive.ejs"),templateSlow:templateEngine.createTemplate("queryManagementViewSlow.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),tabbar:templateEngine.createTemplate("arangoTabbar.ejs"),initialize:function(){this.activeCollection=new window.QueryManagementActive,this.slowCollection=new window.QueryManagementSlow,this.convertModelToJSON(!0)},events:{"click #arangoQueryManagementTabbar button":"switchTab","click #deleteSlowQueryHistory":"deleteSlowQueryHistoryModal","click #arangoQueryManagementTable .fa-minus-circle":"deleteRunningQueryModal"},tabbarElements:{id:"arangoQueryManagementTabbar",titles:[["Active","activequeries"],["Slow","slowqueries"]]},tableDescription:{id:"arangoQueryManagementTable",titles:["ID","Query String","Runtime","Started",""],rows:[],unescaped:[!1,!1,!1,!1,!0]},switchTab:function(a){"activequeries"===a.currentTarget.id?this.convertModelToJSON(!0):"slowqueries"===a.currentTarget.id&&this.convertModelToJSON(!1)},deleteRunningQueryModal:function(a){this.killQueryId=$(a.currentTarget).attr("data-id");var b=[],c=[];c.push(window.modalView.createReadOnlyEntry(void 0,"Running Query","Do you want to kill the running query?",void 0,void 0,!1,void 0)),b.push(window.modalView.createDeleteButton("Kill",this.killRunningQuery.bind(this))),window.modalView.show("modalTable.ejs","Kill Running Query",b,c),$(".modal-delete-confirmation strong").html("Really kill?")},killRunningQuery:function(){this.collection.killRunningQuery(this.killQueryId,this.killRunningQueryCallback.bind(this)),window.modalView.hide()},killRunningQueryCallback:function(){this.convertModelToJSON(!0),this.renderActive()},deleteSlowQueryHistoryModal:function(){var a=[],b=[];b.push(window.modalView.createReadOnlyEntry(void 0,"Slow Query Log","Do you want to delete the slow query log entries?",void 0,void 0,!1,void 0)),a.push(window.modalView.createDeleteButton("Delete",this.deleteSlowQueryHistory.bind(this))),window.modalView.show("modalTable.ejs","Delete Slow Query Log",a,b)},deleteSlowQueryHistory:function(){this.collection.deleteSlowQueryHistory(this.slowQueryCallback.bind(this)),window.modalView.hide()},slowQueryCallback:function(){this.convertModelToJSON(!1),this.renderSlow()},render:function(){this.convertModelToJSON(!0)},renderActive:function(){this.$el.html(this.templateActive.render({})), +$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#activequeries").addClass("arango-active-tab")},renderSlow:function(){this.$el.html(this.templateSlow.render({})),$(this.id).html(this.tabbar.render({content:this.tabbarElements})),$(this.id).append(this.table.render({content:this.tableDescription})),$("#slowqueries").addClass("arango-active-tab")},convertModelToJSON:function(a){var b=this,c=[];a===!0?this.collection=this.activeCollection:this.collection=this.slowCollection,this.collection.fetch({success:function(){b.collection.each(function(b){var d="";a&&(d=''),c.push([b.get("id"),b.get("query"),b.get("runTime").toFixed(2)+" s",b.get("started"),d])});var d="No running queries.";a||(d="No slow queries."),0===c.length&&c.push([d,"","",""]),b.tableDescription.rows=c,a?b.renderActive():b.renderSlow()}})}})}(),function(){"use strict";window.queryView=Backbone.View.extend({el:"#content",id:"#customsDiv",warningTemplate:templateEngine.createTemplate("warningList.ejs"),tabArray:[],execPending:!1,initialize:function(){this.refreshAQL(),this.tableDescription.rows=this.customQueries},events:{"click #result-switch":"switchTab","click #query-switch":"switchTab","click #customs-switch":"switchTab","click #submitQueryButton":"submitQuery","click #explainQueryButton":"explainQuery","click #commentText":"commentText","click #uncommentText":"uncommentText","click #undoText":"undoText","click #redoText":"redoText","click #smallOutput":"smallOutput","click #bigOutput":"bigOutput","click #clearOutput":"clearOutput","click #clearInput":"clearInput","click #clearQueryButton":"clearInput","click #addAQL":"addAQL","mouseover #querySelect":function(){this.refreshAQL(!0)},"change #querySelect":"importSelected","keypress #aqlEditor":"aqlShortcuts","click #arangoQueryTable .table-cell0":"editCustomQuery","click #arangoQueryTable .table-cell1":"editCustomQuery","click #arangoQueryTable .table-cell2 a":"deleteAQL","click #confirmQueryImport":"importCustomQueries","click #confirmQueryExport":"exportCustomQueries","click #downloadQueryResult":"downloadQueryResult","click #importQueriesToggle":"showImportMenu"},showImportMenu:function(a){$("#importQueriesToggle").toggleClass("activated"),$("#importHeader").slideToggle(200)},createCustomQueryModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("new-query-name","Name","",void 0,void 0,!1,[{rule:Joi.string().required(),msg:"No query name given."}])),a.push(window.modalView.createSuccessButton("Save",this.saveAQL.bind(this))),window.modalView.show("modalTable.ejs","Save Query",a,b,void 0,void 0,{"keyup #new-query-name":this.listenKey.bind(this)})},updateTable:function(){this.tableDescription.rows=this.customQueries,_.each(this.tableDescription.rows,function(a){a.thirdRow=''}),this.tableDescription.unescaped=[!1,!1,!0],this.$(this.id).html(this.table.render({content:this.tableDescription}))},editCustomQuery:function(a){var b=$(a.target).parent().children().first().text(),c=ace.edit("aqlEditor");c.setValue(this.getCustomQueryValueByName(b)),this.deselect(c),$("#querySelect").val(b),this.switchTab("query-switch")},initTabArray:function(){var a=this;$(".arango-tab").children().each(function(){a.tabArray.push($(this).children().first().attr("id"))})},listenKey:function(a){13===a.keyCode&&this.saveAQL(a),this.checkSaveName()},checkSaveName:function(){var a=$("#new-query-name").val();if("Insert Query"===a)return void $("#new-query-name").val("");var b=this.customQueries.some(function(b){return b.name===a});b?($("#modalButton1").removeClass("button-success"),$("#modalButton1").addClass("button-warning"),$("#modalButton1").text("Update")):($("#modalButton1").removeClass("button-warning"),$("#modalButton1").addClass("button-success"),$("#modalButton1").text("Save"))},clearOutput:function(){var a=ace.edit("queryOutput");a.setValue("")},clearInput:function(){var a=ace.edit("aqlEditor");this.setCachedQuery(a.getValue()),a.setValue("")},smallOutput:function(){var a=ace.edit("queryOutput");a.getSession().foldAll()},bigOutput:function(){var a=ace.edit("queryOutput");a.getSession().unfold()},aqlShortcuts:function(a){a.ctrlKey&&13===a.keyCode?this.submitQuery():a.metaKey&&!a.ctrlKey&&13===a.keyCode&&this.submitQuery()},queries:[],customQueries:[],tableDescription:{id:"arangoQueryTable",titles:["Name","Content",""],rows:[]},template:templateEngine.createTemplate("queryView.ejs"),table:templateEngine.createTemplate("arangoTable.ejs"),render:function(){var a=this;this.$el.html(this.template.render({})),this.$(this.id).html(this.table.render({content:this.tableDescription}));var b=1e3,c=$("#querySize");c.empty(),[100,250,500,1e3,2500,5e3,1e4].forEach(function(a){c.append('")});var d=ace.edit("queryOutput");d.setReadOnly(!0),d.setHighlightActiveLine(!1),d.getSession().setMode("ace/mode/json"),d.setFontSize("16px"),d.setValue("");var e=ace.edit("aqlEditor");e.getSession().setMode("ace/mode/aql"),e.setFontSize("16px"),e.commands.addCommand({name:"togglecomment",bindKey:{win:"Ctrl-Shift-C",linux:"Ctrl-Shift-C",mac:"Command-Shift-C"},exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEach"});var f=this.getCachedQuery();null!==f&&void 0!==f&&""!==f&&e.setValue(f),e.getSession().selection.on("changeCursor",function(b){var c=ace.edit("aqlEditor"),d=c.getSession(),e=c.getCursorPosition(),f=d.getTokenAt(e.row,e.column);f&&("comment"===f.type?$("#commentText i").removeClass("fa-comment").addClass("fa-comment-o").attr("data-original-title","Uncomment"):$("#commentText i").removeClass("fa-comment-o").addClass("fa-comment").attr("data-original-title","Comment")),a.setCachedQuery(c.getValue())}),$("#queryOutput").resizable({handles:"s",ghost:!0,stop:function(){setTimeout(function(){var a=ace.edit("queryOutput");a.resize()},200)}}),arangoHelper.fixTooltips(".queryTooltips, .icon_arangodb","top"),$("#aqlEditor .ace_text-input").focus();var g=$(window).height()-295;return $("#aqlEditor").height(g-19),$("#queryOutput").height(g),e.resize(),d.resize(),this.initTabArray(),this.renderSelectboxes(),this.deselect(d),this.deselect(e),$("#queryDiv").show(),$("#customsDiv").show(),this.initQueryImport(),this.switchTab("query-switch"),this},getCachedQuery:function(){if("undefined"!=typeof Storage){var a=localStorage.getItem("cachedQuery");if(void 0!==a){var b=JSON.parse(a);return b}}},setCachedQuery:function(a){"undefined"!=typeof Storage&&localStorage.setItem("cachedQuery",JSON.stringify(a))},initQueryImport:function(){var a=this;a.allowUpload=!1,$("#importQueries").change(function(b){a.files=b.target.files||b.dataTransfer.files,a.file=a.files[0],a.allowUpload=!0})},importCustomQueries:function(){var a=this;if(this.allowUpload===!0){var b=function(){this.collection.fetch({async:!1}),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable(),a.allowUpload=!1,$("#customs-switch").click()};a.collection.saveImportQueries(a.file,b.bind(this))}},downloadQueryResult:function(){var a=ace.edit("aqlEditor"),b=a.getValue();""!==b||void 0!==b||null!==b?window.open("query/result/download/"+encodeURIComponent(btoa(JSON.stringify({query:b})))):arangoHelper.arangoError("Query error","could not query result.")},exportCustomQueries:function(){var a,b={},c=[];_.each(this.customQueries,function(a,b){c.push({name:a.name,value:a.value})}),b={extra:{queries:c}},$.ajax("whoAmI?_="+Date.now(),{async:!1}).done(function(b){a=b.user,(null===a||a===!1)&&(a="root")}),window.open("query/download/"+encodeURIComponent(a))},deselect:function(a){var b=a.getSelection(),c=b.lead.row,d=b.lead.column;b.setSelectionRange({start:{row:c,column:d},end:{row:c,column:d}}),a.focus()},addAQL:function(){this.refreshAQL(!0),this.createCustomQueryModal(),$("#new-query-name").val($("#querySelect").val()),setTimeout(function(){$("#new-query-name").focus()},500),this.checkSaveName()},getAQL:function(){var a,b=this;this.collection.fetch({async:!1});var c=localStorage.getItem("customQueries");if(c){var d=JSON.parse(c);_.each(d,function(a){b.collection.add({value:a.value,name:a.name})}),a=b.collection.saveCollectionQueries(),a===!0&&localStorage.removeItem("customQueries")}this.updateLocalQueries()},deleteAQL:function(a){var b=$(a.target).parent().parent().parent().children().first().text(),c=this.collection.findWhere({name:b});this.collection.remove(c),this.collection.saveCollectionQueries(),this.updateLocalQueries(),this.renderSelectboxes(),this.updateTable()},updateLocalQueries:function(){var a=this;this.customQueries=[],this.collection.each(function(b){a.customQueries.push({name:b.get("name"),value:b.get("value")})})},saveAQL:function(a){a.stopPropagation(),this.refreshAQL();var b=ace.edit("aqlEditor"),c=$("#new-query-name").val(),d="Update"===$("#modalButton1").text();if(!$("#new-query-name").hasClass("invalid-input")&&""!==c.trim()){var e=b.getValue(),f=!1;if($.each(this.customQueries,function(a,b){return b.name===c?(b.value=e,void(f=!d)):void 0}),f===!0)return void window.modalView.hide();if(d){var g=this.collection.findWhere({name:c});g.set("value",e)}else this.collection.add({name:c,value:e});this.collection.saveCollectionQueries(),window.modalView.hide(),this.updateLocalQueries(),this.renderSelectboxes(),$("#querySelect").val(c)}},getSystemQueries:function(){var a=this;$.ajax({type:"GET",cache:!1,url:"js/arango/aqltemplates.json",contentType:"application/json",processData:!1,async:!1,success:function(b){a.queries=b},error:function(a){arangoHelper.arangoNotification("Query","Error while loading system templates")}})},getCustomQueryValueByName:function(a){var b;return $.each(this.customQueries,function(c,d){a===d.name&&(b=d.value)}),b},refreshAQL:function(a){if(this.getAQL(),this.getSystemQueries(),this.updateLocalQueries(),a){var b=$("#querySelect").val();this.renderSelectboxes(),$("#querySelect").val(b)}},importSelected:function(a){var b=ace.edit("aqlEditor");$.each(this.queries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),$.each(this.customQueries,function(c,d){$("#"+a.currentTarget.id).val()===d.name&&b.setValue(d.value)}),this.deselect(ace.edit("aqlEditor"))},renderSelectboxes:function(){this.sortQueries();var a="";a="#querySelect",$(a).empty(),$(a).append(''),$(a).append(''),jQuery.each(this.queries,function(b,c){$(a).append('")}),$(a).append(""),this.customQueries.length>0&&($(a).append(''),jQuery.each(this.customQueries,function(b,c){$(a).append('")}),$(a).append(""))},undoText:function(){var a=ace.edit("aqlEditor");a.undo()},redoText:function(){var a=ace.edit("aqlEditor");a.redo()},commentText:function(){var a=ace.edit("aqlEditor");a.toggleCommentLines()},sortQueries:function(){this.queries=_.sortBy(this.queries,"name"),this.customQueries=_.sortBy(this.customQueries,"name")},abortQuery:function(){},readQueryData:function(){var a=ace.edit("aqlEditor"),b=a.session.getTextRange(a.getSelectionRange()),c=$("#querySize"),d={query:b||a.getValue(),batchSize:parseInt(c.val(),10),id:"currentFrontendQuery"};return JSON.stringify(d)},heatmapColors:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"],heatmap:function(a){return this.heatmapColors[Math.floor(10*a)]},followQueryPath:function(a,b){var c={},d=0;c[b[0].id]=a;var e,f,g,h;for(e=1;e0&&(f+="Warnings:\r\n\r\n",d.extra.warnings.forEach(function(a){f+="["+a.code+"], '"+a.message+"'\r\n"})),""!==f&&(f+="\r\nResult:\r\n\r\n"),c.setValue(f+JSON.stringify(d.result,void 0,2)),b.switchTab("result-switch"),window.progressView.hide(),b.deselect(c),$("#downloadQueryResult").show(),"function"==typeof a&&a()},error:function(d){b.switchTab("result-switch"),$("#downloadQueryResult").hide();try{var e=JSON.parse(d.responseText);c.setValue("["+e.errorNum+"] "+e.errorMessage),arangoHelper.arangoError("Query error",e.errorNum)}catch(f){c.setValue("ERROR"),arangoHelper.arangoError("Query error","ERROR")}window.progressView.hide(),"function"==typeof a&&a()}})},submitQuery:function(){var a=ace.edit("queryOutput");this.fillResult(this.switchTab.bind(this,"result-switch")),a.resize();var b=ace.edit("aqlEditor");this.deselect(b)},explainQuery:function(){this.fillExplain()},switchTab:function(a){var b;b="string"==typeof a?a:a.target.id;var c=this,d=function(a){var d="#"+a.replace("-switch",""),e="#tabContent"+d.charAt(1).toUpperCase()+d.substr(2);a===b?($("#"+a).parent().addClass("active"),$(d).addClass("active"),$(e).show(),"query-switch"===b?$("#aqlEditor .ace_text-input").focus():"result-switch"===b&&c.execPending&&c.fillResult()):($("#"+a).parent().removeClass("active"),$(d).removeClass("active"),$(e).hide())};this.tabArray.forEach(d),this.updateTable()}})}(),function(){"use strict";window.shellView=Backbone.View.extend({resizing:!1,el:"#content",template:templateEngine.createTemplate("shellView.ejs"),render:function(){$(this.el).html(this.template.render({})),this.replShell(),$("#shell_workspace").trigger("resize",[150]),this.resize();var a=this;return $(window).resize(function(){a.resize()}),this.executeJs("start_pretty_print(); try { db._collections(); } catch (err) { } undefined;"),this},resize:function(){if(!this.resizing){this.resizing=!0;var a=$(window).height()-250;$("#shell_workspace").height(a),this.resizing=!1}},executeJs:function(a){var b=require("internal");try{var c=window.eval(a);void 0!==c&&(b.browserOutputBuffer="",b.printShell.apply(b.printShell,[c]),jqconsole.Write("==> "+b.browserOutputBuffer+"\n","jssuccess")),b.browserOutputBuffer=""}catch(d){d instanceof b.ArangoError?d.hasOwnProperty("errorMessage")?jqconsole.Write(d.errorMessage+"\n","jserror"):jqconsole.Write(d.message+"\n","jserror"):jqconsole.Write(d.name+": "+d.message+"\n","jserror")}},replShellPromptHelper:function(a){try{new Function(a)}catch(b){return/[\[\{\(]$/.test(a)?1:0}return!1},replShellHandlerHelper:function(a){},replShell:function(){var a=this,b=require("internal"),c=require("org/arangodb/arangosh"),d="Welcome to arangosh. Copyright (c) ArangoDB GmbH\n";window.jqconsole=$("#replShell").jqconsole(d,"JSH> ","...>"),this.executeJs(b.print(c.HELP)),jqconsole.RegisterShortcut("Z",function(){jqconsole.AbortPrompt(),e()}),jqconsole.RegisterShortcut("E",function(){jqconsole.MoveToEnd(),e()}),jqconsole.RegisterMatching("{","}","brace"),jqconsole.RegisterMatching("(",")","paren"),jqconsole.RegisterMatching("[","]","bracket");var e=function(b){"help"===b&&(b=help()),"exit"===b&&location.reload(),a.executeJs(b),jqconsole.Prompt(!0,e,a.replShellPromptHelper(b))};e()}})}(),function(){"use strict";window.StatisticBarView=Backbone.View.extend({el:"#statisticBar",events:{"change #arangoCollectionSelect":"navigateBySelect","click .tab":"navigateByTab"},template:templateEngine.createTemplate("statisticBarView.ejs"),initialize:function(){this.currentDB=this.options.currentDB},replaceSVG:function(a){var b=a.attr("id"),c=a.attr("class"),d=a.attr("src");$.get(d,function(d){var e=$(d).find("svg");void 0===b&&(e=e.attr("id",b)),void 0===c&&(e=e.attr("class",c+" replaced-svg")),e=e.removeAttr("xmlns:a"),a.replaceWith(e)},"xml")},render:function(){var a=this;return $(this.el).html(this.template.render({isSystem:this.currentDB.get("isSystem")})),$("img.svg").each(function(){a.replaceSVG($(this))}),this},navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement,c=b.id;return"links"===c?($("#link_dropdown").slideToggle(200),void a.preventDefault()):"tools"===c?($("#tools_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},handleSelectNavigation:function(){$("#arangoCollectionSelect").change(function(){var a=$(this).find("option:selected").val();window.App.navigate(a,{trigger:!0})})},selectMenuItem:function(a){$(".navlist li").removeClass("active"),a&&$("."+a).addClass("active")}})}(),function(){"use strict";window.TableView=Backbone.View.extend({template:templateEngine.createTemplate("tableView.ejs"),loading:templateEngine.createTemplate("loadingTableView.ejs"),initialize:function(){this.rowClickCallback=this.options.rowClick},events:{"click tbody tr":"rowClick","click .deleteButton":"removeClick"},rowClick:function(a){this.hasOwnProperty("rowClickCallback")&&this.rowClickCallback(a)},removeClick:function(a){this.hasOwnProperty("removeClickCallback")&&(this.removeClickCallback(a),a.stopPropagation())},setRowClick:function(a){this.rowClickCallback=a},setRemoveClick:function(a){this.removeClickCallback=a},render:function(){$(this.el).html(this.template.render({docs:this.collection}))},drawLoading:function(){$(this.el).html(this.loading.render({}))}})}(),function(){"use strict";window.testView=Backbone.View.extend({el:"#content",events:{"change #fileInput":"readJSON"},template:templateEngine.createTemplate("testView.ejs"),readJSON:function(){var a=document.getElementById("fileInput"),b=a.files[0],c="application/json";if(b.type.match(c)){var d=new FileReader;d.onload=function(a){$("#fileDisplayArea pre").text(d.result)},d.readAsText(b)}else $("#fileDisplayArea pre").text("File not supported!")},render:function(){return $(this.el).html(this.template.render()),this}})}(),function(){"use strict";window.UserBarView=Backbone.View.extend({events:{"change #userBarSelect":"navigateBySelect","click .tab":"navigateByTab","mouseenter .dropdown":"showDropdown","mouseleave .dropdown":"hideDropdown","click #userLogout":"userLogout"},initialize:function(){this.userCollection=this.options.userCollection,this.userCollection.fetch({async:!1}),this.userCollection.bind("change:extra",this.render.bind(this))},template:templateEngine.createTemplate("userBarView.ejs"),navigateBySelect:function(){var a=$("#arangoCollectionSelect").find("option:selected").val();window.App.navigate(a,{trigger:!0})},navigateByTab:function(a){var b=a.target||a.srcElement;b=$(b).closest("a");var c=b.attr("id");return"user"===c?($("#user_dropdown").slideToggle(200),void a.preventDefault()):(window.App.navigate(c,{trigger:!0}),void a.preventDefault())},showDropdown:function(a){var b=a.target||a.srcElement,c=b.id;return"user"===c?void $("#user_dropdown").show(200):void 0},hideDropdown:function(a){$("#user_dropdown").hide()},render:function(a){var b=this.userCollection.whoAmI(),c=null,d=null,e=!1,f=null;return b&&(f=this.userCollection.findWhere({user:b}),f.set({loggedIn:!0}),d=f.get("extra").name,c=f.get("extra").img,e=f.get("active")),c=c?"https://s.gravatar.com/avatar/"+c+"?s=24":"img/arangodb_logo_small.png",d||(d=""),this.$el=$("#userBar"),this.$el.html(this.template.render({img:c,name:d,username:b,active:e})),this.delegateEvents(),this.$el},userLogout:function(){this.userCollection.whoAmI(),this.userCollection.logout()}})}(),function(){"use strict";window.userManagementView=Backbone.View.extend({el:"#content",el2:"#userManagementThumbnailsIn",template:templateEngine.createTemplate("userManagementView.ejs"),events:{"click #createUser":"createUser","click #submitCreateUser":"submitCreateUser","click .editUser":"editUser","click .icon":"editUser","click #submitEditUser":"submitEditUser","click #userManagementToggle":"toggleView","keyup #userManagementSearchInput":"search","click #userManagementSearchSubmit":"search","click #callEditUserPassword":"editUserPassword","click #submitEditUserPassword":"submitEditUserPassword","click #submitEditCurrentUserProfile":"submitEditCurrentUserProfile","click .css-label":"checkBoxes","change #userSortDesc":"sorting"},dropdownVisible:!1,initialize:function(){this.collection.fetch({async:!1}),this.currentUser=this.collection.findWhere({user:this.collection.whoAmI()})},checkBoxes:function(a){var b=a.currentTarget.id;$("#"+b).click()},sorting:function(){$("#userSortDesc").is(":checked")?this.collection.setSortingDesc(!0):this.collection.setSortingDesc(!1),$("#userManagementDropdown").is(":visible")?this.dropdownVisible=!0:this.dropdownVisible=!1,this.render()},render:function(a){var b=!1;return $("#userManagementDropdown").is(":visible")&&(b=!0),this.collection.sort(),$(this.el).html(this.template.render({collection:this.collection,searchString:""})),b===!0&&($("#userManagementDropdown2").show(),$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown").show()),a&&this.editCurrentUser(),arangoHelper.setCheckboxStatus("#userManagementDropdown"),this},search:function(){var a,b,c,d;a=$("#userManagementSearchInput"),b=$("#userManagementSearchInput").val(),d=this.collection.filter(function(a){return-1!==a.get("user").indexOf(b)}),$(this.el).html(this.template.render({collection:d,searchString:b})),a=$("#userManagementSearchInput"),c=a.val().length,a.focus(),a[0].setSelectionRange(c,c)},createUser:function(a){a.preventDefault(),this.createCreateUserModal()},submitCreateUser:function(){var a=this,b=$("#newUsername").val(),c=$("#newName").val(),d=$("#newPassword").val(),e=$("#newStatus").is(":checked");if(this.validateUserInfo(c,b,d,e)){var f={user:b,passwd:d,active:e,extra:{name:c}};this.collection.create(f,{wait:!0,error:function(a,b){},success:function(b){a.updateUserManagement(),window.modalView.hide()}})}},validateUserInfo:function(a,b,c,d){return""===b?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):!0},updateUserManagement:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},submitDeleteUser:function(a){var b=this.collection.findWhere({user:a});b.destroy({wait:!0}),window.modalView.hide(),this.updateUserManagement()},editUser:function(a){this.collection.fetch();var b=this.evaluateUserName($(a.currentTarget).attr("id"),"_edit-user");""===b&&(b=$(a.currentTarget).attr("id"));var c=this.collection.findWhere({user:b});c.get("loggedIn")?this.editCurrentUser():this.createEditUserModal(c.get("user"),c.get("extra").name,c.get("active"))},editCurrentUser:function(){this.createEditCurrentUserModal(this.currentUser.get("user"),this.currentUser.get("extra").name,this.currentUser.get("extra").img)},submitEditUser:function(a){var b=$("#editName").val(),c=$("#editStatus").is(":checked");if(!this.validateStatus(c))return void $("#editStatus").closest("th").css("backgroundColor","red");if(!this.validateName(b))return void $("#editName").closest("th").css("backgroundColor","red");var d=this.collection.findWhere({user:a});d.save({extra:{name:b},active:c},{type:"PATCH"}),window.modalView.hide(),this.updateUserManagement()},validateUsername:function(a){return""===a?(arangoHelper.arangoError("You have to define an username"),$("#newUsername").closest("th").css("backgroundColor","red"),!1):a.match(/^[a-zA-Z][a-zA-Z0-9_\-]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validatePassword:function(a){return!0},validateName:function(a){return""===a?!0:a.match(/^[a-zA-Z][a-zA-Z0-9_\-\ ]*$/)?!0:(arangoHelper.arangoError("Wrong Username","Username may only contain numbers, letters, _ and -"),!1)},validateStatus:function(a){return""===a?!1:!0},toggleView:function(){$("#userSortDesc").attr("checked",this.collection.sortOptions.desc),$("#userManagementToggle").toggleClass("activated"),$("#userManagementDropdown2").slideToggle(200)},setFilterValues:function(){},evaluateUserName:function(a,b){var c=a.lastIndexOf(b);return a.substring(0,c)},editUserPassword:function(){window.modalView.hide(),this.createEditUserPasswordModal()},submitEditUserPassword:function(){var a=$("#oldCurrentPassword").val(),b=$("#newCurrentPassword").val(),c=$("#confirmCurrentPassword").val();$("#oldCurrentPassword").val(""),$("#newCurrentPassword").val(""),$("#confirmCurrentPassword").val(""),$("#oldCurrentPassword").closest("th").css("backgroundColor","white"),$("#newCurrentPassword").closest("th").css("backgroundColor","white"),$("#confirmCurrentPassword").closest("th").css("backgroundColor","white");var d=!1;this.validateCurrentPassword(a)||($("#oldCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),b!==c&&($("#confirmCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),this.validatePassword(b)||($("#newCurrentPassword").closest("th").css("backgroundColor","red"),d=!0),d||(this.currentUser.setPassword(b),window.modalView.hide())},validateCurrentPassword:function(a){return this.currentUser.checkPassword(a)},submitEditCurrentUserProfile:function(){var a=$("#editCurrentName").val(),b=$("#editCurrentUserProfileImg").val();b=this.parseImgString(b),this.currentUser.setExtras(a,b),this.updateUserProfile(),window.modalView.hide()},updateUserProfile:function(){var a=this;this.collection.fetch({success:function(){a.render()}})},parseImgString:function(a){return-1===a.indexOf("@")?a:CryptoJS.MD5(a).toString()},createEditUserModal:function(a,b,c){var d,e;e=[{type:window.modalView.tables.READONLY,label:"Username",value:_.escape(a)},{type:window.modalView.tables.TEXT,label:"Name",value:b,id:"editName",placeholder:"Name"},{type:window.modalView.tables.CHECKBOX,label:"Active",value:"active",checked:c,id:"editStatus"}],d=[{title:"Delete",type:window.modalView.buttons.DELETE,callback:this.submitDeleteUser.bind(this,a)},{title:"Save",type:window.modalView.buttons.SUCCESS,callback:this.submitEditUser.bind(this,a)}],window.modalView.show("modalTable.ejs","Edit User",d,e)},createCreateUserModal:function(){var a=[],b=[];b.push(window.modalView.createTextEntry("newUsername","Username","",!1,"Username",!0,[{rule:Joi.string().required(),msg:"No username given."}])),b.push(window.modalView.createTextEntry("newName","Name","",!1,"Name",!1)),b.push(window.modalView.createPasswordEntry("newPassword","Password","",!1,"",!1)),b.push(window.modalView.createCheckboxEntry("newStatus","Active","active",!1,!0)),a.push(window.modalView.createSuccessButton("Create",this.submitCreateUser.bind(this))),window.modalView.show("modalTable.ejs","Create New User",a,b)},createEditCurrentUserModal:function(a,b,c){var d=[],e=[];e.push(window.modalView.createReadOnlyEntry("id_username","Username",a)),e.push(window.modalView.createTextEntry("editCurrentName","Name",b,!1,"Name",!1)),e.push(window.modalView.createTextEntry("editCurrentUserProfileImg","Gravatar account (Mail)",c,"Mailaddress or its md5 representation of your gravatar account. The address will be converted into a md5 string. Only the md5 string will be stored, not the mailaddress.","myAccount(at)gravatar.com")),d.push(window.modalView.createNotificationButton("Change Password",this.editUserPassword.bind(this))),d.push(window.modalView.createSuccessButton("Save",this.submitEditCurrentUserProfile.bind(this))),window.modalView.show("modalTable.ejs","Edit User Profile",d,e)},createEditUserPasswordModal:function(){var a=[],b=[];b.push(window.modalView.createPasswordEntry("oldCurrentPassword","Old Password","",!1,"old password",!1)),b.push(window.modalView.createPasswordEntry("newCurrentPassword","New Password","",!1,"new password",!1)),b.push(window.modalView.createPasswordEntry("confirmCurrentPassword","Confirm New Password","",!1,"confirm new password",!1)),a.push(window.modalView.createSuccessButton("Save",this.submitEditUserPassword.bind(this))),window.modalView.show("modalTable.ejs","Edit User Password",a,b)}})}(),function(){"use strict";window.Router=Backbone.Router.extend({routes:{"":"dashboard",dashboard:"dashboard",collections:"collections","new":"newCollection",login:"login","collection/:colid/documents/:pageid":"documents","collection/:colid/:docid":"document",shell:"shell",query:"query",queryManagement:"queryManagement",api:"api",databases:"databases",applications:"applications","applications/:mount":"applicationDetail",graph:"graphManagement",graph2:"graph2","graph/:name":"showGraph",userManagement:"userManagement",userProfile:"userProfile",logs:"logs",demo:"demo","demo/:collection":"demo"},demo:function(a){a||(a="flights"),this.demoView||(this.demoView=new window.DemoView({collectionName:a})),this.demoView.render(),this.naviView.selectMenuItem("demo-menu")},initialize:function(){window.modalView=new window.ModalView,this.foxxList=new window.FoxxCollection,window.foxxInstallView=new window.FoxxInstallView({collection:this.foxxList}),window.progressView=new window.ProgressView;var a=this;this.userCollection=new window.ArangoUsers,this.initOnce=function(){this.initOnce=function(){},this.arangoDatabase=new window.ArangoDatabase,this.currentDB=new window.CurrentDatabase,this.currentDB.fetch({async:!1}),this.arangoCollectionsStore=new window.arangoCollections,this.arangoDocumentStore=new window.arangoDocument,arangoHelper.setDocumentStore(this.arangoDocumentStore),this.arangoCollectionsStore.fetch({async:!1}),this.footerView=new window.FooterView,this.notificationList=new window.NotificationCollection,this.naviView=new window.NavigationView({database:this.arangoDatabase,currentDB:this.currentDB,notificationCollection:a.notificationList,userCollection:this.userCollection}),this.queryCollection=new window.ArangoQueries,this.footerView.render(),this.naviView.render(),window.checkVersion()}.bind(this),$(window).resize(function(){a.handleResize()})},checkUser:function(){return null===this.userCollection.whoAmI()?(this.navigate("login",{trigger:!0}),!1):(this.initOnce(),!0)},logs:function(){if(this.checkUser()){if(!this.logsView){var a=new window.ArangoLogs({upto:!0,loglevel:4}),b=new window.ArangoLogs({loglevel:4}),c=new window.ArangoLogs({loglevel:3}),d=new window.ArangoLogs({loglevel:2}),e=new window.ArangoLogs({loglevel:1});this.logsView=new window.LogsView({logall:a, +logdebug:b,loginfo:c,logwarning:d,logerror:e})}this.logsView.render(),this.naviView.selectMenuItem("tools-menu")}},applicationDetail:function(a){this.checkUser()&&(this.naviView.selectMenuItem("applications-menu"),0===this.foxxList.length&&this.foxxList.fetch({async:!1}),this.hasOwnProperty("applicationDetailView")||(this.applicationDetailView=new window.ApplicationDetailView({model:this.foxxList.get(decodeURIComponent(a))})),this.applicationDetailView.model=this.foxxList.get(decodeURIComponent(a)),this.applicationDetailView.render("swagger"))},login:function(){return null!==this.userCollection.whoAmI()?(this.navigate("",{trigger:!0}),!1):(this.loginView||(this.loginView=new window.loginView({collection:this.userCollection})),void this.loginView.render())},collections:function(){if(this.checkUser()){var a=this.naviView,b=this;this.collectionsView||(this.collectionsView=new window.CollectionsView({collection:this.arangoCollectionsStore})),this.arangoCollectionsStore.fetch({success:function(){b.collectionsView.render(),a.selectMenuItem("collections-menu")}})}},documents:function(a,b){this.checkUser()&&(this.documentsView||(this.documentsView=new window.DocumentsView({collection:new window.arangoDocuments,documentStore:this.arangoDocumentStore,collectionsStore:this.arangoCollectionsStore})),this.documentsView.setCollectionId(a,b),this.documentsView.render())},document:function(a,b){if(this.checkUser()){this.documentView||(this.documentView=new window.DocumentView({collection:this.arangoDocumentStore})),this.documentView.colid=a,this.documentView.docid=b,this.documentView.render();var c=arangoHelper.collectionApiType(a);this.documentView.setType(c)}},shell:function(){this.checkUser()&&(this.shellView||(this.shellView=new window.shellView),this.shellView.render(),this.naviView.selectMenuItem("tools-menu"))},query:function(){this.checkUser()&&(this.queryView||(this.queryView=new window.queryView({collection:this.queryCollection})),this.queryView.render(),this.naviView.selectMenuItem("query-menu"))},queryManagement:function(){this.queryManagementView||(this.queryManagementView=new window.queryManagementView({collection:void 0})),this.queryManagementView.render(),this.naviView.selectMenuItem("tools-menu")},api:function(){this.checkUser()&&(this.apiView||(this.apiView=new window.ApiView),this.apiView.render(),this.naviView.selectMenuItem("tools-menu"))},databases:function(){this.checkUser()&&(arangoHelper.databaseAllowed()===!0?(this.databaseView||(this.databaseView=new window.databaseView({users:this.userCollection,collection:this.arangoDatabase})),this.databaseView.render(),this.naviView.selectMenuItem("databases-menu")):(this.navigate("#",{trigger:!0}),this.naviView.selectMenuItem("dashboard-menu"),$("#databaseNavi").css("display","none"),$("#databaseNaviSelect").css("display","none")))},dashboard:function(){this.checkUser()&&(this.naviView.selectMenuItem("dashboard-menu"),void 0===this.dashboardView&&(this.dashboardView=new window.DashboardView({dygraphConfig:window.dygraphConfig,database:this.arangoDatabase})),this.dashboardView.render())},graph2:function(){this.checkUser()&&(this.graphTestView=new window.GraphTestView,this.graphTestView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},graphManagement:function(){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.naviView.selectMenuItem("graphviewer-menu"))},showGraph:function(a){this.checkUser()&&(this.graphManagementView||(this.graphManagementView=new window.GraphManagementView({collection:new window.GraphCollection,collectionCollection:this.arangoCollectionsStore})),this.graphManagementView.render(),this.graphManagementView.loadGraphViewer(a),this.naviView.selectMenuItem("graphviewer-menu"))},applications:function(){this.checkUser()&&(void 0===this.applicationsView&&(this.applicationsView=new window.ApplicationsView({collection:this.foxxList})),this.applicationsView.reload(),this.naviView.selectMenuItem("applications-menu"))},handleSelectDatabase:function(){this.checkUser()&&this.naviView.handleSelectDatabase()},handleResize:function(){this.dashboardView&&this.dashboardView.resize(),this.graphManagementView&&this.graphManagementView.handleResize($("#content").width()),this.queryView&&this.queryView.resize()},userManagement:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(),this.naviView.selectMenuItem("tools-menu"))},userProfile:function(){this.checkUser()&&(this.userManagementView||(this.userManagementView=new window.userManagementView({collection:this.userCollection})),this.userManagementView.render(!0),this.naviView.selectMenuItem("tools-menu"))}})}(),function(){"use strict";var a=function(){$.ajax({type:"POST",url:"/_admin/aardvark/disableVersionCheck"})},b=function(a){$.ajax({type:"GET",url:"/_admin/aardvark/shouldCheckVersion",success:function(b){b===!0&&a()}})},c=function(b,c){var d=[];d.push(window.modalView.createNotificationButton("Don't ask again",function(){a(),window.modalView.hide()})),d.push(window.modalView.createSuccessButton("Download Page",function(){window.open("https://www.arangodb.com/download","_blank"),window.modalView.hide()}));var e=[],f=window.modalView.createReadOnlyEntry.bind(window.modalView);e.push(f("current","Current",b.toString())),c.major&&e.push(f("major","Major",c.major.version)),c.minor&&e.push(f("minor","Minor",c.minor.version)),c.bugfix&&e.push(f("bugfix","Bugfix",c.bugfix.version)),window.modalView.show("modalTable.ejs","New Version Available",d,e)};window.checkVersion=function(){$.ajax({type:"GET",cache:!1,url:"/_api/version",contentType:"application/json",processData:!1,async:!0,success:function(a){var d=window.versionHelper.fromString(a.version);window.parseVersions=function(e){_.isEmpty(e)||/-devel$/.test(a.version)||b(c.bind(window,d,e))},$.ajax({type:"GET",async:!0,crossDomain:!0,timeout:3e3,dataType:"jsonp",url:"https://www.arangodb.com/repositories/versions.php?jsonp=parseVersions&version="+encodeURIComponent(d.toString())})}})}}(),function(){"use strict";window.hasOwnProperty("TEST_BUILD")||$(document).ready(function(){window.App=new window.Router,Backbone.history.start(),window.App.handleResize()})}(); \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/app.min.js.gz index 0c2915092ab50a6c53022c4508480c9b68912d3b..0e02d0c6143a7e56c2e895ccda541d0ff8f4b783 100644 GIT binary patch delta 730709 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∋zm5jPdZOqK zB?y$YavlJb=m^19XWpnzNdiR><{cFfnqd zoym*v#^Q2MZ z+q-QHT0`^xzzu72*mZjAEUz8e-234}!HW6!Iy9DOlj(T@Z??aPf0o6~=pG`wW7|0- zUGC}jMg6)#@F^HC9VUOwxDgzr3YaZ%D6H$a4-JFS(@WY~W9^~42Lqfj!+XExI4uA) zF#xxED&i&s62?o2~#%%K3rW5j2z3*rW}uA(!n@%CJ+)dV5IbTb&ceIbr?(0eo`q-2xeR_(UTASRCDi>PlhbDyT|@O<$Lf%~zXMpVBo3*9Q8 zfgrvg!GGIHm8Q7zbpr{QZ4r)VX&~2g3z5dqOZXEeqs&fpDbAs)OXC%%dYveN9S^|g zgoJK0%aKX#h4_A>d^@DiRLtGAIZa;{<&G#M4(YvHiK{RQ(8h1d?ny)6*>cIs{$4A z%1DqYc?tPx%eiQ!MeW8FOn37HsyuR){A{PF35|9Y<7GOQU$(M@p;%T(VWLZQfG1*bl(Pd161ja!suj8ZuHtqE7Bjr* z9`w@88~&tRJS||1l)s=qSOBBH&v4LAlCREb78hX!5#ktZoEX4uh%%`1N4Qet`&6yP z!r4glor9=(VACHjkeU>dSeHJ*UU2zyS(OF+@xjy8H3sg_xDZfdn$8qM28Ne5CW7}e zvee<5R+DCz6SirJotctiLu15I6#y@AGN>TI?<}j!r3F3p2SO&SmibsdPjnO?gyDLZ zS7M3DWj@@E^b~+BG1dd8J&VxI^yia)-?I%=ENO@y#|zwd)VhGHd^sMpQR*s_f!^vD z8O{mrfTTg@B4<0@1&=k0ZKP}lk2pk3_MLR~kT%5F8&O)cYh()H2(5rgF`3zo9~*Uu zZG<;~C3}I%d{n`=b8{+o6mlaSvvRXA;C^c;N2MEas$_%JF zCfs{fJAmVK!8|b45rgQ$k;m%+%oM!fyHCd==D?M4UfZ(t+yQjjgYa8W? z@Jv|(Cm|8Zy)3Ws!(oeuK)k84xh#_gP1%>fKn6g+2Yo6uxwy{(i!C5P{%Fyn%~(ss zJt50*8&s~86`Q4^sMZJM`=7Hke8SF?h*uv>Y2uD_m(qtS7O}}T<}!2#mFK?@V(5Ew z-jZebV^1 z!w|vmAjUiNQhq4tHUg5u+~E~G1F;}7jsl&%B(1BP-R4gZGaB-sWIr5U2&frUuO{b^ zu$sAlj5;b?h*)wzwUQ6kxT8(=1Sg2wejnh2V7zULONsS-P!$s)Y&<6oNn9S&g7qJL zuvG9TNTZGr{PzhS_mwv*5FK_YF7!sK5Bp|}@U5iS5T*Xf0+%7&-k^stiormni(K%w zA>@hsK;(-i&(+FU?7L})_~qeQh_bEyO|6G{Af6STdemp!Y&&^NHD}IYAp7DoJMnE+#W}~N83q1$_l!L1km7hQm&_>a zKZ>~f(XuF}&TTVu2pO{zYumLwYLqO5AloRjYqX%Y{67FtK(D`s{6B;-G>x6f2$v5H ze{3O(>stIC*0kb-H}w<(8VLg03Z?vA18E{0ElMAqp(|~8M|ItrYux?6APGBU+et$o zI-eVzwZZ)dP2_NZaF?81&Tn`d*e;Oiu#I=5CVUOREI!`mZF>RetL?%4ZODuU8y`G! zCWm(hFYZ>~1INvW8_ZD#CcWE0Mr8P2e})!u{gVe;KTy zhx_T*ckf=kgyIk${W#h=3~{BNAvODC@l5ZQCrwKR40nzRZpw5XC-f)>T=DJ6;G&N- zNENTo&x$X5)^TjhI{r*u5A^#= zYo#dkm1M5zv`&1xp)5reFPec(e;UEP0%kbyQOIi@g%l@ud;|LYTPT>K4=WntXxk;E zVF{NDmm#RL+&d%>0X0?LTLZ}f_p!bhEg&t_VGx24NJSCcejvyILOtk63%JKkqSe98 z1zh4#GOP~Hem4#b)D;=YbO=w4QOpJbzlu0=XZ&>R{p#^~p=(Fzd0LF^e^ZKw%x+6| zdI01g9S-c#Q|J72(W z`)v<|ULeQrO+%&yAgnzUpVK=++gK?e)4{yrBL%ea}**jHqs9RLHn@0(qlp5t(f3%UF@|PNHcJo2Je-#=0siN+>FGN;J#lt2 zfh>t#IQvyzv_>n31TW6sG17^zV@yxc9t1OZ8ex;85~MP4$lOl+!E4INME-y{k-K*j z-Y3}wWSyykeyUnPe>zEs0+>ONo?$ECgO~*F-u(_yBwg46piT^**17fcm-E<)GLKwFq?fG;RJ6CO}7+3O<-umYiV22 zJR&6%s39xw51fH1LjwJi3M(xX@e+>3hKDv@7~iP9K$@2Ve}4l>gK`<|SDhoclhU~% zWdh%cb}Rutu?$Jcmyl86@sI-{p`ke62Pszv?&=j^IWu6A!}U$-y149;v@X5`m_+Ho zx3We@RLQq&)biDNQ~8ljK)Vps@d1>2lS;a6x^7t+AI+xcXHOMLmrf7ouarags`!WV zm-OW%$E+g=f1p|dbF_fU-StnSKJMzMZ#_8s9GK{A3>lCR{12VkpWWt-O&S=l8<(!N zE<*{>4lV<$FE4eQOD7|`$b5NA?MfMIt;|Bw&>YQq`&t%R7n zn%9+p9TWE}Rh2kgVl))r2bvClaLpOqBgNB)7DU(#f7QhY5-Mzlej+DSnT8(o*;Pmz zqRFjr4C#a5MLM9=D|yj=d4Af3bO2xQSjs3_@}|9Irw24fy}_>h+p=8Ggj>7LETK4+ z;QNJ#UHu8G7yUSx^+7%go+#>9T_OR3r&5ZxsCA3(3r{-}T65`#23si1+bUr;Yfs?O zKOS{we;vdJcnNwlJO@8dA4BREYV^n-!~Q4t1zT07k&=dH8mbZJqn<{4m+tvQ4xp*r`*8+fg>v3 z92`KtQ8X_KgvZb?RY?_e5gLG1;XuH&tKQs!sCIu)Dz*2HZk`_4mr*)HI^046t3%8W ze=?@LN$03G4-q=S)gjv@b3po>R4Te=W+UnlD&%CHnGN8Ysbv(az=o3)z-L!LnjW4W z9O+WZ@Lw#YxGZJN!qRm}ww?183A&|hQ~5xWNm?x50*M9sTPlR*!*f9BEmEB}HsMlpLfPi6-kH=`VROF# ze;Pu`iAh4p!8DZ1z3X(P6#;Fs&8y1(Iv>294i~607lm!PHI(@KtaB!vQ^h8&f9g!z zCvt*}mo5up@^;4Aau*hm27StJxbp!HO^`Ja!3HG@9OhS=iDQqWV`;pJMK(yx8FFW6xP~L7kpo_oj(CA(@*e3LC#X`C$tDoN~S2J zJ6-=Vd03aPPta-*{I^%$d6@HQhQBOSSP!rG;K4-$@v+J zCE9=r(Hj!>))u8n8kkH97va#QaJLi*@pnfEKXxFyi|OHO#7T@&jT3Q*e@1(Rv>DM3 z6wH1r+50p6vII(UK*j+8MxfNuqcMbS$TI%_+bI@|i=O3ix_bJV#|cOu6a(FM!9N`r zk;vppTY>1%^$@{y;lHw_CijHyr<6oiw_kAI$@Y=qLf8{#3{B~z6;Yz;njDTC+1^0z z(~aLKdRFE5=}f;HOwgvg znla=}z>;_3pz)P*3C(|NG6)2=Enhl-T07}9kpQMr$p@?DLNyb#2hSlFLt^5o^v=-Qgy^oQuN z(D~3h|F8;W!H3|54~(gQ%LV`d$kg|xEvO@RRzBcLHWrRe9MR1HUWrW3Bv%izh))QT zIYPA3h6fzr&I(Fm9?*m$!3SFhoal+6SyGtsgPA`#RVqu-eP#EvhqLgH$ zB5X~e=+1y}Lgm8H63D~k9w5)mx+Ij)d(Z(9e@vv--P`ZA;6TMSA29*P2js{)fx-ad zB;4ih|Kni(e{JL7{=v76^)LGevxCXu%D1}*-yYmw*~ORrgT9aAa23A~8jbyf`N7-6 zZ&wah@Oy`azPYbyFX)=lX`k$GBZMNZgP|8J3|JnlFJLvsT6` z*J`|b)EKX{A_NZYiiI&&4oJKUaJC%UU?H&*;g*n*f90q^cqsOq@4~jDA-3aXqFcJ- z(VvLY4BoD-d~2f_5F5B7B#ls?=7@LgO}V^Y#IDKp-OF(m+&M8QZ|yo)Z}at_gSUH3 zg7zapdUj)c^#s9Z!2yoDz(E0!Tj;BOV>__&XhHs)u9Kqy|DhNk`ML(-yujG~wk1@ifG_zUf0+C-9TdYbMY~_DY-kR^W zu+Q!vyhYjz94@2zue02TQ4s_lXN6l>c_**9f7N#;J?50v$#W|xO~CO3B(PYgiY57H zZrEjuIR4#h^5?-YVJ(2JZg)hPpBQuw4eC?TK)!*EE+&U!@_v}iO*DkHY49KFV}{&4 zu831_CiZ~4ati&ztty+)t-FPJEA90^m-LGEtyB2JJPmq3-y-7JDsz?7(Z46jRdz^r ze|w@FC)JgJjGi75h1TBE=3a53&3Jq>fIAlpjE319b^=^vT=lOIN|lKw*PGY&e2FMLTr& z?$9RpWPyI5ScNJ=zCa%5ym(nj$3Mwsf4oN_(&ZTZt%m1;J2@tIa=f;t;25=!kT?;? zUAP?%MCHy#Rd*u`E6|&jl9|HXs=OG&yC?lu!>745IRk{?TC=wk5LNvg-q5ib&@S20 zW%?%5MXhkNH!JJoC3uD})w4w$IUo0b`A1m7HKaW3zGp4vW4e|W^6 zN@I97d~j>JXK zT%$N1>=uRc(lK?HjOhk2h!iRWe>h-<60q2}&p9s@DKFPv9Okv6IWO12#$+$(2>`Ep z;;Dtb72gnfP%D(!y-b?L9Wu$UW@sJn!!we(TH{_iv_+N+_AKs{E4d!N2@*@qa9gfw62Rc7@FK8+~f;_F3|ZA zPL|`CwDoGHRX@r3QXja-v|Wlg`HxoQI|}N(sryl6*Kvy!DeKY;YWQ^w3j= z8V$dFu~%!z?Rl4*&8z)&B!xS?+-P2{fI}e3y#vS%J`Z}zPj%X&W_b>6&!VAitbc=C z!B@BrEdmX*9nGJQe_-B#KVV>JTr45%;)uh*0^?SM;W%M9VvN9$A*!vlWCsx z1SpmBJrbf?$uZE)4SEIf&qjKq!5C1a-XIw`RTBtiuRnYB%P(~Mek(B;P*K3yspzn+ z{Wtr%<-kyNddK3Pr^`5uV|5_ZECXAoX|!@cw|C6gMN_h6f8I)?j!4AS9^)Q{LY9;* zksjP>Ja!Sl!K|ueU$Sz$F~`*(2Si2tOxuOESiu3)AA}i5C{6t76C#<7)}?Z$A)|e~ zYKShkn^$R`jSwE6Og*dM@mC~Mxb6YVDU_5yO=ZnT5|6)nq`ep`Ln(I?sVIgx5Y?l; zhxc!9F#dHCe}*FteCa^Xem2H9d=8zXq`bPxny zsar=F$gpYI^U1ZPaaUn8j*`!*Fo(5(WlV?=NA%cj-7YB zBlfLie|AZ?A{&F3Q{drvr->eH9Wr9-k%~0;I6Wnbi@L4^jNTn|($_49_AX4MRS-gO zP6Y?7Docjt11cQ&ARv8{Mke)HAek6#Ykmr8$ey*oArv$A)a ze+wLsShv%&7Difo2HZ7Y7-{TBsclUK#g{P({@S#9v7=RUTJZv=FpC9X_0x0Or^<+= z^iV3;AM9YU_Gl%FZGjQKp)HL>iU14jW^4qCyutuFrHC10LSv`&k!8qoLy? zcnu_8zT)DRI9$J#%rzEMEPmr3ncxZG#ra@I3W^WQ2h6xFKoAkz2?RfAwUg!5xWK6P zA**)6>~u>(gT;lHY}$=2?sCV~;9;M6l|o;GwK=95aA{}2iUKHL^sii)f8{=*vJ#kN zKos2`?bGI|du>K42}!F*AIoRl#)G~t5aciLXDFQfn4RVs4p4|;jI=ZHZ2v0Y!LPLvc$1|o5SDJ@K>{zKZbqg^?zLKD59zjM z2y8$?$Y9PyW@UP4P0B;(fAskAtH+Hjtd--Q-aPK9kNdTSV}`M7^n%Y|n$EyOH|x!5 z^(?%=SI=Zxo=K)OE4{ zM#6P6xu$EFz_dI;VE#wkg2t|JkAWDaQYO-;|1~2`M<05I{CMjbf2?h`x;q<>>23w7 zbJ=Kn<B&STqoZgQK8dD7Kfzj{${B=b0JktS)!EsKefg68L^fqtHz&}Q<#wKg&{e)T9jxoN zlqM!vV)>fw&L!)0f4|uHp+aGpVPr+A93(?r1XzLv%=ln{^>qRVyjJEm8+9^{dAU1e zk4RvLU!E){%X&rM8FeZiuJGRD6s_Nja3rKZ;s{UyFsyCZ{xhDhQnP5^LP8=LufHsG zRXAc|f3E9G1_N`X3dw9x*UVW@p!PdUnUx+RlC38>m1HD9f4j~_amv$)7E1=eO(7M^ zL$Dn|&QsS+-F(F_MP*UsO6$4F4d~l9usI*h+ckW{`8%+$(w(83VwG~*)(Z@zTBNv@ zjW({>{Wb80(Vd$ku#uY`y<`gMnJ#-w!M~yL7o3cB4RsZ)uYY~_%g^olWO{efou9!% zA_TX-BNtoke@M;EYin+%6}=wZ-#VbC*Hy%QvuVwF{YsNH>Ecz761Kh!gF|#>vYvic zbk-$0WM}I;_}p4*f#OQiEURnphygx?qV8=H3A8r1CCmg;pT(KzF$8|faglk2=nP;9 zAoRN*CmwsEJi={zt%AU>IalQ>Ch%KNsmR*;4))Z$e|I;x<&V!-Hh#wQeU+>z&Ex_i zpc?~zC5MpMm6}v5q<(#`1PrYdsrbv+-T7;_1nWOY(?I z87$Kqe}AMbg9lT4DQMg*=H+#6$m`ErB48Cwpy;WMC2(A)5Nb)=?L5J>c97S)v0eB8 zIN?P1gdqGZs|Mj+!>56OGet?EPcPIkC`d!PiV6*RA&*cLE{>HP@Cm0qoTS|yHH@TV zNZ}0|xGb|)c&p&(VC^fK&^k*1k7TpVXa(zZf4OfZ?xl*>nSL#q={T7bLENiQ0fq<| z+ydDNkq3UZ+Ax@om%{;x5UtdXe^+by`9uf@oOcio<0^l51nB030Qj$J?>HDgTA{at z^}Be3hHsdpd^ibZP;PgVAA64PUGYWC`-bzyb50{R6*QwdAxCs+%5;YBQR~_CR4PKd ze;!dMZ`=2MY&#}r#H~EWl&K<~D$b#JSVFg==ktzc#YwF!!~G5T?fa?BEug!Q1A2#F zJON0toC6}2A=m8g${?a}$zeWD_|nL*g%Fi)O<-HR1wi5tTFCP{VKxRFsJQxuq=FaU zuqKtBp_$ctOwE9R-&%0~428O)5;cYhe-+zZa?Iw7ZKOnoqU?;qL~bFqP#ASU3fDro z0}>oy;d^8}1wA#8@FykL&&_ET7XN{`w-}4f?Kqt^K_5u?dVXz7sw?3|p^*mQwACY? z!;aTdQO>(|+#`&pDl7a*ok%+Sqdzcu!O7Oh$oH~YR8B)?W?)uCS2Q+?ks~s&f9p2_ zDk8FCmAcYr%clevgd?>SXg`cs+=J&zWb(nif;2EvNW7q=4?0PJW(ayz!C4uEcu`d{ zk#YwhBVE`Ce3Lg;4nd22Hl*XY?AZpI?{)!0zT0hd37ASi`We1DNw`3uBr--NWyVIS zeGns&Dsaz(%%3+W_RSRF3RxPce=-~va-ey{;*JJGCb*$*UXFd`2JdSs! z6QZ2+c7*$TCr3L2cyMOUe-ds7$#lF~!5dA%_bW zZ3#qds$Il#Ip38|RqUiGPXU%erkvtIxwEI@IkKe7TP{KZR5&QaRiNcI{>uD9TzPm6 z9C6_afI(tjfKhUo$8iJjSZtZ_d-s4A?`L8VbQs2oN(nAQM*G?oey-z7#-BM;CR#N+6wTY;#!iC`W~plHg3 zXMdXehNnZkK47)ZfBbvJeR}1agr2Ah%?ty{QKuZ`v7X=wa)AP>aF`JVvieP|g@+0~ z6(=|GYfVoXbrC8<&Bvn5m12Z}%uq+9E`+loH$<1JcHFWhdICFMwG^UIzkHE})&VO= z8fQ zWJmsi9jkqbZ{e*L`MNcLPB~e-{od;4q32l5rbJxRos#dK0x?l_buucWhd90A^aSwY zTw6?kX5OTye^3rX6&X))v)9OQw4LXa?mg3f@?O~app2FeLhH4&L0bcO^`y`bd8a#F zgv0nA#EC6|AI|qAUDG~d!KRmV%@Y7LX>Y;J#2i~4oSUA&roIE_$e`7#BqPhor{kS& z1|2Z&<~!8QZCj*D*h07gJy_tJ34u$;2=YM|8Q1*!e-{{A(1C(9Xz7o@n(ZJnk?SUu z2s$IzII?xsoq(UJ59d+q4aq!2T+jg@XAss8B?uqi0AX3g>mV%c62eys$FO;%CLnCm zUoWSDZjZ{45R*}xo}N=~;VYe5Ax_qO)pWxH!~kJ;XC?6LIFXU=)98V&owj9+Y^h;q za7A|!e{E(mGb=om>q-zYP5K0~F7~rM^+|F=V|x6^_u?!I)l7qV{n%`eDj`5ox8RV` z#U`!yXPu)uBJuebEI9v|aSyjVtxL`^OCXe3Z|agZ@|y38Z*?Uq=_WxJ`Yq{1cALRa zo?WD+3!J?0!f<3!w+#kCLjULmy&N?6rpiYKf9TQ%Wpjdew`fkvNps6UAOj=h{yPu9 z41)^zFPow6QJC7*?DnTa_D==eSI<->H$|sxqk%;#*@IUumth{aGeVv-PK~#E#3tPm ztn7x;H^#E*i1qDr9yknT${Tv$cc1;(95yb`e29@j#geM@68=HlPM}E3#%7L^b24FB zf1`GIA!6AaB9OF5JCcFw=|y?I8|Y{c!KX;0<7)B#@D2beL$? z9uU2glDzliev=`Ym;%j*dYE9o8Vjura#ZDeh3l5Wm~GWM>J|to0s8L_E=NO<1vTWO z1(tmXvBa7Ar6PtvKvPMmHj6-qGs-j3e+P8+w9R;_9)?}!rQ{N}bh3${pG-N*z$pu1 z$CdF9&e}k{z+wn@Lv5|f+RjgrqYf@J#g~GDHnU`HJpo1+2{2&JaP6Cv2*-1yN*YCq zE<-_ODhlhWbIqnHjV3SvdgPU2L`YUIK}c%%1sxG6Sg@rqeBW#-NdJ=9SmJx2f0S^} z&LZm}s_UuG74m?|c`jCHX>4E@{dL`4tPltzf`X!Elr5kdNOV@tAqzZg33W*#mdS6< z7RIxv=Wwg0Vuc4z>MyXIxi+K3bBety!)0U8O+Qjnu+SDQK0M55V1ygW6nTOPhOBBZ zX2F5Mjahi4Jw>MAU;|r-gEeSpfBx)=6jeh=QtC>d?pKepF!0SL69x>B?kd~!Qp%T| zI>+4GJNxW1MW#lS3&o_EuJaBoaI^&i*b#q8nbEtWGkz)p$}wHRv@161S84mb=0<{S zwrHeMloauC8M9~jbM3w_h=*o;73z|0T02?Rxv!)zZbM1-l-N4)&a6t=e@jIjsTC|1 z$Z`W(asMVnAqF4Yt&LfR2w8GyfH)b{=PWH9e_&IWX4sv3pet}IkUx$9e0 z@y3&tz|p`%6@~>FgD!>;CzIagO=|H(Tolcl0~I&m8AQiNX8+}z-)Il4HxrT8!$n*D zCX7__9ideWID@b&H5F5=e?8@h&>l-y7XkFc2i5Ot21m7N$7#4=BgTsjQv?l)XcKTu zh88hLDRd`DE{Z!`w!i|#t{}zvmXVj-N4rO20tUmP6XZM4`?%;J%}1I_3}s+WsMnE= z5IbB&2f~ByINI-S9jVE5*|05pyY(Y@+f48-WL?8M#OvTq^a8=Fe|~3nGMzEJu}T_3 zqn7fmyIcSFjg1F;&oppB0XPI`5T+M$c0t=% zADo^o5XjIvaxJTSqbDDm{fdg`Gu)<9T}?hkMLe7Ue3Ju&y1vJ{zIt#eK{G~2)$(w; zhE_=~a0?5&TF31af07mlW}jMp^%yUZSpO96ex#(yGNlWwjpwThdg`s$SK>&EkQ z>6urkK!gaVoA#irw>BVebnnO`F4d8F*=bZb-JXkLw(@lA{i{zm_(fwXGB_QnvKi_V z;HO)^uzOrue~fEq>Hw@8{95y^rfZ!RC3g`|K-pU`mwUtlh|i4gWK3lrQ&_B7VrhWS zf^ldpA+ZRu9EBUTY!TACL0tQ=)ZE7?L?2TiwgNE2P~Gk(e=Qwch?+uH8t5e3Jt*sw z04ctMuTCeqVe}bZkyeZ7Pmq}O-*_@!tZJkZl8sJ3f6WnWm4|hL1rso&)(=>)2>ff} zNa-c9JQ6e+KlN+v0ir3A@$>wG>w@S}@x^bCk<-V|8+z>Vgg{Q&8VlMrIKN>0xqyLu z#Q1D$nN9*GL{8$GP(-el$?hc(AbAnr4cwPevl>3b#fEqX@nn_X% z<#ElXA@9XwAboA_R>5||-d2z`1G%#P1DuRxf0%8K=_{wTK#$A~4y)yn%B4ZHk(7&Y zMFWKhhsrfBFE5gT!RfX+YJO;*G{?=;=A=1oo;81O&YE**8#t{0Y%)oP4)C1z8XhWo zfbal>2hpjXYMyf!mKO5#XV6Zn>E*9->rV6Z@f?N^1c~EbTH4k;Zo+(skoc}o;gZ_X zf8+{JScE3v`9F+tlq$cT66#PmHleos73ta$=_`Vh=Y>;UI> z$b{I_gnQAO$uvXD2XvwWW7-Fzit)48J`qtHKv_EI=KS$w^{iaiM=lvs)Nw>MK@$PZ zfIAf3qN)J&M+$vc>KJWT;-j3lJ_jqif1;GF*04R=Me@PYbXP8Mt1qjhP?lRhhg>nl zM^~&4?D0&D_B-spNsHyx%06S|nvkh>e_xy82?_khwrIXdRQ$Mmx9}dC(E#{UB-q~u z)fnVG8%AJE^T(&FGdT{CwcQ)ilka1Du@-haz|B3_{M7yhuK(+}1rtdyKi=PZe{g?m zrTN+L98>|Cc5KeoPt6MqH}1|I1_<=YdMzFQ9}(zyQ{5DS{h5efe^-{(htx zDB;8+B*Ii3sC}n#lKI@MtY}CVPnrJ$-We;e5*#<_oyLEedEoKpmoEUb|GazmzW_?r z^>{1Q%ZtsIPxq=~<6dRhbSJ<9e|X_=FX1%e;QvjL`sy6zimTCHL~^Wv*M*31H+pU4 zTxjkSsO>cGU<0J}mLw6!LzybJ6BSO0%=3uANr2RHi|hGL``+_ZLx>eAB-f;0kNV~G(k`a+nM2U#6+!(Ctu zMLdiB1V4KRtlcAMeh-bhe7>j5F4MlP@Hsdb=jTuxEfwmR-+_0n{!4DK|0iCp?u)0Oitxtq0!<*dxgke_u@%jS@#u84k%k zlzLJ@UhJ6ybr;F?Mc#=H8^%1ihE<9~z{~HJ%LG0t0;Nj!5&~da?9OIF z7{xRW@@PDjeU%oKRgp)fjG42F%!PU>;u8JBJ+xUqyiW`SCTW?dM7YW-6DH7#s}LrY z6s@Wioxvs+`h{C!f9$lrUtb-r)(?T%re1*-bHz|0^n1|^!0uxIf)&c43C zzP^5l{apcp-9M#+OLTCB4yueh(M*tRiR-$>?U?zjWEW8emMcPID|iF03G_4G3z|;* zx-E%F?#5TaGaBxE9wAs#%D}ifFSZ5m!H*FBa2D344}eNYIm+ z7D_u$B0#VV3Hr!q7dm(A{sfZfKCgYQLQ$Wl*vP}+gve9k6(GPHGboZZu$iFL z$ac(O?%F63DDrrX zK5jb{Lj~^U;-e_!$t;M72%(ervh|_~8aF=#Nd@ZP@T>}#mQ_1nuvRWahoY#KBwR;$ zwu!B{M|z^w!l0ZlOSJ41dg_uFFDWad7U+x+QBYP>BROK|9$68PnbGvt1tYi4zgbsb ze-b!F7`rA;Pip!21s02jmGkT&xaZO3=BK{>yiD5G2otxC`51=;u14b1i}O<2arf@A zF8v2Ad~Y!uBbT6B6`+_<>cCq=i5w?bLcv2WF2H!QVu_C+;E3D2xJkkLThJl(jHmB! zy(MMThtb_Wzymy+o+=*mI%vhCz^pogf6Hs>8rXA^a7bD{5jkQ>Bt(drm2d!^0dGv2 zxm~YmbtL!^4AMCW`s#1#&vjkyI;7jd-lDU_FDPwP7er1|fW%`3Rle+oX0 zflqP(7(R{vEPT?_rUIYzgQ1yp4SX8kh)+`TMtr)d*L3OsCHPda$X_$2uU+KWcDl&= z7Gjhw@+lUXr<$$tscFM`rWTjm_5(@H#4JQ`V>VOOe;|%djaL8hBQ!9on8w};DJkf7 zB(|_0Gg}E&HXxVD>5L13zI-{}e}(Y@M?Vl5issU_eYh;PIrfN{l@={X%ge$HbP~#v z)XEX#ycJAe$9DcL`U0KsD=-X8An_GLysA4&#j`QwY@;1FQ=^41RSbaI9RYaB>c+z# zO*6e2F8W=<67cq4J3E?VJbM~87$A{le7yME-~whhI2})KPRK<>VZOJKe`sAlm3~A4LRO&f-R?Y03>DS*QB#Ni#@3>aj(M0+} zu#FoIAAQdW1I?zuG$H0R{(GDYSiF2}kAAS?p{$+Myt+8+BhKeLWak^91NNfTij2pH zVmA*S6{}!WZ{#wj(vTiJe~e}Cj4ituiock|`%b(P_Y-m3C#q%i>X70Xw%M+r!l^=d zX7Fd0N8!xjt8w@4%x0ZO16njWPbK4Cd94`u8SN#)f15K+dzo7=VvV+L=CEDqkf8-rl2Fr8p4Xr$} zlp%2MJ>NY~t;D7h7VH$p7j{`XSECZRHKeZ@v_GchuP8=A;;uGBBal2T47+7jK`_qX z>9cfL$H=5;YH2ma6s^!O;9l5yf&utr$)tJV2RaN0UQ?LZGN3k)<;$PqyYz zvzi^neO@qSodyI{C~JT_sc75T?;@GTuKqE62Uot|#pS7di$CFQieVl~Pcq=?)+#$l zE4^3n3J+nV&n5~;(9fN*KU#*XlLi0iEHkGMHH8);e}Ke$I?S-uFXi=4c(fGkoQMI` z#*{0&3G-J;NgwyG04~BXz6;Cv*i4DS`KCM z|F5ow3?W~Pj$c#wr>%uD*Z&Q7MS7%w=T7nV|G<9G-gDsJM2T*J`Fi`_JCK9~;>x@l zw@#A=H4BX~p4FqQJbm zFq<)EC@Y#e>^L0ixH-KCyGCahH=b^&vDfWEaLQk( z%0u5PwKRh;Je`=w$?(lyvPMj=%Y0jx9(93C8ISw;2eiI}KR?RzS{G?&tqIm8r-}&C ze-38V(#d7$oE(QNU4;Hqa#eH0|MJ+w_m<$9y%iwpFoo{&yS!sdVGL=~%Y1Ec-WMrA zn4Gku8^NO~^p_ln$GU)uM>bjgOkL$`acosKA^+%nJja1&Zn5aApWz6-93@jax5NL( z-MekKbtHYBt1oN%B`B0e226k_9V~-}f4Fp@Y*k5?%aW_?rdVp6NJ1hBnjj_76xVXk zdFEmsU~Z=0VBTTgq-$Pee*cKf+_^UZimviEvsQopO5DhuI}eeOk&$sUFQ>wF>X6UY zixB8)<8jL$7{`{{a>s({sYCuJAJGf0hie zx&Ohq7WcmtIIC)J5N|`j-_Wz05uxP&jfS0sQvdq6v-?cuc>xN{9(qKEDj=gU?)M## zTD1*nw*2$PB%`s**MGe+!#IBK^30oK#PuKoDW*DgPppI!TL?j-+L1aNaor3`zPR~9 z%q&j?6Mm#GO7uJs$r!XMe&K9ze>=UE-a5Y1vl{bQW<{4W1YeJ_tiqStwG|&s6DRyL z^H%$pk7)Y1N)zx2#VLg8{ZlZU4trLBz)rlYzyJysKp-LVWy>!LYb=I5<1H@{8IHS? z=kE_Chamm;8N>?{MozZEsC=OxeGY8_O8S~&`HODjc`|*9=K%!_ykdTIe=fZI>ATI> zFQ2@8y7_{{!Z>BLKQo0?NPJ+?RhAZB;$dkR>czN>>IKOa$dkRlf3`5djo|oTbT}L= z>>Q5|EQf*t(GpFPePN-eC{rF5qPgIqAesvy07O%91T@2?&zf$cQyxSx+gVz;f4Jb! zF{}aOAl$&AnQPHEr=h}Df1#UN_TG=Wc#hGkMNug?>VZ|PO?xag85@-0mxumPyVjTlPim?GK(OYDhu zW(;GQEDMG|w5I?Kv3HB2Gc{nx0rhY1gOF2mnLhy4yvhiy#cT-AE$`Aa2m*35i12ik zQFzrW3?sCejpGGze=H7nr^gZSmvMxrtBk{|USS-eO~$buS>=L&VUl$&?A_z~Vb>AE z1F_YFh0z6tAXxm1jbDzbV$c(&>WAT}Gw2CZbCk@`Rc(W=dvivv*6Mpmx2CXo(#M;t z3O{R2BaHjz3ZqdZ7V@gZ_Mm`RoN85Op|*|3V2~~3BOo(xe=r8M-#i+9wR=8TUgTB z_Xv)&CX96X?J6yT|K!wB92!5o-j7c9`~>?QwYAH1UGTCoW4|>C6X@CbEPQ=OZ@%|XWDe`B(GAMW$4!v+mxL-bhYdc*ibUxoKdg*MHPuTEE1?ynd;hz?u6;=_*-SW~^11{q}uJwhBZ9>tbUc?A_) z+PP`M;9?xrJ-&Y;v1sj;d>w`xy~R%L70+${wSqb&*extBBDBvwARR=f^BI+vdpn26 zC#Rob5lyalwEjcH6#7UFU~PL zKf5tiu*U2P9xvjs95WhYuW@fs#Y>x11#c2N>o`7n(9LL4rr4J^rtdV_ccbC^*w|lr zp4XV_&7P{gp{Wa#N#G^4vcC6K3XHx-P;|Qqjyk=qy={z(cStWO$;GudQ|WO&`{D5I zAuc?`F=NHpu_I5>`KIIv290j1f5N1;h&dwBbgGhtaIhtRmK`K;*5lhx_t^Iyg^2qE zbrH}pZ?3qD1py)1a?Rrtr@0`_Jje%XV?^iyX)*V)=0WCyu+MGr#vebd-F~pSUgJ&h zmJCSisAXW#OVnz*L>3goL5k{ydk|--wxFG$2auZs^SZ$7t4?NSj7;3Oe|gr{)Fd%y zs;}O{d9l8F8`Gou>K*&{rcA1?ysI1MX_xnHm!s^#>7(iw?lE$+d!f9=bmaPU=7(yt zSQ%x<#0;$S9q{%?kh8MeoH;Lc?doPa2gw9vQ)@U%=&=hBc;0HOIUrsB+Gy5j?l%cT z!1z&y9hu`NjF{KzjAA%Ef5`DDphO6eC;v`E0(&(BAqKdoDdk+O2hUZV`$#Xt<<~*} zX70Ehjs^#49 zxE6#(iUD#QkEgd@gx;q6xbEZ8k(lC6@RF`kSU7oq_7$^Ruu7@If4#4kDZKYt1zoVT zPardS0pQYfvlV?h!ljKECKK&(tK;HmEC@?q1`qZZF6=J78XrE?mBsRP`sKyDw6Xmr>h)$q zN)0o9Y*nIR3fiA^j}B{0geTwp zmc1pf;KiyIcRqYGS417=UD*ABsDW7N_u@6TY z-3c9Cq7QqqrXyGoRK79hqWKYmWpB#G3aQEEeCOVq#ofid;Pzy<6DAmNdmk6X&d3vb zriInM4DYc|@91;O_&KXWZ%p`*17#FxyXgI&=z!bfB~ABQZ#;-qCG1?j@k*bE5$}%4Zt*eJUiaxmIWQMQ2G&Tw-Bk$Y$8tuf$~RHTRKl;2a*9 zof&rj5QM6GfY8#$K5Mk^_l6_@TR^10NdNS3tzJ3E?bUjp(|PdZyu9a7soX75DwAs` zXc^lt&ND-4*K5c?KAMpEG1+Z$;hvG@>#YZ9Du})x0Dth2B>5_DX{GYbc6eNjQlTMB zS@@wfD|USr*3Nc`Ylg%u!eb>&tGp_?Ta+q=Nrp2z=&Qmnw2@|8B-$@3jvFIR|*SVSr2B+mVwz}I2CpQeE+?0<>!RbDiNasXShdo8p zV1Ma$#d3vn;wqCsM9U;%gL`&HiQ}Lt8J!A~Cx3yzaH1cpCSct@`mnINLI!BxV@89D zY42oKd-mA}Eb*voQpsPQ};qHF@= z-KX-}WlUkImBc*;Z>`lWqYx_GY=2jF@SqIAWI28F!I-r4WPmmaSRudbxJy?Ee+r5~ zn29--qfUwgRGd6j?BNzH(3c|bhBI+q=-stDesQsdvfyQmW-5+om>p@c3>SUdnS^<< z)?mSf6H=^^I>stw&I8KdPIQTsl>n-tF$&K_8FQe-a*4NMy+H{vp&+eyMBleS*(@%L((nRw`3FrX<&Y|U&S%GgUw=&mQwHJL4lYp*UHCByQ zo55(xjX!Jm?dRq8Hg$_k`TN^%VLyP4_AH&2u2(*?f8BnI{WR0Q)daXRJNZp^H8ell zeyh^{KVeZbT$*RURcZU5uz#h2mo!!Xv^`LzZSDin@B)eO_Qf{Lsu}+k1|;$h-gEU= zuY&emhGxe<6b(RXr<+hompP%7OEqPV_Q5#DY9Y6gzVy6uEM)}`}_~% z`QkaZq$JF*$3?UNhujuz^Ue6W6x=ThSjZ;~1G%IKjNL`cF3Z^nkbmc=U!^f1Yz;vK zD|ZfWcKWta+4@|`)O{hmk-jfbpzPXab@J$iyG8UuJr;wL=rD_I6~R&xb8ym#fV=RO zWpM@Pr7V&Y{HUBH#-a+ko%54p%v*AE^NZ%$SsTT`HFJ6BC?w|}hEjdf`Qy`wLz@ecHZjFCL7? zBsM;b@4jrl{Qif{_UcOW@%^VScv!VsQkb<@z1zPk@MnAVW^?oTh?_S)!SCv z44>Mocbc{HT6^`2W{t4ttKQwSp-hY^-@TKk=g831ET5Hz~R<-7>cFh4)Yu;(s z94fWuT|GX1T5GOivZOilwA!xOta;=krpLnW!-0>>jHK4k=z1_t1N9G?MouWW8vwq>~t$a_rj)~aMBzvalO@=aDAs81{ z-4pdX6e?LFy?RxD_3C4-A=9GktGVS7_CG4b3MezwdVlrm*b3pV^EOUY_=j@YJC*(W za@mf3Os@F+)4U(af5chvDMTEn!>Cpu&Z1tv?2i2a-@ky`-PMmTx0_!=@YuYnwz93wt0y+Y>KYE_fPSsH zdK+4|dIw6!HrCr)+uF2xy1flU!zVZGuXlDQK7X$@zn~fVu?Kd0c%Yg}^rb!CjkS32 zT6zetQZ0t+ZSml>^kB8VEZVX;SeJV8diG=$c}nfs9K9y94K?-THCMBmfX}-YAVW<( zdCj$=CZP3-Ja|1lShWP9wI<;6T7siNMGsc%R?*h&Sc?a*r3b6!Q1{+rEsdOoV6|fP zVt+10qiH5-B558r4VHVQz!{B_Mb;{QsgnoHT>TON{)>o3Cs6Clkjmz{%7mE9ZB8*Q zn&y_F)@p*ap2DIeXj7(dZ2W5h%(Ul#^F_atzOq&YJZj`UB)nWrh-ps__`B*s{qj}7 zSDp;5eKc!AK>M&sY5)wgYA%WqHdEq^u3s{qv3eix|UBpuvkP%p-q_S$ONZ1&`1 zwC(mUY@}M0~&%ShlJn;Brfmw;Dif&*-NcXvqs*(;g0-`v43IC?eJq0``lQVh>a*OL#XMJopILO(%G5nNB=^M zlWGx$mF5{svCy&oq9hJHt5oO`L!!>+N%OS%uKB+CfvA@-Af8E#42xT7u|YZ;cp2Na zj<+{L2-2w+?Yb7C(@{pXBknq=2PU08z95u4|85;2&z=Rd3E{<~+DVTRe1D&FbyXbF z53&i9VER-_P&I==ED=8oc7E%W_D}Dv-MI0=IfmM2(cjX%!Nu}ZXOUtD`Y&L``Y$=; zbyfUsJQ*oA+eYm>?TZDwAS{dz7xr0T#B=pGi>r;rS{r`VMRmTQ`KNW>zmkcYoV6|0 z{fDJD;}PNBnhQ1FH5YdA!+)MJx+5E1`x8Ac{6Gv3wT*W+F-7|k*(E?TKzXadp3`Oy$@9#BF#&3s*&X!f1Y6>F$Dj_u`hvO#b+a5RL zAlo0fA+wBxOlBc@IO=o`r_7muAt-<#E`aS3k$E^+Vx8XR%frTiynnEpvr(R%Nw~}A zE|qCyjAO>OBDX9EX;%2_*XkHAkNt*RZ$z~6Er4k8_=;of)mIxzN}6w(i=R73bahZI zFK>i{ZK%;r!A7`V^$JojU#F+{R;Pv%aKvf+!olhO$>?amNIZQso>(@Uh3*ON``wda z8&o+K>iL55>!=a$ZGXPe!qsi)n}-C3C~;+;RRXM8!b0b#--u?(YR}$GxLqiXujoMY z=M7f;=jPA$3)SZDzoz^5R){IwYE^D_z%>MN&9B{C8l0{_&9fz4#nSopP9?9ecg{_e z{@Sp6cPkxb^>>_54K%9~wAG(N+sZc18Vi&CWSt^Ly)Uip z&2XWYjn;{0OdT+EQSai@z^V+!*pu9VL=ywnw_Td7l40?oI{C) z%FQHS8&!_V%-09wjPUC|0$KKOcH=0_F?tWDl+-yfbZ}(7H zUm?=icb*=?;}t_j-#lxj{ABm0!d$g##dnp@Y)P;A3SE$keKIMkMwNCxFq=;p7oL3C zV8xD4oPQH7nkWG_fM*FSSTqrA)&hi_nSNk+j%x44OCsEoP4T_8m5mz7^^jGm6^)$X5@p8_ zXT>-cXAgGf_;UVh&hQdorTH~gjLD!=C-8NFO@C{_c?7iR`r?$P@BCeDvA0zm!PI-U ztEJcd)8k_d!oEKR6PfHTer>y7#dD6;2$3bjVpuyqlw*B?U~YGt4g2N30jAM5&{)Ft1P}aWl${ulC z$F5Ae-)MIi+B81noY@rhnaZ zjAJ#{uhc9z7|8mEIg~{d09zp^8QIM?v09q9wMQGWO70DJM~6jY@rbCv*H~$j(2S2b z#$nq4Y-Y?jeOJd*Y8CS# z-^4AL_Yx-2S+=%D?uw*l5&WErmy34>z~BT8rBovE)@ReqB>zueR{WHy{4x?T@cs zoo;noJNH|U)#&-Hi;r7>fA#9sO6%2!l`r{UmxtAz+IHh}^oBl!SLf;JB0X)Tr|tOE zj1TSjpzssLU@ZPb@l(6L_jNT2~c17u4Bto$u&Ij=)#)4LgDViis$Jo_{M+Bc%wA90V zm~aI+_@5qn<^aQJ3<~??uQb^sVdMJ4<&(YP!Em|o(W^DLYRAK$Pk%?p_}a^^Rk03u z!oiz0=0P9rk9y0Pi*PllHm@WlkGjWibu+;odonQ-ZvvzBhpoI5d-oD5*!gU!{BA+N zU+?0IH#}ZA|3i<<$nNnNfoXf;kHen+TmJ)RDE0~qf4q6~<{vKp@P|qZ)_@zC(7+Cs zi>;mR!D#=iy)ZadHh=9&_i%#0Ir1JwO`MG31Df`Gazx)MJUt%KJH|KZN7KG)0qxPw z`X5B^TW$s4URYhaxy~>uqwskg5#-~fb%2i#(xUS}ydMot_W0uH!+K?AcZd8puNC+9 zs=xzpN{7N@`@ebL>MU#FZeU-BPj(3cIIliDYmNztUz|C$I{{aAJ!RA`-LT13cT2HLP+u?D5 zg&|2Y>DTCUM0<4m(WA$AriW}_ne5Cz^|7XAyiq(2P7E9$T9Z9&P2aZ{R`~BG5Mlfa zfAsZA^EmDfMt`RhgV=P3-ocEKpA3&GgFfEv)z@y{ZZ6nAD~+o+*26;REwM+>|KNz) zUTA@#HfTM>k(NOH;IaO@dLLb=(7Rzv8>cdE!Q;WB)p<=hC1}n2-gm(Q#9+|ZfAgA| z0m7k2=xn_QpKQGp!>}~Td1&CPk}`nvaoj4Gg9Q&ab$`~JO)CzDC*3)(CZ|Ut#D-rY zSpIXxT+ zgCZclyz}Vc?YaGz=CI#A+&%5?W)x?@P8}apJe)U%QUmA!A@E+b?`(o{jdBAoP+M@a{F?|l_ zRYvfHHD->D4<0_e`{4e(`o8dn#fOBuw1<=K?th#)WVLOoR=s9*geJVw1h}}d%Rz-4Z0`Y z_UHhlSUx)3UGH%LxO1yH`s;(|-@jk^^VhrM`~2UxFMinD{9#v*oBHSB!}~w!&wtqM z{eN_*g3Xov&AqwzV_L0*PsdeLmG zkbTEpV8(}P+zcLwvBpOj{ufu;I8%IeU8!(e+tO#gx4bRosMG!=oJX3DTinpeVD_~B~k_zY&bw-fF zf#RpAUi>MH=r_aE!pADpZBT9~nSaN3fDf>(ZMkoOM{eAf5X%jlmpHsbM2)CacC8#P zEy<;BfEfcAxPmW0^kH1zySKBxxVYnMGV1I~t+chXZ7X>V@4fl5; z)VQ$dbG}F>+~OK(QKK}Mu+YhB1q&fz%d7(tjV}8gb0% zrug9M6F?4u@-e&Znq0j_y4B2?wsx%+eA?w=iyQXnq^`0k9KzGDDd9CD!E3ce|Ak^& zW2!B&a?m0VNr=m>O6HiP>UB( zxhAwMkYyKqNQQAd+@+^ah&-l+95qoP?S%eGZ9UFSF(2dH&=BqJk9*zyjoPlO%P1M` z9-^9g$jQ4=8>LdaOzPO*s2!w2uI!lS3476MWt zjq10*AMS2`ILf+JDQ**!lj&C~ZJM^B?Z_23x4skc9)j2$4|uHtu$o|GvB%rnj(zk=W$KKY#4%niDQ^mFV1AC1#hiT1OjPeKH8zqbmlV6!l&do7;X zu|5dbiA|7PA;H>-WWwh#u$P$7kvD-4#dZW>hB*ehrRZf$kaM))t%{SVi}_>stLkCe zT3hdeEeYu9J%8sS!yD;%^q25#LGAPUgKxa3`UyW7%n><6h6*`9X+)p$H+1{vt2qDl zH*^-G1y1JUpoOGsXvS#k4d>!D*2}ahzAI5tjtZ@0c$L=oUI0V2yw!?iWkle_ zS*tIsnO^<4@@8=33!l!LXp@k}mFecH{oe~QA*$uAR)6!_H6lv`-iIJu1+YD8$) zOC`J0WG?OzC|l#aL~t+*K0Z4SbUZLK&Xs)^vjMShCb}sd4);k@$IyzONJ6_8a{s-F9;n_HDV`0}=>Xbnp;f zl#myJ)iQ*G2ogn;pxf0Z0Zb%%zKrM$pqzt^fq!WqBf`hVIIb^gDXG{p7kO5P(>n6G zj4D0LPAiqm&2=C~yC@M$-5dsUXLtiF)!tyMw%?fnP{9ck?aJ|o!FH9=#=!Hyi5<3v z`>rK9OeUQTOb%0FITn)f))*rGTt95qUcYu^|9U7T#p~CQROY!`d|RzRaMJ0QFT&Rf zg@2NIef=8LMI;cLR&=(hm+8w!bM0D39v9ojgvt`H5iU78zax&$xep8I!JuVvE#ZME z5GDt!+uS+a2^D5Rw$x#}6HO1c8D`2)vVOB$$MVL4@J*H9p&WycFeJt4vnuu5P5d%{ z{P9OlR`P2T-6qy3{Zia_KRP&a{hU6ou77c8alNwip*Y*X7~VyKl{Qr9bprvWT}f@P zY!ye@#!9`_Z#?t+q`u<%;7X_tY@)=eH>V3GMvV*Sm%eeSdS(9h9iYqYq(ZB`yzdpubm3w$%Ww`bq%ciyaHxVt{HvT&ZW zfpIJPby}>>TQ@hEGld1Q8l~!sJAZQeAOvDIuCB&4+}hucL~(Etux>Ol>;veIh2eLG zd=d4gMF9%67--xiP%Ew{?28iwH=Hf9w8pccz9J`viBX{{sx$h{ZeI+^oHwO`xG3z; zfg=Rth+Y&06wZ-LLUH8p9pjC&ModPWe1+*3&=|*O=jb?Rz2i>C?v!?X-opGd2njJH? zQE*N&?;IAtdES^f))qpFz3xJ!)tPagtndc+cFinqH^8Mn#MBO%gF$Bp=NGy7DSq|{L3r^*Fsl;dloEz-QgIN z!_ff4Ow(CI@N_02v;Z^dr`o~2&RT=iF4?K$Jb@1F;C<*wOjs5aHQ;p!5g?&0Qu2G9 z!S66e_y39;C+-?dlz#(GIMc{MRcxQgFwdgM4xjI(6PvMnvbX>BB8N@>w_?bkwfcMD zNUN3MNUOE;)yick@>@oFF&Hlxc8H(k5V{mW-V-`?Sl^KwTDV-z!j&Mzy>UY+jbuK! zonnJ>^OH?|mHLJ+X5h|mI?E#qAXSOqNg{tooLL_*%i$7an15yVW7?&$z9f_=4T~2r zjob-|K6tOQf{-CyUslMtM0TbAy+IT{4|FmiAM3dgx*LVqnGkyVI7&ji=iCDdcxA=% zRl7M0Xjz^AF9Ann)XPAZ?p0`zD^Se9*l$@q$+`fdV7op5s~~_8inM)rnax$~8Cmn}~NU57)#tx4RghEeEqA#pUsMqhjLm!p&^J7m} zTVUx-+_Ze>FlPy>TZAS+WUUmDi?!{AYn_G9ynm$_`XICXKxCh11HnPFZ@zH~?wS^W zDBXcJIA?SX@^j-xm|96yFv8=k&)kG-1*(;*ocYAxcZPLo5|pm+kO^pCJ#Y;F>RAlk)Yw@^M#DF|mMPvsMug3?jU?^!1{#TjFYE7Rl7 zX1KPbnSISJIgev-o}$6nRwGlX5hu7UJOxNYD;!jf4Egji+wb2lN@)qoj86w7ZYFEA-dNb?aasb~cqgRG%tKZuoSV z=+D!Oi$^$>61tw#vmPH401_Womu69~8=`AUzk_$Fi+R53)c)}5@ZZ1Md3C(-fB)zI z@_+pLU;gv|{*PaO{l~BW>3<);{&)ZQ^}qkeum8h8e*GW+@$3Kek6-`ifBgEt{NvaE z^&h|fZ~yr9|N6&&`al1lUw?gdy0)@**Z%$T)#=V~XQyU|x${-U<%00$ql1qhzp=m4 z9nvi<&NuKjo@()laV)`d2A_Oh@e;4W=AZI6UV0rc&+K7(<_liWwSOnk$fo{8RyXO_ zpY-d(EU5lmwBV@Y$Kf1&;OxiV6{JNpeS)EY^ao`89XrdHwpZG?%6mS`>TPHA0e6EQ zaozA{!?*8Jvyj5!&uwIN`tjPfqLd|;pG zRQs^7Xil3ha*2-c1AnsiotzxCmzUqaf4}tpCU&a3%d200`Q`G5y_19e8W|cv;71|x zz&9igC@omL{jwPdITva%pQSx&D#$h;2i|k?;Ou30SGS^iO>eP7lVVS4pZjM29O@|u zeJQ^|)}bx{q09JHx$d_wHs-yMh4+Azg6-KAbQPm#2q|{=?tikG&P|bSzj$C~Q>0nJ zVq6BVWD8#h3bx`$(b~(Y3vqD-HPXsbSCRac~Wa|f@&p%-JU&0 zNud0^$-b_PFxc2)@|cZJG(^IpK_fVK2NgZ)$JNF~))-%TST>@vX*eh2-QE4+ta$;l zD+~ug7-wX%`+uD^rePQpHI)%Q7*Gr~u!sxFaA>yMT%zU-wn?&b?45^ltC(6|q!Nwu z0eK>`HL`VRR{?INYRM5LTxVxs3KKJ7K6cDS(n7v-)P8Y79E%sEqC*^sD1?Eff(gXh zB>RJ}qFQWSJbZr(o7C+klI`IT5cbN_XkfgF!vRZU-G72*E1)K4Z$0aXE8rzvR2mI9 ztpqjL-<4fc^1X@T(++=vVr4Vt-ctq^9R4tB))qwVjYHa5CqXcwm`@NEM9^%I$!EG0 zLuQhhOeW?!&0Yb3JJV3<%k!c5JirU`5F1P-pg4x7^oe%A@=_M5_CgLOSrX}3O+&DB z$EfwgK!1Q8A>F2kW*tT#Z(+w%c4W{z+n)#>N&q!*VsBP~OJlkS>gCri?S7fQl_+Sv zhI#c{&hP=`W546GvhHeFob4SC5yQ+FbH6-hoFIe&pw$y4nE9I=xwGLW%53iUPYzGW z@FS}}Ji-RHrfi*BmiGltgN)^iSEy~;hfrO+TYrh$toM94p2_W>91jUUuRfdymbkMr z9`F7l*h(Sm2?olC-BrBgvldn4?BmA$T23$ zvSiT^IV3>!q<1q=v92Jx zM7^|_cNkmsh*m%i+DtP1?<8tQ@QBK zj-3+~_YF9pCC|%*nqarJXG*;`hFPe{k`1aw;C(pkPLm;co1N{Fim`;s^ z8nu_*9%CS{&G$q6dk%S~@P9k`@-iY);cQO&wdPII-@H)#9UiHw^Zp0$_$C9^^CMV) ze%+?_;eZE{?tFvo8Ba8z)0QVXwoho?xu)hV((w3~x73b;@sPTQMxGpcLbO}7^Jplq zLPn}YKBstM3|9C-v;Je1AIj@vZ`Sxh^Zw%|Gg+Yr|8+~hNaf?dZhz|+Q}SPT^ov>f zuP^kA@%XR1`o)m^*Ov%bTB|p4^7G%D5W-_>5Q?kzn4zo+j*l6}DhU*7k2M7H2Gky_ zcf$GC9;;*J7kaEdN%>HFtnLKy$Lfjn3AM*`vZ|~@k5`%LD!Br9QrpTs^mtW`3tS9< zkcZ?8UKPZgYqNrj=6`pjhI)Db!PCvKM*N|pH~gU$X7UBCuphpl7351_&G#89xuJ5Gv=|4)C4}JyZ)I<iSZ9U#X2t<^7XZo}VY ziRKGwO&6^LWKG%uBb_yqlX^@+1mriCYGHr^J9Z6>~;LprJdvP!Na}ovD)LBt=6T8Nfs+t>3KOKL*}Pe+HRAH2vrvA3Z)*wG+fPpZPh?z_>h;w429 zay^wSk=FeL#^fM|pFZgJKXNhqhyddB!}5q5+kaNgV#W}n5czKzl$`KIOM>5h!4DDi zXad96snHOg84C4hv*^@lJr&q2I+Appen^E+HaoVr9}~-hI0w&0+-xV~os$LR6T{;} zB7WhwO$<2>7!oYRdFiepK{e{BYEhDz)}Fn%e{}TCc!I84mV88PI53CKWnwlyd+}s* z;eX@HV?xm!p1fN2z>Zt5mK3vbaee9Y<9F?bhlN~>rHy652B55Nw@YpPv#khGN0aCK z17M)1C!3PQ>F-xx+N-aJ{kLO#^=$mhXn!9cQUDAezNEW{Bmn3}K5F$;1{)j8P>j{= zV_+8L90j0YeU+{+_FnX2Pd9EPT3gKW_U{=_`X4M~NVV^r>{x>&sQdI{YE4JLGuqv2z!nx+Tt{uc13oMN*^GZ{8S0Q8Gzk?Hx1a z2;UtW{teSIYAC{mh|M={ zFfdzh|9bYve!8s>Zgg5-CZ!NjP{hLx%N$@TEi+jgvH3Q74lN;;QM!2=!keR;eiir* z!y{#pa;6TE?G#6CKyRkeReyy|ZLe4>njTNTkr7f;A|wCqgaj0O_G#QGaRXstfb`#- z;-hHQAlSG-ruh2(v7}^*hD#SkBiLh*c?saV1m9JNaZpo353GU`kxB|yngO=VGfLy= z%|n-Y54a_V@ym}f`x!@4jFt6pT?i5Tj;yb2KuIvwThim7g(DP+P^B% zFUrios68Oi?>HCk#97w{y?wMD+&{6fwhY#|W6NYmay=zmPURmzCi=<1;oAQ^JR`&h zNU(nrAB}(K$Hp3yD}RrT!4kNSK_EOK?e7|*k6YyZ-HOEo7)P4zp-Hk?gR*SRh?xuG zj?baseXRq;MA3lwu8eKTFjeuC*-pYRSokKi@RM~gQ4{^t4jPyWMmBuYL8(hbs1vJg5pM*H_xH%K42*nD&E7Aypz zkWlRNFB*AWWqg?XE|Rc7H$j#2V{5l@@Ak)!$ty^@87Yo`YVGl2y?$-<@#DT295vY- zLAFTOet#@WJ+x%R03>n)s*m_PjhP{vo5BS`6vbKk`0>sPivrsu4hJvq*uUaG#4gQ- z7OQE4&ZP6EIl!gAp2Gx6$pjlrJaLzA$Y2+aVypg^I8G>tkkxDIcCXWgu0kM+6-q+} z%x}ou`L9lK)|kr!yI2<)+U;BmhY|h-HdI~F(0|Z!_VmWxV`qs(Cj3rTII%F$FyR$5 zfAVu|gCnV--+q>HeEH9Gp4|!slFjRUyUXv)@1@detaa5^!)fZRg4d|fAW)+nqT|ny zErsz93)vRt?Tu}R%$_^AjDlg1mJXe`6bTG_=1z3>ntkt!l5(oE9Wf|zD~WJi(jk@fiT zbSHc87NL`E8G!luHL#}Ao1{P;F{J8+fyg|Ujt+DOXTs`9ap>ryr-(Uv4(K34;5??W zpsX4DU&cw=Z*dwr{Br=5CZWpIRS=TBD1VFy>OgCURvh1nD2YC|0?V17D4^Lz?*N*38!q=-T=3pH{Y4T%jIn$qU~an47f1cE9NCjEDVq@E`NL~ zkBau8eY{vi>Z#sAyOI4vT1{__2$72XefZ$~GW*EyJ6{(e03HO!shZsUPp zOV8}t^z2c#d$5Q8EGk4jSF45;~ z6UX49@$b1~l4fP*7g1ch3S0gYJtF5cR&OY9VV^{X zq_*qbyT{?IjjZ2MuT4l(k&6KVD_>1sO+H^nY>fFWPuG`0VDAp8=|R~{syGL9heb|J ztS}HRAEQ1pwP`lYbS4#F4dYk+@zI&f9ZMfLG0XfcO%Bm*NI8#FX`!JvqkjoCV(#mu zHX>wt3LfLG3UOtU$AX$d6j~L}t9ZluvWQN_AcLc@U=Yq(@cvZ|J(bmM-S*)XOBleLr3|;u64KWw&qBt-{ zKVg^9X4h-cHC~RNReu5>#eRBsIkr4`d43IgGOwXW;8{ zeQW9S#f`sTKSxvcaqHDKA(LN`_G!0?KK1&l?*MP^o0rd?exk7(`hV`mA8+1W&pbMo zYoYX3sr0i@`emu~D=)pXLaAmVmP)DJVeA+0)#KWj&cwwaRJ!wJ5$GbM%47;ML}&a zE;C6I8qHpQrGRU)`+pok)FLN^QQ;n8V~{r~5~QSjMT2QweN)FK=~tHRv6C6~OZOV? z>tVq55nf_MS;n4x#&>K5+ge<+Nu5*$NZ}D-AjxJfhQrDXB;_+h<;ayq;d4+Rt|Vx$J3dSk;=?hg`rX)fVwZ~`?jWc??rpDa`eiG@;>Lz{ga25OpFFTRYe}6d4C;=Qe!hO$KH%)V3RX>!3LJP zx*Q9Fkd~^GfDjYYRAMi#?<2Y(Esm7nmOkUP-n9bO3RqG9NDg^{{(emUQm=hz9d-8) zT3GtZq_NdKJsG!<9oI~7yT2qAMW+Ult~K|U^pX@WIGI4|oSVG+4cCel{PVGM@#eF`kuyqVv+ z!Qnxt_V4~(jkvjVGS)vw`bR6*Jk~{3$R_YjlD8Wt z(P6E(e~L|2LKRTIw=_O{K&kGW6FTE0n)+(Sjen7W3O#-&=Vk|sTkG@U;aXTMKLYM&hqg^dpv8R-CyHJEqvE0y=3eWDv7 zHr#P1awG_Pb|H__k$R2n6Kw9Z)iYQMltmu8(PZ=B=;W;4xYjvlGqHHb&C}A(M&!of zNq^4;6decN7qc#oamBxd2a6;IP4F?kTUiN4nO4P2d;`h45G#Cb26581aUN1T*65X! zj4Bn&hEg24euNp9nm&iCMlp!dM)wH2HmOtkT#MgHWqpk0i;{L&p0Ao2ncFKyTzUa> zpkO#6qQZnS7$V{;wLD_n;qjwrm7ZV{W`E?=H!sxobrE>o zJlgg^+RZNE_@HfAW(Wk@5B|1CglPNL;C)0t{QtGift@J$p2J2TU~LqyBEMvKu)c{2 z0s&RnO+p9t!%@-vrGmLaczPELC+ryv;H8k^vN5dX2XzGmuYHmogbc`R8q4K$82UVmh;)hN}s ziPNxUJtyuP+7k{v5d+%(Eg$_i0aBtjwpu`|(R@Vvf;TJrxCHUQ&pE3W_onSMHW}ON z>#TM`*BIIU=*YNaVkdAXaFJQL)T9e+kUih}g#X&8X;j#Yi;OHI*}+UO-XwY(B55aT z4rx!1(?CdT(Pq3%qxmKuO@B~*?I3yp=OhwQ>yX!QOWX0pUSA_X-vRT7AjkOdAvz;CmEV`;x*PO3+sP@_KrSGj!?Xn5TGQ&(yC8lGwqO zRTJzB*M&7gF7`r2Vt=M!3-|>5Noy6H_puIJz(W7e)uOxYClqlxwR5U0=;83W7Qh`{ z0*!SL7j_+1WAOZNU(ukCBublA5e&_i|CvrHRV%4Ezg1bmFC-p~cCoHJ6mPC5>sD!^ z2t(M^9>4to1JticfPF+4`R8^Udl5M@j<@;Wf#A;yyf?N$Tz`V?S3KI?1@ecZ0siNZ zmTbmOWV(^RNRs1aa;=j9V?dn0=uwhj5u_uNsQ*=lJx~~ECG!z2sI(3An^{$jfCwF9 z=9QJ=i=F)nYCDS&5T`1_6u2w|-T`j;H}e5O)5l_

      D-G6wQ_3%W`@zW^`9nufkpY z(zgY4p(;S6GJkl@S%81-caGL|!wM4p41p4nA~1t93!+JvFNE$CoZW;?V3XQnY(PBQ z*Rldwb{0n@b(6)g8^^=a(4#D_B5lG8R7Y=A9AwK+d8tP{kqI!FMt~huw#@84KwQEM zapA(;ik(z$9l*B1>?`5Y5ce-}%c92&(-%~o6iZYroxjy7_q>0?(mumIX$DuDbrkHV zo;rayWiweUD_pP+-O?@WdB$DC7m@v@@HMv#%6PTU^n2lf~VQgOwKbl6P|dcSIe_e$kv+e$cbWSiwQ^& zP_a{#>8B*3Y9z5rlv&mL8?|2$`;Zc?ZNA`$>`8Noi;jDC6BL)D*^p&*pyIA-i zE!LAe!QN7j#Nxx_m*XSz2DjS~V#i(X;yWi<#obU*>cOn$0X2IT+MzXSN&Y2kp>NEA zy|sowC=n#X0tcL0W+QstA6su)Yl}6x>_?zT{A3nLc*e^bAy^=dXz&0aQuSipOj)zt zUhHgU{I7ot2_5-r_a4%+4+fpP0x4ntSS#FuP>h+WgDREuHO=ztCuJNzA!*+j+wV;Vy<$ zO386O#if~@EeG3?*NBdE!^HODih}pDP~8ROg~)%s5RQLB(jHOA6J&Omu7e2uw~2Ep zjyDNchJz8VRm=<;9xe~zW?W*W!tx|bK4*^IKW)aBg;nVJMP8@87y3wHzP4u1Qqw%{HPpB+AM`RLDUUEI?k68ajV{ zL+SSIBYJ?v7k$`kqzlS+>SKoMeQ*}0N50A--UEk2!q*oG4`tCL zj|21~f!{GIHTfC-+n(gzNfs+)6N~Bhpw)llccu}+#X)y>P8WtHpf3?nPvnca=+R;e zqoMg+lzad5;1J_uua|zRrvFHGkFgF7Tr1jYt(xVQ_2M7scky}F7ayjM{5g!LP#=k# z4r90#@AWJ9`Wxp&d6|rlk*nA^n`l}0>?bW;5G5eKp7Esn`LE0XnNy64a#*aGBl7_^E z!YtJXOX419o*GM$@kvqMX3WBzvO0eVax5YzFu0~*Ym6qSFEDpdV)LN;XkN1>uG>#6 zdoh0d_|c2X1lig+d?rh2pRJjsZ+M2ZaAw-d=y0CQ*0OK%*%ELiWDWC3lEwrx|)^OLA2SGxL=#_y`W$;qdU~SjXl=QiOlPchT|0 z$MM124RY*|i!Yo<)?*om3>)@FJ9050xp34S=-NIps{3-BR-CwtEKOdef)YTI3IQCh zf6?#F>`F(A=djS@}2&1;U)E@QO1kPozr&!2yowCb1p!DL42pRjY@T` za)u%%Wyqn4GRw8tIBSm;|0n4ur_Re_q2SJqJVFlhl~TCNyzMKj6y$#}!&kxuKuI*6 zcw!lSoV8p&g5B9mQ(8()Rdk}sY+_bJ<#iuwS*=s8Jp^{;US}_6f}Vi^P3~cQp)p@0 z#1(%?43Hg}DhvyQNJRd}KA0SHl;s=e;d#B-2kOTjDm{6b_b}a;%_WAb3=?8ndkqbQ zm+Z9AY=NJo5TA{oO8I}%8Abf;@fh$kTR zOCm8;Y|Xg60>|1y-J*T%Ke1wsCst%49NmcVN+5}xgz3Ca*8vF^a@?QYNWf6q^7mB) z9LCT5#7)Fj>(iZBgqyk09D7m~)m@Svs;2sgWRk{cK~ zZN)_8$V6dvWxw`-93bA^kDqfZJQ@z=TkrkHf}|RzWi0HtN6ze)kbzkz&ahsoc{-GX zIts3s3><$Io?Cci`QoKRD9ekmQJWzWI~kAJ7}(=oQ3htQ6q8}8F15c&+GY5KVcyZu zl-Z7MoHZ7cP{PSTSllj1K`{}mJ2Pr`X^XS(@&9yjwx4#ho^fBkuC$s3;w9lmxziZE zdD90Gaw3IcgpnbtEt@|^pp}|pSro)I1vNb+_-B7@YCfgNrKRs90STQ3>d7_L_QP>QoPGh-i|V>uFsdDBUV5~AN)y|_1In_&feM2#w77y#(C zAcvo9J43?QwCp?LcdpUM+Yb`JSRrnUMhLCz9~2FEXyOF>@+K>-vwLD#{dolIrSGem zgvwaEB)i{5C`H`WAi}>g^%AKlB=%)mmdk(hBUSuOv@HT*p@+@4-8xaJ0fK1}obg&i z?j_f|ha@jE7e+~iC1SglauZ_ZV+Yy}s;Iyus=24;tm5)GEE#dXR9|~kN=Mew=);hB z;+$JtY;(De%#F^-yaKEDmcd;=8c)>c-o2uS7*#la{ynnaxBf-EA4bDT2B-i%2iJd) z3F`m{B`p154P!<~;&S2F71Zcx2NhK!BD9(=c;RY< zAGX}IvMzoi83FUiSoUleY^h=h z5B6x9Ji;c1EHO|jnjH7TE{K1k`<*-qP8|~`l&Y__aIN>Yay3M~Sk=_Q@7ddz>lXPg zn){uhN%`w{Kf{9oW5HgsUI`G8;Ze^wfXF@>xfySSca( z<=#@x&=Mjf>4Ktmh*$?!77wJxQaB^m*>xc%d41R%5eDS+(7c_XKz4RBr${7<Ay;5OGAd!rFom?xYg0qCK|Q zS-sut*}vVz;XSyldbfYo;n8Bnk-#1ks(P>0SzB4e*mT5x8J~=0{iJ;s=bSGAeCNf5 z7m(o~*49@0+SrJoP``xjFyi+*a0pktDdqgc{;0QHsP{g>RX7ox#)bKwc)catDRzuh z7TW+Gw>P$g_S?@0ZlLz-gRcRXeoR~xN+~?~+q3-bPwDMX{#Jh+L?(CS%Jsr1DC96J zmTN?a)b@ho^9WBOESY_19;}T`F0V#=aWSp>tVCoh=7>3<-G;v_dT^dNPB~nvW{rR# zZZ?E6y)Cz0emAq}U`~?FAU3Q~=gnDfm8q}?W(*=--=NRcgD`I~XV$e88`hSdf-ce4 z#|meNdgp6BN*I6OKYohWQyPyKhS>*LJ6H%>R`r2-2hK@Rgz z2o*HUe%L38D2Z~>jpu#HfYeTVCv^6H1{@(Z)1M}*GIB5*)7y_sZ**Il`lh%GRYUis z%a99pU5{?xC+sXfei2xgdCMC=N%3lmPoo%(v)#zj|(;;z&^_5R`HbRkP_PufZDXZnP7M zqP8lkgoJw69&*|dWU2A<(sjGIyL1pOGACB^XLF@5b$S7GNIQGfen$oVHvRTRgt~g9n|VG68=JlQnK_QypQ16m z{mwtoh~J`gB{~^DKNedtbgMI+cJ|)gIbh$P;n6WXu7B`*Mf$MDe#vRSTWxTS{u%Cs z$b9Kgpv9ld_sN(SsuB6)aKZ4a)?s!HH~xpu#VAoJm3P>-hW@}c?QLp$?70)=BxAT0o<;;HaS*c<{I;b5opHJjw?IX8bn zXCSD7TQ$(U&`M+g9_yZ^4J0N(y#FNJSG83veo}E#Elmj0?(BcBxF+$vb5FUSAm)mM zCX~QjE)_VsrhRf$bVxo7^9Qp(zV;-=Ad3q5btQWrS*U^miV+#2h6?&5JPHXf{cO=}uGD{hdE7mm5VK~9RM4)}BQ*tfb)^&)o+};zgsW-I zgv9Z}Zw@LkI{nbH8SHd?%6Ljny|9_!>sWfh!p3j7<5@R9Gs3{w;nZ6VHZeND2y6X# z3Hd{(rirwP?6x~x-W~0%_b^1bbF2CN%Kq2SAMNkm|I7Uc_w|1dzq$S3{^oz5@893N z|I`XpzRA;*hcEg29OKg(G6EBOAIr~&=1Va+$RI(|%J%BfhxI+X$J!(Ot);+glY(kE zSl6+$vTn!I%6jyESX;gI#jU$H@7(%gJ$W?{zQ{=Wghh|0!BbYkrY(L1gB0FqtDS9{ zIdU}b)XVMl$(2ore->%7t6zUbg6MwS#`(pzvG**SN}q_kXufZLXr48HY2I%>Xg+K{ z!e1IP8+|fF|D03C=7GVzkd0EorApor>~K76j_TlEvbiK6>`H4IcdCXGu?#XhL*#-1 znOb-14mpPLa_c_3-?9ZS5al5>t6a+(7dmzF^CI3AoX;um4a~DkyTgA!Er{MmKz94{ z%*1Fp7GGF;nO%N>R%0wIO_J#t-6XCK96q$AUT|aKFXf|2fdDBi-Jry8La}UwE z2j8j~Pu`NAomg=O#iu7J24>iUXM$%Qdaway}CDi2-Py!+9) z`WHAk<=60Y?nCE8q>PjLnOzpn0-xU4I5*}Xs`(;qO5&jl4>cSs8P#94y zwHvFLOMWK0a7BMevCSLnA3CK@imemee$OP0W~W3OcLz|ET?k||Fo?@jnZMn1=N6kz zuwck&e>y>Cf5qfW-#}SD`31YG@(m@Q_zJj{KN8M=;u}b)v?Ae56x}miyYwq14^1D8 zk5XMb?7ubyEZD?<$(2Tj)#Zu;mx;(gxDXE)a%K5JVsU@ORagJM?GV>I@~`mRHV4r^ zITRGMAzuGDS%TZdTvN*Rt{YPZqA8gg%{@|VK3UaS2Zl2$P9n_MW$A>8z1laSy~J^# z;?hUPI~0db#u(UFCTvO`EIR$Gl2YAYd{8EnW&ou@Mc%7`1yms)&=roGygDN&n26Bx z?{*CNL^6L^rl}-|7xM_yDEKjnM1@_`0@ecPXhjR4D~G}rrf+^M#ttN>3TwnpSnIKG zcNv^bH;9vCse5r5Hd@Lmrygh`KXx$%2(iAS8^tP~v=cLL&q{q7yE zaJ?xlU}V+)sa=yf{5p`iHbG+EQfggc_~2+53!T+!(KS!1l8_U zLRXJOIb%J;s{l`^rmcJhXcP-Vv#Xq4(bxM(Pfk2%f@+#7*R}!8=Sr!D)xvH*T;!cE}te# zAYFa~hkygZ<((QgPjCusJw$_gOZbcLk9N*}_`V#T$cg;CsVih@(2Vw$_Kt__SenuU zXgL)WK;fgijrV28)B3zf^G|ea_a#J{FUx)s}rX(T=m{S8bP5DOiY0q>0JTZMG#f0pZ1^}0Fn=t62IBoN*RCFh*T`! zldWF42+K(XwCq8PhF3(P-$mTD`&Aq#NZa4q-Nvq0vyw}(1j`j`2Gnyn-b9?^T%uNW z4L1g{jd)*IobK0?(e7b43+$ck_gRbf@gtClpyXycWBdcgKS<+WA2721)*#J*Z8c!O z_cQd&`qU)XSp{3dDY+ss?t*`n5xP}+XWxsJD+?dH#1R1g5S#roqixL;a$TV#>7DcF zksliI7>Ld0%E_5nWGKX926xUX=624tH;f&5-6qI0D-5ulDZ~wjXSOBT22&-0QYcm_ z>kLV>APRYOI@zn^Pv}=O^y@ene|V0yVPn0udac7@4te!R{5y)oZ~1@26)Qb}=3km; z8h2&D+C~fbXtSPtxPR?KR6*1NF0$;N2G#R3&7 zp+s|ZKKNo88I4pYkbzQ}(AQuYiA3qG79-GYH0=1G&S+Kh*3y{6b2bCUzD0N<_$t{^ zaL3Tf)xdgi(J+2z$DDt9gs)Lfo(f6`T$K;SfGm zam0BxgqcHwT+IiX4pf`!CV{3T$eiU6#BB++|CO1qeZt4hHK{i)E;$PsMA9K!IYxCF z9F7+dW-KVeB!|L!BnsFnb1wsY`-BVbzeSV|%OaLL{^Bgjp5K3p^kTHY?SRC;jr68@ zjW>Z=3Oqk)W@1hdtPo^EKp4tV#!{UUjQmi(Vz5$~k>hK`&&3PmE$H7z+;EivzOgnd8`yX8Y=#k^~0|Y!r8cf2+g)#Iwnx@;Wkmn$713>ejMxWl0{di5MBq+ z5G_B>SB(@$ou2zSmFbV6Stk?AjL>xR_&^E|njK6Z(Hc)@R8qUH3#z z4|=5J{aAJcp{)4v@nfoSfHPTmA0M-~Cwusyh1cmhy(h%)@MO5)Z6%y}r-Z`04Tz3o z+yEo?z{u=wy(1ZqMQy6TYwA~~OC~~2R6di4G6A$zUs4v9i1vOKCO-CL{DYGDK4iKG z6q3Dvbb^1geHaCUnU|a!5LH_7Kj(vUZ^b=IivPDMMMlaFpF6l z7sOWj7rRi~9ZMX9O+e9lf}z|lVxB1cS|B=0Bi)ze0SSlrM!ZvkMDcwb9Zoyx?S!tP zL1nevPFckO3Q6oqM8DpXwynPvS=-hc3_B!H>;PHdCWj*s3{MRBijCSbM`(*I3NTHn z{;Gd*@HJm!HD`h zmO=~HCwvja)ksz9*Mxhk(1X$-NC0mm-tFvf(Sf!s>hiEngnk6W*x+TN5pCuYQqy&q zCR>1D8I)avcsTD*9BfgY#SW#sW!!_s;i7+?qmWz3w4tdakA^bOBA!-OCyb%G5{?Yl zbz4R(s$<4)`rb^@hQ;49)~va+?j|gwiT#CdV0=3)#fof7`l6K4>VtP7!Ne~19H1}f zo+8$U?v&yyvQ+Mfq0^%D-mXSjePgdmH6j<>yjK1)tx@ptAxLB4gwUF&>a|F-a9Oc< zQ=?4c!pzdXB4!hJ!@Wj(4@%2L-ts5N!Ues_&_;KF8g6*<{7AV6C+#$A$a=^K2FXzt zj+rAg#7dvD=M@+ZSohb* zK6VN4rl80)NQK6E&Va;l_;3W&a0!OIrSWI8mk>k!;+!i6Pc(^9`QFGRf7 zkJxFc31*$7(D2E4U)-EOEWPg@6S*?~RsZZ@G_i~@!@+`2Y@znqVt4Vg+Gl?aV~;E# zA0G~0j$?;5%B-B@da6hVM4UX6LlC%UF(W50B=gND$~2oes+e6y_>*~{^n^wUkQv0B z%L~%+xF&*4*t0#t$+J8@ax?DV$_nC;^PkLNokZjL0KRghleS5dS8yXWECt zSrdoAlRGf;Ta0^Lhw0)#=F5L45!4~Og7Yhu&`hJ5<8goX?();DFK^nZSoK_#xmAi& zc8Ioh0U8)zONaiTl`MMQ^1^LWupzuR+dhjVElIvw>lzGGC8H78|5+UWq&tvPl~cuJM77=6V<~7}xg5pU0CdNGE@6v<2-(;HyxO zb`*6E!A4sQ=z+w4L#R6Q9%g81hhpAT{?^)R>#LCGU@)um90U?4d}^H;-gK{BGL=ix zCCU%zX9s^Z1gHp8IReG+1=U~(Y!A~d5mw4Va z0`AWvf40LtOX$eqWsaziksIKHDk}%fjWOu4AeE&bZpbr!CYOIzNu6}ADis&#uH5fQ z)eRlCI-Bx$dui%J^ls&-=z9b|Rw&+Ncv5^(DBofolyFmD83 zQ7txN`ctd>hznE{JJt7^TemPNxyk?5Zo`BMx=qxUR?}tz%^)9ikN+x)EAio+ zhG%{Q6(yj^Rl0xttxbP(^`_-ZB|`xpeuBj80V5vJ{Vn(dxZy2E4CQs1_31Y$J^@A% zV2-a@AFZ^1Yyke7LL6r!0P#IsdTDX3*3{~H7y-B-Z42)H1tNx^02S1GQ<{U;IUqbHk=o#J6yMD0=W1o$^~}&jMg!vZ$|f0s`WLIt z&YbDi)5qDYPaFwu{9+p1Po?lYfocVdVjU2vx%C~f$hql`MU)TGf2AD3E|HKI=)j33 zjZy^Xsu+K&u8~^=ak zD#ZuoqAKbfH5oy@lKRTuLH5J8T{r&U#TL~sl-S`)qq9vsb9g$js#D`aVll`Fs%_A? z?sWHs#U<;9KxOze8WH%B^|gneVoC7fPV@3n%7A~=T4QC+b|D*1fV$yc%6O5Ri)3}v z8hrp^V(>;DLpaBBbO&rz!r7ZIYdkcW=e)G2bKaO)W>nj$NyVj(!U^uT>>>YGWIm>P zwK#L5J|bv54pX;_jQ3fD67Fk=ZYDoTCODBS2(I7dl(wx27n@5W|of$yqFi))psnV?BR^ zYqzt3JC(vwdrLzi^IJHiDE_t+voYMy}gDi znA?O|*i~K$Wk|KQv3i@N$X+cNHdZRKN1JwfgENGdsk~L}2ajTwhp?(t(l(cz->6F% zcjxWgJFBAY#EaM`6tlU+)kP~ch|7PpO4TAsIhPSwv_x~jAwLjJW)$tszDxN7Fz`tn z0^EXGr7_n5DJ07w6VPI>Bew%T;2vU(0wTjl+X#JxW|wq@!w*Nu)xvKH*}*MYfJH_q z=MW2#avEsCk1XYpuGFoL@Y(UEu+Q^}4%igboSvw0D;Yb4C7o6RA9t#gD7b(06S;$n zTby%JBIa22p{{b4ZW6w(l#C$V5!0MaaAC}!&p8pV|No{9!#5Owz9Z!P;fbbYoS=E4 z4a^u)DIfk{_TK%ujU3DO{QdqFvewrlwn&-phh$2@NAgbJt?HgA*X-T6vZsQiD2b9R zsYSV~dTjsi`}rO`5=m0Fs=I%>XJfZRfmAYqL;?o~=MCUN$H=iQ!hs#3Z6!pAaY~%Y z&m#Fx@H7&rQ{kylRe>~TgxT;*J7*D`;(ZFjoy!w>h{StTau0hvbRAXFesLuI!EX6t zi`MC+(YQ&xE$dHO5El1WIV$r@Ks5=UvjbHeX5+Td2#or68tH4@5Ws(-DEH^?n<|Gu zVn8za^4FSftd64P#?>RMO`N~THAZJ&M#G2uDR+JUlY5Ap#S!C|m;MkWygpItD;j!; zpeCa81Lg2eY)a@5`C|FambgLuKRxt3gw5cBwo(WL^DJWRDYhHy0%N~k$&?k8zAH3j zEw|7T(X?P_51kf<&ai)|JE6T&!(RdPFc0q?6&}O;ilsb63vEAgJJD?KY~g*s@yyol zDD3K~-X{I=t`=Im8wNfPK41;|)O#udL@?p5KccIt$Q>~OmCePtk*^px)Ed{_0JRXN zG-r~!gIl!apWk{Y7P81W&iUB>?u@msNEM3WGBY&+D;$?33hICEJa#y2jUd?y+XO0( zps$Z|+99WZ>$9^HPX6_uiH-KrZ!`5wk?o;T?ylGcNcEb3JK3+bcbOLtd-G zN9CBrr?|^$))0U78{)21mH@VO(Gxcitkyjuf7!KRP%K|TddEp^}=b&SA~ zaL$F-Km(aU16u2Xo1jO_N(Fhs?->^n_H_Av4ch~45qJQQeH-UB(VBLOplBKOT=aLP z77-i}pPsy^9$wn%-mKB^&G9{SZA9$HWV=#`D^Ud0q8WdJBBNMPf|OP(6N&wAUqSku zXwfJ)s}2l(M=@~t!b8&z1XUw}Xg>7T5r^TDx~><0(Mj)Y(@LlpTbghv%hN-_ST2A< z@Zcg~2(8SBoqV7;eYOqhUZqAQM}(2MZ>iY|gL5%1Hzq>z8;>(KGk z{`nS3*yMkUZ*bdh2){zSbdkGgXtc*6n^bJ`C(%x~@eaS;O(B*);M1r7W*{)h#_t^z zL<`*Gmd9cXmopDJXT&w-bI~*EU6b(+cTRtIU8GEG*FI4+=_6O){_gvo%5g01 zTbh^6zf8$p4?wRz7b!_-zz$r;+Q>B1cJUT37hkkT*2KK&a7&W{h@pXGa;S`HGJ9y^&IJV6=;fY zp)~>Piif&&n^PF*G>iPW`axt~6gH(u=Bo{WP{w8j^fx{T$edU5Rs);>ZM~X^xXiAt zGbdDqfVr)%jYTX|f8c|w*f%H)hocPnH*J5g;>mAeZU>3CPz9a=|2A7yZ$ReBW(Z7M z8xi1FXhM7#NmzI}e%_h%w?lLdOKeU$$wQrRLw_5+27mo` zB;ajUx(T`M_+M!H(=GKVy}gx&m6(%l zd`I;BWOkg^sNrRw;GuiU?p zR_^B#rm=^+55_`Pd#vTjKUiiJLuh9hYeZ21z1DwmYVVXw(L>FL$i%oo)um@*B6I8V zdaGt0K&E$WNNR!ef2GCen=OWzeYk&2g!3qr|u##wd`$oNRyOka^-W zfuwkJ4O8fb18BCqTj*-u-bnDnu+W^F>HTU^M9$cRKEPyLZ(sIv(}B1sB+`?#KVSeGCMKtha(2|llVEo;M)_PtYIfiTYq3Sei_r$(Q1e_= zotAAE4{*6DE=4obXk2dQUV4y~`uS$pWE~BDfUs=Fz9W-sd{X?>+CqOC4&~6B?$agL ze=Hw4_ySJ2po@SIpe}fcMJ6~V@O2v2nnT#_kSEuMe~MkEaJ(d0-^EAN#X{;n3+p&g!7go7=)|g-|?iAqM`tOlP1cV2ofDPe@tu z9~K9=GO>TI*!5y@KVE;VmJf@wkukDA-i|QZ$>V?%>n6xF(vL0t)z3?;o(hObUvz;1 zV4tG^#U5|(fnrUc)6n$*78cmXg+2P378Tf6zrj87ZzUt7`RN5mgEc?Bvf@V2_c$%` zYuSl!79KhTXZtkRXVZ1BB3jVyUGZ!27^VPZpWoPNA>unHLDAZfoGvS^K*dMPE&eE5PD)rki-E9|?000kS`W)Ihd zOqnQg8(GWpk#c8tC7+8zbFo2RpZ12~>y-vBl2jgi<PDWQx_(D>jZ|1ja3-79R4jtSC{P)d+Xx4wgX=9i-?BDN;6=*p?-k|MZTdP8^ z6f5~b=ji>)TI`)-HQ(t}zJ!cA^i$g-x;k{vyQ5duDuGhGEt-a()horR*n6ARWvLP4 z*_H8Dv8u`PX7TH*@^5Wc_1AP#m2K(d|GIlP`)kH9zE^CW9{&|%8D0yOLGbJY(g$+1 zFj9YxaFncTL^vku^X_~nj~w&jh*7aAf`*9iED9W9-&{km5EP$&&UD|xL{m%hMtCIH z;5ZIF3pK?!bTu6Y0NvLlEw`pFknQEnRqs`$y%LsAL$Pj3%$27MSUI@ zzFg)XW^BA0VL3gSItfHDwD0*--jXIMu*!eOcLfQGW9_x^+$wlH5G&m|_OzID{;)U9 zkQ!f9&8BprBOLKxuaAS($vRNa?ag}R%VHpn-ZKYL75)_?69J(>MEB*KoNOVdc_ycL z<0g+^&oj2t&^(*>w!XGLMGOk#P}Pu4X5Vi5Mf-ZWzHUSXukeD57^3cHfZE; zIAl+ZnB+h=*>x8ty!H~0o&iG@m*aoU1nGDf_`)0x@Nmcxo;p`icqvNk+lIYRo6W^% zjcOLlzX_`#~E@?!ABhk9Vuz zu_x0xTaEZRVQ%?Cr7sC7&pu4&IB?naIf4KkF<{<)KdHcL8u|1{4n~WjPoAs#*2JGR zfCgZuo%F!?Zn}B|a3eDkM#!x5!C*5f%!oiCoLas~gbaX2wT#4u;xbQo{$tT4Y%|E3 zxaos{`EIrU5@4Q*G(vj)+@pWbUksjkpCP(dbHvz9ma|1FOu(`+DFci`20+dAVmGx4 zpEreRoy|otaD#6a-j!y)!6LuAyS*?;WL@Upq=lke9^T1_1iVjsz-& zw}1+_M7G^sFK&NW9Nd5kzgH+L8=w`?_i?j;8NGa5VW^6!Be_LP6VZQzcyw=AJ9nGM zY>ps{x;znfcb*6z?(MCyw( zw`~;0Zw5i|D7=mV#>o&fZF?3UD-Z_cX$BC-UE6DK_CE~3S2`bxJkj%wY#q1rgvFE5 zqZLo$=eMP+?dU0|^V)y77BNP$)z@vY!OEi#gnN%PhLF*rK-$)m8XvQe(uEXp3_&+g3!l!YMNI?NcEvQ_Fv6h%h8hfh|(5u-%n0 zWM3mA0W@Ffb0`u!QJm%*+22BTkLxd2mv;}Q8pBQt}*6=oD#~Pd{Xv-|v$aktOTeO;r-6~l^Mm#iI7VDd}yU%G-%OUxFE+(2(-k21$7v z;Jsb`cffsyM3~NB+#n`V#5rs%urN$H*@20RQ2~s&w$)1JxQw6?)okFC>I%Gt%3Ty@ zJVJy9d5V8@cDFMHzFWu*{-d8SF&^!m9}|;h(&Wq6ZWw>gAU%4pAAd_=v<>-Y{i>Z2 zc;P^_iMXOon?0es`xl#(Jr2V^g0ydGRbte59#waeBIvN1OUk^Y+-;3)mNEg*j1Wp8|bBMeAV@S2XnEGsC0 zQGKz2h;$?W6=Vgo#lTD5fE64%C&72>N3)RWIFt-GKOMjn4BsFad zsV{#H8$k4Mb_?_JFZvO(9{WXmULu@Ypp#$Ihd7twkV8x6pY_aFtq9h_Vaxef0wQeM z^;vIrFt-CF6^mqp=RdVJ&9u5OiD&YDh+-k%khL?k3(XK{y)*_2Idgs_&n!eJG9aQb z96mV=ib@BQCT2NhBo_?G$bayLez@}fPWyk0vQ#j1+u&M^M(~Z`5My4UWTEHV2va#M zPY!+h8Ga%U-Fprx@nb#hXED2ep6Z z3hu=q?%T%hw0YExvWqy#83^pffHBx;kN-jdF12W1f;<{#a|nY39L7a+qu3pqhP+}b zI21LYzMffa)*EdM<|injyJ(&_⪚&n$`FD0W4b3>dX;GNIgfv9#=wr zVy*Q;x@7<2hM;?;pW}aq$0?0t5 zh@sh7;0IusoUWUG@+WwpFd~=t!p)B)&$X8W{iuQ+i$WDI@|LfH-N7E^!%W+(As7PV z9`=6rSpBO4*j0T}rvM(`=SMJZ&=B7uZEE5oIxh3gSrp|Nz4HCbEn&Z=9^!x9;V{p? z{oJMcqJjM@RdcNi3_q%12(5isTx7r8uh`GjvoM*yzvsXjP*P8G;An&Yq=I|_a}eFE zUZ8<&&ISq#RB5j=nK?bwNrC<+zth2wvOXT#q4O+rWDPQVNL=dWC1*e^^K*Na;gE(a zHvC@NZppR>j&|j=IzaGqNU48q(`gSlW+MHmJ#%z&EsI{#l!`=!47MaDML< z8*E%GekpzOH}n@!aX1i8a<)zZO1$FpsNM>5n7lJV5n$x@Pp_FD(M(p?p%iBXDA3$h zvbVc;a=5p>WBe$0&gyxx-@X9qZlw&c(ys$NSaJ+1+Aw`!A0> zHjr#8^uXB!hgW6GHDaxgfzF$)z~bp2+78{JJ+Y**q^kqAwiDiY{x^MinEu6vaaB6p zvZsTu@$={SBC^@daSeYctW~6Qm#m`0Jj=h$$qlxl{_A(|-ko_hJfOfy96E*>hY^Q$ zP;BqCTIs#tf9hO{-FNSH_xD(RD>Rd#oL!#SIv-CNK)C7G*qYUm5ZlJZ?Fz;u`yU44 zfLH{sT{-t0*s}PAEeD)kGLJEcorkdKK&C5RIX_*z?=Q=X{l0(vS@u|)qXlRHop|r% z)h|I8CQt4uCaZsu&C03qQhOR_Y(tTUmci9vW%3eR(_ClVL3?lYlm)Mr!P(qya&9)WdD94ZAPk*sdHQXyuI1G5717m(^ z$8K4{LYYKP%)5W%<{;6Mej3Nv-bYP5e}b3BPck{|U}IduDy-8_3anuhe+#~6bD8&% zgeG(`n3j&tj~7P^$lHt|gua}iwmB{am2?%6;pSW>u3fIo64TRhvudo*{^@8EBRp=p(|&Fu23rP%-pjd zx2wt8brLbpHKhe-TU{Y-<`aB|5-oZaj4GeVgJSZ&wKCoo|?2f z9Ph#FyLQ%s2W(j5ybZULrYNov5Zk5~aa$EC>ob2$w47^FNp)O^k0veNqj{kEyFE4h z`tidjdXnqa& z&7j#|5^rFUMf2;vmX*ybmC~V(U7ceQu#Gw#w%H4?JBrQS3#=1gLI^m6!u;efTu74H z)k?n$c1#F@8Drho%!z^QSn#s=xTey6cpSSEes`kJt z1UVoCdi72gI176THJj2tikm>JdvPm@S}{h_yx_5!-C|U ze-aIXMR@}SuKR!5L<6{S9GCu|Kwq{Vz1I0Q_kztvhi*%EuU_39d{}TCv*HG8pFe-Q zQ2>6oC(js>dnA@PhWDl`D{$(z^yw?3saTpE`HBO2>j(5m!|5^MmeI4rz^|nuJ1XRS zOyWg?!_EFaUawE8>gKrqyHLpMp#>p!d5igB$*E*FEQ8$ndHHxLZ3Ve)#~7B=s6N@8 zeJeHPa8{P7)TsXTn^5ynX>0#HBTs**+I9JQzmIx_U?X0?i#_Jy{O0awW?eq$Mlgy_ zv(4&*93W9tG>IY7@h&r1a#XL(rQ$9{+nOOn&`{k zI`h)L%^61`_=iY$PG?TWcc)^3TlG zYeQyeoU7Vw(xa24(5;UaZ=!!(eN|K)LAxdH2Y0t%39i8%4(-WFdi!tj64y`WUD0~3X@jvVb4y1o^RY|%x zOGpng8!}9tG{e_ua3wJTIjFNJ7+r)BAy_-Ya{qckR8#|5>%s=d&|9IUMe*v5AzN@w zaI6DXncuirH{LP~(NY~zesO&|8-G_=EzsttYIQxDPVDaCFw!txAC)Ku_WbjY=fNrl z6I$&V!~}neI@WlQS)IKYuQIB-jBBh;$$Wo*y27Z$yUnDNbmIZ$3jW7R26<#`+FiMNQDN`Xh^xkJeXo!4oaoue|MR4V6F_wC{uHbw<6677C!YV*Bo&p&u=nrkl$#1*=1 zi)4(Nyu6jm`giZdZ{^?oRh_bL2Gk+*4I|ue@FgsMy=P*-Taav8aLDZA7u zk{tY!SX~xuBmxgkK={O&H3-KR;EG8-;7$S4--8Rv9`{5(!RS?~!_gRgd7eL2&fE+sy!I zkvsoit3X@I28!df#4?K7(}}Tn;}uXfc-dyh82_25I+O$(q@%*@35r$)na=1_*=`2X z>zLDWHhLn&A}e1CTsrXRb#?XZ4?p4=V(=jBg?<(ryb_vf{|b@Haj1qivNRD4rKt7Z z5BG7;>?6x}htVlsdibry=vqQ7S_Gcg_Mj>_3ySKSpRc&5qjVW`oM*+_J^-^To6>)? zRjIsvx~rGJy#HgCT6u}ddB1dQK%z!A*^nEWHi9VQ0n7GVh@&^?V$$t!7wJ{n^t@o z8}i@gwzZG`{xk-<a(7VwD*t3GmWtmn4%yn>yGSzIuy_9We0g!Q>A1lT z2}DUWt}u*^XU){^teaIUyRr$p2%4T^t|(S@5frHEA8h5LvP%?;_qVnK=e4M(S=q*B z!gx~%r+nchp0HlzfMEnk&`bQVSuIt@(8RKrWC$Fx(N8~DG>j3?zaOHt%2o7fLw#SB z`|i2eCN#g1xvhAf(lezYH40gUAg0Si0}jC<(`$$SN+GnawE;S+V#SL}x}8X(IaDu; zPaVpXTR2T!7&^{DwXiuTx z{C6*{$cwQ1i29GmARLqL1)#s=3`|WF)b`l+dmDza-3r2@s4iJuaur*dj6cYtkkIdgEVdXnV-S|smL^{ z`&IpW#3o<);BaUrfXaWZ9y7ILIixI`?lVIlBd=FKzAjNXNna19m=MS6ot8~SHe|7O zLoUK$-t5bhwRPgQNf7*Q`};H9xkl9Fiav;R#nCh)(&(aV%vtS&>eCHgi4L!qP&e?5_w(0>iWl5R)@|@ZGj_ByJ}yQ{v|W z$;?{_phwWJgxe<3OMpbHMO$=!J1^EDhU%K3{PVGP=6Bnwak`kFBJFPqa^prVI>+k% zRho>~USsK6zRQICZvSSt<>CrNd{)WS`U6L=!-YvS0#HJIrEJMHHkp3j^tN*C1PIg6 z70#f(W2|RU1InDnSBubiz*+)%+984jm;(HcV`WLCMTF(bv`I6V`aHH{qzSbLdGHuW z(M#g2dgrdf>MO@l#+-zKtX+Q}v|Xf}oH&yQ(f$l=;efm99KY3wNyw6Axx5G1Ui8*C0t z->oaJhSY>R`e#ba406&44g`ma$Y(U9^7bIHz)eJ=(~+b)!1IW@9Ol^Kg|8J<>-wp z2@|}$fuY&HhljMd*!wbN5mCMwe9{mhbAR_GyQC|G>evWzcVY5GrYcmS5{Mqb)+mfK zQY807C&IQw5;?=CnQhYs@IicY5iI1-mH0+QUl*ly0&KT^o=>1fZ!{EX3kDi}K8mE2 zgdq%V4~hP3=|_py-i1T(6P1Sn-cVwK<#%Z(P%Krj0ro|pFx6r(T$ibbBf!Cd`TqG~ z+%^HJ8J6pq6oUM(bR?Wana4Hs<`l{*u-4Xk|4aHhTN z&LrQ~qd9F{`r`9hwM95+&1oI1sv54XVaU&_@rhrrQgmZqUiIFw4Mb5 zRLEA!Oe7IbRx29DoD|Kd(UB!tR`$0~Ega+6bShhE*m+(T@t4(Wmw>v3Y<-bK5tf#w zYOE9jm!A_g;#LvR>*>wr>WVy(q5Sdx=Q(Cu(90 zm88U<%dc$aj5b~a&x38h|8Vh%?k0|yVAg|b!}XQonePs;{wHH@`ueP^*Avhy1! zX7aW(I)t0>9Ayp`b=?2@zT-7#YrE&0lu#6B`(^AX7D-v3$6BRVjT&%Ri2o!H%U_S` zPZl2@!Z&F)=5U^8xEl`c9@;3GC9&24nY`xNm3DrCOD$9?U3>=u7fM)hRfzwwD++he zryuw>FEP|qK8viT=pYy)(J;8UOv9gtoQi295csT(BvPgjmrs0^aSY3oL52`%)X)zS zuHw&-|MLT5Z3vzij~`H8Sf%$J3zgUplPFaV?&pd$@HT}ik^Pak!0;6&k41*RyN2Q8 zC7wL%@De8GiiQtQinc|x94Gc9K5(|0VgNOzV=!i%CQ0~LB&?SVgD(BKh;JF<&(TtE zq(5Y!_t=?Fgi^UTBcG^*gKEhPm!suLTz?+yeEQw-%22M%zz%@=wBT+ts6Cx0vz2=?5{VdF)( zA=T9w^rHG$n352;hIs|vl6tXQ)!P6)HUi+i#VT>KT$5!7hC(-9rq!Y}2r)1nh=`NGtc=+LbjLbJT3cb2xKdD-0Zd zc@skl7qwHG+G%7wEo!G&9B0Atu|sL4!CsSYESS)4xq_**Pib96ls58`zHow|yh)h< z2fC7zF=a~j)yKHRC&haJ8?M!#%4#L313VJx3`~;Z-|8>PO z!Vd+Ew_FK1+rQ!p2w_%sOJ(>bkwnSYk;c#|g~!~AI>F<+MJLQBk;M=>iQt@poylNP zi@L${R)>)=qE3iwo+nSlg5yoF$c#)>J}X7-`%0_K*HH-Ulqr(N?_uZJ#zK*`l)a4c zBqtH{mGcm>XwF5)Y~d;y{y%68<&dPM3gl(n3Q-;7#Jyj`BbK#|zlxYZ70tJck6-Oz z?B;lD)kOD8RGLmyLlC7Y%ln&%C7Mop$opv+)*?#~flx=Aj4mfe9m5WK3CN4^{$H<$ zhCm{f%UTiXD>QADWP?nD5aL%vUxbW%?|yN(HQT?d$l;EAj}pHJM}N`LTOkn;;^)LB z^)T`_K>Ou}2E@aoVMmCIFvP83-WPU}Ja~l%=FoV3K`|l;{uI9Uy&fv3GrF)vS7lYU zs+al1cMna`12X-j=P`0}Y1%E_gb(B6GO}r^zQ}i$G0((pVfNCZwEp2m znK4kR1Tk8wd>*o-xV^-fe!1F_-Yq(Yf`xdfl@=E@kO`X|O=(%jwOL5QZb@cqX=%9ExqBM=B3>%t2ky6ty~WLLfTU_<$_5t8AeNvs{ie zv9}1Eoj{wgO84f$P$nmuI8*l4H&3wlx}vi17dVgcJ@Q*vP^x$_dMYvmTS1855o#gL zz0^g-mN_o*|8xcj;GqSiUn2dIdw}t@C(e8Giv(9$^NYT%xc=1MNVtGzV0yHwgusE& zc$mgu{_ROesJQ(fFp;K9P-PT!E0FqsAw+WCCP`IJ(5*=7e_(Ep8keUaq%2lxNh0mU zB=B&o3sdCiKOh~7JUIJqj#`$MBp}&>7?fSBzQv~;&BY}l?-WQ9j}0hRpY{I;R1cyr zP!j!StUTZw<5yHlN~#3fPHBqimJ7)ClZKtgQ@fSl%4`bs<6&fY8(sE}L-@F6=tq># zSTw#)+Wxc0-1{(3RqIVmjL~V%@6FptwHKn3mgE`Qbnm%zF)@@g3ZV%5?5&7deiB+ z;s6f_1}X=3A3Ax@BUuoZcK(3;PvpGaqltQve~(N=`Tq31mO*>^3*}# zEpz0E=_IJ!R26r-J5pn8qp?-sp>lr=^kJ?@9^WMNFq-247PUru=7JT;g_8F6I?&jG zNiJLxRf@J7u$&W5bD);zrUTDS1>vsJt23(E!W1L@4?v}{LaXbNu&H3x%!9jEq&tiK z>5JIL%25S*B^cfGa5aeb5Ihp0$k`b@ji`d0$KWkbs9aUMi|U4F>Z*JLF`s<09Gye3 zP&^9meHmeUkhEyyB!Xu~8Ikf-6vKatKzuQHtI&)`oiig3v=t`(67P4l%+R}7f`LO< zB%oFf=^ZDh=?PMSuG6m|%PaH5G6V+mBzRGY_b&vFhe?YD+QOAF{5MEq(IsHDXEcgs znBZH)NQ)Bp9MOYUtrO4G1J#M=-p>DYFu4if-kWHlN81Le$4kEz@wtJ_w;Kt_DViiE zot8PO!1H|NiiueQv|pfpYr@UeNQnJo$lR8$;eS$0r!;>J<0WTcAPgP6QE}hIH&%$W zs4K>eH0{6t5OMVfyZE>trmh$xIlTRH-cU6duFwaJcq^3Ik^-77%QSdyjGrXo+8C_# zZ!_2~!0csU&7I^1Sj1RKuJ7-&Pp|K{af5WEy!Zlr9puui<_f zH0G92h=wtDQSsZO{fCF++DI>vQBnW0Ofm!qm|aidN#CNT5V0+7?TiLb;{})E%FpBJ z{T#-ogXc}*K@eO{v(eEHPXT^oV_uEk*d1y;`hA*YrfJyS`oqGd|oVz3Y`1? z0cEDZkS;g@+SmT^;Eja;>%&xbU@b1{!5bY)e^K)%ruusf2Ox?6M#KGmXo94PV)TH# z=nS`(BJMrih0SebZ*-YccNb2HItm)(3E;dhb1eK11NUv2Gs&>NONdjoKrj=R2D{_d zfw&gJc{cLt#|5DnwgQl+|7KtF1G@%jUlSx+iMC4FC{tJ|un`k`)2r&gsdtX6pMg2< zwptd>8uz}9ufQNX6v=2-q!T|ysy8^abBel3!YD-esa972yw$g16uu)H zvAYK!UM1TL7m1P}-qTyS7Nmo>6Ea~)D3QE%(y^Fzu=sw-o16#^ zOJo=D$7WsW;_BRMa=yMDGb>WG2NE^e>V`$X!qi(2KWtj!r&^PLU7`r8J+vQLGN+gI z?z)+m+C5T+foA7HY7kXIix6Hbx(ah$e$oNOl3o7}j9(9*4#rb4M|;a-ELwYjSc=o! zzn8$n2u{R{qW><6+bj0!$J%|dZb!DvxTS4qnLzC;aKM7);L^Rsmecqz_urG_`S&ix z8UJk*g9}prX2|6&zsHkLgkwivlpdGo>5FoXq1BExkwGh3OJ~A7gO=4~&-+q`t8L)L zT=>uG)r?s|@a_wN!)Icy6zIQkyT`cO@eH|?_>V_(jfSYwN!j=Jq6@D#B9h3~VbhW) z3}!NoYupL$g<+GWVUx(q384znU&_MjW+j!extwVJR6!Oo#?#hBEx2j<8nL_hdsU`o zKYuM$|1(Z1K_Eg*XO_PNeGZ#bP@@92YkYCW(vdXw00G94&JKNGDQ zH^kyZ_lFHe%yK4Cr(p-ot|^LCAhi)HpR8xdfSkv%q|dR(jdQmm_{@!seBjA|MJIHbu|3onpq7DJRSn z#c`G%DfdZcO*AU>sbgJc(v1aXIp*?I5=eL2dwRfXne;jtxH={rZ_!+xgifTU*hwX4 z>}KlvjVqA^-}6(+Fn9s!Q6`kYGIpgSDQd6)4F6ZrygNz^k0q1tj*(8#OqzN&7oG5D z@kBBu%)QAaYJ+?pbC_NVEYt3V#qf3<9;ELH$hnd4TaW2lm)w_J+$%go8F4s+9kV&; zdYEwJeq!s(%;3C+yhL^7#Wds$@^+@yXja%&ur0=dgF=x^~zj%=ieCSD3WEQJ&a1A9ots{vV#Si}~ zZ|cYYIr-GTNPe-?{a!$bfeF{IHo~fJ>jOh=(vRdpVI_K&6XsCz4GSi;HJOXVgaEY# zbm^yAE`*+7Fa~W&crXN^yKRP?`e{v*ls42%kp3$$Ad<`i70KvlxRowPT8+lARrw(y z?IH{>?PF7HyRDMVF9Tk70m=;h#yCajKz9I=l_c%hx~3W`0g2iFY7U zyMCqby4kE6hzWe!!tbYlbz>N?K-7Y0@LuJS@1y(Wt?|}LC?Ieg%4}Z~OS14t(tNt* za0&Z>Fxt!lc$v1n_E3v(GZYH!ccG|R2sIs;$6?4j1jCj%C`r+}MKs}Bcnn#0?V)x_ zC_-@>2&}}M&U$4X7+q9iK^>d^J%Wl0YsYK+Gq!!uu*2>`9KFTD=9TzRExHz`5Nt>UK`|oizX;skuwton z2Pc+mhT3cmq;cfd)W*UJSUo8bl8aDT*AQx%Ezn*+UV3ShwfeUlHLr>aP8K9tM|wj* zX{}6cX${zwNkewSlw+JLfQp5Y(zxJ^x5MzqBj|nZc|i0tm_l8_MwS_(=0^|?ii2i` z;$oA4aDn>Mr=1Dgwe(7-e2xRkR4{y;7{6f-_IP`k7wLc#4HSvPrQ@|7>Js!YA;+es+0Dz{EZK zMCM1{H%1qi?4aXgi7yPq#~A&i9=F*C1Ld!E*Y8a)F?F3}9-_Sq&J-S_=GWfnMwwju zsXIv8YejujB{>`z*|H62M%0NXdg0^pVQSGNmVr#Es6|j&F%eUO7#Ls+1G6ObjrNro zmhgt7)IcU2vK+koq7yV7^niYBe+DI+uA{{W4NMUth)xEgQ+((= z5*vy{Lpzcg9*w7#BnsJ9Qcuc+mr3xP%~*dvjrMgo`X3^4R}sI`y{WRZ4}5eAA=U7S zI;4_l85PB8P%F%MsGI z@I*0NwPzGS6d|n}*g#2W$~SjMgx@de$72Q2YJ^UWf$R|(X^=iZDPGSZ{0AJ{4|%bU z1hwH4SpOL64=F79fmATXdAY{vI?L&}6I++ypq;$eJH`)Mr03?LKgtP+HN^Bzx~LFv z5D^S;zE;#G2aO@P!R1V4G@A+>W8t#wM-gy@cE#sKXwNZ~U^sAnxuVDck0C#=R1$HH>yf_3%9W z>cA;loGn!IBOJNKLeUxO5b_TuLB-eDaX#JS!A$hsfLe$Xl19=L1H^-6oV(7nlI?pA zib_03%X}j4HE9b79sz&PIjZQDl#cKPM%!$dF%$~K6Vnh9QrpBs@sblH-_;7xMR~^=uD#4%vK6G=>i(-C(yQbvJx4{*--wMWC=czh z{8hqk_pO@#kBrKC#u;QjSdjvEP;Yg=w9%@x3a z_X`uKxqyVRNg54T!4cU&_$00=gmC6pMig`-_U2Guc_q>j$;c63&@?l!7aWDRD%IbT zn1d6?CUF|@>!PgCYfxliV(Iib;rrtsOnNb*Nge1A_1Kxhzf!n^1PjFl6>2+!SwFgk zgcQayL(p}wk{g?6!l!NY;E#U=c>)Enl>GQ(Xp+_Mkz9xr@G+@zH=~HB85(P2mJpoc z|6(tuUFa_@c5Rj-79!~0>-}iQr=;!Hsu@gD^M`OmKs7Dl&yso)!pcbP;V4yv-Bhf;5$EzyMnbsjzUMGmyjk8uqUk5_kjuiVhPjV z@m^u|u<9Y`9mZ++dJYQG#DjhebQtJbiXVy`;-?tW9drxeKQh>8tOaXIvyrhm1%=nL z!Vo!N?{J`)elrzUSdnb&8304KpJJXFoXKrt&dA$4u z>I>ZL6!a?UB$x3YBw8>Jy@~)arxP}g&@Tb*9G>;R0&R^n`Wb6B4r?YZDYJ`SY732x z2PjoVNT{4xRBztBw6K!5&fgA@QX<-=G_U%$Ec202k)R4af{AqCZEP+`&o+{#4D#Pu znp(`yXxI4{E;MAC2t=r4YM5Cc=!-By?bDbi7@KjHG!2rfO!DZ?4Xc501TBs~H9z6L zjGdqFiaW+5A2xoaA>>$$hWU6#00u9^!-qC3RqqjRBg{b13VZ6YISpv(b$?bu@I5q2 z`pnocz7dnje`UVtW*#$3F~Rw%kWF~5Bwxhi<3({m(;1}YE7Bn;&m+daVb6k*s#7Nr zHHqT@v0^j{l2O!9t(FFy;mtT25f*Uoy-!bvN^(E~S)5?Yjxt9sP@iS7agvUF)0D^h! zqeJSj>R(_uV+pYc$UZi{1eJseJ4)+%aM)=jL@XmNmgW5lfTE1%Ha;oMqg`1X$|sWu zOX^1AI;Ti%?RpMC*2b1G7*`kV@G6C``{q!kJ#5s>lso?rP~M(yc> zQ^rf+}y(V3i|k)Fgw)q z@Conoef==l2{|7@MItE zn1W_-`$JL4OyixS#*`R_$GN?phdU-tWZVcrrHqe=^kY z1B8GM(h<`V9V%8NE$P?`&+)5Ix+?E*c~j0irNG#P>2s~ByC7MwgdZ>a8+VPs-$!| z^eP@DGH?DvAtMd!q&QgQJ_>j<|EwddB8ALgLY_!%@mgt0Drqu?v0IMg zdpl3OBbCI8YNYZzvF|o_XvSk`3b~HX(ME9fhvC&wb6XtF#xS)ghq}!BKoTKc30|o1 z+!ku#S9bFMuphml?HIfqQi6Q=->5+eC<29=ZyN0Hu{=Hm4C)Kh>VA<{b>d0b>i{BU z8tBesgmjz}4nvWz0?R}xO+30<6bmSQI)AwR3EZTt{@ocFs(}F26H(cim)AC1uqh8z!zE-As=LOG&t# zFqRIBhEa@bYH-3#2xFO!4N#uqP zg&1d)ne}-|TMOMNr@Y^Ik%D%UM%vY=ppa$76fZ3OPR3s8L=vs=l?to)tq7MRlHz!o z>4Z;MisLXNk=>rr$E7H_7unPmu$qTkqt9ktg4Wjs?UxjQQywGbP)Q8yj!?y~$M2wc zCITd5>~FN&Y0Kh?Am4O>iYBKJEI7M&V63v=Aw;cRe+eka(J7GNL)b{letx)K4<{vv zly8s9`nhD?p`Lmh*|>&8(DpNXkUE4(sxAyMMAsTcw__%jQ-j~n=v>dB=z}Ryex=Cq zuRhuD&_@ z3e7<3U`BW+STWSwzT`F`MSu&(`Rc-=n^e=1h~G~KF9iLu{YyIrI3w0XiIc;26YoVg zXW%86KHxGNRZ)Fj>YKD)xQ*l^gP#W+PYqArlR021hxI2`5+n5^;U$caTcE@lnI3fO zBIOxv5u!xDl=qz)@JLXzs?O+A@M5~p{n~W))3r-r&^M4yl||&sTrP4=6yx5&-qDHVnD8FKDVsR))fkfeohzSJOCRh=+Z7&x&*1 zcf$^QyhzR=6O5jjZ@guQkk_)S?y(J;0xmuWi7#?M>P(-3jCrY~JzCCb-xi{Q zrp9vrVXXerTJW2af`ijX_kA=X@3OL{zJ*@O$RU{*mZtK$N3zH2nxbs7fsQfthjRR0 zNqmQpg2VGGUEkgkRj2aL4@JlT=Ey_2*jZ76WIigQ7Vm>yc$_~&wS zr%Q>M@Z5a(eY>4`FAiClg_?cw)X-Lkfb4LEvb4>2bI_!9W^bAVTtyLw57%$m89vz@ zqPc=EKqub^VjS?3hfv44@w-Y}CgN~#y*?G~x*&0SMjM;`#gZQZN5DROmr5o5f`=n5d zJCaR5Xc|p^-&LbRUe=u+=G(IL@6YedfQ`AKi2coFN8eCPs|KfU%Z#4ks1XBIDV`0_ z<@379(Lb9k&i44{yScUxZf4#@0E%L zF!K%gZ@RTftq)1Vn!4OpV}@LBJYKynQ2{+d%YohJc*A-jSl^RB4mvtE&u^X{6?Kcm zl0<>TPE`461S+Qjgot$j*6Q}g@xF+No=U0KCyYEN1AWn%RhUP8WwAhVRG(jQrU5YO z5BKBC!+lr{`@R_@u#Gsp0tn9jJRh^=OZl73pWQSJgk?TvY5(JHSf62*{cV2c#{ewl zoVLs!%`G|+r#l`#l}klpVE?;Kwm6iKKG&UfB$wHWb*}%o7JJOAL9n_ajL$ck8wOt` zz-@5Fn&WTr&mraatjB=eMOf&aUV6m-agW(8St*V8fQ4M&&hdxsz6BT2pO`7j0ge$4X^)n2gn5jAZqaek#A9_>$>1%cM6BQxRJo~M0%d2y9%VNho*yK>6iN|g283e?ut@~r-3{+#5?7*YCqo*8g+*#dZG=^Ea7 zttoq?IKy>z4#hIzVqyU#qr4uai%s62{qF96!?b>3dJ^we0F7DYK=2Q-<7(K&o#1<7 zPQA?v;iKg|sYJz(1XwTEYyPzy{^e+C$~1n=x;r~R+1Ox6evSP!nY7(~?jC9u*fk=F ztc2vjbvPO~68reOki@D;`6Hl^)?1FGD-zMM&=I@)Jl`?DOzsD$v$DH49n2bi>KI8^ zcooQQLmcychuH?GRpBx{C^z|Iz083*X-ygcQ?|*bNPYo_kZ>*2c-k|pO(j2>*2Sj|D(ieQvN%*Xi z$|hFfKdmaGV&qBntYOqQPcHXS@5)-IywykM(w*t~$>o8%=C_;HhPb}z(me1lU>u8< zN}jm-vm>GLgnHl!?`rVj<^!ZHz_6UcW%BgXzq$TdTsC83OrXeh1YO2Ys&FfTo^@@` z=YBk2l_r847*s7BCDmV%oKT>i?1TGDQc(HbPYayCuK2Ag?gSqGBfRFH*o#kc4hQ3) zZ(4BWe`AsOdOwdpTC?|^#dTJKo-n9>& ziCQb*V`+6pFjVsE{Mijz*Q>fplckoaw` zSL4PK`F$)C?{ZDnk}LKJ6;;Za+(<%dH3GLboj}V&Jr%X;*so=n?X4}T`vG^>xxRT$AKR;n6cE%HVi8^;L`E_;I1D zjB=QgaPp8n82p3r^!s0gft&ZR_n+K}eXhyeQ#F5(+|;#9Jxg0Ls!)|wH3&MaaB`0f zvjH%<8>d)fMK8$w4B=p+=K)gem~W>BS5a}^Uvq#~zRS?Bj=$*U2hj}^{4Pr0LyUzR zUW*GepOyn&vk1eGG2?C@iIjx33uMD^AJVr~?hcYir_xrcnZWJ&j*jl%gvibcpLz zR{Kg8yeEHaSl<_j!E@&~Yg;7Av~NdkUKYAWz`({lz{U`k?w+on5MwD+J?CHLexf=( zJ*A`+t7ZG#hHI&3zc>V z*E(QQ38&87?C`#z^e<&}^%^|(d)O;YM4tB?oZj3WEj?9y$$QwU>03&5EgTGp)E1Rn z;cZsuG4Xq`uY~&qOfjM2V0)1RER4D5zpL&}ItGhE7k0^{zM!5DlGQ4oeb8C|+cHkX z5En7lS%Jj7?naX9P)bD@FKdF3?A?@Bai8#sGWkxRx)wLa8h ztblyEKRmqRe*R{VTJ>^GI689W5pb^@7yCP8;De8+C;Q)^eyx9mK)C)ZPKN zn)ul^<*ko6u(FiDe*58$sM_!8MD+nJpIL|bL%kw2IM5Y>q?RRNi*gFw@fedLzYC=M zlRE5(V#iMdz^pY$KA?AUQ)(yWwwx(?A~=pi!53W@ z8yD&e>Dr_wDYLM!DLb4}4MLfsDl|XDrNl*pgK2UyU|8-<&QalZc1QbN%g9<4-i_57 z7detgL^BRVc{Lvx8XJ1Ao{B>yDNGWUn~w~#!dpML#Cl|xi|@GY1JK_g}RKO_f$>ON4Kfg4h#NZaIQXKOu)j z{)U+C9}!;k?&VQOC4J@;;Vb3T?lzwv$J2~twz=MgFUOU<>rS)foTI`08x}aeURf}E zV_J7ulg2kcwq?FJ0`MrR9#^5YFzrE<-&@sG%S!5~);_W1YNNpjD;cxz1YxZHV7(H7 z;a!s=Mh;2!haJnt|0yP&!&7#VZOf5TdIb|x`BXs4TSEUnU3X;ntB&??G4~LwWuHat zN1>ggD62%(F?c=4r8-_=uH_MKiBDbV(psLomV*V3RFRs!0Kk~eZ=6N;scYi{4cMq+ z$p5l*`eNfvMRvX4`o!UWa(Q@uz4Nk?`!0!*$BN_EN80s_QjvJNDh0A)q6Xuo&Ia>h zhYiG9e6O6sHSh1(%*NF4<>BEvZ z{~geRZ7mH|*(=0k96rRLE*xcXIh2A4m)lZ({Wx!}^TXBFn!a!%(3C^=HW!ZbaP3$yeUC`$nd^*&08ocm!4vXAZHEoF+FL zc>+N~bTn=&6UTN%)!e@m(7O|Tx^J{NF~mztjemV-_3w752*nORCa%Jh8*%}8xGHy) z_6pH84#4$#XTKF~iLt$jN9pALuTRIus>Tt2@0|6QS3lszgw}vusU$ss5Ups$=k?{| zT~Dkk_JNjD2T#SnY%N&y&+n&obt<+lTNY>YrHI8T)rtM%8ZdMn4h8R)`*R$Tc$1Ab zd$NyzoSxGFqhm_JyyG8`7P%Ce)=u_&*Bsh(Rk0P}hXT=W3^t+xvTs(>C1W*fDFNwq zFz+D09%F;Az`GZi-Q^jrk)eDsJI!0(C~BY0L&0q=I0UX`>9~YosqP$5p!ZIb!Tkf; zS3oIW?hpZjj3Cw0G_CxLz}msydp6`!79Uj+kN1dh6%5KUbEh0M6gsXCnI6Wqx7s+G z#XUl~I}a~#Hty3`(oQS-lWiXM}U~E7_}PDenx+rG+-a96y)2CwxtSmXtR77 z{A_5e-itC^MW5UL3HjTI%I;~6-7xCLH&BFT(bw;I9kh6or6N8({aHz)!6?ab2-yC? zLR+C{Cstx5MzJC6S>-_s>3uaYwE-T3(gp9s;N@9HaEdQ$=zkXZrjA8AUw5kx5KJ0Gv`YXe14ofLC((r9O9Obi>?b4guDjxR2x zA9MrXV^i{vH+1wWA3bMu_iYu6lX>l#bb2+`xWcmrcPcie`ToIV|NX_wDVqu!ckhT` zCc@$p$$X9y;iSMj*9v~fK?HQPJ||Q1uk0@=P#@S#Ff^Yi`Fq+gk!$$DmyE@I||++U*gpUSH}@6%3Y-MY}KM0c+rRdPKr+&Ua(ZA4q0#dfOJ8 z4Bi~OV2sGw`f4d|CC{&hMkd#2Sv_U6k$$zdA&?9h|Ek5hjRS)E5jTLHmFu(|C#^6k zWR>@q(JRlC&Th;K{g1h!DF`m$9Ql}J#@|v~G~z;4Q?VK|z8FHk)jiM7LIc>);<@%N zHgroE`Kt`o{hhyx(WmZ56Wxo0@QZX(!aNe=VB075{$zj=!)CW1&uG*P`ZH%JGtI*XWyGeL_x z(6I@Ch>xHoB}J^n2Xm;Ory?n_3OsvSu9Yv{d|Bob!GR{72xkuQFP=plmO^|FgaQ<7 z5DP$vVllRx&!1;caaq?OuWpNB2)(d6Ix_ZCiXu*j-9VkSuR3}f;2r8int!nu3mi=2 zQJEs%r=%kJ;;tvO^YZP@SIDa8T4&FK;3nztc$#!$Lj*O+9kT5D5V1xrKeHeTL#@DP z>5+IXKH&ZNcFd?V*^DM6{P;=CFt|OzPuyT^m`VeGjwoW5gQSO^gG_%Vl}tF!t5;tk zcba_OF+;^#}Z}5077kWq>1$2sj7%BuM& z9e+AHKVBU9$fIe6(0};yqQq9hyvYypUOf$*8NM!H0D+66{r!s)e$+X^Lq2=|ERc}Jeh^@zzu_|R zH=r<#y??uZ2@l2&dyp<(ow1zg;^7W||4(sI%WvX{`1|@Ba(_FP7=k0kA8&85NJW>u zp<)a=gzPFfF~lIw-O5DGCjyD={n-6}s*89w`14vcq>1WKR`<=EP*07ij`ihX}c_Uv~_=<}y+utu={`VHfAVhA-IcjHRdR(unHs6;%Cg2~J z9~O5XA9??!>v)+WKFIk?p;t7SMU5#r!P1-AD^lCYU zR*!@!-Awt1a%eaf4H6#>P{ANEk3mb;_M}4J%mj}Tf+1RI)h5~Q0VtNbO}%zwJq%L* z_7`0duN-*z+06O+Yi@Q$(q(lM`v=He9b0hA$^`UcpR@qn6=Aq%A8!_KZ5>@4u;L^S zYXF~9Z-1!xrGxn&Lo8IRIvQ@Fz>=FRl*b0b$s$;9kezg2nM?3Pmh7LEto;Tq8JA_z zbTS?ViqRueFJoa|EXqP5BdIDtnH7MD;;PgG&;!`n&-RjR`>5gEqHq3DVp(d4n+G3n zSC`9k<}gN8HwfwQrzSXi9^xPKrX(S0N>Uigqmi8nKb8C_K9LX`+ILBNW%(g*;>9T>Fh1HSJd zHGdQvw7*MKxXFKy3+_*xZWAhhAF^C)9nPaFI;?jO6EGZ;6-+V7* zRD}zlQzNWvt0?BAVHJou!zjsEj}_+HKi?wpxaC~=0{CZ3J2w!AB)&6`_B5*TD6@NK>AH6p7o9Tc4XV?@(!PEUYWJj9VZjlk& z``-`#@1K4c{NaCOZ~N>*?7$7Tbaf`543p8;p&PDDxrQ+&SeoVOfs4)wX<8s=g$d+{ zZc>@rUp_ba$r|BakMZXhQf0+Dk!chwav=Vx`(^*)=<>L~JX#XnZ3OSi88z&Sr+>@$ zM{WnfCya2DiwzU9IwbD&s7SJ4f!1~N>q zSN*FeVwHC!UGXK1k9YR{a(;`v?)fXoX_bZ^P@T&;xjMuL8bkE2W5&^SrGmhCaP~0$ z`7Ofk%|bo;eyXK9*rcvbuN8{_mVW>bmhy|2Xb+GD^agE z7Wuku>MYKdk3adXS6-hJ*7lQ#!LugNv*t*^@|`mo*gV?lI|!;%Fsv8=H1h#KDzNHf zUUvB4eoC@-lGyAt_)MUZP7Jfgn52#g824mi>qve&JrPTW=l=e#;JYz8?ti{(m3o_t zft=UU9Dcf?um&EWIcJKt4t-`0f5JMnc%0B3!&6n_r;%IP@8ZD^UOQO&IIDtuZQnJ% z&y-0fod>10R)P$Bleo6{uEpO^w2iUA8zr6<-i|U6uSV&0dUmGP7e0(UM7Idtr$x@e zkyqpv8d<&Me*SExbMD+sq{{p+kbi7;afY?9kqAo@y?<) zb^_#frmLOhA~7@Fa|9uu599lC1c-V&@h&tHq8R)>wl>bpJso&~Ab9uj`r6{6w4dUDomGPW%gc=_)V?tig|sr@qCySA_%9oBu` ze}TDSilNzD1DC*d@eo`~hQaG^@s10D35_^n!99f>O#(#D+U!2^Wvy+w9-y_oLZlzp z_f3d4P^})!*H0R}1Gr?v6u3NqEe~TRLVGaJCzM6JuPmsYd8mC-`NMhn8e{C??(|#> zioWEksKc3JA%9S7Np#|uuRcEZt zJ&(%fMSm!M5r;<~D9PK%rZr{urLhlwSUj*sEft8u)Y2*|*D-CfHh&W&x+ComWAA#= z!$SQ+tcPXjHGzP^^41f-&ml+xWseb>h|RV>I{&`YGN%1gtH)8dP>Nk4b`N(>ci$Hj zYHQ-AWQQ0rb*o)>cXkv3me*qYN&39^yNbkc+kYbwDHb%S<=J-kOKx<=JBZCnaEU!$ z1;Qf$nYQF*QEMU=D@|fNDq&8!p{>l;ohl)pNgMno;gO#hQzJxHRYH*c=acGo{Ck9v zrPIdKCv(nN>pe1tuf=Eab5VhT13cV4-r0UGNMI8NT5|K&ZS!pO&{kHDzn!)s^@6Q6 zwSPsORZrCF4`PAF3_Uq_F;=MpACzg8ls{sNUS4>&zi^Y|UeQ{=-*8Ha-G^C{sv9f5 z3HiW#@Fpx!wiVol3$Q#EPD2zFrF@}TZ#?+L-sLd?6jp?_)s|;8GtOj@)5{YChbr-x z%ah7^rG9vRxIC^p2CJQLW+&%|Jg)`LV}JLq3(V1cc15e}i^Lrt0u}PkN_mhd0l_?~ z+MYY}euWUC!W=IYr#HsP!py85vrMgDIn#boI6(5rj38;@h%%>EWE{)+V{vsgO${KP z$%7;}zN30abEl6>mvBpq{hANDy2tJgtSb-Am<3K?VK}(m4K=pF!y1_OD6ax%wSRXE z8}@|u&!A$(T@KbLX{2P@q#^-;3+a4H>Cw(}0r>7e)XKQ3Db~m?QkKCpHt@f&eENCIDI>_nCK#6y!Cg5bOTy$ZeU9&GG zM$C_UsAzN8pQvk^ylnJk@Ef2EW|1PMC}0pBq$mbDeDSiXeS0N-VY_uXAqtourHUXv(JR1lIuua1XLBgVwy7CZlb!$?d7|5@S;=1#az&>>VL7~z!z*M zB%%=J>AB`9WbSBz`&^P8)-LJ$a-qlhbnb`7xn+n|$OpMN!VUxhkG!SSKXl!Xw8NIr z=k-83tn1!r=KTY1Ws_!>UT>bUCY~#3wG1m{t9Blt5}=a;KvyMIai2XR>^3T*KsZ5YFUg=Cqm()B`V+%`mBpl`&^1Pv*e$t`lI z!ekKABcj=Fa4Q4`Da(P64e9)9b1`=@GQ<=&0Q@NH2e9QfFNd0-a$Bn1&#Q&48epvn z`MajVBRr+w&=3C&O|MJm09zNKB~|-p4nSVE)@Vq5b@^d2w0~SNP60@Wj#_PVNGgvh z24-KfM~S8qyk$ntgIV0>6mYcvj@Hp;9;oG3gSQ@qGU~nnPri+UEAw$CrNr-9@A!pD z{7dxU%f-VIx6~D(*5xoLVYB_9ALhLY{ODhH|7Cx@2mAlByW^kQHxl(S$eg)XA+Iv9 zrU)MI5+F|8T7SJ&kA?K+b)i2;)BpVDE?rLk=Eb3>I&cy%}+XjT>7Vv zZ0tZRuxNjp6@>&il$sU zFrth(5{nKRREYmB43c)U6CqY1FV9{a#qVbSo`T_mJSvPQl?I734n0jf67=Cdv4wx!$nPMdR0gGG8k0q*xJ1i z9Dgch7Hf+>wPXd`t{yFO7g7?)ajEzX0hmaK0OG=j%4y~4N1Mq<7f#2!QjkN?>O-&X zNR9*o3(p!op8P-5y?Jw6N0Kl4_qfWw5*}{-QVw*OD*RdaIxL<-i?{Ih<`e@WMyS#Wo2e%t_`~-#Sg~Hy$;Cz745(& zwbErXJ|D`0L_&fsMSs34 z#ddiGYHnXC*|rhq9e24$oiivjGf2tXuXyK^QU+-xLSf>_Ny)b)>5MyZ8Z1bdfq(f;H9F1ag6pSKA>NilMd2%a*THa`6P9tDKHkH-wEYyK zMw?tEt5U2`pmh!(Nk^o6BFvv~5PyrpHAoqx655Grr*!)fxSCogr5x|Yh9Dr<1Brwn z8w9s;lM3u55(VRDboZ0D*Zh@aEt0T#@q;UngjYKjNg;9Dx>fT3gXw@Qi{MwoNJ>Y* z^TqoYcwv#BS8>Z$AYL99nlU+GR&2;zDQNa-JEp6gL4u9pgbB0?Cq*Cips$M~yxgf2h0*L5?#iVA}5_7Ba=@MwzfXO#~j) z+Ui{MAdz49O}9hzQfRT|HUO%qw(7LQ8;R_J;N%!0CL(^x&0_+27SPENm|X|-I-3=l z^PEKdkTWldI%$S`6^9vsIDaq?9CZH6gjwVX2upQtf9of%)ef==oPGRwCeDlJ`;Xz} zSaE}Rb2fS)XQMba!Na8w_m#~9I7Y8G4<0`lc$}y8gZIvXL$40=TrOMhW-s!io+b$G8M z3jEGRs7xM=fhwvZ4imw(n_BT047i@#@kE7F`T~=~tr>NGUU?$ponyG-;rP9VS;o)5 z1-RTI+Q=3>ObE#mlFLGb5+rO`#>H)1E!mmOPu^qi-~k~Oe^f+a375Xma_*JtHg`Z8 z?hVIre&IM!gOLz^d4KrumpBs0frE)Hr~ZrY+UqdbyJs0(T5jSa51gegak_i$wY02L z*qJaPf}?BM<$CnbRd2~)OcvKm9e7#DL!q8vqM7_{j@|ag0u1k!SOs3t8+dCQ8}ni@ zoQ|iXAyX9z6cRMo0}&F@;hhYguQBi}d|-w{MDq>dCTu}cD}M%U?p4B>jNl9CHa}Nh zN7_wTjmvw{kqeS`!lztCO`ZjwT|h2_^NvZKTwom4?l957si@}1=(GYA9Co1lyI4F~ z+QWF8aJs^+kz8NdM}vk9d1n(GGU3|cW6&t$Cxm|2Ruxr@85m zvH}#|Bep*Jsk2MaE< zj!0gvqACpykp`-wL?04TL->yNfJs!YV7;=_JVY8HHQ*AJQVo2O(j8W8ijy$`j7nT( zRdHH5j&I;Su}MUm^>#TYWC`n`4x5Ay(jfbw01PcN0-BohI-^Vq3VDU`H=_(21zy@{ z54yGaC4X{nFa(}O((fJX%LK;DFa@mNetIDm3SQj97Zw=|dbn0(k%ACh6A`#F(ILG# z^R+=={juVjB0`JtG$%aV)jH0iI$Av;YHm%&kjogq+8UtPnuF^W+JDPZWT1uC4%7hg{f*_eU3!gO3N!tE zod*7vcFS3QImJ2B`%n!)q*il$^jh>#&YbE2*qI1NJN4laE|XWF>^_}c`N!zUv#NH^ zVt+_rSaBQIlRbH63Fpz{9%6(iaDZWGauZ0m2snQ&+Q8-{uINoT(j69W=ftTls|dsH zG_1EA3|hc>eT0o9$W{q<>@$xD383Qm!VwgJg-Qgs`HvrcFE|O}x&dQ~jKg;?frb@Q zYIuAMk54ux9iVRh9Lbr7OCb4ISW!$^1b?UGfOy{=_7=GWEq}nKL#26i2vvj#eQ;06 z^mSjvmF_p}GmX>-wb80pMO&Sj2>`8ocv>fXi#=NCcxPAQU1Fc#O-oZt1Kyh?n^5 zCUCgeoZ49zHsV%|6G0-oLKHF-+JCzT5EO%}D5~K5>`xe;J+VQ+XwF*j{k^ECTE9ol z$MEq*|JQ;*moLuv06Ltx#idAgMrx7ZZqnGl{gdf2 zkUWR^nk;wD*wf#17N- z<$!+WIp(&*S)P*yY^z4K8(I9AD?{k>;5m5fEXJ06aHg(sk8$)EjgT>Cj%9LIfNL(M z!v|0q>$!S3da5LyIBEZLI)4P^%B>M6BTNcWe;y<~yonSSUnprw7I+_sfJPx;jvf3^ z6=K5<@lPhXX#ZdY$o3+#1%yOaQjVSrU|QFAkP#|wWoh6)=7%t$;TfffL?1~tFJ5be z@14!+gYbWQrQmx@wlm)i@WqBCy2!+L5XCiYDtI#q@qs2D!?7qbUVm>sAhlKZ>Y_J? zjlO-@yuhQ_{%A6tr+)*$wkObw&APQvIflU|dzDU;J*`rU@PpWzVWP_x;Toq2xb=7Sp851s@N+l3MNd`4YcVncYYU>2M^ zUFu8~r}qi47E*_uuYb~n`kjvUY8Gg48o6Hh4K68$XzZAdrA4en5ZSjtm;ugG_pZ^q z!4?-oQy~%kwgn8NOe^%oe7-XE6pC_NG4av026ec3<7PNeV-J(ba-yIIw934gXqexfD+&~jH{fdTIi zc-}e}Ay+`7RGF+bPA}QHE&@eVl1}+x30r@_9ic2XN%F|YaXt8WFjTj+J8Xw0O;arf8<3YJU9u^^);0Sr- zFxG1DQqyd8Fr5R0{rZ`7zyDs26;H?q!N0d&e+PvdRDbf2fy2+eZtVfv7#phv3Ms)+ zAP(R3*@|Q|lYM~-#Ak?dyLN$4YT(phWH4;v*~Vc(AAq|-Pb`qgw)Cj&Y5+#2#OT5Q zh(|0QX*>Rj6yQA#tVd*`zP_MNE)%#d$m-eglmRT80>eYU!qGrhJ9yQWAB65vWeowY z%R?Z(f`4p8TMWpaeW-VtS*@XxHz6h7ccM-OP;+!Fvk{D9I7++~yBMfun=>`Wh?n&g zg0Ikh)P_P2_AZp#d9Eh~$%jg_DKgC~Di23b+KAgEI^&3FBdP;ZK9qB0JW5 zL!cL6#0JXxZL}!{$Vk=V0ERau zY1jVAhaZ zGSH|&W*w#RuoAd6u8OWj;<+3i1oCk^UJ0^=I>;FDJ(K1KbDp6-e{Ue^2r63I097zo+>33jbc?-)sDP6~e}qDK8f z4uJ~Ct{IW|6*$9&BIZOh!w~WlI|6wf5XPe_Dmbb@vqphtvXYkSbHArx8AOx0SLiKwMw(TY)Z<|uFJA2@SE(y)I0xDC`oABK0pALUNpc-x0+ zi#KHce{|-UV##dTJ>4sPcYippRd7P@^uij$Ef=F90@tu@K}k+ zPQ$bvO)a_3tVm5*C$)6_Td0ZV;YdxOsg#<+cD)ZV!D&0E97*@%p?}BEFMR49*D-wbhJ=;4b1>kGwJaB~xFp?~PtT-_K-f+Z|M9IUm{ zUnxpV)bjCCU}|iCuFaxEFKE}B_)=TC^vX%aW^Ey=YRJ>>Kf>%8cCo~9ui?(mp<1v$ zp&ETn9JU#q8lzjS#bv}I*>U{p_ z5klGGzi`RbR)>e5KYH@;A^v$B+Tq71sCM}HQS1vpK0#-Pj~_pI8rnX7{8uge?31MI zv(H%Xlc$ej*(XmwVcC;UK8s~fp2!$apCoOcKKY#Wo_~H8VR`)Yb7}kOXP?HlpXwNY z{UjOVub+I%wtxNWVXXJp&p5ZopQZIa(|LTB*8A);xZfUr^62T4&=x<~-{+q{itv5@ z`KOrMlgF5e*W(W@`z+w}$tRzDivIA=XJNj`PRDVdJ_R1VEq)wg4Ez)Ef*(&XU;OiV zn8&A|{D1Wc=JDy1$4>+9KYjY>3C7?*0ay6J_4xGZ;iG^n{s4UV=W$v_m{Img9OLQZ z&#)e!KKz=GV}qMuS>!1p@y~%5jIKO-)_Oe^^2x3u^{B^ z_AK5CKz||vJwqhhSV;-rB!)dK@M6D*0^jJed4I*dcOBy5C-vgI!hV#l0HX6v=>fvB zbQ0?W4-jZ~!UGU#wu^S5D!8TScJ<3zgWY;Rh&(JR1Gjc14b9WRFWS2R*Zcg2{-tJS zOIqNrx5peYw9=N~aNW`X3JhcNIV@=f_ZcV+noOLE5MD-jjN`!;uGQ|A$=ADx8et+O zZh!K7!=oc=#d|Q7Q2y^9jT?h56j|yUO9a-(^sO?Pf7BUv5g#SIibDV;TZUvEBPf0} z;xx}avv=Q{A2?r`DMnVAuXj>T?(X7^dmFA)MT}OvAKR!+&Nn zngd}JlA0&XkL*Xj0$)0OkRMtXi(e7Wp1IW>`h0Cdv7#apqy7d8i$y|OPRkgX%VKyi z>?dnugMx3Q)u^gK%ajZ1>}2)ar74nKi6K&+(iuB~P!J^RZ4Cof45@5$W2SD1T!ns?Ziwvz=B(EIc29o!*Dh@C7W?#&_0LOBBrTykBzk zzY)dh!YRpBHg;O6{2165mS@~UKG%fBb+1UmZNFt9O3ih1H7b{2Gh~$_Ye_pxx=Gnf zehBI`%Amw9-}L(BfURkVU>85FN3R#-4XQ#&Ci6CFfiYLF^zu0r+sp8$-LRGlvv1;uai2AM?-Y z=8RLYxno!ZH}+To(nhD0gHvi)0L2>FNYgdzXL)%rP>SOmb~nTQFP(#R21~EUK-|Uo zy?T$hN28FXjYtfIfqyhA<`bIcGpcA@05LSQS*eM>vYo)4LS#XHBHVsl!dU*d%MFCQ zFN2~eSq)0^PQgKs1hY#b(xt_CF5&V_qIW`ldf^~mu!=zidFnaeoQm2CuOow#zKVLk z1GH`sHdDx8X@}CzO)&~g0QOD*VGl$|6XBw;NQn|Il6hrACw~o?vm60b(S`TC6{%8n zDU$jpO!Il#r6%_0SX|S?@lMl{d{mY2`O3$BqXzL#U4#B&#|5Htw_$sxQ=9`uW#;kXK>a33PBQ|5HZ5#!_W!(l=3^ja#hn6Rzl@@_|`y$>u9?d{Xs+BBbD z65opVy3*YInyRfr=2_h_A^J8~r2dvo1LT6g&H%}AL3tNGH#zG`}# zO|j6nvTS#C9s=1_GjI~T&>J+t z0cJCTfa^lsT7WltlBd8q7w-i>^Yxbf5ZkBcFn^Xken>hl9D7OkA3ug0f^gX_%?0l{ z*!7rg4Z`~di~HT^J*S$mP$vey5EO5rf3^N{Tz|Vdemid*Aohlz8@wYn^?|lX&YJmR zF3OG{N1|CqKnG4?j8OUVmNldXfcT` zIt>J^cADl6CasV0dTinnC@E|k@_nS}Qhyd|q8ljaq7$mDOmNObfJX;k%hZj<;W{{Z z@OE*qgipOGoL00Smak6=RpLdd z`m=EVso$Bj&JeHMb_OoXxVHaWf`6BegaCGGJ;Eu|$9+EtXzT?DL(oy=9_kIz5J`yZ zCpDJi%t&1?3e=!2kq~3Z%oym@m?q2DaA_8}DzH`nOM)11HG1MX0sg4gb^XcE3Ooz* zMnHHEY65`m$jBxRj_cFBPR#m-f!LL&z|9)R&*k-@m%0ZrY-O~NY&fGYzJCvneF4P+ zvBOIw0d>ARg>L<%-DQGc-J#H9Y9CORXi3m!(a__SoD9ht0^zFPqF$Xal*EFPCp!KD zO;0Q1iKV@qAP#BUAys5;q5H9|iEQWCO#)@Izttr@DInjApdp$CpHHZ^AgLu3K4Y+p zco6CJG^un0Fn-^`*1Q@;Cx416eqyp*+Alza(o{U0bV5L9C~&Kg^z|d$i{PvRw)dmu zsfnj0zQiAla{xc>p5#Y(vv{r921x9MA{o$Ed!gPTEt(y_9c|7Qc#b^UXnb2@+K3{4 z_J*iM(+<3Gv0Uu}xFZB~K@_DhXX-)j?l8x}3h{W}Aj@}5 zHH=KPR+bX1P8r5@`+o-Z@bTjm&(yvHIR|bMzgJ&WL*G2z6R9bbZ-qMaoP+*qG~Se8 zm%?qp%g39bmkKw5&kB|B=i?SmB%J`O*bJ~vm^P9E<2lO)u_9eMDYQf6fhBAqQpxFc z2GQLf!5qV1^9(Y&c}k#DN{{;S+umQ&@?-oc#bcZe zHl`mCJm$o+0P-_X?{8Lr8Fd$z3-f zy78q6qs8k6B!Ana0|WF`@DUv!ColTjxN_r(fT!Vu_b1}=!sl5+I%AU4BMk}7AiR7P zfsye33QqR!qFx?jZ?AHcYjtfOAV4%$g8vwFBxy0{ypAh_?0?hK1_P5cS<^BK@lQMC zQnZCvy++5`LZvig2qgBhTZ*7FX+?QwOS`pPyAq-o(|>ksTisA9g=-DK3~@|iOOQ{+ zn4w}FoKsdaxC>A;k_$V8Ujqm!CP%AcblPICS}C1}+8S;IMXN-t(T?~++(8nZ2ydiv z5iz^0AE;3IiC+pFW&=&*eF<+gnQIi^Y$F6Q-rQWNu+(GR;To0=+TKx1tk8BZ;8L#O z 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 Z|H$C{ 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

      g7Ibb*ZCYj$2q5-yR|1q~7~Y2f0#TG#B)0om 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 z%0D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%0AJlwI9-VI<~tcdQlpIp!?YlF6M3?Y)afI$-_Vd zE&ca&vmfCp6BcL|15(*1atHcWA3u3?`1tUJCp*Y4E}>b4gttZ&lG1-KfBfO?_b=WR zmL}U0_lA`|b#3CBWFwil|z6A(tEF@%3p2!h+rCV|S<2c+ymO88FO=GW?KWZ9( zMm4O*n#~Su3i@hV)~7^kiMvGlPQ|)LnGh7>9wQQ$_+UE-%A*eJDVlnJeOLdsrWbYe ztpNwv;K=L>hFAW&WaB%X-0O*iK9#9nD?m&&6fi_Kki8NIRJp4}Va|G)*+rWv2d$no zaY{gV3$en()o?VQjGq$`ZT6u(5|~9jpBDDgwtsMoT>lOY|G29 z`>U*xq7)DB{DZDAi0jaxLt=IKHviUEbNha+Px4K{@9;uP2yat=P*GkB!jP?U20P-K zleYmoWI*qp(WoELul~XJaFbG4y~A*g_0gL*qOb9|nOMsck-9*DiqcXNii!yQ zWnsRM$L#(}(0a?*>1PR3gq1Y`jL;PU1NWIJ<#SiTvMI$_^wxpY6PP&TcOL`tTy5cv;PRCeNT zam?T!AaBD-?*#wY_!Ld6o+V7wCe|+cr4K`nVBE7IQti>NCpco;r@%-^qu~MXDfeC2 zl3y5q)#OSF#3yqjw>IMC9@BOyHvi5s#LXT&uY6PP&5gd1z|Z4s_Wj$JFGOf56XHiq z80t!UCH`vS$LoG*$`bLh)n|sGf7R!hWlw7klpT<&{#U4LFQ{xkZmVtP6daXV-0xkB z%k6kv@h~@)llejChEzO<TB-Hny)qzADYB*bCOS`uIU6Y-W|4Pos40MkHVNf9x<>oTva@i@z-?xu>i z85;BeQ@O=8(h=Wva`is%B?tuhcrH;7AKr+oM+|TY4oc7!{T5?Wk`zvMBOZ({fQ1}? z0Xo7=0$RM#t%|!xY)3}!ZrYmoZN$Zq6dk)8p1al~T-PblN=^{RwPnYK$RL7gHVZ_` z9YvB$0OhX10vcrPi|3Q_FkIYrM@P6?Cr5|s>-t=+`jVRj$gdJKG7z*i>O1Pw0Gq6qVdL zZ8oGzj9b4nfW!)_u6eDGJwr)#lB#v}LQ=ak%7l+6LZSq#dj(|&y)&eUI+?EY!9@g% zzD(9J7a>9mF4h(Yyn^$iih94e|TE&_4==M7E) zQyUU)SkqVWOFAY3JI4>MinJ7e?G=vpbj531AmXBA>p!1=Kv5l{D$`#C(V(u28hk2Lt!P;0&g`{_s{n}PG9tooE`k^d90Tuz`j5Uu zJdm?4;c)^NqL>#BP8X>l9Gf!I^0gj!o^8oj&;mDW3*4N*qDbIc5sV0bVm^bcLek`V zCDA2_lYeaCZU{%ABDco7Appg_n|p+t4Fo(+(TCBGQ#88eykUx)l}=Tt5@5?IWL*ZpgpP}54Ux{2U1An@z#v3_y!=c<`8W?!VQtHf%Ktpfu3XzGPz>yL*Wa_?0qw#~z0P)W zfNQitUsi5ou#N2BWm4R&Y6v}?U>nJW!obVsTBQ&k^+`8U3$Iul8I%jqUM*+9mvkq% z4C;s*1o1G~wgqF0A9aKpEHbG>z|p0UOw7mEsUJ%n8=S}xiAzp@;zk`=?YN$KtcWFI zM7E@X7}sZA1Cg&jv9l|AVJ@=T#*^y>SKBgNP>QfGS0wF8Xs6qghQH;YXe(ED6tAbI zvpL~j2=|Jwgpvpstlv;Kyq;XqsiQh1vuM}qn~>dqla^hG3DjAS;ml-}guc4?E8(rS z}<7q8yHkJ<&Pt}M;+oc6ir(7uBzpVGd4n-AZxt+sv;pQ z@9sVXxV>)^RP1tN@|0C5pdLCt%8X(lb2j2b&e-B;NQLj~$DbK{LMc)|Dp=SK$5+P~ zu5_5>gWs&;`E)rS7-t#bAR)~C#*RTp5_DWl$jPHYGLmk8)llrQ`bbwx%l&H6G%!oW zcRs=f$7SKXl8VcV;!nSIV9w#8N20iYa0>IppF0zk_Er}Js_s;}82jw^2EM9Ac%oyn zfhS`U@@~AAn_WJJh>(9lPdDoB%BUSjk{h)jA%UVcyBj@1?G>Cg42R9~Ws5+;)m7l- z7c4`ln#?(W$AzrS$f0{~Mz^hlEPyOThmdhQzx4u7h~ZKGqRRo8QwuVh}1}GUM?mImc$tY@5JnSx|MBI zPM2ei32usOMDSMdm0$e$?BorK%O@DLJ-Q4$dnqY@nm3Wr!5*&EwzcC8?P*Is6_Wm? z;5W%?3x=-)Y!QX@a8lZbP1`7B4#e1^b+>#85M?<+Y-K zxItTXAzN$*T05`c-TppYSaT=F4!G7_|6GT{AHZq9(U#|jCE;Jf&{$XW-ZICchLV6W zYiqbNt`851RTzC~x%^brlKez;9&S1=3ypz7tl|Z^c}YE!YamQ;HQRrXSRU(MB6^OaFc+} zwlS$lR;J$DPym-UGgt%88MNlNn$u zI~@1kVq88~C|1m3R4eP$u;jQvNXs*Sb&I`HJ%S~-D6T#6H%=Q&!JWfg4^X^#wMD~c z|2A%T7=O+339^fbq-9se7kA_x``(WPA!yLGO>0o4;LhV4_+<(qLp2enkx zboEx&Y4nrAo-$}FX@fRF|GA)%e1Xpo%Qs~u3mQyD<+iW0$>^+Xn%1fRT+m2=zQE^4 z<(s;FR7ERB^cdV2ZdO*x%~J?pyegU-R{oPRLrEldc&bxw4L9}vzlNF7NHs_&)ixJh zNJ2kf=xfV5D|l|fXma0N0B#FbqkAqGFQ8g}BirY%+>J$*b%}K2e*Io7YVS+-k-;>- zxh%v*+jg?o5t@Rx6IY6@EFe~YvMiR0c6B8=lSF0_d7eMoCZ6scYt<2Zpl{D!Z167% zw|CKDnj4QD5gruzGu$(u5;a3Cl||>b|7IbUtQ@}~%l6v^WQq@bS>5yCoSGza)FQO8 zQr>o~@1mfpD^Rq3)}5&lD#|=7VlCUfJ?|CF@79<*(8P;e;#oOi-Wz^@i=gJeEyY)A z1%EvUJ#6JDvk7!17f37EBD!2$L*Nts%s{#ZHvaQk*yJfTQO@xDvF(gj#4D(bm3M@t z2$+~G)lmuyWKhj|AXyLDLS2`HBa9&?aNO3fUAaJJq&MxwB|)ID6G<@UI?}U_BQ2tmg?z;i)rrsDY&fcPcJ|B(zDwRr z9E5M1i8y}i5Xf13cke)DaBZYZBaOi(e=v{MH-U8Atv!aN7G;A@% zAWAXDjRyA>B}`_2syC4LXkWa=rdR=Qq~kUIFVPko0pPeV(ZR!}2NuyD*UERpG3imf zgy-sRi+fJ1EW(dx3#}DLKwOaaRvGUf&$tFoE~N`PP1h*OSlOL<{kytmYTM=NLAf)U z;Bwk<&92eF5wK&o$FCBj5BDM1}Q%Z z+$09#oSLp|w%zWX5u*Jy1E>(z!!3sntr%ButL;C_7I-)XDw`@M{2s?to&Ad00lnq) zx@gR^Ji|j+|3rh zn#Zq$%=O^P{@|CCL+vB0cj};UW9gMmQ#NuNAkHzIl2E9~;^NpaW5;*H|XM|%? z_gu$o7a(7NZWojJ0?l@2JzW397xBq`CC<5SkbG5tdyN}}q#>G01VeQK$|R=}9=$q1 z_eM_x_lnt18;K0R{rstzv5}dlxRdHVOpy7d2U;U*AoPfP0fSCjd#@cxbiP(OkY#~z753%tu02<2YKFF4X(fR% zeYOhIUb7-$gNWuNY!IO}$v0c80JvYBsF8wyQV>hhSH&hiCJ(UzT#WjHilGUQw)!H# zz=Ek0_*Be;PJ5}zzj4c#NaXGdgii+{ttwXeAmdBl^_%XFPpT=J5_Qlorcuikb%tlK zolfPFyP~Is@(p0Q5|B0Pb4z3hB8(bi!2L& z6^)swYwZLv@yie`~MS2gv8>a1BogUI`$6V-+YtydrME(){_jX zC#fH9DS8zL)!Q0iw`s?IlL-^kPfR33b)kGCvYv}jkX+HI?QY+{FZVRG&@ybi=VbAO z6WCx2zjee6vXKlj0>{E0ef1b`0ZtBoj-K@|o~5xw-X!=;keyr6Toc>{*?)e#d~Zb<5^)o ztV4?y><4T!mGLOeb8NfWg`>IG+23-nu}N!#J?l&lOuSce_fLOk7>9Zxh~xf$siUTm ztSU>SLSw7G{hbrTEA_2lsqEIUu3_8CzrrY5#N*@!QrL-(H#MSh;K(97$x=q^e8qPa z8YzF+o7hC`W|PcQlgQXV;h-R}vdl)5 z{LHd?{gqqVTt_nhV`R>d#XNU^fGp=Qx8-;Cez}kDh34D`W+M^8)hFbrU*porCmo@K zuK3*>bS(srxk;xT+lIpv9b^eJ;zyupp^_gj<%S`x2ntEtmuxDy~spE`*UVo9&nPw z-f5^(^hPapM6)=5;9fa2q|3Fg3*};v;uSq0SO(5GU^3=c9gE7cJyU#~C^4%N7UFyx z*-Cx=djr4GOrOQ;Hbd8am1pZyQ8doG!m*6 z#?-Utn!c|uy=S=9=9x|IT(Q%3Kro>b(CevA8!g%N8cih&cwIkZJ~>(!l%7GIX#7r{VFc~_R~k^ zIPx!kMZk7{pDY4e40#e1Z+>b)ccQyvRXHFk3SU+#tG3O*2zr%umED1|)_qtScqGvp zMaOs*ftJ&%*LS!?C%SdVjeEhzLMS^f&Kpab!n}Fb&+eOugP_AI&JBW|?+=;-k3d7B zLl1O|`AH4ur~!tS=dv=a!8I7FoyDj>h`;JCbPbn(jv+*%6Lnf=400$z-XT@axKQW| zm&{q?^d_?wZ$UqHVF2aibR@hbP;duY9sq&2Xr9Yuo2{+$Fn@OyEMK0BScEy+ZC*U^ z(TSRyn-|s7*68TsIG}tE3a6szK}Qv*4b=V94cW1~_=@*7GlKJ;?Q3dCvYY{Rz99t3qY+=rpGm1=|;cs2oP|hg_R4Ip9QBK z#>oPJbZC#=4M0U=KQKcs2U`GiYDnOC5q7z#TOYcMlP8u+G~1F}f(6aU9Xw(BDjX7? z2nDPf-iCi?u2{?(a3d|X_d^naZ@w99)*pm_R+TDB&~)CeM{6=SIQC=|)-<#z9bD}1 zT8XhZ;D%4tor~uAW^25`%|Y7&H{l}@{LJ!Lk^w#lbr_&;Y$D_0+>;&(x7#F)D^%Z_ z_z^CTD;B{M)sM@UUK*EPrywguXa8JqnPUTLf}+kisA+!D0#cGPAVJD3Maro|%5EWl zQYsx)_q1ep8$g{(IFDyCHM?^U`v=b(xC?j4DNZdP4T8B`*^u*1@*5!1<;}eX(TC7D z_eEHvI}&O56oJMCzrYGcEHAeLkVpfHW0<&f8SXG+G}8esZ#|TJnY;3p>@nSy`pJvU zz&DCs1I$V!Kyu-8Wy71BvCiD>rld80*|7xLcl$8c($FM|v)s4?5TZ(=3BB%r^UWC= z2)9?~l7UZu&$E$^ckZ4^_a!HjdkT%c$rdNY9O*J;$gMwM*Iv>K*TQ3ey-hKfOi!@5EbYG8XvrK|`(|-D!y`B(Dx6 zTs12EFc2(YeHW!9ygNx7*-Kwc0N{>N|3h>?Dbr&82xlVpczLNjlgwf-X4c z*Qm}{Cms>%mNL1x(WR(r!4*d^Rji1DD_o8UTSl%0`>m)rsgqd2dJv_5+1qHfKUo}y z)CjTn-FG$r9|_|nG%_|pT%$&6g}8M_pR~6iAFQN6)Xxdn7ANRF>_Uczt(a2taYkSW zZD$f5$5USiEDL`FP=w)R<8sX{By$PkRsIYJy+6_<5)zKBTEt4R6lJEj0QWp zy*ePSug4W0ZXpC?VA$J#INjVc`fJL4Xse&os^P*=t3aC{r?IKhu@l&V;7 zMK%g&Fo{_0$gAgJ-0>2>L!kqQBCsUhhb2x*$aO585^JTIj;D_$M3`mvkv}35cF2(B zPG`s1FXMf>F6WvAT0*NE8k=fP;PE{%+qgh6uq4UhT&(#TjztfDsA#T4NA?*(8y}w- zCe^wO`9#EWF0sOX(VS;#&ld7e-FhMZab?h$G=+Hd91GQkS-V4+cP_HB&3MxJ zdX|CxKtX@y&A)AbwZn0qm>=@opvRHT&2V?iwQNGuR1*kduxCrRjRG#S9S}A_qJBt` zWMp7~v`cO;$6jIqK#%9n!#GXT`>>N8JD-~sQ(ZGLTqRRJCTY*EMj6j&2Z=!{7Lh$9 z>C4l@MkIb?4U8u?WC%1!STOe?0dwwi3j=OwLBvvod1zm^6%nRBErj>|YIMgkEgADJu4@@;?8S*|dzqOi z8hyS@oI+kzwagme&F`55qJb@g5?heI3cSw2ZAa)<9X}r}@2tA&@E=cxTTjZRjyT!0 zrHDm)E$4p zUh#S!Q@Xq1ru*Ad0a3vF!iB;k5(FIAZnGPc`AIf5#?>Ld!uGW@%Ei&>Zu6XumVt`8 z&AU}E!WiZrP7RY5QwXHnK487zWKmNjo!3MuCT^~OYbN4#Q5%FuC#ay_qbS&c-somT zhCnOx?9rQ_<(idY1!sdCgKHuP;o(-(VZESDX|n{@$>2}JYsqH5-LGi*oOr`Key8+&i6?Ux$?|u*TytqP$3AQCX`S@FpGSJ3^pWa+ zk*t()P0DfMlvu94h>jKW?xF#3UDyum{jPv_|D?t!-qEVob|QaO_{vCP1}RCgm1 zmd+_&Nykqkh+0l&c3X%$`txpkl+m_RcgSWXmYlO#+v<5rr`&4O6_jD%=Xi(@D)t%_ zZ`!H6bw1>7rn%u7&qvf#Eu7lHlti(A|K;K?ka1>adZrJFFZvS7k!>ZBPE;B2R$Tdw z_X;M3xzhc&6Q?bR=DjsB~==lTkLXj8Q&%rceToswBTjNwL6VMmpe;dMEfmUWVxM1!K~wNHhyqo-li#El$Q=$+oE;1!q-nbjl)4 zQKjvdfLm}C?Xmvp+n<53P1tVouE1)-Kmp|$63!<0j%1O#!gshP91U*^7a~A_)=Cd> z?eWz|NVSMDlySFUBy8et^DJ$D)MpH#*qIou&sA86O2!T*X;wl0cqQQlg``iHVoB20 zN#CHy#X)6ALJb6CR2Jxg?cN8mbq`Lp#wN-(skvp3)s0F;ehZ4=k=NHB{u%dJ8jvvT zl3U0sG^9=c%9?8IiXZK{ZY7eLG0bLmrzP6ZF=;buI_|ODff9*U(Z#8M+gsz>cwbce z6qP?MN{t_g%3oiQ*l)Z>4W0LSiOa}dv(v=c7iFjQJm*598*G-zdeU#N!59O%rG;I5@~$`z+o+>{DDfmH|(D2A7#SLhbM&p6c@A%FEi?p zpv5qjQN0J??^~qKb>AMero5T)My2UcB5`t?x89RP4m~4T+UNVb&FXw>ix(G_>}Zb4 z%%LL@o@vH+k6@%&a@m^c;C%hd2eCx6dbzpj8oH#RIUCA`N5-~)OCGGrOYE9QUG*|~ zUz>@Ih@`}tKaj`Gy3-vRphC%A=!p;BXv&Tc#`F4fNrPsWt87=Y*y$SNxkwZbNnX1p zl8 z*5!W94SEhePfRI)q%V%dGp|H6Pq>KP%Pg6{>aolh*$kK8qBhDgAE>Y7mipmn#2Kq@ zYM$qShks;uPyHL2HkTb#2_!1m*7kQBx)2T?K>|y(freC$#rOh$IO77M^Pw6VeFAoj zjouAyZqrLZC}FCTN1G*+c%F|XtVo_0C!#{yVc@=Knsg+8OZAT=eV&A|4)VDi5eUu#x2mh?u5*m!7#s9CS-k5l4|)kAEBkg@6|$A@jP`r%MA!-#(MVr;uoZws>-b#Wfs7P#8oZVNRXyJc+pt;^|*_(;DXSDdV)dWc@tSSSotw z&e`$(m`-?qLAH}|Uo5X;f|364zx3>0P(zPTCvK#xwa7uYRSHaFgMgxyGhAaf%NJO6 z3b#}`p17$vG87ogjP~cH5}Uo-0TO>q(xI$Zye)sXnI*zT9-62>mZU5FZi~}teKhIC zBz!My2si+%i{_L2CbGw;u!hT%C7sOZF_ldUq>ix znMv^9N3})DRO(_PX0P?JuQ(XbHy7U7$%koGxfSlhm`gNEx3^^GXkfUl4pfpDbX;sq zXIta?ldYjm0L^~FZGAp$|fiv&i>`F)Ct zoLJC9+Br&yCB9R2Qgfm9?FK^DIpAtG*$hS0YV~fPtM@(Cg=el!(J3iKb^a>ciw!6v z;AtW&AR_DmvJ9_)o4o{9%Ya;Nycn_FvPYU4xNw6*5r#yZh&+$rz~=%Vq3x?hdU_Jg8nxoiWrZr6(lbI9y}B~~OX|FEL@-JBFCicUNrd@no4Gg{R%&kP#Y zAMMs~@KeP1>o%@U5WmEM^?hrr!e5db1Nd2F)@DlkmO~jF&5mV=h=NBwey1AZG4H35 zaNr`!{+xt@2zpM_fCPu!W_M%T*Of_)4B*u!qW7J1X+n9-DM|xE5}OQ#yDx)(mCQK=-q9--ZgtD^KZmafw4(D6zC|5>A?feV5!JxYJ z*qq&7(GB;Z)%Ts~TagM6@}uEZ!!_xPAbT!VL-b#+CTfO+o+ACrBHZc7DsaufX;^LF zuLu8!jn-xDYNzFZ-)&uOeW-odYISjTzS@*O0Ivuvq=ysZ|i@XZRc#Qn3u&n)#C%Zzkb|~KOq~*FKU}W41 zU>J(Qg7@r+hpj^RQ={-bH696b_ZT|)_`&aGUBs%l?Mr^j(HJn;8`xqf$CZN#VSK9{f}~_yL=BTu=weF>ZJ9k6Tpy>;kaDGYQ)`INC~XfecE$~L*<6DeK_~1^ z!F*O$*mqWPY!iX`*nfYp+jw7_qhMdOMjHyY`TNuh+NpfIG2fWO z5nQ(F`T`wvt1`21dmH2G)}p#|iHR2O_(N!C$?BO4pY3o{6;XVe(alakJ{i?OP}bO z^Vxl<_1sTse2d0ET^%fqx4!XV=c-oUsC;0N>{oAp>jS@V+E^+o`(HPz?bbC=PUw}2 z{Y9{pi)aGR-yOV>L@>YwJ{9(TtAmoBJyqZL_e#a?>Gze{vhol`im44`!-ZnMZ(5U* z$KAhX!S>+zgs@fJoi@e%->W;r<)s|(Y6Oz;pF^^bGU&sW#;A+?Tx~baC14%a_#ddQ zxc-rU{-lz3J2E%OBFG5#0UeRez7!(58Y>8v2M04=T6iY6yuh-)4A=>j=S9a@kGMkJ zh1j>B5oQ?5cO zJ(A~T+5-{q8h^!@=GX%9KrPq*<1f3r_1$`ZnI86b@BgK~cfVfV=cclVc<}s62GBYG zDw3OKZUhG5i+4qogJXF@1=h^mV)!W6xsj@W z$P}8-0ncF;?h*xXS(+iL96TnvFL0-B&t$63oyCpQ0kdGH1x@FNRJiDIUa2dXF=w*r zd#zXk)rzv&rg9<7keiq426z5h+W3>pgo_HseNxs5A|PMK?XeUYTDII+2J@W~MS?p0 zG?r9*A|`0BrF)tp?OqAdf%LDJ7afv+nR|a@X&SBzVch)^myB$)g%~j|;R}O=v8ho; zu~SrNsJmIdS1nCWOSlDYd+!}3+G3=UHi|Zdjzb&?a|Jx8W+4xq@mHE525TY7Wsx%3JBk5xj4|EY;mWfI6+`QM?E6F_0ab;>6{PDR7Y z)D?Ze$)+dNdzM2!oqNBuLb6?dnM#|SG-1cU2B!p#^maJFut+q#{GN`^on)7l= zckocZ4Zy(#jET2RCC*jqWg(xU)+dGTGH>L8br-PI zongh`Q4a8EOK9maF^fqAO-OPqE49*m(aSz;SD_9>dtZS{-1IteQ8++yCcT~`9WrMJ z&ei96Z)u^2Wv?tBeC zDR$2kshTOFomCHPt%Q6fENX+}f9BDz$&Bv9gn9J)Z>+8nkUUPnV(Y@2vGb}u8&~fA zGRVfI%egFFoLWtds^Ab5P%cIFvvn!c@RcB4{XDF8zm*ha7 zmnwY_wtR1Mws|j7_j^L!$LMuUs#*g%o$UJc5^CXf+QO#Ej(^ZQ@~`05cp;*z(E|rU z_2SY-9n$`wN0ZbRbz zy`7itS;LSLO>!*s0?x3ebVu}dnrNZK^=%nzph|MW8kLcl%uoh7#M`6!1c+$j6gREy z(l1!LaT}OSRSPH$xCxW<1)MSEpzGVdK%Sb?3eJ>-Id^J*mG`1>a$Lp*Q&Z5`bfis2 zO{fVO;$(*5ylH<*LlW;!W-}=6=tf33pJtF=xmf_N3K{He&nGAZA_rK*ugvpr;DY9y z`h;$vP*0;f<8U@>6Zb7Pq3&s7J@Kr&=Z;bo!jJjhq9peIQg$(2+!(P3@(fCLx2&4B z!5|ze6*VJ&ZY#20}y*C4r;8H06JMeqsGY0A`?3 z|En^lM?^z%k*8nCrg`e6`dV@$AbJ%jRTRSXR;0T;WmFoJqm}l?R05i=OI)HJk%6o7 z=kGS#clZ8mh|@M5*Xd{i7PWWebz9tRJFPW;Rf%X*uS#{o^)DtbCRf?)5uSXwROOn| zV%nTrkIpCf!M3cEo$^1P;+iREJT)bQSn>gsl(%@-%3CWYI-`okpe%!-89w781caMBLdnNwekO0*`rbTECM1b3g_WZ3?QMo5cGxeK6tZ!d5)T3+y|k5ajFR5MV59cFAjwP(VR2*gBq7QY7LGCj;6y~ zH;2nEbffCQkc$$&uZBFdYYsUNhKTO%n`8!3ZZW&WS=PljB<^0=<4OeCp{xgWc1AcbFBG9{rm@#EivZX@aqM23`^&0h(1bz8OnI^r#hN zovne=5Vs}c&17Nbk}GQNB3-2$&9G*MV~*Y~YKiR0Z_?Dv7H_eea{<_^D5Q*J$Z3_! zy0X$PK0VFF1L@17!2;;u^HZ_1XhK!h=$~@1(IGB?&D2(Gjx-ek6hudV0T4QKN%E0Z z-UA}BxXE9&iB~_3UDrW$9v}HvL39QuQKgNoAEY)VAByoNtv&CLCqhRY^K^>1oTKTT ztlJi`ke4CFv}g+iKbXG11|0 zuF|TB6jftH!X$LqiAXEDYq2niI z(~rSUivh!G>(9XAxa)(N0HgAh4+4Ma<%>I%NO4-7Sq>%*?TU@FAn5lME;fL z!#O0e&xh>SA9d=L^2=d&HknUO7h3)8+gDCEZ_b+pL7I%!Tb%{Onz)j8>068$`1#`k z|3(V1SbMu7@k_WI(znh3_#=IS_MoLoLLwlua`k#T8P7AJ9`G%6NZPzg`Pq}VjUfhZnee$ENzigSc{Uo+n#5Fn-M>UqA(r$mH@hp*=5w%ZU(&~Gvl zzBFPL3*H6CT$5o-IA5W0ybkvPG6Bul&YkUJR~3Jm4j@Nz9SF^-r$#txuXlpcHgi3J zQ5rGXjjr2&>;BB7lQvo=r5r#H!+X)LwQk;iyFJlv1C0rcnzE+JR3m5{xUd z6CA}0A0>shMgg)R4iM~4DuwPq1pq{#pj?810I=+V$F<5UOHMB3t;kl&VSwF$POzS) zEF}^H!=6wJZ)}Z%1Wd^Agb5>)F?lKsS%2W_hF!IPlp)@VE5`5S8#W7pV30>t}~w?J<}-7}mu$cjj7f^vnF5}?|uI@ChSgKtLQ3m`db!SyP)|iK~pfu!fmxTjknID<#NBh;U+#h%W@+ zT*yxd$4p-KNvI=J)0JwW)RdSi^6Z~m3n3%Jb{6-I@5GLe zHM7Pii3yg*$J(pLw{YWQEjK>MA1tVN8UUDoo=%`%07PtyD^6n)>DyC=(=qbFpakTY zwVXllGAsLSILxE)XuH%83&kAB(u+ZhY8ynT7=Q~Gt;IL^HBeU%H$rG_Kw|+Yuf`C2 zjmmF7zJ49Ns^s1SAaMDR)PorQ3Je;*CJfc%h7y#5*Njxw#JDk@55^?9X6;aH4r5J! zbZAoc)-~m#AeU4H{XT94HM9c+=al-U1K28=7**zVvN5FJgMR8S#<@#=mR0RH30sNS zGfkX*CgId35rM`$n?Bvr>tY{h{`nw$izBxTMo#SJW~SY(PvIBR*9>Hx2k%2n+lx_#vu-d^unWq5&j?Wd0*%D?mzH zbhBziS@Qx({%3#IZ}efC5hN`4(Gqmqd~fhCM9^8-Y#|M<8LVDydT9D1+|dYutFAd# z6@aTL(Ge-CI-sn{YeYjhF&`q`BN4GDxCH%iPabwF?7b0qGJ02n8>UjL@+y(cL8&DqyA#uP1Yb34Re`x{^DdLcG(SizNXxm_s2Ja`F<0 zO%lOYa!0rY&9^hT{*V!KK3n&HbChckEM^8a_LWv98xE>u21tX5L@tX&10-z>Uzeic zEVS2=OH;!;6vY}dYjk3aC}xWqc0br{3rT7(gf%*(DdO`5-NKPuI@51Y)-BP7Y)(4Z zfu0Mg{8GGgFJ?V(TUE_LA1vb%c=@*VN({v-Vz9^iev%-f#Z)RkOs~n0%@KfBlcOlNVw%`X~wBHg_|yRh`7NJ;4A``5uKu)b6`Vgt@aA= z52>`;jf*Y>Glt6~Ap}g=z$I~BOMFC-Hs6rl{E<%#*qg6NkNwD3ax~00A_Gf*bbD(j zl0G#LA10So7ou{8FwF&#ya#t2ClM@f@y0gF#k0SEIccCjf6zVsC*Rw8vLg0@6TP=( zvow_Rxwmy$!xe373$}4xVf!TNGZ_0pt>GchQ6!?ScmeArye~+U62CCO z>JkPv_)aa>>%3y*6{TP8QF{vdC|!h9$;}AjCgdFd+$ceE<9Y|^7R;t1Z^ei*RD3=M z9_dMcqlNr<1dv6xHhz~)s-rjLIV0ve&mN7Kt6^&l*IYF zK?veu6`U%Fk7^_8jH=Br_k+ff%I*#*fvMFQXi6&Bg+bJjj8eNcDikN?t>e_LS^$H2 zKzZDnrKGSjli|?5WLezY!iC2$vll=#fJDxJLCECgRZ_;W#;D11xtQp>OBF%Wx=TEm zKE!=oVTk&;!uZn}nV^_UEr5abfCwYIW_yrccn`xd=<{j_QGh2zte-%(jI?UPI#E=a zDxygWIYNS$BAr4xSvPu8Fr>c#jYxv-jaU2HJirv6&%(V*V^ z#;YFO2+VEKHMhlPwT0wN+DkvY5w`H6Z(f{-FSgAKq`Abnf;;39UYz5Le)`2@yx>gu z;w=2)NmVYN4fFmS@B7ZSv=vSiX+DsD@vQO~^2Bs;TZ)Y{pIRlcc1Mcy(=MVpGdD;i zq5w-kw7*#V3o$INZnq&!cJzKc`xI=5g=F!6wYmLZ1w_Q;xrchq#6xPu`Hehx&A^+W zS9MmG)Cv$ex9pvteuo6lJh?>#aig^?vz)<3X#=7;kRPG}L|j}1mEDBO5+zV9NjgH- ze~TX2Co?p&6|RyND>qQDTvPi4Z^g>BvOqN`B_W1%yiH@=TEK`4p23wFv}uEZ^Z~6U zW4U7HZ(#^#ncqM%YL@The~aZi9#4K`^-%367jIz~Z}EeR$1d(&JIM~2SU9;eq}bRy zKH&0q+n?yIC_kQUz?0hi7G5b}o$X#4e{L9tDz*gRh21scCEzL%rhY=SrC_fSOgnfg zmhn>SDNusvb7zJlN$$8CxXq4f27Y1(ei97)RJC&b{kx0TfistQw@AEO@SS@0fAMgB z|Na2vzkOa5`4;}C;T-}bS7%Tp=z>xM6ZTFKBm;a2Q#(W)9%K&x{(TG1P~gDK;N@Mt zF$3T5tO8e7M5v+B5y-ar7_LCD6o%b@eNce?51Ebm_&wBOkl7-AcNpHDnuJL`)aSY7 z*<_k9;IdL3@w`fbfog9!Q&Z6_e~VO0rJ05S#5Oo0MrsG&q&34)8yr*%cAvWqsNhlX z+xTM2wDu(g5G$FoH}GA6KrvP7K82d}N51u-Kcxd$IBv&P>$21J8=?ttSK&I#SB3f- z9NvQ@rH%fmK3yEaX``9u0U16*gm6|(grN2gp75KO251Brw7OCWxsSL4f4Cv7#}T$J zY9T_t4h6D&+Zy8OyYECl3+ELz3s@2Ci#d02U$~SP4D{u$rvh@3!aqwcsXpTVy5ypW zqzQ=XRr>%0amHrKD#W?&LU8o(VFNaJ&+0|Iw|gEgh*IZR2Ydhk-0AObNZJ9kPzqbv zxvvFQN1ntm(*|u1a68h4f7-DiV4rzfRr(~RIl9&x}#mdFgK+L(!GYH~rqRC6?njZ8xb>g#btXb53O6Cg%! z6q4%QLTRo^F^_(je@`2JkwV+8qjSjLz>C0ak0sTmdbsYqeX+GLs*F(g7(5tWV(-YNe4iALJaja6*I{fLBE=_pFCf+PhR9Y`U zcAyq=PR_{=9SY?GM2xU#%4* z!|h8$<8(LTag^x6@=py~P19vENM}HOi(UO-C9(WCE)af-M8;My&P;rTOI+VcMY}Bl zlcGAM7m~2Ve~(7DrS6I3lVT6aUhVRELkFpn|-@apt(IMC6&sgFQQGlG0QUM_}6y>E3}IQWoGggXdn*A&Xz za6-C&>*mcJ1NQA4Lg>ZW_+~^PAvReAL}r);a<-0Qf5!NtK6^{?AtWCnJc2Xlxfqh@ zBM=Y`WsQnm-0Ym5nkwc#?WSBI@@Gzi*3`eO+kx7=B^ zlYppZJRftJE3D$@6xis%JDp>fEBH>v*p zyLo%nZk+e$#?F_mWz-ptzujG7eD~|&Y{h$ff1mO;HRFK}o)`?i%b4_Ldwcx}c*k1^ z`z*o%5r$kvI9e|dUvYFX@e_9|$=e?iJka1>*ms$j?nO^ykg}{Zd3_j~NeFQy0vD#Z zM;Na?u;a`13!nmbcns8B8G~%y%qpK= zP5Uid{_XW)F z$D=o(7-hbWdvcB zDGb07tB2XV$5SRRc!|Anu(b3RT-f;B!x~IHuhacQPIIFINn{3lf%6^G(JNS|% z;m0gUvt>O}Z%qg-K!izZTa}nMQ56@hmY6Ft2tC2Dvyh966Hj0|hO0n{e*%lH6Lc(v zds#0)6lf2iFStsEh=)ARN^<;rJHZUvnV*6l=4T{}U6ba=hNqXHT)P<5r$@c|B;giL zWv-1}ii;;k{9)c@h#dJmHscWrgx>e|E2Vs9?oTfBilU6i**|!>_wn^{)%9%%4;=v%df~n#l6!aX1SumFNp1AN6!5YG?+>Yt zH#NBi#~%*&-oAQ$;5hN*VidNE(a|3t_dcww@F+43uRj9ibh!8C-P`?DjiJW-gSW?f zuim{~RR#LK-wrv=y>nL$|+#E zAKB$z$AsR${&;l9VAI13jvD$j=b%;ULZ*pl1KTaAf8`lm@eHC(9?W2b_?g{I)Gon! z*EfSOsPdfM%x!e=>0dJPWTzbaUEQu6Jr_Yg43|M0UoiuJf2t0J9XYN~147=gX5d~Y zvxK>UuN-igP2i+}ZB}uuL3-mRqDhYCB>fMJS3zK#+V7Ba63N0+?pr~dngBO&&9ho+ z=w5J{+B?K5Us(!eyipDdRRFAQpVb=z0(++oObI$#{Y%J`djROg0QoJ)vp&hYI1lX* z0&YOS8rgRPf9Rco(eo3y5!tf&cmkB3D7vCeJlKasp<2ZwYgeN5n;1UFPoF;Z2E9~P zCaiYBcL;+k8>6D0UWg$xw+9$}^#*O!>gw#EO$Jshz9X2d1iEiywDY3ZAGDPHmQPX1 zxK%7eO@>3PzaPPQ+N(S(6c6Eu(NEy5I^CPYgO-FrfBrwF@bg7dV{-{1WU(WmAZmiw zxd{F2H;9_Ii%(Eo6%B)_u<~SBSX7S@^jk{} zi>lI(1YNPt5wODXKT;F3kYGft-=LX&Cq^J3ZtMygSv%Hyi8e;GSV1WsYXsAV7@KhQ z0Jgq8#wR;;el%Panu)e*ZEJKYLT`{v83Qq%f1gH%0s_|5DHKajHrAj+b|vBPi))ax zgy;CxpZ#y}rJV+XI~)@^kx=ytkWJ%22I}euyGH&ywSvh8AXJ5U;%~=qUL&YOlqH{) z`dp<`_#sb_;5=0T!#v*73*51(H(`EkMG|h@pzcE0%NjbCPgzJ}Ur)~H{?T)r#B6)i zf1NYuI`nijy2h?8jRHzR-%ujvbXKp}s*GMO`3@<)5rp~$;qJOm0EK`c96O7YG}O34 zZEATCV{QQfo5`j*!~K>p`!1DQHYM8)<^_98xQ-y;Q?*s1p}9HX!T!TG$_gXEV7hZ1 z6yr_!}v293XSfH7k%-LCyq?e-}AV7I(mQ37afF-#WpjXiud8k#m`OgzN-9 zhJ+qw610&Sj%RX;C9*GGU4O(oy41d>Z!NGIS5R75$1!yY27&78l`E?1;qQz9z;Mk= zi6y8C=D4~Tmt3u=DSSb1g?i4f8>tESc2xWoNYJm*k^uChcs4WIB(KYnekGQoV!R%N64bcgKJQi76zg z!?#U1SYvMB8(K5ao%)oxicOD^SQqkpPE8gQVRy_VPIPj@=(UQa5fWLX-yk4tt5_Z( zA(owt`Dj9~`&qj5D@toaYWzM=f0?4m%~!=s@lay75QMh&31kp;fO)`ZIsKoQ)12UY zf!;;XqF{&dT%v>^VPllw+`Swx zqE`6+-8{-Vm%H|G68Z$`M+zsT&W{M7gjS)=Rtp0NPZw8I<@0bGE1_YFO^AP! zRUbZV?<7mGCv3eOw=twdf2-KSRC`23Y+Tp-H2w@UDX30?+=%5Xs$tM!QH>f3({R;W+;6s8W00 zoO2tbTq;K)3A_AuQ2bI&wKW9dy%h+)GFgWq*vUQ$5QhKjPlC*a)`SiuK7}Ch$=Piu z>YRjiPKvdy9fX(J+JOyE!eXi=B$=*x^_He5( zXF0g#iKG)4JL?iBf8#m46EPgB zp&b)yN{E;k6V;NHOL{E4?+A4A4uQd`GmYRf8b_CB5dx%c|x0kAcEA|P^@ zwFj!TbhKKKf6_I4tw~)SrbF^QF{-%^V1y=xOBEKr!U-zWjLqaZ?|YhNLL<@Jk*6Mf zPP%blqeBk-WW7?;=`Z26xm81+F=(^Vj3ftf^T0JyyzSuP1jc}Z9(V{*5y0#!zM-PP zRb7o&R~)$D@DlY{;=ofCKTdI^4jiE}#GzRSj^G;BfBB!pvqBes_ z+K}(a%pJtXjzIMX+VVLvOQul! z_jZsM8mMH<{li{B2Se%)pbC$!x8OBkd?3dP45BIrd0Ot7lto)QrM@RYg5id^hhAG* zQ%cmSf7y00CF+(I{wqug9$A$Iri9U-?ezVWK(tafb@!BlONC!bVtS8QEt1xquooI3 zS@F4)WaF?IiQnV##gdJC5iX8It&sE?XFG7J^fW+KB(73P#||75u*2F2>~p~X?2j+t zb$48!yg@!e+|q#Gv2?FlVoggiGShO7hFLwIxrIh`FJ@g7;LdoQpcP%N}S zgJR2MsP51}PiJPJuZzZ?k6XAYIB$W@9%xy~^XY0^8MDmRg{N^(T@r)2FAJ zf2eTcE1c*wKluu>CR#y$+I4U($g=nfSPH=o-FWlY4HeM7KUBRK)^D_hO*U&3EP@Q~ zr0j-_t#G3UPFwN8r=mUjq&A_@>h3%R{y`AhryHs-%2?DVzf>OYbfZPJyR)@bd3<~8 znpa{E>z%?*?n-e=z~hCaAEA6CCWC^PxhLG+aYe0!cOlznG2B zgloViKLol1HIf8S;mekn7wZbRZJWM#+t`e109t%Dpw-RR&S_sI!A zfoB8a3byB@wh*Beu(V=Gf1nybJle)T0S}vw!{QTH48)pEk(szmV!sK+Cyi$jdU=#G z?I3xEly~zn(qC1RaNuO)s=o$Rkkl(?Qr&pXzLy?fo@=PetH+u0&uEIHUl}`b>tlo z%Z>YUdZ6%LP}u+9N-DGJ8o*Ewi6!0oj@73BpIu(Je|AHYf2f2ov2@-u5vhTmphw zvk7Iscz>pEgf zx~B%7U=9y~&SmxMZH-+6P{zCC_+}1Z5Y18btGc6{Hfgm{o!+V?8>Jf4^0*?dD*6uT z>(B4`6cROh;n3*G>@{-F3_yCqij~>eZpm&i@YKN4?81`HqYKy}5D3JFhfX*!7Nx;K z{CN}MCLcw=Mt_@6qV28d$)jj<>(^-O@slsGW!QW|n*pu!7@;Aet&Qk0LO^bS)4*F3 zZsIDsjuz3kXit}^+3q9a2!JYjt_7TGql|Uii(Y7n0-jsO=fRR*fQ8-HT2!1~L@!h{ z$Q0eZXLB=vOc6QB7QmG;%0@WmlpM; z+AWcjs`!f=g@dY_icbAQe4r1PusnzA9^*4aRbaUZmb+~bpGRGSedr>9u&yE)av(kd zMDCkUpnqQmu-2!D+-(pRcx2N<7hysiO%5FZzuALlomA|~XsTftx1)m>a1eNX0*^_H z0gnHAcj}6Lc+{7Ne;)X9A9NLgUwyHUyn6iG;fLcB|K^cv|IOjskH-h-^06yom#+AU zE0!)@`7f@VUAp35eX(}w-aK`0etY-v13C;M)_<}`Tk7X{boj}Y`Wf!;9r9y8x4#Y! zerHKACul=|W09W|y)=#wq+36u=kV@$`*H7eyy<6SOZ-Ik4_@r;vyz{|3;1aqynTC! zQXFHuRc}AOIeqnE5BUc6J{%q&BA)G5Fd1ldj!%!?@4Y}w+#?F+?Po`cH=kXxfrT$I ztbao9s~kefmw4;`4-)Y6C4PMW7a?SEOn$jnOdthwU*hfizp>ErC4O>$KOf*bZJZ_rK1=N5?fb2=Qis+*obyt8$O2omjYqur8^nbL9 zgbahl=w=PI0*N&ObFQ^u_AR;`gmyRgY&{H2u;Oy|!!d4xepE2{%U}^SeWpdnOUPaF zX{P7`uqKu)&^un!mp0cy2-vV=xsDli7=bJNFf~x|pKU&~<1nYg%6)Bd3Vk8UzF8Wf z43$W%JT7gnDf!q^RhM^y$UHO6FMlwH+1`Bo_?KTde%XFP*H_y>XI1;%wKlx+cy0}S zx!$hW(-1Im0Wp-CuTVv@u8h65f)<2|PWiVL3)6R`+S0sfVB9{k(cEq^VB?OtV6 zLJ!f|I?!m8?7@ZWTiwI(M|v1?4yK2#N8ubykih7iUK08sBj$jEGH{X@-`1n(mpDcW zQhCF5LLIY}g<{$Kh9e07hk&0_pcz+X0f*s|^FzK1U0}fa_IFn8on1dqE!y<5bvQo9 z9h^uQK9NTcwid=qV1L~}!hg;l#6vwsV?WUFeR;?h;jlBNV@?P!XcVs4*%PoZ)hYE| zsFSc&^a}QbL;bN9i?=4@F&N{HMvka<0hr>LPJ0S5!I1+qfdUX2l^w2F!dbh8iCf$i zC*B-hv}BiiRYiBIo!UZ^4;@YFBPL000X$}su6R7o4aP{&>@8EKX@5X?34Z?scR5U6 zV8vqBupuiLyqmjG*?5>2@w7JEi7#pwU^=n&7ytGZtl);T%Dx2GdHKvHL9JcVhk|GM zD!!1&ee=R*Y4Z6JZXWsdjZI{=bv>u^z&QFa(9tJCyn zq0H{i54Z06(gz=UKe#}|1!gpMt(l_Ap3ANh#G%kVuluXUxY0paYEy&5u>Xq_N753@ zM$Vd#0R?@yLpjNS^{&hZedVoUXZ^mqOKtbr_`{HXqLWl=^l5lyCuV7`MCB z=V}NiesAF$u61G(e)4__*4HtdAfqxQCLgR+;!B=!#_nus2rtAEL+lXaZf8c)Zk7)%p98a8|xQd4gA78AbgIXXn`dZE;mi3nGj~_Yo<$~ z%eXpwS3>6)**nc2&(IDp9LF0vI9MhzYs@X_4dvHJHQ|n*=HyWKHsGTZ6r0efI8Z z#L)i8t^}b}akqnwL_m!eBw7gl8V-)pZj;Zh9>A>Y7k@D6pa=R3M^DY4?UL03o98AB zow=$H3eLp&S(ibe-Qx}(OWn$qFIu1m)a16t0yP$>(Swlv|KM&S5=t;nNbsN3&eL<1 zY?bQZpQmj!2{mFcEwZxtyB+^6J2GO(oOZFD?qkG;hcHS&bb!yJFERfqW(=hd;!qM0 z4q-i7pMT95Ff_I~XN-mCp2I)TNi5F>8L(dPQ<+Q93{&ysOXtjxCGV}kez^tlkIWZ$ z&(%}13eofgYmx#HWC!badvmF$KT(nUw_H5vZ?^ykB;wKo=AQ-GBo@ayt; zeXC}67U&VN9j0gYQ4|XFT3+HOwp$B zOu|2q=kiY}9+W1aZ{}(>J##%TyF3E?@M-|Bklmgby%0A_oAUGyPg(7X;Z5S@54C+U51Mun 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 (9yTy<&8a{+SL@f)4w_exuZ#|L^!MK1^w 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 z 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Î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�Ya6z>x6?AI;^Z!brZG2w$LGz15M#!;gW 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

      ;5uT$i6Np~g1SL#7YH&4b!XGa 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 Jo$<;JEC9jO>b?K~ delta 593742 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ξ$kq~L5;2WifsUIV+h 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
      - <% } %>
      \ No newline at end of file + <% } %>
      \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html.gz b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html.gz index 4bf7eed64e9688f21b3bc78129958f407d009591..3daed0f4fd7697829b31a9570aa56336cf885398 100644 GIT binary patch delta 11170 zcmV;TD_zvIxB;}d0gxUZ_MDMPIwaAuIV;&7k(v`{CngxUG|9F=0D}fd@tl!7E&+Uz zYf2FtzRipIC_i{I1H{SU)9l~#k;Xm&AF~Aks}X-c^N14JZvO^>n|GBWPPk%?^P0nM zD~5N75tLAO9$!O$mV?C}sV{jKMYWfHg$uJs7Tv8oIiDbA^rX1dQ70;H?jW*Q7MzS9 zvt1mEz<96hp9fX#TrmoEN0E=a4%AkMO=Rw2bsem=GdzfB`EI71 zFKNyJuePPM#&n1CYVPD|MOw$8d;M}U!Zs}wfuvORF%o`35(R7qqGgG-I?EY`KAv;3 z$rQwlulTV<@(?2Rl3MwQ2vV>?M@45>pqqbui#r=IH&0CK04ycwig1W(x}Q4mG4uSn zn9UcxkqQ$ee){?;XW*5-WvBgwcV>VG+KfuVqmi}C1N`Ut^WI`KFTE&x+4})U-oM9( zOuq!#1rASYmy+?~b(zl+QGpl3?AiCPRYp{o1taVdFBxKhdS$-ONfz-+ZGK1JTtt7s z+K2*oLKaK4ivxgc9iKDAhwMWMO{9)*Ip!dRd%QOGK!Qu$8lsU0D!q7ICm~Bto@faN)Ta|2Tg|tNRI9qh2wC;Z4T8iwIX#H40<9b-BpCu81IK0$<-$0gS zj6gMFc&E7de(oHc@?(4Ggo_KBlo--J=3?3fwg;_0 znl+97G4i^|NuPDfMl@fXz=1yCRD*tLP`pT&PQ|-j$j?82f06T&cSGrwitgke=N)R4a=3T ziGW6Wx-$<18U>&iI>T1Ltt6+@(c{GbFXzW9a|p)U$g^90E+C+lWL zG{tX24HvSY*>_g7O*O%uaSE%VTrW|LF{(*W@X+H@sjpT7cbyR~tbxHvTrfk+NgE=e zWnlx-$_fJw(3SaoK)uY32L*%08GC64^df@$71ygpOVv=c6-|F4!j^d*Lz5IM!?sGZ z08yW%A7>*5!T)KI&u&z5`o6#+G`q2?md)l8K0~;2=acE4&LaA zxg#b(W^D`7ZT7ptNJ0Y_$&{jLvsaD$3;8j2JTN?d=`4~uW3k0}5482}gw1Fv{u z8-xP6ENci{fKwal2V!s;j0xhK=D;O8hH2B)mV}T>xTX#-X~d^iiRR5xj3Q#3&ho3r zt`jV8{{7F-?v z3a-`he`kM!oXsYen^A-%SCAx3U#gU~3G=~6mPvg!8QA&c7CVuSa{Ls2N54#HK)o8} zhZO8?9Gm4JXEFq9O%#fdcQcHJm?Y@ebnsq&(3Hb_C;CNr#51WsL1NHLja_@{_X06U zdYV@i45TnSbj`RZH^Wy;Sq{-mR0fxK@))(!BprV#R85Jw8m=bFOu%Zg%oMPrtcVSg z))CVyFd1?h$~^%ke_ekwnPXOelaHpJEdQb)n)OuI^^H!UZN3&dQ4o(|c`})dup!~u z!L6MV3aO(b{ygfCGpG^BEC(&<4K^&9M3zHNEkV_~$h3>0M2GlA6@7{Nj~y^3&daa5 zW1N41i+mq0X{mC~au2LCA%f53TRBSSh9X8GT4PptT_p@jS;-EE5@LiH2alePpn|z0 zOsOg4FsPnetKs{7yhO$LMoqS{ol%S>Kj9X=kkq`^2{uzqkf|V0YJ-k=RekvYfS)2| z+UCD(=GcU=mn9-tvBzVClX;^`u%)DZfP;Ui3N43n*E)D`A3P!kMqOP-!)fJ*_ge=K zx2b?*uLqB|sQ|^7IBiqq5v$;zE&725w3%%xJ(Py{?-nhgv|_hSCCRz;WHegd4(3N> zlwh1}XCm?^ESVRSD<+$RQ5jE*h<#Q}V=h1GF?7#_8?gO)JPRbDoJB|J8%1XgRp)=a zd_CovcCWA?%_&qH$=jBlNlue$X!t@Z5bo55g&Z=U6XzvI>p>S@x5&@lULz9F@TAaqAT8?YEe!SFb#vDr8T9=Qu@i zKNdk2O=K)um1Sptzjd&`-?TneOMZ-!A8%Ch)6pCr75=*kT$Tf9`Lj{^bAf-3e>W{n z=qO&t-HZCh5t8tO&4x&dR*3&+-UJY6@1_j)@07QhFU8luTO?TEWO8@M1R2UX->zh7 zGFci*<8YN(lM+|IpR?IHZhC^|~aWm!v7?Jg(tRdN|HLdx?_Lku{&6t1k(3# z#rO}BNSj-jy&rmS+f*X*S?9bs!}g@27$<+N@{N#IHIN5D5e~i`EEPKP(~{onZ7j zE?G03N51_AF-N1LG6L@+XJR?>G( z4D)E|QkR*kLdbufU<~UhJI)u_g~2#g*2J_AMp@`n^OgQNx|eRHsh0q>`Phk3Q5n3o z)5keTd3s!yIT{ZNAgm5Ku6lxtId(nCK#4O~ z+7B~_;HAn57ac!hWKgar`CH8yn6!@eqYQ=wt^XlspN)UGo=GVknZi;Qie6aJfXflK z5>75!2Shq2?dQx7hM0z} ziS$IGeVQubU6gQpPY?|<`W1q&5SMa(oKLX&OVb-(9Yz#J6>g% zpsiCf2IrXH0H)K_qrG&ZR%lWk9+`v&JIo=@A5H~;t#b#at<^|ycl1#4o{)r~8j7Ov z)T8>WH%0C--0BN)hGRL{#)gffMbdt_rqbG9=h%Px$3HfZ8&~`W=?_{5{CDfB&ylHD zTmc96Yikh4Zwe$t=H0&h)#lE{IvCyx_M7C!sH;cI*w5lB{tXc%N$9A|*JK9!IT$r1 zlQ8B{jxWc~*utj5Gj7sV27a$Lr-^%#s8u_&f;H*wZ)8oW16?t?5-_AX1Xe&&cM9A= z1@wQuiNlko=h&>87gJkSB06|HBNfr!>0h`IoLZ>D%E59s$<8IiJ$y;pf_p1IC5AHZ zw~`%|6KJfLy|=jbdz9$`D4yRl#R^Vc*gDi|!z}JpNFQ)hF(Y@2`^FujDq!fts6-&s zQlN=YRR|)e=64UT_$v{g;Zqag@h;&$sa`XGm5fj5FQwK~9us^I_F(IREV6as*HXE!b= z5I2%GL0k%ecoGuaOfR#Gn0S@=6t3J*jv(M>F~6A1B2iM6jdVKZI8@?vYFu4oU({Z;NMM;Ml;p{E65G z;)RVZqt6pqDhTF$*svO}nLN=*L-C@D22~buqsJ(x5*lVME8+lZ#El%yk))h%l6SHv*|S%#53?uVAGwdX z<{HO(a4H`1;5>)zgMh(?)bE=)RhH>`9H4N2F*kZ#F&yIPantmKE^aqWepl28Y5}_Z zd)3Q`8Yuww&1)UL%=Ya#ZOTIcLiRh${0*}`5ccg`MueL(lkrqLTuakMAFnd6f!cvZ z9wt=SJXF^@2){`+1eA-ra)P}CTw8~9{RkGJ>aHm<0oOu^ka4w#(S$1uFKev;YP%eN zT*|qy z4+*cAN+7X+j6Z!{Y1bVh79_IQQ*I$(cK*+!?_tJpS*=S8%oelyjOSVV1QP{+)p*Tz zp5f#lXBA|&$$gPAoJ^RL6c9A3kjcVk>Sb?SoMF$l^8>G35*SFo8!LeK;QAKpzZefj zykd#KXgKyERG8LT!0HW73(QPw7#A=#ql?T}_+M{??9mWwyc>#V`o+~Cpy5dpYN+U- z1o8btwvBOJf~}U5F|A(Zm%Ma;Uc{uv-jiCm90j(#NlSObqf7RY(noRwYqmNP5C?k} zQ;;GLZTQpS3AZ>Nq2=i=nde&27WQys&v3;KUetNaAT9S2LQdzaJcHy!pFIY4lJm~KtN!=D?;vRl6?O%G`{hn_Ai)u-Mi~Q+ zcmYXgWm=3QO)aX~Vhj{xt95|maOoZnSWQ7h-RU8`i-8GE4UO{!cIrmSDW-2HDNIjj z{jpra1xxA(9=lbtPNxH7-ef2DTVynVyx$MgLFN0sj0qha4O#jOj^N46I9Z=i?IjK> zbf%N*-3RyYjeVqloPf{gi`n?k=;400E5)S2UAKPx&OyAJb?uh{pGi&V?+$>z|M3eI z8-fh;2jt};R#`yjl1)Vy2g#r7hh2w>;&D|-@)S(1r0lC)Kg5MajO#>A3m;Lwv*br! zd~NPd2WzZysEhSi_cbFn{|x*Pd#MFbfrBc1-nO1|?qB+r?cvxj-1&E~22|cf=`wgl&#b7AMTa%yS zDp3<8I=(9ubU3p92p1o617&hq@$So~cPnRw2xA3=N?VR#L<^UHTtftzH>S-7{3eC2 zU}DOo$Vzj6clM(xyX(fDbD;BsV#|(VIz71m@N@U)UiR>=UnI2Oz$L7$;Z-<0qwk{5 z%{7UikQ*0S`_;!4O!RgS(CY@$r?AnMa;idh94K*cYwj19@!%ybnd>vJ;Ui2@&3B=d zVyrsZ%LQ)jgO=}a@Ou#Q&KZjQtL~ZGyl$LRrb?lI_4H27Dza9MiEqY(ZJGGrdx+_! zeNdwEdou7U76$aqSQtPoN=<}!=NcG3pUjQ{p~j{tyq<6*l{d71ZboG{E|7aQCWPTWo$cbO)>dUM4IJ@?2fHlgpJ@V zTsndx9kJp#C8=XSYSVOsN!moFw6)dzasu1yHi*&CXUL<35oqR-6@G$VH736hvImJ) zojkQciZ!X22ysSwt>#anG*ZKD{!F1={etI2-men>F;h}krJe@6q5;V!kyKHC z7aS!zrtp>6l|jci#v1}miML#%uD3+QH&U=y;_`E=D9+yRA(QWXf+R0$;86EqS`c+y z%Mh*7Kpfwy*N;I}l|y|6c!nFgjB^W2?>YOnG~^U?w1mVw=M1^`W;thWe0YxY4gDkx zx6DklWQ*z^smYqIKbBV_*QcE8Wm*Q6#+ZO2(dwM3+^VP6T=X#nJSoG+XudXZ@DI* zX0o=zwW-V9C;6vg z?`h-CWbKtjZ*f}Cw2?KHHZa0@K`wgfEphX0>9f&tL-DrdvbMRTLblQ2O44n>GRS~B z{NNlTjoco?EYZ%S6^XyVj5Rk=G8U2BU=3Gox6kPe=wtz`@*1)G(45wP$ZNH(D9c2I z!Hb&A0;vw@Z^p$OvN0!>(t>zW{mZT4x`8JdF&f;a8ZICTV<%zC5T&a_N zg}Bu%t3NOD(XgiF07%Mz4Hi_#VP=G)j9~~E($UvQ9l+D1iU_DlL*cUQziCXK)b2RL zA&Sgt2Q%Ad-R4vL8d# ziFTvg9W3T*)?jb1Qks3VtSIQT}iX~&2B5I0j?-;q!Zg*$je=;x_i}W zD4YEbQ6=~9cIFewd$IfQE^a4l-C-{88idxk+iO+cHupmK8)QJ6HGJippa_JtAWlgT zbOI~cj$EZ!Rj09k3+vOJPplqpP;8CRq1S&`2!kq=D~S_*Zy-p)4sr3GV3ca_3nYk> z_ki!#^`I@J1WQ}7dcbx;eXgKkpl#ONGie&m>V3sz%eK2p*W6$ zvkfc)1G$$W+Fe{}j3tpXQ00ZI9v>W7*T1is0&rDCXtXeE3N6j2g>^Q{9JMkb7xp}H z0L~I{+1_~?=BIk6&n|_V>Tqg~=_4!QfYlNTTQvnm?}e-B#@G+`sti=px==!Nh*jjU zTlzFW=j0WC78pEOb3L2NVP=x#>Y{8e`P*5AMbLQYcfBH zq?bH@Y)hUH6pk?P%Gq{TDay3xih)_BnLsi~j99xNCVkB8H>sYW9qfN@O>p;VYqO5XzQiA`8Y-0(QKKZ@u>|hksiTFj$UX1 zo6Qb?Or5=1ENa93Y=9ImWhrbsl+g^_zOo1Qdky&Ib4$?cBS3ni5p{<~T%YuoMnfUJ zsa89**?h8rQ{8g~8)|_%rg3c7u_!I6p;%=ee;|m0L+@jX4+Y^(O8JC*=##tUDF`6E zPyyr!M7WA94l6Q?lrQk5)5dWZj=SCW&OSeXnlSDv?3E&^suLyXLD>-stc1`Y)Y3tC zxMCDy(HtNC|0!ge7@VXo4s0X$AciUFJjNzEhXaImSndpqbh=2IvA#SVs^kl5OJ*S+ z4rfG5dM1ht9v^^GhIfbd9ERd9<_fq5Ntd@ZS;yC-c#6B*m}qZw>grQZ%g(Q2)ZOua zqm8kTmUVWhfln$XvWY{6{Vbg{&>|9cT(iw+j0BLFPjO9b6o$LvBk_&;xcy5M97&CesYK;}h?F(r`V|L{_6E2YbOMtX?V^EwsPa~b)6v7TG)~E2nh*70uWwim&>EtoAq1?%a<1}!#-b;Q z9Z4ek#L1v~)Y}|O-}7v;NF%bF=_-a-wSUeGmf`UKq%7%Q2j&c~9Gh0jvzBcGghmDq zp93q0cYdnbtBAYpRfW&>wKD^)O!62##6MLR&`B=CEg7dU;PO{=3o#hKnapu~wp?W` z;t-%?;tMVOq9}FXuna7n@5oqxnV;kS`Mku8bn*k83x@;^7*mjou@-7{nDv8LkC2R1 zI529-!^QrM%=k#ih^k@@I@;A*bbM=qTnFaOQE_Zns zZuaJ}>JnZ~UOIm#{pwsc>>&~58ml+;ilFsR_=1Z{mb-S|*VZ?2d3#oWJ$qxqHw1WZ zVbU)(#@&KxI^=SLei?*l#r<+;=kX3j5#`{1>tPE9b&#QcIm@yYcK)x&!mlVeig95d#X#it6&_vrtIk{dSaxr+nMD)(P9n}9KlR)1=-Z`Lw)MWi=k!i%#I~8J6H<6}E zo*ZAiZbAt%9_a|RTXUv=G_t>doPppsT$GX8%SW zKW)uaV`nX!K+%tDeFUb4vbaIArmCRq{ZfxW3~V`j_|DgeYdPE;w+oHm(-+Xl4r;ot zn0s2Fj^A1jfUU>0%+$oLTl^-SZG?VuJKt71LjWAR&YE9A#$SVf4ZqGpcH{ap+v#hu z_`s%kWst*cj^=XYd2qIP%+6R~A`|=2g*Hvi5hzD!!W zVw1)Fjn+tSQ~uL`mj9C1wcO<18_vz-UY*?w< zm!ruwG-tl<3>V1d3rA>nkp1f;-SxE*3+|G7r}zfL=YS|rfT%L~g#Kl=BhBnQMi?AE z`0gj}>}I%s6^0TvQQI5I0g1CVXFXCT5kq!|_8yvyNQc_716{A#5xt+zO>uojHYdiv zqI$SpqMb9`=e7Z41e@jX{%iwzipUUni#Gs1C}snOgjS)aTuXYnaY<&NG7l!F8=qb7 zz6d=%5Bxscxh(JQAkIw&%@HPT&du46Pdi2V74M;c(lJ5WySvc>Esaf?0Ca>QK_aL* zVts(QVTR%zc}J${qM*3};=b6070TQ?s-kpMj(4B#@I6| za;cKXXA4IA$S3SmSH4Bhf0-rPj*%!M}5GiBQn*CXj^8no<(!B0zIyw^QDTVA+Rt(A@M1sOfa7!E@#6;O=@hr$^TwA_X&MGgG+6o~s7}tiMNEi)B1LS4I6?Vj4FmjcSj8v-Oz~Ff7^Asr zAw$hAmojN9Ms(d;MpVOUwiMNmL$4i4vrj+G^zFJHAi=E@J9SdKtMk5{xH)k)K|nR) z#-p*X;uL)hbk&y-jrH9WTrX6d%c8pOn!Ugis58P|N~T#R;*@y{-0#TkH2w0-=hAzB zZK8@BDJ(GTA8RCtb>40}mt954&)i17xdmp1?4}5lg*BdAhEEh14q^3b&pcTN>gFZQ2CiG{Tk-2Z#8)6qdtf9U5!CUfZFndp0tTn{!J~lL8kpF=$`(A+yG!e#rxl*}#bNh^TOXx=kPdNq zk&iI{OqxVouU`)Sc$^)x3<>YJg96U)RthXl>0Fe@68xNKBpV|HsEQIU0K+=mfRTLQ zeT#v^2;I=p-*|FML%_Cye9P$3n--02^Zfy?3uz#OZ+DAkcxA!M-WX@>nILm{i?2}* zNqMc{EwwJQDnM;)zFOwsPn@@Zo8S@_>cEx_9IQg0bK!8CNyiG%Bwp~(ZA?1C+jh>` zJ-o66hE57AE@c8QNqFDM<8GH19Cvih8}{MBx$NpOfbybSJ#J$hR{4u9OXNu2Z=Lo> zy)kSLo2s~kWw0P$Is9Vr|K2$MZPewR+-b{@&wjS?4ww(te7)(f<+7fC(YrN|BUiX2 zB3>z$(Z@3J>lhtAeWy_`G3?=1o30JM|IyI9V*bsdA9XI=y^^kk%kWk?m+&63;2jdy zJbAC)vUQYSt4-BsxX&fM7j5Th13_V`Xm9#C)&#Y#Tlgwlb+{i{l)oGcul;I4<)BKp zmxS0>Dt^*BIJA4xLqSJ>QZXBLD+`w=cNG$Y*F?=ENcXb|q`0pHN)msunrng%#ov7&CAFZcAO(lKIr@ZL8V{fns;|9SFAxS4%Rwr`8xeUE|I`&+Ry@ z)b}VJ!nV5d+LAcX;=arVRpE)b=XS@}j>FbwrYaXPl?XyCO0Zu-2-u~(eqEJY`9j^E z{<71HkbXD@^>i_RpChoAiTk6Xr;?O|tI2(pm(JjJ#xju_ru#>47rp5sd4dQNk zuOvyEF*>Je6xy_^H{xxDz23pMF~8R2dO$-WQLW7*dI(>?;5r$6FmYJEMyo#=jS}!) zuhcO6w%)}76B-w^!H|oC?+vhW#z*ql$Q9Gsvc;3%r1v{Qv#0|6@aG^Mw|Uci$v{95rA>mQ2_cBt=vIa;_dze8&fFSKuQ?P`&OAHZ*BIg-_a%NUAG8tz= zRL09*vd!%}cZ_X@Us=~A-Zmn6g+Nay5NwwmG>P!lQP62B^wgs#?6-`;H}L1-Tx|0+ z&jfZ`YeQeciaXCUS0$eO>xjNi_D9{>l!H=tl8d^3PMC&X6}Xdp*BoRK{DDKkF+pO+ zMSRpa^(d4IGC3bJbc6?`^^<(ob)>kQ;(8%c7J=j^lk;<|=*Frs@T4w)$Gd-w%|6xX zf~(XOB6NFd2m38|^%@5TE$DTee?0!~TRD|Zc~#pitowWvYZKQtWrVL(TEz2D+y4fK zQ6cDmtSjb{I+E@xo9J(w_tA(76Tw7}B%7X9M6qn_ymZhKDx`Ev~ zcqQQzHPwP^X#zEWi#Temlj)J50M>o?a6t){_kg3NHGwNEvlOa)^)O}FJw!JpQ#1#- zdS-H2y^|@R>AriAFK;qJ#RN;?MpGu@ZxEdqnDM?VB_>|D(R=0^_G411hHXd42hIb3 zL(xiNbd4R{r^6y#5up@70YBQFkxV4TDuxt)na?jK!*~PF^Pup1gQDP&a4OP@e##hl zT;ir#iM@2m%(b(Ek1rl|RX(iiXjGo*J0`QLpcg1OpeEu!(=zrLwJN<{DtIgT({V2x zQhf+yHa9P(ytPz*v@hXF<0Nn*T2y0IH>%W3lPK#)}JYM^!7c1M`tSggC^=%7_>cfd#Oah%c(VXF7l9Hk^*Hnc=Q=@w^TG;=a#;hUycs`KV3vQjv9^u0I8Fa AYybcN delta 11170 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 AFaQ7m diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html index ec2e9bc4f881..22af93106396 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone.html @@ -2862,7 +2862,7 @@
      <%=_.escape(username) %> <% if (name !== ' ') { %>(<%
      - + diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/lib/jsoneditor-min.js b/js/apps/system/_admin/aardvark/APP/frontend/js/lib/jsoneditor-min.js index 16bbbe1691c6..d92a756403fd 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/lib/jsoneditor-min.js +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/lib/jsoneditor-min.js @@ -8,10 +8,6 @@ * Supported browsers: Chrome, Firefox, Safari, Opera, Internet Explorer 8+ * * @license - * This json editor is open sourced with the intention to use the editor as - * a component in your own application. Not to just copy and monetize the editor - * as it is. - * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy * of the License at @@ -24,22 +20,25 @@ * License for the specific language governing permissions and limitations under * the License. * - * Copyright (c) 2011-2013 Jos de Jong, http://jsoneditoronline.org + * Copyright (c) 2011-2015 Jos de Jong, http://jsoneditoronline.org * * @author Jos de Jong, - * @version 2.3.6 - * @date 2014-01-03 + * @version 4.2.1 + * @date 2015-06-13 */ -!function(){function e(t,i,o){if(!(this instanceof e))throw new Error('JSONEditor constructor called without "new".');var n=util.getInternetExplorerVersion();if(-1!=n&&9>n)throw new Error("Unsupported browser, IE9 or newer required. Please install the newest version of your browser.");arguments.length&&this._create(t,i,o)}function t(e,i,o){if(!(this instanceof t))throw new Error('TreeEditor constructor called without "new".');this._create(e,i,o)}function i(e,t,o){if(!(this instanceof i))throw new Error('TextEditor constructor called without "new".');this._create(e,t,o)}function o(e,t){this.editor=e,this.dom={},this.expanded=!1,t&&t instanceof Object?(this.setField(t.field,t.fieldEditable),this.setValue(t.value,t.type)):(this.setField(""),this.setValue(null))}function n(e){this.editor=e,this.dom={}}function s(e,t){function i(e,t,n){n.forEach(function(n){if("separator"==n.type){var s=document.createElement("div");s.className="separator",a=document.createElement("li"),a.appendChild(s),e.appendChild(a)}else{var r={},a=document.createElement("li");e.appendChild(a);var l=document.createElement("button");if(l.className=n.className,r.button=l,n.title&&(l.title=n.title),n.click&&(l.onclick=function(){o.hide(),n.click()}),a.appendChild(l),n.submenu){var d=document.createElement("div");d.className="icon",l.appendChild(d),l.appendChild(document.createTextNode(n.text));var h;if(n.click){l.className+=" default";var c=document.createElement("button");r.buttonExpand=c,c.className="expand",c.innerHTML='
      ',a.appendChild(c),n.submenuTitle&&(c.title=n.submenuTitle),h=c}else{var u=document.createElement("div");u.className="expand",l.appendChild(u),h=l}h.onclick=function(){o._onExpandItem(r),h.focus()};var p=[];r.subItems=p;var m=document.createElement("ul");r.ul=m,m.className="menu",m.style.height="0",a.appendChild(m),i(m,p,n.submenu)}else l.innerHTML='
      '+n.text;t.push(r)}})}this.dom={};var o=this,n=this.dom;this.anchor=void 0,this.items=e,this.eventListeners={},this.selection=void 0,this.visibleSubmenu=void 0,this.onClose=t?t.close:void 0;var s=document.createElement("div");s.className="jsoneditor-contextmenu",n.menu=s;var r=document.createElement("ul");r.className="menu",s.appendChild(r),n.list=r,n.items=[];var a=document.createElement("button");n.focusButton=a;var l=document.createElement("li");l.style.overflow="hidden",l.style.height="0",l.appendChild(a),r.appendChild(l),i(r,this.dom.items,e),this.maxHeight=0,e.forEach(function(t){var i=24*(e.length+(t.submenu?t.submenu.length:0));o.maxHeight=Math.max(o.maxHeight,i)})}function r(e){this.editor=e,this.clear(),this.actions={editField:{undo:function(e){e.node.updateField(e.oldValue)},redo:function(e){e.node.updateField(e.newValue)}},editValue:{undo:function(e){e.node.updateValue(e.oldValue)},redo:function(e){e.node.updateValue(e.newValue)}},appendNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.appendChild(e.node)}},insertBeforeNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.insertBefore(e.node,e.beforeNode)}},insertAfterNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.insertAfter(e.node,e.afterNode)}},removeNode:{undo:function(e){var t=e.parent,i=t.childs[e.index]||t.append;t.insertBefore(e.node,i)},redo:function(e){e.parent.removeChild(e.node)}},duplicateNode:{undo:function(e){e.parent.removeChild(e.clone)},redo:function(e){e.parent.insertAfter(e.clone,e.node)}},changeType:{undo:function(e){e.node.changeType(e.oldType)},redo:function(e){e.node.changeType(e.newType)}},moveNode:{undo:function(e){e.startParent.moveTo(e.node,e.startIndex)},redo:function(e){e.endParent.moveTo(e.node,e.endIndex)}},sort:{undo:function(e){var t=e.node;t.hideChilds(),t.sort=e.oldSort,t.childs=e.oldChilds,t.showChilds()},redo:function(e){var t=e.node;t.hideChilds(),t.sort=e.newSort,t.childs=e.newChilds,t.showChilds()}}}}function a(e,t,i){function o(t){e.setMode(t);var i=e.dom&&e.dom.modeBox;i&&i.focus()}for(var n={code:{text:"Code",title:"Switch to code highlighter",click:function(){o("code")}},form:{text:"Form",title:"Switch to form editor",click:function(){o("form")}},text:{text:"Text",title:"Switch to plain text editor",click:function(){o("text")}},tree:{text:"Tree",title:"Switch to tree editor",click:function(){o("tree")}},view:{text:"View",title:"Switch to tree view",click:function(){o("view")}}},r=[],a=0;ae&&i.scrollTop>0?(o+r-e)/3:e>s-r&&n+i.scrollTop3?(i.scrollTop+=n/3,o.animateCallback=t,o.animateTimeout=setTimeout(a,50)):(t&&t(!0),i.scrollTop=r,delete o.animateTimeout,delete o.animateCallback)};a()}else t&&t(!1)},t.prototype._createFrame=function(){this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.container.appendChild(this.frame);var e=this,t=function(t){e._onEvent(t)};this.frame.onclick=function(e){var i=e.target;t(e),"BUTTON"==i.nodeName&&e.preventDefault()},this.frame.oninput=t,this.frame.onchange=t,this.frame.onkeydown=t,this.frame.onkeyup=t,this.frame.oncut=t,this.frame.onpaste=t,this.frame.onmousedown=t,this.frame.onmouseup=t,this.frame.onmouseover=t,this.frame.onmouseout=t,util.addEventListener(this.frame,"focus",t,!0),util.addEventListener(this.frame,"blur",t,!0),this.frame.onfocusin=t,this.frame.onfocusout=t,this.menu=document.createElement("div"),this.menu.className="menu",this.frame.appendChild(this.menu);var i=document.createElement("button");i.className="expand-all",i.title="Expand all fields",i.onclick=function(){e.expandAll()},this.menu.appendChild(i);var o=document.createElement("button");if(o.title="Collapse all fields",o.className="collapse-all",o.onclick=function(){e.collapseAll()},this.menu.appendChild(o),this.history){var n=document.createElement("button");n.className="undo separator",n.title="Undo last action (Ctrl+Z)",n.onclick=function(){e._onUndo()},this.menu.appendChild(n),this.dom.undo=n;var s=document.createElement("button");s.className="redo",s.title="Redo (Ctrl+Shift+Z)",s.onclick=function(){e._onRedo()},this.menu.appendChild(s),this.dom.redo=s,this.history.onChange=function(){n.disabled=!e.history.canUndo(),s.disabled=!e.history.canRedo()},this.history.onChange()}if(this.options&&this.options.modes&&this.options.modes.length){var r=a(this,this.options.modes,this.options.mode);this.menu.appendChild(r),this.dom.modeBox=r}this.options.search&&(this.searchBox=new l(this,this.menu))},t.prototype._onUndo=function(){this.history&&(this.history.undo(),this.options.change&&this.options.change())},t.prototype._onRedo=function(){this.history&&(this.history.redo(),this.options.change&&this.options.change())},t.prototype._onEvent=function(e){var i=e.target;"keydown"==e.type&&this._onKeyDown(e),"focus"==e.type&&(t.domFocus=i);var n=o.getNodeFromTarget(i);n&&n.onEvent(e)},t.prototype._onKeyDown=function(e){var i=e.which||e.keyCode,o=e.ctrlKey,n=e.shiftKey,s=!1;if(9==i&&setTimeout(function(){util.selectContentEditable(t.domFocus)},0),this.searchBox)if(o&&70==i)this.searchBox.dom.search.focus(),this.searchBox.dom.search.select(),s=!0;else if(114==i||o&&71==i){var r=!0;n?this.searchBox.previous(r):this.searchBox.next(r),s=!0}this.history&&(o&&!n&&90==i?(this._onUndo(),s=!0):o&&n&&90==i&&(this._onRedo(),s=!0)),s&&(e.preventDefault(),e.stopPropagation())},t.prototype._createTable=function(){var e=document.createElement("div");e.className="outer",this.contentOuter=e,this.content=document.createElement("div"),this.content.className="tree",e.appendChild(this.content),this.table=document.createElement("table"),this.table.className="tree",this.content.appendChild(this.table);var t;this.colgroupContent=document.createElement("colgroup"),this.mode.edit&&(t=document.createElement("col"),t.width="24px",this.colgroupContent.appendChild(t)),t=document.createElement("col"),t.width="24px",this.colgroupContent.appendChild(t),t=document.createElement("col"),this.colgroupContent.appendChild(t),this.table.appendChild(this.colgroupContent),this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.frame.appendChild(e)},e.modes.tree={editor:t,data:"json"},e.modes.view={editor:t,data:"json"},e.modes.form={editor:t,data:"json"},e.modes.editor={editor:t,data:"json"},e.modes.viewer={editor:t,data:"json"},i.prototype._create=function(e,t,i){t=t||{},this.options=t,this.indentation=t.indentation?Number(t.indentation):2,this.mode="code"==t.mode?"code":"text","code"==this.mode&&"undefined"==typeof ace&&(this.mode="text",util.log("WARNING: Cannot load code editor, Ace library not loaded. Falling back to plain text editor"));var o=this;this.container=e,this.dom={},this.editor=void 0,this.textarea=void 0,this.width=e.clientWidth,this.height=e.clientHeight,this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.frame.onclick=function(e){e.preventDefault()},this.menu=document.createElement("div"),this.menu.className="menu",this.frame.appendChild(this.menu);var n=document.createElement("button");n.className="format",n.title="Format JSON data, with proper indentation and line feeds",this.menu.appendChild(n),n.onclick=function(){try{o.format()}catch(e){o._onError(e)}};var s=document.createElement("button");if(s.className="compact",s.title="Compact JSON data, remove all whitespaces",this.menu.appendChild(s),s.onclick=function(){try{o.compact()}catch(e){o._onError(e)}},this.options&&this.options.modes&&this.options.modes.length){var r=a(this,this.options.modes,this.options.mode);this.menu.appendChild(r),this.dom.modeBox=r}if(this.content=document.createElement("div"),this.content.className="outer",this.frame.appendChild(this.content),this.container.appendChild(this.frame),"code"==this.mode){this.editorDom=document.createElement("div"),this.editorDom.style.height="100%",this.editorDom.style.width="100%",this.content.appendChild(this.editorDom);var l=ace.edit(this.editorDom);l.setTheme("ace/theme/jsoneditor"), - - l.commands.addCommand({ - name: "replace", - bindKey: {win: "Ctrl-Return", mac: "Command-Return"}, - exec: function(editor) { - window.App.documentView.saveDocument(); - } - }) - - -,l.setShowPrintMargin(!1),l.setFontSize(16),l.getSession().setMode("ace/mode/json"),l.getSession().setUseSoftTabs(!0),l.getSession().setUseWrapMode(!0),this.editor=l;var d=document.createElement("a");d.appendChild(document.createTextNode("powered by ace")),d.href="http://ace.ajax.org",d.target="_blank",d.className="poweredBy",d.onclick=function(){window.open(d.href,d.target)},this.menu.appendChild(d),t.change&&l.on("change",function(){t.change()})}else{var h=document.createElement("textarea");h.className="text",h.spellcheck=!1,this.content.appendChild(h),this.textarea=h,t.change&&(null===this.textarea.oninput?this.textarea.oninput=function(){t.change()}:this.textarea.onchange=function(){t.change()})}"string"==typeof i?this.setText(i):this.set(i)},i.prototype._delete=function(){this.frame&&this.container&&this.frame.parentNode==this.container&&this.container.removeChild(this.frame)},i.prototype._onError=function(e){if("function"==typeof this.onError&&(util.log("WARNING: JSONEditor.onError is deprecated. Use options.error instead."),this.onError(e)),!this.options||"function"!=typeof this.options.error)throw e;this.options.error(e)},i.prototype.compact=function(){var e=util.parse(this.getText());this.setText(JSON.stringify(e))},i.prototype.format=function(){var e=util.parse(this.getText());this.setText(JSON.stringify(e,null,this.indentation))},i.prototype.focus=function(){this.textarea&&this.textarea.focus(),this.editor&&this.editor.focus()},i.prototype.resize=function(){if(this.editor){var e=!1;this.editor.resize(e)}},i.prototype.set=function(e){this.setText(JSON.stringify(e,null,this.indentation))},i.prototype.get=function(){return util.parse(this.getText())},i.prototype.getText=function(){return this.textarea?this.textarea.value:this.editor?this.editor.getValue():""},i.prototype.setText=function(e){this.textarea&&(this.textarea.value=e),this.editor&&this.editor.setValue(e,-1)},e.modes.text={editor:i,data:"text",load:i.prototype.format},e.modes.code={editor:i,data:"text",load:i.prototype.format},o.prototype.setParent=function(e){this.parent=e},o.prototype.setField=function(e,t){this.field=e,this.fieldEditable=1==t},o.prototype.getField=function(){return void 0===this.field&&this._getDomField(),this.field},o.prototype.setValue=function(e,t){var i,n,s=this.childs;if(s)for(;s.length;)this.removeChild(s[0]);if(this.type=this._getType(e),t&&t!=this.type){if("string"!=t||"auto"!=this.type)throw new Error('Type mismatch: cannot cast value of type "'+this.type+' to the specified type "'+t+'"');this.type=t}if("array"==this.type){this.childs=[];for(var r=0,a=e.length;a>r;r++)i=e[r],void 0===i||i instanceof Function||(n=new o(this.editor,{value:i}),this.appendChild(n));this.value=""}else if("object"==this.type){this.childs=[];for(var l in e)e.hasOwnProperty(l)&&(i=e[l],void 0===i||i instanceof Function||(n=new o(this.editor,{field:l,value:i}),this.appendChild(n)));this.value=""}else this.childs=void 0,this.value=e},o.prototype.getValue=function(){if("array"==this.type){var e=[];return this.childs.forEach(function(t){e.push(t.getValue())}),e}if("object"==this.type){var t={};return this.childs.forEach(function(e){t[e.getField()]=e.getValue()}),t}return void 0===this.value&&this._getDomValue(),this.value},o.prototype.getLevel=function(){return this.parent?this.parent.getLevel()+1:0},o.prototype.clone=function(){var e=new o(this.editor);if(e.type=this.type,e.field=this.field,e.fieldInnerText=this.fieldInnerText,e.fieldEditable=this.fieldEditable,e.value=this.value,e.valueInnerText=this.valueInnerText,e.expanded=this.expanded,this.childs){var t=[];this.childs.forEach(function(i){var o=i.clone();o.setParent(e),t.push(o)}),e.childs=t}else e.childs=void 0;return e},o.prototype.expand=function(e){this.childs&&(this.expanded=!0,this.dom.expand&&(this.dom.expand.className="expanded"),this.showChilds(),0!=e&&this.childs.forEach(function(t){t.expand(e)}))},o.prototype.collapse=function(e){this.childs&&(this.hideChilds(),0!=e&&this.childs.forEach(function(t){t.collapse(e)}),this.dom.expand&&(this.dom.expand.className="collapsed"),this.expanded=!1)},o.prototype.showChilds=function(){var e=this.childs;if(e&&this.expanded){var t=this.dom.tr,i=t?t.parentNode:void 0;if(i){var o=this.getAppend(),n=t.nextSibling;n?i.insertBefore(o,n):i.appendChild(o),this.childs.forEach(function(e){i.insertBefore(e.getDom(),o),e.showChilds()})}}},o.prototype.hide=function(){var e=this.dom.tr,t=e?e.parentNode:void 0;t&&t.removeChild(e),this.hideChilds()},o.prototype.hideChilds=function(){var e=this.childs;if(e&&this.expanded){var t=this.getAppend();t.parentNode&&t.parentNode.removeChild(t),this.childs.forEach(function(e){e.hide()})}},o.prototype.appendChild=function(e){if(this._hasChilds()){if(e.setParent(this),e.fieldEditable="object"==this.type,"array"==this.type&&(e.index=this.childs.length),this.childs.push(e),this.expanded){var t=e.getDom(),i=this.getAppend(),o=i?i.parentNode:void 0;i&&o&&o.insertBefore(t,i),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},o.prototype.moveBefore=function(e,t){if(this._hasChilds()){var i=this.dom.tr?this.dom.tr.parentNode:void 0;if(i){var o=document.createElement("tr");o.style.height=i.clientHeight+"px",i.appendChild(o)}e.parent&&e.parent.removeChild(e),t instanceof n?this.appendChild(e):this.insertBefore(e,t),i&&i.removeChild(o)}},o.prototype.moveTo=function(e,t){if(e.parent==this){var i=this.childs.indexOf(e);t>i&&t++}var o=this.childs[t]||this.append;this.moveBefore(e,o)},o.prototype.insertBefore=function(e,t){if(this._hasChilds()){if(t==this.append)e.setParent(this),e.fieldEditable="object"==this.type,this.childs.push(e);else{var i=this.childs.indexOf(t);if(-1==i)throw new Error("Node not found");e.setParent(this),e.fieldEditable="object"==this.type,this.childs.splice(i,0,e)}if(this.expanded){var o=e.getDom(),n=t.getDom(),s=n?n.parentNode:void 0;n&&s&&s.insertBefore(o,n),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},o.prototype.insertAfter=function(e,t){if(this._hasChilds()){var i=this.childs.indexOf(t),o=this.childs[i+1];o?this.insertBefore(e,o):this.appendChild(e)}},o.prototype.search=function(e){var t,i=[],o=e?e.toLowerCase():void 0;if(delete this.searchField,delete this.searchValue,void 0!=this.field){var n=String(this.field).toLowerCase();t=n.indexOf(o),-1!=t&&(this.searchField=!0,i.push({node:this,elem:"field"})),this._updateDomField()}if(this._hasChilds()){if(this.childs){var s=[];this.childs.forEach(function(t){s=s.concat(t.search(e))}),i=i.concat(s)}if(void 0!=o){var r=!1;0==s.length?this.collapse(r):this.expand(r)}}else{if(void 0!=this.value){var a=String(this.value).toLowerCase();t=a.indexOf(o),-1!=t&&(this.searchValue=!0,i.push({node:this,elem:"value"}))}this._updateDomValue()}return i},o.prototype.scrollTo=function(e){if(!this.dom.tr||!this.dom.tr.parentNode)for(var t=this.parent,i=!1;t;)t.expand(i),t=t.parent;this.dom.tr&&this.dom.tr.parentNode&&this.editor.scrollTo(this.dom.tr.offsetTop,e)},o.focusElement=void 0,o.prototype.focus=function(e){if(o.focusElement=e,this.dom.tr&&this.dom.tr.parentNode){var t=this.dom;switch(e){case"drag":t.drag?t.drag.focus():t.menu.focus();break;case"menu":t.menu.focus();break;case"expand":this._hasChilds()?t.expand.focus():t.field&&this.fieldEditable?(t.field.focus(),util.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),util.selectContentEditable(t.value)):t.menu.focus();break;case"field":t.field&&this.fieldEditable?(t.field.focus(),util.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),util.selectContentEditable(t.value)):this._hasChilds()?t.expand.focus():t.menu.focus();break;case"value":default:t.value&&!this._hasChilds()?(t.value.focus(),util.selectContentEditable(t.value)):t.field&&this.fieldEditable?(t.field.focus(),util.selectContentEditable(t.field)):this._hasChilds()?t.expand.focus():t.menu.focus()}}},o.select=function(e){setTimeout(function(){util.selectContentEditable(e)},0)},o.prototype.blur=function(){this._getDomValue(!1),this._getDomField(!1)},o.prototype._duplicate=function(e){var t=e.clone();return this.insertAfter(t,e),t},o.prototype.containsNode=function(e){if(this==e)return!0;var t=this.childs;if(t)for(var i=0,o=t.length;o>i;i++)if(t[i].containsNode(e))return!0;return!1},o.prototype._move=function(e,t){if(e!=t){if(e.containsNode(this))throw new Error("Cannot move a field into a child of itself");e.parent&&e.parent.removeChild(e);var i=e.clone();e.clearDom(),t?this.insertBefore(i,t):this.appendChild(i)}},o.prototype.removeChild=function(e){if(this.childs){var t=this.childs.indexOf(e);if(-1!=t){e.hide(),delete e.searchField,delete e.searchValue;var i=this.childs.splice(t,1)[0];return this.updateDom({updateIndexes:!0}),i}}return void 0},o.prototype._remove=function(e){this.removeChild(e)},o.prototype.changeType=function(e){var t=this.type;if(t!=e){if("string"!=e&&"auto"!=e||"string"!=t&&"auto"!=t){var i,o=this.dom.tr?this.dom.tr.parentNode:void 0;i=this.expanded?this.getAppend():this.getDom();var n=i&&i.parentNode?i.nextSibling:void 0;this.hide(),this.clearDom(),this.type=e,"object"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e){e.clearDom(),delete e.index,e.fieldEditable=!0,void 0==e.field&&(e.field="")}),("string"==t||"auto"==t)&&(this.expanded=!0)):"array"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),e.fieldEditable=!1,e.index=t}),("string"==t||"auto"==t)&&(this.expanded=!0)):this.expanded=!1,o&&(n?o.insertBefore(this.getDom(),n):o.appendChild(this.getDom())),this.showChilds()}else this.type=e;("auto"==e||"string"==e)&&(this.value="string"==e?String(this.value):this._stringCast(String(this.value)),this.focus()),this.updateDom({updateIndexes:!0})}},o.prototype._getDomValue=function(e){if(this.dom.value&&"array"!=this.type&&"object"!=this.type&&(this.valueInnerText=util.getInnerText(this.dom.value)),void 0!=this.valueInnerText)try{var t;if("string"==this.type)t=this._unescapeHTML(this.valueInnerText);else{var i=this._unescapeHTML(this.valueInnerText);t=this._stringCast(i)}if(t!==this.value){var o=this.value;this.value=t,this.editor._onAction("editValue",{node:this,oldValue:o,newValue:t,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(n){if(this.value=void 0,1!=e)throw n}},o.prototype._updateDomValue=function(){var e=this.dom.value;if(e){var t=this.value,i="auto"==this.type?util.type(t):this.type,o="string"==i&&util.isUrl(t),n="";n=o&&!this.editor.mode.edit?"":"string"==i?"green":"number"==i?"red":"boolean"==i?"darkorange":this._hasChilds()?"":null===t?"#004ED0":"black",e.style.color=n;var s=""==String(this.value)&&"array"!=this.type&&"object"!=this.type;if(s?util.addClassName(e,"empty"):util.removeClassName(e,"empty"),o?util.addClassName(e,"url"):util.removeClassName(e,"url"),"array"==i||"object"==i){var r=this.childs?this.childs.length:0;e.title=this.type+" containing "+r+" items"}else"string"==i&&util.isUrl(t)?this.editor.mode.edit&&(e.title="Ctrl+Click or Ctrl+Enter to open url in new window"):e.title="";this.searchValueActive?util.addClassName(e,"highlight-active"):util.removeClassName(e,"highlight-active"),this.searchValue?util.addClassName(e,"highlight"):util.removeClassName(e,"highlight"),util.stripFormatting(e)}},o.prototype._updateDomField=function(){var e=this.dom.field;if(e){var t=""==String(this.field)&&"array"!=this.parent.type;t?util.addClassName(e,"empty"):util.removeClassName(e,"empty"),this.searchFieldActive?util.addClassName(e,"highlight-active"):util.removeClassName(e,"highlight-active"),this.searchField?util.addClassName(e,"highlight"):util.removeClassName(e,"highlight"),util.stripFormatting(e)}},o.prototype._getDomField=function(e){if(this.dom.field&&this.fieldEditable&&(this.fieldInnerText=util.getInnerText(this.dom.field)),void 0!=this.fieldInnerText)try{var t=this._unescapeHTML(this.fieldInnerText);if(t!==this.field){var i=this.field;this.field=t,this.editor._onAction("editField",{node:this,oldValue:i,newValue:t,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(o){if(this.field=void 0,1!=e)throw o}},o.prototype.clearDom=function(){this.dom={}},o.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;if(e.tr=document.createElement("tr"),e.tr.node=this,this.editor.mode.edit){var t=document.createElement("td");if(this.parent){var i=document.createElement("button");e.drag=i,i.className="dragarea",i.title="Drag to move this field (Alt+Shift+Arrows)",t.appendChild(i)}e.tr.appendChild(t);var o=document.createElement("td"),n=document.createElement("button");e.menu=n,n.className="contextmenu",n.title="Click to open the actions menu (Ctrl+M)",o.appendChild(e.menu),e.tr.appendChild(o)}var s=document.createElement("td");return e.tr.appendChild(s),e.tree=this._createDomTree(),s.appendChild(e.tree),this.updateDom({updateIndexes:!0}),e.tr},o.prototype._onDragStart=function(e){var t=this;this.mousemove||(this.mousemove=util.addEventListener(document,"mousemove",function(e){t._onDrag(e)})),this.mouseup||(this.mouseup=util.addEventListener(document,"mouseup",function(e){t._onDragEnd(e)})),this.editor.highlighter.lock(),this.drag={oldCursor:document.body.style.cursor,startParent:this.parent,startIndex:this.parent.childs.indexOf(this),mouseX:e.pageX,level:this.getLevel()},document.body.style.cursor="move",e.preventDefault()},o.prototype._onDrag=function(e){var t,i,s,r,a,l,d,h,c,u,p,m,f,v,g=e.pageY,y=e.pageX,x=!1;if(t=this.dom.tr,c=util.getAbsoluteTop(t),m=t.offsetHeight,c>g){i=t;do i=i.previousSibling,d=o.getNodeFromTarget(i),u=i?util.getAbsoluteTop(i):0;while(i&&u>g);d&&!d.parent&&(d=void 0),d||(l=t.parentNode.firstChild,i=l?l.nextSibling:void 0,d=o.getNodeFromTarget(i),d==this&&(d=void 0)),d&&(i=d.dom.tr,u=i?util.getAbsoluteTop(i):0,g>u+m&&(d=void 0)),d&&(d.parent.moveBefore(this,d),x=!0)}else if(a=this.expanded&&this.append?this.append.getDom():this.dom.tr,r=a?a.nextSibling:void 0){p=util.getAbsoluteTop(r),s=r;do h=o.getNodeFromTarget(s),s&&(f=s.nextSibling?util.getAbsoluteTop(s.nextSibling):0,v=s?f-p:0,1==h.parent.childs.length&&h.parent.childs[0]==this&&(c+=23)),s=s.nextSibling;while(s&&g>c+v);if(h&&h.parent){var C=y-this.drag.mouseX,b=Math.round(C/24/2),N=this.drag.level+b,E=h.getLevel();for(i=h.dom.tr.previousSibling;N>E&&i;){if(d=o.getNodeFromTarget(i),d==this||d._isChildOf(this));else{if(!(d instanceof n))break;var _=d.parent.childs;if(!(_.length>1||1==_.length&&_[0]!=this))break;h=o.getNodeFromTarget(i),E=h.getLevel()}i=i.previousSibling}a.nextSibling!=h.dom.tr&&(h.parent.moveBefore(this,h),x=!0) -}}x&&(this.drag.mouseX=y,this.drag.level=this.getLevel()),this.editor.startAutoScroll(g),e.preventDefault()},o.prototype._onDragEnd=function(e){var t={node:this,startParent:this.drag.startParent,startIndex:this.drag.startIndex,endParent:this.parent,endIndex:this.parent.childs.indexOf(this)};(t.startParent!=t.endParent||t.startIndex!=t.endIndex)&&this.editor._onAction("moveNode",t),document.body.style.cursor=this.drag.oldCursor,this.editor.highlighter.unlock(),delete this.drag,this.mousemove&&(util.removeEventListener(document,"mousemove",this.mousemove),delete this.mousemove),this.mouseup&&(util.removeEventListener(document,"mouseup",this.mouseup),delete this.mouseup),this.editor.stopAutoScroll(),e.preventDefault()},o.prototype._isChildOf=function(e){for(var t=this.parent;t;){if(t==e)return!0;t=t.parent}return!1},o.prototype._createDomField=function(){return document.createElement("div")},o.prototype.setHighlight=function(e){this.dom.tr&&(this.dom.tr.className=e?"highlight":"",this.append&&this.append.setHighlight(e),this.childs&&this.childs.forEach(function(t){t.setHighlight(e)}))},o.prototype.updateValue=function(e){this.value=e,this.updateDom()},o.prototype.updateField=function(e){this.field=e,this.updateDom()},o.prototype.updateDom=function(e){var t=this.dom.tree;t&&(t.style.marginLeft=24*this.getLevel()+"px");var i=this.dom.field;if(i){1==this.fieldEditable?(i.contentEditable=this.editor.mode.edit,i.spellcheck=!1,i.className="field"):i.className="readonly";var o;o=void 0!=this.index?this.index:void 0!=this.field?this.field:this._hasChilds()?this.type:"",i.innerHTML=this._escapeHTML(o)}var n=this.dom.value;if(n){var s=this.childs?this.childs.length:0;n.innerHTML="array"==this.type?"["+s+"]":"object"==this.type?"{"+s+"}":this._escapeHTML(this.value)}this._updateDomField(),this._updateDomValue(),e&&1==e.updateIndexes&&this._updateDomIndexes(),e&&1==e.recurse&&this.childs&&this.childs.forEach(function(t){t.updateDom(e)}),this.append&&this.append.updateDom()},o.prototype._updateDomIndexes=function(){var e=this.dom.value,t=this.childs;e&&t&&("array"==this.type?t.forEach(function(e,t){e.index=t;var i=e.dom.field;i&&(i.innerHTML=t)}):"object"==this.type&&t.forEach(function(e){void 0!=e.index&&(delete e.index,void 0==e.field&&(e.field=""))}))},o.prototype._createDomValue=function(){var e;return"array"==this.type?(e=document.createElement("div"),e.className="readonly",e.innerHTML="[...]"):"object"==this.type?(e=document.createElement("div"),e.className="readonly",e.innerHTML="{...}"):!this.editor.mode.edit&&util.isUrl(this.value)?(e=document.createElement("a"),e.className="value",e.href=this.value,e.target="_blank",e.innerHTML=this._escapeHTML(this.value)):(e=document.createElement("div"),e.contentEditable=!this.editor.mode.view,e.spellcheck=!1,e.className="value",e.innerHTML=this._escapeHTML(this.value)),e},o.prototype._createDomExpandButton=function(){var e=document.createElement("button");return this._hasChilds()?(e.className=this.expanded?"expanded":"collapsed",e.title="Click to expand/collapse this field (Ctrl+E). \nCtrl+Click to expand/collapse including all childs."):(e.className="invisible",e.title=""),e},o.prototype._createDomTree=function(){var e=this.dom,t=document.createElement("table"),i=document.createElement("tbody");t.style.borderCollapse="collapse",t.className="values",t.appendChild(i);var o=document.createElement("tr");i.appendChild(o);var n=document.createElement("td");n.className="tree",o.appendChild(n),e.expand=this._createDomExpandButton(),n.appendChild(e.expand),e.tdExpand=n;var s=document.createElement("td");s.className="tree",o.appendChild(s),e.field=this._createDomField(),s.appendChild(e.field),e.tdField=s;var r=document.createElement("td");r.className="tree",o.appendChild(r),"object"!=this.type&&"array"!=this.type&&(r.appendChild(document.createTextNode(":")),r.className="separator"),e.tdSeparator=r;var a=document.createElement("td");return a.className="tree",o.appendChild(a),e.value=this._createDomValue(),a.appendChild(e.value),e.tdValue=a,t},o.prototype.onEvent=function(e){var t,i=e.type,o=e.target||e.srcElement,n=this.dom,s=this,r=this._hasChilds();if((o==n.drag||o==n.menu)&&("mouseover"==i?this.editor.highlighter.highlight(this):"mouseout"==i&&this.editor.highlighter.unhighlight()),"mousedown"==i&&o==n.drag&&this._onDragStart(e),"click"==i&&o==n.menu){var a=s.editor.highlighter;a.highlight(s),a.lock(),util.addClassName(n.menu,"selected"),this.showContextMenu(n.menu,function(){util.removeClassName(n.menu,"selected"),a.unlock(),a.unhighlight()})}if("click"==i&&o==n.expand&&r){var l=e.ctrlKey;this._onExpand(l)}var d=n.value;if(o==d)switch(i){case"focus":t=this;break;case"blur":case"change":this._getDomValue(!0),this._updateDomValue(),this.value&&(d.innerHTML=this._escapeHTML(this.value));break;case"input":this._getDomValue(!0),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"click":e.ctrlKey&&this.editor.mode.edit&&util.isUrl(this.value)&&window.open(this.value,"_blank");break;case"keyup":this._getDomValue(!0),this._updateDomValue();break;case"cut":case"paste":setTimeout(function(){s._getDomValue(!0),s._updateDomValue()},1)}var h=n.field;if(o==h)switch(i){case"focus":t=this;break;case"blur":case"change":this._getDomField(!0),this._updateDomField(),this.field&&(h.innerHTML=this._escapeHTML(this.field));break;case"input":this._getDomField(!0),this._updateDomField();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"keyup":this._getDomField(!0),this._updateDomField();break;case"cut":case"paste":setTimeout(function(){s._getDomField(!0),s._updateDomField()},1)}var c=n.tree;if(o==c.parentNode)switch(i){case"click":var u=void 0!=e.offsetX?e.offsetX<24*(this.getLevel()+1):e.pageXo[i]?t:e[i]/g,">").replace(/ /g,"  ").replace(/^ /," ").replace(/ $/," "),i=JSON.stringify(t);return i.substring(1,i.length-1)},o.prototype._unescapeHTML=function(e){var t='"'+this._escapeJSON(e)+'"',i=util.parse(t);return i.replace(/</g,"<").replace(/>/g,">").replace(/ |\u00A0/g," ")},o.prototype._escapeJSON=function(e){for(var t="",i=0,o=e.length;o>i;){var n=e.charAt(i);"\n"==n?t+="\\n":"\\"==n?(t+=n,i++,n=e.charAt(i),-1=='"\\/bfnrtu'.indexOf(n)&&(t+="\\"),t+=n):t+='"'==n?'\\"':n,i++}return t},n.prototype=new o,n.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;var t=document.createElement("tr");if(t.node=this,e.tr=t,this.editor.mode.edit){e.tdDrag=document.createElement("td");var i=document.createElement("td");e.tdMenu=i;var o=document.createElement("button");o.className="contextmenu",o.title="Click to open the actions menu (Ctrl+M)",e.menu=o,i.appendChild(e.menu)}var n=document.createElement("td"),s=document.createElement("div");return s.innerHTML="(empty)",s.className="readonly",n.appendChild(s),e.td=n,e.text=s,this.updateDom(),t},n.prototype.updateDom=function(){var e=this.dom,t=e.td;t&&(t.style.paddingLeft=24*this.getLevel()+26+"px");var i=e.text;i&&(i.innerHTML="(empty "+this.parent.type+")");var o=e.tr;this.isVisible()?e.tr.firstChild||(e.tdDrag&&o.appendChild(e.tdDrag),e.tdMenu&&o.appendChild(e.tdMenu),o.appendChild(t)):e.tr.firstChild&&(e.tdDrag&&o.removeChild(e.tdDrag),e.tdMenu&&o.removeChild(e.tdMenu),o.removeChild(t))},n.prototype.isVisible=function(){return 0==this.parent.childs.length},n.prototype.showContextMenu=function(e,t){var i=this,n=o.TYPE_TITLES,r=[{text:"Append",title:"Append a new field with type 'auto' (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"insert",click:function(){i._onAppend("","","auto")},submenu:[{text:"Auto",className:"type-auto",title:n.auto,click:function(){i._onAppend("","","auto")}},{text:"Array",className:"type-array",title:n.array,click:function(){i._onAppend("",[])}},{text:"Object",className:"type-object",title:n.object,click:function(){i._onAppend("",{})}},{text:"String",className:"type-string",title:n.string,click:function(){i._onAppend("","","string")}}]}],a=new s(r,{close:t});a.show(e)},n.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,o=this.dom,n=o.menu;if(i==n&&("mouseover"==t?this.editor.highlighter.highlight(this.parent):"mouseout"==t&&this.editor.highlighter.unhighlight()),"click"==t&&i==o.menu){var s=this.editor.highlighter;s.highlight(this.parent),s.lock(),util.addClassName(o.menu,"selected"),this.showContextMenu(o.menu,function(){util.removeClassName(o.menu,"selected"),s.unlock(),s.unhighlight()})}"keydown"==t&&this.onKeyDown(e)},s.prototype._getVisibleButtons=function(){var e=[],t=this;return this.dom.items.forEach(function(i){e.push(i.button),i.buttonExpand&&e.push(i.buttonExpand),i.subItems&&i==t.expandedItem&&i.subItems.forEach(function(t){e.push(t.button),t.buttonExpand&&e.push(t.buttonExpand)})}),e},s.visibleMenu=void 0,s.prototype.show=function(e){this.hide();var t=window.innerHeight,i=window.pageYOffset||document.scrollTop||0,o=t+i,n=e.offsetHeight,r=this.maxHeight,a=util.getAbsoluteLeft(e),l=util.getAbsoluteTop(e);o>l+n+r?(this.dom.menu.style.left=a+"px",this.dom.menu.style.top=l+n+"px",this.dom.menu.style.bottom=""):(this.dom.menu.style.left=a+"px",this.dom.menu.style.top="",this.dom.menu.style.bottom=t-l+"px"),document.body.appendChild(this.dom.menu);var d=this,h=this.dom.list;this.eventListeners.mousedown=util.addEventListener(document,"mousedown",function(e){var t=e.target;t==h||d._isChildOf(t,h)||(d.hide(),e.stopPropagation(),e.preventDefault())}),this.eventListeners.mousewheel=util.addEventListener(document,"mousewheel",function(e){e.stopPropagation(),e.preventDefault()}),this.eventListeners.keydown=util.addEventListener(document,"keydown",function(e){d._onKeyDown(e)}),this.selection=util.getSelection(),this.anchor=e,setTimeout(function(){d.dom.focusButton.focus()},0),s.visibleMenu&&s.visibleMenu.hide(),s.visibleMenu=this},s.prototype.hide=function(){this.dom.menu.parentNode&&(this.dom.menu.parentNode.removeChild(this.dom.menu),this.onClose&&this.onClose());for(var e in this.eventListeners)if(this.eventListeners.hasOwnProperty(e)){var t=this.eventListeners[e];t&&util.removeEventListener(document,e,t),delete this.eventListeners[e]}s.visibleMenu==this&&(s.visibleMenu=void 0)},s.prototype._onExpandItem=function(e){var t=this,i=e==this.expandedItem,o=this.expandedItem;if(o&&(o.ul.style.height="0",o.ul.style.padding="",setTimeout(function(){t.expandedItem!=o&&(o.ul.style.display="",util.removeClassName(o.ul.parentNode,"selected"))},300),this.expandedItem=void 0),!i){var n=e.ul;n.style.display="block";{n.clientHeight}setTimeout(function(){t.expandedItem==e&&(n.style.height=24*n.childNodes.length+"px",n.style.padding="5px 10px")},0),util.addClassName(n.parentNode,"selected"),this.expandedItem=e}},s.prototype._onKeyDown=function(e){var t,i,o,n,s=e.target,r=e.which,a=!1;27==r?(this.selection&&util.setSelection(this.selection),this.anchor&&this.anchor.focus(),this.hide(),a=!0):9==r?e.shiftKey?(t=this._getVisibleButtons(),i=t.indexOf(s),0==i&&(t[t.length-1].focus(),a=!0)):(t=this._getVisibleButtons(),i=t.indexOf(s),i==t.length-1&&(t[0].focus(),a=!0)):37==r?("expand"==s.className&&(t=this._getVisibleButtons(),i=t.indexOf(s),o=t[i-1],o&&o.focus()),a=!0):38==r?(t=this._getVisibleButtons(),i=t.indexOf(s),o=t[i-1],o&&"expand"==o.className&&(o=t[i-2]),o||(o=t[t.length-1]),o&&o.focus(),a=!0):39==r?(t=this._getVisibleButtons(),i=t.indexOf(s),n=t[i+1],n&&"expand"==n.className&&n.focus(),a=!0):40==r&&(t=this._getVisibleButtons(),i=t.indexOf(s),n=t[i+1],n&&"expand"==n.className&&(n=t[i+2]),n||(n=t[0]),n&&(n.focus(),a=!0),a=!0),a&&(e.stopPropagation(),e.preventDefault())},s.prototype._isChildOf=function(e,t){for(var i=e.parentNode;i;){if(i==t)return!0;i=i.parentNode}return!1},r.prototype.onChange=function(){},r.prototype.add=function(e,t){this.index++,this.history[this.index]={action:e,params:t,timestamp:new Date},this.index=0},r.prototype.canRedo=function(){return this.indexthis.results.length-1&&(t=0),this._setActiveResult(t,e)}},l.prototype.previous=function(e){if(void 0!=this.results){var t=this.results.length-1,i=void 0!=this.resultIndex?this.resultIndex-1:t;0>i&&(i=t),this._setActiveResult(i,e)}},l.prototype._setActiveResult=function(e,t){if(this.activeResult){var i=this.activeResult.node,o=this.activeResult.elem;"field"==o?delete i.searchFieldActive:delete i.searchValueActive,i.updateDom()}if(!this.results||!this.results[e])return this.resultIndex=void 0,this.activeResult=void 0,void 0;this.resultIndex=e;var n=this.results[this.resultIndex].node,s=this.results[this.resultIndex].elem;"field"==s?n.searchFieldActive=!0:n.searchValueActive=!0,this.activeResult=this.results[this.resultIndex],n.updateDom(),n.scrollTo(function(){t&&n.focus(s)})},l.prototype._clearDelay=function(){void 0!=this.timeout&&(clearTimeout(this.timeout),delete this.timeout)},l.prototype._onDelayedSearch=function(){this._clearDelay();var e=this;this.timeout=setTimeout(function(t){e._onSearch(t)},this.delay)},l.prototype._onSearch=function(e,t){this._clearDelay();var i=this.dom.search.value,o=i.length>0?i:void 0;if(o!=this.lastText||t)if(this.lastText=o,this.results=this.editor.search(o),this._setActiveResult(void 0),void 0!=o){var n=this.results.length;switch(n){case 0:this.dom.results.innerHTML="no results";break;case 1:this.dom.results.innerHTML="1 result";break;default:this.dom.results.innerHTML=n+" results"}}else this.dom.results.innerHTML=""},l.prototype._onKeyDown=function(e){var t=e.which;27==t?(this.dom.search.value="",this._onSearch(e),e.preventDefault(),e.stopPropagation()):13==t&&(e.ctrlKey?this._onSearch(e,!0):e.shiftKey?this.previous():this.next(),e.preventDefault(),e.stopPropagation())},l.prototype._onKeyUp=function(e){var t=e.keyCode;27!=t&&13!=t&&this._onDelayedSearch(e)},d.prototype.highlight=function(e){this.locked||(this.node!=e&&(this.node&&this.node.setHighlight(!1),this.node=e,this.node.setHighlight(!0)),this._cancelUnhighlight())},d.prototype.unhighlight=function(){if(!this.locked){var e=this;this.node&&(this._cancelUnhighlight(),this.unhighlightTimer=setTimeout(function(){e.node.setHighlight(!1),e.node=void 0,e.unhighlightTimer=void 0},0))}},d.prototype._cancelUnhighlight=function(){this.unhighlightTimer&&(clearTimeout(this.unhighlightTimer),this.unhighlightTimer=void 0)},d.prototype.lock=function(){this.locked=!0},d.prototype.unlock=function(){this.locked=!1},util={},util.parse=function(e){try{return JSON.parse(e)}catch(t){throw util.validate(e),t}},util.validate=function(e){"undefined"!=typeof jsonlint?jsonlint.parse(e):JSON.parse(e)},util.extend=function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);return e},util.clear=function(e){for(var t in e)e.hasOwnProperty(t)&&delete e[t];return e},util.log=function(){"undefined"!=typeof console&&"function"==typeof console.log&&console.log.apply(console,arguments)},util.type=function(e){return null===e?"null":void 0===e?"undefined":e instanceof Number||"number"==typeof e?"number":e instanceof String||"string"==typeof e?"string":e instanceof Boolean||"boolean"==typeof e?"boolean":e instanceof RegExp||"regexp"==typeof e?"regexp":Array.isArray(e)?"array":"object"};var h=/^https?:\/\/\S+$/;util.isUrl=function(e){return("string"==typeof e||e instanceof String)&&h.test(e)},util.getAbsoluteLeft=function(e){var t=e.getBoundingClientRect();return t.left+window.pageXOffset||document.scrollLeft||0},util.getAbsoluteTop=function(e){var t=e.getBoundingClientRect();return t.top+window.pageYOffset||document.scrollTop||0},util.addClassName=function(e,t){var i=e.className.split(" ");-1==i.indexOf(t)&&(i.push(t),e.className=i.join(" "))},util.removeClassName=function(e,t){var i=e.className.split(" "),o=i.indexOf(t);-1!=o&&(i.splice(o,1),e.className=i.join(" "))},util.stripFormatting=function(e){for(var t=e.childNodes,i=0,o=t.length;o>i;i++){var n=t[i];n.style&&n.removeAttribute("style");var s=n.attributes;if(s)for(var r=s.length-1;r>=0;r--){var a=s[r];1==a.specified&&n.removeAttribute(a.name)}util.stripFormatting(n)}},util.setEndOfContentEditable=function(e){var t,i;document.createRange&&(t=document.createRange(),t.selectNodeContents(e),t.collapse(!1),i=window.getSelection(),i.removeAllRanges(),i.addRange(t))},util.selectContentEditable=function(e){if(e&&"DIV"==e.nodeName){var t,i;window.getSelection&&document.createRange&&(i=document.createRange(),i.selectNodeContents(e),t=window.getSelection(),t.removeAllRanges(),t.addRange(i))}},util.getSelection=function(){if(window.getSelection){var e=window.getSelection();if(e.getRangeAt&&e.rangeCount)return e.getRangeAt(0)}return null},util.setSelection=function(e){if(e&&window.getSelection){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)}},util.getSelectionOffset=function(){var e=util.getSelection();return e&&"startOffset"in e&&"endOffset"in e&&e.startContainer&&e.startContainer==e.endContainer?{startOffset:e.startOffset,endOffset:e.endOffset,container:e.startContainer.parentNode}:null},util.setSelectionOffset=function(e){if(document.createRange&&window.getSelection){var t=window.getSelection();if(t){var i=document.createRange();i.setStart(e.container.firstChild,e.startOffset),i.setEnd(e.container.firstChild,e.endOffset),util.setSelection(i)}}},util.getInnerText=function(e,t){var i=void 0==t;if(i&&(t={text:"",flush:function(){var e=this.text;return this.text="",e},set:function(e){this.text=e}}),e.nodeValue)return t.flush()+e.nodeValue;if(e.hasChildNodes()){for(var o=e.childNodes,n="",s=0,r=o.length;r>s;s++){var a=o[s];if("DIV"==a.nodeName||"P"==a.nodeName){var l=o[s-1],d=l?l.nodeName:void 0;d&&"DIV"!=d&&"P"!=d&&"BR"!=d&&(n+="\n",t.flush()),n+=util.getInnerText(a,t),t.set("\n")}else"BR"==a.nodeName?(n+=t.flush(),t.set("\n")):n+=util.getInnerText(a,t)}return n}return"P"==e.nodeName&&-1!=util.getInternetExplorerVersion()?t.flush():""},util.getInternetExplorerVersion=function(){if(-1==c){var e=-1;if("Microsoft Internet Explorer"==navigator.appName){var t=navigator.userAgent,i=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");null!=i.exec(t)&&(e=parseFloat(RegExp.$1))}c=e}return c},util.isFirefox=function(){return-1!=navigator.userAgent.indexOf("Firefox")};var c=-1;util.addEventListener=function(e,t,i,o){if(e.addEventListener)return void 0===o&&(o=!1),"mousewheel"===t&&util.isFirefox()&&(t="DOMMouseScroll"),e.addEventListener(t,i,o),i;if(e.attachEvent){var n=function(){return i.call(e,window.event)};return e.attachEvent("on"+t,n),n}},util.removeEventListener=function(e,t,i,o){e.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===t&&util.isFirefox()&&(t="DOMMouseScroll"),e.removeEventListener(t,i,o)):e.detachEvent&&e.detachEvent("on"+t,i)};var u={JSONEditor:e,JSONFormatter:function(){throw new Error('JSONFormatter is deprecated. Use JSONEditor with mode "text" or "code" instead')},util:util},p=function(){for(var e=document.getElementsByTagName("script"),t=0;to)throw new Error("Unsupported browser, IE9 or newer required. Please install the newest version of your browser.");arguments.length&&this._create(e,t,i)}var o=i(1),r=i(2),s=i(3);n.modes={},n.prototype._create=function(e,t,i){this.container=e,this.options=t||{},this.json=i||{};var n=this.options.mode||"tree";this.setMode(n)},n.prototype._delete=function(){},n.prototype.set=function(e){this.json=e},n.prototype.get=function(){return this.json},n.prototype.setText=function(e){this.json=s.parse(e)},n.prototype.getText=function(){return JSON.stringify(this.json)},n.prototype.setName=function(e){this.options||(this.options={}),this.options.name=e},n.prototype.getName=function(){return this.options&&this.options.name},n.prototype.setMode=function(e){var t,i,o=this.container,r=s.extend({},this.options);r.mode=e;var a=n.modes[e];if(!a)throw new Error('Unknown mode "'+r.mode+'"');try{var l="text"==a.data;if(i=this.getName(),t=this[l?"getText":"get"](),this._delete(),s.clear(this),s.extend(this,a.mixin),this.create(o,r),this.setName(i),this[l?"setText":"set"](t),"function"==typeof a.load)try{a.load.call(this)}catch(c){}}catch(c){this._onError(c)}},n.prototype._onError=function(e){if("function"==typeof this.onError&&(s.log("WARNING: JSONEditor.onError is deprecated. Use options.error instead."),this.onError(e)),!this.options||"function"!=typeof this.options.error)throw e;this.options.error(e)},n.registerMode=function(e){var t,i;if(s.isArray(e))for(t=0;te&&i.scrollTop>0?this.autoScrollStep=(n+s-e)/3:e>r-s&&o+i.scrollTop3?(i.scrollTop+=o/3,n.animateCallback=t,n.animateTimeout=setTimeout(a,50)):(t&&t(!0),i.scrollTop=s,delete n.animateTimeout,delete n.animateCallback)};a()}else t&&t(!1)},c._createFrame=function(){function e(e){t._onEvent(e)}this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.container.appendChild(this.frame);var t=this;this.frame.onclick=function(t){var i=t.target;e(t),"BUTTON"==i.nodeName&&t.preventDefault()},this.frame.oninput=e,this.frame.onchange=e,this.frame.onkeydown=e,this.frame.onkeyup=e,this.frame.oncut=e,this.frame.onpaste=e,this.frame.onmousedown=e,this.frame.onmouseup=e,this.frame.onmouseover=e,this.frame.onmouseout=e,l.addEventListener(this.frame,"focus",e,!0),l.addEventListener(this.frame,"blur",e,!0),this.frame.onfocusin=e,this.frame.onfocusout=e,this.menu=document.createElement("div"),this.menu.className="menu",this.frame.appendChild(this.menu);var i=document.createElement("button");i.className="expand-all",i.title="Expand all fields",i.onclick=function(){t.expandAll()},this.menu.appendChild(i);var n=document.createElement("button");if(n.title="Collapse all fields",n.className="collapse-all",n.onclick=function(){t.collapseAll()},this.menu.appendChild(n),this.history){var o=document.createElement("button");o.className="undo separator",o.title="Undo last action (Ctrl+Z)",o.onclick=function(){t._onUndo()},this.menu.appendChild(o),this.dom.undo=o;var s=document.createElement("button");s.className="redo",s.title="Redo (Ctrl+Shift+Z)",s.onclick=function(){t._onRedo()},this.menu.appendChild(s),this.dom.redo=s,this.history.onChange=function(){o.disabled=!t.history.canUndo(),s.disabled=!t.history.canRedo()},this.history.onChange()}if(this.options&&this.options.modes&&this.options.modes.length){var c=a.create(this,this.options.modes,this.options.mode);this.menu.appendChild(c),this.dom.modeBox=c}this.options.search&&(this.searchBox=new r(this,this.menu))},c._onUndo=function(){this.history&&(this.history.undo(),this.options.change&&this.options.change())},c._onRedo=function(){this.history&&(this.history.redo(),this.options.change&&this.options.change())},c._onEvent=function(e){var t=e.target;"keydown"==e.type&&this._onKeyDown(e),"focus"==e.type&&(u=t);var i=s.getNodeFromTarget(t);i&&i.onEvent(e)},c._onKeyDown=function(e){var t=e.which||e.keyCode,i=e.ctrlKey,n=e.shiftKey,o=!1;if(9==t&&setTimeout(function(){l.selectContentEditable(u)},0),this.searchBox)if(i&&70==t)this.searchBox.dom.search.focus(),this.searchBox.dom.search.select(),o=!0;else if(114==t||i&&71==t){var r=!0;n?this.searchBox.previous(r):this.searchBox.next(r),o=!0}this.history&&(i&&!n&&90==t?(this._onUndo(),o=!0):i&&n&&90==t&&(this._onRedo(),o=!0)),o&&(e.preventDefault(),e.stopPropagation())},c._createTable=function(){var e=document.createElement("div");e.className="outer",this.contentOuter=e,this.content=document.createElement("div"),this.content.className="tree",e.appendChild(this.content),this.table=document.createElement("table"),this.table.className="tree",this.content.appendChild(this.table);var t;this.colgroupContent=document.createElement("colgroup"),"tree"===this.options.mode&&(t=document.createElement("col"),t.width="24px",this.colgroupContent.appendChild(t)),t=document.createElement("col"),t.width="24px",this.colgroupContent.appendChild(t),t=document.createElement("col"),this.colgroupContent.appendChild(t),this.table.appendChild(this.colgroupContent),this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.frame.appendChild(e)},e.exports=[{mode:"tree",mixin:c,data:"json"},{mode:"view",mixin:c,data:"json"},{mode:"form",mixin:c,data:"json"}]},function(e,t,i){var n;try{n=i(9)}catch(o){}var r=i(8),s=i(3),a={};a.create=function(e,t){t=t||{},this.options=t,t.indentation?this.indentation=Number(t.indentation):this.indentation=2;var i=t.ace?t.ace:n;this.mode="code"==t.mode?"code":"text","code"==this.mode&&"undefined"==typeof i&&(this.mode="text",s.log("WARNING: Cannot load code editor, Ace library not loaded. Falling back to plain text editor")),this.theme=t.theme||"ace/theme/jsoneditor";var o=this;this.container=e,this.dom={},this.editor=void 0,this.textarea=void 0,this.width=e.clientWidth,this.height=e.clientHeight,this.frame=document.createElement("div"),this.frame.className="jsoneditor",this.frame.onclick=function(e){e.preventDefault()},this.frame.onkeydown=function(e){o._onKeyDown(e)},this.menu=document.createElement("div"),this.menu.className="menu",this.frame.appendChild(this.menu);var a=document.createElement("button");a.className="format",a.title="Format JSON data, with proper indentation and line feeds (Ctrl+\\)",this.menu.appendChild(a),a.onclick=function(){try{o.format()}catch(e){o._onError(e)}};var l=document.createElement("button");if(l.className="compact",l.title="Compact JSON data, remove all whitespaces (Ctrl+Shift+\\)",this.menu.appendChild(l),l.onclick=function(){try{o.compact()}catch(e){o._onError(e)}},this.options&&this.options.modes&&this.options.modes.length){var c=r.create(this,this.options.modes,this.options.mode);this.menu.appendChild(c),this.dom.modeBox=c}if(this.content=document.createElement("div"),this.content.className="outer",this.frame.appendChild(this.content),this.container.appendChild(this.frame),"code"==this.mode){this.editorDom=document.createElement("div"),this.editorDom.style.height="100%",this.editorDom.style.width="100%",this.content.appendChild(this.editorDom);var h=i.edit(this.editorDom);h.setTheme(this.theme),h.setShowPrintMargin(!1),h.setFontSize(13),h.getSession().setMode("ace/mode/json"),h.getSession().setTabSize(this.indentation),h.getSession().setUseSoftTabs(!0),h.getSession().setUseWrapMode(!0),this.editor=h;var u=document.createElement("a");u.appendChild(document.createTextNode("powered by ace")),u.href="http://ace.ajax.org",u.target="_blank",u.className="poweredBy",u.onclick=function(){window.open(u.href,u.target)},this.menu.appendChild(u),t.change&&h.on("change",function(){t.change()})}else{var d=document.createElement("textarea");d.className="text",d.spellcheck=!1,this.content.appendChild(d),this.textarea=d,t.change&&(null===this.textarea.oninput?this.textarea.oninput=function(){t.change()}:this.textarea.onchange=function(){t.change()})}},a._onKeyDown=function(e){var t=e.which||e.keyCode,i=!1;220==t&&e.ctrlKey&&(e.shiftKey?this.compact():this.format(),i=!0),i&&(e.preventDefault(),e.stopPropagation())},a._delete=function(){this.frame&&this.container&&this.frame.parentNode==this.container&&this.container.removeChild(this.frame)},a._onError=function(e){if("function"==typeof this.onError&&(s.log("WARNING: JSONEditor.onError is deprecated. Use options.error instead."),this.onError(e)),!this.options||"function"!=typeof this.options.error)throw e;this.options.error(e)},a.compact=function(){var e=this.get(),t=JSON.stringify(e);this.setText(t)},a.format=function(){var e=this.get(),t=JSON.stringify(e,null,this.indentation);this.setText(t)},a.focus=function(){this.textarea&&this.textarea.focus(),this.editor&&this.editor.focus()},a.resize=function(){if(this.editor){var e=!1;this.editor.resize(e)}},a.set=function(e){this.setText(JSON.stringify(e,null,this.indentation))},a.get=function(){var e,t=this.getText();try{e=s.parse(t)}catch(i){t=s.sanitize(t),e=s.parse(t)}return e},a.getText=function(){return this.textarea?this.textarea.value:this.editor?this.editor.getValue():""},a.setText=function(e){this.textarea&&(this.textarea.value=e),this.editor&&this.editor.setValue(e,-1)},e.exports=[{mode:"text",mixin:a,data:"text",load:a.format},{mode:"code",mixin:a,data:"text",load:a.format}]},function(e,t,i){var n=i(12);t.parse=function(e){try{return JSON.parse(e)}catch(i){throw t.validate(e),i}},t.sanitize=function(e){function t(){return e.charAt(c)}function i(){return e.charAt(c+1)}function n(){return e.charAt(c-1)}function o(){for(var t=c-1;t>=0;){var i=e.charAt(t);if("{"===i)return!0;if(" "!==i&&"\n"!==i&&"\r"!==i)return!1;t--}return!1}function r(){for(c+=2;cn;n++){var r=i[n];r.style&&r.removeAttribute("style");var s=r.attributes;if(s)for(var a=s.length-1;a>=0;a--){var l=s[a];l.specified===!0&&r.removeAttribute(l.name)}t.stripFormatting(r)}},t.setEndOfContentEditable=function(e){var t,i;document.createRange&&(t=document.createRange(),t.selectNodeContents(e),t.collapse(!1),i=window.getSelection(),i.removeAllRanges(),i.addRange(t))},t.selectContentEditable=function(e){if(e&&"DIV"==e.nodeName){var t,i;window.getSelection&&document.createRange&&(i=document.createRange(),i.selectNodeContents(e),t=window.getSelection(),t.removeAllRanges(),t.addRange(i))}},t.getSelection=function(){if(window.getSelection){var e=window.getSelection();if(e.getRangeAt&&e.rangeCount)return e.getRangeAt(0)}return null},t.setSelection=function(e){if(e&&window.getSelection){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)}},t.getSelectionOffset=function(){var e=t.getSelection();return e&&"startOffset"in e&&"endOffset"in e&&e.startContainer&&e.startContainer==e.endContainer?{startOffset:e.startOffset,endOffset:e.endOffset,container:e.startContainer.parentNode}:null},t.setSelectionOffset=function(e){if(document.createRange&&window.getSelection){var i=window.getSelection();if(i){var n=document.createRange();n.setStart(e.container.firstChild,e.startOffset),n.setEnd(e.container.firstChild,e.endOffset),t.setSelection(n)}}},t.getInnerText=function(e,i){var n=void 0==i;if(n&&(i={text:"",flush:function(){var e=this.text;return this.text="",e},set:function(e){this.text=e}}),e.nodeValue)return i.flush()+e.nodeValue;if(e.hasChildNodes()){for(var o=e.childNodes,r="",s=0,a=o.length;a>s;s++){var l=o[s];if("DIV"==l.nodeName||"P"==l.nodeName){var c=o[s-1],h=c?c.nodeName:void 0;h&&"DIV"!=h&&"P"!=h&&"BR"!=h&&(r+="\n",i.flush()),r+=t.getInnerText(l,i),i.set("\n")}else"BR"==l.nodeName?(r+=i.flush(),i.set("\n")):r+=t.getInnerText(l,i)}return r}return"P"==e.nodeName&&-1!=t.getInternetExplorerVersion()?i.flush():""},t.getInternetExplorerVersion=function(){if(-1==r){var e=-1;if("Microsoft Internet Explorer"==navigator.appName){var t=navigator.userAgent,i=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");null!=i.exec(t)&&(e=parseFloat(RegExp.$1))}r=e}return r},t.isFirefox=function(){return-1!=navigator.userAgent.indexOf("Firefox")};var r=-1;t.addEventListener=function(e,i,n,o){if(e.addEventListener)return void 0===o&&(o=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.addEventListener(i,n,o),n;if(e.attachEvent){var r=function(){return n.call(e,window.event)};return e.attachEvent("on"+i,r),r}},t.removeEventListener=function(e,i,n,o){e.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===i&&t.isFirefox()&&(i="DOMMouseScroll"),e.removeEventListener(i,n,o)):e.detachEvent&&e.detachEvent("on"+i,n)}},function(e,t,i){function n(){this.locked=!1}n.prototype.highlight=function(e){this.locked||(this.node!=e&&(this.node&&this.node.setHighlight(!1),this.node=e,this.node.setHighlight(!0)),this._cancelUnhighlight())},n.prototype.unhighlight=function(){if(!this.locked){var e=this;this.node&&(this._cancelUnhighlight(),this.unhighlightTimer=setTimeout(function(){e.node.setHighlight(!1),e.node=void 0,e.unhighlightTimer=void 0},0))}},n.prototype._cancelUnhighlight=function(){this.unhighlightTimer&&(clearTimeout(this.unhighlightTimer),this.unhighlightTimer=void 0)},n.prototype.lock=function(){this.locked=!0},n.prototype.unlock=function(){this.locked=!1},e.exports=n},function(e,t,i){function n(e){this.editor=e,this.clear(),this.actions={editField:{undo:function(e){e.node.updateField(e.oldValue)},redo:function(e){e.node.updateField(e.newValue)}},editValue:{undo:function(e){e.node.updateValue(e.oldValue)},redo:function(e){e.node.updateValue(e.newValue)}},appendNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.appendChild(e.node)}},insertBeforeNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.insertBefore(e.node,e.beforeNode)}},insertAfterNode:{undo:function(e){e.parent.removeChild(e.node)},redo:function(e){e.parent.insertAfter(e.node,e.afterNode)}},removeNode:{undo:function(e){var t=e.parent,i=t.childs[e.index]||t.append;t.insertBefore(e.node,i)},redo:function(e){e.parent.removeChild(e.node)}},duplicateNode:{undo:function(e){e.parent.removeChild(e.clone)},redo:function(e){e.parent.insertAfter(e.clone,e.node)}},changeType:{undo:function(e){e.node.changeType(e.oldType)},redo:function(e){e.node.changeType(e.newType)}},moveNode:{undo:function(e){e.startParent.moveTo(e.node,e.startIndex)},redo:function(e){e.endParent.moveTo(e.node,e.endIndex)}},sort:{undo:function(e){var t=e.node;t.hideChilds(),t.sort=e.oldSort,t.childs=e.oldChilds,t.showChilds()},redo:function(e){var t=e.node;t.hideChilds(),t.sort=e.newSort,t.childs=e.newChilds,t.showChilds()}}}}var o=i(3);n.prototype.onChange=function(){},n.prototype.add=function(e,t){this.index++,this.history[this.index]={action:e,params:t,timestamp:new Date},this.index=0},n.prototype.canRedo=function(){return this.indexthis.results.length-1&&(t=0),this._setActiveResult(t,e)}},n.prototype.previous=function(e){if(void 0!=this.results){var t=this.results.length-1,i=void 0!=this.resultIndex?this.resultIndex-1:t;0>i&&(i=t),this._setActiveResult(i,e)}},n.prototype._setActiveResult=function(e,t){if(this.activeResult){var i=this.activeResult.node,n=this.activeResult.elem;"field"==n?delete i.searchFieldActive:delete i.searchValueActive,i.updateDom()}if(!this.results||!this.results[e])return this.resultIndex=void 0,void(this.activeResult=void 0);this.resultIndex=e;var o=this.results[this.resultIndex].node,r=this.results[this.resultIndex].elem;"field"==r?o.searchFieldActive=!0:o.searchValueActive=!0,this.activeResult=this.results[this.resultIndex],o.updateDom(),o.scrollTo(function(){t&&o.focus(r)})},n.prototype._clearDelay=function(){void 0!=this.timeout&&(clearTimeout(this.timeout),delete this.timeout)},n.prototype._onDelayedSearch=function(e){this._clearDelay();var t=this;this.timeout=setTimeout(function(e){t._onSearch(e)},this.delay)},n.prototype._onSearch=function(e,t){this._clearDelay();var i=this.dom.search.value,n=i.length>0?i:void 0;if(n!=this.lastText||t)if(this.lastText=n,this.results=this.editor.search(n),this._setActiveResult(void 0),void 0!=n){var o=this.results.length;switch(o){case 0:this.dom.results.innerHTML="no results";break;case 1:this.dom.results.innerHTML="1 result";break;default:this.dom.results.innerHTML=o+" results"}}else this.dom.results.innerHTML=""},n.prototype._onKeyDown=function(e){var t=e.which;27==t?(this.dom.search.value="",this._onSearch(e),e.preventDefault(),e.stopPropagation()):13==t&&(e.ctrlKey?this._onSearch(e,!0):e.shiftKey?this.previous():this.next(),e.preventDefault(),e.stopPropagation())},n.prototype._onKeyUp=function(e){var t=e.keyCode;27!=t&&13!=t&&this._onDelayedSearch(e)},e.exports=n},function(e,t,i){function n(e,t){this.editor=e,this.dom={},this.expanded=!1,t&&t instanceof Object?(this.setField(t.field,t.fieldEditable),this.setValue(t.value,t.type)):(this.setField(""),this.setValue(null))}var o=i(10),r=i(11),s=i(3);n.prototype._updateEditability=function(){if(this.editable={field:!0,value:!0},this.editor&&(this.editable.field="tree"===this.editor.options.mode,this.editable.value="view"!==this.editor.options.mode,"tree"===this.editor.options.mode&&"function"==typeof this.editor.options.editable)){var e=this.editor.options.editable({field:this.field,value:this.value,path:this.path()});"boolean"==typeof e?(this.editable.field=e,this.editable.value=e):("boolean"==typeof e.field&&(this.editable.field=e.field),"boolean"==typeof e.value&&(this.editable.value=e.value))}},n.prototype.path=function(){for(var e=this,t=[];e;){var i=void 0!=e.field?e.field:e.index;void 0!==i&&t.unshift(i),e=e.parent}return t},n.prototype.setParent=function(e){this.parent=e},n.prototype.setField=function(e,t){this.field=e,this.fieldEditable=t===!0},n.prototype.getField=function(){return void 0===this.field&&this._getDomField(),this.field},n.prototype.setValue=function(e,t){var i,o,r=this.childs;if(r)for(;r.length;)this.removeChild(r[0]);if(this.type=this._getType(e),t&&t!=this.type){if("string"!=t||"auto"!=this.type)throw new Error('Type mismatch: cannot cast value of type "'+this.type+' to the specified type "'+t+'"');this.type=t}if("array"==this.type){this.childs=[];for(var s=0,a=e.length;a>s;s++)i=e[s],void 0===i||i instanceof Function||(o=new n(this.editor,{value:i}),this.appendChild(o));this.value=""}else if("object"==this.type){this.childs=[];for(var l in e)e.hasOwnProperty(l)&&(i=e[l],void 0===i||i instanceof Function||(o=new n(this.editor,{field:l,value:i}),this.appendChild(o)));this.value=""}else this.childs=void 0,this.value=e},n.prototype.getValue=function(){if("array"==this.type){var e=[];return this.childs.forEach(function(t){e.push(t.getValue())}),e}if("object"==this.type){var t={};return this.childs.forEach(function(e){t[e.getField()]=e.getValue()}),t}return void 0===this.value&&this._getDomValue(),this.value},n.prototype.getLevel=function(){return this.parent?this.parent.getLevel()+1:0},n.prototype.clone=function(){var e=new n(this.editor);if(e.type=this.type,e.field=this.field,e.fieldInnerText=this.fieldInnerText,e.fieldEditable=this.fieldEditable,e.value=this.value,e.valueInnerText=this.valueInnerText,e.expanded=this.expanded,this.childs){var t=[];this.childs.forEach(function(i){var n=i.clone();n.setParent(e),t.push(n)}),e.childs=t}else e.childs=void 0;return e},n.prototype.expand=function(e){this.childs&&(this.expanded=!0,this.dom.expand&&(this.dom.expand.className="expanded"),this.showChilds(),e!==!1&&this.childs.forEach(function(t){t.expand(e)}))},n.prototype.collapse=function(e){this.childs&&(this.hideChilds(),e!==!1&&this.childs.forEach(function(t){t.collapse(e)}),this.dom.expand&&(this.dom.expand.className="collapsed"),this.expanded=!1)},n.prototype.showChilds=function(){var e=this.childs;if(e&&this.expanded){var t=this.dom.tr,i=t?t.parentNode:void 0;if(i){var n=this.getAppend(),o=t.nextSibling;o?i.insertBefore(n,o):i.appendChild(n),this.childs.forEach(function(e){i.insertBefore(e.getDom(),n),e.showChilds()})}}},n.prototype.hide=function(){var e=this.dom.tr,t=e?e.parentNode:void 0;t&&t.removeChild(e),this.hideChilds()},n.prototype.hideChilds=function(){var e=this.childs;if(e&&this.expanded){var t=this.getAppend();t.parentNode&&t.parentNode.removeChild(t),this.childs.forEach(function(e){e.hide()})}},n.prototype.appendChild=function(e){if(this._hasChilds()){if(e.setParent(this),e.fieldEditable="object"==this.type,"array"==this.type&&(e.index=this.childs.length),this.childs.push(e),this.expanded){var t=e.getDom(),i=this.getAppend(),n=i?i.parentNode:void 0;i&&n&&n.insertBefore(t,i),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},n.prototype.moveBefore=function(e,t){if(this._hasChilds()){var i=this.dom.tr?this.dom.tr.parentNode:void 0;if(i){var n=document.createElement("tr");n.style.height=i.clientHeight+"px",i.appendChild(n)}e.parent&&e.parent.removeChild(e),t instanceof a?this.appendChild(e):this.insertBefore(e,t),i&&i.removeChild(n)}},n.prototype.moveTo=function(e,t){if(e.parent==this){var i=this.childs.indexOf(e);t>i&&t++}var n=this.childs[t]||this.append;this.moveBefore(e,n)},n.prototype.insertBefore=function(e,t){if(this._hasChilds()){if(t==this.append)e.setParent(this),e.fieldEditable="object"==this.type,this.childs.push(e);else{var i=this.childs.indexOf(t);if(-1==i)throw new Error("Node not found");e.setParent(this),e.fieldEditable="object"==this.type,this.childs.splice(i,0,e)}if(this.expanded){var n=e.getDom(),o=t.getDom(),r=o?o.parentNode:void 0;o&&r&&r.insertBefore(n,o),e.showChilds()}this.updateDom({updateIndexes:!0}),e.updateDom({recurse:!0})}},n.prototype.insertAfter=function(e,t){if(this._hasChilds()){var i=this.childs.indexOf(t),n=this.childs[i+1];n?this.insertBefore(e,n):this.appendChild(e)}},n.prototype.search=function(e){var t,i=[],n=e?e.toLowerCase():void 0;if(delete this.searchField,delete this.searchValue,void 0!=this.field){var o=String(this.field).toLowerCase();t=o.indexOf(n),-1!=t&&(this.searchField=!0,i.push({node:this,elem:"field"})),this._updateDomField()}if(this._hasChilds()){if(this.childs){var r=[];this.childs.forEach(function(t){r=r.concat(t.search(e))}),i=i.concat(r)}if(void 0!=n){var s=!1;0==r.length?this.collapse(s):this.expand(s)}}else{if(void 0!=this.value){var a=String(this.value).toLowerCase();t=a.indexOf(n),-1!=t&&(this.searchValue=!0,i.push({node:this,elem:"value"}))}this._updateDomValue()}return i},n.prototype.scrollTo=function(e){if(!this.dom.tr||!this.dom.tr.parentNode)for(var t=this.parent,i=!1;t;)t.expand(i),t=t.parent;this.dom.tr&&this.dom.tr.parentNode&&this.editor.scrollTo(this.dom.tr.offsetTop,e)},n.focusElement=void 0,n.prototype.focus=function(e){if(n.focusElement=e,this.dom.tr&&this.dom.tr.parentNode){var t=this.dom;switch(e){case"drag":t.drag?t.drag.focus():t.menu.focus();break;case"menu":t.menu.focus();break;case"expand":this._hasChilds()?t.expand.focus():t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.menu.focus(); +break;case"field":t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):this._hasChilds()?t.expand.focus():t.menu.focus();break;case"value":default:t.value&&!this._hasChilds()?(t.value.focus(),s.selectContentEditable(t.value)):t.field&&this.fieldEditable?(t.field.focus(),s.selectContentEditable(t.field)):this._hasChilds()?t.expand.focus():t.menu.focus()}}},n.select=function(e){setTimeout(function(){s.selectContentEditable(e)},0)},n.prototype.blur=function(){this._getDomValue(!1),this._getDomField(!1)},n.prototype._duplicate=function(e){var t=e.clone();return this.insertAfter(t,e),t},n.prototype.containsNode=function(e){if(this==e)return!0;var t=this.childs;if(t)for(var i=0,n=t.length;n>i;i++)if(t[i].containsNode(e))return!0;return!1},n.prototype._move=function(e,t){if(e!=t){if(e.containsNode(this))throw new Error("Cannot move a field into a child of itself");e.parent&&e.parent.removeChild(e);var i=e.clone();e.clearDom(),t?this.insertBefore(i,t):this.appendChild(i)}},n.prototype.removeChild=function(e){if(this.childs){var t=this.childs.indexOf(e);if(-1!=t){e.hide(),delete e.searchField,delete e.searchValue;var i=this.childs.splice(t,1)[0];return this.updateDom({updateIndexes:!0}),i}}return void 0},n.prototype._remove=function(e){this.removeChild(e)},n.prototype.changeType=function(e){var t=this.type;if(t!=e){if("string"!=e&&"auto"!=e||"string"!=t&&"auto"!=t){var i,n=this.dom.tr?this.dom.tr.parentNode:void 0;i=this.expanded?this.getAppend():this.getDom();var o=i&&i.parentNode?i.nextSibling:void 0;this.hide(),this.clearDom(),this.type=e,"object"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),delete e.index,e.fieldEditable=!0,void 0==e.field&&(e.field="")}),("string"==t||"auto"==t)&&(this.expanded=!0)):"array"==e?(this.childs||(this.childs=[]),this.childs.forEach(function(e,t){e.clearDom(),e.fieldEditable=!1,e.index=t}),("string"==t||"auto"==t)&&(this.expanded=!0)):this.expanded=!1,n&&(o?n.insertBefore(this.getDom(),o):n.appendChild(this.getDom())),this.showChilds()}else this.type=e;("auto"==e||"string"==e)&&("string"==e?this.value=String(this.value):this.value=this._stringCast(String(this.value)),this.focus()),this.updateDom({updateIndexes:!0})}},n.prototype._getDomValue=function(e){if(this.dom.value&&"array"!=this.type&&"object"!=this.type&&(this.valueInnerText=s.getInnerText(this.dom.value)),void 0!=this.valueInnerText)try{var t;if("string"==this.type)t=this._unescapeHTML(this.valueInnerText);else{var i=this._unescapeHTML(this.valueInnerText);t=this._stringCast(i)}if(t!==this.value){var n=this.value;this.value=t,this.editor._onAction("editValue",{node:this,oldValue:n,newValue:t,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(o){if(this.value=void 0,e!==!0)throw o}},n.prototype._updateDomValue=function(){var e=this.dom.value;if(e){var t=this.value,i="auto"==this.type?s.type(t):this.type,n="string"==i&&s.isUrl(t),o="";o=n&&!this.editable.value?"":"string"==i?"green":"number"==i?"red":"boolean"==i?"darkorange":this._hasChilds()?"":null===t?"#004ED0":"black",e.style.color=o;var r=""==String(this.value)&&"array"!=this.type&&"object"!=this.type;if(r?s.addClassName(e,"empty"):s.removeClassName(e,"empty"),n?s.addClassName(e,"url"):s.removeClassName(e,"url"),"array"==i||"object"==i){var a=this.childs?this.childs.length:0;e.title=this.type+" containing "+a+" items"}else"string"==i&&s.isUrl(t)?this.editable.value&&(e.title="Ctrl+Click or Ctrl+Enter to open url in new window"):e.title="";this.searchValueActive?s.addClassName(e,"highlight-active"):s.removeClassName(e,"highlight-active"),this.searchValue?s.addClassName(e,"highlight"):s.removeClassName(e,"highlight"),s.stripFormatting(e)}},n.prototype._updateDomField=function(){var e=this.dom.field;if(e){var t=""==String(this.field)&&"array"!=this.parent.type;t?s.addClassName(e,"empty"):s.removeClassName(e,"empty"),this.searchFieldActive?s.addClassName(e,"highlight-active"):s.removeClassName(e,"highlight-active"),this.searchField?s.addClassName(e,"highlight"):s.removeClassName(e,"highlight"),s.stripFormatting(e)}},n.prototype._getDomField=function(e){if(this.dom.field&&this.fieldEditable&&(this.fieldInnerText=s.getInnerText(this.dom.field)),void 0!=this.fieldInnerText)try{var t=this._unescapeHTML(this.fieldInnerText);if(t!==this.field){var i=this.field;this.field=t,this.editor._onAction("editField",{node:this,oldValue:i,newValue:t,oldSelection:this.editor.selection,newSelection:this.editor.getSelection()})}}catch(n){if(this.field=void 0,e!==!0)throw n}},n.prototype.clearDom=function(){this.dom={}},n.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;if(this._updateEditability(),e.tr=document.createElement("tr"),e.tr.node=this,"tree"===this.editor.options.mode){var t=document.createElement("td");if(this.editable.field&&this.parent){var i=document.createElement("button");e.drag=i,i.className="dragarea",i.title="Drag to move this field (Alt+Shift+Arrows)",t.appendChild(i)}e.tr.appendChild(t);var n=document.createElement("td"),o=document.createElement("button");e.menu=o,o.className="contextmenu",o.title="Click to open the actions menu (Ctrl+M)",n.appendChild(e.menu),e.tr.appendChild(n)}var r=document.createElement("td");return e.tr.appendChild(r),e.tree=this._createDomTree(),r.appendChild(e.tree),this.updateDom({updateIndexes:!0}),e.tr},n.prototype._onDragStart=function(e){var t=this;this.mousemove||(this.mousemove=s.addEventListener(document,"mousemove",function(e){t._onDrag(e)})),this.mouseup||(this.mouseup=s.addEventListener(document,"mouseup",function(e){t._onDragEnd(e)})),this.editor.highlighter.lock(),this.drag={oldCursor:document.body.style.cursor,startParent:this.parent,startIndex:this.parent.childs.indexOf(this),mouseX:e.pageX,level:this.getLevel()},document.body.style.cursor="move",e.preventDefault()},n.prototype._onDrag=function(e){var t,i,o,r,l,c,h,u,d,g,f,p,m,v,A=e.pageY,w=e.pageX,C=!1;if(t=this.dom.tr,d=s.getAbsoluteTop(t),p=t.offsetHeight,d>A){i=t;do i=i.previousSibling,h=n.getNodeFromTarget(i),g=i?s.getAbsoluteTop(i):0;while(i&&g>A);h&&!h.parent&&(h=void 0),h||(c=t.parentNode.firstChild,i=c?c.nextSibling:void 0,h=n.getNodeFromTarget(i),h==this&&(h=void 0)),h&&(i=h.dom.tr,g=i?s.getAbsoluteTop(i):0,A>g+p&&(h=void 0)),h&&(h.parent.moveBefore(this,h),C=!0)}else if(l=this.expanded&&this.append?this.append.getDom():this.dom.tr,r=l?l.nextSibling:void 0){f=s.getAbsoluteTop(r),o=r;do u=n.getNodeFromTarget(o),o&&(m=o.nextSibling?s.getAbsoluteTop(o.nextSibling):0,v=o?m-f:0,1==u.parent.childs.length&&u.parent.childs[0]==this&&(d+=23)),o=o.nextSibling;while(o&&A>d+v);if(u&&u.parent){var E=w-this.drag.mouseX,F=Math.round(E/24/2),y=this.drag.level+F,b=u.getLevel();for(i=u.dom.tr.previousSibling;y>b&&i;){if(h=n.getNodeFromTarget(i),h==this||h._isChildOf(this));else{if(!(h instanceof a))break;var x=h.parent.childs;if(!(x.length>1||1==x.length&&x[0]!=this))break;u=n.getNodeFromTarget(i),b=u.getLevel()}i=i.previousSibling}l.nextSibling!=u.dom.tr&&(u.parent.moveBefore(this,u),C=!0)}}C&&(this.drag.mouseX=w,this.drag.level=this.getLevel()),this.editor.startAutoScroll(A),e.preventDefault()},n.prototype._onDragEnd=function(e){var t={node:this,startParent:this.drag.startParent,startIndex:this.drag.startIndex,endParent:this.parent,endIndex:this.parent.childs.indexOf(this)};(t.startParent!=t.endParent||t.startIndex!=t.endIndex)&&this.editor._onAction("moveNode",t),document.body.style.cursor=this.drag.oldCursor,this.editor.highlighter.unlock(),delete this.drag,this.mousemove&&(s.removeEventListener(document,"mousemove",this.mousemove),delete this.mousemove),this.mouseup&&(s.removeEventListener(document,"mouseup",this.mouseup),delete this.mouseup),this.editor.stopAutoScroll(),e.preventDefault()},n.prototype._isChildOf=function(e){for(var t=this.parent;t;){if(t==e)return!0;t=t.parent}return!1},n.prototype._createDomField=function(){return document.createElement("div")},n.prototype.setHighlight=function(e){this.dom.tr&&(this.dom.tr.className=e?"highlight":"",this.append&&this.append.setHighlight(e),this.childs&&this.childs.forEach(function(t){t.setHighlight(e)}))},n.prototype.updateValue=function(e){this.value=e,this.updateDom()},n.prototype.updateField=function(e){this.field=e,this.updateDom()},n.prototype.updateDom=function(e){var t=this.dom.tree;t&&(t.style.marginLeft=24*this.getLevel()+"px");var i=this.dom.field;if(i){this.fieldEditable?(i.contentEditable=this.editable.field,i.spellcheck=!1,i.className="field"):i.className="readonly";var n;n=void 0!=this.index?this.index:void 0!=this.field?this.field:this._hasChilds()?this.type:"",i.innerHTML=this._escapeHTML(n)}var o=this.dom.value;if(o){var r=this.childs?this.childs.length:0;"array"==this.type?o.innerHTML="["+r+"]":"object"==this.type?o.innerHTML="{"+r+"}":o.innerHTML=this._escapeHTML(this.value)}this._updateDomField(),this._updateDomValue(),e&&e.updateIndexes===!0&&this._updateDomIndexes(),e&&e.recurse===!0&&this.childs&&this.childs.forEach(function(t){t.updateDom(e)}),this.append&&this.append.updateDom()},n.prototype._updateDomIndexes=function(){var e=this.dom.value,t=this.childs;e&&t&&("array"==this.type?t.forEach(function(e,t){e.index=t;var i=e.dom.field;i&&(i.innerHTML=t)}):"object"==this.type&&t.forEach(function(e){void 0!=e.index&&(delete e.index,void 0==e.field&&(e.field=""))}))},n.prototype._createDomValue=function(){var e;return"array"==this.type?(e=document.createElement("div"),e.className="readonly",e.innerHTML="[...]"):"object"==this.type?(e=document.createElement("div"),e.className="readonly",e.innerHTML="{...}"):!this.editable.value&&s.isUrl(this.value)?(e=document.createElement("a"),e.className="value",e.href=this.value,e.target="_blank",e.innerHTML=this._escapeHTML(this.value)):(e=document.createElement("div"),e.contentEditable=this.editable.value,e.spellcheck=!1,e.className="value",e.innerHTML=this._escapeHTML(this.value)),e},n.prototype._createDomExpandButton=function(){var e=document.createElement("button");return this._hasChilds()?(e.className=this.expanded?"expanded":"collapsed",e.title="Click to expand/collapse this field (Ctrl+E). \nCtrl+Click to expand/collapse including all childs."):(e.className="invisible",e.title=""),e},n.prototype._createDomTree=function(){var e=this.dom,t=document.createElement("table"),i=document.createElement("tbody");t.style.borderCollapse="collapse",t.className="values",t.appendChild(i);var n=document.createElement("tr");i.appendChild(n);var o=document.createElement("td");o.className="tree",n.appendChild(o),e.expand=this._createDomExpandButton(),o.appendChild(e.expand),e.tdExpand=o;var r=document.createElement("td");r.className="tree",n.appendChild(r),e.field=this._createDomField(),r.appendChild(e.field),e.tdField=r;var s=document.createElement("td");s.className="tree",n.appendChild(s),"object"!=this.type&&"array"!=this.type&&(s.appendChild(document.createTextNode(":")),s.className="separator"),e.tdSeparator=s;var a=document.createElement("td");return a.className="tree",n.appendChild(a),e.value=this._createDomValue(),a.appendChild(e.value),e.tdValue=a,t},n.prototype.onEvent=function(e){var t,i=e.type,n=e.target||e.srcElement,o=this.dom,r=this,a=this._hasChilds();if((n==o.drag||n==o.menu)&&("mouseover"==i?this.editor.highlighter.highlight(this):"mouseout"==i&&this.editor.highlighter.unhighlight()),"mousedown"==i&&n==o.drag&&this._onDragStart(e),"click"==i&&n==o.menu){var l=r.editor.highlighter;l.highlight(r),l.lock(),s.addClassName(o.menu,"selected"),this.showContextMenu(o.menu,function(){s.removeClassName(o.menu,"selected"),l.unlock(),l.unhighlight()})}if("click"==i&&n==o.expand&&a){var c=e.ctrlKey;this._onExpand(c)}var h=o.value;if(n==h)switch(i){case"focus":t=this;break;case"blur":case"change":this._getDomValue(!0),this._updateDomValue(),this.value&&(h.innerHTML=this._escapeHTML(this.value));break;case"input":this._getDomValue(!0),this._updateDomValue();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"click":(e.ctrlKey||!this.editable.value)&&s.isUrl(this.value)&&window.open(this.value,"_blank");break;case"keyup":this._getDomValue(!0),this._updateDomValue();break;case"cut":case"paste":setTimeout(function(){r._getDomValue(!0),r._updateDomValue()},1)}var u=o.field;if(n==u)switch(i){case"focus":t=this;break;case"blur":case"change":this._getDomField(!0),this._updateDomField(),this.field&&(u.innerHTML=this._escapeHTML(this.field));break;case"input":this._getDomField(!0),this._updateDomField();break;case"keydown":case"mousedown":this.editor.selection=this.editor.getSelection();break;case"keyup":this._getDomField(!0),this._updateDomField();break;case"cut":case"paste":setTimeout(function(){r._getDomField(!0),r._updateDomField()},1)}var d=o.tree;if(n==d.parentNode)switch(i){case"click":var g=void 0!=e.offsetX?e.offsetX<24*(this.getLevel()+1):e.pageXn[i]?t:e[i]/g,">").replace(/ /g,"  ").replace(/^ /," ").replace(/ $/," "),i=JSON.stringify(t);return i.substring(1,i.length-1)},n.prototype._unescapeHTML=function(e){var t='"'+this._escapeJSON(e)+'"',i=s.parse(t);return i.replace(/</g,"<").replace(/>/g,">").replace(/ |\u00A0/g," ")},n.prototype._escapeJSON=function(e){for(var t="",i=0,n=e.length;n>i;){var o=e.charAt(i);"\n"==o?t+="\\n":"\\"==o?(t+=o,i++,o=e.charAt(i),-1=='"\\/bfnrtu'.indexOf(o)&&(t+="\\"),t+=o):t+='"'==o?'\\"':o,i++}return t};var a=r(n);e.exports=n},function(e,t,i){function n(e,t,i){function n(t){e.setMode(t);var i=e.dom&&e.dom.modeBox;i&&i.focus()}for(var r={code:{text:"Code",title:"Switch to code highlighter",click:function(){n("code")}},form:{text:"Form",title:"Switch to form editor",click:function(){n("form")}},text:{text:"Text",title:"Switch to plain text editor",click:function(){n("text")}},tree:{text:"Tree",title:"Switch to tree editor",click:function(){n("tree")}},view:{text:"View",title:"Switch to tree view",click:function(){n("view")}}},s=[],a=0;a
      ',a.appendChild(u),o.submenuTitle&&(u.title=o.submenuTitle),h=u}else{var d=document.createElement("div");d.className="expand",l.appendChild(d),h=l}h.onclick=function(){n._onExpandItem(s),h.focus()};var g=[];s.subItems=g;var f=document.createElement("ul");s.ul=f,f.className="menu",f.style.height="0",a.appendChild(f),i(f,g,o.submenu)}else l.innerHTML='
      '+o.text;t.push(s)}})}this.dom={};var n=this,o=this.dom;this.anchor=void 0,this.items=e,this.eventListeners={},this.selection=void 0,this.visibleSubmenu=void 0,this.onClose=t?t.close:void 0;var r=document.createElement("div");r.className="jsoneditor-contextmenu",o.menu=r;var s=document.createElement("ul");s.className="menu",r.appendChild(s),o.list=s,o.items=[];var a=document.createElement("button");o.focusButton=a;var l=document.createElement("li");l.style.overflow="hidden",l.style.height="0",l.appendChild(a),s.appendChild(l),i(s,this.dom.items,e),this.maxHeight=0,e.forEach(function(t){var i=24*(e.length+(t.submenu?t.submenu.length:0));n.maxHeight=Math.max(n.maxHeight,i)})}var o=i(3);n.prototype._getVisibleButtons=function(){var e=[],t=this;return this.dom.items.forEach(function(i){e.push(i.button),i.buttonExpand&&e.push(i.buttonExpand),i.subItems&&i==t.expandedItem&&i.subItems.forEach(function(t){e.push(t.button),t.buttonExpand&&e.push(t.buttonExpand)})}),e},n.visibleMenu=void 0,n.prototype.show=function(e){this.hide();var t=window.innerHeight,i=window.pageYOffset||document.scrollTop||0,r=t+i,s=e.offsetHeight,a=this.maxHeight,l=o.getAbsoluteLeft(e),c=o.getAbsoluteTop(e);r>c+s+a?(this.dom.menu.style.left=l+"px",this.dom.menu.style.top=c+s+"px",this.dom.menu.style.bottom=""):(this.dom.menu.style.left=l+"px",this.dom.menu.style.top="",this.dom.menu.style.bottom=t-c+"px"),document.body.appendChild(this.dom.menu);var h=this,u=this.dom.list;this.eventListeners.mousedown=o.addEventListener(document,"mousedown",function(e){var t=e.target;t==u||h._isChildOf(t,u)||(h.hide(),e.stopPropagation(),e.preventDefault())}),this.eventListeners.mousewheel=o.addEventListener(document,"mousewheel",function(e){e.stopPropagation(),e.preventDefault()}),this.eventListeners.keydown=o.addEventListener(document,"keydown",function(e){h._onKeyDown(e)}),this.selection=o.getSelection(),this.anchor=e,setTimeout(function(){h.dom.focusButton.focus()},0),n.visibleMenu&&n.visibleMenu.hide(),n.visibleMenu=this},n.prototype.hide=function(){this.dom.menu.parentNode&&(this.dom.menu.parentNode.removeChild(this.dom.menu),this.onClose&&this.onClose());for(var e in this.eventListeners)if(this.eventListeners.hasOwnProperty(e)){var t=this.eventListeners[e];t&&o.removeEventListener(document,e,t),delete this.eventListeners[e]}n.visibleMenu==this&&(n.visibleMenu=void 0)},n.prototype._onExpandItem=function(e){var t=this,i=e==this.expandedItem,n=this.expandedItem;if(n&&(n.ul.style.height="0",n.ul.style.padding="",setTimeout(function(){t.expandedItem!=n&&(n.ul.style.display="",o.removeClassName(n.ul.parentNode,"selected"))},300),this.expandedItem=void 0),!i){var r=e.ul;r.style.display="block";r.clientHeight;setTimeout(function(){t.expandedItem==e&&(r.style.height=24*r.childNodes.length+"px",r.style.padding="5px 10px")},0),o.addClassName(r.parentNode,"selected"),this.expandedItem=e}},n.prototype._onKeyDown=function(e){var t,i,n,r,s=e.target,a=e.which,l=!1;27==a?(this.selection&&o.setSelection(this.selection),this.anchor&&this.anchor.focus(),this.hide(),l=!0):9==a?e.shiftKey?(t=this._getVisibleButtons(),i=t.indexOf(s),0==i&&(t[t.length-1].focus(),l=!0)):(t=this._getVisibleButtons(),i=t.indexOf(s),i==t.length-1&&(t[0].focus(),l=!0)):37==a?("expand"==s.className&&(t=this._getVisibleButtons(),i=t.indexOf(s),n=t[i-1],n&&n.focus()),l=!0):38==a?(t=this._getVisibleButtons(),i=t.indexOf(s),n=t[i-1],n&&"expand"==n.className&&(n=t[i-2]),n||(n=t[t.length-1]),n&&n.focus(),l=!0):39==a?(t=this._getVisibleButtons(),i=t.indexOf(s),r=t[i+1],r&&"expand"==r.className&&r.focus(),l=!0):40==a&&(t=this._getVisibleButtons(),i=t.indexOf(s),r=t[i+1],r&&"expand"==r.className&&(r=t[i+2]),r||(r=t[0]),r&&(r.focus(),l=!0),l=!0),l&&(e.stopPropagation(),e.preventDefault())},n.prototype._isChildOf=function(e,t){for(var i=e.parentNode;i;){if(i==t)return!0;i=i.parentNode}return!1},e.exports=n},function(e,t,i){function n(e){function t(e){this.editor=e,this.dom={}}return t.prototype=new e,t.prototype.getDom=function(){var e=this.dom;if(e.tr)return e.tr;this._updateEditability();var t=document.createElement("tr");if(t.node=this,e.tr=t,this.editable.field){e.tdDrag=document.createElement("td");var i=document.createElement("td");e.tdMenu=i;var n=document.createElement("button");n.className="contextmenu",n.title="Click to open the actions menu (Ctrl+M)",e.menu=n,i.appendChild(e.menu)}var o=document.createElement("td"),r=document.createElement("div");return r.innerHTML="(empty)",r.className="readonly",o.appendChild(r),e.td=o,e.text=r,this.updateDom(),t},t.prototype.updateDom=function(){var e=this.dom,t=e.td;t&&(t.style.paddingLeft=24*this.getLevel()+26+"px");var i=e.text;i&&(i.innerHTML="(empty "+this.parent.type+")");var n=e.tr;this.isVisible()?e.tr.firstChild||(e.tdDrag&&n.appendChild(e.tdDrag),e.tdMenu&&n.appendChild(e.tdMenu),n.appendChild(t)):e.tr.firstChild&&(e.tdDrag&&n.removeChild(e.tdDrag),e.tdMenu&&n.removeChild(e.tdMenu),n.removeChild(t))},t.prototype.isVisible=function(){return 0==this.parent.childs.length},t.prototype.showContextMenu=function(t,i){var n=this,o=e.TYPE_TITLES,s=[{text:"Append",title:"Append a new field with type 'auto' (Ctrl+Shift+Ins)",submenuTitle:"Select the type of the field to be appended",className:"insert",click:function(){n._onAppend("","","auto")},submenu:[{text:"Auto",className:"type-auto",title:o.auto,click:function(){n._onAppend("","","auto")}},{text:"Array",className:"type-array",title:o.array,click:function(){n._onAppend("",[])}},{text:"Object",className:"type-object",title:o.object,click:function(){n._onAppend("",{})}},{text:"String",className:"type-string",title:o.string,click:function(){n._onAppend("","","string")}}]}],a=new r(s,{close:i});a.show(t)},t.prototype.onEvent=function(e){var t=e.type,i=e.target||e.srcElement,n=this.dom,r=n.menu;if(i==r&&("mouseover"==t?this.editor.highlighter.highlight(this.parent):"mouseout"==t&&this.editor.highlighter.unhighlight()), +"click"==t&&i==n.menu){var s=this.editor.highlighter;s.highlight(this.parent),s.lock(),o.addClassName(n.menu,"selected"),this.showContextMenu(n.menu,function(){o.removeClassName(n.menu,"selected"),s.unlock(),s.unhighlight()})}"keydown"==t&&this.onKeyDown(e)},t}var o=i(3),r=i(10);e.exports=n},function(e,t,i){var n=function(){var e={trace:function(){},yy:{},symbols_:{error:2,JSONString:3,STRING:4,JSONNumber:5,NUMBER:6,JSONNullLiteral:7,NULL:8,JSONBooleanLiteral:9,TRUE:10,FALSE:11,JSONText:12,JSONValue:13,EOF:14,JSONObject:15,JSONArray:16,"{":17,"}":18,JSONMemberList:19,JSONMember:20,":":21,",":22,"[":23,"]":24,JSONElementList:25,$accept:0,$end:1},terminals_:{2:"error",4:"STRING",6:"NUMBER",8:"NULL",10:"TRUE",11:"FALSE",14:"EOF",17:"{",18:"}",21:":",22:",",23:"[",24:"]"},productions_:[0,[3,1],[5,1],[7,1],[9,1],[9,1],[12,2],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[15,2],[15,3],[20,3],[19,1],[19,3],[16,2],[16,3],[25,1],[25,3]],performAction:function(e,t,i,n,o,r,s){var a=r.length-1;switch(o){case 1:this.$=e.replace(/\\(\\|")/g,"$1").replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\v/g," ").replace(/\\f/g,"\f").replace(/\\b/g,"\b");break;case 2:this.$=Number(e);break;case 3:this.$=null;break;case 4:this.$=!0;break;case 5:this.$=!1;break;case 6:return this.$=r[a-1];case 13:this.$={};break;case 14:this.$=r[a-1];break;case 15:this.$=[r[a-2],r[a]];break;case 16:this.$={},this.$[r[a][0]]=r[a][1];break;case 17:this.$=r[a-2],r[a-2][r[a][0]]=r[a][1];break;case 18:this.$=[];break;case 19:this.$=r[a-1];break;case 20:this.$=[r[a]];break;case 21:this.$=r[a-2],r[a-2].push(r[a])}},table:[{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],12:1,13:2,15:7,16:8,17:[1,14],23:[1,15]},{1:[3]},{14:[1,16]},{14:[2,7],18:[2,7],22:[2,7],24:[2,7]},{14:[2,8],18:[2,8],22:[2,8],24:[2,8]},{14:[2,9],18:[2,9],22:[2,9],24:[2,9]},{14:[2,10],18:[2,10],22:[2,10],24:[2,10]},{14:[2,11],18:[2,11],22:[2,11],24:[2,11]},{14:[2,12],18:[2,12],22:[2,12],24:[2,12]},{14:[2,3],18:[2,3],22:[2,3],24:[2,3]},{14:[2,4],18:[2,4],22:[2,4],24:[2,4]},{14:[2,5],18:[2,5],22:[2,5],24:[2,5]},{14:[2,1],18:[2,1],21:[2,1],22:[2,1],24:[2,1]},{14:[2,2],18:[2,2],22:[2,2],24:[2,2]},{3:20,4:[1,12],18:[1,17],19:18,20:19},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:23,15:7,16:8,17:[1,14],23:[1,15],24:[1,21],25:22},{1:[2,6]},{14:[2,13],18:[2,13],22:[2,13],24:[2,13]},{18:[1,24],22:[1,25]},{18:[2,16],22:[2,16]},{21:[1,26]},{14:[2,18],18:[2,18],22:[2,18],24:[2,18]},{22:[1,28],24:[1,27]},{22:[2,20],24:[2,20]},{14:[2,14],18:[2,14],22:[2,14],24:[2,14]},{3:20,4:[1,12],20:29},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:30,15:7,16:8,17:[1,14],23:[1,15]},{14:[2,19],18:[2,19],22:[2,19],24:[2,19]},{3:5,4:[1,12],5:6,6:[1,13],7:3,8:[1,9],9:4,10:[1,10],11:[1,11],13:31,15:7,16:8,17:[1,14],23:[1,15]},{18:[2,17],22:[2,17]},{18:[2,15],22:[2,15]},{22:[2,21],24:[2,21]}],defaultActions:{16:[2,6]},parseError:function(e,t){throw new Error(e)},parse:function(e){function t(e){o.length=o.length-2*e,r.length=r.length-e,s.length=s.length-e}function i(){var e;return e=n.lexer.lex()||1,"number"!=typeof e&&(e=n.symbols_[e]||e),e}var n=this,o=[0],r=[null],s=[],a=this.table,l="",c=0,h=0,u=0,d=2,g=1;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,"undefined"==typeof this.lexer.yylloc&&(this.lexer.yylloc={});var f=this.lexer.yylloc;s.push(f),"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var p,m,v,A,w,C,E,F,y,b={};;){if(v=o[o.length-1],this.defaultActions[v]?A=this.defaultActions[v]:(null==p&&(p=i()),A=a[v]&&a[v][p]),"undefined"==typeof A||!A.length||!A[0]){if(!u){y=[];for(C in a[v])this.terminals_[C]&&C>2&&y.push("'"+this.terminals_[C]+"'");var x="";x=this.lexer.showPosition?"Parse error on line "+(c+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+y.join(", ")+", got '"+this.terminals_[p]+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==p?"end of input":"'"+(this.terminals_[p]||p)+"'"),this.parseError(x,{text:this.lexer.match,token:this.terminals_[p]||p,line:this.lexer.yylineno,loc:f,expected:y})}if(3==u){if(p==g)throw new Error(x||"Parsing halted.");h=this.lexer.yyleng,l=this.lexer.yytext,c=this.lexer.yylineno,f=this.lexer.yylloc,p=i()}for(;;){if(d.toString()in a[v])break;if(0==v)throw new Error(x||"Parsing halted.");t(1),v=o[o.length-1]}m=p,p=d,v=o[o.length-1],A=a[v]&&a[v][d],u=3}if(A[0]instanceof Array&&A.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+p);switch(A[0]){case 1:o.push(p),r.push(this.lexer.yytext),s.push(this.lexer.yylloc),o.push(A[1]),p=null,m?(p=m,m=null):(h=this.lexer.yyleng,l=this.lexer.yytext,c=this.lexer.yylineno,f=this.lexer.yylloc,u>0&&u--);break;case 2:if(E=this.productions_[A[1]][1],b.$=r[r.length-E],b._$={first_line:s[s.length-(E||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(E||1)].first_column,last_column:s[s.length-1].last_column},w=this.performAction.call(b,l,h,c,this.yy,A[1],r,s),"undefined"!=typeof w)return w;E&&(o=o.slice(0,-1*E*2),r=r.slice(0,-1*E),s=s.slice(0,-1*E)),o.push(this.productions_[A[1]][0]),r.push(b.$),s.push(b._$),F=a[o[o.length-2]][o[o.length-1]],o.push(F);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parseError)throw new Error(e);this.yy.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.match+=e,this.matched+=e;var t=e.match(/\n/);return t&&this.yylineno++,this._input=this._input.slice(1),e},unput:function(e){return this._input=e+this._input,this},more:function(){return this._more=!0,this},less:function(e){this._input=this.match.slice(e)+this._input},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,i,n,o;this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),s=0;st[0].length)||(t=i,n=s,this.options.flex));s++);return t?(o=t[0].match(/\n.*/g),o&&(this.yylineno+=o.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:o?o[o.length-1].length-1:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.yyleng=this.yytext.length,this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,r[n],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e?e:void 0):""===this._input?this.EOF:void this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return"undefined"!=typeof e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.options={},e.performAction=function(e,t,i,n){switch(i){case 0:break;case 1:return 6;case 2:return t.yytext=t.yytext.substr(1,t.yyleng-2),4;case 3:return 17;case 4:return 18;case 5:return 23;case 6:return 24;case 7:return 22;case 8:return 21;case 9:return 10;case 10:return 11;case 11:return 8;case 12:return 14;case 13:return"INVALID"}},e.rules=[/^(?:\s+)/,/^(?:(-?([0-9]|[1-9][0-9]+))(\.[0-9]+)?([eE][-+]?[0-9]+)?\b)/,/^(?:"(?:\\[\\"bfnrt/]|\\u[a-fA-F0-9]{4}|[^\\\0-\x09\x0a-\x1f"])*")/,/^(?:\{)/,/^(?:\})/,/^(?:\[)/,/^(?:\])/,/^(?:,)/,/^(?::)/,/^(?:true\b)/,/^(?:false\b)/,/^(?:null\b)/,/^(?:$)/,/^(?:.)/],e.conditions={INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}},e}();return e.lexer=t,e}();t.parser=n,t.parse=n.parse.bind(n)},function(e,t,i){ace.define("ace/theme/jsoneditor",["require","exports","module","ace/lib/dom"],function(e,t,i){t.isDark=!1,t.cssClass="ace-jsoneditor",t.cssText='.ace-jsoneditor .ace_gutter { background: #ebebeb; color: #333 } .ace-jsoneditor.ace_editor { font-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif; line-height: 1.3; } .ace-jsoneditor .ace_print-margin { width: 1px; background: #e8e8e8 } .ace-jsoneditor .ace_scroller { background-color: #FFFFFF } .ace-jsoneditor .ace_text-layer { color: gray } .ace-jsoneditor .ace_variable { color: #1a1a1a } .ace-jsoneditor .ace_cursor { border-left: 2px solid #000000 } .ace-jsoneditor .ace_overwrite-cursors .ace_cursor { border-left: 0px; border-bottom: 1px solid #000000 } .ace-jsoneditor .ace_marker-layer .ace_selection { background: #D5DDF6 } .ace-jsoneditor.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px } .ace-jsoneditor .ace_marker-layer .ace_step { background: rgb(255, 255, 0) } .ace-jsoneditor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF } .ace-jsoneditor .ace_marker-layer .ace_active-line { background: #FFFBD1 } .ace-jsoneditor .ace_gutter-active-line { background-color : #dcdcdc } .ace-jsoneditor .ace_marker-layer .ace_selected-word { border: 1px solid #D5DDF6 } .ace-jsoneditor .ace_invisible { color: #BFBFBF } .ace-jsoneditor .ace_keyword, .ace-jsoneditor .ace_meta, .ace-jsoneditor .ace_support.ace_constant.ace_property-value { color: #AF956F } .ace-jsoneditor .ace_keyword.ace_operator { color: #484848 } .ace-jsoneditor .ace_keyword.ace_other.ace_unit { color: #96DC5F } .ace-jsoneditor .ace_constant.ace_language { color: darkorange } .ace-jsoneditor .ace_constant.ace_numeric { color: red } .ace-jsoneditor .ace_constant.ace_character.ace_entity { color: #BF78CC } .ace-jsoneditor .ace_invalid { color: #FFFFFF; background-color: #FF002A; } .ace-jsoneditor .ace_fold { background-color: #AF956F; border-color: #000000 } .ace-jsoneditor .ace_storage, .ace-jsoneditor .ace_support.ace_class, .ace-jsoneditor .ace_support.ace_function, .ace-jsoneditor .ace_support.ace_other, .ace-jsoneditor .ace_support.ace_type { color: #C52727 } .ace-jsoneditor .ace_string { color: green } .ace-jsoneditor .ace_comment { color: #BCC8BA } .ace-jsoneditor .ace_entity.ace_name.ace_tag, .ace-jsoneditor .ace_entity.ace_other.ace_attribute-name { color: #606060 } .ace-jsoneditor .ace_markup.ace_underline { text-decoration: underline } .ace-jsoneditor .ace_indent-guide { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y }';var n=e("../lib/dom");n.importCssString(t.cssText,t.cssClass)})},function(e,t,i){!function(){function e(e){var t=function(e,t){return o("",e,t)},r=i;e&&(i[e]||(i[e]={}),r=i[e]),r.define&&r.define.packaged||(n.original=r.define,r.define=n,r.define.packaged=!0),r.acequire&&r.acequire.packaged||(o.original=r.acequire,r.acequire=t,r.acequire.packaged=!0)}var t="ace",i=function(){return this}();if(t||"undefined"==typeof acequirejs){var n=function(e,t,i){return"string"!=typeof e?void(n.original?n.original.apply(window,arguments):(console.error("dropping module because define wasn't a string."),console.trace())):(2==arguments.length&&(i=t),n.modules||(n.modules={},n.payloads={}),n.payloads[e]=i,void(n.modules[e]=null))},o=function(e,t,i){if("[object Array]"===Object.prototype.toString.call(t)){for(var n=[],r=0,a=t.length;a>r;++r){var l=s(e,t[r]);if(!l&&o.original)return o.original.apply(window,arguments);n.push(l)}i&&i.apply(null,n)}else{if("string"==typeof t){var c=s(e,t);return!c&&o.original?o.original.apply(window,arguments):(i&&i(),c)}if(o.original)return o.original.apply(window,arguments)}},r=function(e,t){if(-1!==t.indexOf("!")){var i=t.split("!");return r(e,i[0])+"!"+r(e,i[1])}if("."==t.charAt(0)){var n=e.split("/").slice(0,-1).join("/");for(t=n+"/"+t;-1!==t.indexOf(".")&&o!=t;){var o=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},s=function(e,t){t=r(e,t);var i=n.modules[t];if(!i){if(i=n.payloads[t],"function"==typeof i){var s={},a={id:t,uri:"",exports:s,packaged:!0},l=function(e,i){return o(t,e,i)},c=i(l,s,a);s=c||a.exports,n.modules[t]=s,delete n.payloads[t]}i=n.modules[t]=s||i}return i};e(t)}}(),ace.define("ace/lib/regexp",["require","exports","module"],function(e,t,i){"use strict";function n(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function o(e,t,i){if(Array.prototype.indexOf)return e.indexOf(t,i);for(var n=i||0;n1&&o(l,"")>-1&&(i=RegExp(this.source,r.replace.call(n(this),"g","")),r.replace.call(e.slice(l.index),i,function(){for(var e=1;el.index&&this.lastIndex--}return l},a||(RegExp.prototype.test=function(e){var t=r.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t}))}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,i){function n(){}function o(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function r(e){return e=+e,e!==e?e=0:0!==e&&e!==1/0&&e!==-(1/0)&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError("Function.prototype.bind called on incompatible "+t);var i=f.call(arguments,1),o=function(){if(this instanceof o){var n=t.apply(this,i.concat(f.call(arguments)));return Object(n)===n?n:this}return t.apply(e,i.concat(f.call(arguments)))};return t.prototype&&(n.prototype=t.prototype,o.prototype=new n,n.prototype=null),o});var s,a,l,c,h,u=Function.prototype.call,d=Array.prototype,g=Object.prototype,f=d.slice,p=u.bind(g.toString),m=u.bind(g.hasOwnProperty);if((h=m(g,"__defineGetter__"))&&(s=u.bind(g.__defineGetter__),a=u.bind(g.__defineSetter__),l=u.bind(g.__lookupGetter__),c=u.bind(g.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t,i=[];return i.splice.apply(i,e(20)),i.splice.apply(i,e(26)),t=i.length,i.splice(5,0,"XXX"),t+1==i.length,t+1==i.length?!0:void 0}()){var v=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?v.apply(this,[void 0===e?0:e,void 0===t?this.length-e:t].concat(f.call(arguments,2))):[]}}else Array.prototype.splice=function(e,t){var i=this.length;e>0?e>i&&(e=i):void 0==e?e=0:0>e&&(e=Math.max(i+e,0)),i>e+t||(t=i-e);var n=this.slice(e,e+t),o=f.call(arguments,2),r=o.length;if(e===i)r&&this.push.apply(this,o);else{var s=Math.min(t,i-e),a=e+s,l=a+r-s,c=i-a,h=i-s;if(a>l)for(var u=0;c>u;++u)this[l+u]=this[a+u];else if(l>a)for(u=c;u--;)this[l+u]=this[a+u];if(r&&e===h)this.length=h,this.push.apply(this,o);else for(this.length=h+r,u=0;r>u;++u)this[e+u]=o[u]}return n};Array.isArray||(Array.isArray=function(e){return"[object Array]"==p(e)});var A=Object("a"),w="a"!=A[0]||!(0 in A);if(Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=O(this),i=w&&"[object String]"==p(this)?this.split(""):t,n=arguments[1],o=-1,r=i.length>>>0;if("[object Function]"!=p(e))throw new TypeError;for(;++o>>0,o=Array(n),r=arguments[1];if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");for(var s=0;n>s;s++)s in i&&(o[s]=e.call(r,i[s],s,t));return o}),Array.prototype.filter||(Array.prototype.filter=function(e){var t,i=O(this),n=w&&"[object String]"==p(this)?this.split(""):i,o=n.length>>>0,r=[],s=arguments[1];if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");for(var a=0;o>a;a++)a in n&&(t=n[a],e.call(s,t,a,i)&&r.push(t));return r}),Array.prototype.every||(Array.prototype.every=function(e){var t=O(this),i=w&&"[object String]"==p(this)?this.split(""):t,n=i.length>>>0,o=arguments[1];if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");for(var r=0;n>r;r++)if(r in i&&!e.call(o,i[r],r,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=O(this),i=w&&"[object String]"==p(this)?this.split(""):t,n=i.length>>>0,o=arguments[1];if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");for(var r=0;n>r;r++)if(r in i&&e.call(o,i[r],r,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=O(this),i=w&&"[object String]"==p(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var o,r=0;if(arguments.length>=2)o=arguments[1];else for(;;){if(r in i){o=i[r++];break}if(++r>=n)throw new TypeError("reduce of empty array with no initial value")}for(;n>r;r++)r in i&&(o=e.call(void 0,o,i[r],r,t));return o}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=O(this),i=w&&"[object String]"==p(this)?this.split(""):t,n=i.length>>>0;if("[object Function]"!=p(e))throw new TypeError(e+" is not a function");if(!n&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var o,r=n-1;if(arguments.length>=2)o=arguments[1];else for(;;){if(r in i){o=i[r--];break}if(--r<0)throw new TypeError("reduceRight of empty array with no initial value")}do r in this&&(o=e.call(void 0,o,i[r],r,t));while(r--);return o}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(e){var t=w&&"[object String]"==p(this)?this.split(""):O(this),i=t.length>>>0;if(!i)return-1;var n=0;for(arguments.length>1&&(n=r(arguments[1])),n=n>=0?n:Math.max(0,i+n);i>n;n++)if(n in t&&t[n]===e)return n;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(e){var t=w&&"[object String]"==p(this)?this.split(""):O(this),i=t.length>>>0;if(!i)return-1;var n=i-1;for(arguments.length>1&&(n=Math.min(n,r(arguments[1]))),n=n>=0?n:i-Math.abs(n);n>=0;n--)if(n in t&&e===t[n])return n;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:g)}),!Object.getOwnPropertyDescriptor){var C="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError(C+e);if(m(e,t)){var i,n,o;if(i={enumerable:!0,configurable:!0},h){var r=e.__proto__;e.__proto__=g;var n=l(e,t),o=c(e,t);if(e.__proto__=r,n||o)return n&&(i.get=n),o&&(i.set=o),i}return i.value=e[t],i}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)}),!Object.create){var E;E=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var i;if(null===e)i=E();else{if("object"!=typeof e)throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var n=function(){};n.prototype=e,i=new n,i.__proto__=e}return void 0!==t&&Object.defineProperties(i,t),i}}if(Object.defineProperty){var F=o({}),y="undefined"==typeof document||o(document.createElement("div"));if(!F||!y)var b=Object.defineProperty}if(!Object.defineProperty||b){var x="Property description must be an object: ",S="Object.defineProperty called on non-object: ",$="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,i){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError(S+e);if("object"!=typeof i&&"function"!=typeof i||null===i)throw new TypeError(x+i);if(b)try{return b.call(Object,e,t,i)}catch(n){}if(m(i,"value"))if(h&&(l(e,t)||c(e,t))){var o=e.__proto__;e.__proto__=g,delete e[t],e[t]=i.value,e.__proto__=o}else e[t]=i.value;else{if(!h)throw new TypeError($);m(i,"get")&&s(e,t,i.get),m(i,"set")&&a(e,t,i.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var i in t)m(t,i)&&Object.defineProperty(e,i,t[i]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(B){Object.freeze=function(e){return function(t){return"function"==typeof t?t:e(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;for(var t="";m(e,t);)t+="?";e[t]=!0;var i=m(e,t);return delete e[t],i}),!Object.keys){var D=!0,k=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],L=k.length;for(var _ in{toString:null})D=!1;Object.keys=function N(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.keys called on a non-object");var N=[];for(var t in e)m(e,t)&&N.push(t);if(D)for(var i=0,n=L;n>i;i++){var o=k[i];m(e,o)&&N.push(o)}return N}}Date.now||(Date.now=function(){return(new Date).getTime()});var R=" \n \f\r   ᠎              \u2028\u2029\ufeff";if(!String.prototype.trim||R.trim()){R="["+R+"]";var T=new RegExp("^"+R+R+"*"),M=new RegExp(R+R+"*$");String.prototype.trim=function(){return String(this).replace(T,"").replace(M,"")}}var O=function(e){if(null==e)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,i){"use strict";e("./regexp"),e("./es5-shim")}),ace.define("ace/lib/dom",["require","exports","module"],function(e,t,i){"use strict";if("undefined"!=typeof document){var n="http://www.w3.org/1999/xhtml";t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||n,e):document.createElement(e)},t.hasCssClass=function(e,t){var i=(e.className||"").split(/\s+/g);return-1!==i.indexOf(t)},t.addCssClass=function(e,i){t.hasCssClass(e,i)||(e.className+=" "+i)},t.removeCssClass=function(e,t){for(var i=e.className.split(/\s+/g);;){var n=i.indexOf(t);if(-1==n)break;i.splice(n,1)}e.className=i.join(" ")},t.toggleCssClass=function(e,t){for(var i=e.className.split(/\s+/g),n=!0;;){var o=i.indexOf(t);if(-1==o)break;n=!1,i.splice(o,1)}return n&&i.push(t),e.className=i.join(" "),n},t.setCssClass=function(e,i,n){n?t.addCssClass(e,i):t.removeCssClass(e,i)},t.hasCssString=function(e,t){var i,n=0;if(t=t||document,t.createStyleSheet&&(i=t.styleSheets)){for(;n=0?(o.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]:(o.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=(window.Controllers||window.controllers)&&"Gecko"===window.navigator.product,t.isOldGecko=t.isGecko&&parseInt((o.match(/rv\:(\d+)/)||[])[1],10)<4,t.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),t.isWebKit=parseFloat(o.split("WebKit/")[1])||void 0,t.isChrome=parseFloat(o.split(" Chrome/")[1])||void 0,t.isAIR=o.indexOf("AdobeAIR")>=0,t.isIPad=o.indexOf("iPad")>=0,t.isTouchPad=o.indexOf("TouchPad")>=0,t.isChromeOS=o.indexOf(" CrOS ")>=0}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";function n(e,t,i){var n=s(t);if(!r.isMac&&a){if((a[91]||a[92])&&(n|=8),a.altGr){if(3==(3&n))return;a.altGr=0}if(18===i||17===i){var c="location"in t?t.location:t.keyLocation;if(17===i&&1===c)l=t.timeStamp;else if(18===i&&3===n&&2===c){var h=-l;l=t.timeStamp,h+=l,3>h&&(a.altGr=!0)}}}if(i in o.MODIFIER_KEYS){switch(o.MODIFIER_KEYS[i]){case"Alt":n=2;break;case"Shift":n=4;break;case"Ctrl":n=1;break;default:n=8}i=-1}if(8&n&&(91===i||93===i)&&(i=-1),!n&&13===i){var c="location"in t?t.location:t.keyLocation;if(3===c&&(e(t,n,-i),t.defaultPrevented))return}if(r.isChromeOS&&8&n){if(e(t,n,i),t.defaultPrevented)return;n&=-9}return n||i in o.FUNCTION_KEYS||i in o.PRINTABLE_KEYS?e(t,n,i):!1}var o=e("./keys"),r=e("./useragent");t.addListener=function(e,t,i){if(e.addEventListener)return e.addEventListener(t,i,!1);if(e.attachEvent){var n=function(){i.call(e,window.event)};i._wrapper=n,e.attachEvent("on"+t,n)}},t.removeListener=function(e,t,i){return e.removeEventListener?e.removeEventListener(t,i,!1):void(e.detachEvent&&e.detachEvent("on"+t,i._wrapper||i))},t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},t.preventDefault=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1},t.getButton=function(e){return"dblclick"==e.type?0:"contextmenu"==e.type||r.isMac&&e.ctrlKey&&!e.altKey&&!e.shiftKey?2:e.preventDefault?e.button:{1:0,2:2,4:1}[e.button]},t.capture=function(e,i,n){function o(e){i&&i(e),n&&n(e),t.removeListener(document,"mousemove",i,!0),t.removeListener(document,"mouseup",o,!0),t.removeListener(document,"dragstart",o,!0)}return t.addListener(document,"mousemove",i,!0),t.addListener(document,"mouseup",o,!0),t.addListener(document,"dragstart",o,!0),o},t.addMouseWheelListener=function(e,i){"onmousewheel"in e?t.addListener(e,"mousewheel",function(e){var t=8;void 0!==e.wheelDeltaX?(e.wheelX=-e.wheelDeltaX/t,e.wheelY=-e.wheelDeltaY/t):(e.wheelX=0,e.wheelY=-e.wheelDelta/t),i(e)}):"onwheel"in e?t.addListener(e,"wheel",function(e){var t=.35;switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=e.deltaX*t||0, +e.wheelY=e.deltaY*t||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=5*(e.deltaX||0),e.wheelY=5*(e.deltaY||0)}i(e)}):t.addListener(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=5*(e.detail||0),e.wheelY=0):(e.wheelX=0,e.wheelY=5*(e.detail||0)),i(e)})},t.addMultiMouseDownListener=function(e,i,n,o){var s,a,l,c=0,h={2:"dblclick",3:"tripleclick",4:"quadclick"};t.addListener(e,"mousedown",function(e){if(0!==t.getButton(e)?c=0:e.detail>1?(c++,c>4&&(c=1)):c=1,r.isIE){var u=Math.abs(e.clientX-s)>5||Math.abs(e.clientY-a)>5;(!l||u)&&(c=1),l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),1==c&&(s=e.clientX,a=e.clientY)}if(e._clicks=c,n[o]("mousedown",e),c>4)c=0;else if(c>1)return n[o](h[c],e)}),r.isOldIE&&t.addListener(e,"dblclick",function(e){c=2,l&&clearTimeout(l),l=setTimeout(function(){l=null},i[c-1]||600),n[o]("mousedown",e),n[o](h[c],e)})};var s=!r.isMac||!r.isOpera||"KeyboardEvent"in window?function(e){return 0|(e.ctrlKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.metaKey?8:0)}:function(e){return 0|(e.metaKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.ctrlKey?8:0)};t.getModifierString=function(e){return o.KEY_MODS[s(e)]};var a=null,l=0;if(t.addCommandKeyListener=function(e,i){var o=t.addListener;if(r.isOldGecko||r.isOpera&&!("KeyboardEvent"in window)){var s=null;o(e,"keydown",function(e){s=e.keyCode}),o(e,"keypress",function(e){return n(i,e,s)})}else{var l=null;o(e,"keydown",function(e){a[e.keyCode]=!0;var t=n(i,e,e.keyCode);return l=e.defaultPrevented,t}),o(e,"keypress",function(e){l&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),l=null)}),o(e,"keyup",function(e){a[e.keyCode]=null}),a||(a=Object.create(null),o(window,"focus",function(e){a=Object.create(null)}))}},window.postMessage&&!r.isOldIE){var c=1;t.nextTick=function(e,i){i=i||window;var n="zero-timeout-message-"+c;t.addListener(i,"message",function o(r){r.data==n&&(t.stopPropagation(r),t.removeListener(i,"message",o),e())}),i.postMessage(n,"*")}}t.nextFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame,t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,i){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){for(var i="";t>0;)1&t&&(i+=e),(t>>=1)&&(e+=e);return i};var n=/^\s\s*/,o=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(n,"")},t.stringTrimRight=function(e){return e.replace(o,"")},t.copyObject=function(e){var t={};for(var i in e)t[i]=e[i];return t},t.copyArray=function(e){for(var t=[],i=0,n=e.length;n>i;i++)e[i]&&"object"==typeof e[i]?t[i]=this.copyObject(e[i]):t[i]=e[i];return t},t.deepCopy=function(e){if("object"!=typeof e||!e)return e;var i=e.constructor;if(i===RegExp)return e;var n=i();for(var o in e)"object"==typeof e[o]?n[o]=t.deepCopy(e[o]):n[o]=e[o];return n},t.arrayToMap=function(e){for(var t={},i=0;ii?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}var s=(e("../lib/dom"),e("../lib/event"),e("../lib/useragent"),0);(function(){this.onMouseDown=function(e){var t=e.inSelection(),i=e.getDocumentPosition();this.mousedownEvent=e;var n=this.editor,o=e.getButton();if(0!==o){var r=n.getSelectionRange(),s=r.isEmpty();return s&&n.selection.moveToPosition(i),void n.textInput.onContextMenu(e.domEvent)}return this.mousedownEvent.time=Date.now(),!t||n.isFocused()||(n.focus(),!this.$focusTimout||this.$clickSelection||n.inMultiSelectMode)?(this.captureMouse(e),this.startSelect(i,e.domEvent._clicks>1),e.preventDefault()):(this.setState("focusWait"),void this.captureMouse(e))},this.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var i=this.editor;this.mousedownEvent.getShiftKey()?i.selection.selectToPosition(e):t||i.selection.moveToPosition(e),t||this.select(),i.renderer.scroller.setCapture&&i.renderer.scroller.setCapture(),i.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var e,t=this.editor,i=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var n=this.$clickSelection.comparePoint(i);if(-1==n)e=this.$clickSelection.end;else if(1==n)e=this.$clickSelection.start;else{var o=r(this.$clickSelection,i);i=o.cursor,e=o.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(i),t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,i=this.editor,n=i.renderer.screenToTextCoordinates(this.x,this.y),o=i.selection[e](n.row,n.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(o.start),a=this.$clickSelection.comparePoint(o.end);if(-1==s&&0>=a)t=this.$clickSelection.end,(o.end.row!=n.row||o.end.column!=n.column)&&(n=o.start);else if(1==a&&s>=0)t=this.$clickSelection.start,(o.start.row!=n.row||o.start.column!=n.column)&&(n=o.end);else if(-1==s&&1==a)n=o.end,t=o.start;else{var l=r(this.$clickSelection,n);n=l.cursor,t=l.anchor}i.selection.setSelectionAnchor(t.row,t.column)}i.selection.selectToPosition(n),i.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=o(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>s||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),i=this.editor,n=i.session,o=n.getBracketRange(t);o?(o.isEmpty()&&(o.start.column--,o.end.column++),this.setState("select")):(o=i.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=o,this.select()},this.onTripleClick=function(e){var t=e.getDocumentPosition(),i=this.editor;this.setState("selectByLines");var n=i.getSelectionRange();n.isMultiLine()&&n.contains(t.row,t.column)?(this.$clickSelection=i.selection.getLineRange(n.start.row),this.$clickSelection.end=i.selection.getLineRange(n.end.row).end):this.$clickSelection=i.selection.getLineRange(t.row),this.select()},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(!e.getAccelKey()){e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=e.domEvent.timeStamp,i=t-(this.$lastScrollTime||0),n=this.editor,o=n.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed);return o||200>i?(this.$lastScrollTime=t,n.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()):void 0}}}).call(n.prototype),t.DefaultHandlers=n}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(e,t,i){"use strict";function n(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}var o=(e("./lib/oop"),e("./lib/dom"));(function(){this.$init=function(){return this.$element=o.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(e){o.setInnerText(this.getElement(),e)},this.setHtml=function(e){this.getElement().innerHTML=e},this.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},this.setClassName=function(e){o.addCssClass(this.getElement(),e)},this.show=function(e,t,i){null!=e&&this.setText(e),null!=t&&null!=i&&this.setPosition(t,i),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth}}).call(n.prototype),t.Tooltip=n}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(e,t,i){"use strict";function n(e){function t(){var t=u.getDocumentPosition().row,o=l.$annotations[t];if(!o)return i();var r=s.session.getLength();if(t==r){var a=s.renderer.pixelToScreenCoordinates(0,u.y).row,h=u.$pos;if(a>s.session.documentToScreenRow(h.row,h.column))return i()}if(d!=o)if(d=o.text.join("
      "),c.setHtml(d),c.show(),s.on("mousewheel",i),e.$tooltipFollowsMouse)n(u);else{var g=l.$cells[s.session.documentToScreenRow(t,0)].element,f=g.getBoundingClientRect(),p=c.getElement().style;p.left=f.right+"px",p.top=f.bottom+"px"}}function i(){h&&(h=clearTimeout(h)),d&&(c.hide(),d=null,s.removeEventListener("mousewheel",i))}function n(e){c.setPosition(e.x,e.y)}var s=e.editor,l=s.renderer.$gutterLayer,c=new o(s.container);e.editor.setDefaultHandler("guttermousedown",function(t){if(s.isFocused()&&0==t.getButton()){var i=l.getRegion(t);if("foldWidgets"!=i){var n=t.getDocumentPosition().row,o=s.session.selection;if(t.getShiftKey())o.selectTo(n,0);else{if(2==t.domEvent.detail)return s.selectAll(),t.preventDefault();e.$clickSelection=s.selection.getLineRange(n)}return e.setState("selectByLines"),e.captureMouse(t),t.preventDefault()}}});var h,u,d;e.editor.setDefaultHandler("guttermousemove",function(o){var s=o.domEvent.target||o.domEvent.srcElement;return r.hasCssClass(s,"ace_fold-widget")?i():(d&&e.$tooltipFollowsMouse&&n(o),u=o,void(h||(h=setTimeout(function(){h=null,u&&!e.isMousePressed?t():i()},50))))}),a.addListener(s.renderer.$gutter,"mouseout",function(e){u=null,d&&!h&&(h=setTimeout(function(){h=null,i()},50))}),s.on("changeSession",i)}function o(e){l.call(this,e)}var r=e("../lib/dom"),s=e("../lib/oop"),a=e("../lib/event"),l=e("../tooltip").Tooltip;s.inherits(o,l),function(){this.setPosition=function(e,t){var i=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,o=this.getWidth(),r=this.getHeight();e+=15,t+=15,e+o>i&&(e-=e+o-i),t+r>n&&(t-=20+r),l.prototype.setPosition.call(this,e,t)}}.call(o.prototype),t.GutterHandler=n}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";var n=e("../lib/event"),o=e("../lib/useragent"),r=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){n.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){n.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var e=this.editor,t=e.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var i=this.getDocumentPosition();this.$inSelection=t.contains(i.row,i.column)}return this.$inSelection},this.getButton=function(){return n.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=o.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(r.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,i){"use strict";function n(e){function t(e,t){var i=Date.now(),n=!t||e.row!=t.row,r=!t||e.column!=t.column;if(!B||n||r)m.$blockScrolling+=1,m.moveCursorToPosition(e),m.$blockScrolling-=1,B=i,D={x:C,y:E};else{var s=o(D.x,D.y,C,E);s>h?B=null:i-B>=c&&(m.renderer.scrollCursorIntoView(),B=null)}}function i(e,t){var i=Date.now(),n=m.renderer.layerConfig.lineHeight,o=m.renderer.layerConfig.characterWidth,r=m.renderer.scroller.getBoundingClientRect(),s={x:{left:C-r.left,right:r.right-C},y:{top:E-r.top,bottom:r.bottom-E}},a=Math.min(s.x.left,s.x.right),c=Math.min(s.y.top,s.y.bottom),h={row:e.row,column:e.column};2>=a/o&&(h.column+=s.x.left=c/n&&(h.row+=s.y.top=l&&m.renderer.scrollCursorIntoView(h):$=i:$=null}function n(){var e=b;b=m.renderer.screenToTextCoordinates(C,E),t(b,e),i(b,e)}function u(){y=m.selection.toOrientedRange(),w=m.session.addMarker(y,"ace_selection",m.getSelectionStyle()),m.clearSelection(),m.isFocused()&&m.renderer.$cursorLayer.setBlinking(!1),clearInterval(F),n(),F=setInterval(n,20),L=0,s.addListener(document,"mousemove",g)}function d(){clearInterval(F),m.session.removeMarker(w),w=null,m.$blockScrolling+=1,m.selection.fromOrientedRange(y),m.$blockScrolling-=1,m.isFocused()&&!S&&m.renderer.$cursorLayer.setBlinking(!m.getReadOnly()),y=null,b=null,L=0,$=null,B=null,s.removeListener(document,"mousemove",g)}function g(){null==_&&(_=setTimeout(function(){null!=_&&w&&d()},20))}function f(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return"text/plain"==e||"Text"==e})}function p(e){var t=["copy","copymove","all","uninitialized"],i=["move","copymove","linkmove","all","uninitialized"],n=a.isMac?e.altKey:e.ctrlKey,o="uninitialized";try{o=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var r="none";return n&&t.indexOf(o)>=0?r="copy":i.indexOf(o)>=0?r="move":t.indexOf(o)>=0&&(r="copy"),r}var m=e.editor,v=r.createElement("img");v.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",a.isOpera&&(v.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");var A=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];A.forEach(function(t){e[t]=this[t]},this),m.addEventListener("mousedown",this.onMouseDown.bind(e));var w,C,E,F,y,b,x,S,$,B,D,k=m.container,L=0;this.onDragStart=function(e){if(this.cancelDrag||!k.draggable){var t=this;return setTimeout(function(){t.startSelect(),t.captureMouse(e)},0),e.preventDefault()}y=m.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=m.getReadOnly()?"copy":"copyMove",a.isOpera&&(m.container.appendChild(v),v.scrollTop=0),i.setDragImage&&i.setDragImage(v,0,0),a.isOpera&&m.container.removeChild(v),i.clearData(),i.setData("Text",m.session.getTextRange()),S=!0,this.setState("drag")},this.onDragEnd=function(e){if(k.draggable=!1,S=!1,this.setState(null),!m.getReadOnly()){var t=e.dataTransfer.dropEffect;x||"move"!=t||m.session.remove(m.getSelectionRange()),m.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){return!m.getReadOnly()&&f(e.dataTransfer)?(C=e.clientX,E=e.clientY,w||u(),L++,e.dataTransfer.dropEffect=x=p(e),s.preventDefault(e)):void 0},this.onDragOver=function(e){return!m.getReadOnly()&&f(e.dataTransfer)?(C=e.clientX,E=e.clientY,w||(u(),L++),null!==_&&(_=null),e.dataTransfer.dropEffect=x=p(e),s.preventDefault(e)):void 0},this.onDragLeave=function(e){return L--,0>=L&&w?(d(),x=null,s.preventDefault(e)):void 0},this.onDrop=function(e){if(b){var t=e.dataTransfer;if(S)switch(x){case"move":y=y.contains(b.row,b.column)?{start:b,end:b}:m.moveText(y,b);break;case"copy":y=m.moveText(y,b,!0)}else{var i=t.getData("Text");y={start:b,end:m.session.insert(b,i)},m.focus(),x=null}return d(),s.preventDefault(e)}},s.addListener(k,"dragstart",this.onDragStart.bind(e)),s.addListener(k,"dragend",this.onDragEnd.bind(e)),s.addListener(k,"dragenter",this.onDragEnter.bind(e)),s.addListener(k,"dragover",this.onDragOver.bind(e)),s.addListener(k,"dragleave",this.onDragLeave.bind(e)),s.addListener(k,"drop",this.onDrop.bind(e));var _=null}function o(e,t,i,n){return Math.sqrt(Math.pow(i-e,2)+Math.pow(n-t,2))}var r=e("../lib/dom"),s=e("../lib/event"),a=e("../lib/useragent"),l=200,c=200,h=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor,t=e.container;t.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var i=a.isWin?"default":"move";e.renderer.setCursorStyle(i),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(a.isIE&&"dragReady"==this.state){var i=o(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);i>3&&t.dragDrop()}if("dragWait"===this.state){var i=o(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);i>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(this.$dragEnabled){this.mousedownEvent=e;var t=this.editor,i=e.inSelection(),n=e.getButton(),o=e.domEvent.detail||1;if(1===o&&0===n&&i){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var r=e.domEvent.target||e.domEvent.srcElement;if("unselectable"in r&&(r.unselectable="on"),t.getDragDelay()){if(a.isWebKit){this.cancelDrag=!0;var s=t.container;s.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}}).call(n.prototype),t.DragdropHandler=n}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n=e("./dom");t.get=function(e,t){var i=new XMLHttpRequest;i.open("GET",e,!0),i.onreadystatechange=function(){4===i.readyState&&t(i.responseText)},i.send(null)},t.loadScript=function(e,t){var i=n.getDocumentHead(),o=document.createElement("script");o.src=e,i.appendChild(o),o.onload=o.onreadystatechange=function(e,i){(i||!o.readyState||"loaded"==o.readyState||"complete"==o.readyState)&&(o=o.onload=o.onreadystatechange=null,i||t())}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,i){"use strict";var n={},o=function(){this.propagationStopped=!0},r=function(){this.defaultPrevented=!0};n._emit=n._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var i=this._eventRegistry[e]||[],n=this._defaultHandlers[e];if(i.length||n){"object"==typeof t&&t||(t={}),t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=o),t.preventDefault||(t.preventDefault=r),i=i.slice();for(var s=0;sv;v++){var w=m[v];0===w.name.indexOf("data-ace-")&&(s[r(w.name.replace(/^data-ace-/,""))]=w.value)}var C=p.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);C&&(a=C[1])}}a&&(s.base=s.base||a,s.packaged=!0),s.basePath=s.base,s.workerPath=s.workerPath||s.base,s.modePath=s.modePath||s.base,s.themePath=s.themePath||s.base,delete s.base;for(var E in s)"undefined"!=typeof s[E]&&t.set(E,s[E])}function r(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}var s=e("./lib/lang"),a=e("./lib/oop"),l=e("./lib/net"),c=e("./lib/event_emitter").EventEmitter,h=function(){return this}(),u={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};t.get=function(e){if(!u.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return u[e]},t.set=function(e,t){if(!u.hasOwnProperty(e))throw new Error("Unknown config key: "+e);u[e]=t},t.all=function(){return s.copyObject(u)},a.implement(t,c),t.moduleUrl=function(e,t){if(u.$moduleUrls[e])return u.$moduleUrls[e];var i=e.split("/");t=t||i[i.length-2]||"";var n="snippets"==t?"/":"-",o=i[i.length-1];if("worker"==t&&"-"==n){var r=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");o=o.replace(r,"")}(!o||o==t)&&i.length>1&&(o=i[i.length-2]);var s=u[t+"Path"];return null==s?s=u.basePath:"/"==n&&(t=n=""),s&&"/"!=s.slice(-1)&&(s+="/"),s+t+n+o+this.get("suffix")},t.setModuleUrl=function(e,t){return u.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(i,n){var o,r;Array.isArray(i)&&(r=i[0],i=i[1]);try{o=e(i)}catch(s){}if(o&&!t.$loading[i])return n&&n(o);if(t.$loading[i]||(t.$loading[i]=[]),t.$loading[i].push(n),!(t.$loading[i].length>1)){var a=function(){e([i],function(e){t._emit("load.module",{name:i,module:e});var n=t.$loading[i];t.$loading[i]=null,n.forEach(function(t){t&&t(e)})})};return t.get("packaged")?void l.loadScript(t.moduleUrl(i,r),a):a()}},o(!0),t.init=o;var d={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};return e?Array.isArray(e)||(t=e,e=Object.keys(t)):e=Object.keys(this.$options),e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]!==t){var i=this.$options[e];if(!i)return void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+e+'"'));if(i.forwardTo)return this[i.forwardTo]&&this[i.forwardTo].setOption(e,t);i.handlesSet||(this["$"+e]=t),i&&i.set&&i.set.call(this,t)}},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:void("undefined"!=typeof console&&console.warn&&console.warn('misspelled option "'+e+'"'))}},g={};t.defineOptions=function(e,t,i){return e.$options||(g[t]=e.$options={}),Object.keys(i).forEach(function(t){var n=i[t];"string"==typeof n&&(n={forwardTo:n}),n.name||(n.name=t),e.$options[n.name]=n,"initialValue"in n&&(e["$"+n.name]=n.initialValue)}),a.implement(e,d),this},t.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var i=e.$options[t];"value"in i&&e.setOption(t,i.value); +})},t.setDefaultValue=function(e,i,n){var o=g[e]||(g[e]={});o[i]&&(o.forwardTo?t.setDefaultValue(o.forwardTo,i,n):o[i].value=n)},t.setDefaultValues=function(e,i){Object.keys(i).forEach(function(n){t.setDefaultValue(e,n,i[n])})}}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(e,t,i){"use strict";var n=e("../lib/event"),o=e("../lib/useragent"),r=e("./default_handlers").DefaultHandlers,s=e("./default_gutter_handler").GutterHandler,a=e("./mouse_event").MouseEvent,l=e("./dragdrop_handler").DragdropHandler,c=e("../config"),h=function(e){var t=this;this.editor=e,new r(this),new s(this),new l(this);var i=function(t){!e.isFocused()&&e.textInput&&e.textInput.moveToMouse(t),e.focus()},a=e.renderer.getMouseEventTarget();n.addListener(a,"click",this.onMouseEvent.bind(this,"click")),n.addListener(a,"mousemove",this.onMouseMove.bind(this,"mousemove")),n.addMultiMouseDownListener(a,[400,300,250],this,"onMouseEvent"),e.renderer.scrollBarV&&(n.addMultiMouseDownListener(e.renderer.scrollBarV.inner,[400,300,250],this,"onMouseEvent"),n.addMultiMouseDownListener(e.renderer.scrollBarH.inner,[400,300,250],this,"onMouseEvent"),o.isIE&&(n.addListener(e.renderer.scrollBarV.element,"mousedown",i),n.addListener(e.renderer.scrollBarH.element,"mousemove",i))),n.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel"));var c=e.renderer.$gutter;n.addListener(c,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),n.addListener(c,"click",this.onMouseEvent.bind(this,"gutterclick")),n.addListener(c,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),n.addListener(c,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),n.addListener(a,"mousedown",i),n.addListener(c,"mousedown",function(t){return e.focus(),n.preventDefault(t)}),e.on("mousemove",function(i){if(!t.state&&!t.$dragDelay&&t.$dragEnabled){var n=e.renderer.screenToTextCoordinates(i.x,i.y),o=e.session.selection.getRange(),r=e.renderer;r.setCursorStyle(!o.isEmpty()&&o.insideStart(n.row,n.column)?"default":"")}})};(function(){this.onMouseEvent=function(e,t){this.editor._emit(e,new a(t,this.editor))},this.onMouseMove=function(e,t){var i=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;i&&i.length&&this.editor._emit(e,new a(t,this.editor))},this.onMouseWheel=function(e,t){var i=new a(t,this.editor);i.speed=2*this.$scrollSpeed,i.wheelX=t.wheelX,i.wheelY=t.wheelY,this.editor._emit(e,i)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var i=this.editor.renderer;i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=null);var r=this,s=function(e){if(e){if(o.isWebKit&&!e.which&&r.releaseMouse)return r.releaseMouse();r.x=e.clientX,r.y=e.clientY,t&&t(e),r.mouseEvent=new a(e,r.editor),r.$mouseMoved=!0}},l=function(e){clearInterval(h),c(),r[r.state+"End"]&&r[r.state+"End"](e),r.state="",null==i.$keepTextAreaAtCursor&&(i.$keepTextAreaAtCursor=!0,i.$moveTextAreaToCursor()),r.isMousePressed=!1,r.$onCaptureMouseMove=r.releaseMouse=null,e&&r.onMouseEvent("mouseup",e)},c=function(){r[r.state]&&r[r.state](),r.$mouseMoved=!1};if(o.isOldIE&&"dblclick"==e.domEvent.type)return setTimeout(function(){l(e)});r.$onCaptureMouseMove=s,r.releaseMouse=n.capture(this.editor.container,s,l);var h=setInterval(c,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var e=function(t){t&&t.domEvent&&"contextmenu"!=t.domEvent.type||(this.editor.off("nativecontextmenu",e),t&&t.domEvent&&n.stopEvent(t.domEvent))}.bind(this);setTimeout(e,10),this.editor.on("nativecontextmenu",e)}}).call(h.prototype),c.defineOptions(h.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:o.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),t.MouseHandler=h}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(e,t,i){"use strict";function n(e){e.on("click",function(t){var i=t.getDocumentPosition(),n=e.session,o=n.getFoldAt(i.row,i.column,1);o&&(t.getAccelKey()?n.removeFold(o):n.expandFold(o),t.stop())}),e.on("gutterclick",function(t){var i=e.renderer.$gutterLayer.getRegion(t);if("foldWidgets"==i){var n=t.getDocumentPosition().row,o=e.session;o.foldWidgets&&o.foldWidgets[n]&&e.session.onFoldWidgetClick(n,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){var i=e.renderer.$gutterLayer.getRegion(t);if("foldWidgets"==i){var n=t.getDocumentPosition().row,o=e.session,r=o.getParentFoldRangeData(n,!0),s=r.range||r.firstRange;if(s){n=s.start.row;var a=o.getFoldAt(n,o.getLine(n).length,1);a?o.removeFold(a):(o.addFold("...",s),e.renderer.scrollCursorIntoView({row:s.start.row,column:0}))}t.stop()}})}t.FoldHandler=n}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,i){"use strict";var n=e("../lib/keys"),o=e("../lib/event"),r=function(e){this.$editor=e,this.$data={editor:e},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0)},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]!=e){for(;t[t.length-1]&&t[t.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)}},this.addKeyboardHandler=function(e,t){if(e){"function"!=typeof e||e.handleKeyboard||(e.handleKeyboard=e);var i=this.$handlers.indexOf(e);-1!=i&&this.$handlers.splice(i,1),void 0==t?this.$handlers.push(e):this.$handlers.splice(t,0,e),-1==i&&e.attach&&e.attach(this.$editor)}},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return-1==t?!1:(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.getStatusText=function(){var e=this.$data,t=e.editor;return this.$handlers.map(function(i){return i.getStatusText&&i.getStatusText(t,e)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(e,t,i,n){for(var r,s=!1,a=this.$editor.commands,l=this.$handlers.length;l--&&(r=this.$handlers[l].handleKeyboard(this.$data,e,t,i,n),!(r&&r.command&&(s="null"==r.command?!0:a.exec(r.command,this.$editor,r.args,n),s&&n&&-1!=e&&1!=r.passEvent&&1!=r.command.passEvent&&o.stopEvent(n),s))););return s},this.onCommandKey=function(e,t,i){var o=n.keyCodeToString(i);this.$callKeyboardHandlers(t,o,i,e)},this.onTextInput=function(e){var t=this.$callKeyboardHandlers(-1,e);t||this.$editor.commands.exec("insertstring",this.$editor,e)}}).call(r.prototype),t.KeyBinding=r}),ace.define("ace/range",["require","exports","module"],function(e,t,i){"use strict";var n=function(e,t){return e.row-t.row||e.column-t.column},o=function(e,t,i,n){this.start={row:e,column:t},this.end={row:i,column:n}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return 0==this.compare(e,t)},this.compareRange=function(e){var t,i=e.end,n=e.start;return t=this.compare(i.row,i.column),1==t?(t=this.compare(n.row,n.column),1==t?2:0==t?1:0):-1==t?-2:(t=this.compare(n.row,n.column),-1==t?-1:1==t?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return 0==this.comparePoint(e.start)&&0==this.comparePoint(e.end)},this.intersects=function(e){var t=this.compareRange(e);return-1==t||0==t||1==t},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){"object"==typeof e?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){"object"==typeof e?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return 0==this.compare(e,t)?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return 0==this.compare(e,t)?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return 0==this.compare(e,t)?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return this.isMultiLine()||e!==this.start.row?ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0:tthis.end.column?1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var i={row:t+1,column:0};else if(this.end.rowt)var n={row:t+1,column:0};else if(this.start.rowt.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.isEmpty()?s.fromPoints(t,t):this.isBackwards()?s.fromPoints(t,e):s.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var e=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(e,this.doc.getLine(e).length)},this.setRange=this.setSelectionRange=function(e,t){t?(this.setSelectionAnchor(e.end.row,e.end.column),this.selectTo(e.start.row,e.start.column)):(this.setSelectionAnchor(e.start.row,e.start.column),this.selectTo(e.end.row,e.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if("undefined"==typeof t){var i=e||this.lead;e=i.row,t=i.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var i,n="number"==typeof e?e:this.lead.row,o=this.session.getFoldLine(n);return o?(n=o.start.row,i=o.end.row):i=n,t===!0?new s(n,0,i,this.session.getLine(i).length):new s(n,0,i+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,-1))this.moveCursorTo(e.start.row,e.start.column);else if(0===t.column)t.row>0&&this.moveCursorTo(t.row-1,this.doc.getLine(t.row-1).length);else{var i=this.session.getTabSize();this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(t.column-i,t.column).split(" ").length-1==i?this.moveCursorBy(0,-i):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,1))this.moveCursorTo(e.end.row,e.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(t.column=n)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e,t=this.lead.row,i=this.lead.column,n=this.doc.getLine(t),o=n.substring(i);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(t,i,1);return r?void this.moveCursorTo(r.end.row,r.end.column):((e=this.session.nonTokenRe.exec(o))&&(i+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,o=n.substring(i)),i>=n.length?(this.moveCursorTo(t,n.length),this.moveCursorRight(),void(t=i?(this.moveCursorTo(t,0),this.moveCursorLeft(),void(t>0&&this.moveCursorWordLeft())):((r=this.session.tokenRe.exec(s))&&(i-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),void this.moveCursorTo(t,i))},this.$shortWordEndIndex=function(e){var t,i,n=0,o=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,t=this.session.tokenRe.exec(e))n=this.session.tokenRe.lastIndex;else{for(;(i=e[n])&&o.test(i);)n++;if(1>n)for(r.lastIndex=0;(i=e[n])&&!r.test(i);)if(r.lastIndex=0,n++,o.test(i)){if(n>2){n--;break}for(;(i=e[n])&&o.test(i);)n++;if(n>2)break}}return r.lastIndex=0,n},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,i=this.doc.getLine(e),n=i.substring(t),o=this.session.getFoldAt(e,t,1);if(o)return this.moveCursorTo(o.end.row,o.end.column);if(t==i.length){var r=this.doc.getLength();do e++,n=this.doc.getLine(e);while(r>e&&/^\s*$/.test(n));/^\s+/.test(n)||(n=""),t=0}var s=this.$shortWordEndIndex(n);this.moveCursorTo(e,t+s)},this.moveCursorShortWordLeft=function(){var e,t=this.lead.row,i=this.lead.column;if(e=this.session.getFoldAt(t,i,-1))return this.moveCursorTo(e.start.row,e.start.column);var n=this.session.getLine(t).substring(0,i);if(0===i){do t--,n=this.doc.getLine(t);while(t>0&&/^\s*$/.test(n));i=n.length,/\s+$/.test(n)||(n="")}var r=o.stringReverse(n),s=this.$shortWordEndIndex(r);return this.moveCursorTo(t,i-s)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var i=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===t&&(this.$desiredColumn?i.column=this.$desiredColumn:this.$desiredColumn=i.column);var n=this.session.screenToDocumentPosition(i.row+e,i.column);0!==e&&0===t&&n.row===this.lead.row&&n.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[n.row]&&n.row++,this.moveCursorTo(n.row,n.column+t,0===t)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,i){var n=this.session.getFoldAt(e,t,1);n&&(e=n.start.row,t=n.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,i||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,i){var n=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(n.row,n.column,i)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.getRangeOfMovements=function(e){var t=this.getCursor();try{e.call(null,this);var i=this.getCursor();return s.fromPoints(t,i)}catch(n){return s.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},this.fromJSON=function(e){if(void 0==e.start){if(this.rangeList){this.toSingleRange(e[0]);for(var t=e.length;t--;){var i=s.fromPoints(e[t].start,e[t].end);e.isBackwards&&(i.cursor=i.start),this.addRange(i,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(a.prototype),t.Selection=a}),ace.define("ace/tokenizer",["require","exports","module"],function(e,t,i){"use strict";var n=2e3,o=function(e){this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){for(var i=this.states[t],n=[],o=0,r=this.matchMappings[t]={defaultToken:"text"},s="g",a=[],l=0;l1?c.onMatch=this.$applyToken:c.onMatch=c.token),u>1&&(/\\\d/.test(c.regex)?h=c.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+o+1)}):(u=1,h=this.removeCapturingGroups(c.regex)),c.splitRegex||"string"==typeof c.token||a.push(c)),r[o]=l,o+=u,n.push(h),c.onMatch||(c.onMatch=null)}}n.length||(r[0]=0,n.push("$")),a.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,s)},this),this.regExps[t]=new RegExp("("+n.join(")|(")+")|($)",s)}};(function(){this.$setMaxTokenCount=function(e){n=0|e},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),i=this.token.apply(this,t);if("string"==typeof i)return[{type:i,value:e}];for(var n=[],o=0,r=i.length;r>o;o++)t[o]&&(n[n.length]={type:i[o],value:t[o]});return n},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";for(var i=[],n=this.tokenArray,o=0,r=n.length;r>o;o++)t[o+1]&&(i[i.length]={type:n[o],value:t[o+1]});return i},this.removeCapturingGroups=function(e){var t=e.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(e,t){return t?"(?:":e});return t},this.createSplitterRegexp=function(e,t){if(-1!=e.indexOf("(?=")){var i=0,n=!1,o={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,r,s,a,l){return n?n="]"!=a:a?n=!0:s?(i==o.stack&&(o.end=l+1,o.stack=-1),i--):r&&(i++,1!=r.length&&(o.stack=i,o.start=l)),e}),null!=o.end&&/^\)*$/.test(e.substr(o.end))&&(e=e.substring(0,o.start)+e.substr(o.end))}return new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&"string"!=typeof t){var i=t.slice(0);t=i[0],"#tmp"===t&&(i.shift(),t=i.shift())}else var i=[];var o=t||"start",r=this.states[o];r||(o="start",r=this.states[o]);var s=this.matchMappings[o],a=this.regExps[o];a.lastIndex=0;for(var l,c=[],h=0,u=0,d={type:null,value:""};l=a.exec(e);){var g=s.defaultToken,f=null,p=l[0],m=a.lastIndex;if(m-p.length>h){var v=e.substring(h,m-p.length);d.type==g?d.value+=v:(d.type&&c.push(d),d={type:g,value:v})}for(var A=0;An){for(u>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});h1&&i[0]!==o&&i.unshift("#tmp",o),{tokens:c,state:i.length?i:o}},this.reportError=function(e,t){var i=new Error(e);i.data=t,"object"==typeof console&&console.error&&console.error(i),setTimeout(function(){throw i})}}).call(o.prototype),t.Tokenizer=o}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,i){"use strict";var n=e("../lib/lang"),o=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(t)for(var i in e){for(var n=e[i],o=0;o=this.$rowTokens.length;){if(this.$row+=1,e||(e=this.$session.getLength()),this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,i=e[t].start;if(void 0!==i)return i;for(i=0;t>0;)t-=1,i+=e[t].value.length;return i}}).call(n.prototype),t.TokenIterator=n}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,i){"use strict";var n=e("../tokenizer").Tokenizer,o=e("./text_highlight_rules").TextHighlightRules,r=e("./behaviour").Behaviour,s=e("../unicode"),a=e("../lib/lang"),l=e("../token_iterator").TokenIterator,c=e("../range").Range,h=function(){this.HighlightRules=o,this.$behaviour=new r};(function(){this.tokenRe=new RegExp("^["+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules,this.$tokenizer=new n(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,i,n){function o(e){for(var t=i;n>=t;t++)e(r.getLine(t),t)}var r=t.doc,s=!0,l=!0,c=1/0,h=t.getTabSize(),u=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var d=this.lineCommentStart.map(a.escapeRegExp).join("|"),g=this.lineCommentStart[0];else var d=a.escapeRegExp(this.lineCommentStart),g=this.lineCommentStart;d=new RegExp("^(\\s*)(?:"+d+") ?"),u=t.getUseSoftTabs();var f=function(e,t){var i=e.match(d);if(i){var n=i[1].length,o=i[0].length;A(e,n,o)||" "!=i[0][o-1]||o--,r.removeInLine(t,n,o)}},p=g+" ",m=function(e,t){(!s||/\S/.test(e))&&(A(e,c,c)?r.insertInLine({row:t,column:c},p):r.insertInLine({row:t,column:c},g))},v=function(e,t){return d.test(e)},A=function(e,t,i){for(var n=0;t--&&" "==e.charAt(t);)n++;if(n%h!=0)return!1;for(var n=0;" "==e.charAt(i++);)n++;return h>2?n%h!=h-1:n%h==0}}else{if(!this.blockComment)return!1;var g=this.blockComment.start,w=this.blockComment.end,d=new RegExp("^(\\s*)(?:"+a.escapeRegExp(g)+")"),C=new RegExp("(?:"+a.escapeRegExp(w)+")\\s*$"),m=function(e,t){v(e,t)||(!s||/\S/.test(e))&&(r.insertInLine({row:t,column:e.length},w),r.insertInLine({row:t,column:c},g))},f=function(e,t){var i;(i=e.match(C))&&r.removeInLine(t,e.length-i[0].length,e.length),(i=e.match(d))&&r.removeInLine(t,i[1].length,i[0].length)},v=function(e,i){if(d.test(e))return!0;for(var n=t.getTokens(i),o=0;oi&&(c=i),l&&!v(e,t)&&(l=!1)):E>e.length&&(E=e.length)}),c==1/0&&(c=E,s=!1,l=!1),u&&c%h!=0&&(c=Math.floor(c/h)*h),o(l?f:m)},this.toggleBlockComment=function(e,t,i,n){var o=this.blockComment;if(o){!o.start&&o[0]&&(o=o[0]);var r,s,a=new l(t,n.row,n.column),h=a.getCurrentToken(),u=(t.selection,t.selection.toOrientedRange());if(h&&/comment/.test(h.type)){for(var d,g;h&&/comment/.test(h.type);){var f=h.value.indexOf(o.start);if(-1!=f){var p=a.getCurrentTokenRow(),m=a.getCurrentTokenColumn()+f;d=new c(p,m,p,m+o.start.length);break}h=a.stepBackward()}for(var a=new l(t,n.row,n.column),h=a.getCurrentToken();h&&/comment/.test(h.type);){var f=h.value.indexOf(o.end);if(-1!=f){var p=a.getCurrentTokenRow(),m=a.getCurrentTokenColumn()+f;g=new c(p,m,p,m+o.end.length);break}h=a.stepForward()}g&&t.remove(g),d&&(t.remove(d),r=d.start.row,s=-o.start.length)}else s=o.start.length,r=i.start.row,t.insert(i.end,o.end),t.insert(i.start,o.start);u.start.row==r&&(u.start.column+=s),u.end.row==r&&(u.end.column+=s),t.selection.fromOrientedRange(u)}},this.getNextLineIndent=function(e,t,i){return this.$getIndent(t)},this.checkOutdent=function(e,t,i){return!1},this.autoOutdent=function(e,t,i){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)e[t]&&(this.$embeds.push(t),this.$modes[t]=new e[t]);for(var i=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],t=0;tr;r++)if("string"==typeof o[r].token)/keyword|support|storage/.test(o[r].token)&&i.push(o[r].regex);else if("object"==typeof o[r].token)for(var a=0,l=o[r].token.length;l>a;a++)if(/keyword|support|storage/.test(o[r].token[a])){var n=o[r].regex.match(/\(.+?\)/g)[a];i.push(n.substr(1,n.length-2))}this.completionKeywords=i}return e?i.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,i,n){var o=this.$keywordList||this.$createKeywordList();return o.map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(h.prototype),t.Mode=h}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/event_emitter").EventEmitter,r=t.Anchor=function(e,t,i){this.$onChange=this.onChange.bind(this),this.attach(e),"undefined"==typeof i?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){n.implement(this,o),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){var t=e.data,i=t.range;if((i.start.row!=i.end.row||i.start.row==this.row)&&!(i.start.row>this.row||i.start.row==this.row&&i.start.column>this.column)){var n=this.row,o=this.column,r=i.start,s=i.end;"insertText"===t.action?r.row===n&&r.column<=o?r.column===o&&this.$insertRight||(r.row===s.row?o+=s.column-r.column:(o-=r.column,n+=s.row-r.row)):r.row!==s.row&&r.row=o?r.column:Math.max(0,o-(s.column-r.column)):r.row!==s.row&&r.row=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):0>e?(i.row=0,i.column=0):(i.row=e,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),0>t&&(i.column=0),i}}).call(r.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/event_emitter").EventEmitter,r=e("./range").Range,s=e("./anchor").Anchor,a=function(e){this.$lines=[],0===e.length?this.$lines=[""]:Array.isArray(e)?this._insertLines(0,e):this.insert({row:0,column:0},e)};(function(){n.implement(this,o),this.setValue=function(e){var t=this.getLength();this.remove(new r(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new s(this,e,t)},0==="aaa".split(/a/).length?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){this.$newLineMode!==e&&(this.$newLineMode=e,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return"\r\n"==e||"\r"==e||"\n"==e},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.getLine(e.start.row).substring(e.start.column,e.end.column);var t=this.getLines(e.start.row,e.end.row);t[0]=(t[0]||"").substring(e.start.column);var i=t.length-1;return e.end.row-e.start.row==i&&(t[i]=t[i].substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||0===t.length)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var i=this.$split(t),n=i.splice(0,1)[0],o=0==i.length?null:i.splice(i.length-1,1)[0];return e=this.insertInLine(e,n),null!==o&&(e=this.insertNewLine(e),e=this._insertLines(e.row,i),e=this.insertInLine(e,o||"")),e},this.insertLines=function(e,t){return e>=this.getLength()?this.insert({row:e,column:0},"\n"+t.join("\n")):this._insertLines(Math.max(e,0),t)},this._insertLines=function(e,t){if(0==t.length)return{row:e,column:0};for(;t.length>61440;){var i=this._insertLines(e,t.slice(0,61440));t=t.slice(61440),e=i.row}var n=[e,0];n.push.apply(n,t),this.$lines.splice.apply(this.$lines,n);var o=new r(e,0,e+t.length,0),s={action:"insertLines",range:o,lines:t};return this._signal("change",{data:s}),o.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length)); +var i={row:e.row+1,column:0},n={action:"insertText",range:r.fromPoints(e,i),text:this.getNewLineCharacter()};return this._signal("change",{data:n}),i},this.insertInLine=function(e,t){if(0==t.length)return e;var i=this.$lines[e.row]||"";this.$lines[e.row]=i.substring(0,e.column)+t+i.substring(e.column);var n={row:e.row,column:e.column+t.length},o={action:"insertText",range:r.fromPoints(e,n),text:t};return this._signal("change",{data:o}),n},this.remove=function(e){if(e instanceof r||(e=r.fromPoints(e.start,e.end)),e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end),e.isEmpty())return e.start;var t=e.start.row,i=e.end.row;if(e.isMultiLine()){var n=0==e.start.column?t:t+1,o=i-1;e.end.column>0&&this.removeInLine(i,0,e.end.column),o>=n&&this._removeLines(n,o),n!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,i){if(t!=i){var n=new r(e,t,e,i),o=this.getLine(e),s=o.substring(t,i),a=o.substring(0,t)+o.substring(i,o.length);this.$lines.splice(e,1,a);var l={action:"removeText",range:n,text:s};return this._signal("change",{data:l}),n.start}},this.removeLines=function(e,t){return 0>e||t>=this.getLength()?this.remove(new r(e,0,t+1,0)):this._removeLines(e,t)},this._removeLines=function(e,t){var i=new r(e,0,t+1,0),n=this.$lines.splice(e,t-e+1),o={action:"removeLines",range:i,nl:this.getNewLineCharacter(),lines:n};return this._signal("change",{data:o}),n},this.removeNewLine=function(e){var t=this.getLine(e),i=this.getLine(e+1),n=new r(e,t.length,e+1,0),o=t+i;this.$lines.splice(e,2,o);var s={action:"removeText",range:n,text:this.getNewLineCharacter()};this._signal("change",{data:s})},this.replace=function(e,t){if(e instanceof r||(e=r.fromPoints(e.start,e.end)),0==t.length&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;if(this.remove(e),t)var i=this.insert(e.start,t);else i=e.start;return i},this.applyDeltas=function(e){for(var t=0;t=0;t--){var i=e[t],n=r.fromPoints(i.range.start,i.range.end);"insertLines"==i.action?this._removeLines(n.start.row,n.end.row-1):"insertText"==i.action?this.remove(n):"removeLines"==i.action?this._insertLines(n.start.row,i.lines):"removeText"==i.action&&this.insert(n.start,i.text)}},this.indexToPosition=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,o=t||0,r=i.length;r>o;o++)if(e-=i[o].length+n,0>e)return{row:o,column:e+i[o].length+n};return{row:r-1,column:i[r-1].length}},this.positionToIndex=function(e,t){for(var i=this.$lines||this.getAllLines(),n=this.getNewLineCharacter().length,o=0,r=Math.min(e.row,i.length),s=t||0;r>s;++s)o+=i[s].length+n;return o+e.column}}).call(a.prototype),t.Document=a}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/event_emitter").EventEmitter,r=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var i=this;this.$worker=function(){if(i.running){for(var e=new Date,t=i.currentLine,n=-1,o=i.doc;i.lines[t];)t++;var r=t,s=o.getLength(),a=0;for(i.running=!1;s>t;){i.$tokenizeRow(t),n=t;do t++;while(i.lines[t]);if(a++,a%5===0&&new Date-e>20){i.running=setTimeout(i.$worker,20);break}}i.currentLine=t,n>=r&&i.fireUpdateEvent(r,n)}}};(function(){n.implement(this,o),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var i={first:e,last:t};this._signal("update",{data:i})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.range,i=t.start.row,n=t.end.row-i;if(0===n)this.lines[i]=null;else if("removeText"==e.action||"removeLines"==e.action)this.lines.splice(i,n+1,null),this.states.splice(i,n+1,null);else{var o=Array(n+1);o.unshift(i,1),this.lines.splice.apply(this.lines,o),this.states.splice.apply(this.states,o)}this.currentLine=Math.min(i,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),i=this.states[e-1],n=this.tokenizer.getLineTokens(t,i,e);return this.states[e]+""!=n.state+""?(this.states[e]=n.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=n.tokens}}).call(r.prototype),t.BackgroundTokenizer=r}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,i){"use strict";var n=e("./lib/lang"),o=(e("./lib/oop"),e("./range").Range),r=function(e,t,i){this.setRegexp(e),this.clazz=t,this.type=i||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){this.regExp+""!=e+""&&(this.regExp=e,this.cache=[])},this.update=function(e,t,i,r){if(this.regExp)for(var s=r.firstRow,a=r.lastRow,l=s;a>=l;l++){var c=this.cache[l];null==c&&(c=n.getMatchOffsets(i.getLine(l),this.regExp),c.length>this.MAX_RANGES&&(c=c.slice(0,this.MAX_RANGES)),c=c.map(function(e){return new o(l,e.offset,l,e.offset+e.length)}),this.cache[l]=c.length?c:"");for(var h=c.length;h--;)t.drawSingleLineMarker(e,c[h].toScreenRange(i),this.clazz,r)}}}).call(r.prototype),t.SearchHighlight=r}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,i){"use strict";function n(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var i=t[t.length-1];this.range=new o(t[0].start.row,t[0].start.column,i.end.row,i.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}var o=e("../range").Range;(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,i){var n,o,r,s=0,a=this.folds,l=!0;null==t&&(t=this.end.row,i=this.end.column);for(var c=0;ce)return{row:n.start.row,column:n.start.column+e};if(e-=n.placeholder.length,0>e)return n.start;t=n.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(n.prototype),t.FoldLine=n}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("./range").Range,o=n.comparePoints,r=function(){this.ranges=[]};(function(){this.comparePoints=o,this.pointIndex=function(e,t,i){for(var n=this.ranges,r=i||0;r0)){var l=o(e,s.start);return 0===a?t&&0!==l?-r-2:r:l>0||0===l&&!t?r:-r-1}}return-r-1},this.add=function(e){var t=!e.isEmpty(),i=this.pointIndex(e.start,t);0>i&&(i=-i-1);var n=this.pointIndex(e.end,t,i);return 0>n?n=-n-1:n++,this.ranges.splice(i,n-i,e)},this.addList=function(e){for(var t=[],i=e.length;i--;)t.push.call(t,this.add(e[i]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);return t>=0?this.ranges.splice(t,1):void 0},this.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return o(e.start,t.start)});for(var i,n=t[0],r=1;rs||(0!=s||i.isEmpty()||n.isEmpty())&&(o(i.end,n.end)<0&&(i.end.row=n.end.row,i.end.column=n.end.column),t.splice(r,1),e.push(n),n=i,r--)}return this.ranges=t,e},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);return t>=0?this.ranges[t]:void 0},this.clipRows=function(e,t){var i=this.ranges;if(i[0].start.row>t||i[i.length-1].start.rown&&(n=-n-1);var o=this.pointIndex({row:t,column:0},n);0>o&&(o=-o-1);for(var r=[],s=n;o>s;s++)r.push(i[s]);return r},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(e){var t=e.data.range;if("i"==e.data.action[0])var i=t.start,n=t.end;else var n=t.start,i=t.end;for(var o=i.row,r=n.row,s=r-o,a=-i.column+n.column,l=this.ranges,c=0,h=l.length;h>c;c++){var u=l[c];if(!(u.end.rowo)break;if(u.start.row==o&&u.start.column>=i.column&&(u.start.column==i.column&&this.$insertRight||(u.start.column+=a,u.start.row+=s)),u.end.row==o&&u.end.column>=i.column){if(u.end.column==i.column&&this.$insertRight)continue;u.end.column==i.column&&a>0&&h-1>c&&u.end.column>u.start.column&&u.end.column==l[c+1].start.column&&(u.end.column-=a),u.end.column+=a,u.end.row+=s}}}if(0!=s&&h>c)for(;h>c;c++){var u=l[c];u.start.row+=s,u.end.row+=s}}}).call(r.prototype),t.RangeList=r}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(e,t,i){"use strict";function n(e,t){e.row-=t.row,0==e.row&&(e.column-=t.column)}function o(e,t){n(e.start,t),n(e.end,t)}function r(e,t){0==e.row&&(e.column+=t.column),e.row+=t.row}function s(e,t){r(e.start,t),r(e.end,t)}var a=(e("../range").Range,e("../range_list").RangeList),l=e("../lib/oop"),c=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};l.inherits(c,a),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new c(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(!this.range.isEqual(e)){if(!this.range.containsRange(e))throw new Error("A fold can't intersect already existing fold"+e.range+this.range);o(e,this.start);for(var t=e.start.row,i=e.start.column,n=0,r=-1;n=e)return o;if(o.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var i=this.$foldData,n=0;for(t&&(n=i.indexOf(t)),-1==n&&(n=0),n;n=e)return o}return null},this.getFoldedRowCount=function(e,t){for(var i=this.$foldData,n=t-e+1,o=0;o=t){t>a&&(a>=e?n-=t-a:n=0);break}s>=e&&(n-=a>=e?s-a:s-e+1)}return n},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var i,n=this.$foldData,o=!1;e instanceof s?i=e:(i=new s(t,e),i.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(i.range);var a=i.start.row,l=i.start.column,c=i.end.row,h=i.end.column;if(!(c>a||a==c&&h-2>=l))throw new Error("The range has to be at least 2 characters width");var u=this.getFoldAt(a,l,1),d=this.getFoldAt(c,h,-1);if(u&&d==u)return u.addSubFold(i);u&&!u.range.isStart(a,l)&&this.removeFold(u),d&&!d.range.isEnd(c,h)&&this.removeFold(d);var g=this.getFoldsInRange(i.range);g.length>0&&(this.removeFolds(g),g.forEach(function(e){i.addSubFold(e)}));for(var f=0;f0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var i,n;if(null==e?(i=new o(0,0,this.getLength(),0),t=!0):i="number"==typeof e?new o(e,0,e,this.getLine(e).length):"row"in e?o.fromPoints(e,e):e,n=this.getFoldsInRangeList(i),t)this.removeFolds(n);else for(var r=n;r.length;)this.expandFolds(r),r=this.getFoldsInRangeList(i);return n.length?n:void 0},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var i=this.getFoldLine(e,t);return i?i.end.row:e},this.getRowFoldStart=function(e,t){var i=this.getFoldLine(e,t);return i?i.start.row:e},this.getFoldDisplayLine=function(e,t,i,n,o){null==n&&(n=e.start.row),null==o&&(o=0),null==t&&(t=e.end.row),null==i&&(i=this.getLine(t).length);var r=this.doc,s="";return e.walk(function(e,t,i,a){if(!(n>t)){if(t==n){if(o>i)return;a=Math.max(o,a)}s+=null!=e?e:r.getLine(t).substring(a,i)}},t,i),s},this.getDisplayLine=function(e,t,i,n){var o=this.getFoldLine(e);if(o)return this.getFoldDisplayLine(o,e,t,i,n);var r;return r=this.doc.getLine(e),r.substring(n||0,t||r.length)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var i=t.folds.map(function(e){return e.clone()});return new r(e,i)})},this.toggleFold=function(e){var t,i,n=this.selection,o=n.getRange();if(o.isEmpty()){var r=o.start;if(t=this.getFoldAt(r.row,r.column))return void this.expandFold(t);(i=this.findMatchingBracket(r))?1==o.comparePoint(i)?o.end=i:(o.start=i,o.start.column++,o.end.column--):(i=this.findMatchingBracket({row:r.row,column:r.column+1}))?(1==o.comparePoint(i)?o.end=i:o.start=i,o.start.column++):o=this.getCommentFoldRange(r.row,r.column)||o}else{var s=this.getFoldsInRange(o);if(e&&s.length)return void this.expandFolds(s);1==s.length&&(t=s[0])}if(t||(t=this.getFoldAt(o.start.row,o.start.column)),t&&t.range.toString()==o.toString())return void this.expandFold(t);var a="...";if(!o.isMultiLine()){if(a=this.getTextRange(o),a.length<4)return;a=a.trim().substring(0,2)+".."}this.addFold(a,o)},this.getCommentFoldRange=function(e,t,i){var n=new a(this,e,t),r=n.getCurrentToken();if(r&&/^comment|string/.test(r.type)){var s=new o,l=new RegExp(r.type.replace(/\..*/,"\\."));if(1!=i){do r=n.stepBackward();while(r&&l.test(r.type));n.stepForward()}if(s.start.row=n.getCurrentTokenRow(),s.start.column=n.getCurrentTokenColumn()+2,n=new a(this,e,t),-1!=i){do r=n.stepForward();while(r&&l.test(r.type));r=n.stepBackward()}else r=n.getCurrentToken();return s.end.row=n.getCurrentTokenRow(),s.end.column=n.getCurrentTokenColumn()+r.value.length-2,s}},this.foldAll=function(e,t,i){void 0==i&&(i=1e5);var n=this.foldWidgets;if(n){t=t||this.getLength(),e=e||0;for(var o=e;t>o;o++)if(null==n[o]&&(n[o]=this.getFoldWidget(o)),"start"==n[o]){var r=this.getFoldWidgetRange(o);if(r&&r.isMultiLine()&&r.end.row<=t&&r.start.row>=e){o=r.end.row;try{var s=this.addFold("...",r);s&&(s.collapseChildren=i)}catch(a){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=e){this.$foldStyle=e,"manual"==e&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)}},this.$setFolding=function(e){if(this.$foldMode!=e){if(this.$foldMode=e,this.removeListener("change",this.$updateFoldWidgets),this._emit("changeAnnotation"),!e||"manual"==this.$foldStyle)return void(this.foldWidgets=null);this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets)}},this.getParentFoldRangeData=function(e,t){var i=this.foldWidgets;if(!i||t&&i[e])return{};for(var n,o=e-1;o>=0;){var r=i[o];if(null==r&&(r=i[o]=this.getFoldWidget(o)),"start"==r){var s=this.getFoldWidgetRange(o);if(n||(n=s),s&&s.end.row>=e)break}o--}return{range:-1!==o&&s,firstRange:n}},this.onFoldWidgetClick=function(e,t){t=t.domEvent;var i={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},n=this.$toggleFoldWidget(e,i);if(!n){var o=t.target||t.srcElement;o&&/ace_fold-widget/.test(o.className)&&(o.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(this.getFoldWidget){var i=this.getFoldWidget(e),n=this.getLine(e),o="end"===i?-1:1,r=this.getFoldAt(e,-1===o?0:n.length,o);if(r)return void(t.children||t.all?this.removeFold(r):this.expandFold(r));var s=this.getFoldWidgetRange(e,!0);if(s&&!s.isMultiLine()&&(r=this.getFoldAt(s.start.row,s.start.column,1),r&&s.isEqual(r.range)))return void this.removeFold(r);if(t.siblings){var a=this.getParentFoldRangeData(e);if(a.range)var l=a.range.start.row+1,c=a.range.end.row;this.foldAll(l,c,t.all?1e4:0)}else t.children?(c=s?s.end.row:this.getLength(),this.foldAll(e+1,s.end.row,t.all?1e4:0)):s&&(t.all&&(s.collapseChildren=1e4),this.addFold("...",s));return s}},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var i=this.$toggleFoldWidget(t,{});if(!i){var n=this.getParentFoldRangeData(t,!0);if(i=n.range||n.firstRange){t=i.start.row;var o=this.getFoldAt(t,this.getLine(t).length,1);o?this.removeFold(o):this.addFold("...",i)}}},this.updateFoldWidgets=function(e){var t=e.data,i=t.range,n=i.start.row,o=i.end.row-n;if(0===o)this.foldWidgets[n]=null;else if("removeText"==t.action||"removeLines"==t.action)this.foldWidgets.splice(n,o+1,null);else{var r=Array(o+1);r.unshift(n,1),this.foldWidgets.splice.apply(this.foldWidgets,r)}}}var o=e("../range").Range,r=e("./fold_line").FoldLine,s=e("./fold").Fold,a=e("../token_iterator").TokenIterator;t.Folding=n}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,i){"use strict";function n(){this.findMatchingBracket=function(e,t){if(0==e.column)return null;var i=t||this.getLine(e.row).charAt(e.column-1);if(""==i)return null;var n=i.match(/([\(\[\{])|([\)\]\}])/);return n?n[1]?this.$findClosingBracket(n[1],e):this.$findOpeningBracket(n[2],e):null},this.getBracketRange=function(e){var t,i=this.getLine(e.row),n=!0,o=i.charAt(e.column-1),s=o&&o.match(/([\(\[\{])|([\)\]\}])/);if(s||(o=i.charAt(e.column),e={row:e.row,column:e.column+1},s=o&&o.match(/([\(\[\{])|([\)\]\}])/),n=!1),!s)return null;if(s[1]){var a=this.$findClosingBracket(s[1],e);if(!a)return null;t=r.fromPoints(e,a),n||(t.end.column++,t.start.column--),t.cursor=t.end}else{var a=this.$findOpeningBracket(s[2],e);if(!a)return null;t=r.fromPoints(a,e),n||(t.start.column++,t.end.column--),t.cursor=t.start}return t},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(e,t,i){var n=this.$brackets[e],r=1,s=new o(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end|start|begin)\b/,"")+")+"));for(var l=t.column-s.getCurrentTokenColumn()-2,c=a.value;;){for(;l>=0;){var h=c.charAt(l);if(h==n){if(r-=1,0==r)return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else h==e&&(r+=1);l-=1}do a=s.stepBackward();while(a&&!i.test(a.type));if(null==a)break;c=a.value,l=c.length-1}return null}},this.$findClosingBracket=function(e,t,i){var n=this.$brackets[e],r=1,s=new o(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){i||(i=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:end|start|begin)\b/,"")+")+"));for(var l=t.column-s.getCurrentTokenColumn();;){for(var c=a.value,h=c.length;h>l;){var u=c.charAt(l);if(u==n){if(r-=1,0==r)return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else u==e&&(r+=1);l+=1}do a=s.stepForward();while(a&&!i.test(a.type));if(null==a)break;l=0}return null}}}var o=e("../token_iterator").TokenIterator,r=e("../range").Range;t.BracketMatch=n}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/lang"),r=e("./config"),s=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,l=e("./mode/text").Mode,c=e("./range").Range,h=e("./document").Document,u=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,g=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),"object"==typeof e&&e.getLine||(e=new h(e)),this.setDocument(e),this.selection=new a(this),r.resetOptions(this),this.setMode(t),r._signal("session",this)};(function(){function e(e){return 4352>e?!1:e>=4352&&4447>=e||e>=4515&&4519>=e||e>=4602&&4607>=e||e>=9001&&9002>=e||e>=11904&&11929>=e||e>=11931&&12019>=e||e>=12032&&12245>=e||e>=12272&&12283>=e||e>=12288&&12350>=e||e>=12353&&12438>=e||e>=12441&&12543>=e||e>=12549&&12589>=e||e>=12593&&12686>=e||e>=12688&&12730>=e||e>=12736&&12771>=e||e>=12784&&12830>=e||e>=12832&&12871>=e||e>=12880&&13054>=e||e>=13056&&19903>=e||e>=19968&&42124>=e||e>=42128&&42182>=e||e>=43360&&43388>=e||e>=44032&&55203>=e||e>=55216&&55238>=e||e>=55243&&55291>=e||e>=63744&&64255>=e||e>=65040&&65049>=e||e>=65072&&65106>=e||e>=65108&&65126>=e||e>=65128&&65131>=e||e>=65281&&65376>=e||e>=65504&&65510>=e}n.implement(this,s),this.setDocument=function(e){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e)return this.$docRowCache=[],void(this.$screenRowCache=[]);var t=this.$docRowCache.length,i=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>i&&(this.$docRowCache.splice(i,t),this.$screenRowCache.splice(i,t))},this.$getRowCacheIndex=function(e,t){for(var i=0,n=e.length-1;n>=i;){var o=i+n>>1,r=e[o];if(t>r)i=o+1;else{if(!(r>t))return o;n=o-1}}return i-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){var t=e.data;this.$modified=!0,this.$resetRowCache(t.range.start.row);var i=this.$updateInternalDataOnChange(e);this.$fromUndo||!this.$undoManager||t.ignore||(this.$deltasDoc.push(t),i&&0!=i.length&&this.$deltasFold.push({action:"removeFolds",folds:i}),this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(t),this._signal("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var i,n=this.bgTokenizer.getTokens(e),o=0;if(null==t)r=n.length-1,o=this.getLine(e).length;else for(var r=0;r=t));r++);return(i=n[r])?(i.index=r,i.start=o-i.value.length,i):null},this.setUndoManager=function(e){if(this.$undoManager=e,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),e){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]),t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]),t.$deltas.length>0&&e.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas}),t.mergeUndoDeltas=!1,t.$deltas=[]},this.$informUndoManager=o.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?o.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("overwrite",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[]; +for(var t=0;t0&&(n=!!i.charAt(t-1).match(this.tokenRe)),n||(n=!!i.charAt(t).match(this.tokenRe)),n)var o=this.tokenRe;else if(/^\s+$/.test(i.slice(t-1,t+1)))var o=/\s/;else var o=this.nonTokenRe;var r=t;if(r>0){do r--;while(r>=0&&i.charAt(r).match(o));r++}for(var s=t;se&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var t=this.doc.getAllLines(),i=this.$rowLengthCache,n=0,o=0,r=this.$foldData[o],s=r?r.start.row:1/0,a=t.length,l=0;a>l;l++){if(l>s){if(l=r.end.row+1,l>=a)break;r=this.$foldData[o++],s=r?r.start.row:1/0}null==i[l]&&(i[l]=this.$getStringScreenWidth(t[l])[0]),i[l]>n&&(n=i[l])}this.screenWidth=n}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.undoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=e.length-1;-1!=n;n--){var o=e[n];"doc"==o.group?(this.doc.revertDeltas(o.deltas),i=this.$getUndoSelection(o.deltas,!0,i)):o.deltas.forEach(function(e){this.addFolds(e.folds)},this)}return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}},this.redoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var i=null,n=0;ne.end.column&&(r.start.column+=a),r.end.row==e.end.row&&r.end.column>e.end.column&&(r.end.column+=a)),s&&r.start.row>=e.end.row&&(r.start.row+=s,r.end.row+=s)}if(r.end=this.insert(r.start,n),o.length){var l=e.start,h=r.start,s=h.row-l.row,a=h.column-l.column;this.addFolds(o.map(function(e){return e=e.clone(),e.start.row==l.row&&(e.start.column+=a),e.end.row==l.row&&(e.end.column+=a),e.start.row+=s,e.end.row+=s,e}))}return r},this.indentRows=function(e,t,i){i=i.replace(/\t/g,this.getTabString());for(var n=e;t>=n;n++)this.insert({row:n,column:0},i)},this.outdentRows=function(e){for(var t=e.collapseRows(),i=new c(0,0,0,0),n=this.getTabSize(),o=t.start.row;o<=t.end.row;++o){var r=this.getLine(o);i.start.row=o,i.end.row=o;for(var s=0;n>s&&" "==r.charAt(s);++s);n>s&&" "==r.charAt(s)?(i.start.column=s,i.end.column=s+1):(i.start.column=0,i.end.column=s),this.remove(i)}},this.$moveLines=function(e,t,i){if(e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t),0>i){var n=this.getRowFoldStart(e+i);if(0>n)return 0;var o=n-e}else if(i>0){var n=this.getRowFoldEnd(t+i);if(n>this.doc.getLength()-1)return 0;var o=n-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var o=t-e+1}var r=new c(e,0,t,Number.MAX_VALUE),s=this.getFoldsInRange(r).map(function(e){return e=e.clone(),e.start.row+=o,e.end.row+=o,e}),a=0==i?this.doc.getLines(e,t):this.doc.removeLines(e,t);return this.doc.insertLines(e+o,a),s.length&&this.addFolds(s),o},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return 0>t?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){if(t=Math.max(0,t),0>e)e=0,t=0;else{var i=this.doc.getLength();e>=i?(e=i-1,t=this.doc.getLine(i-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){if(this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0),e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)&&(this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this._signal("changeWrapMode"))},this.adjustWrapLimit=function(e,t){var i=this.$wrapLimitRange;i.max<0&&(i={min:t,max:t});var n=this.$constrainWrapLimit(e,i.min,i.max);return n!=this.$wrapLimit&&n>1?(this.$wrapLimit=n,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(e,t,i){return t&&(e=Math.max(t,e)),i&&(e=Math.min(i,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t,i=this.$useWrapMode,n=e.data.action,o=e.data.range.start.row,r=e.data.range.end.row,s=e.data.range.start,a=e.data.range.end,l=null;if(-1!=n.indexOf("Lines")?(r="insertLines"==n?o+e.data.lines.length:o,t=e.data.lines?e.data.lines.length:r-o):t=r-o,this.$updating=!0,0!=t)if(-1!=n.indexOf("remove")){this[i?"$wrapData":"$rowLengthCache"].splice(o,t);var c=this.$foldData;l=this.getFoldsInRange(e.data.range),this.removeFolds(l);var h=this.getFoldLine(a.row),u=0;if(h){h.addRemoveChars(a.row,a.column,s.column-a.column),h.shiftRow(-t);var d=this.getFoldLine(o);d&&d!==h&&(d.merge(h),h=d),u=c.indexOf(h)+1}for(u;u=a.row&&h.shiftRow(-t)}r=o}else{var g=Array(t);g.unshift(o,0);var f=i?this.$wrapData:this.$rowLengthCache;f.splice.apply(f,g);var c=this.$foldData,h=this.getFoldLine(o),u=0;if(h){var p=h.range.compareInside(s.row,s.column);0==p?(h=h.split(s.row,s.column),h&&(h.shiftRow(t),h.addRemoveChars(r,0,a.column-s.column))):-1==p&&(h.addRemoveChars(o,0,a.column-s.column),h.shiftRow(t)),u=c.indexOf(h)+1}for(u;u=o&&h.shiftRow(t)}}else{t=Math.abs(e.data.range.start.column-e.data.range.end.column),-1!=n.indexOf("remove")&&(l=this.getFoldsInRange(e.data.range),this.removeFolds(l),t=-t);var h=this.getFoldLine(o);h&&h.addRemoveChars(o,s.column,t)}return i&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,i?this.$updateWrapData(o,r):this.$updateRowLengthCache(o,r),l},this.$updateRowLengthCache=function(e,t,i){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(e,t){var i,n,o=this.doc.getAllLines(),r=this.getTabSize(),s=this.$wrapData,l=this.$wrapLimit,c=e;for(t=Math.min(t,o.length-1);t>=c;)n=this.getFoldLine(c,n),n?(i=[],n.walk(function(e,t,n,r){var s;if(null!=e){s=this.$getDisplayTokens(e,i.length),s[0]=a;for(var l=1;lt;){var u=s+t;if(e[u-1]>=f&&e[u]>=f)n(u);else if(e[u]!=a&&e[u]!=h){for(var d=Math.max(u-(c?10:t-(t>>2)),s-1);u>d&&e[u]d&&e[u]d&&e[u]==g;)u--}else for(;u>d&&e[u]d?n(++u):(u=s+t,e[u]==i&&u--,n(u))}else{for(u;u!=s-1&&e[u]!=a;u--);if(u>s){n(u);continue}for(u=s+t;uc;c++)s.push(m)}else 32==l?s.push(f):l>39&&48>l||l>57&&64>l?s.push(g):l>=4352&&e(l)?s.push(t,i):s.push(t)}return s},this.$getStringScreenWidth=function(t,i,n){if(0==i)return[0,0];null==i&&(i=1/0),n=n||0;var o,r;for(r=0;r=4352&&e(o)?2:1,!(n>i));r++);return[n,r]},this.lineWidgets=null,this.getRowLength=function(e){if(this.lineWidgets)var t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0;else t=0;return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.getRowLineCount=function(e){return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1:1},this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var i=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(i)},this.getDocumentLastRowColumnPosition=function(e,t){var i=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(i,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:void 0},this.getScreenTabSize=function(e){return this.$tabSize-e%this.$tabSize},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t){if(0>e)return{row:0,column:0};var i,n,o=0,r=0,s=0,a=0,l=this.$screenRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0)var s=l[c],o=this.$docRowCache[c],u=e>l[h-1];else var u=!h;for(var d=this.getLength()-1,g=this.getNextFoldLine(o),f=g?g.start.row:1/0;e>=s&&(a=this.getRowLength(o),!(s+a>e||o>=d));)s+=a,o++,o>f&&(o=g.end.row+1,g=this.getNextFoldLine(o,g),f=g?g.start.row:1/0),u&&(this.$docRowCache.push(o),this.$screenRowCache.push(s));if(g&&g.start.row<=o)i=this.getFoldDisplayLine(g),o=g.start.row;else{if(e>=s+a||o>d)return{row:d,column:this.getLine(d).length};i=this.getLine(o),g=null}if(this.$useWrapMode){var p=this.$wrapData[o];if(p){var m=Math.floor(e-s);n=p[m],m>0&&p.length&&(r=p[m-1]||p[p.length-1],i=i.substring(r))}}return r+=this.$getStringScreenWidth(i,t)[1],this.$useWrapMode&&r>=n&&(r=n-1),g?g.idxToPosition(r):{row:o,column:r}},this.documentToScreenPosition=function(e,t){if("undefined"==typeof t)var i=this.$clipPositionToDocument(e.row,e.column);else i=this.$clipPositionToDocument(e,t);e=i.row,t=i.column;var n=0,o=null,r=null;r=this.getFoldAt(e,t,1),r&&(e=r.start.row,t=r.start.column);var s,a=0,l=this.$docRowCache,c=this.$getRowCacheIndex(l,e),h=l.length;if(h&&c>=0)var a=l[c],n=this.$screenRowCache[c],u=e>l[h-1];else var u=!h;for(var d=this.getNextFoldLine(a),g=d?d.start.row:1/0;e>a;){if(a>=g){if(s=d.end.row+1,s>e)break;d=this.getNextFoldLine(s,d),g=d?d.start.row:1/0}else s=a+1;n+=this.getRowLength(a),a=s,u&&(this.$docRowCache.push(a),this.$screenRowCache.push(n))}var f="";if(d&&a>=g?(f=this.getFoldDisplayLine(d,e,t),o=d.start.row):(f=this.getLine(e).substring(0,t),o=e),this.$useWrapMode){var p=this.$wrapData[o];if(p){for(var m=0;f.length>=p[m];)n++,m++;f=f.substring(p[m-1]||0,f.length)}}return{row:n,column:this.$getStringScreenWidth(f)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(this.$useWrapMode)for(var i=this.$wrapData.length,n=0,o=0,t=this.$foldData[o++],r=t?t.start.row:1/0;i>n;){var s=this.$wrapData[n];e+=s?s.length+1:1,n++,n>r&&(n=t.end.row+1,t=this.$foldData[o++],r=t?t.start.row:1/0)}else{e=this.getLength();for(var a=this.$foldData,o=0;o=u;u++){for(var d=0;c>d;d++)if(-1==o[u+d].search(a[d]))continue e;var g=o[u],f=o[u+c-1],p=g.length-g.match(a[0])[0].length,m=f.match(a[c-1])[0].length;l&&l.end.row===u&&l.end.column>p||(s.push(l=new r(u,p,u+c-1,m)),c>2&&(u=u+c-2))}}else for(var v=0;vv&&s[v].start.columnv&&s[d].end.column>E&&s[d].end.row==i.end.row;)d--;for(s=s.slice(v,d+1),v=0,d=s.length;d>v;v++)s[v].start.row+=i.start.row,s[v].end.row+=i.start.row}return s},this.replace=function(e,t){var i=this.$options,n=this.$assembleRegExp(i);if(i.$isMultiLine)return t;if(n){var o=n.exec(e);if(!o||o[0].length!=e.length)return null;if(t=e.replace(n,t),i.preserveCase){t=t.split("");for(var r=Math.min(e.length,e.length);r--;){var s=e[r];s&&s.toLowerCase()!=s?t[r]=t[r].toUpperCase():t[r]=t[r].toLowerCase()}t=t.join("")}return t}},this.$matchIterator=function(e,t){var i=this.$assembleRegExp(t);if(!i)return!1;var o,s=this,a=t.backwards;if(t.$isMultiLine)var l=i.length,c=function(t,n,s){var a=t.search(i[0]);if(-1!=a){for(var c=1;l>c;c++)if(t=e.getLine(n+c),-1==t.search(i[c]))return;var h=t.match(i[l-1])[0].length,u=new r(n,a,n+l-1,h);return 1==i.offset?(u.start.row--,u.start.column=Number.MAX_VALUE):s&&(u.start.column+=s),o(u)?!0:void 0}};else if(a)var c=function(e,t,r){for(var s=n.getMatchOffsets(e,i),a=s.length-1;a>=0;a--)if(o(s[a],t,r))return!0};else var c=function(e,t,r){for(var s=n.getMatchOffsets(e,i),a=0;a=s;n--)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=a,s=r.row;n>=s;n--)if(i(e.getLine(n),n))return}}:function(i){var n=r.row,o=e.getLine(n).substr(r.column);if(!i(o,n,r.column)){for(n+=1;a>=n;n++)if(i(e.getLine(n),n))return;if(0!=t.wrap)for(n=s,a=r.row;a>=n;n++)if(i(e.getLine(n),n))return}};return{forEach:l}}}).call(s.prototype),t.Search=s}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,i){"use strict";function n(e,t){this.platform=t||(s.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function o(e,t){n.call(this,e,t),this.$singleCommand=!1}var r=e("../lib/keys"),s=e("../lib/useragent"),a=r.KEY_MODS;o.prototype=n.prototype,function(){this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e,t){var i=e&&("string"==typeof e?e:e.name);e=this.commands[i],t||delete this.commands[i];var n=this.commandKeyBinding;for(var o in n){var r=n[o];if(r==e)delete n[o];else if(Array.isArray(r)){var s=r.indexOf(e);-1!=s&&(r.splice(s,1),1==r.length&&(n[o]=r[0]))}}},this.bindKey=function(e,t,i){return"object"==typeof e&&(e=e[this.platform]),e?"function"==typeof t?this.addCommand({exec:t,bindKey:e,name:t.name||e}):void e.split("|").forEach(function(e){var n="";if(-1!=e.indexOf(" ")){var o=e.split(/\s+/);e=o.pop(),o.forEach(function(e){var t=this.parseKeys(e),i=a[t.hashId]+t.key;n+=(n?" ":"")+i,this._addCommandToBinding(n,"chainKeys")},this),n+=" "}var r=this.parseKeys(e),s=a[r.hashId]+r.key;this._addCommandToBinding(n+s,t,i)},this):void 0},this._addCommandToBinding=function(e,t,i){var n,o=this.commandKeyBinding;t?!o[e]||this.$singleCommand?o[e]=t:(Array.isArray(o[e])?-1!=(n=o[e].indexOf(t))&&o[e].splice(n,1):o[e]=[o[e]],i||t.isDefault?o[e].unshift(t):o[e].push(t)):delete o[e]},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var i=e[t];if(i){if("string"==typeof i)return this.bindKey(i,t);"function"==typeof i&&(i={exec:i}),"object"==typeof i&&(i.name||(i.name=t),this.addCommand(i))}},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},this.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),i=t.pop(),n=r[i];if(r.FUNCTION_KEYS[n])i=r.FUNCTION_KEYS[n].toLowerCase();else{if(!t.length)return{key:i,hashId:-1};if(1==t.length&&"shift"==t[0])return{key:i.toUpperCase(),hashId:-1}}for(var o=0,s=t.length;s--;){var a=r.KEY_MODS[t[s]];if(null==a)return"undefined"!=typeof console&&console.error("invalid modifier "+t[s]+" in "+e),!1;o|=a}return{key:i,hashId:o}},this.findKeyCommand=function(e,t){var i=a[e]+t;return this.commandKeyBinding[i]},this.handleKeyboard=function(e,t,i,n){var o=a[t]+i,r=this.commandKeyBinding[o];return e.$keyChain&&(e.$keyChain+=" "+o,r=this.commandKeyBinding[e.$keyChain]||r),!r||"chainKeys"!=r&&"chainKeys"!=r[r.length-1]?(e.$keyChain&&n>0&&(e.$keyChain=""),{command:r}):(e.$keyChain=e.$keyChain||o,{command:"null"})}}.call(n.prototype),t.HashHandler=n,t.MultiHashHandler=o}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),o=e("../keyboard/hash_handler").MultiHashHandler,r=e("../lib/event_emitter").EventEmitter,s=function(e,t){o.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};n.inherits(s,o),function(){n.implement(this,r),this.exec=function(e,t,i){if(Array.isArray(e)){for(var n=e.length;n--;)if(this.exec(e[n],t,i))return!0;return!1}if("string"==typeof e&&(e=this.commands[e]),!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;var o={editor:t,command:e,args:i};return o.returnValue=this._emit("exec",o),this._signal("afterExec",o),o.returnValue===!1?!1:!0},this.toggleRecording=function(e){return this.$inReplay?void 0:(e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0))},this.replay=function(e){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){"string"==typeof t?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(e){return e.map(function(e){return"string"!=typeof e[0]&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(s.prototype),t.CommandManager=s}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,i){"use strict";function n(e,t){return{win:e,mac:t}}var o=e("../lib/lang"),r=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",bindKey:n("Ctrl-,","Command-,"),exec:function(e){r.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:n("Alt-E","Ctrl-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:n("Alt-Shift-E","Ctrl-Shift-E"),exec:function(e){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:n("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",bindKey:n(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:n("Ctrl-L","Command-L"),exec:function(e){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||e.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:n("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:n("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:n("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:n("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:n("Ctrl-Alt-0","Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:n("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:n("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:n("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:n("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:n("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:n("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",bindKey:n("Ctrl-F","Command-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:n("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:n("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:n("Shift-Up","Shift-Up"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",readOnly:!0},{ +name:"golineup",bindKey:n("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",readOnly:!0},{name:"selecttoend",bindKey:n("Ctrl-Shift-End","Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:n("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:n("Shift-Down","Shift-Down"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:n("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:n("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:n("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:n("Alt-Shift-Left","Command-Shift-Left"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:n("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:n("Shift-Left","Shift-Left"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:n("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:n("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:n("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:n("Alt-Shift-Right","Command-Shift-Right"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:n("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:n("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:n("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:n(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:n("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:n(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:n("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:n("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:n("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",bindKey:n("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",bindKey:n("Ctrl-P","Ctrl-P"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",readOnly:!0},{name:"selecttomatching",bindKey:n("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",readOnly:!0},{name:"passKeysToBrowser",bindKey:n("null","null"),exec:function(){},passEvent:!0,readOnly:!0},{name:"cut",exec:function(e){var t=e.getSelectionRange();e._emit("cut",t),e.selection.isEmpty()||(e.session.remove(t),e.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"removeline",bindKey:n("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:n("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:n("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:n("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:n("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:n("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:n("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},multiSelectAction:"forEach"},{name:"replace",bindKey:n("Ctrl-H","Command-Option-F"),exec:function(e){r.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",bindKey:n("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",bindKey:n("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",bindKey:n("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:n("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:n("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:n("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:n("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:n("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:n("Shift-Delete",null),exec:function(e){return e.selection.isEmpty()?void e.remove("left"):!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:n("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:n("Alt-Delete","Ctrl-K"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:n("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:n("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:n("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:n("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:n("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:n("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(e,t){e.insert(o.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:n(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:n("Ctrl-T","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:n("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:n("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:n("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:n(null,null),exec:function(e){for(var t=e.selection.isBackwards(),i=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),n=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),r=e.session.doc.getLine(i.row).length,a=e.session.doc.getTextRange(e.selection.getRange()),l=a.replace(/\n\s*/," ").length,c=e.session.doc.getLine(i.row),h=i.row+1;h<=n.row+1;h++){var u=o.stringTrimLeft(o.stringTrimRight(e.session.doc.getLine(h)));0!==u.length&&(u=" "+u),c+=u}n.row+10?(e.selection.moveCursorTo(i.row,i.column),e.selection.selectTo(i.row,i.column+l)):(r=e.session.doc.getLine(i.row).length>r?r+1:r,e.selection.moveCursorTo(i.row,r))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:n(null,null),exec:function(e){var t=e.session.doc.getLength()-1,i=e.session.doc.getLine(t).length,n=e.selection.rangeList.ranges,o=[];n.length<1&&(n=[e.selection.getRange()]);for(var r=0;r=n.lastRow||i.end.row<=n.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==t.scrollIntoView&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(e){if(this.$mergeUndoDeltas){var t=this.prevOp,i=this.$mergeableCommands,n=t.command&&e.command.name==t.command.name;if("insertstring"==e.command.name){var o=e.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),n=n&&this.mergeNextCommand&&(!/\s/.test(o)||/\s/.test(t.args)),this.mergeNextCommand=!0}else n=n&&-1!==i.indexOf(e.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(n=!1),n?this.session.mergeUndoDeltas=!0:-1!==i.indexOf(e.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(e,t){if(e&&"string"==typeof e){this.$keybindingId=e;var i=this;v.loadModule(["keybinding",e],function(n){i.$keybindingId==e&&i.keyBinding.setKeyboardHandler(n&&n.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session!=e){var t=this.session;if(t){this.session.removeEventListener("change",this.$onDocumentChange),this.session.removeEventListener("changeMode",this.$onChangeMode),this.session.removeEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.session.removeEventListener("changeTabSize",this.$onChangeTabSize),this.session.removeEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.session.removeEventListener("changeWrapMode",this.$onChangeWrapMode),this.session.removeEventListener("onChangeFold",this.$onChangeFold),this.session.removeEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.session.removeEventListener("changeBackMarker",this.$onChangeBackMarker),this.session.removeEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.session.removeEventListener("changeAnnotation",this.$onChangeAnnotation),this.session.removeEventListener("changeOverwrite",this.$onCursorChange),this.session.removeEventListener("changeScrollTop",this.$onScrollTopChange),this.session.removeEventListener("changeScrollLeft",this.$onScrollLeftChange);var i=this.session.getSelection();i.removeEventListener("changeCursor",this.$onCursorChange),i.removeEventListener("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.addEventListener("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.addEventListener("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.addEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.addEventListener("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.addEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.addEventListener("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.addEventListener("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.addEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.addEventListener("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.addEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.addEventListener("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.addEventListener("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.addEventListener("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.addEventListener("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.addEventListener("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.addEventListener("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this})}},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?1==t?this.navigateFileEnd():-1==t&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e,t){this.renderer.setTheme(e,t)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||o.computedStyle(this.container,"fontSize")},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=t.findMatchingBracket(e.getCursorPosition());if(i)var n=new g(i.row,i.column,i.row,i.column+1);else if(t.$mode.getMatching)var n=t.$mode.getMatching(e.session);n&&(t.$bracketHighlight=t.addMarker(n,"ace_bracket","text"))}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var e=this;this.$highlightTagPending=!0,setTimeout(function(){e.$highlightTagPending=!1;var t=e.session;if(t&&t.bgTokenizer){var i=e.getCursorPosition(),n=new A(e.session,i.row,i.column),o=n.getCurrentToken();if(!o||-1===o.type.indexOf("tag-name"))return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);var r=o.value,s=0,a=n.stepBackward();if("<"==a.value){do a=o,o=n.stepForward(),o&&o.value===r&&-1!==o.type.indexOf("tag-name")&&("<"===a.value?s++:"=0)}else{do o=a,a=n.stepBackward(),o&&o.value===r&&-1!==o.type.indexOf("tag-name")&&("<"===a.value?s++:"=s);n.stepForward()}if(!o)return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);var l=n.getCurrentTokenRow(),c=n.getCurrentTokenColumn(),h=new g(l,c,l,c+o.value.length);t.$tagHighlight&&0!==h.compareRange(t.$backMarkers[t.$tagHighlight].range)&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null),h&&!t.$tagHighlight&&(t.$tagHighlight=t.addMarker(h,"ace_bracket","text"))}},50)}},this.focus=function(){var e=this;setTimeout(function(){e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(e){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e))},this.onBlur=function(e){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(e){var t,i=e.data,n=i.range;t=n.start.row==n.end.row&&"insertLines"!=i.action&&"removeLines"!=i.action?n.end.row:1/0,this.renderer.updateLines(n.start.row,t,this.session.$useWrapMode),this._signal("change",e),this.$cursorChange(),this.$updateHighlightActiveLine()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||this.renderer.scrollCursorIntoView(),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var e,t=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(e=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(e=!1)),t.$highlightLineMarker&&!e)t.removeMarker(t.$highlightLineMarker.id),t.$highlightLineMarker=null;else if(!t.$highlightLineMarker&&e){var i=new g(e.row,e.column,e.row,1/0);i.id=t.addMarker(i,"ace_active-line","screenLine"),t.$highlightLineMarker=i}else e&&(t.$highlightLineMarker.start.row=e.row,t.$highlightLineMarker.end.row=e.row,t.$highlightLineMarker.start.column=e.column,t._signal("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;if(t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var i=this.selection.getRange(),n=this.getSelectionStyle();t.$selectionMarker=t.addMarker(i,"ace_selection",n)}var o=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(o),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(!t.isEmpty()&&!t.isMultiLine()){var i=t.start.column-1,n=t.end.column+1,o=e.getLine(t.start.row),r=o.length,s=o.substring(Math.max(i,0),Math.min(n,r));if(!(i>=0&&/^[\w\d]/.test(s)||r>=n&&/[\w\d]$/.test(s))&&(s=o.substring(t.start.column,t.end.column),/^[\w\d]+$/.test(s))){var a=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s});return a}}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText();return this._signal("copy",e),e},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e){if(!this.$readOnly){var t={text:e};this._signal("paste",t),this.insert(t.text,!0)}},this.execCommand=function(e,t){return this.commands.exec(e,this,t)},this.insert=function(e,t){var i=this.session,n=i.getMode(),o=this.getCursorPosition();if(this.getBehavioursEnabled()&&!t){var r=n.transformAction(i.getState(o.row),"insertion",this,i,e);r&&(e!==r.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),e=r.text)}if(" "==e&&(e=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()){var s=new g.fromPoints(o,o);s.end.column+=e.length,this.session.remove(s)}}else{var s=this.getSelectionRange();o=this.session.remove(s),this.clearSelection()}if("\n"==e||"\r\n"==e){var a=i.getLine(o.row);if(o.column>a.search(/\S|$/)){var l=a.substr(o.column).search(/\S|$/);i.doc.removeInLine(o.row,o.column,o.column+l)}}this.clearSelection();var c=o.column,h=i.getState(o.row),a=i.getLine(o.row),u=n.checkOutdent(h,a,e);i.insert(o,e);if(r&&r.selection&&this.selection.setSelectionRange(2==r.selection.length?new g(o.row,c+r.selection[0],o.row,c+r.selection[1]):new g(o.row+r.selection[0],r.selection[1],o.row+r.selection[2],r.selection[3])),i.getDocument().isNewLine(e)){var d=n.getNextLineIndent(h,a.slice(0,o.column),i.getTabString());i.insert({row:o.row+1,column:0},d)}u&&n.autoOutdent(h,i,o.row)},this.onTextInput=function(e){this.keyBinding.onTextInput(e)},this.onCommandKey=function(e,t,i){this.keyBinding.onCommandKey(e,t,i)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&("left"==e?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var i=this.session,n=i.getState(t.start.row),o=i.getMode().transformAction(n,"deletion",this,i,t);if(0===t.end.column){var r=i.getTextRange(t);if("\n"==r[r.length-1]){var s=i.getLine(t.end.row);/^\s+$/.test(s)&&(t.end.column=s.length)}}o&&(t=o)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(this.selection.isEmpty()){var e=this.getCursorPosition(),t=e.column;if(0!==t){var i,n,o=this.session.getLine(e.row);tt.toLowerCase()?1:0});for(var n=new g(0,0,0,0),o=e.first;o<=e.last;o++){var r=t.getLine(o);n.start.row=o,n.end.row=o,n.end.column=r.length,t.replace(n,i[o-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),i=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,i,e)},this.getNumberAt=function(e,t){var i=/[\-]?[0-9]+(?:\.[0-9]+)?/g;i.lastIndex=0;for(var n=this.session.getLine(e);i.lastIndex=t){var r={value:o[0],start:o.index,end:o.index+o[0].length};return r}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,i=this.selection.getCursor().column,n=new g(t,i-1,t,i),o=this.session.getTextRange(n);if(!isNaN(parseFloat(o))&&isFinite(o)){var r=this.getNumberAt(t,i);if(r){var s=r.value.indexOf(".")>=0?r.start+r.value.indexOf(".")+1:r.end,a=r.start+r.value.length-s,l=parseFloat(r.value);l*=Math.pow(10,a),e*=s!==r.end&&s>i?Math.pow(10,r.end-i-1):Math.pow(10,r.end-i),l+=e,l/=Math.pow(10,a);var c=l.toFixed(a),h=new g(t,r.start,t,r.end);this.session.replace(h,c),this.moveCursorTo(t,Math.max(r.start+1,i+c.length-r.value.length))}}},this.removeLines=function(){var e,t=this.$getSelectedRows();e=0===t.first||t.last+1=s;)r[a].moveBy(o,0),a--}t.fromOrientedRange(t.ranges[0]),t.rangeList.attach(this.session)}},this.$getSelectedRows=function(){var e=this.getSelectionRange().collapseRows();return{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var i=this.renderer,n=this.renderer.layerConfig,o=e*Math.floor(n.height/n.lineHeight);this.$blockScrolling++,t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(o,0)}):t===!1&&(this.selection.moveCursorBy(o,0),this.selection.clearSelection()),this.$blockScrolling--;var r=i.scrollTop;i.scrollBy(0,o*n.lineHeight),null!=t&&i.scrollCursorIntoView(null,.5),i.animateScrolling(r)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,i,n){this.renderer.scrollToLine(e,t,i,n)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e,t){var i=this.getCursorPosition(),n=new A(this.session,i.row,i.column),o=n.getCurrentToken(),r=o||n.stepForward();if(r){var s,a,l=!1,c={},h=i.column-r.start,u={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(r.value.match(/[{}()\[\]]/g)){for(;h=0;--r)this.$tryReplace(i[r],e)&&n++;return this.selection.setSelectionRange(o),this.$blockScrolling-=1,n},this.$tryReplace=function(e,t){var i=this.session.getTextRange(e);return t=this.$search.replace(i,t),null!==t?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,i){t||(t={}),"string"==typeof e||e instanceof RegExp?t.needle=e:"object"==typeof e&&n.mixin(t,e);var o=this.selection.getRange();null==t.needle&&(e=this.session.getTextRange(o)||this.$search.$options.needle,e||(o=this.session.getWordRange(o.start.row,o.start.column),e=this.session.getTextRange(o)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:o});var r=this.$search.find(this.session);return t.preventScroll?r:r?(this.revealRange(r,i),r):(t.backwards?o.start=o.end:o.end=o.start,void this.selection.setRange(o))},this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.$blockScrolling+=1,this.session.unfold(e),this.selection.setSelectionRange(e),this.$blockScrolling-=1;var i=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(i)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy()},this.setAutoScrollEditorIntoView=function(e){if(e){var t,i=this,n=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var o=this.$scrollAnchor;o.style.cssText="position:absolute",this.container.insertBefore(o,this.container.firstChild);var r=this.on("changeSelection",function(){n=!0}),s=this.renderer.on("beforeRender",function(){n&&(t=i.renderer.container.getBoundingClientRect())}),a=this.renderer.on("afterRender",function(){if(n&&t&&(i.isFocused()||i.searchBox&&i.searchBox.isFocused())){var e=i.renderer,r=e.$cursorLayer.$pixelPos,s=e.layerConfig,a=r.top-s.offset;n=r.top>=0&&a+t.top<0?!0:r.topwindow.innerHeight?!1:null,null!=n&&(o.style.top=a+"px",o.style.left=r.left+"px",o.style.height=s.lineHeight+"px",o.scrollIntoView(n)),n=t=null}});this.setAutoScrollEditorIntoView=function(e){e||(delete this.setAutoScrollEditorIntoView,this.removeEventListener("changeSelection",r),this.renderer.removeEventListener("afterRender",a),this.renderer.removeEventListener("beforeRender",s))}}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;t&&(t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&"wide"!=e,o.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e)))}}).call(w.prototype),v.defineOptions(w.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",foldStyle:"session",mode:"session"}),t.Editor=w}),ace.define("ace/undomanager",["require","exports","module"],function(e,t,i){"use strict";var n=function(){this.reset()};(function(){this.execute=function(e){var t=e.args[0];this.$doc=e.args[1],e.merge&&this.hasUndo()&&(this.dirtyCounter--,t=this.$undoStack.pop().concat(t)),this.$undoStack.push(t),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(e){var t=this.$undoStack.pop(),i=null;return t&&(i=this.$doc.undoChanges(t,e),this.$redoStack.push(t),this.dirtyCounter--),i},this.redo=function(e){var t=this.$redoStack.pop(),i=null;return t&&(i=this.$doc.redoChanges(t,e),this.$undoStack.push(t),this.dirtyCounter++),i},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter}}).call(n.prototype),t.UndoManager=n}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/dom"),o=e("../lib/oop"),r=e("../lib/lang"),s=e("../lib/event_emitter").EventEmitter,a=function(e){this.element=n.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){o.implement(this,s),this.setSession=function(e){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;ts&&(p=r.end.row+1,r=t.getNextFoldLine(p,r),s=r?r.start.row:1/0),p>o){for(;this.$cells.length>f+1;)g=this.$cells.pop(),this.element.removeChild(g.element);break}g=this.$cells[++f],g||(g={element:null,textNode:null,foldWidget:null},g.element=n.createElement("div"),g.textNode=document.createTextNode(""),g.element.appendChild(g.textNode),this.element.appendChild(g.element),this.$cells[f]=g);var m="ace_gutter-cell ";l[p]&&(m+=l[p]),c[p]&&(m+=c[p]),this.$annotations[p]&&(m+=this.$annotations[p].className),g.element.className!=m&&(g.element.className=m);var v=t.getRowLength(p)*e.lineHeight+"px";if(v!=g.element.style.height&&(g.element.style.height=v),a){var A=a[p];null==A&&(A=a[p]=t.getFoldWidget(p))}if(A){g.foldWidget||(g.foldWidget=n.createElement("span"),g.element.appendChild(g.foldWidget));var m="ace_fold-widget ace_"+A;m+="start"==A&&p==s&&pi.right-t.right?"foldWidgets":void 0}}).call(a.prototype),t.Gutter=a}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,i){"use strict";var n=e("../range").Range,o=e("../lib/dom"),r=function(e){this.element=o.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.update=function(e){var e=e||this.config;if(e){this.config=e;var t=[];for(var i in this.markers){var n=this.markers[i];if(n.range){var o=n.range.clipRows(e.firstRow,e.lastRow);if(!o.isEmpty())if(o=o.toScreenRange(this.session),n.renderer){var r=this.$getTop(o.start.row,e),s=this.$padding+o.start.column*e.characterWidth;n.renderer(t,o,s,r,e)}else"fullLine"==n.type?this.drawFullLineMarker(t,o,n.clazz,e):"screenLine"==n.type?this.drawScreenLineMarker(t,o,n.clazz,e):o.isMultiLine()?"text"==n.type?this.drawTextMarker(t,o,n.clazz,e):this.drawMultiLineMarker(t,o,n.clazz,e):this.drawSingleLineMarker(t,o,n.clazz+" ace_start",e)}else n.update(t,this,this.session,e)}this.element.innerHTML=t.join("")}},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(e,t,i,o,r){var s=t.start.row,a=new n(s,t.start.column,s,this.session.getScreenLastRowColumn(s));for(this.drawSingleLineMarker(e,a,i+" ace_start",o,1,r),s=t.end.row,a=new n(s,0,s,t.end.column),this.drawSingleLineMarker(e,a,i,o,0,r),s=t.start.row+1;s
      "),a=this.$getTop(t.end.row,n);var c=t.end.column*n.characterWidth;e.push("
      "),s=(t.end.row-t.start.row-1)*n.lineHeight,0>s||(a=this.$getTop(t.start.row+1,n),e.push("
      "))},this.drawSingleLineMarker=function(e,t,i,n,o,r){var s=n.lineHeight,a=(t.end.column+(o||0)-t.start.column)*n.characterWidth,l=this.$getTop(t.start.row,n),c=this.$padding+t.start.column*n.characterWidth;e.push("
      ")},this.drawFullLineMarker=function(e,t,i,n,o){var r=this.$getTop(t.start.row,n),s=n.lineHeight;t.start.row!=t.end.row&&(s+=this.$getTop(t.end.row,n)-r),e.push("
      ")},this.drawScreenLineMarker=function(e,t,i,n,o){var r=this.$getTop(t.start.row,n),s=n.lineHeight;e.push("
      ")}}).call(r.prototype),t.Marker=r}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("../lib/oop"),o=e("../lib/dom"),r=e("../lib/lang"),s=(e("../lib/useragent"),e("../lib/event_emitter").EventEmitter),a=function(e){this.element=o.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){n.implement(this,s),this.EOF_CHAR="¶",this.EOL_CHAR_LF="¬",this.EOL_CHAR_CRLF="¤",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.$updateEolChar=function(){var e="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;return this.EOL_CHAR!=e?(this.EOL_CHAR=e,!0):void 0},this.setPadding=function(e){this.$padding=e,this.element.style.padding="0 "+e+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(e){this.session=e,e&&this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;for(var t=this.$tabStrings=[0],i=1;e+1>i;i++)t.push(this.showInvisibles?""+this.TAB_CHAR+r.stringRepeat(" ",i-1)+"":r.stringRepeat(" ",i));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var n="ace_indent-guide",o="",s="";if(this.showInvisibles){n+=" ace_invisible",o=" ace_invisible_space",s=" ace_invisible_tab";var a=r.stringRepeat(this.SPACE_CHAR,this.tabSize),l=this.TAB_CHAR+r.stringRepeat(" ",this.tabSize-1)}else var a=r.stringRepeat(" ",this.tabSize),l=a;this.$tabStrings[" "]=""+a+"",this.$tabStrings[" "]=""+l+""}},this.updateLines=function(e,t,i){(this.config.lastRow!=e.lastRow||this.config.firstRow!=e.firstRow)&&this.scrollLines(e),this.config=e;for(var n=Math.max(t,e.firstRow),o=Math.min(i,e.lastRow),r=this.element.childNodes,s=0,a=e.firstRow;n>a;a++){var l=this.session.getFoldLine(a);if(l){if(l.containsRow(n)){n=l.start.row;break}a=l.end.row}s++}for(var a=n,l=this.session.getNextFoldLine(a),c=l?l.start.row:1/0;;){if(a>c&&(a=l.end.row+1,l=this.session.getNextFoldLine(a,l),c=l?l.start.row:1/0),a>o)break;var h=r[s++];if(h){var u=[];this.$renderLine(u,a,!this.$useLineGroups(),a==c?l:!1),h.style.height=e.lineHeight*this.session.getRowLength(a)+"px",h.innerHTML=u.join("")}a++}},this.scrollLines=function(e){var t=this.config;if(this.config=e,!t||t.lastRow0;n--)i.removeChild(i.firstChild);if(t.lastRow>e.lastRow)for(var n=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);n>0;n--)i.removeChild(i.lastChild);if(e.firstRowt.lastRow){var o=this.$renderLinesFragment(e,t.lastRow+1,e.lastRow);i.appendChild(o)}},this.$renderLinesFragment=function(e,t,i){for(var n=this.element.ownerDocument.createDocumentFragment(),r=t,s=this.session.getNextFoldLine(r),a=s?s.start.row:1/0;;){if(r>a&&(r=s.end.row+1,s=this.session.getNextFoldLine(r,s),a=s?s.start.row:1/0),r>i)break;var l=o.createElement("div"),c=[];if(this.$renderLine(c,r,!1,r==a?s:!1),l.innerHTML=c.join(""),this.$useLineGroups())l.className="ace_line_group",n.appendChild(l),l.style.height=e.lineHeight*this.session.getRowLength(r)+"px";else for(;l.firstChild;)n.appendChild(l.firstChild);r++}return n},this.update=function(e){this.config=e;for(var t=[],i=e.firstRow,n=e.lastRow,o=i,r=this.session.getNextFoldLine(o),s=r?r.start.row:1/0;;){if(o>s&&(o=r.end.row+1,r=this.session.getNextFoldLine(o,r),s=r?r.start.row:1/0),o>n)break;this.$useLineGroups()&&t.push("
      "),this.$renderLine(t,o,!1,o==s?r:!1),this.$useLineGroups()&&t.push("
      "),o++}this.element.innerHTML=t.join("")},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,i,n){var o=this,s=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,a=function(e,i,n,s,a){if(i)return o.showInvisibles?""+r.stringRepeat(o.SPACE_CHAR,e.length)+"":r.stringRepeat(" ",e.length);if("&"==e)return"&";if("<"==e)return"<";if(" "==e){var l=o.session.getScreenTabSize(t+s);return t+=l-1,o.$tabStrings[l]}if(" "==e){var c=o.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",h=o.showInvisibles?o.SPACE_CHAR:"";return t+=1,""+h+""}return n?""+o.SPACE_CHAR+"":(t+=1,""+e+"")},l=n.replace(s,a);if(this.$textToken[i.type])e.push(l);else{var c="ace_"+i.type.replace(/\./g," ace_"),h="";"fold"==i.type&&(h=" style='width:"+i.value.length*this.config.characterWidth+"px;' "),e.push("",l,"")}return t+n.length},this.renderIndentGuide=function(e,t,i){var n=t.search(this.$indentGuideRe);return 0>=n||n>=i?t:" "==t[0]?(n-=n%this.tabSize,e.push(r.stringRepeat(this.$tabStrings[" "],n/this.tabSize)),t.substr(n)):" "==t[0]?(e.push(r.stringRepeat(this.$tabStrings[" "],n)),t.substr(n)):t},this.$renderWrappedLine=function(e,t,i,n){for(var o=0,r=0,s=i[0],a=0,l=0;l=s;)a=this.$renderToken(e,a,c,h.substring(0,s-o)),h=h.substring(s-o),o=s,n||e.push("
      ","
      "),r++,a=0,s=i[r]||Number.MAX_VALUE;0!=h.length&&(o+=h.length,a=this.$renderToken(e,a,c,h))}}},this.$renderSimpleLine=function(e,t){var i=0,n=t[0],o=n.value;this.displayIndentGuides&&(o=this.renderIndentGuide(e,o)),o&&(i=this.$renderToken(e,i,n,o));for(var r=1;r"),o.length){var r=this.session.getRowSplitData(t);r&&r.length?this.$renderWrappedLine(e,o,r,i):this.$renderSimpleLine(e,o)}this.showInvisibles&&(n&&(t=n.end.row),e.push("",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"")),i||e.push("
      ")},this.$getFoldLineTokens=function(e,t){function i(e,t,i){for(var n=0,r=0;r+e[n].value.lengthi-t&&(s=s.substring(0,i-t)), +o.push({type:e[n].type,value:s}),r=t+s.length,n+=1}for(;i>r&&ni?{type:e[n].type,value:s.substring(0,i-r)}:e[n]),r+=s.length,n+=1}}var n=this.session,o=[],r=n.getTokens(e);return t.walk(function(e,t,s,a,l){null!=e?o.push({type:"fold",value:e}):(l&&(r=n.getTokens(t)),r.length&&i(r,a,s))},t.end.row,this.session.getLine(t.end.row).length),o},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(a.prototype),t.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";var n,o=e("../lib/dom"),r=function(e){this.element=o.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),void 0===n&&(n="opacity"in this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),o.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateVisibility.bind(this)};(function(){this.$updateVisibility=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.visibility=e?"":"hidden"},this.$updateOpacity=function(e){for(var t=this.cursors,i=t.length;i--;)t[i].style.opacity=e?"":"0"},this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e==this.smoothBlinking||n||(this.smoothBlinking=e,o.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.$updateCursors=(e?this.$updateOpacity:this.$updateVisibility).bind(this),this.restartTimer())},this.addCursor=function(){var e=o.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,o.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,o.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var e=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&o.removeCssClass(this.element,"ace_smooth-blinking"),e(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){o.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var i=this.session.documentToScreenPosition(e),n=this.$padding+i.column*this.config.characterWidth,o=(i.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:n,top:o}},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,i=0,n=0;(void 0===t||0===t.length)&&(t=[{cursor:null}]);for(var i=0,o=t.length;o>i;i++){var r=this.getPixelPosition(t[i].cursor,!0);if(!((r.top>e.height+e.offset||r.top<0)&&i>1)){var s=(this.cursors[n++]||this.addCursor()).style;s.left=r.left+"px",s.top=r.top+"px",s.width=e.characterWidth+"px",s.height=e.lineHeight+"px"}}for(;this.cursors.length>n;)this.removeCursor();var a=this.session.getOverwrite();this.$setOverwrite(a),this.$pixelPos=r,this.restartTimer()},this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?o.addCssClass(this.element,"ace_overwrite-cursors"):o.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(r.prototype),t.Cursor=r}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/dom"),r=e("./lib/event"),s=e("./lib/event_emitter").EventEmitter,a=function(e){this.element=o.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=o.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,r.addListener(this.element,"scroll",this.onScroll.bind(this)),r.addListener(this.element,"mousedown",r.preventDefault)};(function(){n.implement(this,s),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e}}).call(a.prototype);var l=function(e,t){a.call(this,e),this.scrollTop=0,t.$scrollbarWidth=this.width=o.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};n.inherits(l,a),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=function(e){this.inner.style.height=e+"px"},this.setScrollHeight=function(e){this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=e)}}.call(l.prototype);var c=function(e,t){a.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};n.inherits(c,a),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(c.prototype),t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,i){"use strict";var n=e("./lib/event"),o=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.window=t||window};(function(){this.schedule=function(e){if(this.changes=this.changes|e,!this.pending&&this.changes){this.pending=!0;var t=this;n.nextFrame(function(){t.pending=!1;for(var e;e=t.changes;)t.changes=0,t.onRender(e)},this.window)}}}).call(o.prototype),t.RenderLoop=o}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,i){var n=e("../lib/oop"),o=e("../lib/dom"),r=e("../lib/lang"),s=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,l=0,c=t.FontMetrics=function(e,t){this.el=o.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=o.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=o.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),l||this.$testFractionalRect(),this.$measureNode.innerHTML=r.stringRepeat("X",l),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){n.implement(this,a),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var e=o.createElement("div");this.$setMeasureNodeStyles(e.style),e.style.width="0.2px",document.documentElement.appendChild(e);var t=e.getBoundingClientRect().width;l=t>0&&1>t?50:100,e.parentNode.removeChild(e)},this.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="-100px",e.visibility="hidden",e.position="fixed",e.whiteSpace="pre",s.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},this.checkForSizeChanges=function(){var e=this.$measureSizes();if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=setInterval(function(){e.checkForSizeChanges()},500)},this.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&this.$pollSizeChangesTimer},this.$measureSizes=function(){if(50===l){var e=null;try{e=this.$measureNode.getBoundingClientRect()}catch(t){e={width:0,height:0}}var i={height:e.height,width:e.width/l}}else var i={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/l};return 0===i.width||0===i.height?null:i},this.$measureCharWidth=function(e){this.$main.innerHTML=r.stringRepeat(e,l);var t=this.$main.getBoundingClientRect();return t.width/l},this.getCharacterWidth=function(e){var t=this.charSizes[e];return void 0===t&&(this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(c.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(e,t,i){"use strict";var n=e("./lib/oop"),o=e("./lib/dom"),r=e("./config"),s=e("./lib/useragent"),a=e("./layer/gutter").Gutter,l=e("./layer/marker").Marker,c=e("./layer/text").Text,h=e("./layer/cursor").Cursor,u=e("./scrollbar").HScrollBar,d=e("./scrollbar").VScrollBar,g=e("./renderloop").RenderLoop,f=e("./layer/font_metrics").FontMetrics,p=e("./lib/event_emitter").EventEmitter,m='.ace_editor { position: relative; overflow: hidden; font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace; direction: ltr; } .ace_scroller { position: absolute; overflow: hidden; top: 0; bottom: 0; background-color: inherit; -ms-user-select: none; -moz-user-select: none; -webkit-user-select: none; user-select: none; cursor: text; } .ace_content { position: absolute; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; min-width: 100%; } .ace_dragging .ace_scroller:before{ position: absolute; top: 0; left: 0; right: 0; bottom: 0; content: \'\'; background: rgba(250, 250, 250, 0.01); z-index: 1000; } .ace_dragging.ace_dark .ace_scroller:before{ background: rgba(0, 0, 0, 0.01); } .ace_selecting, .ace_selecting * { cursor: text !important; } .ace_gutter { position: absolute; overflow : hidden; width: auto; top: 0; bottom: 0; left: 0; cursor: default; z-index: 4; -ms-user-select: none; -moz-user-select: none; -webkit-user-select: none; user-select: none; } .ace_gutter-active-line { position: absolute; left: 0; right: 0; } .ace_scroller.ace_scroll-left { box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset; } .ace_gutter-cell { padding-left: 19px; padding-right: 6px; background-repeat: no-repeat; } .ace_gutter-cell.ace_error { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg=="); background-repeat: no-repeat; background-position: 2px center; } .ace_gutter-cell.ace_warning { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg=="); background-position: 2px center; } .ace_gutter-cell.ace_info { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII="); background-position: 2px center; } .ace_dark .ace_gutter-cell.ace_info { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC"); } .ace_scrollbar { position: absolute; right: 0; bottom: 0; z-index: 6; } .ace_scrollbar-inner { position: absolute; cursor: text; left: 0; top: 0; } .ace_scrollbar-v{ overflow-x: hidden; overflow-y: scroll; top: 0; } .ace_scrollbar-h { overflow-x: scroll; overflow-y: hidden; left: 0; } .ace_print-margin { position: absolute; height: 100%; } .ace_text-input { position: absolute; z-index: 0; width: 0.5em; height: 1em; opacity: 0; background: transparent; -moz-appearance: none; appearance: none; border: none; resize: none; outline: none; overflow: hidden; font: inherit; padding: 0 1px; margin: 0 -1px; text-indent: -1em; -ms-user-select: text; -moz-user-select: text; -webkit-user-select: text; user-select: text; } .ace_text-input.ace_composition { background: inherit; color: inherit; z-index: 1000; opacity: 1; text-indent: 0; } .ace_layer { z-index: 1; position: absolute; overflow: hidden; white-space: pre; height: 100%; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; pointer-events: none; } .ace_gutter-layer { position: relative; width: auto; text-align: right; pointer-events: auto; } .ace_text-layer { font: inherit !important; } .ace_cjk { display: inline-block; text-align: center; } .ace_cursor-layer { z-index: 4; } .ace_cursor { z-index: 4; position: absolute; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-left: 2px solid } .ace_slim-cursors .ace_cursor { border-left-width: 1px; } .ace_overwrite-cursors .ace_cursor { border-left-width: 0; border-bottom: 1px solid; } .ace_hidden-cursors .ace_cursor { opacity: 0.2; } .ace_smooth-blinking .ace_cursor { -webkit-transition: opacity 0.18s; transition: opacity 0.18s; } .ace_editor.ace_multiselect .ace_cursor { border-left-width: 1px; } .ace_marker-layer .ace_step, .ace_marker-layer .ace_stack { position: absolute; z-index: 3; } .ace_marker-layer .ace_selection { position: absolute; z-index: 5; } .ace_marker-layer .ace_bracket { position: absolute; z-index: 6; } .ace_marker-layer .ace_active-line { position: absolute; z-index: 2; } .ace_marker-layer .ace_selected-word { position: absolute; z-index: 4; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } .ace_line .ace_fold { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; height: 11px; margin-top: -2px; vertical-align: middle; background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII="); background-repeat: no-repeat, repeat-x; background-position: center center, top left; color: transparent; border: 1px solid black; border-radius: 2px; cursor: pointer; pointer-events: auto; } .ace_dark .ace_fold { } .ace_fold:hover{ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC"); } .ace_tooltip { background-color: #FFF; background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1)); background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1)); border: 1px solid gray; border-radius: 1px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); color: black; max-width: 100%; padding: 3px 4px; position: fixed; z-index: 999999; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; cursor: default; white-space: pre; word-wrap: break-word; line-height: normal; font-style: normal; font-weight: normal; letter-spacing: normal; pointer-events: none; } .ace_folding-enabled > .ace_gutter-cell { padding-right: 13px; } .ace_fold-widget { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 -12px 0 1px; display: none; width: 11px; vertical-align: top; background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg=="); background-repeat: no-repeat; background-position: center; border-radius: 3px; border: 1px solid transparent; cursor: pointer; } .ace_folding-enabled .ace_fold-widget { display: inline-block; } .ace_fold-widget.ace_end { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg=="); } .ace_fold-widget.ace_closed { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA=="); } .ace_fold-widget:hover { border: 1px solid rgba(0, 0, 0, 0.3); background-color: rgba(255, 255, 255, 0.2); box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7); } .ace_fold-widget:active { border: 1px solid rgba(0, 0, 0, 0.4); background-color: rgba(0, 0, 0, 0.05); box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8); } .ace_dark .ace_fold-widget { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC"); } .ace_dark .ace_fold-widget.ace_end { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg=="); } .ace_dark .ace_fold-widget.ace_closed { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg=="); } .ace_dark .ace_fold-widget:hover { box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); background-color: rgba(255, 255, 255, 0.1); } .ace_dark .ace_fold-widget:active { box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); } .ace_fold-widget.ace_invalid { background-color: #FFB4B4; border-color: #DE5555; } .ace_fade-fold-widgets .ace_fold-widget { -webkit-transition: opacity 0.4s ease 0.05s; transition: opacity 0.4s ease 0.05s; opacity: 0; } .ace_fade-fold-widgets:hover .ace_fold-widget { -webkit-transition: opacity 0.05s ease 0.05s; transition: opacity 0.05s ease 0.05s; opacity:1; } .ace_underline { text-decoration: underline; } .ace_bold { font-weight: bold; } .ace_nobold .ace_bold { font-weight: normal; } .ace_italic { font-style: italic; } .ace_error-marker { background-color: rgba(255, 0, 0,0.2); position: absolute; z-index: 9; } .ace_highlight-marker { background-color: rgba(255, 255, 0,0.2); position: absolute; z-index: 8; } ';o.importCssString(m,"ace_editor");var v=function(e,t){var i=this;this.container=e||o.createElement("div"),this.$keepTextAreaAtCursor=!s.isOldIE,o.addCssClass(this.container,"ace_editor"),this.setTheme(t),this.$gutter=o.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=o.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=o.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new a(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new l(this.content);var n=this.$textLayer=new c(this.content);this.canvas=n.element,this.$markerFront=new l(this.content),this.$cursorLayer=new h(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new d(this.container,this),this.scrollBarH=new u(this.container,this),this.scrollBarV.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollTop(e.data-i.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(e){i.$scrollAnimation||i.session.setScrollLeft(e.data-i.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new f(this.container,500),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(e){i.updateCharacterSize(),i.onResize(!0,i.gutterWidth,i.$size.width,i.$size.height),i._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new g(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),r.resetOptions(this),r._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,n.implement(this,p),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e),e&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(e,t,i){if(void 0===t&&(t=1/0),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar()},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,i,n){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=e?1:0;var o=this.container;n||(n=o.clientHeight||o.scrollHeight),i||(i=o.clientWidth||o.scrollWidth);var r=this.$updateCachedSize(e,t,i,n);if(!this.$size.scrollerHeight||!i&&!n)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(r|this.$changes,!0):this.$loop.schedule(r|this.$changes),this.resizing&&(this.resizing=0)}},this.$updateCachedSize=function(e,t,i,n){n-=this.$extraHeight||0;var o=0,r=this.$size,s={width:r.width,height:r.height,scrollerHeight:r.scrollerHeight,scrollerWidth:r.scrollerWidth};return n&&(e||r.height!=n)&&(r.height=n,o|=this.CHANGE_SIZE,r.scrollerHeight=r.height,this.$horizScroll&&(r.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",o|=this.CHANGE_SCROLL),i&&(e||r.width!=i)&&(o|=this.CHANGE_SIZE,r.width=i,null==t&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",r.scrollerWidth=Math.max(0,i-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)&&(o|=this.CHANGE_FULL)),r.$dirty=!i||!n,o&&this._signal("resize",s),o},this.onGutterResize=function(){var e=this.$showGutter?this.$gutter.offsetWidth:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-2*this.$padding,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var e=this.$cursorLayer.$pixelPos,t=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var i=this.session.selection.getCursor();i.column=0,e=this.$cursorLayer.getPixelPosition(i,!0),t*=this.session.getRowLength(i.row)}this.$gutterLineHighlight.style.top=e.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=t+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var e=o.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=o.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.content},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var e=this.layerConfig,t=this.$cursorLayer.$pixelPos.top,i=this.$cursorLayer.$pixelPos.left;t-=e.offset;var n=this.lineHeight;if(!(0>t||t>e.height-n)){var o=this.characterWidth;if(this.$composition){var r=this.textarea.value.replace(/^\x01+/,"");o*=this.session.$getStringScreenWidth(r)[0]+2,n+=2}i-=this.scrollLeft,i>this.$size.scrollerWidth-o&&(i=this.$size.scrollerWidth-o),i+=this.gutterWidth,this.textarea.style.height=n+"px",this.textarea.style.width=o+"px",this.textarea.style.left=Math.min(i,this.$size.scrollerWidth-o)+"px",this.textarea.style.top=Math.min(t,this.$size.height-n)+"px"}}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var e=Math.floor((this.layerConfig.height+this.layerConfig.offset)/this.layerConfig.lineHeight);return this.layerConfig.firstRow-1+e},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,i,n){var o=this.scrollMargin;o.top=0|e,o.bottom=0|t,o.right=0|n,o.left=0|i,o.v=o.top+o.bottom,o.h=o.left+o.right,o.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-o.top), +this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){if(this.$changes&&(e|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t)return void(this.$changes|=e);if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var i=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){if(e|=this.$computeLayerConfig(),i.firstRow!=this.layerConfig.firstRow&&i.firstRowScreen==this.layerConfig.firstRowScreen){var n=this.scrollTop+(i.firstRow-this.layerConfig.firstRow)*this.lineHeight;n>0&&(this.scrollTop=n,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig())}i=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-i.offset+"px",this.content.style.marginTop=-i.offset+"px",this.content.style.width=i.width+2*this.$padding+"px",this.content.style.height=i.minHeight+"px"}return e&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),e&this.CHANGE_FULL?(this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender")):e&this.CHANGE_SCROLL?(e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(i):this.$textLayer.scrollLines(i),this.$showGutter&&this.$gutterLayer.update(i),this.$markerBack.update(i),this.$markerFront.update(i),this.$cursorLayer.update(i),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender")):(e&this.CHANGE_TEXT?(this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(i):(e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(i),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(i),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(i),void this._signal("afterRender"))},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,i=Math.max((this.$minLines||1)*this.lineHeight,Math.min(t,e))+this.scrollMargin.v+(this.$extraHeight||0),n=e>t;if(i!=this.desiredHeight||this.$size.height!=this.desiredHeight||n!=this.$vScroll){n!=this.$vScroll&&(this.$vScroll=n,this.scrollBarV.setVisible(n));var o=this.container.clientWidth;this.container.style.height=i+"px",this.$updateCachedSize(!0,this.$gutterWidth,o,i),this.desiredHeight=i,this._signal("autosize")}},this.$computeLayerConfig=function(){this.$maxLines&&this.lineHeight>1&&this.$autosize();var e=this.session,t=this.$size,i=t.height<=2*this.lineHeight,n=this.session.getScreenLength(),o=n*this.lineHeight,r=this.scrollTop%this.lineHeight,s=t.scrollerHeight+this.lineHeight,a=this.$getLongestLine(),l=!i&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-a-2*this.$padding<0),c=this.$horizScroll!==l;c&&(this.$horizScroll=l,this.scrollBarH.setVisible(l));var h=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;o+=h,this.session.setScrollTop(Math.max(-this.scrollMargin.top,Math.min(this.scrollTop,o-t.scrollerHeight+this.scrollMargin.bottom))),this.session.setScrollLeft(Math.max(-this.scrollMargin.left,Math.min(this.scrollLeft,a+2*this.$padding-t.scrollerWidth+this.scrollMargin.right)));var u=!i&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-o+h<0||this.scrollTop),d=this.$vScroll!==u;d&&(this.$vScroll=u,this.scrollBarV.setVisible(u));var g,f,p=Math.ceil(s/this.lineHeight)-1,m=Math.max(0,Math.round((this.scrollTop-r)/this.lineHeight)),v=m+p,A=this.lineHeight;m=e.screenToDocumentRow(m,0);var w=e.getFoldLine(m);w&&(m=w.start.row),g=e.documentToScreenRow(m,0),f=e.getRowLength(m)*A,v=Math.min(e.screenToDocumentRow(v,0),e.getLength()-1),s=t.scrollerHeight+e.getRowLength(v)*A+f,r=this.scrollTop-g*A;var C=0;return this.layerConfig.width!=a&&(C=this.CHANGE_H_SCROLL),(c||d)&&(C=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),d&&(a=this.$getLongestLine())),this.layerConfig={width:a,padding:this.$padding,firstRow:m,firstRowScreen:g,lastRow:v,lineHeight:A,characterWidth:this.characterWidth,minHeight:s,maxHeight:o,offset:r,gutterOffset:Math.max(0,Math.ceil((r+t.height-t.scrollerHeight)/A)),height:this.$size.scrollerHeight},C},this.$updateLines=function(){var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var i=this.layerConfig;return e>i.lastRow+1||tr?(t&&(r-=t*this.$size.scrollerHeight),0===r&&(r=-this.scrollMargin.top),this.session.setScrollTop(r)):l+this.$size.scrollerHeight-ao?(oi;++i)o.push(r(i/this.STEPS,e,t-e));return o},this.scrollToLine=function(e,t,i,n){var o=this.$cursorLayer.getPixelPosition({row:e,column:0}),r=o.top;t&&(r-=this.$size.scrollerHeight/2);var s=this.scrollTop;this.session.setScrollTop(r),i!==!1&&this.animateScrolling(s,n)},this.animateScrolling=function(e,t){var i=this.scrollTop;if(this.$animatedScroll){var n=this;if(e!=i){if(this.$scrollAnimation){var o=this.$scrollAnimation.steps;if(o.length&&(e=o[0],e==i))return}var r=n.$calcSteps(e,i);this.$scrollAnimation={from:e,to:i,steps:r},clearInterval(this.$timer),n.session.setScrollTop(r.shift()),n.session.$scrollTop=i,this.$timer=setInterval(function(){r.length?(n.session.setScrollTop(r.shift()),n.session.$scrollTop=i):null!=i?(n.session.$scrollTop=-1,n.session.setScrollTop(i),i=null):(n.$timer=clearInterval(n.$timer),n.$scrollAnimation=null,t&&t())},10)}}},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(t)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){return 0>t&&this.session.getScrollTop()>=1-this.scrollMargin.top?!0:t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom?!0:0>e&&this.session.getScrollLeft()>=1-this.scrollMargin.left?!0:e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right?!0:void 0},this.pixelToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=(e+this.scrollLeft-i.left-this.$padding)/this.characterWidth,o=Math.floor((t+this.scrollTop-i.top)/this.lineHeight),r=Math.round(n);return{row:o,column:r,side:n-r>0?1:-1}},this.screenToTextCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=Math.round((e+this.scrollLeft-i.left-this.$padding)/this.characterWidth),o=(t+this.scrollTop-i.top)/this.lineHeight;return this.session.screenToDocumentPosition(o,Math.max(n,0))},this.textToScreenCoordinates=function(e,t){var i=this.scroller.getBoundingClientRect(),n=this.session.documentToScreenPosition(e,t),o=this.$padding+Math.round(n.column*this.characterWidth),r=n.row*this.lineHeight;return{pageX:i.left+o-this.scrollLeft,pageY:i.top+r-this.scrollTop}},this.visualizeFocus=function(){o.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){o.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,o.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(e){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(o.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(e,t){function i(i){if(n.$themeId!=e)return t&&t();if(i.cssClass){o.importCssString(i.cssText,i.cssClass,n.container.ownerDocument),n.theme&&o.removeCssClass(n.container,n.theme.cssClass);var r="padding"in i?i.padding:"padding"in(n.theme||{})?4:n.$padding;n.$padding&&r!=n.$padding&&n.setPadding(r),n.$theme=i.cssClass,n.theme=i,o.addCssClass(n.container,i.cssClass),o.setCssClass(n.container,"ace_dark",i.isDark),n.$size&&(n.$size.width=0,n.$updateSizeAsync()),n._dispatchEvent("themeLoaded",{theme:i}),t&&t()}}var n=this;if(this.$themeId=e,n._dispatchEvent("themeChange",{theme:e}),e&&"string"!=typeof e)i(e);else{var s=e||this.$options.theme.initialValue;r.loadModule(["theme",s],i)}},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){o.setCssClass(this.container,e,t!==!1)},this.unsetStyle=function(e){o.removeCssClass(this.container,e)},this.setCursorStyle=function(e){this.scroller.style.cursor!=e&&(this.scroller.style.cursor=e)},this.setMouseCursor=function(e){this.scroller.style.cursor=e},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(v.prototype),r.defineOptions(v.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){"number"==typeof e&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){o.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e)},initialValue:!0},showLineNumbers:{set:function(e){this.$gutterLayer.setShowLineNumbers(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){return this.$gutterLineHighlight?(this.$gutterLineHighlight.style.display=e?"":"none",void(this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight())):(this.$gutterLineHighlight=o.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight))},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(e){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){"number"==typeof e&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.updateFull()}},scrollPastEnd:{set:function(e){e=+e||0,this.$scrollPastEnd!=e&&(this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),t.VirtualRenderer=v}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";var o=e("../lib/oop"),r=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,a=e("../config"),l=function(t,n,o,r){if(this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),a.get("packaged")||!e.toUrl)r=r||a.moduleUrl(n.id,"worker");else{var s=this.$normalizePath;r=r||s(e.toUrl("ace/worker/worker.js",null,"_"));var l={};t.forEach(function(t){l[t]=s(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}try{var c=n.src,h=i(19),u=new h([c],{type:"application/javascript"}),d=(window.URL||window.webkitURL).createObjectURL(u);this.$worker=new Worker(d)}catch(g){if(!(g instanceof window.DOMException))throw g;var u=this.$workerBlob(r),f=window.URL||window.webkitURL,p=f.createObjectURL(u);this.$worker=new Worker(p),f.revokeObjectURL(p)}this.$worker.postMessage({init:!0,tlns:l,module:n.id,classname:o}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){o.implement(this,s),this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var i=this.callbacks[t.id];i&&(i(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return r.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,i){if(i){var n=this.callbackId++;this.callbacks[n]=i,t.push(n)}this.send(e,t)},this.emit=function(e,t){try{this.$worker.postMessage({event:e,data:{data:t.data}})}catch(i){console.error(i.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue?this.deltaQueue.push(e.data):(this.deltaQueue=[e.data],setTimeout(this.$sendDeltaQueue,0))},this.$sendDeltaQueue=function(){var e=this.deltaQueue;e&&(this.deltaQueue=null,e.length>20&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e}))},this.$workerBlob=function(e){var t="importScripts('"+r.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(i){var n=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,o=new n;return o.append(t),o.getBlob("application/javascript")}}}).call(l.prototype);var c=function(e,t,i){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var n=null,o=!1,r=Object.create(s),l=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(e){l.messageBuffer.push(e),n&&(o?setTimeout(c):c())},this.setEmitSync=function(e){o=e};var c=function(){var e=l.messageBuffer.shift();e.command?n[e.command].apply(n,e.args):e.event&&r._signal(e.event,e.data)};r.postMessage=function(e){l.onMessage({data:e})},r.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},r.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},a.loadModule(["worker",t],function(e){for(n=new e[i](r);l.messageBuffer.length;)c()})};c.prototype=l.prototype,t.UIWorkerClient=c,t.WorkerClient=l}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,i){"use strict";var n=e("./range").Range,o=e("./lib/event_emitter").EventEmitter,r=e("./lib/oop"),s=function(e,t,i,n,o,r){var s=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=o,this.othersClass=r,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=n,this.$onCursorChange=function(){setTimeout(function(){s.onCursorChange()})},this.$pos=i;var a=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=a.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){r.implement(this,o),this.setup=function(){var e=this,t=this.doc,i=this.session,o=this.$pos;this.selectionBefore=i.selection.toJSON(),i.selection.inMultiSelectMode&&i.selection.toSingleRange(),this.pos=t.createAnchor(o.row,o.column),this.markerId=i.addMarker(new n(o.row,o.column,o.row,o.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(t){i.removeMarker(e.markerId),e.markerId=i.addMarker(new n(t.value.row,t.value.column,t.value.row,t.value.column+e.length),e.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(i){var n=t.createAnchor(i.row,i.column);e.others.push(n)}),i.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(i){i.markerId=e.addMarker(new n(i.row,i.column,i.row,i.column+t.length),t.othersClass,null,!1),i.on("change",function(o){e.removeMarker(i.markerId),i.markerId=e.addMarker(new n(o.value.row,o.value.column,o.value.row,o.value.column+t.length),t.othersClass,null,!1)})})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var e=0;e=this.pos.column&&i.start.column<=this.pos.column+this.length+1){var r=i.start.column-this.pos.column;if(this.length+=o,!this.session.$fromUndo){if("insertText"===t.action)for(var s=this.others.length-1;s>=0;s--){var a=this.others[s],l={row:a.row,column:a.column+r};a.row===i.start.row&&i.start.column=0;s--){var a=this.others[s],l={row:a.row,column:a.column+r};a.row===i.start.row&&i.start.column=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))}},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var e=0;ei;i++)e.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}).call(s.prototype),t.PlaceHolder=s}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,i){function n(e,t){return e.row==t.row&&e.column==t.column}function o(e){var t=e.domEvent,i=t.altKey,o=t.shiftKey,a=t.ctrlKey,l=e.getAccelKey(),c=e.getButton();if(a&&s.isMac&&(c=t.button),e.editor.inMultiSelectMode&&2==c)return void e.editor.textInput.onContextMenu(e.domEvent);if(!a&&!i&&!l)return void(0===c&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode());if(0===c){var h,u=e.editor,d=u.selection,g=u.inMultiSelectMode,f=e.getDocumentPosition(),p=d.getCursor(),m=e.inSelection()||d.isEmpty()&&n(f,p),v=e.x,A=e.y,w=function(e){v=e.clientX,A=e.clientY},C=u.session,E=u.renderer.pixelToScreenCoordinates(v,A),F=E;if(u.$mouseHandler.$enableJumpToDef)a&&i||l&&i?h="add":i&&(h="block");else if(l&&!i){if(h="add",!g&&o)return}else i&&(h="block");if(h&&s.isMac&&t.ctrlKey&&u.$mouseHandler.cancelContextMenu(),"add"==h){if(!g&&m)return;if(!g){var y=d.toOrientedRange();u.addSelectionMarker(y)}var b=d.rangeList.rangeAtPoint(f);u.$blockScrolling++,u.inVirtualSelectionMode=!0,o&&(b=null,y=d.ranges[0],u.removeSelectionMarker(y)),u.once("mouseup",function(){var e=d.toOrientedRange();b&&e.isEmpty()&&n(b.cursor,e.cursor)?d.substractPoint(e.cursor):(o?d.substractPoint(y.cursor):y&&(u.removeSelectionMarker(y),d.addRange(y)),d.addRange(e)),u.$blockScrolling--,u.inVirtualSelectionMode=!1})}else if("block"==h){e.stop(),u.inVirtualSelectionMode=!0;var x,S=[],$=function(){var e=u.renderer.pixelToScreenCoordinates(v,A),t=C.screenToDocumentPosition(e.row,e.column);n(F,e)&&n(t,d.lead)||(F=e,u.selection.moveToPosition(t),u.renderer.scrollCursorIntoView(),u.removeSelectionMarkers(S),S=d.rectangularRangeBlock(F,E),u.$mouseHandler.$clickSelection&&1==S.length&&S[0].isEmpty()&&(S[0]=u.$mouseHandler.$clickSelection.clone()),S.forEach(u.addSelectionMarker,u),u.updateSelectionMarkers())};g&&!l?d.toSingleRange():!g&&l&&(x=d.toOrientedRange(),u.addSelectionMarker(x)),o?E=C.documentToScreenPosition(d.lead):d.moveToPosition(f),F={row:-1,column:-1};var B=function(e){clearInterval(k),u.removeSelectionMarkers(S),S.length||(S=[d.toOrientedRange()]),u.$blockScrolling++,x&&(u.removeSelectionMarker(x),d.toSingleRange(x));for(var t=0;t1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)}},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);return t?(this.$onRemoveRange(t),t[0]):void 0},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length?this.$onRemoveRange(e):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var i=e.length;i--;){var n=this.ranges.indexOf(e[i]);this.ranges.splice(n,1)}this._signal("removeRange",{ranges:e}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0], +t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new a,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=l.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{var i=this.getRange(),n=this.isBackwards(),o=i.start.row,r=i.end.row;if(o==r){if(n)var s=i.end,a=i.start;else var s=i.start,a=i.end;return this.addRange(l.fromPoints(a,a)),void this.addRange(l.fromPoints(s,s))}var c=[],h=this.getLineRange(o,!0);h.start.column=i.start.column,c.push(h);for(var u=o+1;r>u;u++)c.push(this.getLineRange(u,!0));h=this.getLineRange(r,!0),h.end.column=i.end.column,c.push(h),c.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],i=l.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(i,t.cursor==t.start)}else{var n=this.session.documentToScreenPosition(this.selectionLead),o=this.session.documentToScreenPosition(this.selectionAnchor),r=this.rectangularRangeBlock(n,o);r.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,i){var n=[],r=e.columns&&(s=0),0>h&&(h=0),h==u&&(i=!0);for(var d=h;u>=d;d++){var g=l.fromPoints(this.session.screenToDocumentPosition(d,s),this.session.screenToDocumentPosition(d,a));if(g.isEmpty()){if(f&&o(g.end,f))break;var f=g.end}g.cursor=r?g.start:g.end,n.push(g)}if(c&&n.reverse(),!i){for(var p=n.length-1;n[p].isEmpty()&&p>0;)p--;if(p>0)for(var m=0;n[m].isEmpty();)m++;for(var v=p;v>=m;v--)n[v].isEmpty()&&n.splice(v,1)}return n}}.call(c.prototype);var v=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(e.marker){this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);-1!=t&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(e){for(var t=this.session.$selectionMarkers,i=e.length;i--;){var n=e[i];if(n.marker){this.session.removeMarker(n.marker);var o=t.indexOf(n);-1!=o&&t.splice(o,1)}}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(g.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(e){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(g.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(e){var t=e.command,i=e.editor;if(i.multiSelect){if(t.multiSelectAction)"forEach"==t.multiSelectAction?n=i.forEachSelection(t,e.args):"forEachLine"==t.multiSelectAction?n=i.forEachSelection(t,e.args,!0):"single"==t.multiSelectAction?(i.exitMultiSelectMode(),n=t.exec(i,e.args||{})):n=t.multiSelectAction(i,e.args||{});else{var n=t.exec(i,e.args||{});i.multiSelect.addRange(i.multiSelect.toOrientedRange()),i.multiSelect.mergeOverlappingRanges()}return n}},this.forEachSelection=function(e,t,i){if(!this.inVirtualSelectionMode){var n,o=i&&i.keepOrder,r=1==i||i&&i.$byLines,s=this.session,a=this.selection,l=a.rangeList,h=(o?a:l).ranges;if(!h.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var u=a._eventRegistry;a._eventRegistry={};var d=new c(s);this.inVirtualSelectionMode=!0;for(var g=h.length;g--;){if(r)for(;g>0&&h[g].start.row==h[g-1].end.row;)g--;d.fromOrientedRange(h[g]),d.index=g,this.selection=s.selection=d;var f=e.exec?e.exec(this,t||{}):e(this,t||{});n||void 0===f||(n=f),d.toOrientedRange(h[g])}d.detach(),this.selection=s.selection=a,this.inVirtualSelectionMode=!1,a._eventRegistry=u,a.mergeOverlappingRanges();var p=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),p&&p.from==p.to&&this.renderer.animateScrolling(p.from),n}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var t=this.multiSelect.rangeList.ranges,i=[],n=0;nn.length||i.length<2||!i[1])return this.commands.exec("insertstring",this,e);for(var o=n.length;o--;){var r=n[o];r.isEmpty()||this.session.remove(r),this.session.insert(r.start,i[o])}}},this.findAll=function(e,t,i){if(t=t||{},t.needle=e||t.needle,void 0==t.needle){var n=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();t.needle=this.session.getTextRange(n)}this.$search.set(t);var o=this.$search.findAll(this.session);if(!o.length)return 0;this.$blockScrolling+=1;var r=this.multiSelect;i||r.toSingleRange(o[0]);for(var s=o.length;s--;)r.addRange(o[s],!0);return n&&r.rangeList.rangeAtPoint(n.start)&&r.addRange(n,!0),this.$blockScrolling-=1,o.length},this.selectMoreLines=function(e,t){var i=this.selection.toOrientedRange(),n=i.cursor==i.end,o=this.session.documentToScreenPosition(i.cursor);this.selection.$desiredColumn&&(o.column=this.selection.$desiredColumn);var r=this.session.screenToDocumentPosition(o.row+e,o.column);if(i.isEmpty())var s=r;else var a=this.session.documentToScreenPosition(n?i.end:i.start),s=this.session.screenToDocumentPosition(a.row+e,a.column);if(n){var c=l.fromPoints(r,s);c.cursor=c.start}else{var c=l.fromPoints(s,r);c.cursor=c.end}if(c.desiredColumn=o.column,this.selection.inMultiSelectMode){if(t)var h=i.cursor}else this.selection.addRange(i);this.selection.addRange(c),h&&this.selection.substractPoint(h)},this.transposeSelections=function(e){for(var t=this.session,i=t.multiSelect,n=i.ranges,o=n.length;o--;){var r=n[o];if(r.isEmpty()){var s=t.getWordRange(r.start.row,r.start.column);r.start.row=s.start.row,r.start.column=s.start.column,r.end.row=s.end.row,r.end.column=s.end.column}}i.mergeOverlappingRanges();for(var a=[],o=n.length;o--;){var r=n[o];a.unshift(t.getTextRange(r))}0>e?a.unshift(a.pop()):a.push(a.shift());for(var o=n.length;o--;){var r=n[o],s=r.clone();t.replace(r,a[o]),r.start.row=s.start.row,r.start.column=s.start.column}},this.selectMore=function(e,t,i){var o=this.session,r=o.multiSelect,s=r.toOrientedRange();if(!s.isEmpty()||(s=o.getWordRange(s.start.row,s.start.column),s.cursor=-1==e?s.start:s.end,this.multiSelect.addRange(s),!i)){var a=o.getTextRange(s),l=n(o,a,e);l&&(l.cursor=-1==e?l.start:l.end,this.$blockScrolling+=1,this.session.unfold(l),this.multiSelect.addRange(l),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(s.cursor)}},this.alignCursors=function(){var e=this.session,t=e.multiSelect,i=t.ranges,n=-1,o=i.filter(function(e){return e.cursor.row==n?!0:void(n=e.cursor.row)});if(i.length&&o.length!=i.length-1){o.forEach(function(e){t.substractPoint(e.cursor)});var r=0,s=1/0,a=i.map(function(t){var i=t.cursor,n=e.getLine(i.row),o=n.substr(i.column).search(/\S/g);return-1==o&&(o=0),i.column>r&&(r=i.column),s>o&&(s=o),o});i.forEach(function(t,i){var n=t.cursor,o=r-n.column,c=a[i]-s;o>c?e.insert(n,d.stringRepeat(" ",o-c)):e.remove(new l(n.row,n.column,n.row,n.column-o+c)),t.start.column=t.end.column=r,t.start.row=t.end.row=n.row,t.cursor=t.end}),t.fromOrientedRange(i[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var c=this.selection.getRange(),h=c.start.row,u=c.end.row,g=h==u;if(g){var f,p=this.session.getLength();do f=this.session.getLine(u);while(/[=:]/.test(f)&&++u0);0>h&&(h=0),u>=p&&(u=p-1)}var m=this.session.doc.removeLines(h,u);m=this.$reAlignText(m,g),this.session.doc.insert({row:h,column:0},m.join("\n")+"\n"),g||(c.start.column=0,c.end.column=m[m.length-1].length),this.selection.setRange(c)}},this.$reAlignText=function(e,t){function i(e){return d.stringRepeat(" ",e)}function n(e){return e[2]?i(s)+e[2]+i(a-e[2].length+l)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function o(e){return e[2]?i(s+a-e[2].length)+e[2]+i(l," ")+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function r(e){return e[2]?i(s)+e[2]+i(l)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var s,a,l,c=!0,h=!0;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?null==s?(s=t[1].length,a=t[2].length,l=t[3].length,t):(s+a+l!=t[1].length+t[2].length+t[3].length&&(h=!1),s!=t[1].length&&(c=!1),s>t[1].length&&(s=t[1].length),at[3].length&&(l=t[3].length),t):[e]}).map(t?n:c?h?o:n:r)}}).call(v.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var i=e.oldSession;i&&(i.multiSelect.off("addRange",this.$onAddRange),i.multiSelect.off("removeRange",this.$onRemoveRange),i.multiSelect.off("multiSelect",this.$onMultiSelect),i.multiSelect.off("singleSelect",this.$onSingleSelect),i.multiSelect.lead.off("change",this.$checkMultiselectChange),i.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=r,e("./config").defineOptions(v.prototype,"editor",{enableMultiselect:{set:function(e){r(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",h)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",h))},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../../range").Range,o=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,i){var n=e.getLine(i);return this.foldingStartMarker.test(n)?"start":"markbeginend"==t&&this.foldingStopMarker&&this.foldingStopMarker.test(n)?"end":""},this.getFoldWidgetRange=function(e,t,i){return null},this.indentationBlock=function(e,t,i){var o=/\S/,r=e.getLine(t),s=r.search(o);if(-1!=s){for(var a=i||r.length,l=e.getLength(),c=t,h=t;++t=u)break;h=t}}if(h>c){var d=e.getLine(h).length;return new n(c,a,h,d)}}},this.openingBracketBlock=function(e,t,i,o,r){var s={row:i,column:o+1},a=e.$findClosingBracket(t,s,r);if(a){var l=e.foldWidgets[a.row];return null==l&&(l=e.getFoldWidget(a.row)),"start"==l&&a.row>s.row&&(a.row--,a.column=e.getLine(a.row).length),n.fromPoints(s,a)}},this.closingBracketBlock=function(e,t,i,o,r){var s={row:i,column:o},a=e.$findOpeningBracket(t,s);return a?(a.column++,s.column--,n.fromPoints(a,s)):void 0}}).call(o.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,i){"use strict";t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter { background: #f0f0f0; color: #333; } .ace-tm .ace_print-margin { width: 1px; background: #e8e8e8; } .ace-tm .ace_fold { background-color: #6B72E6; } .ace-tm { background-color: #FFFFFF; color: black; } .ace-tm .ace_cursor { color: black; } .ace-tm .ace_invisible { color: rgb(191, 191, 191); } .ace-tm .ace_storage, .ace-tm .ace_keyword { color: blue; } .ace-tm .ace_constant { color: rgb(197, 6, 11); } .ace-tm .ace_constant.ace_buildin { color: rgb(88, 72, 246); } .ace-tm .ace_constant.ace_language { color: rgb(88, 92, 246); } .ace-tm .ace_constant.ace_library { color: rgb(6, 150, 14); } .ace-tm .ace_invalid { background-color: rgba(255, 0, 0, 0.1); color: red; } .ace-tm .ace_support.ace_function { color: rgb(60, 76, 114); } .ace-tm .ace_support.ace_constant { color: rgb(6, 150, 14); } .ace-tm .ace_support.ace_type, .ace-tm .ace_support.ace_class { color: rgb(109, 121, 222); } .ace-tm .ace_keyword.ace_operator { color: rgb(104, 118, 135); } .ace-tm .ace_string { color: rgb(3, 106, 7); } .ace-tm .ace_comment { color: rgb(76, 136, 107); } .ace-tm .ace_comment.ace_doc { color: rgb(0, 102, 255); } .ace-tm .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191); } .ace-tm .ace_constant.ace_numeric { color: rgb(0, 0, 205); } .ace-tm .ace_variable { color: rgb(49, 132, 149); } .ace-tm .ace_xml-pe { color: rgb(104, 104, 91); } .ace-tm .ace_entity.ace_name.ace_function { color: #0000A2; } .ace-tm .ace_heading { color: rgb(12, 7, 255); } .ace-tm .ace_list { color:rgb(185, 6, 144); } .ace-tm .ace_meta.ace_tag { color:rgb(0, 22, 142); } .ace-tm .ace_string.ace_regex { color: rgb(255, 0, 0) } .ace-tm .ace_marker-layer .ace_selection { background: rgb(181, 213, 255); } .ace-tm.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px white; border-radius: 2px; } .ace-tm .ace_marker-layer .ace_step { background: rgb(252, 255, 0); } .ace-tm .ace_marker-layer .ace_stack { background: rgb(164, 229, 101); } .ace-tm .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192); } .ace-tm .ace_marker-layer .ace_active-line { background: rgba(0, 0, 0, 0.07); } .ace-tm .ace_gutter-active-line { background-color : #dcdcdc; } .ace-tm .ace_marker-layer .ace_selected-word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250); } .ace-tm .ace_indent-guide { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y; } ';var n=e("../lib/dom");n.importCssString(t.cssText,t.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(e,t,i){"use strict";function n(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeEditor",this.$onChangeEditor)}var o=(e("./lib/oop"),e("./lib/dom"));e("./range").Range;(function(){this.getRowLength=function(e){var t;return t=this.lineWidgets?this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0:0,this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&(e+=t.rowCount)}),e},this.$onChangeEditor=function(e){this.attach(e.editor)},this.attach=function(e){e&&e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach(),this.editor!=e&&(this.detach(),this.editor=e,e&&(e.widgetManager=this,e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(e){var t=this.editor;if(t){this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var i=this.session.lineWidgets;i&&i.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})}},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(t){var i=e.data,n=i.range,o=n.start.row,r=n.end.row-o;if(0===r);else if("removeText"==i.action||"removeLines"==i.action){var s=t.splice(o+1,r);s.forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var a=new Array(r);a.unshift(o,0),t.splice.apply(t,a),this.$updateRows()}}},this.$updateRows=function(){var e=this.session.lineWidgets;if(e){var t=!0;e.forEach(function(e,i){e&&(t=!1,e.row=i)}),t&&(this.session.lineWidgets=null)}},this.addLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[e.row]=e;var t=this.editor.renderer;return e.html&&!e.el&&(e.el=o.createElement("div"),e.el.innerHTML=e.html),e.el&&(o.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,t.container.appendChild(e.el),e._inDocument=!0),e.coverGutter||(e.el.style.zIndex=3),e.pixelHeight||(e.pixelHeight=e.el.offsetHeight),null==e.rowCount&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),e},this.removeLineWidget=function(e){if(e._inDocument=!1,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el),e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}this.session.lineWidgets&&(this.session.lineWidgets[e.row]=void 0),this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var i=this.session._changedWidgets,n=t.layerConfig;if(i&&i.length){for(var o=1/0,r=0;ra&&(a=0)),s.rowCount!=a&&(s.rowCount=a,s.row0&&!n[o];)o--;this.firstRow=i.firstRow,this.lastRow=i.lastRow,t.$cursorLayer.config=i;for(var s=o;r>=s;s++){var a=n[s];if(a&&a.el){a._inDocument||(a._inDocument=!0,t.container.appendChild(a.el));var l=t.$cursorLayer.getPixelPosition({row:s,column:0},!0).top;a.coverLine||(l+=i.lineHeight*this.session.getRowLineCount(a.row)),a.el.style.top=l-i.offset+"px";var c=a.coverGutter?0:t.gutterWidth;a.fixedWidth||(c-=t.scrollLeft),a.el.style.left=c+"px",a.fixedWidth?a.el.style.right=t.scrollBar.getWidth()+"px":a.el.style.right=""}}}}}).call(n.prototype),t.LineWidgets=n}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,i){"use strict";function n(e,t,i){for(var n=0,o=e.length-1;o>=n;){var r=n+o>>1,s=i(t,e[r]);if(s>0)n=r+1;else{if(!(0>s))return r;o=r-1}}return-(n+1)}function o(e,t,i){var o=e.getAnnotations().sort(a.comparePoints);if(o.length){var r=n(o,{row:t,column:-1},a.comparePoints);0>r&&(r=-r-1),r>=o.length-1?r=i>0?0:o.length-1:0===r&&0>i&&(r=o.length-1);var s=o[r];if(s&&i){if(s.row===t){do s=o[r+=i];while(s&&s.row===t);if(!s)return o.slice()}var l=[];t=s.row;do l[0>i?"unshift":"push"](s),s=o[r+=i];while(s&&s.row==t);return l.length&&l}}}var r=e("../line_widgets").LineWidgets,s=e("../lib/dom"),a=e("../range").Range;t.showErrorMarker=function(e,t){var i=e.session;i.widgetManager||(i.widgetManager=new r(i),i.widgetManager.attach(e));var n=e.getCursorPosition(),a=n.row,l=i.lineWidgets&&i.lineWidgets[a];l?l.destroy():a-=t;var c,h=o(i,a,t);if(h){var u=h[0];n.column=(u.pos&&"number"!=typeof u.column?u.pos.sc:u.column)||0,n.row=u.row,c=e.renderer.$gutterLayer.$annotations[n.row]}else{if(l)return;c={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(n.row),e.selection.moveToPosition(n);var d={row:n.row,fixedWidth:!0,coverGutter:!0,el:s.createElement("div")},g=d.el.appendChild(s.createElement("div")),f=d.el.appendChild(s.createElement("div"));f.className="error_widget_arrow "+c.className;var p=e.renderer.$cursorLayer.getPixelPosition(n).left;f.style.left=p+e.renderer.gutterWidth-5+"px",d.el.className="error_widget_wrapper",g.className="error_widget "+c.className,g.innerHTML=c.text.join("
      "),g.appendChild(s.createElement("div"));var m=function(e,t,i){return 0!==t||"esc"!==i&&"return"!==i?void 0:(d.destroy(),{command:"null"})};d.destroy=function(){e.$mouseHandler.isMousePressed||(e.keyBinding.removeKeyboardHandler(m),i.widgetManager.removeLineWidget(d),e.off("changeSelection",d.destroy),e.off("changeSession",d.destroy),e.off("mouseup",d.destroy),e.off("change",d.destroy))},e.keyBinding.addKeyboardHandler(m),e.on("changeSelection",d.destroy),e.on("changeSession",d.destroy),e.on("mouseup",d.destroy),e.on("change",d.destroy),e.session.widgetManager.addLineWidget(d),d.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:d.el.offsetHeight})},s.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; } ","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var n=e("./lib/dom"),o=e("./lib/event"),r=e("./editor").Editor,s=e("./edit_session").EditSession,a=e("./undomanager").UndoManager,l=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.acequire=e,t.edit=function(e){if("string"==typeof e){var i=e;if(e=document.getElementById(i),!e)throw new Error("ace.edit can't find div #"+i)}if(e&&e.env&&e.env.editor instanceof r)return e.env.editor;var s="";if(e&&/input|textarea/i.test(e.tagName)){var a=e;s=a.value,e=n.createElement("pre"),a.parentNode.replaceChild(e,a)}else s=n.getInnerText(e),e.innerHTML="";var c=t.createEditSession(s),h=new r(new l(e));h.setSession(c);var u={document:c,editor:h,onResize:h.resize.bind(h,null)};return a&&(u.textarea=a),o.addListener(window,"resize",u.onResize),h.on("destroy",function(){o.removeListener(window,"resize",u.onResize),u.editor.container.env=null}),h.container.env=h.env=u,h},t.createEditSession=function(e,t){var i=new s(e,t);return i.setUndoManager(new a),i},t.EditSession=s,t.UndoManager=a}),function(){ace.acequire(["ace/ace"],function(e){e&&e.config.init(!0),window.ace||(window.ace=e);for(var t in e)e.hasOwnProperty(t)&&(window.ace[t]=e[t])})}(),e.exports=window.ace.acequire("ace/ace")},function(e,t,i){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,i){"use strict";var n=e("../lib/oop"),o=e("./text_highlight_rules").TextHighlightRules,r=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};n.inherits(r,o),t.JsonHighlightRules=r}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,i){"use strict";var n=e("../range").Range,o=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var i=e.getLine(t),o=i.match(/^(\s*\})/);if(!o)return 0;var r=o[1].length,s=e.findMatchingBracket({row:t,column:r});if(!s||s.row==t)return 0;var a=this.$getIndent(e.getLine(s.row));e.replace(new n(t,0,t,r-1),a)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(o.prototype),t.MatchingBraceOutdent=o}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,i){"use strict";var n,o=e("../../lib/oop"),r=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,a=e("../../lib/lang"),l=["text","paren.rparen","punctuation.operator"],c=["text","paren.rparen","punctuation.operator","comment"],h={},u=function(e){var t=-1;return e.multiSelect&&(t=e.selection.index,h.rangeCount!=e.multiSelect.rangeCount&&(h={rangeCount:e.multiSelect.rangeCount})),h[t]?n=h[t]:void(n=h[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""})},d=function(){this.add("braces","insertion",function(e,t,i,o,r){var s=i.getCursorPosition(),l=o.doc.getLine(s.row);if("{"==r){u(i);var c=i.getSelectionRange(),h=o.doc.getTextRange(c);if(""!==h&&"{"!==h&&i.getWrapBehavioursEnabled())return{text:"{"+h+"}",selection:!1};if(d.isSaneInsertion(i,o))return/[\]\}\)]/.test(l[s.column])||i.inMultiSelectMode?(d.recordAutoInsert(i,o,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(i,o,"{"),{text:"{",selection:[1,1]})}else if("}"==r){u(i);var g=l.substring(s.column,s.column+1);if("}"==g){var f=o.$findOpeningBracket("}",{column:s.column+1,row:s.row});if(null!==f&&d.isAutoInsertedClosing(s,l,r))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if("\n"==r||"\r\n"==r){u(i);var p="";d.isMaybeInsertedClosing(s,l)&&(p=a.stringRepeat("}",n.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var g=l.substring(s.column,s.column+1);if("}"===g){var m=o.findMatchingBracket({row:s.row,column:s.column+1},"}");if(!m)return null;var v=this.$getIndent(o.getLine(m.row))}else{if(!p)return void d.clearMaybeInsertedClosing();var v=this.$getIndent(l)}var A=v+o.getTabString();return{text:"\n"+A+"\n"+v+p,selection:[1,A.length,1,A.length]}}d.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,i,o,r){var s=o.doc.getTextRange(r);if(!r.isMultiLine()&&"{"==s){u(i);var a=o.doc.getLine(r.start.row),l=a.substring(r.end.column,r.end.column+1);if("}"==l)return r.end.column++,r;n.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,i,n,o){if("("==o){u(i);var r=i.getSelectionRange(),s=n.doc.getTextRange(r);if(""!==s&&i.getWrapBehavioursEnabled())return{text:"("+s+")",selection:!1};if(d.isSaneInsertion(i,n))return d.recordAutoInsert(i,n,")"),{text:"()",selection:[1,1]}}else if(")"==o){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row),c=l.substring(a.column,a.column+1);if(")"==c){var h=n.$findOpeningBracket(")",{column:a.column+1,row:a.row});if(null!==h&&d.isAutoInsertedClosing(a,l,o))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,i,n,o){var r=n.doc.getTextRange(o);if(!o.isMultiLine()&&"("==r){u(i);var s=n.doc.getLine(o.start.row),a=s.substring(o.start.column+1,o.start.column+2);if(")"==a)return o.end.column++,o}}),this.add("brackets","insertion",function(e,t,i,n,o){if("["==o){u(i);var r=i.getSelectionRange(),s=n.doc.getTextRange(r);if(""!==s&&i.getWrapBehavioursEnabled())return{text:"["+s+"]",selection:!1};if(d.isSaneInsertion(i,n))return d.recordAutoInsert(i,n,"]"),{text:"[]",selection:[1,1]}}else if("]"==o){u(i);var a=i.getCursorPosition(),l=n.doc.getLine(a.row),c=l.substring(a.column,a.column+1);if("]"==c){var h=n.$findOpeningBracket("]",{column:a.column+1,row:a.row});if(null!==h&&d.isAutoInsertedClosing(a,l,o))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,i,n,o){var r=n.doc.getTextRange(o);if(!o.isMultiLine()&&"["==r){u(i);var s=n.doc.getLine(o.start.row),a=s.substring(o.start.column+1,o.start.column+2);if("]"==a)return o.end.column++,o}}),this.add("string_dquotes","insertion",function(e,t,i,n,o){if('"'==o||"'"==o){u(i);var r=o,s=i.getSelectionRange(),a=n.doc.getTextRange(s);if(""!==a&&"'"!==a&&'"'!=a&&i.getWrapBehavioursEnabled())return{text:r+a+r,selection:!1};var l=i.getCursorPosition(),c=n.doc.getLine(l.row),h=c.substring(l.column-1,l.column);if("\\"==h)return null;for(var g,f=n.getTokens(s.start.row),p=0,m=-1,v=0;vm&&(m=g.value.indexOf(r)),!(g.value.length+p>s.start.column));v++)p+=f[v].value.length;if(!g||0>m&&"comment"!==g.type&&("string"!==g.type||s.start.column!==g.value.length+p-1&&g.value.lastIndexOf(r)===g.value.length-1)){if(!d.isSaneInsertion(i,n))return;return{text:r+r,selection:[1,1]}}if(g&&"string"===g.type){var A=c.substring(l.column,l.column+1);if(A==r)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,i,n,o){var r=n.doc.getTextRange(o);if(!o.isMultiLine()&&('"'==r||"'"==r)){u(i);var s=n.doc.getLine(o.start.row),a=s.substring(o.start.column+1,o.start.column+2);if(a==r)return o.end.column++,o}})};d.isSaneInsertion=function(e,t){var i=e.getCursorPosition(),n=new s(t,i.row,i.column);if(!this.$matchTokenType(n.getCurrentToken()||"text",l)){ +var o=new s(t,i.row,i.column+1);if(!this.$matchTokenType(o.getCurrentToken()||"text",l))return!1}return n.stepForward(),n.getCurrentTokenRow()!==i.row||this.$matchTokenType(n.getCurrentToken()||"text",c)},d.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},d.recordAutoInsert=function(e,t,i){var o=e.getCursorPosition(),r=t.doc.getLine(o.row);this.isAutoInsertedClosing(o,r,n.autoInsertedLineEnd[0])||(n.autoInsertedBrackets=0),n.autoInsertedRow=o.row,n.autoInsertedLineEnd=i+r.substr(o.column),n.autoInsertedBrackets++},d.recordMaybeInsert=function(e,t,i){var o=e.getCursorPosition(),r=t.doc.getLine(o.row);this.isMaybeInsertedClosing(o,r)||(n.maybeInsertedBrackets=0),n.maybeInsertedRow=o.row,n.maybeInsertedLineStart=r.substr(0,o.column)+i,n.maybeInsertedLineEnd=r.substr(o.column),n.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(e,t,i){return n.autoInsertedBrackets>0&&e.row===n.autoInsertedRow&&i===n.autoInsertedLineEnd[0]&&t.substr(e.column)===n.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(e,t){return n.maybeInsertedBrackets>0&&e.row===n.maybeInsertedRow&&t.substr(e.column)===n.maybeInsertedLineEnd&&t.substr(0,e.column)==n.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){n.autoInsertedLineEnd=n.autoInsertedLineEnd.substr(1),n.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){n&&(n.maybeInsertedBrackets=0,n.maybeInsertedRow=-1)},o.inherits(d,r),t.CstyleBehaviour=d}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,i){"use strict";var n=e("../../lib/oop"),o=e("../../range").Range,r=e("./fold_mode").FoldMode,s=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};n.inherits(s,r),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(e,t,i,n){var o=e.getLine(i),r=o.match(this.foldingStartMarker);if(r){var s=r.index;if(r[1])return this.openingBracketBlock(e,r[1],i,s);var a=e.getCommentFoldRange(i,s+r[0].length,1);return a&&!a.isMultiLine()&&(n?a=this.getSectionRange(e,i):"all"!=t&&(a=null)),a}if("markbegin"!==t){var r=o.match(this.foldingStopMarker);if(r){var s=r.index+r[0].length;return r[1]?this.closingBracketBlock(e,r[1],i,s):e.getCommentFoldRange(i,s,-1)}}},this.getSectionRange=function(e,t){var i=e.getLine(t),n=i.search(/\S/),r=t,s=i.length;t+=1;for(var a=t,l=e.getLength();++tc)break;var h=this.getFoldWidgetRange(e,"all",t);if(h){if(h.start.row<=r)break;if(h.isMultiLine())t=h.end.row;else if(n==c)break}a=t}}return new o(r,s,a,e.getLine(a).length)}}.call(s.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var o=e("../lib/oop"),r=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,a=e("./matching_brace_outdent").MatchingBraceOutdent,l=e("./behaviour/cstyle").CstyleBehaviour,c=e("./folding/cstyle").FoldMode,h=e("../worker/worker_client").WorkerClient,u=function(){this.HighlightRules=s,this.$outdent=new a,this.$behaviour=new l,this.foldingRules=new c};o.inherits(u,r),function(){this.getNextLineIndent=function(e,t,i){var n=this.$getIndent(t);if("start"==e){var o=t.match(/^.*[\{\(\[]\s*$/);o&&(n+=i)}return n},this.checkOutdent=function(e,t,i){return this.$outdent.checkOutdent(t,i)},this.autoOutdent=function(e,t,i){this.$outdent.autoOutdent(t,i)},this.createWorker=function(e){var t=new h(["ace"],i(17),"JsonWorker");return t.attachToDocument(e.getDocument()),t.on("error",function(t){e.setAnnotations([t.data])}),t.on("ok",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(u.prototype),t.Mode=u})},function(e,t,i){ace.define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(e,t,i){"use strict";var n=e("../lib/dom"),o=e("../lib/lang"),r=e("../lib/event"),s=" .ace_search { background-color: #ddd; border: 1px solid #cbcbcb; border-top: 0 none; max-width: 325px; overflow: hidden; margin: 0; padding: 4px; padding-right: 6px; padding-bottom: 0; position: absolute; top: 0px; z-index: 99; white-space: normal; } .ace_search.left { border-left: 0 none; border-radius: 0px 0px 5px 0px; left: 0; } .ace_search.right { border-radius: 0px 0px 0px 5px; border-right: 0 none; right: 0; } .ace_search_form, .ace_replace_form { border-radius: 3px; border: 1px solid #cbcbcb; float: left; margin-bottom: 4px; overflow: hidden; } .ace_search_form.ace_nomatch { outline: 1px solid red; } .ace_search_field { background-color: white; border-right: 1px solid #cbcbcb; border: 0 none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; float: left; height: 22px; outline: 0; padding: 0 7px; width: 214px; margin: 0; } .ace_searchbtn, .ace_replacebtn { background: #fff; border: 0 none; border-left: 1px solid #dcdcdc; cursor: pointer; float: left; height: 22px; margin: 0; padding: 0; position: relative; } .ace_searchbtn:last-child, .ace_replacebtn:last-child { border-top-right-radius: 3px; border-bottom-right-radius: 3px; } .ace_searchbtn:disabled { background: none; cursor: default; } .ace_searchbtn { background-position: 50% 50%; background-repeat: no-repeat; width: 27px; } .ace_searchbtn.prev { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADFJREFUeNpiSU1NZUAC/6E0I0yACYskCpsJiySKIiY0SUZk40FyTEgCjGgKwTRAgAEAQJUIPCE+qfkAAAAASUVORK5CYII=); } .ace_searchbtn.next { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpiTE1NZQCC/0DMyIAKwGJMUAYDEo3M/s+EpvM/mkKwCQxYjIeLMaELoLMBAgwAU7UJObTKsvAAAAAASUVORK5CYII=); } .ace_searchbtn_close { background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0; border-radius: 50%; border: 0 none; color: #656565; cursor: pointer; float: right; font: 16px/16px Arial; height: 14px; margin: 5px 1px 9px 5px; padding: 0; text-align: center; width: 14px; } .ace_searchbtn_close:hover { background-color: #656565; background-position: 50% 100%; color: white; } .ace_replacebtn.prev { width: 54px } .ace_replacebtn.next { width: 27px } .ace_button { margin-left: 2px; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -o-user-select: none; -ms-user-select: none; user-select: none; overflow: hidden; opacity: 0.7; border: 1px solid rgba(100,100,100,0.23); padding: 1px; -moz-box-sizing: border-box; box-sizing: border-box; color: black; } .ace_button:hover { background-color: #eee; opacity:1; } .ace_button:active { background-color: #ddd; } .ace_button.checked { border-color: #3399ff; opacity:1; } .ace_search_options{ margin-bottom: 3px; text-align: right; -webkit-user-select: none; -moz-user-select: none; -o-user-select: none; -ms-user-select: none; user-select: none; }",a=e("../keyboard/hash_handler").HashHandler,l=e("../lib/keys");n.importCssString(s,"ace_searchbox");var c=''.replace(/>\s+/g,">"),h=function(e,t,i){var o=n.createElement("div");o.innerHTML=c,this.element=o.firstChild,this.$init(),this.setEditor(e)};(function(){this.setEditor=function(e){e.searchBox=this,e.container.appendChild(this.element),this.editor=e},this.$initElements=function(e){this.searchBox=e.querySelector(".ace_search_form"),this.replaceBox=e.querySelector(".ace_replace_form"),this.searchOptions=e.querySelector(".ace_search_options"),this.regExpOption=e.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=e.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=e.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field")},this.$init=function(){var e=this.element;this.$initElements(e);var t=this;r.addListener(e,"mousedown",function(e){setTimeout(function(){t.activeInput.focus()},0),r.stopPropagation(e)}),r.addListener(e,"click",function(e){var i=e.target||e.srcElement,n=i.getAttribute("action");n&&t[n]?t[n]():t.$searchBarKb.commands[n]&&t.$searchBarKb.commands[n].exec(t),r.stopPropagation(e)}),r.addCommandKeyListener(e,function(e,i,n){var o=l.keyCodeToString(n),s=t.$searchBarKb.findKeyCommand(i,o);s&&s.exec&&(s.exec(t),r.stopEvent(e))}),this.$onChange=o.delayedCall(function(){t.find(!1,!1)}),r.addListener(this.searchInput,"input",function(){t.$onChange.schedule(20)}),r.addListener(this.searchInput,"focus",function(){t.activeInput=t.searchInput,t.searchInput.value&&t.highlight()}),r.addListener(this.replaceInput,"focus",function(){t.activeInput=t.replaceInput,t.searchInput.value&&t.highlight()})},this.$closeSearchBarKb=new a([{bindKey:"Esc",name:"closeSearchBar",exec:function(e){e.searchBox.hide()}}]),this.$searchBarKb=new a,this.$searchBarKb.bindKeys({"Ctrl-f|Command-f|Ctrl-H|Command-Option-F":function(e){var t=e.isReplace=!e.isReplace;e.replaceBox.style.display=t?"":"none",e[t?"replaceInput":"searchInput"].focus()},"Ctrl-G|Command-G":function(e){e.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(e){e.findPrev()},esc:function(e){setTimeout(function(){e.hide()})},Return:function(e){e.activeInput==e.replaceInput&&e.replace(),e.findNext()},"Shift-Return":function(e){e.activeInput==e.replaceInput&&e.replace(),e.findPrev()},"Alt-Return":function(e){e.activeInput==e.replaceInput&&e.replaceAll(),e.findAll()},Tab:function(e){(e.activeInput==e.replaceInput?e.searchInput:e.replaceInput).focus()}}),this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(e){e.regExpOption.checked=!e.regExpOption.checked,e.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(e){e.caseSensitiveOption.checked=!e.caseSensitiveOption.checked,e.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(e){e.wholeWordOption.checked=!e.wholeWordOption.checked,e.$syncOptions()}}]),this.$syncOptions=function(){n.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),n.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),n.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked),this.find(!1,!1)},this.highlight=function(e){this.editor.session.highlight(e||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},this.find=function(e,t){var i=this.editor.find(this.searchInput.value,{skipCurrent:e,backwards:t,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),o=!i&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",o),this.editor._emit("findSearchBox",{match:!o}),this.highlight()},this.findNext=function(){this.find(!0,!1)},this.findPrev=function(){this.find(!0,!0)},this.findAll=function(){var e=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),t=!e&&this.searchInput.value;n.setCssClass(this.searchBox,"ace_nomatch",t),this.editor._emit("findSearchBox",{match:!t}),this.highlight(),this.hide()},this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},this.hide=function(){this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},this.show=function(e,t){this.element.style.display="",this.replaceBox.style.display=t?"":"none",this.isReplace=t,e&&(this.searchInput.value=e),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb)},this.isFocused=function(){var e=document.activeElement;return e==this.searchInput||e==this.replaceInput}}).call(h.prototype),t.SearchBox=h,t.Search=function(e,t){var i=e.searchBox||new h(e);i.show(e.session.getTextRange(),t)}}),function(){ace.acequire(["ace/ext/searchbox"],function(){})}()},function(e,t,i){e.exports.id="ace/mode/json_worker",e.exports.src='"no use strict";(function(window){if(void 0===window.window||!window.document){window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console,window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:"error",data:{message:message,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf("!")){var chunks=moduleName.split("!");return window.normalizeModule(parentId,chunks[0])+"!"+window.normalizeModule(parentId,chunks[1])}if("."==moduleName.charAt(0)){var base=parentId.split("/").slice(0,-1).join("/");for(moduleName=(base?base+"/":"")+moduleName;-1!==moduleName.indexOf(".")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\.\\//,"").replace(/\\/\\.\\//,"/").replace(/[^\\/]+\\/\\.\\.\\//,"")}}return moduleName},window.acequire=function(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error("worker.js acequire() accepts only (parentId, id) as arguments");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;var chunks=id.split("/");if(!window.acequire.tlns)return console.log("unable to load "+id);chunks[0]=window.acequire.tlns[chunks[0]]||chunks[0];var path=chunks.join("/")+".js";return window.acequire.id=id,importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,"string"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),"function"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=["require","exports","module"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case"require":return req;case"exports":return module.exports;case"module":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},window.initBaseUrls=function initBaseUrls(topLevelNamespaces){acequire.tlns=topLevelNamespaces},window.initSender=function initSender(){var EventEmitter=window.acequire("ace/lib/event_emitter").EventEmitter,oop=window.acequire("ace/lib/oop"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:"call",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:"event",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.command){if(!main[msg.command])throw Error("Unknown command:"+msg.command);main[msg.command].apply(main,msg.args)}else if(msg.init){initBaseUrls(msg.tlns),acequire("ace/lib/es5-shim"),sender=window.sender=initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}else msg.event&&sender&&sender._signal(msg.event,msg.data)}}})(this),ace.define("ace/lib/oop",["require","exports","module"],function(acequire,exports){"use strict";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(acequire,exports){"use strict";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){"object"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?"unshift":"push"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define("ace/range",["require","exports","module"],function(acequire,exports){"use strict";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){"object"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){"object"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){var delta=e.data,range=delta.range;if(!(range.start.row==range.end.row&&range.start.row!=this.row||range.start.row>this.row||range.start.row==this.row&&range.start.column>this.column)){var row=this.row,column=this.column,start=range.start,end=range.end;"insertText"===delta.action?start.row===row&&column>=start.column?start.column===column&&this.$insertRight||(start.row===end.row?column+=end.column-start.column:(column-=start.column,row+=end.row-start.row)):start.row!==end.row&&row>start.row&&(row+=end.row-start.row):"insertLines"===delta.action?start.row===row&&0===column&&this.$insertRight||row>=start.row&&(row+=end.row-start.row):"removeText"===delta.action?start.row===row&&column>start.column?column=end.column>=column?start.column:Math.max(0,column-(end.column-start.column)):start.row!==end.row&&row>start.row?(end.row===row&&(column=Math.max(0,column-end.column)+start.column),row-=end.row-start.row):end.row===row&&(row-=end.row-start.row,column=Math.max(0,column-end.column)+start.column):"removeLines"==delta.action&&row>=start.row&&(row>=end.row?row-=end.row-start.row:(row=start.row,column=0)),this.setPosition(row,column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal("change",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(acequire,exports){"use strict";var oop=acequire("./lib/oop"),EventEmitter=acequire("./lib/event_emitter").EventEmitter,Range=acequire("./range").Range,Anchor=acequire("./anchor").Anchor,Document=function(text){this.$lines=[],0===text.length?this.$lines=[""]:Array.isArray(text)?this._insertLines(0,text):this.insert({row:0,column:0},text)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength();this.remove(new Range(0,0,len,this.getLine(len-1).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0==="aaa".split(/a/).length?function(text){return text.replace(/\\r\\n|\\r/g,"\\n").split("\\n")}:function(text){return text.split(/\\r\\n|\\r|\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\r\\n|\\r|\\n)/m);this.$autoNewLine=match?match[1]:"\\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\\r\\n";case"unix":return"\\n";default:return this.$autoNewLine||"\\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return"\\r\\n"==text||"\\r"==text||"\\n"==text},this.getLine=function(row){return this.$lines[row]||""},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){if(range.start.row==range.end.row)return this.getLine(range.start.row).substring(range.start.column,range.end.column);var lines=this.getLines(range.start.row,range.end.row);lines[0]=(lines[0]||"").substring(range.start.column);var l=lines.length-1;return range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column)),lines.join(this.getNewLineCharacter())},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):0>position.row&&(position.row=0),position},this.insert=function(position,text){if(!text||0===text.length)return position;position=this.$clipPosition(position),1>=this.getLength()&&this.$detectNewLine(text);var lines=this.$split(text),firstLine=lines.splice(0,1)[0],lastLine=0==lines.length?null:lines.splice(lines.length-1,1)[0];return position=this.insertInLine(position,firstLine),null!==lastLine&&(position=this.insertNewLine(position),position=this._insertLines(position.row,lines),position=this.insertInLine(position,lastLine||"")),position},this.insertLines=function(row,lines){return row>=this.getLength()?this.insert({row:row,column:0},"\\n"+lines.join("\\n")):this._insertLines(Math.max(row,0),lines)},this._insertLines=function(row,lines){if(0==lines.length)return{row:row,column:0};for(;lines.length>61440;){var end=this._insertLines(row,lines.slice(0,61440));lines=lines.slice(61440),row=end.row}var args=[row,0];args.push.apply(args,lines),this.$lines.splice.apply(this.$lines,args);var range=new Range(row,0,row+lines.length,0),delta={action:"insertLines",range:range,lines:lines};return this._signal("change",{data:delta}),range.end},this.insertNewLine=function(position){position=this.$clipPosition(position);var line=this.$lines[position.row]||"";this.$lines[position.row]=line.substring(0,position.column),this.$lines.splice(position.row+1,0,line.substring(position.column,line.length));var end={row:position.row+1,column:0},delta={action:"insertText",range:Range.fromPoints(position,end),text:this.getNewLineCharacter()};return this._signal("change",{data:delta}),end},this.insertInLine=function(position,text){if(0==text.length)return position;var line=this.$lines[position.row]||"";this.$lines[position.row]=line.substring(0,position.column)+text+line.substring(position.column);var end={row:position.row,column:position.column+text.length},delta={action:"insertText",range:Range.fromPoints(position,end),text:text};return this._signal("change",{data:delta}),end},this.remove=function(range){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),range.start=this.$clipPosition(range.start),range.end=this.$clipPosition(range.end),range.isEmpty())return range.start;var firstRow=range.start.row,lastRow=range.end.row;if(range.isMultiLine()){var firstFullRow=0==range.start.column?firstRow:firstRow+1,lastFullRow=lastRow-1;range.end.column>0&&this.removeInLine(lastRow,0,range.end.column),lastFullRow>=firstFullRow&&this._removeLines(firstFullRow,lastFullRow),firstFullRow!=firstRow&&(this.removeInLine(firstRow,range.start.column,this.getLine(firstRow).length),this.removeNewLine(range.start.row))}else this.removeInLine(firstRow,range.start.column,range.end.column);return range.start},this.removeInLine=function(row,startColumn,endColumn){if(startColumn!=endColumn){var range=new Range(row,startColumn,row,endColumn),line=this.getLine(row),removed=line.substring(startColumn,endColumn),newLine=line.substring(0,startColumn)+line.substring(endColumn,line.length);this.$lines.splice(row,1,newLine);var delta={action:"removeText",range:range,text:removed};return this._signal("change",{data:delta}),range.start}},this.removeLines=function(firstRow,lastRow){return 0>firstRow||lastRow>=this.getLength()?this.remove(new Range(firstRow,0,lastRow+1,0)):this._removeLines(firstRow,lastRow)},this._removeLines=function(firstRow,lastRow){var range=new Range(firstRow,0,lastRow+1,0),removed=this.$lines.splice(firstRow,lastRow-firstRow+1),delta={action:"removeLines",range:range,nl:this.getNewLineCharacter(),lines:removed};return this._signal("change",{data:delta}),removed},this.removeNewLine=function(row){var firstLine=this.getLine(row),secondLine=this.getLine(row+1),range=new Range(row,firstLine.length,row+1,0),line=firstLine+secondLine;this.$lines.splice(row,2,line);var delta={action:"removeText",range:range,text:this.getNewLineCharacter()};this._signal("change",{data:delta})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0==text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;if(this.remove(range),text)var end=this.insert(range.start,text);else end=range.start;return end},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++){var delta=deltas[i],range=Range.fromPoints(delta.range.start,delta.range.end);"insertLines"==delta.action?this.insertLines(range.start.row,delta.lines):"insertText"==delta.action?this.insert(range.start,delta.text):"removeLines"==delta.action?this._removeLines(range.start.row,range.end.row-1):"removeText"==delta.action&&this.remove(range)}},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--){var delta=deltas[i],range=Range.fromPoints(delta.range.start,delta.range.end);"insertLines"==delta.action?this._removeLines(range.start.row,range.end.row-1):"insertText"==delta.action?this.remove(range):"removeLines"==delta.action?this._insertLines(range.start.row,delta.lines):"removeText"==delta.action&&this.insert(range.start,delta.text)}},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define("ace/lib/lang",["require","exports","module"],function(acequire,exports){"use strict";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split("").reverse().join("")},exports.stringRepeat=function(string,count){for(var result="";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\s\\s*/,trimEndRegexp=/\\s\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,"")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,"")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&"object"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function(obj){if("object"!=typeof obj||!obj)return obj;var cons=obj.constructor;if(cons===RegExp)return obj;var copy=cons();for(var key in obj)copy[key]="object"==typeof obj[key]?exports.deepCopy(obj[key]):obj[key];return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\]\\/\\\\])/g,"\\\\$1")},exports.escapeHTML=function(str){return str.replace(/&/g,"&").replace(/"/g,""").replace(/\'/g,"'").replace(/="0"&&"9">=ch;)string+=ch,next();if("."===ch)for(string+=".";next()&&ch>="0"&&"9">=ch;)string+=ch;if("e"===ch||"E"===ch)for(string+=ch,next(),("-"===ch||"+"===ch)&&(string+=ch,next());ch>="0"&&"9">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error("Bad number"),void 0):number},string=function(){var hex,i,uffff,string="";if(\'"\'===ch)for(;next();){if(\'"\'===ch)return next(),string;if("\\\\"===ch)if(next(),"u"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if("string"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error("Bad string")},white=function(){for(;ch&&" ">=ch;)next()},word=function(){switch(ch){case"t":return next("t"),next("r"),next("u"),next("e"),!0;case"f":return next("f"),next("a"),next("l"),next("s"),next("e"),!1;case"n":return next("n"),next("u"),next("l"),next("l"),null}error("Unexpected \'"+ch+"\'")},array=function(){var array=[];if("["===ch){if(next("["),white(),"]"===ch)return next("]"),array;for(;ch;){if(array.push(value()),white(),"]"===ch)return next("]"),array;next(","),white()}}error("Bad array")},object=function(){var key,object={};if("{"===ch){if(next("{"),white(),"}"===ch)return next("}"),object;for(;ch;){if(key=string(),white(),next(":"),Object.hasOwnProperty.call(object,key)&&error(\'Duplicate key "\'+key+\'"\'),object[key]=value(),white(),"}"===ch)return next("}"),object;next(","),white()}}error("Bad object")};return value=function(){switch(white(),ch){case"{":return object();case"[":return array();case\'"\':return string();case"-":return number();default:return ch>="0"&&"9">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=" ",result=value(),white(),ch&&error("Syntax error"),"function"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&"object"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({"":result},""):result}}),ace.define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(acequire,exports){"use strict";var oop=acequire("../lib/oop"),Mirror=acequire("../worker/mirror").Mirror,parse=acequire("./json/json_parse"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue();try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);return this.sender.emit("error",{row:pos.row,column:pos.column,text:e.message,type:"error"}),void 0}this.sender.emit("ok")}}.call(JsonWorker.prototype)}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,"sentinel",{}),"sentinel"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if("function"!=typeof target)throw new TypeError("Function.prototype.bind called on incompatible "+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,"__defineGetter__"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,"XXX"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return"[object Array]"==_toString(obj)});var boxedString=Object("a"),splitString="a"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,thisp=arguments[1],i=-1,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError;\nfor(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,result=[],thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0,thisp=arguments[1];if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError("reduce of empty array with no initial value")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&"[object String]"==_toString(this)?this.split(""):object,length=self.length>>>0;if("[object Function]"!=_toString(fun))throw new TypeError(fun+" is not a function");if(!length&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError("reduceRight of empty array with no initial value")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&"[object String]"==_toString(this)?this.split(""):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(object,property){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if("object"!=typeof prototype)throw new TypeError("typeof prototype["+typeof prototype+"] != \'object\'");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom="undefined"==typeof document||doesDefinePropertyWork(document.createElement("div"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR="Property description must be an object: ",ERR_NON_OBJECT_TARGET="Object.defineProperty called on non-object: ",ERR_ACCESSORS_NOT_SUPPORTED="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(object,property,descriptor){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if("object"!=typeof descriptor&&"function"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,"value"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,"get")&&defineGetter(object,property,descriptor.get),owns(descriptor,"set")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return"function"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name="";owns(object,name);)name+="?";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if("object"!=typeof object&&"function"!=typeof object||null===object)throw new TypeError("Object.keys called on a non-object");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws=" \\n \\f\\r   ᠎              \\u2028\\u2029";if(!String.prototype.trim||ws.trim()){ws="["+ws+"]";var trimBeginRegexp=RegExp("^"+ws+ws+"*"),trimEndRegexp=RegExp(ws+ws+"*$");String.prototype.trim=function(){return(this+"").replace(trimBeginRegexp,"").replace(trimEndRegexp,"")}}var toObject=function(o){if(null==o)throw new TypeError("can\'t convert "+o+" to object");return Object(o)}});'; +},function(e,t,i){e.exports=function(){throw new Error("define cannot be used indirect")}},function(e,t,i){(function(t){function i(){if(t.Blob)try{return new Blob(["asdf"],{type:"text/plain"}),Blob}catch(e){}var i=t.WebKitBlobBuilder||t.MozBlobBuilder||t.MSBlobBuilder;return function(e,t){var n=new i,o=t.endings,r=t.type;if(o)for(var s=0,a=e.length;a>s;++s)n.append(e[s],o);else for(var s=0,a=e.length;a>s;++s)n.append(e[s]);return r?n.getBlob(r):n.getBlob()}}e.exports=i()}).call(t,function(){return this}())}])}); +//# sourceMappingURL=jsoneditor.map \ No newline at end of file diff --git a/js/apps/system/_admin/aardvark/APP/frontend/js/views/documentView.js b/js/apps/system/_admin/aardvark/APP/frontend/js/views/documentView.js index a1007f9e8264..f0b7fee5454b 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/js/views/documentView.js +++ b/js/apps/system/_admin/aardvark/APP/frontend/js/views/documentView.js @@ -1,6 +1,6 @@ /*jshint browser: true */ /*jshint unused: false */ -/*global Backbone, EJS, $, window, arangoHelper, jsoneditor, templateEngine */ +/*global Backbone, EJS, $, window, arangoHelper, jsoneditor, templateEngine, JSONEditor */ /*global document, _ */ (function() { @@ -151,7 +151,7 @@ mode: 'tree', modes: ['tree', 'code'] }; - this.editor = new window.jsoneditor.JSONEditor(container, options); + this.editor = new JSONEditor(container, options); return this; }, From 555c3bce8210a7750c098617cfd074c4b2f27cd0 Mon Sep 17 00:00:00 2001 From: Jan Steemann Date: Mon, 24 Aug 2015 12:02:57 +0200 Subject: [PATCH 13/28] re-introduced tracking of replication "clients" --- .../RestHandler/RestReplicationHandler.cpp | 47 ++++++++++++++----- arangod/VocBase/replication-common.cpp | 16 ++++++- arangod/VocBase/replication-common.h | 8 ++++ arangod/VocBase/vocbase.cpp | 43 +++++++++++++++++ arangod/VocBase/vocbase.h | 9 +++- 5 files changed, 108 insertions(+), 15 deletions(-) diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index 5d4d3b6ddea5..a78a1870f263 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -375,18 +375,13 @@ bool RestReplicationHandler::isCoordinatorError () { void RestReplicationHandler::insertClient (TRI_voc_tick_t lastServedTick) { bool found; - char const* value; - - value = _request->value("serverId", found); + char const* value = _request->value("serverId", found); if (found) { TRI_server_id_t serverId = (TRI_server_id_t) StringUtils::uint64(value); if (serverId > 0) { - // TODO: there is no replication logger anymore since 2.2 - // either re-implement tracking of clients else or remove exposing the - // "clients" attribute altogether - // TRI_UpdateClientReplicationLogger(_vocbase->_replicationLogger, serverId, lastServedTick); + _vocbase->updateReplicationClient(serverId, lastServedTick); } } } @@ -449,11 +444,14 @@ uint64_t RestReplicationHandler::determineChunkSize () const { /// /// - *serverId*: the logger server's id /// -/// - *clients*: this attribute was used in ArangoDB versions prior to 2.1 for -/// returning which replication applier clients connected to the logger. Each -/// client was returned with its date/time of last connect. Since there is no -/// replication-logger in ArangoDB where the client connection data could be kept, -/// this attribute currently always is an empty array. +/// - *clients*: returns the last fetch status by replication clients connected to +/// the logger. Each client is returned as a JSON object with the following attributes: +/// +/// - *serverId*: server id of client +/// +/// - *lastServedTick*: last tick value served to this client via the *logger-follow* API +/// +/// - *time*: date and time when this client last called the *logger-follow* API /// /// @RESTRETURNCODES /// @@ -527,7 +525,32 @@ void RestReplicationHandler::handleCommandLoggerState () { // clients TRI_json_t* clients = TRI_CreateArrayJson(TRI_UNKNOWN_MEM_ZONE); + if (clients != nullptr) { + try { + auto allClients = _vocbase->getReplicationClients(); + for (auto& it : allClients) { + TRI_json_t* client = TRI_CreateObjectJson(TRI_UNKNOWN_MEM_ZONE); + + if (client != nullptr) { + serverIdString = TRI_StringUInt64(std::get<0>(it)); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, client, "serverId", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, serverIdString, strlen(serverIdString))); + TRI_FreeString(TRI_CORE_MEM_ZONE, serverIdString); + + char buffer[21]; + TRI_GetTimeStampReplication(std::get<1>(it), &buffer[0], sizeof(buffer)); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, client, "time", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, buffer, strlen(buffer))); + + char* tickString = TRI_StringUInt64(std::get<2>(it)); + TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, client, "lastServedTick", TRI_CreateStringCopyJson(TRI_UNKNOWN_MEM_ZONE, tickString, strlen(tickString))); + TRI_FreeString(TRI_CORE_MEM_ZONE, tickString); + } + + TRI_PushBack3ArrayJson(TRI_UNKNOWN_MEM_ZONE, clients, client); + } + } + catch (...) { + } TRI_Insert3ObjectJson(TRI_UNKNOWN_MEM_ZONE, json, "clients", clients); } diff --git a/arangod/VocBase/replication-common.cpp b/arangod/VocBase/replication-common.cpp index a1a682f7553e..b41cf3142df7 100644 --- a/arangod/VocBase/replication-common.cpp +++ b/arangod/VocBase/replication-common.cpp @@ -48,10 +48,22 @@ void TRI_GetTimeStampReplication (char* dst, size_t maxLength) { - time_t tt; struct tm tb; + time_t tt = time(nullptr); + TRI_gmtime(tt, &tb); + + strftime(dst, maxLength, "%Y-%m-%dT%H:%M:%SZ", &tb); +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief generate a timestamp string in a target buffer +//////////////////////////////////////////////////////////////////////////////// - tt = time(0); +void TRI_GetTimeStampReplication (double timeStamp, + char* dst, + size_t maxLength) { + struct tm tb; + time_t tt = static_cast(timeStamp); TRI_gmtime(tt, &tb); strftime(dst, maxLength, "%Y-%m-%dT%H:%M:%SZ", &tb); diff --git a/arangod/VocBase/replication-common.h b/arangod/VocBase/replication-common.h index 3aa9d2f835a1..a5064986c1bf 100644 --- a/arangod/VocBase/replication-common.h +++ b/arangod/VocBase/replication-common.h @@ -116,6 +116,14 @@ TRI_replication_operation_e; void TRI_GetTimeStampReplication (char*, size_t); +//////////////////////////////////////////////////////////////////////////////// +/// @brief generate a timestamp string in a target buffer +//////////////////////////////////////////////////////////////////////////////// + +void TRI_GetTimeStampReplication (double, + char*, + size_t); + //////////////////////////////////////////////////////////////////////////////// /// @brief determine whether a collection should be included in replication //////////////////////////////////////////////////////////////////////////////// diff --git a/arangod/VocBase/vocbase.cpp b/arangod/VocBase/vocbase.cpp index 344889c8da02..2482a3985e5d 100644 --- a/arangod/VocBase/vocbase.cpp +++ b/arangod/VocBase/vocbase.cpp @@ -2458,6 +2458,49 @@ TRI_vocbase_t::~TRI_vocbase_t () { } } +//////////////////////////////////////////////////////////////////////////////// +/// @brief note the progress of a connected replication client +//////////////////////////////////////////////////////////////////////////////// + +void TRI_vocbase_t::updateReplicationClient (TRI_server_id_t serverId, + TRI_voc_tick_t lastFetchedTick) { + WRITE_LOCKER(_replicationClientsLock); + + try { + auto it = _replicationClients.find(serverId); + + if (it == _replicationClients.end()) { + _replicationClients.emplace(serverId, std::make_pair(TRI_microtime(), lastFetchedTick)); + } + else { + (*it).second.first = TRI_microtime(); + if (lastFetchedTick > 0) { + (*it).second.second = lastFetchedTick; + } + } + } + catch (...) { + // silently fail... + // all we would be missing is the progress information of a slave + } +} + +//////////////////////////////////////////////////////////////////////////////// +/// @brief return the progress of all replication clients +//////////////////////////////////////////////////////////////////////////////// + +std::vector> TRI_vocbase_t::getReplicationClients () { + + std::vector> result; + + READ_LOCKER(_replicationClientsLock); + + for (auto& it : _replicationClients) { + result.emplace_back(std::make_tuple(it.first, it.second.first, it.second.second)); + } + return result; +} + // ----------------------------------------------------------------------------- // --SECTION-- END-OF-FILE // ----------------------------------------------------------------------------- diff --git a/arangod/VocBase/vocbase.h b/arangod/VocBase/vocbase.h index 029a3fa5fe38..462faeae6e17 100644 --- a/arangod/VocBase/vocbase.h +++ b/arangod/VocBase/vocbase.h @@ -308,7 +308,10 @@ struct TRI_vocbase_t { std::set* _oldTransactions; - class TRI_replication_applier_t* _replicationApplier; + class TRI_replication_applier_t* _replicationApplier; + + triagens::basics::ReadWriteLock _replicationClientsLock; + std::unordered_map> _replicationClients; // state of the database // 0 = inactive @@ -330,6 +333,10 @@ struct TRI_vocbase_t { TRI_condition_t _compactorCondition; TRI_condition_t _cleanupCondition; + + public: + void updateReplicationClient (TRI_server_id_t, TRI_voc_tick_t); + std::vector> getReplicationClients(); }; //////////////////////////////////////////////////////////////////////////////// From 238d4eea04fe9eaa4dc418c899d0e5860a547205 Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Mon, 24 Aug 2015 13:56:18 +0200 Subject: [PATCH 14/28] pull variables out of the batch files together into the makefile - so the user can override the default settings. --- 3rdParty/Makefile.v8-windows | 16 +++++++++------- 3rdParty/v8-build.bat | 30 ++++++++++++++++-------------- 3rdParty/v8-clean.bat | 8 ++++---- 3rdParty/v8-distclean.bat | 24 ++++++++++++------------ 4 files changed, 41 insertions(+), 37 deletions(-) diff --git a/3rdParty/Makefile.v8-windows b/3rdParty/Makefile.v8-windows index 0d9eccbf7e8d..8fe2d73a9b5a 100644 --- a/3rdParty/Makefile.v8-windows +++ b/3rdParty/Makefile.v8-windows @@ -1,5 +1,7 @@ PDBNAME=vc120.pdb - +TARGET=Visual Studio 12 +VS=2013 +VSPATH="C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" V8=V8-4.3.61 .PHONY: all install @@ -8,28 +10,28 @@ all: build64 build32 build64: - ./v8-build.bat x86_amd64 x64 x64 64 + ./v8-build.bat x86_amd64 x64 x64 64 $(VS) "$(VSPATH)" $(V8) build32: - ./v8-build.bat x86 ia32 Win32 32 + ./v8-build.bat x86 ia32 Win32 32 $(VS) "$(VSPATH)" $(V8) clean: clean32 clean64 clean64: - ./v8-clean.bat cmd x86_amd64 x64 x64 64 + ./v8-clean.bat cmd x86_amd64 x64 x64 64 $(VS) "$(VSPATH)" $(V8) clean32: - ./v8-clean.bat x86 ia32 Win32 32 32 + ./v8-clean.bat x86 ia32 Win32 32 32 $(VS) "$(VSPATH)" $(V8) distclean: distclean32 distclean64 distclean64: - ./v8-distclean.bat x86_amd64 x64 x64 64 + ./v8-distclean.bat x86_amd64 x64 x64 64 $(VS) "$(VSPATH)" $(V8) distclean32: - ./v8-distclean.bat x86 ia32 Win32 32 + ./v8-distclean.bat x86 ia32 Win32 32 $(VS) "$(VSPATH)" $(V8) install: diff --git a/3rdParty/v8-build.bat b/3rdParty/v8-build.bat index fcf3f325263a..2072dc00c96d 100755 --- a/3rdParty/v8-build.bat +++ b/3rdParty/v8-build.bat @@ -2,17 +2,6 @@ :: ==== :: ======================================================================================================== -:: Set the version of Visual Studio. This will just add a suffix to the string -:: of your directories to avoid mixing them up. -SET VS_VERSION=vs2013 - -:: Set this to the directory that contains vcvarsall.bat file of the -:: VC Visual Studio version you want to use for building ICU. -SET VISUAL_STUDIO_VC="C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" - -:: Set this to the version of ICU you are building -SET V8_VERSION=4.3.61 - :: x86_amd64 or x86 set ARCHITECTURE=%1 @@ -25,13 +14,26 @@ set MSPLATFORM=%3 :: 64 or 32 set SUFFIX=%4 +:: Set the version of Visual Studio. This will just add a suffix to the string +:: of your directories to avoid mixing them up. +SET VS_VERSION=vs%5 +SET MSVS_VERSION=%5 + +:: Set this to the directory that contains vcvarsall.bat file of the +:: VC Visual Studio version you want to use for building ICU. +SET VISUAL_STUDIO_VC=%6 + +:: Set this to the version of V8 you are building +SET V8_VERSION=%7 + + :: ======================================================================================================== :: ==== :: ======================================================================================================== call %VISUAL_STUDIO_VC%\vcvarsall.bat %ARCHITECTURE% -set CMD=-G msvs_version=2013 +set CMD=-G msvs_version=%MSVS_VERSION% set CMD=%CMD% -Dtarget_arch=%PLATFORM% set CMD=%CMD% -Dcomponent=static_library set CMD=%CMD% -Dmode=release @@ -40,9 +42,9 @@ set CMD=%CMD% -Dv8_use_snapshot=false echo %CMD% -cd V8-%V8_VERSION% +cd %V8_VERSION% -set PATH=%~dp0V8-%V8_VERSION%\third_party\python_26;%PATH% +set PATH=%~dp0%V8_VERSION%\third_party\python_26;%PATH% .\third_party\python_26\python.exe build\gyp_v8 %CMD% cd build diff --git a/3rdParty/v8-clean.bat b/3rdParty/v8-clean.bat index 6c6aaab29a4d..26a31d279d1f 100755 --- a/3rdParty/v8-clean.bat +++ b/3rdParty/v8-clean.bat @@ -4,14 +4,14 @@ :: Set the version of Visual Studio. This will just add a suffix to the string :: of your directories to avoid mixing them up. -SET VS_VERSION=vs2013 +SET VS_VERSION=vs%5 :: Set this to the directory that contains vcvarsall.bat file of the :: VC Visual Studio version you want to use for building ICU. -SET VISUAL_STUDIO_VC="C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" +SET VISUAL_STUDIO_VC=%6 :: Set this to the version of ICU you are building -SET V8_VERSION=4.3.61 +SET V8_VERSION=%7 :: x86_amd64 or x86 set ARCHITECTURE=%1 @@ -29,7 +29,7 @@ set SUFFIX=%4 :: ==== :: ======================================================================================================== -cd V8-%V8_VERSION% +cd %V8_VERSION% cd build rmdir /S /Q Debug diff --git a/3rdParty/v8-distclean.bat b/3rdParty/v8-distclean.bat index bf4f4f17694c..6f228f631980 100755 --- a/3rdParty/v8-distclean.bat +++ b/3rdParty/v8-distclean.bat @@ -2,17 +2,6 @@ :: ==== :: ======================================================================================================== -:: Set the version of Visual Studio. This will just add a suffix to the string -:: of your directories to avoid mixing them up. -SET VS_VERSION=vs2013 - -:: Set this to the directory that contains vcvarsall.bat file of the -:: VC Visual Studio version you want to use for building ICU. -SET VISUAL_STUDIO_VC="C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" - -:: Set this to the version of ICU you are building -SET V8_VERSION=4.3.61 - :: x86_amd64 or x86 set ARCHITECTURE=%1 @@ -25,11 +14,22 @@ set MSPLATFORM=%3 :: 64 or 32 set SUFFIX=%4 +:: Set the version of Visual Studio. This will just add a suffix to the string +:: of your directories to avoid mixing them up. +SET VS_VERSION=vs%5 + +:: Set this to the directory that contains vcvarsall.bat file of the +:: VC Visual Studio version you want to use for building ICU. +SET VISUAL_STUDIO_VC=%6 + +:: Set this to the version of V8 you are building +SET V8_VERSION=%7 + :: ======================================================================================================== :: ==== :: ======================================================================================================== -cd V8-%V8_VERSION% +cd %V8_VERSION% del /f /q "build\all.sln" del /f /q "build\all.vcxproj" From 90f2e69fe4e9f8e312f3eb7ee14274b31f18f540 Mon Sep 17 00:00:00 2001 From: hkernbach Date: Mon, 24 Aug 2015 14:52:24 +0200 Subject: [PATCH 15/28] web ui, scss lint --- .../aardvark/APP/build/documentation.js | 14 +- .../aardvark/APP/build/documentation.js.gz | Bin 127893 -> 127915 bytes .../aardvark/APP/build/documentation.min.js | 2 +- .../APP/clusterFrontend/build/cluster.js | 14 +- .../APP/clusterFrontend/build/cluster.js.gz | Bin 224116 -> 224136 bytes .../APP/clusterFrontend/build/cluster.min.js | 2 +- .../clusterFrontend/build/style-minified.css | 2 +- .../build/style-minified.css.gz | Bin 23782 -> 23810 bytes .../APP/clusterFrontend/build/style.css | 147 +++++++++--------- .../APP/clusterFrontend/build/style.css.gz | Bin 37342 -> 37381 bytes .../_admin/aardvark/APP/frontend/build/app.js | 33 ++-- .../aardvark/APP/frontend/build/app.js.gz | Bin 1374685 -> 1374768 bytes .../aardvark/APP/frontend/build/app.min.js | 24 +-- .../aardvark/APP/frontend/build/app.min.js.gz | Bin 932225 -> 932284 bytes .../APP/frontend/build/scripts.html.part | 2 +- .../APP/frontend/build/standalone-min.html | 52 ++++--- .../APP/frontend/build/standalone-min.html.gz | Bin 23604 -> 23645 bytes .../APP/frontend/build/standalone.html | 52 ++++--- .../APP/frontend/build/style-minified.css | 2 +- .../APP/frontend/build/style-minified.css.gz | Bin 33892 -> 34030 bytes .../aardvark/APP/frontend/build/style.css | 121 +++++++------- .../aardvark/APP/frontend/build/style.css.gz | Bin 39240 -> 39203 bytes .../aardvark/APP/frontend/js/arango/arango.js | 14 +- .../js/templates/applicationsView.ejs | 5 +- .../frontend/js/templates/collectionsView.ejs | 5 +- .../frontend/js/templates/databaseView.ejs | 11 +- .../js/templates/graphManagementView.ejs | 11 +- .../js/templates/notificationItem.ejs | 5 + .../js/templates/notificationView.ejs | 2 +- .../js/templates/userManagementView.ejs | 11 +- .../APP/frontend/js/views/applicationsView.js | 6 +- .../APP/frontend/js/views/collectionsView.js | 4 +- .../APP/frontend/js/views/notificationView.js | 7 + .../APP/frontend/js/views/queryView.js | 2 +- .../APP/frontend/scss/._dataTables.scss.swp | Bin 0 -> 12288 bytes .../APP/frontend/scss/._tiles.scss.swp | Bin 0 -> 16384 bytes .../aardvark/APP/frontend/scss/.scss-lint.yml | 22 +++ .../aardvark/APP/frontend/scss/_colors.scss | 2 +- .../APP/frontend/scss/_dataTables.scss | 3 + .../APP/frontend/scss/_dropdowns.scss | 6 + .../aardvark/APP/frontend/scss/_general.scss | 2 +- .../aardvark/APP/frontend/scss/_navbar.scss | 2 +- .../APP/frontend/scss/_notification.scss | 27 +++- .../aardvark/APP/frontend/scss/_tiles.scss | 47 +++--- .../aardvark/APP/frontend/scss/_tooltips.scss | 2 +- .../APP/frontend/scss/_uploadfile.scss | 2 +- .../aardvark/APP/frontend/scss/_userMenu.scss | 2 +- 47 files changed, 384 insertions(+), 283 deletions(-) create mode 100644 js/apps/system/_admin/aardvark/APP/frontend/scss/._dataTables.scss.swp create mode 100644 js/apps/system/_admin/aardvark/APP/frontend/scss/._tiles.scss.swp create mode 100644 js/apps/system/_admin/aardvark/APP/frontend/scss/.scss-lint.yml diff --git a/js/apps/system/_admin/aardvark/APP/build/documentation.js b/js/apps/system/_admin/aardvark/APP/build/documentation.js index 2f20ba77fd22..653c00937df0 100644 --- a/js/apps/system/_admin/aardvark/APP/build/documentation.js +++ b/js/apps/system/_admin/aardvark/APP/build/documentation.js @@ -7348,15 +7348,15 @@ var hljs=new function(){function l(o){return o.replace(/&/gm,"&").replace(/< $(element).find('i').addClass('fa-dot-circle-o'); } else { - $(element).find('i').addClass('fa-check-circle-o'); + $(element).find('i').addClass('fa-check-square-o'); } } else { if ($(element).find('i').hasClass('css-round-label')) { - $(element).find('i').addClass('fa-circle-o'); + $(element).find('i').addClass('fa-square-o'); } else { - $(element).find('i').addClass('fa-circle-o'); + $(element).find('i').addClass('fa-square-o'); } } } @@ -7505,12 +7505,12 @@ var hljs=new function(){function l(o){return o.replace(/&/gm,"&").replace(/< return returnVal; }, - arangoNotification: function (title, content) { - window.App.notificationList.add({title:title, content: content}); + arangoNotification: function (title, content, info) { + window.App.notificationList.add({title:title, content: content, info: info}); }, - arangoError: function (title, content) { - window.App.notificationList.add({title:title, content: content}); + arangoError: function (title, content, info) { + window.App.notificationList.add({title:title, content: content, info: info}); }, getRandomToken: function () { diff --git a/js/apps/system/_admin/aardvark/APP/build/documentation.js.gz b/js/apps/system/_admin/aardvark/APP/build/documentation.js.gz index b4a09f8231bcbf1eaba4cdcbcfd3d9ec9b722dac..38b7de743920cd66d9fc0ed044c81d8bc97eb761 100644 GIT binary patch delta 16525 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 E0JqsG2LJ#7 delta 16523 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"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),b=new Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,b,c,d,e;this._more||(this.yytext="",this.match="");for(var f=this._currentRules(),g=0;gb[0].length)||(b=c,d=g,this.options.flex));g++);return b?(e=b[0].match(/(?:\r\n?|\n).*/g),e&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-e[e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],a=this.performAction.call(this,this.yy,this,f[d],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a?a:void 0):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return"undefined"!=typeof a?a:this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(a){this.begin(a)}};return a.options={},a.performAction=function(a,b,c,d){switch(c){case 0:if("\\"!==b.yytext.slice(-1)&&this.begin("mu"),"\\"===b.yytext.slice(-1)&&(b.yytext=b.yytext.substr(0,b.yyleng-1),this.begin("emu")),b.yytext)return 14;break;case 1:return 14;case 2:return"\\"!==b.yytext.slice(-1)&&this.popState(),"\\"===b.yytext.slice(-1)&&(b.yytext=b.yytext.substr(0,b.yyleng-1)),14;case 3:return 24;case 4:return 16;case 5:return 20;case 6:return 19;case 7:return 19;case 8:return 23;case 9:return 23;case 10:return b.yytext=b.yytext.substr(3,b.yyleng-5),this.popState(),15;case 11:return 22;case 12:return 35;case 13:return 34;case 14:return 34;case 15:return 37;case 16:break;case 17:return this.popState(),18;case 18:return this.popState(),18;case 19:return b.yytext=b.yytext.substr(1,b.yyleng-2).replace(/\\"/g,'"'),29;case 20:return b.yytext=b.yytext.substr(1,b.yyleng-2).replace(/\\"/g,'"'),29;case 21:return b.yytext=b.yytext.substr(1),27;case 22:return 31;case 23:return 31;case 24:return 30;case 25:return 34;case 26:return b.yytext=b.yytext.substr(1,b.yyleng-2),34;case 27:return"INVALID";case 28:return 5}},a.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],a.conditions={mu:{rules:[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],inclusive:!1},emu:{rules:[2],inclusive:!1},INITIAL:{rules:[0,1,28],inclusive:!0}},a}();return b.lexer=c,a.prototype=b,b.Parser=a,new a}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=handlebars,exports.Parser=handlebars.Parser,exports.parse=function(){return handlebars.parse.apply(handlebars,arguments)},exports.main=function(a){if(!a[1])throw new Error("Usage: "+a[0]+" FILE");var b;return b="undefined"!=typeof process?require("fs").readFileSync(require("path").resolve(a[1]),"utf8"):require("file").path(require("file").cwd()).join(a[1]).read({charset:"utf-8"}),exports.parser.parse(b)},"undefined"!=typeof module&&require.main===module&&exports.main("undefined"!=typeof process?process.argv.slice(1):require("system").args)),Handlebars.Parser=handlebars,Handlebars.parse=function(a){return Handlebars.Parser.yy=Handlebars.AST,Handlebars.Parser.parse(a)},Handlebars.print=function(a){return(new Handlebars.PrintVisitor).accept(a)},Handlebars.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,log:function(a,b){}},Handlebars.log=function(a,b){Handlebars.logger.log(a,b)},function(){Handlebars.AST={},Handlebars.AST.ProgramNode=function(a,b){this.type="program",this.statements=a,b&&(this.inverse=new Handlebars.AST.ProgramNode(b))},Handlebars.AST.MustacheNode=function(a,b,c){this.type="mustache",this.escaped=!c,this.hash=b;var d=this.id=a[0],e=this.params=a.slice(1),f=this.eligibleHelper=d.isSimple;this.isHelper=f&&(e.length||b)},Handlebars.AST.PartialNode=function(a,b){this.type="partial",this.id=a,this.context=b};var a=function(a,b){if(a.original!==b.original)throw new Handlebars.Exception(a.original+" doesn't match "+b.original)};Handlebars.AST.BlockNode=function(b,c,d,e){a(b.id,e),this.type="block",this.mustache=b,this.program=c,this.inverse=d,this.inverse&&!this.program&&(this.isInverse=!0)},Handlebars.AST.ContentNode=function(a){this.type="content",this.string=a},Handlebars.AST.HashNode=function(a){this.type="hash",this.pairs=a},Handlebars.AST.IdNode=function(a){this.type="ID",this.original=a.join(".");for(var b=[],c=0,d=0,e=a.length;e>d;d++){var f=a[d];".."===f?c++:"."===f||"this"===f?this.isScoped=!0:b.push(f)}this.parts=b,this.string=b.join("."),this.depth=c,this.isSimple=1===a.length&&!this.isScoped&&0===c},Handlebars.AST.DataNode=function(a){this.type="DATA",this.id=a},Handlebars.AST.StringNode=function(a){this.type="STRING",this.string=a},Handlebars.AST.IntegerNode=function(a){this.type="INTEGER",this.integer=a},Handlebars.AST.BooleanNode=function(a){this.type="BOOLEAN",this.bool=a},Handlebars.AST.CommentNode=function(a){this.type="comment",this.comment=a}}(),Handlebars.Exception=function(a){var b=Error.prototype.constructor.apply(this,arguments);for(var c in b)b.hasOwnProperty(c)&&(this[c]=b[c]);this.message=b.message},Handlebars.Exception.prototype=new Error,Handlebars.SafeString=function(a){this.string=a},Handlebars.SafeString.prototype.toString=function(){return this.string.toString()},function(){var a={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},b=/[&<>"'`]/g,c=/[&<>"'`]/,d=function(b){return a[b]||"&"};Handlebars.Utils={escapeExpression:function(a){return a instanceof Handlebars.SafeString?a.toString():null==a||a===!1?"":c.test(a)?a.replace(b,d):a},isEmpty:function(a){return"undefined"==typeof a?!0:null===a?!0:a===!1?!0:"[object Array]"===Object.prototype.toString.call(a)&&0===a.length?!0:!1}}}(),Handlebars.Compiler=function(){},Handlebars.JavaScriptCompiler=function(){},function(a,b){a.prototype={compiler:a,disassemble:function(){for(var a,b,c,d=this.opcodes,e=[],f=0,g=d.length;g>f;f++)if(a=d[f],"DECLARE"===a.opcode)e.push("DECLARE "+a.name+"="+a.value);else{b=[];for(var h=0;hd;d++)b=c[d],this[b.type](b);return this.isSimple=1===e,this.depths.list=this.depths.list.sort(function(a,b){return a-b}),this},compileProgram:function(a){var b,c=(new this.compiler).compile(a,this.options),d=this.guid++;this.usePartial=this.usePartial||c.usePartial,this.children[d]=c;for(var e=0,f=c.depths.list.length;f>e;e++)b=c.depths.list[e],2>b||this.addDepth(b-1);return d},block:function(a){var b=a.mustache,c=a.program,d=a.inverse;c&&(c=this.compileProgram(c)),d&&(d=this.compileProgram(d));var e=this.classifyMustache(b);"helper"===e?this.helperMustache(b,c,d):"simple"===e?(this.simpleMustache(b),this.opcode("pushProgram",c),this.opcode("pushProgram",d),this.opcode("pushLiteral","{}"),this.opcode("blockValue")):(this.ambiguousMustache(b,c,d),this.opcode("pushProgram",c),this.opcode("pushProgram",d),this.opcode("pushLiteral","{}"),this.opcode("ambiguousBlockValue")),this.opcode("append")},hash:function(a){var b,c,d=a.pairs;this.opcode("push","{}");for(var e=0,f=d.length;f>e;e++)b=d[e],c=b[1],this.accept(c),this.opcode("assignToHash",b[0])},partial:function(a){var b=a.id;this.usePartial=!0,a.context?this.ID(a.context):this.opcode("push","depth0"),this.opcode("invokePartial",b.original),this.opcode("append")},content:function(a){this.opcode("appendContent",a.string)},mustache:function(a){var b=this.options,c=this.classifyMustache(a);"simple"===c?this.simpleMustache(a):"helper"===c?this.helperMustache(a):this.ambiguousMustache(a),a.escaped&&!b.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ambiguousMustache:function(a,b,c){var d=a.id,e=d.parts[0];this.opcode("getContext",d.depth),this.opcode("pushProgram",b),this.opcode("pushProgram",c),this.opcode("invokeAmbiguous",e)},simpleMustache:function(a,b,c){var d=a.id;"DATA"===d.type?this.DATA(d):d.parts.length?this.ID(d):(this.addDepth(d.depth),this.opcode("getContext",d.depth),this.opcode("pushContext")),this.opcode("resolvePossibleLambda")},helperMustache:function(a,b,c){var d=this.setupFullMustacheParams(a,b,c),e=a.id.parts[0];if(this.options.knownHelpers[e])this.opcode("invokeKnownHelper",d.length,e);else{if(this.knownHelpersOnly)throw new Error("You specified knownHelpersOnly, but used the unknown helper "+e);this.opcode("invokeHelper",d.length,e)}},ID:function(a){this.addDepth(a.depth),this.opcode("getContext",a.depth);var b=a.parts[0];b?this.opcode("lookupOnContext",a.parts[0]):this.opcode("pushContext");for(var c=1,d=a.parts.length;d>c;c++)this.opcode("lookup",a.parts[c])},DATA:function(a){this.options.data=!0,this.opcode("lookupData",a.id)},STRING:function(a){this.opcode("pushString",a.string)},INTEGER:function(a){this.opcode("pushLiteral",a.integer)},BOOLEAN:function(a){this.opcode("pushLiteral",a.bool)},comment:function(){},opcode:function(a){this.opcodes.push({opcode:a,args:[].slice.call(arguments,1)})},declare:function(a,b){this.opcodes.push({opcode:"DECLARE",name:a,value:b})},addDepth:function(a){if(isNaN(a))throw new Error("EWOT");0!==a&&(this.depths[a]||(this.depths[a]=!0,this.depths.list.push(a)))},classifyMustache:function(a){var b=a.isHelper,c=a.eligibleHelper,d=this.options;if(c&&!b){var e=a.id.parts[0];d.knownHelpers[e]?b=!0:d.knownHelpersOnly&&(c=!1)}return b?"helper":c?"ambiguous":"simple"},pushParams:function(a){for(var b,c=a.length;c--;)b=a[c],this.options.stringParams?(b.depth&&this.addDepth(b.depth),this.opcode("getContext",b.depth||0),this.opcode("pushStringParam",b.string)):this[b.type](b)},setupMustacheParams:function(a){var b=a.params;return this.pushParams(b),a.hash?this.hash(a.hash):this.opcode("pushLiteral","{}"),b},setupFullMustacheParams:function(a,b,c){var d=a.params;return this.pushParams(d),this.opcode("pushProgram",b),this.opcode("pushProgram",c),a.hash?this.hash(a.hash):this.opcode("pushLiteral","{}"),d}};var c=function(a){this.value=a};b.prototype={nameLookup:function(a,c,d){return/^[0-9]+$/.test(c)?a+"["+c+"]":b.isValidJavaScriptVariableName(c)?a+"."+c:a+"['"+c+"']"},appendToBuffer:function(a){return this.environment.isSimple?"return "+a+";":"buffer += "+a+";"},initializeBuffer:function(){return this.quotedString("")},namespace:"Handlebars",compile:function(a,b,c,d){this.environment=a,this.options=b||{},Handlebars.log(Handlebars.logger.DEBUG,this.environment.disassemble()+"\n\n"),this.name=this.environment.name,this.isChild=!!c,this.context=c||{programs:[],aliases:{}},this.preamble(),this.stackSlot=0,this.stackVars=[],this.registers={list:[]},this.compileStack=[],this.compileChildren(a,b);var e,f=a.opcodes;for(this.i=0,g=f.length;this.ie;e++)d.push("depth"+this.environment.depths.list[e]);if(a)return d.push(this.source.join("\n ")),Function.apply(this,d);var g="function "+(this.name||"")+"("+d.join(",")+") {\n "+this.source.join("\n ")+"}";return Handlebars.log(Handlebars.logger.DEBUG,g+"\n\n"),g},blockValue:function(){this.context.aliases.blockHelperMissing="helpers.blockHelperMissing";var a=["depth0"];this.setupParams(0,a),this.replaceStack(function(b){return a.splice(1,0,b),b+" = blockHelperMissing.call("+a.join(", ")+")"})},ambiguousBlockValue:function(){this.context.aliases.blockHelperMissing="helpers.blockHelperMissing";var a=["depth0"];this.setupParams(0,a);var b=this.topStack();a.splice(1,0,b),this.source.push("if (!"+this.lastHelper+") { "+b+" = blockHelperMissing.call("+a.join(", ")+"); }")},appendContent:function(a){this.source.push(this.appendToBuffer(this.quotedString(a)))},append:function(){var a=this.popStack();this.source.push("if("+a+" || "+a+" === 0) { "+this.appendToBuffer(a)+" }"),this.environment.isSimple&&this.source.push("else { "+this.appendToBuffer("''")+" }")},appendEscaped:function(){var a=this.nextOpcode(),b="";this.context.aliases.escapeExpression="this.escapeExpression",a&&"appendContent"===a.opcode&&(b=" + "+this.quotedString(a.args[0]),this.eat(a)),this.source.push(this.appendToBuffer("escapeExpression("+this.popStack()+")"+b))},getContext:function(a){this.lastContext!==a&&(this.lastContext=a)},lookupOnContext:function(a){this.pushStack(this.nameLookup("depth"+this.lastContext,a,"context"))},pushContext:function(){this.pushStackLiteral("depth"+this.lastContext)},resolvePossibleLambda:function(){this.context.aliases.functionType='"function"',this.replaceStack(function(a){return"typeof "+a+" === functionType ? "+a+"() : "+a})},lookup:function(a){this.replaceStack(function(b){return b+" == null || "+b+" === false ? "+b+" : "+this.nameLookup(b,a,"context")})},lookupData:function(a){this.pushStack(this.nameLookup("data",a,"data"))},pushStringParam:function(a){this.pushStackLiteral("depth"+this.lastContext),this.pushString(a)},pushString:function(a){this.pushStackLiteral(this.quotedString(a))},push:function(a){this.pushStack(a)},pushLiteral:function(a){this.pushStackLiteral(a)},pushProgram:function(a){null!=a?this.pushStackLiteral(this.programExpression(a)):this.pushStackLiteral(null)},invokeHelper:function(a,b){this.context.aliases.helperMissing="helpers.helperMissing";var c=this.lastHelper=this.setupHelper(a,b);this.register("foundHelper",c.name),this.pushStack("foundHelper ? foundHelper.call("+c.callParams+") : helperMissing.call("+c.helperMissingParams+")")},invokeKnownHelper:function(a,b){var c=this.setupHelper(a,b);this.pushStack(c.name+".call("+c.callParams+")")},invokeAmbiguous:function(a){this.context.aliases.functionType='"function"',this.pushStackLiteral("{}");var b=this.setupHelper(0,a),c=this.lastHelper=this.nameLookup("helpers",a,"helper");this.register("foundHelper",c);var d=this.nameLookup("depth"+this.lastContext,a,"context"),e=this.nextStack();this.source.push("if (foundHelper) { "+e+" = foundHelper.call("+b.callParams+"); }"),this.source.push("else { "+e+" = "+d+"; "+e+" = typeof "+e+" === functionType ? "+e+"() : "+e+"; }")},invokePartial:function(a){var b=[this.nameLookup("partials",a,"partial"),"'"+a+"'",this.popStack(),"helpers","partials"];this.options.data&&b.push("data"),this.context.aliases.self="this",this.pushStack("self.invokePartial("+b.join(", ")+");")},assignToHash:function(a){var b=this.popStack(),c=this.topStack();this.source.push(c+"['"+a+"'] = "+b+";")},compiler:b,compileChildren:function(a,b){for(var c,d,e=a.children,f=0,g=e.length;g>f;f++){c=e[f],d=new this.compiler,this.context.programs.push("");var h=this.context.programs.length;c.index=h,c.name="program"+h,this.context.programs[h]=d.compile(c,b,this.context)}},programExpression:function(a){if(this.context.aliases.self="this",null==a)return"self.noop";for(var b,c=this.environment.children[a],d=c.depths.list,e=[c.index,c.name,"data"],f=0,g=d.length;g>f;f++)b=d[f],1===b?e.push("depth0"):e.push("depth"+(b-1));return 0===d.length?"self.program("+e.join(", ")+")":(e.shift(),"self.programWithDepth("+e.join(", ")+")")},register:function(a,b){this.useRegister(a),this.source.push(a+" = "+b+";")},useRegister:function(a){this.registers[a]||(this.registers[a]=!0,this.registers.list.push(a))},pushStackLiteral:function(a){return this.compileStack.push(new c(a)),a},pushStack:function(a){return this.source.push(this.incrStack()+" = "+a+";"),this.compileStack.push("stack"+this.stackSlot),"stack"+this.stackSlot},replaceStack:function(a){var b=a.call(this,this.topStack());return this.source.push(this.topStack()+" = "+b+";"),"stack"+this.stackSlot},nextStack:function(a){var b=this.incrStack();return this.compileStack.push("stack"+this.stackSlot),b},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),"stack"+this.stackSlot},popStack:function(){var a=this.compileStack.pop();return a instanceof c?a.value:(this.stackSlot--,a)},topStack:function(){var a=this.compileStack[this.compileStack.length-1];return a instanceof c?a.value:a},quotedString:function(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r")+'"'},setupHelper:function(a,b){var c=[];this.setupParams(a,c);var d=this.nameLookup("helpers",b,"helper");return{params:c,name:d,callParams:["depth0"].concat(c).join(", "),helperMissingParams:["depth0",this.quotedString(b)].concat(c).join(", ")}},setupParams:function(a,b){var c,d,e,f=[],g=[];f.push("hash:"+this.popStack()),d=this.popStack(),e=this.popStack(),(e||d)&&(e||(this.context.aliases.self="this",e="self.noop"),d||(this.context.aliases.self="this",d="self.noop"),f.push("inverse:"+d),f.push("fn:"+e));for(var h=0;a>h;h++)c=this.popStack(),b.push(c),this.options.stringParams&&g.push(this.popStack());return this.options.stringParams&&f.push("contexts:["+g.join(",")+"]"),this.options.data&&f.push("data:data"),b.push("{"+f.join(",")+"}"),b.join(", ")}};for(var d="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "),e=b.RESERVED_WORDS={},f=0,g=d.length;g>f;f++)e[d[f]]=!0;b.isValidJavaScriptVariableName=function(a){return!b.RESERVED_WORDS[a]&&/^[a-zA-Z_$][0-9a-zA-Z_$]+$/.test(a)?!0:!1}}(Handlebars.Compiler,Handlebars.JavaScriptCompiler),Handlebars.precompile=function(a,b){b=b||{};var c=Handlebars.parse(a),d=(new Handlebars.Compiler).compile(c,b);return(new Handlebars.JavaScriptCompiler).compile(d,b)},Handlebars.compile=function(a,b){function c(){var c=Handlebars.parse(a),d=(new Handlebars.Compiler).compile(c,b),e=(new Handlebars.JavaScriptCompiler).compile(d,b,void 0,!0);return Handlebars.template(e)}b=b||{};var d;return function(a,b){return d||(d=c()),d.call(this,a,b)}},Handlebars.VM={template:function(a){var b={escapeExpression:Handlebars.Utils.escapeExpression,invokePartial:Handlebars.VM.invokePartial,programs:[],program:function(a,b,c){var d=this.programs[a];return c?Handlebars.VM.program(b,c):d?d:d=this.programs[a]=Handlebars.VM.program(b)},programWithDepth:Handlebars.VM.programWithDepth,noop:Handlebars.VM.noop};return function(c,d){return d=d||{},a.call(b,Handlebars,c,d.helpers,d.partials,d.data)}},programWithDepth:function(a,b,c){var d=Array.prototype.slice.call(arguments,2);return function(c,e){return e=e||{},a.apply(this,[c,e.data||b].concat(d))}},program:function(a,b){return function(c,d){return d=d||{},a(c,d.data||b)}},noop:function(){return""},invokePartial:function(a,b,c,d,e,f){var g={helpers:d,partials:e,data:f};if(void 0===a)throw new Handlebars.Exception("The partial "+b+" could not be found");if(a instanceof Function)return a(c,g);if(Handlebars.compile)return e[b]=Handlebars.compile(a,{data:void 0!==f}),e[b](c,g);throw new Handlebars.Exception("The partial "+b+" could not be compiled when running in runtime-only mode")}},Handlebars.template=Handlebars.VM.template,function(){var a=this,b=a._,c={},d=Array.prototype,e=Object.prototype,f=Function.prototype,g=d.push,h=d.slice,i=d.concat,j=e.toString,k=e.hasOwnProperty,l=d.forEach,m=d.map,n=d.reduce,o=d.reduceRight,p=d.filter,q=d.every,r=d.some,s=d.indexOf,t=d.lastIndexOf,u=Array.isArray,v=Object.keys,w=f.bind,x=function(a){return a instanceof x?a:this instanceof x?void(this._wrapped=a):new x(a)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=x),exports._=x):a._=x,x.VERSION="1.5.1";var y=x.each=x.forEach=function(a,b,d){if(null!=a)if(l&&a.forEach===l)a.forEach(b,d);else if(a.length===+a.length){for(var e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===c)return}else for(var g in a)if(x.has(a,g)&&b.call(d,a[g],g,a)===c)return};x.map=x.collect=function(a,b,c){var d=[];return null==a?d:m&&a.map===m?a.map(b,c):(y(a,function(a,e,f){d.push(b.call(c,a,e,f))}),d)};var z="Reduce of empty array with no initial value";x.reduce=x.foldl=x.inject=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),n&&a.reduce===n)return d&&(b=x.bind(b,d)),e?a.reduce(b,c):a.reduce(b);if(y(a,function(a,f,g){e?c=b.call(d,c,a,f,g):(c=a,e=!0)}),!e)throw new TypeError(z);return c},x.reduceRight=x.foldr=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),o&&a.reduceRight===o)return d&&(b=x.bind(b,d)),e?a.reduceRight(b,c):a.reduceRight(b);var f=a.length;if(f!==+f){var g=x.keys(a);f=g.length}if(y(a,function(h,i,j){i=g?g[--f]:--f,e?c=b.call(d,c,a[i],i,j):(c=a[i],e=!0)}),!e)throw new TypeError(z);return c},x.find=x.detect=function(a,b,c){var d;return A(a,function(a,e,f){return b.call(c,a,e,f)?(d=a,!0):void 0}),d},x.filter=x.select=function(a,b,c){var d=[];return null==a?d:p&&a.filter===p?a.filter(b,c):(y(a,function(a,e,f){b.call(c,a,e,f)&&d.push(a)}),d)},x.reject=function(a,b,c){return x.filter(a,function(a,d,e){return!b.call(c,a,d,e)},c)},x.every=x.all=function(a,b,d){b||(b=x.identity);var e=!0;return null==a?e:q&&a.every===q?a.every(b,d):(y(a,function(a,f,g){return(e=e&&b.call(d,a,f,g))?void 0:c}),!!e)};var A=x.some=x.any=function(a,b,d){b||(b=x.identity);var e=!1;return null==a?e:r&&a.some===r?a.some(b,d):(y(a,function(a,f,g){return e||(e=b.call(d,a,f,g))?c:void 0}),!!e)};x.contains=x.include=function(a,b){return null==a?!1:s&&a.indexOf===s?-1!=a.indexOf(b):A(a,function(a){return a===b})},x.invoke=function(a,b){var c=h.call(arguments,2),d=x.isFunction(b);return x.map(a,function(a){return(d?b:a[b]).apply(a,c)})},x.pluck=function(a,b){return x.map(a,function(a){return a[b]})},x.where=function(a,b,c){return x.isEmpty(b)?c?void 0:[]:x[c?"find":"filter"](a,function(a){for(var c in b)if(b[c]!==a[c])return!1;return!0})},x.findWhere=function(a,b){return x.where(a,b,!0)},x.max=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.max.apply(Math,a);if(!b&&x.isEmpty(a))return-(1/0);var d={computed:-(1/0),value:-(1/0)};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;g>d.computed&&(d={value:a,computed:g})}),d.value},x.min=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.min.apply(Math,a);if(!b&&x.isEmpty(a))return 1/0;var d={computed:1/0,value:1/0};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;gd||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.indexf;){var h=f+g>>>1;c.call(d,a[h])=0})})},x.difference=function(a){var b=i.apply(d,h.call(arguments,1));return x.filter(a,function(a){return!x.contains(b,a)})},x.zip=function(){for(var a=x.max(x.pluck(arguments,"length").concat(0)),b=new Array(a),c=0;a>c;c++)b[c]=x.pluck(arguments,""+c);return b},x.object=function(a,b){if(null==a)return{};for(var c={},d=0,e=a.length;e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},x.indexOf=function(a,b,c){if(null==a)return-1;var d=0,e=a.length;if(c){if("number"!=typeof c)return d=x.sortedIndex(a,b),a[d]===b?d:-1;d=0>c?Math.max(0,e+c):c}if(s&&a.indexOf===s)return a.indexOf(b,c);for(;e>d;d++)if(a[d]===b)return d;return-1},x.lastIndexOf=function(a,b,c){if(null==a)return-1;var d=null!=c;if(t&&a.lastIndexOf===t)return d?a.lastIndexOf(b,c):a.lastIndexOf(b);for(var e=d?c:a.length;e--;)if(a[e]===b)return e;return-1},x.range=function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f};var E=function(){};x.bind=function(a,b){var c,d;if(w&&a.bind===w)return w.apply(a,h.call(arguments,1));if(!x.isFunction(a))throw new TypeError;return c=h.call(arguments,2),d=function(){if(!(this instanceof d))return a.apply(b,c.concat(h.call(arguments)));E.prototype=a.prototype;var e=new E;E.prototype=null;var f=a.apply(e,c.concat(h.call(arguments)));return Object(f)===f?f:e}},x.partial=function(a){var b=h.call(arguments,1);return function(){return a.apply(this,b.concat(h.call(arguments)))}},x.bindAll=function(a){var b=h.call(arguments,1);if(0===b.length)throw new Error("bindAll must be passed function names");return y(b,function(b){a[b]=x.bind(a[b],a)}),a},x.memoize=function(a,b){var c={};return b||(b=x.identity),function(){var d=b.apply(this,arguments);return x.has(c,d)?c[d]:c[d]=a.apply(this,arguments)}},x.delay=function(a,b){var c=h.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},x.defer=function(a){return x.delay.apply(x,[a,1].concat(h.call(arguments,1)))},x.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:new Date,g=null,f=a.apply(d,e)};return function(){var j=new Date;h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k?(clearTimeout(g),g=null,h=j,f=a.apply(d,e)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},x.debounce=function(a,b,c){var d,e=null;return function(){var f=this,g=arguments,h=function(){e=null,c||(d=a.apply(f,g))},i=c&&!e;return clearTimeout(e),e=setTimeout(h,b),i&&(d=a.apply(f,g)),d}},x.once=function(a){var b,c=!1;return function(){return c?b:(c=!0,b=a.apply(this,arguments),a=null,b)}},x.wrap=function(a,b){return function(){var c=[a];return g.apply(c,arguments),b.apply(this,c)}},x.compose=function(){var a=arguments;return function(){for(var b=arguments,c=a.length-1;c>=0;c--)b=[a[c].apply(this,b)];return b[0]}},x.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},x.keys=v||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var b=[];for(var c in a)x.has(a,c)&&b.push(c);return b},x.values=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push(a[c]);return b},x.pairs=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push([c,a[c]]);return b},x.invert=function(a){var b={};for(var c in a)x.has(a,c)&&(b[a[c]]=c);return b},x.functions=x.methods=function(a){var b=[];for(var c in a)x.isFunction(a[c])&&b.push(c);return b.sort()},x.extend=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)a[c]=b[c]}),a},x.pick=function(a){var b={},c=i.apply(d,h.call(arguments,1));return y(c,function(c){c in a&&(b[c]=a[c])}),b},x.omit=function(a){var b={},c=i.apply(d,h.call(arguments,1));for(var e in a)x.contains(c,e)||(b[e]=a[e]);return b},x.defaults=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)void 0===a[c]&&(a[c]=b[c])}),a},x.clone=function(a){return x.isObject(a)?x.isArray(a)?a.slice():x.extend({},a):a},x.tap=function(a,b){return b(a),a};var F=function(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;if(null==a||null==b)return a===b;a instanceof x&&(a=a._wrapped),b instanceof x&&(b=b._wrapped);var e=j.call(a);if(e!=j.call(b))return!1;switch(e){case"[object String]":return a==String(b);case"[object Number]":return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case"[object Date]":case"[object Boolean]":return+a==+b; case"[object RegExp]":return a.source==b.source&&a.global==b.global&&a.multiline==b.multiline&&a.ignoreCase==b.ignoreCase}if("object"!=typeof a||"object"!=typeof b)return!1;for(var f=c.length;f--;)if(c[f]==a)return d[f]==b;var g=a.constructor,h=b.constructor;if(g!==h&&!(x.isFunction(g)&&g instanceof g&&x.isFunction(h)&&h instanceof h))return!1;c.push(a),d.push(b);var i=0,k=!0;if("[object Array]"==e){if(i=a.length,k=i==b.length)for(;i--&&(k=F(a[i],b[i],c,d)););}else{for(var l in a)if(x.has(a,l)&&(i++,!(k=x.has(b,l)&&F(a[l],b[l],c,d))))break;if(k){for(l in b)if(x.has(b,l)&&!i--)break;k=!i}}return c.pop(),d.pop(),k};x.isEqual=function(a,b){return F(a,b,[],[])},x.isEmpty=function(a){if(null==a)return!0;if(x.isArray(a)||x.isString(a))return 0===a.length;for(var b in a)if(x.has(a,b))return!1;return!0},x.isElement=function(a){return!(!a||1!==a.nodeType)},x.isArray=u||function(a){return"[object Array]"==j.call(a)},x.isObject=function(a){return a===Object(a)},y(["Arguments","Function","String","Number","Date","RegExp"],function(a){x["is"+a]=function(b){return j.call(b)=="[object "+a+"]"}}),x.isArguments(arguments)||(x.isArguments=function(a){return!(!a||!x.has(a,"callee"))}),"function"!=typeof/./&&(x.isFunction=function(a){return"function"==typeof a}),x.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},x.isNaN=function(a){return x.isNumber(a)&&a!=+a},x.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"==j.call(a)},x.isNull=function(a){return null===a},x.isUndefined=function(a){return void 0===a},x.has=function(a,b){return k.call(a,b)},x.noConflict=function(){return a._=b,this},x.identity=function(a){return a},x.times=function(a,b,c){for(var d=Array(Math.max(0,a)),e=0;a>e;e++)d[e]=b.call(c,e);return d},x.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))};var G={escape:{"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"}};G.unescape=x.invert(G.escape);var H={escape:new RegExp("["+x.keys(G.escape).join("")+"]","g"),unescape:new RegExp("("+x.keys(G.unescape).join("|")+")","g")};x.each(["escape","unescape"],function(a){x[a]=function(b){return null==b?"":(""+b).replace(H[a],function(b){return G[a][b]})}}),x.result=function(a,b){if(null==a)return void 0;var c=a[b];return x.isFunction(c)?c.call(a):c},x.mixin=function(a){y(x.functions(a),function(b){var c=x[b]=a[b];x.prototype[b]=function(){var a=[this._wrapped];return g.apply(a,arguments),M.call(this,c.apply(x,a))}})};var I=0;x.uniqueId=function(a){var b=++I+"";return a?a+b:b},x.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var J=/(.)^/,K={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},L=/\\|'|\r|\n|\t|\u2028|\u2029/g;x.template=function(a,b,c){var d;c=x.defaults({},c,x.templateSettings);var e=new RegExp([(c.escape||J).source,(c.interpolate||J).source,(c.evaluate||J).source].join("|")+"|$","g"),f=0,g="__p+='";a.replace(e,function(b,c,d,e,h){return g+=a.slice(f,h).replace(L,function(a){return"\\"+K[a]}),c&&(g+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'"),d&&(g+="'+\n((__t=("+d+"))==null?'':__t)+\n'"),e&&(g+="';\n"+e+"\n__p+='"),f=h+b.length,b}),g+="';\n",c.variable||(g="with(obj||{}){\n"+g+"}\n"),g="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+g+"return __p;\n";try{d=new Function(c.variable||"obj","_",g)}catch(h){throw h.source=g,h}if(b)return d(b,x);var i=function(a){return d.call(this,a,x)};return i.source="function("+(c.variable||"obj")+"){\n"+g+"}",i},x.chain=function(a){return x(a).chain()};var M=function(a){return this._chain?x(a).chain():a};x.mixin(x),y(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=d[a];x.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!=a&&"splice"!=a||0!==c.length||delete c[0],M.call(this,c)}}),y(["concat","join","slice"],function(a){var b=d[a];x.prototype[a]=function(){return M.call(this,b.apply(this._wrapped,arguments))}}),x.extend(x.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this),function(){var a,b=this,c=b.Backbone,d=[],e=d.push,f=d.slice,g=d.splice;a="undefined"!=typeof exports?exports:b.Backbone={},a.VERSION="1.0.0";var h=b._;h||"undefined"==typeof require||(h=require("underscore")),a.$=b.jQuery||b.Zepto||b.ender||b.$,a.noConflict=function(){return b.Backbone=c,this},a.emulateHTTP=!1,a.emulateJSON=!1;var i=a.Events={on:function(a,b,c){if(!k(this,"on",a,[b,c])||!b)return this;this._events||(this._events={});var d=this._events[a]||(this._events[a]=[]);return d.push({callback:b,context:c,ctx:c||this}),this},once:function(a,b,c){if(!k(this,"once",a,[b,c])||!b)return this;var d=this,e=h.once(function(){d.off(a,e),b.apply(this,arguments)});return e._callback=b,this.on(a,e,c)},off:function(a,b,c){var d,e,f,g,i,j,l,m;if(!this._events||!k(this,"off",a,[b,c]))return this;if(!a&&!b&&!c)return this._events={},this;for(g=a?[a]:h.keys(this._events),i=0,j=g.length;j>i;i++)if(a=g[i],f=this._events[a]){if(this._events[a]=d=[],b||c)for(l=0,m=f.length;m>l;l++)e=f[l],(b&&b!==e.callback&&b!==e.callback._callback||c&&c!==e.context)&&d.push(e);d.length||delete this._events[a]}return this},trigger:function(a){if(!this._events)return this;var b=f.call(arguments,1);if(!k(this,"trigger",a,b))return this;var c=this._events[a],d=this._events.all;return c&&l(c,b),d&&l(d,arguments),this},stopListening:function(a,b,c){var d=this._listeners;if(!d)return this;var e=!b&&!c;"object"==typeof b&&(c=this),a&&((d={})[a._listenerId]=a);for(var f in d)d[f].off(b,c,this),e&&delete this._listeners[f];return this}},j=/\s+/,k=function(a,b,c,d){if(!c)return!0;if("object"==typeof c){for(var e in c)a[b].apply(a,[e,c[e]].concat(d));return!1}if(j.test(c)){for(var f=c.split(j),g=0,h=f.length;h>g;g++)a[b].apply(a,[f[g]].concat(d));return!1}return!0},l=function(a,b){var c,d=-1,e=a.length,f=b[0],g=b[1],h=b[2];switch(b.length){case 0:for(;++dm;m++)this.trigger("change:"+g[m],this,l[g[m]],c)}if(j)return this;if(!i)for(;this._pending;)this._pending=!1,this.trigger("change",this,c);return this._pending=!1,this._changing=!1,this},unset:function(a,b){return this.set(a,void 0,h.extend({},b,{unset:!0}))},clear:function(a){var b={};for(var c in this.attributes)b[c]=void 0;return this.set(b,h.extend({},a,{unset:!0}))},hasChanged:function(a){return null==a?!h.isEmpty(this.changed):h.has(this.changed,a)},changedAttributes:function(a){if(!a)return this.hasChanged()?h.clone(this.changed):!1;var b,c=!1,d=this._changing?this._previousAttributes:this.attributes;for(var e in a)h.isEqual(d[e],b=a[e])||((c||(c={}))[e]=b);return c},previous:function(a){return null!=a&&this._previousAttributes?this._previousAttributes[a]:null},previousAttributes:function(){return h.clone(this._previousAttributes)},fetch:function(a){a=a?h.clone(a):{},void 0===a.parse&&(a.parse=!0);var b=this,c=a.success;return a.success=function(d){return b.set(b.parse(d,a),a)?(c&&c(b,d,a),void b.trigger("sync",b,d,a)):!1},L(this,a),this.sync("read",this,a)},save:function(a,b,c){var d,e,f,g=this.attributes;if(null==a||"object"==typeof a?(d=a,c=b):(d={})[a]=b,d&&(!c||!c.wait)&&!this.set(d,c))return!1;if(c=h.extend({validate:!0},c),!this._validate(d,c))return!1;d&&c.wait&&(this.attributes=h.extend({},g,d)),void 0===c.parse&&(c.parse=!0);var i=this,j=c.success;return c.success=function(a){i.attributes=g;var b=i.parse(a,c);return c.wait&&(b=h.extend(d||{},b)),h.isObject(b)&&!i.set(b,c)?!1:(j&&j(i,a,c),void i.trigger("sync",i,a,c))},L(this,c),e=this.isNew()?"create":c.patch?"patch":"update","patch"===e&&(c.attrs=d),f=this.sync(e,this,c),d&&c.wait&&(this.attributes=g),f},destroy:function(a){a=a?h.clone(a):{};var b=this,c=a.success,d=function(){b.trigger("destroy",b,b.collection,a)};if(a.success=function(e){(a.wait||b.isNew())&&d(),c&&c(b,e,a),b.isNew()||b.trigger("sync",b,e,a)},this.isNew())return a.success(),!1;L(this,a);var e=this.sync("delete",this,a);return a.wait||d(),e},url:function(){var a=h.result(this,"urlRoot")||h.result(this.collection,"url")||K();return this.isNew()?a:a+("/"===a.charAt(a.length-1)?"":"/")+encodeURIComponent(this.id)},parse:function(a,b){return a},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return null==this.id},isValid:function(a){return this._validate({},h.extend(a||{},{validate:!0}))},_validate:function(a,b){if(!b.validate||!this.validate)return!0;a=h.extend({},this.attributes,a);var c=this.validationError=this.validate(a,b)||null;return c?(this.trigger("invalid",this,c,h.extend(b||{},{validationError:c})),!1):!0}});var p=["keys","values","pairs","invert","pick","omit"];h.each(p,function(a){n.prototype[a]=function(){var b=f.call(arguments);return b.unshift(this.attributes),h[a].apply(h,b)}});var q=a.Collection=function(a,b){b||(b={}),b.url&&(this.url=b.url),b.model&&(this.model=b.model),void 0!==b.comparator&&(this.comparator=b.comparator),this._reset(),this.initialize.apply(this,arguments),a&&this.reset(a,h.extend({silent:!0},b))},r={add:!0,remove:!0,merge:!0},s={add:!0,merge:!1,remove:!1};h.extend(q.prototype,i,{model:n,initialize:function(){},toJSON:function(a){return this.map(function(b){return b.toJSON(a)})},sync:function(){return a.sync.apply(this,arguments)},add:function(a,b){return this.set(a,h.defaults(b||{},s))},remove:function(a,b){a=h.isArray(a)?a.slice():[a],b||(b={});var c,d,e,f;for(c=0,d=a.length;d>c;c++)f=this.get(a[c]),f&&(delete this._byId[f.id],delete this._byId[f.cid],e=this.indexOf(f),this.models.splice(e,1),this.length--,b.silent||(b.index=e,f.trigger("remove",f,this,b)),this._removeReference(f));return this},set:function(a,b){b=h.defaults(b||{},r),b.parse&&(a=this.parse(a,b)),h.isArray(a)||(a=a?[a]:[]);var c,d,f,i,j,k=b.at,l=this.comparator&&null==k&&b.sort!==!1,m=h.isString(this.comparator)?this.comparator:null,n=[],o=[],p={};for(c=0,d=a.length;d>c;c++)(f=this._prepareModel(a[c],b))&&((i=this.get(f))?(b.remove&&(p[i.cid]=!0),b.merge&&(i.set(f.attributes,b),l&&!j&&i.hasChanged(m)&&(j=!0))):b.add&&(n.push(f),f.on("all",this._onModelEvent,this),this._byId[f.cid]=f,null!=f.id&&(this._byId[f.id]=f)));if(b.remove){for(c=0,d=this.length;d>c;++c)p[(f=this.models[c]).cid]||o.push(f);o.length&&this.remove(o,b)}if(n.length&&(l&&(j=!0),this.length+=n.length,null!=k?g.apply(this.models,[k,0].concat(n)):e.apply(this.models,n)),j&&this.sort({silent:!0}),b.silent)return this;for(c=0,d=n.length;d>c;c++)(f=n[c]).trigger("add",f,this,b);return j&&this.trigger("sort",this,b),this},reset:function(a,b){b||(b={});for(var c=0,d=this.models.length;d>c;c++)this._removeReference(this.models[c]);return b.previousModels=this.models,this._reset(),this.add(a,h.extend({silent:!0},b)),b.silent||this.trigger("reset",this,b),this},push:function(a,b){return a=this._prepareModel(a,b),this.add(a,h.extend({at:this.length},b)),a},pop:function(a){var b=this.at(this.length-1);return this.remove(b,a),b},unshift:function(a,b){return a=this._prepareModel(a,b),this.add(a,h.extend({at:0},b)),a},shift:function(a){var b=this.at(0);return this.remove(b,a),b},slice:function(a,b){return this.models.slice(a,b)},get:function(a){return null==a?void 0:this._byId[null!=a.id?a.id:a.cid||a]},at:function(a){return this.models[a]},where:function(a,b){return h.isEmpty(a)?b?void 0:[]:this[b?"find":"filter"](function(b){for(var c in a)if(a[c]!==b.get(c))return!1;return!0})},findWhere:function(a){return this.where(a,!0)},sort:function(a){if(!this.comparator)throw new Error("Cannot sort a set without a comparator");return a||(a={}),h.isString(this.comparator)||1===this.comparator.length?this.models=this.sortBy(this.comparator,this):this.models.sort(h.bind(this.comparator,this)),a.silent||this.trigger("sort",this,a),this},sortedIndex:function(a,b,c){b||(b=this.comparator);var d=h.isFunction(b)?b:function(a){return a.get(b)};return h.sortedIndex(this.models,a,d,c)},pluck:function(a){return h.invoke(this.models,"get",a)},fetch:function(a){a=a?h.clone(a):{},void 0===a.parse&&(a.parse=!0);var b=a.success,c=this;return a.success=function(d){var e=a.reset?"reset":"set";c[e](d,a),b&&b(c,d,a),c.trigger("sync",c,d,a)},L(this,a),this.sync("read",this,a)},create:function(a,b){if(b=b?h.clone(b):{},!(a=this._prepareModel(a,b)))return!1;b.wait||this.add(a,b);var c=this,d=b.success;return b.success=function(e){b.wait&&c.add(a,b),d&&d(a,e,b)},a.save(null,b),a},parse:function(a,b){return a},clone:function(){return new this.constructor(this.models)},_reset:function(){this.length=0,this.models=[],this._byId={}},_prepareModel:function(a,b){if(a instanceof n)return a.collection||(a.collection=this),a;b||(b={}),b.collection=this;var c=new this.model(a,b);return c._validate(a,b)?c:(this.trigger("invalid",this,a,b),!1)},_removeReference:function(a){this===a.collection&&delete a.collection,a.off("all",this._onModelEvent,this)},_onModelEvent:function(a,b,c,d){("add"!==a&&"remove"!==a||c===this)&&("destroy"===a&&this.remove(b,d),b&&a==="change:"+b.idAttribute&&(delete this._byId[b.previous(b.idAttribute)],null!=b.id&&(this._byId[b.id]=b)),this.trigger.apply(this,arguments))}});var t=["forEach","each","map","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max","min","toArray","size","first","head","take","initial","rest","tail","drop","last","without","indexOf","shuffle","lastIndexOf","isEmpty","chain"];h.each(t,function(a){q.prototype[a]=function(){var b=f.call(arguments);return b.unshift(this.models),h[a].apply(h,b)}});var u=["groupBy","countBy","sortBy"];h.each(u,function(a){q.prototype[a]=function(b,c){var d=h.isFunction(b)?b:function(a){return a.get(b)};return h[a](this.models,d,c)}});var v=a.View=function(a){this.cid=h.uniqueId("view"),this._configure(a||{}),this._ensureElement(),this.initialize.apply(this,arguments),this.delegateEvents()},w=/^(\S+)\s*(.*)$/,x=["model","collection","el","id","attributes","className","tagName","events"];h.extend(v.prototype,i,{tagName:"div",$:function(a){return this.$el.find(a)},initialize:function(){},render:function(){return this},remove:function(){return this.$el.remove(),this.stopListening(),this},setElement:function(b,c){return this.$el&&this.undelegateEvents(),this.$el=b instanceof a.$?b:a.$(b),this.el=this.$el[0],c!==!1&&this.delegateEvents(),this},delegateEvents:function(a){if(!a&&!(a=h.result(this,"events")))return this;this.undelegateEvents();for(var b in a){var c=a[b];if(h.isFunction(c)||(c=this[a[b]]),c){var d=b.match(w),e=d[1],f=d[2];c=h.bind(c,this),e+=".delegateEvents"+this.cid,""===f?this.$el.on(e,c):this.$el.on(e,f,c)}}return this},undelegateEvents:function(){return this.$el.off(".delegateEvents"+this.cid),this},_configure:function(a){this.options&&(a=h.extend({},h.result(this,"options"),a)),h.extend(this,h.pick(a,x)),this.options=a},_ensureElement:function(){if(this.el)this.setElement(h.result(this,"el"),!1);else{var b=h.extend({},h.result(this,"attributes"));this.id&&(b.id=h.result(this,"id")),this.className&&(b["class"]=h.result(this,"className"));var c=a.$("<"+h.result(this,"tagName")+">").attr(b);this.setElement(c,!1)}}}),a.sync=function(b,c,d){var e=y[b];h.defaults(d||(d={}),{emulateHTTP:a.emulateHTTP,emulateJSON:a.emulateJSON});var f={type:e,dataType:"json"};if(d.url||(f.url=h.result(c,"url")||K()),null!=d.data||!c||"create"!==b&&"update"!==b&&"patch"!==b||(f.contentType="application/json",f.data=JSON.stringify(d.attrs||c.toJSON(d))),d.emulateJSON&&(f.contentType="application/x-www-form-urlencoded",f.data=f.data?{model:f.data}:{}),d.emulateHTTP&&("PUT"===e||"DELETE"===e||"PATCH"===e)){f.type="POST",d.emulateJSON&&(f.data._method=e);var g=d.beforeSend;d.beforeSend=function(a){return a.setRequestHeader("X-HTTP-Method-Override",e),g?g.apply(this,arguments):void 0}}"GET"===f.type||d.emulateJSON||(f.processData=!1),"PATCH"!==f.type||!window.ActiveXObject||window.external&&window.external.msActiveXFilteringEnabled||(f.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")});var i=d.xhr=a.ajax(h.extend(f,d));return c.trigger("request",c,i,d),i};var y={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};a.ajax=function(){return a.$.ajax.apply(a.$,arguments)};var z=a.Router=function(a){a||(a={}),a.routes&&(this.routes=a.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},A=/\((.*?)\)/g,B=/(\(\?)?:\w+/g,C=/\*\w+/g,D=/[\-{}\[\]+?.,\\\^$|#\s]/g;h.extend(z.prototype,i,{initialize:function(){},route:function(b,c,d){h.isRegExp(b)||(b=this._routeToRegExp(b)),h.isFunction(c)&&(d=c,c=""),d||(d=this[c]);var e=this;return a.history.route(b,function(f){var g=e._extractParameters(b,f);d&&d.apply(e,g),e.trigger.apply(e,["route:"+c].concat(g)),e.trigger("route",c,g),a.history.trigger("route",e,c,g)}),this},navigate:function(b,c){return a.history.navigate(b,c),this},_bindRoutes:function(){if(this.routes){this.routes=h.result(this,"routes");for(var a,b=h.keys(this.routes);null!=(a=b.pop());)this.route(a,this.routes[a])}},_routeToRegExp:function(a){return a=a.replace(D,"\\$&").replace(A,"(?:$1)?").replace(B,function(a,b){return b?a:"([^/]+)"}).replace(C,"(.*?)"),new RegExp("^"+a+"$")},_extractParameters:function(a,b){var c=a.exec(b).slice(1);return h.map(c,function(a){return a?decodeURIComponent(a):null})}});var E=a.History=function(){this.handlers=[],h.bindAll(this,"checkUrl"),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)},F=/^[#\/]|\s+$/g,G=/^\/+|\/+$/g,H=/msie [\w.]+/,I=/\/$/;E.started=!1,h.extend(E.prototype,i,{interval:50,getHash:function(a){var b=(a||this).location.href.match(/#(.*)$/);return b?b[1]:""},getFragment:function(a,b){if(null==a)if(this._hasPushState||!this._wantsHashChange||b){a=this.location.pathname;var c=this.root.replace(I,"");a.indexOf(c)||(a=a.substr(c.length))}else a=this.getHash();return a.replace(F,"")},start:function(b){if(E.started)throw new Error("Backbone.history has already been started");E.started=!0,this.options=h.extend({},{root:"/"},this.options,b),this.root=this.options.root,this._wantsHashChange=this.options.hashChange!==!1,this._wantsPushState=!!this.options.pushState,this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var c=this.getFragment(),d=document.documentMode,e=H.exec(navigator.userAgent.toLowerCase())&&(!d||7>=d);this.root=("/"+this.root+"/").replace(G,"/"),e&&this._wantsHashChange&&(this.iframe=a.$('
  • *Q&f!T$Q2u|TPHyJ|5LFBG9{mhf_qR9ar1 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 diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/scripts.html.part b/js/apps/system/_admin/aardvark/APP/frontend/build/scripts.html.part index 12bf829ab792..e8ee4f71979a 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/scripts.html.part +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/scripts.html.part @@ -1 +1 @@ - + diff --git a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html index 938dd67869e7..ce3fce0236e7 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html +++ b/js/apps/system/_admin/aardvark/APP/frontend/build/standalone-min.html @@ -207,6 +207,7 @@