From 54469a8f28ebb863ab96eeddcbd15a394b9842cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 09:45:13 +0200 Subject: [PATCH 01/19] first version --- blitzortung/cli/start_webservice.py | 3 ++ blitzortung/cli/webservice.py | 73 +++++++++-------------------- blitzortung/service/base.py | 47 +++++++++++++++++++ 3 files changed, 71 insertions(+), 52 deletions(-) create mode 100644 blitzortung/service/base.py diff --git a/blitzortung/cli/start_webservice.py b/blitzortung/cli/start_webservice.py index d51ba8e..6582cad 100755 --- a/blitzortung/cli/start_webservice.py +++ b/blitzortung/cli/start_webservice.py @@ -3,6 +3,9 @@ from twisted.scripts.twistd import run +# Import service.base to trigger application setup and connection pool creation +from blitzortung.service import base # noqa: F401 + def main(): target_dir = os.path.dirname(os.path.abspath(__file__)) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index e6655cb..f05c903 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -13,8 +13,7 @@ from twisted.internet.defer import succeed from twisted.internet.error import ReactorAlreadyInstalledError from twisted.python import log -from twisted.python.log import FileLogObserver, ILogObserver, textFromEventDict, _safeFormat -from twisted.python.logfile import DailyLogFile +from twisted.python.log import FileLogObserver, textFromEventDict, _safeFormat from twisted.python.util import untilConcludes from twisted.web import server from txjsonrpc_ng.web import jsonrpc @@ -46,7 +45,6 @@ import blitzortung.geom import blitzortung.service from blitzortung.db.query import TimeInterval -from blitzortung.service.db import create_connection_pool from blitzortung.service.general import create_time_interval from blitzortung.service.strike_grid import GridParameters @@ -81,22 +79,29 @@ class Blitzortung(jsonrpc.JSONRPC): # Memory info interval MEMORY_INFO_INTERVAL = 300 # 5 minutes - def __init__(self, db_connection_pool, log_directory): + def __init__(self, db_connection_pool=None, log_directory=None, + strike_query=None, strike_grid_query=None, + global_strike_grid_query=None, histogram_query=None, + cache=None, metrics=None, forbidden_ips=None, + create_connection_pool=None): super().__init__() + if db_connection_pool is None and create_connection_pool is not None: + # Synchronous connection pool creation for testing + db_connection_pool = create_connection_pool() self.connection_pool = db_connection_pool self.log_directory = log_directory - self.strike_query = blitzortung.service.strike_query() - self.strike_grid_query = blitzortung.service.strike_grid_query() - self.global_strike_grid_query = blitzortung.service.global_strike_grid_query() - self.histogram_query = blitzortung.service.histogram_query() + self.strike_query = strike_query if strike_query is not None else blitzortung.service.strike_query() + self.strike_grid_query = strike_grid_query if strike_grid_query is not None else blitzortung.service.strike_grid_query() + self.global_strike_grid_query = global_strike_grid_query if global_strike_grid_query is not None else blitzortung.service.global_strike_grid_query() + self.histogram_query = histogram_query if histogram_query is not None else blitzortung.service.histogram_query() self.check_count = 0 - self.cache = ServiceCache() + self.cache = cache if cache is not None else ServiceCache() self.current_period = self.__current_period() self.current_data = collections.defaultdict(list) self.next_memory_info = 0.0 self.minute_constraints = TimeConstraint(self.DEFAULT_MINUTE_LENGTH, self.MAX_MINUTES_PER_DAY) - - self.metrics = StatsDMetrics() + self.metrics = metrics if metrics is not None else StatsDMetrics() + self.forbidden_ips = forbidden_ips if forbidden_ips is not None else FORBIDDEN_IPS addSlash = True @@ -109,8 +114,8 @@ def __current_period(self): def __check_period(self): if self.current_period != self.__current_period(): self.current_data['timestamp'] = self.__get_epoch(self.current_period) - if log_directory: - with open(os.path.join(log_directory, self.current_period.strftime("%Y%m%d-%H%M.json")), + if self.log_directory: + with open(os.path.join(self.log_directory, self.current_period.strftime("%Y%m%d-%H%M.json")), 'w') as output_file: output_file.write(json.dumps(self.current_data)) self.__restart_period() @@ -210,7 +215,7 @@ def jsonrpc_get_global_strikes_grid(self, request, minute_length, grid_base_leng client = self.get_request_client(request) user_agent, user_agent_version = self.parse_user_agent(request) - if client in FORBIDDEN_IPS or user_agent_version == 0 or request.getHeader( + if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( 'content-type') != JSON_CONTENT_TYPE or request.getHeader( 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( @@ -253,7 +258,7 @@ def jsonrpc_get_local_strikes_grid(self, request, x, y, grid_base_length=10000, client = self.get_request_client(request) user_agent, user_agent_version = self.parse_user_agent(request) - if client in FORBIDDEN_IPS or request.getHeader( + if client in self.forbidden_ips or request.getHeader( 'content-type') != JSON_CONTENT_TYPE or request.getHeader( 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( @@ -300,7 +305,7 @@ def jsonrpc_get_strikes_grid(self, request, minute_length, grid_base_length=1000 client = self.get_request_client(request) user_agent, user_agent_version = self.parse_user_agent(request) - if client in FORBIDDEN_IPS or user_agent_version == 0 or request.getHeader( + if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( 'content-type') != JSON_CONTENT_TYPE or request.getHeader( 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( @@ -408,39 +413,3 @@ def emit(self, event_dict): }) untilConcludes(self.write, time_str + " " + msg_str) untilConcludes(self.flush) - - -application = service.Application("Blitzortung.org JSON-RPC Server") - -if os.environ.get('BLITZORTUNG_TEST'): - import tempfile - - log_directory: str | None = tempfile.mkdtemp() - print("LOG_DIR", log_directory) -else: - log_directory = "/var/log/blitzortung" -if log_directory and os.path.exists(log_directory): - logfile = DailyLogFile("webservice.log", log_directory) - application.setComponent(ILogObserver, LogObserver(logfile).emit) -else: - log_directory = None - - -def start_server(connection_pool): - print("Connection pool is ready") - root = Blitzortung(connection_pool, log_directory) - config = blitzortung.config.config() - site = server.Site(root) - site.displayTracebacks = False - jsonrpc_server = internet.TCPServer(config.get_webservice_port(), site, interface='127.0.0.1') - jsonrpc_server.setServiceParent(application) - return jsonrpc_server - - -def on_error(failure): - log.err(failure, "Failed to create connection pool") - raise failure.value - - -deferred_connection_pool = create_connection_pool() -deferred_connection_pool.addCallback(start_server).addErrback(on_error) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py new file mode 100644 index 0000000..dde91a8 --- /dev/null +++ b/blitzortung/service/base.py @@ -0,0 +1,47 @@ +"""Base service infrastructure for the Blitzortung webservice.""" + +import os + +from twisted.application import internet, service +from twisted.python import log +from twisted.python.log import ILogObserver +from twisted.python.logfile import DailyLogFile +from twisted.web import server + +from blitzortung.cli.webservice import Blitzortung, LogObserver +import blitzortung.config + + +application = service.Application("Blitzortung.org JSON-RPC Server") + +log_directory = "/var/log/blitzortung" +if log_directory and os.path.exists(log_directory): + logfile = DailyLogFile("webservice.log", log_directory) + application.setComponent(ILogObserver, LogObserver(logfile).emit) +else: + log_directory = None + + +def start_server(connection_pool): + """Start the JSON-RPC server with the given connection pool.""" + print("Connection pool is ready") + root = Blitzortung(connection_pool, log_directory) + config = blitzortung.config.config() + site = server.Site(root) + site.displayTracebacks = False + jsonrpc_server = internet.TCPServer(config.get_webservice_port(), site, interface='127.0.0.1') + jsonrpc_server.setServiceParent(application) + return jsonrpc_server + + +def on_error(failure): + """Error handler for connection pool failures.""" + log.err(failure, "Failed to create connection pool") + raise failure.value + + +# Set up connection pool when this module is loaded (skip in test mode) +if not os.environ.get('BLITZORTUNG_TEST'): + from blitzortung.service.db import create_connection_pool + deferred_connection_pool = create_connection_pool() + deferred_connection_pool.addCallback(start_server).addErrback(on_error) From d1cdd55e2e568602cd2c52bc9363fde62d669e4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 09:59:55 +0200 Subject: [PATCH 02/19] Add test coverage for webservice.py and refactor for testability - Add comprehensive tests for Blitzortung class (65 tests) - Move application and connection pool setup to service/base.py - Make services injectable via constructor for testing - Keep BLITZORTUNG_TEST guard in service/base.py for test isolation Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/start_webservice.py | 8 +- blitzortung/cli/webservice.py | 12 +- blitzortung/service/base.py | 16 +- tests/cli/test_webservice.py | 633 ++++++++++++++++++++++++++++ 4 files changed, 653 insertions(+), 16 deletions(-) create mode 100644 tests/cli/test_webservice.py diff --git a/blitzortung/cli/start_webservice.py b/blitzortung/cli/start_webservice.py index 6582cad..783127d 100755 --- a/blitzortung/cli/start_webservice.py +++ b/blitzortung/cli/start_webservice.py @@ -1,13 +1,19 @@ +"""Blitzortung webservice entry point.""" + import os.path import sys from twisted.scripts.twistd import run -# Import service.base to trigger application setup and connection pool creation +# Import webservice to get application variable (twistd expects it in this module) +import blitzortung.cli.webservice # noqa: F401 + +# Import service.base to set up connection pool from blitzortung.service import base # noqa: F401 def main(): + """Run the twistd server.""" target_dir = os.path.dirname(os.path.abspath(__file__)) args = ["twistd"] diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index f05c903..41878cc 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -13,7 +13,8 @@ from twisted.internet.defer import succeed from twisted.internet.error import ReactorAlreadyInstalledError from twisted.python import log -from twisted.python.log import FileLogObserver, textFromEventDict, _safeFormat +from twisted.python.log import FileLogObserver, ILogObserver, textFromEventDict, _safeFormat +from twisted.python.logfile import DailyLogFile from twisted.python.util import untilConcludes from twisted.web import server from txjsonrpc_ng.web import jsonrpc @@ -26,6 +27,15 @@ from blitzortung.service.metrics import StatsDMetrics from blitzortung.util import TimeConstraint +application = service.Application("Blitzortung.org JSON-RPC Server") + +log_directory = "/var/log/blitzortung" +if log_directory and os.path.exists(log_directory): + logfile = DailyLogFile("webservice.log", log_directory) + application.setComponent(ILogObserver, LogObserver(logfile).emit) +else: + log_directory = None + JSON_CONTENT_TYPE = 'text/json' try: diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index dde91a8..a9c20c6 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -2,26 +2,14 @@ import os -from twisted.application import internet, service +from twisted.application import internet from twisted.python import log -from twisted.python.log import ILogObserver -from twisted.python.logfile import DailyLogFile from twisted.web import server -from blitzortung.cli.webservice import Blitzortung, LogObserver +from blitzortung.cli.webservice import Blitzortung, application, log_directory import blitzortung.config -application = service.Application("Blitzortung.org JSON-RPC Server") - -log_directory = "/var/log/blitzortung" -if log_directory and os.path.exists(log_directory): - logfile = DailyLogFile("webservice.log", log_directory) - application.setComponent(ILogObserver, LogObserver(logfile).emit) -else: - log_directory = None - - def start_server(connection_pool): """Start the JSON-RPC server with the given connection pool.""" print("Connection pool is ready") diff --git a/tests/cli/test_webservice.py b/tests/cli/test_webservice.py new file mode 100644 index 0000000..ba43009 --- /dev/null +++ b/tests/cli/test_webservice.py @@ -0,0 +1,633 @@ +"""Tests for blitzortung.cli.webservice module.""" + +import datetime +import time +from io import StringIO +from unittest.mock import Mock, MagicMock, patch, call + +import pytest +from assertpy import assert_that + +from blitzortung.cli.webservice import Blitzortung, LogObserver + + +class MockRequest: + """Mock request object for testing JSON-RPC methods.""" + + def __init__(self, user_agent=None, client_ip=None, x_forwarded_for=None, + content_type=None, referer=None): + self._user_agent = user_agent + self._client_ip = client_ip + self._x_forwarded_for = x_forwarded_for + self._content_type = content_type + self._referer = referer + self._headers_removed = [] + + def getHeader(self, name): + if name == "User-Agent": + return self._user_agent + if name == "X-Forwarded-For": + return self._x_forwarded_for + if name == "content-type": + return self._content_type + if name == "referer": + return self._referer + return None + + def getClientIP(self): + return self._client_ip + + def __getitem__(self, key): + return getattr(self, key, None) + + @property + def requestHeaders(self): + mock = Mock() + mock.removeHeader = self._remove_header + return mock + + def _remove_header(self, name): + self._headers_removed.append(name) + + +@pytest.fixture +def mock_connection_pool(): + """Create a mock database connection pool.""" + return Mock() + + +@pytest.fixture +def mock_log_directory(): + """Create a mock log directory.""" + return None + + +@pytest.fixture +def mock_strike_query(): + """Create a mock strike query.""" + return Mock() + + +@pytest.fixture +def mock_strike_grid_query(): + """Create a mock strike grid query.""" + mock = Mock() + mock.create = Mock(return_value=(Mock(), Mock())) + mock.combine_result = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_global_strike_grid_query(): + """Create a mock global strike grid query.""" + mock = Mock() + mock.create = Mock(return_value=(Mock(), Mock())) + mock.combine_result = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_histogram_query(): + """Create a mock histogram query.""" + mock = Mock() + mock.create = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_cache(): + """Create a mock service cache.""" + mock = Mock() + mock.strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.local_strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.global_strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.histogram = Mock( + get=Mock(return_value=Mock()) + ) + return mock + + +@pytest.fixture +def mock_metrics(): + """Create a mock metrics.""" + mock = Mock() + mock.statsd = Mock() + mock.for_global_strikes = Mock() + mock.for_local_strikes = Mock() + mock.for_strikes = Mock() + return mock + + +@pytest.fixture +def mock_forbidden_ips(): + """Create empty forbidden IPs dict for testing.""" + return {} + + +@pytest.fixture +def blitzortung(mock_connection_pool, mock_log_directory, mock_strike_query, + mock_strike_grid_query, mock_global_strike_grid_query, + mock_histogram_query, mock_cache, mock_metrics, mock_forbidden_ips): + """Create a Blitzortung instance with mocked dependencies.""" + return Blitzortung( + mock_connection_pool, + mock_log_directory, + strike_query=mock_strike_query, + strike_grid_query=mock_strike_grid_query, + global_strike_grid_query=mock_global_strike_grid_query, + histogram_query=mock_histogram_query, + cache=mock_cache, + metrics=mock_metrics, + forbidden_ips=mock_forbidden_ips + ) + + +class TestBlitzortungClassConstants: + """Test class constants for validation.""" + + def test_min_grid_base_length(self): + assert_that(Blitzortung.MIN_GRID_BASE_LENGTH).is_equal_to(5000) + + def test_invalid_grid_base_length(self): + assert_that(Blitzortung.INVALID_GRID_BASE_LENGTH).is_equal_to(1000001) + + def test_global_min_grid_base_length(self): + assert_that(Blitzortung.GLOBAL_MIN_GRID_BASE_LENGTH).is_equal_to(10000) + + def test_max_minutes_per_day(self): + assert_that(Blitzortung.MAX_MINUTES_PER_DAY).is_equal_to(1440) + + def test_default_minute_length(self): + assert_that(Blitzortung.DEFAULT_MINUTE_LENGTH).is_equal_to(60) + + def test_histogram_minute_threshold(self): + assert_that(Blitzortung.HISTOGRAM_MINUTE_THRESHOLD).is_equal_to(10) + + def test_max_compatible_android_version(self): + assert_that(Blitzortung.MAX_COMPATIBLE_ANDROID_VERSION).is_equal_to(177) + + def test_memory_info_interval(self): + assert_that(Blitzortung.MEMORY_INFO_INTERVAL).is_equal_to(300) + + +class TestBlitzortungInitialization: + """Test Blitzortung initialization.""" + + def test_sets_connection_pool(self, blitzortung, mock_connection_pool): + assert_that(blitzortung.connection_pool).is_same_as(mock_connection_pool) + + def test_sets_log_directory(self, blitzortung, mock_log_directory): + assert_that(blitzortung.log_directory).is_same_as(mock_log_directory) + + def test_sets_strike_query(self, blitzortung, mock_strike_query): + assert_that(blitzortung.strike_query).is_same_as(mock_strike_query) + + def test_sets_strike_grid_query(self, blitzortung, mock_strike_grid_query): + assert_that(blitzortung.strike_grid_query).is_same_as(mock_strike_grid_query) + + def test_sets_global_strike_grid_query(self, blitzortung, mock_global_strike_grid_query): + assert_that(blitzortung.global_strike_grid_query).is_same_as(mock_global_strike_grid_query) + + def test_sets_histogram_query(self, blitzortung, mock_histogram_query): + assert_that(blitzortung.histogram_query).is_same_as(mock_histogram_query) + + def test_sets_cache(self, blitzortung, mock_cache): + assert_that(blitzortung.cache).is_same_as(mock_cache) + + def test_sets_metrics(self, blitzortung, mock_metrics): + assert_that(blitzortung.metrics).is_same_as(mock_metrics) + + def test_sets_forbidden_ips(self, blitzortung, mock_forbidden_ips): + assert_that(blitzortung.forbidden_ips).is_same_as(mock_forbidden_ips) + + def test_initializes_check_count(self, blitzortung): + assert_that(blitzortung.check_count).is_equal_to(0) + + def test_initializes_current_data_as_defaultdict(self, blitzortung): + assert_that(blitzortung.current_data).is_instance_of(dict) + assert_that(blitzortung.current_data['test']).is_equal_to([]) + + def test_initializes_minute_constraints(self, blitzortung): + assert_that(blitzortung.minute_constraints).is_not_none() + + +class TestJsonRpcCheck: + """Test the jsonrpc_check health check endpoint.""" + + def test_increments_check_count(self, blitzortung): + initial_count = blitzortung.check_count + blitzortung.jsonrpc_check() + assert_that(blitzortung.check_count).is_equal_to(initial_count + 1) + + def test_returns_count_dict(self, blitzortung): + result = blitzortung.jsonrpc_check() + assert_that(result).is_instance_of(dict) + assert_that(result).contains_key('count') + + +class TestParseUserAgent: + """Test parse_user_agent method.""" + + def test_valid_android_user_agent(self, blitzortung): + request = MockRequest(user_agent='bo-android-150') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(user_agent).is_equal_to('bo-android-150') + assert_that(version).is_equal_to(150) + + def test_android_user_agent_with_space(self, blitzortung): + request = MockRequest(user_agent='bo-android-150 SomeDevice') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(150) + + def test_android_user_agent_lowercase(self, blitzortung): + request = MockRequest(user_agent='bo-android-abc') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_android_user_agent_negative_version(self, blitzortung): + request = MockRequest(user_agent='bo-android--5') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_non_android_user_agent(self, blitzortung): + request = MockRequest(user_agent='Mozilla/5.0') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_none_user_agent(self, blitzortung): + request = MockRequest(user_agent=None) + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_empty_user_agent(self, blitzortung): + request = MockRequest(user_agent='') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + +class TestFixBadAcceptHeader: + """Test fix_bad_accept_header method.""" + + def test_removes_header_for_old_android(self, blitzortung): + request = MockRequest(user_agent='bo-android-100') + blitzortung.fix_bad_accept_header(request, 'bo-android-100') + assert_that(request._headers_removed).contains('Accept-Encoding') + + def test_does_not_remove_header_for_new_android(self, blitzortung): + request = MockRequest(user_agent='bo-android-200') + blitzortung.fix_bad_accept_header(request, 'bo-android-200') + assert_that(request._headers_removed).does_not_contain('Accept-Encoding') + + def test_does_not_remove_header_for_max_version(self, blitzortung): + request = MockRequest(user_agent='bo-android-177') + blitzortung.fix_bad_accept_header(request, 'bo-android-177') + assert_that(request._headers_removed).contains('Accept-Encoding') + + def test_does_not_remove_header_for_non_android(self, blitzortung): + request = MockRequest(user_agent='Mozilla/5.0') + blitzortung.fix_bad_accept_header(request, 'Mozilla/5.0') + assert_that(request._headers_removed).is_empty() + + def test_handles_none_user_agent(self, blitzortung): + request = MockRequest(user_agent=None) + blitzortung.fix_bad_accept_header(request, None) + assert_that(request._headers_removed).is_empty() + + def test_handles_invalid_version(self, blitzortung): + request = MockRequest(user_agent='bo-android-abc') + blitzortung.fix_bad_accept_header(request, 'bo-android-abc') + assert_that(request._headers_removed).is_empty() + + +class TestGetRequestClient: + """Test get_request_client method.""" + + def test_returns_client_ip_directly(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('192.168.1.1') + + def test_returns_first_ip_from_x_forwarded_for(self, blitzortung): + request = MockRequest(x_forwarded_for='10.0.0.1, 10.0.0.2') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('10.0.0.1') + + def test_prefers_x_forwarded_for_over_client_ip(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1', x_forwarded_for='10.0.0.1') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('10.0.0.1') + + def test_handles_none_x_forwarded_for(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1', x_forwarded_for=None) + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('192.168.1.1') + + +class TestForceRange: + """Test __force_range static method.""" + + def test_returns_min_when_below(self): + result = Blitzortung._Blitzortung__force_range(5, 10, 100) + assert_that(result).is_equal_to(10) + + def test_returns_max_when_above(self): + result = Blitzortung._Blitzortung__force_range(150, 10, 100) + assert_that(result).is_equal_to(100) + + def test_returns_value_when_in_range(self): + result = Blitzortung._Blitzortung__force_range(50, 10, 100) + assert_that(result).is_equal_to(50) + + def test_returns_min_when_equal_to_min(self): + result = Blitzortung._Blitzortung__force_range(10, 10, 100) + assert_that(result).is_equal_to(10) + + def test_returns_max_when_equal_to_max(self): + result = Blitzortung._Blitzortung__force_range(100, 10, 100) + assert_that(result).is_equal_to(100) + + +class TestMemoryInfo: + """Test memory_info method.""" + + @patch('blitzortung.cli.webservice.gc') + @patch('blitzortung.cli.webservice.log') + @patch('blitzortung.cli.webservice.is_pypy', False) + def test_logs_memory_info_first_call(self, mock_log, mock_gc, blitzortung): + mock_gc.get_stats = Mock(return_value={'test': 'stats'}) + blitzortung.next_memory_info = 0.0 + # time.time() must return a value > next_memory_info to trigger logging + with patch('time.time', return_value=1.0): + blitzortung.memory_info() + + assert_that(mock_log.msg.call_count).is_greater_than(0) + + def test_skips_logging_when_within_interval(self, blitzortung): + with patch('blitzortung.cli.webservice.log') as mock_log: + blitzortung.next_memory_info = 1000.0 + with patch('time.time', return_value=500.0): + blitzortung.memory_info() + + mock_log.msg.assert_not_called() + + @patch('blitzortung.cli.webservice.gc') + @patch('blitzortung.cli.webservice.log') + @patch('blitzortung.cli.webservice.is_pypy', True) + def test_logs_with_pypy_stats(self, mock_log, mock_gc, blitzortung): + mock_gc.get_stats = Mock(return_value={'test': 'stats'}) + blitzortung.next_memory_info = 0.0 + # time.time() must return a value > next_memory_info to trigger logging + with patch('time.time', return_value=1.0): + blitzortung.memory_info() + + assert_that(mock_log.msg.call_count).is_greater_than(0) + + +class TestGetEpoch: + """Test __get_epoch method.""" + + def test_converts_datetime_to_epoch_microseconds(self, blitzortung): + dt = datetime.datetime(2025, 1, 1, 12, 0, 0, 500000, tzinfo=datetime.timezone.utc) + result = blitzortung._Blitzortung__get_epoch(dt) + # 2025-01-01 12:00:00.500000 UTC + expected = 1735732800 * 1000000 + 500000 + assert_that(result).is_equal_to(expected) + + +class TestCurrentPeriod: + """Test __current_period method.""" + + def test_returns_datetime_with_utc_timezone(self, blitzortung): + result = blitzortung._Blitzortung__current_period() + assert_that(result.tzinfo).is_equal_to(datetime.timezone.utc) + + def test_returns_datetime_with_zero_seconds(self, blitzortung): + result = blitzortung._Blitzortung__current_period() + assert_that(result.second).is_equal_to(0) + assert_that(result.microsecond).is_equal_to(0) + + +class TestForbiddenIps: + """Test forbidden IP functionality.""" + + def test_blocks_request_from_forbidden_ip(self): + """Test that requests from forbidden IPs are blocked.""" + mock_pool = Mock() + mock_cache = Mock() + mock_cache.strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + + mock_strike_grid_query = Mock() + mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) + mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + + forbidden_ips = {'192.168.1.100': True} + + bt = Blitzortung( + mock_pool, + None, + strike_grid_query=mock_strike_grid_query, + cache=mock_cache, + forbidden_ips=forbidden_ips + ) + + # Create request from forbidden IP + request = MockRequest( + client_ip='192.168.1.100', + content_type='text/json', + referer='http://example.com' + ) + + # The method should return empty dict due to forbidden IP + result = bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_allows_request_from_non_forbidden_ip(self): + """Test that requests from non-forbidden IPs are allowed.""" + mock_pool = Mock() + mock_cache = Mock() + mock_cache.strikes = Mock(return_value=Mock( + get=Mock(return_value={'data': 'test'}), + get_ratio=Mock(return_value=0.5), + get_size=Mock(return_value=10) + )) + mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + + mock_strike_grid_query = Mock() + mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) + mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + + bt = Blitzortung( + mock_pool, + None, + strike_grid_query=mock_strike_grid_query, + cache=mock_cache, + forbidden_ips={'192.168.1.100': True} + ) + + # Create request from allowed IP with valid user agent + request = MockRequest( + client_ip='192.168.1.1', + user_agent='bo-android-150', + content_type='text/json', + referer='http://example.com' + ) + + # The method should call cache.get for non-forbidden IP + bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + mock_cache.strikes.return_value.get.assert_called() + + +class TestLogObserver: + """Test LogObserver class.""" + + def test_initializes_with_empty_prefix(self): + output = StringIO() + observer = LogObserver(output) + assert_that(observer.prefix).is_equal_to('') + + def test_initializes_with_custom_prefix(self): + output = StringIO() + observer = LogObserver(output, prefix='TEST') + assert_that(observer.prefix).is_equal_to('TEST') + + def test_emit_handles_none_text(self): + output = StringIO() + observer = LogObserver(output) + # textFromEventDict returns None when there's no 'message' or 'format' key + # Should not raise when text is None + observer.emit({'message': 'test', 'time': 1234567890.0}) + + +class TestGetStrikesGrid: + """Test get_strikes_grid method.""" + + def test_creates_grid_parameters(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.cli.webservice.GridParameters') as mock_params: + with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) + + mock_params.assert_called() + + def test_creates_time_interval(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.cli.webservice.GridParameters') as mock_params: + with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) + + mock_interval.assert_called_with(60, 0) + + +class TestGetGlobalStrikesGrid: + """Test get_global_strikes_grid method.""" + + def test_creates_global_grid_parameters(self, blitzortung, mock_global_strike_grid_query): + with patch('blitzortung.cli.webservice.GridParameters') as mock_params: + with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_global_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_global_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_global_strikes_grid(60, 10000, 0, 0) + + mock_params.assert_called() + + +class TestGetLocalStrikesGrid: + """Test get_local_strikes_grid method.""" + + def test_creates_local_grid_parameters(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.cli.webservice.LocalGrid') as mock_local_grid: + with patch('blitzortung.cli.webservice.GridParameters') as mock_params: + with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + mock_grid_factory = Mock() + mock_grid_factory.get_for.return_value = Mock() + mock_local_grid.return_value.get_grid_factory.return_value = mock_grid_factory + + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_local_strikes_grid(10, 20, 10000, 60, 0, 0) + + mock_local_grid.assert_called() + + +class TestGetHistogram: + """Test get_histogram method.""" + + def test_calls_histogram_cache(self, blitzortung, mock_cache): + mock_time_interval = Mock() + mock_histogram = Mock() + mock_cache.histogram.get.return_value = mock_histogram + + result = blitzortung.get_histogram(mock_time_interval) + + mock_cache.histogram.get.assert_called() + assert_that(result).is_same_as(mock_histogram) + + +class TestJsonRpcGetStrikesRaster: + """Test jsonrpc_get_strikes_raster method.""" + + def test_calls_get_strikes_grid(self, blitzortung): + with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: + mock_method.return_value = {} + request = Mock() + result = blitzortung.jsonrpc_get_strikes_raster(request, 60, 10000, 0, 1) + + mock_method.assert_called_once_with(request, 60, 10000, 0, 1) + + +class TestJsonRpcGetStrokesRaster: + """Test jsonrpc_get_strokes_raster method.""" + + def test_calls_get_strikes_grid(self, blitzortung): + with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: + mock_method.return_value = {} + request = Mock() + result = blitzortung.jsonrpc_get_strokes_raster(request, 60, 10000, 0, 1) + + mock_method.assert_called_once_with(request, 60, 10000, 0, 1) + + +class TestJsonRpcGetStrikes: + """Test jsonrpc_get_strikes method.""" + + def test_returns_none_blocked(self, blitzortung): + request = MockRequest(user_agent='test') + result = blitzortung.jsonrpc_get_strikes(request, 60, 0) + assert_that(result).is_none() + + def test_enforces_minute_length_range(self, blitzortung): + request = MockRequest() + # minute_length of -5 should be clamped to 0 + result = blitzortung.jsonrpc_get_strikes(request, -5, 0) + assert_that(result).is_none() + + def test_enforces_max_minute_length(self, blitzortung): + request = MockRequest() + # minute_length of 2000 should be clamped to 1440 + result = blitzortung.jsonrpc_get_strikes(request, 2000, 0) + assert_that(result).is_none() From 5d3b17cf65e554f90458c20b8afed2f716d49c19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:02:34 +0200 Subject: [PATCH 03/19] Fix log setup error in webservice.py Add try-except around log setup to handle permission errors gracefully. Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/webservice.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index 41878cc..c6e7b48 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -30,10 +30,13 @@ application = service.Application("Blitzortung.org JSON-RPC Server") log_directory = "/var/log/blitzortung" -if log_directory and os.path.exists(log_directory): - logfile = DailyLogFile("webservice.log", log_directory) - application.setComponent(ILogObserver, LogObserver(logfile).emit) -else: +try: + if log_directory and os.path.exists(log_directory): + logfile = DailyLogFile("webservice.log", log_directory) + application.setComponent(ILogObserver, LogObserver(logfile).emit) + else: + log_directory = None +except Exception: log_directory = None JSON_CONTENT_TYPE = 'text/json' From 7c091d99169e29ad352b4b5b9da003c328f9a88d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:06:25 +0200 Subject: [PATCH 04/19] Move LogObserver class before module-level code Fix NameError by moving LogObserver definition before application setup. Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/webservice.py | 45 ++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index c6e7b48..28fa7cb 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -27,6 +27,29 @@ from blitzortung.service.metrics import StatsDMetrics from blitzortung.util import TimeConstraint + +class LogObserver(FileLogObserver): + + def __init__(self, f, prefix=None): + prefix = '' if prefix is None else prefix + if len(prefix) > 0: + prefix += '' + self.prefix = prefix + FileLogObserver.__init__(self, f) + + def emit(self, event_dict): + text = textFromEventDict(event_dict) + if text is None: + return + time_str = self.formatTime(event_dict["time"]) + msg_str = _safeFormat("[%(prefix)s] %(text)s\n", { + "prefix": self.prefix, + "text": text.replace("\n", "\n\t") + }) + untilConcludes(self.write, time_str + " " + msg_str) + untilConcludes(self.flush) + + application = service.Application("Blitzortung.org JSON-RPC Server") log_directory = "/var/log/blitzortung" @@ -404,25 +427,3 @@ def memory_info(self): else: log.msg(gc.get_stats()) # type: ignore[call-arg] self.next_memory_info = now + self.MEMORY_INFO_INTERVAL - - -class LogObserver(FileLogObserver): - - def __init__(self, f, prefix=None): - prefix = '' if prefix is None else prefix - if len(prefix) > 0: - prefix += '' - self.prefix = prefix - FileLogObserver.__init__(self, f) - - def emit(self, event_dict): - text = textFromEventDict(event_dict) - if text is None: - return - time_str = self.formatTime(event_dict["time"]) - msg_str = _safeFormat("[%(prefix)s] %(text)s\n", { - "prefix": self.prefix, - "text": text.replace("\n", "\n\t") - }) - untilConcludes(self.write, time_str + " " + msg_str) - untilConcludes(self.flush) From b73f514b056ce9a191e89d5167f0c32a4a33436c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:08:14 +0200 Subject: [PATCH 05/19] Add debug output to start_server Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index a9c20c6..75225b8 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -13,11 +13,13 @@ def start_server(connection_pool): """Start the JSON-RPC server with the given connection pool.""" print("Connection pool is ready") - root = Blitzortung(connection_pool, log_directory) config = blitzortung.config.config() + port = config.get_webservice_port() + print(f"Starting server on port {port}") + root = Blitzortung(connection_pool, log_directory) site = server.Site(root) site.displayTracebacks = False - jsonrpc_server = internet.TCPServer(config.get_webservice_port(), site, interface='127.0.0.1') + jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') jsonrpc_server.setServiceParent(application) return jsonrpc_server From 1c186fb50ddeb40ccf5463582236ca9414ca1094 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:10:22 +0200 Subject: [PATCH 06/19] Add more debug output Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 75225b8..5683348 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -20,7 +20,9 @@ def start_server(connection_pool): site = server.Site(root) site.displayTracebacks = False jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') + print(f"Setting service parent, jsonrpc_server={jsonrpc_server}") jsonrpc_server.setServiceParent(application) + print("Service parent set, returning") return jsonrpc_server From a4b63ea3fe8597106f82f2b2562dd45d8e984d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:10:45 +0200 Subject: [PATCH 07/19] Keep reference to jsonrpc_server to prevent garbage collection Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 5683348..c35a7ca 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -9,9 +9,13 @@ from blitzortung.cli.webservice import Blitzortung, application, log_directory import blitzortung.config +# Keep a reference to prevent garbage collection +_jsonrpc_server = None + def start_server(connection_pool): """Start the JSON-RPC server with the given connection pool.""" + global _jsonrpc_server print("Connection pool is ready") config = blitzortung.config.config() port = config.get_webservice_port() @@ -19,11 +23,11 @@ def start_server(connection_pool): root = Blitzortung(connection_pool, log_directory) site = server.Site(root) site.displayTracebacks = False - jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') - print(f"Setting service parent, jsonrpc_server={jsonrpc_server}") - jsonrpc_server.setServiceParent(application) + _jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') + print(f"Setting service parent, jsonrpc_server={_jsonrpc_server}") + _jsonrpc_server.setServiceParent(application) print("Service parent set, returning") - return jsonrpc_server + return _jsonrpc_server def on_error(failure): From 776d38f3699b5e6713e20f2b22f08f203db44991 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:14:56 +0200 Subject: [PATCH 08/19] Call startService() to actually start the server Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 1 + 1 file changed, 1 insertion(+) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index c35a7ca..4a18898 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -26,6 +26,7 @@ def start_server(connection_pool): _jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') print(f"Setting service parent, jsonrpc_server={_jsonrpc_server}") _jsonrpc_server.setServiceParent(application) + _jsonrpc_server.startService() print("Service parent set, returning") return _jsonrpc_server From f5f270fef707a0e184ca2dfa2f5b23c1586a9d83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:16:29 +0200 Subject: [PATCH 09/19] Clean up: remove debug prints and global variable Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 4a18898..7b0e5fa 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -9,26 +9,19 @@ from blitzortung.cli.webservice import Blitzortung, application, log_directory import blitzortung.config -# Keep a reference to prevent garbage collection -_jsonrpc_server = None - def start_server(connection_pool): """Start the JSON-RPC server with the given connection pool.""" - global _jsonrpc_server print("Connection pool is ready") config = blitzortung.config.config() port = config.get_webservice_port() - print(f"Starting server on port {port}") root = Blitzortung(connection_pool, log_directory) site = server.Site(root) site.displayTracebacks = False - _jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') - print(f"Setting service parent, jsonrpc_server={_jsonrpc_server}") - _jsonrpc_server.setServiceParent(application) - _jsonrpc_server.startService() - print("Service parent set, returning") - return _jsonrpc_server + jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') + jsonrpc_server.setServiceParent(application) + jsonrpc_server.startService() + return jsonrpc_server def on_error(failure): From 4bb16bde88767cde4e362d39ec20eb49ff1c9fc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:45:30 +0200 Subject: [PATCH 10/19] Swap webservice.py and service/base.py for clean separation - Move Blitzortung and LogObserver classes to service/base.py - Keep webservice.py as minimal entry point for twistd - Tests now import from service/base.py Co-Authored-By: Claude Opus 4.6 --- Clustering.ipynb | 23369 ++++++++++++++++++++++++++++++++ blitzortung/cli/webservice.py | 445 +- blitzortung/service/base.py | 415 +- junit.xml | 1 + pylint_report.txt | 1545 +++ pylint_report_2.txt | 1513 +++ pylint_report_3.txt | 1478 ++ reports/coverage.xml | 2186 +++ tests/cli/test_webservice.py | 36 +- twistd.log | 56 + 10 files changed, 30590 insertions(+), 454 deletions(-) create mode 100644 Clustering.ipynb create mode 100644 junit.xml create mode 100644 pylint_report.txt create mode 100644 pylint_report_2.txt create mode 100644 pylint_report_3.txt create mode 100644 reports/coverage.xml create mode 100644 twistd.log diff --git a/Clustering.ipynb b/Clustering.ipynb new file mode 100644 index 0000000..ba53bf1 --- /dev/null +++ b/Clustering.ipynb @@ -0,0 +1,23369 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import datetime\n", + "import blitzortung\n", + "import numpy as np\n", + "import fastcluster\n", + "from scipy.spatial.distance import pdist, squareform\n", + "from scipy.cluster.hierarchy import linkage, dendrogram" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "12499" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "strikes_db = blitzortung.db.strike()\n", + "strikes = strikes_db.select(blitzortung.db.TimeInterval(datetime.datetime.now(datetime.UTC)-datetime.timedelta(hours=1)))\n", + "len(strikes)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "coordinates = np.ndarray([len(strikes), 2])\n", + "\n", + "for index, strike in enumerate(strikes):\n", + " coordinates[index][0] = strike.get_x()\n", + " coordinates[index][1] = strike.get_y()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "CPU times: user 1.23 s, sys: 196 ms, total: 1.42 s\n", + "Wall time: 1.42 s\n" + ] + } + ], + "source": [ + "%time clusters = fastcluster.linkage(coordinates)" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "ename": "IndexError", + "evalue": "index 3901 is out of bounds for axis 0 with size 3901", + "traceback": [ + "\u001B[0;31m---------------------------------------------------------------------------\u001B[0m\n\u001B[0;31mIndexError\u001B[0m Traceback (most recent call last)", + "\u001B[0;32m\u001B[0m in \u001B[0;36m\u001B[0;34m()\u001B[0m\n\u001B[1;32m 17\u001B[0m \u001B[0;32mprint\u001B[0m \u001B[0mcoordinates\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0mindex\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 18\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m---> 19\u001B[0;31m \u001B[0mwalk_tree\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mnumber_of_clusters\u001B[0m \u001B[0;34m*\u001B[0m \u001B[0;36m2\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m", + "\u001B[0;32m\u001B[0m in \u001B[0;36mwalk_tree\u001B[0;34m(index, depth)\u001B[0m\n\u001B[1;32m 6\u001B[0m \u001B[0mindex\u001B[0m \u001B[0;34m-=\u001B[0m \u001B[0mnumber_of_clusters\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 7\u001B[0m \u001B[0;32mprint\u001B[0m \u001B[0mindex\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m----> 8\u001B[0;31m \u001B[0mcluster\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mclusters\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0mindex\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 9\u001B[0m \u001B[0mindex_1\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mint\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mcluster\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;36m0\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 10\u001B[0m \u001B[0mindex_2\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mint\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mcluster\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;36m1\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", + "\u001B[0;31mIndexError\u001B[0m: index 3901 is out of bounds for axis 0 with size 3901" + ], + "output_type": "error" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3901\n" + ] + } + ], + "source": [ + "number_of_clusters = len(clusters)\n", + "\n", + "def walk_tree(index, depth=0):\n", + " global clusters, number_of_clusters\n", + " if index >= number_of_clusters:\n", + " index -= number_of_clusters\n", + " cluster = clusters[index]\n", + " index_1 = int(cluster[0])\n", + " index_2 = int(cluster[1])\n", + " distance = cluster[2]\n", + " number_of_elements = int(cluster[0])\n", + " print \"%s%d %d %.4f %d\" %(depth * \" \", index_1, index_2, distance, number_of_elements)\n", + " walk_tree(index_1, depth + 1)\n", + " walk_tree(index_2, depth + 1)\n", + " else:\n", + " pass\n", + " #print coordinates[index] \n", + "\n", + "walk_tree(number_of_clusters * 2)" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD/CAYAAADhYy38AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGdFJREFUeJzt3WtsU+fhx/HfcRJIQsgV4hA7bVoghFBKgUEvE60LDVWr\nUk0tigbTlAHdNPFmm6YVXkxbmFTitpu0bhPSX+3GmCZR0F4Am1BK18pIUysoUDG00HJNydVcElNy\ng1zO/0XqkLtjx07Mw/cjWbKPz3meJ8fn/M7j55zjWLZt2wIA3PMcU90AAEB0EOgAYAgCHQAMQaAD\ngCEIdAAwBIEOAIYYM9A3b94sp9OpxYsXD3vvd7/7nRwOh5qbm/unVVZWav78+SouLtaRI0ei31oA\nwKjGDPRNmzapqqpq2PTa2lp9+OGHevDBB/unVVdXa9++faqurlZVVZW2bt2q3t7e6LcYADAyO4TL\nly/bjzzyyKBp69evt0+fPm0XFhbaN27csG3btnfu3Gl7vd7+eZ5//nn7008/HVbeM888Y0viwYMH\nDx5hPJ555plQcW0nKkwHDx6U2+3Wo48+Omh6Q0ODnnjiif7Xbrdb9fX1w5Y/evSouDkVAMJjWVbI\necIK9Pb2du3cuVMffvhh/7Sxwnk8DQAAREdYgX7x4kXV1NRoyZIlkqS6ujotX75cx44dk8vlUm1t\nbf+8dXV1crlcI5ZTUVHR/9zj8cjj8YTfcgAwmM/nk8/nC2sZK9SPc9XU1GjdunU6c+bMsPceeugh\nnTx5UtnZ2aqurtbGjRt1/Phx1dfX67nnntOFCxeG9dIty2LIBQDCNJ7sHPMqlw0bNuipp57SuXPn\nVFBQoN27dw+rIKikpERlZWUqKSnRCy+8oF27djHkAgCTKGQPPeoV0kMHgLBNuIcOALh3EOgAYAgC\nHQAMEfaNRdGQnS21tExFzYhHWVnSgJ8EAhChKTkpKtnivCiCLEtsD0AInBQFgPsIgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGGDPQN2/eLKfTqcWLF/dP+8UvfqGFCxdqyZIleuWVV3Tz5s3+9yorKzV//nwV\nFxfryJEjsWs1AGCYMQN906ZNqqqqGjRt7dq1+t///qfTp0+rqKhIlZWVkqTq6mrt27dP1dXVqqqq\n0tatW9Xb2xu7lgMABhkz0FetWqWsrKxB00pLS+Vw9C32+OOPq66uTpJ08OBBbdiwQUlJSSosLNS8\nefN0/PjxGDUbADDUhMbQ//KXv+jFF1+UJDU0NMjtdve/53a7VV9fP7HWAQDGLTHSBd944w1NmzZN\nGzduHHUey7JGeadCFRV9zzwejzweT6TNAAAj+Xw++Xy+sJaJKND/+te/6vDhw/roo4/6p7lcLtXW\n1va/rqurk8vlGqWEu4EOABhuaGd3x44dIZcJe8ilqqpKb7/9tg4ePKjk5OT+6S+//LLef/993blz\nR5cvX9b58+e1cuXKcIsHAERozB76hg0bdPToUV2/fl0FBQXasWOHKisrdefOHZWWlkqSnnzySe3a\ntUslJSUqKytTSUmJEhMTtWvXrjGGXAAA0WbZtm1PaoWWJcnW5NaKeGZZYnsAQrAsS6HimjtFAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIcYM9M2bN8vpdGrx4sX905qb\nm1VaWqqioiKtXbtWgUCg/73KykrNnz9fxcXFOnLkSOxaDQAYZsxA37Rpk6qqqgZN83q9Ki0t1blz\n57RmzRp5vV5JUnV1tfbt26fq6mpVVVVp69at6u3tjV3LAQCDjBnoq1atUlZW1qBphw4dUnl5uSSp\nvLxcBw4ckCQdPHhQGzZsUFJSkgoLCzVv3jwdP348Rs0GAAwV9hi63++X0+mUJDmdTvn9fklSQ0OD\n3G53/3xut1v19fVRaiYAIJQJnRS1LEuWZY35PgBgciSGu4DT6VRTU5Py8vLU2Nio3NxcSZLL5VJt\nbW3/fHV1dXK5XKOUUqGKir5nHo9HHo8n3GYAgNF8Pp98Pl9Yy1i2bdtjzVBTU6N169bpzJkzkqTX\nX39dOTk52rZtm7xerwKBgLxer6qrq7Vx40YdP35c9fX1eu6553ThwoVhvfS+17bGrhX3E8sS2wMQ\ngmVZChHXY/fQN2zYoKNHj+r69esqKCjQb37zG23fvl1lZWX685//rMLCQu3fv1+SVFJSorKyMpWU\nlCgxMVG7du1iyAUAJlHIHnrUK6SHjiHooQOhjaeHzp2iAGAIAh0ADEGgA4AhCHQAMASBDgCGINAB\nwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAM\nQaADgCEIdAAwBIEOAIYg0AHAEBEHemVlpRYtWqTFixdr48aNun37tpqbm1VaWqqioiKtXbtWgUAg\nmm0FAIwhokCvqanRu+++q1OnTunMmTPq6enR+++/L6/Xq9LSUp07d05r1qyR1+uNdnsBAKOIKNDT\n09OVlJSk9vZ2dXd3q729Xfn5+Tp06JDKy8slSeXl5Tpw4EBUGwsAGF1EgZ6dna2f//zneuCBB5Sf\nn6/MzEyVlpbK7/fL6XRKkpxOp/x+f1QbCwAYXUSBfvHiRf3+979XTU2NGhoa1Nraqr///e+D5rEs\nS5ZlRaWRAIDQEiNZ6MSJE3rqqaeUk5MjSXrllVf06aefKi8vT01NTcrLy1NjY6Nyc3NHKaFCFRV9\nzzwejzweTyTNAABj+Xw++Xy+sJaxbNu2w63o9OnT+t73vqfPPvtMycnJ+sEPfqCVK1fqq6++Uk5O\njrZt2yav16tAIDDsxGhfr91W+LXCVJYltgcgBMuyFCquIwp0SXrrrbe0Z88eORwOLVu2TO+9955u\n3bqlsrIyXblyRYWFhdq/f78yMzOHNYpAx0AEOhBaTAM9UgQ6hiLQgdDGE+jcKQoAhiDQAcAQBDoA\nGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADBHRfyy6\n52VnSy0tU90KfOPX+rVk7ZjqZiAoK0tqbp7qViAC9+fvofMD3MDo2D/iEr+HDgD3EQIdAAxBoAOA\nIQh0ADAEgQ4AhiDQAcAQBDoAGCLiQA8EAlq/fr0WLlyokpISHTt2TM3NzSotLVVRUZHWrl2rQCAQ\nzbYCAMYQcaD/5Cc/0YsvvqizZ8/qv//9r4qLi+X1elVaWqpz585pzZo18nq90WwrAGAMEd0pevPm\nTS1dulSXLl0aNL24uFhHjx6V0+lUU1OTPB6Pvvjii8EVcqcoEN/YP+JSzO4UvXz5smbPnq1NmzZp\n2bJl+uEPf6i2tjb5/X45nU5JktPplN/vj6R4AEAEIgr07u5unTp1Slu3btWpU6c0Y8aMYcMrlmV9\n0xsHAEyGiH5t0e12y+12a8WKFZKk9evXq7KyUnl5eWpqalJeXp4aGxuVm5s7SgkVqqjoe+bxeOTx\neCJpBgAYy+fzyefzhbVMxL+2+PTTT+u9995TUVGRKioq1N7eLknKycnRtm3b5PV6FQgERuy5M4YO\nxDH2j7g0njH0iAP99OnTeu2113Tnzh3NnTtXu3fvVk9Pj8rKynTlyhUVFhZq//79yszMHNYoAh2I\nY+wfcSmmgR4pAh2Ic+wfcYnfQweA+wiBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0\nADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcA\nQxDoAGCICQV6T0+Pli5dqnXr1kmSmpubVVpaqqKiIq1du1aBQCAqjQQAhDahQH/nnXdUUlIiy7Ik\nSV6vV6WlpTp37pzWrFkjr9cblUYCAEKLONDr6up0+PBhvfbaa7JtW5J06NAhlZeXS5LKy8t14MCB\n6LQSABBSxIH+s5/9TG+//bYcjrtF+P1+OZ1OSZLT6ZTf7594CwEA4xJRoP/rX/9Sbm6uli5d2t87\nH8qyrP6hGABA7CVGstAnn3yiQ4cO6fDhw+rs7NTXX3+t73//+3I6nWpqalJeXp4aGxuVm5s7SgkV\nqqjoe+bxeOTxeCJqPACYyufzyefzhbWMZY/WxR6no0eP6re//a3++c9/6vXXX1dOTo62bdsmr9er\nQCAw7MRoX6/d1sRqnSDL0tQ2AIhj7B9xybKsUUdEgqJyHXpwaGX79u368MMPVVRUpI8//ljbt2+P\nRvEAgHGYcA897ArpoQPxjf0jLk1aDx0AMPUIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0A\nDEGgA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYIiIAr22tlbPPvusFi1apEceeUR/+MMfJEnNzc0qLS1VUVGR1q5dq0AgENXG\nAgBGZ9m2bYe7UFNTk5qamvTYY4+ptbVVy5cv14EDB7R7927NmjVLr7/+ut588021tLTI6/UOrtCy\nJNkKv9YosixNbQOAOMb+EZcsy1KouI6oh56Xl6fHHntMkpSWlqaFCxeqvr5ehw4dUnl5uSSpvLxc\nBw4ciKR4AEAEJjyGXlNTo88//1yPP/64/H6/nE6nJMnpdMrv90+4gQCA8UmcyMKtra169dVX9c47\n72jmzJmD3rMs65vhlZFUqKKi75nH45HH45lIMwDAOD6fTz6fL6xlIhpDl6Suri699NJLeuGFF/TT\nn/5UklRcXCyfz6e8vDw1Njbq2Wef1RdffDG4QsbQgfjG/hGXYjaGbtu2tmzZopKSkv4wl6SXX35Z\ne/bskSTt2bNH3/nOdyIpHgAQgYh66P/5z3/09NNP69FHH+0fVqmsrNTKlStVVlamK1euqLCwUPv3\n71dmZubgCumhA/GN/SMujaeHHvGQS6QIdCDOsX/EpZgNuQAA4g+BDgCGINABwBAEOgAYYkI3FgGY\nItnZUktL7Mof9abACcrKkpqbY1M2uMoFuCfdq9vwvdruOMBVLgBwHyHQAcAQBDoAGIJABwBDEOgA\nYAgCHQAMQaADgCEIdAAwhBmBnp3dd8PCeB9SePNnZ0/t3wfci0baLyX2rxgy407RWN99xt1tiJVY\n38I/1GTeej/e/Yb9a1zun39wQaDjXjXZ29Zk1hesayIHLX77pd/9F+iT3duJBjbY+9v9EOgTqZPO\nVL/xBLpZv7bY0nLvffix+lU7YCTJyX0dn1h3IrKz++rCpDKrh34vHs3vxTYjeqaihy7F/pthsJ6B\n++W9+A16oCn+Nh2/v7b4TIWy34zxme1wr3yZqoc09W2I5oMrFoYba1uUJn9d2vbkBmvwW0HwG/TQ\nR7BN8fzIypI6OiZvnUVoSnrotm3L2mHJ/nWUqh6ph07Pd3xG6jWNpycy2vplvQ832jqJVY91rM8v\neLAItidWvU7L6gvylJTBf+O9us0M/MYxZU2Ygh56VVWViouLNX/+fL355psjV7qjr1prh9X/iHmP\nHSMb2GvKyro7jV547I3WYw31CBrt/Y6OsT+jgfPGsqfe2XlvD7GMJM63/6j20Ht6erRgwQL9+9//\nlsvl0ooVK7R3714tXLjwboWWJVVEq8Y+doXooUdq6DobSzDwOzr6dtaJjIveT1f3jLQtBtdbJOth\n4Oc00vJj9SaHvher/WTotpScfHebGWneeN9X4yBbJv0ql+PHj2vevHkqLCyUJH33u9/VwYMHBwX6\nQFnJWWreFoWduiJEECE8QzeagUNaQw28siicDT3UwcMEAw92Q68sCU4PfhsKN9izsvqWDS4fnDbe\nMga2LZL6xysY5J2dd+saSTxsDwZ0MqIa6PX19SooKOh/7Xa7dezYsVHnb+lskbVj4h/koAgZuGGM\ntZEY8OHFzEiXtaWkjH/Z8fbYx7MT38ufU7AHPlLwSoMPfuEGWvBAOrDHPbCMUJcMDmxb8HUkB4ZQ\ngkEeNLTseLjyJXjQGbgOBgp+XkMPgsH34mj7jGqgW1E+yo7npKm1w5ItyQoGzsCNdCyjfXiRSE6+\nJ86Ajyol5W77g+tvaKgP3TGTkwdfpREUDJpo7ajR/JymQkvL8O1jpPU29PV4vukMPMgGnwfL6OwM\nvd6G3rcR/MyGrvNohlaw7IQEqadn5Dom+/Meum0PNfCgN3R4Mtrb5wTXdVQD3eVyqba2tv91bW2t\n3G73oHmWLFmi0xWnx1WeNc6hFId090OZiqP9eHaeeDaw/SP12EZbZjT38rqIhUi2j/HMP/AzCBVK\nE6knFgfVgWEeqzpiIdZtHGM9LFmyJOTiUT0p2t3drQULFuijjz5Sfn6+Vq5cOeykKAAgNqLaQ09M\nTNSf/vQnPf/88+rp6dGWLVsIcwCYJJN+YxEAIDbM+AcXiNjevXv11ltv6datWzpy5EhM6jh58qSO\nHTumN954Q3v37o1JHePxwQcfTFndofzoRz/S4cOH1TN0bHkC3n33Xe3fv187d+7U/v37o1Yu4tek\n9NCvX7+uo0eP6m9/+5tqamrkdrt1584d3bhxQ83NzWpra9PSpUvV2dmp7OxsdXd3q7m5WS6XS598\n8ols29aaNWv0wQcfKD8/X7dv31ZiYqKysrKUn58v27Z19epV9fT06MKFC8rJyVFdXZ1mz56t9vZ2\ndXR0yOl0qrW1VTk5OXI4HPL7/UpMTNSsWbN0/fp1ZWZm6vz587IsSxkZGbp586ZSUlLU0dGhmTNn\nqre3V9evX1d2drba29slSQ899JCuXr2q9vZ2FRQUKDk5WTU1NZo5c6Zu3Lghh8Oh3t5e5efnq6Gh\nQQ888ICampqUlJSkgoICXb16VYFAQLZtq6SkRGfPntXcuXPV3d2t9PR0TZ8+XWfPnlVqaqrS09PV\n09Oja9euacGCBTp16pRSU1OVk5Oj9vZ2rV69WvX19WpoaNCVK1dUUlKihoYGJSQkaNq0aerq6lJR\nUZEuXbqkb3/72zp06JDu3LmjtLQ0JScn68aNG+rt7VVPT48WLVqk3t5eXb58WSkpKUpNTVV7e7sS\nEhKUkZGh2tpapaWlKTU1tb98SVqxYkX/ZaoJCQmqra3VnDlz1NraKr/fr+zsbDU3NyslJUVz5szR\nww8/rEcffVSff/655syZo1OnTmnu3Lm6fPmybt++rc7OTs2dO1etra2aM2eOqqqq1NnZqRkzZmj6\n9OlauHCh2tralJ+fr1OnTulb3/qWnnzySR0/flzt7e0KBAKqrq6WZVnKyclRa2urVq9eLb/fr2vX\nrqm1tVWdnZ0qKyuTz+eT0+nU9evXlZycrJKSErW0tOjjjz9Wenq6UlJSZNu20tPTVV9fr+RvLgt0\nOBxKT09XS0tL/3bT0dGhrq4uzZ49Wx0dHZo1a5a6u7v11VdfKS8vT7Nnz9bZs2fldDqVm5urW7du\n6dKlS3K73bp27ZocDocSEhLU1dWlmzdvqrCwUPPnz1ddXZ1qamq0fPlydXR0qKOjQx6PRydOnNCN\nGzd069YttbW1acGCBfryyy81ffr0/vq//vprpaenq7GxUR0dHUpPT1dHR4dSUlKUkJAgl8ul1NRU\nXbhwQampqbJtWxkZGUpLS9OFCxc0bdo05ebmKiMjQxcvXlRbW5uyv7ljsr6+XtOmTVN3d7e6urq0\nfv16XbhwQV1dXUpLS9Orr76qP/7xj2psbJTUd67twQcf1LVr1/TAAw+ooKBAXV1dOnv2bP+6bm5u\n1owZM5Senq7k5GRlZWXp/PnzqqmpUVpamnJzc1VbWyuXyyWXy6Xz588rEAho0aJFunjxojIzM3Xz\n5k1lZGQoKSlJtm2rt7dXixYt0smTJ1VbW6sZM2YoJSVFPT09amtrU1pamlavXq3PPvtMLpdL1dXV\nunPnjh5++GFVV1dr+vTpSk1N1a1bt5SXlyeHw6Hbt28rJSVFbW1t8vv9mjNnjtLS0pSUlKR58+bp\nyy+/VFpamnp7e9XY2KiUlBQFAgH19PQoNzdXtm0rEAgoJydHnZ2dcjgcunLlimzbVk5Ojq5du6Zl\ny5bpl7/8pZ544gllZGSMmbWTEujRvpwRAO43BQUFunLlypjzTMqQS0JCwmRUAwDGunXrVsh5JiXQ\nf/WrX/V/PYu2tLS0YdMSE8d/8U5CQoKSkpLCWmYk4X4LGe9BLljuwPkn2taRyo/V/KO11bKsEctK\nSkoKq/xwWZYV1vpzOOL7NFNmZuao701kO7EsSwkJCVH5+6O9DoNDfCOVPdZ+FfybolFvNIy0/Y/U\nvvT0dP34xz/W//3f/4UuczKGXBISEtTb2xvragDAWPPmzdP58+fHnIchFwC4B2zZsiXkPJMS6KtW\nrZqMagDAOA6HQ6mpqXrppZdCzjspQy7By+YAAJF59dVX9Y9//GPMeeL7jA8AQJJ04sSJkPNMSqAv\nW7Ysqldm4C7OTwD3h7GuaAqalEA/ffq0uru7J6Oq+040bxUHEL9axvHT4JMS6OvWrVNeXp7cbvew\n64CXLl0qafTrkgeK1jXKkd65Gus7XlNTU5WYmNj/d46nPsuyNH/+fGVmZoZ1ve945h1Y/3jLDveb\nWPA293DqGKmMgWbOnDlsnpRv/gFE8ATTaPLy8vqfB//+geW7XK7+2/6jJZxvWZF+I5vKb3LRvA49\nnGvBI9lfg9tvOG0eq57ExEQ5HI6IRyhmzpyppKQkJSQkaM6cOaHbwq8tAoAZOCkKAIYg0AHAEAQ6\nABiCQAcAQxDoAGCI/wdeheftyb5rNAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "{'color_list': ['g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'g',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'r',\n", + " 'b'],\n", + " 'dcoord': [[0.0, 0.058577537059864349, 0.058577537059864349, 0.0],\n", + " [0.0, 0.17585345092149576, 0.17585345092149576, 0.058577537059864349],\n", + " [0.0, 0.079976652999482881, 0.079976652999482881, 0.0],\n", + " [0.0, 0.11194911080041241, 0.11194911080041241, 0.0],\n", + " [0.079976652999482881,\n", + " 0.1702991431569793,\n", + " 0.1702991431569793,\n", + " 0.11194911080041241],\n", + " [0.0, 0.030260444494418906, 0.030260444494418906, 0.0],\n", + " [0.0, 0.14943563539195742, 0.14943563539195742, 0.030260444494418906],\n", + " [0.0, 0.19528746762913293, 0.19528746762913293, 0.14943563539195742],\n", + " [0.1702991431569793,\n", + " 0.21404144475778369,\n", + " 0.21404144475778369,\n", + " 0.19528746762913293],\n", + " [0.17585345092149576,\n", + " 0.24491008752193036,\n", + " 0.24491008752193036,\n", + " 0.21404144475778369],\n", + " [0.0, 0.31504336737980065, 0.31504336737980065, 0.24491008752193036],\n", + " [0.0, 0.71142520708294088, 0.71142520708294088, 0.31504336737980065],\n", + " [0.0, 0.81267704712327438, 0.81267704712327438, 0.0],\n", + " [0.0, 0.18903400489067604, 0.18903400489067604, 0.0],\n", + " [0.0, 0.69897950780334228, 0.69897950780334228, 0.18903400489067604],\n", + " [0.0, 0.0059331813557449891, 0.0059331813557449891, 0.0],\n", + " [0.0, 0.026420387222745308, 0.026420387222745308, 0.0059331813557449891],\n", + " [0.0, 0.043599260830879928, 0.043599260830879928, 0.0],\n", + " [0.026420387222745308,\n", + " 0.074360635480075113,\n", + " 0.074360635480075113,\n", + " 0.043599260830879928],\n", + " [0.0, 0.10122168303778778, 0.10122168303778778, 0.074360635480075113],\n", + " [0.0, 0.16719595596186196, 0.16719595596186196, 0.0],\n", + " [0.0, 0.16859012708933838, 0.16859012708933838, 0.0],\n", + " [0.0, 0.21299392662233016, 0.21299392662233016, 0.16859012708933838],\n", + " [0.16719595596186196,\n", + " 0.28364005055703573,\n", + " 0.28364005055703573,\n", + " 0.21299392662233016],\n", + " [0.0, 0.30420748336621156, 0.30420748336621156, 0.28364005055703573],\n", + " [0.0, 0.31251988287465593, 0.31251988287465593, 0.30420748336621156],\n", + " [0.10122168303778778,\n", + " 0.8973537547478202,\n", + " 0.8973537547478202,\n", + " 0.31251988287465593],\n", + " [0.0, 0.68737633742950621, 0.68737633742950621, 0.0],\n", + " [0.0, 0.02041572477284222, 0.02041572477284222, 0.0],\n", + " [0.0, 0.024305734343971527, 0.024305734343971527, 0.02041572477284222],\n", + " [0.0, 0.052346166430778995, 0.052346166430778995, 0.024305734343971527],\n", + " [0.0, 0.16131594691783732, 0.16131594691783732, 0.052346166430778995],\n", + " [0.0, 0.20069133555788984, 0.20069133555788984, 0.16131594691783732],\n", + " [0.0, 0.20832830392914825, 0.20832830392914825, 0.20069133555788984],\n", + " [0.0, 0.021329627868290985, 0.021329627868290985, 0.0],\n", + " [0.0, 0.035734480057774527, 0.035734480057774527, 0.021329627868290985],\n", + " [0.0, 0.06479585444301679, 0.06479585444301679, 0.035734480057774527],\n", + " [0.0, 0.034132716343707445, 0.034132716343707445, 0.0],\n", + " [0.0, 0.20186282441300812, 0.20186282441300812, 0.034132716343707445],\n", + " [0.0, 0.21608899822295674, 0.21608899822295674, 0.20186282441300812],\n", + " [0.06479585444301679,\n", + " 0.30015409456145276,\n", + " 0.30015409456145276,\n", + " 0.21608899822295674],\n", + " [0.0, 0.37397181286829856, 0.37397181286829856, 0.30015409456145276],\n", + " [0.0, 0.58361241921843809, 0.58361241921843809, 0.37397181286829856],\n", + " [0.0, 0.11597818556954211, 0.11597818556954211, 0.0],\n", + " [0.0, 0.54282733990283816, 0.54282733990283816, 0.11597818556954211],\n", + " [0.0, 0.096545516317430205, 0.096545516317430205, 0.0],\n", + " [0.0, 0.26242474490222512, 0.26242474490222512, 0.0],\n", + " [0.096545516317430205,\n", + " 0.34687298302693015,\n", + " 0.34687298302693015,\n", + " 0.26242474490222512],\n", + " [0.0, 0.10264387586212562, 0.10264387586212562, 0.0],\n", + " [0.0, 0.17180076704427436, 0.17180076704427436, 0.10264387586212562],\n", + " [0.0, 0.0096294329012716774, 0.0096294329012716774, 0.0],\n", + " [0.0, 0.020106456699274241, 0.020106456699274241, 0.0096294329012716774],\n", + " [0.0, 0.12797137345906473, 0.12797137345906473, 0.0],\n", + " [0.0, 0.10120727393819517, 0.10120727393819517, 0.0],\n", + " [0.0, 0.11008410987967572, 0.11008410987967572, 0.10120727393819517],\n", + " [0.0, 0.0090920730859458034, 0.0090920730859458034, 0.0],\n", + " [0.0, 0.019539301983446597, 0.019539301983446597, 0.0090920730859458034],\n", + " [0.0, 0.018936094687130686, 0.018936094687130686, 0.0],\n", + " [0.0, 0.022175793672378631, 0.022175793672378631, 0.018936094687130686],\n", + " [0.0, 0.030099448001568056, 0.030099448001568056, 0.0],\n", + " [0.022175793672378631,\n", + " 0.13537179914959391,\n", + " 0.13537179914959391,\n", + " 0.030099448001568056],\n", + " [0.0, 0.02667406219533654, 0.02667406219533654, 0.0],\n", + " [0.0, 0.093463141317834175, 0.093463141317834175, 0.02667406219533654],\n", + " [0.0, 0.14367427631278185, 0.14367427631278185, 0.093463141317834175],\n", + " [0.0, 0.13353453195709028, 0.13353453195709028, 0.0],\n", + " [0.0, 0.11089420725178536, 0.11089420725178536, 0.0],\n", + " [0.0, 0.020411024104618845, 0.020411024104618845, 0.0],\n", + " [0.0, 0.11157119289942873, 0.11157119289942873, 0.020411024104618845],\n", + " [0.0, 0.11977175404075831, 0.11977175404075831, 0.0],\n", + " [0.0, 0.12850232135257589, 0.12850232135257589, 0.11977175404075831],\n", + " [0.11157119289942873,\n", + " 0.13037981216812258,\n", + " 0.13037981216812258,\n", + " 0.12850232135257589],\n", + " [0.0, 0.13352530328368858, 0.13352530328368858, 0.13037981216812258],\n", + " [0.11089420725178536,\n", + " 0.13805385298497838,\n", + " 0.13805385298497838,\n", + " 0.13352530328368858],\n", + " [0.13353453195709028,\n", + " 0.15197321510385198,\n", + " 0.15197321510385198,\n", + " 0.13805385298497838],\n", + " [0.14367427631278185,\n", + " 0.15350004905536976,\n", + " 0.15350004905536976,\n", + " 0.15197321510385198],\n", + " [0.13537179914959391,\n", + " 0.16848271740746287,\n", + " 0.16848271740746287,\n", + " 0.15350004905536976],\n", + " [0.0, 0.17111617234206286, 0.17111617234206286, 0.16848271740746287],\n", + " [0.019539301983446597,\n", + " 0.17415760749677933,\n", + " 0.17415760749677933,\n", + " 0.17111617234206286],\n", + " [0.11008410987967572,\n", + " 0.17484774140091489,\n", + " 0.17484774140091489,\n", + " 0.17415760749677933],\n", + " [0.0, 0.036601059178656498, 0.036601059178656498, 0.0],\n", + " [0.0, 0.14236382247256915, 0.14236382247256915, 0.036601059178656498],\n", + " [0.0, 0.010577491668637138, 0.010577491668637138, 0.0],\n", + " [0.0, 0.0091277982558748139, 0.0091277982558748139, 0.0],\n", + " [0.0, 0.073655445508122211, 0.073655445508122211, 0.0091277982558748139],\n", + " [0.010577491668637138,\n", + " 0.10441996736736607,\n", + " 0.10441996736736607,\n", + " 0.073655445508122211],\n", + " [0.0, 0.19447969206321963, 0.19447969206321963, 0.10441996736736607],\n", + " [0.14236382247256915,\n", + " 0.19798494296285804,\n", + " 0.19798494296285804,\n", + " 0.19447969206321963],\n", + " [0.17484774140091489,\n", + " 0.22441433988272957,\n", + " 0.22441433988272957,\n", + " 0.19798494296285804],\n", + " [0.12797137345906473,\n", + " 0.23550661681787541,\n", + " 0.23550661681787541,\n", + " 0.22441433988272957],\n", + " [0.0, 0.10166324067725301, 0.10166324067725301, 0.0],\n", + " [0.0, 0.11147766037194097, 0.11147766037194097, 0.10166324067725301],\n", + " [0.0, 0.12874025781005718, 0.12874025781005718, 0.11147766037194097],\n", + " [0.0, 0.19981333373425841, 0.19981333373425841, 0.12874025781005718],\n", + " [0.0, 0.053102254208276647, 0.053102254208276647, 0.0],\n", + " [0.0, 0.060456510153976302, 0.060456510153976302, 0.053102254208276647],\n", + " [0.0, 0.10303561793867122, 0.10303561793867122, 0.060456510153976302],\n", + " [0.0, 0.10410645278751852, 0.10410645278751852, 0.10303561793867122],\n", + " [0.0, 0.11498417484158399, 0.11498417484158399, 0.10410645278751852],\n", + " [0.0, 0.067740296603999953, 0.067740296603999953, 0.0],\n", + " [0.0, 0.016273413440337014, 0.016273413440337014, 0.0],\n", + " [0.0, 0.022401309113534898, 0.022401309113534898, 0.016273413440337014],\n", + " [0.0, 0.074841555361980061, 0.074841555361980061, 0.022401309113534898],\n", + " [0.0, 0.084130282419603478, 0.084130282419603478, 0.074841555361980061],\n", + " [0.0, 0.033008459355147082, 0.033008459355147082, 0.0],\n", + " [0.0, 0.061410522266129808, 0.061410522266129808, 0.033008459355147082],\n", + " [0.0, 0.067156094682460948, 0.067156094682460948, 0.061410522266129808],\n", + " [0.0, 0.10275907731192703, 0.10275907731192703, 0.067156094682460948],\n", + " [0.084130282419603478,\n", + " 0.1150719043598238,\n", + " 0.1150719043598238,\n", + " 0.10275907731192703],\n", + " [0.0, 0.11508265412302746, 0.11508265412302746, 0.1150719043598238],\n", + " [0.0, 0.12026804094604936, 0.12026804094604936, 0.0],\n", + " [0.0, 0.13055879348784344, 0.13055879348784344, 0.12026804094604936],\n", + " [0.0, 0.13768031498004041, 0.13768031498004041, 0.13055879348784344],\n", + " [0.11508265412302746,\n", + " 0.14926130113662672,\n", + " 0.14926130113662672,\n", + " 0.13768031498004041],\n", + " [0.067740296603999953,\n", + " 0.1531153862680113,\n", + " 0.1531153862680113,\n", + " 0.14926130113662672],\n", + " [0.0, 0.17189667531980435, 0.17189667531980435, 0.1531153862680113],\n", + " [0.11498417484158399,\n", + " 0.19609999141764939,\n", + " 0.19609999141764939,\n", + " 0.17189667531980435],\n", + " [0.0, 0.20121886723168816, 0.20121886723168816, 0.19609999141764939],\n", + " [0.0, 0.11857116761253537, 0.11857116761253537, 0.0],\n", + " [0.0, 0.14959511724986499, 0.14959511724986499, 0.11857116761253537],\n", + " [0.0, 0.049348178862036476, 0.049348178862036476, 0.0],\n", + " [0.0, 0.010365598197894768, 0.010365598197894768, 0.0],\n", + " [0.0, 0.061316122056093596, 0.061316122056093596, 0.010365598197894768],\n", + " [0.0, 0.078089900665838527, 0.078089900665838527, 0.0],\n", + " [0.061316122056093596,\n", + " 0.11793927264910627,\n", + " 0.11793927264910627,\n", + " 0.078089900665838527],\n", + " [0.0, 0.11800294593780485, 0.11800294593780485, 0.11793927264910627],\n", + " [0.0, 0.0095090841304497874, 0.0095090841304497874, 0.0],\n", + " [0.0, 0.021374653494285547, 0.021374653494285547, 0.0095090841304497874],\n", + " [0.0, 0.028510198683976206, 0.028510198683976206, 0.0],\n", + " [0.0, 0.052663315742557337, 0.052663315742557337, 0.028510198683976206],\n", + " [0.021374653494285547,\n", + " 0.058275868324712286,\n", + " 0.058275868324712286,\n", + " 0.052663315742557337],\n", + " [0.0, 0.055431842545584725, 0.055431842545584725, 0.0],\n", + " [0.0, 0.026114357296318145, 0.026114357296318145, 0.0],\n", + " [0.0, 0.039530875135785772, 0.039530875135785772, 0.026114357296318145],\n", + " [0.0, 0.016878395954595185, 0.016878395954595185, 0.0],\n", + " [0.0, 0.0440787699465435, 0.0440787699465435, 0.016878395954595185],\n", + " [0.039530875135785772,\n", + " 0.056774566990858685,\n", + " 0.056774566990858685,\n", + " 0.0440787699465435],\n", + " [0.055431842545584725,\n", + " 0.058670842954574233,\n", + " 0.058670842954574233,\n", + " 0.056774566990858685],\n", + " [0.058275868324712286,\n", + " 0.070528628088189924,\n", + " 0.070528628088189924,\n", + " 0.058670842954574233],\n", + " [0.0, 0.079888088548920752, 0.079888088548920752, 0.070528628088189924],\n", + " [0.0, 0.030513676884309122, 0.030513676884309122, 0.0],\n", + " [0.0, 0.070081779443735989, 0.070081779443735989, 0.030513676884309122],\n", + " [0.0, 0.083371169813067483, 0.083371169813067483, 0.070081779443735989],\n", + " [0.079888088548920752,\n", + " 0.083857842054278445,\n", + " 0.083857842054278445,\n", + " 0.083371169813067483],\n", + " [0.0, 0.086583197261358172, 0.086583197261358172, 0.083857842054278445],\n", + " [0.0, 0.087111353393229424, 0.087111353393229424, 0.086583197261358172],\n", + " [0.0, 0.11361477591405093, 0.11361477591405093, 0.087111353393229424],\n", + " [0.0, 0.12619580618231044, 0.12619580618231044, 0.11361477591405093],\n", + " [0.11800294593780485,\n", + " 0.14043187334078042,\n", + " 0.14043187334078042,\n", + " 0.12619580618231044],\n", + " [0.0, 0.029637829104036229, 0.029637829104036229, 0.0],\n", + " [0.0, 0.04653628059912316, 0.04653628059912316, 0.0],\n", + " [0.029637829104036229,\n", + " 0.062866962468373561,\n", + " 0.062866962468373561,\n", + " 0.04653628059912316],\n", + " [0.0, 0.074214599210657262, 0.074214599210657262, 0.062866962468373561],\n", + " [0.0, 0.13677144877860162, 0.13677144877860162, 0.074214599210657262],\n", + " [0.0, 0.024899007470180787, 0.024899007470180787, 0.0],\n", + " [0.0, 0.025591493117829628, 0.025591493117829628, 0.024899007470180787],\n", + " [0.0, 0.066507090749774359, 0.066507090749774359, 0.025591493117829628],\n", + " [0.0, 0.024920257482615057, 0.024920257482615057, 0.0],\n", + " [0.0, 0.029977533671083658, 0.029977533671083658, 0.024920257482615057],\n", + " [0.0, 0.026704903107863481, 0.026704903107863481, 0.0],\n", + " [0.0, 0.03619429177371461, 0.03619429177371461, 0.026704903107863481],\n", + " [0.029977533671083658,\n", + " 0.1119257432273783,\n", + " 0.1119257432273783,\n", + " 0.03619429177371461],\n", + " [0.0, 0.049352062834277753, 0.049352062834277753, 0.0],\n", + " [0.0, 0.086304196143636616, 0.086304196143636616, 0.0],\n", + " [0.0, 0.10234439910909067, 0.10234439910909067, 0.086304196143636616],\n", + " [0.049352062834277753,\n", + " 0.11298077792703588,\n", + " 0.11298077792703588,\n", + " 0.10234439910909067],\n", + " [0.0, 0.087915550137615081, 0.087915550137615081, 0.0],\n", + " [0.0, 0.025067298617922871, 0.025067298617922871, 0.0],\n", + " [0.0, 0.040494131142671676, 0.040494131142671676, 0.0],\n", + " [0.0, 0.050903462770209122, 0.050903462770209122, 0.040494131142671676],\n", + " [0.0, 0.077029617764855646, 0.077029617764855646, 0.050903462770209122],\n", + " [0.025067298617922871,\n", + " 0.079079251899595721,\n", + " 0.079079251899595721,\n", + " 0.077029617764855646],\n", + " [0.0, 0.080922169051509993, 0.080922169051509993, 0.079079251899595721],\n", + " [0.0, 0.026976465335546301, 0.026976465335546301, 0.0],\n", + " [0.0, 0.031690317133159056, 0.031690317133159056, 0.026976465335546301],\n", + " [0.0, 0.042798452413615323, 0.042798452413615323, 0.031690317133159056],\n", + " [0.0, 0.044815684408489528, 0.044815684408489528, 0.0],\n", + " [0.042798452413615323,\n", + " 0.045689774020012321,\n", + " 0.045689774020012321,\n", + " 0.044815684408489528],\n", + " [0.0, 0.087140516925248421, 0.087140516925248421, 0.045689774020012321],\n", + " [0.080922169051509993,\n", + " 0.093703801294289374,\n", + " 0.093703801294289374,\n", + " 0.087140516925248421],\n", + " [0.0, 0.11476267322174089, 0.11476267322174089, 0.093703801294289374],\n", + " [0.087915550137615081,\n", + " 0.11573905015162374,\n", + " 0.11573905015162374,\n", + " 0.11476267322174089],\n", + " [0.11298077792703588,\n", + " 0.12564201007625059,\n", + " 0.12564201007625059,\n", + " 0.11573905015162374],\n", + " [0.0, 0.12763188139722345, 0.12763188139722345, 0.12564201007625059],\n", + " [0.1119257432273783,\n", + " 0.13245134180521367,\n", + " 0.13245134180521367,\n", + " 0.12763188139722345],\n", + " [0.0, 0.13629955416656087, 0.13629955416656087, 0.13245134180521367],\n", + " [0.066507090749774359,\n", + " 0.13652559238472609,\n", + " 0.13652559238472609,\n", + " 0.13629955416656087],\n", + " [0.0, 0.15095084130271305, 0.15095084130271305, 0.13652559238472609],\n", + " [0.0, 0.15386943010879103, 0.15386943010879103, 0.15095084130271305],\n", + " [0.13677144877860162,\n", + " 0.15697378530507267,\n", + " 0.15697378530507267,\n", + " 0.15386943010879103],\n", + " [0.14043187334078042,\n", + " 0.16127815342444904,\n", + " 0.16127815342444904,\n", + " 0.15697378530507267],\n", + " [0.049348178862036476,\n", + " 0.16454342722819015,\n", + " 0.16454342722819015,\n", + " 0.16127815342444904],\n", + " [0.0, 0.17254602758684731, 0.17254602758684731, 0.16454342722819015],\n", + " [0.0, 0.17460068280507615, 0.17460068280507615, 0.17254602758684731],\n", + " [0.14959511724986499,\n", + " 0.19469206983336104,\n", + " 0.19469206983336104,\n", + " 0.17460068280507615],\n", + " [0.0, 0.20531797725966874, 0.20531797725966874, 0.19469206983336104],\n", + " [0.20121886723168816,\n", + " 0.20959430748471852,\n", + " 0.20959430748471852,\n", + " 0.20531797725966874],\n", + " [0.0, 0.2108767225134234, 0.2108767225134234, 0.20959430748471852],\n", + " [0.19981333373425841,\n", + " 0.22751804313722743,\n", + " 0.22751804313722743,\n", + " 0.2108767225134234],\n", + " [0.0, 0.24039510737533906, 0.24039510737533906, 0.22751804313722743],\n", + " [0.0, 0.24946561416956989, 0.24946561416956989, 0.24039510737533906],\n", + " [0.23550661681787541,\n", + " 0.25783676403879591,\n", + " 0.25783676403879591,\n", + " 0.24946561416956989],\n", + " [0.020106456699274241,\n", + " 0.30076594157750691,\n", + " 0.30076594157750691,\n", + " 0.25783676403879591],\n", + " [0.0, 0.34493409663441477, 0.34493409663441477, 0.30076594157750691],\n", + " [0.17180076704427436,\n", + " 0.3613255714518312,\n", + " 0.3613255714518312,\n", + " 0.34493409663441477],\n", + " [0.0, 0.36281042197408714, 0.36281042197408714, 0.3613255714518312],\n", + " [0.34687298302693015,\n", + " 0.48246802527111676,\n", + " 0.48246802527111676,\n", + " 0.36281042197408714],\n", + " [0.0, 0.48308492094558325, 0.48308492094558325, 0.48246802527111676],\n", + " [0.0, 0.58910361981318693, 0.58910361981318693, 0.48308492094558325],\n", + " [0.54282733990283816,\n", + " 0.59244134173772833,\n", + " 0.59244134173772833,\n", + " 0.58910361981318693],\n", + " [0.58361241921843809,\n", + " 0.61495342846836987,\n", + " 0.61495342846836987,\n", + " 0.59244134173772833],\n", + " [0.20832830392914825,\n", + " 0.69992089603897245,\n", + " 0.69992089603897245,\n", + " 0.61495342846836987],\n", + " [0.0, 0.75378691827929678, 0.75378691827929678, 0.69992089603897245],\n", + " [0.68737633742950621,\n", + " 0.85430122020865618,\n", + " 0.85430122020865618,\n", + " 0.75378691827929678],\n", + " [0.0, 0.042023140827410196, 0.042023140827410196, 0.0],\n", + " [0.0, 0.15932293929626154, 0.15932293929626154, 0.0],\n", + " [0.042023140827410196,\n", + " 0.21766038212086505,\n", + " 0.21766038212086505,\n", + " 0.15932293929626154],\n", + " [0.0, 0.13133931793640435, 0.13133931793640435, 0.0],\n", + " [0.0, 0.29172392523411683, 0.29172392523411683, 0.13133931793640435],\n", + " [0.0, 0.40929711956596387, 0.40929711956596387, 0.29172392523411683],\n", + " [0.21766038212086505,\n", + " 0.86998025137643531,\n", + " 0.86998025137643531,\n", + " 0.40929711956596387],\n", + " [0.85430122020865618,\n", + " 0.9142936765142966,\n", + " 0.9142936765142966,\n", + " 0.86998025137643531],\n", + " [0.0, 0.044857776193196537, 0.044857776193196537, 0.0],\n", + " [0.0, 0.26880538606396615, 0.26880538606396615, 0.044857776193196537],\n", + " [0.0, 0.39230453352591782, 0.39230453352591782, 0.0],\n", + " [0.26880538606396615,\n", + " 0.41907548995378552,\n", + " 0.41907548995378552,\n", + " 0.39230453352591782],\n", + " [0.0, 0.93354286767400008, 0.93354286767400008, 0.41907548995378552],\n", + " [0.9142936765142966,\n", + " 0.9353851077251425,\n", + " 0.9353851077251425,\n", + " 0.93354286767400008],\n", + " [0.8973537547478202,\n", + " 1.0034151482815983,\n", + " 1.0034151482815983,\n", + " 0.9353851077251425],\n", + " [0.0, 1.1600974917350628, 1.1600974917350628, 1.0034151482815983],\n", + " [0.69897950780334228,\n", + " 1.3652687976003031,\n", + " 1.3652687976003031,\n", + " 1.1600974917350628],\n", + " [0.81267704712327438,\n", + " 1.4128696483065686,\n", + " 1.4128696483065686,\n", + " 1.3652687976003031],\n", + " [0.71142520708294088,\n", + " 1.5419587655861655,\n", + " 1.5419587655861655,\n", + " 1.4128696483065686],\n", + " [0.0, 2.4131301186707561, 2.4131301186707561, 0.0],\n", + " [1.5419587655861655,\n", + " 2.4419968518130983,\n", + " 2.4419968518130983,\n", + " 2.4131301186707561],\n", + " [0.0, 2.7006547332130433, 2.7006547332130433, 2.4419968518130983],\n", + " [0.0, 2.8047954181954138, 2.8047954181954138, 2.7006547332130433],\n", + " [0.0, 3.1285245157308621, 3.1285245157308621, 2.8047954181954138],\n", + " [0.0, 4.3725094114435077, 4.3725094114435077, 3.1285245157308621],\n", + " [0.0, 0.063030961733102825, 0.063030961733102825, 0.0],\n", + " [0.0, 0.038131460305110249, 0.038131460305110249, 0.0],\n", + " [0.0, 0.042135372313533134, 0.042135372313533134, 0.038131460305110249],\n", + " [0.0, 0.048313019632391409, 0.048313019632391409, 0.042135372313533134],\n", + " [0.0, 0.024675691398624328, 0.024675691398624328, 0.0],\n", + " [0.0, 0.055129324365528594, 0.055129324365528594, 0.024675691398624328],\n", + " [0.048313019632391409,\n", + " 0.060495191544450676,\n", + " 0.060495191544450676,\n", + " 0.055129324365528594],\n", + " [0.0, 0.087711661801609109, 0.087711661801609109, 0.060495191544450676],\n", + " [0.0, 0.10447645283507963, 0.10447645283507963, 0.087711661801609109],\n", + " [0.0, 0.10076601413175348, 0.10076601413175348, 0.0],\n", + " [0.0, 0.017738729633203536, 0.017738729633203536, 0.0],\n", + " [0.0, 0.02573997241645793, 0.02573997241645793, 0.017738729633203536],\n", + " [0.0, 0.026469395535222717, 0.026469395535222717, 0.0],\n", + " [0.0, 0.036663044131659842, 0.036663044131659842, 0.0],\n", + " [0.026469395535222717,\n", + " 0.036871851079106323,\n", + " 0.036871851079106323,\n", + " 0.036663044131659842],\n", + " [0.0, 0.067017921759778623, 0.067017921759778623, 0.036871851079106323],\n", + " [0.02573997241645793,\n", + " 0.12897058806177739,\n", + " 0.12897058806177739,\n", + " 0.067017921759778623],\n", + " [0.10076601413175348,\n", + " 0.2240265247197312,\n", + " 0.2240265247197312,\n", + " 0.12897058806177739],\n", + " [0.10447645283507963,\n", + " 0.34097530234461204,\n", + " 0.34097530234461204,\n", + " 0.2240265247197312],\n", + " [0.063030961733102825,\n", + " 0.835032222135769,\n", + " 0.835032222135769,\n", + " 0.34097530234461204],\n", + " [0.0, 0.31975710624941311, 0.31975710624941311, 0.0],\n", + " [0.0, 0.018916667069015458, 0.018916667069015458, 0.0],\n", + " [0.0, 0.025353803541084591, 0.025353803541084591, 0.0],\n", + " [0.0, 0.029306934213594694, 0.029306934213594694, 0.025353803541084591],\n", + " [0.0, 0.022859181131441877, 0.022859181131441877, 0.0],\n", + " [0.0, 0.013150132546860243, 0.013150132546860243, 0.0],\n", + " [0.0, 0.019637404232737316, 0.019637404232737316, 0.013150132546860243],\n", + " [0.0, 0.032365678426385096, 0.032365678426385096, 0.019637404232737316],\n", + " [0.022859181131441877,\n", + " 0.03561083578069945,\n", + " 0.03561083578069945,\n", + " 0.032365678426385096],\n", + " [0.029306934213594694,\n", + " 0.040911226454359531,\n", + " 0.040911226454359531,\n", + " 0.03561083578069945],\n", + " [0.0, 0.054058047920727118, 0.054058047920727118, 0.040911226454359531],\n", + " [0.018916667069015458,\n", + " 0.06969365977619732,\n", + " 0.06969365977619732,\n", + " 0.054058047920727118],\n", + " [0.0, 0.052574719599823024, 0.052574719599823024, 0.0],\n", + " [0.0, 0.059506117500637119, 0.059506117500637119, 0.052574719599823024],\n", + " [0.0, 0.062074100380109805, 0.062074100380109805, 0.059506117500637119],\n", + " [0.0, 0.064996037186888747, 0.064996037186888747, 0.0],\n", + " [0.062074100380109805,\n", + " 0.09105624383313847,\n", + " 0.09105624383313847,\n", + " 0.064996037186888747],\n", + " [0.0, 0.0042730229346457848, 0.0042730229346457848, 0.0],\n", + " [0.0, 0.0045349355011969931, 0.0045349355011969931, 0.0042730229346457848],\n", + " [0.0, 0.0011740229980711607, 0.0011740229980711607, 0.0],\n", + " [0.0, 0.002675899288090363, 0.002675899288090363, 0.0011740229980711607],\n", + " [0.0, 0.0034711594604689647, 0.0034711594604689647, 0.0],\n", + " [0.002675899288090363,\n", + " 0.0047647339904760937,\n", + " 0.0047647339904760937,\n", + " 0.0034711594604689647],\n", + " [0.0, 0.0048711913327214706, 0.0048711913327214706, 0.0047647339904760937],\n", + " [0.0, 0.0058304327455192097, 0.0058304327455192097, 0.0048711913327214706],\n", + " [0.0045349355011969931,\n", + " 0.0067416262133117161,\n", + " 0.0067416262133117161,\n", + " 0.0058304327455192097],\n", + " [0.0, 0.013143705717947091, 0.013143705717947091, 0.0067416262133117161],\n", + " [0.0, 0.014506452943433926, 0.014506452943433926, 0.013143705717947091],\n", + " [0.0, 0.014720343813918017, 0.014720343813918017, 0.014506452943433926],\n", + " [0.0, 0.0076818812799946045, 0.0076818812799946045, 0.0],\n", + " [0.0, 0.011179693063768276, 0.011179693063768276, 0.0076818812799946045],\n", + " [0.0, 0.0070076084365486213, 0.0070076084365486213, 0.0],\n", + " [0.0, 0.0077155461893525148, 0.0077155461893525148, 0.0070076084365486213],\n", + " [0.0, 0.011061529234246052, 0.011061529234246052, 0.0077155461893525148],\n", + " [0.0, 0.014194392132103974, 0.014194392132103974, 0.011061529234246052],\n", + " [0.011179693063768276,\n", + " 0.015179853820112842,\n", + " 0.015179853820112842,\n", + " 0.014194392132103974],\n", + " [0.014720343813918017,\n", + " 0.020930380072995677,\n", + " 0.020930380072995677,\n", + " 0.015179853820112842],\n", + " [0.0, 0.023783414746416025, 0.023783414746416025, 0.020930380072995677],\n", + " [0.0, 0.027682855235686182, 0.027682855235686182, 0.023783414746416025],\n", + " [0.0, 0.028264730000478668, 0.028264730000478668, 0.027682855235686182],\n", + " [0.0, 0.029969554217571498, 0.029969554217571498, 0.028264730000478668],\n", + " [0.0, 0.013539744347661097, 0.013539744347661097, 0.0],\n", + " [0.0, 0.003165741777214179, 0.003165741777214179, 0.0],\n", + " [0.0, 0.0059563619769112649, 0.0059563619769112649, 0.0],\n", + " [0.003165741777214179,\n", + " 0.0064697809854744456,\n", + " 0.0064697809854744456,\n", + " 0.0059563619769112649],\n", + " [0.0, 0.014420051733609761, 0.014420051733609761, 0.0064697809854744456],\n", + " [0.0, 0.015478868337186213, 0.015478868337186213, 0.014420051733609761],\n", + " [0.013539744347661097,\n", + " 0.020982022423972228,\n", + " 0.020982022423972228,\n", + " 0.015478868337186213],\n", + " [0.0, 0.027878442657364083, 0.027878442657364083, 0.0],\n", + " [0.020982022423972228,\n", + " 0.034887794914552045,\n", + " 0.034887794914552045,\n", + " 0.027878442657364083],\n", + " [0.0, 0.037017641010741106, 0.037017641010741106, 0.034887794914552045],\n", + " [0.029969554217571498,\n", + " 0.040189486436131086,\n", + " 0.040189486436131086,\n", + " 0.037017641010741106],\n", + " [0.0, 0.049236536403369953, 0.049236536403369953, 0.040189486436131086],\n", + " [0.0, 0.028168664327581059, 0.028168664327581059, 0.0],\n", + " [0.0, 0.048946432209098313, 0.048946432209098313, 0.028168664327581059],\n", + " [0.0, 0.052517601811202359, 0.052517601811202359, 0.048946432209098313],\n", + " [0.049236536403369953,\n", + " 0.085083675902020012,\n", + " 0.085083675902020012,\n", + " 0.052517601811202359],\n", + " [0.0, 0.0052954775044343431, 0.0052954775044343431, 0.0],\n", + " [0.0, 0.0060312012899588398, 0.0060312012899588398, 0.0],\n", + " [0.0, 0.018149390099946681, 0.018149390099946681, 0.0],\n", + " [0.0, 0.0044886952447233857, 0.0044886952447233857, 0.0],\n", + " [0.0, 0.0046389492344732705, 0.0046389492344732705, 0.0044886952447233857],\n", + " [0.0, 0.0047475157714315054, 0.0047475157714315054, 0.0046389492344732705],\n", + " [0.0, 0.0088270589099660717, 0.0088270589099660717, 0.0047475157714315054],\n", + " [0.0, 0.011056615485761267, 0.011056615485761267, 0.0088270589099660717],\n", + " [0.0, 0.014541799785447328, 0.014541799785447328, 0.011056615485761267],\n", + " [0.0, 0.018202622585770101, 0.018202622585770101, 0.0],\n", + " [0.014541799785447328,\n", + " 0.018862869612016803,\n", + " 0.018862869612016803,\n", + " 0.018202622585770101],\n", + " [0.018149390099946681,\n", + " 0.022282108069029877,\n", + " 0.022282108069029877,\n", + " 0.018862869612016803],\n", + " [0.0060312012899588398,\n", + " 0.023295122965976994,\n", + " 0.023295122965976994,\n", + " 0.022282108069029877],\n", + " [0.0052954775044343431,\n", + " 0.024152765990666944,\n", + " 0.024152765990666944,\n", + " 0.023295122965976994],\n", + " [0.0, 0.033926039040834535, 0.033926039040834535, 0.024152765990666944],\n", + " [0.0, 0.012613642971004412, 0.012613642971004412, 0.0],\n", + " [0.0, 0.023545021087269729, 0.023545021087269729, 0.012613642971004412],\n", + " [0.0, 0.0046362339242140005, 0.0046362339242140005, 0.0],\n", + " [0.0, 0.012239654406887642, 0.012239654406887642, 0.0046362339242140005],\n", + " [0.0, 0.022337662590341523, 0.022337662590341523, 0.012239654406887642],\n", + " [0.0, 0.02558678662903947, 0.02558678662903947, 0.022337662590341523],\n", + " [0.0, 0.032550808438499654, 0.032550808438499654, 0.02558678662903947],\n", + " [0.023545021087269729,\n", + " 0.034770221885976831,\n", + " 0.034770221885976831,\n", + " 0.032550808438499654],\n", + " [0.033926039040834535,\n", + " 0.036156795654483417,\n", + " 0.036156795654483417,\n", + " 0.034770221885976831],\n", + " [0.0, 0.024030875556248481, 0.024030875556248481, 0.0],\n", + " [0.0, 0.019772699486922899, 0.019772699486922899, 0.0],\n", + " [0.0, 0.025789709595102295, 0.025789709595102295, 0.019772699486922899],\n", + " [0.0, 0.020040412296158033, 0.020040412296158033, 0.0],\n", + " [0.0, 0.022625403620706017, 0.022625403620706017, 0.0],\n", + " [0.0, 0.0032566860456573203, 0.0032566860456573203, 0.0],\n", + " [0.0, 0.006646174538784134, 0.006646174538784134, 0.0],\n", + " [0.0, 0.0038941843818645389, 0.0038941843818645389, 0.0],\n", + " [0.0, 0.008938300957120629, 0.008938300957120629, 0.0038941843818645389],\n", + " [0.0, 0.013168957323949066, 0.013168957323949066, 0.008938300957120629],\n", + " [0.006646174538784134,\n", + " 0.014340231588090668,\n", + " 0.014340231588090668,\n", + " 0.013168957323949066],\n", + " [0.0032566860456573203,\n", + " 0.015020982990474975,\n", + " 0.015020982990474975,\n", + " 0.014340231588090668],\n", + " [0.0, 0.0051050991175468673, 0.0051050991175468673, 0.0],\n", + " [0.0, 0.011436965025740486, 0.011436965025740486, 0.0051050991175468673],\n", + " [0.0, 0.018808141907164191, 0.018808141907164191, 0.011436965025740486],\n", + " [0.0, 0.019014719193299612, 0.019014719193299612, 0.018808141907164191],\n", + " [0.0, 0.021849739700966948, 0.021849739700966948, 0.019014719193299612],\n", + " [0.015020982990474975,\n", + " 0.021954474737511206,\n", + " 0.021954474737511206,\n", + " 0.021849739700966948],\n", + " [0.0, 0.0053398683504352765, 0.0053398683504352765, 0.0],\n", + " [0.0, 0.0098222983562929814, 0.0098222983562929814, 0.0053398683504352765],\n", + " [0.0, 0.015244300738310313, 0.015244300738310313, 0.0098222983562929814],\n", + " [0.0, 0.013573658349906516, 0.013573658349906516, 0.0],\n", + " [0.0, 0.0097813874271491987, 0.0097813874271491987, 0.0],\n", + " [0.0, 0.010031335554151042, 0.010031335554151042, 0.0],\n", + " [0.0097813874271491987,\n", + " 0.016699318608857334,\n", + " 0.016699318608857334,\n", + " 0.010031335554151042],\n", + " [0.0, 0.00075365575695506785, 0.00075365575695506785, 0.0],\n", + " [0.0, 0.0051095911773845846, 0.0051095911773845846, 0.0],\n", + " [0.0, 0.0091829440268384292, 0.0091829440268384292, 0.0051095911773845846],\n", + " [0.0, 0.0048811148316761357, 0.0048811148316761357, 0.0],\n", + " [0.0, 0.0046754032981107885, 0.0046754032981107885, 0.0],\n", + " [0.0, 0.0050136458790002942, 0.0050136458790002942, 0.0046754032981107885],\n", + " [0.0, 0.0063875073385496915, 0.0063875073385496915, 0.0050136458790002942],\n", + " [0.0, 0.0070993059519933403, 0.0070993059519933403, 0.0063875073385496915],\n", + " [0.0, 0.0077283760907438581, 0.0077283760907438581, 0.0070993059519933403],\n", + " [0.0, 0.0080075617387561741, 0.0080075617387561741, 0.0077283760907438581],\n", + " [0.0, 0.0099468449771769676, 0.0099468449771769676, 0.0080075617387561741],\n", + " [0.0048811148316761357,\n", + " 0.011924750773078977,\n", + " 0.011924750773078977,\n", + " 0.0099468449771769676],\n", + " [0.0091829440268384292,\n", + " 0.011962894507602058,\n", + " 0.011962894507602058,\n", + " 0.011924750773078977],\n", + " [0.0, 0.012611240898499208, 0.012611240898499208, 0.011962894507602058],\n", + " [0.00075365575695506785,\n", + " 0.01376824876300633,\n", + " 0.01376824876300633,\n", + " 0.012611240898499208],\n", + " [0.0, 0.017214438881357715, 0.017214438881357715, 0.01376824876300633],\n", + " [0.016699318608857334,\n", + " 0.017327232006294945,\n", + " 0.017327232006294945,\n", + " 0.017214438881357715],\n", + " [0.013573658349906516,\n", + " 0.020238797839796242,\n", + " 0.020238797839796242,\n", + " 0.017327232006294945],\n", + " [0.015244300738310313,\n", + " 0.021602112350417257,\n", + " 0.021602112350417257,\n", + " 0.020238797839796242],\n", + " [0.0, 0.022432704919381024, 0.022432704919381024, 0.021602112350417257],\n", + " [0.021954474737511206,\n", + " 0.023078995320422156,\n", + " 0.023078995320422156,\n", + " 0.022432704919381024],\n", + " [0.0, 0.023375387847048765, 0.023375387847048765, 0.023078995320422156],\n", + " [0.022625403620706017,\n", + " 0.025456268717157574,\n", + " 0.025456268717157574,\n", + " 0.023375387847048765],\n", + " [0.0, 0.025509151338292842, 0.025509151338292842, 0.025456268717157574],\n", + " [0.020040412296158033,\n", + " 0.027304204309957468,\n", + " 0.027304204309957468,\n", + " 0.025509151338292842],\n", + " [0.0, 0.028138312671517906, 0.028138312671517906, 0.027304204309957468],\n", + " [0.025789709595102295,\n", + " 0.029716085559844133,\n", + " 0.029716085559844133,\n", + " 0.028138312671517906],\n", + " [0.024030875556248481,\n", + " 0.034130906228813367,\n", + " 0.034130906228813367,\n", + " 0.029716085559844133],\n", + " [0.0, 0.038447930945632904, 0.038447930945632904, 0.034130906228813367],\n", + " [0.0, 0.054895990063030246, 0.054895990063030246, 0.038447930945632904],\n", + " [0.0, 0.035649035400695271, 0.035649035400695271, 0.0],\n", + " [0.0, 0.057274761291517942, 0.057274761291517942, 0.035649035400695271],\n", + " [0.054895990063030246,\n", + " 0.061960015695607308,\n", + " 0.061960015695607308,\n", + " 0.057274761291517942],\n", + " [0.0, 0.039433081974402484, 0.039433081974402484, 0.0],\n", + " [0.0, 0.064259212607996219, 0.064259212607996219, 0.039433081974402484],\n", + " [0.061960015695607308,\n", + " 0.066250870613151588,\n", + " 0.066250870613151588,\n", + " 0.064259212607996219],\n", + " [0.036156795654483417,\n", + " 0.073936339170936879,\n", + " 0.073936339170936879,\n", + " 0.066250870613151588],\n", + " [0.0, 0.086800820791053557, 0.086800820791053557, 0.073936339170936879],\n", + " [0.085083675902020012,\n", + " 0.093041924813493798,\n", + " 0.093041924813493798,\n", + " 0.086800820791053557],\n", + " [0.09105624383313847,\n", + " 0.24660045835520966,\n", + " 0.24660045835520966,\n", + " 0.093041924813493798],\n", + " [0.0, 0.0081486583558312859, 0.0081486583558312859, 0.0],\n", + " [0.0, 0.12190062733226319, 0.12190062733226319, 0.0081486583558312859],\n", + " [0.0, 0.049348181445722901, 0.049348181445722901, 0.0],\n", + " [0.0, 0.055073572437241328, 0.055073572437241328, 0.0],\n", + " [0.0, 0.010409502197506228, 0.010409502197506228, 0.0],\n", + " [0.0, 0.011527685023458963, 0.011527685023458963, 0.010409502197506228],\n", + " [0.0, 0.023110772315087451, 0.023110772315087451, 0.011527685023458963],\n", + " [0.0, 0.0076437993170943826, 0.0076437993170943826, 0.0],\n", + " [0.0, 0.012564878749913801, 0.012564878749913801, 0.0],\n", + " [0.0076437993170943826,\n", + " 0.013685820472297718,\n", + " 0.013685820472297718,\n", + " 0.012564878749913801],\n", + " [0.0, 0.016588366525969941, 0.016588366525969941, 0.013685820472297718],\n", + " [0.0, 0.023363982708434799, 0.023363982708434799, 0.016588366525969941],\n", + " [0.023110772315087451,\n", + " 0.026479014218809428,\n", + " 0.026479014218809428,\n", + " 0.023363982708434799],\n", + " [0.0, 0.025590961920174921, 0.025590961920174921, 0.0],\n", + " [0.0, 0.0094752469624766293, 0.0094752469624766293, 0.0],\n", + " [0.0, 0.011433089040147745, 0.011433089040147745, 0.0],\n", + " [0.0094752469624766293,\n", + " 0.0153561395213761,\n", + " 0.0153561395213761,\n", + " 0.011433089040147745],\n", + " [0.0, 0.0092668778453151631, 0.0092668778453151631, 0.0],\n", + " [0.0, 0.0098933488768942167, 0.0098933488768942167, 0.0092668778453151631],\n", + " [0.0, 0.01135804604674881, 0.01135804604674881, 0.0098933488768942167],\n", + " [0.0, 0.016343930647186245, 0.016343930647186245, 0.01135804604674881],\n", + " [0.0, 0.021700551997586883, 0.021700551997586883, 0.016343930647186245],\n", + " [0.0153561395213761,\n", + " 0.022296078601405447,\n", + " 0.022296078601405447,\n", + " 0.021700551997586883],\n", + " [0.0, 0.023872238102034066, 0.023872238102034066, 0.0],\n", + " [0.022296078601405447,\n", + " 0.026879561026921229,\n", + " 0.026879561026921229,\n", + " 0.023872238102034066],\n", + " [0.025590961920174921,\n", + " 0.02944272066232877,\n", + " 0.02944272066232877,\n", + " 0.026879561026921229],\n", + " [0.026479014218809428,\n", + " 0.034664475014057956,\n", + " 0.034664475014057956,\n", + " 0.02944272066232877],\n", + " [0.0, 0.035624178867733308, 0.035624178867733308, 0.034664475014057956],\n", + " [0.0, 0.038596637496030289, 0.038596637496030289, 0.035624178867733308],\n", + " [0.0, 0.034591984418357459, 0.034591984418357459, 0.0],\n", + " [0.0, 0.027335635533130353, 0.027335635533130353, 0.0],\n", + " [0.0, 0.01278652806668026, 0.01278652806668026, 0.0],\n", + " [0.0, 0.019184654284089525, 0.019184654284089525, 0.01278652806668026],\n", + " [0.0, 0.019655557407514092, 0.019655557407514092, 0.019184654284089525],\n", + " [0.0, 0.0062363214317422344, 0.0062363214317422344, 0.0],\n", + " [0.0, 0.01007990322373699, 0.01007990322373699, 0.0062363214317422344],\n", + " [0.0, 0.020257881626668913, 0.020257881626668913, 0.01007990322373699],\n", + " [0.0, 0.025105464743756335, 0.025105464743756335, 0.020257881626668913],\n", + " [0.019655557407514092,\n", + " 0.025410854137555294,\n", + " 0.025410854137555294,\n", + " 0.025105464743756335],\n", + " [0.0, 0.01253748607177551, 0.01253748607177551, 0.0],\n", + " [0.0, 0.0031900222569738955, 0.0031900222569738955, 0.0],\n", + " [0.0, 0.005437790452012657, 0.005437790452012657, 0.0],\n", + " [0.0, 0.0049398552610330658, 0.0049398552610330658, 0.0],\n", + " [0.0, 0.0051527503335615727, 0.0051527503335615727, 0.0],\n", + " [0.0, 0.0078141656624375177, 0.0078141656624375177, 0.0],\n", + " [0.0051527503335615727,\n", + " 0.0082106801788906728,\n", + " 0.0082106801788906728,\n", + " 0.0078141656624375177],\n", + " [0.0, 0.008721855880487045, 0.008721855880487045, 0.0082106801788906728],\n", + " [0.0, 0.010704138358599, 0.010704138358599, 0.0],\n", + " [0.008721855880487045,\n", + " 0.011417178810892104,\n", + " 0.011417178810892104,\n", + " 0.010704138358599],\n", + " [0.0049398552610330658,\n", + " 0.012684672837721313,\n", + " 0.012684672837721313,\n", + " 0.011417178810892104],\n", + " [0.0, 0.013477439074244155, 0.013477439074244155, 0.012684672837721313],\n", + " [0.005437790452012657,\n", + " 0.014909073378316092,\n", + " 0.014909073378316092,\n", + " 0.013477439074244155],\n", + " [0.0, 0.0176974907260894, 0.0176974907260894, 0.014909073378316092],\n", + " [0.0, 0.018411759828979708, 0.018411759828979708, 0.0176974907260894],\n", + " [0.0031900222569738955,\n", + " 0.019978757443845148,\n", + " 0.019978757443845148,\n", + " 0.018411759828979708],\n", + " [0.01253748607177551,\n", + " 0.02551917782766687,\n", + " 0.02551917782766687,\n", + " 0.019978757443845148],\n", + " [0.025410854137555294,\n", + " 0.026860448786274308,\n", + " 0.026860448786274308,\n", + " 0.02551917782766687],\n", + " [0.0, 0.012726267520371868, 0.012726267520371868, 0.0],\n", + " [0.0, 0.021713716402310398, 0.021713716402310398, 0.012726267520371868],\n", + " [0.0, 0.032318429989716083, 0.032318429989716083, 0.021713716402310398],\n", + " [0.026860448786274308,\n", + " 0.033831832421552396,\n", + " 0.033831832421552396,\n", + " 0.032318429989716083],\n", + " [0.0, 0.036007502343262929, 0.036007502343262929, 0.033831832421552396],\n", + " [0.0, 0.0048531377478874616, 0.0048531377478874616, 0.0],\n", + " [0.0, 0.005841397949120317, 0.005841397949120317, 0.0],\n", + " [0.0, 0.0068610459843974885, 0.0068610459843974885, 0.005841397949120317],\n", + " [0.0, 0.02010442908913317, 0.02010442908913317, 0.0068610459843974885],\n", + " [0.0, 0.028297589314283583, 0.028297589314283583, 0.02010442908913317],\n", + " [0.0, 0.0043190546419351866, 0.0043190546419351866, 0.0],\n", + " [0.0, 0.011401308696808317, 0.011401308696808317, 0.0043190546419351866],\n", + " [0.0, 0.024374599894150296, 0.024374599894150296, 0.0],\n", + " [0.011401308696808317,\n", + " 0.026311416989586781,\n", + " 0.026311416989586781,\n", + " 0.024374599894150296],\n", + " [0.0, 0.029341494934649628, 0.029341494934649628, 0.026311416989586781],\n", + " [0.028297589314283583,\n", + " 0.032653926961393097,\n", + " 0.032653926961393097,\n", + " 0.029341494934649628],\n", + " [0.0048531377478874616,\n", + " 0.032926602618550072,\n", + " 0.032926602618550072,\n", + " 0.032653926961393097],\n", + " [0.0, 0.023814472175548763, 0.023814472175548763, 0.0],\n", + " [0.0, 0.035127802806326727, 0.035127802806326727, 0.023814472175548763],\n", + " [0.032926602618550072,\n", + " 0.036366916641367104,\n", + " 0.036366916641367104,\n", + " 0.035127802806326727],\n", + " [0.036007502343262929,\n", + " 0.037793581743467905,\n", + " 0.037793581743467905,\n", + " 0.036366916641367104],\n", + " [0.027335635533130353,\n", + " 0.041694453887773195,\n", + " 0.041694453887773195,\n", + " 0.037793581743467905],\n", + " [0.0, 0.043891861045072679, 0.043891861045072679, 0.041694453887773195],\n", + " [0.034591984418357459,\n", + " 0.044042754148672168,\n", + " 0.044042754148672168,\n", + " 0.043891861045072679],\n", + " [0.038596637496030289,\n", + " 0.045700920450248678,\n", + " 0.045700920450248678,\n", + " 0.044042754148672168],\n", + " [0.0, 0.045898864746312398, 0.045898864746312398, 0.045700920450248678],\n", + " [0.0, 0.046959095391630873, 0.046959095391630873, 0.045898864746312398],\n", + " [0.0, 0.066294241295906192, 0.066294241295906192, 0.046959095391630873],\n", + " [0.055073572437241328,\n", + " 0.082337337271738587,\n", + " 0.082337337271738587,\n", + " 0.066294241295906192],\n", + " [0.0, 0.083179596206043593, 0.083179596206043593, 0.082337337271738587],\n", + " [0.0, 0.090935674853160675, 0.090935674853160675, 0.083179596206043593],\n", + " [0.0, 0.091235253230318433, 0.091235253230318433, 0.090935674853160675],\n", + " [0.049348181445722901,\n", + " 0.095480446636993607,\n", + " 0.095480446636993607,\n", + " 0.091235253230318433],\n", + " [0.0, 0.085581493472596554, 0.085581493472596554, 0.0],\n", + " [0.0, 0.11357092193426943, 0.11357092193426943, 0.085581493472596554],\n", + " [0.095480446636993607,\n", + " 0.12175321185496389,\n", + " 0.12175321185496389,\n", + " 0.11357092193426943],\n", + " [0.0, 0.12563268087563847, 0.12563268087563847, 0.12175321185496389],\n", + " [0.12190062733226319,\n", + " 0.12604821256963281,\n", + " 0.12604821256963281,\n", + " 0.12563268087563847],\n", + " [0.0, 0.031324323711773294, 0.031324323711773294, 0.0],\n", + " [0.0, 0.043285747966276357, 0.043285747966276357, 0.031324323711773294],\n", + " [0.0, 0.47825892879903786, 0.47825892879903786, 0.043285747966276357],\n", + " [0.0, 0.0040926170111554696, 0.0040926170111554696, 0.0],\n", + " [0.0, 0.012216766920915374, 0.012216766920915374, 0.0],\n", + " [0.0, 0.011348982905970199, 0.011348982905970199, 0.0],\n", + " [0.0, 0.0021186245538075323, 0.0021186245538075323, 0.0],\n", + " [0.0, 0.017784494285755681, 0.017784494285755681, 0.0021186245538075323],\n", + " [0.011348982905970199,\n", + " 0.020552522862173201,\n", + " 0.020552522862173201,\n", + " 0.017784494285755681],\n", + " [0.0, 0.0058002875790790455, 0.0058002875790790455, 0.0],\n", + " [0.0, 0.0034492736916614253, 0.0034492736916614253, 0.0],\n", + " [0.0, 0.0083202608733163146, 0.0083202608733163146, 0.0034492736916614253],\n", + " [0.0, 0.014158415871842907, 0.014158415871842907, 0.0083202608733163146],\n", + " [0.0058002875790790455,\n", + " 0.018037350692379286,\n", + " 0.018037350692379286,\n", + " 0.014158415871842907],\n", + " [0.0, 0.018375769072340661, 0.018375769072340661, 0.018037350692379286],\n", + " [0.0, 0.0075266487230342934, 0.0075266487230342934, 0.0],\n", + " [0.0, 0.018691796516118589, 0.018691796516118589, 0.0075266487230342934],\n", + " [0.018375769072340661,\n", + " 0.020418699321947047,\n", + " 0.020418699321947047,\n", + " 0.018691796516118589],\n", + " [0.0, 0.0013132562583144482, 0.0013132562583144482, 0.0],\n", + " [0.0, 0.0016457633487238802, 0.0016457633487238802, 0.0],\n", + " [0.0, 0.0053556696126633727, 0.0053556696126633727, 0.0016457633487238802],\n", + " [0.0, 0.0077603222226917063, 0.0077603222226917063, 0.0053556696126633727],\n", + " [0.0, 0.0084602340984158211, 0.0084602340984158211, 0.0077603222226917063],\n", + " [0.0, 0.0097469200263446479, 0.0097469200263446479, 0.0084602340984158211],\n", + " [0.0, 0.015506481257847156, 0.015506481257847156, 0.0097469200263446479],\n", + " [0.0013132562583144482,\n", + " 0.015918461766137891,\n", + " 0.015918461766137891,\n", + " 0.015506481257847156],\n", + " [0.0, 0.019608438923075278, 0.019608438923075278, 0.0],\n", + " [0.0, 0.0059287781203216355, 0.0059287781203216355, 0.0],\n", + " [0.0, 0.0090570163409397515, 0.0090570163409397515, 0.0059287781203216355],\n", + " [0.0, 0.0090387394032560749, 0.0090387394032560749, 0.0],\n", + " [0.0, 0.0018684220615269847, 0.0018684220615269847, 0.0],\n", + " [0.0, 0.0045621894962838269, 0.0045621894962838269, 0.0018684220615269847],\n", + " [0.0, 0.0086574826017748931, 0.0086574826017748931, 0.0045621894962838269],\n", + " [0.0, 0.010149394513961659, 0.010149394513961659, 0.0086574826017748931],\n", + " [0.0, 0.011618349495517353, 0.011618349495517353, 0.0],\n", + " [0.0, 0.011815224627572073, 0.011815224627572073, 0.011618349495517353],\n", + " [0.010149394513961659,\n", + " 0.011838115137132288,\n", + " 0.011838115137132288,\n", + " 0.011815224627572073],\n", + " [0.0, 0.011854846308578049, 0.011854846308578049, 0.011838115137132288],\n", + " [0.0, 0.012407002579186808, 0.012407002579186808, 0.011854846308578049],\n", + " [0.0, 0.015198996052373612, 0.015198996052373612, 0.012407002579186808],\n", + " [0.0090387394032560749,\n", + " 0.016416007096732257,\n", + " 0.016416007096732257,\n", + " 0.015198996052373612],\n", + " [0.0090570163409397515,\n", + " 0.020946885066757515,\n", + " 0.020946885066757515,\n", + " 0.016416007096732257],\n", + " [0.019608438923075278,\n", + " 0.021001981097028367,\n", + " 0.021001981097028367,\n", + " 0.020946885066757515],\n", + " [0.015918461766137891,\n", + " 0.021258130350525092,\n", + " 0.021258130350525092,\n", + " 0.021001981097028367],\n", + " [0.0, 0.022690524762553291, 0.022690524762553291, 0.021258130350525092],\n", + " [0.020418699321947047,\n", + " 0.023179161071962811,\n", + " 0.023179161071962811,\n", + " 0.022690524762553291],\n", + " [0.0, 0.025876808033448218, 0.025876808033448218, 0.023179161071962811],\n", + " [0.020552522862173201,\n", + " 0.026147583788948901,\n", + " 0.026147583788948901,\n", + " 0.025876808033448218],\n", + " [0.0, 0.029201841465906018, 0.029201841465906018, 0.026147583788948901],\n", + " [0.0, 0.0093298144140174181, 0.0093298144140174181, 0.0],\n", + " [0.0, 0.014643848298858885, 0.014643848298858885, 0.0093298144140174181],\n", + " [0.0, 0.0077250064724891368, 0.0077250064724891368, 0.0],\n", + " [0.0, 0.012821410569826434, 0.012821410569826434, 0.0077250064724891368],\n", + " [0.0, 0.013624415877386803, 0.013624415877386803, 0.0],\n", + " [0.0, 0.01953787255562929, 0.01953787255562929, 0.013624415877386803],\n", + " [0.0, 0.021591925574157868, 0.021591925574157868, 0.01953787255562929],\n", + " [0.012821410569826434,\n", + " 0.02335274127377732,\n", + " 0.02335274127377732,\n", + " 0.021591925574157868],\n", + " [0.014643848298858885,\n", + " 0.029326657583160387,\n", + " 0.029326657583160387,\n", + " 0.02335274127377732],\n", + " [0.029201841465906018,\n", + " 0.029592505892537795,\n", + " 0.029592505892537795,\n", + " 0.029326657583160387],\n", + " [0.012216766920915374,\n", + " 0.029841495203827555,\n", + " 0.029841495203827555,\n", + " 0.029592505892537795],\n", + " [0.0040926170111554696,\n", + " 0.034668000057691134,\n", + " 0.034668000057691134,\n", + " 0.029841495203827555],\n", + " [0.0, 0.036202061281094704, 0.036202061281094704, 0.034668000057691134],\n", + " [0.0, 0.039270297999889806, 0.039270297999889806, 0.036202061281094704],\n", + " [0.0, 0.020850539225641385, 0.020850539225641385, 0.0],\n", + " [0.0, 0.040815773078553635, 0.040815773078553635, 0.020850539225641385],\n", + " [0.039270297999889806,\n", + " 0.043159691206031151,\n", + " 0.043159691206031151,\n", + " 0.040815773078553635],\n", + " [0.0, 0.016367294278529586, 0.016367294278529586, 0.0],\n", + " [0.0, 0.019266364706401723, 0.019266364706401723, 0.0],\n", + " [0.0, 0.020528661062038399, 0.020528661062038399, 0.019266364706401723],\n", + " [0.0, 0.026859876581994277, 0.026859876581994277, 0.020528661062038399],\n", + " [0.0, 0.0044756547007100004, 0.0044756547007100004, 0.0],\n", + " [0.0, 0.0059445902297800817, 0.0059445902297800817, 0.0],\n", + " [0.0, 0.0087439470492446172, 0.0087439470492446172, 0.0059445902297800817],\n", + " [0.0, 0.00905321340740807, 0.00905321340740807, 0.0],\n", + " [0.0087439470492446172,\n", + " 0.020349852530178052,\n", + " 0.020349852530178052,\n", + " 0.00905321340740807],\n", + " [0.0, 0.011408221991178691, 0.011408221991178691, 0.0],\n", + " [0.0, 0.015272051597607826, 0.015272051597607826, 0.011408221991178691],\n", + " [0.0, 0.003271729206397637, 0.003271729206397637, 0.0],\n", + " [0.0, 0.011461665673017337, 0.011461665673017337, 0.003271729206397637],\n", + " [0.0, 0.016011895702880731, 0.016011895702880731, 0.011461665673017337],\n", + " [0.015272051597607826,\n", + " 0.020152895573590426,\n", + " 0.020152895573590426,\n", + " 0.016011895702880731],\n", + " [0.0, 0.022011504264815233, 0.022011504264815233, 0.020152895573590426],\n", + " [0.020349852530178052,\n", + " 0.026006105283181619,\n", + " 0.026006105283181619,\n", + " 0.022011504264815233],\n", + " [0.0, 0.031878338931004391, 0.031878338931004391, 0.026006105283181619],\n", + " [0.0044756547007100004,\n", + " 0.032791678227868215,\n", + " 0.032791678227868215,\n", + " 0.031878338931004391],\n", + " [0.026859876581994277,\n", + " 0.03572885338210556,\n", + " 0.03572885338210556,\n", + " 0.032791678227868215],\n", + " [0.0, 0.01891224875576504, 0.01891224875576504, 0.0],\n", + " [0.0, 0.041812000191331924, 0.041812000191331924, 0.01891224875576504],\n", + " [0.03572885338210556,\n", + " 0.066154816612247647,\n", + " 0.066154816612247647,\n", + " 0.041812000191331924],\n", + " [0.016367294278529586,\n", + " 0.084140424434394401,\n", + " 0.084140424434394401,\n", + " 0.066154816612247647],\n", + " [0.043159691206031151,\n", + " 0.085706272658421873,\n", + " 0.085706272658421873,\n", + " 0.084140424434394401],\n", + " [0.0, 0.11390434780990256, 0.11390434780990256, 0.085706272658421873],\n", + " [0.0, 0.005645761684661992, 0.005645761684661992, 0.0],\n", + " [0.0, 0.015731352262281388, 0.015731352262281388, 0.005645761684661992],\n", + " [0.0, 0.034645463267215744, 0.034645463267215744, 0.015731352262281388],\n", + " [0.0, 0.043626896302625166, 0.043626896302625166, 0.0],\n", + " [0.0, 0.05151920124574691, 0.05151920124574691, 0.0],\n", + " [0.0, 0.016443492846713804, 0.016443492846713804, 0.0],\n", + " [0.0, 0.0093575203980529407, 0.0093575203980529407, 0.0],\n", + " [0.0, 0.010876928472691207, 0.010876928472691207, 0.0093575203980529407],\n", + " [0.0, 0.020992388739731967, 0.020992388739731967, 0.010876928472691207],\n", + " [0.0, 0.023869242635664919, 0.023869242635664919, 0.020992388739731967],\n", + " [0.016443492846713804,\n", + " 0.036515468023842326,\n", + " 0.036515468023842326,\n", + " 0.023869242635664919],\n", + " [0.0, 0.049656162084883146, 0.049656162084883146, 0.036515468023842326],\n", + " [0.0, 0.051657046266701298, 0.051657046266701298, 0.049656162084883146],\n", + " [0.0, 0.022471757852913655, 0.022471757852913655, 0.0],\n", + " [0.0, 0.0021137360289267687, 0.0021137360289267687, 0.0],\n", + " [0.0, 0.0091747908967959348, 0.0091747908967959348, 0.0],\n", + " [0.0021137360289267687,\n", + " 0.015369284075720456,\n", + " 0.015369284075720456,\n", + " 0.0091747908967959348],\n", + " [0.0, 0.032231469482478674, 0.032231469482478674, 0.015369284075720456],\n", + " [0.0, 0.016044445331639505, 0.016044445331639505, 0.0],\n", + " [0.0, 0.017689724842405198, 0.017689724842405198, 0.016044445331639505],\n", + " [0.0, 0.02983946851068495, 0.02983946851068495, 0.017689724842405198],\n", + " [0.0, 0.036092799074053231, 0.036092799074053231, 0.02983946851068495],\n", + " [0.0, 0.0047980104209984055, 0.0047980104209984055, 0.0],\n", + " [0.0, 0.036764546848831049, 0.036764546848831049, 0.0047980104209984055],\n", + " [0.036092799074053231,\n", + " 0.039571301848686555,\n", + " 0.039571301848686555,\n", + " 0.036764546848831049],\n", + " [0.0, 0.039988554612538564, 0.039988554612538564, 0.039571301848686555],\n", + " [0.032231469482478674,\n", + " 0.040349496960929154,\n", + " 0.040349496960929154,\n", + " 0.039988554612538564],\n", + " [0.0, 0.016728393497284191, 0.016728393497284191, 0.0],\n", + " [0.0, 0.025826293462285439, 0.025826293462285439, 0.016728393497284191],\n", + " [0.0, 0.0096548907813564545, 0.0096548907813564545, 0.0],\n", + " [0.0, 0.01754479256076092, 0.01754479256076092, 0.0096548907813564545],\n", + " [0.0, 0.017779817771845025, 0.017779817771845025, 0.01754479256076092],\n", + " [0.0, 0.02344731807691551, 0.02344731807691551, 0.017779817771845025],\n", + " [0.0, 0.015654497436837209, 0.015654497436837209, 0.0],\n", + " [0.0, 0.016823383161540369, 0.016823383161540369, 0.015654497436837209],\n", + " [0.0, 0.027081339294797741, 0.027081339294797741, 0.016823383161540369],\n", + " [0.0, 0.027284658858047813, 0.027284658858047813, 0.027081339294797741],\n", + " [0.0, 0.028127151899899686, 0.028127151899899686, 0.027284658858047813],\n", + " [0.02344731807691551,\n", + " 0.028381817718391978,\n", + " 0.028381817718391978,\n", + " 0.028127151899899686],\n", + " [0.025826293462285439,\n", + " 0.033187095835581416,\n", + " 0.033187095835581416,\n", + " 0.028381817718391978],\n", + " [0.0, 0.038550279921162958, 0.038550279921162958, 0.033187095835581416],\n", + " [0.0, 0.039754078143007195, 0.039754078143007195, 0.038550279921162958],\n", + " [0.0, 0.015054976187293225, 0.015054976187293225, 0.0],\n", + " [0.0, 0.011200876126447606, 0.011200876126447606, 0.0],\n", + " [0.0, 0.01553496346953908, 0.01553496346953908, 0.011200876126447606],\n", + " [0.0, 0.022716660405967162, 0.022716660405967162, 0.01553496346953908],\n", + " [0.0, 0.0018834994027040854, 0.0018834994027040854, 0.0],\n", + " [0.0, 0.00408496964493204, 0.00408496964493204, 0.0],\n", + " [0.0, 0.0042183903328170203, 0.0042183903328170203, 0.00408496964493204],\n", + " [0.0018834994027040854,\n", + " 0.008117778329076588,\n", + " 0.008117778329076588,\n", + " 0.0042183903328170203],\n", + " [0.0, 0.011136710196461692, 0.011136710196461692, 0.0],\n", + " [0.0, 0.012433232122016228, 0.012433232122016228, 0.011136710196461692],\n", + " [0.0, 0.013034593396035885, 0.013034593396035885, 0.012433232122016228],\n", + " [0.008117778329076588,\n", + " 0.014930391722921862,\n", + " 0.014930391722921862,\n", + " 0.013034593396035885],\n", + " [0.0, 0.023790167485746555, 0.023790167485746555, 0.014930391722921862],\n", + " [0.0, 0.013659653326489706, 0.013659653326489706, 0.0],\n", + " [0.0, 0.018534040897763338, 0.018534040897763338, 0.013659653326489706],\n", + " [0.0, 0.018709651119144452, 0.018709651119144452, 0.018534040897763338],\n", + " [0.0, 0.018832972203028295, 0.018832972203028295, 0.018709651119144452],\n", + " [0.0, 0.016770497488151855, 0.016770497488151855, 0.0],\n", + " [0.0, 0.01686740489819916, 0.01686740489819916, 0.0],\n", + " [0.016770497488151855,\n", + " 0.020788870700450424,\n", + " 0.020788870700450424,\n", + " 0.01686740489819916],\n", + " [0.0, 0.021245630444870357, 0.021245630444870357, 0.020788870700450424],\n", + " [0.018832972203028295,\n", + " 0.021282228125834558,\n", + " 0.021282228125834558,\n", + " 0.021245630444870357],\n", + " [0.0, 0.0036205481629180605, 0.0036205481629180605, 0.0],\n", + " [0.0, 0.0053529076210998405, 0.0053529076210998405, 0.0],\n", + " [0.0, 0.010410261331974025, 0.010410261331974025, 0.0053529076210998405],\n", + " [0.0036205481629180605,\n", + " 0.015598729211057616,\n", + " 0.015598729211057616,\n", + " 0.010410261331974025],\n", + " [0.0, 0.0063956557912441302, 0.0063956557912441302, 0.0],\n", + " [0.0, 0.011751187557010524, 0.011751187557010524, 0.0],\n", + " [0.0063956557912441302,\n", + " 0.0180231706977385,\n", + " 0.0180231706977385,\n", + " 0.011751187557010524],\n", + " [0.015598729211057616,\n", + " 0.0188822568831154,\n", + " 0.0188822568831154,\n", + " 0.0180231706977385],\n", + " [0.0, 0.023115774202911384, 0.023115774202911384, 0.0188822568831154],\n", + " [0.021282228125834558,\n", + " 0.023518754771463722,\n", + " 0.023518754771463722,\n", + " 0.023115774202911384],\n", + " [0.0, 0.02392055386064397, 0.02392055386064397, 0.023518754771463722],\n", + " [0.023790167485746555,\n", + " 0.024628163248606935,\n", + " 0.024628163248606935,\n", + " 0.02392055386064397],\n", + " [0.022716660405967162,\n", + " 0.025344429604944717,\n", + " 0.025344429604944717,\n", + " 0.024628163248606935],\n", + " [0.0, 0.032641634226857681, 0.032641634226857681, 0.025344429604944717],\n", + " [0.015054976187293225,\n", + " 0.038141165687486156,\n", + " 0.038141165687486156,\n", + " 0.032641634226857681],\n", + " [0.0, 0.050617202105605962, 0.050617202105605962, 0.038141165687486156],\n", + " [0.0, 0.026837139955665567, 0.026837139955665567, 0.0],\n", + " [0.0, 0.00091723988137770382, 0.00091723988137770382, 0.0],\n", + " [0.0, 0.0072889607626886411, 0.0072889607626886411, 0.00091723988137770382],\n", + " [0.0, 0.010735983979127308, 0.010735983979127308, 0.0072889607626886411],\n", + " [0.0, 0.013132314723610192, 0.013132314723610192, 0.010735983979127308],\n", + " [0.0, 0.028516993530177049, 0.028516993530177049, 0.013132314723610192],\n", + " [0.0, 0.0083488423748452629, 0.0083488423748452629, 0.0],\n", + " [0.0, 0.041639970232935343, 0.041639970232935343, 0.0083488423748452629],\n", + " [0.028516993530177049,\n", + " 0.045521656395608991,\n", + " 0.045521656395608991,\n", + " 0.041639970232935343],\n", + " [0.0, 0.024178163060911171, 0.024178163060911171, 0.0],\n", + " [0.0, 0.025256613391348562, 0.025256613391348562, 0.024178163060911171],\n", + " [0.0, 0.018145217606852036, 0.018145217606852036, 0.0],\n", + " [0.0, 0.02866962340178187, 0.02866962340178187, 0.0],\n", + " [0.018145217606852036,\n", + " 0.036067928593140522,\n", + " 0.036067928593140522,\n", + " 0.02866962340178187],\n", + " [0.0, 0.026872177619239865, 0.026872177619239865, 0.0],\n", + " [0.0, 0.031824437465572182, 0.031824437465572182, 0.0],\n", + " [0.026872177619239865,\n", + " 0.039503035997246673,\n", + " 0.039503035997246673,\n", + " 0.031824437465572182],\n", + " [0.0, 0.01295924110432559, 0.01295924110432559, 0.0],\n", + " [0.0, 0.0078999779746543597, 0.0078999779746543597, 0.0],\n", + " [0.0, 0.009784365079044623, 0.009784365079044623, 0.0078999779746543597],\n", + " [0.0, 0.013138898926469739, 0.013138898926469739, 0.009784365079044623],\n", + " [0.0, 0.038850566765492846, 0.038850566765492846, 0.013138898926469739],\n", + " [0.0, 0.013068957762575519, 0.013068957762575519, 0.0],\n", + " [0.0, 0.010472641023157274, 0.010472641023157274, 0.0],\n", + " [0.0, 0.0074976109528307935, 0.0074976109528307935, 0.0],\n", + " [0.0, 0.0082169838748780005, 0.0082169838748780005, 0.0],\n", + " [0.0, 0.0071094655214020185, 0.0071094655214020185, 0.0],\n", + " [0.0, 0.008502720094182235, 0.008502720094182235, 0.0071094655214020185],\n", + " [0.0, 0.0090949327100323663, 0.0090949327100323663, 0.008502720094182235],\n", + " [0.0082169838748780005,\n", + " 0.012687629289982277,\n", + " 0.012687629289982277,\n", + " 0.0090949327100323663],\n", + " [0.0074976109528307935,\n", + " 0.013412455778122038,\n", + " 0.013412455778122038,\n", + " 0.012687629289982277],\n", + " [0.0, 0.020425741063671898, 0.020425741063671898, 0.013412455778122038],\n", + " [0.0, 0.020945638519751449, 0.020945638519751449, 0.020425741063671898],\n", + " [0.0, 0.0046159819107085814, 0.0046159819107085814, 0.0],\n", + " [0.0, 0.0087074430804908141, 0.0087074430804908141, 0.0046159819107085814],\n", + " [0.0, 0.0047240512274948285, 0.0047240512274948285, 0.0],\n", + " [0.0, 0.012533624735085378, 0.012533624735085378, 0.0047240512274948285],\n", + " [0.0087074430804908141,\n", + " 0.024124461797105687,\n", + " 0.024124461797105687,\n", + " 0.012533624735085378],\n", + " [0.0, 0.024330815789857841, 0.024330815789857841, 0.024124461797105687],\n", + " [0.020945638519751449,\n", + " 0.02611003540786656,\n", + " 0.02611003540786656,\n", + " 0.024330815789857841],\n", + " [0.0, 0.026183460141852424, 0.026183460141852424, 0.02611003540786656],\n", + " [0.010472641023157274,\n", + " 0.028453054739345875,\n", + " 0.028453054739345875,\n", + " 0.026183460141852424],\n", + " [0.0, 0.023961728318296242, 0.023961728318296242, 0.0],\n", + " [0.0, 0.0026605882808133428, 0.0026605882808133428, 0.0],\n", + " [0.0, 0.0031933938059647265, 0.0031933938059647265, 0.0026605882808133428],\n", + " [0.0, 0.006404772985831129, 0.006404772985831129, 0.0],\n", + " [0.0, 0.0092839153916868655, 0.0092839153916868655, 0.0],\n", + " [0.0, 0.012506858598389625, 0.012506858598389625, 0.0092839153916868655],\n", + " [0.0, 0.021576178577310687, 0.021576178577310687, 0.012506858598389625],\n", + " [0.006404772985831129,\n", + " 0.022802888281968452,\n", + " 0.022802888281968452,\n", + " 0.021576178577310687],\n", + " [0.0031933938059647265,\n", + " 0.027114779770449349,\n", + " 0.027114779770449349,\n", + " 0.022802888281968452],\n", + " [0.023961728318296242,\n", + " 0.028697297782195347,\n", + " 0.028697297782195347,\n", + " 0.027114779770449349],\n", + " [0.028453054739345875,\n", + " 0.030342464978967885,\n", + " 0.030342464978967885,\n", + " 0.028697297782195347],\n", + " [0.0, 0.010936474980538541, 0.010936474980538541, 0.0],\n", + " [0.0, 0.022534058334001274, 0.022534058334001274, 0.010936474980538541],\n", + " [0.0, 0.024946584956662972, 0.024946584956662972, 0.022534058334001274],\n", + " [0.0, 0.011936571408909311, 0.011936571408909311, 0.0],\n", + " [0.0, 0.01486662789606516, 0.01486662789606516, 0.011936571408909311],\n", + " [0.0, 0.01734754743472304, 0.01734754743472304, 0.01486662789606516],\n", + " [0.0, 0.025462235113986566, 0.025462235113986566, 0.01734754743472304],\n", + " [0.0, 0.0063256936378555595, 0.0063256936378555595, 0.0],\n", + " [0.0, 0.0098333152090222323, 0.0098333152090222323, 0.0063256936378555595],\n", + " [0.0, 0.013995963025105827, 0.013995963025105827, 0.0],\n", + " [0.0, 0.014657231525767984, 0.014657231525767984, 0.013995963025105827],\n", + " [0.0, 0.015413549364114546, 0.015413549364114546, 0.014657231525767984],\n", + " [0.0, 0.018770229966626015, 0.018770229966626015, 0.0],\n", + " [0.015413549364114546,\n", + " 0.025582557827551571,\n", + " 0.025582557827551571,\n", + " 0.018770229966626015],\n", + " [0.0, 0.0091517309838083163, 0.0091517309838083163, 0.0],\n", + " [0.0, 0.011846586554787701, 0.011846586554787701, 0.0],\n", + " [0.0, 0.012314092455395775, 0.012314092455395775, 0.011846586554787701],\n", + " [0.0, 0.0043967719977236952, 0.0043967719977236952, 0.0],\n", + " [0.0, 0.0064475596158582154, 0.0064475596158582154, 0.0043967719977236952],\n", + " [0.0, 0.0064507553821239417, 0.0064507553821239417, 0.0],\n", + " [0.0064475596158582154,\n", + " 0.0099091612157657209,\n", + " 0.0099091612157657209,\n", + " 0.0064507553821239417],\n", + " [0.0, 0.012954085069966544, 0.012954085069966544, 0.0],\n", + " [0.0099091612157657209,\n", + " 0.014775899363489366,\n", + " 0.014775899363489366,\n", + " 0.012954085069966544],\n", + " [0.012314092455395775,\n", + " 0.015297956791676358,\n", + " 0.015297956791676358,\n", + " 0.014775899363489366],\n", + " [0.0091517309838083163,\n", + " 0.021973264345564941,\n", + " 0.021973264345564941,\n", + " 0.015297956791676358],\n", + " [0.0, 0.0076840578472562628, 0.0076840578472562628, 0.0],\n", + " [0.0, 0.0081479747176861992, 0.0081479747176861992, 0.0],\n", + " [0.0076840578472562628,\n", + " 0.011071142714281347,\n", + " 0.011071142714281347,\n", + " 0.0081479747176861992],\n", + " [0.0, 0.015824663914282701, 0.015824663914282701, 0.0],\n", + " [0.0, 0.0066119486537624143, 0.0066119486537624143, 0.0],\n", + " [0.0, 0.011587068007050279, 0.011587068007050279, 0.0],\n", + " [0.0, 0.01586509993665184, 0.01586509993665184, 0.011587068007050279],\n", + " [0.0, 0.016661243200913292, 0.016661243200913292, 0.01586509993665184],\n", + " [0.0066119486537624143,\n", + " 0.017368037597845842,\n", + " 0.017368037597845842,\n", + " 0.016661243200913292],\n", + " [0.015824663914282701,\n", + " 0.019008609233711046,\n", + " 0.019008609233711046,\n", + " 0.017368037597845842],\n", + " [0.011071142714281347,\n", + " 0.019670857073346051,\n", + " 0.019670857073346051,\n", + " 0.019008609233711046],\n", + " [0.0, 0.021719060315769, 0.021719060315769, 0.019670857073346051],\n", + " [0.0, 0.022148126173561548, 0.022148126173561548, 0.021719060315769],\n", + " [0.0, 0.023256480838686786, 0.023256480838686786, 0.022148126173561548],\n", + " [0.021973264345564941,\n", + " 0.024039552179689595,\n", + " 0.024039552179689595,\n", + " 0.023256480838686786],\n", + " [0.0, 0.026789652274710994, 0.026789652274710994, 0.024039552179689595],\n", + " [0.025582557827551571,\n", + " 0.026830182891660764,\n", + " 0.026830182891660764,\n", + " 0.026789652274710994],\n", + " [0.0, 0.027243873476433134, 0.027243873476433134, 0.026830182891660764],\n", + " [0.0, 0.028087196816346909, 0.028087196816346909, 0.027243873476433134],\n", + " [0.0, 0.028101294009351529, 0.028101294009351529, 0.028087196816346909],\n", + " [0.0098333152090222323,\n", + " 0.030780616790444294,\n", + " 0.030780616790444294,\n", + " 0.028101294009351529],\n", + " [0.025462235113986566,\n", + " 0.030906484837326057,\n", + " 0.030906484837326057,\n", + " 0.030780616790444294],\n", + " [0.024946584956662972,\n", + " 0.032954352064635137,\n", + " 0.032954352064635137,\n", + " 0.030906484837326057],\n", + " [0.030342464978967885,\n", + " 0.034304131354691188,\n", + " 0.034304131354691188,\n", + " 0.032954352064635137],\n", + " [0.0, 0.0070711699173522926, 0.0070711699173522926, 0.0],\n", + " [0.0, 0.014695663203814819, 0.014695663203814819, 0.0070711699173522926],\n", + " [0.0, 0.020108849121713832, 0.020108849121713832, 0.0],\n", + " [0.014695663203814819,\n", + " 0.030624388924516324,\n", + " 0.030624388924516324,\n", + " 0.020108849121713832],\n", + " [0.0, 0.0057804433220997771, 0.0057804433220997771, 0.0],\n", + " [0.0, 0.0058262905008292154, 0.0058262905008292154, 0.0],\n", + " [0.0057804433220997771,\n", + " 0.016935441683051611,\n", + " 0.016935441683051611,\n", + " 0.0058262905008292154],\n", + " [0.0, 0.01079800027782956, 0.01079800027782956, 0.0],\n", + " [0.0, 0.018568130358219855, 0.018568130358219855, 0.01079800027782956],\n", + " [0.016935441683051611,\n", + " 0.019132481307969629,\n", + " 0.019132481307969629,\n", + " 0.018568130358219855],\n", + " [0.0, 0.017126583926748134, 0.017126583926748134, 0.0],\n", + " [0.0, 0.019162293390929314, 0.019162293390929314, 0.017126583926748134],\n", + " [0.019132481307969629,\n", + " 0.020872777414609855,\n", + " 0.020872777414609855,\n", + " 0.019162293390929314],\n", + " [0.0, 0.021442001492400508, 0.021442001492400508, 0.020872777414609855],\n", + " [0.0, 0.0016902345991021003, 0.0016902345991021003, 0.0],\n", + " [0.0, 0.0063878795386264385, 0.0063878795386264385, 0.0016902345991021003],\n", + " [0.0, 0.0096614231353355194, 0.0096614231353355194, 0.0],\n", + " [0.0063878795386264385,\n", + " 0.010495883240584951,\n", + " 0.010495883240584951,\n", + " 0.0096614231353355194],\n", + " [0.0, 0.014341926300186233, 0.014341926300186233, 0.010495883240584951],\n", + " [0.0, 0.0040950390718520564, 0.0040950390718520564, 0.0],\n", + " [0.0, 0.0086915647613100555, 0.0086915647613100555, 0.0],\n", + " [0.0, 0.011386786904126698, 0.011386786904126698, 0.0086915647613100555],\n", + " [0.0040950390718520564,\n", + " 0.015908596921161259,\n", + " 0.015908596921161259,\n", + " 0.011386786904126698],\n", + " [0.014341926300186233,\n", + " 0.016618847763908953,\n", + " 0.016618847763908953,\n", + " 0.015908596921161259],\n", + " [0.0, 0.0031394740005309383, 0.0031394740005309383, 0.0],\n", + " [0.0, 0.0091560678241240038, 0.0091560678241240038, 0.0031394740005309383],\n", + " [0.0, 0.01229795210594267, 0.01229795210594267, 0.0091560678241240038],\n", + " [0.0, 0.013889449413133796, 0.013889449413133796, 0.01229795210594267],\n", + " [0.0, 0.014877012132813219, 0.014877012132813219, 0.013889449413133796],\n", + " [0.0, 0.020783042823415098, 0.020783042823415098, 0.014877012132813219],\n", + " [0.0, 0.020974470291285775, 0.020974470291285775, 0.020783042823415098],\n", + " [0.016618847763908953,\n", + " 0.020987418635934625,\n", + " 0.020987418635934625,\n", + " 0.020974470291285775],\n", + " [0.0, 0.021940790619303634, 0.021940790619303634, 0.020987418635934625],\n", + " [0.0, 0.0058023064379613557, 0.0058023064379613557, 0.0],\n", + " [0.0, 0.010771473529651725, 0.010771473529651725, 0.0],\n", + " [0.0, 0.01537499476422639, 0.01537499476422639, 0.010771473529651725],\n", + " [0.0, 0.013089890603051255, 0.013089890603051255, 0.0],\n", + " [0.0, 0.0059939496994890103, 0.0059939496994890103, 0.0],\n", + " [0.0, 0.0067361147555543991, 0.0067361147555543991, 0.0],\n", + " [0.0, 0.017536001881841342, 0.017536001881841342, 0.0067361147555543991],\n", + " [0.0059939496994890103,\n", + " 0.018036294658271147,\n", + " 0.018036294658271147,\n", + " 0.017536001881841342],\n", + " [0.013089890603051255,\n", + " 0.018700224303471936,\n", + " 0.018700224303471936,\n", + " 0.018036294658271147],\n", + " [0.01537499476422639,\n", + " 0.02059491104617716,\n", + " 0.02059491104617716,\n", + " 0.018700224303471936],\n", + " [0.0058023064379613557,\n", + " 0.022797896832825241,\n", + " 0.022797896832825241,\n", + " 0.02059491104617716],\n", + " [0.0, 0.022452705694416049, 0.022452705694416049, 0.0],\n", + " [0.0, 0.024199881755910282, 0.024199881755910282, 0.022452705694416049],\n", + " [0.022797896832825241,\n", + " 0.024792553498984925,\n", + " 0.024792553498984925,\n", + " 0.024199881755910282],\n", + " [0.0, 0.0031282723666601355, 0.0031282723666601355, 0.0],\n", + " [0.0, 0.0037015344115652374, 0.0037015344115652374, 0.0031282723666601355],\n", + " [0.0, 0.014706275701209038, 0.014706275701209038, 0.0037015344115652374],\n", + " [0.0, 0.0005153406640262553, 0.0005153406640262553, 0.0],\n", + " [0.0, 0.0041867266450053061, 0.0041867266450053061, 0.0005153406640262553],\n", + " [0.0, 0.01083176993847171, 0.01083176993847171, 0.0],\n", + " [0.0041867266450053061,\n", + " 0.018301297795512313,\n", + " 0.018301297795512313,\n", + " 0.01083176993847171],\n", + " [0.0, 0.023461919188337583, 0.023461919188337583, 0.018301297795512313],\n", + " [0.014706275701209038,\n", + " 0.025500434917859499,\n", + " 0.025500434917859499,\n", + " 0.023461919188337583],\n", + " [0.024792553498984925,\n", + " 0.025868287380498199,\n", + " 0.025868287380498199,\n", + " 0.025500434917859499],\n", + " [0.021940790619303634,\n", + " 0.025901782834389056,\n", + " 0.025901782834389056,\n", + " 0.025868287380498199],\n", + " [0.0, 0.026099727239952433, 0.026099727239952433, 0.025901782834389056],\n", + " [0.021442001492400508,\n", + " 0.028603921584286981,\n", + " 0.028603921584286981,\n", + " 0.026099727239952433],\n", + " [0.0, 0.034124490985213196, 0.034124490985213196, 0.028603921584286981],\n", + " [0.030624388924516324,\n", + " 0.034516053670718555,\n", + " 0.034516053670718555,\n", + " 0.034124490985213196],\n", + " [0.034304131354691188,\n", + " 0.037365060751992564,\n", + " 0.037365060751992564,\n", + " 0.034516053670718555],\n", + " [0.013068957762575519,\n", + " 0.038305775034581949,\n", + " 0.038305775034581949,\n", + " 0.037365060751992564],\n", + " [0.0, 0.039478872083683968, 0.039478872083683968, 0.038305775034581949],\n", + " [0.0, 0.039891422636954436, 0.039891422636954436, 0.039478872083683968],\n", + " [0.0, 0.040091773632503297, 0.040091773632503297, 0.039891422636954436],\n", + " [0.038850566765492846,\n", + " 0.040575193702559277,\n", + " 0.040575193702559277,\n", + " 0.040091773632503297],\n", + " [0.0, 0.041282390010753803, 0.041282390010753803, 0.040575193702559277],\n", + " [0.0, 0.0091723227701637662, 0.0091723227701637662, 0.0],\n", + " [0.0, 0.036139383351129525, 0.036139383351129525, 0.0091723227701637662],\n", + " [0.0, 0.03693055132272121, 0.03693055132272121, 0.036139383351129525],\n", + " [0.0, 0.007682320612939623, 0.007682320612939623, 0.0],\n", + " [0.0, 0.02335072789015381, 0.02335072789015381, 0.007682320612939623],\n", + " [0.0, 0.012813598791909455, 0.012813598791909455, 0.0],\n", + " [0.0, 0.027402901251514355, 0.027402901251514355, 0.012813598791909455],\n", + " [0.0, 0.027001592915974326, 0.027001592915974326, 0.0],\n", + " [0.0, 0.017447477210189397, 0.017447477210189397, 0.0],\n", + " [0.0, 0.012290277661635419, 0.012290277661635419, 0.0],\n", + " [0.0, 0.014943522108256967, 0.014943522108256967, 0.012290277661635419],\n", + " [0.0, 0.017659429492485893, 0.017659429492485893, 0.0],\n", + " [0.014943522108256967,\n", + " 0.022542657718201364,\n", + " 0.022542657718201364,\n", + " 0.017659429492485893],\n", + " [0.0, 0.025782743259786405, 0.025782743259786405, 0.022542657718201364],\n", + " [0.017447477210189397,\n", + " 0.027363096681478575,\n", + " 0.027363096681478575,\n", + " 0.025782743259786405],\n", + " [0.0, 0.026217503771336574, 0.026217503771336574, 0.0],\n", + " [0.0, 0.029577038729389743, 0.029577038729389743, 0.026217503771336574],\n", + " [0.027363096681478575,\n", + " 0.029783056961969527,\n", + " 0.029783056961969527,\n", + " 0.029577038729389743],\n", + " [0.0, 0.018901917892108957, 0.018901917892108957, 0.0],\n", + " [0.0, 0.010106876916236915, 0.010106876916236915, 0.0],\n", + " [0.0, 0.01083361177078147, 0.01083361177078147, 0.0],\n", + " [0.010106876916236915,\n", + " 0.012641013408741417,\n", + " 0.012641013408741417,\n", + " 0.01083361177078147],\n", + " [0.0, 0.0029374296587326952, 0.0029374296587326952, 0.0],\n", + " [0.0, 0.0053534267530273997, 0.0053534267530273997, 0.0],\n", + " [0.0, 0.0091884628747103438, 0.0091884628747103438, 0.0053534267530273997],\n", + " [0.0, 0.010566386326457388, 0.010566386326457388, 0.0091884628747103438],\n", + " [0.0, 0.011764683506155173, 0.011764683506155173, 0.010566386326457388],\n", + " [0.0, 0.01237875922699979, 0.01237875922699979, 0.011764683506155173],\n", + " [0.0029374296587326952,\n", + " 0.012912342506300087,\n", + " 0.012912342506300087,\n", + " 0.01237875922699979],\n", + " [0.0, 0.015933872002749365, 0.015933872002749365, 0.012912342506300087],\n", + " [0.012641013408741417,\n", + " 0.019441572981627419,\n", + " 0.019441572981627419,\n", + " 0.015933872002749365],\n", + " [0.0, 0.0023950770342510488, 0.0023950770342510488, 0.0],\n", + " [0.0, 0.0065516249129470832, 0.0065516249129470832, 0.0023950770342510488],\n", + " [0.0, 0.010644139044567673, 0.010644139044567673, 0.0065516249129470832],\n", + " [0.0, 0.004554452107552653, 0.004554452107552653, 0.0],\n", + " [0.0, 0.0036108863177897461, 0.0036108863177897461, 0.0],\n", + " [0.0, 0.0049154916336018803, 0.0049154916336018803, 0.0036108863177897461],\n", + " [0.004554452107552653,\n", + " 0.0053963822140391049,\n", + " 0.0053963822140391049,\n", + " 0.0049154916336018803],\n", + " [0.0, 0.0064253081638165933, 0.0064253081638165933, 0.0],\n", + " [0.0, 0.01052751518640334, 0.01052751518640334, 0.0064253081638165933],\n", + " [0.0053963822140391049,\n", + " 0.010669924554565577,\n", + " 0.010669924554565577,\n", + " 0.01052751518640334],\n", + " [0.010644139044567673,\n", + " 0.010958527273316473,\n", + " 0.010958527273316473,\n", + " 0.010669924554565577],\n", + " [0.0, 0.016578510970529814, 0.016578510970529814, 0.010958527273316473],\n", + " [0.0, 0.0086023025987255405, 0.0086023025987255405, 0.0],\n", + " [0.0, 0.010690778315912501, 0.010690778315912501, 0.0086023025987255405],\n", + " [0.0, 0.012008616614750403, 0.012008616614750403, 0.0],\n", + " [0.0, 0.0055145997134883841, 0.0055145997134883841, 0.0],\n", + " [0.0, 0.0057254171900386871, 0.0057254171900386871, 0.0055145997134883841],\n", + " [0.0, 0.0021876519375789525, 0.0021876519375789525, 0.0],\n", + " [0.0, 0.0027696701969696339, 0.0027696701969696339, 0.0],\n", + " [0.0021876519375789525,\n", + " 0.0057560863440415146,\n", + " 0.0057560863440415146,\n", + " 0.0027696701969696339],\n", + " [0.0, 0.0066589572757305808, 0.0066589572757305808, 0.0057560863440415146],\n", + " [0.0, 0.007728915189078203, 0.007728915189078203, 0.0066589572757305808],\n", + " [0.0, 0.012798375209376283, 0.012798375209376283, 0.007728915189078203],\n", + " [0.0057254171900386871,\n", + " 0.014191916184926916,\n", + " 0.014191916184926916,\n", + " 0.012798375209376283],\n", + " [0.012008616614750403,\n", + " 0.016687542329530826,\n", + " 0.016687542329530826,\n", + " 0.014191916184926916],\n", + " [0.010690778315912501,\n", + " 0.017574750780594381,\n", + " 0.017574750780594381,\n", + " 0.016687542329530826],\n", + " [0.016578510970529814,\n", + " 0.020691010221832413,\n", + " 0.020691010221832413,\n", + " 0.017574750780594381],\n", + " [0.0, 0.023510690525802676, 0.023510690525802676, 0.020691010221832413],\n", + " [0.019441572981627419,\n", + " 0.024525273841487789,\n", + " 0.024525273841487789,\n", + " 0.023510690525802676],\n", + " [0.0, 0.029016834975579026, 0.029016834975579026, 0.024525273841487789],\n", + " [0.018901917892108957,\n", + " 0.032399465011014893,\n", + " 0.032399465011014893,\n", + " 0.029016834975579026],\n", + " [0.0, 0.025277131581730092, 0.025277131581730092, 0.0],\n", + " [0.0, 0.011380820928205365, 0.011380820928205365, 0.0],\n", + " [0.0, 0.0064717420375022027, 0.0064717420375022027, 0.0],\n", + " [0.0, 0.011939403042032766, 0.011939403042032766, 0.0064717420375022027],\n", + " [0.0, 0.0025310969953757732, 0.0025310969953757732, 0.0],\n", + " [0.0, 0.0040049021211534261, 0.0040049021211534261, 0.0],\n", + " [0.0, 0.0046260468004500994, 0.0046260468004500994, 0.0040049021211534261],\n", + " [0.0025310969953757732,\n", + " 0.0066176141471080367,\n", + " 0.0066176141471080367,\n", + " 0.0046260468004500994],\n", + " [0.0, 0.01298280593708552, 0.01298280593708552, 0.0066176141471080367],\n", + " [0.011939403042032766,\n", + " 0.017622678712386888,\n", + " 0.017622678712386888,\n", + " 0.01298280593708552],\n", + " [0.011380820928205365,\n", + " 0.01923971738357997,\n", + " 0.01923971738357997,\n", + " 0.017622678712386888],\n", + " [0.0, 0.019497886911153332, 0.019497886911153332, 0.01923971738357997],\n", + " [0.0, 0.017531427323523249, 0.017531427323523249, 0.0],\n", + " [0.0, 0.020282625988763528, 0.020282625988763528, 0.017531427323523249],\n", + " [0.019497886911153332,\n", + " 0.028140803862008675,\n", + " 0.028140803862008675,\n", + " 0.020282625988763528],\n", + " [0.0, 0.0020457773583658872, 0.0020457773583658872, 0.0],\n", + " [0.0, 0.0064347330169943684, 0.0064347330169943684, 0.0020457773583658872],\n", + " [0.0, 0.019139467416832191, 0.019139467416832191, 0.0064347330169943684],\n", + " [0.0, 0.023908663304334461, 0.023908663304334461, 0.019139467416832191],\n", + " [0.0, 0.013357724693975214, 0.013357724693975214, 0.0],\n", + " [0.0, 0.011516534635041771, 0.011516534635041771, 0.0],\n", + " [0.0, 0.013471700301000004, 0.013471700301000004, 0.011516534635041771],\n", + " [0.013357724693975214,\n", + " 0.01721746189192808,\n", + " 0.01721746189192808,\n", + " 0.013471700301000004],\n", + " [0.0, 0.0043245346570484258, 0.0043245346570484258, 0.0],\n", + " [0.0, 0.0046851387386075225, 0.0046851387386075225, 0.0043245346570484258],\n", + " [0.0, 0.0053666669358179587, 0.0053666669358179587, 0.0],\n", + " [0.0, 0.0040051053669059459, 0.0040051053669059459, 0.0],\n", + " [0.0, 0.0086873264011418077, 0.0086873264011418077, 0.0040051053669059459],\n", + " [0.0053666669358179587,\n", + " 0.015209898356002047,\n", + " 0.015209898356002047,\n", + " 0.0086873264011418077],\n", + " [0.0046851387386075225,\n", + " 0.016232421415181029,\n", + " 0.016232421415181029,\n", + " 0.015209898356002047],\n", + " [0.0, 0.0083309573279443782, 0.0083309573279443782, 0.0],\n", + " [0.0, 0.017181017432039189, 0.017181017432039189, 0.0083309573279443782],\n", + " [0.016232421415181029,\n", + " 0.019308049357712135,\n", + " 0.019308049357712135,\n", + " 0.017181017432039189],\n", + " [0.0, 0.019314776778415328, 0.019314776778415328, 0.019308049357712135],\n", + " [0.0, 0.019542107588487085, 0.019542107588487085, 0.019314776778415328],\n", + " [0.01721746189192808,\n", + " 0.020854955885830483,\n", + " 0.020854955885830483,\n", + " 0.019542107588487085],\n", + " [0.0, 0.0048465098782529371, 0.0048465098782529371, 0.0],\n", + " [0.0, 0.005376190193808918, 0.005376190193808918, 0.0],\n", + " [0.0048465098782529371,\n", + " 0.0069643721899376862,\n", + " 0.0069643721899376862,\n", + " 0.005376190193808918],\n", + " [0.0, 0.012223326429414929, 0.012223326429414929, 0.0069643721899376862],\n", + " [0.0, 0.01451054874910418, 0.01451054874910418, 0.012223326429414929],\n", + " [0.0, 0.011337537519232537, 0.011337537519232537, 0.0],\n", + " [0.0, 0.0039545843017987393, 0.0039545843017987393, 0.0],\n", + " [0.0, 0.011122370430803333, 0.011122370430803333, 0.0039545843017987393],\n", + " [0.0, 0.0033818917782828437, 0.0033818917782828437, 0.0],\n", + " [0.0, 0.0073932342043243268, 0.0073932342043243268, 0.0],\n", + " [0.0033818917782828437,\n", + " 0.008473360431376217,\n", + " 0.008473360431376217,\n", + " 0.0073932342043243268],\n", + " [0.0, 0.011505786457259148, 0.011505786457259148, 0.008473360431376217],\n", + " [0.011122370430803333,\n", + " 0.012003462917007709,\n", + " 0.012003462917007709,\n", + " 0.011505786457259148],\n", + " [0.011337537519232537,\n", + " 0.01384176914270697,\n", + " 0.01384176914270697,\n", + " 0.012003462917007709],\n", + " [0.0, 0.015329241501130112, 0.015329241501130112, 0.01384176914270697],\n", + " [0.01451054874910418,\n", + " 0.017853246035386218,\n", + " 0.017853246035386218,\n", + " 0.015329241501130112],\n", + " [0.0, 0.021131584133706652, 0.021131584133706652, 0.017853246035386218],\n", + " [0.020854955885830483,\n", + " 0.021772914182536653,\n", + " 0.021772914182536653,\n", + " 0.021131584133706652],\n", + " [0.0, 0.023211873017921082, 0.023211873017921082, 0.021772914182536653],\n", + " [0.0, 0.029786381082635583, 0.029786381082635583, 0.023211873017921082],\n", + " [0.023908663304334461,\n", + " 0.031589509413727984,\n", + " 0.031589509413727984,\n", + " 0.029786381082635583],\n", + " [0.028140803862008675,\n", + " 0.03264311838657534,\n", + " 0.03264311838657534,\n", + " 0.031589509413727984],\n", + " [0.025277131581730092,\n", + " 0.033907307781656307,\n", + " 0.033907307781656307,\n", + " 0.03264311838657534],\n", + " [0.032399465011014893,\n", + " 0.033980640326517965,\n", + " 0.033980640326517965,\n", + " 0.033907307781656307],\n", + " [0.0, 0.034224904806294983, 0.034224904806294983, 0.033980640326517965],\n", + " [0.0, 0.0081783911620805141, 0.0081783911620805141, 0.0],\n", + " [0.0, 0.011559521486636425, 0.011559521486636425, 0.0],\n", + " [0.0, 0.011814058108880207, 0.011814058108880207, 0.011559521486636425],\n", + " [0.0, 0.013761144792497466, 0.013761144792497466, 0.011814058108880207],\n", + " [0.0081783911620805141,\n", + " 0.022516132105670977,\n", + " 0.022516132105670977,\n", + " 0.013761144792497466],\n", + " [0.0, 0.032343926075848961, 0.032343926075848961, 0.022516132105670977],\n", + " [0.0, 0.0058390829759468318, 0.0058390829759468318, 0.0],\n", + " [0.0, 0.023178683245601638, 0.023178683245601638, 0.0058390829759468318],\n", + " [0.0, 0.014265269783639822, 0.014265269783639822, 0.0],\n", + " [0.0, 0.016294180801745571, 0.016294180801745571, 0.0],\n", + " [0.014265269783639822,\n", + " 0.016683010819394748,\n", + " 0.016683010819394748,\n", + " 0.016294180801745571],\n", + " [0.0, 0.017314995264216135, 0.017314995264216135, 0.0],\n", + " [0.0, 0.0087415518645155045, 0.0087415518645155045, 0.0],\n", + " [0.0, 0.004571051629547746, 0.004571051629547746, 0.0],\n", + " [0.0, 0.0053758944372063197, 0.0053758944372063197, 0.004571051629547746],\n", + " [0.0, 0.0067803788979695348, 0.0067803788979695348, 0.0053758944372063197],\n", + " [0.0, 0.0089199401903844247, 0.0089199401903844247, 0.0],\n", + " [0.0067803788979695348,\n", + " 0.012892554013844568,\n", + " 0.012892554013844568,\n", + " 0.0089199401903844247],\n", + " [0.0, 0.0050104028780137942, 0.0050104028780137942, 0.0],\n", + " [0.0, 0.0053405026916960221, 0.0053405026916960221, 0.0050104028780137942],\n", + " [0.0, 0.0075512563855286274, 0.0075512563855286274, 0.0],\n", + " [0.0053405026916960221,\n", + " 0.013760380699674165,\n", + " 0.013760380699674165,\n", + " 0.0075512563855286274],\n", + " [0.012892554013844568,\n", + " 0.014581216684486968,\n", + " 0.014581216684486968,\n", + " 0.013760380699674165],\n", + " [0.0087415518645155045,\n", + " 0.014624211329162834,\n", + " 0.014624211329162834,\n", + " 0.014581216684486968],\n", + " [0.0, 0.0043704759466196355, 0.0043704759466196355, 0.0],\n", + " [0.0, 0.0071532082312771887, 0.0071532082312771887, 0.0043704759466196355],\n", + " [0.0, 0.0098728057308974607, 0.0098728057308974607, 0.0],\n", + " [0.0071532082312771887,\n", + " 0.014881556000630847,\n", + " 0.014881556000630847,\n", + " 0.0098728057308974607],\n", + " [0.0, 0.016670145320301599, 0.016670145320301599, 0.014881556000630847],\n", + " [0.014624211329162834,\n", + " 0.017473323238579797,\n", + " 0.017473323238579797,\n", + " 0.016670145320301599],\n", + " [0.0, 0.019233229006072015, 0.019233229006072015, 0.017473323238579797],\n", + " [0.0, 0.01994013974374579, 0.01994013974374579, 0.019233229006072015],\n", + " [0.017314995264216135,\n", + " 0.020884978046431617,\n", + " 0.020884978046431617,\n", + " 0.01994013974374579],\n", + " [0.016683010819394748,\n", + " 0.023617312844606046,\n", + " 0.023617312844606046,\n", + " 0.020884978046431617],\n", + " [0.0, 0.024707232058650105, 0.024707232058650105, 0.023617312844606046],\n", + " [0.023178683245601638,\n", + " 0.028456132133513588,\n", + " 0.028456132133513588,\n", + " 0.024707232058650105],\n", + " [0.0, 0.013748507409893319, 0.013748507409893319, 0.0],\n", + " [0.0, 0.032893203705326036, 0.032893203705326036, 0.013748507409893319],\n", + " [0.028456132133513588,\n", + " 0.032991351230283135,\n", + " 0.032991351230283135,\n", + " 0.032893203705326036],\n", + " [0.032343926075848961,\n", + " 0.034307969642637895,\n", + " 0.034307969642637895,\n", + " 0.032991351230283135],\n", + " [0.034224904806294983,\n", + " 0.035152823570802585,\n", + " 0.035152823570802585,\n", + " 0.034307969642637895],\n", + " [0.029783056961969527,\n", + " 0.035515943701382183,\n", + " 0.035515943701382183,\n", + " 0.035152823570802585],\n", + " [0.0, 0.035685545547180376, 0.035685545547180376, 0.035515943701382183],\n", + " [0.0, 0.038688785377678635, 0.038688785377678635, 0.035685545547180376],\n", + " [0.027001592915974326,\n", + " 0.039904594585086661,\n", + " 0.039904594585086661,\n", + " 0.038688785377678635],\n", + " [0.0, 0.0095087099545615276, 0.0095087099545615276, 0.0],\n", + " [0.0, 0.0079510221355530691, 0.0079510221355530691, 0.0],\n", + " [0.0, 0.017482280314649715, 0.017482280314649715, 0.0079510221355530691],\n", + " [0.0, 0.010531104880305193, 0.010531104880305193, 0.0],\n", + " [0.0, 0.014299745627108248, 0.014299745627108248, 0.010531104880305193],\n", + " [0.0, 0.0196917653093872, 0.0196917653093872, 0.0],\n", + " [0.0, 0.021146628903917192, 0.021146628903917192, 0.0196917653093872],\n", + " [0.014299745627108248,\n", + " 0.021252304580911884,\n", + " 0.021252304580911884,\n", + " 0.021146628903917192],\n", + " [0.017482280314649715,\n", + " 0.024008647712854939,\n", + " 0.024008647712854939,\n", + " 0.021252304580911884],\n", + " [0.0, 0.0095257674231518184, 0.0095257674231518184, 0.0],\n", + " [0.0, 0.016169768860437535, 0.016169768860437535, 0.0095257674231518184],\n", + " [0.0, 0.020244870955380672, 0.020244870955380672, 0.016169768860437535],\n", + " [0.0, 0.011717154646073855, 0.011717154646073855, 0.0],\n", + " [0.0, 0.012175707782304507, 0.012175707782304507, 0.0],\n", + " [0.0, 0.015235624700025211, 0.015235624700025211, 0.012175707782304507],\n", + " [0.0, 0.01823371212890984, 0.01823371212890984, 0.015235624700025211],\n", + " [0.011717154646073855,\n", + " 0.020921895564216,\n", + " 0.020921895564216,\n", + " 0.01823371212890984],\n", + " [0.020244870955380672,\n", + " 0.025294144875841036,\n", + " 0.025294144875841036,\n", + " 0.020921895564216],\n", + " [0.024008647712854939,\n", + " 0.025583262653538344,\n", + " 0.025583262653538344,\n", + " 0.025294144875841036],\n", + " [0.0, 0.0053797356812391277, 0.0053797356812391277, 0.0],\n", + " [0.0, 0.0099945829327688623, 0.0099945829327688623, 0.0053797356812391277],\n", + " [0.0, 0.013477518354649219, 0.013477518354649219, 0.0],\n", + " [0.0, 0.019541941177887247, 0.019541941177887247, 0.013477518354649219],\n", + " [0.0099945829327688623,\n", + " 0.020824514976348671,\n", + " 0.020824514976348671,\n", + " 0.019541941177887247],\n", + " [0.0, 0.028000977304369928, 0.028000977304369928, 0.020824514976348671],\n", + " [0.025583262653538344,\n", + " 0.0346830643542336,\n", + " 0.0346830643542336,\n", + " 0.028000977304369928],\n", + " [0.0, 0.006126979027220569, 0.006126979027220569, 0.0],\n", + " [0.0, 0.0086419639550264667, 0.0086419639550264667, 0.006126979027220569],\n", + " [0.0, 0.0099340018622907852, 0.0099340018622907852, 0.0086419639550264667],\n", + " [0.0, 0.011463652341204085, 0.011463652341204085, 0.0099340018622907852],\n", + " [0.0, 0.013283768441221923, 0.013283768441221923, 0.011463652341204085],\n", + " [0.0, 0.023562387930767224, 0.023562387930767224, 0.013283768441221923],\n", + " [0.0, 0.023888007974717299, 0.023888007974717299, 0.023562387930767224],\n", + " [0.0, 0.028861802247950683, 0.028861802247950683, 0.023888007974717299],\n", + " [0.0, 0.030663198593755513, 0.030663198593755513, 0.028861802247950683],\n", + " [0.0, 0.016182356812282115, 0.016182356812282115, 0.0],\n", + " [0.0, 0.019860874351350276, 0.019860874351350276, 0.016182356812282115],\n", + " [0.0, 0.025526575348055979, 0.025526575348055979, 0.019860874351350276],\n", + " [0.0, 0.034186950858477443, 0.034186950858477443, 0.025526575348055979],\n", + " [0.0, 0.024453119330674948, 0.024453119330674948, 0.0],\n", + " [0.0, 0.0083203597277996776, 0.0083203597277996776, 0.0],\n", + " [0.0, 0.0085275631337445642, 0.0085275631337445642, 0.0083203597277996776],\n", + " [0.0, 0.0098062299075643393, 0.0098062299075643393, 0.0085275631337445642],\n", + " [0.0, 0.010295578274191983, 0.010295578274191983, 0.0098062299075643393],\n", + " [0.0, 0.011325011611472525, 0.011325011611472525, 0.010295578274191983],\n", + " [0.0, 0.019296802688525124, 0.019296802688525124, 0.011325011611472525],\n", + " [0.0, 0.019941441071296456, 0.019941441071296456, 0.019296802688525124],\n", + " [0.0, 0.024885262827626094, 0.024885262827626094, 0.019941441071296456],\n", + " [0.0, 0.0047151383860914373, 0.0047151383860914373, 0.0],\n", + " [0.0, 0.0049543439525286184, 0.0049543439525286184, 0.0047151383860914373],\n", + " [0.0, 0.0092823846612814145, 0.0092823846612814145, 0.0049543439525286184],\n", + " [0.0, 0.0079343208909129596, 0.0079343208909129596, 0.0],\n", + " [0.0, 0.0099556987700487997, 0.0099556987700487997, 0.0],\n", + " [0.0079343208909129596,\n", + " 0.010024234833643817,\n", + " 0.010024234833643817,\n", + " 0.0099556987700487997],\n", + " [0.0092823846612814145,\n", + " 0.01181414237259632,\n", + " 0.01181414237259632,\n", + " 0.010024234833643817],\n", + " [0.0, 0.013740090974952794, 0.013740090974952794, 0.01181414237259632],\n", + " [0.0, 0.016477860844173822, 0.016477860844173822, 0.013740090974952794],\n", + " [0.0, 0.0007982205209101222, 0.0007982205209101222, 0.0],\n", + " [0.0, 0.0058933677977863414, 0.0058933677977863414, 0.0007982205209101222],\n", + " [0.0, 0.008741208268884141, 0.008741208268884141, 0.0058933677977863414],\n", + " [0.0, 0.012538611605757338, 0.012538611605757338, 0.008741208268884141],\n", + " [0.0, 0.017339220859081898, 0.017339220859081898, 0.012538611605757338],\n", + " [0.016477860844173822,\n", + " 0.026052838079564173,\n", + " 0.026052838079564173,\n", + " 0.017339220859081898],\n", + " [0.0, 0.026543482250829958, 0.026543482250829958, 0.026052838079564173],\n", + " [0.0, 0.028304730364373736, 0.028304730364373736, 0.026543482250829958],\n", + " [0.024885262827626094,\n", + " 0.029367727610424471,\n", + " 0.029367727610424471,\n", + " 0.028304730364373736],\n", + " [0.024453119330674948,\n", + " 0.02997219813427119,\n", + " 0.02997219813427119,\n", + " 0.029367727610424471],\n", + " [0.0, 0.03030370183657596, 0.03030370183657596, 0.02997219813427119],\n", + " [0.0, 0.033968851687978939, 0.033968851687978939, 0.03030370183657596],\n", + " [0.0, 0.036319804363461355, 0.036319804363461355, 0.033968851687978939],\n", + " [0.0, 0.036740365335687974, 0.036740365335687974, 0.036319804363461355],\n", + " [0.034186950858477443,\n", + " 0.036749715277808778,\n", + " 0.036749715277808778,\n", + " 0.036740365335687974],\n", + " [0.030663198593755513,\n", + " 0.038861574710762452,\n", + " 0.038861574710762452,\n", + " 0.036749715277808778],\n", + " [0.0346830643542336,\n", + " 0.040079931150139823,\n", + " 0.040079931150139823,\n", + " 0.038861574710762452],\n", + " [0.0095087099545615276,\n", + " 0.04052925315127491,\n", + " 0.04052925315127491,\n", + " 0.040079931150139823],\n", + " [0.039904594585086661,\n", + " 0.040572829060838006,\n", + " 0.040572829060838006,\n", + " 0.04052925315127491],\n", + " [0.0, 0.040654863239218672, 0.040654863239218672, 0.040572829060838006],\n", + " [0.027402901251514355,\n", + " 0.041529265367933527,\n", + " 0.041529265367933527,\n", + " 0.040654863239218672],\n", + " [0.02335072789015381,\n", + " 0.043371676702660344,\n", + " 0.043371676702660344,\n", + " 0.041529265367933527],\n", + " [0.03693055132272121,\n", + " 0.043887920091977776,\n", + " 0.043887920091977776,\n", + " 0.043371676702660344],\n", + " [0.041282390010753803,\n", + " 0.043960332630677182,\n", + " 0.043960332630677182,\n", + " 0.043887920091977776],\n", + " [0.0, 0.044125630873677879, 0.044125630873677879, 0.043960332630677182],\n", + " [0.01295924110432559,\n", + " 0.045925176330632943,\n", + " 0.045925176330632943,\n", + " 0.044125630873677879],\n", + " [0.0, 0.04602883310491316, 0.04602883310491316, 0.045925176330632943],\n", + " [0.0, 0.046550076186839436, 0.046550076186839436, 0.04602883310491316],\n", + " [0.039503035997246673,\n", + " 0.047227390834133708,\n", + " 0.047227390834133708,\n", + " 0.046550076186839436],\n", + " [0.036067928593140522,\n", + " 0.047435428162923107,\n", + " 0.047435428162923107,\n", + " 0.047227390834133708],\n", + " [0.025256613391348562,\n", + " 0.047525474063913026,\n", + " 0.047525474063913026,\n", + " 0.047435428162923107],\n", + " [0.045521656395608991,\n", + " 0.049039198790353671,\n", + " 0.049039198790353671,\n", + " 0.047525474063913026],\n", + " [0.026837139955665567,\n", + " 0.050674635913837827,\n", + " 0.050674635913837827,\n", + " 0.049039198790353671],\n", + " [0.0, 0.051304644624047893, 0.051304644624047893, 0.050674635913837827],\n", + " [0.0, 0.014830590075920877, 0.014830590075920877, 0.0],\n", + " [0.0, 0.020276611575901694, 0.020276611575901694, 0.014830590075920877],\n", + " [0.0, 0.027116079897361794, 0.027116079897361794, 0.020276611575901694],\n", + " [0.0, 0.040686535954784352, 0.040686535954784352, 0.027116079897361794],\n", + " [0.0, 0.041011165918564282, 0.041011165918564282, 0.040686535954784352],\n", + " [0.0, 0.018854345520331887, 0.018854345520331887, 0.0],\n", + " [0.0, 0.013847962016124343, 0.013847962016124343, 0.0],\n", + " [0.0, 0.023145998379849417, 0.023145998379849417, 0.013847962016124343],\n", + " [0.0, 0.0014061753091263217, 0.0014061753091263217, 0.0],\n", + " [0.0, 0.0014474584622710619, 0.0014474584622710619, 0.0],\n", + " [0.0014061753091263217,\n", + " 0.0050861955330092521,\n", + " 0.0050861955330092521,\n", + " 0.0014474584622710619],\n", + " [0.0, 0.0070172020777517601, 0.0070172020777517601, 0.0050861955330092521],\n", + " [0.0, 0.0080135403536780395, 0.0080135403536780395, 0.0070172020777517601],\n", + " [0.0, 0.0089801573482860188, 0.0089801573482860188, 0.0080135403536780395],\n", + " [0.0, 0.0092244311477722978, 0.0092244311477722978, 0.0089801573482860188],\n", + " [0.0, 0.011651159985167071, 0.011651159985167071, 0.0],\n", + " [0.0, 0.015868240041037322, 0.015868240041037322, 0.011651159985167071],\n", + " [0.0092244311477722978,\n", + " 0.023347602981889062,\n", + " 0.023347602981889062,\n", + " 0.015868240041037322],\n", + " [0.0, 0.032811271538908449, 0.032811271538908449, 0.023347602981889062],\n", + " [0.0, 0.033497793360161572, 0.033497793360161572, 0.032811271538908449],\n", + " [0.023145998379849417,\n", + " 0.036857770985234524,\n", + " 0.036857770985234524,\n", + " 0.033497793360161572],\n", + " [0.0, 0.04193261171212799, 0.04193261171212799, 0.036857770985234524],\n", + " [0.018854345520331887,\n", + " 0.047340953137849098,\n", + " 0.047340953137849098,\n", + " 0.04193261171212799],\n", + " [0.041011165918564282,\n", + " 0.052823591850609621,\n", + " 0.052823591850609621,\n", + " 0.047340953137849098],\n", + " [0.051304644624047893,\n", + " 0.052856301970531532,\n", + " 0.052856301970531532,\n", + " 0.052823591850609621],\n", + " [0.0, 0.052977622332450083, 0.052977622332450083, 0.052856301970531532],\n", + " [0.050617202105605962,\n", + " 0.05407877633600669,\n", + " 0.05407877633600669,\n", + " 0.052977622332450083],\n", + " [0.0, 0.054287721668901563, 0.054287721668901563, 0.05407877633600669],\n", + " [0.0, 0.056766080047858804, 0.056766080047858804, 0.054287721668901563],\n", + " [0.0, 0.057024987663305104, 0.057024987663305104, 0.056766080047858804],\n", + " [0.0, 0.057750458110736723, 0.057750458110736723, 0.057024987663305104],\n", + " [0.0, 0.057788964318457918, 0.057788964318457918, 0.057750458110736723],\n", + " [0.0, 0.064091023973719657, 0.064091023973719657, 0.057788964318457918],\n", + " [0.0, 0.064366258505523799, 0.064366258505523799, 0.064091023973719657],\n", + " [0.0, 0.064650231283418916, 0.064650231283418916, 0.064366258505523799],\n", + " [0.0, 0.065981934292650396, 0.065981934292650396, 0.064650231283418916],\n", + " [0.039754078143007195,\n", + " 0.067822886166836946,\n", + " 0.067822886166836946,\n", + " 0.065981934292650396],\n", + " [0.040349496960929154,\n", + " 0.069676350715290256,\n", + " 0.069676350715290256,\n", + " 0.067822886166836946],\n", + " [0.022471757852913655,\n", + " 0.07115404737609575,\n", + " 0.07115404737609575,\n", + " 0.069676350715290256],\n", + " [0.051657046266701298,\n", + " 0.07139722986222552,\n", + " 0.07139722986222552,\n", + " 0.07115404737609575],\n", + " [0.0, 0.072318655850340627, 0.072318655850340627, 0.07139722986222552],\n", + " [0.05151920124574691,\n", + " 0.075572764472395498,\n", + " 0.075572764472395498,\n", + " 0.072318655850340627],\n", + " [0.0, 0.080316879645567441, 0.080316879645567441, 0.0],\n", + " [0.075572764472395498,\n", + " 0.086932911155669451,\n", + " 0.086932911155669451,\n", + " 0.080316879645567441],\n", + " [0.0, 0.097191589970536646, 0.097191589970536646, 0.086932911155669451],\n", + " [0.043626896302625166,\n", + " 0.10782162841007423,\n", + " 0.10782162841007423,\n", + " 0.097191589970536646],\n", + " [0.034645463267215744,\n", + " 0.11189344424049065,\n", + " 0.11189344424049065,\n", + " 0.10782162841007423],\n", + " [0.0, 0.12386838412202243, 0.12386838412202243, 0.11189344424049065],\n", + " [0.0, 0.20354636928719655, 0.20354636928719655, 0.12386838412202243],\n", + " [0.0, 0.24871140418163162, 0.24871140418163162, 0.20354636928719655],\n", + " [0.0, 0.40405133034801483, 0.40405133034801483, 0.24871140418163162],\n", + " [0.11390434780990256,\n", + " 0.50773860781410329,\n", + " 0.50773860781410329,\n", + " 0.40405133034801483],\n", + " [0.47825892879903786,\n", + " 0.53246678175074746,\n", + " 0.53246678175074746,\n", + " 0.50773860781410329],\n", + " [0.12604821256963281,\n", + " 0.70966596674773785,\n", + " 0.70966596674773785,\n", + " 0.53246678175074746],\n", + " [0.24660045835520966,\n", + " 0.8485270872895021,\n", + " 0.8485270872895021,\n", + " 0.70966596674773785],\n", + " [0.06969365977619732,\n", + " 1.0607246793287155,\n", + " 1.0607246793287155,\n", + " 0.8485270872895021],\n", + " [0.0, 1.1961293772870045, 1.1961293772870045, 1.0607246793287155],\n", + " [0.0, 0.0376413478637561, 0.0376413478637561, 0.0],\n", + " [0.0, 0.06182420569647358, 0.06182420569647358, 0.0376413478637561],\n", + " [0.0, 0.06301013050295412, 0.06301013050295412, 0.06182420569647358],\n", + " [0.0, 0.043559444498297857, 0.043559444498297857, 0.0],\n", + " [0.0, 0.066695244763023256, 0.066695244763023256, 0.043559444498297857],\n", + " [0.06301013050295412,\n", + " 0.11230186059455596,\n", + " 0.11230186059455596,\n", + " 0.066695244763023256],\n", + " [0.0, 0.11434568006269434, 0.11434568006269434, 0.11230186059455596],\n", + " [0.0, 0.11620177095466838, 0.11620177095466838, 0.0],\n", + " [0.0, 0.11865098233896158, 0.11865098233896158, 0.11620177095466838],\n", + " [0.0, 0.029016821207704956, 0.029016821207704956, 0.0],\n", + " [0.0, 0.039608981456226267, 0.039608981456226267, 0.0],\n", + " [0.029016821207704956,\n", + " 0.053467731885687271,\n", + " 0.053467731885687271,\n", + " 0.039608981456226267],\n", + " [0.0, 0.014660072032570052, 0.014660072032570052, 0.0],\n", + " [0.0, 0.015819982111244919, 0.015819982111244919, 0.0],\n", + " [0.014660072032570052,\n", + " 0.017854157527027643,\n", + " 0.017854157527027643,\n", + " 0.015819982111244919],\n", + " [0.0, 0.073874903153914956, 0.073874903153914956, 0.0],\n", + " [0.017854157527027643,\n", + " 0.079541250002748615,\n", + " 0.079541250002748615,\n", + " 0.073874903153914956],\n", + " [0.0, 0.079773780065883107, 0.079773780065883107, 0.079541250002748615],\n", + " [0.0, 0.082268198892401556, 0.082268198892401556, 0.079773780065883107],\n", + " [0.0, 0.084756856194644847, 0.084756856194644847, 0.082268198892401556],\n", + " [0.053467731885687271,\n", + " 0.12277174144321371,\n", + " 0.12277174144321371,\n", + " 0.084756856194644847],\n", + " [0.11865098233896158,\n", + " 0.18359587666393465,\n", + " 0.18359587666393465,\n", + " 0.12277174144321371],\n", + " [0.0, 0.20734344704379337, 0.20734344704379337, 0.18359587666393465],\n", + " [0.0, 0.21400000386215029, 0.21400000386215029, 0.20734344704379337],\n", + " [0.11434568006269434,\n", + " 0.31696300910042918,\n", + " 0.31696300910042918,\n", + " 0.21400000386215029],\n", + " [0.0, 0.44655412602393235, 0.44655412602393235, 0.31696300910042918],\n", + " [0.0, 0.13239575540779702, 0.13239575540779702, 0.0],\n", + " [0.0, 0.16456178379258918, 0.16456178379258918, 0.13239575540779702],\n", + " [0.0, 0.22495604790269533, 0.22495604790269533, 0.0],\n", + " [0.0, 0.24420907509754808, 0.24420907509754808, 0.22495604790269533],\n", + " [0.0, 0.24814418211998671, 0.24814418211998671, 0.24420907509754808],\n", + " [0.0, 0.29492834669119361, 0.29492834669119361, 0.24814418211998671],\n", + " [0.0, 1.3527573795980603, 1.3527573795980603, 0.29492834669119361],\n", + " [0.0, 0.0064686134526594488, 0.0064686134526594488, 0.0],\n", + " [0.0, 0.013258977524681572, 0.013258977524681572, 0.0064686134526594488],\n", + " [0.0, 0.021374488204401663, 0.021374488204401663, 0.013258977524681572],\n", + " [0.0, 0.0089112464335786446, 0.0089112464335786446, 0.0],\n", + " [0.0, 0.014432778388100068, 0.014432778388100068, 0.0],\n", + " [0.0, 0.016628081368575718, 0.016628081368575718, 0.014432778388100068],\n", + " [0.0, 0.028780842135008471, 0.028780842135008471, 0.016628081368575718],\n", + " [0.0089112464335786446,\n", + " 0.031564502736455911,\n", + " 0.031564502736455911,\n", + " 0.028780842135008471],\n", + " [0.0, 0.031927124345928294, 0.031927124345928294, 0.031564502736455911],\n", + " [0.021374488204401663,\n", + " 0.033607366350251862,\n", + " 0.033607366350251862,\n", + " 0.031927124345928294],\n", + " [0.0, 0.047456334508684993, 0.047456334508684993, 0.033607366350251862],\n", + " [0.0, 0.052769926738627397, 0.052769926738627397, 0.047456334508684993],\n", + " [0.0, 0.030354267920671595, 0.030354267920671595, 0.0],\n", + " [0.0, 0.032584806889096103, 0.032584806889096103, 0.030354267920671595],\n", + " [0.0, 0.060579247271652446, 0.060579247271652446, 0.032584806889096103],\n", + " [0.052769926738627397,\n", + " 0.076307819428938259,\n", + " 0.076307819428938259,\n", + " 0.060579247271652446],\n", + " [0.0, 0.087108247370726172, 0.087108247370726172, 0.076307819428938259],\n", + " [0.0, 0.093252668406860598, 0.093252668406860598, 0.087108247370726172],\n", + " [0.0, 0.14862312004866851, 0.14862312004866851, 0.0],\n", + " [0.093252668406860598,\n", + " 0.17700729749928745,\n", + " 0.17700729749928745,\n", + " 0.14862312004866851],\n", + " [0.0, 0.081490362381084577, 0.081490362381084577, 0.0],\n", + " [0.0, 0.033427979897086305, 0.033427979897086305, 0.0],\n", + " [0.0, 0.023912172632370231, 0.023912172632370231, 0.0],\n", + " [0.0, 0.086533603415084329, 0.086533603415084329, 0.023912172632370231],\n", + " [0.0, 0.037974071838559852, 0.037974071838559852, 0.0],\n", + " [0.0, 0.069807061490940583, 0.069807061490940583, 0.037974071838559852],\n", + " [0.0, 0.034786037788169175, 0.034786037788169175, 0.0],\n", + " [0.0, 0.054265840820903702, 0.054265840820903702, 0.034786037788169175],\n", + " [0.0, 0.026330570863540511, 0.026330570863540511, 0.0],\n", + " [0.0, 0.04593072728577606, 0.04593072728577606, 0.026330570863540511],\n", + " [0.0, 0.010712453033731821, 0.010712453033731821, 0.0],\n", + " [0.0, 0.01515480451869906, 0.01515480451869906, 0.0],\n", + " [0.010712453033731821,\n", + " 0.054503358217639956,\n", + " 0.054503358217639956,\n", + " 0.01515480451869906],\n", + " [0.04593072728577606,\n", + " 0.058917152383665981,\n", + " 0.058917152383665981,\n", + " 0.054503358217639956],\n", + " [0.0, 0.0012816243599403777, 0.0012816243599403777, 0.0],\n", + " [0.0, 0.0044532758728820987, 0.0044532758728820987, 0.0],\n", + " [0.0, 0.0070788188986609657, 0.0070788188986609657, 0.0044532758728820987],\n", + " [0.0, 0.017257018630105862, 0.017257018630105862, 0.0070788188986609657],\n", + " [0.0, 0.012820287828289497, 0.012820287828289497, 0.0],\n", + " [0.0, 0.020104622354079223, 0.020104622354079223, 0.012820287828289497],\n", + " [0.017257018630105862,\n", + " 0.025578170849378704,\n", + " 0.025578170849378704,\n", + " 0.020104622354079223],\n", + " [0.0, 0.033960499701857362, 0.033960499701857362, 0.0],\n", + " [0.025578170849378704,\n", + " 0.042309564651508251,\n", + " 0.042309564651508251,\n", + " 0.033960499701857362],\n", + " [0.0012816243599403777,\n", + " 0.043604820857334539,\n", + " 0.043604820857334539,\n", + " 0.042309564651508251],\n", + " [0.0, 0.043928616015075465, 0.043928616015075465, 0.043604820857334539],\n", + " [0.0, 0.045780067682341441, 0.045780067682341441, 0.043928616015075465],\n", + " [0.0, 0.046342438358380193, 0.046342438358380193, 0.045780067682341441],\n", + " [0.0, 0.029452223175850813, 0.029452223175850813, 0.0],\n", + " [0.0, 0.032400148302129804, 0.032400148302129804, 0.029452223175850813],\n", + " [0.0, 0.052908378637034188, 0.052908378637034188, 0.032400148302129804],\n", + " [0.046342438358380193,\n", + " 0.062677507967370288,\n", + " 0.062677507967370288,\n", + " 0.052908378637034188],\n", + " [0.058917152383665981,\n", + " 0.073760385641614815,\n", + " 0.073760385641614815,\n", + " 0.062677507967370288],\n", + " [0.0, 0.081019436384118085, 0.081019436384118085, 0.073760385641614815],\n", + " [0.054265840820903702,\n", + " 0.088425539037086956,\n", + " 0.088425539037086956,\n", + " 0.081019436384118085],\n", + " [0.069807061490940583,\n", + " 0.090087045128591031,\n", + " 0.090087045128591031,\n", + " 0.088425539037086956],\n", + " [0.086533603415084329,\n", + " 0.096487531598645357,\n", + " 0.096487531598645357,\n", + " 0.090087045128591031],\n", + " [0.033427979897086305,\n", + " 0.11425791499936197,\n", + " 0.11425791499936197,\n", + " 0.096487531598645357],\n", + " [0.081490362381084577,\n", + " 0.18059379827945332,\n", + " 0.18059379827945332,\n", + " 0.11425791499936197],\n", + " [0.17700729749928745,\n", + " 0.33226632487359042,\n", + " 0.33226632487359042,\n", + " 0.18059379827945332],\n", + " [0.0, 1.3824139754013605, 1.3824139754013605, 0.33226632487359042],\n", + " [0.0, 0.10404206099938379, 0.10404206099938379, 0.0],\n", + " [0.0, 0.28512658118807399, 0.28512658118807399, 0.0],\n", + " [0.0, 0.093692798618679171, 0.093692798618679171, 0.0],\n", + " [0.0, 0.11938051576785635, 0.11938051576785635, 0.093692798618679171],\n", + " [0.0, 0.16405302850298248, 0.16405302850298248, 0.11938051576785635],\n", + " [0.0, 0.20570884762936031, 0.20570884762936031, 0.16405302850298248],\n", + " [0.0, 0.24914913420680751, 0.24914913420680751, 0.20570884762936031],\n", + " [0.0, 0.36411775319805079, 0.36411775319805079, 0.0],\n", + " [0.24914913420680751,\n", + " 0.53445138928063352,\n", + " 0.53445138928063352,\n", + " 0.36411775319805079],\n", + " [0.0, 0.15352406381411285, 0.15352406381411285, 0.0],\n", + " [0.0, 0.30064582685445979, 0.30064582685445979, 0.15352406381411285],\n", + " [0.0, 0.0077631082692477338, 0.0077631082692477338, 0.0],\n", + " [0.0, 0.023343304179140066, 0.023343304179140066, 0.0],\n", + " [0.0, 0.026316593339565892, 0.026316593339565892, 0.023343304179140066],\n", + " [0.0077631082692477338,\n", + " 0.031586200420432003,\n", + " 0.031586200420432003,\n", + " 0.026316593339565892],\n", + " [0.0, 0.074699451383528404, 0.074699451383528404, 0.0],\n", + " [0.0, 0.040105394213251711, 0.040105394213251711, 0.0],\n", + " [0.0, 0.061485644056158938, 0.061485644056158938, 0.040105394213251711],\n", + " [0.0, 0.12294559774143893, 0.12294559774143893, 0.061485644056158938],\n", + " [0.0, 0.20874092984606521, 0.20874092984606521, 0.12294559774143893],\n", + " [0.0, 0.26771299849838542, 0.26771299849838542, 0.20874092984606521],\n", + " [0.074699451383528404,\n", + " 0.33059426266195424,\n", + " 0.33059426266195424,\n", + " 0.26771299849838542],\n", + " [0.0, 0.44313161765439241, 0.44313161765439241, 0.33059426266195424],\n", + " [0.031586200420432003,\n", + " 0.50868005301760832,\n", + " 0.50868005301760832,\n", + " 0.44313161765439241],\n", + " [0.30064582685445979,\n", + " 0.76159697010032879,\n", + " 0.76159697010032879,\n", + " 0.50868005301760832],\n", + " [0.53445138928063352,\n", + " 0.94984456049240173,\n", + " 0.94984456049240173,\n", + " 0.76159697010032879],\n", + " [0.28512658118807399,\n", + " 1.0016776601846478,\n", + " 1.0016776601846478,\n", + " 0.94984456049240173],\n", + " [0.10404206099938379,\n", + " 1.3837788613387614,\n", + " 1.3837788613387614,\n", + " 1.0016776601846478],\n", + " [0.0, 0.015780862619010145, 0.015780862619010145, 0.0],\n", + " [0.0, 0.022668057922990953, 0.022668057922990953, 0.015780862619010145],\n", + " [0.0, 0.03212197112568993, 0.03212197112568993, 0.022668057922990953],\n", + " [0.0, 0.046456258448131608, 0.046456258448131608, 0.03212197112568993],\n", + " [0.0, 0.048363387980988361, 0.048363387980988361, 0.046456258448131608],\n", + " [0.0, 0.069080629600492993, 0.069080629600492993, 0.048363387980988361],\n", + " [0.0, 0.085726798849605684, 0.085726798849605684, 0.069080629600492993],\n", + " [0.0, 0.13003742001823773, 0.13003742001823773, 0.085726798849605684],\n", + " [0.0, 0.13301101590846312, 0.13301101590846312, 0.13003742001823773],\n", + " [0.0, 0.14094496867217135, 0.14094496867217135, 0.13301101590846312],\n", + " [0.0, 0.16101467630312877, 0.16101467630312877, 0.14094496867217135],\n", + " [0.0, 0.54959910681604607, 0.54959910681604607, 0.16101467630312877],\n", + " [0.0, 1.0286430032644929, 1.0286430032644929, 0.54959910681604607],\n", + " [0.0, 1.4074650961657968, 1.4074650961657968, 1.0286430032644929],\n", + " [1.3837788613387614,\n", + " 2.1555533076500297,\n", + " 2.1555533076500297,\n", + " 1.4074650961657968],\n", + " [1.3824139754013605,\n", + " 2.1925234945523449,\n", + " 2.1925234945523449,\n", + " 2.1555533076500297],\n", + " [1.3527573795980603,\n", + " 2.3151013825284155,\n", + " 2.3151013825284155,\n", + " 2.1925234945523449],\n", + " [0.0, 2.3496315246329589, 2.3496315246329589, 2.3151013825284155],\n", + " [0.0, 0.53717702949121371, 0.53717702949121371, 0.0],\n", + " [0.0, 0.067743524923044959, 0.067743524923044959, 0.0],\n", + " [0.0, 0.098273726931462566, 0.098273726931462566, 0.0],\n", + " [0.0, 0.12085925060581405, 0.12085925060581405, 0.0],\n", + " [0.0, 0.22836906117291786, 0.22836906117291786, 0.12085925060581405],\n", + " [0.0, 0.045470819214082608, 0.045470819214082608, 0.0],\n", + " [0.0, 0.059737237473791976, 0.059737237473791976, 0.045470819214082608],\n", + " [0.0, 0.043035897585616371, 0.043035897585616371, 0.0],\n", + " [0.0, 0.10816698437601531, 0.10816698437601531, 0.043035897585616371],\n", + " [0.059737237473791976,\n", + " 0.12522467749209906,\n", + " 0.12522467749209906,\n", + " 0.10816698437601531],\n", + " [0.0, 0.19512672038959708, 0.19512672038959708, 0.12522467749209906],\n", + " [0.0, 0.4084104825784966, 0.4084104825784966, 0.19512672038959708],\n", + " [0.22836906117291786,\n", + " 0.75336982355879056,\n", + " 0.75336982355879056,\n", + " 0.4084104825784966],\n", + " [0.098273726931462566,\n", + " 1.0043055584756031,\n", + " 1.0043055584756031,\n", + " 0.75336982355879056],\n", + " [0.067743524923044959,\n", + " 1.1649147984779855,\n", + " 1.1649147984779855,\n", + " 1.0043055584756031],\n", + " [0.53717702949121371,\n", + " 2.7462508141846751,\n", + " 2.7462508141846751,\n", + " 1.1649147984779855],\n", + " [2.3496315246329589,\n", + " 2.855718309312214,\n", + " 2.855718309312214,\n", + " 2.7462508141846751],\n", + " [0.16456178379258918,\n", + " 3.158308494858125,\n", + " 3.158308494858125,\n", + " 2.855718309312214],\n", + " [0.44655412602393235,\n", + " 3.9705413476992004,\n", + " 3.9705413476992004,\n", + " 3.158308494858125],\n", + " [0.0, 0.019455761614488986, 0.019455761614488986, 0.0],\n", + " [0.0, 0.0049610451519835029, 0.0049610451519835029, 0.0],\n", + " [0.0, 0.0087456600665703522, 0.0087456600665703522, 0.0049610451519835029],\n", + " [0.0, 0.010365553048438033, 0.010365553048438033, 0.0087456600665703522],\n", + " [0.0, 0.017453184265340399, 0.017453184265340399, 0.0],\n", + " [0.010365553048438033,\n", + " 0.022198907720878829,\n", + " 0.022198907720878829,\n", + " 0.017453184265340399],\n", + " [0.019455761614488986,\n", + " 0.024122978195073447,\n", + " 0.024122978195073447,\n", + " 0.022198907720878829],\n", + " [0.0, 0.026232499004095817, 0.026232499004095817, 0.0],\n", + " [0.024122978195073447,\n", + " 0.026564325701962221,\n", + " 0.026564325701962221,\n", + " 0.026232499004095817],\n", + " [0.0, 0.037309139711338202, 0.037309139711338202, 0.026564325701962221],\n", + " [0.0, 0.044554202910614335, 0.044554202910614335, 0.037309139711338202],\n", + " [0.0, 0.050169597058378965, 0.050169597058378965, 0.0],\n", + " [0.0, 0.094631180701711698, 0.094631180701711698, 0.050169597058378965],\n", + " [0.044554202910614335,\n", + " 0.36183450717282412,\n", + " 0.36183450717282412,\n", + " 0.094631180701711698],\n", + " [0.0, 0.16511871504163367, 0.16511871504163367, 0.0],\n", + " [0.0, 0.091988587014912582, 0.091988587014912582, 0.0],\n", + " [0.0, 0.15729268804366039, 0.15729268804366039, 0.0],\n", + " [0.091988587014912582,\n", + " 0.18931804586462492,\n", + " 0.18931804586462492,\n", + " 0.15729268804366039],\n", + " [0.0, 0.011118802813253939, 0.011118802813253939, 0.0],\n", + " [0.0, 0.0027924143675347119, 0.0027924143675347119, 0.0],\n", + " [0.0, 0.046921184565182489, 0.046921184565182489, 0.0027924143675347119],\n", + " [0.0, 0.054243866501204302, 0.054243866501204302, 0.0],\n", + " [0.046921184565182489,\n", + " 0.063127385626207164,\n", + " 0.063127385626207164,\n", + " 0.054243866501204302],\n", + " [0.0, 0.07822827369308398, 0.07822827369308398, 0.063127385626207164],\n", + " [0.011118802813253939,\n", + " 0.081434669060545126,\n", + " 0.081434669060545126,\n", + " 0.07822827369308398],\n", + " [0.0, 0.092168920249718039, 0.092168920249718039, 0.0],\n", + " [0.081434669060545126,\n", + " 0.10071300922919477,\n", + " 0.10071300922919477,\n", + " 0.092168920249718039],\n", + " [0.0, 0.0065519707722166308, 0.0065519707722166308, 0.0],\n", + " [0.0, 0.019147047422512879, 0.019147047422512879, 0.0065519707722166308],\n", + " [0.0, 0.023749369360050485, 0.023749369360050485, 0.019147047422512879],\n", + " [0.0, 0.041590036547232485, 0.041590036547232485, 0.023749369360050485],\n", + " [0.0, 0.056543532043902917, 0.056543532043902917, 0.041590036547232485],\n", + " [0.0, 0.058887830050014613, 0.058887830050014613, 0.056543532043902917],\n", + " [0.0, 0.10991264091996039, 0.10991264091996039, 0.0],\n", + " [0.058887830050014613,\n", + " 0.15008414347291818,\n", + " 0.15008414347291818,\n", + " 0.10991264091996039],\n", + " [0.0, 0.046112597118359494, 0.046112597118359494, 0.0],\n", + " [0.0, 0.050436332985262247, 0.050436332985262247, 0.0],\n", + " [0.046112597118359494,\n", + " 0.12305858471475831,\n", + " 0.12305858471475831,\n", + " 0.050436332985262247],\n", + " [0.0, 0.14077441573311519, 0.14077441573311519, 0.12305858471475831],\n", + " [0.0, 0.024181422001195309, 0.024181422001195309, 0.0],\n", + " [0.0, 0.012976803381420127, 0.012976803381420127, 0.0],\n", + " [0.0, 0.03769209764658938, 0.03769209764658938, 0.0],\n", + " [0.012976803381420127,\n", + " 0.055856615615340596,\n", + " 0.055856615615340596,\n", + " 0.03769209764658938],\n", + " [0.024181422001195309,\n", + " 0.056495174041682472,\n", + " 0.056495174041682472,\n", + " 0.055856615615340596],\n", + " [0.0, 0.062665290935256704, 0.062665290935256704, 0.056495174041682472],\n", + " [0.0, 0.22182070951108393, 0.22182070951108393, 0.062665290935256704],\n", + " [0.14077441573311519,\n", + " 0.24111896151278012,\n", + " 0.24111896151278012,\n", + " 0.22182070951108393],\n", + " [0.15008414347291818,\n", + " 0.24744043405231944,\n", + " 0.24744043405231944,\n", + " 0.24111896151278012],\n", + " [0.10071300922919477,\n", + " 0.29534551702201173,\n", + " 0.29534551702201173,\n", + " 0.24744043405231944],\n", + " [0.0, 0.31038622009522226, 0.31038622009522226, 0.29534551702201173],\n", + " [0.18931804586462492,\n", + " 0.32346105159199673,\n", + " 0.32346105159199673,\n", + " 0.31038622009522226],\n", + " [0.0, 0.057300424090927289, 0.057300424090927289, 0.0],\n", + " [0.0, 0.15638437428656285, 0.15638437428656285, 0.057300424090927289],\n", + " [0.0, 0.1624383542516977, 0.1624383542516977, 0.0],\n", + " [0.15638437428656285,\n", + " 0.19416214082565053,\n", + " 0.19416214082565053,\n", + " 0.1624383542516977],\n", + " [0.0, 0.40914224285082046, 0.40914224285082046, 0.19416214082565053],\n", + " [0.32346105159199673,\n", + " 0.50723592924003491,\n", + " 0.50723592924003491,\n", + " 0.40914224285082046],\n", + " [0.0, 0.52065214382061742, 0.52065214382061742, 0.50723592924003491],\n", + " [0.16511871504163367,\n", + " 0.58252392082213911,\n", + " 0.58252392082213911,\n", + " 0.52065214382061742],\n", + " [0.0, 0.028074275502674328, 0.028074275502674328, 0.0],\n", + " [0.0, 0.063125099358337072, 0.063125099358337072, 0.028074275502674328],\n", + " [0.0, 0.11791851424182852, 0.11791851424182852, 0.063125099358337072],\n", + " [0.0, 0.035804376548125669, 0.035804376548125669, 0.0],\n", + " [0.0, 0.023178977544318788, 0.023178977544318788, 0.0],\n", + " [0.0, 0.021125558832842659, 0.021125558832842659, 0.0],\n", + " [0.0, 0.012702834723005051, 0.012702834723005051, 0.0],\n", + " [0.0, 0.032998168691608758, 0.032998168691608758, 0.012702834723005051],\n", + " [0.021125558832842659,\n", + " 0.034851428579043477,\n", + " 0.034851428579043477,\n", + " 0.032998168691608758],\n", + " [0.023178977544318788,\n", + " 0.040322057090380559,\n", + " 0.040322057090380559,\n", + " 0.034851428579043477],\n", + " [0.035804376548125669,\n", + " 0.043729843219478072,\n", + " 0.043729843219478072,\n", + " 0.040322057090380559],\n", + " [0.0, 0.01917015224248091, 0.01917015224248091, 0.0],\n", + " [0.0, 0.025631049998000744, 0.025631049998000744, 0.01917015224248091],\n", + " [0.0, 0.037492276871374172, 0.037492276871374172, 0.025631049998000744],\n", + " [0.0, 0.038459281441541288, 0.038459281441541288, 0.037492276871374172],\n", + " [0.0, 0.037284442774432248, 0.037284442774432248, 0.0],\n", + " [0.0, 0.0064585973709468669, 0.0064585973709468669, 0.0],\n", + " [0.0, 0.041121834832604391, 0.041121834832604391, 0.0064585973709468669],\n", + " [0.037284442774432248,\n", + " 0.041827448428037053,\n", + " 0.041827448428037053,\n", + " 0.041121834832604391],\n", + " [0.0, 0.041987054028592291, 0.041987054028592291, 0.041827448428037053],\n", + " [0.0, 0.011827525565392214, 0.011827525565392214, 0.0],\n", + " [0.0, 0.013874598732934354, 0.013874598732934354, 0.011827525565392214],\n", + " [0.0, 0.021402312258259993, 0.021402312258259993, 0.013874598732934354],\n", + " [0.0, 0.043314462896360269, 0.043314462896360269, 0.021402312258259993],\n", + " [0.041987054028592291,\n", + " 0.047395480818324731,\n", + " 0.047395480818324731,\n", + " 0.043314462896360269],\n", + " [0.0, 0.049667643733115899, 0.049667643733115899, 0.047395480818324731],\n", + " [0.038459281441541288,\n", + " 0.057355457708925833,\n", + " 0.057355457708925833,\n", + " 0.049667643733115899],\n", + " [0.043729843219478072,\n", + " 0.060055274156397026,\n", + " 0.060055274156397026,\n", + " 0.057355457708925833],\n", + " [0.0, 0.061742378873834811, 0.061742378873834811, 0.060055274156397026],\n", + " [0.0, 0.063941931860087536, 0.063941931860087536, 0.061742378873834811],\n", + " [0.0, 0.070179216937781008, 0.070179216937781008, 0.063941931860087536],\n", + " [0.0, 0.10633125471844598, 0.10633125471844598, 0.070179216937781008],\n", + " [0.0, 0.052103041417946042, 0.052103041417946042, 0.0],\n", + " [0.0, 0.025106943919960836, 0.025106943919960836, 0.0],\n", + " [0.0, 0.042976218097921404, 0.042976218097921404, 0.025106943919960836],\n", + " [0.0, 0.047482393473789401, 0.047482393473789401, 0.042976218097921404],\n", + " [0.0, 0.015072090896755168, 0.015072090896755168, 0.0],\n", + " [0.0, 0.031183252075431798, 0.031183252075431798, 0.0],\n", + " [0.0, 0.048442617352906003, 0.048442617352906003, 0.031183252075431798],\n", + " [0.0, 0.049676535003966127, 0.049676535003966127, 0.048442617352906003],\n", + " [0.0, 0.053578648956459134, 0.053578648956459134, 0.049676535003966127],\n", + " [0.015072090896755168,\n", + " 0.058302261920100996,\n", + " 0.058302261920100996,\n", + " 0.053578648956459134],\n", + " [0.047482393473789401,\n", + " 0.066146778976757803,\n", + " 0.066146778976757803,\n", + " 0.058302261920100996],\n", + " [0.052103041417946042,\n", + " 0.083200335155576427,\n", + " 0.083200335155576427,\n", + " 0.066146778976757803],\n", + " [0.0, 0.1596093042150151, 0.1596093042150151, 0.083200335155576427],\n", + " [0.0, 0.03933770685995755, 0.03933770685995755, 0.0],\n", + " [0.0, 0.040464075783339853, 0.040464075783339853, 0.0],\n", + " [0.0, 0.013587480487569721, 0.013587480487569721, 0.0],\n", + " [0.0, 0.043262335500987188, 0.043262335500987188, 0.0],\n", + " [0.013587480487569721,\n", + " 0.057028589154913108,\n", + " 0.057028589154913108,\n", + " 0.043262335500987188],\n", + " [0.0, 0.060068950415333409, 0.060068950415333409, 0.057028589154913108],\n", + " [0.040464075783339853,\n", + " 0.063492373597152457,\n", + " 0.063492373597152457,\n", + " 0.060068950415333409],\n", + " [0.0, 0.050544916460512075, 0.050544916460512075, 0.0],\n", + " [0.0, 0.02133923058594529, 0.02133923058594529, 0.0],\n", + " [0.0, 0.034342853477830206, 0.034342853477830206, 0.02133923058594529],\n", + " [0.0, 0.0051771313485339575, 0.0051771313485339575, 0.0],\n", + " [0.0, 0.0084161317123745191, 0.0084161317123745191, 0.0051771313485339575],\n", + " [0.0, 0.010527501365472008, 0.010527501365472008, 0.0],\n", + " [0.0, 0.017304429028432933, 0.017304429028432933, 0.0],\n", + " [0.0, 0.0099219696129353805, 0.0099219696129353805, 0.0],\n", + " [0.0, 0.013991187833778757, 0.013991187833778757, 0.0099219696129353805],\n", + " [0.0, 0.014220324363389811, 0.014220324363389811, 0.013991187833778757],\n", + " [0.0, 0.016087050972753907, 0.016087050972753907, 0.014220324363389811],\n", + " [0.0, 0.018996754670204671, 0.018996754670204671, 0.016087050972753907],\n", + " [0.017304429028432933,\n", + " 0.023238386346730786,\n", + " 0.023238386346730786,\n", + " 0.018996754670204671],\n", + " [0.010527501365472008,\n", + " 0.031930720082703597,\n", + " 0.031930720082703597,\n", + " 0.023238386346730786],\n", + " [0.0, 0.033982370561806099, 0.033982370561806099, 0.031930720082703597],\n", + " [0.0084161317123745191,\n", + " 0.035247539048847289,\n", + " 0.035247539048847289,\n", + " 0.033982370561806099],\n", + " [0.0, 0.035324483704648177, 0.035324483704648177, 0.035247539048847289],\n", + " [0.0, 0.036770918359484997, 0.036770918359484997, 0.035324483704648177],\n", + " [0.034342853477830206,\n", + " 0.037778825021435584,\n", + " 0.037778825021435584,\n", + " 0.036770918359484997],\n", + " [0.0, 0.0080956932995264203, 0.0080956932995264203, 0.0],\n", + " [0.0, 0.012301172342503847, 0.012301172342503847, 0.0080956932995264203],\n", + " [0.0, 0.018898003201396785, 0.018898003201396785, 0.012301172342503847],\n", + " [0.0, 0.0038750929021119152, 0.0038750929021119152, 0.0],\n", + " [0.0, 0.0079530261536066293, 0.0079530261536066293, 0.0],\n", + " [0.0038750929021119152,\n", + " 0.010702483683709336,\n", + " 0.010702483683709336,\n", + " 0.0079530261536066293],\n", + " [0.0, 0.0013761398911478315, 0.0013761398911478315, 0.0],\n", + " [0.0, 0.0108715997442862, 0.0108715997442862, 0.0013761398911478315],\n", + " [0.0, 0.011296353615215056, 0.011296353615215056, 0.0108715997442862],\n", + " [0.010702483683709336,\n", + " 0.013405217976592679,\n", + " 0.013405217976592679,\n", + " 0.011296353615215056],\n", + " [0.0, 0.023391531843814348, 0.023391531843814348, 0.013405217976592679],\n", + " [0.0, 0.027275649231503832, 0.027275649231503832, 0.023391531843814348],\n", + " [0.018898003201396785,\n", + " 0.031408627493096773,\n", + " 0.031408627493096773,\n", + " 0.027275649231503832],\n", + " [0.0, 0.036732091527705596, 0.036732091527705596, 0.031408627493096773],\n", + " [0.0, 0.038398154031152272, 0.038398154031152272, 0.036732091527705596],\n", + " [0.037778825021435584,\n", + " 0.039233418624946545,\n", + " 0.039233418624946545,\n", + " 0.038398154031152272],\n", + " [0.0, 0.041788323022103765, 0.041788323022103765, 0.039233418624946545],\n", + " [0.0, 0.048938111794388714, 0.048938111794388714, 0.0],\n", + " [0.041788323022103765,\n", + " 0.071530984740879391,\n", + " 0.071530984740879391,\n", + " 0.048938111794388714],\n", + " [0.050544916460512075,\n", + " 0.16971627183331567,\n", + " 0.16971627183331567,\n", + " 0.071530984740879391],\n", + " [0.0, 0.2038857984362778, 0.2038857984362778, 0.16971627183331567],\n", + " [0.0, 0.032551378619040401, 0.032551378619040401, 0.0],\n", + " [0.0, 0.065129064510405829, 0.065129064510405829, 0.032551378619040401],\n", + " [0.0, 0.085087662019825441, 0.085087662019825441, 0.065129064510405829],\n", + " [0.0, 0.024311534813747891, 0.024311534813747891, 0.0],\n", + " [0.0, 0.071150655239428817, 0.071150655239428817, 0.024311534813747891],\n", + " [0.0, 0.041316469863722921, 0.041316469863722921, 0.0],\n", + " [0.0, 0.016682128311458402, 0.016682128311458402, 0.0],\n", + " [0.0, 0.05156823473806009, 0.05156823473806009, 0.016682128311458402],\n", + " [0.0, 0.05710802915528182, 0.05710802915528182, 0.05156823473806009],\n", + " [0.0, 0.066046760193064408, 0.066046760193064408, 0.05710802915528182],\n", + " [0.041316469863722921,\n", + " 0.075604126884715128,\n", + " 0.075604126884715128,\n", + " 0.066046760193064408],\n", + " [0.071150655239428817,\n", + " 0.08201664187834011,\n", + " 0.08201664187834011,\n", + " 0.075604126884715128],\n", + " [0.0, 0.088655220805091431, 0.088655220805091431, 0.08201664187834011],\n", + " [0.0, 0.099243487856888163, 0.099243487856888163, 0.088655220805091431],\n", + " [0.085087662019825441,\n", + " 0.14466520277177872,\n", + " 0.14466520277177872,\n", + " 0.099243487856888163],\n", + " [0.0, 0.18217787943106764, 0.18217787943106764, 0.0],\n", + " [0.0, 0.0083224233249679525, 0.0083224233249679525, 0.0],\n", + " [0.0, 0.030517390615844544, 0.030517390615844544, 0.0],\n", + " [0.0, 0.042979116335726514, 0.042979116335726514, 0.030517390615844544],\n", + " [0.0083224233249679525,\n", + " 0.044673234906376154,\n", + " 0.044673234906376154,\n", + " 0.042979116335726514],\n", + " [0.0, 0.012001777576675962, 0.012001777576675962, 0.0],\n", + " [0.0, 0.011049319255048391, 0.011049319255048391, 0.0],\n", + " [0.0, 0.023651892292162646, 0.023651892292162646, 0.011049319255048391],\n", + " [0.0, 0.038013919818927974, 0.038013919818927974, 0.0],\n", + " [0.023651892292162646,\n", + " 0.044273554194350827,\n", + " 0.044273554194350827,\n", + " 0.038013919818927974],\n", + " [0.012001777576675962,\n", + " 0.044727341459110746,\n", + " 0.044727341459110746,\n", + " 0.044273554194350827],\n", + " [0.0, 0.055418335467605093, 0.055418335467605093, 0.044727341459110746],\n", + " [0.0, 0.065297925885898445, 0.065297925885898445, 0.055418335467605093],\n", + " [0.044673234906376154,\n", + " 0.25271844741727612,\n", + " 0.25271844741727612,\n", + " 0.065297925885898445],\n", + " [0.18217787943106764,\n", + " 0.26012791598365387,\n", + " 0.26012791598365387,\n", + " 0.25271844741727612],\n", + " [0.14466520277177872,\n", + " 0.41342012463473371,\n", + " 0.41342012463473371,\n", + " 0.26012791598365387],\n", + " [0.2038857984362778,\n", + " 0.50578586106473944,\n", + " 0.50578586106473944,\n", + " 0.41342012463473371],\n", + " [0.063492373597152457,\n", + " 0.53771333917339426,\n", + " 0.53771333917339426,\n", + " 0.50578586106473944],\n", + " [0.0, 0.02322120556732582, 0.02322120556732582, 0.0],\n", + " [0.0, 0.043481853226375204, 0.043481853226375204, 0.02322120556732582],\n", + " [0.0, 0.033648919224846155, 0.033648919224846155, 0.0],\n", + " [0.0, 0.035040145262255656, 0.035040145262255656, 0.033648919224846155],\n", + " [0.0, 0.03948675520981236, 0.03948675520981236, 0.035040145262255656],\n", + " [0.0, 0.0494967147293639, 0.0494967147293639, 0.0],\n", + " [0.03948675520981236,\n", + " 0.057826544631335103,\n", + " 0.057826544631335103,\n", + " 0.0494967147293639],\n", + " [0.0, 0.062778242417257241, 0.062778242417257241, 0.057826544631335103],\n", + " [0.043481853226375204,\n", + " 0.066824376525339971,\n", + " 0.066824376525339971,\n", + " 0.062778242417257241],\n", + " [0.0, 0.068281707367348912, 0.068281707367348912, 0.066824376525339971],\n", + " [0.0, 0.035510742050822511, 0.035510742050822511, 0.0],\n", + " [0.0, 0.033611791219748589, 0.033611791219748589, 0.0],\n", + " [0.0, 0.035792032185949584, 0.035792032185949584, 0.033611791219748589],\n", + " [0.035510742050822511,\n", + " 0.072353443269826789,\n", + " 0.072353443269826789,\n", + " 0.035792032185949584],\n", + " [0.0, 0.074705136101870934, 0.074705136101870934, 0.072353443269826789],\n", + " [0.0, 0.0062443454420765231, 0.0062443454420765231, 0.0],\n", + " [0.0, 0.01020361788778941, 0.01020361788778941, 0.0062443454420765231],\n", + " [0.0, 0.016600546527149894, 0.016600546527149894, 0.01020361788778941],\n", + " [0.0, 0.017075298708952222, 0.017075298708952222, 0.016600546527149894],\n", + " [0.0, 0.021598562567910533, 0.021598562567910533, 0.017075298708952222],\n", + " [0.0, 0.027308618877562335, 0.027308618877562335, 0.021598562567910533],\n", + " [0.0, 0.020894251003563773, 0.020894251003563773, 0.0],\n", + " [0.0, 0.018154843348266926, 0.018154843348266926, 0.0],\n", + " [0.0, 0.016766904454906553, 0.016766904454906553, 0.0],\n", + " [0.0, 0.0012988248534735168, 0.0012988248534735168, 0.0],\n", + " [0.0, 0.0066730146111051523, 0.0066730146111051523, 0.0],\n", + " [0.0, 0.0097301317565582843, 0.0097301317565582843, 0.0066730146111051523],\n", + " [0.0, 0.011718614807217646, 0.011718614807217646, 0.0],\n", + " [0.0097301317565582843,\n", + " 0.012758337548440343,\n", + " 0.012758337548440343,\n", + " 0.011718614807217646],\n", + " [0.0, 0.015851526424924333, 0.015851526424924333, 0.012758337548440343],\n", + " [0.0012988248534735168,\n", + " 0.016015509139579137,\n", + " 0.016015509139579137,\n", + " 0.015851526424924333],\n", + " [0.0, 0.017131209998127624, 0.017131209998127624, 0.0],\n", + " [0.0, 0.023057346790125735, 0.023057346790125735, 0.017131209998127624],\n", + " [0.016015509139579137,\n", + " 0.026572281798899599,\n", + " 0.026572281798899599,\n", + " 0.023057346790125735],\n", + " [0.016766904454906553,\n", + " 0.027665793174965002,\n", + " 0.027665793174965002,\n", + " 0.026572281798899599],\n", + " [0.018154843348266926,\n", + " 0.031526522691218743,\n", + " 0.031526522691218743,\n", + " 0.027665793174965002],\n", + " [0.020894251003563773,\n", + " 0.034423506227579725,\n", + " 0.034423506227579725,\n", + " 0.031526522691218743],\n", + " [0.0, 0.03543053159352675, 0.03543053159352675, 0.034423506227579725],\n", + " [0.027308618877562335,\n", + " 0.04079198226367859,\n", + " 0.04079198226367859,\n", + " 0.03543053159352675],\n", + " [0.0, 0.042141015282025157, 0.042141015282025157, 0.04079198226367859],\n", + " [0.0, 0.049100646716716247, 0.049100646716716247, 0.042141015282025157],\n", + " [0.0, 0.057636272641450395, 0.057636272641450395, 0.049100646716716247],\n", + " [0.0, 0.077086192855790672, 0.077086192855790672, 0.057636272641450395],\n", + " [0.0, 0.041389942208225977, 0.041389942208225977, 0.0],\n", + " [0.0, 0.050367726978689922, 0.050367726978689922, 0.0],\n", + " [0.0, 0.071596724855259364, 0.071596724855259364, 0.050367726978689922],\n", + " [0.041389942208225977,\n", + " 0.079279314609802184,\n", + " 0.079279314609802184,\n", + " 0.071596724855259364],\n", + " [0.077086192855790672,\n", + " 0.085585415731887146,\n", + " 0.085585415731887146,\n", + " 0.079279314609802184],\n", + " [0.074705136101870934,\n", + " 0.11310160213277254,\n", + " 0.11310160213277254,\n", + " 0.085585415731887146],\n", + " [0.0, 0.11329652835811221, 0.11329652835811221, 0.11310160213277254],\n", + " [0.068281707367348912,\n", + " 0.15856049839099376,\n", + " 0.15856049839099376,\n", + " 0.11329652835811221],\n", + " [0.0, 0.16613860108355624, 0.16613860108355624, 0.15856049839099376],\n", + " [0.0, 0.017413644362973112, 0.017413644362973112, 0.0],\n", + " [0.0, 0.02284384556067711, 0.02284384556067711, 0.017413644362973112],\n", + " [0.0, 0.022945636840149636, 0.022945636840149636, 0.02284384556067711],\n", + " [0.0, 0.029624128679168343, 0.029624128679168343, 0.022945636840149636],\n", + " [0.0, 0.037291622718783148, 0.037291622718783148, 0.0],\n", + " [0.029624128679168343,\n", + " 0.059113064850334254,\n", + " 0.059113064850334254,\n", + " 0.037291622718783148],\n", + " [0.0, 0.1182043363375528, 0.1182043363375528, 0.059113064850334254],\n", + " [0.0, 0.024492951680022156, 0.024492951680022156, 0.0],\n", + " [0.0, 0.019300369167453389, 0.019300369167453389, 0.0],\n", + " [0.0, 0.052473872889278454, 0.052473872889278454, 0.019300369167453389],\n", + " [0.0, 0.060790256011963958, 0.060790256011963958, 0.052473872889278454],\n", + " [0.024492951680022156,\n", + " 0.12111834344970297,\n", + " 0.12111834344970297,\n", + " 0.060790256011963958],\n", + " [0.1182043363375528,\n", + " 0.19165857396161376,\n", + " 0.19165857396161376,\n", + " 0.12111834344970297],\n", + " [0.16613860108355624,\n", + " 0.21544398839837953,\n", + " 0.21544398839837953,\n", + " 0.19165857396161376],\n", + " [0.0, 0.03322555517971347, 0.03322555517971347, 0.0],\n", + " [0.0, 0.046993472280732917, 0.046993472280732917, 0.03322555517971347],\n", + " [0.0, 0.05154279411324357, 0.05154279411324357, 0.0],\n", + " [0.046993472280732917,\n", + " 0.064507183382939898,\n", + " 0.064507183382939898,\n", + " 0.05154279411324357],\n", + " [0.0, 0.10817006743549581, 0.10817006743549581, 0.0],\n", + " [0.064507183382939898,\n", + " 0.11861685027853232,\n", + " 0.11861685027853232,\n", + " 0.10817006743549581],\n", + " [0.0, 0.14313570600307696, 0.14313570600307696, 0.11861685027853232],\n", + " [0.0, 0.049428871279853723, 0.049428871279853723, 0.0],\n", + " [0.0, 0.064652898620246854, 0.064652898620246854, 0.049428871279853723],\n", + " [0.0, 0.085798792742088278, 0.085798792742088278, 0.064652898620246854],\n", + " [0.0, 0.12625295299913028, 0.12625295299913028, 0.0],\n", + " [0.0, 0.060128159293299482, 0.060128159293299482, 0.0],\n", + " [0.0, 0.10111066361665449, 0.10111066361665449, 0.060128159293299482],\n", + " [0.0, 0.051090226981292751, 0.051090226981292751, 0.0],\n", + " [0.0, 0.058254168820781022, 0.058254168820781022, 0.0],\n", + " [0.0, 0.030391366833361067, 0.030391366833361067, 0.0],\n", + " [0.0, 0.01102818285122477, 0.01102818285122477, 0.0],\n", + " [0.0, 0.01165713897146284, 0.01165713897146284, 0.01102818285122477],\n", + " [0.0, 0.023389447620670016, 0.023389447620670016, 0.01165713897146284],\n", + " [0.0, 0.023757545432976934, 0.023757545432976934, 0.023389447620670016],\n", + " [0.0, 0.027586795681993688, 0.027586795681993688, 0.023757545432976934],\n", + " [0.0, 0.034092681164728134, 0.034092681164728134, 0.027586795681993688],\n", + " [0.030391366833361067,\n", + " 0.035557808059553456,\n", + " 0.035557808059553456,\n", + " 0.034092681164728134],\n", + " [0.0, 0.035619799901176231, 0.035619799901176231, 0.035557808059553456],\n", + " [0.0, 0.010712414900475186, 0.010712414900475186, 0.0],\n", + " [0.0, 0.019273954576059796, 0.019273954576059796, 0.0],\n", + " [0.010712414900475186,\n", + " 0.023729070946838508,\n", + " 0.023729070946838508,\n", + " 0.019273954576059796],\n", + " [0.0, 0.025281220401713916, 0.025281220401713916, 0.023729070946838508],\n", + " [0.0, 0.0082922984147945997, 0.0082922984147945997, 0.0],\n", + " [0.0, 0.013781897148071046, 0.013781897148071046, 0.0082922984147945997],\n", + " [0.0, 0.0254555740457756, 0.0254555740457756, 0.013781897148071046],\n", + " [0.025281220401713916,\n", + " 0.036845240479604864,\n", + " 0.036845240479604864,\n", + " 0.0254555740457756],\n", + " [0.035619799901176231,\n", + " 0.039578549708145248,\n", + " 0.039578549708145248,\n", + " 0.036845240479604864],\n", + " [0.0, 0.042492815322122207, 0.042492815322122207, 0.039578549708145248],\n", + " [0.0, 0.046142058655851789, 0.046142058655851789, 0.042492815322122207],\n", + " [0.0, 0.049303235238679577, 0.049303235238679577, 0.046142058655851789],\n", + " [0.0, 0.031816206593497015, 0.031816206593497015, 0.0],\n", + " [0.0, 0.01113069598003754, 0.01113069598003754, 0.0],\n", + " [0.0, 0.019448689236040033, 0.019448689236040033, 0.0],\n", + " [0.0, 0.0098298916575955513, 0.0098298916575955513, 0.0],\n", + " [0.0, 0.020768142165343593, 0.020768142165343593, 0.0098298916575955513],\n", + " [0.019448689236040033,\n", + " 0.036867450711970333,\n", + " 0.036867450711970333,\n", + " 0.020768142165343593],\n", + " [0.01113069598003754,\n", + " 0.040699067704310657,\n", + " 0.040699067704310657,\n", + " 0.036867450711970333],\n", + " [0.0, 0.046452151941538532, 0.046452151941538532, 0.040699067704310657],\n", + " [0.0, 0.021012005758614758, 0.021012005758614758, 0.0],\n", + " [0.0, 0.032414164342151108, 0.032414164342151108, 0.021012005758614758],\n", + " [0.0, 0.032655006415554182, 0.032655006415554182, 0.032414164342151108],\n", + " [0.0, 0.012349729430234997, 0.012349729430234997, 0.0],\n", + " [0.0, 0.007636644943952102, 0.007636644943952102, 0.0],\n", + " [0.0, 0.014977918580362059, 0.014977918580362059, 0.007636644943952102],\n", + " [0.0, 0.0062592338988058296, 0.0062592338988058296, 0.0],\n", + " [0.0, 0.0083057934599854548, 0.0083057934599854548, 0.0062592338988058296],\n", + " [0.0, 0.018779440353749632, 0.018779440353749632, 0.0],\n", + " [0.0, 0.0273894706228489, 0.0273894706228489, 0.018779440353749632],\n", + " [0.0, 0.0093913239215786624, 0.0093913239215786624, 0.0],\n", + " [0.0, 0.010902217939483417, 0.010902217939483417, 0.0],\n", + " [0.0093913239215786624,\n", + " 0.0177223892858752,\n", + " 0.0177223892858752,\n", + " 0.010902217939483417],\n", + " [0.0, 0.0071440417831917322, 0.0071440417831917322, 0.0],\n", + " [0.0, 0.0085210825603315287, 0.0085210825603315287, 0.0071440417831917322],\n", + " [0.0, 0.015684244451044004, 0.015684244451044004, 0.0085210825603315287],\n", + " [0.0, 0.0053428454029697788, 0.0053428454029697788, 0.0],\n", + " [0.0, 0.0073037700538798695, 0.0073037700538798695, 0.0053428454029697788],\n", + " [0.0, 0.02146832317624851, 0.02146832317624851, 0.0073037700538798695],\n", + " [0.015684244451044004,\n", + " 0.021619005805076804,\n", + " 0.021619005805076804,\n", + " 0.02146832317624851],\n", + " [0.0177223892858752,\n", + " 0.028971548957551555,\n", + " 0.028971548957551555,\n", + " 0.021619005805076804],\n", + " [0.0273894706228489,\n", + " 0.030880190171047116,\n", + " 0.030880190171047116,\n", + " 0.028971548957551555],\n", + " [0.0083057934599854548,\n", + " 0.031512652760440088,\n", + " 0.031512652760440088,\n", + " 0.030880190171047116],\n", + " [0.0, 0.0051513913654497685, 0.0051513913654497685, 0.0],\n", + " [0.0, 0.016295745610431955, 0.016295745610431955, 0.0051513913654497685],\n", + " [0.0, 0.012841683106196539, 0.012841683106196539, 0.0],\n", + " [0.0, 0.01064385691373081, 0.01064385691373081, 0.0],\n", + " [0.0, 0.015250019278677725, 0.015250019278677725, 0.01064385691373081],\n", + " [0.012841683106196539,\n", + " 0.027586549077405022,\n", + " 0.027586549077405022,\n", + " 0.015250019278677725],\n", + " [0.0, 0.0077506813248888178, 0.0077506813248888178, 0.0],\n", + " [0.0, 0.019767610503044149, 0.019767610503044149, 0.0],\n", + " [0.0077506813248888178,\n", + " 0.022563988698805017,\n", + " 0.022563988698805017,\n", + " 0.019767610503044149],\n", + " [0.0, 0.0059087915854253055, 0.0059087915854253055, 0.0],\n", + " [0.0, 0.008630485096450426, 0.008630485096450426, 0.0],\n", + " [0.0059087915854253055,\n", + " 0.017159138556464212,\n", + " 0.017159138556464212,\n", + " 0.008630485096450426],\n", + " [0.0, 0.022124187533104099, 0.022124187533104099, 0.017159138556464212],\n", + " [0.0, 0.024333951364303639, 0.024333951364303639, 0.022124187533104099],\n", + " [0.022563988698805017,\n", + " 0.02499468201438038,\n", + " 0.02499468201438038,\n", + " 0.024333951364303639],\n", + " [0.0, 0.0058550522627899924, 0.0058550522627899924, 0.0],\n", + " [0.0, 0.014413012072429567, 0.014413012072429567, 0.0058550522627899924],\n", + " [0.0, 0.017138794006578244, 0.017138794006578244, 0.014413012072429567],\n", + " [0.0, 0.020950258470960322, 0.020950258470960322, 0.017138794006578244],\n", + " [0.0, 0.022560384859309481, 0.022560384859309481, 0.020950258470960322],\n", + " [0.0, 0.0090426025567859544, 0.0090426025567859544, 0.0],\n", + " [0.0, 0.019297017412024574, 0.019297017412024574, 0.0090426025567859544],\n", + " [0.0, 0.019473089636731496, 0.019473089636731496, 0.019297017412024574],\n", + " [0.0, 0.024382640074448233, 0.024382640074448233, 0.019473089636731496],\n", + " [0.0, 0.026672325676623206, 0.026672325676623206, 0.024382640074448233],\n", + " [0.022560384859309481,\n", + " 0.02673221371304434,\n", + " 0.02673221371304434,\n", + " 0.026672325676623206],\n", + " [0.02499468201438038,\n", + " 0.027507760686760179,\n", + " 0.027507760686760179,\n", + " 0.02673221371304434],\n", + " [0.0, 0.011636177422157478, 0.011636177422157478, 0.0],\n", + " [0.0, 0.021471676692796735, 0.021471676692796735, 0.0],\n", + " [0.011636177422157478,\n", + " 0.029939050519345627,\n", + " 0.029939050519345627,\n", + " 0.021471676692796735],\n", + " [0.027507760686760179,\n", + " 0.03238405919584373,\n", + " 0.03238405919584373,\n", + " 0.029939050519345627],\n", + " [0.027586549077405022,\n", + " 0.032538444600194491,\n", + " 0.032538444600194491,\n", + " 0.03238405919584373],\n", + " [0.016295745610431955,\n", + " 0.032938793860734096,\n", + " 0.032938793860734096,\n", + " 0.032538444600194491],\n", + " [0.031512652760440088,\n", + " 0.033027003406304344,\n", + " 0.033027003406304344,\n", + " 0.032938793860734096],\n", + " [0.014977918580362059,\n", + " 0.035948262447581654,\n", + " 0.035948262447581654,\n", + " 0.033027003406304344],\n", + " [0.012349729430234997,\n", + " 0.037585491735507841,\n", + " 0.037585491735507841,\n", + " 0.035948262447581654],\n", + " [0.0, 0.039967135223833397, 0.039967135223833397, 0.037585491735507841],\n", + " [0.0, 0.042069311784247498, 0.042069311784247498, 0.039967135223833397],\n", + " [0.0, 0.045382767225017509, 0.045382767225017509, 0.042069311784247498],\n", + " [0.0, 0.035401293902906278, 0.035401293902906278, 0.0],\n", + " [0.0, 0.035812854186729415, 0.035812854186729415, 0.035401293902906278],\n", + " [0.0, 0.013318653685716626, 0.013318653685716626, 0.0],\n", + " [0.0, 0.0046469802022372055, 0.0046469802022372055, 0.0],\n", + " [0.0, 0.0066843494821871262, 0.0066843494821871262, 0.0],\n", + " [0.0, 0.011573200292056286, 0.011573200292056286, 0.0066843494821871262],\n", + " [0.0046469802022372055,\n", + " 0.013399888395056543,\n", + " 0.013399888395056543,\n", + " 0.011573200292056286],\n", + " [0.013318653685716626,\n", + " 0.022303453723582344,\n", + " 0.022303453723582344,\n", + " 0.013399888395056543],\n", + " [0.0, 0.0297469320939126, 0.0297469320939126, 0.0],\n", + " [0.022303453723582344,\n", + " 0.030500858283005357,\n", + " 0.030500858283005357,\n", + " 0.0297469320939126],\n", + " [0.0, 0.0073414811175929583, 0.0073414811175929583, 0.0],\n", + " [0.0, 0.017510936725372288, 0.017510936725372288, 0.0],\n", + " [0.0, 0.034598020131214817, 0.034598020131214817, 0.017510936725372288],\n", + " [0.0073414811175929583,\n", + " 0.0372574807656137,\n", + " 0.0372574807656137,\n", + " 0.034598020131214817],\n", + " [0.0, 0.039140003027591692, 0.039140003027591692, 0.0372574807656137],\n", + " [0.030500858283005357,\n", + " 0.040594279104326579,\n", + " 0.040594279104326579,\n", + " 0.039140003027591692],\n", + " [0.035812854186729415,\n", + " 0.044549720762308627,\n", + " 0.044549720762308627,\n", + " 0.040594279104326579],\n", + " [0.0, 0.048140260281805659, 0.048140260281805659, 0.044549720762308627],\n", + " [0.0, 0.048552255529481447, 0.048552255529481447, 0.048140260281805659],\n", + " [0.045382767225017509,\n", + " 0.048948604413199079,\n", + " 0.048948604413199079,\n", + " 0.048552255529481447],\n", + " [0.032655006415554182,\n", + " 0.050750001871923647,\n", + " 0.050750001871923647,\n", + " 0.048948604413199079],\n", + " [0.0, 0.051036910417853638, 0.051036910417853638, 0.050750001871923647],\n", + " [0.0, 0.052028779978006874, 0.052028779978006874, 0.051036910417853638],\n", + " [0.046452151941538532,\n", + " 0.052229994495498581,\n", + " 0.052229994495498581,\n", + " 0.052028779978006874],\n", + " [0.0, 0.054336488311267667, 0.054336488311267667, 0.052229994495498581],\n", + " [0.031816206593497015,\n", + " 0.055016754220875493,\n", + " 0.055016754220875493,\n", + " 0.054336488311267667],\n", + " [0.049303235238679577,\n", + " 0.056775598719874455,\n", + " 0.056775598719874455,\n", + " 0.055016754220875493],\n", + " [0.0, 0.065059916077413557, 0.065059916077413557, 0.056775598719874455],\n", + " [0.0, 0.069677414999407328, 0.069677414999407328, 0.065059916077413557],\n", + " [0.0, 0.051599814612071353, 0.051599814612071353, 0.0],\n", + " [0.0, 0.044883700571589628, 0.044883700571589628, 0.0],\n", + " [0.0, 0.06436661464610216, 0.06436661464610216, 0.044883700571589628],\n", + " [0.0, 0.021131775812739808, 0.021131775812739808, 0.0],\n", + " [0.0, 0.015260473944149268, 0.015260473944149268, 0.0],\n", + " [0.0, 0.046785440470303162, 0.046785440470303162, 0.015260473944149268],\n", + " [0.0, 0.052233444353210708, 0.052233444353210708, 0.046785440470303162],\n", + " [0.0, 0.0137345275856146, 0.0137345275856146, 0.0],\n", + " [0.0, 0.016439016181025917, 0.016439016181025917, 0.0],\n", + " [0.0137345275856146,\n", + " 0.032808092919279545,\n", + " 0.032808092919279545,\n", + " 0.016439016181025917],\n", + " [0.0, 0.020149521731296201, 0.020149521731296201, 0.0],\n", + " [0.0, 0.021685105971609574, 0.021685105971609574, 0.020149521731296201],\n", + " [0.0, 0.014724365690921292, 0.014724365690921292, 0.0],\n", + " [0.0, 0.023304358090278941, 0.023304358090278941, 0.014724365690921292],\n", + " [0.021685105971609574,\n", + " 0.023673159865132225,\n", + " 0.023673159865132225,\n", + " 0.023304358090278941],\n", + " [0.0, 0.024251056162566377, 0.024251056162566377, 0.0],\n", + " [0.023673159865132225,\n", + " 0.024600125568786518,\n", + " 0.024600125568786518,\n", + " 0.024251056162566377],\n", + " [0.0, 0.014163843828564809, 0.014163843828564809, 0.0],\n", + " [0.0, 0.021100629374501675, 0.021100629374501675, 0.014163843828564809],\n", + " [0.0, 0.018618540463742003, 0.018618540463742003, 0.0],\n", + " [0.0, 0.025554908608718604, 0.025554908608718604, 0.018618540463742003],\n", + " [0.021100629374501675,\n", + " 0.031745822087324092,\n", + " 0.031745822087324092,\n", + " 0.025554908608718604],\n", + " [0.024600125568786518,\n", + " 0.032058863984864787,\n", + " 0.032058863984864787,\n", + " 0.031745822087324092],\n", + " [0.0, 0.045239892484400107, 0.045239892484400107, 0.032058863984864787],\n", + " [0.032808092919279545,\n", + " 0.046524549756014506,\n", + " 0.046524549756014506,\n", + " 0.045239892484400107],\n", + " [0.0, 0.016222695460373793, 0.016222695460373793, 0.0],\n", + " [0.0, 0.019616465328899286, 0.019616465328899286, 0.016222695460373793],\n", + " [0.0, 0.0056924280408281206, 0.0056924280408281206, 0.0],\n", + " [0.0, 0.0035933076684293444, 0.0035933076684293444, 0.0],\n", + " [0.0, 0.01369389418682869, 0.01369389418682869, 0.0035933076684293444],\n", + " [0.0, 0.018612025198781756, 0.018612025198781756, 0.01369389418682869],\n", + " [0.0056924280408281206,\n", + " 0.019809313996197654,\n", + " 0.019809313996197654,\n", + " 0.018612025198781756],\n", + " [0.019616465328899286,\n", + " 0.030304598495936017,\n", + " 0.030304598495936017,\n", + " 0.019809313996197654],\n", + " [0.0, 0.030734927232710266, 0.030734927232710266, 0.030304598495936017],\n", + " [0.0, 0.046167124547667929, 0.046167124547667929, 0.030734927232710266],\n", + " [0.0, 0.01076157181827392, 0.01076157181827392, 0.0],\n", + " [0.0, 0.011297589698694601, 0.011297589698694601, 0.0],\n", + " [0.0, 0.0041629341815617752, 0.0041629341815617752, 0.0],\n", + " [0.0, 0.0059443644740176556, 0.0059443644740176556, 0.0041629341815617752],\n", + " [0.0, 0.016931785759332563, 0.016931785759332563, 0.0059443644740176556],\n", + " [0.011297589698694601,\n", + " 0.026369407463954359,\n", + " 0.026369407463954359,\n", + " 0.016931785759332563],\n", + " [0.01076157181827392,\n", + " 0.028656463023199533,\n", + " 0.028656463023199533,\n", + " 0.026369407463954359],\n", + " [0.0, 0.029381362681128745, 0.029381362681128745, 0.028656463023199533],\n", + " [0.0, 0.0084102238376870878, 0.0084102238376870878, 0.0],\n", + " [0.0, 0.0091624909276858801, 0.0091624909276858801, 0.0084102238376870878],\n", + " [0.0, 0.01077032966069091, 0.01077032966069091, 0.0],\n", + " [0.0, 0.02642867739785822, 0.02642867739785822, 0.01077032966069091],\n", + " [0.0091624909276858801,\n", + " 0.026866084381618523,\n", + " 0.026866084381618523,\n", + " 0.02642867739785822],\n", + " [0.0, 0.011909567414477181, 0.011909567414477181, 0.0],\n", + " [0.0, 0.028205078833434323, 0.028205078833434323, 0.011909567414477181],\n", + " [0.026866084381618523,\n", + " 0.038497415043092051,\n", + " 0.038497415043092051,\n", + " 0.028205078833434323],\n", + " [0.029381362681128745,\n", + " 0.047961738354649133,\n", + " 0.047961738354649133,\n", + " 0.038497415043092051],\n", + " [0.0, 0.048114040050698498, 0.048114040050698498, 0.047961738354649133],\n", + " [0.046167124547667929,\n", + " 0.050103938547782084,\n", + " 0.050103938547782084,\n", + " 0.048114040050698498],\n", + " [0.0, 0.051023251738789258, 0.051023251738789258, 0.050103938547782084],\n", + " [0.046524549756014506,\n", + " 0.055902345183362602,\n", + " 0.055902345183362602,\n", + " 0.051023251738789258],\n", + " [0.0, 0.0076407341270326471, 0.0076407341270326471, 0.0],\n", + " [0.0, 0.013919048387015666, 0.013919048387015666, 0.0076407341270326471],\n", + " [0.0, 0.041445750421485225, 0.041445750421485225, 0.0],\n", + " [0.0, 0.052079872551689138, 0.052079872551689138, 0.041445750421485225],\n", + " [0.0, 0.054492442861373475, 0.054492442861373475, 0.052079872551689138],\n", + " [0.013919048387015666,\n", + " 0.055528120596687644,\n", + " 0.055528120596687644,\n", + " 0.054492442861373475],\n", + " [0.0, 0.059601139603197809, 0.059601139603197809, 0.055528120596687644],\n", + " [0.055902345183362602,\n", + " 0.061280774619776497,\n", + " 0.061280774619776497,\n", + " 0.059601139603197809],\n", + " [0.052233444353210708,\n", + " 0.062762024983260209,\n", + " 0.062762024983260209,\n", + " 0.061280774619776497],\n", + " [0.021131775812739808,\n", + " 0.064499172165227353,\n", + " 0.064499172165227353,\n", + " 0.062762024983260209],\n", + " [0.06436661464610216,\n", + " 0.065802444065551177,\n", + " 0.065802444065551177,\n", + " 0.064499172165227353],\n", + " [0.051599814612071353,\n", + " 0.066879755479518896,\n", + " 0.066879755479518896,\n", + " 0.065802444065551177],\n", + " [0.0, 0.07440920788450868, 0.07440920788450868, 0.066879755479518896],\n", + " [0.0, 0.077259789832745299, 0.077259789832745299, 0.07440920788450868],\n", + " [0.069677414999407328,\n", + " 0.082001113803410464,\n", + " 0.082001113803410464,\n", + " 0.077259789832745299],\n", + " [0.058254168820781022,\n", + " 0.095042493580497739,\n", + " 0.095042493580497739,\n", + " 0.082001113803410464],\n", + " [0.051090226981292751,\n", + " 0.09967525520408857,\n", + " 0.09967525520408857,\n", + " 0.095042493580497739],\n", + " [0.0, 0.10950197927435081, 0.10950197927435081, 0.09967525520408857],\n", + " [0.0, 0.11077951518669865, 0.11077951518669865, 0.10950197927435081],\n", + " [0.10111066361665449,\n", + " 0.11555191689453123,\n", + " 0.11555191689453123,\n", + " 0.11077951518669865],\n", + " [0.0, 0.039866732722909297, 0.039866732722909297, 0.0],\n", + " [0.0, 0.01027425330620076, 0.01027425330620076, 0.0],\n", + " [0.0, 0.011919113431794071, 0.011919113431794071, 0.01027425330620076],\n", + " [0.0, 0.055730433346604796, 0.055730433346604796, 0.0],\n", + " [0.0, 0.024681889413088541, 0.024681889413088541, 0.0],\n", + " [0.0, 0.035478069860125916, 0.035478069860125916, 0.024681889413088541],\n", + " [0.0, 0.020684652523065179, 0.020684652523065179, 0.0],\n", + " [0.0, 0.038980281489488171, 0.038980281489488171, 0.020684652523065179],\n", + " [0.0, 0.024372920978001533, 0.024372920978001533, 0.0],\n", + " [0.0, 0.018346030006518983, 0.018346030006518983, 0.0],\n", + " [0.0, 0.027341748316448127, 0.027341748316448127, 0.0],\n", + " [0.0, 0.021234599713671615, 0.021234599713671615, 0.0],\n", + " [0.0, 0.013093907361825545, 0.013093907361825545, 0.0],\n", + " [0.0, 0.022318347833118174, 0.022318347833118174, 0.0],\n", + " [0.013093907361825545,\n", + " 0.022772686907780497,\n", + " 0.022772686907780497,\n", + " 0.022318347833118174],\n", + " [0.0, 0.0056783899126457106, 0.0056783899126457106, 0.0],\n", + " [0.0, 0.016466290322958675, 0.016466290322958675, 0.0],\n", + " [0.0056783899126457106,\n", + " 0.028379395694765872,\n", + " 0.028379395694765872,\n", + " 0.016466290322958675],\n", + " [0.022772686907780497,\n", + " 0.029445952693025093,\n", + " 0.029445952693025093,\n", + " 0.028379395694765872],\n", + " [0.021234599713671615,\n", + " 0.032988260942343077,\n", + " 0.032988260942343077,\n", + " 0.029445952693025093],\n", + " [0.027341748316448127,\n", + " 0.036870429520147088,\n", + " 0.036870429520147088,\n", + " 0.032988260942343077],\n", + " [0.018346030006518983,\n", + " 0.039364542471622382,\n", + " 0.039364542471622382,\n", + " 0.036870429520147088],\n", + " [0.024372920978001533,\n", + " 0.040472677796260868,\n", + " 0.040472677796260868,\n", + " 0.039364542471622382],\n", + " [0.0, 0.040771327192034863, 0.040771327192034863, 0.040472677796260868],\n", + " [0.038980281489488171,\n", + " 0.042055656563656105,\n", + " 0.042055656563656105,\n", + " 0.040771327192034863],\n", + " [0.035478069860125916,\n", + " 0.045174317349574541,\n", + " 0.045174317349574541,\n", + " 0.042055656563656105],\n", + " [0.0, 0.052035893861830933, 0.052035893861830933, 0.045174317349574541],\n", + " [0.0, 0.054962677345631816, 0.054962677345631816, 0.0],\n", + " [0.0, 0.056014525482235719, 0.056014525482235719, 0.0],\n", + " [0.054962677345631816,\n", + " 0.065360152050001813,\n", + " 0.065360152050001813,\n", + " 0.056014525482235719],\n", + " [0.052035893861830933,\n", + " 0.067762307701261792,\n", + " 0.067762307701261792,\n", + " 0.065360152050001813],\n", + " [0.0, 0.017197665015923631, 0.017197665015923631, 0.0],\n", + " [0.0, 0.017465485106344946, 0.017465485106344946, 0.017197665015923631],\n", + " [0.0, 0.027386559714576153, 0.027386559714576153, 0.017465485106344946],\n", + " [0.0, 0.030152866613307773, 0.030152866613307773, 0.027386559714576153],\n", + " [0.0, 0.0058109835656279885, 0.0058109835656279885, 0.0],\n", + " [0.0, 0.0091435785117197337, 0.0091435785117197337, 0.0],\n", + " [0.0, 0.023132489446661166, 0.023132489446661166, 0.0091435785117197337],\n", + " [0.0, 0.027930348959505649, 0.027930348959505649, 0.023132489446661166],\n", + " [0.0058109835656279885,\n", + " 0.048290348373150133,\n", + " 0.048290348373150133,\n", + " 0.027930348959505649],\n", + " [0.030152866613307773,\n", + " 0.049585642327188359,\n", + " 0.049585642327188359,\n", + " 0.048290348373150133],\n", + " [0.0, 0.058547139451898773, 0.058547139451898773, 0.049585642327188359],\n", + " [0.0, 0.014464590315661248, 0.014464590315661248, 0.0],\n", + " [0.0, 0.020266035626143205, 0.020266035626143205, 0.014464590315661248],\n", + " [0.0, 0.064920691316404738, 0.064920691316404738, 0.020266035626143205],\n", + " [0.058547139451898773,\n", + " 0.067923619514865086,\n", + " 0.067923619514865086,\n", + " 0.064920691316404738],\n", + " [0.067762307701261792,\n", + " 0.075271684350757845,\n", + " 0.075271684350757845,\n", + " 0.067923619514865086],\n", + " [0.0, 0.078153590966763914, 0.078153590966763914, 0.075271684350757845],\n", + " [0.0, 0.079758459388331288, 0.079758459388331288, 0.078153590966763914],\n", + " [0.055730433346604796,\n", + " 0.080054574510144708,\n", + " 0.080054574510144708,\n", + " 0.079758459388331288],\n", + " [0.0, 0.050952970561095226, 0.050952970561095226, 0.0],\n", + " [0.0, 0.074337752595836998, 0.074337752595836998, 0.050952970561095226],\n", + " [0.0, 0.030426365836226758, 0.030426365836226758, 0.0],\n", + " [0.0, 0.014927672457555113, 0.014927672457555113, 0.0],\n", + " [0.0, 0.021243974039712784, 0.021243974039712784, 0.014927672457555113],\n", + " [0.0, 0.022446473687419886, 0.022446473687419886, 0.021243974039712784],\n", + " [0.0, 0.0231434262156648, 0.0231434262156648, 0.022446473687419886],\n", + " [0.0, 0.024628385777391442, 0.024628385777391442, 0.0231434262156648],\n", + " [0.0, 0.028763803729688616, 0.028763803729688616, 0.024628385777391442],\n", + " [0.0, 0.036741527200159801, 0.036741527200159801, 0.0],\n", + " [0.028763803729688616,\n", + " 0.054450935657706187,\n", + " 0.054450935657706187,\n", + " 0.036741527200159801],\n", + " [0.030426365836226758,\n", + " 0.064341751584799239,\n", + " 0.064341751584799239,\n", + " 0.054450935657706187],\n", + " [0.0, 0.030989071880260323, 0.030989071880260323, 0.0],\n", + " [0.0, 0.053075533195629236, 0.053075533195629236, 0.030989071880260323],\n", + " [0.0, 0.067235482433011654, 0.067235482433011654, 0.053075533195629236],\n", + " [0.064341751584799239,\n", + " 0.073138931971966692,\n", + " 0.073138931971966692,\n", + " 0.067235482433011654],\n", + " [0.0, 0.0055431923112981589, 0.0055431923112981589, 0.0],\n", + " [0.0, 0.012077838879532014, 0.012077838879532014, 0.0055431923112981589],\n", + " [0.0, 0.0068351398668917039, 0.0068351398668917039, 0.0],\n", + " [0.0, 0.010783044560791643, 0.010783044560791643, 0.0],\n", + " [0.0, 0.014798150053303297, 0.014798150053303297, 0.0],\n", + " [0.010783044560791643,\n", + " 0.018660801402939357,\n", + " 0.018660801402939357,\n", + " 0.014798150053303297],\n", + " [0.0068351398668917039,\n", + " 0.019902707579625162,\n", + " 0.019902707579625162,\n", + " 0.018660801402939357],\n", + " [0.012077838879532014,\n", + " 0.02051796919774981,\n", + " 0.02051796919774981,\n", + " 0.019902707579625162],\n", + " [0.0, 0.021978706968336512, 0.021978706968336512, 0.02051796919774981],\n", + " [0.0, 0.022035860319035872, 0.022035860319035872, 0.021978706968336512],\n", + " [0.0, 0.022656066759259484, 0.022656066759259484, 0.022035860319035872],\n", + " [0.0, 0.025145320061589836, 0.025145320061589836, 0.022656066759259484],\n", + " [0.0, 0.025808407564207946, 0.025808407564207946, 0.025145320061589836],\n", + " [0.0, 0.014457127238842139, 0.014457127238842139, 0.0],\n", + " [0.0, 0.014570593570613476, 0.014570593570613476, 0.014457127238842139],\n", + " [0.0, 0.027871167126618839, 0.027871167126618839, 0.014570593570613476],\n", + " [0.025808407564207946,\n", + " 0.029581323989977034,\n", + " 0.029581323989977034,\n", + " 0.027871167126618839],\n", + " [0.0, 0.031259943777944117, 0.031259943777944117, 0.029581323989977034],\n", + " [0.0, 0.022272909396843697, 0.022272909396843697, 0.0],\n", + " [0.0, 0.033204406243750977, 0.033204406243750977, 0.022272909396843697],\n", + " [0.0, 0.061885653111205502, 0.061885653111205502, 0.033204406243750977],\n", + " [0.0, 0.069569479378529392, 0.069569479378529392, 0.061885653111205502],\n", + " [0.031259943777944117,\n", + " 0.073646722893822181,\n", + " 0.073646722893822181,\n", + " 0.069569479378529392],\n", + " [0.073138931971966692,\n", + " 0.074923862754133541,\n", + " 0.074923862754133541,\n", + " 0.073646722893822181],\n", + " [0.0, 0.080240795017247263, 0.080240795017247263, 0.074923862754133541],\n", + " [0.0, 0.080487906079114976, 0.080487906079114976, 0.080240795017247263],\n", + " [0.074337752595836998,\n", + " 0.083632655679465789,\n", + " 0.083632655679465789,\n", + " 0.080487906079114976],\n", + " [0.080054574510144708,\n", + " 0.085898054558881054,\n", + " 0.085898054558881054,\n", + " 0.083632655679465789],\n", + " [0.0, 0.089418531636345805, 0.089418531636345805, 0.085898054558881054],\n", + " [0.011919113431794071,\n", + " 0.091454013148686689,\n", + " 0.091454013148686689,\n", + " 0.089418531636345805],\n", + " [0.039866732722909297,\n", + " 0.10084720982754217,\n", + " 0.10084720982754217,\n", + " 0.091454013148686689],\n", + " [0.0, 0.029756842910495296, 0.029756842910495296, 0.0],\n", + " [0.0, 0.030795043757070133, 0.030795043757070133, 0.0],\n", + " [0.029756842910495296,\n", + " 0.063801084144398404,\n", + " 0.063801084144398404,\n", + " 0.030795043757070133],\n", + " [0.0, 0.017936184767111462, 0.017936184767111462, 0.0],\n", + " [0.0, 0.029486984959470625, 0.029486984959470625, 0.017936184767111462],\n", + " [0.0, 0.0273646985731665, 0.0273646985731665, 0.0],\n", + " [0.0, 0.03115248744482051, 0.03115248744482051, 0.0273646985731665],\n", + " [0.029486984959470625,\n", + " 0.053224468358078175,\n", + " 0.053224468358078175,\n", + " 0.03115248744482051],\n", + " [0.0, 0.05616634334724048, 0.05616634334724048, 0.053224468358078175],\n", + " [0.0, 0.070950560054167, 0.070950560054167, 0.05616634334724048],\n", + " [0.0, 0.095845501772383712, 0.095845501772383712, 0.070950560054167],\n", + " [0.063801084144398404,\n", + " 0.1083897176396364,\n", + " 0.1083897176396364,\n", + " 0.095845501772383712],\n", + " [0.10084720982754217,\n", + " 0.10996417595744262,\n", + " 0.10996417595744262,\n", + " 0.1083897176396364],\n", + " [0.0, 0.11250178114145611, 0.11250178114145611, 0.10996417595744262],\n", + " [0.0, 0.11857866962064031, 0.11857866962064031, 0.11250178114145611],\n", + " [0.11555191689453123,\n", + " 0.1251572841907328,\n", + " 0.1251572841907328,\n", + " 0.11857866962064031],\n", + " [0.0, 0.13043172706439307, 0.13043172706439307, 0.1251572841907328],\n", + " [0.12625295299913028,\n", + " 0.13182692247792407,\n", + " 0.13182692247792407,\n", + " 0.13043172706439307],\n", + " [0.0, 0.15759386435074224, 0.15759386435074224, 0.13182692247792407],\n", + " [0.085798792742088278,\n", + " 0.16748795439075173,\n", + " 0.16748795439075173,\n", + " 0.15759386435074224],\n", + " [0.0, 0.16986891259144291, 0.16986891259144291, 0.16748795439075173],\n", + " [0.0, 0.17602481258334002, 0.17602481258334002, 0.16986891259144291],\n", + " [0.0, 0.18043829390680716, 0.18043829390680716, 0.17602481258334002],\n", + " [0.0, 0.21034746155111583, 0.21034746155111583, 0.18043829390680716],\n", + " [0.14313570600307696,\n", + " 0.22021919571418017,\n", + " 0.22021919571418017,\n", + " 0.21034746155111583],\n", + " [0.0, 0.24030772835054848, 0.24030772835054848, 0.22021919571418017],\n", + " [0.21544398839837953,\n", + " 0.24654326890426465,\n", + " 0.24654326890426465,\n", + " 0.24030772835054848],\n", + " [0.0, 0.24792203139091623, 0.24792203139091623, 0.24654326890426465],\n", + " [0.0, 0.26807768341471488, 0.26807768341471488, 0.24792203139091623],\n", + " [0.0, 0.32271848292435873, 0.32271848292435873, 0.26807768341471488],\n", + " [0.0, 0.39010566036651939, 0.39010566036651939, 0.32271848292435873],\n", + " [0.0, 0.026284500832239863, 0.026284500832239863, 0.0],\n", + " [0.0, 0.032735359246535554, 0.032735359246535554, 0.0],\n", + " [0.0, 0.0076007621986218105, 0.0076007621986218105, 0.0],\n", + " [0.0, 0.037723807827418437, 0.037723807827418437, 0.0076007621986218105],\n", + " [0.032735359246535554,\n", + " 0.048929068006656744,\n", + " 0.048929068006656744,\n", + " 0.037723807827418437],\n", + " [0.026284500832239863,\n", + " 0.058556921111002379,\n", + " 0.058556921111002379,\n", + " 0.048929068006656744],\n", + " [0.0, 0.045158268356967242, 0.045158268356967242, 0.0],\n", + " [0.0, 0.054046047219017693, 0.054046047219017693, 0.0],\n", + " [0.0, 0.072295485924086397, 0.072295485924086397, 0.054046047219017693],\n", + " [0.045158268356967242,\n", + " 0.083169540578266893,\n", + " 0.083169540578266893,\n", + " 0.072295485924086397],\n", + " [0.058556921111002379,\n", + " 0.086808092019119792,\n", + " 0.086808092019119792,\n", + " 0.083169540578266893],\n", + " [0.0, 0.10861370847181195, 0.10861370847181195, 0.086808092019119792],\n", + " [0.0, 0.023689912494564168, 0.023689912494564168, 0.0],\n", + " [0.0, 0.015333195524741043, 0.015333195524741043, 0.0],\n", + " [0.0, 0.015509542997779171, 0.015509542997779171, 0.0],\n", + " [0.0, 0.017118712013469241, 0.017118712013469241, 0.015509542997779171],\n", + " [0.0, 0.0028318474535224147, 0.0028318474535224147, 0.0],\n", + " [0.0, 0.011472344572926006, 0.011472344572926006, 0.0028318474535224147],\n", + " [0.0, 0.013719866617426349, 0.013719866617426349, 0.011472344572926006],\n", + " [0.0, 0.03177230871372063, 0.03177230871372063, 0.013719866617426349],\n", + " [0.0, 0.005953351073134763, 0.005953351073134763, 0.0],\n", + " [0.0, 0.0082073919121754928, 0.0082073919121754928, 0.005953351073134763],\n", + " [0.0, 0.012725073241441192, 0.012725073241441192, 0.0],\n", + " [0.0082073919121754928,\n", + " 0.016472262807515146,\n", + " 0.016472262807515146,\n", + " 0.012725073241441192],\n", + " [0.0, 0.021456732113724529, 0.021456732113724529, 0.016472262807515146],\n", + " [0.0, 0.0055457599118598159, 0.0055457599118598159, 0.0],\n", + " [0.0, 0.017923560165323024, 0.017923560165323024, 0.0055457599118598159],\n", + " [0.0, 0.023036479440229792, 0.023036479440229792, 0.017923560165323024],\n", + " [0.021456732113724529,\n", + " 0.026548246137926113,\n", + " 0.026548246137926113,\n", + " 0.023036479440229792],\n", + " [0.0, 0.033658906131957211, 0.033658906131957211, 0.0],\n", + " [0.0, 0.028408519162390518, 0.028408519162390518, 0.0],\n", + " [0.0, 0.030778211124103286, 0.030778211124103286, 0.028408519162390518],\n", + " [0.0, 0.0036211242729325163, 0.0036211242729325163, 0.0],\n", + " [0.0, 0.016688336435965515, 0.016688336435965515, 0.0036211242729325163],\n", + " [0.0, 0.029244836433116556, 0.029244836433116556, 0.016688336435965515],\n", + " [0.0, 0.011806660916620956, 0.011806660916620956, 0.0],\n", + " [0.0, 0.012261657718270725, 0.012261657718270725, 0.0],\n", + " [0.0, 0.016796586349611009, 0.016796586349611009, 0.012261657718270725],\n", + " [0.011806660916620956,\n", + " 0.017795631430210856,\n", + " 0.017795631430210856,\n", + " 0.016796586349611009],\n", + " [0.0, 0.009812384827347545, 0.009812384827347545, 0.0],\n", + " [0.0, 0.0099850630944424059, 0.0099850630944424059, 0.009812384827347545],\n", + " [0.0, 0.010036538098372266, 0.010036538098372266, 0.0099850630944424059],\n", + " [0.0, 0.011989018391845248, 0.011989018391845248, 0.010036538098372266],\n", + " [0.0, 0.018333692072248449, 0.018333692072248449, 0.011989018391845248],\n", + " [0.017795631430210856,\n", + " 0.021737709653962468,\n", + " 0.021737709653962468,\n", + " 0.018333692072248449],\n", + " [0.0, 0.015184981560736607, 0.015184981560736607, 0.0],\n", + " [0.0, 0.023370877818347277, 0.023370877818347277, 0.015184981560736607],\n", + " [0.021737709653962468,\n", + " 0.025817889398628356,\n", + " 0.025817889398628356,\n", + " 0.023370877818347277],\n", + " [0.0, 0.030439427097105485, 0.030439427097105485, 0.025817889398628356],\n", + " [0.029244836433116556,\n", + " 0.030618291003910184,\n", + " 0.030618291003910184,\n", + " 0.030439427097105485],\n", + " [0.0, 0.010780660091105712, 0.010780660091105712, 0.0],\n", + " [0.0, 0.014116470982507642, 0.014116470982507642, 0.010780660091105712],\n", + " [0.0, 0.015381706829865336, 0.015381706829865336, 0.014116470982507642],\n", + " [0.0, 0.011960236828759825, 0.011960236828759825, 0.0],\n", + " [0.0, 0.025809902770061382, 0.025809902770061382, 0.011960236828759825],\n", + " [0.0, 0.02783060252671514, 0.02783060252671514, 0.025809902770061382],\n", + " [0.0, 0.0037417531987009671, 0.0037417531987009671, 0.0],\n", + " [0.0, 0.01857126516960975, 0.01857126516960975, 0.0],\n", + " [0.0, 0.019871948923041758, 0.019871948923041758, 0.0],\n", + " [0.01857126516960975,\n", + " 0.020934929472055247,\n", + " 0.020934929472055247,\n", + " 0.019871948923041758],\n", + " [0.0, 0.0094415194222067494, 0.0094415194222067494, 0.0],\n", + " [0.0, 0.010775393635503932, 0.010775393635503932, 0.0],\n", + " [0.0094415194222067494,\n", + " 0.014828665921116382,\n", + " 0.014828665921116382,\n", + " 0.010775393635503932],\n", + " [0.0, 0.017692447004300914, 0.017692447004300914, 0.014828665921116382],\n", + " [0.0, 0.018396345425111777, 0.018396345425111777, 0.017692447004300914],\n", + " [0.0, 0.014337723389718324, 0.014337723389718324, 0.0],\n", + " [0.0, 0.017524500477904971, 0.017524500477904971, 0.014337723389718324],\n", + " [0.0, 0.017876312651102341, 0.017876312651102341, 0.0],\n", + " [0.017524500477904971,\n", + " 0.020797463403019179,\n", + " 0.020797463403019179,\n", + " 0.017876312651102341],\n", + " [0.0, 0.010215939359646507, 0.010215939359646507, 0.0],\n", + " [0.0, 0.013974146020421019, 0.013974146020421019, 0.010215939359646507],\n", + " [0.0, 0.014040003561249867, 0.014040003561249867, 0.013974146020421019],\n", + " [0.0, 0.0037406412551834406, 0.0037406412551834406, 0.0],\n", + " [0.0, 0.0098680892273978922, 0.0098680892273978922, 0.0],\n", + " [0.0, 0.014074997015989969, 0.014074997015989969, 0.0098680892273978922],\n", + " [0.0037406412551834406,\n", + " 0.017875598171811006,\n", + " 0.017875598171811006,\n", + " 0.014074997015989969],\n", + " [0.0, 0.0071916513402696123, 0.0071916513402696123, 0.0],\n", + " [0.0, 0.0096784921346227404, 0.0096784921346227404, 0.0071916513402696123],\n", + " [0.0, 0.011035455767658372, 0.011035455767658372, 0.0096784921346227404],\n", + " [0.0, 0.012387731107833972, 0.012387731107833972, 0.011035455767658372],\n", + " [0.0, 0.0049797335270079252, 0.0049797335270079252, 0.0],\n", + " [0.0, 0.0097165859230462122, 0.0097165859230462122, 0.0049797335270079252],\n", + " [0.0, 0.010604469482250866, 0.010604469482250866, 0.0],\n", + " [0.0097165859230462122,\n", + " 0.016406594923991966,\n", + " 0.016406594923991966,\n", + " 0.010604469482250866],\n", + " [0.012387731107833972,\n", + " 0.017873194817940578,\n", + " 0.017873194817940578,\n", + " 0.016406594923991966],\n", + " [0.0, 0.0028303231264281141, 0.0028303231264281141, 0.0],\n", + " [0.0, 0.0030880767477494873, 0.0030880767477494873, 0.0028303231264281141],\n", + " [0.0, 0.0058015260923346291, 0.0058015260923346291, 0.0],\n", + " [0.0030880767477494873,\n", + " 0.0062732796048007656,\n", + " 0.0062732796048007656,\n", + " 0.0058015260923346291],\n", + " [0.0, 0.0077529220942829892, 0.0077529220942829892, 0.0],\n", + " [0.0, 0.0097838177619970056, 0.0097838177619970056, 0.0077529220942829892],\n", + " [0.0, 0.011305448995950894, 0.011305448995950894, 0.0097838177619970056],\n", + " [0.0062732796048007656,\n", + " 0.013763463662898523,\n", + " 0.013763463662898523,\n", + " 0.011305448995950894],\n", + " [0.0, 0.013946755393279595, 0.013946755393279595, 0.013763463662898523],\n", + " [0.0, 0.018456725169976027, 0.018456725169976027, 0.013946755393279595],\n", + " [0.017873194817940578,\n", + " 0.020760026685919711,\n", + " 0.020760026685919711,\n", + " 0.018456725169976027],\n", + " [0.0, 0.020768383976613604, 0.020768383976613604, 0.020760026685919711],\n", + " [0.017875598171811006,\n", + " 0.021023867246538298,\n", + " 0.021023867246538298,\n", + " 0.020768383976613604],\n", + " [0.014040003561249867,\n", + " 0.021288310501305797,\n", + " 0.021288310501305797,\n", + " 0.021023867246538298],\n", + " [0.020797463403019179,\n", + " 0.0231757366657411,\n", + " 0.0231757366657411,\n", + " 0.021288310501305797],\n", + " [0.0, 0.020193879122147405, 0.020193879122147405, 0.0],\n", + " [0.0, 0.021216661377322255, 0.021216661377322255, 0.0],\n", + " [0.020193879122147405,\n", + " 0.023919653279258404,\n", + " 0.023919653279258404,\n", + " 0.021216661377322255],\n", + " [0.0231757366657411,\n", + " 0.024925454479310195,\n", + " 0.024925454479310195,\n", + " 0.023919653279258404],\n", + " [0.0, 0.0049568701818774041, 0.0049568701818774041, 0.0],\n", + " [0.0, 0.0081893319019283473, 0.0081893319019283473, 0.0049568701818774041],\n", + " [0.0, 0.0060712425416876801, 0.0060712425416876801, 0.0],\n", + " [0.0, 0.0062649900239350491, 0.0062649900239350491, 0.0],\n", + " [0.0060712425416876801,\n", + " 0.0075539081937767366,\n", + " 0.0075539081937767366,\n", + " 0.0062649900239350491],\n", + " [0.0, 0.012648073450131959, 0.012648073450131959, 0.0075539081937767366],\n", + " [0.0, 0.0011912187036850627, 0.0011912187036850627, 0.0],\n", + " [0.0, 0.0024183552261786011, 0.0024183552261786011, 0.0011912187036850627],\n", + " [0.0, 0.014095572106160179, 0.014095572106160179, 0.0024183552261786011],\n", + " [0.012648073450131959,\n", + " 0.014227072362225297,\n", + " 0.014227072362225297,\n", + " 0.014095572106160179],\n", + " [0.0, 0.0012866273741842158, 0.0012866273741842158, 0.0],\n", + " [0.0, 0.012897525731705413, 0.012897525731705413, 0.0012866273741842158],\n", + " [0.0, 0.015481050093580855, 0.015481050093580855, 0.012897525731705413],\n", + " [0.014227072362225297,\n", + " 0.017835091280952543,\n", + " 0.017835091280952543,\n", + " 0.015481050093580855],\n", + " [0.0, 0.01800759095493153, 0.01800759095493153, 0.017835091280952543],\n", + " [0.0081893319019283473,\n", + " 0.018571218726840005,\n", + " 0.018571218726840005,\n", + " 0.01800759095493153],\n", + " [0.0, 0.014386706537640601, 0.014386706537640601, 0.0],\n", + " [0.0, 0.020758473474707204, 0.020758473474707204, 0.014386706537640601],\n", + " [0.0, 0.021142322034248207, 0.021142322034248207, 0.020758473474707204],\n", + " [0.018571218726840005,\n", + " 0.024980071296936995,\n", + " 0.024980071296936995,\n", + " 0.021142322034248207],\n", + " [0.024925454479310195,\n", + " 0.025215156116905103,\n", + " 0.025215156116905103,\n", + " 0.024980071296936995],\n", + " [0.018396345425111777,\n", + " 0.025724950767687903,\n", + " 0.025724950767687903,\n", + " 0.025215156116905103],\n", + " [0.0, 0.026302966087495789, 0.026302966087495789, 0.025724950767687903],\n", + " [0.020934929472055247,\n", + " 0.02914320862568422,\n", + " 0.02914320862568422,\n", + " 0.026302966087495789],\n", + " [0.0037417531987009671,\n", + " 0.030222909472786046,\n", + " 0.030222909472786046,\n", + " 0.02914320862568422],\n", + " [0.02783060252671514,\n", + " 0.030451078798624485,\n", + " 0.030451078798624485,\n", + " 0.030222909472786046],\n", + " [0.0, 0.031608722293064301, 0.031608722293064301, 0.030451078798624485],\n", + " [0.015381706829865336,\n", + " 0.032208938215969131,\n", + " 0.032208938215969131,\n", + " 0.031608722293064301],\n", + " [0.030618291003910184,\n", + " 0.033083887619200586,\n", + " 0.033083887619200586,\n", + " 0.032208938215969131],\n", + " [0.030778211124103286,\n", + " 0.034831438959652156,\n", + " 0.034831438959652156,\n", + " 0.033083887619200586],\n", + " [0.033658906131957211,\n", + " 0.035170800076202977,\n", + " 0.035170800076202977,\n", + " 0.034831438959652156],\n", + " [0.0, 0.036646302910387091, 0.036646302910387091, 0.035170800076202977],\n", + " [0.026548246137926113,\n", + " 0.036800836322018221,\n", + " 0.036800836322018221,\n", + " 0.036646302910387091],\n", + " [0.03177230871372063,\n", + " 0.03741416342776991,\n", + " 0.03741416342776991,\n", + " 0.036800836322018221],\n", + " [0.017118712013469241,\n", + " 0.037739509072055158,\n", + " 0.037739509072055158,\n", + " 0.03741416342776991],\n", + " [0.0, 0.038769670026968926, 0.038769670026968926, 0.037739509072055158],\n", + " [0.0, 0.041931578553639812, 0.041931578553639812, 0.038769670026968926],\n", + " [0.015333195524741043,\n", + " 0.04271588381386919,\n", + " 0.04271588381386919,\n", + " 0.041931578553639812],\n", + " [0.0, 0.051560874866508892, 0.051560874866508892, 0.04271588381386919],\n", + " [0.0, 0.056681755406829348, 0.056681755406829348, 0.051560874866508892],\n", + " [0.023689912494564168,\n", + " 0.057821966846521619,\n", + " 0.057821966846521619,\n", + " 0.056681755406829348],\n", + " [0.0, 0.064573395419473129, 0.064573395419473129, 0.057821966846521619],\n", + " [0.0, 0.033631661526010347, 0.033631661526010347, 0.0],\n", + " [0.0, 0.035795500066350121, 0.035795500066350121, 0.033631661526010347],\n", + " [0.0, 0.021069865519268316, 0.021069865519268316, 0.0],\n", + " [0.0, 0.036963483196257432, 0.036963483196257432, 0.021069865519268316],\n", + " [0.035795500066350121,\n", + " 0.081049966767422377,\n", + " 0.081049966767422377,\n", + " 0.036963483196257432],\n", + " [0.064573395419473129,\n", + " 0.083102035528616364,\n", + " 0.083102035528616364,\n", + " 0.081049966767422377],\n", + " [0.0, 0.09200445007715545, 0.09200445007715545, 0.083102035528616364],\n", + " [0.0, 0.11267324534688748, 0.11267324534688748, 0.09200445007715545],\n", + " [0.0, 0.13167090983964708, 0.13167090983964708, 0.11267324534688748],\n", + " [0.0, 0.16427674515889262, 0.16427674515889262, 0.13167090983964708],\n", + " [0.0, 0.21777071695937564, 0.21777071695937564, 0.0],\n", + " [0.0, 0.049874376437205041, 0.049874376437205041, 0.0],\n", + " [0.0, 0.018916650073414185, 0.018916650073414185, 0.0],\n", + " [0.0, 0.033041817580148895, 0.033041817580148895, 0.018916650073414185],\n", + " [0.0, 0.05882445159115382, 0.05882445159115382, 0.033041817580148895],\n", + " [0.0, 0.007089994710859665, 0.007089994710859665, 0.0],\n", + " [0.0, 0.086730984988065085, 0.086730984988065085, 0.007089994710859665],\n", + " [0.05882445159115382,\n", + " 0.089564926282560686,\n", + " 0.089564926282560686,\n", + " 0.086730984988065085],\n", + " [0.049874376437205041,\n", + " 0.11769756402746787,\n", + " 0.11769756402746787,\n", + " 0.089564926282560686],\n", + " [0.0, 0.026533311383995659, 0.026533311383995659, 0.0],\n", + " [0.0, 0.059340922827335198, 0.059340922827335198, 0.0],\n", + " [0.026533311383995659,\n", + " 0.064458794310786216,\n", + " 0.064458794310786216,\n", + " 0.059340922827335198],\n", + " [0.0, 0.027970034697869541, 0.027970034697869541, 0.0],\n", + " [0.0, 0.035527072733339667, 0.035527072733339667, 0.0],\n", + " [0.0, 0.049283381864477303, 0.049283381864477303, 0.035527072733339667],\n", + " [0.0, 0.049813376858028717, 0.049813376858028717, 0.049283381864477303],\n", + " [0.027970034697869541,\n", + " 0.063426205979862468,\n", + " 0.063426205979862468,\n", + " 0.049813376858028717],\n", + " [0.0, 0.066825761020728958, 0.066825761020728958, 0.063426205979862468],\n", + " [0.0, 0.086080221706265753, 0.086080221706265753, 0.066825761020728958],\n", + " [0.0, 0.051893020417006011, 0.051893020417006011, 0.0],\n", + " [0.0, 0.081451008993140006, 0.081451008993140006, 0.051893020417006011],\n", + " [0.0, 0.016100706226747401, 0.016100706226747401, 0.0],\n", + " [0.0, 0.028748308645902849, 0.028748308645902849, 0.016100706226747401],\n", + " [0.0, 0.053665641941559518, 0.053665641941559518, 0.0],\n", + " [0.0, 0.025568971528004809, 0.025568971528004809, 0.0],\n", + " [0.0, 0.02622935006819857, 0.02622935006819857, 0.0],\n", + " [0.025568971528004809,\n", + " 0.03987138057554511,\n", + " 0.03987138057554511,\n", + " 0.02622935006819857],\n", + " [0.0, 0.046279111108576777, 0.046279111108576777, 0.03987138057554511],\n", + " [0.0, 0.055063669801420398, 0.055063669801420398, 0.046279111108576777],\n", + " [0.0, 0.0028661676503625748, 0.0028661676503625748, 0.0],\n", + " [0.0, 0.0072301604408232609, 0.0072301604408232609, 0.0028661676503625748],\n", + " [0.0, 0.022584634710349518, 0.022584634710349518, 0.0072301604408232609],\n", + " [0.0, 0.024382193441113698, 0.024382193441113698, 0.022584634710349518],\n", + " [0.0, 0.027510756659891032, 0.027510756659891032, 0.024382193441113698],\n", + " [0.0, 0.041618363278725264, 0.041618363278725264, 0.027510756659891032],\n", + " [0.0, 0.015380039824393331, 0.015380039824393331, 0.0],\n", + " [0.0, 0.0099473574380292366, 0.0099473574380292366, 0.0],\n", + " [0.0, 0.012080831304177234, 0.012080831304177234, 0.0],\n", + " [0.0, 0.019600744577693702, 0.019600744577693702, 0.012080831304177234],\n", + " [0.0099473574380292366,\n", + " 0.020867537276835078,\n", + " 0.020867537276835078,\n", + " 0.019600744577693702],\n", + " [0.0, 0.022284764145038979, 0.022284764145038979, 0.0],\n", + " [0.0, 0.041514080803983097, 0.041514080803983097, 0.022284764145038979],\n", + " [0.0, 0.044329656190864472, 0.044329656190864472, 0.041514080803983097],\n", + " [0.020867537276835078,\n", + " 0.051481707683409338,\n", + " 0.051481707683409338,\n", + " 0.044329656190864472],\n", + " [0.015380039824393331,\n", + " 0.051812822631082667,\n", + " 0.051812822631082667,\n", + " 0.051481707683409338],\n", + " [0.0, 0.014499382745480989, 0.014499382745480989, 0.0],\n", + " [0.0, 0.056295682649742045, 0.056295682649742045, 0.014499382745480989],\n", + " [0.051812822631082667,\n", + " 0.05640438111529722,\n", + " 0.05640438111529722,\n", + " 0.056295682649742045],\n", + " [0.041618363278725264,\n", + " 0.060340363580278465,\n", + " 0.060340363580278465,\n", + " 0.05640438111529722],\n", + " [0.055063669801420398,\n", + " 0.060497828473424858,\n", + " 0.060497828473424858,\n", + " 0.060340363580278465],\n", + " [0.0, 0.018889686498193163, 0.018889686498193163, 0.0],\n", + " [0.0, 0.015898610819821964, 0.015898610819821964, 0.0],\n", + " [0.0, 0.043655269292487531, 0.043655269292487531, 0.015898610819821964],\n", + " [0.0, 0.026227582732689849, 0.026227582732689849, 0.0],\n", + " [0.0, 0.028237665289466241, 0.028237665289466241, 0.0],\n", + " [0.0, 0.042039108280269882, 0.042039108280269882, 0.028237665289466241],\n", + " [0.026227582732689849,\n", + " 0.050838497853494161,\n", + " 0.050838497853494161,\n", + " 0.042039108280269882],\n", + " [0.043655269292487531,\n", + " 0.060413856026577395,\n", + " 0.060413856026577395,\n", + " 0.050838497853494161],\n", + " [0.0, 0.010933370614770422, 0.010933370614770422, 0.0],\n", + " [0.0, 0.025649084389115569, 0.025649084389115569, 0.0],\n", + " [0.0, 0.029635477725185533, 0.029635477725185533, 0.025649084389115569],\n", + " [0.0, 0.024056654214582723, 0.024056654214582723, 0.0],\n", + " [0.0, 0.02501702212494418, 0.02501702212494418, 0.0],\n", + " [0.024056654214582723,\n", + " 0.044687371694918175,\n", + " 0.044687371694918175,\n", + " 0.02501702212494418],\n", + " [0.029635477725185533,\n", + " 0.06018349050196585,\n", + " 0.06018349050196585,\n", + " 0.044687371694918175],\n", + " [0.0, 0.063726529114647393, 0.063726529114647393, 0.06018349050196585],\n", + " [0.010933370614770422,\n", + " 0.066382110278301307,\n", + " 0.066382110278301307,\n", + " 0.063726529114647393],\n", + " [0.0, 0.066740035608319509, 0.066740035608319509, 0.066382110278301307],\n", + " [0.060413856026577395,\n", + " 0.067743891621311503,\n", + " 0.067743891621311503,\n", + " 0.066740035608319509],\n", + " [0.018889686498193163,\n", + " 0.072006036559439671,\n", + " 0.072006036559439671,\n", + " 0.067743891621311503],\n", + " [0.0, 0.0720849620448024, 0.0720849620448024, 0.072006036559439671],\n", + " [0.0, 0.074806930407551417, 0.074806930407551417, 0.0720849620448024],\n", + " [0.060497828473424858,\n", + " 0.075252777656378722,\n", + " 0.075252777656378722,\n", + " 0.074806930407551417],\n", + " [0.053665641941559518,\n", + " 0.079561331166592461,\n", + " 0.079561331166592461,\n", + " 0.075252777656378722],\n", + " [0.0, 0.080265619196516202, 0.080265619196516202, 0.079561331166592461],\n", + " [0.028748308645902849,\n", + " 0.089348129118637418,\n", + " 0.089348129118637418,\n", + " 0.080265619196516202],\n", + " [0.0, 0.090444882668949261, 0.090444882668949261, 0.089348129118637418],\n", + " [0.0, 0.091315233017285641, 0.091315233017285641, 0.090444882668949261],\n", + " [0.081451008993140006,\n", + " 0.10672481585835608,\n", + " 0.10672481585835608,\n", + " 0.091315233017285641],\n", + " [0.0, 0.12137915216791068, 0.12137915216791068, 0.10672481585835608],\n", + " [0.0, 0.12294336917866497, 0.12294336917866497, 0.12137915216791068],\n", + " [0.086080221706265753,\n", + " 0.12531243782641832,\n", + " 0.12531243782641832,\n", + " 0.12294336917866497],\n", + " [0.064458794310786216,\n", + " 0.12570170739094735,\n", + " 0.12570170739094735,\n", + " 0.12531243782641832],\n", + " [0.0, 0.12913108177739882, 0.12913108177739882, 0.12570170739094735],\n", + " [0.11769756402746787,\n", + " 0.18246817828048495,\n", + " 0.18246817828048495,\n", + " 0.12913108177739882],\n", + " [0.0, 0.32161493973072758, 0.32161493973072758, 0.18246817828048495],\n", + " [0.21777071695937564,\n", + " 0.42397334020077027,\n", + " 0.42397334020077027,\n", + " 0.32161493973072758],\n", + " [0.16427674515889262,\n", + " 0.43400584007706261,\n", + " 0.43400584007706261,\n", + " 0.42397334020077027],\n", + " [0.10861370847181195,\n", + " 0.48621682220692647,\n", + " 0.48621682220692647,\n", + " 0.43400584007706261],\n", + " [0.39010566036651939,\n", + " 0.59919217660112711,\n", + " 0.59919217660112711,\n", + " 0.48621682220692647],\n", + " [0.53771333917339426,\n", + " 0.61465881436777581,\n", + " 0.61465881436777581,\n", + " 0.59919217660112711],\n", + " [0.03933770685995755,\n", + " 0.63618832477498188,\n", + " 0.63618832477498188,\n", + " 0.61465881436777581],\n", + " [0.0, 0.11629600478949978, 0.11629600478949978, 0.0],\n", + " [0.0, 0.017025854369164688, 0.017025854369164688, 0.0],\n", + " [0.0, 0.029859248081625121, 0.029859248081625121, 0.017025854369164688],\n", + " [0.0, 0.050410449412795523, 0.050410449412795523, 0.0],\n", + " [0.029859248081625121,\n", + " 0.051673171394834252,\n", + " 0.051673171394834252,\n", + " 0.050410449412795523],\n", + " [0.0, 0.061140195493635488, 0.061140195493635488, 0.051673171394834252],\n", + " [0.0, 0.078517693420015952, 0.078517693420015952, 0.0],\n", + " [0.061140195493635488,\n", + " 0.12990022396054496,\n", + " 0.12990022396054496,\n", + " 0.078517693420015952],\n", + " [0.0, 0.31257048860377051, 0.31257048860377051, 0.12990022396054496],\n", + " [0.0, 0.35931550349657654, 0.35931550349657654, 0.31257048860377051],\n", + " [0.11629600478949978,\n", + " 0.37982329215833932,\n", + " 0.37982329215833932,\n", + " 0.35931550349657654],\n", + " [0.0, 0.68982650073768814, 0.68982650073768814, 0.37982329215833932],\n", + " [0.63618832477498188,\n", + " 0.72971431804508158,\n", + " 0.72971431804508158,\n", + " 0.68982650073768814],\n", + " [0.1596093042150151,\n", + " 0.76549023086189538,\n", + " 0.76549023086189538,\n", + " 0.72971431804508158],\n", + " [0.10633125471844598,\n", + " 1.182349424392382,\n", + " 1.182349424392382,\n", + " 0.76549023086189538],\n", + " [0.11791851424182852,\n", + " 2.4665141302108937,\n", + " 2.4665141302108937,\n", + " 1.182349424392382],\n", + " [0.58252392082213911,\n", + " 2.7103300852497667,\n", + " 2.7103300852497667,\n", + " 2.4665141302108937],\n", + " [0.36183450717282412,\n", + " 4.3761265174128594,\n", + " 4.3761265174128594,\n", + " 2.7103300852497667],\n", + " [3.9705413476992004,\n", + " 4.5705049090223024,\n", + " 4.5705049090223024,\n", + " 4.3761265174128594],\n", + " [1.1961293772870045,\n", + " 4.6259969894202255,\n", + " 4.6259969894202255,\n", + " 4.5705049090223024],\n", + " [0.31975710624941311,\n", + " 6.0358725347559332,\n", + " 6.0358725347559332,\n", + " 4.6259969894202255],\n", + " [0.835032222135769,\n", + " 7.9744927667796501,\n", + " 7.9744927667796501,\n", + " 6.0358725347559332],\n", + " [0.0, 0.05735680385969278, 0.05735680385969278, 0.0],\n", + " [0.0, 0.055924581500435319, 0.055924581500435319, 0.0],\n", + " [0.0, 0.13637051208014506, 0.13637051208014506, 0.055924581500435319],\n", + " [0.05735680385969278,\n", + " 0.14629310655325464,\n", + " 0.14629310655325464,\n", + " 0.13637051208014506],\n", + " [0.0, 0.065186633177365311, 0.065186633177365311, 0.0],\n", + " [0.0, 0.088002073572162692, 0.088002073572162692, 0.065186633177365311],\n", + " [0.0, 0.0077344768407435326, 0.0077344768407435326, 0.0],\n", + " [0.0, 0.019857233770083738, 0.019857233770083738, 0.0],\n", + " [0.0, 0.02079540778633366, 0.02079540778633366, 0.019857233770083738],\n", + " [0.0, 0.0026873250640712053, 0.0026873250640712053, 0.0],\n", + " [0.0, 0.0030802551842314106, 0.0030802551842314106, 0.0026873250640712053],\n", + " [0.0, 0.021674212557779189, 0.021674212557779189, 0.0030802551842314106],\n", + " [0.0, 0.0054568442345367353, 0.0054568442345367353, 0.0],\n", + " [0.0, 0.016481420145116579, 0.016481420145116579, 0.0],\n", + " [0.0, 0.0094099386289197128, 0.0094099386289197128, 0.0],\n", + " [0.0, 0.0097601600396687964, 0.0097601600396687964, 0.0094099386289197128],\n", + " [0.0, 0.014967236885939809, 0.014967236885939809, 0.0097601600396687964],\n", + " [0.0, 0.015146989040739212, 0.015146989040739212, 0.014967236885939809],\n", + " [0.0, 0.0059849414366420321, 0.0059849414366420321, 0.0],\n", + " [0.0, 0.013323366879285424, 0.013323366879285424, 0.0059849414366420321],\n", + " [0.0, 0.0059032571517724057, 0.0059032571517724057, 0.0],\n", + " [0.0, 0.015854110917985106, 0.015854110917985106, 0.0],\n", + " [0.0, 0.016118847849642296, 0.016118847849642296, 0.015854110917985106],\n", + " [0.0059032571517724057,\n", + " 0.016543349993274763,\n", + " 0.016543349993274763,\n", + " 0.016118847849642296],\n", + " [0.013323366879285424,\n", + " 0.017479470129269762,\n", + " 0.017479470129269762,\n", + " 0.016543349993274763],\n", + " [0.015146989040739212,\n", + " 0.020999033739671637,\n", + " 0.020999033739671637,\n", + " 0.017479470129269762],\n", + " [0.0, 0.008849707339795742, 0.008849707339795742, 0.0],\n", + " [0.0, 0.016111682748872768, 0.016111682748872768, 0.008849707339795742],\n", + " [0.0, 0.0083565008227208196, 0.0083565008227208196, 0.0],\n", + " [0.0, 0.009970883862520416, 0.009970883862520416, 0.0083565008227208196],\n", + " [0.0, 0.014688098072931954, 0.014688098072931954, 0.009970883862520416],\n", + " [0.0, 0.016277718175468525, 0.016277718175468525, 0.014688098072931954],\n", + " [0.0, 0.0022425933648357196, 0.0022425933648357196, 0.0],\n", + " [0.0, 0.0061799574432153679, 0.0061799574432153679, 0.0022425933648357196],\n", + " [0.0, 0.015966845962804319, 0.015966845962804319, 0.0061799574432153679],\n", + " [0.0, 0.016161816884251265, 0.016161816884251265, 0.0],\n", + " [0.015966845962804319,\n", + " 0.016565174342577836,\n", + " 0.016565174342577836,\n", + " 0.016161816884251265],\n", + " [0.016277718175468525,\n", + " 0.017257701179481135,\n", + " 0.017257701179481135,\n", + " 0.016565174342577836],\n", + " [0.0, 0.019720030045609134, 0.019720030045609134, 0.017257701179481135],\n", + " [0.016111682748872768,\n", + " 0.021108394183346937,\n", + " 0.021108394183346937,\n", + " 0.019720030045609134],\n", + " [0.020999033739671637,\n", + " 0.021202403283582565,\n", + " 0.021202403283582565,\n", + " 0.021108394183346937],\n", + " [0.016481420145116579,\n", + " 0.021663805044363216,\n", + " 0.021663805044363216,\n", + " 0.021202403283582565],\n", + " [0.0, 0.02207527895633651, 0.02207527895633651, 0.021663805044363216],\n", + " [0.0054568442345367353,\n", + " 0.022275270884990893,\n", + " 0.022275270884990893,\n", + " 0.02207527895633651],\n", + " [0.0, 0.022321584397167308, 0.022321584397167308, 0.022275270884990893],\n", + " [0.021674212557779189,\n", + " 0.022826346904399272,\n", + " 0.022826346904399272,\n", + " 0.022321584397167308],\n", + " [0.0, 0.025941525571943187, 0.025941525571943187, 0.022826346904399272],\n", + " [0.0, 0.026394151492331135, 0.026394151492331135, 0.025941525571943187],\n", + " [0.0, 0.02807089955807977, 0.02807089955807977, 0.026394151492331135],\n", + " [0.02079540778633366,\n", + " 0.033680436250151657,\n", + " 0.033680436250151657,\n", + " 0.02807089955807977],\n", + " [0.0, 0.038233440663902316, 0.038233440663902316, 0.033680436250151657],\n", + " [0.0, 0.040493297235467102, 0.040493297235467102, 0.038233440663902316],\n", + " [0.0077344768407435326,\n", + " 0.042243428956462811,\n", + " 0.042243428956462811,\n", + " 0.040493297235467102],\n", + " [0.0, 0.053435745461258392, 0.053435745461258392, 0.042243428956462811],\n", + " [0.0, 0.076590647366367184, 0.076590647366367184, 0.053435745461258392],\n", + " [0.0, 0.094622355883800163, 0.094622355883800163, 0.076590647366367184],\n", + " [0.0, 0.11673019189567067, 0.11673019189567067, 0.0],\n", + " [0.094622355883800163,\n", + " 0.14655600292038881,\n", + " 0.14655600292038881,\n", + " 0.11673019189567067],\n", + " [0.0, 0.21974205990206233, 0.21974205990206233, 0.14655600292038881],\n", + " [0.088002073572162692,\n", + " 0.29109540849177362,\n", + " 0.29109540849177362,\n", + " 0.21974205990206233],\n", + " [0.0, 0.46206702520846504, 0.46206702520846504, 0.29109540849177362],\n", + " [0.14629310655325464,\n", + " 0.51151742625348673,\n", + " 0.51151742625348673,\n", + " 0.46206702520846504],\n", + " [0.0, 0.058476613445032764, 0.058476613445032764, 0.0],\n", + " [0.0, 0.078682878264587974, 0.078682878264587974, 0.058476613445032764],\n", + " [0.0, 0.04274314628101207, 0.04274314628101207, 0.0],\n", + " [0.0, 0.068080813538024948, 0.068080813538024948, 0.04274314628101207],\n", + " [0.0, 0.16589281877766662, 0.16589281877766662, 0.068080813538024948],\n", + " [0.0, 0.18872837122700739, 0.18872837122700739, 0.16589281877766662],\n", + " [0.0, 0.084649861553350983, 0.084649861553350983, 0.0],\n", + " [0.0, 0.19644275015383045, 0.19644275015383045, 0.084649861553350983],\n", + " [0.18872837122700739,\n", + " 0.24823402813474052,\n", + " 0.24823402813474052,\n", + " 0.19644275015383045],\n", + " [0.0, 0.28927785239282133, 0.28927785239282133, 0.24823402813474052],\n", + " [0.078682878264587974,\n", + " 0.31628807493486,\n", + " 0.31628807493486,\n", + " 0.28927785239282133],\n", + " [0.0, 0.54520220517253803, 0.54520220517253803, 0.31628807493486],\n", + " [0.51151742625348673,\n", + " 0.88517860504307166,\n", + " 0.88517860504307166,\n", + " 0.54520220517253803],\n", + " [0.0, 1.6524886027519214, 1.6524886027519214, 0.88517860504307166],\n", + " [0.0, 0.034225234959022258, 0.034225234959022258, 0.0],\n", + " [0.0, 0.031229236365943928, 0.031229236365943928, 0.0],\n", + " [0.0, 0.0076006132647234055, 0.0076006132647234055, 0.0],\n", + " [0.0, 0.0003924856685368449, 0.0003924856685368449, 0.0],\n", + " [0.0, 0.0089444264768658889, 0.0089444264768658889, 0.0003924856685368449],\n", + " [0.0, 0.013202855827420472, 0.013202855827420472, 0.0089444264768658889],\n", + " [0.0, 0.02273525918039811, 0.02273525918039811, 0.013202855827420472],\n", + " [0.0076006132647234055,\n", + " 0.034750347753650081,\n", + " 0.034750347753650081,\n", + " 0.02273525918039811],\n", + " [0.0, 0.049263209903537379, 0.049263209903537379, 0.034750347753650081],\n", + " [0.0, 0.052951967687711078, 0.052951967687711078, 0.049263209903537379],\n", + " [0.0, 0.054705600855854776, 0.054705600855854776, 0.052951967687711078],\n", + " [0.031229236365943928,\n", + " 0.094079876806889368,\n", + " 0.094079876806889368,\n", + " 0.054705600855854776],\n", + " [0.0, 0.11433819005476911, 0.11433819005476911, 0.094079876806889368],\n", + " [0.034225234959022258,\n", + " 0.13559904691773902,\n", + " 0.13559904691773902,\n", + " 0.11433819005476911],\n", + " [0.0, 0.15428062038377924, 0.15428062038377924, 0.13559904691773902],\n", + " [0.0, 0.1657575400306105, 0.1657575400306105, 0.15428062038377924],\n", + " [0.0, 0.03220985397358575, 0.03220985397358575, 0.0],\n", + " [0.0, 0.045396453881331407, 0.045396453881331407, 0.03220985397358575],\n", + " [0.0, 0.093181465501468649, 0.093181465501468649, 0.045396453881331407],\n", + " [0.0, 0.079257166704351067, 0.079257166704351067, 0.0],\n", + " [0.0, 0.037431388673135522, 0.037431388673135522, 0.0],\n", + " [0.0, 0.047204240116752685, 0.047204240116752685, 0.037431388673135522],\n", + " [0.0, 0.0020965745872654601, 0.0020965745872654601, 0.0],\n", + " [0.0, 0.0052134009053674624, 0.0052134009053674624, 0.0020965745872654601],\n", + " [0.0, 0.0089494369096550213, 0.0089494369096550213, 0.0],\n", + " [0.0052134009053674624,\n", + " 0.0089784152276515886,\n", + " 0.0089784152276515886,\n", + " 0.0089494369096550213],\n", + " [0.0, 0.011184952257393084, 0.011184952257393084, 0.0089784152276515886],\n", + " [0.0, 0.014879559200453642, 0.014879559200453642, 0.011184952257393084],\n", + " [0.0, 0.015335559983252161, 0.015335559983252161, 0.014879559200453642],\n", + " [0.0, 0.0066307804970425002, 0.0066307804970425002, 0.0],\n", + " [0.0, 0.008234577888389296, 0.008234577888389296, 0.0066307804970425002],\n", + " [0.0, 0.0082508480170269873, 0.0082508480170269873, 0.008234577888389296],\n", + " [0.0, 0.022985297148394222, 0.022985297148394222, 0.0082508480170269873],\n", + " [0.0, 0.024971105902617901, 0.024971105902617901, 0.022985297148394222],\n", + " [0.015335559983252161,\n", + " 0.026157833645016396,\n", + " 0.026157833645016396,\n", + " 0.024971105902617901],\n", + " [0.0, 0.0030347589690123294, 0.0030347589690123294, 0.0],\n", + " [0.0, 0.0031566643787335714, 0.0031566643787335714, 0.0030347589690123294],\n", + " [0.0, 0.02539605073627977, 0.02539605073627977, 0.0],\n", + " [0.0031566643787335714,\n", + " 0.027715111058773927,\n", + " 0.027715111058773927,\n", + " 0.02539605073627977],\n", + " [0.026157833645016396,\n", + " 0.031254579984382948,\n", + " 0.031254579984382948,\n", + " 0.027715111058773927],\n", + " [0.0, 0.036779097677899913, 0.036779097677899913, 0.031254579984382948],\n", + " [0.0, 0.037881564408033218, 0.037881564408033218, 0.036779097677899913],\n", + " [0.0, 0.0043172586209271214, 0.0043172586209271214, 0.0],\n", + " [0.0, 0.025687161248381704, 0.025687161248381704, 0.0],\n", + " [0.0, 0.0017168401206917661, 0.0017168401206917661, 0.0],\n", + " [0.0, 0.012253456165507453, 0.012253456165507453, 0.0017168401206917661],\n", + " [0.0, 0.013096390380558596, 0.013096390380558596, 0.0],\n", + " [0.012253456165507453,\n", + " 0.020516439481555439,\n", + " 0.020516439481555439,\n", + " 0.013096390380558596],\n", + " [0.0, 0.030700647289585176, 0.030700647289585176, 0.020516439481555439],\n", + " [0.025687161248381704,\n", + " 0.033612812854620061,\n", + " 0.033612812854620061,\n", + " 0.030700647289585176],\n", + " [0.0043172586209271214,\n", + " 0.041707974729060529,\n", + " 0.041707974729060529,\n", + " 0.033612812854620061],\n", + " [0.037881564408033218,\n", + " 0.047853174962580881,\n", + " 0.047853174962580881,\n", + " 0.041707974729060529],\n", + " [0.0, 0.051583478071950836, 0.051583478071950836, 0.047853174962580881],\n", + " [0.047204240116752685,\n", + " 0.055446038208345094,\n", + " 0.055446038208345094,\n", + " 0.051583478071950836],\n", + " [0.0, 0.058789937276715915, 0.058789937276715915, 0.055446038208345094],\n", + " [0.0, 0.065032274302839935, 0.065032274302839935, 0.058789937276715915],\n", + " [0.0, 0.085694968732120819, 0.085694968732120819, 0.065032274302839935],\n", + " [0.0, 0.0034538190456254087, 0.0034538190456254087, 0.0],\n", + " [0.0, 0.018143655227104694, 0.018143655227104694, 0.0034538190456254087],\n", + " [0.0, 0.037919403331275456, 0.037919403331275456, 0.0],\n", + " [0.0, 0.038638671043396161, 0.038638671043396161, 0.037919403331275456],\n", + " [0.018143655227104694,\n", + " 0.053112378688962437,\n", + " 0.053112378688962437,\n", + " 0.038638671043396161],\n", + " [0.0, 0.065364469522824126, 0.065364469522824126, 0.053112378688962437],\n", + " [0.0, 0.068054294625700854, 0.068054294625700854, 0.065364469522824126],\n", + " [0.0, 0.07391599909357166, 0.07391599909357166, 0.068054294625700854],\n", + " [0.0, 0.086596281675364928, 0.086596281675364928, 0.07391599909357166],\n", + " [0.085694968732120819,\n", + " 0.10464321828479703,\n", + " 0.10464321828479703,\n", + " 0.086596281675364928],\n", + " [0.0, 0.12405765273452482, 0.12405765273452482, 0.10464321828479703],\n", + " [0.0, 0.12733608604397526, 0.12733608604397526, 0.12405765273452482],\n", + " [0.079257166704351067,\n", + " 0.1318006198505908,\n", + " 0.1318006198505908,\n", + " 0.12733608604397526],\n", + " [0.093181465501468649,\n", + " 0.14153721545939885,\n", + " 0.14153721545939885,\n", + " 0.1318006198505908],\n", + " [0.0, 0.21253818928841284, 0.21253818928841284, 0.14153721545939885],\n", + " [0.1657575400306105,\n", + " 0.30048031565643857,\n", + " 0.30048031565643857,\n", + " 0.21253818928841284],\n", + " [0.0, 0.34354135382076895, 0.34354135382076895, 0.30048031565643857],\n", + " [0.0, 0.22174582925728303, 0.22174582925728303, 0.0],\n", + " [0.0, 0.017453594157065492, 0.017453594157065492, 0.0],\n", + " [0.0, 0.023889836437286694, 0.023889836437286694, 0.017453594157065492],\n", + " [0.0, 0.036939804033056647, 0.036939804033056647, 0.023889836437286694],\n", + " [0.0, 0.051639847889011929, 0.051639847889011929, 0.036939804033056647],\n", + " [0.0, 0.0010652703882226373, 0.0010652703882226373, 0.0],\n", + " [0.0, 0.038614883930936636, 0.038614883930936636, 0.0010652703882226373],\n", + " [0.0, 0.0086836030540343844, 0.0086836030540343844, 0.0],\n", + " [0.0, 0.0018164151507835704, 0.0018164151507835704, 0.0],\n", + " [0.0, 0.034268716593993206, 0.034268716593993206, 0.0],\n", + " [0.0, 0.034860522270902736, 0.034860522270902736, 0.034268716593993206],\n", + " [0.0, 0.024518786633918915, 0.024518786633918915, 0.0],\n", + " [0.0, 0.0049037925119146336, 0.0049037925119146336, 0.0],\n", + " [0.0, 0.0076663388915467817, 0.0076663388915467817, 0.0049037925119146336],\n", + " [0.0, 0.029605859420052054, 0.029605859420052054, 0.0076663388915467817],\n", + " [0.0, 0.0079949739837014734, 0.0079949739837014734, 0.0],\n", + " [0.0, 0.0056290505416111917, 0.0056290505416111917, 0.0],\n", + " [0.0, 0.018942320238025397, 0.018942320238025397, 0.0056290505416111917],\n", + " [0.0, 0.020280046277064406, 0.020280046277064406, 0.018942320238025397],\n", + " [0.0079949739837014734,\n", + " 0.020697478590390946,\n", + " 0.020697478590390946,\n", + " 0.020280046277064406],\n", + " [0.0, 0.0040081922359109521, 0.0040081922359109521, 0.0],\n", + " [0.0, 0.0040583023544391011, 0.0040583023544391011, 0.0040081922359109521],\n", + " [0.0, 0.0095874987874734995, 0.0095874987874734995, 0.0040583023544391011],\n", + " [0.0, 0.01344646410771666, 0.01344646410771666, 0.0095874987874734995],\n", + " [0.0, 0.014973975357265227, 0.014973975357265227, 0.01344646410771666],\n", + " [0.0, 0.016311627785102936, 0.016311627785102936, 0.014973975357265227],\n", + " [0.0, 0.018049841716749504, 0.018049841716749504, 0.016311627785102936],\n", + " [0.0, 0.01701578396664986, 0.01701578396664986, 0.0],\n", + " [0.0, 0.0062433084178198503, 0.0062433084178198503, 0.0],\n", + " [0.0, 0.0095255143693142239, 0.0095255143693142239, 0.0],\n", + " [0.0062433084178198503,\n", + " 0.012845716990505478,\n", + " 0.012845716990505478,\n", + " 0.0095255143693142239],\n", + " [0.0, 0.014791615192402182, 0.014791615192402182, 0.0],\n", + " [0.012845716990505478,\n", + " 0.017164920739698317,\n", + " 0.017164920739698317,\n", + " 0.014791615192402182],\n", + " [0.0, 0.0032647064186440418, 0.0032647064186440418, 0.0],\n", + " [0.0, 0.0075487758610271799, 0.0075487758610271799, 0.0],\n", + " [0.0, 0.0084029149704170393, 0.0084029149704170393, 0.0075487758610271799],\n", + " [0.0, 0.0066058413544296838, 0.0066058413544296838, 0.0],\n", + " [0.0, 0.0077400473512761964, 0.0077400473512761964, 0.0],\n", + " [0.0066058413544296838,\n", + " 0.01049883469724559,\n", + " 0.01049883469724559,\n", + " 0.0077400473512761964],\n", + " [0.0084029149704170393,\n", + " 0.011742317871695437,\n", + " 0.011742317871695437,\n", + " 0.01049883469724559],\n", + " [0.0032647064186440418,\n", + " 0.017795681330029917,\n", + " 0.017795681330029917,\n", + " 0.011742317871695437],\n", + " [0.0, 0.018138430499911432, 0.018138430499911432, 0.017795681330029917],\n", + " [0.0, 0.0090484726888084219, 0.0090484726888084219, 0.0],\n", + " [0.0, 0.013797565147506579, 0.013797565147506579, 0.0090484726888084219],\n", + " [0.0, 0.016129011284022179, 0.016129011284022179, 0.0],\n", + " [0.0, 0.0014048419839887724, 0.0014048419839887724, 0.0],\n", + " [0.0, 0.0049334199091456187, 0.0049334199091456187, 0.0],\n", + " [0.0, 0.0076442074801775861, 0.0076442074801775861, 0.0049334199091456187],\n", + " [0.0014048419839887724,\n", + " 0.01651873391032483,\n", + " 0.01651873391032483,\n", + " 0.0076442074801775861],\n", + " [0.0, 0.016717696043420948, 0.016717696043420948, 0.01651873391032483],\n", + " [0.016129011284022179,\n", + " 0.017250007826080854,\n", + " 0.017250007826080854,\n", + " 0.016717696043420948],\n", + " [0.013797565147506579,\n", + " 0.022884805439419415,\n", + " 0.022884805439419415,\n", + " 0.017250007826080854],\n", + " [0.018138430499911432,\n", + " 0.025180227878235744,\n", + " 0.025180227878235744,\n", + " 0.022884805439419415],\n", + " [0.017164920739698317,\n", + " 0.025462506651934096,\n", + " 0.025462506651934096,\n", + " 0.025180227878235744],\n", + " [0.01701578396664986,\n", + " 0.025639909048209744,\n", + " 0.025639909048209744,\n", + " 0.025462506651934096],\n", + " [0.018049841716749504,\n", + " 0.027476675963452737,\n", + " 0.027476675963452737,\n", + " 0.025639909048209744],\n", + " [0.020697478590390946,\n", + " 0.027920237624349298,\n", + " 0.027920237624349298,\n", + " 0.027476675963452737],\n", + " [0.0, 0.015589489953174364, 0.015589489953174364, 0.0],\n", + " [0.0, 0.018242158479735236, 0.018242158479735236, 0.015589489953174364],\n", + " [0.0, 0.0009718940271540152, 0.0009718940271540152, 0.0],\n", + " [0.0, 0.014748840361184217, 0.014748840361184217, 0.0009718940271540152],\n", + " [0.0, 0.0084836372506118252, 0.0084836372506118252, 0.0],\n", + " [0.0, 0.011365034491807835, 0.011365034491807835, 0.0],\n", + " [0.0084836372506118252,\n", + " 0.019162394761622636,\n", + " 0.019162394761622636,\n", + " 0.011365034491807835],\n", + " [0.014748840361184217,\n", + " 0.020668400034830069,\n", + " 0.020668400034830069,\n", + " 0.019162394761622636],\n", + " [0.018242158479735236,\n", + " 0.028990438647940587,\n", + " 0.028990438647940587,\n", + " 0.020668400034830069],\n", + " [0.027920237624349298,\n", + " 0.029619060484764859,\n", + " 0.029619060484764859,\n", + " 0.028990438647940587],\n", + " [0.029605859420052054,\n", + " 0.030205490692920587,\n", + " 0.030205490692920587,\n", + " 0.029619060484764859],\n", + " [0.0, 0.033883919076761554, 0.033883919076761554, 0.030205490692920587],\n", + " [0.0, 0.034047345168163268, 0.034047345168163268, 0.033883919076761554],\n", + " [0.0, 0.034985197512669909, 0.034985197512669909, 0.034047345168163268],\n", + " [0.024518786633918915,\n", + " 0.035937288781987646,\n", + " 0.035937288781987646,\n", + " 0.034985197512669909],\n", + " [0.034860522270902736,\n", + " 0.036006845029801157,\n", + " 0.036006845029801157,\n", + " 0.035937288781987646],\n", + " [0.0, 0.040146595633997452, 0.040146595633997452, 0.036006845029801157],\n", + " [0.0018164151507835704,\n", + " 0.040216194810050281,\n", + " 0.040216194810050281,\n", + " 0.040146595633997452],\n", + " [0.0, 0.018420497414567982, 0.018420497414567982, 0.0],\n", + " [0.0, 0.0054762247032074211, 0.0054762247032074211, 0.0],\n", + " [0.0, 0.010404798316163703, 0.010404798316163703, 0.0054762247032074211],\n", + " [0.0, 0.0028918950534222677, 0.0028918950534222677, 0.0],\n", + " [0.0, 0.013523083745948279, 0.013523083745948279, 0.0028918950534222677],\n", + " [0.0, 0.013669241676119444, 0.013669241676119444, 0.013523083745948279],\n", + " [0.010404798316163703,\n", + " 0.018276957651648031,\n", + " 0.018276957651648031,\n", + " 0.013669241676119444],\n", + " [0.0, 0.022203004503895198, 0.022203004503895198, 0.018276957651648031],\n", + " [0.018420497414567982,\n", + " 0.025321960133445929,\n", + " 0.025321960133445929,\n", + " 0.022203004503895198],\n", + " [0.0, 0.025470003729879277, 0.025470003729879277, 0.025321960133445929],\n", + " [0.0, 0.025592808071809327, 0.025592808071809327, 0.025470003729879277],\n", + " [0.0, 0.028203028950794386, 0.028203028950794386, 0.025592808071809327],\n", + " [0.0, 0.029486138523045286, 0.029486138523045286, 0.028203028950794386],\n", + " [0.0, 0.040604200004432975, 0.040604200004432975, 0.029486138523045286],\n", + " [0.040216194810050281,\n", + " 0.041589307135369111,\n", + " 0.041589307135369111,\n", + " 0.040604200004432975],\n", + " [0.0086836030540343844,\n", + " 0.042737283582371818,\n", + " 0.042737283582371818,\n", + " 0.041589307135369111],\n", + " [0.0, 0.046154068867225458, 0.046154068867225458, 0.042737283582371818],\n", + " [0.038614883930936636,\n", + " 0.048782694185540335,\n", + " 0.048782694185540335,\n", + " 0.046154068867225458],\n", + " [0.0, 0.083981955502362635, 0.083981955502362635, 0.048782694185540335],\n", + " [0.051639847889011929,\n", + " 0.084572747679143995,\n", + " 0.084572747679143995,\n", + " 0.083981955502362635],\n", + " [0.0, 0.1768885702186527, 0.1768885702186527, 0.084572747679143995],\n", + " [0.0, 0.20790660178311235, 0.20790660178311235, 0.1768885702186527],\n", + " [0.0, 0.28202367786056121, 0.28202367786056121, 0.20790660178311235],\n", + " [0.22174582925728303,\n", + " 0.34545371008718384,\n", + " 0.34545371008718384,\n", + " 0.28202367786056121],\n", + " [0.34354135382076895,\n", + " 0.84329815648440742,\n", + " 0.84329815648440742,\n", + " 0.34545371008718384],\n", + " [0.0, 1.5408999846781071, 1.5408999846781071, 0.84329815648440742],\n", + " [0.0, 2.7042572752622882, 2.7042572752622882, 1.5408999846781071],\n", + " [0.0, 0.59934010957385575, 0.59934010957385575, 0.0],\n", + " [0.0, 1.3469621023837253, 1.3469621023837253, 0.59934010957385575],\n", + " [0.0, 0.014150066148254108, 0.014150066148254108, 0.0],\n", + " [0.0, 0.024456702660006911, 0.024456702660006911, 0.014150066148254108],\n", + " [0.0, 0.035676244897690078, 0.035676244897690078, 0.0],\n", + " [0.024456702660006911,\n", + " 0.041778766137829812,\n", + " 0.041778766137829812,\n", + " 0.035676244897690078],\n", + " [0.0, 0.103344337111428, 0.103344337111428, 0.041778766137829812],\n", + " [0.0, 0.1612475933618791, 0.1612475933618791, 0.103344337111428],\n", + " [0.0, 0.044623613984074009, 0.044623613984074009, 0.0],\n", + " [0.0, 0.046466982525229565, 0.046466982525229565, 0.044623613984074009],\n", + " [0.0, 0.089437536957363548, 0.089437536957363548, 0.046466982525229565],\n", + " [0.0, 0.23106364339722049, 0.23106364339722049, 0.089437536957363548],\n", + " [0.0, 0.027297811084409186, 0.027297811084409186, 0.0],\n", + " [0.0, 0.051391678947093219, 0.051391678947093219, 0.0],\n", + " [0.0, 0.051501735058146307, 0.051501735058146307, 0.051391678947093219],\n", + " [0.0, 0.061493708881483852, 0.061493708881483852, 0.051501735058146307],\n", + " [0.027297811084409186,\n", + " 0.10181903407516216,\n", + " 0.10181903407516216,\n", + " 0.061493708881483852],\n", + " [0.0, 0.02099894116377668, 0.02099894116377668, 0.0],\n", + " [0.0, 0.038663795985392567, 0.038663795985392567, 0.02099894116377668],\n", + " [0.0, 0.063057416193499125, 0.063057416193499125, 0.038663795985392567],\n", + " [0.0, 0.066719189023843856, 0.066719189023843856, 0.0],\n", + " [0.063057416193499125,\n", + " 0.084465973847462739,\n", + " 0.084465973847462739,\n", + " 0.066719189023843856],\n", + " [0.0, 0.099408529473083249, 0.099408529473083249, 0.084465973847462739],\n", + " [0.0, 0.12881011423797598, 0.12881011423797598, 0.099408529473083249],\n", + " [0.0, 0.14563897607783488, 0.14563897607783488, 0.12881011423797598],\n", + " [0.10181903407516216,\n", + " 0.1604648663259334,\n", + " 0.1604648663259334,\n", + " 0.14563897607783488],\n", + " [0.0, 0.26796340553329379, 0.26796340553329379, 0.1604648663259334],\n", + " [0.23106364339722049,\n", + " 0.54122543670176126,\n", + " 0.54122543670176126,\n", + " 0.26796340553329379],\n", + " [0.0, 0.59823531346452163, 0.59823531346452163, 0.54122543670176126],\n", + " [0.0, 0.052012432052344619, 0.052012432052344619, 0.0],\n", + " [0.0, 0.10816265119716074, 0.10816265119716074, 0.0],\n", + " [0.0, 0.023772047135234019, 0.023772047135234019, 0.0],\n", + " [0.0, 0.026502844998231054, 0.026502844998231054, 0.023772047135234019],\n", + " [0.0, 0.034648702890580828, 0.034648702890580828, 0.026502844998231054],\n", + " [0.0, 0.036590694896380394, 0.036590694896380394, 0.034648702890580828],\n", + " [0.0, 0.050977138062070201, 0.050977138062070201, 0.036590694896380394],\n", + " [0.0, 0.1176954655796113, 0.1176954655796113, 0.0],\n", + " [0.050977138062070201,\n", + " 0.17035139619034725,\n", + " 0.17035139619034725,\n", + " 0.1176954655796113],\n", + " [0.10816265119716074,\n", + " 0.20380348426854866,\n", + " 0.20380348426854866,\n", + " 0.17035139619034725],\n", + " [0.0, 0.49434353106417517, 0.49434353106417517, 0.20380348426854866],\n", + " [0.052012432052344619,\n", + " 0.80736210024746746,\n", + " 0.80736210024746746,\n", + " 0.49434353106417517],\n", + " [0.0, 0.032562874381721597, 0.032562874381721597, 0.0],\n", + " [0.0, 0.044752982928511466, 0.044752982928511466, 0.032562874381721597],\n", + " [0.0, 0.18042892219653359, 0.18042892219653359, 0.044752982928511466],\n", + " [0.0, 0.01698488966699805, 0.01698488966699805, 0.0],\n", + " [0.0, 0.061122143818742786, 0.061122143818742786, 0.01698488966699805],\n", + " [0.0, 0.061969394542791739, 0.061969394542791739, 0.0],\n", + " [0.061122143818742786,\n", + " 0.14540082467785742,\n", + " 0.14540082467785742,\n", + " 0.061969394542791739],\n", + " [0.0, 0.14561550799279246, 0.14561550799279246, 0.14540082467785742],\n", + " [0.0, 0.16530793277094566, 0.16530793277094566, 0.14561550799279246],\n", + " [0.0, 0.053291331311946293, 0.053291331311946293, 0.0],\n", + " [0.0, 0.05981076211686339, 0.05981076211686339, 0.053291331311946293],\n", + " [0.0, 0.070289980573338115, 0.070289980573338115, 0.05981076211686339],\n", + " [0.0, 0.073053353441168839, 0.073053353441168839, 0.0],\n", + " [0.070289980573338115,\n", + " 0.076692975773527822,\n", + " 0.076692975773527822,\n", + " 0.073053353441168839],\n", + " [0.0, 0.079379409704285947, 0.079379409704285947, 0.076692975773527822],\n", + " [0.0, 0.059746422035124723, 0.059746422035124723, 0.0],\n", + " [0.0, 0.10173609118694762, 0.10173609118694762, 0.059746422035124723],\n", + " [0.079379409704285947,\n", + " 0.11755576825490258,\n", + " 0.11755576825490258,\n", + " 0.10173609118694762],\n", + " [0.0, 0.14291010313479996, 0.14291010313479996, 0.11755576825490258],\n", + " [0.0, 0.19328275813429344, 0.19328275813429344, 0.14291010313479996],\n", + " [0.16530793277094566,\n", + " 0.2072195995194511,\n", + " 0.2072195995194511,\n", + " 0.19328275813429344],\n", + " [0.0, 0.30975527231186278, 0.30975527231186278, 0.2072195995194511],\n", + " [0.0, 0.046518033933092826, 0.046518033933092826, 0.0],\n", + " [0.0, 0.19979537168062306, 0.19979537168062306, 0.046518033933092826],\n", + " [0.0, 0.053039229227048887, 0.053039229227048887, 0.0],\n", + " [0.0, 0.13146263878379819, 0.13146263878379819, 0.053039229227048887],\n", + " [0.0, 0.035261819947359392, 0.035261819947359392, 0.0],\n", + " [0.0, 0.071204666321813909, 0.071204666321813909, 0.035261819947359392],\n", + " [0.0, 0.035861730647024727, 0.035861730647024727, 0.0],\n", + " [0.0, 0.015482228844708696, 0.015482228844708696, 0.0],\n", + " [0.0, 0.030898703791579704, 0.030898703791579704, 0.015482228844708696],\n", + " [0.0, 0.050007937230002145, 0.050007937230002145, 0.030898703791579704],\n", + " [0.0, 0.055448972903020415, 0.055448972903020415, 0.050007937230002145],\n", + " [0.035861730647024727,\n", + " 0.1053565911084877,\n", + " 0.1053565911084877,\n", + " 0.055448972903020415],\n", + " [0.071204666321813909,\n", + " 0.10925943516694835,\n", + " 0.10925943516694835,\n", + " 0.1053565911084877],\n", + " [0.0, 0.13631799721607052, 0.13631799721607052, 0.10925943516694835],\n", + " [0.13146263878379819,\n", + " 0.21114653607861819,\n", + " 0.21114653607861819,\n", + " 0.13631799721607052],\n", + " [0.19979537168062306,\n", + " 0.23404281562355256,\n", + " 0.23404281562355256,\n", + " 0.21114653607861819],\n", + " [0.0, 0.30326293829117823, 0.30326293829117823, 0.23404281562355256],\n", + " [0.0, 0.19669145574986668, 0.19669145574986668, 0.0],\n", + " [0.0, 0.42024113468340596, 0.42024113468340596, 0.19669145574986668],\n", + " [0.30326293829117823,\n", + " 0.43646549571988302,\n", + " 0.43646549571988302,\n", + " 0.42024113468340596],\n", + " [0.30975527231186278,\n", + " 0.53273999329973465,\n", + " 0.53273999329973465,\n", + " 0.43646549571988302],\n", + " [0.18042892219653359,\n", + " 1.6229880124514178,\n", + " 1.6229880124514178,\n", + " 0.53273999329973465],\n", + " [0.80736210024746746,\n", + " 1.7295162818953203,\n", + " 1.7295162818953203,\n", + " 1.6229880124514178],\n", + " [0.59823531346452163,\n", + " 1.8971440185926829,\n", + " 1.8971440185926829,\n", + " 1.7295162818953203],\n", + " [0.1612475933618791,\n", + " 2.2980113482857316,\n", + " 2.2980113482857316,\n", + " 1.8971440185926829],\n", + " [0.0, 0.059555456995978452, 0.059555456995978452, 0.0],\n", + " [0.0, 0.2085934171636295, 0.2085934171636295, 0.059555456995978452],\n", + " [0.0, 0.01032704769041067, 0.01032704769041067, 0.0],\n", + " [0.0, 0.042869571726340441, 0.042869571726340441, 0.01032704769041067],\n", + " [0.0, 0.045592896749380205, 0.045592896749380205, 0.0],\n", + " [0.042869571726340441,\n", + " 0.049736333369088781,\n", + " 0.049736333369088781,\n", + " 0.045592896749380205],\n", + " [0.0, 0.051633019067255544, 0.051633019067255544, 0.0],\n", + " [0.0, 0.051599015581687918, 0.051599015581687918, 0.0],\n", + " [0.0, 0.1247199782232175, 0.1247199782232175, 0.051599015581687918],\n", + " [0.051633019067255544,\n", + " 0.2440109941334643,\n", + " 0.2440109941334643,\n", + " 0.1247199782232175],\n", + " [0.049736333369088781,\n", + " 0.30276168305285978,\n", + " 0.30276168305285978,\n", + " 0.2440109941334643],\n", + " [0.0, 0.065608258481690732, 0.065608258481690732, 0.0],\n", + " [0.0, 0.049200158963153322, 0.049200158963153322, 0.0],\n", + " [0.0, 0.019724040483631682, 0.019724040483631682, 0.0],\n", + " [0.0, 0.022380470616135861, 0.022380470616135861, 0.019724040483631682],\n", + " [0.0, 0.028563165808435532, 0.028563165808435532, 0.022380470616135861],\n", + " [0.0, 0.041443584063156208, 0.041443584063156208, 0.028563165808435532],\n", + " [0.0, 0.057502405593158286, 0.057502405593158286, 0.041443584063156208],\n", + " [0.049200158963153322,\n", + " 0.059470605218033344,\n", + " 0.059470605218033344,\n", + " 0.057502405593158286],\n", + " [0.0, 0.059852808288334683, 0.059852808288334683, 0.059470605218033344],\n", + " [0.0, 0.073771571875624428, 0.073771571875624428, 0.059852808288334683],\n", + " [0.0, 0.010152951147321882, 0.010152951147321882, 0.0],\n", + " [0.0, 0.059016718749859282, 0.059016718749859282, 0.010152951147321882],\n", + " [0.0, 0.028187853909095159, 0.028187853909095159, 0.0],\n", + " [0.0, 0.059670924309916135, 0.059670924309916135, 0.028187853909095159],\n", + " [0.059016718749859282,\n", + " 0.079638863333171203,\n", + " 0.079638863333171203,\n", + " 0.059670924309916135],\n", + " [0.073771571875624428,\n", + " 0.083182663848897748,\n", + " 0.083182663848897748,\n", + " 0.079638863333171203],\n", + " [0.065608258481690732,\n", + " 0.085526958568630018,\n", + " 0.085526958568630018,\n", + " 0.083182663848897748],\n", + " [0.0, 0.089477836808899522, 0.089477836808899522, 0.085526958568630018],\n", + " [0.0, 0.024142898603941719, 0.024142898603941719, 0.0],\n", + " [0.0, 0.033197929890290495, 0.033197929890290495, 0.024142898603941719],\n", + " [0.0, 0.0076075600556289079, 0.0076075600556289079, 0.0],\n", + " [0.0, 0.011210875077357949, 0.011210875077357949, 0.0],\n", + " [0.0, 0.013457505155116779, 0.013457505155116779, 0.011210875077357949],\n", + " [0.0, 0.013172021864544718, 0.013172021864544718, 0.0],\n", + " [0.0, 0.016586098667253246, 0.016586098667253246, 0.0],\n", + " [0.013172021864544718,\n", + " 0.0173423639103839,\n", + " 0.0173423639103839,\n", + " 0.016586098667253246],\n", + " [0.013457505155116779,\n", + " 0.018670737130598414,\n", + " 0.018670737130598414,\n", + " 0.0173423639103839],\n", + " [0.0, 0.020758040972126399, 0.020758040972126399, 0.018670737130598414],\n", + " [0.0, 0.031098601511959, 0.031098601511959, 0.020758040972126399],\n", + " [0.0, 0.041754629264310436, 0.041754629264310436, 0.031098601511959],\n", + " [0.0076075600556289079,\n", + " 0.061584341686824889,\n", + " 0.061584341686824889,\n", + " 0.041754629264310436],\n", + " [0.033197929890290495,\n", + " 0.065658008011209162,\n", + " 0.065658008011209162,\n", + " 0.061584341686824889],\n", + " [0.0, 0.068699861317185876, 0.068699861317185876, 0.065658008011209162],\n", + " [0.0, 0.049539020579734451, 0.049539020579734451, 0.0],\n", + " [0.0, 0.072804573956591262, 0.072804573956591262, 0.049539020579734451],\n", + " [0.068699861317185876,\n", + " 0.086915940569047168,\n", + " 0.086915940569047168,\n", + " 0.072804573956591262],\n", + " [0.0, 0.095659435593146228, 0.095659435593146228, 0.086915940569047168],\n", + " [0.089477836808899522,\n", + " 0.11460235345314687,\n", + " 0.11460235345314687,\n", + " 0.095659435593146228],\n", + " [0.0, 0.12701089509566743, 0.12701089509566743, 0.11460235345314687],\n", + " [0.0, 0.13254671252429173, 0.13254671252429173, 0.12701089509566743],\n", + " [0.0, 0.056714331962915726, 0.056714331962915726, 0.0],\n", + " [0.0, 0.11288589304248571, 0.11288589304248571, 0.056714331962915726],\n", + " [0.0, 0.07280329059184254, 0.07280329059184254, 0.0],\n", + " [0.0, 0.080841990636060734, 0.080841990636060734, 0.07280329059184254],\n", + " [0.0, 0.082324864299915548, 0.082324864299915548, 0.080841990636060734],\n", + " [0.0, 0.091779385158099774, 0.091779385158099774, 0.082324864299915548],\n", + " [0.0, 0.12864613218048723, 0.12864613218048723, 0.091779385158099774],\n", + " [0.11288589304248571,\n", + " 0.14506416723643245,\n", + " 0.14506416723643245,\n", + " 0.12864613218048723],\n", + " [0.13254671252429173,\n", + " 0.15362834161052558,\n", + " 0.15362834161052558,\n", + " 0.14506416723643245],\n", + " [0.0, 0.16585016605659414, 0.16585016605659414, 0.15362834161052558],\n", + " [0.0, 0.17605003376598116, 0.17605003376598116, 0.16585016605659414],\n", + " [0.0, 0.22579841578274806, 0.22579841578274806, 0.17605003376598116],\n", + " [0.0, 0.22883149909923156, 0.22883149909923156, 0.22579841578274806],\n", + " [0.0, 0.11163097717480681, 0.11163097717480681, 0.0],\n", + " [0.0, 0.033692195950995887, 0.033692195950995887, 0.0],\n", + " [0.0, 0.061242448816154128, 0.061242448816154128, 0.033692195950995887],\n", + " [0.0, 0.073998306257644864, 0.073998306257644864, 0.061242448816154128],\n", + " [0.0, 0.081102272132164907, 0.081102272132164907, 0.0],\n", + " [0.073998306257644864,\n", + " 0.12119266157651597,\n", + " 0.12119266157651597,\n", + " 0.081102272132164907],\n", + " [0.0, 0.11938575444750045, 0.11938575444750045, 0.0],\n", + " [0.0, 0.1468223747287877, 0.1468223747287877, 0.11938575444750045],\n", + " [0.0, 0.16871778886945177, 0.16871778886945177, 0.1468223747287877],\n", + " [0.12119266157651597,\n", + " 0.2203538448269137,\n", + " 0.2203538448269137,\n", + " 0.16871778886945177],\n", + " [0.11163097717480681,\n", + " 0.34863631449692417,\n", + " 0.34863631449692417,\n", + " 0.2203538448269137],\n", + " [0.0, 0.39832174188335839, 0.39832174188335839, 0.34863631449692417],\n", + " [0.22883149909923156,\n", + " 0.41752518876349926,\n", + " 0.41752518876349926,\n", + " 0.39832174188335839],\n", + " [0.30276168305285978,\n", + " 0.71040568246108149,\n", + " 0.71040568246108149,\n", + " 0.41752518876349926],\n", + " [0.0, 0.7369189879559388, 0.7369189879559388, 0.71040568246108149],\n", + " [0.0, 0.90149476200474365, 0.90149476200474365, 0.7369189879559388],\n", + " [0.2085934171636295,\n", + " 3.0644933075162673,\n", + " 3.0644933075162673,\n", + " 0.90149476200474365],\n", + " [2.2980113482857316,\n", + " 3.9001148663398419,\n", + " 3.9001148663398419,\n", + " 3.0644933075162673],\n", + " [1.3469621023837253,\n", + " 3.9012960550264695,\n", + " 3.9012960550264695,\n", + " 3.9001148663398419],\n", + " [2.7042572752622882,\n", + " 4.0498457533935834,\n", + " 4.0498457533935834,\n", + " 3.9012960550264695],\n", + " [1.6524886027519214,\n", + " 4.4984236760096348,\n", + " 4.4984236760096348,\n", + " 4.0498457533935834],\n", + " [0.0, 0.073944659658423909, 0.073944659658423909, 0.0],\n", + " [0.0, 0.085482524623457609, 0.085482524623457609, 0.0],\n", + " [0.0, 0.25863004466224937, 0.25863004466224937, 0.085482524623457609],\n", + " [0.0, 0.0075985062347820858, 0.0075985062347820858, 0.0],\n", + " [0.0, 0.039738337786070679, 0.039738337786070679, 0.0075985062347820858],\n", + " [0.0, 0.071684703319464818, 0.071684703319464818, 0.039738337786070679],\n", + " [0.0, 0.074451231400152099, 0.074451231400152099, 0.071684703319464818],\n", + " [0.0, 0.13994757474497152, 0.13994757474497152, 0.074451231400152099],\n", + " [0.0, 0.20481286531856546, 0.20481286531856546, 0.13994757474497152],\n", + " [0.0, 0.19811461261098345, 0.19811461261098345, 0.0],\n", + " [0.0, 0.30070401707493016, 0.30070401707493016, 0.19811461261098345],\n", + " [0.20481286531856546,\n", + " 0.52570085768428898,\n", + " 0.52570085768428898,\n", + " 0.30070401707493016],\n", + " [0.0, 0.028148966677303731, 0.028148966677303731, 0.0],\n", + " [0.0, 0.054641212449946193, 0.054641212449946193, 0.028148966677303731],\n", + " [0.0, 0.073191787107571085, 0.073191787107571085, 0.054641212449946193],\n", + " [0.0, 0.055294112932574919, 0.055294112932574919, 0.0],\n", + " [0.0, 0.005815876975994335, 0.005815876975994335, 0.0],\n", + " [0.0, 0.14049676504816741, 0.14049676504816741, 0.005815876975994335],\n", + " [0.055294112932574919,\n", + " 0.14981747602332865,\n", + " 0.14981747602332865,\n", + " 0.14049676504816741],\n", + " [0.073191787107571085,\n", + " 0.17504322746682244,\n", + " 0.17504322746682244,\n", + " 0.14981747602332865],\n", + " [0.0, 0.21577157052076726, 0.21577157052076726, 0.17504322746682244],\n", + " [0.0, 0.025878460618819703, 0.025878460618819703, 0.0],\n", + " [0.0, 0.01199615705131458, 0.01199615705131458, 0.0],\n", + " [0.0, 0.0030980074241410949, 0.0030980074241410949, 0.0],\n", + " [0.0, 0.019995884426553191, 0.019995884426553191, 0.0030980074241410949],\n", + " [0.01199615705131458,\n", + " 0.031658051898378982,\n", + " 0.031658051898378982,\n", + " 0.019995884426553191],\n", + " [0.025878460618819703,\n", + " 0.037283256684467247,\n", + " 0.037283256684467247,\n", + " 0.031658051898378982],\n", + " [0.0, 0.13433485357493333, 0.13433485357493333, 0.037283256684467247],\n", + " [0.0, 0.0143634257752038, 0.0143634257752038, 0.0],\n", + " [0.0, 0.07138260320274252, 0.07138260320274252, 0.0143634257752038],\n", + " [0.0, 0.077124019637204791, 0.077124019637204791, 0.07138260320274252],\n", + " [0.0, 0.163515104653985, 0.163515104653985, 0.077124019637204791],\n", + " [0.0, 0.19745831606948469, 0.19745831606948469, 0.163515104653985],\n", + " [0.0, 0.33032139646259784, 0.33032139646259784, 0.19745831606948469],\n", + " [0.0, 0.032723608068181961, 0.032723608068181961, 0.0],\n", + " [0.0, 0.059607699922078095, 0.059607699922078095, 0.032723608068181961],\n", + " [0.0, 0.011247056726093024, 0.011247056726093024, 0.0],\n", + " [0.0, 0.0093737056173170772, 0.0093737056173170772, 0.0],\n", + " [0.0, 0.01630576293830463, 0.01630576293830463, 0.0],\n", + " [0.0093737056173170772,\n", + " 0.0168844037502002,\n", + " 0.0168844037502002,\n", + " 0.01630576293830463],\n", + " [0.0, 0.010120872739044785, 0.010120872739044785, 0.0],\n", + " [0.0, 0.012431863939084707, 0.012431863939084707, 0.0],\n", + " [0.0, 0.01701819875897222, 0.01701819875897222, 0.012431863939084707],\n", + " [0.0, 0.018934244241585352, 0.018934244241585352, 0.01701819875897222],\n", + " [0.010120872739044785,\n", + " 0.01949769714606962,\n", + " 0.01949769714606962,\n", + " 0.018934244241585352],\n", + " [0.0168844037502002,\n", + " 0.019542592765551255,\n", + " 0.019542592765551255,\n", + " 0.01949769714606962],\n", + " [0.011247056726093024,\n", + " 0.033588850486444048,\n", + " 0.033588850486444048,\n", + " 0.019542592765551255],\n", + " [0.0, 0.036362828341592025, 0.036362828341592025, 0.033588850486444048],\n", + " [0.0, 0.042876986426282633, 0.042876986426282633, 0.036362828341592025],\n", + " [0.0, 0.043020176208382215, 0.043020176208382215, 0.0],\n", + " [0.042876986426282633,\n", + " 0.044997083105462098,\n", + " 0.044997083105462098,\n", + " 0.043020176208382215],\n", + " [0.0, 0.020237745452505274, 0.020237745452505274, 0.0],\n", + " [0.0, 0.017281247206150777, 0.017281247206150777, 0.0],\n", + " [0.0, 0.011865198734118248, 0.011865198734118248, 0.0],\n", + " [0.0, 0.00081522512228552843, 0.00081522512228552843, 0.0],\n", + " [0.0, 0.0015821453789008906, 0.0015821453789008906, 0.00081522512228552843],\n", + " [0.0, 0.0015906341502648323, 0.0015906341502648323, 0.0],\n", + " [0.0, 0.0061239697092657893, 0.0061239697092657893, 0.0015906341502648323],\n", + " [0.0015821453789008906,\n", + " 0.017390399219109995,\n", + " 0.017390399219109995,\n", + " 0.0061239697092657893],\n", + " [0.011865198734118248,\n", + " 0.017517702617637087,\n", + " 0.017517702617637087,\n", + " 0.017390399219109995],\n", + " [0.0, 0.01831336574744517, 0.01831336574744517, 0.017517702617637087],\n", + " [0.017281247206150777,\n", + " 0.025907579470109323,\n", + " 0.025907579470109323,\n", + " 0.01831336574744517],\n", + " [0.0, 0.028366467615827021, 0.028366467615827021, 0.0],\n", + " [0.025907579470109323,\n", + " 0.034287592580998241,\n", + " 0.034287592580998241,\n", + " 0.028366467615827021],\n", + " [0.020237745452505274,\n", + " 0.037606675697273023,\n", + " 0.037606675697273023,\n", + " 0.034287592580998241],\n", + " [0.0, 0.046911848098318658, 0.046911848098318658, 0.037606675697273023],\n", + " [0.044997083105462098,\n", + " 0.048365014835098773,\n", + " 0.048365014835098773,\n", + " 0.046911848098318658],\n", + " [0.0, 0.026224900018873558, 0.026224900018873558, 0.0],\n", + " [0.0, 0.036973134205795219, 0.036973134205795219, 0.026224900018873558],\n", + " [0.0, 0.036989479855760059, 0.036989479855760059, 0.0],\n", + " [0.036973134205795219,\n", + " 0.038455858396346028,\n", + " 0.038455858396346028,\n", + " 0.036989479855760059],\n", + " [0.0, 0.00064965914140107924, 0.00064965914140107924, 0.0],\n", + " [0.0, 0.00071276924736566119, 0.00071276924736566119, 0.0],\n", + " [0.0,\n", + " 0.00091121731766314923,\n", + " 0.00091121731766314923,\n", + " 0.00071276924736566119],\n", + " [0.00064965914140107924,\n", + " 0.0035409034157982827,\n", + " 0.0035409034157982827,\n", + " 0.00091121731766314923],\n", + " [0.0, 0.0041512660719321267, 0.0041512660719321267, 0.0035409034157982827],\n", + " [0.0, 0.0088833437398291044, 0.0088833437398291044, 0.0],\n", + " [0.0, 0.012020308981047032, 0.012020308981047032, 0.0],\n", + " [0.0, 0.012805711264895913, 0.012805711264895913, 0.012020308981047032],\n", + " [0.0, 0.015522795753348639, 0.015522795753348639, 0.012805711264895913],\n", + " [0.0088833437398291044,\n", + " 0.024388405954476704,\n", + " 0.024388405954476704,\n", + " 0.015522795753348639],\n", + " [0.0, 0.015610575005425153, 0.015610575005425153, 0.0],\n", + " [0.0, 0.018323352586251857, 0.018323352586251857, 0.015610575005425153],\n", + " [0.0, 0.0076194837095489116, 0.0076194837095489116, 0.0],\n", + " [0.0, 0.00036272992707620525, 0.00036272992707620525, 0.0],\n", + " [0.0, 0.0027701077596402599, 0.0027701077596402599, 0.00036272992707620525],\n", + " [0.0, 0.018450201110015937, 0.018450201110015937, 0.0027701077596402599],\n", + " [0.0076194837095489116,\n", + " 0.018883792468674457,\n", + " 0.018883792468674457,\n", + " 0.018450201110015937],\n", + " [0.018323352586251857,\n", + " 0.024763251987574668,\n", + " 0.024763251987574668,\n", + " 0.018883792468674457],\n", + " [0.024388405954476704,\n", + " 0.024857553479777965,\n", + " 0.024857553479777965,\n", + " 0.024763251987574668],\n", + " [0.0, 0.026636854619117141, 0.026636854619117141, 0.0],\n", + " [0.024857553479777965,\n", + " 0.028718911469623493,\n", + " 0.028718911469623493,\n", + " 0.026636854619117141],\n", + " [0.0041512660719321267,\n", + " 0.038638206700109902,\n", + " 0.038638206700109902,\n", + " 0.028718911469623493],\n", + " [0.038455858396346028,\n", + " 0.043438708740017533,\n", + " 0.043438708740017533,\n", + " 0.038638206700109902],\n", + " [0.0, 0.044068577127022911, 0.044068577127022911, 0.043438708740017533],\n", + " [0.0, 0.051819075416299161, 0.051819075416299161, 0.044068577127022911],\n", + " [0.048365014835098773,\n", + " 0.061544174712155043,\n", + " 0.061544174712155043,\n", + " 0.051819075416299161],\n", + " [0.0, 0.062271443214368699, 0.062271443214368699, 0.061544174712155043],\n", + " [0.059607699922078095,\n", + " 0.085379859006673609,\n", + " 0.085379859006673609,\n", + " 0.062271443214368699],\n", + " [0.0, 0.02225606649882864, 0.02225606649882864, 0.0],\n", + " [0.0, 0.059090617402426646, 0.059090617402426646, 0.02225606649882864],\n", + " [0.0, 0.057117177521300633, 0.057117177521300633, 0.0],\n", + " [0.0, 0.065920229861548968, 0.065920229861548968, 0.057117177521300633],\n", + " [0.059090617402426646,\n", + " 0.076574691641554657,\n", + " 0.076574691641554657,\n", + " 0.065920229861548968],\n", + " [0.0, 0.092676488863138937, 0.092676488863138937, 0.076574691641554657],\n", + " [0.085379859006673609,\n", + " 0.10939446425665267,\n", + " 0.10939446425665267,\n", + " 0.092676488863138937],\n", + " [0.0, 0.11645164634731418, 0.11645164634731418, 0.10939446425665267],\n", + " [0.0, 0.063389889950999131, 0.063389889950999131, 0.0],\n", + " [0.0, 0.051923219565053837, 0.051923219565053837, 0.0],\n", + " [0.0, 0.096877076819026339, 0.096877076819026339, 0.051923219565053837],\n", + " [0.063389889950999131,\n", + " 0.10714677143058869,\n", + " 0.10714677143058869,\n", + " 0.096877076819026339],\n", + " [0.0, 0.12510666250044852, 0.12510666250044852, 0.10714677143058869],\n", + " [0.11645164634731418,\n", + " 0.19304434411037158,\n", + " 0.19304434411037158,\n", + " 0.12510666250044852],\n", + " [0.0, 0.022358358548873612, 0.022358358548873612, 0.0],\n", + " [0.0, 0.024609707759340693, 0.024609707759340693, 0.0],\n", + " [0.022358358548873612,\n", + " 0.03211845606501005,\n", + " 0.03211845606501005,\n", + " 0.024609707759340693],\n", + " [0.0, 0.0060249651451306039, 0.0060249651451306039, 0.0],\n", + " [0.0, 0.0072810557613551012, 0.0072810557613551012, 0.0060249651451306039],\n", + " [0.0, 0.00069812104967540008, 0.00069812104967540008, 0.0],\n", + " [0.0, 0.0038732337910376453, 0.0038732337910376453, 0.00069812104967540008],\n", + " [0.0, 0.0054210672380984792, 0.0054210672380984792, 0.0038732337910376453],\n", + " [0.0, 0.0071222879750799193, 0.0071222879750799193, 0.0054210672380984792],\n", + " [0.0, 0.0072961053309270997, 0.0072961053309270997, 0.0071222879750799193],\n", + " [0.0, 0.013606017235033126, 0.013606017235033126, 0.0072961053309270997],\n", + " [0.0072810557613551012,\n", + " 0.017483771132105797,\n", + " 0.017483771132105797,\n", + " 0.013606017235033126],\n", + " [0.0, 0.017791237674760336, 0.017791237674760336, 0.017483771132105797],\n", + " [0.0, 0.0025436493469083682, 0.0025436493469083682, 0.0],\n", + " [0.0, 0.0071484791389507807, 0.0071484791389507807, 0.0025436493469083682],\n", + " [0.0, 0.0055294532279413101, 0.0055294532279413101, 0.0],\n", + " [0.0, 0.0074324305580364385, 0.0074324305580364385, 0.0055294532279413101],\n", + " [0.0, 0.0079787505914105661, 0.0079787505914105661, 0.0074324305580364385],\n", + " [0.0071484791389507807,\n", + " 0.0087896530079491705,\n", + " 0.0087896530079491705,\n", + " 0.0079787505914105661],\n", + " [0.0, 0.0098042358192787747, 0.0098042358192787747, 0.0087896530079491705],\n", + " [0.0, 0.01836199144972973, 0.01836199144972973, 0.0098042358192787747],\n", + " [0.017791237674760336,\n", + " 0.019972382757190817,\n", + " 0.019972382757190817,\n", + " 0.01836199144972973],\n", + " [0.0, 0.024886770802977277, 0.024886770802977277, 0.019972382757190817],\n", + " [0.0, 0.032857985604717393, 0.032857985604717393, 0.024886770802977277],\n", + " [0.03211845606501005,\n", + " 0.041970311947853514,\n", + " 0.041970311947853514,\n", + " 0.032857985604717393],\n", + " [0.0, 0.017274949840733397, 0.017274949840733397, 0.0],\n", + " [0.0, 0.012201181623106166, 0.012201181623106166, 0.0],\n", + " [0.0, 0.0098052561924728623, 0.0098052561924728623, 0.0],\n", + " [0.0, 0.01718963431839169, 0.01718963431839169, 0.0],\n", + " [0.0098052561924728623,\n", + " 0.017623102138954235,\n", + " 0.017623102138954235,\n", + " 0.01718963431839169],\n", + " [0.0, 0.0027154500547786785, 0.0027154500547786785, 0.0],\n", + " [0.0, 0.0099218319377025795, 0.0099218319377025795, 0.0],\n", + " [0.0, 0.014223826840894863, 0.014223826840894863, 0.0099218319377025795],\n", + " [0.0, 0.015244017121481821, 0.015244017121481821, 0.014223826840894863],\n", + " [0.0, 0.021674086370600944, 0.021674086370600944, 0.015244017121481821],\n", + " [0.0027154500547786785,\n", + " 0.021695597456631594,\n", + " 0.021695597456631594,\n", + " 0.021674086370600944],\n", + " [0.017623102138954235,\n", + " 0.021706773712368944,\n", + " 0.021706773712368944,\n", + " 0.021695597456631594],\n", + " [0.012201181623106166,\n", + " 0.038945767472216897,\n", + " 0.038945767472216897,\n", + " 0.021706773712368944],\n", + " [0.017274949840733397,\n", + " 0.044240447127035787,\n", + " 0.044240447127035787,\n", + " 0.038945767472216897],\n", + " [0.041970311947853514,\n", + " 0.059049934538494893,\n", + " 0.059049934538494893,\n", + " 0.044240447127035787],\n", + " [0.0, 0.06306913465396638, 0.06306913465396638, 0.059049934538494893],\n", + " [0.0, 0.0028593621666345658, 0.0028593621666345658, 0.0],\n", + " [0.0, 0.0036876998250952747, 0.0036876998250952747, 0.0],\n", + " [0.0028593621666345658,\n", + " 0.006056857683656579,\n", + " 0.006056857683656579,\n", + " 0.0036876998250952747],\n", + " [0.0, 0.010860410029086227, 0.010860410029086227, 0.006056857683656579],\n", + " [0.0, 0.0026456159963230822, 0.0026456159963230822, 0.0],\n", + " [0.0, 0.0035421977641043609, 0.0035421977641043609, 0.0],\n", + " [0.0026456159963230822,\n", + " 0.0060885420258068312,\n", + " 0.0060885420258068312,\n", + " 0.0035421977641043609],\n", + " [0.0, 0.012823845951984282, 0.012823845951984282, 0.0060885420258068312],\n", + " [0.010860410029086227,\n", + " 0.014361114859229591,\n", + " 0.014361114859229591,\n", + " 0.012823845951984282],\n", + " [0.0, 0.022777150941231176, 0.022777150941231176, 0.0],\n", + " [0.0, 0.023127708749463759, 0.023127708749463759, 0.022777150941231176],\n", + " [0.014361114859229591,\n", + " 0.028816307691995186,\n", + " 0.028816307691995186,\n", + " 0.023127708749463759],\n", + " [0.0, 0.030678002624035951, 0.030678002624035951, 0.028816307691995186],\n", + " [0.0, 0.031566429082176571, 0.031566429082176571, 0.030678002624035951],\n", + " [0.0, 0.01430599737872653, 0.01430599737872653, 0.0],\n", + " [0.0, 0.0089733251919256289, 0.0089733251919256289, 0.0],\n", + " [0.0, 0.0061099902618577126, 0.0061099902618577126, 0.0],\n", + " [0.0, 0.00076478297575189973, 0.00076478297575189973, 0.0],\n", + " [0.0, 0.0023560884957916262, 0.0023560884957916262, 0.00076478297575189973],\n", + " [0.0, 0.006913026110175087, 0.006913026110175087, 0.0023560884957916262],\n", + " [0.0, 0.00067426552633807063, 0.00067426552633807063, 0.0],\n", + " [0.0, 0.0024582434785867312, 0.0024582434785867312, 0.0],\n", + " [0.0, 0.0046617758418804516, 0.0046617758418804516, 0.0024582434785867312],\n", + " [0.00067426552633807063,\n", + " 0.0070470762731801419,\n", + " 0.0070470762731801419,\n", + " 0.0046617758418804516],\n", + " [0.0, 0.0072498893784610366, 0.0072498893784610366, 0.0070470762731801419],\n", + " [0.0, 0.0077223147436476713, 0.0077223147436476713, 0.0072498893784610366],\n", + " [0.006913026110175087,\n", + " 0.0077416733333230516,\n", + " 0.0077416733333230516,\n", + " 0.0077223147436476713],\n", + " [0.0, 0.0002312249986513723, 0.0002312249986513723, 0.0],\n", + " [0.0, 0.0028408146718807616, 0.0028408146718807616, 0.0002312249986513723],\n", + " [0.0, 0.0021830483274471778, 0.0021830483274471778, 0.0],\n", + " [0.0, 0.0046878452406272355, 0.0046878452406272355, 0.0021830483274471778],\n", + " [0.0028408146718807616,\n", + " 0.006030107461723464,\n", + " 0.006030107461723464,\n", + " 0.0046878452406272355],\n", + " [0.0, 0.0037664306710782796, 0.0037664306710782796, 0.0],\n", + " [0.0, 0.0048777721348966735, 0.0048777721348966735, 0.0],\n", + " [0.0037664306710782796,\n", + " 0.007320980603720135,\n", + " 0.007320980603720135,\n", + " 0.0048777721348966735],\n", + " [0.006030107461723464,\n", + " 0.0079361857967218622,\n", + " 0.0079361857967218622,\n", + " 0.007320980603720135],\n", + " [0.0077416733333230516,\n", + " 0.0080203522366582049,\n", + " 0.0080203522366582049,\n", + " 0.0079361857967218622],\n", + " [0.0, 0.0081868641127070211, 0.0081868641127070211, 0.0080203522366582049],\n", + " [0.0061099902618577126,\n", + " 0.010980415748047067,\n", + " 0.010980415748047067,\n", + " 0.0081868641127070211],\n", + " [0.0089733251919256289,\n", + " 0.014600241436356078,\n", + " 0.014600241436356078,\n", + " 0.010980415748047067],\n", + " [0.01430599737872653,\n", + " 0.014807611556221819,\n", + " 0.014807611556221819,\n", + " 0.014600241436356078],\n", + " [0.0, 0.016437378197266803, 0.016437378197266803, 0.014807611556221819],\n", + " [0.0, 0.0039494000810328988, 0.0039494000810328988, 0.0],\n", + " [0.0, 0.023721997238848901, 0.023721997238848901, 0.0039494000810328988],\n", + " [0.0, 0.0082581337480065777, 0.0082581337480065777, 0.0],\n", + " [0.0, 0.01829679384482279, 0.01829679384482279, 0.0082581337480065777],\n", + " [0.0, 0.018815465261322353, 0.018815465261322353, 0.01829679384482279],\n", + " [0.0, 0.020967962466589034, 0.020967962466589034, 0.0],\n", + " [0.018815465261322353,\n", + " 0.023811077779051559,\n", + " 0.023811077779051559,\n", + " 0.020967962466589034],\n", + " [0.023721997238848901,\n", + " 0.026467670335706031,\n", + " 0.026467670335706031,\n", + " 0.023811077779051559],\n", + " [0.016437378197266803,\n", + " 0.029127625049084279,\n", + " 0.029127625049084279,\n", + " 0.026467670335706031],\n", + " [0.0, 0.030312128826595685, 0.030312128826595685, 0.029127625049084279],\n", + " [0.0, 0.034820805648353978, 0.034820805648353978, 0.030312128826595685],\n", + " [0.0, 0.011468902519426439, 0.011468902519426439, 0.0],\n", + " [0.0, 0.012622087505634108, 0.012622087505634108, 0.011468902519426439],\n", + " [0.0, 0.022975496512584508, 0.022975496512584508, 0.012622087505634108],\n", + " [0.0, 0.0074459144502155841, 0.0074459144502155841, 0.0],\n", + " [0.0, 0.0081484722494494597, 0.0081484722494494597, 0.0074459144502155841],\n", + " [0.0, 0.0043145119075055586, 0.0043145119075055586, 0.0],\n", + " [0.0, 0.0094500375131535731, 0.0094500375131535731, 0.0043145119075055586],\n", + " [0.0, 0.0097108108827300751, 0.0097108108827300751, 0.0094500375131535731],\n", + " [0.0, 0.0098505899315680674, 0.0098505899315680674, 0.0097108108827300751],\n", + " [0.0, 0.01131609760473354, 0.01131609760473354, 0.0098505899315680674],\n", + " [0.0, 0.014165335506097316, 0.014165335506097316, 0.01131609760473354],\n", + " [0.0, 0.0087523393444220374, 0.0087523393444220374, 0.0],\n", + " [0.0, 0.0077389658869912439, 0.0077389658869912439, 0.0],\n", + " [0.0, 0.011682192816417691, 0.011682192816417691, 0.0077389658869912439],\n", + " [0.0, 0.004387759337062311, 0.004387759337062311, 0.0],\n", + " [0.0, 0.0060504571728084216, 0.0060504571728084216, 0.0],\n", + " [0.0, 0.0021016120003516576, 0.0021016120003516576, 0.0],\n", + " [0.0, 0.0044602772335329546, 0.0044602772335329546, 0.0021016120003516576],\n", + " [0.0, 0.0067140214476812442, 0.0067140214476812442, 0.0044602772335329546],\n", + " [0.0060504571728084216,\n", + " 0.0076479914356603184,\n", + " 0.0076479914356603184,\n", + " 0.0067140214476812442],\n", + " [0.0, 0.0055688126202908077, 0.0055688126202908077, 0.0],\n", + " [0.0, 0.0031115687361792143, 0.0031115687361792143, 0.0],\n", + " [0.0, 0.0014949130409466834, 0.0014949130409466834, 0.0],\n", + " [0.0, 0.0028363189171839317, 0.0028363189171839317, 0.0],\n", + " [0.0014949130409466834,\n", + " 0.0051019259108695198,\n", + " 0.0051019259108695198,\n", + " 0.0028363189171839317],\n", + " [0.0031115687361792143,\n", + " 0.0070612738935766335,\n", + " 0.0070612738935766335,\n", + " 0.0051019259108695198],\n", + " [0.0, 0.0012763702440901929, 0.0012763702440901929, 0.0],\n", + " [0.0, 0.0023288514336516778, 0.0023288514336516778, 0.0],\n", + " [0.0, 0.0033312571200634165, 0.0033312571200634165, 0.0023288514336516778],\n", + " [0.0, 0.0035388823094339504, 0.0035388823094339504, 0.0033312571200634165],\n", + " [0.0012763702440901929,\n", + " 0.0044345056094269742,\n", + " 0.0044345056094269742,\n", + " 0.0035388823094339504],\n", + " [0.0, 0.0062083943979124659, 0.0062083943979124659, 0.0044345056094269742],\n", + " [0.0, 0.0070897698129032344, 0.0070897698129032344, 0.0062083943979124659],\n", + " [0.0070612738935766335,\n", + " 0.0081291949170837416,\n", + " 0.0081291949170837416,\n", + " 0.0070897698129032344],\n", + " [0.0, 0.0049161880558024774, 0.0049161880558024774, 0.0],\n", + " [0.0, 0.0081776183574428195, 0.0081776183574428195, 0.0049161880558024774],\n", + " [0.0081291949170837416,\n", + " 0.0082044017454022521,\n", + " 0.0082044017454022521,\n", + " 0.0081776183574428195],\n", + " [0.0055688126202908077,\n", + " 0.008905795079608262,\n", + " 0.008905795079608262,\n", + " 0.0082044017454022521],\n", + " [0.0, 0.0097764990154934079, 0.0097764990154934079, 0.008905795079608262],\n", + " [0.0, 0.010049126131167612, 0.010049126131167612, 0.0],\n", + " [0.0097764990154934079,\n", + " 0.010800796683579392,\n", + " 0.010800796683579392,\n", + " 0.010049126131167612],\n", + " [0.0, 0.010954052446462295, 0.010954052446462295, 0.010800796683579392],\n", + " [0.0, 0.011224347553425173, 0.011224347553425173, 0.010954052446462295],\n", + " [0.0, 0.011854376828831019, 0.011854376828831019, 0.0],\n", + " [0.011224347553425173,\n", + " 0.011921791979399356,\n", + " 0.011921791979399356,\n", + " 0.011854376828831019],\n", + " [0.0076479914356603184,\n", + " 0.01283953756955534,\n", + " 0.01283953756955534,\n", + " 0.011921791979399356],\n", + " [0.0, 0.013477931295273457, 0.013477931295273457, 0.01283953756955534],\n", + " [0.004387759337062311,\n", + " 0.01600094937809135,\n", + " 0.01600094937809135,\n", + " 0.013477931295273457],\n", + " [0.0, 0.016648788094032908, 0.016648788094032908, 0.01600094937809135],\n", + " [0.011682192816417691,\n", + " 0.019535668762551726,\n", + " 0.019535668762551726,\n", + " 0.016648788094032908],\n", + " [0.0, 0.012385644916596831, 0.012385644916596831, 0.0],\n", + " [0.0, 0.016711748711617128, 0.016711748711617128, 0.012385644916596831],\n", + " [0.0, 0.018950593658245102, 0.018950593658245102, 0.016711748711617128],\n", + " [0.0, 0.020797672369755126, 0.020797672369755126, 0.018950593658245102],\n", + " [0.019535668762551726,\n", + " 0.02082140554813916,\n", + " 0.02082140554813916,\n", + " 0.020797672369755126],\n", + " [0.0087523393444220374,\n", + " 0.023977738279498562,\n", + " 0.023977738279498562,\n", + " 0.02082140554813916],\n", + " [0.0, 0.024163850355430887, 0.024163850355430887, 0.023977738279498562],\n", + " [0.014165335506097316,\n", + " 0.024344711068315511,\n", + " 0.024344711068315511,\n", + " 0.024163850355430887],\n", + " [0.0081484722494494597,\n", + " 0.024673852333993513,\n", + " 0.024673852333993513,\n", + " 0.024344711068315511],\n", + " [0.0, 0.033386698249450737, 0.033386698249450737, 0.024673852333993513],\n", + " [0.0, 0.0093711472083149207, 0.0093711472083149207, 0.0],\n", + " [0.0, 0.014007175768158207, 0.014007175768158207, 0.0],\n", + " [0.0, 0.015207030906787575, 0.015207030906787575, 0.0],\n", + " [0.014007175768158207,\n", + " 0.017751782164057102,\n", + " 0.017751782164057102,\n", + " 0.015207030906787575],\n", + " [0.0093711472083149207,\n", + " 0.031017366103526751,\n", + " 0.031017366103526751,\n", + " 0.017751782164057102],\n", + " [0.0, 0.031395950439510503, 0.031395950439510503, 0.031017366103526751],\n", + " [0.0, 0.032895685507363444, 0.032895685507363444, 0.031395950439510503],\n", + " [0.0, 0.034491738865988358, 0.034491738865988358, 0.032895685507363444],\n", + " [0.033386698249450737,\n", + " 0.034653616290370871,\n", + " 0.034653616290370871,\n", + " 0.034491738865988358],\n", + " [0.0, 0.039856411905738631, 0.039856411905738631, 0.034653616290370871],\n", + " [0.0, 0.036892769278005007, 0.036892769278005007, 0.0],\n", + " [0.0, 0.0023333677378498999, 0.0023333677378498999, 0.0],\n", + " [0.0, 0.032735671796987449, 0.032735671796987449, 0.0023333677378498999],\n", + " [0.0, 0.036083511816333978, 0.036083511816333978, 0.032735671796987449],\n", + " [0.0, 0.017134516188103716, 0.017134516188103716, 0.0],\n", + " [0.0, 0.0011734709199607658, 0.0011734709199607658, 0.0],\n", + " [0.0, 0.0039657968934358459, 0.0039657968934358459, 0.0],\n", + " [0.0011734709199607658,\n", + " 0.0088492237512740879,\n", + " 0.0088492237512740879,\n", + " 0.0039657968934358459],\n", + " [0.0, 0.017899541725974629, 0.017899541725974629, 0.0088492237512740879],\n", + " [0.0, 0.023203343487522139, 0.023203343487522139, 0.017899541725974629],\n", + " [0.017134516188103716,\n", + " 0.038911881784360849,\n", + " 0.038911881784360849,\n", + " 0.023203343487522139],\n", + " [0.036083511816333978,\n", + " 0.040501323743799729,\n", + " 0.040501323743799729,\n", + " 0.038911881784360849],\n", + " [0.036892769278005007,\n", + " 0.040927705750511967,\n", + " 0.040927705750511967,\n", + " 0.040501323743799729],\n", + " [0.039856411905738631,\n", + " 0.041581951818069264,\n", + " 0.041581951818069264,\n", + " 0.040927705750511967],\n", + " [0.022975496512584508,\n", + " 0.045443725925588978,\n", + " 0.045443725925588978,\n", + " 0.041581951818069264],\n", + " [0.034820805648353978,\n", + " 0.04670991844352277,\n", + " 0.04670991844352277,\n", + " 0.045443725925588978],\n", + " [0.0, 0.05262085032569766, 0.05262085032569766, 0.04670991844352277],\n", + " [0.031566429082176571,\n", + " 0.057461332146057788,\n", + " 0.057461332146057788,\n", + " 0.05262085032569766],\n", + " [0.0, 0.063529441820303928, 0.063529441820303928, 0.057461332146057788],\n", + " [0.0, 0.069142853007379226, 0.069142853007379226, 0.0],\n", + " [0.063529441820303928,\n", + " 0.096729483163091337,\n", + " 0.096729483163091337,\n", + " 0.069142853007379226],\n", + " [0.06306913465396638,\n", + " 0.12053011036666524,\n", + " 0.12053011036666524,\n", + " 0.096729483163091337],\n", + " [0.0, 0.22800845851854745, 0.22800845851854745, 0.12053011036666524],\n", + " [0.0, 0.43151294411176566, 0.43151294411176566, 0.22800845851854745],\n", + " [0.19304434411037158,\n", + " 0.53034443019795707,\n", + " 0.53034443019795707,\n", + " 0.43151294411176566],\n", + " [0.33032139646259784,\n", + " 0.97764707097857617,\n", + " 0.97764707097857617,\n", + " 0.53034443019795707],\n", + " [0.13433485357493333,\n", + " 2.1148774958415446,\n", + " 2.1148774958415446,\n", + " 0.97764707097857617],\n", + " [0.21577157052076726,\n", + " 3.427830042506339,\n", + " 3.427830042506339,\n", + " 2.1148774958415446],\n", + " [0.52570085768428898,\n", + " 3.5980522465589653,\n", + " 3.5980522465589653,\n", + " 3.427830042506339],\n", + " [0.25863004466224937,\n", + " 4.7158502801858653,\n", + " 4.7158502801858653,\n", + " 3.5980522465589653],\n", + " [0.073944659658423909,\n", + " 5.7298920220162124,\n", + " 5.7298920220162124,\n", + " 4.7158502801858653],\n", + " [4.4984236760096348,\n", + " 7.5963928835821077,\n", + " 7.5963928835821077,\n", + " 5.7298920220162124],\n", + " [0.0, 0.018222291897563175, 0.018222291897563175, 0.0],\n", + " [0.0, 0.15693340571401271, 0.15693340571401271, 0.018222291897563175],\n", + " [0.0, 0.22935533571512146, 0.22935533571512146, 0.15693340571401271],\n", + " [0.0, 0.070846505968885684, 0.070846505968885684, 0.0],\n", + " [0.0, 0.15963112360689588, 0.15963112360689588, 0.070846505968885684],\n", + " [0.0, 0.31221640347202134, 0.31221640347202134, 0.15963112360689588],\n", + " [0.0, 0.13134647575021088, 0.13134647575021088, 0.0],\n", + " [0.0, 0.21063404748758524, 0.21063404748758524, 0.13134647575021088],\n", + " [0.0, 0.30511481386520495, 0.30511481386520495, 0.0],\n", + " [0.21063404748758524,\n", + " 0.40157739882866911,\n", + " 0.40157739882866911,\n", + " 0.30511481386520495],\n", + " [0.31221640347202134,\n", + " 0.65808938350121016,\n", + " 0.65808938350121016,\n", + " 0.40157739882866911],\n", + " [0.0, 0.19726318846150556, 0.19726318846150556, 0.0],\n", + " [0.0, 0.77814876936740041, 0.77814876936740041, 0.19726318846150556],\n", + " [0.65808938350121016,\n", + " 0.87196031003308672,\n", + " 0.87196031003308672,\n", + " 0.77814876936740041],\n", + " [0.0, 0.937967577148062, 0.937967577148062, 0.87196031003308672],\n", + " [0.0, 0.04559703613174583, 0.04559703613174583, 0.0],\n", + " [0.0, 0.09978620307938435, 0.09978620307938435, 0.04559703613174583],\n", + " [0.0, 0.13458639338730469, 0.13458639338730469, 0.0],\n", + " [0.0, 0.24663922504742739, 0.24663922504742739, 0.13458639338730469],\n", + " [0.09978620307938435,\n", + " 0.24802077261390817,\n", + " 0.24802077261390817,\n", + " 0.24663922504742739],\n", + " [0.0, 1.0016321972525621, 1.0016321972525621, 0.24802077261390817],\n", + " [0.937967577148062,\n", + " 1.0344106690560555,\n", + " 1.0344106690560555,\n", + " 1.0016321972525621],\n", + " [0.0, 0.051059610701610032, 0.051059610701610032, 0.0],\n", + " [0.0, 0.30620752302483195, 0.30620752302483195, 0.051059610701610032],\n", + " [0.0, 0.39320586123937951, 0.39320586123937951, 0.0],\n", + " [0.30620752302483195,\n", + " 1.4496260249819526,\n", + " 1.4496260249819526,\n", + " 0.39320586123937951],\n", + " [1.0344106690560555,\n", + " 1.7062380997894255,\n", + " 1.7062380997894255,\n", + " 1.4496260249819526],\n", + " [0.0, 3.5254561507484392, 3.5254561507484392, 1.7062380997894255],\n", + " [0.22935533571512146,\n", + " 5.4774588757537028,\n", + " 5.4774588757537028,\n", + " 3.5254561507484392],\n", + " [0.0, 0.37401074157034381, 0.37401074157034381, 0.0],\n", + " [0.0, 1.1511918927932974, 1.1511918927932974, 0.37401074157034381],\n", + " [0.0, 1.4036643980485493, 1.4036643980485493, 1.1511918927932974],\n", + " [0.0, 0.042217443077475422, 0.042217443077475422, 0.0],\n", + " [0.0, 0.17091925993579879, 0.17091925993579879, 0.042217443077475422],\n", + " [0.0, 0.23222638534412943, 0.23222638534412943, 0.0],\n", + " [0.0, 1.2826024447583153, 1.2826024447583153, 0.23222638534412943],\n", + " [0.17091925993579879,\n", + " 1.8956016069216672,\n", + " 1.8956016069216672,\n", + " 1.2826024447583153],\n", + " [0.0, 1.4293244596388877, 1.4293244596388877, 0.0],\n", + " [0.0, 0.027218900804403527, 0.027218900804403527, 0.0],\n", + " [0.0, 0.017902338869547452, 0.017902338869547452, 0.0],\n", + " [0.0, 0.021602191763804377, 0.021602191763804377, 0.017902338869547452],\n", + " [0.0, 0.98956314548440616, 0.98956314548440616, 0.021602191763804377],\n", + " [0.027218900804403527,\n", + " 1.2343047174575634,\n", + " 1.2343047174575634,\n", + " 0.98956314548440616],\n", + " [0.0, 1.9029336059568589, 1.9029336059568589, 1.2343047174575634],\n", + " [1.4293244596388877,\n", + " 2.0952352414380599,\n", + " 2.0952352414380599,\n", + " 1.9029336059568589],\n", + " [1.8956016069216672,\n", + " 2.4190837089908723,\n", + " 2.4190837089908723,\n", + " 2.0952352414380599],\n", + " [1.4036643980485493,\n", + " 4.3933561372010326,\n", + " 4.3933561372010326,\n", + " 2.4190837089908723],\n", + " [0.0, 0.058790049175004168, 0.058790049175004168, 0.0],\n", + " [0.0, 0.21254339761329133, 0.21254339761329133, 0.058790049175004168],\n", + " [0.0, 0.24852808617941399, 0.24852808617941399, 0.21254339761329133],\n", + " [0.0, 0.0090695495478084684, 0.0090695495478084684, 0.0],\n", + " [0.0, 0.026339672226509233, 0.026339672226509233, 0.0090695495478084684],\n", + " [0.0, 0.019061658506014257, 0.019061658506014257, 0.0],\n", + " [0.0, 0.032828999756316909, 0.032828999756316909, 0.019061658506014257],\n", + " [0.0, 0.076414544695363615, 0.076414544695363615, 0.032828999756316909],\n", + " [0.026339672226509233,\n", + " 0.10266714583545321,\n", + " 0.10266714583545321,\n", + " 0.076414544695363615],\n", + " [0.0, 0.017496346132836831, 0.017496346132836831, 0.0],\n", + " [0.0, 0.020339967969498288, 0.020339967969498288, 0.017496346132836831],\n", + " [0.0, 0.0089800519486270373, 0.0089800519486270373, 0.0],\n", + " [0.0, 0.034767456047285115, 0.034767456047285115, 0.0089800519486270373],\n", + " [0.0, 0.045484868659808518, 0.045484868659808518, 0.034767456047285115],\n", + " [0.020339967969498288,\n", + " 0.04920993197515354,\n", + " 0.04920993197515354,\n", + " 0.045484868659808518],\n", + " [0.0, 0.11343988267359974, 0.11343988267359974, 0.04920993197515354],\n", + " [0.0, 0.002596215129766496, 0.002596215129766496, 0.0],\n", + " [0.0, 0.029376099145393797, 0.029376099145393797, 0.002596215129766496],\n", + " [0.0, 0.017297647961498026, 0.017297647961498026, 0.0],\n", + " [0.0, 0.062959414268242475, 0.062959414268242475, 0.017297647961498026],\n", + " [0.0, 0.06807711027944463, 0.06807711027944463, 0.062959414268242475],\n", + " [0.0, 0.10386342944463996, 0.10386342944463996, 0.06807711027944463],\n", + " [0.029376099145393797,\n", + " 0.11449795124804225,\n", + " 0.11449795124804225,\n", + " 0.10386342944463996],\n", + " [0.11343988267359974,\n", + " 0.17276143512080666,\n", + " 0.17276143512080666,\n", + " 0.11449795124804225],\n", + " [0.0, 0.042804594449658201, 0.042804594449658201, 0.0],\n", + " [0.0, 0.059615868801856098, 0.059615868801856098, 0.042804594449658201],\n", + " [0.0, 0.11654279922844464, 0.11654279922844464, 0.059615868801856098],\n", + " [0.0, 0.20918461994132936, 0.20918461994132936, 0.11654279922844464],\n", + " [0.17276143512080666,\n", + " 0.29645141365998151,\n", + " 0.29645141365998151,\n", + " 0.20918461994132936],\n", + " [0.0, 0.0055312137004373966, 0.0055312137004373966, 0.0],\n", + " [0.0, 0.023548418057282128, 0.023548418057282128, 0.0],\n", + " [0.0, 0.0073871397035615658, 0.0073871397035615658, 0.0],\n", + " [0.0, 0.032815841128944999, 0.032815841128944999, 0.0073871397035615658],\n", + " [0.023548418057282128,\n", + " 0.034680684105128409,\n", + " 0.034680684105128409,\n", + " 0.032815841128944999],\n", + " [0.0055312137004373966,\n", + " 0.043648809674498662,\n", + " 0.043648809674498662,\n", + " 0.034680684105128409],\n", + " [0.0, 0.046322759125518496, 0.046322759125518496, 0.043648809674498662],\n", + " [0.0, 0.05044694024418446, 0.05044694024418446, 0.046322759125518496],\n", + " [0.0, 0.017500009257146176, 0.017500009257146176, 0.0],\n", + " [0.0, 0.019062575901486412, 0.019062575901486412, 0.017500009257146176],\n", + " [0.0, 0.034493684943768609, 0.034493684943768609, 0.019062575901486412],\n", + " [0.0, 0.0072990489791360776, 0.0072990489791360776, 0.0],\n", + " [0.0, 0.038063215024489935, 0.038063215024489935, 0.0072990489791360776],\n", + " [0.034493684943768609,\n", + " 0.041901562130777975,\n", + " 0.041901562130777975,\n", + " 0.038063215024489935],\n", + " [0.0, 0.030875883954958227, 0.030875883954958227, 0.0],\n", + " [0.0, 0.044924961658304917, 0.044924961658304917, 0.0],\n", + " [0.030875883954958227,\n", + " 0.055861879676569026,\n", + " 0.055861879676569026,\n", + " 0.044924961658304917],\n", + " [0.0, 0.031513902995343589, 0.031513902995343589, 0.0],\n", + " [0.0, 0.058699545296367305, 0.058699545296367305, 0.031513902995343589],\n", + " [0.055861879676569026,\n", + " 0.08310078474960203,\n", + " 0.08310078474960203,\n", + " 0.058699545296367305],\n", + " [0.0, 0.17210894914850675, 0.17210894914850675, 0.08310078474960203],\n", + " [0.0, 0.26928745416191013, 0.26928745416191013, 0.17210894914850675],\n", + " [0.041901562130777975,\n", + " 0.31844984020093314,\n", + " 0.31844984020093314,\n", + " 0.26928745416191013],\n", + " [0.0, 0.013462055489413491, 0.013462055489413491, 0.0],\n", + " [0.0, 0.022760720287365612, 0.022760720287365612, 0.0],\n", + " [0.013462055489413491,\n", + " 0.31948939263925674,\n", + " 0.31948939263925674,\n", + " 0.022760720287365612],\n", + " [0.0, 0.39893133329559133, 0.39893133329559133, 0.31948939263925674],\n", + " [0.31844984020093314,\n", + " 0.44173870955237537,\n", + " 0.44173870955237537,\n", + " 0.39893133329559133],\n", + " [0.05044694024418446,\n", + " 0.50897786505996945,\n", + " 0.50897786505996945,\n", + " 0.44173870955237537],\n", + " [0.29645141365998151,\n", + " 0.63409158939856158,\n", + " 0.63409158939856158,\n", + " 0.50897786505996945],\n", + " [0.0, 0.6904385929313307, 0.6904385929313307, 0.63409158939856158],\n", + " [0.10266714583545321,\n", + " 0.71152957189424082,\n", + " 0.71152957189424082,\n", + " 0.6904385929313307],\n", + " [0.24852808617941399,\n", + " 1.2894119895518283,\n", + " 1.2894119895518283,\n", + " 0.71152957189424082],\n", + " [0.0, 0.031929777011439099, 0.031929777011439099, 0.0],\n", + " [0.0, 0.067425646218636615, 0.067425646218636615, 0.0],\n", + " [0.031929777011439099,\n", + " 0.070066671513628345,\n", + " 0.070066671513628345,\n", + " 0.067425646218636615],\n", + " [0.0, 0.036243610429978708, 0.036243610429978708, 0.0],\n", + " [0.0, 0.020538618502719087, 0.020538618502719087, 0.0],\n", + " [0.0, 0.02297274744126682, 0.02297274744126682, 0.020538618502719087],\n", + " [0.0, 0.030679305614688269, 0.030679305614688269, 0.0],\n", + " [0.02297274744126682,\n", + " 0.061249815101766428,\n", + " 0.061249815101766428,\n", + " 0.030679305614688269],\n", + " [0.036243610429978708,\n", + " 0.071946206189064832,\n", + " 0.071946206189064832,\n", + " 0.061249815101766428],\n", + " [0.0, 0.1039868152892518, 0.1039868152892518, 0.071946206189064832],\n", + " [0.070066671513628345,\n", + " 0.73838814447822776,\n", + " 0.73838814447822776,\n", + " 0.1039868152892518],\n", + " [0.0, 0.095005283458331966, 0.095005283458331966, 0.0],\n", + " [0.0, 0.015323524561926679, 0.015323524561926679, 0.0],\n", + " [0.0, 0.0074928979707445066, 0.0074928979707445066, 0.0],\n", + " [0.0, 0.001430863375726246, 0.001430863375726246, 0.0],\n", + " [0.0, 0.0083269486608288385, 0.0083269486608288385, 0.001430863375726246],\n", + " [0.0, 0.010359720121705523, 0.010359720121705523, 0.0083269486608288385],\n", + " [0.0074928979707445066,\n", + " 0.011887891318476443,\n", + " 0.011887891318476443,\n", + " 0.010359720121705523],\n", + " [0.0, 0.016757763842468486, 0.016757763842468486, 0.0],\n", + " [0.011887891318476443,\n", + " 0.026499743111962123,\n", + " 0.026499743111962123,\n", + " 0.016757763842468486],\n", + " [0.015323524561926679,\n", + " 0.03700714591805529,\n", + " 0.03700714591805529,\n", + " 0.026499743111962123],\n", + " [0.0, 0.04491405414789261, 0.04491405414789261, 0.03700714591805529],\n", + " [0.0, 0.015002763112171778, 0.015002763112171778, 0.0],\n", + " [0.0, 0.029910906923737501, 0.029910906923737501, 0.0],\n", + " [0.0, 0.0046288578504796426, 0.0046288578504796426, 0.0],\n", + " [0.0, 0.018303039774853605, 0.018303039774853605, 0.0046288578504796426],\n", + " [0.0, 0.018130352037395756, 0.018130352037395756, 0.0],\n", + " [0.0, 0.0042699841920049945, 0.0042699841920049945, 0.0],\n", + " [0.0, 0.0067802126810365725, 0.0067802126810365725, 0.0042699841920049945],\n", + " [0.0, 0.013195015005674087, 0.013195015005674087, 0.0067802126810365725],\n", + " [0.0, 0.017221535152238759, 0.017221535152238759, 0.013195015005674087],\n", + " [0.0, 0.020926426570253127, 0.020926426570253127, 0.017221535152238759],\n", + " [0.0, 0.02116850348984891, 0.02116850348984891, 0.020926426570253127],\n", + " [0.018130352037395756,\n", + " 0.024865212828373361,\n", + " 0.024865212828373361,\n", + " 0.02116850348984891],\n", + " [0.0, 0.02579896255666209, 0.02579896255666209, 0.024865212828373361],\n", + " [0.0, 0.027473962691971037, 0.027473962691971037, 0.02579896255666209],\n", + " [0.0, 0.0097607504834456189, 0.0097607504834456189, 0.0],\n", + " [0.0, 0.01036489864880834, 0.01036489864880834, 0.0097607504834456189],\n", + " [0.0, 0.010542859431860839, 0.010542859431860839, 0.01036489864880834],\n", + " [0.0, 0.0053027993550569903, 0.0053027993550569903, 0.0],\n", + " [0.0, 0.0074213406470740595, 0.0074213406470740595, 0.0053027993550569903],\n", + " [0.0, 0.0068835822795963921, 0.0068835822795963921, 0.0],\n", + " [0.0, 0.010407863373431466, 0.010407863373431466, 0.0068835822795963921],\n", + " [0.0074213406470740595,\n", + " 0.01089516736907201,\n", + " 0.01089516736907201,\n", + " 0.010407863373431466],\n", + " [0.010542859431860839,\n", + " 0.011056540372109694,\n", + " 0.011056540372109694,\n", + " 0.01089516736907201],\n", + " [0.0, 0.0015860948899688991, 0.0015860948899688991, 0.0],\n", + " [0.0, 0.013267364621510694, 0.013267364621510694, 0.0015860948899688991],\n", + " [0.011056540372109694,\n", + " 0.013829862219115707,\n", + " 0.013829862219115707,\n", + " 0.013267364621510694],\n", + " [0.0, 0.02828028493491741, 0.02828028493491741, 0.013829862219115707],\n", + " [0.027473962691971037,\n", + " 0.028816735588886335,\n", + " 0.028816735588886335,\n", + " 0.02828028493491741],\n", + " [0.018303039774853605,\n", + " 0.035459169209108084,\n", + " 0.035459169209108084,\n", + " 0.028816735588886335],\n", + " [0.029910906923737501,\n", + " 0.042773900663835393,\n", + " 0.042773900663835393,\n", + " 0.035459169209108084],\n", + " [0.0, 0.050596099790395352, 0.050596099790395352, 0.042773900663835393],\n", + " [0.015002763112171778,\n", + " 0.065558761100251731,\n", + " 0.065558761100251731,\n", + " 0.050596099790395352],\n", + " [0.04491405414789261,\n", + " 0.096543836576967523,\n", + " 0.096543836576967523,\n", + " 0.065558761100251731],\n", + " [0.095005283458331966,\n", + " 0.13755089030973192,\n", + " 0.13755089030973192,\n", + " 0.096543836576967523],\n", + " [0.0, 0.87696184581200687, 0.87696184581200687, 0.13755089030973192],\n", + " [0.0, 0.065912928056641562, 0.065912928056641562, 0.0],\n", + " [0.0, 0.048848349951661395, 0.048848349951661395, 0.0],\n", + " [0.0, 0.18276650560208968, 0.18276650560208968, 0.048848349951661395],\n", + " [0.0, 0.038467336923677542, 0.038467336923677542, 0.0],\n", + " [0.0, 0.14485740091551944, 0.14485740091551944, 0.038467336923677542],\n", + " [0.0, 0.019980064389286099, 0.019980064389286099, 0.0],\n", + " [0.0, 0.0055161783872521289, 0.0055161783872521289, 0.0],\n", + " [0.0, 0.015909570578740744, 0.015909570578740744, 0.0],\n", + " [0.0, 0.016475878428782266, 0.016475878428782266, 0.015909570578740744],\n", + " [0.0055161783872521289,\n", + " 0.018628984406027362,\n", + " 0.018628984406027362,\n", + " 0.016475878428782266],\n", + " [0.0, 0.026370781179182737, 0.026370781179182737, 0.018628984406027362],\n", + " [0.019980064389286099,\n", + " 0.16097984260459416,\n", + " 0.16097984260459416,\n", + " 0.026370781179182737],\n", + " [0.0, 0.022608952032323337, 0.022608952032323337, 0.0],\n", + " [0.0, 0.041901297975117359, 0.041901297975117359, 0.022608952032323337],\n", + " [0.0, 0.044524994171813589, 0.044524994171813589, 0.041901297975117359],\n", + " [0.0, 0.052439081551839128, 0.052439081551839128, 0.0],\n", + " [0.0, 0.064232408330996416, 0.064232408330996416, 0.0],\n", + " [0.052439081551839128,\n", + " 0.084569701341554324,\n", + " 0.084569701341554324,\n", + " 0.064232408330996416],\n", + " [0.044524994171813589,\n", + " 0.088972954688496281,\n", + " 0.088972954688496281,\n", + " 0.084569701341554324],\n", + " [0.0, 0.046121265919313301, 0.046121265919313301, 0.0],\n", + " [0.0, 0.09195924254798897, 0.09195924254798897, 0.046121265919313301],\n", + " [0.0, 0.03034369649531575, 0.03034369649531575, 0.0],\n", + " [0.0, 0.0065765244620543178, 0.0065765244620543178, 0.0],\n", + " [0.0, 0.025060158419289408, 0.025060158419289408, 0.0],\n", + " [0.0065765244620543178,\n", + " 0.025631569596879573,\n", + " 0.025631569596879573,\n", + " 0.025060158419289408],\n", + " [0.0, 0.019442793755010863, 0.019442793755010863, 0.0],\n", + " [0.0, 0.031744099750972352, 0.031744099750972352, 0.019442793755010863],\n", + " [0.025631569596879573,\n", + " 0.031753638783621668,\n", + " 0.031753638783621668,\n", + " 0.031744099750972352],\n", + " [0.03034369649531575,\n", + " 0.032948571228506467,\n", + " 0.032948571228506467,\n", + " 0.031753638783621668],\n", + " [0.0, 0.050821520677757748, 0.050821520677757748, 0.032948571228506467],\n", + " [0.0, 0.070828346331120548, 0.070828346331120548, 0.050821520677757748],\n", + " [0.0, 0.075976617481963993, 0.075976617481963993, 0.0],\n", + " [0.070828346331120548,\n", + " 0.097167027751188628,\n", + " 0.097167027751188628,\n", + " 0.075976617481963993],\n", + " [0.0, 0.12902053221483481, 0.12902053221483481, 0.097167027751188628],\n", + " [0.09195924254798897,\n", + " 0.19674911736778075,\n", + " 0.19674911736778075,\n", + " 0.12902053221483481],\n", + " [0.088972954688496281,\n", + " 0.20811036847066841,\n", + " 0.20811036847066841,\n", + " 0.19674911736778075],\n", + " [0.16097984260459416,\n", + " 0.2091406782837768,\n", + " 0.2091406782837768,\n", + " 0.20811036847066841],\n", + " [0.14485740091551944,\n", + " 0.26945133153316969,\n", + " 0.26945133153316969,\n", + " 0.2091406782837768],\n", + " [0.0, 0.0041774140326249869, 0.0041774140326249869, 0.0],\n", + " [0.0, 0.016441502394854833, 0.016441502394854833, 0.0],\n", + " [0.0, 0.023123446326189179, 0.023123446326189179, 0.016441502394854833],\n", + " [0.0, 0.034620772160651875, 0.034620772160651875, 0.0],\n", + " [0.023123446326189179,\n", + " 0.038872843425718867,\n", + " 0.038872843425718867,\n", + " 0.034620772160651875],\n", + " [0.0041774140326249869,\n", + " 0.044204484772473969,\n", + " 0.044204484772473969,\n", + " 0.038872843425718867],\n", + " [0.0, 0.021668147798102756, 0.021668147798102756, 0.0],\n", + " [0.0, 0.048737251666463678, 0.048737251666463678, 0.021668147798102756],\n", + " [0.0, 0.061387783165702238, 0.061387783165702238, 0.048737251666463678],\n", + " [0.0, 0.10531723889753433, 0.10531723889753433, 0.0],\n", + " [0.061387783165702238,\n", + " 0.11278621719429946,\n", + " 0.11278621719429946,\n", + " 0.10531723889753433],\n", + " [0.0, 0.1224364735893672, 0.1224364735893672, 0.0],\n", + " [0.0, 0.060355617021113792, 0.060355617021113792, 0.0],\n", + " [0.0, 0.063797468194272997, 0.063797468194272997, 0.0],\n", + " [0.0, 0.058156393878918869, 0.058156393878918869, 0.0],\n", + " [0.0, 0.0066901469341072682, 0.0066901469341072682, 0.0],\n", + " [0.0, 0.022320524389008931, 0.022320524389008931, 0.0066901469341072682],\n", + " [0.0, 0.034299966603492694, 0.034299966603492694, 0.022320524389008931],\n", + " [0.0, 0.016711090479072672, 0.016711090479072672, 0.0],\n", + " [0.0, 0.020254937299340803, 0.020254937299340803, 0.016711090479072672],\n", + " [0.0, 0.024098657389979752, 0.024098657389979752, 0.020254937299340803],\n", + " [0.0, 0.032753194928130162, 0.032753194928130162, 0.0],\n", + " [0.024098657389979752,\n", + " 0.038545134388142971,\n", + " 0.038545134388142971,\n", + " 0.032753194928130162],\n", + " [0.034299966603492694,\n", + " 0.042399971320744592,\n", + " 0.042399971320744592,\n", + " 0.038545134388142971],\n", + " [0.0, 0.013852462921808317, 0.013852462921808317, 0.0],\n", + " [0.0, 0.0064474801279153955, 0.0064474801279153955, 0.0],\n", + " [0.0, 0.0081149504003439864, 0.0081149504003439864, 0.0064474801279153955],\n", + " [0.0, 0.0094725188308022422, 0.0094725188308022422, 0.0],\n", + " [0.0, 0.010703060964028165, 0.010703060964028165, 0.0094725188308022422],\n", + " [0.0, 0.011098825973947329, 0.011098825973947329, 0.010703060964028165],\n", + " [0.0081149504003439864,\n", + " 0.012875082912366506,\n", + " 0.012875082912366506,\n", + " 0.011098825973947329],\n", + " [0.0, 0.014431684655645885, 0.014431684655645885, 0.012875082912366506],\n", + " [0.0, 0.017159092575075148, 0.017159092575075148, 0.014431684655645885],\n", + " [0.013852462921808317,\n", + " 0.020358341091556431,\n", + " 0.020358341091556431,\n", + " 0.017159092575075148],\n", + " [0.0, 0.026628989635356679, 0.026628989635356679, 0.020358341091556431],\n", + " [0.0, 0.038897048795504721, 0.038897048795504721, 0.026628989635356679],\n", + " [0.0, 0.017416775620076708, 0.017416775620076708, 0.0],\n", + " [0.0, 0.0019410414730191845, 0.0019410414730191845, 0.0],\n", + " [0.0, 0.0070966254656705113, 0.0070966254656705113, 0.0019410414730191845],\n", + " [0.0, 0.01473532982325473, 0.01473532982325473, 0.0070966254656705113],\n", + " [0.0, 0.010178320883131369, 0.010178320883131369, 0.0],\n", + " [0.0, 0.022355876833621273, 0.022355876833621273, 0.010178320883131369],\n", + " [0.01473532982325473,\n", + " 0.023293791490435835,\n", + " 0.023293791490435835,\n", + " 0.022355876833621273],\n", + " [0.017416775620076708,\n", + " 0.025739095749456459,\n", + " 0.025739095749456459,\n", + " 0.023293791490435835],\n", + " [0.0, 0.029892137461220391, 0.029892137461220391, 0.025739095749456459],\n", + " [0.0, 0.054185576614069079, 0.054185576614069079, 0.029892137461220391],\n", + " [0.038897048795504721,\n", + " 0.063718583137104906,\n", + " 0.063718583137104906,\n", + " 0.054185576614069079],\n", + " [0.0, 0.019605061514835671, 0.019605061514835671, 0.0],\n", + " [0.0, 0.021214550195562072, 0.021214550195562072, 0.019605061514835671],\n", + " [0.0, 0.027403781874037639, 0.027403781874037639, 0.021214550195562072],\n", + " [0.0, 0.029332004159274679, 0.029332004159274679, 0.027403781874037639],\n", + " [0.0, 0.040627168852872902, 0.040627168852872902, 0.0],\n", + " [0.0, 0.040996275440584616, 0.040996275440584616, 0.040627168852872902],\n", + " [0.0, 0.042186134511232966, 0.042186134511232966, 0.040996275440584616],\n", + " [0.029332004159274679,\n", + " 0.04470228526596369,\n", + " 0.04470228526596369,\n", + " 0.042186134511232966],\n", + " [0.0, 0.034999546868502596, 0.034999546868502596, 0.0],\n", + " [0.0, 0.047101313527329332, 0.047101313527329332, 0.034999546868502596],\n", + " [0.04470228526596369,\n", + " 0.065999430641483725,\n", + " 0.065999430641483725,\n", + " 0.047101313527329332],\n", + " [0.063718583137104906,\n", + " 0.077310253427342157,\n", + " 0.077310253427342157,\n", + " 0.065999430641483725],\n", + " [0.042399971320744592,\n", + " 0.083464006062494184,\n", + " 0.083464006062494184,\n", + " 0.077310253427342157],\n", + " [0.058156393878918869,\n", + " 0.091843424065093382,\n", + " 0.091843424065093382,\n", + " 0.083464006062494184],\n", + " [0.063797468194272997,\n", + " 0.093923283513727737,\n", + " 0.093923283513727737,\n", + " 0.091843424065093382],\n", + " [0.060355617021113792,\n", + " 0.1437077647206281,\n", + " 0.1437077647206281,\n", + " 0.093923283513727737],\n", + " [0.1224364735893672,\n", + " 0.16509540122304972,\n", + " 0.16509540122304972,\n", + " 0.1437077647206281],\n", + " [0.11278621719429946,\n", + " 0.23560105920390287,\n", + " 0.23560105920390287,\n", + " 0.16509540122304972],\n", + " [0.044204484772473969,\n", + " 0.27534343323384758,\n", + " 0.27534343323384758,\n", + " 0.23560105920390287],\n", + " [0.26945133153316969,\n", + " 0.28629943220691434,\n", + " 0.28629943220691434,\n", + " 0.27534343323384758],\n", + " [0.0, 0.012411138908253568, 0.012411138908253568, 0.0],\n", + " [0.0, 0.015197433993929721, 0.015197433993929721, 0.012411138908253568],\n", + " [0.0, 0.018717072554225896, 0.018717072554225896, 0.015197433993929721],\n", + " [0.0, 0.013737220279225824, 0.013737220279225824, 0.0],\n", + " [0.0, 0.022401356141987971, 0.022401356141987971, 0.013737220279225824],\n", + " [0.018717072554225896,\n", + " 0.027273128331748428,\n", + " 0.027273128331748428,\n", + " 0.022401356141987971],\n", + " [0.0, 0.0055262313560036124, 0.0055262313560036124, 0.0],\n", + " [0.0, 0.0073759979663759181, 0.0073759979663759181, 0.0],\n", + " [0.0, 0.0081775092173615709, 0.0081775092173615709, 0.0073759979663759181],\n", + " [0.0, 0.013275646010647128, 0.013275646010647128, 0.0081775092173615709],\n", + " [0.0, 0.0068032806792086998, 0.0068032806792086998, 0.0],\n", + " [0.0, 0.0099011807376736746, 0.0099011807376736746, 0.0],\n", + " [0.0068032806792086998,\n", + " 0.013317571099868678,\n", + " 0.013317571099868678,\n", + " 0.0099011807376736746],\n", + " [0.0, 0.013658926238912038, 0.013658926238912038, 0.013317571099868678],\n", + " [0.013275646010647128,\n", + " 0.016520000030264201,\n", + " 0.016520000030264201,\n", + " 0.013658926238912038],\n", + " [0.0055262313560036124,\n", + " 0.018275945119203156,\n", + " 0.018275945119203156,\n", + " 0.016520000030264201],\n", + " [0.0, 0.018886608403841952, 0.018886608403841952, 0.018275945119203156],\n", + " [0.0, 0.0071547987393090363, 0.0071547987393090363, 0.0],\n", + " [0.0, 0.0049287233641142209, 0.0049287233641142209, 0.0],\n", + " [0.0, 0.0069116320793281439, 0.0069116320793281439, 0.0],\n", + " [0.0049287233641142209,\n", + " 0.0095293956261618094,\n", + " 0.0095293956261618094,\n", + " 0.0069116320793281439],\n", + " [0.0, 0.010358096205382148, 0.010358096205382148, 0.0095293956261618094],\n", + " [0.0, 0.012207816061851612, 0.012207816061851612, 0.010358096205382148],\n", + " [0.0071547987393090363,\n", + " 0.012552163518696589,\n", + " 0.012552163518696589,\n", + " 0.012207816061851612],\n", + " [0.0, 0.016752761832010975, 0.016752761832010975, 0.012552163518696589],\n", + " [0.0, 0.020718669093361831, 0.020718669093361831, 0.016752761832010975],\n", + " [0.018886608403841952,\n", + " 0.021202279594418026,\n", + " 0.021202279594418026,\n", + " 0.020718669093361831],\n", + " [0.0, 0.026013654452987898, 0.026013654452987898, 0.021202279594418026],\n", + " [0.0, 0.035671735505852453, 0.035671735505852453, 0.026013654452987898],\n", + " [0.027273128331748428,\n", + " 0.047475042885706246,\n", + " 0.047475042885706246,\n", + " 0.035671735505852453],\n", + " [0.0, 0.029829601438846443, 0.029829601438846443, 0.0],\n", + " [0.0, 0.052045155096319927, 0.052045155096319927, 0.0],\n", + " [0.029829601438846443,\n", + " 0.058383151071172763,\n", + " 0.058383151071172763,\n", + " 0.052045155096319927],\n", + " [0.047475042885706246,\n", + " 0.06005615059259059,\n", + " 0.06005615059259059,\n", + " 0.058383151071172763],\n", + " [0.0, 0.078420780186122307, 0.078420780186122307, 0.06005615059259059],\n", + " [0.0, 0.086322418947801932, 0.086322418947801932, 0.078420780186122307],\n", + " [0.0, 0.17135151271291277, 0.17135151271291277, 0.086322418947801932],\n", + " [0.0, 0.20941826866345964, 0.20941826866345964, 0.17135151271291277],\n", + " [0.0, 0.031677119897487435, 0.031677119897487435, 0.0],\n", + " [0.0, 0.011199102553325419, 0.011199102553325419, 0.0],\n", + " [0.0, 0.0036655242462691039, 0.0036655242462691039, 0.0],\n", + " [0.0, 0.013964310688329885, 0.013964310688329885, 0.0036655242462691039],\n", + " [0.0, 0.014117531937274117, 0.014117531937274117, 0.013964310688329885],\n", + " [0.0, 0.017290281027209815, 0.017290281027209815, 0.014117531937274117],\n", + " [0.0, 0.022591780850569836, 0.022591780850569836, 0.0],\n", + " [0.0, 0.022730527006654552, 0.022730527006654552, 0.022591780850569836],\n", + " [0.017290281027209815,\n", + " 0.033638276308384889,\n", + " 0.033638276308384889,\n", + " 0.022730527006654552],\n", + " [0.011199102553325419,\n", + " 0.038251009986658049,\n", + " 0.038251009986658049,\n", + " 0.033638276308384889],\n", + " [0.031677119897487435,\n", + " 0.095371304499833789,\n", + " 0.095371304499833789,\n", + " 0.038251009986658049],\n", + " [0.0, 0.097115000329504014, 0.097115000329504014, 0.095371304499833789],\n", + " [0.0, 0.10746346507070062, 0.10746346507070062, 0.097115000329504014],\n", + " [0.0, 0.027120130125058203, 0.027120130125058203, 0.0],\n", + " [0.0, 0.021186215542181745, 0.021186215542181745, 0.0],\n", + " [0.0, 0.067754707238693604, 0.067754707238693604, 0.021186215542181745],\n", + " [0.027120130125058203,\n", + " 0.069230448359086844,\n", + " 0.069230448359086844,\n", + " 0.067754707238693604],\n", + " [0.0, 0.076892082986483132, 0.076892082986483132, 0.0],\n", + " [0.0, 0.081395000491421926, 0.081395000491421926, 0.076892082986483132],\n", + " [0.069230448359086844,\n", + " 0.090937200000873089,\n", + " 0.090937200000873089,\n", + " 0.081395000491421926],\n", + " [0.0, 0.00731955640732526, 0.00731955640732526, 0.0],\n", + " [0.0, 0.0082423352273463969, 0.0082423352273463969, 0.00731955640732526],\n", + " [0.0, 0.021221295954767259, 0.021221295954767259, 0.0082423352273463969],\n", + " [0.0, 0.02583523518375485, 0.02583523518375485, 0.021221295954767259],\n", + " [0.0, 0.052600786914263613, 0.052600786914263613, 0.0],\n", + " [0.0, 0.059027009478714358, 0.059027009478714358, 0.052600786914263613],\n", + " [0.0, 0.05990383367532507, 0.05990383367532507, 0.059027009478714358],\n", + " [0.02583523518375485,\n", + " 0.06837870037518147,\n", + " 0.06837870037518147,\n", + " 0.05990383367532507],\n", + " [0.0, 0.029243205792112214, 0.029243205792112214, 0.0],\n", + " [0.0, 0.069773892488527445, 0.069773892488527445, 0.029243205792112214],\n", + " [0.0, 0.077267640193034573, 0.077267640193034573, 0.069773892488527445],\n", + " [0.06837870037518147,\n", + " 0.078118554850943003,\n", + " 0.078118554850943003,\n", + " 0.077267640193034573],\n", + " [0.0, 0.018133631186284114, 0.018133631186284114, 0.0],\n", + " [0.0, 0.018347519314611354, 0.018347519314611354, 0.018133631186284114],\n", + " [0.0, 0.024153709466665094, 0.024153709466665094, 0.0],\n", + " [0.018347519314611354,\n", + " 0.032164706247681647,\n", + " 0.032164706247681647,\n", + " 0.024153709466665094],\n", + " [0.0, 0.013657582362923281, 0.013657582362923281, 0.0],\n", + " [0.0, 0.017632401566440522, 0.017632401566440522, 0.013657582362923281],\n", + " [0.0, 0.027939224058657477, 0.027939224058657477, 0.017632401566440522],\n", + " [0.0, 0.041150400095269629, 0.041150400095269629, 0.0],\n", + " [0.027939224058657477,\n", + " 0.043897517014051694,\n", + " 0.043897517014051694,\n", + " 0.041150400095269629],\n", + " [0.032164706247681647,\n", + " 0.046731787318706509,\n", + " 0.046731787318706509,\n", + " 0.043897517014051694],\n", + " [0.0, 0.046938064862106894, 0.046938064862106894, 0.046731787318706509],\n", + " [0.0, 0.049265626607197875, 0.049265626607197875, 0.046938064862106894],\n", + " [0.0, 0.0079629193767144103, 0.0079629193767144103, 0.0],\n", + " [0.0, 0.011104170387754029, 0.011104170387754029, 0.0079629193767144103],\n", + " [0.0, 0.0080397120595313235, 0.0080397120595313235, 0.0],\n", + " [0.0, 0.0094069617836998916, 0.0094069617836998916, 0.0],\n", + " [0.0, 0.012783477030921104, 0.012783477030921104, 0.0094069617836998916],\n", + " [0.0080397120595313235,\n", + " 0.013465896553882655,\n", + " 0.013465896553882655,\n", + " 0.012783477030921104],\n", + " [0.011104170387754029,\n", + " 0.022011228248318148,\n", + " 0.022011228248318148,\n", + " 0.013465896553882655],\n", + " [0.0, 0.032808783534296046, 0.032808783534296046, 0.022011228248318148],\n", + " [0.0, 0.032990146422832163, 0.032990146422832163, 0.032808783534296046],\n", + " [0.0, 0.063550780404328294, 0.063550780404328294, 0.032990146422832163],\n", + " [0.049265626607197875,\n", + " 0.063637827697051452,\n", + " 0.063637827697051452,\n", + " 0.063550780404328294],\n", + " [0.0, 0.066269918907437428, 0.066269918907437428, 0.063637827697051452],\n", + " [0.0, 0.066746598789752198, 0.066746598789752198, 0.066269918907437428],\n", + " [0.0, 0.068962686671851167, 0.068962686671851167, 0.066746598789752198],\n", + " [0.0, 0.072403625903682184, 0.072403625903682184, 0.068962686671851167],\n", + " [0.0, 0.097220106078940036, 0.097220106078940036, 0.072403625903682184],\n", + " [0.0, 0.10059222974465092, 0.10059222974465092, 0.097220106078940036],\n", + " [0.078118554850943003,\n", + " 0.1061467677557856,\n", + " 0.1061467677557856,\n", + " 0.10059222974465092],\n", + " [0.090937200000873089,\n", + " 0.11051043546199719,\n", + " 0.11051043546199719,\n", + " 0.1061467677557856],\n", + " [0.0, 0.17364128594605482, 0.17364128594605482, 0.11051043546199719],\n", + " [0.0, 0.19612941012760265, 0.19612941012760265, 0.17364128594605482],\n", + " [0.10746346507070062,\n", + " 0.24260265179919271,\n", + " 0.24260265179919271,\n", + " 0.19612941012760265],\n", + " [0.20941826866345964,\n", + " 0.33689833674418634,\n", + " 0.33689833674418634,\n", + " 0.24260265179919271],\n", + " [0.28629943220691434,\n", + " 0.34685812096158353,\n", + " 0.34685812096158353,\n", + " 0.33689833674418634],\n", + " [0.0, 0.37463108579107973, 0.37463108579107973, 0.34685812096158353],\n", + " [0.0, 0.033255019485785173, 0.033255019485785173, 0.0],\n", + " [0.0, 0.03209031238552254, 0.03209031238552254, 0.0],\n", + " [0.0, 0.043340079891487887, 0.043340079891487887, 0.03209031238552254],\n", + " [0.0, 0.045288921603405009, 0.045288921603405009, 0.043340079891487887],\n", + " [0.0, 0.014697892365913543, 0.014697892365913543, 0.0],\n", + " [0.0, 0.018635959245502768, 0.018635959245502768, 0.0],\n", + " [0.014697892365913543,\n", + " 0.033410940438728644,\n", + " 0.033410940438728644,\n", + " 0.018635959245502768],\n", + " [0.0, 0.011877708070159991, 0.011877708070159991, 0.0],\n", + " [0.0, 0.024422543376972198, 0.024422543376972198, 0.011877708070159991],\n", + " [0.0, 0.020523571813893141, 0.020523571813893141, 0.0],\n", + " [0.0, 0.0063275413866807984, 0.0063275413866807984, 0.0],\n", + " [0.0, 0.0055905453222384301, 0.0055905453222384301, 0.0],\n", + " [0.0, 0.021639455261156983, 0.021639455261156983, 0.0055905453222384301],\n", + " [0.0063275413866807984,\n", + " 0.02290317205104745,\n", + " 0.02290317205104745,\n", + " 0.021639455261156983],\n", + " [0.0, 0.025752390277409713, 0.025752390277409713, 0.02290317205104745],\n", + " [0.0, 0.033599478210234221, 0.033599478210234221, 0.025752390277409713],\n", + " [0.020523571813893141,\n", + " 0.035480498361771189,\n", + " 0.035480498361771189,\n", + " 0.033599478210234221],\n", + " [0.024422543376972198,\n", + " 0.039852099380085909,\n", + " 0.039852099380085909,\n", + " 0.035480498361771189],\n", + " [0.0, 0.041290964265813745, 0.041290964265813745, 0.039852099380085909],\n", + " [0.033410940438728644,\n", + " 0.042479783167995007,\n", + " 0.042479783167995007,\n", + " 0.041290964265813745],\n", + " [0.0, 0.012216770440664519, 0.012216770440664519, 0.0],\n", + " [0.0, 0.010407968725930543, 0.010407968725930543, 0.0],\n", + " [0.0, 0.01195253533774285, 0.01195253533774285, 0.0],\n", + " [0.010407968725930543,\n", + " 0.023058076784508736,\n", + " 0.023058076784508736,\n", + " 0.01195253533774285],\n", + " [0.0, 0.026623540335576693, 0.026623540335576693, 0.023058076784508736],\n", + " [0.0, 0.02885993724872099, 0.02885993724872099, 0.026623540335576693],\n", + " [0.0, 0.03285801713432969, 0.03285801713432969, 0.02885993724872099],\n", + " [0.0, 0.020670944874388694, 0.020670944874388694, 0.0],\n", + " [0.0, 0.016167761038557212, 0.016167761038557212, 0.0],\n", + " [0.0, 0.035604894846071197, 0.035604894846071197, 0.016167761038557212],\n", + " [0.020670944874388694,\n", + " 0.04023307656643197,\n", + " 0.04023307656643197,\n", + " 0.035604894846071197],\n", + " [0.0, 0.014374567680453794, 0.014374567680453794, 0.0],\n", + " [0.0, 0.014426630687723754, 0.014426630687723754, 0.0],\n", + " [0.014374567680453794,\n", + " 0.015567124461498704,\n", + " 0.015567124461498704,\n", + " 0.014426630687723754],\n", + " [0.0, 0.0092305411542299293, 0.0092305411542299293, 0.0],\n", + " [0.0, 0.018188935235468464, 0.018188935235468464, 0.0092305411542299293],\n", + " [0.0, 0.019819092940892413, 0.019819092940892413, 0.018188935235468464],\n", + " [0.0, 0.020387904870288038, 0.020387904870288038, 0.019819092940892413],\n", + " [0.015567124461498704,\n", + " 0.02399771809985226,\n", + " 0.02399771809985226,\n", + " 0.020387904870288038],\n", + " [0.0, 0.024716361322004891, 0.024716361322004891, 0.02399771809985226],\n", + " [0.0, 0.010657341178746215, 0.010657341178746215, 0.0],\n", + " [0.0, 0.026982277479857694, 0.026982277479857694, 0.010657341178746215],\n", + " [0.024716361322004891,\n", + " 0.034160473357365724,\n", + " 0.034160473357365724,\n", + " 0.026982277479857694],\n", + " [0.0, 0.016767968809609561, 0.016767968809609561, 0.0],\n", + " [0.0, 0.019055354575554968, 0.019055354575554968, 0.0],\n", + " [0.0, 0.026733844934836666, 0.026733844934836666, 0.019055354575554968],\n", + " [0.016767968809609561,\n", + " 0.040371951463852536,\n", + " 0.040371951463852536,\n", + " 0.026733844934836666],\n", + " [0.034160473357365724,\n", + " 0.04224299024690454,\n", + " 0.04224299024690454,\n", + " 0.040371951463852536],\n", + " [0.04023307656643197,\n", + " 0.042799616411825295,\n", + " 0.042799616411825295,\n", + " 0.04224299024690454],\n", + " [0.03285801713432969,\n", + " 0.046324058382227612,\n", + " 0.046324058382227612,\n", + " 0.042799616411825295],\n", + " [0.012216770440664519,\n", + " 0.04790907418225137,\n", + " 0.04790907418225137,\n", + " 0.046324058382227612],\n", + " [0.0, 0.049422803208644631, 0.049422803208644631, 0.04790907418225137],\n", + " [0.042479783167995007,\n", + " 0.056520909626439568,\n", + " 0.056520909626439568,\n", + " 0.049422803208644631],\n", + " [0.0, 0.05911357842324301, 0.05911357842324301, 0.056520909626439568],\n", + " [0.045288921603405009,\n", + " 0.061655153053091813,\n", + " 0.061655153053091813,\n", + " 0.05911357842324301],\n", + " [0.033255019485785173,\n", + " 0.078501765445113364,\n", + " 0.078501765445113364,\n", + " 0.061655153053091813],\n", + " [0.0, 0.02511575413958066, 0.02511575413958066, 0.0],\n", + " [0.0, 0.011082319071384839, 0.011082319071384839, 0.0],\n", + " [0.0, 0.025654596878535406, 0.025654596878535406, 0.011082319071384839],\n", + " [0.0, 0.0075092666086601896, 0.0075092666086601896, 0.0],\n", + " [0.0, 0.010991135564618339, 0.010991135564618339, 0.0],\n", + " [0.0075092666086601896,\n", + " 0.018001466301392367,\n", + " 0.018001466301392367,\n", + " 0.010991135564618339],\n", + " [0.0, 0.027677911951599205, 0.027677911951599205, 0.018001466301392367],\n", + " [0.025654596878535406,\n", + " 0.027785140273174511,\n", + " 0.027785140273174511,\n", + " 0.027677911951599205],\n", + " [0.0, 0.038545531634676063, 0.038545531634676063, 0.027785140273174511],\n", + " [0.0, 0.0098673413339228251, 0.0098673413339228251, 0.0],\n", + " [0.0, 0.0063740586756051605, 0.0063740586756051605, 0.0],\n", + " [0.0, 0.018314892847079368, 0.018314892847079368, 0.0],\n", + " [0.0063740586756051605,\n", + " 0.020919971916807834,\n", + " 0.020919971916807834,\n", + " 0.018314892847079368],\n", + " [0.0098673413339228251,\n", + " 0.021331549334258012,\n", + " 0.021331549334258012,\n", + " 0.020919971916807834],\n", + " [0.0, 0.038172627745551073, 0.038172627745551073, 0.021331549334258012],\n", + " [0.0, 0.038549785278257441, 0.038549785278257441, 0.038172627745551073],\n", + " [0.0, 0.041756395103025853, 0.041756395103025853, 0.038549785278257441],\n", + " [0.0, 0.044239837488396695, 0.044239837488396695, 0.041756395103025853],\n", + " [0.0, 0.051399615300118107, 0.051399615300118107, 0.044239837488396695],\n", + " [0.038545531634676063,\n", + " 0.054504194517487316,\n", + " 0.054504194517487316,\n", + " 0.051399615300118107],\n", + " [0.0, 0.049909188783232375, 0.049909188783232375, 0.0],\n", + " [0.0, 0.004343028091093059, 0.004343028091093059, 0.0],\n", + " [0.0, 0.013089538188955493, 0.013089538188955493, 0.0],\n", + " [0.0, 0.01873480082627179, 0.01873480082627179, 0.013089538188955493],\n", + " [0.0, 0.022142126930350003, 0.022142126930350003, 0.01873480082627179],\n", + " [0.0, 0.021026273326490659, 0.021026273326490659, 0.0],\n", + " [0.0, 0.022871106138527764, 0.022871106138527764, 0.021026273326490659],\n", + " [0.022142126930350003,\n", + " 0.025592030654094284,\n", + " 0.025592030654094284,\n", + " 0.022871106138527764],\n", + " [0.004343028091093059,\n", + " 0.031696392176398989,\n", + " 0.031696392176398989,\n", + " 0.025592030654094284],\n", + " [0.0, 0.044094828279507559, 0.044094828279507559, 0.031696392176398989],\n", + " [0.0, 0.058956273771328019, 0.058956273771328019, 0.044094828279507559],\n", + " [0.049909188783232375,\n", + " 0.060793509275247813,\n", + " 0.060793509275247813,\n", + " 0.058956273771328019],\n", + " [0.054504194517487316,\n", + " 0.062749260664975284,\n", + " 0.062749260664975284,\n", + " 0.060793509275247813],\n", + " [0.0, 0.11452706854276173, 0.11452706854276173, 0.062749260664975284],\n", + " [0.0, 0.16879871542757449, 0.16879871542757449, 0.11452706854276173],\n", + " [0.02511575413958066,\n", + " 0.34030637431144151,\n", + " 0.34030637431144151,\n", + " 0.16879871542757449],\n", + " [0.078501765445113364,\n", + " 0.40731883099115351,\n", + " 0.40731883099115351,\n", + " 0.34030637431144151],\n", + " [0.37463108579107973,\n", + " 0.4702885552020129,\n", + " 0.4702885552020129,\n", + " 0.40731883099115351],\n", + " [0.18276650560208968,\n", + " 0.55450140245539181,\n", + " 0.55450140245539181,\n", + " 0.4702885552020129],\n", + " [0.0, 0.56872214213269512, 0.56872214213269512, 0.55450140245539181],\n", + " [0.065912928056641562,\n", + " 0.60683047418946023,\n", + " 0.60683047418946023,\n", + " 0.56872214213269512],\n", + " [0.0, 0.68964327773856882, 0.68964327773856882, 0.0],\n", + " [0.60683047418946023,\n", + " 0.74662291830681937,\n", + " 0.74662291830681937,\n", + " 0.68964327773856882],\n", + " [0.0, 0.74868571974226783, 0.74868571974226783, 0.74662291830681937],\n", + " [0.0, 0.059159829022742576, 0.059159829022742576, 0.0],\n", + " [0.0, 0.072241931148057395, 0.072241931148057395, 0.059159829022742576],\n", + " [0.0, 0.094214764586019267, 0.094214764586019267, 0.0],\n", + " [0.0, 0.1208785245608251, 0.1208785245608251, 0.094214764586019267],\n", + " [0.072241931148057395,\n", + " 0.30407409945603225,\n", + " 0.30407409945603225,\n", + " 0.1208785245608251],\n", + " [0.0, 0.53575634275760509, 0.53575634275760509, 0.30407409945603225],\n", + " [0.0, 0.95916641175553308, 0.95916641175553308, 0.53575634275760509],\n", + " [0.74868571974226783,\n", + " 0.97054688080895379,\n", + " 0.97054688080895379,\n", + " 0.95916641175553308],\n", + " [0.87696184581200687,\n", + " 1.2251813392575837,\n", + " 1.2251813392575837,\n", + " 0.97054688080895379],\n", + " [0.73838814447822776,\n", + " 1.4080313967635734,\n", + " 1.4080313967635734,\n", + " 1.2251813392575837],\n", + " [0.0, 0.06537474369356272, 0.06537474369356272, 0.0],\n", + " [0.0, 0.10147874820374773, 0.10147874820374773, 0.06537474369356272],\n", + " [0.0, 0.20313868339635047, 0.20313868339635047, 0.10147874820374773],\n", + " [0.0, 0.03423031242919157, 0.03423031242919157, 0.0],\n", + " [0.0, 0.063851699562346986, 0.063851699562346986, 0.03423031242919157],\n", + " [0.0, 0.0095618363299018096, 0.0095618363299018096, 0.0],\n", + " [0.0, 0.015409335482107687, 0.015409335482107687, 0.0095618363299018096],\n", + " [0.0, 0.016246257045853245, 0.016246257045853245, 0.015409335482107687],\n", + " [0.0, 0.020673003676283098, 0.020673003676283098, 0.016246257045853245],\n", + " [0.0, 0.022851519008591382, 0.022851519008591382, 0.020673003676283098],\n", + " [0.0, 0.023273280172758197, 0.023273280172758197, 0.022851519008591382],\n", + " [0.0, 0.028723007520111837, 0.028723007520111837, 0.023273280172758197],\n", + " [0.0, 0.06573661877523139, 0.06573661877523139, 0.028723007520111837],\n", + " [0.063851699562346986,\n", + " 0.08442677623241937,\n", + " 0.08442677623241937,\n", + " 0.06573661877523139],\n", + " [0.0, 0.03238673896829336, 0.03238673896829336, 0.0],\n", + " [0.0, 0.038041813889457106, 0.038041813889457106, 0.03238673896829336],\n", + " [0.0, 0.046044413189879875, 0.046044413189879875, 0.038041813889457106],\n", + " [0.0, 0.052819246653095633, 0.052819246653095633, 0.046044413189879875],\n", + " [0.0, 0.060482762544375707, 0.060482762544375707, 0.052819246653095633],\n", + " [0.0, 0.0086976048427167968, 0.0086976048427167968, 0.0],\n", + " [0.0, 0.020668737576344843, 0.020668737576344843, 0.0086976048427167968],\n", + " [0.0, 0.021627016668973313, 0.021627016668973313, 0.020668737576344843],\n", + " [0.0, 0.029706922913693753, 0.029706922913693753, 0.021627016668973313],\n", + " [0.0, 0.046733394323537104, 0.046733394323537104, 0.029706922913693753],\n", + " [0.0, 0.058913514595542199, 0.058913514595542199, 0.0],\n", + " [0.0, 0.063111320078104147, 0.063111320078104147, 0.058913514595542199],\n", + " [0.046733394323537104,\n", + " 0.10703958529441325,\n", + " 0.10703958529441325,\n", + " 0.063111320078104147],\n", + " [0.0, 0.11858529272216048, 0.11858529272216048, 0.10703958529441325],\n", + " [0.060482762544375707,\n", + " 0.14329698033455052,\n", + " 0.14329698033455052,\n", + " 0.11858529272216048],\n", + " [0.08442677623241937,\n", + " 0.55449606074794644,\n", + " 0.55449606074794644,\n", + " 0.14329698033455052],\n", + " [0.20313868339635047,\n", + " 1.314948404965002,\n", + " 1.314948404965002,\n", + " 0.55449606074794644],\n", + " [0.0, 0.11272198722520105, 0.11272198722520105, 0.0],\n", + " [0.0, 0.1134382336692506, 0.1134382336692506, 0.11272198722520105],\n", + " [0.0, 0.19520297117616434, 0.19520297117616434, 0.1134382336692506],\n", + " [0.0, 0.025879899922529821, 0.025879899922529821, 0.0],\n", + " [0.0, 0.12903577226878679, 0.12903577226878679, 0.025879899922529821],\n", + " [0.0, 0.026019401165280065, 0.026019401165280065, 0.0],\n", + " [0.0, 0.028697032215901173, 0.028697032215901173, 0.026019401165280065],\n", + " [0.0, 0.030845125968294002, 0.030845125968294002, 0.028697032215901173],\n", + " [0.0, 0.059628984202319851, 0.059628984202319851, 0.030845125968294002],\n", + " [0.0, 0.067049688381082176, 0.067049688381082176, 0.059628984202319851],\n", + " [0.0, 0.10966367997199804, 0.10966367997199804, 0.067049688381082176],\n", + " [0.0, 0.066107417322105802, 0.066107417322105802, 0.0],\n", + " [0.0, 0.06624891999119345, 0.06624891999119345, 0.066107417322105802],\n", + " [0.0, 0.081196566633084166, 0.081196566633084166, 0.06624891999119345],\n", + " [0.0, 0.038448479774890056, 0.038448479774890056, 0.0],\n", + " [0.0, 0.054082529082885814, 0.054082529082885814, 0.0],\n", + " [0.038448479774890056,\n", + " 0.078815261593168609,\n", + " 0.078815261593168609,\n", + " 0.054082529082885814],\n", + " [0.0, 0.082200699571230607, 0.082200699571230607, 0.078815261593168609],\n", + " [0.0, 0.10063794334643029, 0.10063794334643029, 0.082200699571230607],\n", + " [0.081196566633084166,\n", + " 0.25294780206201123,\n", + " 0.25294780206201123,\n", + " 0.10063794334643029],\n", + " [0.10966367997199804,\n", + " 0.32706082875360559,\n", + " 0.32706082875360559,\n", + " 0.25294780206201123],\n", + " [0.12903577226878679,\n", + " 0.74773173291295003,\n", + " 0.74773173291295003,\n", + " 0.32706082875360559],\n", + " [0.19520297117616434,\n", + " 0.99648333285459811,\n", + " 0.99648333285459811,\n", + " 0.74773173291295003],\n", + " [0.0, 1.2257177471869318, 1.2257177471869318, 0.99648333285459811],\n", + " [0.0, 0.04281842710796023, 0.04281842710796023, 0.0],\n", + " [0.0, 0.045146984594768104, 0.045146984594768104, 0.04281842710796023],\n", + " [0.0, 0.046422533203185262, 0.046422533203185262, 0.0],\n", + " [0.0, 0.043262803261001168, 0.043262803261001168, 0.0],\n", + " [0.0, 0.064852578213982701, 0.064852578213982701, 0.043262803261001168],\n", + " [0.046422533203185262,\n", + " 0.06863144626918026,\n", + " 0.06863144626918026,\n", + " 0.064852578213982701],\n", + " [0.045146984594768104,\n", + " 0.12531450196206032,\n", + " 0.12531450196206032,\n", + " 0.06863144626918026],\n", + " [0.0, 0.13221010965883315, 0.13221010965883315, 0.12531450196206032],\n", + " [0.0, 0.18111021563953056, 0.18111021563953056, 0.13221010965883315],\n", + " [0.0, 0.23808015794055898, 0.23808015794055898, 0.18111021563953056],\n", + " [0.0, 0.43624384918758036, 0.43624384918758036, 0.23808015794055898],\n", + " [0.0, 0.68137738367002187, 0.68137738367002187, 0.43624384918758036],\n", + " [0.0, 0.064918394473367461, 0.064918394473367461, 0.0],\n", + " [0.0, 0.081349522168236793, 0.081349522168236793, 0.064918394473367461],\n", + " [0.0, 0.083268654444510537, 0.083268654444510537, 0.081349522168236793],\n", + " [0.0, 0.10490081030192031, 0.10490081030192031, 0.083268654444510537],\n", + " [0.0, 0.051278935402369087, 0.051278935402369087, 0.0],\n", + " [0.0, 0.029439419100923753, 0.029439419100923753, 0.0],\n", + " [0.0, 0.087931461900738958, 0.087931461900738958, 0.029439419100923753],\n", + " [0.051278935402369087,\n", + " 0.12731061104637378,\n", + " 0.12731061104637378,\n", + " 0.087931461900738958],\n", + " [0.0, 0.37219338565858412, 0.37219338565858412, 0.12731061104637378],\n", + " [0.10490081030192031,\n", + " 0.63240338055152168,\n", + " 0.63240338055152168,\n", + " 0.37219338565858412],\n", + " [0.0, 0.21011956102419671, 0.21011956102419671, 0.0],\n", + " [0.0, 0.0069242983760038016, 0.0069242983760038016, 0.0],\n", + " [0.0, 0.02550497755341205, 0.02550497755341205, 0.0069242983760038016],\n", + " [0.0, 0.030111303957150674, 0.030111303957150674, 0.02550497755341205],\n", + " [0.0, 0.030452392648206473, 0.030452392648206473, 0.030111303957150674],\n", + " [0.0, 0.033810609015512243, 0.033810609015512243, 0.030452392648206473],\n", + " [0.0, 0.045629255363195717, 0.045629255363195717, 0.033810609015512243],\n", + " [0.0, 0.0097996546877872851, 0.0097996546877872851, 0.0],\n", + " [0.0, 0.060100706526630347, 0.060100706526630347, 0.0097996546877872851],\n", + " [0.045629255363195717,\n", + " 0.074585833346562685,\n", + " 0.074585833346562685,\n", + " 0.060100706526630347],\n", + " [0.0, 0.02476702624458722, 0.02476702624458722, 0.0],\n", + " [0.0, 0.037832474952083403, 0.037832474952083403, 0.0],\n", + " [0.02476702624458722,\n", + " 0.054487707099863163,\n", + " 0.054487707099863163,\n", + " 0.037832474952083403],\n", + " [0.0, 0.049373667566833979, 0.049373667566833979, 0.0],\n", + " [0.0, 0.062035892618696492, 0.062035892618696492, 0.049373667566833979],\n", + " [0.054487707099863163,\n", + " 0.080942853056953992,\n", + " 0.080942853056953992,\n", + " 0.062035892618696492],\n", + " [0.074585833346562685,\n", + " 0.43789732489933703,\n", + " 0.43789732489933703,\n", + " 0.080942853056953992],\n", + " [0.21011956102419671,\n", + " 0.468101804005287,\n", + " 0.468101804005287,\n", + " 0.43789732489933703],\n", + " [0.0, 0.03736688001426236, 0.03736688001426236, 0.0],\n", + " [0.0, 0.038913750230476905, 0.038913750230476905, 0.03736688001426236],\n", + " [0.0, 0.08479008209100504, 0.08479008209100504, 0.038913750230476905],\n", + " [0.0, 0.097983159292805599, 0.097983159292805599, 0.08479008209100504],\n", + " [0.0, 0.72715706222108734, 0.72715706222108734, 0.097983159292805599],\n", + " [0.468101804005287,\n", + " 0.73804317928221042,\n", + " 0.73804317928221042,\n", + " 0.72715706222108734],\n", + " [0.63240338055152168,\n", + " 0.93733097275455834,\n", + " 0.93733097275455834,\n", + " 0.73804317928221042],\n", + " [0.68137738367002187,\n", + " 1.3384568279522475,\n", + " 1.3384568279522475,\n", + " 0.93733097275455834],\n", + " [1.2257177471869318,\n", + " 1.4171350448157727,\n", + " 1.4171350448157727,\n", + " 1.3384568279522475],\n", + " [1.314948404965002,\n", + " 1.4397509401559718,\n", + " 1.4397509401559718,\n", + " 1.4171350448157727],\n", + " [1.4080313967635734,\n", + " 1.5775164777247233,\n", + " 1.5775164777247233,\n", + " 1.4397509401559718],\n", + " [1.2894119895518283,\n", + " 1.7316453653727684,\n", + " 1.7316453653727684,\n", + " 1.5775164777247233],\n", + " [0.0, 1.9996467589211897, 1.9996467589211897, 1.7316453653727684],\n", + " [0.0, 0.0050002696927328553, 0.0050002696927328553, 0.0],\n", + " [0.0, 0.096460775950645838, 0.096460775950645838, 0.0050002696927328553],\n", + " [0.0, 0.10219709526204505, 0.10219709526204505, 0.096460775950645838],\n", + " [0.0, 0.0040765545500999296, 0.0040765545500999296, 0.0],\n", + " [0.0, 0.0089873049353003526, 0.0089873049353003526, 0.0],\n", + " [0.0040765545500999296,\n", + " 0.032880883579975297,\n", + " 0.032880883579975297,\n", + " 0.0089873049353003526],\n", + " [0.0, 0.0096113396568823332, 0.0096113396568823332, 0.0],\n", + " [0.0, 0.0097955476110303287, 0.0097955476110303287, 0.0096113396568823332],\n", + " [0.0, 0.020433063255420322, 0.020433063255420322, 0.0097955476110303287],\n", + " [0.0, 0.023965687889157081, 0.023965687889157081, 0.0],\n", + " [0.020433063255420322,\n", + " 0.036454403698317782,\n", + " 0.036454403698317782,\n", + " 0.023965687889157081],\n", + " [0.032880883579975297,\n", + " 0.047060828860106825,\n", + " 0.047060828860106825,\n", + " 0.036454403698317782],\n", + " [0.0, 0.0045258214723971468, 0.0045258214723971468, 0.0],\n", + " [0.0, 0.079975131891103099, 0.079975131891103099, 0.0045258214723971468],\n", + " [0.0, 0.007774012734741105, 0.007774012734741105, 0.0],\n", + " [0.0, 0.035096615506341591, 0.035096615506341591, 0.007774012734741105],\n", + " [0.0, 0.035625840691832888, 0.035625840691832888, 0.035096615506341591],\n", + " [0.0, 0.093689113182905043, 0.093689113182905043, 0.035625840691832888],\n", + " [0.0, 0.010190904277836468, 0.010190904277836468, 0.0],\n", + " [0.0, 0.032353486504547883, 0.032353486504547883, 0.0],\n", + " [0.0, 0.030562094496290701, 0.030562094496290701, 0.0],\n", + " [0.0, 0.021989283253446065, 0.021989283253446065, 0.0],\n", + " [0.0, 0.0087200268921605994, 0.0087200268921605994, 0.0],\n", + " [0.0, 0.017324002424387697, 0.017324002424387697, 0.0087200268921605994],\n", + " [0.0, 0.024329330159288409, 0.024329330159288409, 0.017324002424387697],\n", + " [0.0, 0.024449022904812361, 0.024449022904812361, 0.024329330159288409],\n", + " [0.0, 0.025040137958879445, 0.025040137958879445, 0.024449022904812361],\n", + " [0.0, 0.025887737811565444, 0.025887737811565444, 0.025040137958879445],\n", + " [0.0, 0.028988936130877364, 0.028988936130877364, 0.0],\n", + " [0.025887737811565444,\n", + " 0.029192761928253312,\n", + " 0.029192761928253312,\n", + " 0.028988936130877364],\n", + " [0.021989283253446065,\n", + " 0.031163704866398374,\n", + " 0.031163704866398374,\n", + " 0.029192761928253312],\n", + " [0.030562094496290701,\n", + " 0.035010362994407823,\n", + " 0.035010362994407823,\n", + " 0.031163704866398374],\n", + " [0.032353486504547883,\n", + " 0.038453970874284746,\n", + " 0.038453970874284746,\n", + " 0.035010362994407823],\n", + " [0.0, 0.040836396143626712, 0.040836396143626712, 0.038453970874284746],\n", + " [0.0, 0.0026414944633732615, 0.0026414944633732615, 0.0],\n", + " [0.0, 0.038869916812362237, 0.038869916812362237, 0.0026414944633732615],\n", + " [0.0, 0.039417307695981181, 0.039417307695981181, 0.038869916812362237],\n", + " [0.0, 0.065334551670606422, 0.065334551670606422, 0.039417307695981181],\n", + " [0.040836396143626712,\n", + " 0.066506222272807905,\n", + " 0.066506222272807905,\n", + " 0.065334551670606422],\n", + " [0.010190904277836468,\n", + " 0.094565478695983571,\n", + " 0.094565478695983571,\n", + " 0.066506222272807905],\n", + " [0.093689113182905043,\n", + " 0.095888094094100193,\n", + " 0.095888094094100193,\n", + " 0.094565478695983571],\n", + " [0.079975131891103099,\n", + " 0.096538362374760697,\n", + " 0.096538362374760697,\n", + " 0.095888094094100193],\n", + " [0.0, 0.10484817561121193, 0.10484817561121193, 0.096538362374760697],\n", + " [0.047060828860106825,\n", + " 0.10662332985327595,\n", + " 0.10662332985327595,\n", + " 0.10484817561121193],\n", + " [0.0, 0.14535348796985442, 0.14535348796985442, 0.10662332985327595],\n", + " [0.0, 0.0081639765433345352, 0.0081639765433345352, 0.0],\n", + " [0.0, 0.092549528848065055, 0.092549528848065055, 0.0081639765433345352],\n", + " [0.0, 0.12093045083848698, 0.12093045083848698, 0.092549528848065055],\n", + " [0.0, 0.16767751964410324, 0.16767751964410324, 0.12093045083848698],\n", + " [0.0, 0.098167326402425578, 0.098167326402425578, 0.0],\n", + " [0.0, 0.17298175517955408, 0.17298175517955408, 0.098167326402425578],\n", + " [0.16767751964410324,\n", + " 0.18928043462016758,\n", + " 0.18928043462016758,\n", + " 0.17298175517955408],\n", + " [0.0, 0.0070854925728552108, 0.0070854925728552108, 0.0],\n", + " [0.0, 0.0077665844487819578, 0.0077665844487819578, 0.0070854925728552108],\n", + " [0.0, 0.074288074749582114, 0.074288074749582114, 0.0077665844487819578],\n", + " [0.0, 0.076034267807345735, 0.076034267807345735, 0.074288074749582114],\n", + " [0.0, 0.25485393994208372, 0.25485393994208372, 0.076034267807345735],\n", + " [0.18928043462016758,\n", + " 0.26780750064552511,\n", + " 0.26780750064552511,\n", + " 0.25485393994208372],\n", + " [0.0, 0.14407510082245822, 0.14407510082245822, 0.0],\n", + " [0.0, 0.25882916116426624, 0.25882916116426624, 0.14407510082245822],\n", + " [0.0, 0.060040472033455784, 0.060040472033455784, 0.0],\n", + " [0.0, 0.0079803782491819231, 0.0079803782491819231, 0.0],\n", + " [0.0, 0.025101158558924672, 0.025101158558924672, 0.0],\n", + " [0.0079803782491819231,\n", + " 0.036272653404454423,\n", + " 0.036272653404454423,\n", + " 0.025101158558924672],\n", + " [0.0, 0.010698845965806673, 0.010698845965806673, 0.0],\n", + " [0.0, 0.012262782881547396, 0.012262782881547396, 0.0],\n", + " [0.0, 0.0033590918415543369, 0.0033590918415543369, 0.0],\n", + " [0.0, 0.0051868728536563517, 0.0051868728536563517, 0.0033590918415543369],\n", + " [0.0, 0.0098179317577600927, 0.0098179317577600927, 0.0051868728536563517],\n", + " [0.0, 0.016451273902040462, 0.016451273902040462, 0.0098179317577600927],\n", + " [0.012262782881547396,\n", + " 0.017647594651958889,\n", + " 0.017647594651958889,\n", + " 0.016451273902040462],\n", + " [0.0, 0.0064789540050831399, 0.0064789540050831399, 0.0],\n", + " [0.0, 0.014393525766815888, 0.014393525766815888, 0.0],\n", + " [0.0064789540050831399,\n", + " 0.014870305780313894,\n", + " 0.014870305780313894,\n", + " 0.014393525766815888],\n", + " [0.0, 0.0032929044929980366, 0.0032929044929980366, 0.0],\n", + " [0.0, 0.0034649422794553568, 0.0034649422794553568, 0.0],\n", + " [0.0, 0.012397215372813875, 0.012397215372813875, 0.0034649422794553568],\n", + " [0.0, 0.014470047719342483, 0.014470047719342483, 0.012397215372813875],\n", + " [0.0032929044929980366,\n", + " 0.019000429074102355,\n", + " 0.019000429074102355,\n", + " 0.014470047719342483],\n", + " [0.014870305780313894,\n", + " 0.019210324229425937,\n", + " 0.019210324229425937,\n", + " 0.019000429074102355],\n", + " [0.017647594651958889,\n", + " 0.021695713885467115,\n", + " 0.021695713885467115,\n", + " 0.019210324229425937],\n", + " [0.0, 0.023660871539305937, 0.023660871539305937, 0.021695713885467115],\n", + " [0.010698845965806673,\n", + " 0.027001255563399263,\n", + " 0.027001255563399263,\n", + " 0.023660871539305937],\n", + " [0.0, 0.030822631717619942, 0.030822631717619942, 0.027001255563399263],\n", + " [0.0, 0.035771744659711023, 0.035771744659711023, 0.030822631717619942],\n", + " [0.0, 0.036564014221638096, 0.036564014221638096, 0.035771744659711023],\n", + " [0.036272653404454423,\n", + " 0.04699365169892368,\n", + " 0.04699365169892368,\n", + " 0.036564014221638096],\n", + " [0.0, 0.049219997937829982, 0.049219997937829982, 0.04699365169892368],\n", + " [0.0, 0.049554769346653038, 0.049554769346653038, 0.049219997937829982],\n", + " [0.0, 0.058544004176347565, 0.058544004176347565, 0.049554769346653038],\n", + " [0.0, 0.062721816762590754, 0.062721816762590754, 0.058544004176347565],\n", + " [0.060040472033455784,\n", + " 0.098759086761674761,\n", + " 0.098759086761674761,\n", + " 0.062721816762590754],\n", + " [0.0, 0.020551942998167792, 0.020551942998167792, 0.0],\n", + " [0.0, 0.0086913549001295855, 0.0086913549001295855, 0.0],\n", + " [0.0, 0.025654083495614679, 0.025654083495614679, 0.0086913549001295855],\n", + " [0.0, 0.0084418451182219113, 0.0084418451182219113, 0.0],\n", + " [0.0, 0.0099727130210365434, 0.0099727130210365434, 0.0084418451182219113],\n", + " [0.0, 0.019794570593978909, 0.019794570593978909, 0.0099727130210365434],\n", + " [0.0, 0.0198499110577364, 0.0198499110577364, 0.0],\n", + " [0.019794570593978909,\n", + " 0.020977849270116165,\n", + " 0.020977849270116165,\n", + " 0.0198499110577364],\n", + " [0.0, 0.026444989941381138, 0.026444989941381138, 0.0],\n", + " [0.020977849270116165,\n", + " 0.032531368384991204,\n", + " 0.032531368384991204,\n", + " 0.026444989941381138],\n", + " [0.0, 0.033425617152120508, 0.033425617152120508, 0.032531368384991204],\n", + " [0.025654083495614679,\n", + " 0.036308546390627632,\n", + " 0.036308546390627632,\n", + " 0.033425617152120508],\n", + " [0.020551942998167792,\n", + " 0.080083064458098194,\n", + " 0.080083064458098194,\n", + " 0.036308546390627632],\n", + " [0.0, 0.10860619756256988, 0.10860619756256988, 0.080083064458098194],\n", + " [0.098759086761674761,\n", + " 0.1268012688422305,\n", + " 0.1268012688422305,\n", + " 0.10860619756256988],\n", + " [0.0, 0.13634498195754335, 0.13634498195754335, 0.1268012688422305],\n", + " [0.0, 0.015823540722604935, 0.015823540722604935, 0.0],\n", + " [0.0, 0.0018877258805218343, 0.0018877258805218343, 0.0],\n", + " [0.0, 0.0045462297566216999, 0.0045462297566216999, 0.0018877258805218343],\n", + " [0.0, 0.015733110690513509, 0.015733110690513509, 0.0],\n", + " [0.0045462297566216999,\n", + " 0.017553676424052426,\n", + " 0.017553676424052426,\n", + " 0.015733110690513509],\n", + " [0.015823540722604935,\n", + " 0.037481262532096153,\n", + " 0.037481262532096153,\n", + " 0.017553676424052426],\n", + " [0.0, 0.039795518868327114, 0.039795518868327114, 0.037481262532096153],\n", + " [0.0, 0.0027076993924782518, 0.0027076993924782518, 0.0],\n", + " [0.0, 0.0034093379122651264, 0.0034093379122651264, 0.0027076993924782518],\n", + " [0.0, 0.0013974208385482243, 0.0013974208385482243, 0.0],\n", + " [0.0, 0.011113844924237911, 0.011113844924237911, 0.0013974208385482243],\n", + " [0.0034093379122651264,\n", + " 0.013800406153438688,\n", + " 0.013800406153438688,\n", + " 0.011113844924237911],\n", + " [0.0, 0.014871595274214004, 0.014871595274214004, 0.013800406153438688],\n", + " [0.0, 0.00027679776010606507, 0.00027679776010606507, 0.0],\n", + " [0.0, 0.0048530390478512863, 0.0048530390478512863, 0.0],\n", + " [0.00027679776010606507,\n", + " 0.018046985454643436,\n", + " 0.018046985454643436,\n", + " 0.0048530390478512863],\n", + " [0.014871595274214004,\n", + " 0.020044151790483144,\n", + " 0.020044151790483144,\n", + " 0.018046985454643436],\n", + " [0.0, 0.013414113164876815, 0.013414113164876815, 0.0],\n", + " [0.0, 0.018881623341225288, 0.018881623341225288, 0.0],\n", + " [0.013414113164876815,\n", + " 0.028219571718935375,\n", + " 0.028219571718935375,\n", + " 0.018881623341225288],\n", + " [0.0, 0.031714410005548817, 0.031714410005548817, 0.028219571718935375],\n", + " [0.0, 0.035840068359308856, 0.035840068359308856, 0.031714410005548817],\n", + " [0.020044151790483144,\n", + " 0.039219584457256471,\n", + " 0.039219584457256471,\n", + " 0.035840068359308856],\n", + " [0.0, 0.055269024471219827, 0.055269024471219827, 0.039219584457256471],\n", + " [0.0, 0.030069120655580116, 0.030069120655580116, 0.0],\n", + " [0.0, 0.033885287102229857, 0.033885287102229857, 0.030069120655580116],\n", + " [0.0, 0.041092549847869045, 0.041092549847869045, 0.033885287102229857],\n", + " [0.0, 0.082792891011246136, 0.082792891011246136, 0.041092549847869045],\n", + " [0.055269024471219827,\n", + " 0.084668469845623873,\n", + " 0.084668469845623873,\n", + " 0.082792891011246136],\n", + " [0.0, 0.026526973479834275, 0.026526973479834275, 0.0],\n", + " [0.0, 0.026884884414852962, 0.026884884414852962, 0.0],\n", + " [0.0, 0.038348142067122053, 0.038348142067122053, 0.026884884414852962],\n", + " [0.0, 0.043364941139124306, 0.043364941139124306, 0.038348142067122053],\n", + " [0.0, 0.051277156561184062, 0.051277156561184062, 0.043364941139124306],\n", + " [0.026526973479834275,\n", + " 0.052318165143666238,\n", + " 0.052318165143666238,\n", + " 0.051277156561184062],\n", + " [0.0, 0.08329509681847283, 0.08329509681847283, 0.052318165143666238],\n", + " [0.0, 0.028795238165364577, 0.028795238165364577, 0.0],\n", + " [0.0, 0.050704982841920244, 0.050704982841920244, 0.028795238165364577],\n", + " [0.0, 0.0031483538555908612, 0.0031483538555908612, 0.0],\n", + " [0.0, 0.0090894887094919788, 0.0090894887094919788, 0.0031483538555908612],\n", + " [0.0, 0.018810254995619446, 0.018810254995619446, 0.0090894887094919788],\n", + " [0.0, 0.027211220406298083, 0.027211220406298083, 0.018810254995619446],\n", + " [0.0, 0.012370656409420026, 0.012370656409420026, 0.0],\n", + " [0.0, 0.013903678074526141, 0.013903678074526141, 0.012370656409420026],\n", + " [0.0, 0.0094618045319067572, 0.0094618045319067572, 0.0],\n", + " [0.0, 0.012858746517451055, 0.012858746517451055, 0.0094618045319067572],\n", + " [0.0, 0.014274787178789864, 0.014274787178789864, 0.012858746517451055],\n", + " [0.0, 0.022557152302537367, 0.022557152302537367, 0.014274787178789864],\n", + " [0.013903678074526141,\n", + " 0.025544298972572575,\n", + " 0.025544298972572575,\n", + " 0.022557152302537367],\n", + " [0.0, 0.012565155788930908, 0.012565155788930908, 0.0],\n", + " [0.0, 0.032699367730890098, 0.032699367730890098, 0.012565155788930908],\n", + " [0.025544298972572575,\n", + " 0.048341015669926574,\n", + " 0.048341015669926574,\n", + " 0.032699367730890098],\n", + " [0.0, 0.048637697067199545, 0.048637697067199545, 0.048341015669926574],\n", + " [0.027211220406298083,\n", + " 0.059031735210811294,\n", + " 0.059031735210811294,\n", + " 0.048637697067199545],\n", + " [0.050704982841920244,\n", + " 0.063344525864512183,\n", + " 0.063344525864512183,\n", + " 0.059031735210811294],\n", + " [0.0, 0.010030091225909967, 0.010030091225909967, 0.0],\n", + " [0.0, 0.011808495120037702, 0.011808495120037702, 0.010030091225909967],\n", + " [0.0, 0.018338352052457662, 0.018338352052457662, 0.0],\n", + " [0.0, 0.026092409950022464, 0.026092409950022464, 0.018338352052457662],\n", + " [0.011808495120037702,\n", + " 0.030754130535588713,\n", + " 0.030754130535588713,\n", + " 0.026092409950022464],\n", + " [0.0, 0.010170045673449904, 0.010170045673449904, 0.0],\n", + " [0.0, 0.036448759704550637, 0.036448759704550637, 0.0],\n", + " [0.010170045673449904,\n", + " 0.037474373977420782,\n", + " 0.037474373977420782,\n", + " 0.036448759704550637],\n", + " [0.030754130535588713,\n", + " 0.043540320646503754,\n", + " 0.043540320646503754,\n", + " 0.037474373977420782],\n", + " [0.0, 0.076494324822171014, 0.076494324822171014, 0.043540320646503754],\n", + " [0.063344525864512183,\n", + " 0.089946080526055988,\n", + " 0.089946080526055988,\n", + " 0.076494324822171014],\n", + " [0.08329509681847283,\n", + " 0.098198626044365661,\n", + " 0.098198626044365661,\n", + " 0.089946080526055988],\n", + " [0.084668469845623873,\n", + " 0.099497642384127172,\n", + " 0.099497642384127172,\n", + " 0.098198626044365661],\n", + " [0.0, 0.11477469450187851, 0.11477469450187851, 0.099497642384127172],\n", + " [0.039795518868327114,\n", + " 0.11657524715822352,\n", + " 0.11657524715822352,\n", + " 0.11477469450187851],\n", + " [0.0, 0.13590123097308041, 0.13590123097308041, 0.11657524715822352],\n", + " [0.0, 0.14709831644516735, 0.14709831644516735, 0.13590123097308041],\n", + " [0.13634498195754335,\n", + " 0.1528790612902893,\n", + " 0.1528790612902893,\n", + " 0.14709831644516735],\n", + " [0.0, 0.048276518267168063, 0.048276518267168063, 0.0],\n", + " [0.0, 0.04958093692135046, 0.04958093692135046, 0.048276518267168063],\n", + " [0.0, 0.015785727889456456, 0.015785727889456456, 0.0],\n", + " [0.0, 0.010969426648646034, 0.010969426648646034, 0.0],\n", + " [0.0, 0.014977663669609538, 0.014977663669609538, 0.010969426648646034],\n", + " [0.0, 0.022347837926742817, 0.022347837926742817, 0.0],\n", + " [0.0, 0.011715081092334994, 0.011715081092334994, 0.0],\n", + " [0.0, 0.013525896827935226, 0.013525896827935226, 0.011715081092334994],\n", + " [0.0, 0.0012321789642759453, 0.0012321789642759453, 0.0],\n", + " [0.0, 0.0028541271870743184, 0.0028541271870743184, 0.0012321789642759453],\n", + " [0.0, 0.0029649151758461096, 0.0029649151758461096, 0.0028541271870743184],\n", + " [0.0, 0.0057927469304320609, 0.0057927469304320609, 0.0029649151758461096],\n", + " [0.0, 0.0069919091098140538, 0.0069919091098140538, 0.0057927469304320609],\n", + " [0.0, 0.007169260073400777, 0.007169260073400777, 0.0069919091098140538],\n", + " [0.0, 0.0076482994842009934, 0.0076482994842009934, 0.0],\n", + " [0.007169260073400777,\n", + " 0.0095133624444811715,\n", + " 0.0095133624444811715,\n", + " 0.0076482994842009934],\n", + " [0.0, 0.011262115653817802, 0.011262115653817802, 0.0],\n", + " [0.0095133624444811715,\n", + " 0.011308604334753418,\n", + " 0.011308604334753418,\n", + " 0.011262115653817802],\n", + " [0.0, 0.016586162907668383, 0.016586162907668383, 0.011308604334753418],\n", + " [0.0, 0.017060508931454315, 0.017060508931454315, 0.016586162907668383],\n", + " [0.0, 0.019199712081170644, 0.019199712081170644, 0.017060508931454315],\n", + " [0.0, 0.019212061315746369, 0.019212061315746369, 0.019199712081170644],\n", + " [0.0, 0.013128441796351921, 0.013128441796351921, 0.0],\n", + " [0.0, 0.019469048898180314, 0.019469048898180314, 0.013128441796351921],\n", + " [0.019212061315746369,\n", + " 0.019895585892348543,\n", + " 0.019895585892348543,\n", + " 0.019469048898180314],\n", + " [0.013525896827935226,\n", + " 0.021673602400157897,\n", + " 0.021673602400157897,\n", + " 0.019895585892348543],\n", + " [0.0, 0.023754113433254294, 0.023754113433254294, 0.021673602400157897],\n", + " [0.022347837926742817,\n", + " 0.031175119213881188,\n", + " 0.031175119213881188,\n", + " 0.023754113433254294],\n", + " [0.0, 0.032510017856037743, 0.032510017856037743, 0.031175119213881188],\n", + " [0.014977663669609538,\n", + " 0.033080037545322995,\n", + " 0.033080037545322995,\n", + " 0.032510017856037743],\n", + " [0.0, 0.035257023130148619, 0.035257023130148619, 0.033080037545322995],\n", + " [0.0, 0.0027660616406768928, 0.0027660616406768928, 0.0],\n", + " [0.0, 0.0044479208626090824, 0.0044479208626090824, 0.0027660616406768928],\n", + " [0.0, 0.0047461395891839706, 0.0047461395891839706, 0.0044479208626090824],\n", + " [0.0, 0.023265346526535672, 0.023265346526535672, 0.0047461395891839706],\n", + " [0.0, 0.0086706661797073935, 0.0086706661797073935, 0.0],\n", + " [0.0, 0.0036170167265260102, 0.0036170167265260102, 0.0],\n", + " [0.0, 0.018910357849604213, 0.018910357849604213, 0.0036170167265260102],\n", + " [0.0086706661797073935,\n", + " 0.024195498527619794,\n", + " 0.024195498527619794,\n", + " 0.018910357849604213],\n", + " [0.023265346526535672,\n", + " 0.026224813364442878,\n", + " 0.026224813364442878,\n", + " 0.024195498527619794],\n", + " [0.0, 0.015216332048164709, 0.015216332048164709, 0.0],\n", + " [0.0, 0.017189463342417149, 0.017189463342417149, 0.0],\n", + " [0.015216332048164709,\n", + " 0.026065574614800129,\n", + " 0.026065574614800129,\n", + " 0.017189463342417149],\n", + " [0.0, 0.014677367406994527, 0.014677367406994527, 0.0],\n", + " [0.0, 0.01643672853702953, 0.01643672853702953, 0.014677367406994527],\n", + " [0.0, 0.029911922037868726, 0.029911922037868726, 0.01643672853702953],\n", + " [0.0, 0.031792488075016626, 0.031792488075016626, 0.029911922037868726],\n", + " [0.0, 0.03314689145304852, 0.03314689145304852, 0.031792488075016626],\n", + " [0.026065574614800129,\n", + " 0.033782143759690346,\n", + " 0.033782143759690346,\n", + " 0.03314689145304852],\n", + " [0.0, 0.0025855902614286544, 0.0025855902614286544, 0.0],\n", + " [0.0, 0.0018487695908354881, 0.0018487695908354881, 0.0],\n", + " [0.0, 0.0046946908311490086, 0.0046946908311490086, 0.0018487695908354881],\n", + " [0.0, 0.01000753995744756, 0.01000753995744756, 0.0],\n", + " [0.0, 0.012013231247251819, 0.012013231247251819, 0.0],\n", + " [0.01000753995744756,\n", + " 0.012520915341938442,\n", + " 0.012520915341938442,\n", + " 0.012013231247251819],\n", + " [0.0, 0.02297676052015242, 0.02297676052015242, 0.012520915341938442],\n", + " [0.0046946908311490086,\n", + " 0.025180259033617616,\n", + " 0.025180259033617616,\n", + " 0.02297676052015242],\n", + " [0.0, 0.02173480250657794, 0.02173480250657794, 0.0],\n", + " [0.0, 0.02506815966519424, 0.02506815966519424, 0.02173480250657794],\n", + " [0.0, 0.026796251864764371, 0.026796251864764371, 0.02506815966519424],\n", + " [0.025180259033617616,\n", + " 0.027473502161175015,\n", + " 0.027473502161175015,\n", + " 0.026796251864764371],\n", + " [0.0, 0.029207631074771753, 0.029207631074771753, 0.027473502161175015],\n", + " [0.0025855902614286544,\n", + " 0.036026005551549271,\n", + " 0.036026005551549271,\n", + " 0.029207631074771753],\n", + " [0.033782143759690346,\n", + " 0.037513396273869085,\n", + " 0.037513396273869085,\n", + " 0.036026005551549271],\n", + " [0.026224813364442878,\n", + " 0.04250601736225474,\n", + " 0.04250601736225474,\n", + " 0.037513396273869085],\n", + " [0.035257023130148619,\n", + " 0.043709497743617459,\n", + " 0.043709497743617459,\n", + " 0.04250601736225474],\n", + " [0.015785727889456456,\n", + " 0.046710156261784597,\n", + " 0.046710156261784597,\n", + " 0.043709497743617459],\n", + " [0.0, 0.047055444839041512, 0.047055444839041512, 0.046710156261784597],\n", + " [0.0, 0.0098168789846866493, 0.0098168789846866493, 0.0],\n", + " [0.0, 0.0020193276108646857, 0.0020193276108646857, 0.0],\n", + " [0.0, 0.018758111552078786, 0.018758111552078786, 0.0020193276108646857],\n", + " [0.0098168789846866493,\n", + " 0.019616096273208122,\n", + " 0.019616096273208122,\n", + " 0.018758111552078786],\n", + " [0.0, 0.021036813185460329, 0.021036813185460329, 0.0],\n", + " [0.019616096273208122,\n", + " 0.033280237634370886,\n", + " 0.033280237634370886,\n", + " 0.021036813185460329],\n", + " [0.0, 0.003286854119062941, 0.003286854119062941, 0.0],\n", + " [0.0, 0.012080230833888367, 0.012080230833888367, 0.003286854119062941],\n", + " [0.0, 0.02428735549623225, 0.02428735549623225, 0.0],\n", + " [0.0, 0.024501879111613667, 0.024501879111613667, 0.02428735549623225],\n", + " [0.012080230833888367,\n", + " 0.029523933765673041,\n", + " 0.029523933765673041,\n", + " 0.024501879111613667],\n", + " [0.0, 0.046397132810120291, 0.046397132810120291, 0.0],\n", + " [0.029523933765673041,\n", + " 0.047215738138885355,\n", + " 0.047215738138885355,\n", + " 0.046397132810120291],\n", + " [0.033280237634370886,\n", + " 0.050606893809046649,\n", + " 0.050606893809046649,\n", + " 0.047215738138885355],\n", + " [0.0, 0.015680919520232296, 0.015680919520232296, 0.0],\n", + " [0.0, 0.023627052397622715, 0.023627052397622715, 0.015680919520232296],\n", + " [0.0, 0.028667370388637477, 0.028667370388637477, 0.023627052397622715],\n", + " [0.0, 0.030524832268166935, 0.030524832268166935, 0.028667370388637477],\n", + " [0.0, 0.031332057864115616, 0.031332057864115616, 0.030524832268166935],\n", + " [0.0, 0.055683316720534372, 0.055683316720534372, 0.031332057864115616],\n", + " [0.0, 0.057076071150698099, 0.057076071150698099, 0.055683316720534372],\n", + " [0.050606893809046649,\n", + " 0.061290624152478435,\n", + " 0.061290624152478435,\n", + " 0.057076071150698099],\n", + " [0.047055444839041512,\n", + " 0.064665347814728408,\n", + " 0.064665347814728408,\n", + " 0.061290624152478435],\n", + " [0.04958093692135046,\n", + " 0.065336245721645536,\n", + " 0.065336245721645536,\n", + " 0.064665347814728408],\n", + " [0.0, 0.081285049209555787, 0.081285049209555787, 0.065336245721645536],\n", + " [0.0, 0.1307985206682383, 0.1307985206682383, 0.081285049209555787],\n", + " [0.0, 0.1462009067687304, 0.1462009067687304, 0.1307985206682383],\n", + " [0.0, 0.017918808888988842, 0.017918808888988842, 0.0],\n", + " [0.0, 0.010957030300224293, 0.010957030300224293, 0.0],\n", + " [0.0, 0.018240402764192119, 0.018240402764192119, 0.010957030300224293],\n", + " [0.017918808888988842,\n", + " 0.018698081639564115,\n", + " 0.018698081639564115,\n", + " 0.018240402764192119],\n", + " [0.0, 0.0042418887302701986, 0.0042418887302701986, 0.0],\n", + " [0.0, 0.0055496541333673183, 0.0055496541333673183, 0.0042418887302701986],\n", + " [0.0, 0.016551769361609028, 0.016551769361609028, 0.0],\n", + " [0.0, 0.016886872327345943, 0.016886872327345943, 0.016551769361609028],\n", + " [0.0055496541333673183,\n", + " 0.017878770791083919,\n", + " 0.017878770791083919,\n", + " 0.016886872327345943],\n", + " [0.0, 0.019752797169005069, 0.019752797169005069, 0.017878770791083919],\n", + " [0.0, 0.02209503785921469, 0.02209503785921469, 0.019752797169005069],\n", + " [0.0, 0.028768958027713634, 0.028768958027713634, 0.02209503785921469],\n", + " [0.018698081639564115,\n", + " 0.029092912263982428,\n", + " 0.029092912263982428,\n", + " 0.028768958027713634],\n", + " [0.0, 0.031832332556687798, 0.031832332556687798, 0.029092912263982428],\n", + " [0.0, 0.040789618115393868, 0.040789618115393868, 0.0],\n", + " [0.031832332556687798,\n", + " 0.043639740833325995,\n", + " 0.043639740833325995,\n", + " 0.040789618115393868],\n", + " [0.0, 0.0065974692117491589, 0.0065974692117491589, 0.0],\n", + " [0.0, 0.0069421406640872976, 0.0069421406640872976, 0.0065974692117491589],\n", + " [0.0, 0.017005207320116587, 0.017005207320116587, 0.0069421406640872976],\n", + " [0.0, 0.039959829141274467, 0.039959829141274467, 0.0],\n", + " [0.017005207320116587,\n", + " 0.051925916775727089,\n", + " 0.051925916775727089,\n", + " 0.039959829141274467],\n", + " [0.043639740833325995,\n", + " 0.055893655096088422,\n", + " 0.055893655096088422,\n", + " 0.051925916775727089],\n", + " [0.0, 0.058553971889187831, 0.058553971889187831, 0.055893655096088422],\n", + " [0.0, 0.062101744903030685, 0.062101744903030685, 0.058553971889187831],\n", + " [0.0, 0.063839681703470499, 0.063839681703470499, 0.062101744903030685],\n", + " [0.0, 0.070147126256175349, 0.070147126256175349, 0.063839681703470499],\n", + " [0.0, 0.080202764665563669, 0.080202764665563669, 0.0],\n", + " [0.070147126256175349,\n", + " 0.085277742729274866,\n", + " 0.085277742729274866,\n", + " 0.080202764665563669],\n", + " [0.0, 0.093813746162270867, 0.093813746162270867, 0.085277742729274866],\n", + " [0.0, 0.0031022625614201041, 0.0031022625614201041, 0.0],\n", + " [0.0, 0.0030745583422596432, 0.0030745583422596432, 0.0],\n", + " [0.0, 0.0094063277637993874, 0.0094063277637993874, 0.0030745583422596432],\n", + " [0.0031022625614201041,\n", + " 0.032748822329968647,\n", + " 0.032748822329968647,\n", + " 0.0094063277637993874],\n", + " [0.0, 0.0069542542375150875, 0.0069542542375150875, 0.0],\n", + " [0.0, 0.036028387876784716, 0.036028387876784716, 0.0069542542375150875],\n", + " [0.032748822329968647,\n", + " 0.053727994341870297,\n", + " 0.053727994341870297,\n", + " 0.036028387876784716],\n", + " [0.0, 0.0024303631415867268, 0.0024303631415867268, 0.0],\n", + " [0.0, 0.0094359827257255082, 0.0094359827257255082, 0.0024303631415867268],\n", + " [0.0, 0.024673714049582691, 0.024673714049582691, 0.0],\n", + " [0.0094359827257255082,\n", + " 0.026452535247116191,\n", + " 0.026452535247116191,\n", + " 0.024673714049582691],\n", + " [0.0, 0.013397270057732356, 0.013397270057732356, 0.0],\n", + " [0.0, 0.017454866255574488, 0.017454866255574488, 0.013397270057732356],\n", + " [0.0, 0.0076782568985436644, 0.0076782568985436644, 0.0],\n", + " [0.0, 0.0078267626129881699, 0.0078267626129881699, 0.0],\n", + " [0.0, 0.0080489962107045676, 0.0080489962107045676, 0.0078267626129881699],\n", + " [0.0076782568985436644,\n", + " 0.010039334888319861,\n", + " 0.010039334888319861,\n", + " 0.0080489962107045676],\n", + " [0.0, 0.010076811003490178, 0.010076811003490178, 0.010039334888319861],\n", + " [0.0, 0.012148189823997551, 0.012148189823997551, 0.010076811003490178],\n", + " [0.0, 0.012599799680947278, 0.012599799680947278, 0.012148189823997551],\n", + " [0.0, 0.0075400000000009756, 0.0075400000000009756, 0.0],\n", + " [0.0, 0.0018097762292592862, 0.0018097762292592862, 0.0],\n", + " [0.0, 0.0021934087626348186, 0.0021934087626348186, 0.0018097762292592862],\n", + " [0.0, 0.0070078362566578633, 0.0070078362566578633, 0.0021934087626348186],\n", + " [0.0, 0.0026662432372137682, 0.0026662432372137682, 0.0],\n", + " [0.0, 0.010994441686593947, 0.010994441686593947, 0.0],\n", + " [0.0026662432372137682,\n", + " 0.016892337256874279,\n", + " 0.016892337256874279,\n", + " 0.010994441686593947],\n", + " [0.0, 0.017260625278372507, 0.017260625278372507, 0.016892337256874279],\n", + " [0.0070078362566578633,\n", + " 0.018469710582461059,\n", + " 0.018469710582461059,\n", + " 0.017260625278372507],\n", + " [0.0075400000000009756,\n", + " 0.018847627383840763,\n", + " 0.018847627383840763,\n", + " 0.018469710582461059],\n", + " [0.0, 0.0051393576446881065, 0.0051393576446881065, 0.0],\n", + " [0.0, 0.017353491694754836, 0.017353491694754836, 0.0051393576446881065],\n", + " [0.0, 0.013194846342418695, 0.013194846342418695, 0.0],\n", + " [0.0, 0.015541255676425539, 0.015541255676425539, 0.013194846342418695],\n", + " [0.0, 0.016672910243867429, 0.016672910243867429, 0.015541255676425539],\n", + " [0.0, 0.0053135089159673729, 0.0053135089159673729, 0.0],\n", + " [0.0, 0.0095782825704791939, 0.0095782825704791939, 0.0053135089159673729],\n", + " [0.0, 0.0056909075726062752, 0.0056909075726062752, 0.0],\n", + " [0.0, 0.0069574248109490651, 0.0069574248109490651, 0.0],\n", + " [0.0056909075726062752,\n", + " 0.0072113816290755384,\n", + " 0.0072113816290755384,\n", + " 0.0069574248109490651],\n", + " [0.0, 0.0052114489347945079, 0.0052114489347945079, 0.0],\n", + " [0.0, 0.0066523479313700022, 0.0066523479313700022, 0.0052114489347945079],\n", + " [0.0, 0.0073495998530510153, 0.0073495998530510153, 0.0066523479313700022],\n", + " [0.0, 0.0084957444641410116, 0.0084957444641410116, 0.0073495998530510153],\n", + " [0.0, 0.010309659645207688, 0.010309659645207688, 0.0084957444641410116],\n", + " [0.0072113816290755384,\n", + " 0.011451053488654326,\n", + " 0.011451053488654326,\n", + " 0.010309659645207688],\n", + " [0.0095782825704791939,\n", + " 0.012311922676817149,\n", + " 0.012311922676817149,\n", + " 0.011451053488654326],\n", + " [0.0, 0.012378821268603089, 0.012378821268603089, 0.012311922676817149],\n", + " [0.0, 0.0041557487893288088, 0.0041557487893288088, 0.0],\n", + " [0.0, 0.0076320567345915854, 0.0076320567345915854, 0.0041557487893288088],\n", + " [0.0, 0.012431085954176527, 0.012431085954176527, 0.0076320567345915854],\n", + " [0.0, 0.008677730406038876, 0.008677730406038876, 0.0],\n", + " [0.0, 0.0088010265878479283, 0.0088010265878479283, 0.008677730406038876],\n", + " [0.0, 0.0094886000021051978, 0.0094886000021051978, 0.0088010265878479283],\n", + " [0.0, 0.012778251562708632, 0.012778251562708632, 0.0],\n", + " [0.0094886000021051978,\n", + " 0.013657911297120283,\n", + " 0.013657911297120283,\n", + " 0.012778251562708632],\n", + " [0.012431085954176527,\n", + " 0.01638004181923668,\n", + " 0.01638004181923668,\n", + " 0.013657911297120283],\n", + " [0.012378821268603089,\n", + " 0.017790629274978622,\n", + " 0.017790629274978622,\n", + " 0.01638004181923668],\n", + " [0.016672910243867429,\n", + " 0.018034241791661031,\n", + " 0.018034241791661031,\n", + " 0.017790629274978622],\n", + " [0.017353491694754836,\n", + " 0.020623823214915581,\n", + " 0.020623823214915581,\n", + " 0.018034241791661031],\n", + " [0.018847627383840763,\n", + " 0.021127356507619925,\n", + " 0.021127356507619925,\n", + " 0.020623823214915581],\n", + " [0.012599799680947278,\n", + " 0.021270086060006438,\n", + " 0.021270086060006438,\n", + " 0.021127356507619925],\n", + " [0.0, 0.024656262997460956, 0.024656262997460956, 0.021270086060006438],\n", + " [0.0, 0.024994404533815365, 0.024994404533815365, 0.024656262997460956],\n", + " [0.017454866255574488,\n", + " 0.025376155934260611,\n", + " 0.025376155934260611,\n", + " 0.024994404533815365],\n", + " [0.0, 0.026574287271721241, 0.026574287271721241, 0.025376155934260611],\n", + " [0.0, 0.02896340106064749, 0.02896340106064749, 0.026574287271721241],\n", + " [0.026452535247116191,\n", + " 0.03807623990102911,\n", + " 0.03807623990102911,\n", + " 0.02896340106064749],\n", + " [0.0, 0.057691612778634112, 0.057691612778634112, 0.03807623990102911],\n", + " [0.053727994341870297,\n", + " 0.057919152928887795,\n", + " 0.057919152928887795,\n", + " 0.057691612778634112],\n", + " [0.0, 0.060320024378314463, 0.060320024378314463, 0.057919152928887795],\n", + " [0.0, 0.083464139101776538, 0.083464139101776538, 0.060320024378314463],\n", + " [0.0, 0.095272246751088266, 0.095272246751088266, 0.083464139101776538],\n", + " [0.093813746162270867,\n", + " 0.22623419045095994,\n", + " 0.22623419045095994,\n", + " 0.095272246751088266],\n", + " [0.1462009067687304,\n", + " 0.2753032507853832,\n", + " 0.2753032507853832,\n", + " 0.22623419045095994],\n", + " [0.0, 0.31603269163173414, 0.31603269163173414, 0.2753032507853832],\n", + " [0.1528790612902893,\n", + " 0.32851639628639528,\n", + " 0.32851639628639528,\n", + " 0.31603269163173414],\n", + " [0.25882916116426624,\n", + " 0.39172763273734856,\n", + " 0.39172763273734856,\n", + " 0.32851639628639528],\n", + " [0.26780750064552511,\n", + " 0.39242657648278312,\n", + " 0.39242657648278312,\n", + " 0.39172763273734856],\n", + " [0.0, 0.39821624806755107, 0.39821624806755107, 0.39242657648278312],\n", + " [0.0, 1.0098939933997975, 1.0098939933997975, 0.39821624806755107],\n", + " [0.14535348796985442,\n", + " 1.0146186106715167,\n", + " 1.0146186106715167,\n", + " 1.0098939933997975],\n", + " [0.10219709526204505,\n", + " 3.2383195274174246,\n", + " 3.2383195274174246,\n", + " 1.0146186106715167],\n", + " [0.0, 4.4258006285521958, 4.4258006285521958, 3.2383195274174246],\n", + " [1.9996467589211897,\n", + " 4.9130977483494025,\n", + " 4.9130977483494025,\n", + " 4.4258006285521958],\n", + " [0.0, 5.0859180060061968, 5.0859180060061968, 4.9130977483494025],\n", + " [4.3933561372010326,\n", + " 6.9070353370609689,\n", + " 6.9070353370609689,\n", + " 5.0859180060061968],\n", + " [5.4774588757537028,\n", + " 8.1646530021191399,\n", + " 8.1646530021191399,\n", + " 6.9070353370609689],\n", + " [7.5963928835821077,\n", + " 14.504806894960476,\n", + " 14.504806894960476,\n", + " 8.1646530021191399],\n", + " [7.9744927667796501,\n", + " 68.72794812508468,\n", + " 68.72794812508468,\n", + " 14.504806894960476],\n", + " [4.3725094114435077,\n", + " 135.34313324148937,\n", + " 135.34313324148937,\n", + " 68.72794812508468]],\n", + " 'icoord': [[75.0, 75.0, 85.0, 85.0],\n", + " [65.0, 65.0, 80.0, 80.0],\n", + " [95.0, 95.0, 105.0, 105.0],\n", + " [115.0, 115.0, 125.0, 125.0],\n", + " [100.0, 100.0, 120.0, 120.0],\n", + " [155.0, 155.0, 165.0, 165.0],\n", + " [145.0, 145.0, 160.0, 160.0],\n", + " [135.0, 135.0, 152.5, 152.5],\n", + " [110.0, 110.0, 143.75, 143.75],\n", + " [72.5, 72.5, 126.875, 126.875],\n", + " [55.0, 55.0, 99.6875, 99.6875],\n", + " [45.0, 45.0, 77.34375, 77.34375],\n", + " [175.0, 175.0, 185.0, 185.0],\n", + " [205.0, 205.0, 215.0, 215.0],\n", + " [195.0, 195.0, 210.0, 210.0],\n", + " [255.0, 255.0, 265.0, 265.0],\n", + " [245.0, 245.0, 260.0, 260.0],\n", + " [275.0, 275.0, 285.0, 285.0],\n", + " [252.5, 252.5, 280.0, 280.0],\n", + " [235.0, 235.0, 266.25, 266.25],\n", + " [315.0, 315.0, 325.0, 325.0],\n", + " [345.0, 345.0, 355.0, 355.0],\n", + " [335.0, 335.0, 350.0, 350.0],\n", + " [320.0, 320.0, 342.5, 342.5],\n", + " [305.0, 305.0, 331.25, 331.25],\n", + " [295.0, 295.0, 318.125, 318.125],\n", + " [250.625, 250.625, 306.5625, 306.5625],\n", + " [365.0, 365.0, 375.0, 375.0],\n", + " [445.0, 445.0, 455.0, 455.0],\n", + " [435.0, 435.0, 450.0, 450.0],\n", + " [425.0, 425.0, 442.5, 442.5],\n", + " [415.0, 415.0, 433.75, 433.75],\n", + " [405.0, 405.0, 424.375, 424.375],\n", + " [395.0, 395.0, 414.6875, 414.6875],\n", + " [505.0, 505.0, 515.0, 515.0],\n", + " [495.0, 495.0, 510.0, 510.0],\n", + " [485.0, 485.0, 502.5, 502.5],\n", + " [545.0, 545.0, 555.0, 555.0],\n", + " [535.0, 535.0, 550.0, 550.0],\n", + " [525.0, 525.0, 542.5, 542.5],\n", + " [493.75, 493.75, 533.75, 533.75],\n", + " [475.0, 475.0, 513.75, 513.75],\n", + " [465.0, 465.0, 494.375, 494.375],\n", + " [575.0, 575.0, 585.0, 585.0],\n", + " [565.0, 565.0, 580.0, 580.0],\n", + " [615.0, 615.0, 625.0, 625.0],\n", + " [635.0, 635.0, 645.0, 645.0],\n", + " [620.0, 620.0, 640.0, 640.0],\n", + " [675.0, 675.0, 685.0, 685.0],\n", + " [665.0, 665.0, 680.0, 680.0],\n", + " [715.0, 715.0, 725.0, 725.0],\n", + " [705.0, 705.0, 720.0, 720.0],\n", + " [735.0, 735.0, 745.0, 745.0],\n", + " [765.0, 765.0, 775.0, 775.0],\n", + " [755.0, 755.0, 770.0, 770.0],\n", + " [795.0, 795.0, 805.0, 805.0],\n", + " [785.0, 785.0, 800.0, 800.0],\n", + " [835.0, 835.0, 845.0, 845.0],\n", + " [825.0, 825.0, 840.0, 840.0],\n", + " [855.0, 855.0, 865.0, 865.0],\n", + " [832.5, 832.5, 860.0, 860.0],\n", + " [895.0, 895.0, 905.0, 905.0],\n", + " [885.0, 885.0, 900.0, 900.0],\n", + " [875.0, 875.0, 892.5, 892.5],\n", + " [915.0, 915.0, 925.0, 925.0],\n", + " [935.0, 935.0, 945.0, 945.0],\n", + " [975.0, 975.0, 985.0, 985.0],\n", + " [965.0, 965.0, 980.0, 980.0],\n", + " [1005.0, 1005.0, 1015.0, 1015.0],\n", + " [995.0, 995.0, 1010.0, 1010.0],\n", + " [972.5, 972.5, 1002.5, 1002.5],\n", + " [955.0, 955.0, 987.5, 987.5],\n", + " [940.0, 940.0, 971.25, 971.25],\n", + " [920.0, 920.0, 955.625, 955.625],\n", + " [883.75, 883.75, 937.8125, 937.8125],\n", + " [846.25, 846.25, 910.78125, 910.78125],\n", + " [815.0, 815.0, 878.515625, 878.515625],\n", + " [792.5, 792.5, 846.7578125, 846.7578125],\n", + " [762.5, 762.5, 819.62890625, 819.62890625],\n", + " [1035.0, 1035.0, 1045.0, 1045.0],\n", + " [1025.0, 1025.0, 1040.0, 1040.0],\n", + " [1065.0, 1065.0, 1075.0, 1075.0],\n", + " [1095.0, 1095.0, 1105.0, 1105.0],\n", + " [1085.0, 1085.0, 1100.0, 1100.0],\n", + " [1070.0, 1070.0, 1092.5, 1092.5],\n", + " [1055.0, 1055.0, 1081.25, 1081.25],\n", + " [1032.5, 1032.5, 1068.125, 1068.125],\n", + " [791.064453125, 791.064453125, 1050.3125, 1050.3125],\n", + " [740.0, 740.0, 920.6884765625, 920.6884765625],\n", + " [1165.0, 1165.0, 1175.0, 1175.0],\n", + " [1155.0, 1155.0, 1170.0, 1170.0],\n", + " [1145.0, 1145.0, 1162.5, 1162.5],\n", + " [1135.0, 1135.0, 1153.75, 1153.75],\n", + " [1245.0, 1245.0, 1255.0, 1255.0],\n", + " [1235.0, 1235.0, 1250.0, 1250.0],\n", + " [1225.0, 1225.0, 1242.5, 1242.5],\n", + " [1215.0, 1215.0, 1233.75, 1233.75],\n", + " [1205.0, 1205.0, 1224.375, 1224.375],\n", + " [1275.0, 1275.0, 1285.0, 1285.0],\n", + " [1335.0, 1335.0, 1345.0, 1345.0],\n", + " [1325.0, 1325.0, 1340.0, 1340.0],\n", + " [1315.0, 1315.0, 1332.5, 1332.5],\n", + " [1305.0, 1305.0, 1323.75, 1323.75],\n", + " [1385.0, 1385.0, 1395.0, 1395.0],\n", + " [1375.0, 1375.0, 1390.0, 1390.0],\n", + " [1365.0, 1365.0, 1382.5, 1382.5],\n", + " [1355.0, 1355.0, 1373.75, 1373.75],\n", + " [1314.375, 1314.375, 1364.375, 1364.375],\n", + " [1295.0, 1295.0, 1339.375, 1339.375],\n", + " [1425.0, 1425.0, 1435.0, 1435.0],\n", + " [1415.0, 1415.0, 1430.0, 1430.0],\n", + " [1405.0, 1405.0, 1422.5, 1422.5],\n", + " [1317.1875, 1317.1875, 1413.75, 1413.75],\n", + " [1280.0, 1280.0, 1365.46875, 1365.46875],\n", + " [1265.0, 1265.0, 1322.734375, 1322.734375],\n", + " [1214.6875, 1214.6875, 1293.8671875, 1293.8671875],\n", + " [1195.0, 1195.0, 1254.27734375, 1254.27734375],\n", + " [1465.0, 1465.0, 1475.0, 1475.0],\n", + " [1455.0, 1455.0, 1470.0, 1470.0],\n", + " [1505.0, 1505.0, 1515.0, 1515.0],\n", + " [1545.0, 1545.0, 1555.0, 1555.0],\n", + " [1535.0, 1535.0, 1550.0, 1550.0],\n", + " [1565.0, 1565.0, 1575.0, 1575.0],\n", + " [1542.5, 1542.5, 1570.0, 1570.0],\n", + " [1525.0, 1525.0, 1556.25, 1556.25],\n", + " [1645.0, 1645.0, 1655.0, 1655.0],\n", + " [1635.0, 1635.0, 1650.0, 1650.0],\n", + " [1675.0, 1675.0, 1685.0, 1685.0],\n", + " [1665.0, 1665.0, 1680.0, 1680.0],\n", + " [1642.5, 1642.5, 1672.5, 1672.5],\n", + " [1695.0, 1695.0, 1705.0, 1705.0],\n", + " [1725.0, 1725.0, 1735.0, 1735.0],\n", + " [1715.0, 1715.0, 1730.0, 1730.0],\n", + " [1755.0, 1755.0, 1765.0, 1765.0],\n", + " [1745.0, 1745.0, 1760.0, 1760.0],\n", + " [1722.5, 1722.5, 1752.5, 1752.5],\n", + " [1700.0, 1700.0, 1737.5, 1737.5],\n", + " [1657.5, 1657.5, 1718.75, 1718.75],\n", + " [1625.0, 1625.0, 1688.125, 1688.125],\n", + " [1795.0, 1795.0, 1805.0, 1805.0],\n", + " [1785.0, 1785.0, 1800.0, 1800.0],\n", + " [1775.0, 1775.0, 1792.5, 1792.5],\n", + " [1656.5625, 1656.5625, 1783.75, 1783.75],\n", + " [1615.0, 1615.0, 1720.15625, 1720.15625],\n", + " [1605.0, 1605.0, 1667.578125, 1667.578125],\n", + " [1595.0, 1595.0, 1636.2890625, 1636.2890625],\n", + " [1585.0, 1585.0, 1615.64453125, 1615.64453125],\n", + " [1540.625, 1540.625, 1600.322265625, 1600.322265625],\n", + " [1835.0, 1835.0, 1845.0, 1845.0],\n", + " [1855.0, 1855.0, 1865.0, 1865.0],\n", + " [1840.0, 1840.0, 1860.0, 1860.0],\n", + " [1825.0, 1825.0, 1850.0, 1850.0],\n", + " [1815.0, 1815.0, 1837.5, 1837.5],\n", + " [1915.0, 1915.0, 1925.0, 1925.0],\n", + " [1905.0, 1905.0, 1920.0, 1920.0],\n", + " [1895.0, 1895.0, 1912.5, 1912.5],\n", + " [1955.0, 1955.0, 1965.0, 1965.0],\n", + " [1945.0, 1945.0, 1960.0, 1960.0],\n", + " [1985.0, 1985.0, 1995.0, 1995.0],\n", + " [1975.0, 1975.0, 1990.0, 1990.0],\n", + " [1952.5, 1952.5, 1982.5, 1982.5],\n", + " [2015.0, 2015.0, 2025.0, 2025.0],\n", + " [2045.0, 2045.0, 2055.0, 2055.0],\n", + " [2035.0, 2035.0, 2050.0, 2050.0],\n", + " [2020.0, 2020.0, 2042.5, 2042.5],\n", + " [2065.0, 2065.0, 2075.0, 2075.0],\n", + " [2105.0, 2105.0, 2115.0, 2115.0],\n", + " [2145.0, 2145.0, 2155.0, 2155.0],\n", + " [2135.0, 2135.0, 2150.0, 2150.0],\n", + " [2125.0, 2125.0, 2142.5, 2142.5],\n", + " [2110.0, 2110.0, 2133.75, 2133.75],\n", + " [2095.0, 2095.0, 2121.875, 2121.875],\n", + " [2195.0, 2195.0, 2205.0, 2205.0],\n", + " [2185.0, 2185.0, 2200.0, 2200.0],\n", + " [2175.0, 2175.0, 2192.5, 2192.5],\n", + " [2215.0, 2215.0, 2225.0, 2225.0],\n", + " [2183.75, 2183.75, 2220.0, 2220.0],\n", + " [2165.0, 2165.0, 2201.875, 2201.875],\n", + " [2108.4375, 2108.4375, 2183.4375, 2183.4375],\n", + " [2085.0, 2085.0, 2145.9375, 2145.9375],\n", + " [2070.0, 2070.0, 2115.46875, 2115.46875],\n", + " [2031.25, 2031.25, 2092.734375, 2092.734375],\n", + " [2005.0, 2005.0, 2061.9921875, 2061.9921875],\n", + " [1967.5, 1967.5, 2033.49609375, 2033.49609375],\n", + " [1935.0, 1935.0, 2000.498046875, 2000.498046875],\n", + " [1903.75, 1903.75, 1967.7490234375, 1967.7490234375],\n", + " [1885.0, 1885.0, 1935.74951171875, 1935.74951171875],\n", + " [1875.0, 1875.0, 1910.374755859375, 1910.374755859375],\n", + " [1826.25, 1826.25, 1892.6873779296875, 1892.6873779296875],\n", + " [1570.4736328125, 1570.4736328125, 1859.4686889648438, 1859.4686889648438],\n", + " [1510.0, 1510.0, 1714.9711608886719, 1714.9711608886719],\n", + " [1495.0, 1495.0, 1612.485580444336, 1612.485580444336],\n", + " [1485.0, 1485.0, 1553.742790222168, 1553.742790222168],\n", + " [1462.5, 1462.5, 1519.371395111084, 1519.371395111084],\n", + " [1445.0, 1445.0, 1490.935697555542, 1490.935697555542],\n", + " [1224.638671875, 1224.638671875, 1467.967848777771, 1467.967848777771],\n", + " [1185.0, 1185.0, 1346.3032603263855, 1346.3032603263855],\n", + " [1144.375, 1144.375, 1265.6516301631927, 1265.6516301631927],\n", + " [1125.0, 1125.0, 1205.0133150815964, 1205.0133150815964],\n", + " [1115.0, 1115.0, 1165.0066575407982, 1165.0066575407982],\n", + " [830.34423828125, 830.34423828125, 1140.003328770399, 1140.003328770399],\n", + " [712.5, 712.5, 985.1737835258245, 985.1737835258245],\n", + " [695.0, 695.0, 848.8368917629123, 848.8368917629123],\n", + " [672.5, 672.5, 771.9184458814561, 771.9184458814561],\n", + " [655.0, 655.0, 722.2092229407281, 722.2092229407281],\n", + " [630.0, 630.0, 688.604611470364, 688.604611470364],\n", + " [605.0, 605.0, 659.302305735182, 659.302305735182],\n", + " [595.0, 595.0, 632.151152867591, 632.151152867591],\n", + " [572.5, 572.5, 613.5755764337955, 613.5755764337955],\n", + " [479.6875, 479.6875, 593.0377882168978, 593.0377882168978],\n", + " [404.84375, 404.84375, 536.3626441084489, 536.3626441084489],\n", + " [385.0, 385.0, 470.60319705422444, 470.60319705422444],\n", + " [370.0, 370.0, 427.8015985271122, 427.8015985271122],\n", + " [2235.0, 2235.0, 2245.0, 2245.0],\n", + " [2255.0, 2255.0, 2265.0, 2265.0],\n", + " [2240.0, 2240.0, 2260.0, 2260.0],\n", + " [2295.0, 2295.0, 2305.0, 2305.0],\n", + " [2285.0, 2285.0, 2300.0, 2300.0],\n", + " [2275.0, 2275.0, 2292.5, 2292.5],\n", + " [2250.0, 2250.0, 2283.75, 2283.75],\n", + " [398.9007992635561, 398.9007992635561, 2266.875, 2266.875],\n", + " [2335.0, 2335.0, 2345.0, 2345.0],\n", + " [2325.0, 2325.0, 2340.0, 2340.0],\n", + " [2355.0, 2355.0, 2365.0, 2365.0],\n", + " [2332.5, 2332.5, 2360.0, 2360.0],\n", + " [2315.0, 2315.0, 2346.25, 2346.25],\n", + " [1332.887899631778, 1332.887899631778, 2330.625, 2330.625],\n", + " [278.59375, 278.59375, 1831.756449815889, 1831.756449815889],\n", + " [225.0, 225.0, 1055.1750999079445, 1055.1750999079445],\n", + " [202.5, 202.5, 640.0875499539723, 640.0875499539723],\n", + " [180.0, 180.0, 421.29377497698613, 421.29377497698613],\n", + " [61.171875, 61.171875, 300.64688748849306, 300.64688748849306],\n", + " [2375.0, 2375.0, 2385.0, 2385.0],\n", + " [180.90938124424653, 180.90938124424653, 2380.0, 2380.0],\n", + " [35.0, 35.0, 1280.4546906221233, 1280.4546906221233],\n", + " [25.0, 25.0, 657.7273453110616, 657.7273453110616],\n", + " [15.0, 15.0, 341.3636726555308, 341.3636726555308],\n", + " [5.0, 5.0, 178.1818363277654, 178.1818363277654],\n", + " [2395.0, 2395.0, 2405.0, 2405.0],\n", + " [2455.0, 2455.0, 2465.0, 2465.0],\n", + " [2445.0, 2445.0, 2460.0, 2460.0],\n", + " [2435.0, 2435.0, 2452.5, 2452.5],\n", + " [2485.0, 2485.0, 2495.0, 2495.0],\n", + " [2475.0, 2475.0, 2490.0, 2490.0],\n", + " [2443.75, 2443.75, 2482.5, 2482.5],\n", + " [2425.0, 2425.0, 2463.125, 2463.125],\n", + " [2415.0, 2415.0, 2444.0625, 2444.0625],\n", + " [2505.0, 2505.0, 2515.0, 2515.0],\n", + " [2535.0, 2535.0, 2545.0, 2545.0],\n", + " [2525.0, 2525.0, 2540.0, 2540.0],\n", + " [2565.0, 2565.0, 2575.0, 2575.0],\n", + " [2585.0, 2585.0, 2595.0, 2595.0],\n", + " [2570.0, 2570.0, 2590.0, 2590.0],\n", + " [2555.0, 2555.0, 2580.0, 2580.0],\n", + " [2532.5, 2532.5, 2567.5, 2567.5],\n", + " [2510.0, 2510.0, 2550.0, 2550.0],\n", + " [2429.53125, 2429.53125, 2530.0, 2530.0],\n", + " [2400.0, 2400.0, 2479.765625, 2479.765625],\n", + " [2605.0, 2605.0, 2615.0, 2615.0],\n", + " [2635.0, 2635.0, 2645.0, 2645.0],\n", + " [2675.0, 2675.0, 2685.0, 2685.0],\n", + " [2665.0, 2665.0, 2680.0, 2680.0],\n", + " [2695.0, 2695.0, 2705.0, 2705.0],\n", + " [2735.0, 2735.0, 2745.0, 2745.0],\n", + " [2725.0, 2725.0, 2740.0, 2740.0],\n", + " [2715.0, 2715.0, 2732.5, 2732.5],\n", + " [2700.0, 2700.0, 2723.75, 2723.75],\n", + " [2672.5, 2672.5, 2711.875, 2711.875],\n", + " [2655.0, 2655.0, 2692.1875, 2692.1875],\n", + " [2640.0, 2640.0, 2673.59375, 2673.59375],\n", + " [2775.0, 2775.0, 2785.0, 2785.0],\n", + " [2765.0, 2765.0, 2780.0, 2780.0],\n", + " [2755.0, 2755.0, 2772.5, 2772.5],\n", + " [2795.0, 2795.0, 2805.0, 2805.0],\n", + " [2763.75, 2763.75, 2800.0, 2800.0],\n", + " [2905.0, 2905.0, 2915.0, 2915.0],\n", + " [2895.0, 2895.0, 2910.0, 2910.0],\n", + " [2955.0, 2955.0, 2965.0, 2965.0],\n", + " [2945.0, 2945.0, 2960.0, 2960.0],\n", + " [2975.0, 2975.0, 2985.0, 2985.0],\n", + " [2952.5, 2952.5, 2980.0, 2980.0],\n", + " [2935.0, 2935.0, 2966.25, 2966.25],\n", + " [2925.0, 2925.0, 2950.625, 2950.625],\n", + " [2902.5, 2902.5, 2937.8125, 2937.8125],\n", + " [2885.0, 2885.0, 2920.15625, 2920.15625],\n", + " [2875.0, 2875.0, 2902.578125, 2902.578125],\n", + " [2865.0, 2865.0, 2888.7890625, 2888.7890625],\n", + " [3005.0, 3005.0, 3015.0, 3015.0],\n", + " [2995.0, 2995.0, 3010.0, 3010.0],\n", + " [3055.0, 3055.0, 3065.0, 3065.0],\n", + " [3045.0, 3045.0, 3060.0, 3060.0],\n", + " [3035.0, 3035.0, 3052.5, 3052.5],\n", + " [3025.0, 3025.0, 3043.75, 3043.75],\n", + " [3002.5, 3002.5, 3034.375, 3034.375],\n", + " [2876.89453125, 2876.89453125, 3018.4375, 3018.4375],\n", + " [2855.0, 2855.0, 2947.666015625, 2947.666015625],\n", + " [2845.0, 2845.0, 2901.3330078125, 2901.3330078125],\n", + " [2835.0, 2835.0, 2873.16650390625, 2873.16650390625],\n", + " [2825.0, 2825.0, 2854.083251953125, 2854.083251953125],\n", + " [3085.0, 3085.0, 3095.0, 3095.0],\n", + " [3125.0, 3125.0, 3135.0, 3135.0],\n", + " [3145.0, 3145.0, 3155.0, 3155.0],\n", + " [3130.0, 3130.0, 3150.0, 3150.0],\n", + " [3115.0, 3115.0, 3140.0, 3140.0],\n", + " [3105.0, 3105.0, 3127.5, 3127.5],\n", + " [3090.0, 3090.0, 3116.25, 3116.25],\n", + " [3165.0, 3165.0, 3175.0, 3175.0],\n", + " [3103.125, 3103.125, 3170.0, 3170.0],\n", + " [3075.0, 3075.0, 3136.5625, 3136.5625],\n", + " [2839.5416259765625, 2839.5416259765625, 3105.78125, 3105.78125],\n", + " [2815.0, 2815.0, 2972.6614379882812, 2972.6614379882812],\n", + " [3205.0, 3205.0, 3215.0, 3215.0],\n", + " [3195.0, 3195.0, 3210.0, 3210.0],\n", + " [3185.0, 3185.0, 3202.5, 3202.5],\n", + " [2893.8307189941406, 2893.8307189941406, 3193.75, 3193.75],\n", + " [3245.0, 3245.0, 3255.0, 3255.0],\n", + " [3265.0, 3265.0, 3275.0, 3275.0],\n", + " [3285.0, 3285.0, 3295.0, 3295.0],\n", + " [3355.0, 3355.0, 3365.0, 3365.0],\n", + " [3345.0, 3345.0, 3360.0, 3360.0],\n", + " [3335.0, 3335.0, 3352.5, 3352.5],\n", + " [3325.0, 3325.0, 3343.75, 3343.75],\n", + " [3315.0, 3315.0, 3334.375, 3334.375],\n", + " [3305.0, 3305.0, 3324.6875, 3324.6875],\n", + " [3375.0, 3375.0, 3385.0, 3385.0],\n", + " [3314.84375, 3314.84375, 3380.0, 3380.0],\n", + " [3290.0, 3290.0, 3347.421875, 3347.421875],\n", + " [3270.0, 3270.0, 3318.7109375, 3318.7109375],\n", + " [3250.0, 3250.0, 3294.35546875, 3294.35546875],\n", + " [3235.0, 3235.0, 3272.177734375, 3272.177734375],\n", + " [3405.0, 3405.0, 3415.0, 3415.0],\n", + " [3395.0, 3395.0, 3410.0, 3410.0],\n", + " [3465.0, 3465.0, 3475.0, 3475.0],\n", + " [3455.0, 3455.0, 3470.0, 3470.0],\n", + " [3445.0, 3445.0, 3462.5, 3462.5],\n", + " [3435.0, 3435.0, 3453.75, 3453.75],\n", + " [3425.0, 3425.0, 3444.375, 3444.375],\n", + " [3402.5, 3402.5, 3434.6875, 3434.6875],\n", + " [3253.5888671875, 3253.5888671875, 3418.59375, 3418.59375],\n", + " [3505.0, 3505.0, 3515.0, 3515.0],\n", + " [3535.0, 3535.0, 3545.0, 3545.0],\n", + " [3525.0, 3525.0, 3540.0, 3540.0],\n", + " [3565.0, 3565.0, 3575.0, 3575.0],\n", + " [3595.0, 3595.0, 3605.0, 3605.0],\n", + " [3625.0, 3625.0, 3635.0, 3635.0],\n", + " [3645.0, 3645.0, 3655.0, 3655.0],\n", + " [3685.0, 3685.0, 3695.0, 3695.0],\n", + " [3675.0, 3675.0, 3690.0, 3690.0],\n", + " [3665.0, 3665.0, 3682.5, 3682.5],\n", + " [3650.0, 3650.0, 3673.75, 3673.75],\n", + " [3630.0, 3630.0, 3661.875, 3661.875],\n", + " [3745.0, 3745.0, 3755.0, 3755.0],\n", + " [3735.0, 3735.0, 3750.0, 3750.0],\n", + " [3725.0, 3725.0, 3742.5, 3742.5],\n", + " [3715.0, 3715.0, 3733.75, 3733.75],\n", + " [3705.0, 3705.0, 3724.375, 3724.375],\n", + " [3645.9375, 3645.9375, 3714.6875, 3714.6875],\n", + " [3795.0, 3795.0, 3805.0, 3805.0],\n", + " [3785.0, 3785.0, 3800.0, 3800.0],\n", + " [3775.0, 3775.0, 3792.5, 3792.5],\n", + " [3815.0, 3815.0, 3825.0, 3825.0],\n", + " [3835.0, 3835.0, 3845.0, 3845.0],\n", + " [3855.0, 3855.0, 3865.0, 3865.0],\n", + " [3840.0, 3840.0, 3860.0, 3860.0],\n", + " [3885.0, 3885.0, 3895.0, 3895.0],\n", + " [3925.0, 3925.0, 3935.0, 3935.0],\n", + " [3915.0, 3915.0, 3930.0, 3930.0],\n", + " [3945.0, 3945.0, 3955.0, 3955.0],\n", + " [4025.0, 4025.0, 4035.0, 4035.0],\n", + " [4015.0, 4015.0, 4030.0, 4030.0],\n", + " [4005.0, 4005.0, 4022.5, 4022.5],\n", + " [3995.0, 3995.0, 4013.75, 4013.75],\n", + " [3985.0, 3985.0, 4004.375, 4004.375],\n", + " [3975.0, 3975.0, 3994.6875, 3994.6875],\n", + " [3965.0, 3965.0, 3984.84375, 3984.84375],\n", + " [3950.0, 3950.0, 3974.921875, 3974.921875],\n", + " [3922.5, 3922.5, 3962.4609375, 3962.4609375],\n", + " [3905.0, 3905.0, 3942.48046875, 3942.48046875],\n", + " [3890.0, 3890.0, 3923.740234375, 3923.740234375],\n", + " [3875.0, 3875.0, 3906.8701171875, 3906.8701171875],\n", + " [3850.0, 3850.0, 3890.93505859375, 3890.93505859375],\n", + " [3820.0, 3820.0, 3870.467529296875, 3870.467529296875],\n", + " [3783.75, 3783.75, 3845.2337646484375, 3845.2337646484375],\n", + " [3765.0, 3765.0, 3814.4918823242188, 3814.4918823242188],\n", + " [3680.3125, 3680.3125, 3789.7459411621094, 3789.7459411621094],\n", + " [3615.0, 3615.0, 3735.0292205810547, 3735.0292205810547],\n", + " [3600.0, 3600.0, 3675.0146102905273, 3675.0146102905273],\n", + " [3585.0, 3585.0, 3637.5073051452637, 3637.5073051452637],\n", + " [3570.0, 3570.0, 3611.253652572632, 3611.253652572632],\n", + " [3555.0, 3555.0, 3590.626826286316, 3590.626826286316],\n", + " [3532.5, 3532.5, 3572.813413143158, 3572.813413143158],\n", + " [3510.0, 3510.0, 3552.656706571579, 3552.656706571579],\n", + " [3495.0, 3495.0, 3531.3283532857895, 3531.3283532857895],\n", + " [3485.0, 3485.0, 3513.1641766428947, 3513.1641766428947],\n", + " [4055.0, 4055.0, 4065.0, 4065.0],\n", + " [4045.0, 4045.0, 4060.0, 4060.0],\n", + " [3499.0820883214474, 3499.0820883214474, 4052.5, 4052.5],\n", + " [4085.0, 4085.0, 4095.0, 4095.0],\n", + " [4075.0, 4075.0, 4090.0, 4090.0],\n", + " [3775.7910441607237, 3775.7910441607237, 4082.5, 4082.5],\n", + " [3336.09130859375, 3336.09130859375, 3929.145522080362, 3929.145522080362],\n", + " [3225.0, 3225.0, 3632.618415337056, 3632.618415337056],\n", + " [3043.7903594970703,\n", + " 3043.7903594970703,\n", + " 3428.809207668528,\n", + " 3428.809207668528],\n", + " [2781.875, 2781.875, 3236.299783582799, 3236.299783582799],\n", + " [4115.0, 4115.0, 4125.0, 4125.0],\n", + " [4105.0, 4105.0, 4120.0, 4120.0],\n", + " [4145.0, 4145.0, 4155.0, 4155.0],\n", + " [4195.0, 4195.0, 4205.0, 4205.0],\n", + " [4285.0, 4285.0, 4295.0, 4295.0],\n", + " [4275.0, 4275.0, 4290.0, 4290.0],\n", + " [4265.0, 4265.0, 4282.5, 4282.5],\n", + " [4325.0, 4325.0, 4335.0, 4335.0],\n", + " [4345.0, 4345.0, 4355.0, 4355.0],\n", + " [4330.0, 4330.0, 4350.0, 4350.0],\n", + " [4315.0, 4315.0, 4340.0, 4340.0],\n", + " [4305.0, 4305.0, 4327.5, 4327.5],\n", + " [4273.75, 4273.75, 4316.25, 4316.25],\n", + " [4365.0, 4365.0, 4375.0, 4375.0],\n", + " [4385.0, 4385.0, 4395.0, 4395.0],\n", + " [4405.0, 4405.0, 4415.0, 4415.0],\n", + " [4390.0, 4390.0, 4410.0, 4410.0],\n", + " [4465.0, 4465.0, 4475.0, 4475.0],\n", + " [4455.0, 4455.0, 4470.0, 4470.0],\n", + " [4445.0, 4445.0, 4462.5, 4462.5],\n", + " [4435.0, 4435.0, 4453.75, 4453.75],\n", + " [4425.0, 4425.0, 4444.375, 4444.375],\n", + " [4400.0, 4400.0, 4434.6875, 4434.6875],\n", + " [4485.0, 4485.0, 4495.0, 4495.0],\n", + " [4417.34375, 4417.34375, 4490.0, 4490.0],\n", + " [4370.0, 4370.0, 4453.671875, 4453.671875],\n", + " [4295.0, 4295.0, 4411.8359375, 4411.8359375],\n", + " [4255.0, 4255.0, 4353.41796875, 4353.41796875],\n", + " [4245.0, 4245.0, 4304.208984375, 4304.208984375],\n", + " [4505.0, 4505.0, 4515.0, 4515.0],\n", + " [4535.0, 4535.0, 4545.0, 4545.0],\n", + " [4585.0, 4585.0, 4595.0, 4595.0],\n", + " [4575.0, 4575.0, 4590.0, 4590.0],\n", + " [4565.0, 4565.0, 4582.5, 4582.5],\n", + " [4635.0, 4635.0, 4645.0, 4645.0],\n", + " [4625.0, 4625.0, 4640.0, 4640.0],\n", + " [4615.0, 4615.0, 4632.5, 4632.5],\n", + " [4605.0, 4605.0, 4623.75, 4623.75],\n", + " [4573.75, 4573.75, 4614.375, 4614.375],\n", + " [4655.0, 4655.0, 4665.0, 4665.0],\n", + " [4675.0, 4675.0, 4685.0, 4685.0],\n", + " [4715.0, 4715.0, 4725.0, 4725.0],\n", + " [4745.0, 4745.0, 4755.0, 4755.0],\n", + " [4775.0, 4775.0, 4785.0, 4785.0],\n", + " [4795.0, 4795.0, 4805.0, 4805.0],\n", + " [4780.0, 4780.0, 4800.0, 4800.0],\n", + " [4765.0, 4765.0, 4790.0, 4790.0],\n", + " [4815.0, 4815.0, 4825.0, 4825.0],\n", + " [4777.5, 4777.5, 4820.0, 4820.0],\n", + " [4750.0, 4750.0, 4798.75, 4798.75],\n", + " [4735.0, 4735.0, 4774.375, 4774.375],\n", + " [4720.0, 4720.0, 4754.6875, 4754.6875],\n", + " [4705.0, 4705.0, 4737.34375, 4737.34375],\n", + " [4695.0, 4695.0, 4721.171875, 4721.171875],\n", + " [4680.0, 4680.0, 4708.0859375, 4708.0859375],\n", + " [4660.0, 4660.0, 4694.04296875, 4694.04296875],\n", + " [4594.0625, 4594.0625, 4677.021484375, 4677.021484375],\n", + " [4855.0, 4855.0, 4865.0, 4865.0],\n", + " [4845.0, 4845.0, 4860.0, 4860.0],\n", + " [4835.0, 4835.0, 4852.5, 4852.5],\n", + " [4635.5419921875, 4635.5419921875, 4843.75, 4843.75],\n", + " [4555.0, 4555.0, 4739.64599609375, 4739.64599609375],\n", + " [4875.0, 4875.0, 4885.0, 4885.0],\n", + " [4925.0, 4925.0, 4935.0, 4935.0],\n", + " [4915.0, 4915.0, 4930.0, 4930.0],\n", + " [4905.0, 4905.0, 4922.5, 4922.5],\n", + " [4895.0, 4895.0, 4913.75, 4913.75],\n", + " [4965.0, 4965.0, 4975.0, 4975.0],\n", + " [4955.0, 4955.0, 4970.0, 4970.0],\n", + " [4985.0, 4985.0, 4995.0, 4995.0],\n", + " [4962.5, 4962.5, 4990.0, 4990.0],\n", + " [4945.0, 4945.0, 4976.25, 4976.25],\n", + " [4904.375, 4904.375, 4960.625, 4960.625],\n", + " [4880.0, 4880.0, 4932.5, 4932.5],\n", + " [5015.0, 5015.0, 5025.0, 5025.0],\n", + " [5005.0, 5005.0, 5020.0, 5020.0],\n", + " [4906.25, 4906.25, 5012.5, 5012.5],\n", + " [4647.322998046875, 4647.322998046875, 4959.375, 4959.375],\n", + " [4540.0, 4540.0, 4803.3489990234375, 4803.3489990234375],\n", + " [4525.0, 4525.0, 4671.674499511719, 4671.674499511719],\n", + " [4510.0, 4510.0, 4598.337249755859, 4598.337249755859],\n", + " [4274.6044921875, 4274.6044921875, 4554.16862487793, 4554.16862487793],\n", + " [4235.0, 4235.0, 4414.386558532715, 4414.386558532715],\n", + " [4225.0, 4225.0, 4324.693279266357, 4324.693279266357],\n", + " [4215.0, 4215.0, 4274.846639633179, 4274.846639633179],\n", + " [4200.0, 4200.0, 4244.923319816589, 4244.923319816589],\n", + " [4185.0, 4185.0, 4222.461659908295, 4222.461659908295],\n", + " [4175.0, 4175.0, 4203.730829954147, 4203.730829954147],\n", + " [4165.0, 4165.0, 4189.365414977074, 4189.365414977074],\n", + " [4150.0, 4150.0, 4177.182707488537, 4177.182707488537],\n", + " [5045.0, 5045.0, 5055.0, 5055.0],\n", + " [5035.0, 5035.0, 5050.0, 5050.0],\n", + " [4163.591353744268, 4163.591353744268, 5042.5, 5042.5],\n", + " [4135.0, 4135.0, 4603.045676872134, 4603.045676872134],\n", + " [4112.5, 4112.5, 4369.022838436067, 4369.022838436067],\n", + " [5085.0, 5085.0, 5095.0, 5095.0],\n", + " [5075.0, 5075.0, 5090.0, 5090.0],\n", + " [5065.0, 5065.0, 5082.5, 5082.5],\n", + " [5135.0, 5135.0, 5145.0, 5145.0],\n", + " [5155.0, 5155.0, 5165.0, 5165.0],\n", + " [5185.0, 5185.0, 5195.0, 5195.0],\n", + " [5215.0, 5215.0, 5225.0, 5225.0],\n", + " [5205.0, 5205.0, 5220.0, 5220.0],\n", + " [5190.0, 5190.0, 5212.5, 5212.5],\n", + " [5255.0, 5255.0, 5265.0, 5265.0],\n", + " [5295.0, 5295.0, 5305.0, 5305.0],\n", + " [5285.0, 5285.0, 5300.0, 5300.0],\n", + " [5275.0, 5275.0, 5292.5, 5292.5],\n", + " [5260.0, 5260.0, 5283.75, 5283.75],\n", + " [5245.0, 5245.0, 5271.875, 5271.875],\n", + " [5325.0, 5325.0, 5335.0, 5335.0],\n", + " [5315.0, 5315.0, 5330.0, 5330.0],\n", + " [5258.4375, 5258.4375, 5322.5, 5322.5],\n", + " [5355.0, 5355.0, 5365.0, 5365.0],\n", + " [5425.0, 5425.0, 5435.0, 5435.0],\n", + " [5415.0, 5415.0, 5430.0, 5430.0],\n", + " [5405.0, 5405.0, 5422.5, 5422.5],\n", + " [5395.0, 5395.0, 5413.75, 5413.75],\n", + " [5385.0, 5385.0, 5404.375, 5404.375],\n", + " [5375.0, 5375.0, 5394.6875, 5394.6875],\n", + " [5360.0, 5360.0, 5384.84375, 5384.84375],\n", + " [5445.0, 5445.0, 5455.0, 5455.0],\n", + " [5475.0, 5475.0, 5485.0, 5485.0],\n", + " [5465.0, 5465.0, 5480.0, 5480.0],\n", + " [5495.0, 5495.0, 5505.0, 5505.0],\n", + " [5575.0, 5575.0, 5585.0, 5585.0],\n", + " [5565.0, 5565.0, 5580.0, 5580.0],\n", + " [5555.0, 5555.0, 5572.5, 5572.5],\n", + " [5545.0, 5545.0, 5563.75, 5563.75],\n", + " [5605.0, 5605.0, 5615.0, 5615.0],\n", + " [5595.0, 5595.0, 5610.0, 5610.0],\n", + " [5554.375, 5554.375, 5602.5, 5602.5],\n", + " [5535.0, 5535.0, 5578.4375, 5578.4375],\n", + " [5525.0, 5525.0, 5556.71875, 5556.71875],\n", + " [5515.0, 5515.0, 5540.859375, 5540.859375],\n", + " [5500.0, 5500.0, 5527.9296875, 5527.9296875],\n", + " [5472.5, 5472.5, 5513.96484375, 5513.96484375],\n", + " [5450.0, 5450.0, 5493.232421875, 5493.232421875],\n", + " [5372.421875, 5372.421875, 5471.6162109375, 5471.6162109375],\n", + " [5345.0, 5345.0, 5422.01904296875, 5422.01904296875],\n", + " [5290.46875, 5290.46875, 5383.509521484375, 5383.509521484375],\n", + " [5235.0, 5235.0, 5336.9891357421875, 5336.9891357421875],\n", + " [5201.25, 5201.25, 5285.994567871094, 5285.994567871094],\n", + " [5175.0, 5175.0, 5243.622283935547, 5243.622283935547],\n", + " [5635.0, 5635.0, 5645.0, 5645.0],\n", + " [5625.0, 5625.0, 5640.0, 5640.0],\n", + " [5665.0, 5665.0, 5675.0, 5675.0],\n", + " [5655.0, 5655.0, 5670.0, 5670.0],\n", + " [5705.0, 5705.0, 5715.0, 5715.0],\n", + " [5695.0, 5695.0, 5710.0, 5710.0],\n", + " [5685.0, 5685.0, 5702.5, 5702.5],\n", + " [5662.5, 5662.5, 5693.75, 5693.75],\n", + " [5632.5, 5632.5, 5678.125, 5678.125],\n", + " [5209.311141967773, 5209.311141967773, 5655.3125, 5655.3125],\n", + " [5160.0, 5160.0, 5432.311820983887, 5432.311820983887],\n", + " [5140.0, 5140.0, 5296.155910491943, 5296.155910491943],\n", + " [5125.0, 5125.0, 5218.077955245972, 5218.077955245972],\n", + " [5115.0, 5115.0, 5171.538977622986, 5171.538977622986],\n", + " [5735.0, 5735.0, 5745.0, 5745.0],\n", + " [5725.0, 5725.0, 5740.0, 5740.0],\n", + " [5143.269488811493, 5143.269488811493, 5732.5, 5732.5],\n", + " [5755.0, 5755.0, 5765.0, 5765.0],\n", + " [5795.0, 5795.0, 5805.0, 5805.0],\n", + " [5785.0, 5785.0, 5800.0, 5800.0],\n", + " [5775.0, 5775.0, 5792.5, 5792.5],\n", + " [5815.0, 5815.0, 5825.0, 5825.0],\n", + " [5855.0, 5855.0, 5865.0, 5865.0],\n", + " [5845.0, 5845.0, 5860.0, 5860.0],\n", + " [5875.0, 5875.0, 5885.0, 5885.0],\n", + " [5852.5, 5852.5, 5880.0, 5880.0],\n", + " [5915.0, 5915.0, 5925.0, 5925.0],\n", + " [5905.0, 5905.0, 5920.0, 5920.0],\n", + " [5955.0, 5955.0, 5965.0, 5965.0],\n", + " [5945.0, 5945.0, 5960.0, 5960.0],\n", + " [5935.0, 5935.0, 5952.5, 5952.5],\n", + " [5912.5, 5912.5, 5943.75, 5943.75],\n", + " [5895.0, 5895.0, 5928.125, 5928.125],\n", + " [5866.25, 5866.25, 5911.5625, 5911.5625],\n", + " [5835.0, 5835.0, 5888.90625, 5888.90625],\n", + " [5820.0, 5820.0, 5861.953125, 5861.953125],\n", + " [5783.75, 5783.75, 5840.9765625, 5840.9765625],\n", + " [5985.0, 5985.0, 5995.0, 5995.0],\n", + " [5975.0, 5975.0, 5990.0, 5990.0],\n", + " [5812.36328125, 5812.36328125, 5982.5, 5982.5],\n", + " [5760.0, 5760.0, 5897.431640625, 5897.431640625],\n", + " [5437.8847444057465, 5437.8847444057465, 5828.7158203125, 5828.7158203125],\n", + " [5105.0, 5105.0, 5633.300282359123, 5633.300282359123],\n", + " [6065.0, 6065.0, 6075.0, 6075.0],\n", + " [6055.0, 6055.0, 6070.0, 6070.0],\n", + " [6045.0, 6045.0, 6062.5, 6062.5],\n", + " [6085.0, 6085.0, 6095.0, 6095.0],\n", + " [6115.0, 6115.0, 6125.0, 6125.0],\n", + " [6165.0, 6165.0, 6175.0, 6175.0],\n", + " [6215.0, 6215.0, 6225.0, 6225.0],\n", + " [6205.0, 6205.0, 6220.0, 6220.0],\n", + " [6195.0, 6195.0, 6212.5, 6212.5],\n", + " [6185.0, 6185.0, 6203.75, 6203.75],\n", + " [6170.0, 6170.0, 6194.375, 6194.375],\n", + " [6155.0, 6155.0, 6182.1875, 6182.1875],\n", + " [6145.0, 6145.0, 6168.59375, 6168.59375],\n", + " [6235.0, 6235.0, 6245.0, 6245.0],\n", + " [6265.0, 6265.0, 6275.0, 6275.0],\n", + " [6285.0, 6285.0, 6295.0, 6295.0],\n", + " [6270.0, 6270.0, 6290.0, 6290.0],\n", + " [6255.0, 6255.0, 6280.0, 6280.0],\n", + " [6345.0, 6345.0, 6355.0, 6355.0],\n", + " [6335.0, 6335.0, 6350.0, 6350.0],\n", + " [6325.0, 6325.0, 6342.5, 6342.5],\n", + " [6315.0, 6315.0, 6333.75, 6333.75],\n", + " [6375.0, 6375.0, 6385.0, 6385.0],\n", + " [6365.0, 6365.0, 6380.0, 6380.0],\n", + " [6324.375, 6324.375, 6372.5, 6372.5],\n", + " [6305.0, 6305.0, 6348.4375, 6348.4375],\n", + " [6267.5, 6267.5, 6326.71875, 6326.71875],\n", + " [6425.0, 6425.0, 6435.0, 6435.0],\n", + " [6415.0, 6415.0, 6430.0, 6430.0],\n", + " [6475.0, 6475.0, 6485.0, 6485.0],\n", + " [6465.0, 6465.0, 6480.0, 6480.0],\n", + " [6455.0, 6455.0, 6472.5, 6472.5],\n", + " [6445.0, 6445.0, 6463.75, 6463.75],\n", + " [6535.0, 6535.0, 6545.0, 6545.0],\n", + " [6525.0, 6525.0, 6540.0, 6540.0],\n", + " [6515.0, 6515.0, 6532.5, 6532.5],\n", + " [6505.0, 6505.0, 6523.75, 6523.75],\n", + " [6495.0, 6495.0, 6514.375, 6514.375],\n", + " [6454.375, 6454.375, 6504.6875, 6504.6875],\n", + " [6422.5, 6422.5, 6479.53125, 6479.53125],\n", + " [6405.0, 6405.0, 6451.015625, 6451.015625],\n", + " [6395.0, 6395.0, 6428.0078125, 6428.0078125],\n", + " [6655.0, 6655.0, 6665.0, 6665.0],\n", + " [6705.0, 6705.0, 6715.0, 6715.0],\n", + " [6695.0, 6695.0, 6710.0, 6710.0],\n", + " [6685.0, 6685.0, 6702.5, 6702.5],\n", + " [6735.0, 6735.0, 6745.0, 6745.0],\n", + " [6765.0, 6765.0, 6775.0, 6775.0],\n", + " [6755.0, 6755.0, 6770.0, 6770.0],\n", + " [6740.0, 6740.0, 6762.5, 6762.5],\n", + " [6805.0, 6805.0, 6815.0, 6815.0],\n", + " [6795.0, 6795.0, 6810.0, 6810.0],\n", + " [6785.0, 6785.0, 6802.5, 6802.5],\n", + " [6751.25, 6751.25, 6793.75, 6793.75],\n", + " [6725.0, 6725.0, 6772.5, 6772.5],\n", + " [6865.0, 6865.0, 6875.0, 6875.0],\n", + " [6855.0, 6855.0, 6870.0, 6870.0],\n", + " [6845.0, 6845.0, 6862.5, 6862.5],\n", + " [6835.0, 6835.0, 6853.75, 6853.75],\n", + " [6895.0, 6895.0, 6905.0, 6905.0],\n", + " [6915.0, 6915.0, 6925.0, 6925.0],\n", + " [6900.0, 6900.0, 6920.0, 6920.0],\n", + " [6885.0, 6885.0, 6910.0, 6910.0],\n", + " [6844.375, 6844.375, 6897.5, 6897.5],\n", + " [6945.0, 6945.0, 6955.0, 6955.0],\n", + " [6975.0, 6975.0, 6985.0, 6985.0],\n", + " [6965.0, 6965.0, 6980.0, 6980.0],\n", + " [6950.0, 6950.0, 6972.5, 6972.5],\n", + " [6995.0, 6995.0, 7005.0, 7005.0],\n", + " [7015.0, 7015.0, 7025.0, 7025.0],\n", + " [7000.0, 7000.0, 7020.0, 7020.0],\n", + " [6961.25, 6961.25, 7010.0, 7010.0],\n", + " [6935.0, 6935.0, 6985.625, 6985.625],\n", + " [6870.9375, 6870.9375, 6960.3125, 6960.3125],\n", + " [6825.0, 6825.0, 6915.625, 6915.625],\n", + " [6748.75, 6748.75, 6870.3125, 6870.3125],\n", + " [6693.75, 6693.75, 6809.53125, 6809.53125],\n", + " [6675.0, 6675.0, 6751.640625, 6751.640625],\n", + " [6660.0, 6660.0, 6713.3203125, 6713.3203125],\n", + " [6645.0, 6645.0, 6686.66015625, 6686.66015625],\n", + " [7055.0, 7055.0, 7065.0, 7065.0],\n", + " [7115.0, 7115.0, 7125.0, 7125.0],\n", + " [7105.0, 7105.0, 7120.0, 7120.0],\n", + " [7095.0, 7095.0, 7112.5, 7112.5],\n", + " [7085.0, 7085.0, 7103.75, 7103.75],\n", + " [7075.0, 7075.0, 7094.375, 7094.375],\n", + " [7145.0, 7145.0, 7155.0, 7155.0],\n", + " [7135.0, 7135.0, 7150.0, 7150.0],\n", + " [7084.6875, 7084.6875, 7142.5, 7142.5],\n", + " [7175.0, 7175.0, 7185.0, 7185.0],\n", + " [7165.0, 7165.0, 7180.0, 7180.0],\n", + " [7195.0, 7195.0, 7205.0, 7205.0],\n", + " [7215.0, 7215.0, 7225.0, 7225.0],\n", + " [7200.0, 7200.0, 7220.0, 7220.0],\n", + " [7235.0, 7235.0, 7245.0, 7245.0],\n", + " [7255.0, 7255.0, 7265.0, 7265.0],\n", + " [7240.0, 7240.0, 7260.0, 7260.0],\n", + " [7295.0, 7295.0, 7305.0, 7305.0],\n", + " [7365.0, 7365.0, 7375.0, 7375.0],\n", + " [7355.0, 7355.0, 7370.0, 7370.0],\n", + " [7345.0, 7345.0, 7362.5, 7362.5],\n", + " [7335.0, 7335.0, 7353.75, 7353.75],\n", + " [7415.0, 7415.0, 7425.0, 7425.0],\n", + " [7435.0, 7435.0, 7445.0, 7445.0],\n", + " [7485.0, 7485.0, 7495.0, 7495.0],\n", + " [7505.0, 7505.0, 7515.0, 7515.0],\n", + " [7545.0, 7545.0, 7555.0, 7555.0],\n", + " [7535.0, 7535.0, 7550.0, 7550.0],\n", + " [7525.0, 7525.0, 7542.5, 7542.5],\n", + " [7510.0, 7510.0, 7533.75, 7533.75],\n", + " [7490.0, 7490.0, 7521.875, 7521.875],\n", + " [7475.0, 7475.0, 7505.9375, 7505.9375],\n", + " [7465.0, 7465.0, 7490.46875, 7490.46875],\n", + " [7585.0, 7585.0, 7595.0, 7595.0],\n", + " [7575.0, 7575.0, 7590.0, 7590.0],\n", + " [7615.0, 7615.0, 7625.0, 7625.0],\n", + " [7605.0, 7605.0, 7620.0, 7620.0],\n", + " [7582.5, 7582.5, 7612.5, 7612.5],\n", + " [7565.0, 7565.0, 7597.5, 7597.5],\n", + " [7477.734375, 7477.734375, 7581.25, 7581.25],\n", + " [7455.0, 7455.0, 7529.4921875, 7529.4921875],\n", + " [7440.0, 7440.0, 7492.24609375, 7492.24609375],\n", + " [7635.0, 7635.0, 7645.0, 7645.0],\n", + " [7665.0, 7665.0, 7675.0, 7675.0],\n", + " [7655.0, 7655.0, 7670.0, 7670.0],\n", + " [7685.0, 7685.0, 7695.0, 7695.0],\n", + " [7725.0, 7725.0, 7735.0, 7735.0],\n", + " [7715.0, 7715.0, 7730.0, 7730.0],\n", + " [7705.0, 7705.0, 7722.5, 7722.5],\n", + " [7690.0, 7690.0, 7713.75, 7713.75],\n", + " [7662.5, 7662.5, 7701.875, 7701.875],\n", + " [7640.0, 7640.0, 7682.1875, 7682.1875],\n", + " [7466.123046875, 7466.123046875, 7661.09375, 7661.09375],\n", + " [7765.0, 7765.0, 7775.0, 7775.0],\n", + " [7755.0, 7755.0, 7770.0, 7770.0],\n", + " [7745.0, 7745.0, 7762.5, 7762.5],\n", + " [7815.0, 7815.0, 7825.0, 7825.0],\n", + " [7805.0, 7805.0, 7820.0, 7820.0],\n", + " [7795.0, 7795.0, 7812.5, 7812.5],\n", + " [7785.0, 7785.0, 7803.75, 7803.75],\n", + " [7845.0, 7845.0, 7855.0, 7855.0],\n", + " [7835.0, 7835.0, 7850.0, 7850.0],\n", + " [7915.0, 7915.0, 7925.0, 7925.0],\n", + " [7905.0, 7905.0, 7920.0, 7920.0],\n", + " [7895.0, 7895.0, 7912.5, 7912.5],\n", + " [7935.0, 7935.0, 7945.0, 7945.0],\n", + " [7903.75, 7903.75, 7940.0, 7940.0],\n", + " [7965.0, 7965.0, 7975.0, 7975.0],\n", + " [7995.0, 7995.0, 8005.0, 8005.0],\n", + " [7985.0, 7985.0, 8000.0, 8000.0],\n", + " [8025.0, 8025.0, 8035.0, 8035.0],\n", + " [8015.0, 8015.0, 8030.0, 8030.0],\n", + " [8045.0, 8045.0, 8055.0, 8055.0],\n", + " [8022.5, 8022.5, 8050.0, 8050.0],\n", + " [8065.0, 8065.0, 8075.0, 8075.0],\n", + " [8036.25, 8036.25, 8070.0, 8070.0],\n", + " [7992.5, 7992.5, 8053.125, 8053.125],\n", + " [7970.0, 7970.0, 8022.8125, 8022.8125],\n", + " [8115.0, 8115.0, 8125.0, 8125.0],\n", + " [8135.0, 8135.0, 8145.0, 8145.0],\n", + " [8120.0, 8120.0, 8140.0, 8140.0],\n", + " [8155.0, 8155.0, 8165.0, 8165.0],\n", + " [8175.0, 8175.0, 8185.0, 8185.0],\n", + " [8215.0, 8215.0, 8225.0, 8225.0],\n", + " [8205.0, 8205.0, 8220.0, 8220.0],\n", + " [8195.0, 8195.0, 8212.5, 8212.5],\n", + " [8180.0, 8180.0, 8203.75, 8203.75],\n", + " [8160.0, 8160.0, 8191.875, 8191.875],\n", + " [8130.0, 8130.0, 8175.9375, 8175.9375],\n", + " [8105.0, 8105.0, 8152.96875, 8152.96875],\n", + " [8095.0, 8095.0, 8128.984375, 8128.984375],\n", + " [8085.0, 8085.0, 8111.9921875, 8111.9921875],\n", + " [7996.40625, 7996.40625, 8098.49609375, 8098.49609375],\n", + " [7955.0, 7955.0, 8047.451171875, 8047.451171875],\n", + " [7921.875, 7921.875, 8001.2255859375, 8001.2255859375],\n", + " [7885.0, 7885.0, 7961.55029296875, 7961.55029296875],\n", + " [7875.0, 7875.0, 7923.275146484375, 7923.275146484375],\n", + " [7865.0, 7865.0, 7899.1375732421875, 7899.1375732421875],\n", + " [7842.5, 7842.5, 7882.068786621094, 7882.068786621094],\n", + " [7794.375, 7794.375, 7862.284393310547, 7862.284393310547],\n", + " [7753.75, 7753.75, 7828.329696655273, 7828.329696655273],\n", + " [7563.6083984375, 7563.6083984375, 7791.039848327637, 7791.039848327637],\n", + " [8245.0, 8245.0, 8255.0, 8255.0],\n", + " [8235.0, 8235.0, 8250.0, 8250.0],\n", + " [8265.0, 8265.0, 8275.0, 8275.0],\n", + " [8242.5, 8242.5, 8270.0, 8270.0],\n", + " [8305.0, 8305.0, 8315.0, 8315.0],\n", + " [8325.0, 8325.0, 8335.0, 8335.0],\n", + " [8310.0, 8310.0, 8330.0, 8330.0],\n", + " [8355.0, 8355.0, 8365.0, 8365.0],\n", + " [8345.0, 8345.0, 8360.0, 8360.0],\n", + " [8320.0, 8320.0, 8352.5, 8352.5],\n", + " [8385.0, 8385.0, 8395.0, 8395.0],\n", + " [8375.0, 8375.0, 8390.0, 8390.0],\n", + " [8336.25, 8336.25, 8382.5, 8382.5],\n", + " [8295.0, 8295.0, 8359.375, 8359.375],\n", + " [8445.0, 8445.0, 8455.0, 8455.0],\n", + " [8435.0, 8435.0, 8450.0, 8450.0],\n", + " [8465.0, 8465.0, 8475.0, 8475.0],\n", + " [8442.5, 8442.5, 8470.0, 8470.0],\n", + " [8425.0, 8425.0, 8456.25, 8456.25],\n", + " [8485.0, 8485.0, 8495.0, 8495.0],\n", + " [8515.0, 8515.0, 8525.0, 8525.0],\n", + " [8505.0, 8505.0, 8520.0, 8520.0],\n", + " [8490.0, 8490.0, 8512.5, 8512.5],\n", + " [8440.625, 8440.625, 8501.25, 8501.25],\n", + " [8595.0, 8595.0, 8605.0, 8605.0],\n", + " [8585.0, 8585.0, 8600.0, 8600.0],\n", + " [8575.0, 8575.0, 8592.5, 8592.5],\n", + " [8565.0, 8565.0, 8583.75, 8583.75],\n", + " [8555.0, 8555.0, 8574.375, 8574.375],\n", + " [8545.0, 8545.0, 8564.6875, 8564.6875],\n", + " [8535.0, 8535.0, 8554.84375, 8554.84375],\n", + " [8470.9375, 8470.9375, 8544.921875, 8544.921875],\n", + " [8415.0, 8415.0, 8507.9296875, 8507.9296875],\n", + " [8615.0, 8615.0, 8625.0, 8625.0],\n", + " [8645.0, 8645.0, 8655.0, 8655.0],\n", + " [8635.0, 8635.0, 8650.0, 8650.0],\n", + " [8665.0, 8665.0, 8675.0, 8675.0],\n", + " [8685.0, 8685.0, 8695.0, 8695.0],\n", + " [8715.0, 8715.0, 8725.0, 8725.0],\n", + " [8705.0, 8705.0, 8720.0, 8720.0],\n", + " [8690.0, 8690.0, 8712.5, 8712.5],\n", + " [8670.0, 8670.0, 8701.25, 8701.25],\n", + " [8642.5, 8642.5, 8685.625, 8685.625],\n", + " [8620.0, 8620.0, 8664.0625, 8664.0625],\n", + " [8745.0, 8745.0, 8755.0, 8755.0],\n", + " [8735.0, 8735.0, 8750.0, 8750.0],\n", + " [8642.03125, 8642.03125, 8742.5, 8742.5],\n", + " [8785.0, 8785.0, 8795.0, 8795.0],\n", + " [8775.0, 8775.0, 8790.0, 8790.0],\n", + " [8765.0, 8765.0, 8782.5, 8782.5],\n", + " [8825.0, 8825.0, 8835.0, 8835.0],\n", + " [8815.0, 8815.0, 8830.0, 8830.0],\n", + " [8845.0, 8845.0, 8855.0, 8855.0],\n", + " [8822.5, 8822.5, 8850.0, 8850.0],\n", + " [8805.0, 8805.0, 8836.25, 8836.25],\n", + " [8773.75, 8773.75, 8820.625, 8820.625],\n", + " [8692.265625, 8692.265625, 8797.1875, 8797.1875],\n", + " [8461.46484375, 8461.46484375, 8744.7265625, 8744.7265625],\n", + " [8405.0, 8405.0, 8603.095703125, 8603.095703125],\n", + " [8327.1875, 8327.1875, 8504.0478515625, 8504.0478515625],\n", + " [8285.0, 8285.0, 8415.61767578125, 8415.61767578125],\n", + " [8256.25, 8256.25, 8350.308837890625, 8350.308837890625],\n", + " [7677.324123382568, 7677.324123382568, 8303.279418945312, 8303.279418945312],\n", + " [7420.0, 7420.0, 7990.30177116394, 7990.30177116394],\n", + " [7405.0, 7405.0, 7705.15088558197, 7705.15088558197],\n", + " [7395.0, 7395.0, 7555.075442790985, 7555.075442790985],\n", + " [7385.0, 7385.0, 7475.037721395493, 7475.037721395493],\n", + " [7344.375, 7344.375, 7430.018860697746, 7430.018860697746],\n", + " [7325.0, 7325.0, 7387.196930348873, 7387.196930348873],\n", + " [8885.0, 8885.0, 8895.0, 8895.0],\n", + " [8875.0, 8875.0, 8890.0, 8890.0],\n", + " [8865.0, 8865.0, 8882.5, 8882.5],\n", + " [8915.0, 8915.0, 8925.0, 8925.0],\n", + " [8905.0, 8905.0, 8920.0, 8920.0],\n", + " [8945.0, 8945.0, 8955.0, 8955.0],\n", + " [8935.0, 8935.0, 8950.0, 8950.0],\n", + " [8975.0, 8975.0, 8985.0, 8985.0],\n", + " [9015.0, 9015.0, 9025.0, 9025.0],\n", + " [9055.0, 9055.0, 9065.0, 9065.0],\n", + " [9045.0, 9045.0, 9060.0, 9060.0],\n", + " [9075.0, 9075.0, 9085.0, 9085.0],\n", + " [9052.5, 9052.5, 9080.0, 9080.0],\n", + " [9035.0, 9035.0, 9066.25, 9066.25],\n", + " [9020.0, 9020.0, 9050.625, 9050.625],\n", + " [9105.0, 9105.0, 9115.0, 9115.0],\n", + " [9095.0, 9095.0, 9110.0, 9110.0],\n", + " [9035.3125, 9035.3125, 9102.5, 9102.5],\n", + " [9135.0, 9135.0, 9145.0, 9145.0],\n", + " [9165.0, 9165.0, 9175.0, 9175.0],\n", + " [9185.0, 9185.0, 9195.0, 9195.0],\n", + " [9170.0, 9170.0, 9190.0, 9190.0],\n", + " [9215.0, 9215.0, 9225.0, 9225.0],\n", + " [9275.0, 9275.0, 9285.0, 9285.0],\n", + " [9265.0, 9265.0, 9280.0, 9280.0],\n", + " [9255.0, 9255.0, 9272.5, 9272.5],\n", + " [9245.0, 9245.0, 9263.75, 9263.75],\n", + " [9235.0, 9235.0, 9254.375, 9254.375],\n", + " [9220.0, 9220.0, 9244.6875, 9244.6875],\n", + " [9205.0, 9205.0, 9232.34375, 9232.34375],\n", + " [9180.0, 9180.0, 9218.671875, 9218.671875],\n", + " [9335.0, 9335.0, 9345.0, 9345.0],\n", + " [9325.0, 9325.0, 9340.0, 9340.0],\n", + " [9315.0, 9315.0, 9332.5, 9332.5],\n", + " [9355.0, 9355.0, 9365.0, 9365.0],\n", + " [9385.0, 9385.0, 9395.0, 9395.0],\n", + " [9375.0, 9375.0, 9390.0, 9390.0],\n", + " [9360.0, 9360.0, 9382.5, 9382.5],\n", + " [9415.0, 9415.0, 9425.0, 9425.0],\n", + " [9405.0, 9405.0, 9420.0, 9420.0],\n", + " [9371.25, 9371.25, 9412.5, 9412.5],\n", + " [9323.75, 9323.75, 9391.875, 9391.875],\n", + " [9305.0, 9305.0, 9357.8125, 9357.8125],\n", + " [9445.0, 9445.0, 9455.0, 9455.0],\n", + " [9435.0, 9435.0, 9450.0, 9450.0],\n", + " [9465.0, 9465.0, 9475.0, 9475.0],\n", + " [9495.0, 9495.0, 9505.0, 9505.0],\n", + " [9485.0, 9485.0, 9500.0, 9500.0],\n", + " [9545.0, 9545.0, 9555.0, 9555.0],\n", + " [9565.0, 9565.0, 9575.0, 9575.0],\n", + " [9550.0, 9550.0, 9570.0, 9570.0],\n", + " [9535.0, 9535.0, 9560.0, 9560.0],\n", + " [9525.0, 9525.0, 9547.5, 9547.5],\n", + " [9515.0, 9515.0, 9536.25, 9536.25],\n", + " [9492.5, 9492.5, 9525.625, 9525.625],\n", + " [9470.0, 9470.0, 9509.0625, 9509.0625],\n", + " [9442.5, 9442.5, 9489.53125, 9489.53125],\n", + " [9331.40625, 9331.40625, 9466.015625, 9466.015625],\n", + " [9295.0, 9295.0, 9398.7109375, 9398.7109375],\n", + " [9199.3359375, 9199.3359375, 9346.85546875, 9346.85546875],\n", + " [9155.0, 9155.0, 9273.095703125, 9273.095703125],\n", + " [9140.0, 9140.0, 9214.0478515625, 9214.0478515625],\n", + " [9585.0, 9585.0, 9595.0, 9595.0],\n", + " [9615.0, 9615.0, 9625.0, 9625.0],\n", + " [9645.0, 9645.0, 9655.0, 9655.0],\n", + " [9635.0, 9635.0, 9650.0, 9650.0],\n", + " [9675.0, 9675.0, 9685.0, 9685.0],\n", + " [9705.0, 9705.0, 9715.0, 9715.0],\n", + " [9695.0, 9695.0, 9710.0, 9710.0],\n", + " [9680.0, 9680.0, 9702.5, 9702.5],\n", + " [9665.0, 9665.0, 9691.25, 9691.25],\n", + " [9642.5, 9642.5, 9678.125, 9678.125],\n", + " [9620.0, 9620.0, 9660.3125, 9660.3125],\n", + " [9605.0, 9605.0, 9640.15625, 9640.15625],\n", + " [9735.0, 9735.0, 9745.0, 9745.0],\n", + " [9725.0, 9725.0, 9740.0, 9740.0],\n", + " [9622.578125, 9622.578125, 9732.5, 9732.5],\n", + " [9785.0, 9785.0, 9795.0, 9795.0],\n", + " [9775.0, 9775.0, 9790.0, 9790.0],\n", + " [9765.0, 9765.0, 9782.5, 9782.5],\n", + " [9755.0, 9755.0, 9773.75, 9773.75],\n", + " [9825.0, 9825.0, 9835.0, 9835.0],\n", + " [9855.0, 9855.0, 9865.0, 9865.0],\n", + " [9845.0, 9845.0, 9860.0, 9860.0],\n", + " [9830.0, 9830.0, 9852.5, 9852.5],\n", + " [9905.0, 9905.0, 9915.0, 9915.0],\n", + " [9895.0, 9895.0, 9910.0, 9910.0],\n", + " [9925.0, 9925.0, 9935.0, 9935.0],\n", + " [9955.0, 9955.0, 9965.0, 9965.0],\n", + " [9945.0, 9945.0, 9960.0, 9960.0],\n", + " [9930.0, 9930.0, 9952.5, 9952.5],\n", + " [9902.5, 9902.5, 9941.25, 9941.25],\n", + " [9985.0, 9985.0, 9995.0, 9995.0],\n", + " [9975.0, 9975.0, 9990.0, 9990.0],\n", + " [9921.875, 9921.875, 9982.5, 9982.5],\n", + " [9885.0, 9885.0, 9952.1875, 9952.1875],\n", + " [9875.0, 9875.0, 9918.59375, 9918.59375],\n", + " [9841.25, 9841.25, 9896.796875, 9896.796875],\n", + " [10035.0, 10035.0, 10045.0, 10045.0],\n", + " [10055.0, 10055.0, 10065.0, 10065.0],\n", + " [10040.0, 10040.0, 10060.0, 10060.0],\n", + " [10025.0, 10025.0, 10050.0, 10050.0],\n", + " [10015.0, 10015.0, 10037.5, 10037.5],\n", + " [10085.0, 10085.0, 10095.0, 10095.0],\n", + " [10115.0, 10115.0, 10125.0, 10125.0],\n", + " [10105.0, 10105.0, 10120.0, 10120.0],\n", + " [10145.0, 10145.0, 10155.0, 10155.0],\n", + " [10165.0, 10165.0, 10175.0, 10175.0],\n", + " [10150.0, 10150.0, 10170.0, 10170.0],\n", + " [10135.0, 10135.0, 10160.0, 10160.0],\n", + " [10112.5, 10112.5, 10147.5, 10147.5],\n", + " [10090.0, 10090.0, 10130.0, 10130.0],\n", + " [10075.0, 10075.0, 10110.0, 10110.0],\n", + " [10026.25, 10026.25, 10092.5, 10092.5],\n", + " [10005.0, 10005.0, 10059.375, 10059.375],\n", + " [9869.0234375, 9869.0234375, 10032.1875, 10032.1875],\n", + " [9815.0, 9815.0, 9950.60546875, 9950.60546875],\n", + " [9805.0, 9805.0, 9882.802734375, 9882.802734375],\n", + " [9764.375, 9764.375, 9843.9013671875, 9843.9013671875],\n", + " [9677.5390625, 9677.5390625, 9804.13818359375, 9804.13818359375],\n", + " [9590.0, 9590.0, 9740.838623046875, 9740.838623046875],\n", + " [9177.02392578125, 9177.02392578125, 9665.419311523438, 9665.419311523438],\n", + " [9125.0, 9125.0, 9421.221618652344, 9421.221618652344],\n", + " [10195.0, 10195.0, 10205.0, 10205.0],\n", + " [10235.0, 10235.0, 10245.0, 10245.0],\n", + " [10225.0, 10225.0, 10240.0, 10240.0],\n", + " [10215.0, 10215.0, 10232.5, 10232.5],\n", + " [10200.0, 10200.0, 10223.75, 10223.75],\n", + " [10185.0, 10185.0, 10211.875, 10211.875],\n", + " [10265.0, 10265.0, 10275.0, 10275.0],\n", + " [10255.0, 10255.0, 10270.0, 10270.0],\n", + " [10295.0, 10295.0, 10305.0, 10305.0],\n", + " [10315.0, 10315.0, 10325.0, 10325.0],\n", + " [10300.0, 10300.0, 10320.0, 10320.0],\n", + " [10335.0, 10335.0, 10345.0, 10345.0],\n", + " [10375.0, 10375.0, 10385.0, 10385.0],\n", + " [10415.0, 10415.0, 10425.0, 10425.0],\n", + " [10405.0, 10405.0, 10420.0, 10420.0],\n", + " [10395.0, 10395.0, 10412.5, 10412.5],\n", + " [10435.0, 10435.0, 10445.0, 10445.0],\n", + " [10403.75, 10403.75, 10440.0, 10440.0],\n", + " [10465.0, 10465.0, 10475.0, 10475.0],\n", + " [10455.0, 10455.0, 10470.0, 10470.0],\n", + " [10485.0, 10485.0, 10495.0, 10495.0],\n", + " [10462.5, 10462.5, 10490.0, 10490.0],\n", + " [10421.875, 10421.875, 10476.25, 10476.25],\n", + " [10380.0, 10380.0, 10449.0625, 10449.0625],\n", + " [10525.0, 10525.0, 10535.0, 10535.0],\n", + " [10515.0, 10515.0, 10530.0, 10530.0],\n", + " [10545.0, 10545.0, 10555.0, 10555.0],\n", + " [10522.5, 10522.5, 10550.0, 10550.0],\n", + " [10505.0, 10505.0, 10536.25, 10536.25],\n", + " [10414.53125, 10414.53125, 10520.625, 10520.625],\n", + " [10365.0, 10365.0, 10467.578125, 10467.578125],\n", + " [10355.0, 10355.0, 10416.2890625, 10416.2890625],\n", + " [10340.0, 10340.0, 10385.64453125, 10385.64453125],\n", + " [10310.0, 10310.0, 10362.822265625, 10362.822265625],\n", + " [10285.0, 10285.0, 10336.4111328125, 10336.4111328125],\n", + " [10262.5, 10262.5, 10310.70556640625, 10310.70556640625],\n", + " [10575.0, 10575.0, 10585.0, 10585.0],\n", + " [10565.0, 10565.0, 10580.0, 10580.0],\n", + " [10286.602783203125, 10286.602783203125, 10572.5, 10572.5],\n", + " [10198.4375, 10198.4375, 10429.551391601562, 10429.551391601562],\n", + " [9273.110809326172,\n", + " 9273.110809326172,\n", + " 10313.994445800781,\n", + " 10313.994445800781],\n", + " [9068.90625, 9068.90625, 9793.552627563477, 9793.552627563477],\n", + " [9005.0, 9005.0, 9431.229438781738, 9431.229438781738],\n", + " [8995.0, 8995.0, 9218.11471939087, 9218.11471939087],\n", + " [8980.0, 8980.0, 9106.557359695435, 9106.557359695435],\n", + " [10595.0, 10595.0, 10605.0, 10605.0],\n", + " [10625.0, 10625.0, 10635.0, 10635.0],\n", + " [10615.0, 10615.0, 10630.0, 10630.0],\n", + " [10655.0, 10655.0, 10665.0, 10665.0],\n", + " [10645.0, 10645.0, 10660.0, 10660.0],\n", + " [10685.0, 10685.0, 10695.0, 10695.0],\n", + " [10675.0, 10675.0, 10690.0, 10690.0],\n", + " [10652.5, 10652.5, 10682.5, 10682.5],\n", + " [10622.5, 10622.5, 10667.5, 10667.5],\n", + " [10725.0, 10725.0, 10735.0, 10735.0],\n", + " [10715.0, 10715.0, 10730.0, 10730.0],\n", + " [10705.0, 10705.0, 10722.5, 10722.5],\n", + " [10745.0, 10745.0, 10755.0, 10755.0],\n", + " [10785.0, 10785.0, 10795.0, 10795.0],\n", + " [10775.0, 10775.0, 10790.0, 10790.0],\n", + " [10765.0, 10765.0, 10782.5, 10782.5],\n", + " [10750.0, 10750.0, 10773.75, 10773.75],\n", + " [10713.75, 10713.75, 10761.875, 10761.875],\n", + " [10645.0, 10645.0, 10737.8125, 10737.8125],\n", + " [10825.0, 10825.0, 10835.0, 10835.0],\n", + " [10815.0, 10815.0, 10830.0, 10830.0],\n", + " [10855.0, 10855.0, 10865.0, 10865.0],\n", + " [10845.0, 10845.0, 10860.0, 10860.0],\n", + " [10822.5, 10822.5, 10852.5, 10852.5],\n", + " [10805.0, 10805.0, 10837.5, 10837.5],\n", + " [10691.40625, 10691.40625, 10821.25, 10821.25],\n", + " [10955.0, 10955.0, 10965.0, 10965.0],\n", + " [10945.0, 10945.0, 10960.0, 10960.0],\n", + " [10935.0, 10935.0, 10952.5, 10952.5],\n", + " [10925.0, 10925.0, 10943.75, 10943.75],\n", + " [10915.0, 10915.0, 10934.375, 10934.375],\n", + " [10905.0, 10905.0, 10924.6875, 10924.6875],\n", + " [10895.0, 10895.0, 10914.84375, 10914.84375],\n", + " [10885.0, 10885.0, 10904.921875, 10904.921875],\n", + " [10875.0, 10875.0, 10894.9609375, 10894.9609375],\n", + " [11005.0, 11005.0, 11015.0, 11015.0],\n", + " [10995.0, 10995.0, 11010.0, 11010.0],\n", + " [10985.0, 10985.0, 11002.5, 11002.5],\n", + " [10975.0, 10975.0, 10993.75, 10993.75],\n", + " [11065.0, 11065.0, 11075.0, 11075.0],\n", + " [11155.0, 11155.0, 11165.0, 11165.0],\n", + " [11145.0, 11145.0, 11160.0, 11160.0],\n", + " [11135.0, 11135.0, 11152.5, 11152.5],\n", + " [11125.0, 11125.0, 11143.75, 11143.75],\n", + " [11115.0, 11115.0, 11134.375, 11134.375],\n", + " [11105.0, 11105.0, 11124.6875, 11124.6875],\n", + " [11095.0, 11095.0, 11114.84375, 11114.84375],\n", + " [11085.0, 11085.0, 11104.921875, 11104.921875],\n", + " [11235.0, 11235.0, 11245.0, 11245.0],\n", + " [11225.0, 11225.0, 11240.0, 11240.0],\n", + " [11215.0, 11215.0, 11232.5, 11232.5],\n", + " [11255.0, 11255.0, 11265.0, 11265.0],\n", + " [11275.0, 11275.0, 11285.0, 11285.0],\n", + " [11260.0, 11260.0, 11280.0, 11280.0],\n", + " [11223.75, 11223.75, 11270.0, 11270.0],\n", + " [11205.0, 11205.0, 11246.875, 11246.875],\n", + " [11195.0, 11195.0, 11225.9375, 11225.9375],\n", + " [11335.0, 11335.0, 11345.0, 11345.0],\n", + " [11325.0, 11325.0, 11340.0, 11340.0],\n", + " [11315.0, 11315.0, 11332.5, 11332.5],\n", + " [11305.0, 11305.0, 11323.75, 11323.75],\n", + " [11295.0, 11295.0, 11314.375, 11314.375],\n", + " [11210.46875, 11210.46875, 11304.6875, 11304.6875],\n", + " [11185.0, 11185.0, 11257.578125, 11257.578125],\n", + " [11175.0, 11175.0, 11221.2890625, 11221.2890625],\n", + " [11094.9609375, 11094.9609375, 11198.14453125, 11198.14453125],\n", + " [11070.0, 11070.0, 11146.552734375, 11146.552734375],\n", + " [11055.0, 11055.0, 11108.2763671875, 11108.2763671875],\n", + " [11045.0, 11045.0, 11081.63818359375, 11081.63818359375],\n", + " [11035.0, 11035.0, 11063.319091796875, 11063.319091796875],\n", + " [11025.0, 11025.0, 11049.159545898438, 11049.159545898438],\n", + " [10984.375, 10984.375, 11037.079772949219, 11037.079772949219],\n", + " [10884.98046875, 10884.98046875, 11010.72738647461, 11010.72738647461],\n", + " [10756.328125, 10756.328125, 10947.853927612305, 10947.853927612305],\n", + " [10600.0, 10600.0, 10852.091026306152, 10852.091026306152],\n", + " [9043.278679847717,\n", + " 9043.278679847717,\n", + " 10726.045513153076,\n", + " 10726.045513153076],\n", + " [8965.0, 8965.0, 9884.662096500397, 9884.662096500397],\n", + " [8942.5, 8942.5, 9424.831048250198, 9424.831048250198],\n", + " [8912.5, 8912.5, 9183.6655241251, 9183.6655241251],\n", + " [8873.75, 8873.75, 9048.08276206255, 9048.08276206255],\n", + " [7356.098465174437, 7356.098465174437, 8960.916381031275, 8960.916381031275],\n", + " [7315.0, 7315.0, 8158.507423102856, 8158.507423102856],\n", + " [7300.0, 7300.0, 7736.753711551428, 7736.753711551428],\n", + " [7285.0, 7285.0, 7518.376855775714, 7518.376855775714],\n", + " [7275.0, 7275.0, 7401.688427887857, 7401.688427887857],\n", + " [7250.0, 7250.0, 7338.3442139439285, 7338.3442139439285],\n", + " [7210.0, 7210.0, 7294.172106971964, 7294.172106971964],\n", + " [7172.5, 7172.5, 7252.086053485982, 7252.086053485982],\n", + " [7113.59375, 7113.59375, 7212.293026742991, 7212.293026742991],\n", + " [7060.0, 7060.0, 7162.9433883714955, 7162.9433883714955],\n", + " [7045.0, 7045.0, 7111.471694185748, 7111.471694185748],\n", + " [11395.0, 11395.0, 11405.0, 11405.0],\n", + " [11385.0, 11385.0, 11400.0, 11400.0],\n", + " [11375.0, 11375.0, 11392.5, 11392.5],\n", + " [11365.0, 11365.0, 11383.75, 11383.75],\n", + " [11355.0, 11355.0, 11374.375, 11374.375],\n", + " [11415.0, 11415.0, 11425.0, 11425.0],\n", + " [11455.0, 11455.0, 11465.0, 11465.0],\n", + " [11445.0, 11445.0, 11460.0, 11460.0],\n", + " [11535.0, 11535.0, 11545.0, 11545.0],\n", + " [11555.0, 11555.0, 11565.0, 11565.0],\n", + " [11540.0, 11540.0, 11560.0, 11560.0],\n", + " [11525.0, 11525.0, 11550.0, 11550.0],\n", + " [11515.0, 11515.0, 11537.5, 11537.5],\n", + " [11505.0, 11505.0, 11526.25, 11526.25],\n", + " [11495.0, 11495.0, 11515.625, 11515.625],\n", + " [11585.0, 11585.0, 11595.0, 11595.0],\n", + " [11575.0, 11575.0, 11590.0, 11590.0],\n", + " [11505.3125, 11505.3125, 11582.5, 11582.5],\n", + " [11485.0, 11485.0, 11543.90625, 11543.90625],\n", + " [11475.0, 11475.0, 11514.453125, 11514.453125],\n", + " [11452.5, 11452.5, 11494.7265625, 11494.7265625],\n", + " [11435.0, 11435.0, 11473.61328125, 11473.61328125],\n", + " [11420.0, 11420.0, 11454.306640625, 11454.306640625],\n", + " [11364.6875, 11364.6875, 11437.1533203125, 11437.1533203125],\n", + " [7078.235847092874, 7078.235847092874, 11400.92041015625, 11400.92041015625],\n", + " [7035.0, 7035.0, 9239.578128624562, 9239.578128624562],\n", + " [6665.830078125, 6665.830078125, 8137.289064312281, 8137.289064312281],\n", + " [6635.0, 6635.0, 7401.5595712186405, 7401.5595712186405],\n", + " [6625.0, 6625.0, 7018.27978560932, 7018.27978560932],\n", + " [6615.0, 6615.0, 6821.63989280466, 6821.63989280466],\n", + " [6605.0, 6605.0, 6718.31994640233, 6718.31994640233],\n", + " [6595.0, 6595.0, 6661.6599732011655, 6661.6599732011655],\n", + " [6585.0, 6585.0, 6628.329986600583, 6628.329986600583],\n", + " [6575.0, 6575.0, 6606.664993300292, 6606.664993300292],\n", + " [6565.0, 6565.0, 6590.832496650146, 6590.832496650146],\n", + " [6555.0, 6555.0, 6577.916248325073, 6577.916248325073],\n", + " [6411.50390625, 6411.50390625, 6566.4581241625365, 6566.4581241625365],\n", + " [6297.109375, 6297.109375, 6488.981015206268, 6488.981015206268],\n", + " [6240.0, 6240.0, 6393.045195103134, 6393.045195103134],\n", + " [6156.796875, 6156.796875, 6316.522597551567, 6316.522597551567],\n", + " [6135.0, 6135.0, 6236.659736275784, 6236.659736275784],\n", + " [6120.0, 6120.0, 6185.829868137892, 6185.829868137892],\n", + " [11605.0, 11605.0, 11615.0, 11615.0],\n", + " [6152.9149340689455, 6152.9149340689455, 11610.0, 11610.0],\n", + " [6105.0, 6105.0, 8881.457467034474, 8881.457467034474],\n", + " [6090.0, 6090.0, 7493.228733517237, 7493.228733517237],\n", + " [6053.75, 6053.75, 6791.614366758618, 6791.614366758618],\n", + " [6035.0, 6035.0, 6422.682183379309, 6422.682183379309],\n", + " [6025.0, 6025.0, 6228.841091689655, 6228.841091689655],\n", + " [6015.0, 6015.0, 6126.920545844827, 6126.920545844827],\n", + " [6005.0, 6005.0, 6070.960272922413, 6070.960272922413],\n", + " [5369.150141179562, 5369.150141179562, 6037.980136461207, 6037.980136461207],\n", + " [5073.75, 5073.75, 5703.565138820384, 5703.565138820384],\n", + " [4240.761419218034, 4240.761419218034, 5388.657569410192, 5388.657569410192],\n", + " [3009.0873917913996,\n", + " 3009.0873917913996,\n", + " 4814.709494314113,\n", + " 4814.709494314113],\n", + " [2656.796875, 2656.796875, 3911.898443052756, 3911.898443052756],\n", + " [2625.0, 2625.0, 3284.347659026378, 3284.347659026378],\n", + " [11665.0, 11665.0, 11675.0, 11675.0],\n", + " [11655.0, 11655.0, 11670.0, 11670.0],\n", + " [11645.0, 11645.0, 11662.5, 11662.5],\n", + " [11695.0, 11695.0, 11705.0, 11705.0],\n", + " [11685.0, 11685.0, 11700.0, 11700.0],\n", + " [11653.75, 11653.75, 11692.5, 11692.5],\n", + " [11635.0, 11635.0, 11673.125, 11673.125],\n", + " [11745.0, 11745.0, 11755.0, 11755.0],\n", + " [11735.0, 11735.0, 11750.0, 11750.0],\n", + " [11765.0, 11765.0, 11775.0, 11775.0],\n", + " [11785.0, 11785.0, 11795.0, 11795.0],\n", + " [11770.0, 11770.0, 11790.0, 11790.0],\n", + " [11835.0, 11835.0, 11845.0, 11845.0],\n", + " [11855.0, 11855.0, 11865.0, 11865.0],\n", + " [11840.0, 11840.0, 11860.0, 11860.0],\n", + " [11875.0, 11875.0, 11885.0, 11885.0],\n", + " [11850.0, 11850.0, 11880.0, 11880.0],\n", + " [11825.0, 11825.0, 11865.0, 11865.0],\n", + " [11815.0, 11815.0, 11845.0, 11845.0],\n", + " [11805.0, 11805.0, 11830.0, 11830.0],\n", + " [11780.0, 11780.0, 11817.5, 11817.5],\n", + " [11742.5, 11742.5, 11798.75, 11798.75],\n", + " [11725.0, 11725.0, 11770.625, 11770.625],\n", + " [11715.0, 11715.0, 11747.8125, 11747.8125],\n", + " [11654.0625, 11654.0625, 11731.40625, 11731.40625],\n", + " [11625.0, 11625.0, 11692.734375, 11692.734375],\n", + " [11905.0, 11905.0, 11915.0, 11915.0],\n", + " [11895.0, 11895.0, 11910.0, 11910.0],\n", + " [11975.0, 11975.0, 11985.0, 11985.0],\n", + " [11965.0, 11965.0, 11980.0, 11980.0],\n", + " [11955.0, 11955.0, 11972.5, 11972.5],\n", + " [11945.0, 11945.0, 11963.75, 11963.75],\n", + " [11935.0, 11935.0, 11954.375, 11954.375],\n", + " [12065.0, 12065.0, 12075.0, 12075.0],\n", + " [12055.0, 12055.0, 12070.0, 12070.0],\n", + " [12045.0, 12045.0, 12062.5, 12062.5],\n", + " [12095.0, 12095.0, 12105.0, 12105.0],\n", + " [12135.0, 12135.0, 12145.0, 12145.0],\n", + " [12125.0, 12125.0, 12140.0, 12140.0],\n", + " [12115.0, 12115.0, 12132.5, 12132.5],\n", + " [12100.0, 12100.0, 12123.75, 12123.75],\n", + " [12085.0, 12085.0, 12111.875, 12111.875],\n", + " [12053.75, 12053.75, 12098.4375, 12098.4375],\n", + " [12035.0, 12035.0, 12076.09375, 12076.09375],\n", + " [12025.0, 12025.0, 12055.546875, 12055.546875],\n", + " [12175.0, 12175.0, 12185.0, 12185.0],\n", + " [12165.0, 12165.0, 12180.0, 12180.0],\n", + " [12155.0, 12155.0, 12172.5, 12172.5],\n", + " [12040.2734375, 12040.2734375, 12163.75, 12163.75],\n", + " [12015.0, 12015.0, 12102.01171875, 12102.01171875],\n", + " [12005.0, 12005.0, 12058.505859375, 12058.505859375],\n", + " [12195.0, 12195.0, 12205.0, 12205.0],\n", + " [12031.7529296875, 12031.7529296875, 12200.0, 12200.0],\n", + " [12215.0, 12215.0, 12225.0, 12225.0],\n", + " [12235.0, 12235.0, 12245.0, 12245.0],\n", + " [12265.0, 12265.0, 12275.0, 12275.0],\n", + " [12255.0, 12255.0, 12270.0, 12270.0],\n", + " [12295.0, 12295.0, 12305.0, 12305.0],\n", + " [12285.0, 12285.0, 12300.0, 12300.0],\n", + " [12325.0, 12325.0, 12335.0, 12335.0],\n", + " [12315.0, 12315.0, 12330.0, 12330.0],\n", + " [12365.0, 12365.0, 12375.0, 12375.0],\n", + " [12355.0, 12355.0, 12370.0, 12370.0],\n", + " [12385.0, 12385.0, 12395.0, 12395.0],\n", + " [12405.0, 12405.0, 12415.0, 12415.0],\n", + " [12390.0, 12390.0, 12410.0, 12410.0],\n", + " [12362.5, 12362.5, 12400.0, 12400.0],\n", + " [12455.0, 12455.0, 12465.0, 12465.0],\n", + " [12495.0, 12495.0, 12505.0, 12505.0],\n", + " [12485.0, 12485.0, 12500.0, 12500.0],\n", + " [12475.0, 12475.0, 12492.5, 12492.5],\n", + " [12525.0, 12525.0, 12535.0, 12535.0],\n", + " [12515.0, 12515.0, 12530.0, 12530.0],\n", + " [12483.75, 12483.75, 12522.5, 12522.5],\n", + " [12545.0, 12545.0, 12555.0, 12555.0],\n", + " [12503.125, 12503.125, 12550.0, 12550.0],\n", + " [12460.0, 12460.0, 12526.5625, 12526.5625],\n", + " [12445.0, 12445.0, 12493.28125, 12493.28125],\n", + " [12435.0, 12435.0, 12469.140625, 12469.140625],\n", + " [12425.0, 12425.0, 12452.0703125, 12452.0703125],\n", + " [12585.0, 12585.0, 12595.0, 12595.0],\n", + " [12575.0, 12575.0, 12590.0, 12590.0],\n", + " [12565.0, 12565.0, 12582.5, 12582.5],\n", + " [12438.53515625, 12438.53515625, 12573.75, 12573.75],\n", + " [12381.25, 12381.25, 12506.142578125, 12506.142578125],\n", + " [12345.0, 12345.0, 12443.6962890625, 12443.6962890625],\n", + " [12322.5, 12322.5, 12394.34814453125, 12394.34814453125],\n", + " [12292.5, 12292.5, 12358.424072265625, 12358.424072265625],\n", + " [12262.5, 12262.5, 12325.462036132812, 12325.462036132812],\n", + " [12240.0, 12240.0, 12293.981018066406, 12293.981018066406],\n", + " [12220.0, 12220.0, 12266.990509033203, 12266.990509033203],\n", + " [12115.87646484375,\n", + " 12115.87646484375,\n", + " 12243.495254516602,\n", + " 12243.495254516602],\n", + " [11995.0, 11995.0, 12179.685859680176, 12179.685859680176],\n", + " [12605.0, 12605.0, 12615.0, 12615.0],\n", + " [12625.0, 12625.0, 12635.0, 12635.0],\n", + " [12685.0, 12685.0, 12695.0, 12695.0],\n", + " [12675.0, 12675.0, 12690.0, 12690.0],\n", + " [12665.0, 12665.0, 12682.5, 12682.5],\n", + " [12655.0, 12655.0, 12673.75, 12673.75],\n", + " [12645.0, 12645.0, 12664.375, 12664.375],\n", + " [12705.0, 12705.0, 12715.0, 12715.0],\n", + " [12654.6875, 12654.6875, 12710.0, 12710.0],\n", + " [12735.0, 12735.0, 12745.0, 12745.0],\n", + " [12725.0, 12725.0, 12740.0, 12740.0],\n", + " [12755.0, 12755.0, 12765.0, 12765.0],\n", + " [12785.0, 12785.0, 12795.0, 12795.0],\n", + " [12775.0, 12775.0, 12790.0, 12790.0],\n", + " [12760.0, 12760.0, 12782.5, 12782.5],\n", + " [12815.0, 12815.0, 12825.0, 12825.0],\n", + " [12875.0, 12875.0, 12885.0, 12885.0],\n", + " [12865.0, 12865.0, 12880.0, 12880.0],\n", + " [12855.0, 12855.0, 12872.5, 12872.5],\n", + " [12845.0, 12845.0, 12863.75, 12863.75],\n", + " [12835.0, 12835.0, 12854.375, 12854.375],\n", + " [12820.0, 12820.0, 12844.6875, 12844.6875],\n", + " [12805.0, 12805.0, 12832.34375, 12832.34375],\n", + " [12771.25, 12771.25, 12818.671875, 12818.671875],\n", + " [12732.5, 12732.5, 12794.9609375, 12794.9609375],\n", + " [12682.34375, 12682.34375, 12763.73046875, 12763.73046875],\n", + " [12630.0, 12630.0, 12723.037109375, 12723.037109375],\n", + " [12610.0, 12610.0, 12676.5185546875, 12676.5185546875],\n", + " [13025.0, 13025.0, 13035.0, 13035.0],\n", + " [13015.0, 13015.0, 13030.0, 13030.0],\n", + " [13005.0, 13005.0, 13022.5, 13022.5],\n", + " [12995.0, 12995.0, 13013.75, 13013.75],\n", + " [12985.0, 12985.0, 13004.375, 13004.375],\n", + " [12975.0, 12975.0, 12994.6875, 12994.6875],\n", + " [12965.0, 12965.0, 12984.84375, 12984.84375],\n", + " [12955.0, 12955.0, 12974.921875, 12974.921875],\n", + " [12945.0, 12945.0, 12964.9609375, 12964.9609375],\n", + " [12935.0, 12935.0, 12954.98046875, 12954.98046875],\n", + " [12925.0, 12925.0, 12944.990234375, 12944.990234375],\n", + " [12915.0, 12915.0, 12934.9951171875, 12934.9951171875],\n", + " [12905.0, 12905.0, 12924.99755859375, 12924.99755859375],\n", + " [12895.0, 12895.0, 12914.998779296875, 12914.998779296875],\n", + " [12643.25927734375,\n", + " 12643.25927734375,\n", + " 12904.999389648438,\n", + " 12904.999389648438],\n", + " [12087.342929840088,\n", + " 12087.342929840088,\n", + " 12774.129333496094,\n", + " 12774.129333496094],\n", + " [11944.6875, 11944.6875, 12430.73613166809, 12430.73613166809],\n", + " [11925.0, 11925.0, 12187.711815834045, 12187.711815834045],\n", + " [13045.0, 13045.0, 13055.0, 13055.0],\n", + " [13065.0, 13065.0, 13075.0, 13075.0],\n", + " [13085.0, 13085.0, 13095.0, 13095.0],\n", + " [13115.0, 13115.0, 13125.0, 13125.0],\n", + " [13105.0, 13105.0, 13120.0, 13120.0],\n", + " [13165.0, 13165.0, 13175.0, 13175.0],\n", + " [13155.0, 13155.0, 13170.0, 13170.0],\n", + " [13195.0, 13195.0, 13205.0, 13205.0],\n", + " [13185.0, 13185.0, 13200.0, 13200.0],\n", + " [13162.5, 13162.5, 13192.5, 13192.5],\n", + " [13145.0, 13145.0, 13177.5, 13177.5],\n", + " [13135.0, 13135.0, 13161.25, 13161.25],\n", + " [13112.5, 13112.5, 13148.125, 13148.125],\n", + " [13090.0, 13090.0, 13130.3125, 13130.3125],\n", + " [13070.0, 13070.0, 13110.15625, 13110.15625],\n", + " [13050.0, 13050.0, 13090.078125, 13090.078125],\n", + " [12056.355907917023, 12056.355907917023, 13070.0390625, 13070.0390625],\n", + " [11902.5, 11902.5, 12563.197485208511, 12563.197485208511],\n", + " [11658.8671875, 11658.8671875, 12232.848742604256, 12232.848742604256],\n", + " [13235.0, 13235.0, 13245.0, 13245.0],\n", + " [13275.0, 13275.0, 13285.0, 13285.0],\n", + " [13265.0, 13265.0, 13280.0, 13280.0],\n", + " [13255.0, 13255.0, 13272.5, 13272.5],\n", + " [13295.0, 13295.0, 13305.0, 13305.0],\n", + " [13263.75, 13263.75, 13300.0, 13300.0],\n", + " [13240.0, 13240.0, 13281.875, 13281.875],\n", + " [13315.0, 13315.0, 13325.0, 13325.0],\n", + " [13260.9375, 13260.9375, 13320.0, 13320.0],\n", + " [13225.0, 13225.0, 13290.46875, 13290.46875],\n", + " [13215.0, 13215.0, 13257.734375, 13257.734375],\n", + " [13345.0, 13345.0, 13355.0, 13355.0],\n", + " [13335.0, 13335.0, 13350.0, 13350.0],\n", + " [13236.3671875, 13236.3671875, 13342.5, 13342.5],\n", + " [13365.0, 13365.0, 13375.0, 13375.0],\n", + " [13395.0, 13395.0, 13405.0, 13405.0],\n", + " [13415.0, 13415.0, 13425.0, 13425.0],\n", + " [13400.0, 13400.0, 13420.0, 13420.0],\n", + " [13445.0, 13445.0, 13455.0, 13455.0],\n", + " [13485.0, 13485.0, 13495.0, 13495.0],\n", + " [13475.0, 13475.0, 13490.0, 13490.0],\n", + " [13505.0, 13505.0, 13515.0, 13515.0],\n", + " [13482.5, 13482.5, 13510.0, 13510.0],\n", + " [13465.0, 13465.0, 13496.25, 13496.25],\n", + " [13450.0, 13450.0, 13480.625, 13480.625],\n", + " [13525.0, 13525.0, 13535.0, 13535.0],\n", + " [13465.3125, 13465.3125, 13530.0, 13530.0],\n", + " [13595.0, 13595.0, 13605.0, 13605.0],\n", + " [13585.0, 13585.0, 13600.0, 13600.0],\n", + " [13575.0, 13575.0, 13592.5, 13592.5],\n", + " [13565.0, 13565.0, 13583.75, 13583.75],\n", + " [13555.0, 13555.0, 13574.375, 13574.375],\n", + " [13545.0, 13545.0, 13564.6875, 13564.6875],\n", + " [13615.0, 13615.0, 13625.0, 13625.0],\n", + " [13554.84375, 13554.84375, 13620.0, 13620.0],\n", + " [13645.0, 13645.0, 13655.0, 13655.0],\n", + " [13665.0, 13665.0, 13675.0, 13675.0],\n", + " [13650.0, 13650.0, 13670.0, 13670.0],\n", + " [13635.0, 13635.0, 13660.0, 13660.0],\n", + " [13705.0, 13705.0, 13715.0, 13715.0],\n", + " [13725.0, 13725.0, 13735.0, 13735.0],\n", + " [13745.0, 13745.0, 13755.0, 13755.0],\n", + " [13730.0, 13730.0, 13750.0, 13750.0],\n", + " [13710.0, 13710.0, 13740.0, 13740.0],\n", + " [13695.0, 13695.0, 13725.0, 13725.0],\n", + " [13685.0, 13685.0, 13710.0, 13710.0],\n", + " [13647.5, 13647.5, 13697.5, 13697.5],\n", + " [13587.421875, 13587.421875, 13672.5, 13672.5],\n", + " [13497.65625, 13497.65625, 13629.9609375, 13629.9609375],\n", + " [13435.0, 13435.0, 13563.80859375, 13563.80859375],\n", + " [13410.0, 13410.0, 13499.404296875, 13499.404296875],\n", + " [13785.0, 13785.0, 13795.0, 13795.0],\n", + " [13775.0, 13775.0, 13790.0, 13790.0],\n", + " [13805.0, 13805.0, 13815.0, 13815.0],\n", + " [13782.5, 13782.5, 13810.0, 13810.0],\n", + " [13765.0, 13765.0, 13796.25, 13796.25],\n", + " [13454.7021484375, 13454.7021484375, 13780.625, 13780.625],\n", + " [13385.0, 13385.0, 13617.66357421875, 13617.66357421875],\n", + " [13370.0, 13370.0, 13501.331787109375, 13501.331787109375],\n", + " [13845.0, 13845.0, 13855.0, 13855.0],\n", + " [13835.0, 13835.0, 13850.0, 13850.0],\n", + " [13825.0, 13825.0, 13842.5, 13842.5],\n", + " [13905.0, 13905.0, 13915.0, 13915.0],\n", + " [13925.0, 13925.0, 13935.0, 13935.0],\n", + " [13945.0, 13945.0, 13955.0, 13955.0],\n", + " [13975.0, 13975.0, 13985.0, 13985.0],\n", + " [13965.0, 13965.0, 13980.0, 13980.0],\n", + " [13950.0, 13950.0, 13972.5, 13972.5],\n", + " [13930.0, 13930.0, 13961.25, 13961.25],\n", + " [13910.0, 13910.0, 13945.625, 13945.625],\n", + " [14025.0, 14025.0, 14035.0, 14035.0],\n", + " [14015.0, 14015.0, 14030.0, 14030.0],\n", + " [14005.0, 14005.0, 14022.5, 14022.5],\n", + " [13995.0, 13995.0, 14013.75, 14013.75],\n", + " [14065.0, 14065.0, 14075.0, 14075.0],\n", + " [14095.0, 14095.0, 14105.0, 14105.0],\n", + " [14085.0, 14085.0, 14100.0, 14100.0],\n", + " [14070.0, 14070.0, 14092.5, 14092.5],\n", + " [14055.0, 14055.0, 14081.25, 14081.25],\n", + " [14145.0, 14145.0, 14155.0, 14155.0],\n", + " [14135.0, 14135.0, 14150.0, 14150.0],\n", + " [14125.0, 14125.0, 14142.5, 14142.5],\n", + " [14115.0, 14115.0, 14133.75, 14133.75],\n", + " [14068.125, 14068.125, 14124.375, 14124.375],\n", + " [14045.0, 14045.0, 14096.25, 14096.25],\n", + " [14004.375, 14004.375, 14070.625, 14070.625],\n", + " [13927.8125, 13927.8125, 14037.5, 14037.5],\n", + " [13895.0, 13895.0, 13982.65625, 13982.65625],\n", + " [13885.0, 13885.0, 13938.828125, 13938.828125],\n", + " [13875.0, 13875.0, 13911.9140625, 13911.9140625],\n", + " [13865.0, 13865.0, 13893.45703125, 13893.45703125],\n", + " [14175.0, 14175.0, 14185.0, 14185.0],\n", + " [14215.0, 14215.0, 14225.0, 14225.0],\n", + " [14205.0, 14205.0, 14220.0, 14220.0],\n", + " [14195.0, 14195.0, 14212.5, 14212.5],\n", + " [14235.0, 14235.0, 14245.0, 14245.0],\n", + " [14285.0, 14285.0, 14295.0, 14295.0],\n", + " [14275.0, 14275.0, 14290.0, 14290.0],\n", + " [14265.0, 14265.0, 14282.5, 14282.5],\n", + " [14255.0, 14255.0, 14273.75, 14273.75],\n", + " [14240.0, 14240.0, 14264.375, 14264.375],\n", + " [14203.75, 14203.75, 14252.1875, 14252.1875],\n", + " [14180.0, 14180.0, 14227.96875, 14227.96875],\n", + " [14165.0, 14165.0, 14203.984375, 14203.984375],\n", + " [14305.0, 14305.0, 14315.0, 14315.0],\n", + " [14325.0, 14325.0, 14335.0, 14335.0],\n", + " [14355.0, 14355.0, 14365.0, 14365.0],\n", + " [14375.0, 14375.0, 14385.0, 14385.0],\n", + " [14360.0, 14360.0, 14380.0, 14380.0],\n", + " [14345.0, 14345.0, 14370.0, 14370.0],\n", + " [14330.0, 14330.0, 14357.5, 14357.5],\n", + " [14405.0, 14405.0, 14415.0, 14415.0],\n", + " [14445.0, 14445.0, 14455.0, 14455.0],\n", + " [14435.0, 14435.0, 14450.0, 14450.0],\n", + " [14495.0, 14495.0, 14505.0, 14505.0],\n", + " [14485.0, 14485.0, 14500.0, 14500.0],\n", + " [14525.0, 14525.0, 14535.0, 14535.0],\n", + " [14545.0, 14545.0, 14555.0, 14555.0],\n", + " [14605.0, 14605.0, 14615.0, 14615.0],\n", + " [14595.0, 14595.0, 14610.0, 14610.0],\n", + " [14585.0, 14585.0, 14602.5, 14602.5],\n", + " [14575.0, 14575.0, 14593.75, 14593.75],\n", + " [14565.0, 14565.0, 14584.375, 14584.375],\n", + " [14550.0, 14550.0, 14574.6875, 14574.6875],\n", + " [14530.0, 14530.0, 14562.34375, 14562.34375],\n", + " [14515.0, 14515.0, 14546.171875, 14546.171875],\n", + " [14492.5, 14492.5, 14530.5859375, 14530.5859375],\n", + " [14475.0, 14475.0, 14511.54296875, 14511.54296875],\n", + " [14465.0, 14465.0, 14493.271484375, 14493.271484375],\n", + " [14442.5, 14442.5, 14479.1357421875, 14479.1357421875],\n", + " [14665.0, 14665.0, 14675.0, 14675.0],\n", + " [14655.0, 14655.0, 14670.0, 14670.0],\n", + " [14645.0, 14645.0, 14662.5, 14662.5],\n", + " [14705.0, 14705.0, 14715.0, 14715.0],\n", + " [14725.0, 14725.0, 14735.0, 14735.0],\n", + " [14710.0, 14710.0, 14730.0, 14730.0],\n", + " [14765.0, 14765.0, 14775.0, 14775.0],\n", + " [14755.0, 14755.0, 14770.0, 14770.0],\n", + " [14745.0, 14745.0, 14762.5, 14762.5],\n", + " [14720.0, 14720.0, 14753.75, 14753.75],\n", + " [14695.0, 14695.0, 14736.875, 14736.875],\n", + " [14685.0, 14685.0, 14715.9375, 14715.9375],\n", + " [14653.75, 14653.75, 14700.46875, 14700.46875],\n", + " [14635.0, 14635.0, 14677.109375, 14677.109375],\n", + " [14625.0, 14625.0, 14656.0546875, 14656.0546875],\n", + " [14460.81787109375, 14460.81787109375, 14640.52734375, 14640.52734375],\n", + " [14425.0, 14425.0, 14550.672607421875, 14550.672607421875],\n", + " [14785.0, 14785.0, 14795.0, 14795.0],\n", + " [14487.836303710938, 14487.836303710938, 14790.0, 14790.0],\n", + " [14410.0, 14410.0, 14638.918151855469, 14638.918151855469],\n", + " [14395.0, 14395.0, 14524.459075927734, 14524.459075927734],\n", + " [14825.0, 14825.0, 14835.0, 14835.0],\n", + " [14815.0, 14815.0, 14830.0, 14830.0],\n", + " [14805.0, 14805.0, 14822.5, 14822.5],\n", + " [14875.0, 14875.0, 14885.0, 14885.0],\n", + " [14865.0, 14865.0, 14880.0, 14880.0],\n", + " [14895.0, 14895.0, 14905.0, 14905.0],\n", + " [14945.0, 14945.0, 14955.0, 14955.0],\n", + " [14935.0, 14935.0, 14950.0, 14950.0],\n", + " [14925.0, 14925.0, 14942.5, 14942.5],\n", + " [14915.0, 14915.0, 14933.75, 14933.75],\n", + " [14900.0, 14900.0, 14924.375, 14924.375],\n", + " [14872.5, 14872.5, 14912.1875, 14912.1875],\n", + " [14855.0, 14855.0, 14892.34375, 14892.34375],\n", + " [14845.0, 14845.0, 14873.671875, 14873.671875],\n", + " [14813.75, 14813.75, 14859.3359375, 14859.3359375],\n", + " [14965.0, 14965.0, 14975.0, 14975.0],\n", + " [14985.0, 14985.0, 14995.0, 14995.0],\n", + " [15015.0, 15015.0, 15025.0, 15025.0],\n", + " [15005.0, 15005.0, 15020.0, 15020.0],\n", + " [14990.0, 14990.0, 15012.5, 15012.5],\n", + " [15055.0, 15055.0, 15065.0, 15065.0],\n", + " [15085.0, 15085.0, 15095.0, 15095.0],\n", + " [15075.0, 15075.0, 15090.0, 15090.0],\n", + " [15105.0, 15105.0, 15115.0, 15115.0],\n", + " [15082.5, 15082.5, 15110.0, 15110.0],\n", + " [15060.0, 15060.0, 15096.25, 15096.25],\n", + " [15045.0, 15045.0, 15078.125, 15078.125],\n", + " [15035.0, 15035.0, 15061.5625, 15061.5625],\n", + " [15001.25, 15001.25, 15048.28125, 15048.28125],\n", + " [14970.0, 14970.0, 15024.765625, 15024.765625],\n", + " [14836.54296875, 14836.54296875, 14997.3828125, 14997.3828125],\n", + " [14459.729537963867, 14459.729537963867, 14916.962890625, 14916.962890625],\n", + " [14343.75, 14343.75, 14688.346214294434, 14688.346214294434],\n", + " [15195.0, 15195.0, 15205.0, 15205.0],\n", + " [15185.0, 15185.0, 15200.0, 15200.0],\n", + " [15245.0, 15245.0, 15255.0, 15255.0],\n", + " [15235.0, 15235.0, 15250.0, 15250.0],\n", + " [15225.0, 15225.0, 15242.5, 15242.5],\n", + " [15265.0, 15265.0, 15275.0, 15275.0],\n", + " [15233.75, 15233.75, 15270.0, 15270.0],\n", + " [15215.0, 15215.0, 15251.875, 15251.875],\n", + " [15192.5, 15192.5, 15233.4375, 15233.4375],\n", + " [15175.0, 15175.0, 15212.96875, 15212.96875],\n", + " [15305.0, 15305.0, 15315.0, 15315.0],\n", + " [15335.0, 15335.0, 15345.0, 15345.0],\n", + " [15325.0, 15325.0, 15340.0, 15340.0],\n", + " [15310.0, 15310.0, 15332.5, 15332.5],\n", + " [15295.0, 15295.0, 15321.25, 15321.25],\n", + " [15445.0, 15445.0, 15455.0, 15455.0],\n", + " [15435.0, 15435.0, 15450.0, 15450.0],\n", + " [15425.0, 15425.0, 15442.5, 15442.5],\n", + " [15415.0, 15415.0, 15433.75, 15433.75],\n", + " [15405.0, 15405.0, 15424.375, 15424.375],\n", + " [15395.0, 15395.0, 15414.6875, 15414.6875],\n", + " [15475.0, 15475.0, 15485.0, 15485.0],\n", + " [15495.0, 15495.0, 15505.0, 15505.0],\n", + " [15515.0, 15515.0, 15525.0, 15525.0],\n", + " [15535.0, 15535.0, 15545.0, 15545.0],\n", + " [15575.0, 15575.0, 15585.0, 15585.0],\n", + " [15565.0, 15565.0, 15580.0, 15580.0],\n", + " [15595.0, 15595.0, 15605.0, 15605.0],\n", + " [15572.5, 15572.5, 15600.0, 15600.0],\n", + " [15555.0, 15555.0, 15586.25, 15586.25],\n", + " [15540.0, 15540.0, 15570.625, 15570.625],\n", + " [15625.0, 15625.0, 15635.0, 15635.0],\n", + " [15615.0, 15615.0, 15630.0, 15630.0],\n", + " [15555.3125, 15555.3125, 15622.5, 15622.5],\n", + " [15520.0, 15520.0, 15588.90625, 15588.90625],\n", + " [15500.0, 15500.0, 15554.453125, 15554.453125],\n", + " [15480.0, 15480.0, 15527.2265625, 15527.2265625],\n", + " [15465.0, 15465.0, 15503.61328125, 15503.61328125],\n", + " [15404.84375, 15404.84375, 15484.306640625, 15484.306640625],\n", + " [15385.0, 15385.0, 15444.5751953125, 15444.5751953125],\n", + " [15375.0, 15375.0, 15414.78759765625, 15414.78759765625],\n", + " [15365.0, 15365.0, 15394.893798828125, 15394.893798828125],\n", + " [15355.0, 15355.0, 15379.946899414062, 15379.946899414062],\n", + " [15645.0, 15645.0, 15655.0, 15655.0],\n", + " [15675.0, 15675.0, 15685.0, 15685.0],\n", + " [15665.0, 15665.0, 15680.0, 15680.0],\n", + " [15650.0, 15650.0, 15672.5, 15672.5],\n", + " [15367.473449707031, 15367.473449707031, 15661.25, 15661.25],\n", + " [15308.125, 15308.125, 15514.361724853516, 15514.361724853516],\n", + " [15285.0, 15285.0, 15411.243362426758, 15411.243362426758],\n", + " [15193.984375, 15193.984375, 15348.121681213379, 15348.121681213379],\n", + " [15165.0, 15165.0, 15271.05302810669, 15271.05302810669],\n", + " [15735.0, 15735.0, 15745.0, 15745.0],\n", + " [15725.0, 15725.0, 15740.0, 15740.0],\n", + " [15715.0, 15715.0, 15732.5, 15732.5],\n", + " [15705.0, 15705.0, 15723.75, 15723.75],\n", + " [15755.0, 15755.0, 15765.0, 15765.0],\n", + " [15714.375, 15714.375, 15760.0, 15760.0],\n", + " [15695.0, 15695.0, 15737.1875, 15737.1875],\n", + " [15775.0, 15775.0, 15785.0, 15785.0],\n", + " [15815.0, 15815.0, 15825.0, 15825.0],\n", + " [15805.0, 15805.0, 15820.0, 15820.0],\n", + " [15795.0, 15795.0, 15812.5, 15812.5],\n", + " [15780.0, 15780.0, 15803.75, 15803.75],\n", + " [15716.09375, 15716.09375, 15791.875, 15791.875],\n", + " [15218.026514053345, 15218.026514053345, 15753.984375, 15753.984375],\n", + " [15865.0, 15865.0, 15875.0, 15875.0],\n", + " [15855.0, 15855.0, 15870.0, 15870.0],\n", + " [15885.0, 15885.0, 15895.0, 15895.0],\n", + " [15862.5, 15862.5, 15890.0, 15890.0],\n", + " [15905.0, 15905.0, 15915.0, 15915.0],\n", + " [15876.25, 15876.25, 15910.0, 15910.0],\n", + " [15845.0, 15845.0, 15893.125, 15893.125],\n", + " [15985.0, 15985.0, 15995.0, 15995.0],\n", + " [15975.0, 15975.0, 15990.0, 15990.0],\n", + " [15965.0, 15965.0, 15982.5, 15982.5],\n", + " [16015.0, 16015.0, 16025.0, 16025.0],\n", + " [16055.0, 16055.0, 16065.0, 16065.0],\n", + " [16045.0, 16045.0, 16060.0, 16060.0],\n", + " [16095.0, 16095.0, 16105.0, 16105.0],\n", + " [16115.0, 16115.0, 16125.0, 16125.0],\n", + " [16195.0, 16195.0, 16205.0, 16205.0],\n", + " [16265.0, 16265.0, 16275.0, 16275.0],\n", + " [16255.0, 16255.0, 16270.0, 16270.0],\n", + " [16245.0, 16245.0, 16262.5, 16262.5],\n", + " [16235.0, 16235.0, 16253.75, 16253.75],\n", + " [16225.0, 16225.0, 16244.375, 16244.375],\n", + " [16215.0, 16215.0, 16234.6875, 16234.6875],\n", + " [16200.0, 16200.0, 16224.84375, 16224.84375],\n", + " [16185.0, 16185.0, 16212.421875, 16212.421875],\n", + " [16295.0, 16295.0, 16305.0, 16305.0],\n", + " [16315.0, 16315.0, 16325.0, 16325.0],\n", + " [16300.0, 16300.0, 16320.0, 16320.0],\n", + " [16285.0, 16285.0, 16310.0, 16310.0],\n", + " [16355.0, 16355.0, 16365.0, 16365.0],\n", + " [16345.0, 16345.0, 16360.0, 16360.0],\n", + " [16335.0, 16335.0, 16352.5, 16352.5],\n", + " [16297.5, 16297.5, 16343.75, 16343.75],\n", + " [16198.7109375, 16198.7109375, 16320.625, 16320.625],\n", + " [16175.0, 16175.0, 16259.66796875, 16259.66796875],\n", + " [16165.0, 16165.0, 16217.333984375, 16217.333984375],\n", + " [16155.0, 16155.0, 16191.1669921875, 16191.1669921875],\n", + " [16375.0, 16375.0, 16385.0, 16385.0],\n", + " [16415.0, 16415.0, 16425.0, 16425.0],\n", + " [16435.0, 16435.0, 16445.0, 16445.0],\n", + " [16465.0, 16465.0, 16475.0, 16475.0],\n", + " [16455.0, 16455.0, 16470.0, 16470.0],\n", + " [16440.0, 16440.0, 16462.5, 16462.5],\n", + " [16420.0, 16420.0, 16451.25, 16451.25],\n", + " [16405.0, 16405.0, 16435.625, 16435.625],\n", + " [16525.0, 16525.0, 16535.0, 16535.0],\n", + " [16515.0, 16515.0, 16530.0, 16530.0],\n", + " [16505.0, 16505.0, 16522.5, 16522.5],\n", + " [16575.0, 16575.0, 16585.0, 16585.0],\n", + " [16605.0, 16605.0, 16615.0, 16615.0],\n", + " [16595.0, 16595.0, 16610.0, 16610.0],\n", + " [16635.0, 16635.0, 16645.0, 16645.0],\n", + " [16625.0, 16625.0, 16640.0, 16640.0],\n", + " [16665.0, 16665.0, 16675.0, 16675.0],\n", + " [16655.0, 16655.0, 16670.0, 16670.0],\n", + " [16685.0, 16685.0, 16695.0, 16695.0],\n", + " [16705.0, 16705.0, 16715.0, 16715.0],\n", + " [16690.0, 16690.0, 16710.0, 16710.0],\n", + " [16745.0, 16745.0, 16755.0, 16755.0],\n", + " [16735.0, 16735.0, 16750.0, 16750.0],\n", + " [16725.0, 16725.0, 16742.5, 16742.5],\n", + " [16785.0, 16785.0, 16795.0, 16795.0],\n", + " [16775.0, 16775.0, 16790.0, 16790.0],\n", + " [16765.0, 16765.0, 16782.5, 16782.5],\n", + " [16733.75, 16733.75, 16773.75, 16773.75],\n", + " [16700.0, 16700.0, 16753.75, 16753.75],\n", + " [16662.5, 16662.5, 16726.875, 16726.875],\n", + " [16632.5, 16632.5, 16694.6875, 16694.6875],\n", + " [16815.0, 16815.0, 16825.0, 16825.0],\n", + " [16805.0, 16805.0, 16820.0, 16820.0],\n", + " [16835.0, 16835.0, 16845.0, 16845.0],\n", + " [16865.0, 16865.0, 16875.0, 16875.0],\n", + " [16855.0, 16855.0, 16870.0, 16870.0],\n", + " [16840.0, 16840.0, 16862.5, 16862.5],\n", + " [16885.0, 16885.0, 16895.0, 16895.0],\n", + " [16905.0, 16905.0, 16915.0, 16915.0],\n", + " [16890.0, 16890.0, 16910.0, 16910.0],\n", + " [16945.0, 16945.0, 16955.0, 16955.0],\n", + " [16965.0, 16965.0, 16975.0, 16975.0],\n", + " [16950.0, 16950.0, 16970.0, 16970.0],\n", + " [16935.0, 16935.0, 16960.0, 16960.0],\n", + " [16925.0, 16925.0, 16947.5, 16947.5],\n", + " [16900.0, 16900.0, 16936.25, 16936.25],\n", + " [17025.0, 17025.0, 17035.0, 17035.0],\n", + " [17015.0, 17015.0, 17030.0, 17030.0],\n", + " [17005.0, 17005.0, 17022.5, 17022.5],\n", + " [16995.0, 16995.0, 17013.75, 17013.75],\n", + " [16985.0, 16985.0, 17004.375, 17004.375],\n", + " [17085.0, 17085.0, 17095.0, 17095.0],\n", + " [17075.0, 17075.0, 17090.0, 17090.0],\n", + " [17065.0, 17065.0, 17082.5, 17082.5],\n", + " [17055.0, 17055.0, 17073.75, 17073.75],\n", + " [17045.0, 17045.0, 17064.375, 17064.375],\n", + " [16994.6875, 16994.6875, 17054.6875, 17054.6875],\n", + " [16918.125, 16918.125, 17024.6875, 17024.6875],\n", + " [17105.0, 17105.0, 17115.0, 17115.0],\n", + " [17125.0, 17125.0, 17135.0, 17135.0],\n", + " [17110.0, 17110.0, 17130.0, 17130.0],\n", + " [16971.40625, 16971.40625, 17120.0, 17120.0],\n", + " [16851.25, 16851.25, 17045.703125, 17045.703125],\n", + " [16812.5, 16812.5, 16948.4765625, 16948.4765625],\n", + " [16663.59375, 16663.59375, 16880.48828125, 16880.48828125],\n", + " [16602.5, 16602.5, 16772.041015625, 16772.041015625],\n", + " [16580.0, 16580.0, 16687.2705078125, 16687.2705078125],\n", + " [16565.0, 16565.0, 16633.63525390625, 16633.63525390625],\n", + " [16555.0, 16555.0, 16599.317626953125, 16599.317626953125],\n", + " [16545.0, 16545.0, 16577.158813476562, 16577.158813476562],\n", + " [17175.0, 17175.0, 17185.0, 17185.0],\n", + " [17165.0, 17165.0, 17180.0, 17180.0],\n", + " [17195.0, 17195.0, 17205.0, 17205.0],\n", + " [17215.0, 17215.0, 17225.0, 17225.0],\n", + " [17245.0, 17245.0, 17255.0, 17255.0],\n", + " [17235.0, 17235.0, 17250.0, 17250.0],\n", + " [17220.0, 17220.0, 17242.5, 17242.5],\n", + " [17200.0, 17200.0, 17231.25, 17231.25],\n", + " [17265.0, 17265.0, 17275.0, 17275.0],\n", + " [17215.625, 17215.625, 17270.0, 17270.0],\n", + " [17295.0, 17295.0, 17305.0, 17305.0],\n", + " [17325.0, 17325.0, 17335.0, 17335.0],\n", + " [17315.0, 17315.0, 17330.0, 17330.0],\n", + " [17300.0, 17300.0, 17322.5, 17322.5],\n", + " [17285.0, 17285.0, 17311.25, 17311.25],\n", + " [17242.8125, 17242.8125, 17298.125, 17298.125],\n", + " [17172.5, 17172.5, 17270.46875, 17270.46875],\n", + " [17155.0, 17155.0, 17221.484375, 17221.484375],\n", + " [17145.0, 17145.0, 17188.2421875, 17188.2421875],\n", + " [16561.07940673828, 16561.07940673828, 17166.62109375, 17166.62109375],\n", + " [16513.75, 16513.75, 16863.85025024414, 16863.85025024414],\n", + " [16495.0, 16495.0, 16688.80012512207, 16688.80012512207],\n", + " [16485.0, 16485.0, 16591.900062561035, 16591.900062561035],\n", + " [16420.3125, 16420.3125, 16538.450031280518, 16538.450031280518],\n", + " [16395.0, 16395.0, 16479.38126564026, 16479.38126564026],\n", + " [16380.0, 16380.0, 16437.19063282013, 16437.19063282013],\n", + " [16173.08349609375,\n", + " 16173.08349609375,\n", + " 16408.595316410065,\n", + " 16408.595316410065],\n", + " [16145.0, 16145.0, 16290.839406251907, 16290.839406251907],\n", + " [16135.0, 16135.0, 16217.919703125954, 16217.919703125954],\n", + " [17365.0, 17365.0, 17375.0, 17375.0],\n", + " [17395.0, 17395.0, 17405.0, 17405.0],\n", + " [17385.0, 17385.0, 17400.0, 17400.0],\n", + " [17415.0, 17415.0, 17425.0, 17425.0],\n", + " [17455.0, 17455.0, 17465.0, 17465.0],\n", + " [17445.0, 17445.0, 17460.0, 17460.0],\n", + " [17435.0, 17435.0, 17452.5, 17452.5],\n", + " [17475.0, 17475.0, 17485.0, 17485.0],\n", + " [17495.0, 17495.0, 17505.0, 17505.0],\n", + " [17480.0, 17480.0, 17500.0, 17500.0],\n", + " [17535.0, 17535.0, 17545.0, 17545.0],\n", + " [17525.0, 17525.0, 17540.0, 17540.0],\n", + " [17565.0, 17565.0, 17575.0, 17575.0],\n", + " [17555.0, 17555.0, 17570.0, 17570.0],\n", + " [17532.5, 17532.5, 17562.5, 17562.5],\n", + " [17585.0, 17585.0, 17595.0, 17595.0],\n", + " [17547.5, 17547.5, 17590.0, 17590.0],\n", + " [17615.0, 17615.0, 17625.0, 17625.0],\n", + " [17605.0, 17605.0, 17620.0, 17620.0],\n", + " [17645.0, 17645.0, 17655.0, 17655.0],\n", + " [17635.0, 17635.0, 17650.0, 17650.0],\n", + " [17612.5, 17612.5, 17642.5, 17642.5],\n", + " [17568.75, 17568.75, 17627.5, 17627.5],\n", + " [17515.0, 17515.0, 17598.125, 17598.125],\n", + " [17490.0, 17490.0, 17556.5625, 17556.5625],\n", + " [17705.0, 17705.0, 17715.0, 17715.0],\n", + " [17695.0, 17695.0, 17710.0, 17710.0],\n", + " [17725.0, 17725.0, 17735.0, 17735.0],\n", + " [17765.0, 17765.0, 17775.0, 17775.0],\n", + " [17755.0, 17755.0, 17770.0, 17770.0],\n", + " [17745.0, 17745.0, 17762.5, 17762.5],\n", + " [17730.0, 17730.0, 17753.75, 17753.75],\n", + " [17702.5, 17702.5, 17741.875, 17741.875],\n", + " [17685.0, 17685.0, 17722.1875, 17722.1875],\n", + " [17675.0, 17675.0, 17703.59375, 17703.59375],\n", + " [17805.0, 17805.0, 17815.0, 17815.0],\n", + " [17825.0, 17825.0, 17835.0, 17835.0],\n", + " [17865.0, 17865.0, 17875.0, 17875.0],\n", + " [17855.0, 17855.0, 17870.0, 17870.0],\n", + " [17845.0, 17845.0, 17862.5, 17862.5],\n", + " [17830.0, 17830.0, 17853.75, 17853.75],\n", + " [17810.0, 17810.0, 17841.875, 17841.875],\n", + " [17795.0, 17795.0, 17825.9375, 17825.9375],\n", + " [17895.0, 17895.0, 17905.0, 17905.0],\n", + " [17885.0, 17885.0, 17900.0, 17900.0],\n", + " [17925.0, 17925.0, 17935.0, 17935.0],\n", + " [17915.0, 17915.0, 17930.0, 17930.0],\n", + " [17892.5, 17892.5, 17922.5, 17922.5],\n", + " [17955.0, 17955.0, 17965.0, 17965.0],\n", + " [17945.0, 17945.0, 17960.0, 17960.0],\n", + " [17907.5, 17907.5, 17952.5, 17952.5],\n", + " [17810.46875, 17810.46875, 17930.0, 17930.0],\n", + " [17785.0, 17785.0, 17870.234375, 17870.234375],\n", + " [17689.296875, 17689.296875, 17827.6171875, 17827.6171875],\n", + " [17665.0, 17665.0, 17758.45703125, 17758.45703125],\n", + " [17523.28125, 17523.28125, 17711.728515625, 17711.728515625],\n", + " [17995.0, 17995.0, 18005.0, 18005.0],\n", + " [17985.0, 17985.0, 18000.0, 18000.0],\n", + " [18035.0, 18035.0, 18045.0, 18045.0],\n", + " [18025.0, 18025.0, 18040.0, 18040.0],\n", + " [18015.0, 18015.0, 18032.5, 18032.5],\n", + " [17992.5, 17992.5, 18023.75, 18023.75],\n", + " [17975.0, 17975.0, 18008.125, 18008.125],\n", + " [17617.5048828125, 17617.5048828125, 17991.5625, 17991.5625],\n", + " [17443.75, 17443.75, 17804.53369140625, 17804.53369140625],\n", + " [17420.0, 17420.0, 17624.141845703125, 17624.141845703125],\n", + " [17392.5, 17392.5, 17522.070922851562, 17522.070922851562],\n", + " [17370.0, 17370.0, 17457.28546142578, 17457.28546142578],\n", + " [17355.0, 17355.0, 17413.64273071289, 17413.64273071289],\n", + " [17345.0, 17345.0, 17384.321365356445, 17384.321365356445],\n", + " [16176.459851562977,\n", + " 16176.459851562977,\n", + " 17364.660682678223,\n", + " 17364.660682678223],\n", + " [16120.0, 16120.0, 16770.5602671206, 16770.5602671206],\n", + " [16100.0, 16100.0, 16445.2801335603, 16445.2801335603],\n", + " [16085.0, 16085.0, 16272.64006678015, 16272.64006678015],\n", + " [16075.0, 16075.0, 16178.820033390075, 16178.820033390075],\n", + " [16052.5, 16052.5, 16126.910016695037, 16126.910016695037],\n", + " [18075.0, 18075.0, 18085.0, 18085.0],\n", + " [18105.0, 18105.0, 18115.0, 18115.0],\n", + " [18095.0, 18095.0, 18110.0, 18110.0],\n", + " [18135.0, 18135.0, 18145.0, 18145.0],\n", + " [18195.0, 18195.0, 18205.0, 18205.0],\n", + " [18185.0, 18185.0, 18200.0, 18200.0],\n", + " [18225.0, 18225.0, 18235.0, 18235.0],\n", + " [18215.0, 18215.0, 18230.0, 18230.0],\n", + " [18255.0, 18255.0, 18265.0, 18265.0],\n", + " [18275.0, 18275.0, 18285.0, 18285.0],\n", + " [18295.0, 18295.0, 18305.0, 18305.0],\n", + " [18315.0, 18315.0, 18325.0, 18325.0],\n", + " [18335.0, 18335.0, 18345.0, 18345.0],\n", + " [18355.0, 18355.0, 18365.0, 18365.0],\n", + " [18340.0, 18340.0, 18360.0, 18360.0],\n", + " [18375.0, 18375.0, 18385.0, 18385.0],\n", + " [18395.0, 18395.0, 18405.0, 18405.0],\n", + " [18380.0, 18380.0, 18400.0, 18400.0],\n", + " [18350.0, 18350.0, 18390.0, 18390.0],\n", + " [18320.0, 18320.0, 18370.0, 18370.0],\n", + " [18300.0, 18300.0, 18345.0, 18345.0],\n", + " [18280.0, 18280.0, 18322.5, 18322.5],\n", + " [18260.0, 18260.0, 18301.25, 18301.25],\n", + " [18245.0, 18245.0, 18280.625, 18280.625],\n", + " [18222.5, 18222.5, 18262.8125, 18262.8125],\n", + " [18192.5, 18192.5, 18242.65625, 18242.65625],\n", + " [18175.0, 18175.0, 18217.578125, 18217.578125],\n", + " [18415.0, 18415.0, 18425.0, 18425.0],\n", + " [18435.0, 18435.0, 18445.0, 18445.0],\n", + " [18420.0, 18420.0, 18440.0, 18440.0],\n", + " [18196.2890625, 18196.2890625, 18430.0, 18430.0],\n", + " [18495.0, 18495.0, 18505.0, 18505.0],\n", + " [18485.0, 18485.0, 18500.0, 18500.0],\n", + " [18475.0, 18475.0, 18492.5, 18492.5],\n", + " [18465.0, 18465.0, 18483.75, 18483.75],\n", + " [18515.0, 18515.0, 18525.0, 18525.0],\n", + " [18555.0, 18555.0, 18565.0, 18565.0],\n", + " [18545.0, 18545.0, 18560.0, 18560.0],\n", + " [18535.0, 18535.0, 18552.5, 18552.5],\n", + " [18520.0, 18520.0, 18543.75, 18543.75],\n", + " [18474.375, 18474.375, 18531.875, 18531.875],\n", + " [18455.0, 18455.0, 18503.125, 18503.125],\n", + " [18595.0, 18595.0, 18605.0, 18605.0],\n", + " [18585.0, 18585.0, 18600.0, 18600.0],\n", + " [18575.0, 18575.0, 18592.5, 18592.5],\n", + " [18479.0625, 18479.0625, 18583.75, 18583.75],\n", + " [18313.14453125, 18313.14453125, 18531.40625, 18531.40625],\n", + " [18165.0, 18165.0, 18422.275390625, 18422.275390625],\n", + " [18155.0, 18155.0, 18293.6376953125, 18293.6376953125],\n", + " [18140.0, 18140.0, 18224.31884765625, 18224.31884765625],\n", + " [18625.0, 18625.0, 18635.0, 18635.0],\n", + " [18615.0, 18615.0, 18630.0, 18630.0],\n", + " [18665.0, 18665.0, 18675.0, 18675.0],\n", + " [18735.0, 18735.0, 18745.0, 18745.0],\n", + " [18725.0, 18725.0, 18740.0, 18740.0],\n", + " [18715.0, 18715.0, 18732.5, 18732.5],\n", + " [18705.0, 18705.0, 18723.75, 18723.75],\n", + " [18695.0, 18695.0, 18714.375, 18714.375],\n", + " [18685.0, 18685.0, 18704.6875, 18704.6875],\n", + " [18755.0, 18755.0, 18765.0, 18765.0],\n", + " [18694.84375, 18694.84375, 18760.0, 18760.0],\n", + " [18670.0, 18670.0, 18727.421875, 18727.421875],\n", + " [18795.0, 18795.0, 18805.0, 18805.0],\n", + " [18785.0, 18785.0, 18800.0, 18800.0],\n", + " [18775.0, 18775.0, 18792.5, 18792.5],\n", + " [18698.7109375, 18698.7109375, 18783.75, 18783.75],\n", + " [18885.0, 18885.0, 18895.0, 18895.0],\n", + " [18875.0, 18875.0, 18890.0, 18890.0],\n", + " [18905.0, 18905.0, 18915.0, 18915.0],\n", + " [18925.0, 18925.0, 18935.0, 18935.0],\n", + " [18945.0, 18945.0, 18955.0, 18955.0],\n", + " [18930.0, 18930.0, 18950.0, 18950.0],\n", + " [18910.0, 18910.0, 18940.0, 18940.0],\n", + " [18882.5, 18882.5, 18925.0, 18925.0],\n", + " [18865.0, 18865.0, 18903.75, 18903.75],\n", + " [18855.0, 18855.0, 18884.375, 18884.375],\n", + " [18845.0, 18845.0, 18869.6875, 18869.6875],\n", + " [18835.0, 18835.0, 18857.34375, 18857.34375],\n", + " [18825.0, 18825.0, 18846.171875, 18846.171875],\n", + " [18985.0, 18985.0, 18995.0, 18995.0],\n", + " [18975.0, 18975.0, 18990.0, 18990.0],\n", + " [18965.0, 18965.0, 18982.5, 18982.5],\n", + " [18835.5859375, 18835.5859375, 18973.75, 18973.75],\n", + " [18815.0, 18815.0, 18904.66796875, 18904.66796875],\n", + " [19035.0, 19035.0, 19045.0, 19045.0],\n", + " [19025.0, 19025.0, 19040.0, 19040.0],\n", + " [19015.0, 19015.0, 19032.5, 19032.5],\n", + " [19005.0, 19005.0, 19023.75, 19023.75],\n", + " [18859.833984375, 18859.833984375, 19014.375, 19014.375],\n", + " [18741.23046875, 18741.23046875, 18937.1044921875, 18937.1044921875],\n", + " [18655.0, 18655.0, 18839.16748046875, 18839.16748046875],\n", + " [18645.0, 18645.0, 18747.083740234375, 18747.083740234375],\n", + " [18622.5, 18622.5, 18696.041870117188, 18696.041870117188],\n", + " [18182.159423828125,\n", + " 18182.159423828125,\n", + " 18659.270935058594,\n", + " 18659.270935058594],\n", + " [18125.0, 18125.0, 18420.71517944336, 18420.71517944336],\n", + " [18102.5, 18102.5, 18272.85758972168, 18272.85758972168],\n", + " [18080.0, 18080.0, 18187.67879486084, 18187.67879486084],\n", + " [19055.0, 19055.0, 19065.0, 19065.0],\n", + " [19075.0, 19075.0, 19085.0, 19085.0],\n", + " [19060.0, 19060.0, 19080.0, 19080.0],\n", + " [19135.0, 19135.0, 19145.0, 19145.0],\n", + " [19125.0, 19125.0, 19140.0, 19140.0],\n", + " [19165.0, 19165.0, 19175.0, 19175.0],\n", + " [19155.0, 19155.0, 19170.0, 19170.0],\n", + " [19132.5, 19132.5, 19162.5, 19162.5],\n", + " [19115.0, 19115.0, 19147.5, 19147.5],\n", + " [19105.0, 19105.0, 19131.25, 19131.25],\n", + " [19095.0, 19095.0, 19118.125, 19118.125],\n", + " [19070.0, 19070.0, 19106.5625, 19106.5625],\n", + " [18133.83939743042, 18133.83939743042, 19088.28125, 19088.28125],\n", + " [18065.0, 18065.0, 18611.06032371521, 18611.06032371521],\n", + " [18055.0, 18055.0, 18338.030161857605, 18338.030161857605],\n", + " [16089.705008347519,\n", + " 16089.705008347519,\n", + " 18196.515080928802,\n", + " 18196.515080928802],\n", + " [16035.0, 16035.0, 17143.11004463816, 17143.11004463816],\n", + " [16020.0, 16020.0, 16589.05502231908, 16589.05502231908],\n", + " [16005.0, 16005.0, 16304.52751115954, 16304.52751115954],\n", + " [15973.75, 15973.75, 16154.76375557977, 16154.76375557977],\n", + " [15955.0, 15955.0, 16064.256877789885, 16064.256877789885],\n", + " [15945.0, 15945.0, 16009.628438894943, 16009.628438894943],\n", + " [15935.0, 15935.0, 15977.314219447471, 15977.314219447471],\n", + " [15925.0, 15925.0, 15956.157109723736, 15956.157109723736],\n", + " [15869.0625, 15869.0625, 15940.578554861868, 15940.578554861868],\n", + " [15835.0, 15835.0, 15904.820527430933, 15904.820527430933],\n", + " [15486.005444526672,\n", + " 15486.005444526672,\n", + " 15869.910263715466,\n", + " 15869.910263715466],\n", + " [15155.0, 15155.0, 15677.957854121069, 15677.957854121069],\n", + " [15145.0, 15145.0, 15416.478927060534, 15416.478927060534],\n", + " [15135.0, 15135.0, 15280.739463530266, 15280.739463530266],\n", + " [15125.0, 15125.0, 15207.869731765133, 15207.869731765133],\n", + " [19195.0, 19195.0, 19205.0, 19205.0],\n", + " [19215.0, 19215.0, 19225.0, 19225.0],\n", + " [19245.0, 19245.0, 19255.0, 19255.0],\n", + " [19235.0, 19235.0, 19250.0, 19250.0],\n", + " [19220.0, 19220.0, 19242.5, 19242.5],\n", + " [19200.0, 19200.0, 19231.25, 19231.25],\n", + " [19265.0, 19265.0, 19275.0, 19275.0],\n", + " [19295.0, 19295.0, 19305.0, 19305.0],\n", + " [19285.0, 19285.0, 19300.0, 19300.0],\n", + " [19270.0, 19270.0, 19292.5, 19292.5],\n", + " [19215.625, 19215.625, 19281.25, 19281.25],\n", + " [19185.0, 19185.0, 19248.4375, 19248.4375],\n", + " [19365.0, 19365.0, 19375.0, 19375.0],\n", + " [19405.0, 19405.0, 19415.0, 19415.0],\n", + " [19455.0, 19455.0, 19465.0, 19465.0],\n", + " [19445.0, 19445.0, 19460.0, 19460.0],\n", + " [19505.0, 19505.0, 19515.0, 19515.0],\n", + " [19495.0, 19495.0, 19510.0, 19510.0],\n", + " [19485.0, 19485.0, 19502.5, 19502.5],\n", + " [19475.0, 19475.0, 19493.75, 19493.75],\n", + " [19545.0, 19545.0, 19555.0, 19555.0],\n", + " [19535.0, 19535.0, 19550.0, 19550.0],\n", + " [19565.0, 19565.0, 19575.0, 19575.0],\n", + " [19542.5, 19542.5, 19570.0, 19570.0],\n", + " [19525.0, 19525.0, 19556.25, 19556.25],\n", + " [19605.0, 19605.0, 19615.0, 19615.0],\n", + " [19595.0, 19595.0, 19610.0, 19610.0],\n", + " [19585.0, 19585.0, 19602.5, 19602.5],\n", + " [19540.625, 19540.625, 19593.75, 19593.75],\n", + " [19635.0, 19635.0, 19645.0, 19645.0],\n", + " [19665.0, 19665.0, 19675.0, 19675.0],\n", + " [19655.0, 19655.0, 19670.0, 19670.0],\n", + " [19705.0, 19705.0, 19715.0, 19715.0],\n", + " [19695.0, 19695.0, 19710.0, 19710.0],\n", + " [19685.0, 19685.0, 19702.5, 19702.5],\n", + " [19735.0, 19735.0, 19745.0, 19745.0],\n", + " [19765.0, 19765.0, 19775.0, 19775.0],\n", + " [19755.0, 19755.0, 19770.0, 19770.0],\n", + " [19740.0, 19740.0, 19762.5, 19762.5],\n", + " [19825.0, 19825.0, 19835.0, 19835.0],\n", + " [19815.0, 19815.0, 19830.0, 19830.0],\n", + " [19805.0, 19805.0, 19822.5, 19822.5],\n", + " [19795.0, 19795.0, 19813.75, 19813.75],\n", + " [19785.0, 19785.0, 19804.375, 19804.375],\n", + " [19751.25, 19751.25, 19794.6875, 19794.6875],\n", + " [19855.0, 19855.0, 19865.0, 19865.0],\n", + " [19845.0, 19845.0, 19860.0, 19860.0],\n", + " [19772.96875, 19772.96875, 19852.5, 19852.5],\n", + " [19725.0, 19725.0, 19812.734375, 19812.734375],\n", + " [19693.75, 19693.75, 19768.8671875, 19768.8671875],\n", + " [19895.0, 19895.0, 19905.0, 19905.0],\n", + " [19885.0, 19885.0, 19900.0, 19900.0],\n", + " [19875.0, 19875.0, 19892.5, 19892.5],\n", + " [19945.0, 19945.0, 19955.0, 19955.0],\n", + " [19935.0, 19935.0, 19950.0, 19950.0],\n", + " [19925.0, 19925.0, 19942.5, 19942.5],\n", + " [19965.0, 19965.0, 19975.0, 19975.0],\n", + " [19985.0, 19985.0, 19995.0, 19995.0],\n", + " [20005.0, 20005.0, 20015.0, 20015.0],\n", + " [19990.0, 19990.0, 20010.0, 20010.0],\n", + " [20055.0, 20055.0, 20065.0, 20065.0],\n", + " [20075.0, 20075.0, 20085.0, 20085.0],\n", + " [20060.0, 20060.0, 20080.0, 20080.0],\n", + " [20045.0, 20045.0, 20070.0, 20070.0],\n", + " [20035.0, 20035.0, 20057.5, 20057.5],\n", + " [20105.0, 20105.0, 20115.0, 20115.0],\n", + " [20095.0, 20095.0, 20110.0, 20110.0],\n", + " [20125.0, 20125.0, 20135.0, 20135.0],\n", + " [20102.5, 20102.5, 20130.0, 20130.0],\n", + " [20165.0, 20165.0, 20175.0, 20175.0],\n", + " [20155.0, 20155.0, 20170.0, 20170.0],\n", + " [20145.0, 20145.0, 20162.5, 20162.5],\n", + " [20185.0, 20185.0, 20195.0, 20195.0],\n", + " [20215.0, 20215.0, 20225.0, 20225.0],\n", + " [20205.0, 20205.0, 20220.0, 20220.0],\n", + " [20190.0, 20190.0, 20212.5, 20212.5],\n", + " [20275.0, 20275.0, 20285.0, 20285.0],\n", + " [20265.0, 20265.0, 20280.0, 20280.0],\n", + " [20255.0, 20255.0, 20272.5, 20272.5],\n", + " [20245.0, 20245.0, 20263.75, 20263.75],\n", + " [20305.0, 20305.0, 20315.0, 20315.0],\n", + " [20295.0, 20295.0, 20310.0, 20310.0],\n", + " [20325.0, 20325.0, 20335.0, 20335.0],\n", + " [20302.5, 20302.5, 20330.0, 20330.0],\n", + " [20254.375, 20254.375, 20316.25, 20316.25],\n", + " [20375.0, 20375.0, 20385.0, 20385.0],\n", + " [20365.0, 20365.0, 20380.0, 20380.0],\n", + " [20395.0, 20395.0, 20405.0, 20405.0],\n", + " [20372.5, 20372.5, 20400.0, 20400.0],\n", + " [20435.0, 20435.0, 20445.0, 20445.0],\n", + " [20425.0, 20425.0, 20440.0, 20440.0],\n", + " [20415.0, 20415.0, 20432.5, 20432.5],\n", + " [20386.25, 20386.25, 20423.75, 20423.75],\n", + " [20355.0, 20355.0, 20405.0, 20405.0],\n", + " [20345.0, 20345.0, 20380.0, 20380.0],\n", + " [20285.3125, 20285.3125, 20362.5, 20362.5],\n", + " [20235.0, 20235.0, 20323.90625, 20323.90625],\n", + " [20201.25, 20201.25, 20279.453125, 20279.453125],\n", + " [20153.75, 20153.75, 20240.3515625, 20240.3515625],\n", + " [20116.25, 20116.25, 20197.05078125, 20197.05078125],\n", + " [20455.0, 20455.0, 20465.0, 20465.0],\n", + " [20475.0, 20475.0, 20485.0, 20485.0],\n", + " [20460.0, 20460.0, 20480.0, 20480.0],\n", + " [20156.650390625, 20156.650390625, 20470.0, 20470.0],\n", + " [20505.0, 20505.0, 20515.0, 20515.0],\n", + " [20495.0, 20495.0, 20510.0, 20510.0],\n", + " [20545.0, 20545.0, 20555.0, 20555.0],\n", + " [20565.0, 20565.0, 20575.0, 20575.0],\n", + " [20550.0, 20550.0, 20570.0, 20570.0],\n", + " [20535.0, 20535.0, 20560.0, 20560.0],\n", + " [20605.0, 20605.0, 20615.0, 20615.0],\n", + " [20595.0, 20595.0, 20610.0, 20610.0],\n", + " [20585.0, 20585.0, 20602.5, 20602.5],\n", + " [20547.5, 20547.5, 20593.75, 20593.75],\n", + " [20645.0, 20645.0, 20655.0, 20655.0],\n", + " [20635.0, 20635.0, 20650.0, 20650.0],\n", + " [20625.0, 20625.0, 20642.5, 20642.5],\n", + " [20570.625, 20570.625, 20633.75, 20633.75],\n", + " [20525.0, 20525.0, 20602.1875, 20602.1875],\n", + " [20502.5, 20502.5, 20563.59375, 20563.59375],\n", + " [20685.0, 20685.0, 20695.0, 20695.0],\n", + " [20675.0, 20675.0, 20690.0, 20690.0],\n", + " [20665.0, 20665.0, 20682.5, 20682.5],\n", + " [20533.046875, 20533.046875, 20673.75, 20673.75],\n", + " [20313.3251953125, 20313.3251953125, 20603.3984375, 20603.3984375],\n", + " [20046.25, 20046.25, 20458.36181640625, 20458.36181640625],\n", + " [20025.0, 20025.0, 20252.305908203125, 20252.305908203125],\n", + " [20000.0, 20000.0, 20138.652954101562, 20138.652954101562],\n", + " [19970.0, 19970.0, 20069.32647705078, 20069.32647705078],\n", + " [19933.75, 19933.75, 20019.66323852539, 20019.66323852539],\n", + " [19915.0, 19915.0, 19976.706619262695, 19976.706619262695],\n", + " [19883.75, 19883.75, 19945.853309631348, 19945.853309631348],\n", + " [19731.30859375, 19731.30859375, 19914.801654815674, 19914.801654815674],\n", + " [19662.5, 19662.5, 19823.055124282837, 19823.055124282837],\n", + " [19640.0, 19640.0, 19742.77756214142, 19742.77756214142],\n", + " [19625.0, 19625.0, 19691.38878107071, 19691.38878107071],\n", + " [19567.1875, 19567.1875, 19658.194390535355, 19658.194390535355],\n", + " [19484.375, 19484.375, 19612.690945267677, 19612.690945267677],\n", + " [19452.5, 19452.5, 19548.53297263384, 19548.53297263384],\n", + " [19435.0, 19435.0, 19500.51648631692, 19500.51648631692],\n", + " [19425.0, 19425.0, 19467.75824315846, 19467.75824315846],\n", + " [19410.0, 19410.0, 19446.37912157923, 19446.37912157923],\n", + " [19395.0, 19395.0, 19428.189560789615, 19428.189560789615],\n", + " [19385.0, 19385.0, 19411.594780394807, 19411.594780394807],\n", + " [19370.0, 19370.0, 19398.297390197404, 19398.297390197404],\n", + " [19355.0, 19355.0, 19384.148695098702, 19384.148695098702],\n", + " [20715.0, 20715.0, 20725.0, 20725.0],\n", + " [20705.0, 20705.0, 20720.0, 20720.0],\n", + " [20745.0, 20745.0, 20755.0, 20755.0],\n", + " [20735.0, 20735.0, 20750.0, 20750.0],\n", + " [20712.5, 20712.5, 20742.5, 20742.5],\n", + " [19369.57434754935, 19369.57434754935, 20727.5, 20727.5],\n", + " [19345.0, 19345.0, 20048.537173774675, 20048.537173774675],\n", + " [19335.0, 19335.0, 19696.768586887338, 19696.768586887338],\n", + " [19325.0, 19325.0, 19515.88429344367, 19515.88429344367],\n", + " [19315.0, 19315.0, 19420.442146721834, 19420.442146721834],\n", + " [20765.0, 20765.0, 20775.0, 20775.0],\n", + " [20795.0, 20795.0, 20805.0, 20805.0],\n", + " [20835.0, 20835.0, 20845.0, 20845.0],\n", + " [20825.0, 20825.0, 20840.0, 20840.0],\n", + " [20815.0, 20815.0, 20832.5, 20832.5],\n", + " [20865.0, 20865.0, 20875.0, 20875.0],\n", + " [20855.0, 20855.0, 20870.0, 20870.0],\n", + " [20823.75, 20823.75, 20862.5, 20862.5],\n", + " [20800.0, 20800.0, 20843.125, 20843.125],\n", + " [20895.0, 20895.0, 20905.0, 20905.0],\n", + " [20915.0, 20915.0, 20925.0, 20925.0],\n", + " [20900.0, 20900.0, 20920.0, 20920.0],\n", + " [20955.0, 20955.0, 20965.0, 20965.0],\n", + " [20995.0, 20995.0, 21005.0, 21005.0],\n", + " [20985.0, 20985.0, 21000.0, 21000.0],\n", + " [20975.0, 20975.0, 20992.5, 20992.5],\n", + " [20960.0, 20960.0, 20983.75, 20983.75],\n", + " [20945.0, 20945.0, 20971.875, 20971.875],\n", + " [20935.0, 20935.0, 20958.4375, 20958.4375],\n", + " [21045.0, 21045.0, 21055.0, 21055.0],\n", + " [21035.0, 21035.0, 21050.0, 21050.0],\n", + " [21095.0, 21095.0, 21105.0, 21105.0],\n", + " [21085.0, 21085.0, 21100.0, 21100.0],\n", + " [21125.0, 21125.0, 21135.0, 21135.0],\n", + " [21165.0, 21165.0, 21175.0, 21175.0],\n", + " [21185.0, 21185.0, 21195.0, 21195.0],\n", + " [21170.0, 21170.0, 21190.0, 21190.0],\n", + " [21155.0, 21155.0, 21180.0, 21180.0],\n", + " [21145.0, 21145.0, 21167.5, 21167.5],\n", + " [21255.0, 21255.0, 21265.0, 21265.0],\n", + " [21245.0, 21245.0, 21260.0, 21260.0],\n", + " [21235.0, 21235.0, 21252.5, 21252.5],\n", + " [21225.0, 21225.0, 21243.75, 21243.75],\n", + " [21215.0, 21215.0, 21234.375, 21234.375],\n", + " [21205.0, 21205.0, 21224.6875, 21224.6875],\n", + " [21275.0, 21275.0, 21285.0, 21285.0],\n", + " [21295.0, 21295.0, 21305.0, 21305.0],\n", + " [21325.0, 21325.0, 21335.0, 21335.0],\n", + " [21315.0, 21315.0, 21330.0, 21330.0],\n", + " [21300.0, 21300.0, 21322.5, 21322.5],\n", + " [21365.0, 21365.0, 21375.0, 21375.0],\n", + " [21355.0, 21355.0, 21370.0, 21370.0],\n", + " [21345.0, 21345.0, 21362.5, 21362.5],\n", + " [21311.25, 21311.25, 21353.75, 21353.75],\n", + " [21280.0, 21280.0, 21332.5, 21332.5],\n", + " [21395.0, 21395.0, 21405.0, 21405.0],\n", + " [21385.0, 21385.0, 21400.0, 21400.0],\n", + " [21306.25, 21306.25, 21392.5, 21392.5],\n", + " [21214.84375, 21214.84375, 21349.375, 21349.375],\n", + " [21156.25, 21156.25, 21282.109375, 21282.109375],\n", + " [21435.0, 21435.0, 21445.0, 21445.0],\n", + " [21465.0, 21465.0, 21475.0, 21475.0],\n", + " [21455.0, 21455.0, 21470.0, 21470.0],\n", + " [21485.0, 21485.0, 21495.0, 21495.0],\n", + " [21515.0, 21515.0, 21525.0, 21525.0],\n", + " [21505.0, 21505.0, 21520.0, 21520.0],\n", + " [21490.0, 21490.0, 21512.5, 21512.5],\n", + " [21462.5, 21462.5, 21501.25, 21501.25],\n", + " [21545.0, 21545.0, 21555.0, 21555.0],\n", + " [21585.0, 21585.0, 21595.0, 21595.0],\n", + " [21575.0, 21575.0, 21590.0, 21590.0],\n", + " [21605.0, 21605.0, 21615.0, 21615.0],\n", + " [21625.0, 21625.0, 21635.0, 21635.0],\n", + " [21610.0, 21610.0, 21630.0, 21630.0],\n", + " [21582.5, 21582.5, 21620.0, 21620.0],\n", + " [21565.0, 21565.0, 21601.25, 21601.25],\n", + " [21550.0, 21550.0, 21583.125, 21583.125],\n", + " [21535.0, 21535.0, 21566.5625, 21566.5625],\n", + " [21481.875, 21481.875, 21550.78125, 21550.78125],\n", + " [21440.0, 21440.0, 21516.328125, 21516.328125],\n", + " [21425.0, 21425.0, 21478.1640625, 21478.1640625],\n", + " [21415.0, 21415.0, 21451.58203125, 21451.58203125],\n", + " [21219.1796875, 21219.1796875, 21433.291015625, 21433.291015625],\n", + " [21130.0, 21130.0, 21326.2353515625, 21326.2353515625],\n", + " [21115.0, 21115.0, 21228.11767578125, 21228.11767578125],\n", + " [21092.5, 21092.5, 21171.558837890625, 21171.558837890625],\n", + " [21075.0, 21075.0, 21132.029418945312, 21132.029418945312],\n", + " [21065.0, 21065.0, 21103.514709472656, 21103.514709472656],\n", + " [21042.5, 21042.5, 21084.257354736328, 21084.257354736328],\n", + " [21025.0, 21025.0, 21063.378677368164, 21063.378677368164],\n", + " [21015.0, 21015.0, 21044.189338684082, 21044.189338684082],\n", + " [20946.71875, 20946.71875, 21029.59466934204, 21029.59466934204],\n", + " [20910.0, 20910.0, 20988.15670967102, 20988.15670967102],\n", + " [20885.0, 20885.0, 20949.07835483551, 20949.07835483551],\n", + " [20821.5625, 20821.5625, 20917.039177417755, 20917.039177417755],\n", + " [20785.0, 20785.0, 20869.300838708878, 20869.300838708878],\n", + " [20770.0, 20770.0, 20827.15041935444, 20827.15041935444],\n", + " [19367.721073360917,\n", + " 19367.721073360917,\n", + " 20798.57520967722,\n", + " 20798.57520967722],\n", + " [19216.71875, 19216.71875, 20083.14814151907, 20083.14814151907],\n", + " [15166.434865882566,\n", + " 15166.434865882566,\n", + " 19649.933445759532,\n", + " 19649.933445759532],\n", + " [14516.048107147217,\n", + " 14516.048107147217,\n", + " 17408.18415582105,\n", + " 17408.18415582105],\n", + " [14310.0, 14310.0, 15962.116131484134, 15962.116131484134],\n", + " [21655.0, 21655.0, 21665.0, 21665.0],\n", + " [21715.0, 21715.0, 21725.0, 21725.0],\n", + " [21705.0, 21705.0, 21720.0, 21720.0],\n", + " [21735.0, 21735.0, 21745.0, 21745.0],\n", + " [21712.5, 21712.5, 21740.0, 21740.0],\n", + " [21695.0, 21695.0, 21726.25, 21726.25],\n", + " [21755.0, 21755.0, 21765.0, 21765.0],\n", + " [21710.625, 21710.625, 21760.0, 21760.0],\n", + " [21685.0, 21685.0, 21735.3125, 21735.3125],\n", + " [21675.0, 21675.0, 21710.15625, 21710.15625],\n", + " [21660.0, 21660.0, 21692.578125, 21692.578125],\n", + " [21645.0, 21645.0, 21676.2890625, 21676.2890625],\n", + " [15136.058065742067, 15136.058065742067, 21660.64453125, 21660.64453125],\n", + " [14184.4921875, 14184.4921875, 18398.351298496033, 18398.351298496033],\n", + " [13879.228515625, 13879.228515625, 16291.421742998016, 16291.421742998016],\n", + " [13833.75, 13833.75, 15085.325129311508, 15085.325129311508],\n", + " [13435.665893554688,\n", + " 13435.665893554688,\n", + " 14459.537564655755,\n", + " 14459.537564655755],\n", + " [13289.43359375, 13289.43359375, 13947.601729105221, 13947.601729105221],\n", + " [11945.857965052128,\n", + " 11945.857965052128,\n", + " 13618.51766142761,\n", + " 13618.51766142761],\n", + " [2954.673829513189,\n", + " 2954.673829513189,\n", + " 12782.187813239869,\n", + " 12782.187813239869],\n", + " [2610.0, 2610.0, 7868.430821376529, 7868.430821376529],\n", + " [2439.8828125, 2439.8828125, 5239.2154106882645, 5239.2154106882645],\n", + " [21785.0, 21785.0, 21795.0, 21795.0],\n", + " [21815.0, 21815.0, 21825.0, 21825.0],\n", + " [21805.0, 21805.0, 21820.0, 21820.0],\n", + " [21790.0, 21790.0, 21812.5, 21812.5],\n", + " [21855.0, 21855.0, 21865.0, 21865.0],\n", + " [21845.0, 21845.0, 21860.0, 21860.0],\n", + " [21915.0, 21915.0, 21925.0, 21925.0],\n", + " [21965.0, 21965.0, 21975.0, 21975.0],\n", + " [21955.0, 21955.0, 21970.0, 21970.0],\n", + " [22035.0, 22035.0, 22045.0, 22045.0],\n", + " [22025.0, 22025.0, 22040.0, 22040.0],\n", + " [22015.0, 22015.0, 22032.5, 22032.5],\n", + " [22065.0, 22065.0, 22075.0, 22075.0],\n", + " [22095.0, 22095.0, 22105.0, 22105.0],\n", + " [22145.0, 22145.0, 22155.0, 22155.0],\n", + " [22135.0, 22135.0, 22150.0, 22150.0],\n", + " [22125.0, 22125.0, 22142.5, 22142.5],\n", + " [22115.0, 22115.0, 22133.75, 22133.75],\n", + " [22175.0, 22175.0, 22185.0, 22185.0],\n", + " [22165.0, 22165.0, 22180.0, 22180.0],\n", + " [22195.0, 22195.0, 22205.0, 22205.0],\n", + " [22225.0, 22225.0, 22235.0, 22235.0],\n", + " [22215.0, 22215.0, 22230.0, 22230.0],\n", + " [22200.0, 22200.0, 22222.5, 22222.5],\n", + " [22172.5, 22172.5, 22211.25, 22211.25],\n", + " [22124.375, 22124.375, 22191.875, 22191.875],\n", + " [22255.0, 22255.0, 22265.0, 22265.0],\n", + " [22245.0, 22245.0, 22260.0, 22260.0],\n", + " [22315.0, 22315.0, 22325.0, 22325.0],\n", + " [22305.0, 22305.0, 22320.0, 22320.0],\n", + " [22295.0, 22295.0, 22312.5, 22312.5],\n", + " [22285.0, 22285.0, 22303.75, 22303.75],\n", + " [22355.0, 22355.0, 22365.0, 22365.0],\n", + " [22345.0, 22345.0, 22360.0, 22360.0],\n", + " [22335.0, 22335.0, 22352.5, 22352.5],\n", + " [22375.0, 22375.0, 22385.0, 22385.0],\n", + " [22343.75, 22343.75, 22380.0, 22380.0],\n", + " [22294.375, 22294.375, 22361.875, 22361.875],\n", + " [22275.0, 22275.0, 22328.125, 22328.125],\n", + " [22252.5, 22252.5, 22301.5625, 22301.5625],\n", + " [22158.125, 22158.125, 22277.03125, 22277.03125],\n", + " [22100.0, 22100.0, 22217.578125, 22217.578125],\n", + " [22085.0, 22085.0, 22158.7890625, 22158.7890625],\n", + " [22070.0, 22070.0, 22121.89453125, 22121.89453125],\n", + " [22055.0, 22055.0, 22095.947265625, 22095.947265625],\n", + " [22023.75, 22023.75, 22075.4736328125, 22075.4736328125],\n", + " [22005.0, 22005.0, 22049.61181640625, 22049.61181640625],\n", + " [21995.0, 21995.0, 22027.305908203125, 22027.305908203125],\n", + " [21985.0, 21985.0, 22011.152954101562, 22011.152954101562],\n", + " [21962.5, 21962.5, 21998.07647705078, 21998.07647705078],\n", + " [21945.0, 21945.0, 21980.28823852539, 21980.28823852539],\n", + " [21935.0, 21935.0, 21962.644119262695, 21962.644119262695],\n", + " [21920.0, 21920.0, 21948.822059631348, 21948.822059631348],\n", + " [21905.0, 21905.0, 21934.411029815674, 21934.411029815674],\n", + " [21895.0, 21895.0, 21919.705514907837, 21919.705514907837],\n", + " [21885.0, 21885.0, 21907.35275745392, 21907.35275745392],\n", + " [22395.0, 22395.0, 22405.0, 22405.0],\n", + " [21896.17637872696, 21896.17637872696, 22400.0, 22400.0],\n", + " [21875.0, 21875.0, 22148.08818936348, 22148.08818936348],\n", + " [21852.5, 21852.5, 22011.54409468174, 22011.54409468174],\n", + " [21835.0, 21835.0, 21932.02204734087, 21932.02204734087],\n", + " [21801.25, 21801.25, 21883.511023670435, 21883.511023670435],\n", + " [22435.0, 22435.0, 22445.0, 22445.0],\n", + " [22425.0, 22425.0, 22440.0, 22440.0],\n", + " [22495.0, 22495.0, 22505.0, 22505.0],\n", + " [22485.0, 22485.0, 22500.0, 22500.0],\n", + " [22475.0, 22475.0, 22492.5, 22492.5],\n", + " [22465.0, 22465.0, 22483.75, 22483.75],\n", + " [22525.0, 22525.0, 22535.0, 22535.0],\n", + " [22515.0, 22515.0, 22530.0, 22530.0],\n", + " [22474.375, 22474.375, 22522.5, 22522.5],\n", + " [22455.0, 22455.0, 22498.4375, 22498.4375],\n", + " [22432.5, 22432.5, 22476.71875, 22476.71875],\n", + " [22415.0, 22415.0, 22454.609375, 22454.609375],\n", + " [21842.380511835217, 21842.380511835217, 22434.8046875, 22434.8046875],\n", + " [21775.0, 21775.0, 22138.59259966761, 22138.59259966761],\n", + " [22595.0, 22595.0, 22605.0, 22605.0],\n", + " [22625.0, 22625.0, 22635.0, 22635.0],\n", + " [22675.0, 22675.0, 22685.0, 22685.0],\n", + " [22725.0, 22725.0, 22735.0, 22735.0],\n", + " [22715.0, 22715.0, 22730.0, 22730.0],\n", + " [22705.0, 22705.0, 22722.5, 22722.5],\n", + " [22695.0, 22695.0, 22713.75, 22713.75],\n", + " [22680.0, 22680.0, 22704.375, 22704.375],\n", + " [22665.0, 22665.0, 22692.1875, 22692.1875],\n", + " [22655.0, 22655.0, 22678.59375, 22678.59375],\n", + " [22645.0, 22645.0, 22666.796875, 22666.796875],\n", + " [22630.0, 22630.0, 22655.8984375, 22655.8984375],\n", + " [22615.0, 22615.0, 22642.94921875, 22642.94921875],\n", + " [22600.0, 22600.0, 22628.974609375, 22628.974609375],\n", + " [22585.0, 22585.0, 22614.4873046875, 22614.4873046875],\n", + " [22575.0, 22575.0, 22599.74365234375, 22599.74365234375],\n", + " [22775.0, 22775.0, 22785.0, 22785.0],\n", + " [22765.0, 22765.0, 22780.0, 22780.0],\n", + " [22755.0, 22755.0, 22772.5, 22772.5],\n", + " [22795.0, 22795.0, 22805.0, 22805.0],\n", + " [22875.0, 22875.0, 22885.0, 22885.0],\n", + " [22865.0, 22865.0, 22880.0, 22880.0],\n", + " [22965.0, 22965.0, 22975.0, 22975.0],\n", + " [22955.0, 22955.0, 22970.0, 22970.0],\n", + " [22985.0, 22985.0, 22995.0, 22995.0],\n", + " [22962.5, 22962.5, 22990.0, 22990.0],\n", + " [22945.0, 22945.0, 22976.25, 22976.25],\n", + " [22935.0, 22935.0, 22960.625, 22960.625],\n", + " [22925.0, 22925.0, 22947.8125, 22947.8125],\n", + " [23045.0, 23045.0, 23055.0, 23055.0],\n", + " [23035.0, 23035.0, 23050.0, 23050.0],\n", + " [23025.0, 23025.0, 23042.5, 23042.5],\n", + " [23015.0, 23015.0, 23033.75, 23033.75],\n", + " [23005.0, 23005.0, 23024.375, 23024.375],\n", + " [22936.40625, 22936.40625, 23014.6875, 23014.6875],\n", + " [23075.0, 23075.0, 23085.0, 23085.0],\n", + " [23065.0, 23065.0, 23080.0, 23080.0],\n", + " [23095.0, 23095.0, 23105.0, 23105.0],\n", + " [23072.5, 23072.5, 23100.0, 23100.0],\n", + " [22975.546875, 22975.546875, 23086.25, 23086.25],\n", + " [22915.0, 22915.0, 23030.8984375, 23030.8984375],\n", + " [22905.0, 22905.0, 22972.94921875, 22972.94921875],\n", + " [23115.0, 23115.0, 23125.0, 23125.0],\n", + " [23135.0, 23135.0, 23145.0, 23145.0],\n", + " [23175.0, 23175.0, 23185.0, 23185.0],\n", + " [23165.0, 23165.0, 23180.0, 23180.0],\n", + " [23195.0, 23195.0, 23205.0, 23205.0],\n", + " [23172.5, 23172.5, 23200.0, 23200.0],\n", + " [23155.0, 23155.0, 23186.25, 23186.25],\n", + " [23140.0, 23140.0, 23170.625, 23170.625],\n", + " [23120.0, 23120.0, 23155.3125, 23155.3125],\n", + " [22938.974609375, 22938.974609375, 23137.65625, 23137.65625],\n", + " [22895.0, 22895.0, 23038.3154296875, 23038.3154296875],\n", + " [22872.5, 22872.5, 22966.65771484375, 22966.65771484375],\n", + " [22855.0, 22855.0, 22919.578857421875, 22919.578857421875],\n", + " [22845.0, 22845.0, 22887.289428710938, 22887.289428710938],\n", + " [22835.0, 22835.0, 22866.14471435547, 22866.14471435547],\n", + " [23265.0, 23265.0, 23275.0, 23275.0],\n", + " [23255.0, 23255.0, 23270.0, 23270.0],\n", + " [23295.0, 23295.0, 23305.0, 23305.0],\n", + " [23285.0, 23285.0, 23300.0, 23300.0],\n", + " [23262.5, 23262.5, 23292.5, 23292.5],\n", + " [23245.0, 23245.0, 23277.5, 23277.5],\n", + " [23235.0, 23235.0, 23261.25, 23261.25],\n", + " [23225.0, 23225.0, 23248.125, 23248.125],\n", + " [23215.0, 23215.0, 23236.5625, 23236.5625],\n", + " [22850.572357177734, 22850.572357177734, 23225.78125, 23225.78125],\n", + " [22825.0, 22825.0, 23038.176803588867, 23038.176803588867],\n", + " [22815.0, 22815.0, 22931.588401794434, 22931.588401794434],\n", + " [22800.0, 22800.0, 22873.294200897217, 22873.294200897217],\n", + " [22763.75, 22763.75, 22836.64710044861, 22836.64710044861],\n", + " [22745.0, 22745.0, 22800.198550224304, 22800.198550224304],\n", + " [22587.371826171875,\n", + " 22587.371826171875,\n", + " 22772.599275112152,\n", + " 22772.599275112152],\n", + " [22565.0, 22565.0, 22679.985550642014, 22679.985550642014],\n", + " [23315.0, 23315.0, 23325.0, 23325.0],\n", + " [23395.0, 23395.0, 23405.0, 23405.0],\n", + " [23385.0, 23385.0, 23400.0, 23400.0],\n", + " [23375.0, 23375.0, 23392.5, 23392.5],\n", + " [23365.0, 23365.0, 23383.75, 23383.75],\n", + " [23435.0, 23435.0, 23445.0, 23445.0],\n", + " [23425.0, 23425.0, 23440.0, 23440.0],\n", + " [23465.0, 23465.0, 23475.0, 23475.0],\n", + " [23485.0, 23485.0, 23495.0, 23495.0],\n", + " [23525.0, 23525.0, 23535.0, 23535.0],\n", + " [23515.0, 23515.0, 23530.0, 23530.0],\n", + " [23545.0, 23545.0, 23555.0, 23555.0],\n", + " [23615.0, 23615.0, 23625.0, 23625.0],\n", + " [23605.0, 23605.0, 23620.0, 23620.0],\n", + " [23595.0, 23595.0, 23612.5, 23612.5],\n", + " [23635.0, 23635.0, 23645.0, 23645.0],\n", + " [23675.0, 23675.0, 23685.0, 23685.0],\n", + " [23665.0, 23665.0, 23680.0, 23680.0],\n", + " [23655.0, 23655.0, 23672.5, 23672.5],\n", + " [23640.0, 23640.0, 23663.75, 23663.75],\n", + " [23755.0, 23755.0, 23765.0, 23765.0],\n", + " [23745.0, 23745.0, 23760.0, 23760.0],\n", + " [23735.0, 23735.0, 23752.5, 23752.5],\n", + " [23725.0, 23725.0, 23743.75, 23743.75],\n", + " [23715.0, 23715.0, 23734.375, 23734.375],\n", + " [23705.0, 23705.0, 23724.6875, 23724.6875],\n", + " [23695.0, 23695.0, 23714.84375, 23714.84375],\n", + " [23775.0, 23775.0, 23785.0, 23785.0],\n", + " [23795.0, 23795.0, 23805.0, 23805.0],\n", + " [23815.0, 23815.0, 23825.0, 23825.0],\n", + " [23800.0, 23800.0, 23820.0, 23820.0],\n", + " [23835.0, 23835.0, 23845.0, 23845.0],\n", + " [23810.0, 23810.0, 23840.0, 23840.0],\n", + " [23865.0, 23865.0, 23875.0, 23875.0],\n", + " [23895.0, 23895.0, 23905.0, 23905.0],\n", + " [23885.0, 23885.0, 23900.0, 23900.0],\n", + " [23915.0, 23915.0, 23925.0, 23925.0],\n", + " [23935.0, 23935.0, 23945.0, 23945.0],\n", + " [23920.0, 23920.0, 23940.0, 23940.0],\n", + " [23892.5, 23892.5, 23930.0, 23930.0],\n", + " [23870.0, 23870.0, 23911.25, 23911.25],\n", + " [23855.0, 23855.0, 23890.625, 23890.625],\n", + " [23965.0, 23965.0, 23975.0, 23975.0],\n", + " [23955.0, 23955.0, 23970.0, 23970.0],\n", + " [23985.0, 23985.0, 23995.0, 23995.0],\n", + " [24015.0, 24015.0, 24025.0, 24025.0],\n", + " [24045.0, 24045.0, 24055.0, 24055.0],\n", + " [24035.0, 24035.0, 24050.0, 24050.0],\n", + " [24020.0, 24020.0, 24042.5, 24042.5],\n", + " [24005.0, 24005.0, 24031.25, 24031.25],\n", + " [23990.0, 23990.0, 24018.125, 24018.125],\n", + " [23962.5, 23962.5, 24004.0625, 24004.0625],\n", + " [23872.8125, 23872.8125, 23983.28125, 23983.28125],\n", + " [23825.0, 23825.0, 23928.046875, 23928.046875],\n", + " [23780.0, 23780.0, 23876.5234375, 23876.5234375],\n", + " [23704.921875, 23704.921875, 23828.26171875, 23828.26171875],\n", + " [23651.875, 23651.875, 23766.591796875, 23766.591796875],\n", + " [24075.0, 24075.0, 24085.0, 24085.0],\n", + " [24065.0, 24065.0, 24080.0, 24080.0],\n", + " [24105.0, 24105.0, 24115.0, 24115.0],\n", + " [24095.0, 24095.0, 24110.0, 24110.0],\n", + " [24125.0, 24125.0, 24135.0, 24135.0],\n", + " [24145.0, 24145.0, 24155.0, 24155.0],\n", + " [24130.0, 24130.0, 24150.0, 24150.0],\n", + " [24102.5, 24102.5, 24140.0, 24140.0],\n", + " [24072.5, 24072.5, 24121.25, 24121.25],\n", + " [23709.2333984375, 23709.2333984375, 24096.875, 24096.875],\n", + " [23603.75, 23603.75, 23903.05419921875, 23903.05419921875],\n", + " [23585.0, 23585.0, 23753.402099609375, 23753.402099609375],\n", + " [23575.0, 23575.0, 23669.201049804688, 23669.201049804688],\n", + " [23565.0, 23565.0, 23622.100524902344, 23622.100524902344],\n", + " [23550.0, 23550.0, 23593.550262451172, 23593.550262451172],\n", + " [23522.5, 23522.5, 23571.775131225586, 23571.775131225586],\n", + " [23505.0, 23505.0, 23547.137565612793, 23547.137565612793],\n", + " [23490.0, 23490.0, 23526.068782806396, 23526.068782806396],\n", + " [24215.0, 24215.0, 24225.0, 24225.0],\n", + " [24255.0, 24255.0, 24265.0, 24265.0],\n", + " [24245.0, 24245.0, 24260.0, 24260.0],\n", + " [24295.0, 24295.0, 24305.0, 24305.0],\n", + " [24285.0, 24285.0, 24300.0, 24300.0],\n", + " [24275.0, 24275.0, 24292.5, 24292.5],\n", + " [24252.5, 24252.5, 24283.75, 24283.75],\n", + " [24235.0, 24235.0, 24268.125, 24268.125],\n", + " [24220.0, 24220.0, 24251.5625, 24251.5625],\n", + " [24205.0, 24205.0, 24235.78125, 24235.78125],\n", + " [24195.0, 24195.0, 24220.390625, 24220.390625],\n", + " [24185.0, 24185.0, 24207.6953125, 24207.6953125],\n", + " [24175.0, 24175.0, 24196.34765625, 24196.34765625],\n", + " [24165.0, 24165.0, 24185.673828125, 24185.673828125],\n", + " [23508.0343914032, 23508.0343914032, 24175.3369140625, 24175.3369140625],\n", + " [23470.0, 23470.0, 23841.68565273285, 23841.68565273285],\n", + " [23455.0, 23455.0, 23655.842826366425, 23655.842826366425],\n", + " [23432.5, 23432.5, 23555.421413183212, 23555.421413183212],\n", + " [23415.0, 23415.0, 23493.960706591606, 23493.960706591606],\n", + " [23374.375, 23374.375, 23454.480353295803, 23454.480353295803],\n", + " [23355.0, 23355.0, 23414.4276766479, 23414.4276766479],\n", + " [23345.0, 23345.0, 23384.71383832395, 23384.71383832395],\n", + " [23335.0, 23335.0, 23364.856919161975, 23364.856919161975],\n", + " [23320.0, 23320.0, 23349.928459580988, 23349.928459580988],\n", + " [22622.492775321007,\n", + " 22622.492775321007,\n", + " 23334.964229790494,\n", + " 23334.964229790494],\n", + " [22555.0, 22555.0, 22978.72850255575, 22978.72850255575],\n", + " [22545.0, 22545.0, 22766.864251277875, 22766.864251277875],\n", + " [24325.0, 24325.0, 24335.0, 24335.0],\n", + " [24315.0, 24315.0, 24330.0, 24330.0],\n", + " [24375.0, 24375.0, 24385.0, 24385.0],\n", + " [24365.0, 24365.0, 24380.0, 24380.0],\n", + " [24395.0, 24395.0, 24405.0, 24405.0],\n", + " [24372.5, 24372.5, 24400.0, 24400.0],\n", + " [24355.0, 24355.0, 24386.25, 24386.25],\n", + " [24345.0, 24345.0, 24370.625, 24370.625],\n", + " [24455.0, 24455.0, 24465.0, 24465.0],\n", + " [24445.0, 24445.0, 24460.0, 24460.0],\n", + " [24435.0, 24435.0, 24452.5, 24452.5],\n", + " [24425.0, 24425.0, 24443.75, 24443.75],\n", + " [24485.0, 24485.0, 24495.0, 24495.0],\n", + " [24525.0, 24525.0, 24535.0, 24535.0],\n", + " [24515.0, 24515.0, 24530.0, 24530.0],\n", + " [24505.0, 24505.0, 24522.5, 24522.5],\n", + " [24490.0, 24490.0, 24513.75, 24513.75],\n", + " [24595.0, 24595.0, 24605.0, 24605.0],\n", + " [24585.0, 24585.0, 24600.0, 24600.0],\n", + " [24575.0, 24575.0, 24592.5, 24592.5],\n", + " [24615.0, 24615.0, 24625.0, 24625.0],\n", + " [24583.75, 24583.75, 24620.0, 24620.0],\n", + " [24565.0, 24565.0, 24601.875, 24601.875],\n", + " [24555.0, 24555.0, 24583.4375, 24583.4375],\n", + " [24545.0, 24545.0, 24569.21875, 24569.21875],\n", + " [24501.875, 24501.875, 24557.109375, 24557.109375],\n", + " [24475.0, 24475.0, 24529.4921875, 24529.4921875],\n", + " [24434.375, 24434.375, 24502.24609375, 24502.24609375],\n", + " [24415.0, 24415.0, 24468.310546875, 24468.310546875],\n", + " [24635.0, 24635.0, 24645.0, 24645.0],\n", + " [24665.0, 24665.0, 24675.0, 24675.0],\n", + " [24725.0, 24725.0, 24735.0, 24735.0],\n", + " [24715.0, 24715.0, 24730.0, 24730.0],\n", + " [24705.0, 24705.0, 24722.5, 24722.5],\n", + " [24695.0, 24695.0, 24713.75, 24713.75],\n", + " [24685.0, 24685.0, 24704.375, 24704.375],\n", + " [24745.0, 24745.0, 24755.0, 24755.0],\n", + " [24694.6875, 24694.6875, 24750.0, 24750.0],\n", + " [24670.0, 24670.0, 24722.34375, 24722.34375],\n", + " [24655.0, 24655.0, 24696.171875, 24696.171875],\n", + " [24640.0, 24640.0, 24675.5859375, 24675.5859375],\n", + " [24785.0, 24785.0, 24795.0, 24795.0],\n", + " [24775.0, 24775.0, 24790.0, 24790.0],\n", + " [24765.0, 24765.0, 24782.5, 24782.5],\n", + " [24845.0, 24845.0, 24855.0, 24855.0],\n", + " [24835.0, 24835.0, 24850.0, 24850.0],\n", + " [24865.0, 24865.0, 24875.0, 24875.0],\n", + " [24842.5, 24842.5, 24870.0, 24870.0],\n", + " [24825.0, 24825.0, 24856.25, 24856.25],\n", + " [24815.0, 24815.0, 24840.625, 24840.625],\n", + " [24935.0, 24935.0, 24945.0, 24945.0],\n", + " [24925.0, 24925.0, 24940.0, 24940.0],\n", + " [24915.0, 24915.0, 24932.5, 24932.5],\n", + " [24955.0, 24955.0, 24965.0, 24965.0],\n", + " [24923.75, 24923.75, 24960.0, 24960.0],\n", + " [24905.0, 24905.0, 24941.875, 24941.875],\n", + " [24985.0, 24985.0, 24995.0, 24995.0],\n", + " [24975.0, 24975.0, 24990.0, 24990.0],\n", + " [24923.4375, 24923.4375, 24982.5, 24982.5],\n", + " [24895.0, 24895.0, 24952.96875, 24952.96875],\n", + " [24885.0, 24885.0, 24923.984375, 24923.984375],\n", + " [24827.8125, 24827.8125, 24904.4921875, 24904.4921875],\n", + " [24805.0, 24805.0, 24866.15234375, 24866.15234375],\n", + " [25025.0, 25025.0, 25035.0, 25035.0],\n", + " [25015.0, 25015.0, 25030.0, 25030.0],\n", + " [25055.0, 25055.0, 25065.0, 25065.0],\n", + " [25045.0, 25045.0, 25060.0, 25060.0],\n", + " [25095.0, 25095.0, 25105.0, 25105.0],\n", + " [25085.0, 25085.0, 25100.0, 25100.0],\n", + " [25115.0, 25115.0, 25125.0, 25125.0],\n", + " [25165.0, 25165.0, 25175.0, 25175.0],\n", + " [25155.0, 25155.0, 25170.0, 25170.0],\n", + " [25145.0, 25145.0, 25162.5, 25162.5],\n", + " [25135.0, 25135.0, 25153.75, 25153.75],\n", + " [25120.0, 25120.0, 25144.375, 25144.375],\n", + " [25092.5, 25092.5, 25132.1875, 25132.1875],\n", + " [25075.0, 25075.0, 25112.34375, 25112.34375],\n", + " [25052.5, 25052.5, 25093.671875, 25093.671875],\n", + " [25022.5, 25022.5, 25073.0859375, 25073.0859375],\n", + " [25005.0, 25005.0, 25047.79296875, 25047.79296875],\n", + " [25195.0, 25195.0, 25205.0, 25205.0],\n", + " [25185.0, 25185.0, 25200.0, 25200.0],\n", + " [25026.396484375, 25026.396484375, 25192.5, 25192.5],\n", + " [24835.576171875, 24835.576171875, 25109.4482421875, 25109.4482421875],\n", + " [24773.75, 24773.75, 24972.51220703125, 24972.51220703125],\n", + " [24657.79296875, 24657.79296875, 24873.131103515625, 24873.131103515625],\n", + " [24441.6552734375, 24441.6552734375, 24765.462036132812, 24765.462036132812],\n", + " [24357.8125, 24357.8125, 24603.558654785156, 24603.558654785156],\n", + " [25225.0, 25225.0, 25235.0, 25235.0],\n", + " [25215.0, 25215.0, 25230.0, 25230.0],\n", + " [25275.0, 25275.0, 25285.0, 25285.0],\n", + " [25265.0, 25265.0, 25280.0, 25280.0],\n", + " [25295.0, 25295.0, 25305.0, 25305.0],\n", + " [25272.5, 25272.5, 25300.0, 25300.0],\n", + " [25315.0, 25315.0, 25325.0, 25325.0],\n", + " [25345.0, 25345.0, 25355.0, 25355.0],\n", + " [25335.0, 25335.0, 25350.0, 25350.0],\n", + " [25320.0, 25320.0, 25342.5, 25342.5],\n", + " [25286.25, 25286.25, 25331.25, 25331.25],\n", + " [25435.0, 25435.0, 25445.0, 25445.0],\n", + " [25475.0, 25475.0, 25485.0, 25485.0],\n", + " [25535.0, 25535.0, 25545.0, 25545.0],\n", + " [25525.0, 25525.0, 25540.0, 25540.0],\n", + " [25515.0, 25515.0, 25532.5, 25532.5],\n", + " [25505.0, 25505.0, 25523.75, 25523.75],\n", + " [25495.0, 25495.0, 25514.375, 25514.375],\n", + " [25480.0, 25480.0, 25504.6875, 25504.6875],\n", + " [25465.0, 25465.0, 25492.34375, 25492.34375],\n", + " [25455.0, 25455.0, 25478.671875, 25478.671875],\n", + " [25565.0, 25565.0, 25575.0, 25575.0],\n", + " [25555.0, 25555.0, 25570.0, 25570.0],\n", + " [25595.0, 25595.0, 25605.0, 25605.0],\n", + " [25585.0, 25585.0, 25600.0, 25600.0],\n", + " [25562.5, 25562.5, 25592.5, 25592.5],\n", + " [25466.8359375, 25466.8359375, 25577.5, 25577.5],\n", + " [25440.0, 25440.0, 25522.16796875, 25522.16796875],\n", + " [25425.0, 25425.0, 25481.083984375, 25481.083984375],\n", + " [25645.0, 25645.0, 25655.0, 25655.0],\n", + " [25635.0, 25635.0, 25650.0, 25650.0],\n", + " [25665.0, 25665.0, 25675.0, 25675.0],\n", + " [25725.0, 25725.0, 25735.0, 25735.0],\n", + " [25715.0, 25715.0, 25730.0, 25730.0],\n", + " [25745.0, 25745.0, 25755.0, 25755.0],\n", + " [25765.0, 25765.0, 25775.0, 25775.0],\n", + " [25750.0, 25750.0, 25770.0, 25770.0],\n", + " [25722.5, 25722.5, 25760.0, 25760.0],\n", + " [25705.0, 25705.0, 25741.25, 25741.25],\n", + " [25695.0, 25695.0, 25723.125, 25723.125],\n", + " [25685.0, 25685.0, 25709.0625, 25709.0625],\n", + " [25670.0, 25670.0, 25697.03125, 25697.03125],\n", + " [25642.5, 25642.5, 25683.515625, 25683.515625],\n", + " [25625.0, 25625.0, 25663.0078125, 25663.0078125],\n", + " [25795.0, 25795.0, 25805.0, 25805.0],\n", + " [25785.0, 25785.0, 25800.0, 25800.0],\n", + " [25644.00390625, 25644.00390625, 25792.5, 25792.5],\n", + " [25615.0, 25615.0, 25718.251953125, 25718.251953125],\n", + " [25453.0419921875, 25453.0419921875, 25666.6259765625, 25666.6259765625],\n", + " [25415.0, 25415.0, 25559.833984375, 25559.833984375],\n", + " [25405.0, 25405.0, 25487.4169921875, 25487.4169921875],\n", + " [25825.0, 25825.0, 25835.0, 25835.0],\n", + " [25815.0, 25815.0, 25830.0, 25830.0],\n", + " [25885.0, 25885.0, 25895.0, 25895.0],\n", + " [25875.0, 25875.0, 25890.0, 25890.0],\n", + " [25865.0, 25865.0, 25882.5, 25882.5],\n", + " [25855.0, 25855.0, 25873.75, 25873.75],\n", + " [25845.0, 25845.0, 25864.375, 25864.375],\n", + " [25822.5, 25822.5, 25854.6875, 25854.6875],\n", + " [25446.20849609375, 25446.20849609375, 25838.59375, 25838.59375],\n", + " [25395.0, 25395.0, 25642.401123046875, 25642.401123046875],\n", + " [25385.0, 25385.0, 25518.700561523438, 25518.700561523438],\n", + " [25375.0, 25375.0, 25451.85028076172, 25451.85028076172],\n", + " [25365.0, 25365.0, 25413.42514038086, 25413.42514038086],\n", + " [25915.0, 25915.0, 25925.0, 25925.0],\n", + " [25955.0, 25955.0, 25965.0, 25965.0],\n", + " [25945.0, 25945.0, 25960.0, 25960.0],\n", + " [25935.0, 25935.0, 25952.5, 25952.5],\n", + " [25975.0, 25975.0, 25985.0, 25985.0],\n", + " [25943.75, 25943.75, 25980.0, 25980.0],\n", + " [26015.0, 26015.0, 26025.0, 26025.0],\n", + " [26005.0, 26005.0, 26020.0, 26020.0],\n", + " [25995.0, 25995.0, 26012.5, 26012.5],\n", + " [25961.875, 25961.875, 26003.75, 26003.75],\n", + " [25920.0, 25920.0, 25982.8125, 25982.8125],\n", + " [25905.0, 25905.0, 25951.40625, 25951.40625],\n", + " [25389.21257019043, 25389.21257019043, 25928.203125, 25928.203125],\n", + " [25308.75, 25308.75, 25658.707847595215, 25658.707847595215],\n", + " [25255.0, 25255.0, 25483.728923797607, 25483.728923797607],\n", + " [25245.0, 25245.0, 25369.364461898804, 25369.364461898804],\n", + " [25222.5, 25222.5, 25307.182230949402, 25307.182230949402],\n", + " [24480.685577392578, 24480.685577392578, 25264.8411154747, 25264.8411154747],\n", + " [24322.5, 24322.5, 24872.76334643364, 24872.76334643364],\n", + " [22655.932125638938,\n", + " 22655.932125638938,\n", + " 24597.63167321682,\n", + " 24597.63167321682],\n", + " [21956.796299833804,\n", + " 21956.796299833804,\n", + " 23626.78189942788,\n", + " 23626.78189942788],\n", + " [26035.0, 26035.0, 26045.0, 26045.0],\n", + " [26065.0, 26065.0, 26075.0, 26075.0],\n", + " [26055.0, 26055.0, 26070.0, 26070.0],\n", + " [26135.0, 26135.0, 26145.0, 26145.0],\n", + " [26125.0, 26125.0, 26140.0, 26140.0],\n", + " [26115.0, 26115.0, 26132.5, 26132.5],\n", + " [26105.0, 26105.0, 26123.75, 26123.75],\n", + " [26095.0, 26095.0, 26114.375, 26114.375],\n", + " [26085.0, 26085.0, 26104.6875, 26104.6875],\n", + " [26165.0, 26165.0, 26175.0, 26175.0],\n", + " [26155.0, 26155.0, 26170.0, 26170.0],\n", + " [26094.84375, 26094.84375, 26162.5, 26162.5],\n", + " [26215.0, 26215.0, 26225.0, 26225.0],\n", + " [26205.0, 26205.0, 26220.0, 26220.0],\n", + " [26195.0, 26195.0, 26212.5, 26212.5],\n", + " [26235.0, 26235.0, 26245.0, 26245.0],\n", + " [26265.0, 26265.0, 26275.0, 26275.0],\n", + " [26255.0, 26255.0, 26270.0, 26270.0],\n", + " [26240.0, 26240.0, 26262.5, 26262.5],\n", + " [26203.75, 26203.75, 26251.25, 26251.25],\n", + " [26185.0, 26185.0, 26227.5, 26227.5],\n", + " [26295.0, 26295.0, 26305.0, 26305.0],\n", + " [26315.0, 26315.0, 26325.0, 26325.0],\n", + " [26345.0, 26345.0, 26355.0, 26355.0],\n", + " [26335.0, 26335.0, 26350.0, 26350.0],\n", + " [26320.0, 26320.0, 26342.5, 26342.5],\n", + " [26300.0, 26300.0, 26331.25, 26331.25],\n", + " [26285.0, 26285.0, 26315.625, 26315.625],\n", + " [26415.0, 26415.0, 26425.0, 26425.0],\n", + " [26405.0, 26405.0, 26420.0, 26420.0],\n", + " [26395.0, 26395.0, 26412.5, 26412.5],\n", + " [26385.0, 26385.0, 26403.75, 26403.75],\n", + " [26375.0, 26375.0, 26394.375, 26394.375],\n", + " [26365.0, 26365.0, 26384.6875, 26384.6875],\n", + " [26455.0, 26455.0, 26465.0, 26465.0],\n", + " [26445.0, 26445.0, 26460.0, 26460.0],\n", + " [26505.0, 26505.0, 26515.0, 26515.0],\n", + " [26525.0, 26525.0, 26535.0, 26535.0],\n", + " [26545.0, 26545.0, 26555.0, 26555.0],\n", + " [26530.0, 26530.0, 26550.0, 26550.0],\n", + " [26565.0, 26565.0, 26575.0, 26575.0],\n", + " [26605.0, 26605.0, 26615.0, 26615.0],\n", + " [26595.0, 26595.0, 26610.0, 26610.0],\n", + " [26585.0, 26585.0, 26602.5, 26602.5],\n", + " [26570.0, 26570.0, 26593.75, 26593.75],\n", + " [26540.0, 26540.0, 26581.875, 26581.875],\n", + " [26510.0, 26510.0, 26560.9375, 26560.9375],\n", + " [26495.0, 26495.0, 26535.46875, 26535.46875],\n", + " [26485.0, 26485.0, 26515.234375, 26515.234375],\n", + " [26625.0, 26625.0, 26635.0, 26635.0],\n", + " [26500.1171875, 26500.1171875, 26630.0, 26630.0],\n", + " [26655.0, 26655.0, 26665.0, 26665.0],\n", + " [26675.0, 26675.0, 26685.0, 26685.0],\n", + " [26705.0, 26705.0, 26715.0, 26715.0],\n", + " [26735.0, 26735.0, 26745.0, 26745.0],\n", + " [26725.0, 26725.0, 26740.0, 26740.0],\n", + " [26765.0, 26765.0, 26775.0, 26775.0],\n", + " [26755.0, 26755.0, 26770.0, 26770.0],\n", + " [26732.5, 26732.5, 26762.5, 26762.5],\n", + " [26710.0, 26710.0, 26747.5, 26747.5],\n", + " [26695.0, 26695.0, 26728.75, 26728.75],\n", + " [26680.0, 26680.0, 26711.875, 26711.875],\n", + " [26785.0, 26785.0, 26795.0, 26795.0],\n", + " [26695.9375, 26695.9375, 26790.0, 26790.0],\n", + " [26660.0, 26660.0, 26742.96875, 26742.96875],\n", + " [26645.0, 26645.0, 26701.484375, 26701.484375],\n", + " [26565.05859375, 26565.05859375, 26673.2421875, 26673.2421875],\n", + " [26835.0, 26835.0, 26845.0, 26845.0],\n", + " [26825.0, 26825.0, 26840.0, 26840.0],\n", + " [26855.0, 26855.0, 26865.0, 26865.0],\n", + " [26832.5, 26832.5, 26860.0, 26860.0],\n", + " [26885.0, 26885.0, 26895.0, 26895.0],\n", + " [26915.0, 26915.0, 26925.0, 26925.0],\n", + " [26905.0, 26905.0, 26920.0, 26920.0],\n", + " [26890.0, 26890.0, 26912.5, 26912.5],\n", + " [26875.0, 26875.0, 26901.25, 26901.25],\n", + " [26935.0, 26935.0, 26945.0, 26945.0],\n", + " [26975.0, 26975.0, 26985.0, 26985.0],\n", + " [26965.0, 26965.0, 26980.0, 26980.0],\n", + " [26955.0, 26955.0, 26972.5, 26972.5],\n", + " [26940.0, 26940.0, 26963.75, 26963.75],\n", + " [27005.0, 27005.0, 27015.0, 27015.0],\n", + " [26995.0, 26995.0, 27010.0, 27010.0],\n", + " [27025.0, 27025.0, 27035.0, 27035.0],\n", + " [27065.0, 27065.0, 27075.0, 27075.0],\n", + " [27055.0, 27055.0, 27070.0, 27070.0],\n", + " [27045.0, 27045.0, 27062.5, 27062.5],\n", + " [27030.0, 27030.0, 27053.75, 27053.75],\n", + " [27002.5, 27002.5, 27041.875, 27041.875],\n", + " [26951.875, 26951.875, 27022.1875, 27022.1875],\n", + " [27085.0, 27085.0, 27095.0, 27095.0],\n", + " [26987.03125, 26987.03125, 27090.0, 27090.0],\n", + " [26888.125, 26888.125, 27038.515625, 27038.515625],\n", + " [26846.25, 26846.25, 26963.3203125, 26963.3203125],\n", + " [26815.0, 26815.0, 26904.78515625, 26904.78515625],\n", + " [26805.0, 26805.0, 26859.892578125, 26859.892578125],\n", + " [26619.150390625, 26619.150390625, 26832.4462890625, 26832.4462890625],\n", + " [26475.0, 26475.0, 26725.79833984375, 26725.79833984375],\n", + " [26452.5, 26452.5, 26600.399169921875, 26600.399169921875],\n", + " [27125.0, 27125.0, 27135.0, 27135.0],\n", + " [27115.0, 27115.0, 27130.0, 27130.0],\n", + " [27155.0, 27155.0, 27165.0, 27165.0],\n", + " [27145.0, 27145.0, 27160.0, 27160.0],\n", + " [27122.5, 27122.5, 27152.5, 27152.5],\n", + " [27105.0, 27105.0, 27137.5, 27137.5],\n", + " [26526.449584960938, 26526.449584960938, 27121.25, 27121.25],\n", + " [26435.0, 26435.0, 26823.84979248047, 26823.84979248047],\n", + " [27185.0, 27185.0, 27195.0, 27195.0],\n", + " [27215.0, 27215.0, 27225.0, 27225.0],\n", + " [27205.0, 27205.0, 27220.0, 27220.0],\n", + " [27190.0, 27190.0, 27212.5, 27212.5],\n", + " [27175.0, 27175.0, 27201.25, 27201.25],\n", + " [26629.424896240234, 26629.424896240234, 27188.125, 27188.125],\n", + " [27265.0, 27265.0, 27275.0, 27275.0],\n", + " [27285.0, 27285.0, 27295.0, 27295.0],\n", + " [27270.0, 27270.0, 27290.0, 27290.0],\n", + " [27345.0, 27345.0, 27355.0, 27355.0],\n", + " [27335.0, 27335.0, 27350.0, 27350.0],\n", + " [27415.0, 27415.0, 27425.0, 27425.0],\n", + " [27405.0, 27405.0, 27420.0, 27420.0],\n", + " [27395.0, 27395.0, 27412.5, 27412.5],\n", + " [27385.0, 27385.0, 27403.75, 27403.75],\n", + " [27375.0, 27375.0, 27394.375, 27394.375],\n", + " [27365.0, 27365.0, 27384.6875, 27384.6875],\n", + " [27342.5, 27342.5, 27374.84375, 27374.84375],\n", + " [27325.0, 27325.0, 27358.671875, 27358.671875],\n", + " [27465.0, 27465.0, 27475.0, 27475.0],\n", + " [27455.0, 27455.0, 27470.0, 27470.0],\n", + " [27505.0, 27505.0, 27515.0, 27515.0],\n", + " [27495.0, 27495.0, 27510.0, 27510.0],\n", + " [27485.0, 27485.0, 27502.5, 27502.5],\n", + " [27462.5, 27462.5, 27493.75, 27493.75],\n", + " [27445.0, 27445.0, 27478.125, 27478.125],\n", + " [27435.0, 27435.0, 27461.5625, 27461.5625],\n", + " [27341.8359375, 27341.8359375, 27448.28125, 27448.28125],\n", + " [27315.0, 27315.0, 27395.05859375, 27395.05859375],\n", + " [27305.0, 27305.0, 27355.029296875, 27355.029296875],\n", + " [27280.0, 27280.0, 27330.0146484375, 27330.0146484375],\n", + " [27525.0, 27525.0, 27535.0, 27535.0],\n", + " [27545.0, 27545.0, 27555.0, 27555.0],\n", + " [27565.0, 27565.0, 27575.0, 27575.0],\n", + " [27585.0, 27585.0, 27595.0, 27595.0],\n", + " [27570.0, 27570.0, 27590.0, 27590.0],\n", + " [27605.0, 27605.0, 27615.0, 27615.0],\n", + " [27655.0, 27655.0, 27665.0, 27665.0],\n", + " [27645.0, 27645.0, 27660.0, 27660.0],\n", + " [27635.0, 27635.0, 27652.5, 27652.5],\n", + " [27625.0, 27625.0, 27643.75, 27643.75],\n", + " [27610.0, 27610.0, 27634.375, 27634.375],\n", + " [27580.0, 27580.0, 27622.1875, 27622.1875],\n", + " [27550.0, 27550.0, 27601.09375, 27601.09375],\n", + " [27530.0, 27530.0, 27575.546875, 27575.546875],\n", + " [27305.00732421875, 27305.00732421875, 27552.7734375, 27552.7734375],\n", + " [27255.0, 27255.0, 27428.890380859375, 27428.890380859375],\n", + " [27715.0, 27715.0, 27725.0, 27725.0],\n", + " [27735.0, 27735.0, 27745.0, 27745.0],\n", + " [27720.0, 27720.0, 27740.0, 27740.0],\n", + " [27705.0, 27705.0, 27730.0, 27730.0],\n", + " [27765.0, 27765.0, 27775.0, 27775.0],\n", + " [27785.0, 27785.0, 27795.0, 27795.0],\n", + " [27770.0, 27770.0, 27790.0, 27790.0],\n", + " [27755.0, 27755.0, 27780.0, 27780.0],\n", + " [27717.5, 27717.5, 27767.5, 27767.5],\n", + " [27815.0, 27815.0, 27825.0, 27825.0],\n", + " [27805.0, 27805.0, 27820.0, 27820.0],\n", + " [27742.5, 27742.5, 27812.5, 27812.5],\n", + " [27695.0, 27695.0, 27777.5, 27777.5],\n", + " [27685.0, 27685.0, 27736.25, 27736.25],\n", + " [27875.0, 27875.0, 27885.0, 27885.0],\n", + " [27895.0, 27895.0, 27905.0, 27905.0],\n", + " [27915.0, 27915.0, 27925.0, 27925.0],\n", + " [27965.0, 27965.0, 27975.0, 27975.0],\n", + " [27955.0, 27955.0, 27970.0, 27970.0],\n", + " [27945.0, 27945.0, 27962.5, 27962.5],\n", + " [28005.0, 28005.0, 28015.0, 28015.0],\n", + " [28035.0, 28035.0, 28045.0, 28045.0],\n", + " [28025.0, 28025.0, 28040.0, 28040.0],\n", + " [28010.0, 28010.0, 28032.5, 28032.5],\n", + " [27995.0, 27995.0, 28021.25, 28021.25],\n", + " [27985.0, 27985.0, 28008.125, 28008.125],\n", + " [27953.75, 27953.75, 27996.5625, 27996.5625],\n", + " [28065.0, 28065.0, 28075.0, 28075.0],\n", + " [28055.0, 28055.0, 28070.0, 28070.0],\n", + " [28095.0, 28095.0, 28105.0, 28105.0],\n", + " [28085.0, 28085.0, 28100.0, 28100.0],\n", + " [28062.5, 28062.5, 28092.5, 28092.5],\n", + " [28115.0, 28115.0, 28125.0, 28125.0],\n", + " [28135.0, 28135.0, 28145.0, 28145.0],\n", + " [28120.0, 28120.0, 28140.0, 28140.0],\n", + " [28077.5, 28077.5, 28130.0, 28130.0],\n", + " [27975.15625, 27975.15625, 28103.75, 28103.75],\n", + " [27935.0, 27935.0, 28039.453125, 28039.453125],\n", + " [27920.0, 27920.0, 27987.2265625, 27987.2265625],\n", + " [27900.0, 27900.0, 27953.61328125, 27953.61328125],\n", + " [27880.0, 27880.0, 27926.806640625, 27926.806640625],\n", + " [27865.0, 27865.0, 27903.4033203125, 27903.4033203125],\n", + " [28165.0, 28165.0, 28175.0, 28175.0],\n", + " [28155.0, 28155.0, 28170.0, 28170.0],\n", + " [28205.0, 28205.0, 28215.0, 28215.0],\n", + " [28195.0, 28195.0, 28210.0, 28210.0],\n", + " [28185.0, 28185.0, 28202.5, 28202.5],\n", + " [28225.0, 28225.0, 28235.0, 28235.0],\n", + " [28193.75, 28193.75, 28230.0, 28230.0],\n", + " [28162.5, 28162.5, 28211.875, 28211.875],\n", + " [27884.20166015625, 27884.20166015625, 28187.1875, 28187.1875],\n", + " [27855.0, 27855.0, 28035.694580078125, 28035.694580078125],\n", + " [27845.0, 27845.0, 27945.347290039062, 27945.347290039062],\n", + " [28265.0, 28265.0, 28275.0, 28275.0],\n", + " [28255.0, 28255.0, 28270.0, 28270.0],\n", + " [28245.0, 28245.0, 28262.5, 28262.5],\n", + " [28315.0, 28315.0, 28325.0, 28325.0],\n", + " [28305.0, 28305.0, 28320.0, 28320.0],\n", + " [28385.0, 28385.0, 28395.0, 28395.0],\n", + " [28375.0, 28375.0, 28390.0, 28390.0],\n", + " [28365.0, 28365.0, 28382.5, 28382.5],\n", + " [28355.0, 28355.0, 28373.75, 28373.75],\n", + " [28345.0, 28345.0, 28364.375, 28364.375],\n", + " [28335.0, 28335.0, 28354.6875, 28354.6875],\n", + " [28415.0, 28415.0, 28425.0, 28425.0],\n", + " [28445.0, 28445.0, 28455.0, 28455.0],\n", + " [28435.0, 28435.0, 28450.0, 28450.0],\n", + " [28475.0, 28475.0, 28485.0, 28485.0],\n", + " [28505.0, 28505.0, 28515.0, 28515.0],\n", + " [28545.0, 28545.0, 28555.0, 28555.0],\n", + " [28535.0, 28535.0, 28550.0, 28550.0],\n", + " [28525.0, 28525.0, 28542.5, 28542.5],\n", + " [28510.0, 28510.0, 28533.75, 28533.75],\n", + " [28595.0, 28595.0, 28605.0, 28605.0],\n", + " [28615.0, 28615.0, 28625.0, 28625.0],\n", + " [28635.0, 28635.0, 28645.0, 28645.0],\n", + " [28655.0, 28655.0, 28665.0, 28665.0],\n", + " [28640.0, 28640.0, 28660.0, 28660.0],\n", + " [28620.0, 28620.0, 28650.0, 28650.0],\n", + " [28695.0, 28695.0, 28705.0, 28705.0],\n", + " [28735.0, 28735.0, 28745.0, 28745.0],\n", + " [28725.0, 28725.0, 28740.0, 28740.0],\n", + " [28715.0, 28715.0, 28732.5, 28732.5],\n", + " [28700.0, 28700.0, 28723.75, 28723.75],\n", + " [28685.0, 28685.0, 28711.875, 28711.875],\n", + " [28675.0, 28675.0, 28698.4375, 28698.4375],\n", + " [28635.0, 28635.0, 28686.71875, 28686.71875],\n", + " [28765.0, 28765.0, 28775.0, 28775.0],\n", + " [28755.0, 28755.0, 28770.0, 28770.0],\n", + " [28660.859375, 28660.859375, 28762.5, 28762.5],\n", + " [28600.0, 28600.0, 28711.6796875, 28711.6796875],\n", + " [28585.0, 28585.0, 28655.83984375, 28655.83984375],\n", + " [28785.0, 28785.0, 28795.0, 28795.0],\n", + " [28620.419921875, 28620.419921875, 28790.0, 28790.0],\n", + " [28575.0, 28575.0, 28705.2099609375, 28705.2099609375],\n", + " [28565.0, 28565.0, 28640.10498046875, 28640.10498046875],\n", + " [28805.0, 28805.0, 28815.0, 28815.0],\n", + " [28602.552490234375, 28602.552490234375, 28810.0, 28810.0],\n", + " [28521.875, 28521.875, 28706.276245117188, 28706.276245117188],\n", + " [28495.0, 28495.0, 28614.075622558594, 28614.075622558594],\n", + " [28480.0, 28480.0, 28554.537811279297, 28554.537811279297],\n", + " [28465.0, 28465.0, 28517.26890563965, 28517.26890563965],\n", + " [28442.5, 28442.5, 28491.134452819824, 28491.134452819824],\n", + " [28855.0, 28855.0, 28865.0, 28865.0],\n", + " [28845.0, 28845.0, 28860.0, 28860.0],\n", + " [28835.0, 28835.0, 28852.5, 28852.5],\n", + " [28825.0, 28825.0, 28843.75, 28843.75],\n", + " [28466.817226409912, 28466.817226409912, 28834.375, 28834.375],\n", + " [28420.0, 28420.0, 28650.596113204956, 28650.596113204956],\n", + " [28405.0, 28405.0, 28535.298056602478, 28535.298056602478],\n", + " [28344.84375, 28344.84375, 28470.14902830124, 28470.14902830124],\n", + " [28312.5, 28312.5, 28407.49638915062, 28407.49638915062],\n", + " [28295.0, 28295.0, 28359.99819457531, 28359.99819457531],\n", + " [28905.0, 28905.0, 28915.0, 28915.0],\n", + " [28925.0, 28925.0, 28935.0, 28935.0],\n", + " [28945.0, 28945.0, 28955.0, 28955.0],\n", + " [28930.0, 28930.0, 28950.0, 28950.0],\n", + " [28910.0, 28910.0, 28940.0, 28940.0],\n", + " [28895.0, 28895.0, 28925.0, 28925.0],\n", + " [28885.0, 28885.0, 28910.0, 28910.0],\n", + " [28875.0, 28875.0, 28897.5, 28897.5],\n", + " [28327.499097287655, 28327.499097287655, 28886.25, 28886.25],\n", + " [28285.0, 28285.0, 28606.874548643827, 28606.874548643827],\n", + " [28965.0, 28965.0, 28975.0, 28975.0],\n", + " [29005.0, 29005.0, 29015.0, 29015.0],\n", + " [28995.0, 28995.0, 29010.0, 29010.0],\n", + " [28985.0, 28985.0, 29002.5, 29002.5],\n", + " [29025.0, 29025.0, 29035.0, 29035.0],\n", + " [29065.0, 29065.0, 29075.0, 29075.0],\n", + " [29085.0, 29085.0, 29095.0, 29095.0],\n", + " [29070.0, 29070.0, 29090.0, 29090.0],\n", + " [29055.0, 29055.0, 29080.0, 29080.0],\n", + " [29045.0, 29045.0, 29067.5, 29067.5],\n", + " [29030.0, 29030.0, 29056.25, 29056.25],\n", + " [28993.75, 28993.75, 29043.125, 29043.125],\n", + " [28970.0, 28970.0, 29018.4375, 29018.4375],\n", + " [28445.937274321914, 28445.937274321914, 28994.21875, 28994.21875],\n", + " [28253.75, 28253.75, 28720.078012160957, 28720.078012160957],\n", + " [27895.17364501953, 27895.17364501953, 28486.91400608048, 28486.91400608048],\n", + " [27835.0, 27835.0, 28191.043825550005, 28191.043825550005],\n", + " [27710.625, 27710.625, 28013.021912775002, 28013.021912775002],\n", + " [27675.0, 27675.0, 27861.8234563875, 27861.8234563875],\n", + " [29105.0, 29105.0, 29115.0, 29115.0],\n", + " [27768.41172819375, 27768.41172819375, 29110.0, 29110.0],\n", + " [27341.945190429688,\n", + " 27341.945190429688,\n", + " 28439.205864096875,\n", + " 28439.205864096875],\n", + " [27245.0, 27245.0, 27890.57552726328, 27890.57552726328],\n", + " [27235.0, 27235.0, 27567.78776363164, 27567.78776363164],\n", + " [26908.774948120117,\n", + " 26908.774948120117,\n", + " 27401.39388181582,\n", + " 27401.39388181582],\n", + " [26374.84375, 26374.84375, 27155.08441496797, 27155.08441496797],\n", + " [26300.3125, 26300.3125, 26764.964082483984, 26764.964082483984],\n", + " [26206.25, 26206.25, 26532.638291241994, 26532.638291241994],\n", + " [26128.671875, 26128.671875, 26369.444145620997, 26369.444145620997],\n", + " [26062.5, 26062.5, 26249.0580103105, 26249.0580103105],\n", + " [26040.0, 26040.0, 26155.77900515525, 26155.77900515525],\n", + " [22791.78909963084,\n", + " 22791.78909963084,\n", + " 26097.889502577626,\n", + " 26097.889502577626],\n", + " [29145.0, 29145.0, 29155.0, 29155.0],\n", + " [29135.0, 29135.0, 29150.0, 29150.0],\n", + " [29125.0, 29125.0, 29142.5, 29142.5],\n", + " [29205.0, 29205.0, 29215.0, 29215.0],\n", + " [29195.0, 29195.0, 29210.0, 29210.0],\n", + " [29185.0, 29185.0, 29202.5, 29202.5],\n", + " [29235.0, 29235.0, 29245.0, 29245.0],\n", + " [29225.0, 29225.0, 29240.0, 29240.0],\n", + " [29255.0, 29255.0, 29265.0, 29265.0],\n", + " [29232.5, 29232.5, 29260.0, 29260.0],\n", + " [29193.75, 29193.75, 29246.25, 29246.25],\n", + " [29285.0, 29285.0, 29295.0, 29295.0],\n", + " [29275.0, 29275.0, 29290.0, 29290.0],\n", + " [29220.0, 29220.0, 29282.5, 29282.5],\n", + " [29175.0, 29175.0, 29251.25, 29251.25],\n", + " [29325.0, 29325.0, 29335.0, 29335.0],\n", + " [29315.0, 29315.0, 29330.0, 29330.0],\n", + " [29355.0, 29355.0, 29365.0, 29365.0],\n", + " [29345.0, 29345.0, 29360.0, 29360.0],\n", + " [29322.5, 29322.5, 29352.5, 29352.5],\n", + " [29305.0, 29305.0, 29337.5, 29337.5],\n", + " [29213.125, 29213.125, 29321.25, 29321.25],\n", + " [29385.0, 29385.0, 29395.0, 29395.0],\n", + " [29375.0, 29375.0, 29390.0, 29390.0],\n", + " [29405.0, 29405.0, 29415.0, 29415.0],\n", + " [29382.5, 29382.5, 29410.0, 29410.0],\n", + " [29267.1875, 29267.1875, 29396.25, 29396.25],\n", + " [29165.0, 29165.0, 29331.71875, 29331.71875],\n", + " [29133.75, 29133.75, 29248.359375, 29248.359375],\n", + " [29445.0, 29445.0, 29455.0, 29455.0],\n", + " [29435.0, 29435.0, 29450.0, 29450.0],\n", + " [29425.0, 29425.0, 29442.5, 29442.5],\n", + " [29475.0, 29475.0, 29485.0, 29485.0],\n", + " [29465.0, 29465.0, 29480.0, 29480.0],\n", + " [29505.0, 29505.0, 29515.0, 29515.0],\n", + " [29495.0, 29495.0, 29510.0, 29510.0],\n", + " [29472.5, 29472.5, 29502.5, 29502.5],\n", + " [29525.0, 29525.0, 29535.0, 29535.0],\n", + " [29555.0, 29555.0, 29565.0, 29565.0],\n", + " [29595.0, 29595.0, 29605.0, 29605.0],\n", + " [29585.0, 29585.0, 29600.0, 29600.0],\n", + " [29575.0, 29575.0, 29592.5, 29592.5],\n", + " [29560.0, 29560.0, 29583.75, 29583.75],\n", + " [29545.0, 29545.0, 29571.875, 29571.875],\n", + " [29530.0, 29530.0, 29558.4375, 29558.4375],\n", + " [29487.5, 29487.5, 29544.21875, 29544.21875],\n", + " [29433.75, 29433.75, 29515.859375, 29515.859375],\n", + " [29655.0, 29655.0, 29665.0, 29665.0],\n", + " [29645.0, 29645.0, 29660.0, 29660.0],\n", + " [29635.0, 29635.0, 29652.5, 29652.5],\n", + " [29685.0, 29685.0, 29695.0, 29695.0],\n", + " [29675.0, 29675.0, 29690.0, 29690.0],\n", + " [29725.0, 29725.0, 29735.0, 29735.0],\n", + " [29715.0, 29715.0, 29730.0, 29730.0],\n", + " [29705.0, 29705.0, 29722.5, 29722.5],\n", + " [29682.5, 29682.5, 29713.75, 29713.75],\n", + " [29775.0, 29775.0, 29785.0, 29785.0],\n", + " [29765.0, 29765.0, 29780.0, 29780.0],\n", + " [29815.0, 29815.0, 29825.0, 29825.0],\n", + " [29805.0, 29805.0, 29820.0, 29820.0],\n", + " [29795.0, 29795.0, 29812.5, 29812.5],\n", + " [29772.5, 29772.5, 29803.75, 29803.75],\n", + " [29755.0, 29755.0, 29788.125, 29788.125],\n", + " [29845.0, 29845.0, 29855.0, 29855.0],\n", + " [29835.0, 29835.0, 29850.0, 29850.0],\n", + " [29895.0, 29895.0, 29905.0, 29905.0],\n", + " [29885.0, 29885.0, 29900.0, 29900.0],\n", + " [29875.0, 29875.0, 29892.5, 29892.5],\n", + " [29865.0, 29865.0, 29883.75, 29883.75],\n", + " [29842.5, 29842.5, 29874.375, 29874.375],\n", + " [29771.5625, 29771.5625, 29858.4375, 29858.4375],\n", + " [29945.0, 29945.0, 29955.0, 29955.0],\n", + " [29935.0, 29935.0, 29950.0, 29950.0],\n", + " [29925.0, 29925.0, 29942.5, 29942.5],\n", + " [29915.0, 29915.0, 29933.75, 29933.75],\n", + " [29815.0, 29815.0, 29924.375, 29924.375],\n", + " [29985.0, 29985.0, 29995.0, 29995.0],\n", + " [30005.0, 30005.0, 30015.0, 30015.0],\n", + " [30035.0, 30035.0, 30045.0, 30045.0],\n", + " [30025.0, 30025.0, 30040.0, 30040.0],\n", + " [30010.0, 30010.0, 30032.5, 30032.5],\n", + " [29990.0, 29990.0, 30021.25, 30021.25],\n", + " [29975.0, 29975.0, 30005.625, 30005.625],\n", + " [29965.0, 29965.0, 29990.3125, 29990.3125],\n", + " [30075.0, 30075.0, 30085.0, 30085.0],\n", + " [30065.0, 30065.0, 30080.0, 30080.0],\n", + " [30055.0, 30055.0, 30072.5, 30072.5],\n", + " [30105.0, 30105.0, 30115.0, 30115.0],\n", + " [30095.0, 30095.0, 30110.0, 30110.0],\n", + " [30063.75, 30063.75, 30102.5, 30102.5],\n", + " [30145.0, 30145.0, 30155.0, 30155.0],\n", + " [30165.0, 30165.0, 30175.0, 30175.0],\n", + " [30150.0, 30150.0, 30170.0, 30170.0],\n", + " [30195.0, 30195.0, 30205.0, 30205.0],\n", + " [30185.0, 30185.0, 30200.0, 30200.0],\n", + " [30160.0, 30160.0, 30192.5, 30192.5],\n", + " [30135.0, 30135.0, 30176.25, 30176.25],\n", + " [30125.0, 30125.0, 30155.625, 30155.625],\n", + " [30083.125, 30083.125, 30140.3125, 30140.3125],\n", + " [30225.0, 30225.0, 30235.0, 30235.0],\n", + " [30245.0, 30245.0, 30255.0, 30255.0],\n", + " [30230.0, 30230.0, 30250.0, 30250.0],\n", + " [30215.0, 30215.0, 30240.0, 30240.0],\n", + " [30111.71875, 30111.71875, 30227.5, 30227.5],\n", + " [29977.65625, 29977.65625, 30169.609375, 30169.609375],\n", + " [29869.6875, 29869.6875, 30073.6328125, 30073.6328125],\n", + " [29745.0, 29745.0, 29971.66015625, 29971.66015625],\n", + " [29698.125, 29698.125, 29858.330078125, 29858.330078125],\n", + " [29643.75, 29643.75, 29778.2275390625, 29778.2275390625],\n", + " [30265.0, 30265.0, 30275.0, 30275.0],\n", + " [30285.0, 30285.0, 30295.0, 30295.0],\n", + " [30270.0, 30270.0, 30290.0, 30290.0],\n", + " [30315.0, 30315.0, 30325.0, 30325.0],\n", + " [30345.0, 30345.0, 30355.0, 30355.0],\n", + " [30335.0, 30335.0, 30350.0, 30350.0],\n", + " [30365.0, 30365.0, 30375.0, 30375.0],\n", + " [30342.5, 30342.5, 30370.0, 30370.0],\n", + " [30320.0, 30320.0, 30356.25, 30356.25],\n", + " [30305.0, 30305.0, 30338.125, 30338.125],\n", + " [30280.0, 30280.0, 30321.5625, 30321.5625],\n", + " [30395.0, 30395.0, 30405.0, 30405.0],\n", + " [30425.0, 30425.0, 30435.0, 30435.0],\n", + " [30445.0, 30445.0, 30455.0, 30455.0],\n", + " [30485.0, 30485.0, 30495.0, 30495.0],\n", + " [30475.0, 30475.0, 30490.0, 30490.0],\n", + " [30465.0, 30465.0, 30482.5, 30482.5],\n", + " [30450.0, 30450.0, 30473.75, 30473.75],\n", + " [30505.0, 30505.0, 30515.0, 30515.0],\n", + " [30461.875, 30461.875, 30510.0, 30510.0],\n", + " [30430.0, 30430.0, 30485.9375, 30485.9375],\n", + " [30415.0, 30415.0, 30457.96875, 30457.96875],\n", + " [30525.0, 30525.0, 30535.0, 30535.0],\n", + " [30555.0, 30555.0, 30565.0, 30565.0],\n", + " [30585.0, 30585.0, 30595.0, 30595.0],\n", + " [30575.0, 30575.0, 30590.0, 30590.0],\n", + " [30625.0, 30625.0, 30635.0, 30635.0],\n", + " [30695.0, 30695.0, 30705.0, 30705.0],\n", + " [30685.0, 30685.0, 30700.0, 30700.0],\n", + " [30675.0, 30675.0, 30692.5, 30692.5],\n", + " [30665.0, 30665.0, 30683.75, 30683.75],\n", + " [30655.0, 30655.0, 30674.375, 30674.375],\n", + " [30645.0, 30645.0, 30664.6875, 30664.6875],\n", + " [30630.0, 30630.0, 30654.84375, 30654.84375],\n", + " [30615.0, 30615.0, 30642.421875, 30642.421875],\n", + " [30605.0, 30605.0, 30628.7109375, 30628.7109375],\n", + " [30745.0, 30745.0, 30755.0, 30755.0],\n", + " [30735.0, 30735.0, 30750.0, 30750.0],\n", + " [30725.0, 30725.0, 30742.5, 30742.5],\n", + " [30775.0, 30775.0, 30785.0, 30785.0],\n", + " [30765.0, 30765.0, 30780.0, 30780.0],\n", + " [30805.0, 30805.0, 30815.0, 30815.0],\n", + " [30795.0, 30795.0, 30810.0, 30810.0],\n", + " [30772.5, 30772.5, 30802.5, 30802.5],\n", + " [30733.75, 30733.75, 30787.5, 30787.5],\n", + " [30835.0, 30835.0, 30845.0, 30845.0],\n", + " [30825.0, 30825.0, 30840.0, 30840.0],\n", + " [30760.625, 30760.625, 30832.5, 30832.5],\n", + " [30715.0, 30715.0, 30796.5625, 30796.5625],\n", + " [30616.85546875, 30616.85546875, 30755.78125, 30755.78125],\n", + " [30582.5, 30582.5, 30686.318359375, 30686.318359375],\n", + " [30560.0, 30560.0, 30634.4091796875, 30634.4091796875],\n", + " [30545.0, 30545.0, 30597.20458984375, 30597.20458984375],\n", + " [30530.0, 30530.0, 30571.102294921875, 30571.102294921875],\n", + " [30436.484375, 30436.484375, 30550.551147460938, 30550.551147460938],\n", + " [30400.0, 30400.0, 30493.51776123047, 30493.51776123047],\n", + " [30385.0, 30385.0, 30446.758880615234, 30446.758880615234],\n", + " [30865.0, 30865.0, 30875.0, 30875.0],\n", + " [30905.0, 30905.0, 30915.0, 30915.0],\n", + " [30895.0, 30895.0, 30910.0, 30910.0],\n", + " [30945.0, 30945.0, 30955.0, 30955.0],\n", + " [30935.0, 30935.0, 30950.0, 30950.0],\n", + " [30965.0, 30965.0, 30975.0, 30975.0],\n", + " [30995.0, 30995.0, 31005.0, 31005.0],\n", + " [31025.0, 31025.0, 31035.0, 31035.0],\n", + " [31015.0, 31015.0, 31030.0, 31030.0],\n", + " [31000.0, 31000.0, 31022.5, 31022.5],\n", + " [30985.0, 30985.0, 31011.25, 31011.25],\n", + " [30970.0, 30970.0, 30998.125, 30998.125],\n", + " [31065.0, 31065.0, 31075.0, 31075.0],\n", + " [31055.0, 31055.0, 31070.0, 31070.0],\n", + " [31045.0, 31045.0, 31062.5, 31062.5],\n", + " [31085.0, 31085.0, 31095.0, 31095.0],\n", + " [31105.0, 31105.0, 31115.0, 31115.0],\n", + " [31090.0, 31090.0, 31110.0, 31110.0],\n", + " [31053.75, 31053.75, 31100.0, 31100.0],\n", + " [31135.0, 31135.0, 31145.0, 31145.0],\n", + " [31125.0, 31125.0, 31140.0, 31140.0],\n", + " [31185.0, 31185.0, 31195.0, 31195.0],\n", + " [31205.0, 31205.0, 31215.0, 31215.0],\n", + " [31225.0, 31225.0, 31235.0, 31235.0],\n", + " [31210.0, 31210.0, 31230.0, 31230.0],\n", + " [31255.0, 31255.0, 31265.0, 31265.0],\n", + " [31245.0, 31245.0, 31260.0, 31260.0],\n", + " [31220.0, 31220.0, 31252.5, 31252.5],\n", + " [31190.0, 31190.0, 31236.25, 31236.25],\n", + " [31175.0, 31175.0, 31213.125, 31213.125],\n", + " [31165.0, 31165.0, 31194.0625, 31194.0625],\n", + " [31275.0, 31275.0, 31285.0, 31285.0],\n", + " [31179.53125, 31179.53125, 31280.0, 31280.0],\n", + " [31155.0, 31155.0, 31229.765625, 31229.765625],\n", + " [31132.5, 31132.5, 31192.3828125, 31192.3828125],\n", + " [31076.875, 31076.875, 31162.44140625, 31162.44140625],\n", + " [30984.0625, 30984.0625, 31119.658203125, 31119.658203125],\n", + " [30942.5, 30942.5, 31051.8603515625, 31051.8603515625],\n", + " [31295.0, 31295.0, 31305.0, 31305.0],\n", + " [31325.0, 31325.0, 31335.0, 31335.0],\n", + " [31315.0, 31315.0, 31330.0, 31330.0],\n", + " [31345.0, 31345.0, 31355.0, 31355.0],\n", + " [31322.5, 31322.5, 31350.0, 31350.0],\n", + " [31300.0, 31300.0, 31336.25, 31336.25],\n", + " [31385.0, 31385.0, 31395.0, 31395.0],\n", + " [31375.0, 31375.0, 31390.0, 31390.0],\n", + " [31365.0, 31365.0, 31382.5, 31382.5],\n", + " [31405.0, 31405.0, 31415.0, 31415.0],\n", + " [31373.75, 31373.75, 31410.0, 31410.0],\n", + " [31425.0, 31425.0, 31435.0, 31435.0],\n", + " [31445.0, 31445.0, 31455.0, 31455.0],\n", + " [31465.0, 31465.0, 31475.0, 31475.0],\n", + " [31485.0, 31485.0, 31495.0, 31495.0],\n", + " [31525.0, 31525.0, 31535.0, 31535.0],\n", + " [31515.0, 31515.0, 31530.0, 31530.0],\n", + " [31505.0, 31505.0, 31522.5, 31522.5],\n", + " [31565.0, 31565.0, 31575.0, 31575.0],\n", + " [31555.0, 31555.0, 31570.0, 31570.0],\n", + " [31545.0, 31545.0, 31562.5, 31562.5],\n", + " [31585.0, 31585.0, 31595.0, 31595.0],\n", + " [31553.75, 31553.75, 31590.0, 31590.0],\n", + " [31513.75, 31513.75, 31571.875, 31571.875],\n", + " [31625.0, 31625.0, 31635.0, 31635.0],\n", + " [31675.0, 31675.0, 31685.0, 31685.0],\n", + " [31665.0, 31665.0, 31680.0, 31680.0],\n", + " [31715.0, 31715.0, 31725.0, 31725.0],\n", + " [31705.0, 31705.0, 31720.0, 31720.0],\n", + " [31695.0, 31695.0, 31712.5, 31712.5],\n", + " [31672.5, 31672.5, 31703.75, 31703.75],\n", + " [31655.0, 31655.0, 31688.125, 31688.125],\n", + " [31645.0, 31645.0, 31671.5625, 31671.5625],\n", + " [31630.0, 31630.0, 31658.28125, 31658.28125],\n", + " [31615.0, 31615.0, 31644.140625, 31644.140625],\n", + " [31605.0, 31605.0, 31629.5703125, 31629.5703125],\n", + " [31755.0, 31755.0, 31765.0, 31765.0],\n", + " [31795.0, 31795.0, 31805.0, 31805.0],\n", + " [31785.0, 31785.0, 31800.0, 31800.0],\n", + " [31775.0, 31775.0, 31792.5, 31792.5],\n", + " [31825.0, 31825.0, 31835.0, 31835.0],\n", + " [31815.0, 31815.0, 31830.0, 31830.0],\n", + " [31783.75, 31783.75, 31822.5, 31822.5],\n", + " [31760.0, 31760.0, 31803.125, 31803.125],\n", + " [31745.0, 31745.0, 31781.5625, 31781.5625],\n", + " [31735.0, 31735.0, 31763.28125, 31763.28125],\n", + " [31617.28515625, 31617.28515625, 31749.140625, 31749.140625],\n", + " [31875.0, 31875.0, 31885.0, 31885.0],\n", + " [31865.0, 31865.0, 31880.0, 31880.0],\n", + " [31855.0, 31855.0, 31872.5, 31872.5],\n", + " [31845.0, 31845.0, 31863.75, 31863.75],\n", + " [31915.0, 31915.0, 31925.0, 31925.0],\n", + " [31905.0, 31905.0, 31920.0, 31920.0],\n", + " [31895.0, 31895.0, 31912.5, 31912.5],\n", + " [31854.375, 31854.375, 31903.75, 31903.75],\n", + " [31945.0, 31945.0, 31955.0, 31955.0],\n", + " [31935.0, 31935.0, 31950.0, 31950.0],\n", + " [31879.0625, 31879.0625, 31942.5, 31942.5],\n", + " [31683.212890625, 31683.212890625, 31910.78125, 31910.78125],\n", + " [31542.8125, 31542.8125, 31796.9970703125, 31796.9970703125],\n", + " [31490.0, 31490.0, 31669.90478515625, 31669.90478515625],\n", + " [31470.0, 31470.0, 31579.952392578125, 31579.952392578125],\n", + " [31450.0, 31450.0, 31524.976196289062, 31524.976196289062],\n", + " [31430.0, 31430.0, 31487.48809814453, 31487.48809814453],\n", + " [31391.875, 31391.875, 31458.744049072266, 31458.744049072266],\n", + " [31318.125, 31318.125, 31425.309524536133, 31425.309524536133],\n", + " [30997.18017578125,\n", + " 30997.18017578125,\n", + " 31371.717262268066,\n", + " 31371.717262268066],\n", + " [32025.0, 32025.0, 32035.0, 32035.0],\n", + " [32015.0, 32015.0, 32030.0, 32030.0],\n", + " [32005.0, 32005.0, 32022.5, 32022.5],\n", + " [32055.0, 32055.0, 32065.0, 32065.0],\n", + " [32045.0, 32045.0, 32060.0, 32060.0],\n", + " [32013.75, 32013.75, 32052.5, 32052.5],\n", + " [32105.0, 32105.0, 32115.0, 32115.0],\n", + " [32145.0, 32145.0, 32155.0, 32155.0],\n", + " [32135.0, 32135.0, 32150.0, 32150.0],\n", + " [32125.0, 32125.0, 32142.5, 32142.5],\n", + " [32175.0, 32175.0, 32185.0, 32185.0],\n", + " [32195.0, 32195.0, 32205.0, 32205.0],\n", + " [32180.0, 32180.0, 32200.0, 32200.0],\n", + " [32165.0, 32165.0, 32190.0, 32190.0],\n", + " [32133.75, 32133.75, 32177.5, 32177.5],\n", + " [32110.0, 32110.0, 32155.625, 32155.625],\n", + " [32095.0, 32095.0, 32132.8125, 32132.8125],\n", + " [32235.0, 32235.0, 32245.0, 32245.0],\n", + " [32275.0, 32275.0, 32285.0, 32285.0],\n", + " [32295.0, 32295.0, 32305.0, 32305.0],\n", + " [32280.0, 32280.0, 32300.0, 32300.0],\n", + " [32265.0, 32265.0, 32290.0, 32290.0],\n", + " [32255.0, 32255.0, 32277.5, 32277.5],\n", + " [32240.0, 32240.0, 32266.25, 32266.25],\n", + " [32225.0, 32225.0, 32253.125, 32253.125],\n", + " [32215.0, 32215.0, 32239.0625, 32239.0625],\n", + " [32113.90625, 32113.90625, 32227.03125, 32227.03125],\n", + " [32085.0, 32085.0, 32170.46875, 32170.46875],\n", + " [32075.0, 32075.0, 32127.734375, 32127.734375],\n", + " [32033.125, 32033.125, 32101.3671875, 32101.3671875],\n", + " [32315.0, 32315.0, 32325.0, 32325.0],\n", + " [32335.0, 32335.0, 32345.0, 32345.0],\n", + " [32320.0, 32320.0, 32340.0, 32340.0],\n", + " [32067.24609375, 32067.24609375, 32330.0, 32330.0],\n", + " [31995.0, 31995.0, 32198.623046875, 32198.623046875],\n", + " [31985.0, 31985.0, 32096.8115234375, 32096.8115234375],\n", + " [31975.0, 31975.0, 32040.90576171875, 32040.90576171875],\n", + " [31965.0, 31965.0, 32007.952880859375, 32007.952880859375],\n", + " [32375.0, 32375.0, 32385.0, 32385.0],\n", + " [32395.0, 32395.0, 32405.0, 32405.0],\n", + " [32445.0, 32445.0, 32455.0, 32455.0],\n", + " [32435.0, 32435.0, 32450.0, 32450.0],\n", + " [32425.0, 32425.0, 32442.5, 32442.5],\n", + " [32415.0, 32415.0, 32433.75, 32433.75],\n", + " [32475.0, 32475.0, 32485.0, 32485.0],\n", + " [32465.0, 32465.0, 32480.0, 32480.0],\n", + " [32424.375, 32424.375, 32472.5, 32472.5],\n", + " [32400.0, 32400.0, 32448.4375, 32448.4375],\n", + " [32380.0, 32380.0, 32424.21875, 32424.21875],\n", + " [32365.0, 32365.0, 32402.109375, 32402.109375],\n", + " [32355.0, 32355.0, 32383.5546875, 32383.5546875],\n", + " [32515.0, 32515.0, 32525.0, 32525.0],\n", + " [32545.0, 32545.0, 32555.0, 32555.0],\n", + " [32535.0, 32535.0, 32550.0, 32550.0],\n", + " [32520.0, 32520.0, 32542.5, 32542.5],\n", + " [32575.0, 32575.0, 32585.0, 32585.0],\n", + " [32565.0, 32565.0, 32580.0, 32580.0],\n", + " [32531.25, 32531.25, 32572.5, 32572.5],\n", + " [32625.0, 32625.0, 32635.0, 32635.0],\n", + " [32615.0, 32615.0, 32630.0, 32630.0],\n", + " [32605.0, 32605.0, 32622.5, 32622.5],\n", + " [32595.0, 32595.0, 32613.75, 32613.75],\n", + " [32665.0, 32665.0, 32675.0, 32675.0],\n", + " [32655.0, 32655.0, 32670.0, 32670.0],\n", + " [32645.0, 32645.0, 32662.5, 32662.5],\n", + " [32604.375, 32604.375, 32653.75, 32653.75],\n", + " [32705.0, 32705.0, 32715.0, 32715.0],\n", + " [32695.0, 32695.0, 32710.0, 32710.0],\n", + " [32685.0, 32685.0, 32702.5, 32702.5],\n", + " [32629.0625, 32629.0625, 32693.75, 32693.75],\n", + " [32815.0, 32815.0, 32825.0, 32825.0],\n", + " [32805.0, 32805.0, 32820.0, 32820.0],\n", + " [32835.0, 32835.0, 32845.0, 32845.0],\n", + " [32812.5, 32812.5, 32840.0, 32840.0],\n", + " [32875.0, 32875.0, 32885.0, 32885.0],\n", + " [32865.0, 32865.0, 32880.0, 32880.0],\n", + " [32855.0, 32855.0, 32872.5, 32872.5],\n", + " [32895.0, 32895.0, 32905.0, 32905.0],\n", + " [32863.75, 32863.75, 32900.0, 32900.0],\n", + " [32826.25, 32826.25, 32881.875, 32881.875],\n", + " [32795.0, 32795.0, 32854.0625, 32854.0625],\n", + " [32785.0, 32785.0, 32824.53125, 32824.53125],\n", + " [32955.0, 32955.0, 32965.0, 32965.0],\n", + " [32945.0, 32945.0, 32960.0, 32960.0],\n", + " [32975.0, 32975.0, 32985.0, 32985.0],\n", + " [33005.0, 33005.0, 33015.0, 33015.0],\n", + " [32995.0, 32995.0, 33010.0, 33010.0],\n", + " [32980.0, 32980.0, 33002.5, 33002.5],\n", + " [32952.5, 32952.5, 32991.25, 32991.25],\n", + " [32935.0, 32935.0, 32971.875, 32971.875],\n", + " [32925.0, 32925.0, 32953.4375, 32953.4375],\n", + " [32915.0, 32915.0, 32939.21875, 32939.21875],\n", + " [32804.765625, 32804.765625, 32927.109375, 32927.109375],\n", + " [32775.0, 32775.0, 32865.9375, 32865.9375],\n", + " [32765.0, 32765.0, 32820.46875, 32820.46875],\n", + " [32755.0, 32755.0, 32792.734375, 32792.734375],\n", + " [32745.0, 32745.0, 32773.8671875, 32773.8671875],\n", + " [32735.0, 32735.0, 32759.43359375, 32759.43359375],\n", + " [32725.0, 32725.0, 32747.216796875, 32747.216796875],\n", + " [32661.40625, 32661.40625, 32736.1083984375, 32736.1083984375],\n", + " [32551.875, 32551.875, 32698.75732421875, 32698.75732421875],\n", + " [32505.0, 32505.0, 32625.316162109375, 32625.316162109375],\n", + " [32495.0, 32495.0, 32565.158081054688, 32565.158081054688],\n", + " [32369.27734375, 32369.27734375, 32530.079040527344, 32530.079040527344],\n", + " [31986.476440429688,\n", + " 31986.476440429688,\n", + " 32449.678192138672,\n", + " 32449.678192138672],\n", + " [31184.44871902466, 31184.44871902466, 32218.07731628418, 32218.07731628418],\n", + " [30925.0, 30925.0, 31701.26301765442, 31701.26301765442],\n", + " [33025.0, 33025.0, 33035.0, 33035.0],\n", + " [33065.0, 33065.0, 33075.0, 33075.0],\n", + " [33055.0, 33055.0, 33070.0, 33070.0],\n", + " [33045.0, 33045.0, 33062.5, 33062.5],\n", + " [33095.0, 33095.0, 33105.0, 33105.0],\n", + " [33115.0, 33115.0, 33125.0, 33125.0],\n", + " [33100.0, 33100.0, 33120.0, 33120.0],\n", + " [33155.0, 33155.0, 33165.0, 33165.0],\n", + " [33145.0, 33145.0, 33160.0, 33160.0],\n", + " [33175.0, 33175.0, 33185.0, 33185.0],\n", + " [33215.0, 33215.0, 33225.0, 33225.0],\n", + " [33245.0, 33245.0, 33255.0, 33255.0],\n", + " [33235.0, 33235.0, 33250.0, 33250.0],\n", + " [33220.0, 33220.0, 33242.5, 33242.5],\n", + " [33205.0, 33205.0, 33231.25, 33231.25],\n", + " [33195.0, 33195.0, 33218.125, 33218.125],\n", + " [33180.0, 33180.0, 33206.5625, 33206.5625],\n", + " [33152.5, 33152.5, 33193.28125, 33193.28125],\n", + " [33135.0, 33135.0, 33172.890625, 33172.890625],\n", + " [33110.0, 33110.0, 33153.9453125, 33153.9453125],\n", + " [33275.0, 33275.0, 33285.0, 33285.0],\n", + " [33325.0, 33325.0, 33335.0, 33335.0],\n", + " [33345.0, 33345.0, 33355.0, 33355.0],\n", + " [33330.0, 33330.0, 33350.0, 33350.0],\n", + " [33315.0, 33315.0, 33340.0, 33340.0],\n", + " [33305.0, 33305.0, 33327.5, 33327.5],\n", + " [33295.0, 33295.0, 33316.25, 33316.25],\n", + " [33365.0, 33365.0, 33375.0, 33375.0],\n", + " [33395.0, 33395.0, 33405.0, 33405.0],\n", + " [33385.0, 33385.0, 33400.0, 33400.0],\n", + " [33370.0, 33370.0, 33392.5, 33392.5],\n", + " [33425.0, 33425.0, 33435.0, 33435.0],\n", + " [33445.0, 33445.0, 33455.0, 33455.0],\n", + " [33430.0, 33430.0, 33450.0, 33450.0],\n", + " [33495.0, 33495.0, 33505.0, 33505.0],\n", + " [33485.0, 33485.0, 33500.0, 33500.0],\n", + " [33475.0, 33475.0, 33492.5, 33492.5],\n", + " [33465.0, 33465.0, 33483.75, 33483.75],\n", + " [33440.0, 33440.0, 33474.375, 33474.375],\n", + " [33415.0, 33415.0, 33457.1875, 33457.1875],\n", + " [33525.0, 33525.0, 33535.0, 33535.0],\n", + " [33515.0, 33515.0, 33530.0, 33530.0],\n", + " [33436.09375, 33436.09375, 33522.5, 33522.5],\n", + " [33545.0, 33545.0, 33555.0, 33555.0],\n", + " [33575.0, 33575.0, 33585.0, 33585.0],\n", + " [33565.0, 33565.0, 33580.0, 33580.0],\n", + " [33550.0, 33550.0, 33572.5, 33572.5],\n", + " [33479.296875, 33479.296875, 33561.25, 33561.25],\n", + " [33381.25, 33381.25, 33520.2734375, 33520.2734375],\n", + " [33305.625, 33305.625, 33450.76171875, 33450.76171875],\n", + " [33280.0, 33280.0, 33378.193359375, 33378.193359375],\n", + " [33265.0, 33265.0, 33329.0966796875, 33329.0966796875],\n", + " [33131.97265625, 33131.97265625, 33297.04833984375, 33297.04833984375],\n", + " [33085.0, 33085.0, 33214.510498046875, 33214.510498046875],\n", + " [33053.75, 33053.75, 33149.75524902344, 33149.75524902344],\n", + " [33030.0, 33030.0, 33101.75262451172, 33101.75262451172],\n", + " [33595.0, 33595.0, 33605.0, 33605.0],\n", + " [33655.0, 33655.0, 33665.0, 33665.0],\n", + " [33645.0, 33645.0, 33660.0, 33660.0],\n", + " [33685.0, 33685.0, 33695.0, 33695.0],\n", + " [33705.0, 33705.0, 33715.0, 33715.0],\n", + " [33690.0, 33690.0, 33710.0, 33710.0],\n", + " [33675.0, 33675.0, 33700.0, 33700.0],\n", + " [33652.5, 33652.5, 33687.5, 33687.5],\n", + " [33635.0, 33635.0, 33670.0, 33670.0],\n", + " [33775.0, 33775.0, 33785.0, 33785.0],\n", + " [33795.0, 33795.0, 33805.0, 33805.0],\n", + " [33815.0, 33815.0, 33825.0, 33825.0],\n", + " [33800.0, 33800.0, 33820.0, 33820.0],\n", + " [33780.0, 33780.0, 33810.0, 33810.0],\n", + " [33765.0, 33765.0, 33795.0, 33795.0],\n", + " [33755.0, 33755.0, 33780.0, 33780.0],\n", + " [33745.0, 33745.0, 33767.5, 33767.5],\n", + " [33735.0, 33735.0, 33756.25, 33756.25],\n", + " [33725.0, 33725.0, 33745.625, 33745.625],\n", + " [33652.5, 33652.5, 33735.3125, 33735.3125],\n", + " [33835.0, 33835.0, 33845.0, 33845.0],\n", + " [33875.0, 33875.0, 33885.0, 33885.0],\n", + " [33915.0, 33915.0, 33925.0, 33925.0],\n", + " [33905.0, 33905.0, 33920.0, 33920.0],\n", + " [33895.0, 33895.0, 33912.5, 33912.5],\n", + " [33945.0, 33945.0, 33955.0, 33955.0],\n", + " [33935.0, 33935.0, 33950.0, 33950.0],\n", + " [33903.75, 33903.75, 33942.5, 33942.5],\n", + " [33880.0, 33880.0, 33923.125, 33923.125],\n", + " [33865.0, 33865.0, 33901.5625, 33901.5625],\n", + " [33855.0, 33855.0, 33883.28125, 33883.28125],\n", + " [33840.0, 33840.0, 33869.140625, 33869.140625],\n", + " [33693.90625, 33693.90625, 33854.5703125, 33854.5703125],\n", + " [33625.0, 33625.0, 33774.23828125, 33774.23828125],\n", + " [33615.0, 33615.0, 33699.619140625, 33699.619140625],\n", + " [33600.0, 33600.0, 33657.3095703125, 33657.3095703125],\n", + " [33065.87631225586, 33065.87631225586, 33628.65478515625, 33628.65478515625],\n", + " [31313.13150882721,\n", + " 31313.13150882721,\n", + " 33347.265548706055,\n", + " 33347.265548706055],\n", + " [30902.5, 30902.5, 32330.198528766632, 32330.198528766632],\n", + " [30885.0, 30885.0, 31616.349264383316, 31616.349264383316],\n", + " [30870.0, 30870.0, 31250.674632191658, 31250.674632191658],\n", + " [33965.0, 33965.0, 33975.0, 33975.0],\n", + " [31060.33731609583, 31060.33731609583, 33970.0, 33970.0],\n", + " [30855.0, 30855.0, 32515.168658047915, 32515.168658047915],\n", + " [34015.0, 34015.0, 34025.0, 34025.0],\n", + " [34005.0, 34005.0, 34020.0, 34020.0],\n", + " [34045.0, 34045.0, 34055.0, 34055.0],\n", + " [34035.0, 34035.0, 34050.0, 34050.0],\n", + " [34012.5, 34012.5, 34042.5, 34042.5],\n", + " [33995.0, 33995.0, 34027.5, 34027.5],\n", + " [33985.0, 33985.0, 34011.25, 34011.25],\n", + " [31685.084329023957, 31685.084329023957, 33998.125, 33998.125],\n", + " [30415.879440307617,\n", + " 30415.879440307617,\n", + " 32841.60466451198,\n", + " 32841.60466451198],\n", + " [30300.78125, 30300.78125, 31628.742052409798, 31628.742052409798],\n", + " [34085.0, 34085.0, 34095.0, 34095.0],\n", + " [34075.0, 34075.0, 34090.0, 34090.0],\n", + " [34065.0, 34065.0, 34082.5, 34082.5],\n", + " [34115.0, 34115.0, 34125.0, 34125.0],\n", + " [34105.0, 34105.0, 34120.0, 34120.0],\n", + " [34205.0, 34205.0, 34215.0, 34215.0],\n", + " [34195.0, 34195.0, 34210.0, 34210.0],\n", + " [34185.0, 34185.0, 34202.5, 34202.5],\n", + " [34175.0, 34175.0, 34193.75, 34193.75],\n", + " [34165.0, 34165.0, 34184.375, 34184.375],\n", + " [34155.0, 34155.0, 34174.6875, 34174.6875],\n", + " [34145.0, 34145.0, 34164.84375, 34164.84375],\n", + " [34135.0, 34135.0, 34154.921875, 34154.921875],\n", + " [34112.5, 34112.5, 34144.9609375, 34144.9609375],\n", + " [34265.0, 34265.0, 34275.0, 34275.0],\n", + " [34255.0, 34255.0, 34270.0, 34270.0],\n", + " [34245.0, 34245.0, 34262.5, 34262.5],\n", + " [34235.0, 34235.0, 34253.75, 34253.75],\n", + " [34225.0, 34225.0, 34244.375, 34244.375],\n", + " [34335.0, 34335.0, 34345.0, 34345.0],\n", + " [34325.0, 34325.0, 34340.0, 34340.0],\n", + " [34315.0, 34315.0, 34332.5, 34332.5],\n", + " [34305.0, 34305.0, 34323.75, 34323.75],\n", + " [34295.0, 34295.0, 34314.375, 34314.375],\n", + " [34365.0, 34365.0, 34375.0, 34375.0],\n", + " [34355.0, 34355.0, 34370.0, 34370.0],\n", + " [34304.6875, 34304.6875, 34362.5, 34362.5],\n", + " [34285.0, 34285.0, 34333.59375, 34333.59375],\n", + " [34234.6875, 34234.6875, 34309.296875, 34309.296875],\n", + " [34128.73046875, 34128.73046875, 34271.9921875, 34271.9921875],\n", + " [34073.75, 34073.75, 34200.361328125, 34200.361328125],\n", + " [34415.0, 34415.0, 34425.0, 34425.0],\n", + " [34405.0, 34405.0, 34420.0, 34420.0],\n", + " [34395.0, 34395.0, 34412.5, 34412.5],\n", + " [34445.0, 34445.0, 34455.0, 34455.0],\n", + " [34435.0, 34435.0, 34450.0, 34450.0],\n", + " [34515.0, 34515.0, 34525.0, 34525.0],\n", + " [34505.0, 34505.0, 34520.0, 34520.0],\n", + " [34495.0, 34495.0, 34512.5, 34512.5],\n", + " [34485.0, 34485.0, 34503.75, 34503.75],\n", + " [34475.0, 34475.0, 34494.375, 34494.375],\n", + " [34465.0, 34465.0, 34484.6875, 34484.6875],\n", + " [34555.0, 34555.0, 34565.0, 34565.0],\n", + " [34545.0, 34545.0, 34560.0, 34560.0],\n", + " [34535.0, 34535.0, 34552.5, 34552.5],\n", + " [34595.0, 34595.0, 34605.0, 34605.0],\n", + " [34615.0, 34615.0, 34625.0, 34625.0],\n", + " [34600.0, 34600.0, 34620.0, 34620.0],\n", + " [34585.0, 34585.0, 34610.0, 34610.0],\n", + " [34575.0, 34575.0, 34597.5, 34597.5],\n", + " [34543.75, 34543.75, 34586.25, 34586.25],\n", + " [34474.84375, 34474.84375, 34565.0, 34565.0],\n", + " [34442.5, 34442.5, 34519.921875, 34519.921875],\n", + " [34403.75, 34403.75, 34481.2109375, 34481.2109375],\n", + " [34385.0, 34385.0, 34442.48046875, 34442.48046875],\n", + " [34695.0, 34695.0, 34705.0, 34705.0],\n", + " [34685.0, 34685.0, 34700.0, 34700.0],\n", + " [34715.0, 34715.0, 34725.0, 34725.0],\n", + " [34745.0, 34745.0, 34755.0, 34755.0],\n", + " [34735.0, 34735.0, 34750.0, 34750.0],\n", + " [34720.0, 34720.0, 34742.5, 34742.5],\n", + " [34692.5, 34692.5, 34731.25, 34731.25],\n", + " [34675.0, 34675.0, 34711.875, 34711.875],\n", + " [34665.0, 34665.0, 34693.4375, 34693.4375],\n", + " [34655.0, 34655.0, 34679.21875, 34679.21875],\n", + " [34645.0, 34645.0, 34667.109375, 34667.109375],\n", + " [34635.0, 34635.0, 34656.0546875, 34656.0546875],\n", + " [34795.0, 34795.0, 34805.0, 34805.0],\n", + " [34785.0, 34785.0, 34800.0, 34800.0],\n", + " [34775.0, 34775.0, 34792.5, 34792.5],\n", + " [34765.0, 34765.0, 34783.75, 34783.75],\n", + " [34825.0, 34825.0, 34835.0, 34835.0],\n", + " [34855.0, 34855.0, 34865.0, 34865.0],\n", + " [34845.0, 34845.0, 34860.0, 34860.0],\n", + " [34830.0, 34830.0, 34852.5, 34852.5],\n", + " [34815.0, 34815.0, 34841.25, 34841.25],\n", + " [34774.375, 34774.375, 34828.125, 34828.125],\n", + " [34875.0, 34875.0, 34885.0, 34885.0],\n", + " [34945.0, 34945.0, 34955.0, 34955.0],\n", + " [34935.0, 34935.0, 34950.0, 34950.0],\n", + " [34925.0, 34925.0, 34942.5, 34942.5],\n", + " [34915.0, 34915.0, 34933.75, 34933.75],\n", + " [34905.0, 34905.0, 34924.375, 34924.375],\n", + " [34895.0, 34895.0, 34914.6875, 34914.6875],\n", + " [34975.0, 34975.0, 34985.0, 34985.0],\n", + " [34965.0, 34965.0, 34980.0, 34980.0],\n", + " [34904.84375, 34904.84375, 34972.5, 34972.5],\n", + " [34995.0, 34995.0, 35005.0, 35005.0],\n", + " [35015.0, 35015.0, 35025.0, 35025.0],\n", + " [35000.0, 35000.0, 35020.0, 35020.0],\n", + " [35045.0, 35045.0, 35055.0, 35055.0],\n", + " [35035.0, 35035.0, 35050.0, 35050.0],\n", + " [35010.0, 35010.0, 35042.5, 35042.5],\n", + " [34938.671875, 34938.671875, 35026.25, 35026.25],\n", + " [34880.0, 34880.0, 34982.4609375, 34982.4609375],\n", + " [35105.0, 35105.0, 35115.0, 35115.0],\n", + " [35095.0, 35095.0, 35110.0, 35110.0],\n", + " [35085.0, 35085.0, 35102.5, 35102.5],\n", + " [35075.0, 35075.0, 35093.75, 35093.75],\n", + " [35065.0, 35065.0, 35084.375, 35084.375],\n", + " [34931.23046875, 34931.23046875, 35074.6875, 35074.6875],\n", + " [34801.25, 34801.25, 35002.958984375, 35002.958984375],\n", + " [34645.52734375, 34645.52734375, 34902.1044921875, 34902.1044921875],\n", + " [34413.740234375, 34413.740234375, 34773.81591796875, 34773.81591796875],\n", + " [34137.0556640625, 34137.0556640625, 34593.778076171875, 34593.778076171875],\n", + " [30964.7616512049, 30964.7616512049, 34365.41687011719, 34365.41687011719],\n", + " [29710.98876953125,\n", + " 29710.98876953125,\n", + " 32665.089260661043,\n", + " 32665.089260661043],\n", + " [29625.0, 29625.0, 31188.039015096147, 31188.039015096147],\n", + " [35155.0, 35155.0, 35165.0, 35165.0],\n", + " [35145.0, 35145.0, 35160.0, 35160.0],\n", + " [35135.0, 35135.0, 35152.5, 35152.5],\n", + " [35185.0, 35185.0, 35195.0, 35195.0],\n", + " [35205.0, 35205.0, 35215.0, 35215.0],\n", + " [35190.0, 35190.0, 35210.0, 35210.0],\n", + " [35245.0, 35245.0, 35255.0, 35255.0],\n", + " [35235.0, 35235.0, 35250.0, 35250.0],\n", + " [35225.0, 35225.0, 35242.5, 35242.5],\n", + " [35265.0, 35265.0, 35275.0, 35275.0],\n", + " [35233.75, 35233.75, 35270.0, 35270.0],\n", + " [35200.0, 35200.0, 35251.875, 35251.875],\n", + " [35305.0, 35305.0, 35315.0, 35315.0],\n", + " [35295.0, 35295.0, 35310.0, 35310.0],\n", + " [35355.0, 35355.0, 35365.0, 35365.0],\n", + " [35345.0, 35345.0, 35360.0, 35360.0],\n", + " [35335.0, 35335.0, 35352.5, 35352.5],\n", + " [35325.0, 35325.0, 35343.75, 35343.75],\n", + " [35375.0, 35375.0, 35385.0, 35385.0],\n", + " [35405.0, 35405.0, 35415.0, 35415.0],\n", + " [35425.0, 35425.0, 35435.0, 35435.0],\n", + " [35445.0, 35445.0, 35455.0, 35455.0],\n", + " [35515.0, 35515.0, 35525.0, 35525.0],\n", + " [35505.0, 35505.0, 35520.0, 35520.0],\n", + " [35495.0, 35495.0, 35512.5, 35512.5],\n", + " [35485.0, 35485.0, 35503.75, 35503.75],\n", + " [35475.0, 35475.0, 35494.375, 35494.375],\n", + " [35465.0, 35465.0, 35484.6875, 35484.6875],\n", + " [35535.0, 35535.0, 35545.0, 35545.0],\n", + " [35474.84375, 35474.84375, 35540.0, 35540.0],\n", + " [35450.0, 35450.0, 35507.421875, 35507.421875],\n", + " [35430.0, 35430.0, 35478.7109375, 35478.7109375],\n", + " [35410.0, 35410.0, 35454.35546875, 35454.35546875],\n", + " [35395.0, 35395.0, 35432.177734375, 35432.177734375],\n", + " [35585.0, 35585.0, 35595.0, 35595.0],\n", + " [35575.0, 35575.0, 35590.0, 35590.0],\n", + " [35565.0, 35565.0, 35582.5, 35582.5],\n", + " [35555.0, 35555.0, 35573.75, 35573.75],\n", + " [35413.5888671875, 35413.5888671875, 35564.375, 35564.375],\n", + " [35380.0, 35380.0, 35488.98193359375, 35488.98193359375],\n", + " [35334.375, 35334.375, 35434.490966796875, 35434.490966796875],\n", + " [35302.5, 35302.5, 35384.43298339844, 35384.43298339844],\n", + " [35285.0, 35285.0, 35343.46649169922, 35343.46649169922],\n", + " [35225.9375, 35225.9375, 35314.23324584961, 35314.23324584961],\n", + " [35175.0, 35175.0, 35270.085372924805, 35270.085372924805],\n", + " [35655.0, 35655.0, 35665.0, 35665.0],\n", + " [35645.0, 35645.0, 35660.0, 35660.0],\n", + " [35635.0, 35635.0, 35652.5, 35652.5],\n", + " [35625.0, 35625.0, 35643.75, 35643.75],\n", + " [35685.0, 35685.0, 35695.0, 35695.0],\n", + " [35675.0, 35675.0, 35690.0, 35690.0],\n", + " [35634.375, 35634.375, 35682.5, 35682.5],\n", + " [35745.0, 35745.0, 35755.0, 35755.0],\n", + " [35735.0, 35735.0, 35750.0, 35750.0],\n", + " [35725.0, 35725.0, 35742.5, 35742.5],\n", + " [35715.0, 35715.0, 35733.75, 35733.75],\n", + " [35705.0, 35705.0, 35724.375, 35724.375],\n", + " [35658.4375, 35658.4375, 35714.6875, 35714.6875],\n", + " [35775.0, 35775.0, 35785.0, 35785.0],\n", + " [35765.0, 35765.0, 35780.0, 35780.0],\n", + " [35805.0, 35805.0, 35815.0, 35815.0],\n", + " [35865.0, 35865.0, 35875.0, 35875.0],\n", + " [35885.0, 35885.0, 35895.0, 35895.0],\n", + " [35870.0, 35870.0, 35890.0, 35890.0],\n", + " [35935.0, 35935.0, 35945.0, 35945.0],\n", + " [35965.0, 35965.0, 35975.0, 35975.0],\n", + " [36015.0, 36015.0, 36025.0, 36025.0],\n", + " [36005.0, 36005.0, 36020.0, 36020.0],\n", + " [35995.0, 35995.0, 36012.5, 36012.5],\n", + " [35985.0, 35985.0, 36003.75, 36003.75],\n", + " [35970.0, 35970.0, 35994.375, 35994.375],\n", + " [36035.0, 36035.0, 36045.0, 36045.0],\n", + " [36055.0, 36055.0, 36065.0, 36065.0],\n", + " [36040.0, 36040.0, 36060.0, 36060.0],\n", + " [36075.0, 36075.0, 36085.0, 36085.0],\n", + " [36115.0, 36115.0, 36125.0, 36125.0],\n", + " [36105.0, 36105.0, 36120.0, 36120.0],\n", + " [36095.0, 36095.0, 36112.5, 36112.5],\n", + " [36080.0, 36080.0, 36103.75, 36103.75],\n", + " [36050.0, 36050.0, 36091.875, 36091.875],\n", + " [35982.1875, 35982.1875, 36070.9375, 36070.9375],\n", + " [35955.0, 35955.0, 36026.5625, 36026.5625],\n", + " [35940.0, 35940.0, 35990.78125, 35990.78125],\n", + " [35925.0, 35925.0, 35965.390625, 35965.390625],\n", + " [35915.0, 35915.0, 35945.1953125, 35945.1953125],\n", + " [35905.0, 35905.0, 35930.09765625, 35930.09765625],\n", + " [35880.0, 35880.0, 35917.548828125, 35917.548828125],\n", + " [35855.0, 35855.0, 35898.7744140625, 35898.7744140625],\n", + " [35845.0, 35845.0, 35876.88720703125, 35876.88720703125],\n", + " [35835.0, 35835.0, 35860.943603515625, 35860.943603515625],\n", + " [35825.0, 35825.0, 35847.97180175781, 35847.97180175781],\n", + " [35810.0, 35810.0, 35836.485900878906, 35836.485900878906],\n", + " [36145.0, 36145.0, 36155.0, 36155.0],\n", + " [36175.0, 36175.0, 36185.0, 36185.0],\n", + " [36165.0, 36165.0, 36180.0, 36180.0],\n", + " [36225.0, 36225.0, 36235.0, 36235.0],\n", + " [36215.0, 36215.0, 36230.0, 36230.0],\n", + " [36205.0, 36205.0, 36222.5, 36222.5],\n", + " [36245.0, 36245.0, 36255.0, 36255.0],\n", + " [36213.75, 36213.75, 36250.0, 36250.0],\n", + " [36265.0, 36265.0, 36275.0, 36275.0],\n", + " [36231.875, 36231.875, 36270.0, 36270.0],\n", + " [36195.0, 36195.0, 36250.9375, 36250.9375],\n", + " [36172.5, 36172.5, 36222.96875, 36222.96875],\n", + " [36150.0, 36150.0, 36197.734375, 36197.734375],\n", + " [36135.0, 36135.0, 36173.8671875, 36173.8671875],\n", + " [35823.24295043945, 35823.24295043945, 36154.43359375, 36154.43359375],\n", + " [35795.0, 35795.0, 35988.83827209473, 35988.83827209473],\n", + " [36315.0, 36315.0, 36325.0, 36325.0],\n", + " [36345.0, 36345.0, 36355.0, 36355.0],\n", + " [36335.0, 36335.0, 36350.0, 36350.0],\n", + " [36365.0, 36365.0, 36375.0, 36375.0],\n", + " [36342.5, 36342.5, 36370.0, 36370.0],\n", + " [36320.0, 36320.0, 36356.25, 36356.25],\n", + " [36305.0, 36305.0, 36338.125, 36338.125],\n", + " [36425.0, 36425.0, 36435.0, 36435.0],\n", + " [36415.0, 36415.0, 36430.0, 36430.0],\n", + " [36455.0, 36455.0, 36465.0, 36465.0],\n", + " [36445.0, 36445.0, 36460.0, 36460.0],\n", + " [36422.5, 36422.5, 36452.5, 36452.5],\n", + " [36405.0, 36405.0, 36437.5, 36437.5],\n", + " [36475.0, 36475.0, 36485.0, 36485.0],\n", + " [36495.0, 36495.0, 36505.0, 36505.0],\n", + " [36480.0, 36480.0, 36500.0, 36500.0],\n", + " [36421.25, 36421.25, 36490.0, 36490.0],\n", + " [36535.0, 36535.0, 36545.0, 36545.0],\n", + " [36555.0, 36555.0, 36565.0, 36565.0],\n", + " [36540.0, 36540.0, 36560.0, 36560.0],\n", + " [36525.0, 36525.0, 36550.0, 36550.0],\n", + " [36515.0, 36515.0, 36537.5, 36537.5],\n", + " [36455.625, 36455.625, 36526.25, 36526.25],\n", + " [36395.0, 36395.0, 36490.9375, 36490.9375],\n", + " [36605.0, 36605.0, 36615.0, 36615.0],\n", + " [36595.0, 36595.0, 36610.0, 36610.0],\n", + " [36585.0, 36585.0, 36602.5, 36602.5],\n", + " [36575.0, 36575.0, 36593.75, 36593.75],\n", + " [36442.96875, 36442.96875, 36584.375, 36584.375],\n", + " [36635.0, 36635.0, 36645.0, 36645.0],\n", + " [36685.0, 36685.0, 36695.0, 36695.0],\n", + " [36675.0, 36675.0, 36690.0, 36690.0],\n", + " [36665.0, 36665.0, 36682.5, 36682.5],\n", + " [36655.0, 36655.0, 36673.75, 36673.75],\n", + " [36640.0, 36640.0, 36664.375, 36664.375],\n", + " [36625.0, 36625.0, 36652.1875, 36652.1875],\n", + " [36715.0, 36715.0, 36725.0, 36725.0],\n", + " [36705.0, 36705.0, 36720.0, 36720.0],\n", + " [36765.0, 36765.0, 36775.0, 36775.0],\n", + " [36755.0, 36755.0, 36770.0, 36770.0],\n", + " [36745.0, 36745.0, 36762.5, 36762.5],\n", + " [36735.0, 36735.0, 36753.75, 36753.75],\n", + " [36805.0, 36805.0, 36815.0, 36815.0],\n", + " [36795.0, 36795.0, 36810.0, 36810.0],\n", + " [36855.0, 36855.0, 36865.0, 36865.0],\n", + " [36845.0, 36845.0, 36860.0, 36860.0],\n", + " [36835.0, 36835.0, 36852.5, 36852.5],\n", + " [36825.0, 36825.0, 36843.75, 36843.75],\n", + " [36802.5, 36802.5, 36834.375, 36834.375],\n", + " [36885.0, 36885.0, 36895.0, 36895.0],\n", + " [36875.0, 36875.0, 36890.0, 36890.0],\n", + " [36818.4375, 36818.4375, 36882.5, 36882.5],\n", + " [36785.0, 36785.0, 36850.46875, 36850.46875],\n", + " [36744.375, 36744.375, 36817.734375, 36817.734375],\n", + " [36712.5, 36712.5, 36781.0546875, 36781.0546875],\n", + " [36925.0, 36925.0, 36935.0, 36935.0],\n", + " [36915.0, 36915.0, 36930.0, 36930.0],\n", + " [36955.0, 36955.0, 36965.0, 36965.0],\n", + " [36945.0, 36945.0, 36960.0, 36960.0],\n", + " [36922.5, 36922.5, 36952.5, 36952.5],\n", + " [36975.0, 36975.0, 36985.0, 36985.0],\n", + " [36995.0, 36995.0, 37005.0, 37005.0],\n", + " [36980.0, 36980.0, 37000.0, 37000.0],\n", + " [36937.5, 36937.5, 36990.0, 36990.0],\n", + " [36905.0, 36905.0, 36963.75, 36963.75],\n", + " [36746.77734375, 36746.77734375, 36934.375, 36934.375],\n", + " [36638.59375, 36638.59375, 36840.576171875, 36840.576171875],\n", + " [36513.671875, 36513.671875, 36739.5849609375, 36739.5849609375],\n", + " [36385.0, 36385.0, 36626.62841796875, 36626.62841796875],\n", + " [36321.5625, 36321.5625, 36505.814208984375, 36505.814208984375],\n", + " [36295.0, 36295.0, 36413.68835449219, 36413.68835449219],\n", + " [36285.0, 36285.0, 36354.344177246094, 36354.344177246094],\n", + " [35891.91913604736, 35891.91913604736, 36319.67208862305, 36319.67208862305],\n", + " [37065.0, 37065.0, 37075.0, 37075.0],\n", + " [37055.0, 37055.0, 37070.0, 37070.0],\n", + " [37095.0, 37095.0, 37105.0, 37105.0],\n", + " [37135.0, 37135.0, 37145.0, 37145.0],\n", + " [37125.0, 37125.0, 37140.0, 37140.0],\n", + " [37165.0, 37165.0, 37175.0, 37175.0],\n", + " [37205.0, 37205.0, 37215.0, 37215.0],\n", + " [37195.0, 37195.0, 37210.0, 37210.0],\n", + " [37315.0, 37315.0, 37325.0, 37325.0],\n", + " [37305.0, 37305.0, 37320.0, 37320.0],\n", + " [37295.0, 37295.0, 37312.5, 37312.5],\n", + " [37285.0, 37285.0, 37303.75, 37303.75],\n", + " [37275.0, 37275.0, 37294.375, 37294.375],\n", + " [37265.0, 37265.0, 37284.6875, 37284.6875],\n", + " [37335.0, 37335.0, 37345.0, 37345.0],\n", + " [37274.84375, 37274.84375, 37340.0, 37340.0],\n", + " [37355.0, 37355.0, 37365.0, 37365.0],\n", + " [37307.421875, 37307.421875, 37360.0, 37360.0],\n", + " [37255.0, 37255.0, 37333.7109375, 37333.7109375],\n", + " [37245.0, 37245.0, 37294.35546875, 37294.35546875],\n", + " [37235.0, 37235.0, 37269.677734375, 37269.677734375],\n", + " [37225.0, 37225.0, 37252.3388671875, 37252.3388671875],\n", + " [37385.0, 37385.0, 37395.0, 37395.0],\n", + " [37375.0, 37375.0, 37390.0, 37390.0],\n", + " [37238.66943359375, 37238.66943359375, 37382.5, 37382.5],\n", + " [37202.5, 37202.5, 37310.584716796875, 37310.584716796875],\n", + " [37185.0, 37185.0, 37256.54235839844, 37256.54235839844],\n", + " [37170.0, 37170.0, 37220.77117919922, 37220.77117919922],\n", + " [37155.0, 37155.0, 37195.38558959961, 37195.38558959961],\n", + " [37132.5, 37132.5, 37175.192794799805, 37175.192794799805],\n", + " [37115.0, 37115.0, 37153.8463973999, 37153.8463973999],\n", + " [37435.0, 37435.0, 37445.0, 37445.0],\n", + " [37425.0, 37425.0, 37440.0, 37440.0],\n", + " [37415.0, 37415.0, 37432.5, 37432.5],\n", + " [37405.0, 37405.0, 37423.75, 37423.75],\n", + " [37455.0, 37455.0, 37465.0, 37465.0],\n", + " [37485.0, 37485.0, 37495.0, 37495.0],\n", + " [37475.0, 37475.0, 37490.0, 37490.0],\n", + " [37460.0, 37460.0, 37482.5, 37482.5],\n", + " [37414.375, 37414.375, 37471.25, 37471.25],\n", + " [37505.0, 37505.0, 37515.0, 37515.0],\n", + " [37525.0, 37525.0, 37535.0, 37535.0],\n", + " [37510.0, 37510.0, 37530.0, 37530.0],\n", + " [37585.0, 37585.0, 37595.0, 37595.0],\n", + " [37575.0, 37575.0, 37590.0, 37590.0],\n", + " [37565.0, 37565.0, 37582.5, 37582.5],\n", + " [37555.0, 37555.0, 37573.75, 37573.75],\n", + " [37545.0, 37545.0, 37564.375, 37564.375],\n", + " [37520.0, 37520.0, 37554.6875, 37554.6875],\n", + " [37605.0, 37605.0, 37615.0, 37615.0],\n", + " [37645.0, 37645.0, 37655.0, 37655.0],\n", + " [37635.0, 37635.0, 37650.0, 37650.0],\n", + " [37675.0, 37675.0, 37685.0, 37685.0],\n", + " [37695.0, 37695.0, 37705.0, 37705.0],\n", + " [37680.0, 37680.0, 37700.0, 37700.0],\n", + " [37665.0, 37665.0, 37690.0, 37690.0],\n", + " [37642.5, 37642.5, 37677.5, 37677.5],\n", + " [37735.0, 37735.0, 37745.0, 37745.0],\n", + " [37725.0, 37725.0, 37740.0, 37740.0],\n", + " [37715.0, 37715.0, 37732.5, 37732.5],\n", + " [37660.0, 37660.0, 37723.75, 37723.75],\n", + " [37625.0, 37625.0, 37691.875, 37691.875],\n", + " [37610.0, 37610.0, 37658.4375, 37658.4375],\n", + " [37537.34375, 37537.34375, 37634.21875, 37634.21875],\n", + " [37442.8125, 37442.8125, 37585.78125, 37585.78125],\n", + " [37134.42319869995, 37134.42319869995, 37514.296875, 37514.296875],\n", + " [37100.0, 37100.0, 37324.360036849976, 37324.360036849976],\n", + " [37085.0, 37085.0, 37212.18001842499, 37212.18001842499],\n", + " [37755.0, 37755.0, 37765.0, 37765.0],\n", + " [37785.0, 37785.0, 37795.0, 37795.0],\n", + " [37775.0, 37775.0, 37790.0, 37790.0],\n", + " [37760.0, 37760.0, 37782.5, 37782.5],\n", + " [37805.0, 37805.0, 37815.0, 37815.0],\n", + " [37771.25, 37771.25, 37810.0, 37810.0],\n", + " [37835.0, 37835.0, 37845.0, 37845.0],\n", + " [37825.0, 37825.0, 37840.0, 37840.0],\n", + " [37865.0, 37865.0, 37875.0, 37875.0],\n", + " [37855.0, 37855.0, 37870.0, 37870.0],\n", + " [37832.5, 37832.5, 37862.5, 37862.5],\n", + " [37885.0, 37885.0, 37895.0, 37895.0],\n", + " [37847.5, 37847.5, 37890.0, 37890.0],\n", + " [37790.625, 37790.625, 37868.75, 37868.75],\n", + " [37965.0, 37965.0, 37975.0, 37975.0],\n", + " [37955.0, 37955.0, 37970.0, 37970.0],\n", + " [37945.0, 37945.0, 37962.5, 37962.5],\n", + " [37935.0, 37935.0, 37953.75, 37953.75],\n", + " [37925.0, 37925.0, 37944.375, 37944.375],\n", + " [37915.0, 37915.0, 37934.6875, 37934.6875],\n", + " [37905.0, 37905.0, 37924.84375, 37924.84375],\n", + " [37829.6875, 37829.6875, 37914.921875, 37914.921875],\n", + " [37148.590009212494, 37148.590009212494, 37872.3046875, 37872.3046875],\n", + " [37062.5, 37062.5, 37510.44734835625, 37510.44734835625],\n", + " [37045.0, 37045.0, 37286.47367417812, 37286.47367417812],\n", + " [37035.0, 37035.0, 37165.73683708906, 37165.73683708906],\n", + " [37025.0, 37025.0, 37100.36841854453, 37100.36841854453],\n", + " [38045.0, 38045.0, 38055.0, 38055.0],\n", + " [38075.0, 38075.0, 38085.0, 38085.0],\n", + " [38065.0, 38065.0, 38080.0, 38080.0],\n", + " [38050.0, 38050.0, 38072.5, 38072.5],\n", + " [38135.0, 38135.0, 38145.0, 38145.0],\n", + " [38125.0, 38125.0, 38140.0, 38140.0],\n", + " [38165.0, 38165.0, 38175.0, 38175.0],\n", + " [38155.0, 38155.0, 38170.0, 38170.0],\n", + " [38132.5, 38132.5, 38162.5, 38162.5],\n", + " [38115.0, 38115.0, 38147.5, 38147.5],\n", + " [38105.0, 38105.0, 38131.25, 38131.25],\n", + " [38095.0, 38095.0, 38118.125, 38118.125],\n", + " [38061.25, 38061.25, 38106.5625, 38106.5625],\n", + " [38035.0, 38035.0, 38083.90625, 38083.90625],\n", + " [38185.0, 38185.0, 38195.0, 38195.0],\n", + " [38059.453125, 38059.453125, 38190.0, 38190.0],\n", + " [38225.0, 38225.0, 38235.0, 38235.0],\n", + " [38215.0, 38215.0, 38230.0, 38230.0],\n", + " [38205.0, 38205.0, 38222.5, 38222.5],\n", + " [38245.0, 38245.0, 38255.0, 38255.0],\n", + " [38213.75, 38213.75, 38250.0, 38250.0],\n", + " [38124.7265625, 38124.7265625, 38231.875, 38231.875],\n", + " [38025.0, 38025.0, 38178.30078125, 38178.30078125],\n", + " [38015.0, 38015.0, 38101.650390625, 38101.650390625],\n", + " [38005.0, 38005.0, 38058.3251953125, 38058.3251953125],\n", + " [37995.0, 37995.0, 38031.66259765625, 38031.66259765625],\n", + " [38265.0, 38265.0, 38275.0, 38275.0],\n", + " [38013.331298828125, 38013.331298828125, 38270.0, 38270.0],\n", + " [37985.0, 37985.0, 38141.66564941406, 38141.66564941406],\n", + " [38315.0, 38315.0, 38325.0, 38325.0],\n", + " [38345.0, 38345.0, 38355.0, 38355.0],\n", + " [38335.0, 38335.0, 38350.0, 38350.0],\n", + " [38320.0, 38320.0, 38342.5, 38342.5],\n", + " [38375.0, 38375.0, 38385.0, 38385.0],\n", + " [38365.0, 38365.0, 38380.0, 38380.0],\n", + " [38331.25, 38331.25, 38372.5, 38372.5],\n", + " [38415.0, 38415.0, 38425.0, 38425.0],\n", + " [38405.0, 38405.0, 38420.0, 38420.0],\n", + " [38435.0, 38435.0, 38445.0, 38445.0],\n", + " [38412.5, 38412.5, 38440.0, 38440.0],\n", + " [38485.0, 38485.0, 38495.0, 38495.0],\n", + " [38475.0, 38475.0, 38490.0, 38490.0],\n", + " [38555.0, 38555.0, 38565.0, 38565.0],\n", + " [38585.0, 38585.0, 38595.0, 38595.0],\n", + " [38575.0, 38575.0, 38590.0, 38590.0],\n", + " [38560.0, 38560.0, 38582.5, 38582.5],\n", + " [38545.0, 38545.0, 38571.25, 38571.25],\n", + " [38535.0, 38535.0, 38558.125, 38558.125],\n", + " [38525.0, 38525.0, 38546.5625, 38546.5625],\n", + " [38605.0, 38605.0, 38615.0, 38615.0],\n", + " [38645.0, 38645.0, 38655.0, 38655.0],\n", + " [38635.0, 38635.0, 38650.0, 38650.0],\n", + " [38625.0, 38625.0, 38642.5, 38642.5],\n", + " [38675.0, 38675.0, 38685.0, 38685.0],\n", + " [38695.0, 38695.0, 38705.0, 38705.0],\n", + " [38680.0, 38680.0, 38700.0, 38700.0],\n", + " [38665.0, 38665.0, 38690.0, 38690.0],\n", + " [38633.75, 38633.75, 38677.5, 38677.5],\n", + " [38610.0, 38610.0, 38655.625, 38655.625],\n", + " [38725.0, 38725.0, 38735.0, 38735.0],\n", + " [38715.0, 38715.0, 38730.0, 38730.0],\n", + " [38765.0, 38765.0, 38775.0, 38775.0],\n", + " [38755.0, 38755.0, 38770.0, 38770.0],\n", + " [38745.0, 38745.0, 38762.5, 38762.5],\n", + " [38805.0, 38805.0, 38815.0, 38815.0],\n", + " [38795.0, 38795.0, 38810.0, 38810.0],\n", + " [38825.0, 38825.0, 38835.0, 38835.0],\n", + " [38845.0, 38845.0, 38855.0, 38855.0],\n", + " [38830.0, 38830.0, 38850.0, 38850.0],\n", + " [38905.0, 38905.0, 38915.0, 38915.0],\n", + " [38895.0, 38895.0, 38910.0, 38910.0],\n", + " [38885.0, 38885.0, 38902.5, 38902.5],\n", + " [38875.0, 38875.0, 38893.75, 38893.75],\n", + " [38865.0, 38865.0, 38884.375, 38884.375],\n", + " [38840.0, 38840.0, 38874.6875, 38874.6875],\n", + " [38802.5, 38802.5, 38857.34375, 38857.34375],\n", + " [38785.0, 38785.0, 38829.921875, 38829.921875],\n", + " [38945.0, 38945.0, 38955.0, 38955.0],\n", + " [38935.0, 38935.0, 38950.0, 38950.0],\n", + " [38925.0, 38925.0, 38942.5, 38942.5],\n", + " [38985.0, 38985.0, 38995.0, 38995.0],\n", + " [38975.0, 38975.0, 38990.0, 38990.0],\n", + " [38965.0, 38965.0, 38982.5, 38982.5],\n", + " [39005.0, 39005.0, 39015.0, 39015.0],\n", + " [38973.75, 38973.75, 39010.0, 39010.0],\n", + " [38933.75, 38933.75, 38991.875, 38991.875],\n", + " [38807.4609375, 38807.4609375, 38962.8125, 38962.8125],\n", + " [38753.75, 38753.75, 38885.13671875, 38885.13671875],\n", + " [38722.5, 38722.5, 38819.443359375, 38819.443359375],\n", + " [38632.8125, 38632.8125, 38770.9716796875, 38770.9716796875],\n", + " [38535.78125, 38535.78125, 38701.89208984375, 38701.89208984375],\n", + " [38515.0, 38515.0, 38618.836669921875, 38618.836669921875],\n", + " [38505.0, 38505.0, 38566.91833496094, 38566.91833496094],\n", + " [38482.5, 38482.5, 38535.95916748047, 38535.95916748047],\n", + " [38465.0, 38465.0, 38509.229583740234, 38509.229583740234],\n", + " [38455.0, 38455.0, 38487.11479187012, 38487.11479187012],\n", + " [38426.25, 38426.25, 38471.05739593506, 38471.05739593506],\n", + " [38395.0, 38395.0, 38448.65369796753, 38448.65369796753],\n", + " [38351.875, 38351.875, 38421.826848983765, 38421.826848983765],\n", + " [38305.0, 38305.0, 38386.85092449188, 38386.85092449188],\n", + " [38295.0, 38295.0, 38345.92546224594, 38345.92546224594],\n", + " [38285.0, 38285.0, 38320.46273112297, 38320.46273112297],\n", + " [38063.33282470703,\n", + " 38063.33282470703,\n", + " 38302.731365561485,\n", + " 38302.731365561485],\n", + " [37062.684209272265,\n", + " 37062.684209272265,\n", + " 38183.03209513426,\n", + " 38183.03209513426],\n", + " [37015.0, 37015.0, 37622.85815220326, 37622.85815220326],\n", + " [36105.795612335205,\n", + " 36105.795612335205,\n", + " 37318.92907610163,\n", + " 37318.92907610163],\n", + " [35772.5, 35772.5, 36712.36234421842, 36712.36234421842],\n", + " [35686.5625, 35686.5625, 36242.43117210921, 36242.43117210921],\n", + " [35615.0, 35615.0, 35964.496836054605, 35964.496836054605],\n", + " [35605.0, 35605.0, 35789.7484180273, 35789.7484180273],\n", + " [35222.5426864624, 35222.5426864624, 35697.37420901365, 35697.37420901365],\n", + " [35143.75, 35143.75, 35459.95844773803, 35459.95844773803],\n", + " [35125.0, 35125.0, 35301.85422386901, 35301.85422386901],\n", + " [30406.519507548073,\n", + " 30406.519507548073,\n", + " 35213.42711193451,\n", + " 35213.42711193451],\n", + " [29615.0, 29615.0, 32809.97330974129, 32809.97330974129],\n", + " [29474.8046875, 29474.8046875, 31212.486654870645, 31212.486654870645],\n", + " [29191.0546875, 29191.0546875, 30343.645671185324, 30343.645671185324],\n", + " [24444.839301104235,\n", + " 24444.839301104235,\n", + " 29767.350179342662,\n", + " 29767.350179342662],\n", + " [3839.5491115941322,\n", + " 3839.5491115941322,\n", + " 27106.09474022345,\n", + " 27106.09474022345],\n", + " [91.5909181638827,\n", + " 91.5909181638827,\n", + " 15472.821925908791,\n", + " 15472.821925908791]],\n", + " 'ivl': ['3182',\n", + " '1090',\n", + " '367',\n", + " '179',\n", + " '1748',\n", + " '3292',\n", + " '710',\n", + " '709',\n", + " '1209',\n", + " '106',\n", + " '1121',\n", + " '2698',\n", + " '2700',\n", + " '20',\n", + " '21',\n", + " '1624',\n", + " '1625',\n", + " '2094',\n", + " '2277',\n", + " '1512',\n", + " '329',\n", + " '1771',\n", + " '450',\n", + " '2988',\n", + " '330',\n", + " '669',\n", + " '1145',\n", + " '1605',\n", + " '3435',\n", + " '331',\n", + " '2536',\n", + " '1092',\n", + " '2152',\n", + " '2844',\n", + " '2537',\n", + " '2538',\n", + " '579',\n", + " '2142',\n", + " '3559',\n", + " '1193',\n", + " '2499',\n", + " '3682',\n", + " '897',\n", + " '686',\n", + " '356',\n", + " '685',\n", + " '974',\n", + " '1792',\n", + " '249',\n", + " '797',\n", + " '660',\n", + " '796',\n", + " '348',\n", + " '1262',\n", + " '3090',\n", + " '3285',\n", + " '773',\n", + " '733',\n", + " '2453',\n", + " '26',\n", + " '39',\n", + " '1626',\n", + " '1819',\n", + " '1636',\n", + " '3454',\n", + " '1944',\n", + " '6',\n", + " '2646',\n", + " '3058',\n", + " '1170',\n", + " '487',\n", + " '569',\n", + " '816',\n", + " '257',\n", + " '2198',\n", + " '2850',\n", + " '2431',\n", + " '3347',\n", + " '896',\n", + " '214',\n", + " '215',\n", + " '654',\n", + " '652',\n", + " '648',\n", + " '650',\n", + " '649',\n", + " '653',\n", + " '2195',\n", + " '651',\n", + " '646',\n", + " '647',\n", + " '645',\n", + " '2193',\n", + " '2855',\n", + " '2857',\n", + " '3348',\n", + " '58',\n", + " '57',\n", + " '354',\n", + " '2853',\n", + " '213',\n", + " '2854',\n", + " '657',\n", + " '2199',\n", + " '2200',\n", + " '3560',\n", + " '260',\n", + " '261',\n", + " '259',\n", + " '258',\n", + " '655',\n", + " '2887',\n", + " '314',\n", + " '2683',\n", + " '670',\n", + " '2858',\n", + " '1421',\n", + " '3394',\n", + " '1631',\n", + " '862',\n", + " '1103',\n", + " '496',\n", + " '3631',\n", + " '3151',\n", + " '2870',\n", + " '2871',\n", + " '3149',\n", + " '2885',\n", + " '3354',\n", + " '1057',\n", + " '256',\n", + " '644',\n", + " '3653',\n", + " '147',\n", + " '255',\n", + " '1059',\n", + " '3395',\n", + " '488',\n", + " '643',\n", + " '3812',\n", + " '2868',\n", + " '1102',\n", + " '1617',\n", + " '3654',\n", + " '3279',\n", + " '2515',\n", + " '3635',\n", + " '3636',\n", + " '2498',\n", + " '2418',\n", + " '27',\n", + " '890',\n", + " '1351',\n", + " '3146',\n", + " '1633',\n", + " '1635',\n", + " '30',\n", + " '3145',\n", + " '29',\n", + " '2419',\n", + " '3852',\n", + " '1630',\n", + " '1171',\n", + " '3707',\n", + " '2220',\n", + " '3706',\n", + " '3790',\n", + " '3175',\n", + " '3393',\n", + " '1511',\n", + " '3396',\n", + " '505',\n", + " '25',\n", + " '1629',\n", + " '980',\n", + " '506',\n", + " '981',\n", + " '32',\n", + " '3397',\n", + " '829',\n", + " '1061',\n", + " '3516',\n", + " '3248',\n", + " '3567',\n", + " '3826',\n", + " '3318',\n", + " '3688',\n", + " '1144',\n", + " '1946',\n", + " '1772',\n", + " '2846',\n", + " '2325',\n", + " '2501',\n", + " '311',\n", + " '3827',\n", + " '3497',\n", + " '3747',\n", + " '1949',\n", + " '2763',\n", + " '2941',\n", + " '310',\n", + " '2706',\n", + " '2707',\n", + " '3432',\n", + " '668',\n", + " '993',\n", + " '3200',\n", + " '3568',\n", + " '3250',\n", + " '160',\n", + " '2817',\n", + " '3828',\n", + " '2502',\n", + " '2575',\n", + " '309',\n", + " '3452',\n", + " '1950',\n", + " '1154',\n", + " '1073',\n", + " '1152',\n", + " '3342',\n", + " '1155',\n", + " '3480',\n", + " '2684',\n", + " '2685',\n", + " '509',\n", + " '894',\n", + " '2894',\n", + " '2895',\n", + " '1031',\n", + " '1570',\n", + " '1198',\n", + " '3597',\n", + " '3477',\n", + " '3554',\n", + " '2565',\n", + " '3810',\n", + " '347',\n", + " '3762',\n", + " '1545',\n", + " '2042',\n", + " '1687',\n", + " '1982',\n", + " '1983',\n", + " '3702',\n", + " '1752',\n", + " '2652',\n", + " '1050',\n", + " '1329',\n", + " '1646',\n", + " '3215',\n", + " '3730',\n", + " '374',\n", + " '795',\n", + " '1062',\n", + " '2917',\n", + " '3514',\n", + " '3664',\n", + " '3663',\n", + " '3853',\n", + " '548',\n", + " '2413',\n", + " '3865',\n", + " '3344',\n", + " '3345',\n", + " '2004',\n", + " '2365',\n", + " '2363',\n", + " '2366',\n", + " '1563',\n", + " '1695',\n", + " '2179',\n", + " '1876',\n", + " '1402',\n", + " '2003',\n", + " '1125',\n", + " '1914',\n", + " '745',\n", + " '1331',\n", + " '429',\n", + " '1915',\n", + " '528',\n", + " '529',\n", + " '3496',\n", + " '3387',\n", + " '3315',\n", + " '3716',\n", + " '665',\n", + " '3786',\n", + " '3691',\n", + " '3814',\n", + " '3815',\n", + " '3690',\n", + " '3314',\n", + " '3419',\n", + " '3572',\n", + " '3816',\n", + " '3555',\n", + " '3713',\n", + " '1169',\n", + " '2615',\n", + " '3382',\n", + " '3381',\n", + " '2616',\n", + " '3715',\n", + " '777',\n", + " '2614',\n", + " '2840',\n", + " '3388',\n", + " '3644',\n", + " '2368',\n", + " '3214',\n", + " '3288',\n", + " '3645',\n", + " '3289',\n", + " '3643',\n", + " '2841',\n", + " '3576',\n", + " '3483',\n", + " '3714',\n", + " '2504',\n", + " '2930',\n", + " '2561',\n", + " '3364',\n", + " '2451',\n", + " '3657',\n", + " '3655',\n", + " '3656',\n", + " '3363',\n", + " '3521',\n", + " '3080',\n", + " '3219',\n", + " '2447',\n", + " '3081',\n", + " '3517',\n", + " '2984',\n", + " '3519',\n", + " '2448',\n", + " '2872',\n", + " '2308',\n", + " '656',\n", + " '2307',\n", + " '2449',\n", + " '1296',\n", + " '1295',\n", + " '925',\n", + " '1293',\n", + " '1294',\n", + " '1689',\n", + " '3461',\n", + " '16',\n", + " '1265',\n", + " '1668',\n", + " '1669',\n", + " '2471',\n", + " '3099',\n", + " '1342',\n", + " '2726',\n", + " '537',\n", + " '3839',\n", + " '3840',\n", + " '1264',\n", + " '2204',\n", + " '2559',\n", + " '2043',\n", + " '2382',\n", + " '1750',\n", + " '2100',\n", + " '1776',\n", + " '2205',\n", + " '2472',\n", + " '2558',\n", + " '2897',\n", + " '3102',\n", + " '3104',\n", + " '3106',\n", + " '243',\n", + " '762',\n", + " '824',\n", + " '185',\n", + " '1429',\n", + " '271',\n", + " '1430',\n", + " '1720',\n", + " '1721',\n", + " '538',\n", + " '1197',\n", + " '1006',\n", + " '28',\n", + " '135',\n", + " '624',\n", + " '677',\n", + " '15',\n", + " '1007',\n", + " '136',\n", + " '757',\n", + " '313',\n", + " '1008',\n", + " '2045',\n", + " '204',\n", + " '1977',\n", + " '124',\n", + " '353',\n", + " '451',\n", + " '2434',\n", + " '2823',\n", + " '3611',\n", + " '788',\n", + " '251',\n", + " '253',\n", + " '2238',\n", + " '2237',\n", + " '2239',\n", + " '1083',\n", + " '14',\n", + " '2694',\n", + " '2279',\n", + " '2695',\n", + " '3818',\n", + " '1361',\n", + " '1362',\n", + " '3820',\n", + " '2944',\n", + " '3573',\n", + " '3600',\n", + " '2666',\n", + " '2912',\n", + " '2247',\n", + " '2427',\n", + " '2976',\n", + " '2975',\n", + " '3842',\n", + " '3247',\n", + " '3512',\n", + " '2745',\n", + " '3569',\n", + " '2192',\n", + " '2621',\n", + " '2428',\n", + " '2619',\n", + " '2744',\n", + " '2977',\n", + " '2426',\n", + " '3599',\n", + " '3843',\n", + " '2429',\n", + " '2623',\n", + " '3147',\n", + " '2278',\n", + " '3733',\n", + " '3821',\n", + " '3823',\n", + " '2318',\n", + " '1022',\n", + " '3822',\n", + " '1575',\n", + " '3272',\n", + " '2864',\n", + " '2748',\n", + " '3837',\n", + " '2750',\n", + " '3057',\n", + " '2349',\n", + " '2457',\n", + " '2888',\n", + " '1130',\n", + " '3056',\n", + " '1576',\n", + " '1577',\n", + " '1194',\n", + " '3055',\n", + " '2091',\n", + " '2612',\n", + " '1841',\n", + " '791',\n", + " '1842',\n", + " '1844',\n", + " '2090',\n", + " '2348',\n", + " '1843',\n", + " '1845',\n", + " '1020',\n", + " '1850',\n", + " '154',\n", + " '792',\n", + " '152',\n", + " '1131',\n", + " '2747',\n", + " '3488',\n", + " '3858',\n", + " '267',\n", + " '359',\n", + " '266',\n", + " '360',\n", + " '2730',\n", + " '1419',\n", + " '411',\n", + " '785',\n", + " '96',\n", + " '1420',\n", + " '2317',\n", + " '269',\n", + " '2959',\n", + " '588',\n", + " '1658',\n", + " '2636',\n", + " '3201',\n", + " '3052',\n", + " '3359',\n", + " '3595',\n", + " '2970',\n", + " '3446',\n", + " '3500',\n", + " '141',\n", + " '265',\n", + " '1034',\n", + " '1380',\n", + " '1528',\n", + " '808',\n", + " '1427',\n", + " '1426',\n", + " '1424',\n", + " '1425',\n", + " '1769',\n", + " '2782',\n", + " '2526',\n", + " '2662',\n", + " '2244',\n", + " '2151',\n", + " '2352',\n", + " '2439',\n", + " '2661',\n", + " '2354',\n", + " '2641',\n", + " '1526',\n", + " '1529',\n", + " '2525',\n", + " '1064',\n", + " '2298',\n", + " '1865',\n", + " '1996',\n", + " '2353',\n", + " '2132',\n", + " '2555',\n", + " '774',\n", + " '1423',\n", + " '1315',\n", + " '1768',\n", + " '1997',\n", + " '661',\n", + " '1316',\n", + " '584',\n", + " '142',\n", + " '585',\n", + " '2133',\n", + " '1379',\n", + " '707',\n", + " '986',\n", + " '1033',\n", + " '1770',\n", + " '793',\n", + " '985',\n", + " '2245',\n", + " '1868',\n", + " '3196',\n", + " '3053',\n", + " '2994',\n", + " '3166',\n", + " '3781',\n", + " '3693',\n", + " '2892',\n", + " '3501',\n", + " '82',\n", + " '1867',\n", + " '3088',\n", + " '2968',\n", + " '2969',\n", + " '1666',\n", + " '2148',\n", + " '2146',\n", + " '2147',\n", + " '131',\n", + " '132',\n", + " '627',\n", + " '628',\n", + " '1298',\n", + " '1299',\n", + " '1485',\n", + " '1486',\n", + " '1300',\n", + " '1301',\n", + " '36',\n", + " '37',\n", + " '1484',\n", + " '1665',\n", + " '38',\n", + " '1777',\n", + " '780',\n", + " '302',\n", + " '303',\n", + " '821',\n", + " '558',\n", + " '3796',\n", + " '2175',\n", + " '1191',\n", + " '1189',\n", + " '1187',\n", + " '1190',\n", + " '2627',\n", + " '2628',\n", + " '467',\n", + " '218',\n", + " '798',\n", + " '3548',\n", + " '3700',\n", + " '3278',\n", + " '3547',\n", + " '3699',\n", + " '3694',\n", + " '3695',\n", + " '3698',\n", + " '3546',\n", + " '3696',\n", + " '2286',\n", + " '3236',\n", + " '2714',\n", + " '2034',\n", + " '2715',\n", + " '2713',\n", + " '2716',\n", + " '3213',\n", + " '2955',\n", + " '2956',\n", + " '2038',\n", + " '2037',\n", + " '3212',\n", + " '3795',\n", + " '2029',\n", + " '2712',\n", + " '1659',\n", + " '1660',\n", + " '1032',\n", + " '2689',\n", + " '3361',\n", + " '1813',\n", + " '3362',\n", + " '2098',\n", + " '1223',\n", + " '3596',\n", + " '1810',\n", + " '1222',\n", + " '1661',\n", + " '2097',\n", + " '1811',\n", + " '2096',\n", + " '1881',\n", + " '3076',\n", + " '3557',\n", + " '519',\n", + " '3672',\n", + " '3065',\n", + " '1029',\n", + " '3856',\n", + " '2000',\n", + " '3536',\n", + " '3077',\n", + " '3332',\n", + " '3264',\n", + " '3262',\n", + " '3426',\n", + " '2355',\n", + " '3425',\n", + " '3333',\n", + " '1229',\n", + " '1713',\n", + " '2159',\n", + " '1711',\n", + " '1714',\n", + " '2886',\n", + " '2160',\n", + " '2161',\n", + " '3144',\n", + " '2384',\n", + " '1481',\n", + " '1086',\n", + " '3265',\n", + " '2518',\n", + " '2787',\n", + " '1712',\n", + " '1230',\n", + " '3179',\n", + " '1228',\n", + " '2838',\n", + " '2963',\n", + " '2960',\n", + " '3470',\n", + " '3598',\n", + " '1599',\n", + " '2961',\n", + " '3261',\n", + " '3844',\n", + " '2655',\n", + " '2962',\n", + " '937',\n", + " '1569',\n", + " '2760',\n", + " '2936',\n", + " '518',\n", + " '3209',\n", + " '3208',\n", + " '3210',\n", + " '3207',\n", + " '3211',\n", + " '3274',\n", + " '3116',\n", + " '3275',\n", + " '482',\n", + " '340',\n", + " '2438',\n", + " '559',\n", + " '751',\n", + " '51',\n", + " '52',\n", + " '352',\n", + " '1670',\n", + " '1521',\n", + " '3119',\n", + " '426',\n", + " '1765',\n", + " '2338',\n", + " '3464',\n", + " '2443',\n", + " '2784',\n", + " '469',\n", + " '1479',\n", + " '1371',\n", + " '1035',\n", + " '1478',\n", + " '3263',\n", + " '3509',\n", + " '1736',\n", + " '2982',\n", + " '2983',\n", + " '1703',\n", + " '1781',\n", + " '923',\n", + " '924',\n", + " '2633',\n", + " '1407',\n", + " '1408',\n", + " '1606',\n", + " '1900',\n", + " '1106',\n", + " '1107',\n", + " '1105',\n", + " '1406',\n", + " '1000',\n", + " '1779',\n", + " '1704',\n", + " '1901',\n", + " '1899',\n", + " '1902',\n", + " '2383',\n", + " '3323',\n", + " '3719',\n", + " '3544',\n", + " '3540',\n", + " '3543',\n", + " '2599',\n", + " '2756',\n", + " '3542',\n", + " '2040',\n", + " '3066',\n", + " '3541',\n", + " '1823',\n", + " '1482',\n", + " '1651',\n", + " '1652',\n", + " '2311',\n", + " '2460',\n", + " '3836',\n", + " '2123',\n", + " '2785',\n", + " '3760',\n", + " '2786',\n", + " '3406',\n", + " '2533',\n", + " '1738',\n", + " '2632',\n", + " '1907',\n", + " '2061',\n", + " '1822',\n", + " '2236',\n", + " '1908',\n", + " '2264',\n", + " '1737',\n", + " '1593',\n", + " '1735',\n", + " '1404',\n", + " '1261',\n", + " '1594',\n", + " '3739',\n", + " '3787',\n", + " '3863',\n", + " '840',\n", + " '3537',\n", + " '1260',\n", + " '1405',\n", + " '3343',\n", + " '2060',\n", + " '3661',\n", + " '2631',\n", + " '3593',\n", + " '3294',\n", + " '3662',\n", + " '3030',\n", + " '3031',\n", + " '2690',\n", + " '3538',\n", + " '3738',\n", + " '3216',\n", + " '3732',\n", + " '3770',\n", + " '834',\n", + " '504',\n", + " '507',\n", + " '295',\n", + " '392',\n", + " '3764',\n", + " '468',\n", + " '162',\n", + " '332',\n", + " '42',\n", + " '192',\n", + " '95',\n", + " '127',\n", + " '193',\n", + " '508',\n", + " '578',\n", + " '2797',\n", + " '1701',\n", + " '2585',\n", + " '870',\n", + " '446',\n", + " '736',\n", + " '3129',\n", + " '869',\n", + " '3180',\n", + " '3319',\n", + " '3763',\n", + " '3038',\n", + " '737',\n", + " '3510',\n", + " '445',\n", + " '299',\n", + " '408',\n", + " '407',\n", + " '2798',\n", + " '3130',\n", + " '2980',\n", + " '3078',\n", + " '1586',\n", + " '1767',\n", + " '503',\n", + " '481',\n", + " '574',\n", + " '631',\n", + " '2981',\n", + " '576',\n", + " '577',\n", + " '575',\n", + " '339',\n", + " '573',\n", + " '3220',\n", + " '738',\n", + " '3765',\n", + " '1067',\n", + " '1762',\n", + " '1763',\n", + " '1766',\n", + " '296',\n", + " '502',\n", + " '1236',\n", + " '1237',\n", + " '999',\n", + " '1403',\n", + " '1309',\n", + " '228',\n", + " '231',\n", + " '370',\n", + " '517',\n", + " '2337',\n", + " '2711',\n", + " '2303',\n", + " '3463',\n", + " '3466',\n", + " '217',\n", + " '2679',\n", + " '3439',\n", + " '755',\n", + " '603',\n", + " '1508',\n", + " '3526',\n", + " '2362',\n", + " '2680',\n", + " '3438',\n", + " '3442',\n", + " '2671',\n", + " '3440',\n", + " '3583',\n", + " '3245',\n", + " '3746',\n", + " '932',\n", + " '2450',\n", + " '3239',\n", + " '3072',\n", + " '3671',\n", + " '3807',\n", + " '3806',\n", + " '3808',\n", + " '3310',\n", + " '3311',\n", + " '3472',\n", + " '3034',\n", + " '3035',\n", + " '3036',\n", + " '1352',\n", + " '3803',\n", + " '3804',\n", + " '2978',\n", + " '3143',\n", + " '3142',\n", + " '2890',\n", + " '3135',\n", + " '3136',\n", + " '3131',\n", + " '3141',\n", + " '3137',\n", + " '3133',\n", + " '3140',\n", + " '3139',\n", + " '3132',\n", + " '3134',\n", + " '2578',\n", + " '2446',\n", + " '2524',\n", + " '2601',\n", + " '2602',\n", + " '2331',\n", + " '2398',\n", + " '2445',\n", + " '2243',\n", + " '2122',\n", + " '2241',\n", + " '1973',\n", + " '2332',\n", + " '2330',\n", + " '3805',\n", + " '220',\n", + " '1503',\n", + " '1219',\n", + " '2577',\n", + " '3138',\n", + " '2176',\n", + " '1348',\n", + " '1640',\n", + " '1063',\n", + " '1634',\n", + " '1639',\n", + " '1807',\n", + " '1602',\n", + " '1632',\n", + " '2727',\n", + " '2044',\n", + " '2891',\n", + " '936',\n", + " '2399',\n", + " '2334',\n", + " '1760',\n", + " '2121',\n", + " '634',\n", + " '933',\n", + " '87',\n", + " '511',\n", + " '369',\n", + " '368',\n", + " '602',\n", + " '9',\n", + " '8',\n", + " '466',\n", + " '90',\n", + " '165',\n", + " '10',\n", + " '91',\n", + " '88',\n", + " '89',\n", + " '273',\n", + " '365',\n", + " '333',\n", + " '633',\n", + " '934',\n", + " '366',\n", + " '31',\n", + " '134',\n", + " '245',\n", + " '137',\n", + " '225',\n", + " '1014',\n", + " '226',\n", + " '364',\n", + " '632',\n", + " '227',\n", + " '1603',\n", + " '224',\n", + " '229',\n", + " '1066',\n", + " '363',\n", + " '1604',\n", + " '2914',\n", + " '1933',\n", + " '2012',\n", + " '1350',\n", + " '1773',\n", + " '47',\n", + " '1582',\n", + " '904',\n", + " '906',\n", + " '1507',\n", + " '2617',\n", + " '716',\n", + " '717',\n", + " '604',\n", + " '1774',\n", + " '2441',\n", + " '2505',\n", + " '1349',\n", + " '991',\n", + " '1825',\n", + " '1826',\n", + " '987',\n", + " '988',\n", + " '1140',\n", + " '1504',\n", + " '905',\n", + " '1506',\n", + " '1638',\n", + " '1987',\n", + " '1989',\n", + " '1505',\n", + " '1985',\n", + " '1986',\n", + " '1988',\n", + " '1509',\n", + " '1984',\n", + " '989',\n", + " '990',\n", + " '1217',\n", + " '45',\n", + " '46',\n", + " '2172',\n", + " '2173',\n", + " '2581',\n", + " '1794',\n", + " '2021',\n", + " '2579',\n", + " '1849',\n", + " '2580',\n", + " '2582',\n", + " '2576',\n", + " '2997',\n", + " '802',\n", + " '882',\n", + " '878',\n", + " '879',\n", + " '1847',\n", + " '1848',\n", + " '1266',\n", + " '1398',\n", + " '1267',\n", + " '1399',\n", + " '2233',\n", + " '1357',\n", + " '1359',\n", + " '1360',\n", + " '1358',\n", + " '1183',\n", + " '2022',\n", + " '3117',\n", + " '3120',\n", + " '3118',\n", + " '2764',\n", + " '2928',\n", + " '3441',\n", + " '2444',\n", + " '2681',\n", + " '2442',\n", + " '3008',\n", + " '448',\n", + " '1515',\n", + " '320',\n", + " '323',\n", + " '449',\n", + " '2299',\n", + " '2167',\n", + " '3006',\n", + " '1517',\n", + " '3465',\n", + " '3792',\n", + " '1745',\n", + " '2998',\n", + " '3491',\n", + " '3000',\n", + " '3005',\n", + " '2999',\n", + " '3001',\n", + " '3002',\n", + " '3003',\n", + " '3007',\n", + " '3171',\n", + " '1519',\n", + " '957',\n", + " '1079',\n", + " '1078',\n", + " '955',\n", + " '1081',\n", + " '1672',\n", + " '3170',\n", + " '1082',\n", + " '3169',\n", + " '1522',\n", + " '1898',\n", + " '2168',\n", + " '2171',\n", + " '2761',\n", + " '3004',\n", + " '93',\n", + " '321',\n", + " '515',\n", + " '94',\n", + " '322',\n", + " '688',\n", + " '883',\n", + " '2400',\n", + " '803',\n", + " '202',\n", + " '1400',\n", + " '1401',\n", + " '373',\n", + " '2030',\n", + " '2027',\n", + " '2032',\n", + " '2035',\n", + " '2023',\n", + " '2025',\n", + " '2028',\n", + " '2031',\n", + " '2033',\n", + " '2026',\n", + " '2024',\n", + " '2036',\n", + " '2440',\n", + " '2626',\n", + " '2110',\n", + " '2574',\n", + " '2770',\n", + " '3676',\n", + " '2202',\n", + " '2254',\n", + " '2479',\n", + " '270',\n", + " '2569',\n", + " '3589',\n", + " '1143',\n", + " '858',\n", + " '381',\n", + " '2420',\n", + " '566',\n", + " '1961',\n", + " '465',\n", + " '1852',\n", + " '3845',\n", + " '789',\n", + " '1046',\n", + " '830',\n", + " '1292',\n", + " '831',\n", + " '1410',\n", + " '1962',\n", + " '3829',\n", + " '2114',\n", + " '2425',\n", + " '3233',\n", + " '1418',\n", + " '1662',\n", + " '2221',\n", + " '2507',\n", + " '623',\n", + " '1204',\n", + " '3697',\n", + " '3612',\n", + " '1374',\n", + " '2',\n", + " '1343',\n", + " '3639',\n", + " '1051',\n", + " '3390',\n", + " '2089',\n", + " '3389',\n", + " '1487',\n", + " '2069',\n", + " '2508',\n", + " '1501',\n", + " '1864',\n", + " '121',\n", + " '3811',\n", + " '3295',\n", + " '2165',\n", + " '2128',\n", + " '3720',\n", + " '1366',\n", + " '1663',\n", + " '1469',\n", + " '1871',\n", + " '1936',\n", + " '2487',\n", + " '3341',\n", + " '1591',\n", + " '1956',\n", + " '155',\n", + " '778',\n", + " '913',\n", + " '1890',\n", + " '1699',\n", + " '2877',\n", + " '1159',\n", + " '2557',\n", + " '1060',\n", + " '3489',\n", + " '1037',\n", + " '3752',\n", + " '304',\n", + " '3751',\n", + " '3404',\n", + " '40',\n", + " '3338',\n", + " '428',\n", + " '430',\n", + " '1883',\n", + " '1628',\n", + " '1276',\n", + " '1806',\n", + " '2423',\n", + " '1483',\n", + " '1998',\n", + " '1326',\n", + " '2691',\n", + " '804',\n", + " '2056',\n", + " '427',\n", + " '1705',\n", + " '3545',\n", + " '3817',\n", + " '740',\n", + " '3092',\n", + " '2884',\n", + " '3148',\n", + " '2099',\n", + " '2120',\n", + " '2903',\n", + " '3723',\n", + " '3199',\n", + " '3590',\n", + " '2162',\n", + " '2305',\n", + " '2659',\n", + " '1967',\n", + " '3756',\n", + " '1176',\n", + " '312',\n", + " '2506',\n", + " '376',\n", + " '500',\n", + " '722',\n", + " '2101',\n", + " '282',\n", + " '1246',\n", + " '1378',\n", + " '892',\n", + " '1377',\n", + " '2921',\n", + " '3855',\n", + " '2675',\n", + " '2935',\n", + " '2178',\n", + " '1363',\n", + " '1730',\n", + " '2385',\n", + " '2390',\n", + " '2186',\n", + " '1256',\n", + " '2106',\n", + " '1257',\n", + " '2164',\n", + " '2503',\n", + " '2539',\n", + " '3495',\n", + " '104',\n", + " '1931',\n", + " '1678',\n", + " '1951',\n", + " '3266',\n", + " '1417',\n", + " '3749',\n", + " '2916',\n", + " '212',\n", + " '19',\n", + " '211',\n", + " '1978',\n", + " '606',\n", + " '463',\n", + " '2458',\n", + " '3268',\n", + " '2873',\n", + " '1887',\n", + " '2227',\n", + " '1556',\n", + " '1214',\n", + " '1544',\n", + " '1888',\n", + " '1808',\n", + " '1889',\n", + " '2228',\n", + " '2408',\n", + " '2242',\n", + " '1755',\n", + " '1976',\n", + " '59',\n", + " '3423',\n", + " '3614',\n", + " '3011',\n", + " '3082',\n", + " '1069',\n", + " '3850',\n", + " '547',\n", + " '3453',\n", + " '3621',\n", + " '1550',\n", + " '1869',\n", + " '812',\n", + " '2866',\n", + " '958',\n", + " '1027',\n", + " '435',\n", + " '3780',\n", + " '3649',\n", + " '835',\n", + " '3033',\n", + " '2335',\n", + " '3857',\n", + " '3485',\n", + " '3809',\n", + " '60',\n", + " '3074',\n", + " '100',\n", + " '597',\n", + " '1365',\n", + " '1490',\n", + " '2734',\n", + " '2867',\n", + " '1141',\n", + " '1905',\n", + " '2347',\n", + " '1613',\n", + " '2312',\n", + " '726',\n", + " '2452',\n", + " '262',\n", + " '2129',\n", + " '3578',\n", + " '3778',\n", + " '1999',\n", + " '2150',\n", + " '3607',\n", + " '3025',\n", + " '1339',\n", + " '3608',\n", + " '706',\n", + " '1442',\n", + " '550',\n", + " '1608',\n", + " '2206',\n", + " '3494',\n", + " '393',\n", + " '1443',\n", + " '554',\n", + " '764',\n", + " '690',\n", + " '281',\n", + " '459',\n", + " '689',\n", + " '556',\n", + " '171',\n", + " '553',\n", + " '691',\n", + " '1857',\n", + " '405',\n", + " '551',\n", + " '2568',\n", + " '2411',\n", + " '483',\n", + " '941',\n", + " '2085',\n", + " '978',\n", + " '33',\n", + " '406',\n", + " '1543',\n", + " '1122',\n", + " '3625',\n", + " '3626',\n", + " '947',\n", + " '1258',\n", + " '1561',\n", + " '3277',\n", + " '1259',\n", + " '3019',\n", + " '1123',\n", + " '2781',\n", + " '3848',\n", + " '3846',\n", + " '3847',\n", + " '2284',\n", + " '3779',\n", + " '1231',\n", + " '1513',\n", + " '620',\n", + " '1317',\n", + " '1318',\n", + " '1734',\n", + " '2163',\n", + " '3685',\n", + " '619',\n", + " '1894',\n", + " '1531',\n", + " '2908',\n", + " '758',\n", + " '1926',\n", + " '3798',\n", + " '1696',\n", + " '1432',\n", + " '698',\n", + " '1895',\n", + " '3069',\n", + " '1532',\n", + " '1992',\n", + " '3070',\n", + " '3799',\n", + " '1619',\n", + " '761',\n", + " '1885',\n", + " '1271',\n", + " '759',\n", + " '1431',\n", + " '1533',\n", + " '3383',\n", + " '1270',\n", + " '895',\n", + " '1085',\n", + " '1234',\n", + " '1030',\n", + " '1656',\n", + " '713',\n", + " '3527',\n", + " '621',\n", + " '2852',\n", + " '161',\n", + " '1416',\n", + " '401',\n", + " '1759',\n", + " '1011',\n", + " '1993',\n", + " '1028',\n", + " '607',\n", + " '746',\n", + " '977',\n", + " '2309',\n", + " '2124',\n", + " '2006',\n", + " '2005',\n", + " '2455',\n", + " '70',\n", + " '334',\n", + " '2049',\n", + " '5',\n", + " '1893',\n", + " '1551',\n", + " '2454',\n", + " '2954',\n", + " '3712',\n", + " '2063',\n", + " '2664',\n", + " '2792',\n", + " '2527',\n", + " '2629',\n", + " '3184',\n", + " '3270',\n", + " '2510',\n", + " '2603',\n", + " '3740',\n", + " '1886',\n", + " '2459',\n", + " '2369',\n", + " '2654',\n", + " '1136',\n", + " '2421',\n", + " '1038',\n", + " '3469',\n", + " '1052',\n", + " '1238',\n", + " '388',\n", + " '744',\n", + " '3096',\n", + " '1041',\n", + " '1979',\n", + " '2495',\n", + " '1039',\n", + " '1040',\n", + " '2219',\n", + " '3824',\n", + " '1383',\n", + " '398',\n", + " '781',\n", + " '2521',\n", + " '782',\n", + " '187',\n", + " '297',\n", + " '263',\n", + " '2923',\n", + " '3575',\n", + " '1557',\n", + " '1718',\n", + " '1863',\n", + " '2512',\n", + " '1729',\n", + " '599',\n", + " '926',\n", + " '1877',\n", + " '485',\n", + " '927',\n", + " '1502',\n", + " '394',\n", + " '1445',\n", + " '395',\n", + " '2389',\n", + " '1715',\n", + " '1716',\n", + " '328',\n", + " '1558',\n", + " '605',\n", + " '1444',\n", + " '776',\n", + " '1717',\n", + " '2924',\n", + " '327',\n", + " '3451',\n", + " '2514',\n", + " '2755',\n", + " '2708',\n", + " '1878',\n", + " '2513',\n", + " '976',\n", + " '1254',\n", + " '973',\n", + " '676',\n", + " '891',\n", + " '1094',\n", + " '841',\n", + " '1095',\n", + " '564',\n", + " '565',\n", + " '1601',\n", + " '3658',\n", + " '1372',\n", + " '1945',\n", + " '1921',\n", + " '456',\n", + " '856',\n", + " '743',\n", + " '1306',\n", + " '1746',\n", + " '1824',\n", + " '3014',\n", + " '3259',\n", + " '1337',\n", + " '2701',\n", + " '3015',\n", + " '2788',\n", + " '3125',\n", + " '3493',\n", + " '3377',\n", + " '3642',\n", + " '1354',\n", + " '823',\n", + " '3093',\n", + " '1616',\n", + " '3618',\n", + " '3085',\n", + " '3677',\n", + " '3115',\n", + " '1903',\n", + " '3232',\n", + " '3386',\n", + " '236',\n", + " '815',\n", + " '3767',\n", + " '1798',\n", + " '3414',\n", + " '2943',\n", + " '3176',\n", + " '326',\n", + " '1080',\n", + " '3692',\n", + " '2437',\n", + " '2407',\n", + " '2656',\n", + " '1314',\n", + " '3227',\n", + " '739',\n", + " '3226',\n", + " '3455',\n", + " '3413',\n", + " '3854',\n", + " '3415',\n", + " '3416',\n", + " '3530',\n", + " '3108',\n", + " '3225',\n", + " '3228',\n", + " '772',\n", + " '833',\n", + " '2964',\n", + " '241',\n", + " '1596',\n", + " '2196',\n", + " '145',\n", + " '3579',\n", + " '73',\n", + " '421',\n", + " '1904',\n", + " '3107',\n", + " '2372',\n", + " '2933',\n", + " '305',\n", + " '3744',\n", + " '3774',\n", + " '2795',\n", + " '2064',\n", + " '1313',\n", + " '3535',\n", + " '3717',\n", + " '942',\n", + " '1797',\n", + " '2702',\n", + " '832',\n", + " '2552',\n", + " '2554',\n", + " '2710',\n", + " '2250',\n", + " '2461',\n", + " '922',\n", + " '2757',\n", + " '3620',\n", + " '3711',\n", + " '2807',\n", + " '2806',\n", + " '1268',\n", + " '2881',\n", + " '1470',\n", + " '3531',\n", + " '2805',\n", + " '3391',\n", + " '3617',\n", + " '3615',\n", + " '3616',\n", + " '2553',\n", + " '2925',\n", + " '2709',\n", + " '1097',\n", + " '1809',\n", + " '3533',\n", + " '3775',\n", + " '1226',\n", + " '3156',\n", + " '3490',\n", + " '3534',\n", + " '422',\n", + " '3619',\n", + " '3249',\n", + " '3291',\n", + " '3755',\n", + " '3449',\n", + " '3158',\n", + " '2589',\n", + " '172',\n", + " '3424',\n", + " '2678',\n", + " '809',\n", + " '2966',\n", + " '1104',\n", + " '2422',\n", + " '3273',\n", + " '2799',\n", + " '3532',\n", + " '484',\n", + " '3866',\n", + " '615',\n", + " '953',\n", + " '3743',\n", + " '35',\n", + " '613',\n", + " '4',\n", + " '3525',\n", + " '99',\n", + " '1297',\n", + " '837',\n", + " '337',\n", + " '2251',\n", + " '151',\n", + " '1373',\n", + " '1240',\n", + " '176',\n", + " '177',\n", + " '728',\n", + " '174',\n", + " '1161',\n", + " '1024',\n", + " '592',\n", + " '813',\n", + " '2189',\n", + " '771',\n", + " '74',\n", + " '3603',\n", + " '719',\n", + " '721',\n", + " '417',\n", + " '71',\n", + " '544',\n", + " '917',\n", + " '1311',\n", + " '3327',\n", + " '2906',\n", + " '3300',\n", + " '2214',\n", + " '3741',\n", + " '2067',\n", + " '3195',\n", + " '2066',\n", + " '1909',\n", + " '1952',\n", + " '2772',\n", + " '2995',\n", + " '1312',\n", + " '1310',\n", + " '1411',\n", + " '1178',\n", + " '188',\n", + " '1488',\n", + " '814',\n", + " '3024',\n", + " '522',\n", + " '2065',\n", + " '2273',\n", + " '2879',\n", + " '521',\n", + " '2301',\n", + " '2149',\n", + " '1023',\n", + " '523',\n", + " '810',\n", + " '639',\n", + " '23',\n", + " '201',\n", + " '718',\n", + " '423',\n", + " '720',\n", + " '921',\n", + " '684',\n", + " '424',\n", + " '681',\n", + " '682',\n", + " '308',\n", + " '683',\n", + " '884',\n", + " '425',\n", + " '1054',\n", + " '1177',\n", + " '454',\n", + " '1385',\n", + " '2391',\n", + " '3772',\n", + " '2630',\n", + " '3773',\n", + " '3835',\n", + " '2790',\n", + " '2789',\n", + " '3246',\n", + " '512',\n", + " '362',\n", + " '56',\n", + " '361',\n", + " '472',\n", + " '470',\n", + " '471',\n", + " '3782',\n", + " '1607',\n", + " '2562',\n", + " '768',\n", + " '543',\n", + " '2593',\n", + " '2456',\n", + " '2474',\n", + " '2723',\n", + " '120',\n", + " '1304',\n", + " '2059',\n", + " '591',\n", + " '1303',\n", + " '2153',\n", + " '2018',\n", + " '2058',\n", + " '1072',\n", + " '1860',\n", + " '34',\n", + " '601',\n", + " '1302',\n", + " '1692',\n", + " '1210',\n", + " '1858',\n", + " '1413',\n", + " '1414',\n", + " '84',\n", + " '1859',\n", + " '399',\n", + " '589',\n", + " '287',\n", + " '2752',\n", + " '196',\n", + " '1119',\n", + " '384',\n", + " '383',\n", + " '1920',\n", + " '2249',\n", + " '1120',\n", + " '1415',\n", + " '1305',\n", + " '1',\n", + " '622',\n", + " '1919',\n", + " '1817',\n", + " '714',\n", + " '712',\n", + " '970',\n", + " '787',\n", + " '341',\n", + " '477',\n", + " '1058',\n", + " '1655',\n", + " '410',\n", + " '1815',\n", + " '701',\n", + " '1285',\n", + " '400',\n", + " '1620',\n", + " '700',\n", + " '552',\n", + " '555',\n", + " '699',\n", + " '857',\n", + " '108',\n", + " '859',\n", + " '1132',\n", + " '1816',\n", + " '1571',\n", + " '1965',\n", + " '1572',\n", + " '3726',\n", + " '3783',\n", + " '1892',\n", + " '2971',\n", + " '1673',\n", + " '2972',\n", + " '1376',\n", + " '1722',\n", + " '1925',\n", + " '2409',\n", + " '1462',\n", + " '1654',\n", + " '2883',\n", + " '1751',\n", + " '1475',\n", + " '1872',\n", + " '3040',\n", + " '1065',\n", + " '2904',\n", + " '2430',\n", + " '3384',\n", + " '2875',\n", + " '3336',\n", + " '2766',\n", + " '3150',\n", + " '3186',\n", + " '3474',\n", + " '801',\n", + " '827',\n", + " '289',\n", + " '290',\n", + " '696',\n", + " '2833',\n", + " '3112',\n", + " '2002',\n", + " '1854',\n", + " '1917',\n", + " '1916',\n", + " '2310',\n", + " '2216',\n", + " '2676',\n", + " '2830',\n", + " '2218',\n", + " '2831',\n", + " '1724',\n", + " '2217',\n", + " '2677',\n", + " '3750',\n", + " '667',\n", + " '839',\n", + " '2113',\n", + " '191',\n", + " '195',\n", + " '666',\n", + " '2733',\n", + " '292',\n", + " '415',\n", + " '2111',\n", + " '2104',\n", + " '272',\n", + " '495',\n", + " '44',\n", + " '587',\n", + " '2112',\n", + " '3061',\n", + " '2937',\n", + " '697',\n", + " '1356',\n", + " '1235',\n", + " '928',\n", + " '1375',\n", + " '1679',\n", + " '158',\n", + " '1552',\n", + " '221',\n", + " '156',\n", + " '490',\n", + " '635',\n", + " '2530',\n", + " '318',\n", + " '3458',\n", + " '2052',\n", + " '2345',\n", + " '3223',\n", + " '180',\n", + " '968',\n", + " '1880',\n", + " '2531',\n", + " '1138',\n", + " '157',\n", + " '1896',\n", + " '754',\n", + " '1546',\n", + " '2532',\n", + " '1175',\n", + " '2105',\n", + " '741',\n", + " '1433',\n", + " '1096',\n", + " '1391',\n", + " '2109',\n", + " '1139',\n", + " '2367',\n", + " '581',\n", + " '969',\n", + " '966',\n", + " '967',\n", + " '3255',\n", + " '351',\n", + " '86',\n", + " '199',\n", + " '414',\n", + " '965',\n", + " '1162',\n", + " '2115',\n", + " '2836',\n", + " '2731',\n", + " '3511',\n", + " '389',\n", + " '1137',\n", + " '2497',\n", + " '2732',\n", + " '2910',\n", + " '2834',\n", + " '3251',\n", + " '1553',\n", + " '294',\n", + " '1948',\n", + " '1251',\n", + " '1496',\n", + " '3376',\n", + " '1215',\n", + " '2835',\n", + " '3669',\n", + " '533',\n", + " '711',\n", + " '2207',\n", + " '1071',\n", + " '2361',\n", + " '3459',\n", + " '3253',\n", + " '1592',\n", + " '1820',\n", + " '1747',\n", + " '1749',\n", + " '3371',\n", + " '2989',\n", + " '3373',\n", + " '1549',\n", + " '2597',\n", + " '1252',\n", + " '1047',\n", + " '2051',\n", + " '2103',\n", + " '2183',\n", + " '1554',\n", + " '2102',\n", + " '2793',\n", + " '2320',\n", + " '767',\n", + " '846',\n", + " '0',\n", + " '608',\n", + " '637',\n", + " '956',\n", + " '133',\n", + " '625',\n", + " '687',\n", + " '580',\n", + " '63',\n", + " '48',\n", + " '183',\n", + " '22',\n", + " '345',\n", + " '286',\n", + " '200',\n", + " '150',\n", + " '439',\n", + " '1307',\n", + " '92',\n", + " '342',\n", + " '626',\n", + " '438',\n", + " '598',\n", + " '531',\n", + " '708',\n", + " '2290',\n", + " '2938',\n", + " '3668',\n", + " '3665',\n", + " '2704',\n", + " '3670',\n", + " '769',\n", + " '3613',\n", + " '1173',\n", + " '1761',\n", + " '2300',\n", + " '748',\n", + " '527',\n", + " '609',\n", + " '1498',\n", + " '1497',\n", + " '3234',\n", + " '3235',\n", + " '418',\n", + " '3437',\n", + " '3556',\n", + " '3303',\n", + " '3701',\n", + " '3515',\n", + " '3710',\n", + " '2749',\n", + " '2804',\n", + " '3571',\n", + " '3769',\n", + " '3301',\n", + " '3768',\n", + " '2046',\n", + " '794',\n", + " '1001',\n", + " '3360',\n", + " '3558',\n", + " '2257',\n", + " '1364',\n", + " '1796',\n", + " '2945',\n", + " '3444',\n", + " '3302',\n", + " '1947',\n", + " '2780',\n", + " '3445',\n", + " '2907',\n", + " '2462',\n", + " '2802',\n", + " '2746',\n", + " '3063',\n", + " '2915',\n", + " '3833',\n", + " '2017',\n", + " '1981',\n", + " '2351',\n", + " '2803',\n", + " '2810',\n", + " '2350',\n", + " '2433',\n", + " '1795',\n", + " '3725',\n", + " '3064',\n", + " '1793',\n", + " '3724',\n", + " '749',\n", + " '636',\n", + " '2019',\n", + " '2528',\n", + " '1110',\n", + " '371',\n", + " '480',\n", + " '663',\n", + " '3834',\n", + " '2373',\n", + " '3155',\n", + " '3659',\n", + " '175',\n", + " '3640',\n", + " '2519',\n", + " '2635',\n", + " '3258',\n", + " '315',\n", + " '3154',\n", + " '3023',\n", + " '1384',\n", + " '2520',\n", + " '1585',\n", + " '664',\n", + " '992',\n", + " '3153',\n", + " '770',\n", + " '3152',\n", + " '178',\n", + " '2851',\n", + " '3628',\n", + " '2484',\n", + " '3016',\n", + " '3173',\n", + " '2843',\n", + " '3832',\n", + " '1932',\n", + " '2288',\n", + " '3731',\n", + " '81',\n", + " '3660',\n", + " '2940',\n", + " '3562',\n", + " '945',\n", + " '3187',\n", + " '3330',\n", + " '3185',\n", + " '17',\n", + " '674',\n", + " '464',\n", + " '2231',\n", + " '2336',\n", + " '2598',\n", + " '101',\n", + " '3324',\n", + " '2020',\n", + " '1677',\n", + " '2213',\n", + " '2404',\n", + " '240',\n", + " '3306',\n", + " '375',\n", + " '539',\n", + " '540',\n", + " '3721',\n", + " '1019',\n", + " '907',\n", + " '853',\n", + " '1017',\n", + " '1111',\n", + " '1113',\n", + " '1117',\n", + " '2268',\n", + " '3666',\n", + " '2591',\n", + " '2084',\n", + " '2169',\n", + " '852',\n", + " '2083',\n", + " '1167',\n", + " '939',\n", + " '1166',\n", + " '1918',\n", + " '209',\n", + " '210',\n", + " '975',\n", + " '1018',\n", + " '971',\n", + " '69',\n", + " '940',\n", + " '1688',\n", + " '730',\n", + " '2211',\n", + " '2212',\n", + " '2522',\n", + " '2265',\n", + " '2754',\n", + " '2592',\n", + " '3450',\n", + " '3060',\n", + " '2753',\n", + " '2170',\n", + " '2174',\n", + " '2406',\n", + " '3059',\n", + " '105',\n", + " '2364',\n", + " '2896',\n", + " '1611',\n", + " '1076',\n", + " '3479',\n", + " '2703',\n", + " '889',\n", + " '125',\n", + " '2209',\n", + " '396',\n", + " '549',\n", + " '916',\n", + " '2166',\n", + " '2771',\n", + " '851',\n", + " '268',\n", + " '572',\n", + " '2957',\n", + " '285',\n", + " '126',\n", + " '128',\n", + " '2344',\n", + " '1253',\n", + " '1727',\n", + " '979',\n", + " '2376',\n", + " '2230',\n", + " '2465',\n", + " '2848',\n", + " '3260',\n", + " '3366',\n", + " '2464',\n", + " '2847',\n", + " '3367',\n", + " '3582',\n", + " '3198',\n", + " '3513',\n", + " '3580',\n", + " '3581',\n", + " '1381',\n", + " '2934',\n", + " '693',\n", + " '1160',\n", + " '2809',\n", + " '1534',\n", + " '557',\n", + " '2550',\n", + " '2551',\n", + " '3029',\n", + " '2811',\n", + " '671',\n", + " '1397',\n", + " '850',\n", + " '949',\n", + " '725',\n", + " '996',\n", + " '1128',\n", + " '1129',\n", + " '727',\n", + " '997',\n", + " '1347',\n", + " '2047',\n", + " '2882',\n", + " '2048',\n", + " '1910',\n", + " '1911',\n", + " '1220',\n", + " '562',\n", + " '2476',\n", + " '76',\n", + " '948',\n", + " '672',\n", + " '673',\n", + " '692',\n", + " '1247',\n", + " '561',\n", + " '1185',\n", + " '1186',\n", + " '1188',\n", + " '998',\n", + " '1016',\n", + " '2015',\n", + " '237',\n", + " '2050',\n", + " '2658',\n", + " '2319',\n", + " '2013',\n", + " '2014',\n", + " '1341',\n", + " '930',\n", + " '2657',\n", + " '129',\n", + " '994',\n", + " '3084',\n", + " '2825',\n", + " '478',\n", + " '3398',\n", + " '3588',\n", + " '3400',\n", + " '3736',\n", + " '3797',\n", + " '3484',\n", + " '7',\n", + " '247',\n", + " '248',\n", + " '2511',\n", + " '2108',\n", + " '2595',\n", + " '1682',\n", + " '2827',\n", + " '3705',\n", + " '959',\n", + " '866',\n", + " '914',\n", + " '2478',\n", + " '3192',\n", + " '3735',\n", + " '3481',\n", + " '2009',\n", + " '1452',\n", + " '2232',\n", + " '1525',\n", + " '2594',\n", + " '2993',\n", + " '3869',\n", + " '2824',\n", + " '2828',\n", + " '3326',\n", + " '3794',\n", + " '2902',\n", + " '3703',\n", + " '3704',\n", + " '3868',\n", + " '3325',\n", + " '3793',\n", + " '3231',\n", + " '3585',\n", + " '2203',\n", + " '2263',\n", + " '1589',\n", + " '1590',\n", + " '1527',\n", + " '2267',\n", + " '1618',\n", + " '2266',\n", + " '3193',\n", + " '2991',\n", + " '3399',\n", + " '2779',\n", + " '2618',\n", + " '2826',\n", + " '2740',\n", + " '3586',\n", + " '2736',\n", + " '2778',\n", + " '1284',\n", + " '1975',\n", + " '2053',\n", + " '1938',\n", + " '2180',\n", + " '3087',\n", + " '2620',\n", + " '2622',\n", + " '3086',\n", + " '2548',\n", + " '3587',\n", + " '1232',\n", + " '1355',\n", + " '1450',\n", + " '2007',\n", + " '2126',\n", + " '2547',\n", + " '1972',\n", + " '2125',\n", + " '1451',\n", + " '1974',\n", + " '867',\n", + " '404',\n", + " '614',\n", + " '616',\n", + " '915',\n", + " '61',\n", + " '358',\n", + " '316',\n", + " '1025',\n", + " '822',\n", + " '1184',\n", + " '390',\n", + " '1026',\n", + " '1182',\n", + " '1233',\n", + " '845',\n", + " '1394',\n", + " '2356',\n", + " '3722',\n", + " '2909',\n", + " '3630',\n", + " '3240',\n", + " '3241',\n", + " '3238',\n", + " '3632',\n", + " '2953',\n", + " '2768',\n", + " '864',\n", + " '278',\n", + " '455',\n", + " '703',\n", + " '2432',\n", + " '1084',\n", + " '1249',\n", + " '1192',\n", + " '1353',\n", + " '1382',\n", + " '1680',\n", + " '3244',\n", + " '3467',\n", + " '2188',\n", + " '246',\n", + " '1207',\n", + " '1818',\n", + " '1923',\n", + " '1142',\n", + " '1968',\n", + " '498',\n", + " '2653',\n", + " '1202',\n", + " '234',\n", + " '1686',\n", + " '2185',\n", + " '2475',\n", + " '2947',\n", + " '3351',\n", + " '2648',\n", + " '2946',\n", + " '2258',\n", + " '3355',\n", + " '2010',\n", + " '107',\n", + " '355',\n", + " '546',\n", + " '2473',\n", + " '1837',\n", + " '2967',\n", + " '2743',\n", + " '3401',\n", + " '3825',\n", + " '2392',\n", + " '2647',\n", + " '612',\n", + " '3851',\n", + " '3021',\n", + " '3322',\n", + " '2584',\n", + " '3320',\n", + " '3321',\n", + " '2414',\n", + " '2918',\n", + " '242',\n", + " '378',\n", + " '3163',\n", + " '461',\n", + " '184',\n", + " '611',\n", + " '938',\n", + " '1164',\n", + " '1412',\n", + " '2068',\n", + " '252',\n", + " '3230',\n", + " '1330',\n", + " '2333',\n", + " '1495',\n", + " '1706',\n", + " '1580',\n", + " '1272',\n", + " '1048',\n", + " '610',\n", + " '763',\n", + " '541',\n", + " '3237',\n", + " '3871',\n", + " '3849',\n", + " '194',\n", + " '1213',\n", + " '1409',\n", + " '3584',\n", + " '2509',\n", + " '3205',\n", + " '3378',\n", + " '3062',\n", + " '3652',\n", + " '2979',\n", + " '3162',\n", + " '779',\n", + " '530',\n", + " '617',\n", + " '1212',\n", + " '1539',\n", + " '2705',\n", + " '475',\n", + " '775',\n", + " '3281',\n", + " '678',\n", + " '2297',\n", + " '3079',\n", + " '1939',\n", + " '3331',\n", + " '3346',\n", + " '3379',\n", + " '3646',\n", + " '3010',\n", + " '2878',\n", + " '2958',\n", + " '3507',\n", + " '3718',\n", + " '1588',\n", + " '1937',\n", + " '2926',\n", + " '1211',\n", + " '1573',\n", + " '2839',\n", + " '3097',\n", + " '3482',\n", + " '2566',\n", + " '1541',\n", + " '1991',\n", + " '1955',\n", + " '2403',\n", + " '1587',\n", + " '2127',\n", + " '1667',\n", + " '1851',\n", + " '1874',\n", + " '1884',\n", + " '1814',\n", + " '1913',\n", + " '1906',\n", + " '1980',\n", + " '2869',\n", + " '2494',\n", + " '2818',\n", + " '109',\n", + " '510',\n", + " '920',\n", + " '3',\n", + " '2375',\n", + " '173',\n", + " '836',\n", + " '385',\n", + " '1538',\n", + " '432',\n", + " '186',\n", + " '723',\n", + " '536',\n", + " '638',\n", + " '453',\n", + " '534',\n", + " '1091',\n", + " '2289',\n", + " '535',\n", + " '3190',\n", + " '1510',\n", + " '2927',\n", + " '148',\n", + " '149',\n", + " '2808',\n", + " '2360',\n", + " '3218',\n", + " '2572',\n", + " '2246',\n", + " '2405',\n", + " '2596',\n", + " '2692',\n", + " '3276',\n", + " '3502',\n", + " '1758',\n", + " '1757',\n", + " '2544',\n", + " '1725',\n", + " '181',\n", + " '1455',\n", + " '786',\n", + " '1287',\n", + " '1291',\n", + " '3282',\n", + " '3283',\n", + " '1126',\n", + " '1286',\n", + " '2016',\n", + " '2660',\n", + " '3802',\n", + " '2815',\n", + " '3487',\n", + " '2324',\n", + " '2965',\n", + " '3293',\n", + " '1112',\n", + " '2699',\n", + " '1791',\n", + " '1005',\n", + " '1790',\n", + " '123',\n", + " '3638',\n", + " '2387',\n", + " '1459',\n", + " '2294',\n", + " '2640',\n", + " '1833',\n", + " '112',\n", + " '2295',\n", + " '443',\n", + " '3434',\n", + " '1205',\n", + " '1206',\n", + " '1458',\n", + " '2259',\n", + " '1650',\n", + " '1653',\n", + " '1108',\n", + " '3528',\n", + " '900',\n", + " '3709',\n", + " '1323',\n", + " '3708',\n", + " '3478',\n", + " '1834',\n", + " '1964',\n", + " '954',\n", + " '3188',\n", + " '1835',\n", + " '1836',\n", + " '2118',\n", + " '2117',\n", + " '1963',\n", + " '1966',\n", + " '2248',\n", + " '1959',\n", + " '2116',\n", + " '1891',\n", + " '2119',\n", + " '1277',\n", + " '1756',\n", + " '114',\n", + " '747',\n", + " '2054',\n", + " '520',\n", + " '1685',\n", + " '113',\n", + " '115',\n", + " '117',\n", + " '118',\n", + " '116',\n", + " '119',\n", + " '1369',\n", + " '1370',\n", + " '1367',\n", + " '2586',\n", + " '1684',\n", + " '2735',\n", + " '1147',\n", + " '3357',\n", + " '3529',\n", + " '447',\n", + " '901',\n", + " '1146',\n", + " '902',\n", + " '898',\n", + " '899',\n", + " '462',\n", + " '2393',\n", + " '1456',\n", + " '2055',\n", + " '419',\n", + " '3206',\n", + " '1764',\n", + " '391',\n", + " '2889',\n", + " '1690',\n", + " '1802',\n", + " '3408',\n", + " '2874',\n", + " '820',\n", + " '2663',\n", + " '3046',\n", + " '3647',\n", + " '1454',\n", + " '865',\n", + " '2739',\n", + " '1098',\n", + " '1099',\n", + " '3896',\n", + " '964',\n", + " '1225',\n", + " '2741',\n", + " '1115',\n", + " '2738',\n", + " '2177',\n", + " '2282',\n", + " '2378',\n", + " '2285',\n", + " '3039',\n", + " '2283',\n", + " '2377',\n", + " '3194',\n", + " '2485',\n", + " '2819',\n", + " '2939',\n", + " '3475',\n", + " '2742',\n", + " '2737',\n", + " '2379',\n", + " '2380',\n", + " '1567',\n", + " '3894',\n", + " '2861',\n", + " '3476',\n", + " '1116',\n", + " '1566',\n", + " '3784',\n", + " '3895',\n", + " '2182',\n", + " '3041',\n", + " '2482',\n", + " '3124',\n", + " '1114',\n", + " '1422',\n", + " '3893',\n", + " '167',\n", + " '2374',\n", + " '3113',\n", + " '1782',\n", + " '1345',\n", + " '3114',\n", + " '912',\n", + " '1438',\n", + " '1439',\n", + " '1785',\n", + " '1789',\n", + " '1344',\n", + " '1783',\n", + " '2469',\n", + " '2669',\n", + " '3280',\n", + " '3759',\n", + " '3443',\n", + " '724',\n", + " '2901',\n", + " '2466',\n", + " '3420',\n", + " '2394',\n", + " '2395',\n", + " '3203',\n", + " '3591',\n", + " '3335',\n", + " '2081',\n", + " '3757',\n", + " '2643',\n", + " '2720',\n", + " '2341',\n", + " '2342',\n", + " '2346',\n", + " '2718',\n", + " '2082',\n", + " '2271',\n", + " '2272',\n", + " '2719',\n", + " '2721',\n", + " '3372',\n", + " '2796',\n", + " '2517',\n", + " '3109',\n", + " '1922',\n", + " '2467',\n", + " '2948',\n", + " '3020',\n", + " '1784',\n", + " '54',\n", + " '55',\n", + " '1612',\n", + " '2296',\n", + " '880',\n", + " '2292',\n", + " '1053',\n", + " '1723',\n", + " '3758',\n", + " '3566',\n", + " '3073',\n", + " '3304',\n", + " '590',\n", + " '3242',\n", + " '514',\n", + " '460',\n", + " '2899',\n", + " '3110',\n", + " '2155',\n", + " '1990',\n", + " '715',\n", + " '3202',\n", + " '2234',\n", + " '2269',\n", + " '2158',\n", + " '2270',\n", + " '3673',\n", + " '2950',\n", + " '239',\n", + " '2343',\n", + " '2900',\n", + " '3044',\n", + " '3045',\n", + " '2645',\n", + " '2776',\n", + " '2842',\n", + " '168',\n", + " '169',\n", + " '166',\n", + " '2468',\n", + " '3422',\n", + " '2080',\n", + " '3183',\n", + " '2898',\n", + " '3334',\n", + " '2644',\n", + " '3901',\n", + " '3370',\n", + " '3674',\n", + " '2516',\n", + " '3204',\n", + " '2996',\n", + " '3876',\n", + " '2642',\n", + " '3565',\n", + " '2951',\n", + " '2949',\n", + " '2952',\n", + " '3675',\n", + " '283',\n", + " '3374',\n", + " '3375',\n", + " '2154',\n", + " '2235',\n", + " '11',\n", + " '3111',\n", + " '207',\n", + " '2291',\n", + " '1224',\n", + " '1324',\n", + " '2208',\n", + " '2545',\n", + " '570',\n", + " '153',\n", + " '102',\n", + " '2665',\n", + " '110',\n", + " '219',\n", + " '13',\n", + " '111',\n", + " '238',\n", + " '2417',\n", + " '2316',\n", + " '3369',\n", + " '1681',\n", + " '2470',\n", + " '1542',\n", + " '1787',\n", + " '1396',\n", + " '1273',\n", + " '911',\n", + " '1437',\n", + " '1786',\n", + " '1788',\n", + " '2071',\n", + " '2542',\n", + " '2801',\n", + " '731',\n", + " '64',\n", + " '300',\n", + " '3217',\n", + " '735',\n", + " '43',\n", + " '2600',\n", + " '1461',\n", + " '3601',\n", + " '80',\n", + " '1846',\n", + " '2696',\n", + " '2313',\n", + " '3191',\n", + " '288',\n", + " '2252',\n", + " '2302',\n", + " '3126',\n", + " '1856',\n", + " '1473',\n", + " '2256',\n", + " '1882',\n", + " '1657',\n", + " '2088',\n", + " '545',\n", + " '560',\n", + " '1453',\n", + " '223',\n", + " '3350',\n", + " '1255',\n", + " '1595',\n", + " '413',\n", + " '3874',\n", + " '1449',\n", + " '1274',\n", + " '1615',\n", + " '1476',\n", + " '85',\n", + " '563',\n", + " '208',\n", + " '1805',\n", + " '379',\n", + " '103',\n", + " '2323',\n", + " '950',\n", + " '3353',\n", + " '3037',\n", + " '3667',\n", + " '433',\n", + " '1562',\n", + " '3577',\n", + " '3339',\n", + " '908',\n", + " '1332',\n", + " '842',\n", + " '1463',\n", + " '1671',\n", + " '2837',\n", + " '2134',\n", + " '2314',\n", + " '3742',\n", + " '457',\n", + " '497',\n", + " '2783',\n", + " '1732',\n", + " '1994',\n", + " '1163',\n", + " '946',\n", + " '1560',\n", + " '2321',\n", + " '3887',\n", + " '3520',\n", + " '3734',\n", + " '817',\n", + " '1540',\n", + " '1739',\n", + " '532',\n", + " '1093',\n", + " '122',\n", + " '3754',\n", + " '3165',\n", + " '3460',\n", + " '3885',\n", + " '694',\n", + " '910',\n", + " '695',\n", + " '1089',\n", + " '1010',\n", + " '1221',\n", + " '2079',\n", + " '372',\n", + " '1555',\n", + " '2729',\n", + " '1941',\n", + " '1335',\n", + " '1840',\n", + " '1480',\n", + " '2386',\n", + " '2625',\n", + " '877',\n", + " '244',\n", + " '1803',\n", + " '2401',\n", + " '2240',\n", + " '2546',\n", + " '2762',\n", + " '3337',\n", + " '3800',\n", + " '3083',\n", + " '3290',\n", + " '3873',\n", + " '182',\n", + " '420',\n", + " '222',\n", + " '346',\n", + " '1036',\n", + " '1664',\n", + " '3539',\n", + " '1208',\n", + " '2463',\n", + " '2092',\n", + " '2381',\n", + " '2821',\n", + " '1912',\n", + " '2583',\n", + " '1045',\n", + " '618',\n", + " '2260',\n", + " '2639',\n", + " '3761',\n", + " '3867',\n", + " '3075',\n", + " '3468',\n", + " '3349',\n", + " '3650',\n", + " '3172',\n", + " '3875',\n", + " '2905',\n", + " '3243',\n", + " '78',\n", + " '1958',\n", + " '3486',\n", + " '77',\n", + " '79',\n", + " '2634',\n", + " '1584',\n", + " '2920',\n", + " '317',\n", + " '766',\n", + " '1321',\n", + " '3094',\n", + " '765',\n", + " '1077',\n", + " '1004',\n", + " '2751',\n", + " '1075',\n", + " '1275',\n", + " '1491',\n", + " '1074',\n", + " '3776',\n", + " '919',\n", + " '3271',\n", + " '3385',\n", + " '2136',\n", + " '1322',\n", + " '1960',\n", + " '2135',\n", + " '1957',\n", + " '2435',\n", + " '2816',\n", + " '3095',\n", + " '3881',\n", + " '380',\n", + " '1929',\n", + " '2728',\n", + " '760',\n", + " '1940',\n", + " '2197',\n", + " '3648',\n", + " '3627',\n", + " '1196',\n", + " '863',\n", + " '1227',\n", + " '3267',\n", + " '3368',\n", + " '888',\n", + " '886',\n", + " '887',\n", + " '67',\n", + " '324',\n", + " '325',\n", + " '2876',\n", + " '3748',\n", + " '3051',\n", + " '3872',\n", + " '1158',\n", + " '3552',\n", + " '2070',\n", + " '3050',\n", + " '1346',\n", + " '41',\n", + " '434',\n", + " '2856',\n", + " '3128',\n", + " '3563',\n", + " '3071',\n", + " '3859',\n", + " '675',\n", + " '2865',\n", + " '849',\n", + " '2095',\n", + " '2791',\n", + " '1133',\n", + " '1263',\n", + " '1694',\n", + " '1812',\n", + " '274',\n", + " '409',\n", + " '2412',\n", + " '2774',\n", + " '3605',\n", + " '2773',\n", + " '3549',\n", + " '2500',\n", + " '2693',\n", + " '2181',\n", + " '3013',\n", + " '250',\n", + " '3492',\n", + " '1801',\n", + " '2800',\n", + " '486',\n", + " '1578',\n", + " '3229',\n", + " '3457',\n", + " '280',\n", + " '1087',\n", + " '3641',\n", + " '3091',\n", + " '3456',\n", + " '3864',\n", + " '2567',\n", + " '2483',\n", + " '138',\n", + " '3574',\n", + " '2832',\n", + " '3870',\n", + " '377',\n", + " '203',\n", + " '190',\n", + " '524',\n", + " '491',\n", + " '336',\n", + " '596',\n", + " '492',\n", + " '595',\n", + " '493',\n", + " '216',\n", + " '335',\n", + " '800',\n", + " '1134',\n", + " '3766',\n", + " '855',\n", + " '2087',\n", + " '1866',\n", + " '2493',\n", + " '2011',\n", + " '2201',\n", + " '1780',\n", + " '1648',\n", + " '3254',\n", + " '876',\n", + " '1009',\n", + " '1579',\n", + " '1156',\n", + " '1499',\n", + " '1683',\n", + " '1135',\n", + " '1055',\n", + " '2280',\n", + " '2388',\n", + " '2187',\n", + " '3054',\n", + " '3689',\n", + " '3462',\n", + " '983',\n", + " '1598',\n", + " '2523',\n", + " '3178',\n", + " '2985',\n", + " '3447',\n", + " '3177',\n", + " '2987',\n", + " '3448',\n", + " '1775',\n", + " '163',\n", + " '65',\n", + " '1530',\n", + " '2637',\n", + " '2590',\n", + " '1697',\n", + " '1325',\n", + " '1647',\n", + " '1428',\n", + " '1124',\n", + " '1744',\n", + " '1698',\n", + " '1839',\n", + " '1778',\n", + " '397',\n", + " '1457',\n", + " '2340',\n", + " '1970',\n", + " '2253',\n", + " '2093',\n", + " '3841',\n", + " '1969',\n", + " '1995',\n", + " '2157',\n", + " '2986',\n", + " '1389',\n", + " '3098',\n", + " '1821',\n", + " '944',\n", + " '2226',\n", + " '3403',\n", + " '2224',\n", + " '2225',\n", + " '235',\n", + " '143',\n", + " '705',\n", + " '75',\n", + " '144',\n", + " '1565',\n", + " '868',\n", + " '1564',\n", + " '3886',\n", + " '489',\n", + " '838',\n", + " '1044',\n", + " '1043',\n", + " '357',\n", + " '1726',\n", + " '3899',\n", + " '2194',\n", + " '3897',\n", + " '3405',\n", + " '2673',\n", + " '2605',\n", + " '3316',\n", + " '3317',\n", + " '24',\n", + " '2606',\n", + " '1218',\n", + " '2674',\n", + " '2130',\n", + " '2326',\n", + " '3518',\n", + " '3900',\n", + " '2137',\n", + " '3788',\n", + " '2849',\n", + " '232',\n", + " '233',\n", + " '729',\n", + " '1675',\n", + " '929',\n", + " '811',\n", + " '1446',\n", + " '2682',\n", + " '1568',\n", + " '3392',\n", + " '2486',\n", + " '1953',\n", + " '1447',\n", + " '2613',\n", + " '1954',\n", + " '3012',\n", + " '861',\n", + " '1434',\n", + " '2549',\n", + " '640',\n", + " '641',\n", + " '642',\n", + " '349',\n", + " '350',\n", + " '293',\n", + " '291',\n", + " '1731',\n", + " '130',\n", + " '1707',\n", + " '2489',\n", + " '807',\n", + " '1200',\n", + " '1336',\n", + " '1149',\n", + " '230',\n", + " '1153',\n", + " '2315',\n", + " '2488',\n", + " '3296',\n", + " '732',\n", + " '3127',\n", + " '3499',\n", + " '1157',\n", + " '3819',\n", + " '1002',\n", + " '1600',\n", + " '1151',\n", + " '1248',\n", + " '3297',\n", + " '860',\n", + " '1042',\n", + " '301',\n", + " '1547',\n", + " '2769',\n", + " '2039',\n", + " '893',\n", + " '2293',\n", + " '53',\n", + " '600',\n", + " '387',\n", + " '1003',\n", + " '1861',\n", + " '2143',\n", + " '2573',\n", + " '2942',\n", + " '3340',\n", + " '3813',\n", + " '3174',\n", + " '3687',\n", + " '264',\n", + " '2570',\n", + " '1013',\n", + " '1150',\n", + " '1642',\n", + " '494',\n", + " '2845',\n", + " '2571',\n", + " '1472',\n", + " '2255',\n", + " '1148',\n", + " '3269',\n", + " '1934',\n", + " '1471',\n", + " '1930',\n", + " '3358',\n", + " '3508',\n", + " '458',\n", + " '1165',\n", + " '83',\n", + " '2777',\n", + " '2911',\n", + " '3257',\n", + " '2973',\n", + " '1831',\n", + " '2913',\n", + " '1733',\n", + " '2075',\n", + " '1390',\n", + " '3181',\n", + " '2222',\n", + " '3123',\n", + " '3407',\n", + " '2145',\n", + " '3686',\n", + " '3356',\n", + " '3889',\n", + " '2223',\n", + " '2604',\n", + " '2974',\n", + " '3592',\n", + " '1012',\n", + " '2074',\n", + " '3604',\n", + " '3801',\n", + " '3256',\n", + " '3028',\n", + " '2076',\n", + " '2306',\n", + " '2697',\n", + " '1609',\n", + " '2359',\n", + " '49',\n", + " '479',\n", + " '3312',\n", + " '3745',\n", + " '2370',\n", + " '3121',\n", + " '3570',\n", + " '1282',\n", + " '799',\n", + " '1283',\n", + " '1719',\n", + " '2008',\n", + " '1216',\n", + " '2107',\n", + " '140',\n", + " '139',\n", + " '2358',\n", + " '2086',\n", + " '2357',\n", + " '1702',\n", + " '3427',\n", + " '2210',\n", + " '3089',\n", + " '1109',\n", + " '2543',\n", + " '2765',\n", + " '254',\n", + " '1474',\n", + " '474',\n", + " '844',\n", + " '1614',\n", + " '1754',\n", + " '3160',\n", + " '1250',\n", + " '2001',\n", + " '3365',\n", + " '3224',\n", + " '2402',\n", + " '3027',\n", + " '1674',\n", + " '1448',\n", + " '2215',\n", + " '2274',\n", + " '3418',\n", + " '1641',\n", + " '2610',\n", + " '2880',\n", + " '1870',\n", + " '189',\n", + " '742',\n", + " '1239',\n", + " '1489',\n", + " '1862',\n", + " '50',\n", + " '444',\n", + " '284',\n", + " '501',\n", + " '1875',\n", + " '1056',\n", + " '164',\n", + " '412',\n", + " '1708',\n", + " '1853',\n", + " '476',\n", + " '885',\n", + " '62',\n", + " '382',\n", + " '3651',\n", + " '473',\n", + " '275',\n", + " '2929',\n", + " '2287',\n", + " '3309',\n", + " '3606',\n", + " '3882',\n", + " '756',\n", + " '3898',\n", + " '2667',\n", + " '205',\n", + " '206',\n", + " '881',\n", + " '403',\n", + " '277',\n", + " '402',\n", + " '1070',\n", + " '1436',\n", + " '2535',\n", + " '3197',\n", + " '2893',\n", + " '2322',\n", + " '3785',\n", + " '276',\n", + " '499',\n", + " '3771',\n", + " '2725',\n", + " '2436',\n", + " '3047',\n", + " '2184',\n", + " '1610',\n", + " '1804',\n", + " '3352',\n", + " '1942',\n", + " '2724',\n", + " '750',\n", + " '1015',\n", + " '1118',\n", + " '1201',\n", + " '854',\n", + " '790',\n", + " '935',\n", + " '386',\n", + " '3610',\n", + " '1574',\n", + " '3009',\n", + " '2556',\n", + " '3609',\n", + " '843',\n", + " '3402',\n", + " '2041',\n", + " '3883',\n", + " '3884',\n", + " '3890',\n", + " '1559',\n", + " '1637',\n", + " '1500',\n", + " '1597',\n", + " '2563',\n", + " '2651',\n", + " '2261',\n", + " '2650',\n", + " '3506',\n", + " '3831',\n", + " '3026',\n", + " '2814',\n", + " '1465',\n", + " '1466',\n", + " '3891',\n", + " '3830',\n", + " '2687',\n", + " '3504',\n", + " '3505',\n", + " '2057',\n", + " '2229',\n", + " '2829',\n", + " '918',\n", + " '1199',\n", + " '1799',\n", + " '2813',\n", + " '2262',\n", + " '2481',\n", + " '2131',\n", + " '2688',\n", + " '2480',\n", + " '2686',\n", + " '3892',\n", + " '2649',\n", + " '3503',\n", + " '2564',\n", + " '2812',\n", + " '1308',\n", + " '1800',\n", + " '1467',\n", + " '3122',\n", + " '3287',\n", + " '2156',\n", + " '3328',\n", + " '2638',\n", + " '1645',\n", + " '1333',\n", + " '1334',\n", + " '1548',\n", + " '3409',\n", + " '2424',\n", + " '3838',\n", + " '3428',\n", + " '3594',\n", + " '3380',\n", + " '3888',\n", + " '3473',\n", + " '3737',\n", + " '828',\n", + " '1392',\n", + " '3313',\n", + " '3049',\n", + " '1243',\n", + " '3048',\n", + " '593',\n", + " '2281',\n", + " '1241',\n", + " '2588',\n", + " '960',\n", + " '2371',\n", + " '1971',\n", + " '2587',\n", + " '1581',\n", + " '440',\n", + " '2717',\n", + " '1709',\n", + " '1710',\n", + " '68',\n", + " '159',\n", + " '679',\n", + " '962',\n", + " '594',\n", + " '279',\n", + " '441',\n", + " '442',\n", + " '1386',\n", + " '1387',\n", + " '1460',\n", + " '1879',\n", + " '961',\n", + " '963',\n", + " '1649',\n", + " '1244',\n", + " '1242',\n", + " '1245',\n", + " '2062',\n", + " '1927',\n", + " '2077',\n", + " '542',\n", + " '98',\n", + " '1368',\n", + " '319',\n", + " '1101',\n", + " '1753',\n", + " '995',\n", + " '1203',\n", + " '1100',\n", + " '1928',\n", + " '903',\n", + " '2078',\n", + " '72',\n", + " '3421',\n", + " '3022',\n", + " '2922',\n", + " '3252',\n", + " '3522',\n", + " '3523',\n", + " '3524',\n", + " '2534',\n", + " '2722',\n", + " '1269',\n", + " '2529',\n", + " '3679',\n", + " '2396',\n", + " '2191',\n", + " '2397',\n", + " '3329',\n", + " '3017',\n", + " '3018',\n", + " '2608',\n", + " '2609',\n", + " '2540',\n", + " '2541',\n", + " '1320',\n", + " '567',\n", + " '1583',\n", + " '1676',\n", + " '1838',\n", + " '2190',\n", + " '1319',\n", + " '3222',\n", + " '3678',\n", + " '2607',\n", + " '3221',\n", + " '931',\n", + " '338',\n", + " '818',\n", + " '431',\n", + " '1728',\n", + " '2304',\n", + " '1691',\n", + " '2560',\n", + " '2416',\n", + " '2415',\n", + " '3861',\n", + " '1195',\n", + " '2073',\n", + " '1393',\n", + " '1855',\n", + " '2072',\n", + " '3862',\n", + " '3498',\n", + " '307',\n", + " '513',\n", + " '1943',\n", + " '734',\n", + " '659',\n", + " '306',\n", + " '909',\n", + " '826',\n", + " '658',\n", + " '825',\n", + " '516',\n", + " '951',\n", + " '1068',\n", + " '1168',\n", + " '3189',\n", + " '436',\n", + " '662',\n", + " '437',\n", + " '784',\n", + " '783',\n", + " '952',\n", + " '1492',\n", + " '3429',\n", + " '568',\n", + " '943',\n", + " '1281',\n", + " '848',\n", + " '1693',\n", + " '806',\n", + " '629',\n", + " '805',\n", + " '2919',\n", + " '680',\n", + " '1494',\n", + " '2767',\n", + " '3727',\n", + " '3305',\n", + " '3789',\n", + " '3633',\n", + " '3681',\n", + " '298',\n", + " '3553',\n", + " '3032',\n", + " '1493',\n", + " '3791',\n", + " '3637',\n", + " '2477',\n", + " '3551',\n", + " '1621',\n", + " '3729',\n", + " '3878',\n", + " '3879',\n", + " '3880',\n", + " '3164',\n", + " '3167',\n", + " '3634',\n", + " '3680',\n", + " '3412',\n", + " '3471',\n", + " '3728',\n", + " '847',\n", + " '586',\n", + " '1278',\n", + " '1279',\n", + " '1280',\n", + " '526',\n", + " '630',\n", + " '704',\n", + " '582',\n", + " '583',\n", + " '2275',\n", + " '3307',\n", + " '2276',\n", + " '3308',\n", + " '3561',\n", + " '1741',\n", + " '3433',\n", + " '1174',\n", + " '170',\n", + " '525',\n", + " '1523',\n", + " '1524',\n", + " '3430',\n", + " '3550',\n", + " '2339',\n", + " '3860',\n", + " '3877',\n", + " '1897',\n", + " '3564',\n", + " '2820',\n", + " '3431',\n", + " '1740',\n", + " '2822',\n", + " '18',\n", + " '452',\n", + " '1622',\n", + " '1623',\n", + " '571',\n", + " '1388',\n", + " '1535',\n", + " '1440',\n", + " '1441',\n", + " '1516',\n", + " '1518',\n", + " '1520',\n", + " '1742',\n", + " '1924',\n", + " '2410',\n", + " '2491',\n", + " '3602',\n", + " '3436',\n", + " '3067',\n", + " '3068',\n", + " '2492',\n", + " '2144',\n", + " '3168',\n", + " '2490',\n", + " '2775',\n", + " '1468',\n", + " '197',\n", + " '1873',\n", + " '982',\n", + " '3284',\n", + " '2794',\n", + " '3683',\n", + " '3684',\n", + " '1464',\n", + " '66',\n", + " '3103',\n", + " '3101',\n", + " '1643',\n", + " '1088',\n", + " '2992',\n", + " '1514',\n", + " '2990',\n", + " '3286',\n", + " '984',\n", + " '3100',\n", + " '198',\n", + " '2611',\n", + " '2932',\n", + " '1327',\n", + " '1172',\n", + " '2931',\n", + " '3105',\n", + " '3777',\n", + " '1328',\n", + " '1644',\n", + " '3161',\n", + " '1340',\n", + " '3159',\n", + " '2862',\n", + " '2863',\n", + " '872',\n", + " '1181',\n", + " '1829',\n", + " '3623',\n", + " '2328',\n", + " '2329',\n", + " '3417',\n", + " '3157',\n", + " '3298',\n", + " '3299',\n", + " '2496',\n", + " '2668',\n", + " '1021',\n", + " '972',\n", + " '702',\n", + " '819',\n", + " '2141',\n", + " '1477',\n", + " '1288',\n", + " '3624',\n", + " '3622',\n", + " '2859',\n", + " '3410',\n", + " '3753',\n", + " '3629',\n", + " '2327',\n", + " '2672',\n", + " '1289',\n", + " '1290',\n", + " '1338',\n", + " '875',\n", + " '873',\n", + " '874',\n", + " '1435',\n", + " '752',\n", + " '753',\n", + " '146',\n", + " '344',\n", + " '871',\n", + " '1832',\n", + " '2670',\n", + " '12',\n", + " '2624',\n", + " '1935',\n", + " '2860',\n", + " '1743',\n", + " '1127',\n", + " '1180',\n", + " '1536',\n", + " '1830',\n", + " '2140',\n", + " '343',\n", + " '1828',\n", + " '1395',\n", + " '97',\n", + " '1537',\n", + " '1049',\n", + " '2138',\n", + " '2139',\n", + " '2759',\n", + " '416',\n", + " '1627',\n", + " '1700',\n", + " '1179',\n", + " '3411',\n", + " '1827',\n", + " '3042',\n", + " '2758',\n", + " '3043'],\n", + " 'leaves': [3182,\n", + " 1090,\n", + " 367,\n", + " 179,\n", + " 1748,\n", + " 3292,\n", + " 710,\n", + " 709,\n", + " 1209,\n", + " 106,\n", + " 1121,\n", + " 2698,\n", + " 2700,\n", + " 20,\n", + " 21,\n", + " 1624,\n", + " 1625,\n", + " 2094,\n", + " 2277,\n", + " 1512,\n", + " 329,\n", + " 1771,\n", + " 450,\n", + " 2988,\n", + " 330,\n", + " 669,\n", + " 1145,\n", + " 1605,\n", + " 3435,\n", + " 331,\n", + " 2536,\n", + " 1092,\n", + " 2152,\n", + " 2844,\n", + " 2537,\n", + " 2538,\n", + " 579,\n", + " 2142,\n", + " 3559,\n", + " 1193,\n", + " 2499,\n", + " 3682,\n", + " 897,\n", + " 686,\n", + " 356,\n", + " 685,\n", + " 974,\n", + " 1792,\n", + " 249,\n", + " 797,\n", + " 660,\n", + " 796,\n", + " 348,\n", + " 1262,\n", + " 3090,\n", + " 3285,\n", + " 773,\n", + " 733,\n", + " 2453,\n", + " 26,\n", + " 39,\n", + " 1626,\n", + " 1819,\n", + " 1636,\n", + " 3454,\n", + " 1944,\n", + " 6,\n", + " 2646,\n", + " 3058,\n", + " 1170,\n", + " 487,\n", + " 569,\n", + " 816,\n", + " 257,\n", + " 2198,\n", + " 2850,\n", + " 2431,\n", + " 3347,\n", + " 896,\n", + " 214,\n", + " 215,\n", + " 654,\n", + " 652,\n", + " 648,\n", + " 650,\n", + " 649,\n", + " 653,\n", + " 2195,\n", + " 651,\n", + " 646,\n", + " 647,\n", + " 645,\n", + " 2193,\n", + " 2855,\n", + " 2857,\n", + " 3348,\n", + " 58,\n", + " 57,\n", + " 354,\n", + " 2853,\n", + " 213,\n", + " 2854,\n", + " 657,\n", + " 2199,\n", + " 2200,\n", + " 3560,\n", + " 260,\n", + " 261,\n", + " 259,\n", + " 258,\n", + " 655,\n", + " 2887,\n", + " 314,\n", + " 2683,\n", + " 670,\n", + " 2858,\n", + " 1421,\n", + " 3394,\n", + " 1631,\n", + " 862,\n", + " 1103,\n", + " 496,\n", + " 3631,\n", + " 3151,\n", + " 2870,\n", + " 2871,\n", + " 3149,\n", + " 2885,\n", + " 3354,\n", + " 1057,\n", + " 256,\n", + " 644,\n", + " 3653,\n", + " 147,\n", + " 255,\n", + " 1059,\n", + " 3395,\n", + " 488,\n", + " 643,\n", + " 3812,\n", + " 2868,\n", + " 1102,\n", + " 1617,\n", + " 3654,\n", + " 3279,\n", + " 2515,\n", + " 3635,\n", + " 3636,\n", + " 2498,\n", + " 2418,\n", + " 27,\n", + " 890,\n", + " 1351,\n", + " 3146,\n", + " 1633,\n", + " 1635,\n", + " 30,\n", + " 3145,\n", + " 29,\n", + " 2419,\n", + " 3852,\n", + " 1630,\n", + " 1171,\n", + " 3707,\n", + " 2220,\n", + " 3706,\n", + " 3790,\n", + " 3175,\n", + " 3393,\n", + " 1511,\n", + " 3396,\n", + " 505,\n", + " 25,\n", + " 1629,\n", + " 980,\n", + " 506,\n", + " 981,\n", + " 32,\n", + " 3397,\n", + " 829,\n", + " 1061,\n", + " 3516,\n", + " 3248,\n", + " 3567,\n", + " 3826,\n", + " 3318,\n", + " 3688,\n", + " 1144,\n", + " 1946,\n", + " 1772,\n", + " 2846,\n", + " 2325,\n", + " 2501,\n", + " 311,\n", + " 3827,\n", + " 3497,\n", + " 3747,\n", + " 1949,\n", + " 2763,\n", + " 2941,\n", + " 310,\n", + " 2706,\n", + " 2707,\n", + " 3432,\n", + " 668,\n", + " 993,\n", + " 3200,\n", + " 3568,\n", + " 3250,\n", + " 160,\n", + " 2817,\n", + " 3828,\n", + " 2502,\n", + " 2575,\n", + " 309,\n", + " 3452,\n", + " 1950,\n", + " 1154,\n", + " 1073,\n", + " 1152,\n", + " 3342,\n", + " 1155,\n", + " 3480,\n", + " 2684,\n", + " 2685,\n", + " 509,\n", + " 894,\n", + " 2894,\n", + " 2895,\n", + " 1031,\n", + " 1570,\n", + " 1198,\n", + " 3597,\n", + " 3477,\n", + " 3554,\n", + " 2565,\n", + " 3810,\n", + " 347,\n", + " 3762,\n", + " 1545,\n", + " 2042,\n", + " 1687,\n", + " 1982,\n", + " 1983,\n", + " 3702,\n", + " 1752,\n", + " 2652,\n", + " 1050,\n", + " 1329,\n", + " 1646,\n", + " 3215,\n", + " 3730,\n", + " 374,\n", + " 795,\n", + " 1062,\n", + " 2917,\n", + " 3514,\n", + " 3664,\n", + " 3663,\n", + " 3853,\n", + " 548,\n", + " 2413,\n", + " 3865,\n", + " 3344,\n", + " 3345,\n", + " 2004,\n", + " 2365,\n", + " 2363,\n", + " 2366,\n", + " 1563,\n", + " 1695,\n", + " 2179,\n", + " 1876,\n", + " 1402,\n", + " 2003,\n", + " 1125,\n", + " 1914,\n", + " 745,\n", + " 1331,\n", + " 429,\n", + " 1915,\n", + " 528,\n", + " 529,\n", + " 3496,\n", + " 3387,\n", + " 3315,\n", + " 3716,\n", + " 665,\n", + " 3786,\n", + " 3691,\n", + " 3814,\n", + " 3815,\n", + " 3690,\n", + " 3314,\n", + " 3419,\n", + " 3572,\n", + " 3816,\n", + " 3555,\n", + " 3713,\n", + " 1169,\n", + " 2615,\n", + " 3382,\n", + " 3381,\n", + " 2616,\n", + " 3715,\n", + " 777,\n", + " 2614,\n", + " 2840,\n", + " 3388,\n", + " 3644,\n", + " 2368,\n", + " 3214,\n", + " 3288,\n", + " 3645,\n", + " 3289,\n", + " 3643,\n", + " 2841,\n", + " 3576,\n", + " 3483,\n", + " 3714,\n", + " 2504,\n", + " 2930,\n", + " 2561,\n", + " 3364,\n", + " 2451,\n", + " 3657,\n", + " 3655,\n", + " 3656,\n", + " 3363,\n", + " 3521,\n", + " 3080,\n", + " 3219,\n", + " 2447,\n", + " 3081,\n", + " 3517,\n", + " 2984,\n", + " 3519,\n", + " 2448,\n", + " 2872,\n", + " 2308,\n", + " 656,\n", + " 2307,\n", + " 2449,\n", + " 1296,\n", + " 1295,\n", + " 925,\n", + " 1293,\n", + " 1294,\n", + " 1689,\n", + " 3461,\n", + " 16,\n", + " 1265,\n", + " 1668,\n", + " 1669,\n", + " 2471,\n", + " 3099,\n", + " 1342,\n", + " 2726,\n", + " 537,\n", + " 3839,\n", + " 3840,\n", + " 1264,\n", + " 2204,\n", + " 2559,\n", + " 2043,\n", + " 2382,\n", + " 1750,\n", + " 2100,\n", + " 1776,\n", + " 2205,\n", + " 2472,\n", + " 2558,\n", + " 2897,\n", + " 3102,\n", + " 3104,\n", + " 3106,\n", + " 243,\n", + " 762,\n", + " 824,\n", + " 185,\n", + " 1429,\n", + " 271,\n", + " 1430,\n", + " 1720,\n", + " 1721,\n", + " 538,\n", + " 1197,\n", + " 1006,\n", + " 28,\n", + " 135,\n", + " 624,\n", + " 677,\n", + " 15,\n", + " 1007,\n", + " 136,\n", + " 757,\n", + " 313,\n", + " 1008,\n", + " 2045,\n", + " 204,\n", + " 1977,\n", + " 124,\n", + " 353,\n", + " 451,\n", + " 2434,\n", + " 2823,\n", + " 3611,\n", + " 788,\n", + " 251,\n", + " 253,\n", + " 2238,\n", + " 2237,\n", + " 2239,\n", + " 1083,\n", + " 14,\n", + " 2694,\n", + " 2279,\n", + " 2695,\n", + " 3818,\n", + " 1361,\n", + " 1362,\n", + " 3820,\n", + " 2944,\n", + " 3573,\n", + " 3600,\n", + " 2666,\n", + " 2912,\n", + " 2247,\n", + " 2427,\n", + " 2976,\n", + " 2975,\n", + " 3842,\n", + " 3247,\n", + " 3512,\n", + " 2745,\n", + " 3569,\n", + " 2192,\n", + " 2621,\n", + " 2428,\n", + " 2619,\n", + " 2744,\n", + " 2977,\n", + " 2426,\n", + " 3599,\n", + " 3843,\n", + " 2429,\n", + " 2623,\n", + " 3147,\n", + " 2278,\n", + " 3733,\n", + " 3821,\n", + " 3823,\n", + " 2318,\n", + " 1022,\n", + " 3822,\n", + " 1575,\n", + " 3272,\n", + " 2864,\n", + " 2748,\n", + " 3837,\n", + " 2750,\n", + " 3057,\n", + " 2349,\n", + " 2457,\n", + " 2888,\n", + " 1130,\n", + " 3056,\n", + " 1576,\n", + " 1577,\n", + " 1194,\n", + " 3055,\n", + " 2091,\n", + " 2612,\n", + " 1841,\n", + " 791,\n", + " 1842,\n", + " 1844,\n", + " 2090,\n", + " 2348,\n", + " 1843,\n", + " 1845,\n", + " 1020,\n", + " 1850,\n", + " 154,\n", + " 792,\n", + " 152,\n", + " 1131,\n", + " 2747,\n", + " 3488,\n", + " 3858,\n", + " 267,\n", + " 359,\n", + " 266,\n", + " 360,\n", + " 2730,\n", + " 1419,\n", + " 411,\n", + " 785,\n", + " 96,\n", + " 1420,\n", + " 2317,\n", + " 269,\n", + " 2959,\n", + " 588,\n", + " 1658,\n", + " 2636,\n", + " 3201,\n", + " 3052,\n", + " 3359,\n", + " 3595,\n", + " 2970,\n", + " 3446,\n", + " 3500,\n", + " 141,\n", + " 265,\n", + " 1034,\n", + " 1380,\n", + " 1528,\n", + " 808,\n", + " 1427,\n", + " 1426,\n", + " 1424,\n", + " 1425,\n", + " 1769,\n", + " 2782,\n", + " 2526,\n", + " 2662,\n", + " 2244,\n", + " 2151,\n", + " 2352,\n", + " 2439,\n", + " 2661,\n", + " 2354,\n", + " 2641,\n", + " 1526,\n", + " 1529,\n", + " 2525,\n", + " 1064,\n", + " 2298,\n", + " 1865,\n", + " 1996,\n", + " 2353,\n", + " 2132,\n", + " 2555,\n", + " 774,\n", + " 1423,\n", + " 1315,\n", + " 1768,\n", + " 1997,\n", + " 661,\n", + " 1316,\n", + " 584,\n", + " 142,\n", + " 585,\n", + " 2133,\n", + " 1379,\n", + " 707,\n", + " 986,\n", + " 1033,\n", + " 1770,\n", + " 793,\n", + " 985,\n", + " 2245,\n", + " 1868,\n", + " 3196,\n", + " 3053,\n", + " 2994,\n", + " 3166,\n", + " 3781,\n", + " 3693,\n", + " 2892,\n", + " 3501,\n", + " 82,\n", + " 1867,\n", + " 3088,\n", + " 2968,\n", + " 2969,\n", + " 1666,\n", + " 2148,\n", + " 2146,\n", + " 2147,\n", + " 131,\n", + " 132,\n", + " 627,\n", + " 628,\n", + " 1298,\n", + " 1299,\n", + " 1485,\n", + " 1486,\n", + " 1300,\n", + " 1301,\n", + " 36,\n", + " 37,\n", + " 1484,\n", + " 1665,\n", + " 38,\n", + " 1777,\n", + " 780,\n", + " 302,\n", + " 303,\n", + " 821,\n", + " 558,\n", + " 3796,\n", + " 2175,\n", + " 1191,\n", + " 1189,\n", + " 1187,\n", + " 1190,\n", + " 2627,\n", + " 2628,\n", + " 467,\n", + " 218,\n", + " 798,\n", + " 3548,\n", + " 3700,\n", + " 3278,\n", + " 3547,\n", + " 3699,\n", + " 3694,\n", + " 3695,\n", + " 3698,\n", + " 3546,\n", + " 3696,\n", + " 2286,\n", + " 3236,\n", + " 2714,\n", + " 2034,\n", + " 2715,\n", + " 2713,\n", + " 2716,\n", + " 3213,\n", + " 2955,\n", + " 2956,\n", + " 2038,\n", + " 2037,\n", + " 3212,\n", + " 3795,\n", + " 2029,\n", + " 2712,\n", + " 1659,\n", + " 1660,\n", + " 1032,\n", + " 2689,\n", + " 3361,\n", + " 1813,\n", + " 3362,\n", + " 2098,\n", + " 1223,\n", + " 3596,\n", + " 1810,\n", + " 1222,\n", + " 1661,\n", + " 2097,\n", + " 1811,\n", + " 2096,\n", + " 1881,\n", + " 3076,\n", + " 3557,\n", + " 519,\n", + " 3672,\n", + " 3065,\n", + " 1029,\n", + " 3856,\n", + " 2000,\n", + " 3536,\n", + " 3077,\n", + " 3332,\n", + " 3264,\n", + " 3262,\n", + " 3426,\n", + " 2355,\n", + " 3425,\n", + " 3333,\n", + " 1229,\n", + " 1713,\n", + " 2159,\n", + " 1711,\n", + " 1714,\n", + " 2886,\n", + " 2160,\n", + " 2161,\n", + " 3144,\n", + " 2384,\n", + " 1481,\n", + " 1086,\n", + " 3265,\n", + " 2518,\n", + " 2787,\n", + " 1712,\n", + " 1230,\n", + " 3179,\n", + " 1228,\n", + " 2838,\n", + " 2963,\n", + " 2960,\n", + " 3470,\n", + " 3598,\n", + " 1599,\n", + " 2961,\n", + " 3261,\n", + " 3844,\n", + " 2655,\n", + " 2962,\n", + " 937,\n", + " 1569,\n", + " 2760,\n", + " 2936,\n", + " 518,\n", + " 3209,\n", + " 3208,\n", + " 3210,\n", + " 3207,\n", + " 3211,\n", + " 3274,\n", + " 3116,\n", + " 3275,\n", + " 482,\n", + " 340,\n", + " 2438,\n", + " 559,\n", + " 751,\n", + " 51,\n", + " 52,\n", + " 352,\n", + " 1670,\n", + " 1521,\n", + " 3119,\n", + " 426,\n", + " 1765,\n", + " 2338,\n", + " 3464,\n", + " 2443,\n", + " 2784,\n", + " 469,\n", + " 1479,\n", + " 1371,\n", + " 1035,\n", + " 1478,\n", + " 3263,\n", + " 3509,\n", + " 1736,\n", + " 2982,\n", + " 2983,\n", + " 1703,\n", + " 1781,\n", + " 923,\n", + " 924,\n", + " 2633,\n", + " 1407,\n", + " 1408,\n", + " 1606,\n", + " 1900,\n", + " 1106,\n", + " 1107,\n", + " 1105,\n", + " 1406,\n", + " 1000,\n", + " 1779,\n", + " 1704,\n", + " 1901,\n", + " 1899,\n", + " 1902,\n", + " 2383,\n", + " 3323,\n", + " 3719,\n", + " 3544,\n", + " 3540,\n", + " 3543,\n", + " 2599,\n", + " 2756,\n", + " 3542,\n", + " 2040,\n", + " 3066,\n", + " 3541,\n", + " 1823,\n", + " 1482,\n", + " 1651,\n", + " 1652,\n", + " 2311,\n", + " 2460,\n", + " 3836,\n", + " 2123,\n", + " 2785,\n", + " 3760,\n", + " 2786,\n", + " 3406,\n", + " 2533,\n", + " 1738,\n", + " 2632,\n", + " 1907,\n", + " 2061,\n", + " 1822,\n", + " 2236,\n", + " 1908,\n", + " 2264,\n", + " 1737,\n", + " 1593,\n", + " 1735,\n", + " 1404,\n", + " 1261,\n", + " 1594,\n", + " 3739,\n", + " 3787,\n", + " 3863,\n", + " 840,\n", + " 3537,\n", + " 1260,\n", + " 1405,\n", + " 3343,\n", + " 2060,\n", + " 3661,\n", + " 2631,\n", + " 3593,\n", + " 3294,\n", + " 3662,\n", + " 3030,\n", + " 3031,\n", + " 2690,\n", + " 3538,\n", + " 3738,\n", + " 3216,\n", + " 3732,\n", + " 3770,\n", + " 834,\n", + " 504,\n", + " 507,\n", + " 295,\n", + " 392,\n", + " 3764,\n", + " 468,\n", + " 162,\n", + " 332,\n", + " 42,\n", + " 192,\n", + " 95,\n", + " 127,\n", + " 193,\n", + " 508,\n", + " 578,\n", + " 2797,\n", + " 1701,\n", + " 2585,\n", + " 870,\n", + " 446,\n", + " 736,\n", + " 3129,\n", + " 869,\n", + " 3180,\n", + " 3319,\n", + " 3763,\n", + " 3038,\n", + " 737,\n", + " 3510,\n", + " 445,\n", + " 299,\n", + " 408,\n", + " 407,\n", + " 2798,\n", + " 3130,\n", + " 2980,\n", + " 3078,\n", + " 1586,\n", + " 1767,\n", + " 503,\n", + " 481,\n", + " 574,\n", + " 631,\n", + " 2981,\n", + " 576,\n", + " 577,\n", + " 575,\n", + " 339,\n", + " 573,\n", + " 3220,\n", + " 738,\n", + " 3765,\n", + " 1067,\n", + " 1762,\n", + " 1763,\n", + " 1766,\n", + " 296,\n", + " 502,\n", + " 1236,\n", + " 1237,\n", + " 999,\n", + " 1403,\n", + " 1309,\n", + " 228,\n", + " 231,\n", + " 370,\n", + " 517,\n", + " 2337,\n", + " 2711,\n", + " 2303,\n", + " 3463,\n", + " 3466,\n", + " 217,\n", + " 2679,\n", + " 3439,\n", + " 755,\n", + " 603,\n", + " 1508,\n", + " 3526,\n", + " 2362,\n", + " 2680,\n", + " 3438,\n", + " 3442,\n", + " 2671,\n", + " 3440,\n", + " 3583,\n", + " 3245,\n", + " 3746,\n", + " 932,\n", + " 2450,\n", + " 3239,\n", + " 3072,\n", + " 3671,\n", + " 3807,\n", + " 3806,\n", + " 3808,\n", + " 3310,\n", + " 3311,\n", + " 3472,\n", + " 3034,\n", + " 3035,\n", + " 3036,\n", + " 1352,\n", + " 3803,\n", + " 3804,\n", + " 2978,\n", + " 3143,\n", + " 3142,\n", + " 2890,\n", + " 3135,\n", + " 3136,\n", + " 3131,\n", + " 3141,\n", + " 3137,\n", + " 3133,\n", + " 3140,\n", + " 3139,\n", + " 3132,\n", + " 3134,\n", + " 2578,\n", + " 2446,\n", + " 2524,\n", + " 2601,\n", + " 2602,\n", + " 2331,\n", + " 2398,\n", + " 2445,\n", + " 2243,\n", + " 2122,\n", + " 2241,\n", + " 1973,\n", + " 2332,\n", + " 2330,\n", + " 3805,\n", + " 220,\n", + " 1503,\n", + " 1219,\n", + " 2577,\n", + " 3138,\n", + " 2176,\n", + " 1348,\n", + " 1640,\n", + " 1063,\n", + " 1634,\n", + " 1639,\n", + " 1807,\n", + " 1602,\n", + " 1632,\n", + " 2727,\n", + " 2044,\n", + " 2891,\n", + " 936,\n", + " 2399,\n", + " 2334,\n", + " 1760,\n", + " 2121,\n", + " 634,\n", + " 933,\n", + " 87,\n", + " 511,\n", + " 369,\n", + " 368,\n", + " 602,\n", + " 9,\n", + " 8,\n", + " 466,\n", + " 90,\n", + " 165,\n", + " 10,\n", + " 91,\n", + " 88,\n", + " 89,\n", + " 273,\n", + " 365,\n", + " 333,\n", + " 633,\n", + " 934,\n", + " 366,\n", + " 31,\n", + " 134,\n", + " 245,\n", + " 137,\n", + " 225,\n", + " 1014,\n", + " 226,\n", + " 364,\n", + " 632,\n", + " 227,\n", + " 1603,\n", + " 224,\n", + " 229,\n", + " 1066,\n", + " 363,\n", + " 1604,\n", + " 2914,\n", + " 1933,\n", + " 2012,\n", + " 1350,\n", + " 1773,\n", + " 47,\n", + " 1582,\n", + " 904,\n", + " 906,\n", + " 1507,\n", + " 2617,\n", + " 716,\n", + " 717,\n", + " 604,\n", + " 1774,\n", + " 2441,\n", + " 2505,\n", + " 1349,\n", + " 991,\n", + " 1825,\n", + " 1826,\n", + " 987,\n", + " 988,\n", + " 1140,\n", + " 1504,\n", + " 905,\n", + " 1506,\n", + " 1638,\n", + " 1987,\n", + " 1989,\n", + " 1505,\n", + " 1985,\n", + " 1986,\n", + " 1988,\n", + " 1509,\n", + " 1984,\n", + " 989,\n", + " 990,\n", + " 1217,\n", + " 45,\n", + " 46,\n", + " 2172,\n", + " 2173,\n", + " 2581,\n", + " 1794,\n", + " 2021,\n", + " 2579,\n", + " 1849,\n", + " 2580,\n", + " 2582,\n", + " 2576,\n", + " 2997,\n", + " 802,\n", + " 882,\n", + " 878,\n", + " 879,\n", + " 1847,\n", + " 1848,\n", + " 1266,\n", + " 1398,\n", + " 1267,\n", + " 1399,\n", + " 2233,\n", + " 1357,\n", + " 1359,\n", + " 1360,\n", + " 1358,\n", + " 1183,\n", + " 2022,\n", + " 3117,\n", + " 3120,\n", + " 3118,\n", + " 2764,\n", + " 2928,\n", + " 3441,\n", + " 2444,\n", + " 2681,\n", + " 2442,\n", + " 3008,\n", + " 448,\n", + " 1515,\n", + " 320,\n", + " 323,\n", + " 449,\n", + " 2299,\n", + " 2167,\n", + " 3006,\n", + " 1517,\n", + " 3465,\n", + " 3792,\n", + " 1745,\n", + " 2998,\n", + " 3491,\n", + " 3000,\n", + " 3005,\n", + " 2999,\n", + " 3001,\n", + " 3002,\n", + " 3003,\n", + " 3007,\n", + " 3171,\n", + " 1519,\n", + " 957,\n", + " 1079,\n", + " 1078,\n", + " 955,\n", + " 1081,\n", + " 1672,\n", + " 3170,\n", + " 1082,\n", + " 3169,\n", + " 1522,\n", + " 1898,\n", + " 2168,\n", + " 2171,\n", + " 2761,\n", + " 3004,\n", + " 93,\n", + " 321,\n", + " 515,\n", + " 94,\n", + " 322,\n", + " 688,\n", + " 883,\n", + " 2400,\n", + " 803,\n", + " 202,\n", + " 1400,\n", + " 1401,\n", + " 373,\n", + " 2030,\n", + " 2027,\n", + " 2032,\n", + " 2035,\n", + " 2023,\n", + " 2025,\n", + " 2028,\n", + " 2031,\n", + " 2033,\n", + " 2026,\n", + " 2024,\n", + " 2036,\n", + " 2440,\n", + " 2626,\n", + " 2110,\n", + " 2574,\n", + " 2770,\n", + " 3676,\n", + " 2202,\n", + " 2254,\n", + " 2479,\n", + " 270,\n", + " 2569,\n", + " 3589,\n", + " 1143,\n", + " 858,\n", + " 381,\n", + " 2420,\n", + " 566,\n", + " 1961,\n", + " 465,\n", + " 1852,\n", + " 3845,\n", + " 789,\n", + " 1046,\n", + " 830,\n", + " 1292,\n", + " 831,\n", + " 1410,\n", + " 1962,\n", + " 3829,\n", + " 2114,\n", + " 2425,\n", + " 3233,\n", + " 1418,\n", + " 1662,\n", + " 2221,\n", + " 2507,\n", + " 623,\n", + " 1204,\n", + " 3697,\n", + " 3612,\n", + " 1374,\n", + " 2,\n", + " 1343,\n", + " 3639,\n", + " 1051,\n", + " 3390,\n", + " 2089,\n", + " 3389,\n", + " 1487,\n", + " 2069,\n", + " 2508,\n", + " 1501,\n", + " 1864,\n", + " 121,\n", + " 3811,\n", + " 3295,\n", + " 2165,\n", + " 2128,\n", + " 3720,\n", + " 1366,\n", + " 1663,\n", + " 1469,\n", + " 1871,\n", + " 1936,\n", + " 2487,\n", + " 3341,\n", + " 1591,\n", + " 1956,\n", + " 155,\n", + " 778,\n", + " 913,\n", + " 1890,\n", + " 1699,\n", + " 2877,\n", + " 1159,\n", + " 2557,\n", + " 1060,\n", + " 3489,\n", + " 1037,\n", + " 3752,\n", + " 304,\n", + " 3751,\n", + " 3404,\n", + " 40,\n", + " 3338,\n", + " 428,\n", + " 430,\n", + " 1883,\n", + " 1628,\n", + " 1276,\n", + " 1806,\n", + " 2423,\n", + " 1483,\n", + " 1998,\n", + " 1326,\n", + " 2691,\n", + " 804,\n", + " 2056,\n", + " 427,\n", + " 1705,\n", + " 3545,\n", + " 3817,\n", + " 740,\n", + " 3092,\n", + " 2884,\n", + " 3148,\n", + " 2099,\n", + " 2120,\n", + " 2903,\n", + " 3723,\n", + " 3199,\n", + " 3590,\n", + " 2162,\n", + " 2305,\n", + " 2659,\n", + " 1967,\n", + " 3756,\n", + " 1176,\n", + " 312,\n", + " 2506,\n", + " 376,\n", + " 500,\n", + " 722,\n", + " 2101,\n", + " 282,\n", + " 1246,\n", + " 1378,\n", + " 892,\n", + " 1377,\n", + " 2921,\n", + " 3855,\n", + " 2675,\n", + " 2935,\n", + " 2178,\n", + " 1363,\n", + " 1730,\n", + " 2385,\n", + " 2390,\n", + " 2186,\n", + " 1256,\n", + " 2106,\n", + " 1257,\n", + " 2164,\n", + " 2503,\n", + " 2539,\n", + " 3495,\n", + " 104,\n", + " 1931,\n", + " 1678,\n", + " 1951,\n", + " 3266,\n", + " 1417,\n", + " 3749,\n", + " 2916,\n", + " 212,\n", + " 19,\n", + " 211,\n", + " 1978,\n", + " 606,\n", + " 463,\n", + " 2458,\n", + " 3268,\n", + " 2873,\n", + " 1887,\n", + " 2227,\n", + " 1556,\n", + " 1214,\n", + " 1544,\n", + " 1888,\n", + " 1808,\n", + " 1889,\n", + " 2228,\n", + " 2408,\n", + " 2242,\n", + " 1755,\n", + " 1976,\n", + " 59,\n", + " 3423,\n", + " 3614,\n", + " 3011,\n", + " 3082,\n", + " 1069,\n", + " 3850,\n", + " 547,\n", + " 3453,\n", + " 3621,\n", + " 1550,\n", + " 1869,\n", + " 812,\n", + " 2866,\n", + " 958,\n", + " 1027,\n", + " 435,\n", + " 3780,\n", + " 3649,\n", + " 835,\n", + " 3033,\n", + " 2335,\n", + " 3857,\n", + " 3485,\n", + " 3809,\n", + " 60,\n", + " 3074,\n", + " 100,\n", + " 597,\n", + " 1365,\n", + " 1490,\n", + " 2734,\n", + " 2867,\n", + " 1141,\n", + " 1905,\n", + " 2347,\n", + " 1613,\n", + " 2312,\n", + " 726,\n", + " 2452,\n", + " 262,\n", + " 2129,\n", + " 3578,\n", + " 3778,\n", + " 1999,\n", + " 2150,\n", + " 3607,\n", + " 3025,\n", + " 1339,\n", + " 3608,\n", + " 706,\n", + " 1442,\n", + " 550,\n", + " 1608,\n", + " 2206,\n", + " 3494,\n", + " 393,\n", + " 1443,\n", + " 554,\n", + " 764,\n", + " 690,\n", + " 281,\n", + " 459,\n", + " 689,\n", + " 556,\n", + " 171,\n", + " 553,\n", + " 691,\n", + " 1857,\n", + " 405,\n", + " 551,\n", + " 2568,\n", + " 2411,\n", + " 483,\n", + " 941,\n", + " 2085,\n", + " 978,\n", + " 33,\n", + " 406,\n", + " 1543,\n", + " 1122,\n", + " 3625,\n", + " 3626,\n", + " 947,\n", + " 1258,\n", + " 1561,\n", + " 3277,\n", + " 1259,\n", + " 3019,\n", + " 1123,\n", + " 2781,\n", + " 3848,\n", + " 3846,\n", + " 3847,\n", + " 2284,\n", + " 3779,\n", + " 1231,\n", + " 1513,\n", + " 620,\n", + " 1317,\n", + " 1318,\n", + " 1734,\n", + " 2163,\n", + " 3685,\n", + " 619,\n", + " 1894,\n", + " 1531,\n", + " 2908,\n", + " 758,\n", + " 1926,\n", + " 3798,\n", + " 1696,\n", + " 1432,\n", + " 698,\n", + " 1895,\n", + " 3069,\n", + " 1532,\n", + " 1992,\n", + " 3070,\n", + " 3799,\n", + " 1619,\n", + " 761,\n", + " 1885,\n", + " 1271,\n", + " 759,\n", + " 1431,\n", + " 1533,\n", + " 3383,\n", + " 1270,\n", + " 895,\n", + " 1085,\n", + " 1234,\n", + " 1030,\n", + " 1656,\n", + " 713,\n", + " 3527,\n", + " 621,\n", + " 2852,\n", + " 161,\n", + " 1416,\n", + " 401,\n", + " 1759,\n", + " 1011,\n", + " 1993,\n", + " 1028,\n", + " 607,\n", + " 746,\n", + " 977,\n", + " 2309,\n", + " 2124,\n", + " 2006,\n", + " 2005,\n", + " 2455,\n", + " 70,\n", + " 334,\n", + " 2049,\n", + " 5,\n", + " 1893,\n", + " 1551,\n", + " 2454,\n", + " 2954,\n", + " 3712,\n", + " 2063,\n", + " 2664,\n", + " 2792,\n", + " 2527,\n", + " 2629,\n", + " 3184,\n", + " 3270,\n", + " 2510,\n", + " 2603,\n", + " 3740,\n", + " 1886,\n", + " 2459,\n", + " 2369,\n", + " 2654,\n", + " 1136,\n", + " 2421,\n", + " 1038,\n", + " 3469,\n", + " 1052,\n", + " 1238,\n", + " 388,\n", + " 744,\n", + " 3096,\n", + " 1041,\n", + " 1979,\n", + " 2495,\n", + " 1039,\n", + " 1040,\n", + " 2219,\n", + " 3824,\n", + " 1383,\n", + " 398,\n", + " 781,\n", + " 2521,\n", + " 782,\n", + " 187,\n", + " 297,\n", + " 263,\n", + " 2923,\n", + " 3575,\n", + " 1557,\n", + " 1718,\n", + " 1863,\n", + " 2512,\n", + " 1729,\n", + " 599,\n", + " 926,\n", + " 1877,\n", + " 485,\n", + " 927,\n", + " 1502,\n", + " 394,\n", + " 1445,\n", + " 395,\n", + " 2389,\n", + " 1715,\n", + " 1716,\n", + " 328,\n", + " 1558,\n", + " 605,\n", + " 1444,\n", + " 776,\n", + " 1717,\n", + " 2924,\n", + " 327,\n", + " 3451,\n", + " 2514,\n", + " 2755,\n", + " 2708,\n", + " 1878,\n", + " 2513,\n", + " 976,\n", + " 1254,\n", + " 973,\n", + " 676,\n", + " 891,\n", + " 1094,\n", + " 841,\n", + " 1095,\n", + " 564,\n", + " 565,\n", + " 1601,\n", + " 3658,\n", + " 1372,\n", + " 1945,\n", + " 1921,\n", + " 456,\n", + " 856,\n", + " 743,\n", + " 1306,\n", + " 1746,\n", + " 1824,\n", + " 3014,\n", + " 3259,\n", + " 1337,\n", + " 2701,\n", + " 3015,\n", + " 2788,\n", + " 3125,\n", + " 3493,\n", + " 3377,\n", + " 3642,\n", + " 1354,\n", + " 823,\n", + " 3093,\n", + " 1616,\n", + " 3618,\n", + " 3085,\n", + " 3677,\n", + " 3115,\n", + " 1903,\n", + " 3232,\n", + " 3386,\n", + " 236,\n", + " 815,\n", + " 3767,\n", + " 1798,\n", + " 3414,\n", + " 2943,\n", + " 3176,\n", + " 326,\n", + " 1080,\n", + " 3692,\n", + " 2437,\n", + " 2407,\n", + " 2656,\n", + " 1314,\n", + " 3227,\n", + " 739,\n", + " 3226,\n", + " 3455,\n", + " 3413,\n", + " 3854,\n", + " 3415,\n", + " 3416,\n", + " 3530,\n", + " 3108,\n", + " 3225,\n", + " 3228,\n", + " 772,\n", + " 833,\n", + " 2964,\n", + " 241,\n", + " 1596,\n", + " 2196,\n", + " 145,\n", + " 3579,\n", + " 73,\n", + " 421,\n", + " 1904,\n", + " 3107,\n", + " 2372,\n", + " 2933,\n", + " 305,\n", + " 3744,\n", + " 3774,\n", + " 2795,\n", + " 2064,\n", + " 1313,\n", + " 3535,\n", + " 3717,\n", + " 942,\n", + " 1797,\n", + " 2702,\n", + " 832,\n", + " 2552,\n", + " 2554,\n", + " 2710,\n", + " 2250,\n", + " 2461,\n", + " 922,\n", + " 2757,\n", + " 3620,\n", + " 3711,\n", + " 2807,\n", + " 2806,\n", + " 1268,\n", + " 2881,\n", + " 1470,\n", + " 3531,\n", + " 2805,\n", + " 3391,\n", + " 3617,\n", + " 3615,\n", + " 3616,\n", + " 2553,\n", + " 2925,\n", + " 2709,\n", + " 1097,\n", + " 1809,\n", + " 3533,\n", + " 3775,\n", + " 1226,\n", + " 3156,\n", + " 3490,\n", + " 3534,\n", + " 422,\n", + " 3619,\n", + " 3249,\n", + " 3291,\n", + " 3755,\n", + " 3449,\n", + " 3158,\n", + " 2589,\n", + " 172,\n", + " 3424,\n", + " 2678,\n", + " 809,\n", + " 2966,\n", + " 1104,\n", + " 2422,\n", + " 3273,\n", + " 2799,\n", + " 3532,\n", + " 484,\n", + " 3866,\n", + " 615,\n", + " 953,\n", + " 3743,\n", + " 35,\n", + " 613,\n", + " 4,\n", + " 3525,\n", + " 99,\n", + " 1297,\n", + " 837,\n", + " 337,\n", + " 2251,\n", + " 151,\n", + " 1373,\n", + " 1240,\n", + " 176,\n", + " 177,\n", + " 728,\n", + " 174,\n", + " 1161,\n", + " 1024,\n", + " 592,\n", + " 813,\n", + " 2189,\n", + " 771,\n", + " 74,\n", + " 3603,\n", + " 719,\n", + " 721,\n", + " 417,\n", + " 71,\n", + " 544,\n", + " 917,\n", + " 1311,\n", + " 3327,\n", + " 2906,\n", + " 3300,\n", + " 2214,\n", + " 3741,\n", + " 2067,\n", + " 3195,\n", + " 2066,\n", + " 1909,\n", + " 1952,\n", + " 2772,\n", + " 2995,\n", + " 1312,\n", + " 1310,\n", + " 1411,\n", + " 1178,\n", + " 188,\n", + " 1488,\n", + " 814,\n", + " 3024,\n", + " 522,\n", + " 2065,\n", + " 2273,\n", + " 2879,\n", + " 521,\n", + " 2301,\n", + " 2149,\n", + " 1023,\n", + " 523,\n", + " 810,\n", + " 639,\n", + " 23,\n", + " 201,\n", + " 718,\n", + " 423,\n", + " 720,\n", + " 921,\n", + " 684,\n", + " 424,\n", + " 681,\n", + " 682,\n", + " 308,\n", + " 683,\n", + " 884,\n", + " 425,\n", + " 1054,\n", + " 1177,\n", + " 454,\n", + " 1385,\n", + " 2391,\n", + " 3772,\n", + " 2630,\n", + " 3773,\n", + " 3835,\n", + " 2790,\n", + " 2789,\n", + " 3246,\n", + " 512,\n", + " 362,\n", + " 56,\n", + " 361,\n", + " 472,\n", + " 470,\n", + " 471,\n", + " 3782,\n", + " 1607,\n", + " 2562,\n", + " 768,\n", + " 543,\n", + " 2593,\n", + " 2456,\n", + " 2474,\n", + " 2723,\n", + " 120,\n", + " 1304,\n", + " 2059,\n", + " 591,\n", + " 1303,\n", + " 2153,\n", + " 2018,\n", + " 2058,\n", + " 1072,\n", + " 1860,\n", + " 34,\n", + " 601,\n", + " 1302,\n", + " 1692,\n", + " 1210,\n", + " 1858,\n", + " 1413,\n", + " 1414,\n", + " 84,\n", + " 1859,\n", + " 399,\n", + " 589,\n", + " 287,\n", + " 2752,\n", + " 196,\n", + " 1119,\n", + " 384,\n", + " 383,\n", + " 1920,\n", + " 2249,\n", + " 1120,\n", + " 1415,\n", + " 1305,\n", + " 1,\n", + " 622,\n", + " 1919,\n", + " 1817,\n", + " 714,\n", + " 712,\n", + " 970,\n", + " 787,\n", + " 341,\n", + " 477,\n", + " 1058,\n", + " 1655,\n", + " 410,\n", + " 1815,\n", + " 701,\n", + " 1285,\n", + " 400,\n", + " 1620,\n", + " 700,\n", + " 552,\n", + " 555,\n", + " 699,\n", + " 857,\n", + " 108,\n", + " 859,\n", + " 1132,\n", + " 1816,\n", + " 1571,\n", + " 1965,\n", + " 1572,\n", + " 3726,\n", + " 3783,\n", + " 1892,\n", + " 2971,\n", + " 1673,\n", + " 2972,\n", + " 1376,\n", + " 1722,\n", + " 1925,\n", + " 2409,\n", + " 1462,\n", + " 1654,\n", + " 2883,\n", + " 1751,\n", + " 1475,\n", + " 1872,\n", + " 3040,\n", + " 1065,\n", + " 2904,\n", + " 2430,\n", + " 3384,\n", + " 2875,\n", + " 3336,\n", + " 2766,\n", + " 3150,\n", + " 3186,\n", + " 3474,\n", + " 801,\n", + " 827,\n", + " 289,\n", + " 290,\n", + " 696,\n", + " 2833,\n", + " 3112,\n", + " 2002,\n", + " 1854,\n", + " 1917,\n", + " 1916,\n", + " 2310,\n", + " 2216,\n", + " 2676,\n", + " 2830,\n", + " 2218,\n", + " 2831,\n", + " 1724,\n", + " 2217,\n", + " 2677,\n", + " 3750,\n", + " 667,\n", + " 839,\n", + " 2113,\n", + " 191,\n", + " 195,\n", + " 666,\n", + " 2733,\n", + " 292,\n", + " 415,\n", + " 2111,\n", + " 2104,\n", + " 272,\n", + " 495,\n", + " 44,\n", + " 587,\n", + " 2112,\n", + " 3061,\n", + " 2937,\n", + " 697,\n", + " 1356,\n", + " 1235,\n", + " 928,\n", + " 1375,\n", + " 1679,\n", + " 158,\n", + " 1552,\n", + " 221,\n", + " 156,\n", + " 490,\n", + " 635,\n", + " 2530,\n", + " 318,\n", + " 3458,\n", + " 2052,\n", + " 2345,\n", + " 3223,\n", + " 180,\n", + " 968,\n", + " 1880,\n", + " 2531,\n", + " 1138,\n", + " 157,\n", + " 1896,\n", + " 754,\n", + " 1546,\n", + " 2532,\n", + " 1175,\n", + " 2105,\n", + " 741,\n", + " 1433,\n", + " 1096,\n", + " 1391,\n", + " 2109,\n", + " 1139,\n", + " 2367,\n", + " 581,\n", + " 969,\n", + " 966,\n", + " 967,\n", + " 3255,\n", + " 351,\n", + " 86,\n", + " 199,\n", + " 414,\n", + " 965,\n", + " 1162,\n", + " 2115,\n", + " 2836,\n", + " 2731,\n", + " 3511,\n", + " 389,\n", + " 1137,\n", + " 2497,\n", + " 2732,\n", + " 2910,\n", + " 2834,\n", + " 3251,\n", + " 1553,\n", + " 294,\n", + " 1948,\n", + " 1251,\n", + " 1496,\n", + " 3376,\n", + " 1215,\n", + " 2835,\n", + " 3669,\n", + " 533,\n", + " 711,\n", + " 2207,\n", + " 1071,\n", + " 2361,\n", + " 3459,\n", + " 3253,\n", + " 1592,\n", + " 1820,\n", + " 1747,\n", + " 1749,\n", + " 3371,\n", + " 2989,\n", + " 3373,\n", + " 1549,\n", + " 2597,\n", + " 1252,\n", + " 1047,\n", + " 2051,\n", + " 2103,\n", + " 2183,\n", + " 1554,\n", + " 2102,\n", + " 2793,\n", + " 2320,\n", + " 767,\n", + " 846,\n", + " 0,\n", + " 608,\n", + " 637,\n", + " 956,\n", + " 133,\n", + " 625,\n", + " 687,\n", + " 580,\n", + " 63,\n", + " 48,\n", + " 183,\n", + " 22,\n", + " 345,\n", + " 286,\n", + " 200,\n", + " 150,\n", + " 439,\n", + " 1307,\n", + " 92,\n", + " 342,\n", + " 626,\n", + " 438,\n", + " 598,\n", + " 531,\n", + " 708,\n", + " 2290,\n", + " 2938,\n", + " 3668,\n", + " 3665,\n", + " 2704,\n", + " 3670,\n", + " 769,\n", + " 3613,\n", + " 1173,\n", + " 1761,\n", + " 2300,\n", + " 748,\n", + " 527,\n", + " 609,\n", + " 1498,\n", + " 1497,\n", + " 3234,\n", + " 3235,\n", + " 418,\n", + " 3437,\n", + " 3556,\n", + " 3303,\n", + " 3701,\n", + " 3515,\n", + " 3710,\n", + " 2749,\n", + " 2804,\n", + " 3571,\n", + " 3769,\n", + " 3301,\n", + " 3768,\n", + " 2046,\n", + " 794,\n", + " 1001,\n", + " 3360,\n", + " 3558,\n", + " 2257,\n", + " 1364,\n", + " 1796,\n", + " 2945,\n", + " 3444,\n", + " 3302,\n", + " 1947,\n", + " 2780,\n", + " 3445,\n", + " 2907,\n", + " 2462,\n", + " 2802,\n", + " 2746,\n", + " 3063,\n", + " 2915,\n", + " 3833,\n", + " 2017,\n", + " 1981,\n", + " 2351,\n", + " 2803,\n", + " 2810,\n", + " 2350,\n", + " 2433,\n", + " 1795,\n", + " 3725,\n", + " 3064,\n", + " 1793,\n", + " 3724,\n", + " 749,\n", + " 636,\n", + " 2019,\n", + " 2528,\n", + " 1110,\n", + " 371,\n", + " 480,\n", + " 663,\n", + " 3834,\n", + " 2373,\n", + " 3155,\n", + " 3659,\n", + " 175,\n", + " 3640,\n", + " 2519,\n", + " 2635,\n", + " 3258,\n", + " 315,\n", + " 3154,\n", + " 3023,\n", + " 1384,\n", + " 2520,\n", + " 1585,\n", + " 664,\n", + " 992,\n", + " 3153,\n", + " 770,\n", + " 3152,\n", + " 178,\n", + " 2851,\n", + " 3628,\n", + " 2484,\n", + " 3016,\n", + " 3173,\n", + " 2843,\n", + " 3832,\n", + " 1932,\n", + " 2288,\n", + " 3731,\n", + " 81,\n", + " 3660,\n", + " 2940,\n", + " 3562,\n", + " 945,\n", + " 3187,\n", + " 3330,\n", + " 3185,\n", + " 17,\n", + " 674,\n", + " 464,\n", + " 2231,\n", + " 2336,\n", + " 2598,\n", + " 101,\n", + " 3324,\n", + " 2020,\n", + " 1677,\n", + " 2213,\n", + " 2404,\n", + " 240,\n", + " 3306,\n", + " 375,\n", + " 539,\n", + " 540,\n", + " 3721,\n", + " 1019,\n", + " 907,\n", + " 853,\n", + " 1017,\n", + " 1111,\n", + " 1113,\n", + " 1117,\n", + " 2268,\n", + " 3666,\n", + " 2591,\n", + " 2084,\n", + " 2169,\n", + " 852,\n", + " 2083,\n", + " 1167,\n", + " 939,\n", + " 1166,\n", + " 1918,\n", + " 209,\n", + " 210,\n", + " 975,\n", + " 1018,\n", + " 971,\n", + " 69,\n", + " 940,\n", + " 1688,\n", + " 730,\n", + " 2211,\n", + " 2212,\n", + " 2522,\n", + " 2265,\n", + " 2754,\n", + " 2592,\n", + " 3450,\n", + " 3060,\n", + " 2753,\n", + " 2170,\n", + " 2174,\n", + " 2406,\n", + " 3059,\n", + " 105,\n", + " 2364,\n", + " 2896,\n", + " 1611,\n", + " 1076,\n", + " 3479,\n", + " 2703,\n", + " 889,\n", + " 125,\n", + " 2209,\n", + " 396,\n", + " 549,\n", + " 916,\n", + " 2166,\n", + " 2771,\n", + " 851,\n", + " 268,\n", + " 572,\n", + " 2957,\n", + " 285,\n", + " 126,\n", + " 128,\n", + " 2344,\n", + " 1253,\n", + " 1727,\n", + " 979,\n", + " 2376,\n", + " 2230,\n", + " 2465,\n", + " 2848,\n", + " 3260,\n", + " 3366,\n", + " 2464,\n", + " 2847,\n", + " 3367,\n", + " 3582,\n", + " 3198,\n", + " 3513,\n", + " 3580,\n", + " 3581,\n", + " 1381,\n", + " 2934,\n", + " 693,\n", + " 1160,\n", + " 2809,\n", + " 1534,\n", + " 557,\n", + " 2550,\n", + " 2551,\n", + " 3029,\n", + " 2811,\n", + " 671,\n", + " 1397,\n", + " 850,\n", + " 949,\n", + " 725,\n", + " 996,\n", + " 1128,\n", + " 1129,\n", + " 727,\n", + " 997,\n", + " 1347,\n", + " 2047,\n", + " 2882,\n", + " 2048,\n", + " 1910,\n", + " 1911,\n", + " 1220,\n", + " 562,\n", + " 2476,\n", + " 76,\n", + " 948,\n", + " 672,\n", + " 673,\n", + " 692,\n", + " 1247,\n", + " 561,\n", + " 1185,\n", + " 1186,\n", + " 1188,\n", + " 998,\n", + " 1016,\n", + " 2015,\n", + " 237,\n", + " 2050,\n", + " 2658,\n", + " 2319,\n", + " 2013,\n", + " 2014,\n", + " 1341,\n", + " 930,\n", + " 2657,\n", + " 129,\n", + " 994,\n", + " 3084,\n", + " 2825,\n", + " 478,\n", + " 3398,\n", + " 3588,\n", + " 3400,\n", + " 3736,\n", + " 3797,\n", + " 3484,\n", + " 7,\n", + " 247,\n", + " 248,\n", + " 2511,\n", + " 2108,\n", + " 2595,\n", + " 1682,\n", + " 2827,\n", + " 3705,\n", + " 959,\n", + " 866,\n", + " 914,\n", + " 2478,\n", + " 3192,\n", + " 3735,\n", + " 3481,\n", + " 2009,\n", + " 1452,\n", + " 2232,\n", + " 1525,\n", + " 2594,\n", + " 2993,\n", + " 3869,\n", + " 2824,\n", + " 2828,\n", + " 3326,\n", + " 3794,\n", + " 2902,\n", + " 3703,\n", + " 3704,\n", + " 3868,\n", + " 3325,\n", + " 3793,\n", + " 3231,\n", + " 3585,\n", + " 2203,\n", + " 2263,\n", + " 1589,\n", + " 1590,\n", + " 1527,\n", + " 2267,\n", + " 1618,\n", + " 2266,\n", + " 3193,\n", + " 2991,\n", + " 3399,\n", + " 2779,\n", + " 2618,\n", + " 2826,\n", + " 2740,\n", + " 3586,\n", + " 2736,\n", + " 2778,\n", + " 1284,\n", + " 1975,\n", + " 2053,\n", + " 1938,\n", + " 2180,\n", + " 3087,\n", + " 2620,\n", + " 2622,\n", + " 3086,\n", + " 2548,\n", + " 3587,\n", + " 1232,\n", + " 1355,\n", + " 1450,\n", + " 2007,\n", + " 2126,\n", + " 2547,\n", + " 1972,\n", + " 2125,\n", + " 1451,\n", + " 1974,\n", + " 867,\n", + " 404,\n", + " 614,\n", + " 616,\n", + " 915,\n", + " 61,\n", + " 358,\n", + " 316,\n", + " 1025,\n", + " 822,\n", + " 1184,\n", + " 390,\n", + " 1026,\n", + " 1182,\n", + " 1233,\n", + " 845,\n", + " 1394,\n", + " 2356,\n", + " 3722,\n", + " 2909,\n", + " 3630,\n", + " 3240,\n", + " 3241,\n", + " 3238,\n", + " 3632,\n", + " 2953,\n", + " 2768,\n", + " 864,\n", + " 278,\n", + " 455,\n", + " 703,\n", + " 2432,\n", + " 1084,\n", + " 1249,\n", + " 1192,\n", + " 1353,\n", + " 1382,\n", + " 1680,\n", + " 3244,\n", + " 3467,\n", + " 2188,\n", + " 246,\n", + " 1207,\n", + " 1818,\n", + " 1923,\n", + " 1142,\n", + " 1968,\n", + " 498,\n", + " 2653,\n", + " 1202,\n", + " 234,\n", + " 1686,\n", + " 2185,\n", + " 2475,\n", + " 2947,\n", + " 3351,\n", + " 2648,\n", + " 2946,\n", + " 2258,\n", + " 3355,\n", + " 2010,\n", + " 107,\n", + " 355,\n", + " 546,\n", + " 2473,\n", + " 1837,\n", + " 2967,\n", + " 2743,\n", + " 3401,\n", + " 3825,\n", + " 2392,\n", + " 2647,\n", + " 612,\n", + " 3851,\n", + " 3021,\n", + " 3322,\n", + " 2584,\n", + " 3320,\n", + " 3321,\n", + " 2414,\n", + " 2918,\n", + " 242,\n", + " 378,\n", + " 3163,\n", + " 461,\n", + " 184,\n", + " 611,\n", + " 938,\n", + " 1164,\n", + " 1412,\n", + " 2068,\n", + " 252,\n", + " 3230,\n", + " 1330,\n", + " 2333,\n", + " 1495,\n", + " 1706,\n", + " 1580,\n", + " 1272,\n", + " 1048,\n", + " 610,\n", + " 763,\n", + " 541,\n", + " 3237,\n", + " 3871,\n", + " 3849,\n", + " 194,\n", + " 1213,\n", + " 1409,\n", + " 3584,\n", + " 2509,\n", + " 3205,\n", + " 3378,\n", + " 3062,\n", + " 3652,\n", + " 2979,\n", + " 3162,\n", + " 779,\n", + " 530,\n", + " 617,\n", + " 1212,\n", + " 1539,\n", + " 2705,\n", + " 475,\n", + " 775,\n", + " 3281,\n", + " 678,\n", + " 2297,\n", + " 3079,\n", + " 1939,\n", + " 3331,\n", + " 3346,\n", + " 3379,\n", + " 3646,\n", + " 3010,\n", + " 2878,\n", + " 2958,\n", + " 3507,\n", + " 3718,\n", + " 1588,\n", + " 1937,\n", + " 2926,\n", + " 1211,\n", + " 1573,\n", + " 2839,\n", + " 3097,\n", + " 3482,\n", + " 2566,\n", + " 1541,\n", + " 1991,\n", + " 1955,\n", + " 2403,\n", + " 1587,\n", + " 2127,\n", + " 1667,\n", + " 1851,\n", + " 1874,\n", + " 1884,\n", + " 1814,\n", + " 1913,\n", + " 1906,\n", + " 1980,\n", + " 2869,\n", + " 2494,\n", + " 2818,\n", + " 109,\n", + " 510,\n", + " 920,\n", + " 3,\n", + " 2375,\n", + " 173,\n", + " 836,\n", + " 385,\n", + " 1538,\n", + " 432,\n", + " 186,\n", + " 723,\n", + " 536,\n", + " 638,\n", + " 453,\n", + " 534,\n", + " 1091,\n", + " 2289,\n", + " 535,\n", + " 3190,\n", + " 1510,\n", + " 2927,\n", + " 148,\n", + " 149,\n", + " 2808,\n", + " 2360,\n", + " 3218,\n", + " 2572,\n", + " 2246,\n", + " 2405,\n", + " 2596,\n", + " 2692,\n", + " 3276,\n", + " 3502,\n", + " 1758,\n", + " 1757,\n", + " 2544,\n", + " 1725,\n", + " 181,\n", + " 1455,\n", + " 786,\n", + " 1287,\n", + " 1291,\n", + " 3282,\n", + " 3283,\n", + " 1126,\n", + " 1286,\n", + " 2016,\n", + " 2660,\n", + " 3802,\n", + " 2815,\n", + " 3487,\n", + " 2324,\n", + " 2965,\n", + " 3293,\n", + " 1112,\n", + " 2699,\n", + " 1791,\n", + " 1005,\n", + " 1790,\n", + " 123,\n", + " 3638,\n", + " 2387,\n", + " 1459,\n", + " 2294,\n", + " 2640,\n", + " 1833,\n", + " 112,\n", + " 2295,\n", + " 443,\n", + " 3434,\n", + " 1205,\n", + " 1206,\n", + " 1458,\n", + " 2259,\n", + " 1650,\n", + " 1653,\n", + " 1108,\n", + " 3528,\n", + " 900,\n", + " 3709,\n", + " 1323,\n", + " 3708,\n", + " 3478,\n", + " 1834,\n", + " 1964,\n", + " 954,\n", + " 3188,\n", + " 1835,\n", + " 1836,\n", + " 2118,\n", + " 2117,\n", + " 1963,\n", + " 1966,\n", + " 2248,\n", + " 1959,\n", + " 2116,\n", + " 1891,\n", + " 2119,\n", + " 1277,\n", + " 1756,\n", + " 114,\n", + " 747,\n", + " 2054,\n", + " 520,\n", + " 1685,\n", + " 113,\n", + " 115,\n", + " 117,\n", + " 118,\n", + " 116,\n", + " 119,\n", + " 1369,\n", + " 1370,\n", + " 1367,\n", + " 2586,\n", + " 1684,\n", + " 2735,\n", + " 1147,\n", + " 3357,\n", + " 3529,\n", + " 447,\n", + " 901,\n", + " 1146,\n", + " 902,\n", + " 898,\n", + " 899,\n", + " 462,\n", + " 2393,\n", + " 1456,\n", + " 2055,\n", + " 419,\n", + " 3206,\n", + " 1764,\n", + " 391,\n", + " 2889,\n", + " 1690,\n", + " 1802,\n", + " 3408,\n", + " 2874,\n", + " 820,\n", + " 2663,\n", + " 3046,\n", + " 3647,\n", + " 1454,\n", + " 865,\n", + " 2739,\n", + " 1098,\n", + " 1099,\n", + " 3896,\n", + " 964,\n", + " 1225,\n", + " 2741,\n", + " 1115,\n", + " 2738,\n", + " 2177,\n", + " 2282,\n", + " 2378,\n", + " 2285,\n", + " 3039,\n", + " 2283,\n", + " 2377,\n", + " 3194,\n", + " 2485,\n", + " 2819,\n", + " 2939,\n", + " 3475,\n", + " 2742,\n", + " 2737,\n", + " 2379,\n", + " 2380,\n", + " 1567,\n", + " 3894,\n", + " 2861,\n", + " 3476,\n", + " 1116,\n", + " 1566,\n", + " 3784,\n", + " 3895,\n", + " 2182,\n", + " 3041,\n", + " 2482,\n", + " 3124,\n", + " 1114,\n", + " 1422,\n", + " 3893,\n", + " 167,\n", + " 2374,\n", + " 3113,\n", + " 1782,\n", + " 1345,\n", + " 3114,\n", + " 912,\n", + " 1438,\n", + " 1439,\n", + " 1785,\n", + " 1789,\n", + " 1344,\n", + " 1783,\n", + " 2469,\n", + " 2669,\n", + " 3280,\n", + " 3759,\n", + " 3443,\n", + " 724,\n", + " 2901,\n", + " 2466,\n", + " 3420,\n", + " 2394,\n", + " 2395,\n", + " 3203,\n", + " 3591,\n", + " 3335,\n", + " 2081,\n", + " 3757,\n", + " 2643,\n", + " 2720,\n", + " 2341,\n", + " 2342,\n", + " 2346,\n", + " 2718,\n", + " 2082,\n", + " 2271,\n", + " 2272,\n", + " 2719,\n", + " 2721,\n", + " 3372,\n", + " 2796,\n", + " 2517,\n", + " 3109,\n", + " 1922,\n", + " 2467,\n", + " 2948,\n", + " 3020,\n", + " 1784,\n", + " 54,\n", + " 55,\n", + " 1612,\n", + " 2296,\n", + " 880,\n", + " 2292,\n", + " 1053,\n", + " 1723,\n", + " 3758,\n", + " 3566,\n", + " 3073,\n", + " 3304,\n", + " 590,\n", + " 3242,\n", + " 514,\n", + " 460,\n", + " 2899,\n", + " 3110,\n", + " 2155,\n", + " 1990,\n", + " 715,\n", + " 3202,\n", + " 2234,\n", + " 2269,\n", + " 2158,\n", + " 2270,\n", + " 3673,\n", + " 2950,\n", + " 239,\n", + " 2343,\n", + " 2900,\n", + " 3044,\n", + " 3045,\n", + " 2645,\n", + " 2776,\n", + " 2842,\n", + " 168,\n", + " 169,\n", + " 166,\n", + " 2468,\n", + " 3422,\n", + " 2080,\n", + " 3183,\n", + " 2898,\n", + " 3334,\n", + " 2644,\n", + " 3901,\n", + " 3370,\n", + " 3674,\n", + " 2516,\n", + " 3204,\n", + " 2996,\n", + " 3876,\n", + " 2642,\n", + " 3565,\n", + " 2951,\n", + " 2949,\n", + " 2952,\n", + " 3675,\n", + " 283,\n", + " 3374,\n", + " 3375,\n", + " 2154,\n", + " 2235,\n", + " 11,\n", + " 3111,\n", + " 207,\n", + " 2291,\n", + " 1224,\n", + " 1324,\n", + " 2208,\n", + " 2545,\n", + " 570,\n", + " 153,\n", + " 102,\n", + " 2665,\n", + " 110,\n", + " 219,\n", + " 13,\n", + " 111,\n", + " 238,\n", + " 2417,\n", + " 2316,\n", + " 3369,\n", + " 1681,\n", + " 2470,\n", + " 1542,\n", + " 1787,\n", + " 1396,\n", + " 1273,\n", + " 911,\n", + " 1437,\n", + " 1786,\n", + " 1788,\n", + " 2071,\n", + " 2542,\n", + " 2801,\n", + " 731,\n", + " 64,\n", + " 300,\n", + " 3217,\n", + " 735,\n", + " 43,\n", + " 2600,\n", + " 1461,\n", + " 3601,\n", + " 80,\n", + " 1846,\n", + " 2696,\n", + " 2313,\n", + " 3191,\n", + " 288,\n", + " 2252,\n", + " 2302,\n", + " 3126,\n", + " 1856,\n", + " 1473,\n", + " 2256,\n", + " 1882,\n", + " 1657,\n", + " 2088,\n", + " 545,\n", + " 560,\n", + " 1453,\n", + " 223,\n", + " 3350,\n", + " 1255,\n", + " 1595,\n", + " 413,\n", + " 3874,\n", + " 1449,\n", + " 1274,\n", + " 1615,\n", + " 1476,\n", + " 85,\n", + " 563,\n", + " 208,\n", + " 1805,\n", + " 379,\n", + " 103,\n", + " 2323,\n", + " 950,\n", + " 3353,\n", + " 3037,\n", + " 3667,\n", + " 433,\n", + " 1562,\n", + " 3577,\n", + " 3339,\n", + " 908,\n", + " 1332,\n", + " 842,\n", + " 1463,\n", + " 1671,\n", + " 2837,\n", + " 2134,\n", + " 2314,\n", + " 3742,\n", + " 457,\n", + " 497,\n", + " 2783,\n", + " 1732,\n", + " 1994,\n", + " 1163,\n", + " 946,\n", + " 1560,\n", + " 2321,\n", + " 3887,\n", + " 3520,\n", + " 3734,\n", + " 817,\n", + " 1540,\n", + " 1739,\n", + " 532,\n", + " 1093,\n", + " 122,\n", + " 3754,\n", + " 3165,\n", + " 3460,\n", + " 3885,\n", + " 694,\n", + " 910,\n", + " 695,\n", + " 1089,\n", + " 1010,\n", + " 1221,\n", + " 2079,\n", + " 372,\n", + " 1555,\n", + " 2729,\n", + " 1941,\n", + " 1335,\n", + " 1840,\n", + " 1480,\n", + " 2386,\n", + " 2625,\n", + " 877,\n", + " 244,\n", + " 1803,\n", + " 2401,\n", + " 2240,\n", + " 2546,\n", + " 2762,\n", + " 3337,\n", + " 3800,\n", + " 3083,\n", + " 3290,\n", + " 3873,\n", + " 182,\n", + " 420,\n", + " 222,\n", + " 346,\n", + " 1036,\n", + " 1664,\n", + " 3539,\n", + " 1208,\n", + " 2463,\n", + " 2092,\n", + " 2381,\n", + " 2821,\n", + " 1912,\n", + " 2583,\n", + " 1045,\n", + " 618,\n", + " 2260,\n", + " 2639,\n", + " 3761,\n", + " 3867,\n", + " 3075,\n", + " 3468,\n", + " 3349,\n", + " 3650,\n", + " 3172,\n", + " 3875,\n", + " 2905,\n", + " 3243,\n", + " 78,\n", + " 1958,\n", + " 3486,\n", + " 77,\n", + " 79,\n", + " 2634,\n", + " 1584,\n", + " 2920,\n", + " 317,\n", + " 766,\n", + " 1321,\n", + " 3094,\n", + " 765,\n", + " 1077,\n", + " 1004,\n", + " 2751,\n", + " 1075,\n", + " 1275,\n", + " 1491,\n", + " 1074,\n", + " 3776,\n", + " 919,\n", + " 3271,\n", + " 3385,\n", + " 2136,\n", + " 1322,\n", + " 1960,\n", + " 2135,\n", + " 1957,\n", + " 2435,\n", + " 2816,\n", + " 3095,\n", + " 3881,\n", + " 380,\n", + " 1929,\n", + " 2728,\n", + " 760,\n", + " 1940,\n", + " 2197,\n", + " 3648,\n", + " 3627,\n", + " 1196,\n", + " 863,\n", + " 1227,\n", + " 3267,\n", + " 3368,\n", + " 888,\n", + " 886,\n", + " 887,\n", + " 67,\n", + " 324,\n", + " 325,\n", + " 2876,\n", + " 3748,\n", + " 3051,\n", + " 3872,\n", + " 1158,\n", + " 3552,\n", + " 2070,\n", + " 3050,\n", + " 1346,\n", + " 41,\n", + " 434,\n", + " 2856,\n", + " 3128,\n", + " 3563,\n", + " 3071,\n", + " 3859,\n", + " 675,\n", + " 2865,\n", + " 849,\n", + " 2095,\n", + " 2791,\n", + " 1133,\n", + " 1263,\n", + " 1694,\n", + " 1812,\n", + " 274,\n", + " 409,\n", + " 2412,\n", + " 2774,\n", + " 3605,\n", + " 2773,\n", + " 3549,\n", + " 2500,\n", + " 2693,\n", + " 2181,\n", + " 3013,\n", + " 250,\n", + " 3492,\n", + " 1801,\n", + " 2800,\n", + " 486,\n", + " 1578,\n", + " 3229,\n", + " 3457,\n", + " 280,\n", + " 1087,\n", + " 3641,\n", + " 3091,\n", + " 3456,\n", + " 3864,\n", + " 2567,\n", + " 2483,\n", + " 138,\n", + " 3574,\n", + " 2832,\n", + " 3870,\n", + " 377,\n", + " 203,\n", + " 190,\n", + " 524,\n", + " 491,\n", + " 336,\n", + " 596,\n", + " 492,\n", + " 595,\n", + " 493,\n", + " 216,\n", + " 335,\n", + " 800,\n", + " 1134,\n", + " 3766,\n", + " 855,\n", + " 2087,\n", + " 1866,\n", + " 2493,\n", + " 2011,\n", + " 2201,\n", + " 1780,\n", + " 1648,\n", + " 3254,\n", + " 876,\n", + " 1009,\n", + " 1579,\n", + " 1156,\n", + " 1499,\n", + " 1683,\n", + " 1135,\n", + " 1055,\n", + " 2280,\n", + " 2388,\n", + " 2187,\n", + " 3054,\n", + " 3689,\n", + " 3462,\n", + " 983,\n", + " 1598,\n", + " 2523,\n", + " 3178,\n", + " 2985,\n", + " 3447,\n", + " 3177,\n", + " 2987,\n", + " 3448,\n", + " 1775,\n", + " 163,\n", + " 65,\n", + " 1530,\n", + " 2637,\n", + " 2590,\n", + " 1697,\n", + " 1325,\n", + " 1647,\n", + " 1428,\n", + " 1124,\n", + " 1744,\n", + " 1698,\n", + " 1839,\n", + " 1778,\n", + " 397,\n", + " 1457,\n", + " 2340,\n", + " 1970,\n", + " 2253,\n", + " 2093,\n", + " 3841,\n", + " 1969,\n", + " 1995,\n", + " 2157,\n", + " 2986,\n", + " 1389,\n", + " 3098,\n", + " 1821,\n", + " 944,\n", + " 2226,\n", + " 3403,\n", + " 2224,\n", + " 2225,\n", + " 235,\n", + " 143,\n", + " 705,\n", + " 75,\n", + " 144,\n", + " 1565,\n", + " 868,\n", + " 1564,\n", + " 3886,\n", + " 489,\n", + " 838,\n", + " 1044,\n", + " 1043,\n", + " 357,\n", + " 1726,\n", + " 3899,\n", + " 2194,\n", + " 3897,\n", + " 3405,\n", + " 2673,\n", + " 2605,\n", + " 3316,\n", + " 3317,\n", + " 24,\n", + " 2606,\n", + " 1218,\n", + " 2674,\n", + " 2130,\n", + " 2326,\n", + " 3518,\n", + " 3900,\n", + " 2137,\n", + " 3788,\n", + " 2849,\n", + " 232,\n", + " 233,\n", + " 729,\n", + " 1675,\n", + " 929,\n", + " 811,\n", + " 1446,\n", + " 2682,\n", + " 1568,\n", + " 3392,\n", + " 2486,\n", + " 1953,\n", + " 1447,\n", + " 2613,\n", + " 1954,\n", + " 3012,\n", + " 861,\n", + " 1434,\n", + " 2549,\n", + " 640,\n", + " 641,\n", + " 642,\n", + " 349,\n", + " 350,\n", + " 293,\n", + " 291,\n", + " 1731,\n", + " 130,\n", + " 1707,\n", + " 2489,\n", + " 807,\n", + " 1200,\n", + " 1336,\n", + " 1149,\n", + " 230,\n", + " 1153,\n", + " 2315,\n", + " 2488,\n", + " 3296,\n", + " 732,\n", + " 3127,\n", + " 3499,\n", + " 1157,\n", + " 3819,\n", + " 1002,\n", + " 1600,\n", + " 1151,\n", + " 1248,\n", + " 3297,\n", + " 860,\n", + " 1042,\n", + " 301,\n", + " 1547,\n", + " 2769,\n", + " 2039,\n", + " 893,\n", + " 2293,\n", + " 53,\n", + " 600,\n", + " 387,\n", + " 1003,\n", + " 1861,\n", + " 2143,\n", + " 2573,\n", + " 2942,\n", + " 3340,\n", + " 3813,\n", + " 3174,\n", + " 3687,\n", + " 264,\n", + " 2570,\n", + " 1013,\n", + " 1150,\n", + " 1642,\n", + " 494,\n", + " 2845,\n", + " 2571,\n", + " 1472,\n", + " 2255,\n", + " 1148,\n", + " 3269,\n", + " 1934,\n", + " 1471,\n", + " 1930,\n", + " 3358,\n", + " 3508,\n", + " 458,\n", + " 1165,\n", + " 83,\n", + " 2777,\n", + " 2911,\n", + " 3257,\n", + " 2973,\n", + " 1831,\n", + " 2913,\n", + " 1733,\n", + " 2075,\n", + " 1390,\n", + " 3181,\n", + " 2222,\n", + " 3123,\n", + " 3407,\n", + " 2145,\n", + " 3686,\n", + " 3356,\n", + " 3889,\n", + " 2223,\n", + " 2604,\n", + " 2974,\n", + " 3592,\n", + " 1012,\n", + " 2074,\n", + " 3604,\n", + " 3801,\n", + " 3256,\n", + " 3028,\n", + " 2076,\n", + " 2306,\n", + " 2697,\n", + " 1609,\n", + " 2359,\n", + " 49,\n", + " 479,\n", + " 3312,\n", + " 3745,\n", + " 2370,\n", + " 3121,\n", + " 3570,\n", + " 1282,\n", + " 799,\n", + " 1283,\n", + " 1719,\n", + " 2008,\n", + " 1216,\n", + " 2107,\n", + " 140,\n", + " 139,\n", + " 2358,\n", + " 2086,\n", + " 2357,\n", + " 1702,\n", + " 3427,\n", + " 2210,\n", + " 3089,\n", + " 1109,\n", + " 2543,\n", + " 2765,\n", + " 254,\n", + " 1474,\n", + " 474,\n", + " 844,\n", + " 1614,\n", + " 1754,\n", + " 3160,\n", + " 1250,\n", + " 2001,\n", + " 3365,\n", + " 3224,\n", + " 2402,\n", + " 3027,\n", + " 1674,\n", + " 1448,\n", + " 2215,\n", + " 2274,\n", + " 3418,\n", + " 1641,\n", + " 2610,\n", + " 2880,\n", + " 1870,\n", + " 189,\n", + " 742,\n", + " 1239,\n", + " 1489,\n", + " 1862,\n", + " 50,\n", + " 444,\n", + " 284,\n", + " 501,\n", + " 1875,\n", + " 1056,\n", + " 164,\n", + " 412,\n", + " 1708,\n", + " 1853,\n", + " 476,\n", + " 885,\n", + " 62,\n", + " 382,\n", + " 3651,\n", + " 473,\n", + " 275,\n", + " 2929,\n", + " 2287,\n", + " 3309,\n", + " 3606,\n", + " 3882,\n", + " 756,\n", + " 3898,\n", + " 2667,\n", + " 205,\n", + " 206,\n", + " 881,\n", + " 403,\n", + " 277,\n", + " 402,\n", + " 1070,\n", + " 1436,\n", + " 2535,\n", + " 3197,\n", + " 2893,\n", + " 2322,\n", + " 3785,\n", + " 276,\n", + " 499,\n", + " 3771,\n", + " 2725,\n", + " 2436,\n", + " 3047,\n", + " 2184,\n", + " 1610,\n", + " 1804,\n", + " 3352,\n", + " 1942,\n", + " 2724,\n", + " 750,\n", + " 1015,\n", + " 1118,\n", + " 1201,\n", + " 854,\n", + " 790,\n", + " 935,\n", + " 386,\n", + " 3610,\n", + " 1574,\n", + " 3009,\n", + " 2556,\n", + " 3609,\n", + " 843,\n", + " 3402,\n", + " 2041,\n", + " 3883,\n", + " 3884,\n", + " 3890,\n", + " 1559,\n", + " 1637,\n", + " 1500,\n", + " 1597,\n", + " 2563,\n", + " 2651,\n", + " 2261,\n", + " 2650,\n", + " 3506,\n", + " 3831,\n", + " 3026,\n", + " 2814,\n", + " 1465,\n", + " 1466,\n", + " 3891,\n", + " 3830,\n", + " 2687,\n", + " 3504,\n", + " 3505,\n", + " 2057,\n", + " 2229,\n", + " 2829,\n", + " 918,\n", + " 1199,\n", + " 1799,\n", + " 2813,\n", + " 2262,\n", + " 2481,\n", + " 2131,\n", + " 2688,\n", + " 2480,\n", + " 2686,\n", + " 3892,\n", + " 2649,\n", + " 3503,\n", + " 2564,\n", + " 2812,\n", + " 1308,\n", + " 1800,\n", + " 1467,\n", + " 3122,\n", + " 3287,\n", + " 2156,\n", + " 3328,\n", + " 2638,\n", + " 1645,\n", + " 1333,\n", + " 1334,\n", + " 1548,\n", + " 3409,\n", + " 2424,\n", + " 3838,\n", + " 3428,\n", + " 3594,\n", + " 3380,\n", + " 3888,\n", + " 3473,\n", + " 3737,\n", + " 828,\n", + " 1392,\n", + " 3313,\n", + " 3049,\n", + " 1243,\n", + " 3048,\n", + " 593,\n", + " 2281,\n", + " 1241,\n", + " 2588,\n", + " 960,\n", + " 2371,\n", + " 1971,\n", + " 2587,\n", + " 1581,\n", + " 440,\n", + " 2717,\n", + " 1709,\n", + " 1710,\n", + " 68,\n", + " 159,\n", + " 679,\n", + " 962,\n", + " 594,\n", + " 279,\n", + " 441,\n", + " 442,\n", + " 1386,\n", + " 1387,\n", + " 1460,\n", + " 1879,\n", + " 961,\n", + " 963,\n", + " 1649,\n", + " 1244,\n", + " 1242,\n", + " 1245,\n", + " 2062,\n", + " 1927,\n", + " 2077,\n", + " 542,\n", + " 98,\n", + " 1368,\n", + " 319,\n", + " 1101,\n", + " 1753,\n", + " 995,\n", + " 1203,\n", + " 1100,\n", + " 1928,\n", + " 903,\n", + " 2078,\n", + " 72,\n", + " 3421,\n", + " 3022,\n", + " 2922,\n", + " 3252,\n", + " 3522,\n", + " 3523,\n", + " 3524,\n", + " 2534,\n", + " 2722,\n", + " 1269,\n", + " 2529,\n", + " 3679,\n", + " 2396,\n", + " 2191,\n", + " 2397,\n", + " 3329,\n", + " 3017,\n", + " 3018,\n", + " 2608,\n", + " 2609,\n", + " 2540,\n", + " 2541,\n", + " 1320,\n", + " 567,\n", + " 1583,\n", + " 1676,\n", + " 1838,\n", + " 2190,\n", + " 1319,\n", + " 3222,\n", + " 3678,\n", + " 2607,\n", + " 3221,\n", + " 931,\n", + " 338,\n", + " 818,\n", + " 431,\n", + " 1728,\n", + " 2304,\n", + " 1691,\n", + " 2560,\n", + " 2416,\n", + " 2415,\n", + " 3861,\n", + " 1195,\n", + " 2073,\n", + " 1393,\n", + " 1855,\n", + " 2072,\n", + " 3862,\n", + " 3498,\n", + " 307,\n", + " 513,\n", + " 1943,\n", + " 734,\n", + " 659,\n", + " 306,\n", + " 909,\n", + " 826,\n", + " 658,\n", + " 825,\n", + " 516,\n", + " 951,\n", + " 1068,\n", + " 1168,\n", + " 3189,\n", + " 436,\n", + " 662,\n", + " 437,\n", + " 784,\n", + " 783,\n", + " 952,\n", + " 1492,\n", + " 3429,\n", + " 568,\n", + " 943,\n", + " 1281,\n", + " 848,\n", + " 1693,\n", + " 806,\n", + " 629,\n", + " 805,\n", + " 2919,\n", + " 680,\n", + " 1494,\n", + " 2767,\n", + " 3727,\n", + " 3305,\n", + " 3789,\n", + " 3633,\n", + " 3681,\n", + " 298,\n", + " 3553,\n", + " 3032,\n", + " 1493,\n", + " 3791,\n", + " 3637,\n", + " 2477,\n", + " 3551,\n", + " 1621,\n", + " 3729,\n", + " 3878,\n", + " 3879,\n", + " 3880,\n", + " 3164,\n", + " 3167,\n", + " 3634,\n", + " 3680,\n", + " 3412,\n", + " 3471,\n", + " 3728,\n", + " 847,\n", + " 586,\n", + " 1278,\n", + " 1279,\n", + " 1280,\n", + " 526,\n", + " 630,\n", + " 704,\n", + " 582,\n", + " 583,\n", + " 2275,\n", + " 3307,\n", + " 2276,\n", + " 3308,\n", + " 3561,\n", + " 1741,\n", + " 3433,\n", + " 1174,\n", + " 170,\n", + " 525,\n", + " 1523,\n", + " 1524,\n", + " 3430,\n", + " 3550,\n", + " 2339,\n", + " 3860,\n", + " 3877,\n", + " 1897,\n", + " 3564,\n", + " 2820,\n", + " 3431,\n", + " 1740,\n", + " 2822,\n", + " 18,\n", + " 452,\n", + " 1622,\n", + " 1623,\n", + " 571,\n", + " 1388,\n", + " 1535,\n", + " 1440,\n", + " 1441,\n", + " 1516,\n", + " 1518,\n", + " 1520,\n", + " 1742,\n", + " 1924,\n", + " 2410,\n", + " 2491,\n", + " 3602,\n", + " 3436,\n", + " 3067,\n", + " 3068,\n", + " 2492,\n", + " 2144,\n", + " 3168,\n", + " 2490,\n", + " 2775,\n", + " 1468,\n", + " 197,\n", + " 1873,\n", + " 982,\n", + " 3284,\n", + " 2794,\n", + " 3683,\n", + " 3684,\n", + " 1464,\n", + " 66,\n", + " 3103,\n", + " 3101,\n", + " 1643,\n", + " 1088,\n", + " 2992,\n", + " 1514,\n", + " 2990,\n", + " 3286,\n", + " 984,\n", + " 3100,\n", + " 198,\n", + " 2611,\n", + " 2932,\n", + " 1327,\n", + " 1172,\n", + " 2931,\n", + " 3105,\n", + " 3777,\n", + " 1328,\n", + " 1644,\n", + " 3161,\n", + " 1340,\n", + " 3159,\n", + " 2862,\n", + " 2863,\n", + " 872,\n", + " 1181,\n", + " 1829,\n", + " 3623,\n", + " 2328,\n", + " 2329,\n", + " 3417,\n", + " 3157,\n", + " 3298,\n", + " 3299,\n", + " 2496,\n", + " 2668,\n", + " 1021,\n", + " 972,\n", + " 702,\n", + " 819,\n", + " 2141,\n", + " 1477,\n", + " 1288,\n", + " 3624,\n", + " 3622,\n", + " 2859,\n", + " 3410,\n", + " 3753,\n", + " 3629,\n", + " 2327,\n", + " 2672,\n", + " 1289,\n", + " 1290,\n", + " 1338,\n", + " 875,\n", + " 873,\n", + " 874,\n", + " 1435,\n", + " 752,\n", + " 753,\n", + " 146,\n", + " 344,\n", + " 871,\n", + " 1832,\n", + " 2670,\n", + " 12,\n", + " 2624,\n", + " 1935,\n", + " 2860,\n", + " 1743,\n", + " 1127,\n", + " 1180,\n", + " 1536,\n", + " 1830,\n", + " 2140,\n", + " 343,\n", + " 1828,\n", + " 1395,\n", + " 97,\n", + " 1537,\n", + " 1049,\n", + " 2138,\n", + " 2139,\n", + " 2759,\n", + " 416,\n", + " 1627,\n", + " 1700,\n", + " 1179,\n", + " 3411,\n", + " 1827,\n", + " 3042,\n", + " 2758,\n", + " 3043]}" + ] + }, + "execution_count": 81, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD/CAYAAADhYy38AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGdFJREFUeJzt3WtsU+fhx/HfcRJIQsgV4hA7bVoghFBKgUEvE60LDVWr\nUk0tigbTlAHdNPFmm6YVXkxbmFTitpu0bhPSX+3GmCZR0F4Am1BK18pIUysoUDG00HJNydVcElNy\ng1zO/0XqkLtjx07Mw/cjWbKPz3meJ8fn/M7j55zjWLZt2wIA3PMcU90AAEB0EOgAYAgCHQAMQaAD\ngCEIdAAwBIEOAIYYM9A3b94sp9OpxYsXD3vvd7/7nRwOh5qbm/unVVZWav78+SouLtaRI0ei31oA\nwKjGDPRNmzapqqpq2PTa2lp9+OGHevDBB/unVVdXa9++faqurlZVVZW2bt2q3t7e6LcYADAyO4TL\nly/bjzzyyKBp69evt0+fPm0XFhbaN27csG3btnfu3Gl7vd7+eZ5//nn7008/HVbeM888Y0viwYMH\nDx5hPJ555plQcW0nKkwHDx6U2+3Wo48+Omh6Q0ODnnjiif7Xbrdb9fX1w5Y/evSouDkVAMJjWVbI\necIK9Pb2du3cuVMffvhh/7Sxwnk8DQAAREdYgX7x4kXV1NRoyZIlkqS6ujotX75cx44dk8vlUm1t\nbf+8dXV1crlcI5ZTUVHR/9zj8cjj8YTfcgAwmM/nk8/nC2sZK9SPc9XU1GjdunU6c+bMsPceeugh\nnTx5UtnZ2aqurtbGjRt1/Phx1dfX67nnntOFCxeG9dIty2LIBQDCNJ7sHPMqlw0bNuipp57SuXPn\nVFBQoN27dw+rIKikpERlZWUqKSnRCy+8oF27djHkAgCTKGQPPeoV0kMHgLBNuIcOALh3EOgAYAgC\nHQAMEfaNRdGQnS21tExFzYhHWVnSgJ8EAhChKTkpKtnivCiCLEtsD0AInBQFgPsIgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGGDPQN2/eLKfTqcWLF/dP+8UvfqGFCxdqyZIleuWVV3Tz5s3+9yorKzV//nwV\nFxfryJEjsWs1AGCYMQN906ZNqqqqGjRt7dq1+t///qfTp0+rqKhIlZWVkqTq6mrt27dP1dXVqqqq\n0tatW9Xb2xu7lgMABhkz0FetWqWsrKxB00pLS+Vw9C32+OOPq66uTpJ08OBBbdiwQUlJSSosLNS8\nefN0/PjxGDUbADDUhMbQ//KXv+jFF1+UJDU0NMjtdve/53a7VV9fP7HWAQDGLTHSBd944w1NmzZN\nGzduHHUey7JGeadCFRV9zzwejzweT6TNAAAj+Xw++Xy+sJaJKND/+te/6vDhw/roo4/6p7lcLtXW\n1va/rqurk8vlGqWEu4EOABhuaGd3x44dIZcJe8ilqqpKb7/9tg4ePKjk5OT+6S+//LLef/993blz\nR5cvX9b58+e1cuXKcIsHAERozB76hg0bdPToUV2/fl0FBQXasWOHKisrdefOHZWWlkqSnnzySe3a\ntUslJSUqKytTSUmJEhMTtWvXrjGGXAAA0WbZtm1PaoWWJcnW5NaKeGZZYnsAQrAsS6HimjtFAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIcYM9M2bN8vpdGrx4sX905qb\nm1VaWqqioiKtXbtWgUCg/73KykrNnz9fxcXFOnLkSOxaDQAYZsxA37Rpk6qqqgZN83q9Ki0t1blz\n57RmzRp5vV5JUnV1tfbt26fq6mpVVVVp69at6u3tjV3LAQCDjBnoq1atUlZW1qBphw4dUnl5uSSp\nvLxcBw4ckCQdPHhQGzZsUFJSkgoLCzVv3jwdP348Rs0GAAwV9hi63++X0+mUJDmdTvn9fklSQ0OD\n3G53/3xut1v19fVRaiYAIJQJnRS1LEuWZY35PgBgciSGu4DT6VRTU5Py8vLU2Nio3NxcSZLL5VJt\nbW3/fHV1dXK5XKOUUqGKir5nHo9HHo8n3GYAgNF8Pp98Pl9Yy1i2bdtjzVBTU6N169bpzJkzkqTX\nX39dOTk52rZtm7xerwKBgLxer6qrq7Vx40YdP35c9fX1eu6553ThwoVhvfS+17bGrhX3E8sS2wMQ\ngmVZChHXY/fQN2zYoKNHj+r69esqKCjQb37zG23fvl1lZWX685//rMLCQu3fv1+SVFJSorKyMpWU\nlCgxMVG7du1iyAUAJlHIHnrUK6SHjiHooQOhjaeHzp2iAGAIAh0ADEGgA4AhCHQAMASBDgCGINAB\nwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAM\nQaADgCEIdAAwBIEOAIYg0AHAEBEHemVlpRYtWqTFixdr48aNun37tpqbm1VaWqqioiKtXbtWgUAg\nmm0FAIwhokCvqanRu+++q1OnTunMmTPq6enR+++/L6/Xq9LSUp07d05r1qyR1+uNdnsBAKOIKNDT\n09OVlJSk9vZ2dXd3q729Xfn5+Tp06JDKy8slSeXl5Tpw4EBUGwsAGF1EgZ6dna2f//zneuCBB5Sf\nn6/MzEyVlpbK7/fL6XRKkpxOp/x+f1QbCwAYXUSBfvHiRf3+979XTU2NGhoa1Nraqr///e+D5rEs\nS5ZlRaWRAIDQEiNZ6MSJE3rqqaeUk5MjSXrllVf06aefKi8vT01NTcrLy1NjY6Nyc3NHKaFCFRV9\nzzwejzweTyTNAABj+Xw++Xy+sJaxbNu2w63o9OnT+t73vqfPPvtMycnJ+sEPfqCVK1fqq6++Uk5O\njrZt2yav16tAIDDsxGhfr91W+LXCVJYltgcgBMuyFCquIwp0SXrrrbe0Z88eORwOLVu2TO+9955u\n3bqlsrIyXblyRYWFhdq/f78yMzOHNYpAx0AEOhBaTAM9UgQ6hiLQgdDGE+jcKQoAhiDQAcAQBDoA\nGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADBHRfyy6\n52VnSy0tU90KfOPX+rVk7ZjqZiAoK0tqbp7qViAC9+fvofMD3MDo2D/iEr+HDgD3EQIdAAxBoAOA\nIQh0ADAEgQ4AhiDQAcAQBDoAGCLiQA8EAlq/fr0WLlyokpISHTt2TM3NzSotLVVRUZHWrl2rQCAQ\nzbYCAMYQcaD/5Cc/0YsvvqizZ8/qv//9r4qLi+X1elVaWqpz585pzZo18nq90WwrAGAMEd0pevPm\nTS1dulSXLl0aNL24uFhHjx6V0+lUU1OTPB6Pvvjii8EVcqcoEN/YP+JSzO4UvXz5smbPnq1NmzZp\n2bJl+uEPf6i2tjb5/X45nU5JktPplN/vj6R4AEAEIgr07u5unTp1Slu3btWpU6c0Y8aMYcMrlmV9\n0xsHAEyGiH5t0e12y+12a8WKFZKk9evXq7KyUnl5eWpqalJeXp4aGxuVm5s7SgkVqqjoe+bxeOTx\neCJpBgAYy+fzyefzhbVMxL+2+PTTT+u9995TUVGRKioq1N7eLknKycnRtm3b5PV6FQgERuy5M4YO\nxDH2j7g0njH0iAP99OnTeu2113Tnzh3NnTtXu3fvVk9Pj8rKynTlyhUVFhZq//79yszMHNYoAh2I\nY+wfcSmmgR4pAh2Ic+wfcYnfQweA+wiBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0\nADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcA\nQxDoAGCICQV6T0+Pli5dqnXr1kmSmpubVVpaqqKiIq1du1aBQCAqjQQAhDahQH/nnXdUUlIiy7Ik\nSV6vV6WlpTp37pzWrFkjr9cblUYCAEKLONDr6up0+PBhvfbaa7JtW5J06NAhlZeXS5LKy8t14MCB\n6LQSABBSxIH+s5/9TG+//bYcjrtF+P1+OZ1OSZLT6ZTf7594CwEA4xJRoP/rX/9Sbm6uli5d2t87\nH8qyrP6hGABA7CVGstAnn3yiQ4cO6fDhw+rs7NTXX3+t73//+3I6nWpqalJeXp4aGxuVm5s7SgkV\nqqjoe+bxeOTxeCJqPACYyufzyefzhbWMZY/WxR6no0eP6re//a3++c9/6vXXX1dOTo62bdsmr9er\nQCAw7MRoX6/d1sRqnSDL0tQ2AIhj7B9xybKsUUdEgqJyHXpwaGX79u368MMPVVRUpI8//ljbt2+P\nRvEAgHGYcA897ArpoQPxjf0jLk1aDx0AMPUIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0A\nDEGgA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYIiIAr22tlbPPvusFi1apEceeUR/+MMfJEnNzc0qLS1VUVGR1q5dq0AgENXG\nAgBGZ9m2bYe7UFNTk5qamvTYY4+ptbVVy5cv14EDB7R7927NmjVLr7/+ut588021tLTI6/UOrtCy\nJNkKv9YosixNbQOAOMb+EZcsy1KouI6oh56Xl6fHHntMkpSWlqaFCxeqvr5ehw4dUnl5uSSpvLxc\nBw4ciKR4AEAEJjyGXlNTo88//1yPP/64/H6/nE6nJMnpdMrv90+4gQCA8UmcyMKtra169dVX9c47\n72jmzJmD3rMs65vhlZFUqKKi75nH45HH45lIMwDAOD6fTz6fL6xlIhpDl6Suri699NJLeuGFF/TT\nn/5UklRcXCyfz6e8vDw1Njbq2Wef1RdffDG4QsbQgfjG/hGXYjaGbtu2tmzZopKSkv4wl6SXX35Z\ne/bskSTt2bNH3/nOdyIpHgAQgYh66P/5z3/09NNP69FHH+0fVqmsrNTKlStVVlamK1euqLCwUPv3\n71dmZubgCumhA/GN/SMujaeHHvGQS6QIdCDOsX/EpZgNuQAA4g+BDgCGINABwBAEOgAYYkI3FgGY\nItnZUktL7Mof9abACcrKkpqbY1M2uMoFuCfdq9vwvdruOMBVLgBwHyHQAcAQBDoAGIJABwBDEOgA\nYAgCHQAMQaADgCEIdAAwhBmBnp3dd8PCeB9SePNnZ0/t3wfci0baLyX2rxgy407RWN99xt1tiJVY\n38I/1GTeej/e/Yb9a1zun39wQaDjXjXZ29Zk1hesayIHLX77pd/9F+iT3duJBjbY+9v9EOgTqZPO\nVL/xBLpZv7bY0nLvffix+lU7YCTJyX0dn1h3IrKz++rCpDKrh34vHs3vxTYjeqaihy7F/pthsJ6B\n++W9+A16oCn+Nh2/v7b4TIWy34zxme1wr3yZqoc09W2I5oMrFoYba1uUJn9d2vbkBmvwW0HwG/TQ\nR7BN8fzIypI6OiZvnUVoSnrotm3L2mHJ/nWUqh6ph07Pd3xG6jWNpycy2vplvQ832jqJVY91rM8v\neLAItidWvU7L6gvylJTBf+O9us0M/MYxZU2Ygh56VVWViouLNX/+fL355psjV7qjr1prh9X/iHmP\nHSMb2GvKyro7jV547I3WYw31CBrt/Y6OsT+jgfPGsqfe2XlvD7GMJM63/6j20Ht6erRgwQL9+9//\nlsvl0ooVK7R3714tXLjwboWWJVVEq8Y+doXooUdq6DobSzDwOzr6dtaJjIveT1f3jLQtBtdbJOth\n4Oc00vJj9SaHvher/WTotpScfHebGWneeN9X4yBbJv0ql+PHj2vevHkqLCyUJH33u9/VwYMHBwX6\nQFnJWWreFoWduiJEECE8QzeagUNaQw28siicDT3UwcMEAw92Q68sCU4PfhsKN9izsvqWDS4fnDbe\nMga2LZL6xysY5J2dd+saSTxsDwZ0MqIa6PX19SooKOh/7Xa7dezYsVHnb+lskbVj4h/koAgZuGGM\ntZEY8OHFzEiXtaWkjH/Z8fbYx7MT38ufU7AHPlLwSoMPfuEGWvBAOrDHPbCMUJcMDmxb8HUkB4ZQ\ngkEeNLTseLjyJXjQGbgOBgp+XkMPgsH34mj7jGqgW1E+yo7npKm1w5ItyQoGzsCNdCyjfXiRSE6+\nJ86Ajyol5W77g+tvaKgP3TGTkwdfpREUDJpo7ajR/JymQkvL8O1jpPU29PV4vukMPMgGnwfL6OwM\nvd6G3rcR/MyGrvNohlaw7IQEqadn5Dom+/Meum0PNfCgN3R4Mtrb5wTXdVQD3eVyqba2tv91bW2t\n3G73oHmWLFmi0xWnx1WeNc6hFId090OZiqP9eHaeeDaw/SP12EZbZjT38rqIhUi2j/HMP/AzCBVK\nE6knFgfVgWEeqzpiIdZtHGM9LFmyJOTiUT0p2t3drQULFuijjz5Sfn6+Vq5cOeykKAAgNqLaQ09M\nTNSf/vQnPf/88+rp6dGWLVsIcwCYJJN+YxEAIDbM+AcXiNjevXv11ltv6datWzpy5EhM6jh58qSO\nHTumN954Q3v37o1JHePxwQcfTFndofzoRz/S4cOH1TN0bHkC3n33Xe3fv187d+7U/v37o1Yu4tek\n9NCvX7+uo0eP6m9/+5tqamrkdrt1584d3bhxQ83NzWpra9PSpUvV2dmp7OxsdXd3q7m5WS6XS598\n8ols29aaNWv0wQcfKD8/X7dv31ZiYqKysrKUn58v27Z19epV9fT06MKFC8rJyVFdXZ1mz56t9vZ2\ndXR0yOl0qrW1VTk5OXI4HPL7/UpMTNSsWbN0/fp1ZWZm6vz587IsSxkZGbp586ZSUlLU0dGhmTNn\nqre3V9evX1d2drba29slSQ899JCuXr2q9vZ2FRQUKDk5WTU1NZo5c6Zu3Lghh8Oh3t5e5efnq6Gh\nQQ888ICampqUlJSkgoICXb16VYFAQLZtq6SkRGfPntXcuXPV3d2t9PR0TZ8+XWfPnlVqaqrS09PV\n09Oja9euacGCBTp16pRSU1OVk5Oj9vZ2rV69WvX19WpoaNCVK1dUUlKihoYGJSQkaNq0aerq6lJR\nUZEuXbqkb3/72zp06JDu3LmjtLQ0JScn68aNG+rt7VVPT48WLVqk3t5eXb58WSkpKUpNTVV7e7sS\nEhKUkZGh2tpapaWlKTU1tb98SVqxYkX/ZaoJCQmqra3VnDlz1NraKr/fr+zsbDU3NyslJUVz5szR\nww8/rEcffVSff/655syZo1OnTmnu3Lm6fPmybt++rc7OTs2dO1etra2aM2eOqqqq1NnZqRkzZmj6\n9OlauHCh2tralJ+fr1OnTulb3/qWnnzySR0/flzt7e0KBAKqrq6WZVnKyclRa2urVq9eLb/fr2vX\nrqm1tVWdnZ0qKyuTz+eT0+nU9evXlZycrJKSErW0tOjjjz9Wenq6UlJSZNu20tPTVV9fr+RvLgt0\nOBxKT09XS0tL/3bT0dGhrq4uzZ49Wx0dHZo1a5a6u7v11VdfKS8vT7Nnz9bZs2fldDqVm5urW7du\n6dKlS3K73bp27ZocDocSEhLU1dWlmzdvqrCwUPPnz1ddXZ1qamq0fPlydXR0qKOjQx6PRydOnNCN\nGzd069YttbW1acGCBfryyy81ffr0/vq//vprpaenq7GxUR0dHUpPT1dHR4dSUlKUkJAgl8ul1NRU\nXbhwQampqbJtWxkZGUpLS9OFCxc0bdo05ebmKiMjQxcvXlRbW5uyv7ljsr6+XtOmTVN3d7e6urq0\nfv16XbhwQV1dXUpLS9Orr76qP/7xj2psbJTUd67twQcf1LVr1/TAAw+ooKBAXV1dOnv2bP+6bm5u\n1owZM5Senq7k5GRlZWXp/PnzqqmpUVpamnJzc1VbWyuXyyWXy6Xz588rEAho0aJFunjxojIzM3Xz\n5k1lZGQoKSlJtm2rt7dXixYt0smTJ1VbW6sZM2YoJSVFPT09amtrU1pamlavXq3PPvtMLpdL1dXV\nunPnjh5++GFVV1dr+vTpSk1N1a1bt5SXlyeHw6Hbt28rJSVFbW1t8vv9mjNnjtLS0pSUlKR58+bp\nyy+/VFpamnp7e9XY2KiUlBQFAgH19PQoNzdXtm0rEAgoJydHnZ2dcjgcunLlimzbVk5Ojq5du6Zl\ny5bpl7/8pZ544gllZGSMmbWTEujRvpwRAO43BQUFunLlypjzTMqQS0JCwmRUAwDGunXrVsh5JiXQ\nf/WrX/V/PYu2tLS0YdMSE8d/8U5CQoKSkpLCWmYk4X4LGe9BLljuwPkn2taRyo/V/KO11bKsEctK\nSkoKq/xwWZYV1vpzOOL7NFNmZuao701kO7EsSwkJCVH5+6O9DoNDfCOVPdZ+FfybolFvNIy0/Y/U\nvvT0dP34xz/W//3f/4UuczKGXBISEtTb2xvragDAWPPmzdP58+fHnIchFwC4B2zZsiXkPJMS6KtW\nrZqMagDAOA6HQ6mpqXrppZdCzjspQy7By+YAAJF59dVX9Y9//GPMeeL7jA8AQJJ04sSJkPNMSqAv\nW7Ysqldm4C7OTwD3h7GuaAqalEA/ffq0uru7J6Oq+040bxUHEL9axvHT4JMS6OvWrVNeXp7cbvew\n64CXLl0qafTrkgeK1jXKkd65Gus7XlNTU5WYmNj/d46nPsuyNH/+fGVmZoZ1ve945h1Y/3jLDveb\nWPA293DqGKmMgWbOnDlsnpRv/gFE8ATTaPLy8vqfB//+geW7XK7+2/6jJZxvWZF+I5vKb3LRvA49\nnGvBI9lfg9tvOG0eq57ExEQ5HI6IRyhmzpyppKQkJSQkaM6cOaHbwq8tAoAZOCkKAIYg0AHAEAQ6\nABiCQAcAQxDoAGCI/wdeheftyb5rNAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "dendrogram(clusters)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "distances = [(int(cluster[0]), int(cluster[1]), cluster[2], int(cluster[3])) for cluster in clusters]" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "3901" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(distances)" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "([(2721, 3372, 0.0002312249986513723, 2),\n", + " (2608, 2609, 0.00027679776010606507, 2),\n", + " (898, 899, 0.00036272992707620525, 2),\n", + " (2847, 3367, 0.0003924856685368449, 2),\n", + " (1236, 1237, 0.0005153406640262553, 2),\n", + " (115, 117, 0.00064965914140107924, 2),\n", + " (2346, 2718, 0.00067426552633807063, 2),\n", + " (2283, 2377, 0.00069812104967540008, 2),\n", + " (116, 119, 0.00071276924736566119, 2),\n", + " (28, 135, 0.00075365575695506785, 2)],\n", + " [(7488, 7777, 5.4774588757537028, 30),\n", + " (6919, 7790, 5.7298920220162124, 309),\n", + " (7563, 7789, 6.0358725347559332, 1917),\n", + " (7785, 7792, 6.9070353370609689, 960),\n", + " (7787, 7794, 7.5963928835821077, 735),\n", + " (7688, 7795, 7.9744927667796501, 1938),\n", + " (7793, 7796, 8.1646530021191399, 990),\n", + " (7797, 7799, 14.504806894960476, 1725),\n", + " (7798, 7800, 68.72794812508468, 3663),\n", + " (7783, 7801, 135.34313324148937, 3902)])" + ] + }, + "execution_count": 83, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "distances[:10],distances[-10:]" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import cartopy.crs as ccrs\n", + "import cartopy.feature as cfeature\n", + "import matplotlib.pyplot as plt\n", + "import shapely.geometry as sgeom" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "points = [sgeom.Point(point) for point in coordinates]" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV0AAAC1CAYAAAD86CzsAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXdUFdf39h+69F5VqohGVMReULCGGEs0NojYsRtrsPce\nJRE7GsVu7NGIvRsVUcSCChaKCoLSO9w7z/uHP+eVL4iASNH7WesuZco5+5yZ2XNmn332liNJyJAh\nQ4aMMkG+vAWQIUOGjG8JmdKVIUOGjDJEpnRlyJAhowyRKV0ZMmTIKENkSleGDBkyyhDFwnbq6ekh\nMTGxrGSRIUOGjK8CXV1dJCQkFLhPrjCXMTk5Ocg8ymTIkCGjeBSmO2XmBRkyZMgoQ2RKV4YMGTLK\nEJnSlSFDhowypNCJNBky3pOUlITExERkZ2cjOzsbAKCoqFjgr0qVKtDS0oKcnFw5Sy1DRsVDpnTL\nAZJ4/vw5Xrx4AWNjY8TFxeHEiROIiYlBUlISsrKyIJFIQBK6urpISUlBcnIySKJKlSpQUVHJ86+q\nqiq0tLSgr6+PGjVqwMXFBUZGRp+UIysrCyoqKqJyPHLkCIKDg3Hv3j1ERUVBQUEBCgoKyMzMxNOn\nT6GnpyfWKycnB4lEUuAvPT0dCgoKsLKygqWlJapWrYrU1FSMHj0aTZs2/dLdK0NGhUbmvVAGzJ07\nF+fOnQPwbsT4+vVrKCsro0aNGoiKikJubi5GjhyJqlWrQkdHB6qqqlBQUBCP19LSgpaWFuTl5ZGV\nlYXs7GxkZWUhICAAq1atQlpaWp76mjdvDiMjIyQnJyM1NRUZGRkQBAEAoKOjA1tbWwQHByMsLAxK\nSkqws7NDUFCQeL6npyeGDBkCkpBKpVBQUECDBg2grKycr21+fn4YNGhQkfrhhx9+gKenJ968eYO3\nb9/i7du3AN651+jp6aFv377Q1dUtfgfLkFHBKEx3yka6pUxKSgrWrl2L6dOnAwDU1dUhJyeHtLQ0\n6OrqomPHjhg9ejT09fVBEnJycpCTk4OxsTGcnJyKVMedO3dw8uRJLFq0SNxWrVo1xMXFIScnBy4u\nLnB0dISOjg40NTWhrq4OeXl5yMnJ4fXr13j69CnGjx+PunXrIjMzE48fP0Z4eDj27duHw4cPw87O\nDk2aNCmSLD169EBSUhJUVFSgqakJNTU1JCUlISYmBvHx8QgNDYW/vz8A4O3bt9i8eTNUVVWhqKiI\n0NBQBAcHiy+E69evY/v27cXp7hKTnp6O8PBwxMbGIiEhAdWrV0dsbCxSU1NhamoKc3NzWFtbiy+/\nkjJz5kwcPnwYWlpaaNasGUJDQ/HkyRP06NEDy5YtK6XWlA5BQUG4cuUKrly5gkePHiEmJgaWlpZo\n27YtPDw8UK9evfIW8atANtItJomJiZBIJNDV1YWiYv53louLCy5evIh+/fqhbdu26NChA44fP44b\nN24gMDAQL1++zDcyfc+HfS2RSODv7w8NDQ2QxN27dxEdHY3g4GA8fvwY3bt3x9q1a8Xjt23bhs6d\nO0NPT69C2VKlUimSk5Ohp6cHX19fDB8+XNz3448/omnTprC3t0fdunVhZWUFefnSm9vNysrCtGnT\n8ObNG0RGRsLR0RGRkZF4+vQpXrx4gZSUlHznGBkZIS4uTvz78ePHsLOzK7EMlpaWiIyMzLfdyckJ\nly9fLnG5pU12djaqVKkCAGjdujWWLl2KGjVq4MmTJzhx4gS2bNmCGjVqYMuWLcjKyoKJiQn09fXL\nWeqKS2G6U6Z0C+DBgwdo06YNEhIS0LZtW5w6dUpUsP+r0Nq2bYvBgwcjKysLq1evhqWlJRITExEU\nFIS0tDRMmTIF7u7uUFZWRkpKCtasWYOdO3cCAFRVVfHmzRvIy8tDVVU1T7mXL19GmzZtAADOzs7Q\n0tJCTk4OJBIJACAyMhJPnjwBACgoKCA6OrpIdtzyJDY2FrVq1UK3bt3g4+MDLS2tL1pfZmYm1NTU\nAAB//vknkpKSYGxsDEdHRwiCgLVr14rXAgDq1KkDXV1d6OrqQl1dHY0bN8bw4cOhrq7+WXKQRFRU\nFBQVFWFmZlahXor/y/379zFq1CgEBQXB1NQUVatWhZGREVJSUnD+/Hno6OhAXV1dfJG4urri6NGj\nBQ5AvmUK1Z0shE/srtS8evWKGzdu5IIFCzhr1ixOmDCBgiDw8uXLBCD+FBUVmZubK57Xr18/AmCT\nJk3yHDdr1qw8fwNgrVq12Lp1a9atW5c1a9akg4NDnv2qqqqUSqV55Lp58yYnT55MPT09AmDfvn0p\nkUjyla2trc1GjRpx8eLFZd11JSYgIICWlpaMi4srszrj4+M5d+5cmpiYEABHjx5Nkjx58iTr1avH\nn376iY0aNcrTt2pqamUmX0UlMzOTjx8/5vnz57l3717OnTtX7B8lJSVqaGiI9/Dx48fLW9wKR2G6\n85sb6W7fvh0bNmzA9evXUa1aNcTExEAqlQJ4N+Glq6uL69evQ1NTE4qKijh69Cjq1auH1atXQ1tb\nG7q6ulBQUEBqaioOHDiAmJgY3Lx5E1FRUWjWrBnWr1+fp766deuiSpUq6Nu3LyZNmgQAqFq1KqpV\nq4Zbt25h4cKFEAQBZmZmMDAwQJcuXQC8G0GfPXtWHBWlpaVh3759GDJkSL423bhxAxKJBIIgQElJ\nCRoaGrC1tYWKisqX7MoiIwgCTExM8ObNG3FbWd9XWVlZ4tdE7dq18erVK6xbtw59+vTBkydPsGrV\nKmhqasLMzAwNGjSAs7Nzmcr3ISQRHh6OBw8eICEhASkpKYiPj8ft27dx6dIlpKWlwcTEBJGRkQVO\nbn5u3VFRUUhNTUV2djbMzc0REhKCGzduIC4uDvv27YOFhQWaN2+OO3fu4Pz58wAAGxsbVK1aVZyj\nsLCwQLNmzeDq6goLC4tSlRF4Z5OPjIxEVlYWFBUVoa2tjWrVqn22Db60kJkXPuC9ElNXV8d3330H\nR0dHbNmyBbm5uWjTpg0iIyMRERGR5xwlJSXk5uYCAAYMGAA/Pz9cvHgRLi4uAIBffvkF9erVw5w5\nczB8+HBcvnwZiYmJePnyJczMzNC5c2esW7cOJiYmov9qTk4OMjIykJubK5oMlJSU0KpVK/Tq1Qsd\nOnQo0FwQHh6O3bt3w9/fH/Hx8ahSpQqUlZWhqKgIeXl55OTkIDU1FVFRUfjuu+8wYsSIAhV1WUIS\nS5YswYwZM9CuXTucOXOm3D6xc3Jy8OjRI+jo6HwRZVASSOLcuXO4cOECrl27hjt37kBBQeGjAVOs\nra3Rtm1bbNy48bNs4Pfu3cOLFy8QGBiIa9euISEhAQkJCUhKSoKJiQmUlJTw/Plz2Nvbo3nz5lBX\nV4ednR1++eWXPOWkp6dj586dqFmzJuTk5CCVSvHo0SOsX78eDx8+xNOnT2FjY1NiOf+XoKAgNGzY\nEDY2NqLZLSkpCfHx8dDR0UGtWrXQvHlzPHv2DI6OjjA1NYWGhga6du1aZmaQb17pCoKASZMmITs7\nGyQhkUjEiYDk5GQsX74c1tbWUFdXR0BAQIFlGBkZQUdHBwsWLEDv3r2Rk5OD06dPY8OGDbh06RI0\nNTXRpEkTXLp0CUlJSQAAFRUV6OjoIDc3FxYWFoiNjRXdvbKzs2FoaAhlZWWoqKhAUVERDx8+hLOz\nMy5cuPDZbU5LS8Nff/2F+fPno2bNmjh48CDMzMw+u9ySMn/+fMyZMwfAu+tRke2aZUlsbCzWr1+P\nefPmwcvLC5mZmQgMDMSDBw/QsGFDtGzZErVq1YKdnR1sbW2ho6NTonqys7ORmpoKJSUlAEDHjh1x\n8+ZNfP/996hXrx6cnJxgbGwMTU1NWFlZlegrSSKRoHfv3jh8+DAAQENDA6NGjcLixYtLdQR69epV\n9OnTB7m5uVBSUkJMTEwePeXm5oYXL17gypUrec579uwZrK2tS02OwvjmbbqCIIj2qHXr1nHdunWc\nM2cOx40bx27duon7WrduzenTp3P69OlcvXo1b926xVu3bjEwMJBjxowRj+vbty8FQeC1a9doZWVF\nOTk5GhkZifsMDQ1Zr149urq60sLCggDo4ODAfv36iX8DoJOTE+3t7amjo0MrK6s8dkV9fX3OmDEj\nn823uEilUi5evJjm5ua8d+9eKfVo0Vm6dCkbN24stmvkyJGf3aavhbt374r9sm/fPrq7u9PKyorb\ntm1jfHx8oeemp6fzxIkTvHjxIsPCwpiTk8Pc3Fy+evUqz3FSqZQ1atSgkpISdXV1qampKdpj27Vr\nV6rtSUtLo7W1NQGwSpUq1NDQoJqaGrW1tamsrEx9fX1aWFhw6NCh3L59O/fv38/Vq1dTS0uLFhYW\nrFevHh0cHDh69GgGBwd/sr6IiAj+9ttveZ6brVu3ivsFQWB8fDwjIyPL/J4rTHd+E0p36tSprF69\nOp88eSJuu3btGh0dHamgoEBVVVXWrVuX5ubmBMA6depQX1+fenp6rFatmnhBq1evTgCcOnUqw8LC\nxO2TJk3iixcv8kyQjRs3jlZWVqxVqxZ/++03jhs3js7Ozrxy5QrPnj1LPT09urq68vTp03zx4gX9\n/PwIgCoqKpSXlxfLGj16NO/cufPZfbBgwQIC4OvXrz+7rKJib28vtmPAgAF88OBBmdVd0fHx8SEA\nzpgxg+fPn6ehoSEnTpzItLS0T56bnp5OJycnNmvWjE5OTgRADw8Pzps3T3yxTZgwgR4eHnRzcyMA\nbtu2rQxalZc3b97w9OnTjI+PZ0ZGBmNjY3nz5k2OHDmS7u7u/Omnn/j9999z+fLlfPbsGe/cucOA\ngACOHTuWAJiRkUHy3aR3dnY2SeaZ1D5x4gS1tLSooaFBZWVlysnJUUtLizVr1mTz5s3ZuXNnenh4\ncPLkyYyMjCzTthemOz9pXgCAPn36YO/evUUdWecjPj4egYGBSE1NxfHjxxEfH4/69eujQYMGUFFR\nQcOGDWFqalri8j+FnZ0dwsLC0KRJE/Tq1QthYWHYtGkT5OXlRcd84J0ProqKClRVVZGdnY3o6GhY\nWlqid+/eyM7OxtGjR+Hr6ws/Pz/s2LED4eHhOHLkCA4fPgxzc3NIpVKEhISILmAZGRlwc3PDqlWr\n4OnpiZ07d2LSpElYsWIFUlNToaamlueza968edDU1ETTpk1Rv3593L59G6dPn8bixYthbm4OOTk5\nTJkyBU5OTqhZs6boV1kU3vsPA+98ROfNmyfapL8Ey5Ytw9SpU2FjY4Nnz55h7Nix8PHx+WL1lRZv\n3rzBnj17QBJZWVl49eoVzM3N0apVKzg6OpbKxJUgCOJ1nzNnDmrWrAl3d3eMGDECCxcuLNT/1c/P\nD9OmTUPHjh2xdetWcfIUANTU1JCRkQEAWLhwIapVqwaSmDdvHpSVlREaGvrZspcFN2/eRNOmTTF8\n+HDY2tpi7ty5kJeXh76+PqKioqCnpwddXV2EhYUBePfcvjfjJSYmirbp+Ph4JCQk4OHDh9i4cSNa\ntWqFzp07w9TUFGlpaUhLS0NGRga0tLRgbm6Odu3afbYZ5N9//0WPHj2Qm5tbcptu06ZN4e7ujrFj\nxxar8ujoaMycORPnz59HQkICGjVqBHV1dbRv3x7m5uY4deoUnj59irt37+Lt27fQ1dVFZmYmrK2t\nYW1tDS0tLRgZGSE3N1dchmpjYwMrKyuYmZmJEwgk8fLlS6ioqOD58+e4cOECQkNDYWlpiY0bN6JZ\ns2aYPHkyTp06BVVVVVy6dAnm5ubo3r07WrduDU1NzQLl37FjR74JA+DdRMz48eNx+PBhSCQSdOrU\nCX/88Qe2bNmC27dvIykpCQYGBqIXQ/v27REbG4szZ86gVq1aACDazyQSCYyMjFC1alXUq1cPCgoK\niIiIQHR0NFq2bIm2bdtCTU0NYWFhyM3NRXJyMlatWoUHDx4gIiICffr0wdq1a/P5+BaEVCqFvb09\nIiMjkZmZCQBYv349RowYUazrWhQCAgLQrFmzPNvs7Ozw+PHjUq/rc8jIyMDRo0dx8+ZNPHz4EPLy\n8rh58yY6d+4MHR0dKCsrw8zMDM+fP8eaNWsAvPP37du3L4yNjT+r7tjYWNy5cwcrV65ETEwMQkJC\nAADr1q3DyJEjce/ePURERMDMzAxVq1aFiYkJ5OTk0LhxY7Rv3x5LliwRy/Lx8cHEiRMhlUqxa9cu\n5OTkwMPDo1QXmpQ1sbGx+OuvvxAYGIhp06bB2toaCQkJsLKywtu3bxETE4M6deogIyOjSEvHExMT\ncfr0aZw4cQLJyclQV1eHhoYGVFVVkZycjKCgINSrVw8bN25EVFQUsrKyxOuvqKiIzMxM6Ovr4+bN\nm9i7dy8MDQ1hbGwMNTU1ZGdnQ1tbG3Xq1MH169cxcOBAAB/30Pmk0j1+/Dh++OGHInXU3bt34e/v\nj7S0NOzatQudOnXC5MmTYWVlVeisoUQiEZeSPn/+HBEREUhNTUVMTAxUVFSQnZ2N4OBgPH/+HOHh\n4cjNzUWnTp1gZmaG/fv3IysrC1KpFCYmJujYsSPs7Oxw48YNuLi4ICEhAX/88QeioqLEm9bAwADX\nr1+Hrq4uateujZs3b4ruTJqamhgyZAi6d++OnJwcJCcnIywsDFevXkVMTAx0dHTQrFkzPH78GEeO\nHAEADB06FJs3b87TJiMjIxw6dAhr1qwRvxI6d+4MR0dHODs7Y8OGDbhw4QLU1dWRnJyMtLQ0ODg4\nwN7eHgYGBjh48CDCw8Nx6NAhtG/fPt/LYceOHfDw8ICHhwe2bdtWpOszcuRI7NmzB6mpqRAEAQ0a\nNMgTc6E0SE5OxtGjRzF8+HBRuTdu3Bhnz5794oshisqbN2+wdu1arF+/Ho6OjmjTpg3s7e0BvFsg\nYWVlle+cpUuXYv78+XBxccF///0HCwsLGBsbw9TUFC4uLujcuTMMDQ3F4yUSCV69egUzMzNxJPoh\nEokEwcHBOHHiBNq3bw97e3vk5OQgODgY0dHR8PDwAAA0aNAAL168gIKCAtq1a4cLFy4gJiYGnp6e\n8Pb2hrq6Ovbs2QM3NzcAHx8syCicwMBA9OvXD1FRUbCwsICamhqysrIQHR0NiUQCJSUlODg4iJNz\nXl5eiIuLQ0ZGBlRUVJCQkICQkBC8fv0abdq0wcmTJ0s+kSYvL09DQ0MuWrSIL168+KQdAwCNjIx4\n5swZCoJQdCNIMXjx4gU3bdrEefPmMSgoqEj1CIKQxx6Um5vLx48f88iRI1y+fDl79+4tym9iYkJz\nc3NaW1vT1tZW3N6iRQuamJjQzMyM5ubmbNiwIbdv385ly5aJE2mKiooEQF1dXf73338kyaSkJKqr\nq3PNmjVUUFDg/v37aWlpySNHjpB854gOgMuWLRPl27JlCxUUFKihoUF1dXX27NmTiYmJ4v727duL\nNuDBgwfT19c3T/s+hq+vLwGwTZs2nz2x9uzZM44cOZJOTk6sX78+dXR0qKqqyrZt23LlypV89OjR\nZ5Vf2rx9+5bDhw+njo4Ohw4dWmL50tLSGBQUxJMnT3Ljxo3s2bMntbW12bx5c27atIlSqZSHDx/O\nM8Fz6dIl/vfff1ywYAE7duxILS0tcdIJ/7cgQ0dHh82aNaOLiwurVKnClStXknx374aHh3PdunXi\ndQfAs2fPkiRjYmJobGxMAGzUqFGp9de3yMcm3HJzc7l9+3b27NmTGzZs+Oj5ycnJ/Pfffz9vIk0q\nlfL8+fP09PQUL3bnzp3p5ubGvXv3UiKRiMenpKRw27Zt4nFLlixhVlbWp9pZIcjJyeHgwYPZvXt3\nenh4cOTIkfTy8uKvv/5KeXl5rl69miQpkUh44sQJHjlyhDNnzmSfPn04duxYjhs3jlevXuXFixcJ\ngFevXs1XhyAIHDZsGFVVVTllyhQ+e/aMr1694p49ewiAPj4+4rHDhw8X+/HChQsEwFWrVuUpLykp\niQcPHuTGjRvZtm1b1q9fn3369OGFCxc+2kYA/OOPPz6rr1JSUrhp0yYaGhpy1qxZvHDhAm/dusU3\nb97kewFmZ2czMjKSqampJN/d1IIgMCcnh1evXuWVK1fK5B4JDg6mlZUVx40b99mTiWvXruXSpUt5\n5swZxsTEUBAEZmVl8ciRI9TS0uK6det45MgRAqCLiwsBsGrVqjQyMuKkSZN45MgRvn37liR5//59\nXrlyJc9zRFKcOCqIxMREPn78mOS7e6BHjx7ivfLrr79+VttklA6fpXTV1NR49OhRXr9+ncuXLycA\n/v333+zVq5d4oZOTk9muXTuamZlRW1s7j1uUm5tbqTeosvPw4UNqaGiwSpUqNDIyYqdOnbh9+3ZR\n+UilUoaEhPCff/7hlStXCIBDhw7N8yA+efJEvD5ubm6MiIgQPRR27tz50brbtm1LT0/PfA95YVy9\nepV//PEHBw0aRCcnJ2ppafGHH35gYGBgoed96BJVpUoV9uzZkwYGBjQyMqKenh4bNGggzrZ/qa8i\nkty1axcNDAy4Z8+ejx7z8OFDjhkzhu3ateOIESNEpfa/CILAqlWr5nHt09fXZ+3atcVt8vLyoivh\n/v37OXPmTM6fP79IblDFZc2aNQTAunXr0s/Pr9TLl1EyPkvpWllZ0dXVlUZGRmzXrh19fX05d+5c\nVq1alf369ePu3buZkpJCXV1dAuDSpUvp5+dHLy8vjh49mgD4zz//lHqjKisBAQE0NTVllSpVqKen\nR01NTXbp0oW+vr7ip03Xrl3zfJoC4LVr1/KUk5KSwnbt2lFfX58AqKysTENDQ+7YsaNQBfbkyRM2\nbtyYK1asKJK8c+fOpZWVFUeNGsX169fz3LlzecwchXHy5ElR/o4dO9LX15fPnj1jZGQkX758yezs\nbP7+++8EwGPHjhWpzOKQnJzMESNG0MbGplC3u7i4OALg3LlzOWrUqCINFmbNmsWBAweK16pWrVoE\nwG7dujE7O5uCIDAlJaW0m1QgOTk5X/SlJaNoeHt7c/LkyWJ8lo9RZD/d+Ph47ty5kz/99BNr167N\n+fPnU1VVle7u7jx8+DClUinPnj3LCRMmsEOHDmzZsqX4wA0aNKj0WlYJefPmDVu3bk0lJSWampqK\nI6V9+/bx+++/z6NcDx48yPHjx9Pc3JyOjo5s3Lgxzc3NqaOjQ0VFRdGu3r9/f/bo0YP//vsve/To\nwb59+4qf8J/i2LFjtLOz48uXLws97vnz5zQ3N+fNmzdL1G5BEPjnn3+KbevTpw8nT57MqVOn0tnZ\nmRoaGnRwcKCfn1+pOq+/ePGCS5cupZGREQcOHMikpKQCj8vMzOTmzZtpYWFBfX191q9fn/Xr1+ee\nPXuYmZlZaB1BQUF0dHQUzW1bt27lr7/+ylu3bpVaO2RULt6bed77S3+MEi+O+PBhwgdO96dOnaKO\njg4tLS3p6urK6dOnMyIiooTNqNxkZGRwypQpVFJSoqurq/ggT5gwgV26dKGlpaXo3K6trc1u3bpx\n2bJlvH//PmfMmEFvb28eO3aMO3fu5L59+6iqqkpVVVX+/PPPtLS0zDMJ4+DgUCzZlixZQiMjo49G\niFq+fDn19PTyTO6VlKioKF66dIk7d+7kkiVLOHfuXPr7+39UGZaUgwcPsnHjxtTT0/vkYoyAgAAa\nGxvzhx9+oJ+fH/X19bl79+5ijxhjY2OZnJz8uaLLqEBkZWVx6dKlnD17dpGOT0tLo7+/P2fPnk0L\nCwtqaWl92RVpgiCIN2pgYCAB8NSpU0US9j3Jyck8dOiQaGf8Gj6VUlNT2aJFC/bs2ZNhYWEf9Szo\n1q0b7ezseOTIEfEN6enpySZNmnDMmDF0dXXlTz/9xGbNmtHKyore3t6cO3cu+/fvL6746t+/P58+\nfVpsGa9evUoDAwPeuHEj375JkyZx/PjxxS6zvLh37x719PTo7+/PnJycTx7v7OzMzZs3kyRfv35N\nLS2tIptNZHwdREREcOLEiezatSsbNWrEixcvMjg4WAwN4Ojo+NFz4+LiOHv2bDZq1IgaGhpiCIFx\n48Zx/vz5ZbMMOCQkhD179qSOjg4HDBjA6OhohoeHf/K8o0ePiiO2Z8+e0d3dnQDYsGFDzpkzh6dO\nneKFCxcYFBRUpIepojB48GAOGDCgWJ/NmZmZvHPnDs+dO8cGDRrke/mcPHmSzs7O1NPT465du8Tt\nqampXL9+fYm8AA4cOCDGmlVRUeGECRN49uxZmpmZfXKirCIRHh7OqlWrFvn4nj17smPHjoyKimJO\nTg4VFBQ4Z84choaG8tixY5wzZw4HDhzIfv368a+//voqBgIy3iEIAjds2EADAwNOnTqVhw4d4ubN\nm6mqqirqIhUVFV69epUBAQG8d+8eN2zYwN69e/P333/nL7/8Qm1tbXp6evLq1asFmvXKROm+d5EB\nwF69eolD7BUrVvDUqVNMSEigRCJhdHQ0yXcK5sMgL927d6empqZo6zx79iynTp3KNm3asHXr1vzu\nu++opqbG5s2bc8+ePcWafS8P9PX1GRAQUKKH9cqVK1RSUvqoa9OECRPo5eXF3NxcZmRksFmzZrSw\nsGCfPn2K5KtbEIIgMCYmhqNHj6aLiwvnzZtXonLKC4lEQlVVVdFkIQgCd+zYwVmzZhX4sn758iWN\njIxEn8t79+6xTZs2+SYw3//KalJMRsl48OAB/fz8uGzZMk6cOJETJ07k3LlzuWTJErZp04bW1tb0\n8PDg48ePRffXD7/wEhMTWb9+fRoZGfHPP/+kubk5FRQUqK+vT11dXbq5udHX15ft27fniBEj+ObN\nm0LlKUx3lmpox/fHvo/ZMHv2bCxYsCDfcVKpFBcuXED79u0xefJkqKmpoVq1aujWrVuhKWfS0tJw\n8eJFLFy4EAkJCejQoQO0tLSgrq4ODw8PmJubF1nWL0337t1x9epVTJw4UUxSWVRatGgBBQUFnDx5\nssBUMUFBQejXrx+UlJSQmpoKFxcXrFu3Dj/99BN0dXWxa9euChPM+XORSCQYPHgwDh8+jLS0NNy5\ncwcODg4FHtujRw+kpqaiVatWOHHiBCQSCVRUVNCxY0cxrCTwLgFmx44d0b9/f6xZs0ZcLvvs2TPU\nqFEDDRulaK/OAAAgAElEQVQ2xIYNG8RUSs7OzhUmILyMvCQmJmLmzJk4ePAgOnToABMTExgZGUFe\nXl7Mht26dWsA7+4PW1tbGBsbIzU1FadPn0ZsbCxu376NOXPmoEuXLvDy8hJjtHh7e0NBQaFEYUjL\nLbSjIAjMzs5mRkYGN2/eTDMzMzo7O9PExIQGBgbiKGLp0qXFLvfGjRv8448/uGjRIrq7u7NFixaf\nDIdX1oSFhVFfX5/Dhg3jyJEjuXPnziLJmJSUxJ9//pkDBgz46DGCIPDAgQN5XKEyMzPZvn17enp6\nlob4FQI/Pz+2aNGCnTp1Eu+Xj/m7pqamcsuWLZwyZQpbtGghrvjS19fPM5k7d+5cenl5iX9nZWXx\nxx9/pIKCAg0NDYs9KSmj7BEEgVu2bKGxsTFHjRrFhISEYpdx6tQpAuDPP//MEydOkHw36aujo8Om\nTZt+lnyF6c4vqnTDwsK4evVqMWQiADZo0ID//vsvDx06xJYtW9LHx+ezVyTl5uZy7NixNDU1LdP8\nW0Xh2LFjXL9+Pb29vdm9e3dqa2tz0qRJvHTpUqEmkn///Zc1atQodn2nT58Wl51+Dfz++++sX78+\n3759y+nTp4uLcQrjwIEDrF27trgarHnz5mzatCkfPnxIDw8PGhsb53GD8/f3Z5MmTfjo0SP++uuv\nvHz58pdulozP4MGDB3RycmLjxo1L7KKXlpZGHR0dnjx5Ms/2lJQU9u/fv3IpXalUyu3bt9PU1DSP\nTcze3p5btmwpdnnFYciQIaxTp06FfmhevXrFSZMm0cHBgSYmJnR0dKSzszP3799Pkvznn384cOBA\nGhkZ8fTp08UuPysrixs2bKClpSXbtm3L33777aOrqyoyYWFhHDhwoBgTw9bWlsuXL6e1tTU9PT0L\nfVEfO3aMDg4OrFmzpngfKioqUl1dndOmTePff//NY8eOcd++fQwJCaGbm1uhM9UyKgYSiYQ//PAD\nAXDt2rWfNa/j7+/PVq1a5dkmCALHjBlDLS2tAj16ikOZKt2HDx+KinbIkCG8fft2mcz8Tps2jc2b\nN+eQIUNobGxcKWbenz17xsDAQLq5uXHWrFnMyMgg8C7LxOeO2NPS0njo0CFOmzaNpqamvH79eilJ\n/eWZP38+9fX1uWjRIvbv35/169ennZ0d5eTkGBgYKAbwLijOQ3BwsBj/430AbxUVFQLvMiW0b9+e\nGhoabNeunbiAZ9iwYZXifvnWiY+Pp5KSEpWUlNi3b1+6uLjQ0dGR+/fv5+jRoyknJ1fksp4+fUoz\nM7M891CXLl2ooaHBhQsXfras5WZeKEverwaZMWMGN2/eTGNjYz58+LC8xSoSR44cYcOGDSmRSHj6\n9Gk2bty4VMtfsWIFdXR0vsja/y+Bq6urGNynd+/eHDJkCAFQQUGBQUFBlEqlbNSoEd3c3MTAQhs2\nbKCOjg5tbGzYunVruru7MzU1lUFBQbx06RKjo6O5ZMkS/v3330VeuSejYvL27VsuWLCAmzZt4qlT\np/KYL4uanUQQBFavXp2PHz/m1atX2a5dOxoYGHxyJWJR+SaUrkQiESdOcnJyOHPmTNH3t6IjlUrZ\npk0b/vLLL2LYx9IiLS2Ne/fupY6OTqGBcCoKqampNDExYadOndiiRQva2tqKJoYPF91ERUURAAcO\nHMi7d+9SX1+/0rxkZZQuPXv2pJ6eHrt37y6a6YrC0KFDOW3aNDZt2pTz5s1jbGxsqcn0TSjd96Sn\np5N8t9rEysqKjRo14sKFCyu8n2VKSgrHjh1LS0vLYgUISk9P56NHj3jv3j2GhYUxJSWFOTk5fPz4\nMbt160ZVVVUxxm9lULrZ2dlcv349Z86cyePHjzM7OztP8tAVK1Zw3LhxHDhwoOiZYGJi8sXnC2RU\nTMLDw8WEl+3atePo0aOLfO77CH4TJkwoNJRmSfimlO57PrQtA6C6ujq9vb1LvXPLi5ycHB4/fpx6\nenpi/IX3n+Dy8vI0NTXlnDlz2LFjR7EPOnTowL1791aqPggPDxflb9asGZ2dneni4sI2bdpQS0uL\nW7dula0W+4Y5f/48W7Rowc6dO3P69OlUVVUt1tftl1r6/U0qXZKMjo7mnDlz8ihfc3PzCr+a7VO8\nfv06X5uqVKkiruhbsGABSbJjx460tbXlkydP6OPjw7Zt2xIAu3TpUs4tKB4RERHs0KED7ezsxDYv\nX76cz58/L2/RZJQzU6dOpZeXl5i1W09Pr0Kspvxmle57IiMj86RG+d/YtJWJ+/fvi+3w8fFhYmIi\nd+zYQXt7+zxv7ZiYGAKggYEBe/XqxaZNm4phJOXk5EQzTGUgPj6eAGhoaMgxY8aUKLjPl+TZs2c8\nevQoX716VaTjc3JyPrmMVMan2bFjB01MTBgaGio+E+np6RXiy+ebV7rku+wBrq6u/PnnnyttqElB\nEMSb68M2hIWFUVlZWQwUNHjwYAKgv78/9+zZI6YDev+rWrVqpQoeRL6LRHfw4EFWr1690BxVX4qA\ngAA6OjrSw8OD586dY1xcHN3d3fOMvnfs2FFoGS9fvuTgwYNpbGxMDQ0NAuDGjRvLqAVfF0FBQTQ0\nNGRISAjJ/5+fcdiwYeUs2TtkSpfvAprUqlWrvMX4bD40jSQmJtLHx4fjxo0rMEjL4cOH850fEhLC\nmJiYshS5VAkJCaGmpmaxzrl//z7NzMwI/P9kjsXh4sWLNDEx4fz58ykvL08A9PLyytPXheWdk0ql\nHDduHDU0NDhhwgQGBwdz6tSprFOnDqdNm1Zseb51Ll26RCMjI+7evZvku8GInZ0du3Tp8kUykJQE\nmdLlu9ixn7u0r6IQGxvLLVu2iIrk/c/Q0JBmZmYcMmRIpVoMURCCIBRoAnn+/DktLCwKPTcuLo4T\nJ07kihUrGBcXx1WrVuXpq+I8mM+fPycA/vnnnyTJc+fOFfiCs7GxKTAZKfluVAaAsbGxTElJEc/x\n9vZmaGhokWWRQW7fvp2GhoY8c+aMuO3Ro0eiJ8ukSZM4ZMiQT2Yu/9LIlC7JVatWceDAgeUtxmdz\n5MgRamtrs0ePHvz777+5bds2ysnJsU2bNiUOJVnRuHHjBmvXrk1FRUXq6OjQ0NCQDRo0oIODA21s\nbPJcR0EQuHr1anbp0oU//fQTBw8eTE1NTQ4YMIBNmjRh165dGRMTwxYtWvDHH3/ksmXLKCcnx99+\n+61IdtX+/fvnSzf15MkTBgYGin0dFBREZ2dnKioqcsmSJfncE1NSUmhnZ0d/f38KgiCmvCqqI/+3\nzJMnTzhlyhT6+/tzxIgRNDc3F00KJHn27Fk6OjqyZ8+eDA0NFTOq/PXXX+UotUzpkiQHDBhAb2/v\n8hbjs2nevDmrVauWR7kmJCR8Fcr2PatWraKuri4lEgnfvn3LmJgY3rx5k7dv32ZgYGAee/SLFy8I\ngPv37+e+ffvo7e3NqKgo1qxZUxyBjhs3jqmpqWzatCl79OjBWbNmccSIEWLwoY/FII6Pj6eCgkKe\nCFaPHj3i6tWrOX/+fPr4+ORZrh0YGMhu3bqxW7du+cqaM2cOW7ZsyfT0dKanp3P8+PEEwJkzZ5ZJ\nCvrKhlQq5cSJE1mlShV6enqyadOmnD59er4FDA0aNKCzs7PoEmlra8tly5YVeVLzSyFTuiTXrl1b\nYYzsxeXEiRP5Pme/5gf16tWrtLe3L/SY9PR0Tpo0iXZ2dnR3d8+z782bNzQ1NaW+vj7fvn3LXr16\nsXr16hw2bBiHDRtGAOzduzcvX75MAOLISSqV8tGjR1y1ahU3b97M27dvi/3dpUsXurq60tjYmEOG\nDOHMmTPp4eFBbW1turq6csqUKRw2bBibNGnC77//Pp+8UqmUHh4e7Nixo6h435fdvn370uu8SkJi\nYiK3bdv20VVgW7dupbW1daFZnEmKXxg///wz165dy8jIyC8hbrGRKV2SM2fOLDQ+bUUlLS1NfDiV\nlZUZGxv7VY1qCyIwMPCTYS379evH1q1b8/z58/n6471bnaKiovgJHxwczJEjR4pJKz98gb3/FG3Y\nsKG47X2QnPe/gwcPcvfu3fniNiQmJnL//v1ctGgR161bx/3793/UMyQ3N1csj/z/M+7FWUX1NXDw\n4EEaGxuLo9N169Zx48aNjI+PZ2pqKkeNGkV9ff1PeoOQpJOTE+fOnUt9ff0KtehHpnT5bqHEh+lc\nKjpSqTRPOqNvKeNsr169OHPmzI/uT0xMJICPBq5OTk4W++1/PzN3794t7luyZAn//fdfamlpMSws\njHXr1iXwLkj60qVLCaDE6Y8K4r3nxZMnT0hSXN78rfjsXr58mZaWljQxMeG+ffvE6zBw4EBqamry\nl19+4d9//00AH52U/BBBENioUSNu3ryZSkpKTEtLK4NWFI3CdOe7PCXfAKampvD09ESHDh2QnZ1d\n3uJ8ku3btyM8PBwAcOjQIWhpaZWzRGWHubk59u7dW+A+iUSCjRs3wtTU9KNpVLS0tHDmzBlcuHAB\nJiYmCA0NhbKyMurVqwc3NzcAwPLlyzF16lR07twZixcvxrBhw+Dl5QUAePDgAWxtbaGvr4+0tLRS\na9eVK1dQu3ZtaGpqAgAOHDgAY2NjpKSklFodFZmIiAhERERg0qRJeP78Oezs7HD9+nVs3boVmpqa\n2LlzJ6ytrTFjxgxMmDABOTk5BZaTk5OD7OxsTJ06FWlpadizZw9mz55dYGqrCklJtXVlRCqVslmz\nZlyzZk15i/JJ/vdT9Fvi/eRY7dq12b59e0ZERHDZsmWcM2cOf/zxRzo4OPDy5cs8cOAAZ82axaFD\nh7J3797s2bMnzczMaGlpydq1a4v9997N6P3f8+fPz2OSyMzMpJGRkbj/zp07zM3NZf/+/dmpUyeu\nXr2aAQEBnDNnDk+cOMGMjAz6+vpyzJgxPH/+fJHblZCQwB49etDAwIADBgwQEyTevXv3S3RjhUMQ\nBO7Zs4d6enqsUaOG2N+CIPDixYtiwHmJRMJ27dpx69at+crIzMykra0tDQwM2K1bN8bExNDKyor3\n7t0r+wYVQmHPbakmpqwM3Lt3D+3bt8fJkyfh6OhY3uIUyuLFixEeHo5NmzaVtyhlilQqxeXLlwEA\no0ePxqNHjyAvL49mzZrB1NQUysrKuHbtGqytreHk5ARTU1Noa2sjPT0dbdq0QVpaGiQSCXR1dWFr\na4sHDx6gTp06iIqKwsGDB+Hp6ZlvVPTff/9hwoQJqFq1KlxdXaGjo4NOnTph7dq1CAoKwtmzZ/HT\nTz/hypUriIqKgrq6OpKSklC/fn0EBwcXq32hoaG4evUqsrKyUL9+fbRs2bJEyQ8rK8ePH8fIkSPR\npUsX9OnTR0wcuXbtWixcuBAxMTGYNWsW5OXlMW/ePISGhuL48eN4+vQpXr16BalUipkzZ6Jp06Z4\n8eIFLCwsIAhCherDcktMWVHZu3cvq1WrxoMHDzIjI6O8xcmHVCqlt7c3raysymXJa0UhKyuLtWrV\noru7O11dXenk5ERra2suXry4SLmxoqOjqa2tXayRJD6YPDty5Ei+/R+OmKdNm8Zx48YVq03fOjk5\nOdTQ0Ciw3w4cOEANDQ22b9+empqavHjxIn19famhoUEDAwNqa2vT3t6ex44d44gRI+ju7k4TExOO\nHTu2HFpSOIXpzm9S6UqlUi5atIjNmzenqqoqDx06VN4iiQQGBtLKyoqtW7fmuXPnvnpPhY9x4MAB\n1qtXj25ubiXug/eTNRcuXChWGQkJCXz79m2B59y/f587duzg27dvWb169RItK/7WuXz5MnV1dRkV\nFZVne1RUFEePHs1t27bx3r177NmzZz5XSWVlZRoYGHDp0qX08/Pjo0ePyqkVhSNTuoVw4cIFamtr\nl7szNUmuWbOG+vr69PPzo1QqLW9xyo2tW7fSxsaGx44d+6yXjiAIXLduHa2srFilShXWrl2bXl5e\neTxYsrKyOHLkSJqYmLBu3br09vYu0r2wdetWduzYscSyfetMmzaN3bt3/+h9vmXLFgJg9+7dxeBA\nAwcO5P79+ytFhhCZ0v0Eo0aN4pQpU9i/f3/a2Njw77//LnMZdu7cyZo1a4ruRN8yDg4OJcqE/DEE\nQWBCQgIDAwPZtWtX/vjjjzx+/DgzMjK4detWOjo6Mjw8nCdPnmSHDh2orq7OOnXq0NXVld7e3rxw\n4QIHDx7MTp06sXfv3jx79uw3b/r5XDIzM9m4ceMCJ8vId1+jVatWJQCuXr36sxO1ljWF6c5vbiKt\nIKKjo1G3bl1YWVlBRUUFISEhiI2NhYqKymeVm5KSAjU1NSgqKiI9PR0zZsxAQkICVFVVoaioiGHD\nhiEqKgqurq4YNGgQnJ2dMXTo0FJqVeWEJDQ1NREVFQU9Pb1SLz8pKQk+Pj44d+4cHjx4AFNTUzg7\nO2PNmjXiMcnJybh37x7i4uJw8uRJBAQE4Oeff4aFhQWWL18OXV1d1KlTB2vWrIGSklKR6s3JycGB\nAwcQHh6OVq1aoU2bNqXetspEWloaNDU14efnhwEDBhR4zIEDBxAQEID58+dDVVW1jCX8PGQTaUVg\n0aJFot2oZs2anDVrVonLun//Ph0dHammpkZ1dXUaGRnR3d2dALh+/XquW7eOXl5eVFJSYo0aNejm\n5kYfHx/26dOnFFtUOdm/fz/19fX5+vXrL15XeHg4d+3aVayVTJqamhw7dixXrlzJlStXFvm8wMBA\nAmDbtm1ZpUqVSjdy+xJ06NCB48ePL28xvgiF6U6Z0v0/pFIpR44cmWcZ6Pr164uV2ic7O5vDhg2j\nrq4ut27dSolEwvj4eN64cYOzZ8/mn3/+mcdGKQgCMzIyaGRkxBs3btDAwKDCZUUoK44fP043NzfW\nqFGDN27cKG9xPsqHkztKSkpFPi8rK4vGxsZ88OABx48fz169en10Rd23wIsXL2hnZ/fVmmhkSreI\n1KlThwBoZ2dHW1tbGhsbc+XKlUWezNm8eTNbt25d7KXGtWvX5okTJ9i/f396e3vTz8+PK1asqJDu\nbF+CkydPsmrVqlyxYgXj4+PLW5xCycrKEpWuvr5+nrTwn8LHx4cmJiYMDAwU04b7+voyJCSEs2fP\n5syZM0t12XFFRRAEtmvXjiNGjPhqAzfJlG4RiYuLE6NQAeCvv/5KZWVlbtq0qUjne3t7lyiS2eHD\nh2lnZ8cVK1awS5cuYv3Tp08vdlmVjZMnT1JPT69UJ86+NFu2bBFd+szMzIqVUXbu3LlUUlLijBkz\neOfOHXbq1CnParg//viDz549K/BFLwhCpU+qSpJ+fn5s2LDhV/2CkSndYuLv708ArF69OleuXEkd\nHR2ePHnyk+fNnj2bI0aMKHZ9giBw0KBB4kO3efNmdurUqdyj35cF33//Pf38/MpbjGKRm5tLR0dH\n/vXXXxw8eDA9PT2LfG5ERISoYN++fcvs7Gz269ePAGhlZcUOHTrQzMyM2trabNKkCRs2bEgbGxsx\n47OJiUmlDn4eGhpKQ0ND7t+/nzY2NsVaRl2ZkCndYpKYmMgmTZoQAK2trXn27FkaGBh8MtScs7Nz\nkZRzQeTm5vLGjRvMzc1lp06dvom+X7lyJS0tLSu8SaEg7t69SwA8deoUdXV1uWTJkiKf6+fnRwDU\n1NSkqakpu3btyhs3blBfX59eXl68c+cO37x5w6tXrzIgIIBhYWF8/vw509LSuHr1atarV4+BgYFf\nsHWljyAI3LZtGw0NDenr6ysGmd+3b195i/ZFKHelKwhCpbPdSKVSjho1igB45swZhoSE0NTUlP7+\n/h89x97ensHBwUWuIy0tjWPHjhVHPubm5vT09OS2bdu4ePHi0mhGhSU9PZ2qqqqVNjMzSdaoUYM+\nPj588eIFTUxMPhlw+0OePXvG0NBQhoWFiSaD4OBgzpw5k4aGhh+dTMzNzaWPjw/19fW5fv36UmkH\nSW7bto1jxowp1dCnubm53L17N+fOnUsnJyc6ODjw9u3bYsp0HR2dAvPgfQ2Uu9LdsGEDu3TpwjVr\n1lSqT6OsrCyeOHFCtK+dOXOGVlZWH3UxqlWrFi9dulTgvtzcXF6+fJlbtmzhX3/9xbS0NFarVi3f\nMsf3v/cj7K/BhlcQM2fOpIuLS3mL8VncvXuXVlZWPHDgAIcNG1Zq0eu6d+/O/v37F3rM6NGjxYhc\nb9++ZXR0dLHr2blzJ0eMGEE1NTUC7xKbTp48uUQy3717l1OmTOGWLVt4/fp1Llu2jPXr1ycADh8+\nnLt37xbvZalUSmVl5a8iZ+HHKHelm52dzefPn9PGxoYA6OLiUulGviTFFCsfW+/t7e3N3r1759su\nlUpZu3ZtNmjQQPTXPXToEG/duiUGYxEEgU+ePOHSpUtZpUoVMdU3AG7atOmri8Hwww8/cMaMGeUt\nxmczc+ZMDh48mBs2bKCTk1O+pJTFQRAELlq0iMbGxp90HUxOTqazszPr1KlDVVVV/vDDD8WqKzk5\nmXJyclyyZAl37drF8+fPMyAggFZWVsUOBr5s2TIaGhpy+vTp4j07ZswYnj59+qODhvT09K92QEFW\nAKX7IU+fPhXtWR9La1JRiYmJIQDevn27wP3x8fGsUaNGvuhUYWFhNDIyIvlutFy9evVC3cFu3br1\n0RGwubk5e/XqxStXrpRew8qB27dv09DQsLzF+GzWrVvHQYMGUSKR0M3NjXXr1i2x4r116xY1NTWL\nlDWBfDeYuXTpEs+fP886deoUuZ7Vq1fTxMSEEyZMyLNdEAQOHjyYRkZGRR45Hzx4kDY2Nnz16hW9\nvb3FNEeVzeZc2lQopUuSNjY27Nq1a6VTuuS7sJAGBgacPn16vihJ5DsXKF1dXbq5uXHGjBns0qUL\ndXR0uGLFCgqCQADs3LlzoXX8888/7NGjB1evXs0nT56wXr16otKdM2eO+P8VK1awc+fOnDZtWqUb\nCWdkZLBly5aV3m3o0aNHNDAw4KNHjygIgmhGKy5Pnz6lrq5ugUktP0VERASNjY0/eQ8IgsD58+fz\nu+++4/379ws8RiqVskmTJpw3b16R6p42bZqYot7a2ppNmzaljY3NJ188//zzDz09Pcs9VfqXosIp\n3cpOdHQ0+/TpQ21tbfbu3TtfkJqIiAj+9ttv9PLy4r59+xgTE0OSotItbDKOzLskOSwsTLSNvf8N\nGjSIo0eP5vr160XXtoqUlK8oCIJAVVXVfIkeKyPr16+niYkJ09LSeOfOHerr6/P69etFOjcuLo7z\n5s0jAP72228lql8QBJqamvL58+cfPSYpKYm//PIL69at+8lRbGhoKI2MjCgIAjMzMwu9txITE2lh\nYcGjR4/y+PHjnD17NkNDQz8ps4WFhZjd42tEpnS/EKmpqZw1axYNDQ1Zt25drlq1ii9evODNmzfp\n4+OTLwRdSEgIAfDJkye8ffs2r1279tERQVJSUj6bV0ZGhqjAKzvXr1+ntbV1eYtRanTv3p0bN24k\n+W7iuFWrVoUeHxcXJwbrbtSoUZFNCoXVv2fPngL3Xb9+nW3atGHHjh2L9JJ7+vQpFRQUeO7cOcrJ\nyX1yUu/KlSs0MDDg0aNHiyTr+2zNgYGB1NTUrHRfaUVBpnS/MO9ta+7u7tTW1qalpSWHDh1KIyMj\n+vj4iMctW7ZMnCW2sLCgvb09DQ0NC8xQ8DUjCAJ/++03/vLLL+UtSqlx8uRJmpqa8syZM7xx48ZH\nn52kpCT+/fffbNKkCXv06PFZE28f4uvry1atWuWLT3v06FFqampy7ty5RY718OTJE1pbW9Pc3Jxr\n166lvr7+J8/577//aGhoWCSXydWrVxMAGzRoUCnyFZYEmdItQyQSifjmjoiIoI2NDceMGcMTJ04U\naL/08vJip06dylrMciUsLIwAePny5fIWpVQ5c+YMq1WrxilTphBAnkUfkZGRXLlyJY2MjOjq6kpf\nX99S9VGVSCRs2rRpvljQ69ev55AhQ0pcriAI1NfXL9LqyBkzZhRp6Xp4eLhoKrOzs+Off/751cUZ\nKUx3fjMp2MsKBQUFMUGehYUFbty4ASUlJcyePRtGRkYwMzNDx44dxeOzsrLQqlWr8hK3XLC1tcXw\n4cNx4cKF8halVGnfvj1u3ryJw4cPAwB27tyJWbNmwd7eHnXr1kVgYCAOHjwIf39/DBs2DGpqaqVW\nt4KCAvr27YuLFy/m2W5lZYWIiIgSlysnJ4fOnTvD19cX/fr1g5KSEhISEgo8tlWrVrhx48Yny7S0\ntBSfkdDQUIwfPx4rVqyAIAgllrMyIVO6XxgDAwN4e3sjICAAt2/fRrdu3XDmzBkcO3YMAPDy5Uvo\n6Oh8spxXr16hYcOGaNGiBUaNGvXRG7+yUKtWLdy8eRNSqbS8RSlVTE1NcebMGQDAr7/+itu3b8PX\n1xcvX77E7t27UaNGDXh7e4vXvzRxcXHBP//8g/T0dHFbQEAAbG1tP6vcH3/8Effu3cOxY8cgkUhQ\no0YN7NmzJ99xgiBAWVm5SGXOmDEDADBv3jwYGBhg9uzZ6Nmz52fJWWko6RBZRsm5fv06AfDAgQOs\nVasWjx07VuBxgiBw6dKlYiZUfODBoKamxsWLF/PcuXN89eoVHz9+zH379tHLy4sLFy5kSEhIGbeq\neCQmJrJ+/fp0dHQs0PWuMpOSkkIAHDBgAC9dusS1a9eyV69e1NXVFa/jl1qN1b9/f06dOlX8293d\nndu2bfusMq9du0YArF27NgVBYEBAAM3MzPLYb69du8Y6depw0aJFhZYllUqppaXFK1eu0MPDI58f\nemV3IXxPYbpTpnTLCQcHBwJghw4d2LJlSyYnJ5MkL168yKtXr1IQBAYGBtLU1JTnz59nXFwcVVVV\nCYBpaWm8fPkyHRwc6OTkRF1dXSoqKtLCwkK8eZcvX17OLfw0giBw1KhRdHZ2LrUJpYrCq1ev2Lhx\nYzZq1Iienp7ctGkTIyMjSZKDBg3i77///kXqDQ0NpbGxMSUSibjI5nNDhB49epQA8sQDWbp0KatV\nqxDUGcwAACAASURBVMbJkydz1apVNDMz486dOz/piTBw4EAC7zI079+/P8/KS0tLy69mlZpM6VZA\nHj58SE1NTSopKbFly5ZUUFCgvb09AVBBQYHff/89TU1NOWnSJPGcdu3aUVlZOd+NHRMTw/DwcJLk\noUOH2KRJEzZt2rRSZCbIyspi//79v+p1+B+Sk5NDY2PjL5qAtEGDBty0aZMYLhIAN2/eXOLy3nvd\nKCoq5rmndu7cSQC0tbUtUuCibt265VHeubm51NTUpIGBARs2bEgAXLp0aYnlrEjIlG4FZtWqVXk+\nr94HtB41ahR37dqV59isrKwiRYEKCwtjjx49aGRkxGvXrn0p0UuNV69eUU9Pj7GxseUtyhdn586d\ndHZ2/qJ1XL58mQA4ZMgQtm7dmkuWLKGpqWmJV4A2btxY9DT4MKB/SkoKFy5cWOSvlHr16tHX11f8\n+320MfxfgKeJEyfy559/LpGMFQ2Z0q3gSCQScdSwfft2rlu3jh07dvxs+9Zff/1FJSWlfIs0KiIL\nFiygsbFxsQKaC4LAp0+f8vr16wwMDKzwTva5ubmsXbt2iWMuF4fY2FhKpVL27t2ba9asoaKiYomT\nYSYkJHDBggUEQG1tbf7xxx/F7ut//vmHjRo1ynMvfjjgcHV1Fcv/GpAp3UqIlpYWnz179lll5OTk\n0MfHhxoaGtTU1KSKigqdnZ25YcOGfE70FYE7d+7QysqKgwcPFv02BUFgdHQ0b968ydevX1MQBEZG\nRnLy5Mk0NTVl9erV2aRJE5qbm3PixInl3ILCWb16NV1cXMr05eDv709lZWX269evWPXGx8dzyZIl\n3LJlC0NCQiiVStm8eXNOmzaN9evX56hRo4pc1okTJ2hoaMiuXbvS2NhYjAOcm5vLxMREHjlyRFS+\nX0tQc5nSrYSUZmbgpKQkPnr0iElJSTx69ChbtWrFTp06VcjwmikpKezXrx9r167N6dOns379+tTX\n12eDBg34/9o707Cmzm2P/4EAoswJo8yjiAwqIJNorVocK4qV1nM9rdZah1r1OFar1SoOvc4DCq0c\nexwoaqu0IuIAVlRQEAREBESCgGGeA4Qk637oMbdUxSmQhO7f8/Ahe3jXSkL++91rr3ctHR0dMjIy\nIh0dHVq6dGmHEpu1tbXE4XBo+/bttGDBAnJwcJA8nJQHsrOzicPhyKSe9Js8nMrOziYANHToUOJw\nOHTt2jVavHgxLVu2jBoaGsjCwoLu3Lnz0nG2bdtGFhYWlJiYSG1tbRJx/SsPHz6k69evv7af8goj\nugqGSCR6pcI4b0pbWxv5+fm9ccHqrkYsFlNsbCwtX76c4uPjO8zKHz58+ML6AQkJCfTRRx/R+vXr\nydvbmwYPHiwXlewqKirIxsZG4XrB7du3j8zMzGjr1q3E4XAoNDSU+vbtS5WVlRQQENBpJ+Sqqira\nv38/mZubU0lJCRH9UXvYx8dHksXRk2FEV4EQiUQ0bNgw8vHx6dKcxezsbDIxMekxeZF/5Wnlrdzc\nXJn6kZ+fT87OzrRmzRqZ+vGm/Pvf/yYHBwf65ZdfyMTEhAYPHkz+/v40adIkmj9//jPHP3z4kOLi\n4qhXr140fPjwDjP7L7744qVZKmKxWCF75v0VRnQVBKFQSEuXLiUAXX7rLxaLyd3d/ZlC1j2Fx48f\nk4aGhswuKmKxmPbu3UtsNpsOHDgg9w/5XoRYLKZt27aRlZUVJScn09SpU0lDQ4PU1NQIQIeyjxcu\nXKDevXuTmpoaRUZGPjPW0+pily5dopiYGNqyZQvFxcVRQkIC2djYUHh4OF2+fJkA0KJFi7rxXUqf\nzrST9Tar2Riky48//oiwsDAkJSVBXV29S20REaqqqvDw4UNwuVxYWlp2qb3uhsvlwszMDCxW9/+L\ni8VizJw5E1lZWbhx4wYcHBy63QdpoaSkhGXLluHMmTMoKipCdHQ0bt68icDAQMyfP7/Dst+LFy9i\nzZo1WL58OVRUVJ4Z69KlSwCAiIgI/PTTT8/s9/T0xP379wEAV65ckWwXi8VQVu45FQt6zjtRcNra\n2rB7924cOnQIfn5+XW5PSUkJISEhqK6uhpWVFQICAhAaGvpWxVHkiZ9//hkTJ06Uie2VK1fi0aNH\nuHbtmkIL7p/ZvHkzvvjiC2RkZMDHxweTJk1CTk4O/pjU/UHfvn2RnZ39XMEVCoU4d+4cIiMjcevW\nLQCAr6+vZH9+fj7c3d0REBAAABgzZgzS09Mxbtw4GBgYwMrKCrt27erid9lNvOkUmUG6cLlcAkCZ\nmZndarelpYWCg4Pp7NmzNHfuXGKz2bRlyxaFr4ewaNEi+vzzz7vVplgsph07dpCBgUGPiEv+lbCw\nMBoxYgSJxWJJdsMPP/wgedBZV1dHZmZmzw0tbN++nYYMGULl5eWkqalJn376aYe2U38mLi6OysrK\nJDUfHB0dacqUKcRisUgkElF4eDh5eHjQyJEj6eTJk6/cSLM7QzydaScjunJCZWXlC9NpupNTp04R\nAGKz2WRra0tjxoyh4OBghWs0WFVVRRYWFi/sptAVHDhwgAwMDLp0ia8sEQgE5OrqKik8Hh8fT5aW\nlrRixQrJMbt27SI3NzdauHAhhYWFUVxcHPH5fJo/fz5t376dfv75Z7K1tZW06nn//fcl5yYkJFBo\naCjNnDmTANCAAQMkxaGe/k2ePJkGDhxIly5doujoaAoICKDevXtTYGAgRUdHv1CAg4ODCQCdO3eu\naz+k/8KIrgKQlZVFenp63SoSz0MsFlNrayuJRCLKyMigX3/9lfbv308mJia0du1ahXoglJGRQcbG\nxt3SmUMgEJC5uTklJiZ2uS1Zkp+fT8bGxnT27FkiIjpx4gQFBQVJ9ldXV9P3339PH374IU2dOpVc\nXFzI3NycANCNGzck3cDx3xojACS93ZYsWUIAJHUYAFD//v3po48+krxms9nPVNDj8/n0n//8R9L+\n6PPPP6eWlpYOx5SUlFCvXr0IAF25cqWLPyVGdBWClStX0oIFC2Ttxgvh8Xjk6elJ3t7etHDhQrla\neNAZt27dIgMDA0muaFfx7bff0ujRo7vUhryQlJRE5ubmtGDBAgoNDe0031soFFJ0dDTdvHlTcsEe\nNmxYh9nr+PHjJcf/OWunvb2d6urqqLGxkU6dOkWhoaHk4+NDurq69NlnnxGPx3vGXnV1NQUHB9OU\nKVNIIBDQ9evXae/evRQQEEAASFlZmfbs2UMffPBBl2YIMaKrABw4cIBYLNYzV2h5QiAQUGxsLI0Y\nMYJ27dola3demU8++eSVW4q/Ka6urt1SU0FeqK+vp+HDh5OKigppa2vT4MGD6ZdffqH6+nqKi4uj\nzMzMFy41X7FiBQ0cOJCKi4tp1KhRr3QnUlFRQQDoyJEjxOPx6JNPPqFp06Y999i6ujoaOnQoASAl\nJaUOAh8XF0c1NTUEgLy9vd96qf2LYERXASgvL6cJEybQsGHD5P4W/qeffuowO5F3kpKSyNDQsEtX\np82ePZtGjRrVZePLIyKRiIyNjQkAhYSEdBA3Gxsbcnd3p6tXr75SZbyXUV1dTWpqapLVbOnp6c8t\nel5aWkrJycmUn58vKSMZGRlJBw8e7HB3tmnTJomvy5cvp7CwMKn+7hjRVRBEIpGkFqo8c+zYsQ5x\nPEXAzc2NLl++3GXj79mz529TE/jPiMVi+s9//kPTpk0jHx8fsrS0JCsrKwoKCuogwocOHZI07Fy6\ndCn5+vqSr68vAaDExETKy8uj9evXk729/SvVYDAzMyMA5OXlJWnGefDgQdLT0yMnJydycHCg6dOn\nk5ubW4cFHH/1PTIyUhJLdnV1ldodESO6CkR6ejqZmJjIbZhBIBDQiBEj6MCBA7J25bWwsbGhS5cu\nddn4V69eJRsbmx7T+eBNeZpOFh0dTT/88AMtX76cAgIC6MiRIx0ehv1ZkJcvX97h9auUIj1z5gwd\nPHiQTp8+TWZmZtS3b1/icDh0+PBhIiKaOXMmTZgwgfz9/QkApaSkdDpeeHg4aWpqEgB68ODBW38O\njOgqGOPGjaP9+/fL2o1nEAgENGXKFBo7dqzC1WyYPXt2h9SmrsDPz4++/fbbLrWhyIjFYmpsbCQt\nLS0CQCdPniSBQCDJZHhR1bKXXchaWlooISGhQy+4trY2+vjjj6lPnz4SMb9169YLx8jMzJTU8/X1\n9X3r0qeM6CoYqampZGJi8spJ393F2rVrafTo0XJZEvJl3Llzh+zs7LrUxrlz52jkyJEv3C8Wi/8W\n3TFehaqqKomw5efnS+on/5Wn3SVMTU0pJiaG7t69S2fPnn1GFF1dXQnAMwJdWVlJFy9epM2bN7+w\nOt2fCQ8PJ0dHx7f+H2dEVwGZNm2aXFWmSkhIIA6Ho7Bl+b766iuaPHlyl9q4du0aeXt7v3D/iRMn\nCECHOsAMLyY6OprU1dUJAE2cOJH8/PwkD+6exnGJ/njIBoDMzc0pKipKhh7/P4zoKiClpaUE4I1b\nrEiTpqYmUldX77bVPNImOTmZzMzMnpvXKU3u3btHTk5Oz92XmZlJ6urqZGlp2e3LkxWF9PR02rx5\nM6WmphKPxyMAdOLEiQ6z2qcNN588eSLZlpSURC4uLnTw4EGaOHGiXDRk7Uw7mYI3coqpqSn8/f2x\nf//+DkVFZEFtbS3YbDbGjh0rUz/elBMnTmDOnDkwMjLqUjs6Ojp4/PjxM9tbWlrwzTffwMjICIcP\nH0ZqamqX+qGIREZGYuDAgfj9998xZswYGBsbY9y4cQgJCelQYSwsLAz79++HsbGxZJuysjJUVFTg\n7++PmJgYDBo0CLW1tVLzLSgoCNevX5faeMxMV47hcrnk5eVFQ4cOpaysLJn5UV5eTmw2W2b23xYb\nGxtKTU3tcjsRERE0bNgwyeuioiLasWMHOTk50ZQpU6ihoYFGjRpFAOSyR50sEAgEtHPnTlJRUaH0\n9HQi+uOuYNOmTc9dUr1ixQoyMjKiHTt2SD7DX375hQICAoiIqLGxkZydnaW6UAUAubu7v9KxQqGQ\nUlJSmPCCIiMUCiWFVKZPn06PHj3qdh9u3LhBHh4e3W5XGjwNjXTlgpO8vDz68ssvycDAQCIcRERB\nQUHk7e1Nv/76q+QBz7vvvktjx47tMl8Uifb2dkldhtcppp+VlUW+vr40aNAgunr1Kk2bNq3DCsll\ny5ZJNWf6l19+IQBUVVXV6XFPnjwhDw+PlxauYkRXQaivr6cFCxaQlZUVZWRkdKvtLVu20CeffNKt\nNqWFWCymXr16vfQH86aEh4cTh8OhVatWdSiHKRaLicVidSjxKBaLicPh9NgqZK9LSkoK6erq0qxZ\ns167FGZbWxtFRESQoaEh2dnZdfh+y8rKSE1NTaoX2peNJRaLJWIbGRnJiG5PQSwW08aNG7t9puTj\n40Px8fHdalOazJ8/n4KDg6U6plAopAULFpC1tfULRdTe3r5DUn5aWhrZ2NjI/TLv7qC5uZnc3d1p\n69atbzWOUCh8JlQjFArJxMSEQkNDX5iK1hWEhYXR2rVrqbW1lRHdnkR2djb169ev2+ylp6cTm83u\nsplid9DS0kJsNluqxU3WrVtHnp6enVZbmzJlCh06dEjy+l//+hetXr1aaj4oEgKBgG7fvk3btm0j\nd3d30tbWpk8++aTLLkA5OTk0efJksrW1faM7w5ycHBo2bBilpaW9kX1GdHsQjx8/JlNT026z5+Xl\nRT/++GO32esqVqxYQbNmzZLaeJs3b6YPPvjghfsTExNJVVWVKisrieiPuhpmZmYduuP+HWhqaqK4\nuDiysrIiGxsbmj59Ov3222/ddhFfsGABDRw48LXF/WnKJv7bHeN1YUS3B5GTk0P29vZdbqetrY12\n7NhBenp61Nzc3OX2upq6ujqysrKiCxcuSGW8xsZGAvDC3N8ZM2Z0WBKcnJzcrXco8kBbW5tEuGJi\nYmTig0gkot69e5Ozs/Nr52nfv39fUhry+PHjr3VuZ9rJ5OkqGAUFBbC3t++Ssevq6rB//34MGjQI\nWlpa2LBhA1JSUtC7d+8usded6Ojo4MMPP5Q0RXxbNDU1AQCNjY3P3W9ubo6amhrJ69jYWJk1ypQV\n5eXlAICioiJMmDBBJj4oKyvj6tWruHfvHqKiol7r3H79+qG1tRUnT57Ee++9Jz2fpDYSQ7eQl5cn\nddEVCoVYu3YtLC0tcf78eezcuRONjY2ora3tMoGXBfr6+qisrHzrcfh8PiIiIgD8v/j+lcDAQFy9\nehVEBIFAgNOnT2P8+PFvbVuRuHTpEkaMGAFLS0uZ+uHh4YGUlBRs3rwZkZGRr3WumpoagoODoa+v\nLzV/WFIbiaFbyM3NxeDBg6U65hdffIH79+8jNzcXJiYmUh1bnvD09MTJkyffaoyEhARMnToVvr6+\nSEpK6rAy6s8MHjwY7e3t8PDwQHFxMby8vODv7/9WthUNU1NTXLlyBWVlZTA1NZWpL15eXvj999/x\nzjvvoF+/fvDx8ZGZL4zoKhhcLhdTpkyR2ng1NTU4evQoSktLoa2tLbVx5REfHx88ePAAlZWVMDAw\neKMxzp49C2dnZ8TExHR6nIaGBtLT03Hx4kVYW1vD0dHxjewpMt999x0AIDU1VS5CKw4ODpg5cybO\nnTsnU9FlwgsKxuPHj184u3oTWCwWBAIBtLS0pDamvKKmpoYRI0bgxx9/fOMxlJSUMGrUqFc6VkVF\nBYGBgX9LwQUgiaE6OTnJ2JP/R0tLC6WlpTL1gRFdBSI5ORkCgQADBgyQ2pg//vgjBg0aBCUlJamN\nKc9s2bIF27dvx5UrV1773CdPnuC3337D0KFDu8CzngeHw8G8efMQGhoqa1ckBAUFIT4+XqY+MKKr\nQBQXF2PgwIFgsaQTFUpISMCWLVtw+PBhqYynCDg4OGDfvn1YtGgRRCLRK59XU1MDHx8f/OMf/0BA\nQEAXetiz2LBhA3766Sc0NTXJ2hUAQHZ2Nvr16ydTHxjRVSBKSkqgp6cnlbFqamowZ84cHDhwQK5u\n/7qDoKAg6OvrY+/eva90vFgsxvz58zF27FisW7fub3NXIA3YbDZsbGxeu5wlEaGpqQnl5eVSLW2a\nnJyM4cOHS228N4ERXQVCKBRK5WFXTk4OfH19ERQUJBcPOLobJSUlREREYNWqVWhtbe302La2Nkyf\nPh1lZWX43//9327ysGfx5ZdfYvfu3Z0eQ0S4efMmDhw4gNmzZ8PCwgKGhoZwdHSEp6cnli5dikeP\nHr21L0lJSXBzc3vrcd4GRnQVCFVVVTQ3N7/VGAKBALNnz8bs2bOxdetWKXmmeKioqHQquM3Nzfjt\nt9/g6+uL9vZ2XLhwoUcsEpEF2traL1xEAvwhhNbW1pgxYwZu374NZ2dnXLx4Ec3NzaipqcHGjRtR\nVVUFGxsbFBcXo62tDRMnTkR+fv5r+TF//nw0NzfLvhj/my5lY+h+3n33XTp16tQrH//gwQOyt7en\n6OhoqqmpocbGRvrggw9owoQJCtfNV9o8LcW3c+dOunLlCi1ZsoTs7e1JV1dXUuPV29ubjh49ylQF\ne0t0dHRoypQpRERUU1NDX3/9NTk5OZGhoSH179+fNDQ0KCIiotPPWSwW07p168jJyYkGDhxIADrU\n0H0Z169fp759+0qt2WtzczNduHDhhT53pp2M6CoI9+/fJyMjo9fqUlpcXCxZ+66iokIsFouCg4N7\nRC0FaRAREUH9+/cnOzs7Wr9+vaQ3V05ODpWUlMjavR7DTz/9RBYWFtSvXz/icDg0adIkSklJoeLi\nYsrIyOjQ76wzmpqayM3NTfI/DYBaWlpeep5YLKbx48fTgQMH3vatSLh9+zYBIC8vr+d2eGZEtwew\nePFiWrVq1Wufd/fuXdLR0aGSkpJXakHNwNAV8Pl8yszMlEp5zZycHFq1ahVpamqSp6fnM23X/0pq\naipZWlpKfbLx6aefEgDy9/d/poFsZ9qp9N8DnouSkpLMmyIyACkpKfD29n6jugsNDQ0wNzdHbGws\n/Pz8ushDBobuh4gwYMAA7Nq1S7JghYhQX18PXV1dEBHS0tKwb98+qKmpITw8XKr2xWIxLCwsUFpa\nCicnJ0RGRqKgoAAffvghVFRUXqidzDJgBaC+vh6DBw9+JcHNzMxEU1MTamtrkZeXh3//+98ICQlh\nBJehx6GkpIQtW7Zg6tSpcHZ2hr+/Py5duoQ7d+4gKioK3333HZqammBnZ4dNmzZJ3b6ysjIWLlyI\nxMRE9OnTB5MnT0ZZWRkmTZrUud/MTFf+yc3NhY+Pzyu1lTYxMQGPx0NgYCAsLS0xadIkjBo1Cioq\nKt3gKQND99PU1ISUlBQkJiaCxWLByMgIkZGRmDFjBubNm9dledW5ublwcnLCrl27EBAQgEGDBiEk\nJAQnTpzoVDsZ0VUANm/ejOLiYoSFhT13f0NDA86cOQM3Nzf4+/sjNjaWWarK8LeEx+Ph0KFDGDJk\nCNra2tDa2opp06ZJ3c65c+fw66+/QiAQICYmBhMmTICGhgb2798PJSWlTrWTCS8oABkZGejfvz+I\n6LlX7aioKMyZMwcAEBISgv79+3e3iwwMcsHDhw/xzTffYODAgTAyMkJcXBwmTpwIDQ0Nqdl48OAB\ngoODO+R537hxA6mpqa80q2ZmugrA0y8yMjISH3/88TP7s7Ky4OrqCuCPxQ+qqqrd6R4Dg9xARBg2\nbBjmzZsHLpeLlStXoq2tDWpqalIZv7S0FBMmTMD06dPR1NSEs2fPIjQ0FP7+/h0K2jMzXQXmz1+c\nra3tc485f/48hgwZgp07dzKCy/C3RklJCWvWrEFQUBD4fD62bdsmFcEtKyvDvn37EB4ejpkzZyI1\nNRVRUVEoLS197QLtzDJgOaewsBAaGhpwcnKCl5dXh31CoRAREREICwvD0qVLZVqYmYFBXhg9ejSK\niopQV1eHZcuWvfV4N2/ehIeHBxoaGpCSkoLa2lrw+XwcO3bsjTqtMOEFOeebb75BdnY2Tp069cy+\nNWvWICEhAcHBwZg3bx7U1dVl4CEDQ89GXV0dU6ZMwb59+3DhwgUsXLgQ9+/fB4fDeeE5THhBQSkp\nKcH69esB/FGApU+fPh32s1gslJeXQyAQSC1mxcDA0JGNGzfi6tWrMDMzQ//+/RETE9Op4L4MZqYr\nx4hEIpiZmWHixIk4ePDgM09GRSIR5syZg/Pnz6OkpISp8/o3QigUQklJicm/llM6004mpivHZGVl\nQUtLC4cOHXquoG7cuBFpaWmIiopiBPdvhqqqKlgsFnbs2CFrVxheEya8IMdoa2ujpaXlmfxcsViM\nRYsW4fjx40hNTYWVlZXsnGSQCfb29igoKICurq6sXWF4TZjwghwjEolgZ2eHH374ASNGjJBsLykp\ngYODA7hc7nNbiRcUFGD16tVobW1FZWUloqKiYGFh0Z2uMzD8rWHCCwqKiooK/Pz8sG/fPhQVFQH4\nQ1A//fRTtLS0YMWKFc89b+vWrYiOjkZMTAxu3rwpN00BGRgYmJmu3MPj8SS5gO+++y6uX78ODQ0N\nuLm5QSAQ4OLFi8+0kWltbUV9fT1UVFTAZrOZeC8DQzfDzHQVGGNjY0kn1cuXL6O1tRWnTp3CxYsX\nYWJigj59+uCdd97BtWvXJOf06tULRkZG4HA4jOAyMMgZzIM0BWDw4MEQCAQ4duwYIiIiEBQUBGdn\nZ0mpx8TExLduWMnAwNA9MOEFBaSlpQU3b96Euro6fHx8oKzM3LAwMMgTTD1dBgYGhm6EiekyMDAw\nyAmM6DIwMDB0I4zoMjAwMHQjjOgyMDAwdCOM6PZg0tLS8NVXXyEuLk7WrjAwMPwXJk+3B1FUVISE\nhATMnDmzw/a0tDQEBgbKyCsGBoY/w8x0ewC1tbVYsmQJHB0dJYK7bNky7N+/H1lZWcxMV04RiUTg\ncrnIyspCWVkZxGKxrF16JYqLi3H06FGUlpZ2epxIJEJ1dbXU7BYVFWHJkiWoq6uT2piygMnTVWAa\nGxuxZcsWHDhwABYWFrCyskJMTAyys7Ph7Owsa/cYngMR4fLly/juu+9w/fp16OrqQkdHB1VVVVBS\nUsKxY8fw7rvvdosf+fn5+PLLL7F9+3b079//pefU1NRg8+bNiIyMhJ+fH65du4ZJkyZh/vz50NXV\nRXNzM4qLi5GUlITo6GhUVFQAAPz8/BAcHAxTU1O88847kloh9+/fR1RUFNrb22FpaQk+n4+GhgYY\nGBigT58+yM3NRUlJCQQCAVpaWpCRkYHHjx8jJCQEq1evhlAoRHt7O5qamiASiSAWi8FisaCtrQ1n\nZ2eptl1/XZjFET2UUaNGoVevXjAzM8Pp06cxf/58eHp6IjAwkFmlJgcQEbKzsxEfHw8+n4+4uDjc\nuHEDxsbG+PbbbxEcHNyhHm5kZCTWrl0LXV1dODs7IyQkBFZWVrh06RIyMjLg4uICKysrGBkZQUtL\nC4MGDXppbQ2hUIhbt27hwIEDSE5OhpqaGiorK1FTUwNNTU24u7vj7t27UFNTA5/PB4vFgqqqKpqa\nmmBvbw+BQAA+n4/q6mqwWCxMnz4dK1asgKWlJWpra7Fnzx5ERUWhra0NvXv3hrm5Odzd3RESEgJr\na2toaGjg8OHDSElJQUFBAdLS0qCvrw8lJSUIBALMmDEDWlpaKC4uRq9evaCrq4vKyko0NDSgX79+\nsLS0hLq6Onr16gUTExM4ODhg8eLFkveipqYGTU1NqKioQEVFBQKBABUVFbh//z6ysrLQv39/mfwW\nGNHtIRARUlNTIRaL4eHhAXd3d2zYsAGrV6+Gq6srVq5cCXd3d1m72aMhIoSHhyMpKQnvv/8+xo0b\nBxUVFaipqaGhoQFJSUmIi4tDTk4OsrKy0KdPH7z33nvQ0tKCr68vxo8fDxUVlReKpVAoREZGBu7c\nuYOTJ0/iyZMn8PDwgJ+fHx48eAAul4vy8nI8evQIn3/+OVavXv3cccRiMVasWIGIiAiYm5vjfL+f\nQwAADmVJREFUn//8J8aNGwehUAhDQ0Ow2WwQEVRVVSESiVBZWYnevXtLZo+ampq4d+8eNDU1oaGh\nATabjfb2drDZ7Lf6/Nra2lBeXg6xWIy+fftCVVX1rcZ7Hu3t7fjyyy8RFxeHuro6uLu7w9raGpaW\nlrC2tkZNTQ14PB5CQkLg6uraJUWhGNHtIezYsQN79uxBe3s7PD09UVVVhfj4eNTX12P37t04fvw4\nZsyYgY0bN8raVZlBREhMTJTM2IYMGQIAuHv3LrhcLqysrFBRUYGSkhK0tLRAVVUVRkZGMDY2hqen\n5zM/QLFYjCdPniAhIQFZWVlIT08Hj8fDvHnzEB4ejuzsbOjo6GDSpEmIjY2Fra0txo4dC3d3dzg7\nO8PMzEzqP+r6+nqsX78ep0+fBpfLlWz7/vvvUVFRgcrKSqSnp0NPTw9Hjx6FqampVO0rEjweD1lZ\nWXj06BGKiorA5XKhqqoKExMTHD9+HO3t7ejbty8sLCwwd+5c+Pn5SSUswYiugtPc3Ix79+5h5cqV\n+J//+R94eXlJ/i5fviy5faquroabmxtWr16NuXPnytjrN6OtrQ3V1dUwMDBARUUFzp07hyFDhsDV\n1RU1NTUoKyuDUCiEk5MTqqqqkJOTg6KiIuTn5yMtLQ337t0Dm81Gnz59UFNTAysrKwgEApSWlmLA\ngAGIjY2Fh4cH+vXrBw0NDQgEApSXl0taaotEIjQ2NkIsFkMoFILH40FTUxNDhw6Fh4cH7O3tMXbs\n2A6dmfPz8xEbGwtXV1e88847Xf4Z+fn54caNGwgPD8fs2bORnZ2Njz/+GNbW1hg0aBAMDAxga2sL\nf3//LplJ9hSICFwuFzweD2lpaThy5AgKCwsREBAALS0tqKmpgcVigcViwcDAAPb29vDy8oKNjc1L\nL6SM6HYRixcvRk5ODhwdHaGlpYW+ffuira0Nn3322TPt0t+UnTt3YsmSJZLXDx8+hFAoxOLFi5Gd\nnY2FCxfiX//6l2R/Xl4ePD09UVtbq1BxXSLCqVOnMG/ePEl8rqysDKNHj0ZCQgJUVFSgrq4OMzMz\niEQi5OfnQ09PDy4uLrC2toaNjQ08PDzQv39/mJubA/jjNvPYsWPo06cPJk6cCHV19Wf6zT2lvb0d\nly9fljzYUlFRAYvFgpGRkdS+S2mxaNEi7N69G9HR0Xjy5Am+/fZbrFq1CosWLVKo71weKSoqwu3b\nt9Hc3AyBQACRSIT29nbJhfn27duoqqpCWlpapw8fO9POHp+nm5GRgV69esHR0RFKSkqoqqpCW1ub\npBsDEb12G+usrCy4urqCzWajuroa8fHxHfbX1NTgs88+Q2FhISorK2Fra4u6ujqsWrUK/v7+cHFx\ngUAgwHvvvQcjIyOoq6sDAHJycsDn82FlZQU1NTVoa2vDysoKpqamUFZWRklJCWxtbcHhcKClpQVl\nZWW0trZ2sO3g4AAHBwccP34c//jHP97ik+t6SkpKcPr0aaSlpSExMRF6enqIiYmBj48PMjMzUV1d\njYCAAAB/dMN4Kn5EhMLCQlhbW3cqMqqqqvj44487bHvRDEVVVVVhcpmDgoKQkZGB7du3w8LCAleu\nXIGLi4us3eoRWFlZvbDRKxHh66+/RkREBPT19d/YhkLPdGtra5GVlQWxWCy5nTQyMkLv3r3R2NiI\nuro6jBw5UnL81KlTcf36dZSVlUm2DRo0CIGBgbCwsEBRURGuXr2KkJAQ/POf/0RLSwuMjY2fsdvU\n1AQtLS24ubnByckJH3zwAfLy8hAWFoby8nKIRCKw2WzY2dmBzWajoKAAqqqqmDVrFng8HrhcLkQi\nES5cuIDGxkZoaGjAxsYGhYWF0NHRQVNTEwQCAVxdXWFqaorc3FwUFxfD0dERxsbGMDIygoWFBfz8\n/DBixAiJkAgEApSUlGDOnDlwcXGR6/bclZWVMDQ0hKGhITZt2gR/f3/JhZGBQV5obGzElStXcObM\nGSQlJUFTUxPx8fHPbQj7ZxQyvJCSkiKZwjc0NODOnTuorKxEa2srysvLce/ePVRVVcHFxQUsFgvN\nzc3Q19dHeXk5WlpaoKmpCV1dXdTV1aGyshJ8Pl8SIG9uboZYLIaenh4mTJgADoeDx48fw9zcHJ6e\nntiwYQOysrKgrq4OExMTmJubY+DAgVBWVkZZWRnq6urw6NEjZGZmAgDMzc1RXFwMIgKfz4eqqirU\n1NRe6X0SEWpra5GXlwcHBwfJFVQoFCIuLg58Ph92dnZwcXF5bnyOiPD48WNcvHgR69atg4qKCgID\nA/Hdd99BW1tbSt+GdHiaG5qcnIzz588jKioKa9euxfr162XtGgNDB8RiMU6ePIk1a9bA3NwcI0eO\nxPvvvw97e/tX+m0rlOgKBALcvHkTw4cPx6RJk8DlcmFsbAw3NzeYmZlBXV0dBgYGcHJygp2dXZfE\nsIgI7e3tUFJSwv3791FcXIz09HQoKyvD2NgY+vr64PP5klmrh4cHZsyYIVUf2tvbwefzIRQKJa14\nWCwWWltbcfbsWdy6dQv37t1DQUEBtLW14e/vj4ULF0pux2VBY2Mj8vLy8PjxY5SVlaG+vh7Nzc3g\n8XjIy8tDZmYmdHR04O3tjeHDhyM4OPilMwYGBlmwZs0a/PbbbwgNDcXYsWNf+3y5EN3KykoYGxtj\n1qxZ0NDQQE1NDerr6zFmzBgoKyvj0aNHSE9PR0pKCszNzaGlpYVTp079bdNdPvroI5w4cULyum/f\nvhCJRFBVVYW/vz/GjBkDJycn9OvXD5qamlKx+aKHTC+Cz+cjPz8fN2/eRGJiIuLi4mBlZQULCwuY\nmppCT08PvXv3hpGRkWS2zogsgyLQr18/rFu3Dh9++OEbnS8T0f3qq6/A4/EkS/+GDh0KdXV1aGpq\nIjAwEOPHjweLxcL58+ehoaEBKysruLi4wMfH52//wywrK8PixYsRHR0t2bZ7924sXLhQqnbEYjGO\nHDmC77//Hg8ePEBjYyPs7Owwfvx4fPXVV9DR0XnmnObmZnz66ae4ceMGysvLYW1tDS8vLwwbNgzj\nx4+HoaGhVH1kYJAFsbGxmDFjBoYOHQotLS2EhYW9VhaLTERXW1sbjY2N0NbWRkNDA4yMjJCQkIDD\nhw/j119/RWtrK/T19aGrqws2mw0NDQ1oamrC2dkZnp6ecHd3f+W4aE9j7969WLhwIVauXIkhQ4aA\nzWbD29v7lXMua2trce/ePfj6+j43/EJEKCgowOLFi1FRUYGvv/4aXl5e0NLSQk5ODrZu3QoOh4Ow\nsLBnzv39998xbNgwTJ8+Haampqirq0N9fT34fD7mzp37RrdiDAzygFAoxIYNGxAXF4e2tjbJMxsA\nuHHjBnx8fF55LJmIrkgkwpkzZxAfHw+hUAgjIyOEhoZK9j18+BCNjY0oLy9HTU0NRCIRGhoaEBMT\ng0uXLsHZ2RnZ2dlvZFvRqa+vx5EjR7B27VrY2NjA3NwchoaGsLOzw4ABA+Dl5SW5G6iurgaHw4Gm\npibYbDbU1NSQn58PAFiwYAH27t0rGbeiogK2trZoamqCiooKFixYgLlz56K6uhpcLheFhYXIzc1F\nbGwsBgwYgKtXrz7jW3t7O7Zt24acnBw0NDRAWVkZQqEQsbGxAIBz584xwsugcIjFYixbtgxXr17F\nnj17oKGhAVNTUxgaGr5RRo1cxHSf4unpidTU1A7bevfuDVtbW5SUlEjais+aNQvjxo2Tqm1FQyAQ\nIC0tDeXl5SgvL0d+fj7u3r2L27dvQ0NDA3Z2dujTpw+Sk5NRX1/f4VwTExOcOXMGXl5ekm08Hg+T\nJ0/G3bt3oaqqCoFAAA0NDWhra0NfXx8mJiawsbHB4MGDMXjwYPz888+4ffs2mpqaIBaLUV9fj5KS\nEjQ1NaFv377gcDjQ09MDh8OBgYEB2Gw2Zs+eDSMjo+7+qBgY3oqHDx/Czs4OZmZmiIqKgq+v71ul\nL8qV6La1tSEtLQ1RUVGIj4/HgwcPUFNTg4cPH8LCwoKJCb4CRISSkhIUFhairq4O1dXVKC0txePH\nj5GbmytJdxs5ciQWL14MLpeL9PR0ZGVlISsrCyUlJTA0NIS9vT2srKwkYQs+n4/6+nrweDyUlpZi\n3LhxCAwMhJ6eHpSVlaGpqQlzc3MYGBgw+bQMPY729nYcP34cmzZtQktLC4YNGwZvb294eHjA0dER\nenp6rzzWW4luRUUFDAwMUFZWBjU1NXA4HOTl5YHL5aK+vh4tLS0YOHDgG5VQ++yzzxAREYFdu3bB\n0dERo0ePZpYxSoGnonz06FHs2rULgwYNgqenJ1xcXODq6gpra+u/bbycgeFlEBHy8vKQlJSE5ORk\npKWloaCgAOrq6li8eDFsbGzA4XDg6ekJbW1t1NXVobW1FUZGRhL9eivR1dLSAovFgpKSEoRCIbS0\ntAD8kVKho6MDVVVV3L59G7W1tXB3d4eJiYlkxZSdnR1MTU0l69k1NTVRW1sLHo+H+vp6pKam4vbt\n22hra0Nubi4KCwuhr68viU2Wl5ejoqIC+vr6yM7O/ttnNTAwMMgGIsKdO3fwww8/oLq6GuXl5bhz\n5w4EAgF69eoFNTU1NDY2wsbGBnZ2doiJiXlz0RWLxaioqACbzYZYLEZhYSEcHByemZHyeDxkZmZK\n4o9cLhcFBQXg8XiSJ9yNjY3Q09ODiYkJdHR0wOfz0dTUhKamJtTU1IDFYkFNTe2ZFh9eXl64du0a\nMztjYGCQGxobG8FisSQrXZuamlBYWAgul4uJEyfKT0z3RRARysvL8eTJExgaGsLY2Pi1C9EwMDAw\nyANy9SCNgYGBoafTmXYyT60YGBgYuhFGdBkYGBi6kZcWMWfyMRkYGBhej85yejsVXSaey8DAwCBd\nmPACAwMDQzfCiC4DAwNDN8KILgMDA0M3woguAwMDQzfCiC4DAwNDN/J/jNcjUmD3+H0AAAAASUVO\nRK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ax = plt.axes(projection=ccrs.PlateCarree())\n", + "ax.add_feature(cfeature.COASTLINE)\n", + "ax.add_geometries(points, ccrs.PlateCarree())\n", + "ax" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ax.add_geometries(points, ccrs.PlateCarree())" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "plt.axes?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "name": "" + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index 28fa7cb..5b2dfd6 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -1,54 +1,13 @@ -import calendar -import collections -import datetime -import gc -import json -import os -import platform -import time +"""Blitzortung webservice entry point for twistd.""" -from typing import Any +import os -from twisted.application import internet, service -from twisted.internet.defer import succeed -from twisted.internet.error import ReactorAlreadyInstalledError -from twisted.python import log -from twisted.python.log import FileLogObserver, ILogObserver, textFromEventDict, _safeFormat +from twisted.application import service +from twisted.python.log import ILogObserver from twisted.python.logfile import DailyLogFile -from twisted.python.util import untilConcludes -from twisted.web import server -from txjsonrpc_ng.web import jsonrpc -from txjsonrpc_ng.web.data import CacheableResult -from txjsonrpc_ng.web.jsonrpc import with_request - -from blitzortung.gis.constants import grid, global_grid -from blitzortung.gis.local_grid import LocalGrid -from blitzortung.service.cache import ServiceCache -from blitzortung.service.metrics import StatsDMetrics -from blitzortung.util import TimeConstraint - - -class LogObserver(FileLogObserver): - - def __init__(self, f, prefix=None): - prefix = '' if prefix is None else prefix - if len(prefix) > 0: - prefix += '' - self.prefix = prefix - FileLogObserver.__init__(self, f) - - def emit(self, event_dict): - text = textFromEventDict(event_dict) - if text is None: - return - time_str = self.formatTime(event_dict["time"]) - msg_str = _safeFormat("[%(prefix)s] %(text)s\n", { - "prefix": self.prefix, - "text": text.replace("\n", "\n\t") - }) - untilConcludes(self.write, time_str + " " + msg_str) - untilConcludes(self.flush) +# Import classes - these are used by the application +from blitzortung.service.base import Blitzortung, LogObserver # noqa: F401 application = service.Application("Blitzortung.org JSON-RPC Server") @@ -62,368 +21,32 @@ def emit(self, event_dict): except Exception: log_directory = None -JSON_CONTENT_TYPE = 'text/json' - -try: - from twisted.internet import epollreactor # type: ignore[attr-defined, no-redef] - reactor = epollreactor -except ImportError: - from twisted.internet import kqreactor as reactor # type: ignore[assignment, no-redef] - -try: - reactor.install() -except ReactorAlreadyInstalledError: - pass - -import blitzortung.cache -import blitzortung.config -import blitzortung.db -import blitzortung.geom -import blitzortung.service -from blitzortung.db.query import TimeInterval -from blitzortung.service.general import create_time_interval -from blitzortung.service.strike_grid import GridParameters - -is_pypy = platform.python_implementation() == 'PyPy' - -FORBIDDEN_IPS: dict[str, Any] = {} - -USER_AGENT_PREFIX = 'bo-android-' - - -class Blitzortung(jsonrpc.JSONRPC): - """ - Blitzortung.org JSON-RPC webservice for lightning strike data. - - Provides endpoints for querying strike data, grid-based visualizations, - and histograms with caching and rate limiting. - """ - - # Grid validation constants - MIN_GRID_BASE_LENGTH = 5000 - INVALID_GRID_BASE_LENGTH = 1000001 - GLOBAL_MIN_GRID_BASE_LENGTH = 10000 - - # Time validation constants - MAX_MINUTES_PER_DAY = 24 * 60 # 1440 minutes - DEFAULT_MINUTE_LENGTH = 60 - HISTOGRAM_MINUTE_THRESHOLD = 10 - - # User agent validation constants - MAX_COMPATIBLE_ANDROID_VERSION = 177 - - # Memory info interval - MEMORY_INFO_INTERVAL = 300 # 5 minutes - - def __init__(self, db_connection_pool=None, log_directory=None, - strike_query=None, strike_grid_query=None, - global_strike_grid_query=None, histogram_query=None, - cache=None, metrics=None, forbidden_ips=None, - create_connection_pool=None): - super().__init__() - if db_connection_pool is None and create_connection_pool is not None: - # Synchronous connection pool creation for testing - db_connection_pool = create_connection_pool() - self.connection_pool = db_connection_pool - self.log_directory = log_directory - self.strike_query = strike_query if strike_query is not None else blitzortung.service.strike_query() - self.strike_grid_query = strike_grid_query if strike_grid_query is not None else blitzortung.service.strike_grid_query() - self.global_strike_grid_query = global_strike_grid_query if global_strike_grid_query is not None else blitzortung.service.global_strike_grid_query() - self.histogram_query = histogram_query if histogram_query is not None else blitzortung.service.histogram_query() - self.check_count = 0 - self.cache = cache if cache is not None else ServiceCache() - self.current_period = self.__current_period() - self.current_data = collections.defaultdict(list) - self.next_memory_info = 0.0 - self.minute_constraints = TimeConstraint(self.DEFAULT_MINUTE_LENGTH, self.MAX_MINUTES_PER_DAY) - self.metrics = metrics if metrics is not None else StatsDMetrics() - self.forbidden_ips = forbidden_ips if forbidden_ips is not None else FORBIDDEN_IPS - - addSlash = True - - def __get_epoch(self, timestamp): - return calendar.timegm(timestamp.timetuple()) * 1000000 + timestamp.microsecond - - def __current_period(self): - return datetime.datetime.now(datetime.UTC).replace(second=0, microsecond=0) - - def __check_period(self): - if self.current_period != self.__current_period(): - self.current_data['timestamp'] = self.__get_epoch(self.current_period) - if self.log_directory: - with open(os.path.join(self.log_directory, self.current_period.strftime("%Y%m%d-%H%M.json")), - 'w') as output_file: - output_file.write(json.dumps(self.current_data)) - self.__restart_period() - - def __restart_period(self): - self.current_period = self.__current_period() - self.current_data = collections.defaultdict(list) - - @staticmethod - def __force_range(number, min_number, max_number): - if number < min_number: - return min_number - elif number > max_number: - return max_number - else: - return number - - def jsonrpc_check(self): - self.check_count += 1 - return {'count': self.check_count} - - @with_request - def jsonrpc_get_strikes(self, request, minute_length, id_or_offset=0): - """This endpoint is currently blocked for all requests.""" - minute_length = self.__force_range(minute_length, 0, self.MAX_MINUTES_PER_DAY) - - client = self.get_request_client(request) - user_agent = request.getHeader("User-Agent") - log.msg('get_strikes(%d, %d) %s %s BLOCKED' % (minute_length, id_or_offset, client, user_agent)) - return None - - def get_strikes_grid(self, minute_length, grid_baselength, minute_offset, region, count_threshold): - grid_parameters = GridParameters(grid[region].get_for(grid_baselength), grid_baselength, region, - count_threshold=count_threshold) - time_interval = create_time_interval(minute_length, minute_offset) - - grid_result, state = self.strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, - self.metrics.statsd) - - histogram_result = self.get_histogram(time_interval, envelope=grid_parameters.grid) \ - if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) - - combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) - - combined_result.addCallback(lambda value: CacheableResult(value)) - - return combined_result - - def get_global_strikes_grid(self, minute_length, grid_baselength, minute_offset, count_threshold): - grid_parameters = GridParameters(global_grid.get_for(grid_baselength), grid_baselength, - count_threshold=count_threshold) - time_interval = create_time_interval(minute_length, minute_offset) - - grid_result, state = self.global_strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, - self.metrics.statsd) - - histogram_result = self.get_histogram( - time_interval) if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) - - combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) - - combined_result.addCallback(lambda value: CacheableResult(value)) - - return combined_result - - def get_local_strikes_grid(self, x, y, grid_baselength, minute_length, minute_offset, count_threshold, data_area=5): - local_grid = LocalGrid(data_area=data_area, x=x, y=y) - grid_factory = local_grid.get_grid_factory() - grid_parameters = GridParameters(grid_factory.get_for(grid_baselength), grid_baselength, - count_threshold=count_threshold) - time_interval = create_time_interval(minute_length, minute_offset) - - grid_result, state = self.strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, - self.metrics.statsd) - - histogram_result = self.get_histogram(time_interval, envelope=grid_parameters.grid) \ - if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) - - combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) - - combined_result.addCallback(lambda value: CacheableResult(value)) - - return combined_result - - @with_request - def jsonrpc_get_strikes_raster(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1): - return self.jsonrpc_get_strikes_grid(request, minute_length, grid_base_length, minute_offset, region) - - @with_request - def jsonrpc_get_strokes_raster(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1): - return self.jsonrpc_get_strikes_grid(request, minute_length, grid_base_length, minute_offset, region) - - @with_request - def jsonrpc_get_global_strikes_grid(self, request, minute_length, grid_base_length=10000, minute_offset=0, - count_threshold=0): - self.memory_info() - client = self.get_request_client(request) - user_agent, user_agent_version = self.parse_user_agent(request) - - if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: - log.msg( - f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") - log.msg('get_global_strikes_grid(%d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( - minute_length, grid_base_length, minute_offset, count_threshold, - 0, client, user_agent)) - return {} - - original_grid_base_length = grid_base_length - grid_base_length = max(self.GLOBAL_MIN_GRID_BASE_LENGTH, grid_base_length) - minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) - count_threshold = max(0, count_threshold) - - cache = self.cache.global_strikes(minute_offset) - response = cache.get(self.get_global_strikes_grid, minute_length=minute_length, - grid_baselength=grid_base_length, - minute_offset=minute_offset, - count_threshold=count_threshold) - self.fix_bad_accept_header(request, user_agent) - - log.msg('get_global_strikes_grid(%d, %d, %d, >=%d) %.1f%% %s %s' % ( - minute_length, grid_base_length, minute_offset, count_threshold, - cache.get_ratio() * 100, client, user_agent)) - - self.__check_period() - self.current_data['get_strikes_grid'].append( - (self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, - minute_offset, - 0, count_threshold, client, user_agent)) - - self.metrics.for_global_strikes(minute_length, cache.get_ratio()) - - return response - - @with_request - def jsonrpc_get_local_strikes_grid(self, request, x, y, grid_base_length=10000, minute_length=60, minute_offset=0, - count_threshold=0, data_area=5): - self.memory_info() - client = self.get_request_client(request) - user_agent, user_agent_version = self.parse_user_agent(request) - - if client in self.forbidden_ips or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: - log.msg( - f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") - log.msg('get_local_strikes_grid(%d, %d, %d, %d, %d, >=%d, %d) BLOCKED %.1f%% %s %s' % ( - x, y, grid_base_length, minute_length, minute_offset, count_threshold, data_area, - 0, client, user_agent)) - return {} - - original_grid_base_length = grid_base_length - grid_base_length = max(self.MIN_GRID_BASE_LENGTH, grid_base_length) - minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) - count_threshold = max(0, count_threshold) - data_area = round(max(5, data_area)) - - cache = self.cache.local_strikes(minute_offset) - response = cache.get(self.get_local_strikes_grid, x=x, y=y, - grid_baselength=grid_base_length, - minute_length=minute_length, - minute_offset=minute_offset, - count_threshold=count_threshold, - data_area=data_area) - - log.msg('get_local_strikes_grid(%d, %d, %d, %d, %d, >=%d, %d) %.1f%% %d# %s %s' % ( - x, y, minute_length, grid_base_length, minute_offset, count_threshold, data_area, - cache.get_ratio() * 100, cache.get_size(), client, - user_agent)) - - self.__check_period() - self.current_data['get_strikes_grid'].append( - ( - self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, - minute_offset, - -1, count_threshold, client, user_agent, x, y, data_area)) - - self.metrics.for_local_strikes(minute_length, data_area, cache.get_ratio()) - - return response - - @with_request - def jsonrpc_get_strikes_grid(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1, - count_threshold=0): - self.memory_info() - client = self.get_request_client(request) - user_agent, user_agent_version = self.parse_user_agent(request) - - if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: - log.msg( - f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") - log.msg('get_strikes_grid(%d, %d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( - minute_length, grid_base_length, minute_offset, region, count_threshold, - 0, client, user_agent)) - return {} - - original_grid_base_length = grid_base_length - grid_base_length = max(self.MIN_GRID_BASE_LENGTH, grid_base_length) - minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) - region = max(1, region) - count_threshold = max(0, count_threshold) - - cache = self.cache.strikes(minute_offset) - response = cache.get(self.get_strikes_grid, minute_length=minute_length, - grid_baselength=grid_base_length, - minute_offset=minute_offset, region=region, - count_threshold=count_threshold) - self.fix_bad_accept_header(request, user_agent) - - log.msg('get_strikes_grid(%d, %d, %d, %d, >=%d) %.1f%% %s %s' % ( - minute_length, grid_base_length, minute_offset, region, count_threshold, - cache.get_ratio() * 100, client, user_agent)) - - self.__check_period() - self.current_data['get_strikes_grid'].append( - (self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, - minute_offset, - region, - count_threshold, client, user_agent)) - - self.metrics.for_strikes(minute_length, region, cache.get_ratio()) - - return response - - def parse_user_agent(self, request): - """Parse user agent string to extract version information.""" - user_agent = request.getHeader("User-Agent") - user_agent_version = 0 - if user_agent and user_agent.startswith(USER_AGENT_PREFIX): - user_agent_parts = user_agent.split(' ')[0].rsplit('-', 1) - if len(user_agent_parts) > 1 and user_agent_parts[0] == 'bo-android': - try: - user_agent_version = int(user_agent_parts[1]) - except ValueError: - pass - return user_agent, user_agent_version - - def fix_bad_accept_header(self, request, user_agent): - """Remove Accept-Encoding header for old Android client versions that have bugs.""" - if user_agent and user_agent.startswith(USER_AGENT_PREFIX): - user_agent_parts = user_agent.split(' ')[0].rsplit('-', 1) - if len(user_agent_parts) > 1 and user_agent_parts[0] == 'bo-android': - try: - version = int(user_agent_parts[1]) - if version <= self.MAX_COMPATIBLE_ANDROID_VERSION: - request.requestHeaders.removeHeader("Accept-Encoding") - except ValueError: - pass - - def get_histogram(self, time_interval: TimeInterval, region=None, envelope=None): - return self.cache.histogram.get(self.histogram_query.create, - time_interval=time_interval, - connection_pool=self.connection_pool, - region=region, - envelope=envelope) - - def get_request_client(self, request): - forward = request.getHeader("X-Forwarded-For") - if forward: - return forward.split(', ')[0] - return request.getClientIP() - def memory_info(self): - now = time.time() - if now > self.next_memory_info: - log.msg("### MEMORY INFO ###") - # pylint: disable=no-member - if is_pypy: - log.msg(gc.get_stats(True)) # type: ignore[call-arg] - else: - log.msg(gc.get_stats()) # type: ignore[call-arg] - self.next_memory_info = now + self.MEMORY_INFO_INTERVAL +# Set up connection pool when running via twistd +if not os.environ.get('BLITZORTUNG_TEST'): + from twisted.application import internet + from twisted.python import log + from twisted.web import server + import blitzortung.config + + def start_server(connection_pool): + """Start the JSON-RPC server with the given connection pool.""" + print("Connection pool is ready") + config = blitzortung.config.config() + port = config.get_webservice_port() + root = Blitzortung(connection_pool, log_directory) + site = server.Site(root) + site.displayTracebacks = False + jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') + jsonrpc_server.setServiceParent(application) + jsonrpc_server.startService() + return jsonrpc_server + + def on_error(failure): + """Error handler for connection pool failures.""" + log.err(failure, "Failed to create connection pool") + raise failure.value + + from blitzortung.service.db import create_connection_pool + deferred_connection_pool = create_connection_pool() + deferred_connection_pool.addCallback(start_server).addErrback(on_error) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 7b0e5fa..b979b1e 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -1,37 +1,402 @@ -"""Base service infrastructure for the Blitzortung webservice.""" +"""Blitzortung webservice classes.""" +import calendar +import collections +import datetime +import gc +import json import os +import platform +import time +from typing import Any -from twisted.application import internet +from twisted.internet.defer import succeed from twisted.python import log -from twisted.web import server +from twisted.python.log import FileLogObserver, textFromEventDict, _safeFormat +from twisted.python.util import untilConcludes +from txjsonrpc_ng.web import jsonrpc +from txjsonrpc_ng.web.data import CacheableResult +from txjsonrpc_ng.web.jsonrpc import with_request -from blitzortung.cli.webservice import Blitzortung, application, log_directory +from blitzortung.gis.constants import grid, global_grid +from blitzortung.gis.local_grid import LocalGrid +from blitzortung.service.cache import ServiceCache +from blitzortung.service.metrics import StatsDMetrics +from blitzortung.util import TimeConstraint +import blitzortung.cache import blitzortung.config +import blitzortung.db +import blitzortung.geom +import blitzortung.service +from blitzortung.db.query import TimeInterval +from blitzortung.service.general import create_time_interval +from blitzortung.service.strike_grid import GridParameters -def start_server(connection_pool): - """Start the JSON-RPC server with the given connection pool.""" - print("Connection pool is ready") - config = blitzortung.config.config() - port = config.get_webservice_port() - root = Blitzortung(connection_pool, log_directory) - site = server.Site(root) - site.displayTracebacks = False - jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') - jsonrpc_server.setServiceParent(application) - jsonrpc_server.startService() - return jsonrpc_server +JSON_CONTENT_TYPE = 'text/json' +is_pypy = platform.python_implementation() == 'PyPy' -def on_error(failure): - """Error handler for connection pool failures.""" - log.err(failure, "Failed to create connection pool") - raise failure.value +FORBIDDEN_IPS: dict[str, Any] = {} +USER_AGENT_PREFIX = 'bo-android-' -# Set up connection pool when this module is loaded (skip in test mode) -if not os.environ.get('BLITZORTUNG_TEST'): - from blitzortung.service.db import create_connection_pool - deferred_connection_pool = create_connection_pool() - deferred_connection_pool.addCallback(start_server).addErrback(on_error) + +class Blitzortung(jsonrpc.JSONRPC): + """ + Blitzortung.org JSON-RPC webservice for lightning strike data. + + Provides endpoints for querying strike data, grid-based visualizations, + and histograms with caching and rate limiting. + """ + + # Grid validation constants + MIN_GRID_BASE_LENGTH = 5000 + INVALID_GRID_BASE_LENGTH = 1000001 + GLOBAL_MIN_GRID_BASE_LENGTH = 10000 + + # Time validation constants + MAX_MINUTES_PER_DAY = 24 * 60 # 1440 minutes + DEFAULT_MINUTE_LENGTH = 60 + HISTOGRAM_MINUTE_THRESHOLD = 10 + + # User agent validation constants + MAX_COMPATIBLE_ANDROID_VERSION = 177 + + # Memory info interval + MEMORY_INFO_INTERVAL = 300 # 5 minutes + + def __init__(self, db_connection_pool=None, log_directory=None, + strike_query=None, strike_grid_query=None, + global_strike_grid_query=None, histogram_query=None, + cache=None, metrics=None, forbidden_ips=None, + create_connection_pool=None): + super().__init__() + if db_connection_pool is None and create_connection_pool is not None: + # Synchronous connection pool creation for testing + db_connection_pool = create_connection_pool() + self.connection_pool = db_connection_pool + self.log_directory = log_directory + self.strike_query = strike_query if strike_query is not None else blitzortung.service.strike_query() + self.strike_grid_query = strike_grid_query if strike_grid_query is not None else blitzortung.service.strike_grid_query() + self.global_strike_grid_query = global_strike_grid_query if global_strike_grid_query is not None else blitzortung.service.global_strike_grid_query() + self.histogram_query = histogram_query if histogram_query is not None else blitzortung.service.histogram_query() + self.check_count = 0 + self.cache = cache if cache is not None else ServiceCache() + self.current_period = self.__current_period() + self.current_data = collections.defaultdict(list) + self.next_memory_info = 0.0 + self.minute_constraints = TimeConstraint(self.DEFAULT_MINUTE_LENGTH, self.MAX_MINUTES_PER_DAY) + self.metrics = metrics if metrics is not None else StatsDMetrics() + self.forbidden_ips = forbidden_ips if forbidden_ips is not None else FORBIDDEN_IPS + + addSlash = True + + def __get_epoch(self, timestamp): + return calendar.timegm(timestamp.timetuple()) * 1000000 + timestamp.microsecond + + def __current_period(self): + return datetime.datetime.now(datetime.UTC).replace(second=0, microsecond=0) + + def __check_period(self): + if self.current_period != self.__current_period(): + self.current_data['timestamp'] = self.__get_epoch(self.current_period) + if self.log_directory: + with open(os.path.join(self.log_directory, self.current_period.strftime("%Y%m%d-%H%M.json")), + 'w') as output_file: + output_file.write(json.dumps(self.current_data)) + self.__restart_period() + + def __restart_period(self): + self.current_period = self.__current_period() + self.current_data = collections.defaultdict(list) + + @staticmethod + def __force_range(number, min_number, max_number): + if number < min_number: + return min_number + elif number > max_number: + return max_number + else: + return number + + def jsonrpc_check(self): + self.check_count += 1 + return {'count': self.check_count} + + @with_request + def jsonrpc_get_strikes(self, request, minute_length, id_or_offset=0): + """This endpoint is currently blocked for all requests.""" + minute_length = self.__force_range(minute_length, 0, self.MAX_MINUTES_PER_DAY) + + client = self.get_request_client(request) + user_agent = request.getHeader("User-Agent") + log.msg('get_strikes(%d, %d) %s %s BLOCKED' % (minute_length, id_or_offset, client, user_agent)) + return None + + def get_strikes_grid(self, minute_length, grid_baselength, minute_offset, region, count_threshold): + grid_parameters = GridParameters(grid[region].get_for(grid_baselength), grid_baselength, region, + count_threshold=count_threshold) + time_interval = create_time_interval(minute_length, minute_offset) + + grid_result, state = self.strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, + self.metrics.statsd) + + histogram_result = self.get_histogram(time_interval, envelope=grid_parameters.grid) \ + if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) + + combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) + + combined_result.addCallback(lambda value: CacheableResult(value)) + + return combined_result + + def get_global_strikes_grid(self, minute_length, grid_baselength, minute_offset, count_threshold): + grid_parameters = GridParameters(global_grid.get_for(grid_baselength), grid_baselength, + count_threshold=count_threshold) + time_interval = create_time_interval(minute_length, minute_offset) + + grid_result, state = self.global_strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, + self.metrics.statsd) + + histogram_result = self.get_histogram( + time_interval) if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) + + combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) + + combined_result.addCallback(lambda value: CacheableResult(value)) + + return combined_result + + def get_local_strikes_grid(self, x, y, grid_baselength, minute_length, minute_offset, count_threshold, data_area=5): + local_grid = LocalGrid(data_area=data_area, x=x, y=y) + grid_factory = local_grid.get_grid_factory() + grid_parameters = GridParameters(grid_factory.get_for(grid_baselength), grid_baselength, + count_threshold=count_threshold) + time_interval = create_time_interval(minute_length, minute_offset) + + grid_result, state = self.strike_grid_query.create(grid_parameters, time_interval, self.connection_pool, + self.metrics.statsd) + + histogram_result = self.get_histogram(time_interval, envelope=grid_parameters.grid) \ + if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) + + combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) + + combined_result.addCallback(lambda value: CacheableResult(value)) + + return combined_result + + @with_request + def jsonrpc_get_strikes_raster(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1): + return self.jsonrpc_get_strikes_grid(request, minute_length, grid_base_length, minute_offset, region) + + @with_request + def jsonrpc_get_strokes_raster(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1): + return self.jsonrpc_get_strikes_grid(request, minute_length, grid_base_length, minute_offset, region) + + @with_request + def jsonrpc_get_global_strikes_grid(self, request, minute_length, grid_base_length=10000, minute_offset=0, + count_threshold=0): + self.memory_info() + client = self.get_request_client(request) + user_agent, user_agent_version = self.parse_user_agent(request) + + if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( + 'content-type') != JSON_CONTENT_TYPE or request.getHeader( + 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + log.msg( + f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") + log.msg('get_global_strikes_grid(%d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( + minute_length, grid_base_length, minute_offset, count_threshold, + 0, client, user_agent)) + return {} + + original_grid_base_length = grid_base_length + grid_base_length = max(self.GLOBAL_MIN_GRID_BASE_LENGTH, grid_base_length) + minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) + count_threshold = max(0, count_threshold) + + cache = self.cache.global_strikes(minute_offset) + response = cache.get(self.get_global_strikes_grid, minute_length=minute_length, + grid_baselength=grid_base_length, + minute_offset=minute_offset, + count_threshold=count_threshold) + self.fix_bad_accept_header(request, user_agent) + + log.msg('get_global_strikes_grid(%d, %d, %d, >=%d) %.1f%% %s %s' % ( + minute_length, grid_base_length, minute_offset, count_threshold, + cache.get_ratio() * 100, client, user_agent)) + + self.__check_period() + self.current_data['get_strikes_grid'].append( + (self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, + minute_offset, + 0, count_threshold, client, user_agent)) + + self.metrics.for_global_strikes(minute_length, cache.get_ratio()) + + return response + + @with_request + def jsonrpc_get_local_strikes_grid(self, request, x, y, grid_base_length=10000, minute_length=60, minute_offset=0, + count_threshold=0, data_area=5): + self.memory_info() + client = self.get_request_client(request) + user_agent, user_agent_version = self.parse_user_agent(request) + + if client in self.forbidden_ips or request.getHeader( + 'content-type') != JSON_CONTENT_TYPE or request.getHeader( + 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + log.msg( + f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") + log.msg('get_local_strikes_grid(%d, %d, %d, %d, %d, >=%d, %d) BLOCKED %.1f%% %s %s' % ( + x, y, grid_base_length, minute_length, minute_offset, count_threshold, data_area, + 0, client, user_agent)) + return {} + + original_grid_base_length = grid_base_length + grid_base_length = max(self.MIN_GRID_BASE_LENGTH, grid_base_length) + minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) + count_threshold = max(0, count_threshold) + data_area = round(max(5, data_area)) + + cache = self.cache.local_strikes(minute_offset) + response = cache.get(self.get_local_strikes_grid, x=x, y=y, + grid_baselength=grid_base_length, + minute_length=minute_length, + minute_offset=minute_offset, + count_threshold=count_threshold, + data_area=data_area) + + log.msg('get_local_strikes_grid(%d, %d, %d, %d, %d, >=%d, %d) %.1f%% %d# %s %s' % ( + x, y, minute_length, grid_base_length, minute_offset, count_threshold, data_area, + cache.get_ratio() * 100, cache.get_size(), client, + user_agent)) + + self.__check_period() + self.current_data['get_strikes_grid'].append( + ( + self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, + minute_offset, + -1, count_threshold, client, user_agent, x, y, data_area)) + + self.metrics.for_local_strikes(minute_length, data_area, cache.get_ratio()) + + return response + + @with_request + def jsonrpc_get_strikes_grid(self, request, minute_length, grid_base_length=10000, minute_offset=0, region=1, + count_threshold=0): + self.memory_info() + client = self.get_request_client(request) + user_agent, user_agent_version = self.parse_user_agent(request) + + if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( + 'content-type') != JSON_CONTENT_TYPE or request.getHeader( + 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + log.msg( + f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") + log.msg('get_strikes_grid(%d, %d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( + minute_length, grid_base_length, minute_offset, region, count_threshold, + 0, client, user_agent)) + return {} + + original_grid_base_length = grid_base_length + grid_base_length = max(self.MIN_GRID_BASE_LENGTH, grid_base_length) + minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) + region = max(1, region) + count_threshold = max(0, count_threshold) + + cache = self.cache.strikes(minute_offset) + response = cache.get(self.get_strikes_grid, minute_length=minute_length, + grid_baselength=grid_base_length, + minute_offset=minute_offset, region=region, + count_threshold=count_threshold) + self.fix_bad_accept_header(request, user_agent) + + log.msg('get_strikes_grid(%d, %d, %d, %d, >=%d) %.1f%% %s %s' % ( + minute_length, grid_base_length, minute_offset, region, count_threshold, + cache.get_ratio() * 100, client, user_agent)) + + self.__check_period() + self.current_data['get_strikes_grid'].append( + (self.__get_epoch(datetime.datetime.now(datetime.UTC)), minute_length, original_grid_base_length, + minute_offset, + region, + count_threshold, client, user_agent)) + + self.metrics.for_strikes(minute_length, region, cache.get_ratio()) + + return response + + def parse_user_agent(self, request): + """Parse user agent string to extract version information.""" + user_agent = request.getHeader("User-Agent") + user_agent_version = 0 + if user_agent and user_agent.startswith(USER_AGENT_PREFIX): + user_agent_parts = user_agent.split(' ')[0].rsplit('-', 1) + if len(user_agent_parts) > 1 and user_agent_parts[0] == 'bo-android': + try: + user_agent_version = int(user_agent_parts[1]) + except ValueError: + pass + return user_agent, user_agent_version + + def fix_bad_accept_header(self, request, user_agent): + """Remove Accept-Encoding header for old Android client versions that have bugs.""" + if user_agent and user_agent.startswith(USER_AGENT_PREFIX): + user_agent_parts = user_agent.split(' ')[0].rsplit('-', 1) + if len(user_agent_parts) > 1 and user_agent_parts[0] == 'bo-android': + try: + version = int(user_agent_parts[1]) + if version <= self.MAX_COMPATIBLE_ANDROID_VERSION: + request.requestHeaders.removeHeader("Accept-Encoding") + except ValueError: + pass + + def get_histogram(self, time_interval: TimeInterval, region=None, envelope=None): + return self.cache.histogram.get(self.histogram_query.create, + time_interval=time_interval, + connection_pool=self.connection_pool, + region=region, + envelope=envelope) + + def get_request_client(self, request): + forward = request.getHeader("X-Forwarded-For") + if forward: + return forward.split(', ')[0] + return request.getClientIP() + + def memory_info(self): + now = time.time() + if now > self.next_memory_info: + log.msg("### MEMORY INFO ###") + # pylint: disable=no-member + if is_pypy: + log.msg(gc.get_stats(True)) # type: ignore[call-arg] + else: + log.msg(gc.get_stats()) # type: ignore[call-arg] + self.next_memory_info = now + self.MEMORY_INFO_INTERVAL + + +class LogObserver(FileLogObserver): + + def __init__(self, f, prefix=None): + prefix = '' if prefix is None else prefix + if len(prefix) > 0: + prefix += '' + self.prefix = prefix + FileLogObserver.__init__(self, f) + + def emit(self, event_dict): + text = textFromEventDict(event_dict) + if text is None: + return + time_str = self.formatTime(event_dict["time"]) + msg_str = _safeFormat("[%(prefix)s] %(text)s\n", { + "prefix": self.prefix, + "text": text.replace("\n", "\n\t") + }) + untilConcludes(self.write, time_str + " " + msg_str) + untilConcludes(self.flush) diff --git a/junit.xml b/junit.xml new file mode 100644 index 0000000..1ff53e7 --- /dev/null +++ b/junit.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pylint_report.txt b/pylint_report.txt new file mode 100644 index 0000000..28ebbc8 --- /dev/null +++ b/pylint_report.txt @@ -0,0 +1,1545 @@ +pylint...................................................................Failed +- hook id: pylint +- exit code: 30 + +************* Module blitzortung +blitzortung/__init__.py:39:4: W0107: Unnecessary pass statement (unnecessary-pass) +blitzortung/__init__.py:47:0: E0401: Unable to import 'injector' (import-error) +blitzortung/__init__.py:47:0: C0413: Import "import injector" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:49:0: C0413: Import "from . import builder" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:50:0: C0413: Import "from . import config" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:51:0: C0413: Import "from . import data" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:52:0: C0413: Import "from . import dataimport" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:53:0: C0413: Import "from . import db" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:54:0: C0413: Import "from . import geom" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:55:0: C0413: Import "from . import util" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:56:0: C0413: Import "from . import base" should be placed at the top of the module (wrong-import-position) +blitzortung/__init__.py:65:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.base +blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.builder +blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +************* Module blitzortung.builder.base +blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.builder.strike +blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) +************* Module blitzortung.cache +blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.db +blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) +blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) +blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) +blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.cli.imprt +blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) +blitzortung/cli/imprt.py:25:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'stopit' (import-error) +blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) +blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/imprt.py:28:0: C0411: standard import "optparse.OptionParser" should be placed before third party imports "requests", "statsd", "stopit" (wrong-import-order) +************* Module blitzortung.cli.imprt_websocket +blitzortung/cli/imprt_websocket.py:58:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:15:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:40:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) +blitzortung/cli/imprt_websocket.py:44:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:50:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) +blitzortung/cli/imprt_websocket.py:39:15: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:76:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:76:13: W0613: Unused argument 'we' (unused-argument) +blitzortung/cli/imprt_websocket.py:80:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:80:13: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:86:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:91:0: W0613: Unused argument 'args' (unused-argument) +blitzortung/cli/imprt_websocket.py:104:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:105:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:129:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/imprt_websocket.py:111:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/imprt_websocket.py:15:0: C0411: third party import "websocket.WebSocketConnectionClosedException" should be placed before first party imports "blitzortung.builder", "blitzortung.data", "blitzortung.logger" (wrong-import-order) +blitzortung/cli/imprt_websocket.py:34:4: W0611: Unused import thread (unused-import) +blitzortung/cli/imprt_websocket.py:36:4: W0611: Unused _thread imported as thread (unused-import) +************* Module blitzortung.cli.start_webservice +blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) +blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.update +blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) +blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/update.py:24:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/update.py:25:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) +blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) +blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) +blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/update.py:26:0: C0411: standard import "optparse.OptionParser" should be placed before third party imports "requests", "statsd" (wrong-import-order) +************* Module blitzortung.cli.webservice +blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) +blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) +blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) +blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) +blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) +blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) +blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) +blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) +blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) +blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) +blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) +blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) +blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) +blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) +blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) +blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) +blitzortung/cli/webservice.py:33:4: W0611: Unused defer imported from twisted.internet (unused-import) +************* Module blitzortung.cli.webservice_insertlog +blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) +blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) +blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) +************* Module blitzortung.config +blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) +blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.convert +blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.data +blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) +blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) +blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) +blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) +blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) +blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) +blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) +blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:25:0: W0611: Unused Union imported from typing (unused-import) +************* Module blitzortung.dataimport.__init__ +blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) +************* Module blitzortung.dataimport +blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) +************* Module blitzortung.dataimport.base +blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) +blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) +blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) +blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.dataimport.strike +blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.db.__init__ +blitzortung/db/__init__.py:45:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/__init__.py:46:0: C0301: Line too long (104/100) (line-too-long) +************* Module blitzortung.db +blitzortung/db/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/__init__.py:27:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/__init__.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/__init__.py:29:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/__init__.py:30:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/__init__.py:37:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/__init__.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:45:47: W0621: Redefining name 'config' from outer scope (line 32) (redefined-outer-name) +blitzortung/db/__init__.py:51:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:52:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:57:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:58:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:60:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) +blitzortung/db/__init__.py:63:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:64:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:66:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) +blitzortung/db/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:70:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:72:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) +blitzortung/db/__init__.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:76:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:78:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) +blitzortung/db/__init__.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:82:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:84:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) +blitzortung/db/__init__.py:87:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:88:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:90:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) +blitzortung/db/__init__.py:93:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:94:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:96:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) +blitzortung/db/__init__.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:100:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:102:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) +blitzortung/db/__init__.py:27:0: C0411: third party import "psycopg2" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:28:0: C0411: third party import "psycopg2.pool" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:29:0: C0411: third party import "psycopg2.extras" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:30:0: C0411: third party import "psycopg2.extensions" should be placed before local import ".compat" (wrong-import-order) +************* Module blitzortung.db.compat +blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) +************* Module blitzortung.db.grid_result +blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.mapper +blitzortung/db/mapper.py:37:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/mapper.py:23:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/mapper.py:24:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/mapper.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/mapper.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:44:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/mapper.py:23:0: W0611: Unused import shapely.wkb (unused-import) +************* Module blitzortung.db.query +blitzortung/db/query.py:49:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query.py:102:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:131:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/db/query.py:168:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:267:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:304:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/db/query.py:25:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query.py:27:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:91:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/query.py:119:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:124:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) +blitzortung/db/query.py:127:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:141:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:146:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:151:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:168:42: C0321: More than one statement on a single line (multiple-statements) +blitzortung/db/query.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:187:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:194:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:216:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:224:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:232:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:249:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:288:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:327:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:330:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:334:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/db/query.py:22:0: W0611: Unused Tuple imported from typing (unused-import) +blitzortung/db/query.py:22:0: W0611: Unused MutableSequence imported from typing (unused-import) +blitzortung/db/query.py:22:0: W0611: Unused Sequence imported from typing (unused-import) +************* Module blitzortung.db.query_builder +blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) +blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.table +blitzortung/db/table.py:177:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/table.py:184:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:200:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/db/table.py:214:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/table.py:226:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/db/table.py:236:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/table.py:237:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:270:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/table.py:279:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:286:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/table.py:290:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:294:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/db/table.py:297:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/db/table.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/table.py:37:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/table.py:38:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/table.py:39:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/table.py:40:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/table.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:118:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:125:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:133:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:136:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:142:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/db/table.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:151:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:170:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:170:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:178:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:184:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:234:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:234:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:254:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:276:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) +blitzortung/db/table.py:277:8: W0621: Redefining name 'data' from outer scope (line 33) (redefined-outer-name) +blitzortung/db/table.py:286:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) +blitzortung/db/table.py:288:8: W0621: Redefining name 'data' from outer scope (line 33) (redefined-outer-name) +blitzortung/db/table.py:294:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:297:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) +blitzortung/db/table.py:27:0: C0411: third party import "injector.inject" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" (wrong-import-order) +blitzortung/db/table.py:37:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) +blitzortung/db/table.py:38:0: C0411: third party import "psycopg2.pool" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) +blitzortung/db/table.py:39:0: C0411: third party import "psycopg2.extras" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) +blitzortung/db/table.py:40:0: C0411: third party import "psycopg2.extensions" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) +blitzortung/db/table.py:42:0: C0411: standard import "abc.ABCMeta" should be placed before third party imports "injector.inject", "psycopg2", "psycopg2.pool", "psycopg2.extras", "psycopg2.extensions", first party import "blitzortung.db.grid_result.build_grid_result", and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) +blitzortung/db/table.py:23:0: W0611: Unused import math (unused-import) +blitzortung/db/table.py:30:0: W0611: Unused import query (unused-import) +************* Module blitzortung.geom +blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) +blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) +blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:25:0: W0611: Unused Any imported from typing (unused-import) +************* Module blitzortung.gis.constants +blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) +************* Module blitzortung.gis.local_grid +blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) +blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.lock +blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) +blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.logger +blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service +blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +************* Module blitzortung.service.cache +blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.db +blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) +blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) +blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.general +blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.histogram +blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service.metrics +blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.strike +blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:27:0: W0611: Unused create_time_interval imported from general (unused-import) +************* Module blitzortung.service.strike_grid +blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.util +blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) +blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) +blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) +blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/util.py:25:0: W0611: Unused Union imported from typing (unused-import) +************* Module blitzortung.websocket +blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) +************* Module test_builder_base +tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) +************* Module test_builder_strike +tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) +tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) +tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) +tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) +tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) +tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) +tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) +************* Module tests.cli.test_update +tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) +tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) +tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) +tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) +tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) +tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) +tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) +tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) +tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) +tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) +tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) +tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) +tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) +************* Module tests.conftest +tests/conftest.py:43:0: C0301: Line too long (104/100) (line-too-long) +tests/conftest.py:92:0: C0301: Line too long (220/100) (line-too-long) +tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/conftest.py:5:0: E0401: Unable to import 'psycopg2' (import-error) +tests/conftest.py:6:0: E0401: Unable to import 'pyproj' (import-error) +tests/conftest.py:7:0: E0401: Unable to import 'pytest' (import-error) +tests/conftest.py:8:0: E0401: Unable to import 'testcontainers.postgres' (import-error) +tests/conftest.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:17:18: W0621: Redefining name 'now' from outer scope (line 12) (redefined-outer-name) +tests/conftest.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:28:17: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) +tests/conftest.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:43:23: W0621: Redefining name 'utm_north' from outer scope (line 33) (redefined-outer-name) +tests/conftest.py:43:34: W0621: Redefining name 'utm_south' from outer scope (line 38) (redefined-outer-name) +tests/conftest.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:67:24: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) +tests/conftest.py:72:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:91:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:91:22: W0621: Redefining name 'postgres_container' from outer scope (line 72) (redefined-outer-name) +tests/conftest.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:96:20: W0621: Redefining name 'connection_string' from outer scope (line 91) (redefined-outer-name) +tests/conftest.py:97:4: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) +tests/conftest.py:103:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:103:15: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) +tests/conftest.py:5:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:6:0: C0411: third party import "pyproj" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:7:0: C0411: third party import "pytest" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:8:0: C0411: third party import "testcontainers.postgres.PostgresContainer" should be placed before first party import "blitzortung.db" (wrong-import-order) +************* Module test_dataimport_base +tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +************* Module tests.db.test_db +tests/db/test_db.py:111:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:206:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:216:0: C0301: Line too long (119/100) (line-too-long) +tests/db/test_db.py:234:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db.py:252:0: C0301: Line too long (122/100) (line-too-long) +tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/db/test_db.py:6:0: E0401: Unable to import 'psycopg2' (import-error) +tests/db/test_db.py:7:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db.py:8:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db.py:9:0: E0401: Unable to import 'psycopg2.pool' (import-error) +tests/db/test_db.py:10:0: E0401: Unable to import 'testcontainers.postgres' (import-error) +tests/db/test_db.py:20:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:21:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +tests/db/test_db.py:22:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +tests/db/test_db.py:24:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:30:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) +tests/db/test_db.py:34:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:79:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:88:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:102:8: C0104: Disallowed name "foo" (disallowed-name) +tests/db/test_db.py:110:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:110:19: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:124:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:124:33: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:124:33: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:124:49: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:131:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:131:42: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:141:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:141:43: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:150:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:150:46: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:160:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:160:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:160:53: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:170:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:170:49: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:170:65: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:180:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:180:55: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:180:71: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:190:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:190:58: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:190:74: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:206:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:206:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:206:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:206:32: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:206:77: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:216:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:216:60: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:216:111: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:234:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:234:53: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:234:98: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:252:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:252:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:252:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:252:39: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:252:91: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:263:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:263:34: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:263:34: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:275:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:275:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:2:0: W0611: Unused import os (unused-import) +tests/db/test_db.py:9:0: W0611: Unused ThreadedConnectionPool imported from psycopg2.pool (unused-import) +tests/db/test_db.py:10:0: W0611: Unused PostgresContainer imported from testcontainers.postgres (unused-import) +************* Module tests.db.test_db_init +tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_mapper +tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +************* Module tests.db.test_db_query +tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_query_builder +tests/db/test_db_query_builder.py:65:0: C0301: Line too long (115/100) (line-too-long) +tests/db/test_db_query_builder.py:66:0: C0301: Line too long (103/100) (line-too-long) +tests/db/test_db_query_builder.py:79:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:80:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:85:0: C0301: Line too long (116/100) (line-too-long) +tests/db/test_db_query_builder.py:109:0: C0301: Line too long (110/100) (line-too-long) +tests/db/test_db_query_builder.py:115:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:116:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:134:0: C0301: Line too long (199/100) (line-too-long) +tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'shapely' (import-error) +tests/db/test_db_query_builder.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query_builder.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:34:15: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:34:25: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) +tests/db/test_db_query_builder.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:39:22: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:39:22: W0613: Unused argument 'end_time' (unused-argument) +tests/db/test_db_query_builder.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:49:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:53:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:59:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:59:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:59:69: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:73:45: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:57: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:67: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:98:62: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:74: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:84: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:100:8: W0612: Unused variable 'query' (unused-variable) +tests/db/test_db_query_builder.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:103:66: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:103:78: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:103:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:123:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:129:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_query_builder.py:129:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/db/test_db_query_builder.py:129:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:69: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:47: W0613: Unused argument 'start_time' (unused-argument) +tests/db/test_db_query_builder.py:24:0: W0611: Unused import shapely (unused-import) +************* Module tests.db.test_db_table +tests/db/test_db_table.py:124:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:133:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:142:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:24:0: W0611: Unused import pytest (unused-import) +************* Module tests.gis.test_local_grid +tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) +tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) +************* Module tests.service.test_general +tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.service.test_histogram +tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_metrics +tests/service/test_metrics.py:60:0: C0301: Line too long (127/100) (line-too-long) +tests/service/test_metrics.py:63:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_metrics.py:81:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_metrics.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_metrics.py:20:22: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:24:52: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:40:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_metrics.py:40:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_metrics.py:40:47: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:60:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:60:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:60:68: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:81:62: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:2:0: C0411: standard import "unittest.mock.Mock" should be placed before third party import "pytest" (wrong-import-order) +************* Module tests.service.test_service_db +tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) +tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) +tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) +tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) +************* Module tests.service.test_service_init +tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) +tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) +tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) +tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) +tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_strike_grid +tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) +tests/service/test_strike_grid.py:51:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:60:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:65:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:66:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:91:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:119:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:139:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:148:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:153:0: C0301: Line too long (125/100) (line-too-long) +tests/service/test_strike_grid.py:154:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:178:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:202:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_strike_grid.py:15:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:20:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:25:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:32:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:51:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:51:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:51:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:51:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:51:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) +tests/service/test_strike_grid.py:51:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:72:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:72:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:91:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:91:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:122:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:125:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:139:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:139:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:139:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:139:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:139:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) +tests/service/test_strike_grid.py:139:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:148:25: W0612: Unused variable 'state' (unused-variable) +tests/service/test_strike_grid.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:159:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:159:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:178:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:178:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:11:0: W0611: Unused time_interval imported from tests.conftest (unused-import) +************* Module tests.service.test_strikes +tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strikes.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strikes.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:35:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:35:33: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:39:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_strikes.py:39:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_strikes.py:39:20: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) +tests/service/test_strikes.py:39:35: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:39:50: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:39:65: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_strikes.py:39:77: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:39:50: W0613: Unused argument 'query_builder' (unused-argument) +tests/service/test_strikes.py:39:65: W0613: Unused argument 'connection' (unused-argument) +tests/service/test_strikes.py:39:77: W0613: Unused argument 'strike_mapper' (unused-argument) +tests/service/test_strikes.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:42:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_strikes.py:42:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_strikes.py:42:31: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:42:46: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:42:61: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_strikes.py:42:73: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) +tests/service/test_strikes.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:56:44: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:56:59: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:77:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:77:50: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:77:65: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:77:50: W0613: Unused argument 'time_interval' (unused-argument) +tests/service/test_strikes.py:85:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:85:54: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:9:0: W0611: Unused time_interval imported from tests.conftest (unused-import) +************* Module tests.test_base +tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_builder +tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) +tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) +tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) +tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) +tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) +tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_cache +tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) +tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_config +tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) +tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) +tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) +tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) +************* Module tests.test_convert +tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_data +tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) +tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) +tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) +tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) +tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) +tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) +tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) +tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) +tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) +tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.test_data_benchmark +tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) +tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) +************* Module tests.test_dataimport +tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) +tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) +tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) +************* Module tests.test_geom +tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) +tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) +tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) +tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) +tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_lock +tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.test_util +tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) +tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) +tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) +tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) +tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_websocket +tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) +tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) +tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) + +------------------------------------------------------------------ +Your code has been rated at 6.19/10 (previous run: 6.19/10, +0.00) + diff --git a/pylint_report_2.txt b/pylint_report_2.txt new file mode 100644 index 0000000..743be4a --- /dev/null +++ b/pylint_report_2.txt @@ -0,0 +1,1513 @@ +pylint...................................................................Failed +- hook id: pylint +- exit code: 30 + +************* Module blitzortung +blitzortung/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:54:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:58:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.base +blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.builder +blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +************* Module blitzortung.builder.base +blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.builder.strike +blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) +************* Module blitzortung.cache +blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.db +blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) +blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) +blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) +blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.cli.imprt +blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) +blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt.py:28:0: E0401: Unable to import 'stopit' (import-error) +blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) +blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.imprt_websocket +blitzortung/cli/imprt_websocket.py:53:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:11:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:35:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) +blitzortung/cli/imprt_websocket.py:39:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:45:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) +blitzortung/cli/imprt_websocket.py:34:15: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:71:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:71:13: W0613: Unused argument 'we' (unused-argument) +blitzortung/cli/imprt_websocket.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:75:13: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:86:0: W0613: Unused argument 'args' (unused-argument) +blitzortung/cli/imprt_websocket.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:100:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:124:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/imprt_websocket.py:106:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.start_webservice +blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) +blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.update +blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) +blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/update.py:25:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/update.py:26:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) +blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) +blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) +blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.webservice +blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) +blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) +blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) +blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) +blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) +blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) +blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) +blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) +blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) +blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) +blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) +blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) +blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) +blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) +blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) +blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) +blitzortung/cli/webservice.py:33:4: W0611: Unused defer imported from twisted.internet (unused-import) +************* Module blitzortung.cli.webservice_insertlog +blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) +blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) +blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) +************* Module blitzortung.config +blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) +blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.convert +blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.data +blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) +blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) +blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) +blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) +blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) +blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) +blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) +blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.dataimport.__init__ +blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) +************* Module blitzortung.dataimport +blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) +************* Module blitzortung.dataimport.base +blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) +blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) +blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) +blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.dataimport.strike +blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.db.__init__ +blitzortung/db/__init__.py:45:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/__init__.py:46:0: C0301: Line too long (104/100) (line-too-long) +************* Module blitzortung.db +blitzortung/db/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/__init__.py:27:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/__init__.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/__init__.py:29:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/__init__.py:30:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/__init__.py:37:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/__init__.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:45:47: W0621: Redefining name 'config' from outer scope (line 32) (redefined-outer-name) +blitzortung/db/__init__.py:51:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:52:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:57:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:58:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:60:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) +blitzortung/db/__init__.py:63:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:64:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:66:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) +blitzortung/db/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:70:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:72:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) +blitzortung/db/__init__.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:76:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:78:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) +blitzortung/db/__init__.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:82:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:84:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) +blitzortung/db/__init__.py:87:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:88:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:90:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) +blitzortung/db/__init__.py:93:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:94:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:96:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) +blitzortung/db/__init__.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:100:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:102:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) +blitzortung/db/__init__.py:27:0: C0411: third party import "psycopg2" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:28:0: C0411: third party import "psycopg2.pool" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:29:0: C0411: third party import "psycopg2.extras" should be placed before local import ".compat" (wrong-import-order) +blitzortung/db/__init__.py:30:0: C0411: third party import "psycopg2.extensions" should be placed before local import ".compat" (wrong-import-order) +************* Module blitzortung.db.compat +blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) +************* Module blitzortung.db.grid_result +blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.mapper +blitzortung/db/mapper.py:37:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/mapper.py:23:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/mapper.py:24:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/mapper.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/mapper.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:44:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/mapper.py:23:0: W0611: Unused import shapely.wkb (unused-import) +************* Module blitzortung.db.query +blitzortung/db/query.py:48:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query.py:101:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:130:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/db/query.py:167:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/query.py:265:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:302:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:23:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query.py:26:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:83:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:90:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/query.py:118:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:123:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) +blitzortung/db/query.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:167:42: C0321: More than one statement on a single line (multiple-statements) +blitzortung/db/query.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:186:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:193:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:215:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:223:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:227:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:231:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:248:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:287:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:326:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:329:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:343:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:333:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.db.query_builder +blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) +blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.table +blitzortung/db/table.py:173:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/table.py:180:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:196:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/db/table.py:210:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/table.py:222:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/db/table.py:232:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/table.py:233:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:266:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/table.py:275:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:282:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/table.py:286:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:290:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/db/table.py:293:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/db/table.py:25:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/table.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/table.py:27:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/table.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/table.py:29:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/table.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:113:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:114:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:121:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:138:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/db/table.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:166:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:166:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:174:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:230:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:230:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:273:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) +blitzortung/db/table.py:284:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) +blitzortung/db/table.py:290:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.geom +blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) +blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) +blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.gis.constants +blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) +************* Module blitzortung.gis.local_grid +blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) +blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.lock +blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) +blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.logger +blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service +blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +************* Module blitzortung.service.cache +blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.db +blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) +blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) +blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.general +blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.histogram +blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service.metrics +blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.strike +blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:27:0: W0611: Unused create_time_interval imported from general (unused-import) +************* Module blitzortung.service.strike_grid +blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.util +blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) +blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) +blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) +blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.websocket +blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) +************* Module test_builder_base +tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) +************* Module test_builder_strike +tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) +tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) +tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) +tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) +tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) +tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) +tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) +************* Module tests.cli.test_update +tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) +tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) +tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) +tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) +tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) +tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) +tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) +tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) +tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) +tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) +tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) +tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) +tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) +************* Module tests.conftest +tests/conftest.py:43:0: C0301: Line too long (104/100) (line-too-long) +tests/conftest.py:92:0: C0301: Line too long (220/100) (line-too-long) +tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/conftest.py:5:0: E0401: Unable to import 'psycopg2' (import-error) +tests/conftest.py:6:0: E0401: Unable to import 'pyproj' (import-error) +tests/conftest.py:7:0: E0401: Unable to import 'pytest' (import-error) +tests/conftest.py:8:0: E0401: Unable to import 'testcontainers.postgres' (import-error) +tests/conftest.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:17:18: W0621: Redefining name 'now' from outer scope (line 12) (redefined-outer-name) +tests/conftest.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:28:17: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) +tests/conftest.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:43:23: W0621: Redefining name 'utm_north' from outer scope (line 33) (redefined-outer-name) +tests/conftest.py:43:34: W0621: Redefining name 'utm_south' from outer scope (line 38) (redefined-outer-name) +tests/conftest.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:67:24: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) +tests/conftest.py:72:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:91:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:91:22: W0621: Redefining name 'postgres_container' from outer scope (line 72) (redefined-outer-name) +tests/conftest.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:96:20: W0621: Redefining name 'connection_string' from outer scope (line 91) (redefined-outer-name) +tests/conftest.py:97:4: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) +tests/conftest.py:103:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:103:15: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) +tests/conftest.py:5:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:6:0: C0411: third party import "pyproj" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:7:0: C0411: third party import "pytest" should be placed before first party import "blitzortung.db" (wrong-import-order) +tests/conftest.py:8:0: C0411: third party import "testcontainers.postgres.PostgresContainer" should be placed before first party import "blitzortung.db" (wrong-import-order) +************* Module test_dataimport_base +tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +************* Module tests.db.test_db +tests/db/test_db.py:111:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:206:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:216:0: C0301: Line too long (119/100) (line-too-long) +tests/db/test_db.py:234:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db.py:252:0: C0301: Line too long (122/100) (line-too-long) +tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/db/test_db.py:6:0: E0401: Unable to import 'psycopg2' (import-error) +tests/db/test_db.py:7:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db.py:8:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db.py:9:0: E0401: Unable to import 'psycopg2.pool' (import-error) +tests/db/test_db.py:10:0: E0401: Unable to import 'testcontainers.postgres' (import-error) +tests/db/test_db.py:20:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:21:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +tests/db/test_db.py:22:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +tests/db/test_db.py:24:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:30:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) +tests/db/test_db.py:34:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:79:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:88:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:102:8: C0104: Disallowed name "foo" (disallowed-name) +tests/db/test_db.py:110:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:110:19: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:124:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:124:33: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:124:33: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:124:49: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:131:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:131:42: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:141:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:141:43: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:150:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:150:46: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:160:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:160:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:160:53: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:170:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:170:49: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:170:65: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:180:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:180:55: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:180:71: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:190:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:190:58: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:190:74: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:206:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:206:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:206:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:206:32: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:206:77: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:216:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:216:60: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:216:111: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:234:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:234:53: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:234:98: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:252:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:252:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:252:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:252:39: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:252:91: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:263:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:263:34: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:263:34: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:275:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:275:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) +tests/db/test_db.py:2:0: W0611: Unused import os (unused-import) +tests/db/test_db.py:9:0: W0611: Unused ThreadedConnectionPool imported from psycopg2.pool (unused-import) +tests/db/test_db.py:10:0: W0611: Unused PostgresContainer imported from testcontainers.postgres (unused-import) +************* Module tests.db.test_db_init +tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_mapper +tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +************* Module tests.db.test_db_query +tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_query_builder +tests/db/test_db_query_builder.py:65:0: C0301: Line too long (115/100) (line-too-long) +tests/db/test_db_query_builder.py:66:0: C0301: Line too long (103/100) (line-too-long) +tests/db/test_db_query_builder.py:79:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:80:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:85:0: C0301: Line too long (116/100) (line-too-long) +tests/db/test_db_query_builder.py:109:0: C0301: Line too long (110/100) (line-too-long) +tests/db/test_db_query_builder.py:115:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:116:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:134:0: C0301: Line too long (199/100) (line-too-long) +tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'shapely' (import-error) +tests/db/test_db_query_builder.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query_builder.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:34:15: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:34:25: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) +tests/db/test_db_query_builder.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:39:22: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:39:22: W0613: Unused argument 'end_time' (unused-argument) +tests/db/test_db_query_builder.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:49:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:53:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:59:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:59:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:59:69: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:73:45: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:57: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:73:67: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:98:62: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:74: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:98:84: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:100:8: W0612: Unused variable 'query' (unused-variable) +tests/db/test_db_query_builder.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:103:66: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:103:78: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:103:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:123:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:129:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_query_builder.py:129:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/db/test_db_query_builder.py:129:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:69: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) +tests/db/test_db_query_builder.py:129:47: W0613: Unused argument 'start_time' (unused-argument) +tests/db/test_db_query_builder.py:24:0: W0611: Unused import shapely (unused-import) +************* Module tests.db.test_db_table +tests/db/test_db_table.py:124:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:133:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:142:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:24:0: W0611: Unused import pytest (unused-import) +************* Module tests.gis.test_local_grid +tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) +tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) +************* Module tests.service.test_general +tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.service.test_histogram +tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_metrics +tests/service/test_metrics.py:60:0: C0301: Line too long (127/100) (line-too-long) +tests/service/test_metrics.py:63:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_metrics.py:81:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_metrics.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_metrics.py:20:22: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:24:52: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:40:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_metrics.py:40:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_metrics.py:40:47: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:60:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:60:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:60:68: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:81:62: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) +tests/service/test_metrics.py:2:0: C0411: standard import "unittest.mock.Mock" should be placed before third party import "pytest" (wrong-import-order) +************* Module tests.service.test_service_db +tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) +tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) +tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) +tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) +************* Module tests.service.test_service_init +tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) +tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) +tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) +tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) +tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_strike_grid +tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) +tests/service/test_strike_grid.py:51:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:60:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:65:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:66:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:91:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:119:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:139:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:148:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:153:0: C0301: Line too long (125/100) (line-too-long) +tests/service/test_strike_grid.py:154:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:178:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:202:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_strike_grid.py:15:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:20:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:25:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:32:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:51:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:51:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:51:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:51:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:51:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) +tests/service/test_strike_grid.py:51:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:72:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:72:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:91:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:91:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:122:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:125:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:139:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:139:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:139:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:139:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) +tests/service/test_strike_grid.py:139:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) +tests/service/test_strike_grid.py:139:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:148:25: W0612: Unused variable 'state' (unused-variable) +tests/service/test_strike_grid.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:159:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:159:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:178:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) +tests/service/test_strike_grid.py:178:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) +tests/service/test_strike_grid.py:11:0: W0611: Unused time_interval imported from tests.conftest (unused-import) +************* Module tests.service.test_strikes +tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strikes.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strikes.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:35:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:35:33: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:39:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_strikes.py:39:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_strikes.py:39:20: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) +tests/service/test_strikes.py:39:35: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:39:50: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:39:65: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_strikes.py:39:77: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:39:50: W0613: Unused argument 'query_builder' (unused-argument) +tests/service/test_strikes.py:39:65: W0613: Unused argument 'connection' (unused-argument) +tests/service/test_strikes.py:39:77: W0613: Unused argument 'strike_mapper' (unused-argument) +tests/service/test_strikes.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:42:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_strikes.py:42:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_strikes.py:42:31: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:42:46: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_strikes.py:42:61: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_strikes.py:42:73: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) +tests/service/test_strikes.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:56:44: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:56:59: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:77:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:77:50: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:77:65: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) +tests/service/test_strikes.py:77:50: W0613: Unused argument 'time_interval' (unused-argument) +tests/service/test_strikes.py:85:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:85:54: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) +tests/service/test_strikes.py:9:0: W0611: Unused time_interval imported from tests.conftest (unused-import) +************* Module tests.test_base +tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_builder +tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) +tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) +tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) +tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) +tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) +tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_cache +tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) +tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_config +tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) +tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) +tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) +tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) +************* Module tests.test_convert +tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_data +tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) +tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) +tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) +tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) +tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) +tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) +tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) +tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) +tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) +tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.test_data_benchmark +tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) +tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) +************* Module tests.test_dataimport +tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) +tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) +tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) +************* Module tests.test_geom +tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) +tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) +tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) +tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) +tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_lock +tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.test_util +tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) +tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) +tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) +tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) +tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_websocket +tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) +tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) +tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) + +------------------------------------------------------------------ +Your code has been rated at 6.25/10 (previous run: 6.19/10, +0.05) + diff --git a/pylint_report_3.txt b/pylint_report_3.txt new file mode 100644 index 0000000..7a26cdf --- /dev/null +++ b/pylint_report_3.txt @@ -0,0 +1,1478 @@ +pylint...................................................................Failed +- hook id: pylint +- exit code: 30 + +************* Module blitzortung +blitzortung/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:54:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/__init__.py:58:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.base +blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.builder +blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +************* Module blitzortung.builder.base +blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.builder.strike +blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) +************* Module blitzortung.cache +blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.db +blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) +blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) +blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) +blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.cli.imprt +blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) +blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt.py:28:0: E0401: Unable to import 'stopit' (import-error) +blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) +blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.imprt_websocket +blitzortung/cli/imprt_websocket.py:53:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:11:0: E0401: Unable to import 'websocket' (import-error) +blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/cli/imprt_websocket.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:35:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) +blitzortung/cli/imprt_websocket.py:39:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:45:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) +blitzortung/cli/imprt_websocket.py:34:15: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:71:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:71:13: W0613: Unused argument 'we' (unused-argument) +blitzortung/cli/imprt_websocket.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:75:13: W0613: Unused argument 'ws' (unused-argument) +blitzortung/cli/imprt_websocket.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:86:0: W0613: Unused argument 'args' (unused-argument) +blitzortung/cli/imprt_websocket.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/imprt_websocket.py:100:4: W0603: Using the global statement (global-statement) +blitzortung/cli/imprt_websocket.py:124:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/imprt_websocket.py:106:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.start_webservice +blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) +blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.cli.update +blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) +blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/cli/update.py:25:0: E0401: Unable to import 'requests' (import-error) +blitzortung/cli/update.py:26:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) +blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) +blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) +blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) +blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) +************* Module blitzortung.cli.webservice +blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) +blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) +blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) +blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) +blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) +blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) +blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) +blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) +blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) +blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) +blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) +blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) +blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) +blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) +blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) +blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) +blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) +blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) +blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) +blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) +blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) +************* Module blitzortung.cli.webservice_insertlog +blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) +blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) +blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) +blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) +blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) +blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) +blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) +************* Module blitzortung.config +blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) +blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.convert +blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.data +blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) +blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) +blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) +blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) +blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) +blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) +blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) +blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) +blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.dataimport.__init__ +blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) +************* Module blitzortung.dataimport +blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) +************* Module blitzortung.dataimport.base +blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) +blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) +blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) +blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) +blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) +blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.dataimport.strike +blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) +blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) +blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) +blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.db.__init__ +blitzortung/db/__init__.py:44:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/__init__.py:45:0: C0301: Line too long (104/100) (line-too-long) +************* Module blitzortung.db +blitzortung/db/__init__.py:23:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/__init__.py:24:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/__init__.py:25:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/__init__.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/__init__.py:27:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/__init__.py:36:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/__init__.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:44:47: W0621: Redefining name 'config' from outer scope (line 31) (redefined-outer-name) +blitzortung/db/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:51:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:56:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:57:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:59:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) +blitzortung/db/__init__.py:62:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:63:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:65:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) +blitzortung/db/__init__.py:68:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:69:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:71:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) +blitzortung/db/__init__.py:74:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:75:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:77:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) +blitzortung/db/__init__.py:80:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:81:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:83:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) +blitzortung/db/__init__.py:86:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:87:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:89:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) +blitzortung/db/__init__.py:92:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:93:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:95:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) +blitzortung/db/__init__.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/__init__.py:99:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/db/__init__.py:101:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) +************* Module blitzortung.db.compat +blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) +************* Module blitzortung.db.grid_result +blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.mapper +blitzortung/db/mapper.py:36:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/mapper.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/mapper.py:28:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/mapper.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/mapper.py:43:0: C0115: Missing class docstring (missing-class-docstring) +************* Module blitzortung.db.query +blitzortung/db/query.py:48:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query.py:101:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:130:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/db/query.py:167:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/query.py:265:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/query.py:302:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query.py:23:0: E0401: Unable to import 'shapely.geometry.base' (import-error) +blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query.py:26:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:83:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:90:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/query.py:118:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:123:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) +blitzortung/db/query.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:167:42: C0321: More than one statement on a single line (multiple-statements) +blitzortung/db/query.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:186:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:193:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:215:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:223:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:227:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:231:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:248:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:287:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query.py:326:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:329:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:343:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query.py:333:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.db.query_builder +blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) +blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) +blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) +blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) +blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.db.table +blitzortung/db/table.py:173:0: C0301: Line too long (105/100) (line-too-long) +blitzortung/db/table.py:180:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:196:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/db/table.py:210:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/db/table.py:222:0: C0301: Line too long (118/100) (line-too-long) +blitzortung/db/table.py:232:0: C0301: Line too long (106/100) (line-too-long) +blitzortung/db/table.py:233:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/db/table.py:266:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/db/table.py:275:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:282:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/db/table.py:286:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/db/table.py:290:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/db/table.py:293:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/db/table.py:25:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/db/table.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) +blitzortung/db/table.py:27:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/db/table.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) +blitzortung/db/table.py:29:0: E0401: Unable to import 'injector' (import-error) +blitzortung/db/table.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:113:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:114:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:121:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) +blitzortung/db/table.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:138:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/db/table.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:166:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:166:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:174:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) +blitzortung/db/table.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:230:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:230:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) +blitzortung/db/table.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/db/table.py:273:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) +blitzortung/db/table.py:284:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) +blitzortung/db/table.py:290:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.geom +blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) +blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) +blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) +blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) +blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) +blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) +blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) +blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.gis.constants +blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) +************* Module blitzortung.gis.local_grid +blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) +blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.lock +blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) +blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.logger +blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service +blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) +************* Module blitzortung.service.cache +blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.db +blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) +blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) +blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) +blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) +blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) +blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) +blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.general +blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.histogram +blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) +blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service.metrics +blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) +blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module blitzortung.service.strike +blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) +blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) +blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.service.strike_grid +blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) +blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) +blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) +blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) +blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) +blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) +blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) +blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) +blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) +blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) +blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) +blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) +************* Module blitzortung.util +blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) +blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) +blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) +blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) +blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) +blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) +blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module blitzortung.websocket +blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) +************* Module test_builder_base +tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) +************* Module test_builder_strike +tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) +tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) +tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) +tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) +tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) +tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) +tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) +************* Module tests.cli.test_update +tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) +tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) +tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) +tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) +tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) +tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) +tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) +tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) +tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) +tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) +tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) +tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) +tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) +tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) +tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) +tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) +tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) +tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) +tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) +tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) +tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) +************* Module tests.conftest +tests/conftest.py:44:0: C0301: Line too long (104/100) (line-too-long) +tests/conftest.py:93:0: C0301: Line too long (220/100) (line-too-long) +tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/conftest.py:4:0: E0401: Unable to import 'psycopg2' (import-error) +tests/conftest.py:5:0: E0401: Unable to import 'pyproj' (import-error) +tests/conftest.py:6:0: E0401: Unable to import 'pytest' (import-error) +tests/conftest.py:7:0: E0401: Unable to import 'testcontainers.postgres' (import-error) +tests/conftest.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:18:18: W0621: Redefining name 'now' from outer scope (line 13) (redefined-outer-name) +tests/conftest.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:29:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:29:17: W0621: Redefining name 'utm_eu' from outer scope (line 24) (redefined-outer-name) +tests/conftest.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:44:23: W0621: Redefining name 'utm_north' from outer scope (line 34) (redefined-outer-name) +tests/conftest.py:44:34: W0621: Redefining name 'utm_south' from outer scope (line 39) (redefined-outer-name) +tests/conftest.py:68:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:68:24: W0621: Redefining name 'utm_eu' from outer scope (line 24) (redefined-outer-name) +tests/conftest.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:76:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:92:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:92:22: W0621: Redefining name 'postgres_container' from outer scope (line 73) (redefined-outer-name) +tests/conftest.py:97:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:97:20: W0621: Redefining name 'connection_string' from outer scope (line 92) (redefined-outer-name) +tests/conftest.py:98:4: W0621: Redefining name 'connection_pool' from outer scope (line 97) (redefined-outer-name) +tests/conftest.py:104:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/conftest.py:104:15: W0621: Redefining name 'connection_pool' from outer scope (line 97) (redefined-outer-name) +************* Module test_dataimport_base +tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) +************* Module tests.db.test_db +tests/db/test_db.py:108:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:203:0: C0301: Line too long (108/100) (line-too-long) +tests/db/test_db.py:213:0: C0301: Line too long (119/100) (line-too-long) +tests/db/test_db.py:231:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db.py:249:0: C0301: Line too long (122/100) (line-too-long) +tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/db/test_db.py:5:0: E0401: Unable to import 'psycopg2' (import-error) +tests/db/test_db.py:6:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db.py:7:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db.py:17:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:18:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) +tests/db/test_db.py:19:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) +tests/db/test_db.py:21:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:27:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) +tests/db/test_db.py:31:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:76:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:85:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:95:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:99:8: C0104: Disallowed name "foo" (disallowed-name) +tests/db/test_db.py:107:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:107:19: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:121:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:121:33: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:121:33: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:121:49: W0613: Unused argument 'now' (unused-argument) +tests/db/test_db.py:128:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:128:42: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:138:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:138:43: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:147:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:147:46: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:157:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:157:37: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:157:53: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:167:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:167:49: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:167:65: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:177:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:177:55: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:177:71: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:187:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:187:58: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:187:74: W0613: Unused argument 'time_interval' (unused-argument) +tests/db/test_db.py:203:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:203:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:203:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:203:32: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:203:77: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:213:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:213:60: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:213:111: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:231:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:231:53: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:231:98: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:249:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:249:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/db/test_db.py:249:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/db/test_db.py:249:39: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:249:91: W0613: Unused argument 'utm_eu' (unused-argument) +tests/db/test_db.py:260:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:260:34: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +tests/db/test_db.py:260:34: W0613: Unused argument 'strike_factory' (unused-argument) +tests/db/test_db.py:272:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db.py:272:37: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) +************* Module tests.db.test_db_init +tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_mapper +tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) +tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +************* Module tests.db.test_db_query +tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) +tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) +tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.db.test_db_query_builder +tests/db/test_db_query_builder.py:64:0: C0301: Line too long (115/100) (line-too-long) +tests/db/test_db_query_builder.py:65:0: C0301: Line too long (103/100) (line-too-long) +tests/db/test_db_query_builder.py:78:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:79:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:84:0: C0301: Line too long (116/100) (line-too-long) +tests/db/test_db_query_builder.py:108:0: C0301: Line too long (110/100) (line-too-long) +tests/db/test_db_query_builder.py:114:0: C0301: Line too long (113/100) (line-too-long) +tests/db/test_db_query_builder.py:115:0: C0301: Line too long (106/100) (line-too-long) +tests/db/test_db_query_builder.py:133:0: C0301: Line too long (199/100) (line-too-long) +tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/db/test_db_query_builder.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:33:15: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:33:25: W0621: Redefining name 'interval_duration' from outer scope (line 38) (redefined-outer-name) +tests/db/test_db_query_builder.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:38:22: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:38:22: W0613: Unused argument 'end_time' (unused-argument) +tests/db/test_db_query_builder.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:52:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:58:47: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) +tests/db/test_db_query_builder.py:58:59: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:58:69: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) +tests/db/test_db_query_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:72:45: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) +tests/db/test_db_query_builder.py:72:57: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:72:67: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) +tests/db/test_db_query_builder.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:97:62: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) +tests/db/test_db_query_builder.py:97:74: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:97:84: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) +tests/db/test_db_query_builder.py:99:8: W0612: Unused variable 'query' (unused-variable) +tests/db/test_db_query_builder.py:102:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:102:66: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) +tests/db/test_db_query_builder.py:102:78: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:102:88: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) +tests/db/test_db_query_builder.py:122:0: C0115: Missing class docstring (missing-class-docstring) +tests/db/test_db_query_builder.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/db/test_db_query_builder.py:128:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/db/test_db_query_builder.py:128:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/db/test_db_query_builder.py:128:47: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) +tests/db/test_db_query_builder.py:128:59: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) +tests/db/test_db_query_builder.py:128:69: W0621: Redefining name 'interval_duration' from outer scope (line 38) (redefined-outer-name) +tests/db/test_db_query_builder.py:128:88: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) +tests/db/test_db_query_builder.py:128:47: W0613: Unused argument 'start_time' (unused-argument) +************* Module tests.db.test_db_table +tests/db/test_db_table.py:123:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:132:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +tests/db/test_db_table.py:141:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) +************* Module tests.gis.test_local_grid +tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) +tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) +tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) +************* Module tests.service.test_general +tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.service.test_histogram +tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) +tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) +tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_metrics +tests/service/test_metrics.py:61:0: C0301: Line too long (127/100) (line-too-long) +tests/service/test_metrics.py:64:0: C0301: Line too long (108/100) (line-too-long) +tests/service/test_metrics.py:82:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_metrics.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_metrics.py:21:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_metrics.py:21:22: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) +tests/service/test_metrics.py:25:52: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) +tests/service/test_metrics.py:41:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_metrics.py:41:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_metrics.py:41:47: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) +tests/service/test_metrics.py:61:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:61:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:61:68: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) +tests/service/test_metrics.py:82:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_metrics.py:82:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_metrics.py:82:62: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) +************* Module tests.service.test_service_db +tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) +tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) +tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) +tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) +************* Module tests.service.test_service_init +tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) +tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) +tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) +tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) +tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.service.test_strike_grid +tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) +tests/service/test_strike_grid.py:50:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:59:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:64:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:65:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:90:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:117:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) +tests/service/test_strike_grid.py:138:0: C0301: Line too long (118/100) (line-too-long) +tests/service/test_strike_grid.py:147:0: C0301: Line too long (102/100) (line-too-long) +tests/service/test_strike_grid.py:152:0: C0301: Line too long (125/100) (line-too-long) +tests/service/test_strike_grid.py:153:0: C0301: Line too long (105/100) (line-too-long) +tests/service/test_strike_grid.py:177:0: C0301: Line too long (101/100) (line-too-long) +tests/service/test_strike_grid.py:200:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) +tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) +tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) +tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) +tests/service/test_strike_grid.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:28:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:31:18: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) +tests/service/test_strike_grid.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:50:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:50:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:50:76: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) +tests/service/test_strike_grid.py:50:91: W0621: Redefining name 'connection' from outer scope (line 19) (redefined-outer-name) +tests/service/test_strike_grid.py:50:103: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +tests/service/test_strike_grid.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:71:37: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +tests/service/test_strike_grid.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:90:44: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +tests/service/test_strike_grid.py:121:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strike_grid.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:124:18: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) +tests/service/test_strike_grid.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:138:4: R0913: Too many arguments (8/5) (too-many-arguments) +tests/service/test_strike_grid.py:138:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) +tests/service/test_strike_grid.py:138:76: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) +tests/service/test_strike_grid.py:138:91: W0621: Redefining name 'connection' from outer scope (line 19) (redefined-outer-name) +tests/service/test_strike_grid.py:138:103: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +tests/service/test_strike_grid.py:147:25: W0612: Unused variable 'state' (unused-variable) +tests/service/test_strike_grid.py:158:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:158:37: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +tests/service/test_strike_grid.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strike_grid.py:177:44: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) +************* Module tests.service.test_strikes +tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) +tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) +tests/service/test_strikes.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:31:0: C0115: Missing class docstring (missing-class-docstring) +tests/service/test_strikes.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:34:18: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) +tests/service/test_strikes.py:34:33: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) +tests/service/test_strikes.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:38:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/service/test_strikes.py:38:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/service/test_strikes.py:38:20: W0621: Redefining name 'statsd_client' from outer scope (line 22) (redefined-outer-name) +tests/service/test_strikes.py:38:50: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) +tests/service/test_strikes.py:38:65: W0621: Redefining name 'connection' from outer scope (line 17) (redefined-outer-name) +tests/service/test_strikes.py:38:77: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) +tests/service/test_strikes.py:38:50: W0613: Unused argument 'query_builder' (unused-argument) +tests/service/test_strikes.py:38:65: W0613: Unused argument 'connection' (unused-argument) +tests/service/test_strikes.py:38:77: W0613: Unused argument 'strike_mapper' (unused-argument) +tests/service/test_strikes.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:41:4: R0913: Too many arguments (7/5) (too-many-arguments) +tests/service/test_strikes.py:41:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) +tests/service/test_strikes.py:41:46: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) +tests/service/test_strikes.py:41:61: W0621: Redefining name 'connection' from outer scope (line 17) (redefined-outer-name) +tests/service/test_strikes.py:41:73: W0621: Redefining name 'statsd_client' from outer scope (line 22) (redefined-outer-name) +tests/service/test_strikes.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:55:59: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) +tests/service/test_strikes.py:76:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/service/test_strikes.py:76:65: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) +tests/service/test_strikes.py:76:50: W0613: Unused argument 'time_interval' (unused-argument) +tests/service/test_strikes.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_base +tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) +tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_builder +tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) +tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) +tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) +tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) +tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) +tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) +tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) +tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_cache +tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) +tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_config +tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) +tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) +tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) +tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) +tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) +tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) +tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) +tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) +************* Module tests.test_convert +tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_data +tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) +tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) +tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) +tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) +tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) +tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) +tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) +tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) +tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) +tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) +tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) +tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) +tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) +tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) +************* Module tests.test_data_benchmark +tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) +tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) +tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) +tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) +************* Module tests.test_dataimport +tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) +tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) +tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) +tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) +tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) +tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) +tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) +************* Module tests.test_geom +tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) +tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) +tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) +tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) +tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) +tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) +tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) +tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) +************* Module tests.test_lock +tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) +************* Module tests.test_util +tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) +tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) +tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) +tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) +tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) +tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) +tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) +tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) +tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) +tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) +tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) +************* Module tests.test_websocket +tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) +tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) +tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) +tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) +tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) + +------------------------------------------------------------------ +Your code has been rated at 6.34/10 (previous run: 6.25/10, +0.09) + diff --git a/reports/coverage.xml b/reports/coverage.xml new file mode 100644 index 0000000..0cc1228 --- /dev/null +++ b/reports/coverage.xml @@ -0,0 +1,2186 @@ + + + + + + /Users/andi/projects/blitzortung/python/blitzortung + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/cli/test_webservice.py b/tests/cli/test_webservice.py index ba43009..0e163bc 100644 --- a/tests/cli/test_webservice.py +++ b/tests/cli/test_webservice.py @@ -1,4 +1,4 @@ -"""Tests for blitzortung.cli.webservice module.""" +"""Tests for blitzortung.service.base module.""" import datetime import time @@ -8,7 +8,7 @@ import pytest from assertpy import assert_that -from blitzortung.cli.webservice import Blitzortung, LogObserver +from blitzortung.service.base import Blitzortung, LogObserver class MockRequest: @@ -362,9 +362,9 @@ def test_returns_max_when_equal_to_max(self): class TestMemoryInfo: """Test memory_info method.""" - @patch('blitzortung.cli.webservice.gc') - @patch('blitzortung.cli.webservice.log') - @patch('blitzortung.cli.webservice.is_pypy', False) + @patch('blitzortung.service.base.gc') + @patch('blitzortung.service.base.log') + @patch('blitzortung.service.base.is_pypy', False) def test_logs_memory_info_first_call(self, mock_log, mock_gc, blitzortung): mock_gc.get_stats = Mock(return_value={'test': 'stats'}) blitzortung.next_memory_info = 0.0 @@ -375,16 +375,16 @@ def test_logs_memory_info_first_call(self, mock_log, mock_gc, blitzortung): assert_that(mock_log.msg.call_count).is_greater_than(0) def test_skips_logging_when_within_interval(self, blitzortung): - with patch('blitzortung.cli.webservice.log') as mock_log: + with patch('blitzortung.service.base.log') as mock_log: blitzortung.next_memory_info = 1000.0 with patch('time.time', return_value=500.0): blitzortung.memory_info() mock_log.msg.assert_not_called() - @patch('blitzortung.cli.webservice.gc') - @patch('blitzortung.cli.webservice.log') - @patch('blitzortung.cli.webservice.is_pypy', True) + @patch('blitzortung.service.base.gc') + @patch('blitzortung.service.base.log') + @patch('blitzortung.service.base.is_pypy', True) def test_logs_with_pypy_stats(self, mock_log, mock_gc, blitzortung): mock_gc.get_stats = Mock(return_value={'test': 'stats'}) blitzortung.next_memory_info = 0.0 @@ -517,8 +517,8 @@ class TestGetStrikesGrid: """Test get_strikes_grid method.""" def test_creates_grid_parameters(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.cli.webservice.GridParameters') as mock_params: - with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: mock_interval.return_value = Mock() mock_strike_grid_query.create.return_value = (Mock(), Mock()) mock_strike_grid_query.combine_result.return_value = Mock() @@ -528,8 +528,8 @@ def test_creates_grid_parameters(self, blitzortung, mock_strike_grid_query): mock_params.assert_called() def test_creates_time_interval(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.cli.webservice.GridParameters') as mock_params: - with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: mock_interval.return_value = Mock() mock_strike_grid_query.create.return_value = (Mock(), Mock()) mock_strike_grid_query.combine_result.return_value = Mock() @@ -543,8 +543,8 @@ class TestGetGlobalStrikesGrid: """Test get_global_strikes_grid method.""" def test_creates_global_grid_parameters(self, blitzortung, mock_global_strike_grid_query): - with patch('blitzortung.cli.webservice.GridParameters') as mock_params: - with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: mock_interval.return_value = Mock() mock_global_strike_grid_query.create.return_value = (Mock(), Mock()) mock_global_strike_grid_query.combine_result.return_value = Mock() @@ -558,9 +558,9 @@ class TestGetLocalStrikesGrid: """Test get_local_strikes_grid method.""" def test_creates_local_grid_parameters(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.cli.webservice.LocalGrid') as mock_local_grid: - with patch('blitzortung.cli.webservice.GridParameters') as mock_params: - with patch('blitzortung.cli.webservice.create_time_interval') as mock_interval: + with patch('blitzortung.service.base.LocalGrid') as mock_local_grid: + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: mock_grid_factory = Mock() mock_grid_factory.get_for.return_value = Mock() mock_local_grid.return_value.get_grid_factory.return_value = mock_grid_factory diff --git a/twistd.log b/twistd.log new file mode 100644 index 0000000..7784ddf --- /dev/null +++ b/twistd.log @@ -0,0 +1,56 @@ +2025-10-29T20:30:46+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... +2025-10-29T20:30:46+0100 [-] Loaded. +2025-10-29T20:30:46+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. +2025-10-29T20:30:46+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. +2025-10-29T20:30:46+0100 [-] Failed to unlink PID file: + Traceback (most recent call last): + File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 282, in removePID + os.unlink(pidfile) + builtins.FileNotFoundError: [Errno 2] No such file or directory: '/var/run/bo-webservice.pid' + +2025-10-29T20:30:46+0100 [stderr#error] Traceback (most recent call last): +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/bin/twistd", line 8, in +2025-10-29T20:30:46+0100 [stderr#error] sys.exit(run()) +2025-10-29T20:30:46+0100 [stderr#error] ~~~^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/twistd.py", line 35, in run +2025-10-29T20:30:46+0100 [stderr#error] app.run(runApp, ServerOptions) +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/application/app.py", line 673, in run +2025-10-29T20:30:46+0100 [stderr#error] runApp(config) +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/twistd.py", line 29, in runApp +2025-10-29T20:30:46+0100 [stderr#error] runner.run() +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/application/app.py", line 374, in run +2025-10-29T20:30:46+0100 [stderr#error] self.postApplication() +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 254, in postApplication +2025-10-29T20:30:46+0100 [stderr#error] self.startApplication(self.application) +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 436, in startApplication +2025-10-29T20:30:46+0100 [stderr#error] self.setupEnvironment( +2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~~^ +2025-10-29T20:30:46+0100 [stderr#error] self.config["chroot"], +2025-10-29T20:30:46+0100 [stderr#error] ^^^^^^^^^^^^^^^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] ...<3 lines>... +2025-10-29T20:30:46+0100 [stderr#error] self.config["pidfile"], +2025-10-29T20:30:46+0100 [stderr#error] ^^^^^^^^^^^^^^^^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] ) +2025-10-29T20:30:46+0100 [stderr#error] ^ +2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 329, in setupEnvironment +2025-10-29T20:30:46+0100 [stderr#error] with open(pidfile, "wb") as f: +2025-10-29T20:30:46+0100 [stderr#error] ~~~~^^^^^^^^^^^^^^^ +2025-10-29T20:30:46+0100 [stderr#error] PermissionError: [Errno 13] Permission denied: '/var/run/bo-webservice.pid' +2025-10-29T20:33:09+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... +2025-10-29T20:33:09+0100 [-] Loaded. +2025-10-29T20:33:09+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. +2025-10-29T20:33:09+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. +2025-10-29T20:33:09+0100 [-] Site starting on 7080 +2025-10-29T20:33:09+0100 [twisted.web.server.Site#info] Starting factory +2025-10-29T20:34:53+0100 [-] Removing stale pidfile /Users/andi/.bo-webservice.pid +2025-10-29T20:34:53+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... +2025-10-29T20:34:53+0100 [-] Loaded. +2025-10-29T20:34:53+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. +2025-10-29T20:34:53+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. +2025-10-29T20:34:53+0100 [-] Site starting on 7080 +2025-10-29T20:34:53+0100 [twisted.web.server.Site#info] Starting factory From b171692defa166483c5e8fda7509591daef86aba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:47:43 +0200 Subject: [PATCH 11/19] Move test_webservice.py to tests/service/test_base.py Matches the new location of the Blitzortung class in service/base.py. Co-Authored-By: Claude Opus 4.6 --- tests/service/test_base.py | 633 +++++++++++++++++++++++++++++++++++++ 1 file changed, 633 insertions(+) create mode 100644 tests/service/test_base.py diff --git a/tests/service/test_base.py b/tests/service/test_base.py new file mode 100644 index 0000000..0e163bc --- /dev/null +++ b/tests/service/test_base.py @@ -0,0 +1,633 @@ +"""Tests for blitzortung.service.base module.""" + +import datetime +import time +from io import StringIO +from unittest.mock import Mock, MagicMock, patch, call + +import pytest +from assertpy import assert_that + +from blitzortung.service.base import Blitzortung, LogObserver + + +class MockRequest: + """Mock request object for testing JSON-RPC methods.""" + + def __init__(self, user_agent=None, client_ip=None, x_forwarded_for=None, + content_type=None, referer=None): + self._user_agent = user_agent + self._client_ip = client_ip + self._x_forwarded_for = x_forwarded_for + self._content_type = content_type + self._referer = referer + self._headers_removed = [] + + def getHeader(self, name): + if name == "User-Agent": + return self._user_agent + if name == "X-Forwarded-For": + return self._x_forwarded_for + if name == "content-type": + return self._content_type + if name == "referer": + return self._referer + return None + + def getClientIP(self): + return self._client_ip + + def __getitem__(self, key): + return getattr(self, key, None) + + @property + def requestHeaders(self): + mock = Mock() + mock.removeHeader = self._remove_header + return mock + + def _remove_header(self, name): + self._headers_removed.append(name) + + +@pytest.fixture +def mock_connection_pool(): + """Create a mock database connection pool.""" + return Mock() + + +@pytest.fixture +def mock_log_directory(): + """Create a mock log directory.""" + return None + + +@pytest.fixture +def mock_strike_query(): + """Create a mock strike query.""" + return Mock() + + +@pytest.fixture +def mock_strike_grid_query(): + """Create a mock strike grid query.""" + mock = Mock() + mock.create = Mock(return_value=(Mock(), Mock())) + mock.combine_result = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_global_strike_grid_query(): + """Create a mock global strike grid query.""" + mock = Mock() + mock.create = Mock(return_value=(Mock(), Mock())) + mock.combine_result = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_histogram_query(): + """Create a mock histogram query.""" + mock = Mock() + mock.create = Mock(return_value=Mock()) + return mock + + +@pytest.fixture +def mock_cache(): + """Create a mock service cache.""" + mock = Mock() + mock.strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.local_strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.global_strikes = Mock(return_value=Mock( + get=Mock(return_value={}), + get_ratio=Mock(return_value=0.0), + get_size=Mock(return_value=0) + )) + mock.histogram = Mock( + get=Mock(return_value=Mock()) + ) + return mock + + +@pytest.fixture +def mock_metrics(): + """Create a mock metrics.""" + mock = Mock() + mock.statsd = Mock() + mock.for_global_strikes = Mock() + mock.for_local_strikes = Mock() + mock.for_strikes = Mock() + return mock + + +@pytest.fixture +def mock_forbidden_ips(): + """Create empty forbidden IPs dict for testing.""" + return {} + + +@pytest.fixture +def blitzortung(mock_connection_pool, mock_log_directory, mock_strike_query, + mock_strike_grid_query, mock_global_strike_grid_query, + mock_histogram_query, mock_cache, mock_metrics, mock_forbidden_ips): + """Create a Blitzortung instance with mocked dependencies.""" + return Blitzortung( + mock_connection_pool, + mock_log_directory, + strike_query=mock_strike_query, + strike_grid_query=mock_strike_grid_query, + global_strike_grid_query=mock_global_strike_grid_query, + histogram_query=mock_histogram_query, + cache=mock_cache, + metrics=mock_metrics, + forbidden_ips=mock_forbidden_ips + ) + + +class TestBlitzortungClassConstants: + """Test class constants for validation.""" + + def test_min_grid_base_length(self): + assert_that(Blitzortung.MIN_GRID_BASE_LENGTH).is_equal_to(5000) + + def test_invalid_grid_base_length(self): + assert_that(Blitzortung.INVALID_GRID_BASE_LENGTH).is_equal_to(1000001) + + def test_global_min_grid_base_length(self): + assert_that(Blitzortung.GLOBAL_MIN_GRID_BASE_LENGTH).is_equal_to(10000) + + def test_max_minutes_per_day(self): + assert_that(Blitzortung.MAX_MINUTES_PER_DAY).is_equal_to(1440) + + def test_default_minute_length(self): + assert_that(Blitzortung.DEFAULT_MINUTE_LENGTH).is_equal_to(60) + + def test_histogram_minute_threshold(self): + assert_that(Blitzortung.HISTOGRAM_MINUTE_THRESHOLD).is_equal_to(10) + + def test_max_compatible_android_version(self): + assert_that(Blitzortung.MAX_COMPATIBLE_ANDROID_VERSION).is_equal_to(177) + + def test_memory_info_interval(self): + assert_that(Blitzortung.MEMORY_INFO_INTERVAL).is_equal_to(300) + + +class TestBlitzortungInitialization: + """Test Blitzortung initialization.""" + + def test_sets_connection_pool(self, blitzortung, mock_connection_pool): + assert_that(blitzortung.connection_pool).is_same_as(mock_connection_pool) + + def test_sets_log_directory(self, blitzortung, mock_log_directory): + assert_that(blitzortung.log_directory).is_same_as(mock_log_directory) + + def test_sets_strike_query(self, blitzortung, mock_strike_query): + assert_that(blitzortung.strike_query).is_same_as(mock_strike_query) + + def test_sets_strike_grid_query(self, blitzortung, mock_strike_grid_query): + assert_that(blitzortung.strike_grid_query).is_same_as(mock_strike_grid_query) + + def test_sets_global_strike_grid_query(self, blitzortung, mock_global_strike_grid_query): + assert_that(blitzortung.global_strike_grid_query).is_same_as(mock_global_strike_grid_query) + + def test_sets_histogram_query(self, blitzortung, mock_histogram_query): + assert_that(blitzortung.histogram_query).is_same_as(mock_histogram_query) + + def test_sets_cache(self, blitzortung, mock_cache): + assert_that(blitzortung.cache).is_same_as(mock_cache) + + def test_sets_metrics(self, blitzortung, mock_metrics): + assert_that(blitzortung.metrics).is_same_as(mock_metrics) + + def test_sets_forbidden_ips(self, blitzortung, mock_forbidden_ips): + assert_that(blitzortung.forbidden_ips).is_same_as(mock_forbidden_ips) + + def test_initializes_check_count(self, blitzortung): + assert_that(blitzortung.check_count).is_equal_to(0) + + def test_initializes_current_data_as_defaultdict(self, blitzortung): + assert_that(blitzortung.current_data).is_instance_of(dict) + assert_that(blitzortung.current_data['test']).is_equal_to([]) + + def test_initializes_minute_constraints(self, blitzortung): + assert_that(blitzortung.minute_constraints).is_not_none() + + +class TestJsonRpcCheck: + """Test the jsonrpc_check health check endpoint.""" + + def test_increments_check_count(self, blitzortung): + initial_count = blitzortung.check_count + blitzortung.jsonrpc_check() + assert_that(blitzortung.check_count).is_equal_to(initial_count + 1) + + def test_returns_count_dict(self, blitzortung): + result = blitzortung.jsonrpc_check() + assert_that(result).is_instance_of(dict) + assert_that(result).contains_key('count') + + +class TestParseUserAgent: + """Test parse_user_agent method.""" + + def test_valid_android_user_agent(self, blitzortung): + request = MockRequest(user_agent='bo-android-150') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(user_agent).is_equal_to('bo-android-150') + assert_that(version).is_equal_to(150) + + def test_android_user_agent_with_space(self, blitzortung): + request = MockRequest(user_agent='bo-android-150 SomeDevice') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(150) + + def test_android_user_agent_lowercase(self, blitzortung): + request = MockRequest(user_agent='bo-android-abc') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_android_user_agent_negative_version(self, blitzortung): + request = MockRequest(user_agent='bo-android--5') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_non_android_user_agent(self, blitzortung): + request = MockRequest(user_agent='Mozilla/5.0') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_none_user_agent(self, blitzortung): + request = MockRequest(user_agent=None) + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + def test_empty_user_agent(self, blitzortung): + request = MockRequest(user_agent='') + user_agent, version = blitzortung.parse_user_agent(request) + assert_that(version).is_equal_to(0) + + +class TestFixBadAcceptHeader: + """Test fix_bad_accept_header method.""" + + def test_removes_header_for_old_android(self, blitzortung): + request = MockRequest(user_agent='bo-android-100') + blitzortung.fix_bad_accept_header(request, 'bo-android-100') + assert_that(request._headers_removed).contains('Accept-Encoding') + + def test_does_not_remove_header_for_new_android(self, blitzortung): + request = MockRequest(user_agent='bo-android-200') + blitzortung.fix_bad_accept_header(request, 'bo-android-200') + assert_that(request._headers_removed).does_not_contain('Accept-Encoding') + + def test_does_not_remove_header_for_max_version(self, blitzortung): + request = MockRequest(user_agent='bo-android-177') + blitzortung.fix_bad_accept_header(request, 'bo-android-177') + assert_that(request._headers_removed).contains('Accept-Encoding') + + def test_does_not_remove_header_for_non_android(self, blitzortung): + request = MockRequest(user_agent='Mozilla/5.0') + blitzortung.fix_bad_accept_header(request, 'Mozilla/5.0') + assert_that(request._headers_removed).is_empty() + + def test_handles_none_user_agent(self, blitzortung): + request = MockRequest(user_agent=None) + blitzortung.fix_bad_accept_header(request, None) + assert_that(request._headers_removed).is_empty() + + def test_handles_invalid_version(self, blitzortung): + request = MockRequest(user_agent='bo-android-abc') + blitzortung.fix_bad_accept_header(request, 'bo-android-abc') + assert_that(request._headers_removed).is_empty() + + +class TestGetRequestClient: + """Test get_request_client method.""" + + def test_returns_client_ip_directly(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('192.168.1.1') + + def test_returns_first_ip_from_x_forwarded_for(self, blitzortung): + request = MockRequest(x_forwarded_for='10.0.0.1, 10.0.0.2') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('10.0.0.1') + + def test_prefers_x_forwarded_for_over_client_ip(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1', x_forwarded_for='10.0.0.1') + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('10.0.0.1') + + def test_handles_none_x_forwarded_for(self, blitzortung): + request = MockRequest(client_ip='192.168.1.1', x_forwarded_for=None) + result = blitzortung.get_request_client(request) + assert_that(result).is_equal_to('192.168.1.1') + + +class TestForceRange: + """Test __force_range static method.""" + + def test_returns_min_when_below(self): + result = Blitzortung._Blitzortung__force_range(5, 10, 100) + assert_that(result).is_equal_to(10) + + def test_returns_max_when_above(self): + result = Blitzortung._Blitzortung__force_range(150, 10, 100) + assert_that(result).is_equal_to(100) + + def test_returns_value_when_in_range(self): + result = Blitzortung._Blitzortung__force_range(50, 10, 100) + assert_that(result).is_equal_to(50) + + def test_returns_min_when_equal_to_min(self): + result = Blitzortung._Blitzortung__force_range(10, 10, 100) + assert_that(result).is_equal_to(10) + + def test_returns_max_when_equal_to_max(self): + result = Blitzortung._Blitzortung__force_range(100, 10, 100) + assert_that(result).is_equal_to(100) + + +class TestMemoryInfo: + """Test memory_info method.""" + + @patch('blitzortung.service.base.gc') + @patch('blitzortung.service.base.log') + @patch('blitzortung.service.base.is_pypy', False) + def test_logs_memory_info_first_call(self, mock_log, mock_gc, blitzortung): + mock_gc.get_stats = Mock(return_value={'test': 'stats'}) + blitzortung.next_memory_info = 0.0 + # time.time() must return a value > next_memory_info to trigger logging + with patch('time.time', return_value=1.0): + blitzortung.memory_info() + + assert_that(mock_log.msg.call_count).is_greater_than(0) + + def test_skips_logging_when_within_interval(self, blitzortung): + with patch('blitzortung.service.base.log') as mock_log: + blitzortung.next_memory_info = 1000.0 + with patch('time.time', return_value=500.0): + blitzortung.memory_info() + + mock_log.msg.assert_not_called() + + @patch('blitzortung.service.base.gc') + @patch('blitzortung.service.base.log') + @patch('blitzortung.service.base.is_pypy', True) + def test_logs_with_pypy_stats(self, mock_log, mock_gc, blitzortung): + mock_gc.get_stats = Mock(return_value={'test': 'stats'}) + blitzortung.next_memory_info = 0.0 + # time.time() must return a value > next_memory_info to trigger logging + with patch('time.time', return_value=1.0): + blitzortung.memory_info() + + assert_that(mock_log.msg.call_count).is_greater_than(0) + + +class TestGetEpoch: + """Test __get_epoch method.""" + + def test_converts_datetime_to_epoch_microseconds(self, blitzortung): + dt = datetime.datetime(2025, 1, 1, 12, 0, 0, 500000, tzinfo=datetime.timezone.utc) + result = blitzortung._Blitzortung__get_epoch(dt) + # 2025-01-01 12:00:00.500000 UTC + expected = 1735732800 * 1000000 + 500000 + assert_that(result).is_equal_to(expected) + + +class TestCurrentPeriod: + """Test __current_period method.""" + + def test_returns_datetime_with_utc_timezone(self, blitzortung): + result = blitzortung._Blitzortung__current_period() + assert_that(result.tzinfo).is_equal_to(datetime.timezone.utc) + + def test_returns_datetime_with_zero_seconds(self, blitzortung): + result = blitzortung._Blitzortung__current_period() + assert_that(result.second).is_equal_to(0) + assert_that(result.microsecond).is_equal_to(0) + + +class TestForbiddenIps: + """Test forbidden IP functionality.""" + + def test_blocks_request_from_forbidden_ip(self): + """Test that requests from forbidden IPs are blocked.""" + mock_pool = Mock() + mock_cache = Mock() + mock_cache.strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + + mock_strike_grid_query = Mock() + mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) + mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + + forbidden_ips = {'192.168.1.100': True} + + bt = Blitzortung( + mock_pool, + None, + strike_grid_query=mock_strike_grid_query, + cache=mock_cache, + forbidden_ips=forbidden_ips + ) + + # Create request from forbidden IP + request = MockRequest( + client_ip='192.168.1.100', + content_type='text/json', + referer='http://example.com' + ) + + # The method should return empty dict due to forbidden IP + result = bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_allows_request_from_non_forbidden_ip(self): + """Test that requests from non-forbidden IPs are allowed.""" + mock_pool = Mock() + mock_cache = Mock() + mock_cache.strikes = Mock(return_value=Mock( + get=Mock(return_value={'data': 'test'}), + get_ratio=Mock(return_value=0.5), + get_size=Mock(return_value=10) + )) + mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + + mock_strike_grid_query = Mock() + mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) + mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + + bt = Blitzortung( + mock_pool, + None, + strike_grid_query=mock_strike_grid_query, + cache=mock_cache, + forbidden_ips={'192.168.1.100': True} + ) + + # Create request from allowed IP with valid user agent + request = MockRequest( + client_ip='192.168.1.1', + user_agent='bo-android-150', + content_type='text/json', + referer='http://example.com' + ) + + # The method should call cache.get for non-forbidden IP + bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + mock_cache.strikes.return_value.get.assert_called() + + +class TestLogObserver: + """Test LogObserver class.""" + + def test_initializes_with_empty_prefix(self): + output = StringIO() + observer = LogObserver(output) + assert_that(observer.prefix).is_equal_to('') + + def test_initializes_with_custom_prefix(self): + output = StringIO() + observer = LogObserver(output, prefix='TEST') + assert_that(observer.prefix).is_equal_to('TEST') + + def test_emit_handles_none_text(self): + output = StringIO() + observer = LogObserver(output) + # textFromEventDict returns None when there's no 'message' or 'format' key + # Should not raise when text is None + observer.emit({'message': 'test', 'time': 1234567890.0}) + + +class TestGetStrikesGrid: + """Test get_strikes_grid method.""" + + def test_creates_grid_parameters(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) + + mock_params.assert_called() + + def test_creates_time_interval(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) + + mock_interval.assert_called_with(60, 0) + + +class TestGetGlobalStrikesGrid: + """Test get_global_strikes_grid method.""" + + def test_creates_global_grid_parameters(self, blitzortung, mock_global_strike_grid_query): + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: + mock_interval.return_value = Mock() + mock_global_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_global_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_global_strikes_grid(60, 10000, 0, 0) + + mock_params.assert_called() + + +class TestGetLocalStrikesGrid: + """Test get_local_strikes_grid method.""" + + def test_creates_local_grid_parameters(self, blitzortung, mock_strike_grid_query): + with patch('blitzortung.service.base.LocalGrid') as mock_local_grid: + with patch('blitzortung.service.base.GridParameters') as mock_params: + with patch('blitzortung.service.base.create_time_interval') as mock_interval: + mock_grid_factory = Mock() + mock_grid_factory.get_for.return_value = Mock() + mock_local_grid.return_value.get_grid_factory.return_value = mock_grid_factory + + mock_interval.return_value = Mock() + mock_strike_grid_query.create.return_value = (Mock(), Mock()) + mock_strike_grid_query.combine_result.return_value = Mock() + + blitzortung.get_local_strikes_grid(10, 20, 10000, 60, 0, 0) + + mock_local_grid.assert_called() + + +class TestGetHistogram: + """Test get_histogram method.""" + + def test_calls_histogram_cache(self, blitzortung, mock_cache): + mock_time_interval = Mock() + mock_histogram = Mock() + mock_cache.histogram.get.return_value = mock_histogram + + result = blitzortung.get_histogram(mock_time_interval) + + mock_cache.histogram.get.assert_called() + assert_that(result).is_same_as(mock_histogram) + + +class TestJsonRpcGetStrikesRaster: + """Test jsonrpc_get_strikes_raster method.""" + + def test_calls_get_strikes_grid(self, blitzortung): + with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: + mock_method.return_value = {} + request = Mock() + result = blitzortung.jsonrpc_get_strikes_raster(request, 60, 10000, 0, 1) + + mock_method.assert_called_once_with(request, 60, 10000, 0, 1) + + +class TestJsonRpcGetStrokesRaster: + """Test jsonrpc_get_strokes_raster method.""" + + def test_calls_get_strikes_grid(self, blitzortung): + with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: + mock_method.return_value = {} + request = Mock() + result = blitzortung.jsonrpc_get_strokes_raster(request, 60, 10000, 0, 1) + + mock_method.assert_called_once_with(request, 60, 10000, 0, 1) + + +class TestJsonRpcGetStrikes: + """Test jsonrpc_get_strikes method.""" + + def test_returns_none_blocked(self, blitzortung): + request = MockRequest(user_agent='test') + result = blitzortung.jsonrpc_get_strikes(request, 60, 0) + assert_that(result).is_none() + + def test_enforces_minute_length_range(self, blitzortung): + request = MockRequest() + # minute_length of -5 should be clamped to 0 + result = blitzortung.jsonrpc_get_strikes(request, -5, 0) + assert_that(result).is_none() + + def test_enforces_max_minute_length(self, blitzortung): + request = MockRequest() + # minute_length of 2000 should be clamped to 1440 + result = blitzortung.jsonrpc_get_strikes(request, 2000, 0) + assert_that(result).is_none() From 4cbcfae3093e1f0ff6805da2c2d63d32112a4afe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 10:54:11 +0200 Subject: [PATCH 12/19] Remove BLITZORTUNG_TEST - no longer needed The tests import from service/base.py which has no side effects. The webservice.py is only loaded by twistd. Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/webservice.py | 59 +++++++++++++++++------------------ 1 file changed, 28 insertions(+), 31 deletions(-) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index 5b2dfd6..f0c0e8d 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -2,12 +2,14 @@ import os -from twisted.application import service +from twisted.application import internet, service +from twisted.python import log from twisted.python.log import ILogObserver from twisted.python.logfile import DailyLogFile +from twisted.web import server -# Import classes - these are used by the application -from blitzortung.service.base import Blitzortung, LogObserver # noqa: F401 +from blitzortung.service.base import Blitzortung, LogObserver +import blitzortung.config application = service.Application("Blitzortung.org JSON-RPC Server") @@ -22,31 +24,26 @@ log_directory = None -# Set up connection pool when running via twistd -if not os.environ.get('BLITZORTUNG_TEST'): - from twisted.application import internet - from twisted.python import log - from twisted.web import server - import blitzortung.config - - def start_server(connection_pool): - """Start the JSON-RPC server with the given connection pool.""" - print("Connection pool is ready") - config = blitzortung.config.config() - port = config.get_webservice_port() - root = Blitzortung(connection_pool, log_directory) - site = server.Site(root) - site.displayTracebacks = False - jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') - jsonrpc_server.setServiceParent(application) - jsonrpc_server.startService() - return jsonrpc_server - - def on_error(failure): - """Error handler for connection pool failures.""" - log.err(failure, "Failed to create connection pool") - raise failure.value - - from blitzortung.service.db import create_connection_pool - deferred_connection_pool = create_connection_pool() - deferred_connection_pool.addCallback(start_server).addErrback(on_error) +def start_server(connection_pool): + """Start the JSON-RPC server with the given connection pool.""" + print("Connection pool is ready") + config = blitzortung.config.config() + port = config.get_webservice_port() + root = Blitzortung(connection_pool, log_directory) + site = server.Site(root) + site.displayTracebacks = False + jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') + jsonrpc_server.setServiceParent(application) + jsonrpc_server.startService() + return jsonrpc_server + + +def on_error(failure): + """Error handler for connection pool failures.""" + log.err(failure, "Failed to create connection pool") + raise failure.value + + +from blitzortung.service.db import create_connection_pool +deferred_connection_pool = create_connection_pool() +deferred_connection_pool.addCallback(start_server).addErrback(on_error) From db805e94470f9673f592b0d548e346dfa906f190 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 11:03:27 +0200 Subject: [PATCH 13/19] Clean up test reports and temporary files Co-Authored-By: Claude Opus 4.6 --- Clustering.ipynb | 23369 --------------------------------- junit.xml | 1 - pylint_report.txt | 1545 --- pylint_report_2.txt | 1513 --- pylint_report_3.txt | 1478 --- reports/coverage.xml | 2186 --- tests/cli/test_webservice.py | 633 - twistd.log | 56 - 8 files changed, 30781 deletions(-) delete mode 100644 Clustering.ipynb delete mode 100644 junit.xml delete mode 100644 pylint_report.txt delete mode 100644 pylint_report_2.txt delete mode 100644 pylint_report_3.txt delete mode 100644 reports/coverage.xml delete mode 100644 tests/cli/test_webservice.py delete mode 100644 twistd.log diff --git a/Clustering.ipynb b/Clustering.ipynb deleted file mode 100644 index ba53bf1..0000000 --- a/Clustering.ipynb +++ /dev/null @@ -1,23369 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "import datetime\n", - "import blitzortung\n", - "import numpy as np\n", - "import fastcluster\n", - "from scipy.spatial.distance import pdist, squareform\n", - "from scipy.cluster.hierarchy import linkage, dendrogram" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "12499" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "strikes_db = blitzortung.db.strike()\n", - "strikes = strikes_db.select(blitzortung.db.TimeInterval(datetime.datetime.now(datetime.UTC)-datetime.timedelta(hours=1)))\n", - "len(strikes)" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "coordinates = np.ndarray([len(strikes), 2])\n", - "\n", - "for index, strike in enumerate(strikes):\n", - " coordinates[index][0] = strike.get_x()\n", - " coordinates[index][1] = strike.get_y()" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "CPU times: user 1.23 s, sys: 196 ms, total: 1.42 s\n", - "Wall time: 1.42 s\n" - ] - } - ], - "source": [ - "%time clusters = fastcluster.linkage(coordinates)" - ] - }, - { - "cell_type": "code", - "execution_count": 89, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "ename": "IndexError", - "evalue": "index 3901 is out of bounds for axis 0 with size 3901", - "traceback": [ - "\u001B[0;31m---------------------------------------------------------------------------\u001B[0m\n\u001B[0;31mIndexError\u001B[0m Traceback (most recent call last)", - "\u001B[0;32m\u001B[0m in \u001B[0;36m\u001B[0;34m()\u001B[0m\n\u001B[1;32m 17\u001B[0m \u001B[0;32mprint\u001B[0m \u001B[0mcoordinates\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0mindex\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 18\u001B[0m \u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m---> 19\u001B[0;31m \u001B[0mwalk_tree\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mnumber_of_clusters\u001B[0m \u001B[0;34m*\u001B[0m \u001B[0;36m2\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m", - "\u001B[0;32m\u001B[0m in \u001B[0;36mwalk_tree\u001B[0;34m(index, depth)\u001B[0m\n\u001B[1;32m 6\u001B[0m \u001B[0mindex\u001B[0m \u001B[0;34m-=\u001B[0m \u001B[0mnumber_of_clusters\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 7\u001B[0m \u001B[0;32mprint\u001B[0m \u001B[0mindex\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0;32m----> 8\u001B[0;31m \u001B[0mcluster\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mclusters\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0mindex\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[0m\u001B[1;32m 9\u001B[0m \u001B[0mindex_1\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mint\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mcluster\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;36m0\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n\u001B[1;32m 10\u001B[0m \u001B[0mindex_2\u001B[0m \u001B[0;34m=\u001B[0m \u001B[0mint\u001B[0m\u001B[0;34m(\u001B[0m\u001B[0mcluster\u001B[0m\u001B[0;34m[\u001B[0m\u001B[0;36m1\u001B[0m\u001B[0;34m]\u001B[0m\u001B[0;34m)\u001B[0m\u001B[0;34m\u001B[0m\u001B[0m\n", - "\u001B[0;31mIndexError\u001B[0m: index 3901 is out of bounds for axis 0 with size 3901" - ], - "output_type": "error" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "3901\n" - ] - } - ], - "source": [ - "number_of_clusters = len(clusters)\n", - "\n", - "def walk_tree(index, depth=0):\n", - " global clusters, number_of_clusters\n", - " if index >= number_of_clusters:\n", - " index -= number_of_clusters\n", - " cluster = clusters[index]\n", - " index_1 = int(cluster[0])\n", - " index_2 = int(cluster[1])\n", - " distance = cluster[2]\n", - " number_of_elements = int(cluster[0])\n", - " print \"%s%d %d %.4f %d\" %(depth * \" \", index_1, index_2, distance, number_of_elements)\n", - " walk_tree(index_1, depth + 1)\n", - " walk_tree(index_2, depth + 1)\n", - " else:\n", - " pass\n", - " #print coordinates[index] \n", - "\n", - "walk_tree(number_of_clusters * 2)" - ] - }, - { - "cell_type": "code", - "execution_count": 81, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD/CAYAAADhYy38AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGdFJREFUeJzt3WtsU+fhx/HfcRJIQsgV4hA7bVoghFBKgUEvE60LDVWr\nUk0tigbTlAHdNPFmm6YVXkxbmFTitpu0bhPSX+3GmCZR0F4Am1BK18pIUysoUDG00HJNydVcElNy\ng1zO/0XqkLtjx07Mw/cjWbKPz3meJ8fn/M7j55zjWLZt2wIA3PMcU90AAEB0EOgAYAgCHQAMQaAD\ngCEIdAAwBIEOAIYYM9A3b94sp9OpxYsXD3vvd7/7nRwOh5qbm/unVVZWav78+SouLtaRI0ei31oA\nwKjGDPRNmzapqqpq2PTa2lp9+OGHevDBB/unVVdXa9++faqurlZVVZW2bt2q3t7e6LcYADAyO4TL\nly/bjzzyyKBp69evt0+fPm0XFhbaN27csG3btnfu3Gl7vd7+eZ5//nn7008/HVbeM888Y0viwYMH\nDx5hPJ555plQcW0nKkwHDx6U2+3Wo48+Omh6Q0ODnnjiif7Xbrdb9fX1w5Y/evSouDkVAMJjWVbI\necIK9Pb2du3cuVMffvhh/7Sxwnk8DQAAREdYgX7x4kXV1NRoyZIlkqS6ujotX75cx44dk8vlUm1t\nbf+8dXV1crlcI5ZTUVHR/9zj8cjj8YTfcgAwmM/nk8/nC2sZK9SPc9XU1GjdunU6c+bMsPceeugh\nnTx5UtnZ2aqurtbGjRt1/Phx1dfX67nnntOFCxeG9dIty2LIBQDCNJ7sHPMqlw0bNuipp57SuXPn\nVFBQoN27dw+rIKikpERlZWUqKSnRCy+8oF27djHkAgCTKGQPPeoV0kMHgLBNuIcOALh3EOgAYAgC\nHQAMEfaNRdGQnS21tExFzYhHWVnSgJ8EAhChKTkpKtnivCiCLEtsD0AInBQFgPsIgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGGDPQN2/eLKfTqcWLF/dP+8UvfqGFCxdqyZIleuWVV3Tz5s3+9yorKzV//nwV\nFxfryJEjsWs1AGCYMQN906ZNqqqqGjRt7dq1+t///qfTp0+rqKhIlZWVkqTq6mrt27dP1dXVqqqq\n0tatW9Xb2xu7lgMABhkz0FetWqWsrKxB00pLS+Vw9C32+OOPq66uTpJ08OBBbdiwQUlJSSosLNS8\nefN0/PjxGDUbADDUhMbQ//KXv+jFF1+UJDU0NMjtdve/53a7VV9fP7HWAQDGLTHSBd944w1NmzZN\nGzduHHUey7JGeadCFRV9zzwejzweT6TNAAAj+Xw++Xy+sJaJKND/+te/6vDhw/roo4/6p7lcLtXW\n1va/rqurk8vlGqWEu4EOABhuaGd3x44dIZcJe8ilqqpKb7/9tg4ePKjk5OT+6S+//LLef/993blz\nR5cvX9b58+e1cuXKcIsHAERozB76hg0bdPToUV2/fl0FBQXasWOHKisrdefOHZWWlkqSnnzySe3a\ntUslJSUqKytTSUmJEhMTtWvXrjGGXAAA0WbZtm1PaoWWJcnW5NaKeGZZYnsAQrAsS6HimjtFAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIcYM9M2bN8vpdGrx4sX905qb\nm1VaWqqioiKtXbtWgUCg/73KykrNnz9fxcXFOnLkSOxaDQAYZsxA37Rpk6qqqgZN83q9Ki0t1blz\n57RmzRp5vV5JUnV1tfbt26fq6mpVVVVp69at6u3tjV3LAQCDjBnoq1atUlZW1qBphw4dUnl5uSSp\nvLxcBw4ckCQdPHhQGzZsUFJSkgoLCzVv3jwdP348Rs0GAAwV9hi63++X0+mUJDmdTvn9fklSQ0OD\n3G53/3xut1v19fVRaiYAIJQJnRS1LEuWZY35PgBgciSGu4DT6VRTU5Py8vLU2Nio3NxcSZLL5VJt\nbW3/fHV1dXK5XKOUUqGKir5nHo9HHo8n3GYAgNF8Pp98Pl9Yy1i2bdtjzVBTU6N169bpzJkzkqTX\nX39dOTk52rZtm7xerwKBgLxer6qrq7Vx40YdP35c9fX1eu6553ThwoVhvfS+17bGrhX3E8sS2wMQ\ngmVZChHXY/fQN2zYoKNHj+r69esqKCjQb37zG23fvl1lZWX685//rMLCQu3fv1+SVFJSorKyMpWU\nlCgxMVG7du1iyAUAJlHIHnrUK6SHjiHooQOhjaeHzp2iAGAIAh0ADEGgA4AhCHQAMASBDgCGINAB\nwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAM\nQaADgCEIdAAwBIEOAIYg0AHAEBEHemVlpRYtWqTFixdr48aNun37tpqbm1VaWqqioiKtXbtWgUAg\nmm0FAIwhokCvqanRu+++q1OnTunMmTPq6enR+++/L6/Xq9LSUp07d05r1qyR1+uNdnsBAKOIKNDT\n09OVlJSk9vZ2dXd3q729Xfn5+Tp06JDKy8slSeXl5Tpw4EBUGwsAGF1EgZ6dna2f//zneuCBB5Sf\nn6/MzEyVlpbK7/fL6XRKkpxOp/x+f1QbCwAYXUSBfvHiRf3+979XTU2NGhoa1Nraqr///e+D5rEs\nS5ZlRaWRAIDQEiNZ6MSJE3rqqaeUk5MjSXrllVf06aefKi8vT01NTcrLy1NjY6Nyc3NHKaFCFRV9\nzzwejzweTyTNAABj+Xw++Xy+sJaxbNu2w63o9OnT+t73vqfPPvtMycnJ+sEPfqCVK1fqq6++Uk5O\njrZt2yav16tAIDDsxGhfr91W+LXCVJYltgcgBMuyFCquIwp0SXrrrbe0Z88eORwOLVu2TO+9955u\n3bqlsrIyXblyRYWFhdq/f78yMzOHNYpAx0AEOhBaTAM9UgQ6hiLQgdDGE+jcKQoAhiDQAcAQBDoA\nGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADBHRfyy6\n52VnSy0tU90KfOPX+rVk7ZjqZiAoK0tqbp7qViAC9+fvofMD3MDo2D/iEr+HDgD3EQIdAAxBoAOA\nIQh0ADAEgQ4AhiDQAcAQBDoAGCLiQA8EAlq/fr0WLlyokpISHTt2TM3NzSotLVVRUZHWrl2rQCAQ\nzbYCAMYQcaD/5Cc/0YsvvqizZ8/qv//9r4qLi+X1elVaWqpz585pzZo18nq90WwrAGAMEd0pevPm\nTS1dulSXLl0aNL24uFhHjx6V0+lUU1OTPB6Pvvjii8EVcqcoEN/YP+JSzO4UvXz5smbPnq1NmzZp\n2bJl+uEPf6i2tjb5/X45nU5JktPplN/vj6R4AEAEIgr07u5unTp1Slu3btWpU6c0Y8aMYcMrlmV9\n0xsHAEyGiH5t0e12y+12a8WKFZKk9evXq7KyUnl5eWpqalJeXp4aGxuVm5s7SgkVqqjoe+bxeOTx\neCJpBgAYy+fzyefzhbVMxL+2+PTTT+u9995TUVGRKioq1N7eLknKycnRtm3b5PV6FQgERuy5M4YO\nxDH2j7g0njH0iAP99OnTeu2113Tnzh3NnTtXu3fvVk9Pj8rKynTlyhUVFhZq//79yszMHNYoAh2I\nY+wfcSmmgR4pAh2Ic+wfcYnfQweA+wiBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0\nADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcA\nQxDoAGCICQV6T0+Pli5dqnXr1kmSmpubVVpaqqKiIq1du1aBQCAqjQQAhDahQH/nnXdUUlIiy7Ik\nSV6vV6WlpTp37pzWrFkjr9cblUYCAEKLONDr6up0+PBhvfbaa7JtW5J06NAhlZeXS5LKy8t14MCB\n6LQSABBSxIH+s5/9TG+//bYcjrtF+P1+OZ1OSZLT6ZTf7594CwEA4xJRoP/rX/9Sbm6uli5d2t87\nH8qyrP6hGABA7CVGstAnn3yiQ4cO6fDhw+rs7NTXX3+t73//+3I6nWpqalJeXp4aGxuVm5s7SgkV\nqqjoe+bxeOTxeCJqPACYyufzyefzhbWMZY/WxR6no0eP6re//a3++c9/6vXXX1dOTo62bdsmr9er\nQCAw7MRoX6/d1sRqnSDL0tQ2AIhj7B9xybKsUUdEgqJyHXpwaGX79u368MMPVVRUpI8//ljbt2+P\nRvEAgHGYcA897ArpoQPxjf0jLk1aDx0AMPUIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0A\nDEGgA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYIiIAr22tlbPPvusFi1apEceeUR/+MMfJEnNzc0qLS1VUVGR1q5dq0AgENXG\nAgBGZ9m2bYe7UFNTk5qamvTYY4+ptbVVy5cv14EDB7R7927NmjVLr7/+ut588021tLTI6/UOrtCy\nJNkKv9YosixNbQOAOMb+EZcsy1KouI6oh56Xl6fHHntMkpSWlqaFCxeqvr5ehw4dUnl5uSSpvLxc\nBw4ciKR4AEAEJjyGXlNTo88//1yPP/64/H6/nE6nJMnpdMrv90+4gQCA8UmcyMKtra169dVX9c47\n72jmzJmD3rMs65vhlZFUqKKi75nH45HH45lIMwDAOD6fTz6fL6xlIhpDl6Suri699NJLeuGFF/TT\nn/5UklRcXCyfz6e8vDw1Njbq2Wef1RdffDG4QsbQgfjG/hGXYjaGbtu2tmzZopKSkv4wl6SXX35Z\ne/bskSTt2bNH3/nOdyIpHgAQgYh66P/5z3/09NNP69FHH+0fVqmsrNTKlStVVlamK1euqLCwUPv3\n71dmZubgCumhA/GN/SMujaeHHvGQS6QIdCDOsX/EpZgNuQAA4g+BDgCGINABwBAEOgAYYkI3FgGY\nItnZUktL7Mof9abACcrKkpqbY1M2uMoFuCfdq9vwvdruOMBVLgBwHyHQAcAQBDoAGIJABwBDEOgA\nYAgCHQAMQaADgCEIdAAwhBmBnp3dd8PCeB9SePNnZ0/t3wfci0baLyX2rxgy407RWN99xt1tiJVY\n38I/1GTeej/e/Yb9a1zun39wQaDjXjXZ29Zk1hesayIHLX77pd/9F+iT3duJBjbY+9v9EOgTqZPO\nVL/xBLpZv7bY0nLvffix+lU7YCTJyX0dn1h3IrKz++rCpDKrh34vHs3vxTYjeqaihy7F/pthsJ6B\n++W9+A16oCn+Nh2/v7b4TIWy34zxme1wr3yZqoc09W2I5oMrFoYba1uUJn9d2vbkBmvwW0HwG/TQ\nR7BN8fzIypI6OiZvnUVoSnrotm3L2mHJ/nWUqh6ph07Pd3xG6jWNpycy2vplvQ832jqJVY91rM8v\neLAItidWvU7L6gvylJTBf+O9us0M/MYxZU2Ygh56VVWViouLNX/+fL355psjV7qjr1prh9X/iHmP\nHSMb2GvKyro7jV547I3WYw31CBrt/Y6OsT+jgfPGsqfe2XlvD7GMJM63/6j20Ht6erRgwQL9+9//\nlsvl0ooVK7R3714tXLjwboWWJVVEq8Y+doXooUdq6DobSzDwOzr6dtaJjIveT1f3jLQtBtdbJOth\n4Oc00vJj9SaHvher/WTotpScfHebGWneeN9X4yBbJv0ql+PHj2vevHkqLCyUJH33u9/VwYMHBwX6\nQFnJWWreFoWduiJEECE8QzeagUNaQw28siicDT3UwcMEAw92Q68sCU4PfhsKN9izsvqWDS4fnDbe\nMga2LZL6xysY5J2dd+saSTxsDwZ0MqIa6PX19SooKOh/7Xa7dezYsVHnb+lskbVj4h/koAgZuGGM\ntZEY8OHFzEiXtaWkjH/Z8fbYx7MT38ufU7AHPlLwSoMPfuEGWvBAOrDHPbCMUJcMDmxb8HUkB4ZQ\ngkEeNLTseLjyJXjQGbgOBgp+XkMPgsH34mj7jGqgW1E+yo7npKm1w5ItyQoGzsCNdCyjfXiRSE6+\nJ86Ajyol5W77g+tvaKgP3TGTkwdfpREUDJpo7ajR/JymQkvL8O1jpPU29PV4vukMPMgGnwfL6OwM\nvd6G3rcR/MyGrvNohlaw7IQEqadn5Dom+/Meum0PNfCgN3R4Mtrb5wTXdVQD3eVyqba2tv91bW2t\n3G73oHmWLFmi0xWnx1WeNc6hFId090OZiqP9eHaeeDaw/SP12EZbZjT38rqIhUi2j/HMP/AzCBVK\nE6knFgfVgWEeqzpiIdZtHGM9LFmyJOTiUT0p2t3drQULFuijjz5Sfn6+Vq5cOeykKAAgNqLaQ09M\nTNSf/vQnPf/88+rp6dGWLVsIcwCYJJN+YxEAIDbM+AcXiNjevXv11ltv6datWzpy5EhM6jh58qSO\nHTumN954Q3v37o1JHePxwQcfTFndofzoRz/S4cOH1TN0bHkC3n33Xe3fv187d+7U/v37o1Yu4tek\n9NCvX7+uo0eP6m9/+5tqamrkdrt1584d3bhxQ83NzWpra9PSpUvV2dmp7OxsdXd3q7m5WS6XS598\n8ols29aaNWv0wQcfKD8/X7dv31ZiYqKysrKUn58v27Z19epV9fT06MKFC8rJyVFdXZ1mz56t9vZ2\ndXR0yOl0qrW1VTk5OXI4HPL7/UpMTNSsWbN0/fp1ZWZm6vz587IsSxkZGbp586ZSUlLU0dGhmTNn\nqre3V9evX1d2drba29slSQ899JCuXr2q9vZ2FRQUKDk5WTU1NZo5c6Zu3Lghh8Oh3t5e5efnq6Gh\nQQ888ICampqUlJSkgoICXb16VYFAQLZtq6SkRGfPntXcuXPV3d2t9PR0TZ8+XWfPnlVqaqrS09PV\n09Oja9euacGCBTp16pRSU1OVk5Oj9vZ2rV69WvX19WpoaNCVK1dUUlKihoYGJSQkaNq0aerq6lJR\nUZEuXbqkb3/72zp06JDu3LmjtLQ0JScn68aNG+rt7VVPT48WLVqk3t5eXb58WSkpKUpNTVV7e7sS\nEhKUkZGh2tpapaWlKTU1tb98SVqxYkX/ZaoJCQmqra3VnDlz1NraKr/fr+zsbDU3NyslJUVz5szR\nww8/rEcffVSff/655syZo1OnTmnu3Lm6fPmybt++rc7OTs2dO1etra2aM2eOqqqq1NnZqRkzZmj6\n9OlauHCh2tralJ+fr1OnTulb3/qWnnzySR0/flzt7e0KBAKqrq6WZVnKyclRa2urVq9eLb/fr2vX\nrqm1tVWdnZ0qKyuTz+eT0+nU9evXlZycrJKSErW0tOjjjz9Wenq6UlJSZNu20tPTVV9fr+RvLgt0\nOBxKT09XS0tL/3bT0dGhrq4uzZ49Wx0dHZo1a5a6u7v11VdfKS8vT7Nnz9bZs2fldDqVm5urW7du\n6dKlS3K73bp27ZocDocSEhLU1dWlmzdvqrCwUPPnz1ddXZ1qamq0fPlydXR0qKOjQx6PRydOnNCN\nGzd069YttbW1acGCBfryyy81ffr0/vq//vprpaenq7GxUR0dHUpPT1dHR4dSUlKUkJAgl8ul1NRU\nXbhwQampqbJtWxkZGUpLS9OFCxc0bdo05ebmKiMjQxcvXlRbW5uyv7ljsr6+XtOmTVN3d7e6urq0\nfv16XbhwQV1dXUpLS9Orr76qP/7xj2psbJTUd67twQcf1LVr1/TAAw+ooKBAXV1dOnv2bP+6bm5u\n1owZM5Senq7k5GRlZWXp/PnzqqmpUVpamnJzc1VbWyuXyyWXy6Xz588rEAho0aJFunjxojIzM3Xz\n5k1lZGQoKSlJtm2rt7dXixYt0smTJ1VbW6sZM2YoJSVFPT09amtrU1pamlavXq3PPvtMLpdL1dXV\nunPnjh5++GFVV1dr+vTpSk1N1a1bt5SXlyeHw6Hbt28rJSVFbW1t8vv9mjNnjtLS0pSUlKR58+bp\nyy+/VFpamnp7e9XY2KiUlBQFAgH19PQoNzdXtm0rEAgoJydHnZ2dcjgcunLlimzbVk5Ojq5du6Zl\ny5bpl7/8pZ544gllZGSMmbWTEujRvpwRAO43BQUFunLlypjzTMqQS0JCwmRUAwDGunXrVsh5JiXQ\nf/WrX/V/PYu2tLS0YdMSE8d/8U5CQoKSkpLCWmYk4X4LGe9BLljuwPkn2taRyo/V/KO11bKsEctK\nSkoKq/xwWZYV1vpzOOL7NFNmZuao701kO7EsSwkJCVH5+6O9DoNDfCOVPdZ+FfybolFvNIy0/Y/U\nvvT0dP34xz/W//3f/4UuczKGXBISEtTb2xvragDAWPPmzdP58+fHnIchFwC4B2zZsiXkPJMS6KtW\nrZqMagDAOA6HQ6mpqXrppZdCzjspQy7By+YAAJF59dVX9Y9//GPMeeL7jA8AQJJ04sSJkPNMSqAv\nW7Ysqldm4C7OTwD3h7GuaAqalEA/ffq0uru7J6Oq+040bxUHEL9axvHT4JMS6OvWrVNeXp7cbvew\n64CXLl0qafTrkgeK1jXKkd65Gus7XlNTU5WYmNj/d46nPsuyNH/+fGVmZoZ1ve945h1Y/3jLDveb\nWPA293DqGKmMgWbOnDlsnpRv/gFE8ATTaPLy8vqfB//+geW7XK7+2/6jJZxvWZF+I5vKb3LRvA49\nnGvBI9lfg9tvOG0eq57ExEQ5HI6IRyhmzpyppKQkJSQkaM6cOaHbwq8tAoAZOCkKAIYg0AHAEAQ6\nABiCQAcAQxDoAGCI/wdeheftyb5rNAAAAABJRU5ErkJggg==\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "{'color_list': ['g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'g',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'r',\n", - " 'b'],\n", - " 'dcoord': [[0.0, 0.058577537059864349, 0.058577537059864349, 0.0],\n", - " [0.0, 0.17585345092149576, 0.17585345092149576, 0.058577537059864349],\n", - " [0.0, 0.079976652999482881, 0.079976652999482881, 0.0],\n", - " [0.0, 0.11194911080041241, 0.11194911080041241, 0.0],\n", - " [0.079976652999482881,\n", - " 0.1702991431569793,\n", - " 0.1702991431569793,\n", - " 0.11194911080041241],\n", - " [0.0, 0.030260444494418906, 0.030260444494418906, 0.0],\n", - " [0.0, 0.14943563539195742, 0.14943563539195742, 0.030260444494418906],\n", - " [0.0, 0.19528746762913293, 0.19528746762913293, 0.14943563539195742],\n", - " [0.1702991431569793,\n", - " 0.21404144475778369,\n", - " 0.21404144475778369,\n", - " 0.19528746762913293],\n", - " [0.17585345092149576,\n", - " 0.24491008752193036,\n", - " 0.24491008752193036,\n", - " 0.21404144475778369],\n", - " [0.0, 0.31504336737980065, 0.31504336737980065, 0.24491008752193036],\n", - " [0.0, 0.71142520708294088, 0.71142520708294088, 0.31504336737980065],\n", - " [0.0, 0.81267704712327438, 0.81267704712327438, 0.0],\n", - " [0.0, 0.18903400489067604, 0.18903400489067604, 0.0],\n", - " [0.0, 0.69897950780334228, 0.69897950780334228, 0.18903400489067604],\n", - " [0.0, 0.0059331813557449891, 0.0059331813557449891, 0.0],\n", - " [0.0, 0.026420387222745308, 0.026420387222745308, 0.0059331813557449891],\n", - " [0.0, 0.043599260830879928, 0.043599260830879928, 0.0],\n", - " [0.026420387222745308,\n", - " 0.074360635480075113,\n", - " 0.074360635480075113,\n", - " 0.043599260830879928],\n", - " [0.0, 0.10122168303778778, 0.10122168303778778, 0.074360635480075113],\n", - " [0.0, 0.16719595596186196, 0.16719595596186196, 0.0],\n", - " [0.0, 0.16859012708933838, 0.16859012708933838, 0.0],\n", - " [0.0, 0.21299392662233016, 0.21299392662233016, 0.16859012708933838],\n", - " [0.16719595596186196,\n", - " 0.28364005055703573,\n", - " 0.28364005055703573,\n", - " 0.21299392662233016],\n", - " [0.0, 0.30420748336621156, 0.30420748336621156, 0.28364005055703573],\n", - " [0.0, 0.31251988287465593, 0.31251988287465593, 0.30420748336621156],\n", - " [0.10122168303778778,\n", - " 0.8973537547478202,\n", - " 0.8973537547478202,\n", - " 0.31251988287465593],\n", - " [0.0, 0.68737633742950621, 0.68737633742950621, 0.0],\n", - " [0.0, 0.02041572477284222, 0.02041572477284222, 0.0],\n", - " [0.0, 0.024305734343971527, 0.024305734343971527, 0.02041572477284222],\n", - " [0.0, 0.052346166430778995, 0.052346166430778995, 0.024305734343971527],\n", - " [0.0, 0.16131594691783732, 0.16131594691783732, 0.052346166430778995],\n", - " [0.0, 0.20069133555788984, 0.20069133555788984, 0.16131594691783732],\n", - " [0.0, 0.20832830392914825, 0.20832830392914825, 0.20069133555788984],\n", - " [0.0, 0.021329627868290985, 0.021329627868290985, 0.0],\n", - " [0.0, 0.035734480057774527, 0.035734480057774527, 0.021329627868290985],\n", - " [0.0, 0.06479585444301679, 0.06479585444301679, 0.035734480057774527],\n", - " [0.0, 0.034132716343707445, 0.034132716343707445, 0.0],\n", - " [0.0, 0.20186282441300812, 0.20186282441300812, 0.034132716343707445],\n", - " [0.0, 0.21608899822295674, 0.21608899822295674, 0.20186282441300812],\n", - " [0.06479585444301679,\n", - " 0.30015409456145276,\n", - " 0.30015409456145276,\n", - " 0.21608899822295674],\n", - " [0.0, 0.37397181286829856, 0.37397181286829856, 0.30015409456145276],\n", - " [0.0, 0.58361241921843809, 0.58361241921843809, 0.37397181286829856],\n", - " [0.0, 0.11597818556954211, 0.11597818556954211, 0.0],\n", - " [0.0, 0.54282733990283816, 0.54282733990283816, 0.11597818556954211],\n", - " [0.0, 0.096545516317430205, 0.096545516317430205, 0.0],\n", - " [0.0, 0.26242474490222512, 0.26242474490222512, 0.0],\n", - " [0.096545516317430205,\n", - " 0.34687298302693015,\n", - " 0.34687298302693015,\n", - " 0.26242474490222512],\n", - " [0.0, 0.10264387586212562, 0.10264387586212562, 0.0],\n", - " [0.0, 0.17180076704427436, 0.17180076704427436, 0.10264387586212562],\n", - " [0.0, 0.0096294329012716774, 0.0096294329012716774, 0.0],\n", - " [0.0, 0.020106456699274241, 0.020106456699274241, 0.0096294329012716774],\n", - " [0.0, 0.12797137345906473, 0.12797137345906473, 0.0],\n", - " [0.0, 0.10120727393819517, 0.10120727393819517, 0.0],\n", - " [0.0, 0.11008410987967572, 0.11008410987967572, 0.10120727393819517],\n", - " [0.0, 0.0090920730859458034, 0.0090920730859458034, 0.0],\n", - " [0.0, 0.019539301983446597, 0.019539301983446597, 0.0090920730859458034],\n", - " [0.0, 0.018936094687130686, 0.018936094687130686, 0.0],\n", - " [0.0, 0.022175793672378631, 0.022175793672378631, 0.018936094687130686],\n", - " [0.0, 0.030099448001568056, 0.030099448001568056, 0.0],\n", - " [0.022175793672378631,\n", - " 0.13537179914959391,\n", - " 0.13537179914959391,\n", - " 0.030099448001568056],\n", - " [0.0, 0.02667406219533654, 0.02667406219533654, 0.0],\n", - " [0.0, 0.093463141317834175, 0.093463141317834175, 0.02667406219533654],\n", - " [0.0, 0.14367427631278185, 0.14367427631278185, 0.093463141317834175],\n", - " [0.0, 0.13353453195709028, 0.13353453195709028, 0.0],\n", - " [0.0, 0.11089420725178536, 0.11089420725178536, 0.0],\n", - " [0.0, 0.020411024104618845, 0.020411024104618845, 0.0],\n", - " [0.0, 0.11157119289942873, 0.11157119289942873, 0.020411024104618845],\n", - " [0.0, 0.11977175404075831, 0.11977175404075831, 0.0],\n", - " [0.0, 0.12850232135257589, 0.12850232135257589, 0.11977175404075831],\n", - " [0.11157119289942873,\n", - " 0.13037981216812258,\n", - " 0.13037981216812258,\n", - " 0.12850232135257589],\n", - " [0.0, 0.13352530328368858, 0.13352530328368858, 0.13037981216812258],\n", - " [0.11089420725178536,\n", - " 0.13805385298497838,\n", - " 0.13805385298497838,\n", - " 0.13352530328368858],\n", - " [0.13353453195709028,\n", - " 0.15197321510385198,\n", - " 0.15197321510385198,\n", - " 0.13805385298497838],\n", - " [0.14367427631278185,\n", - " 0.15350004905536976,\n", - " 0.15350004905536976,\n", - " 0.15197321510385198],\n", - " [0.13537179914959391,\n", - " 0.16848271740746287,\n", - " 0.16848271740746287,\n", - " 0.15350004905536976],\n", - " [0.0, 0.17111617234206286, 0.17111617234206286, 0.16848271740746287],\n", - " [0.019539301983446597,\n", - " 0.17415760749677933,\n", - " 0.17415760749677933,\n", - " 0.17111617234206286],\n", - " [0.11008410987967572,\n", - " 0.17484774140091489,\n", - " 0.17484774140091489,\n", - " 0.17415760749677933],\n", - " [0.0, 0.036601059178656498, 0.036601059178656498, 0.0],\n", - " [0.0, 0.14236382247256915, 0.14236382247256915, 0.036601059178656498],\n", - " [0.0, 0.010577491668637138, 0.010577491668637138, 0.0],\n", - " [0.0, 0.0091277982558748139, 0.0091277982558748139, 0.0],\n", - " [0.0, 0.073655445508122211, 0.073655445508122211, 0.0091277982558748139],\n", - " [0.010577491668637138,\n", - " 0.10441996736736607,\n", - " 0.10441996736736607,\n", - " 0.073655445508122211],\n", - " [0.0, 0.19447969206321963, 0.19447969206321963, 0.10441996736736607],\n", - " [0.14236382247256915,\n", - " 0.19798494296285804,\n", - " 0.19798494296285804,\n", - " 0.19447969206321963],\n", - " [0.17484774140091489,\n", - " 0.22441433988272957,\n", - " 0.22441433988272957,\n", - " 0.19798494296285804],\n", - " [0.12797137345906473,\n", - " 0.23550661681787541,\n", - " 0.23550661681787541,\n", - " 0.22441433988272957],\n", - " [0.0, 0.10166324067725301, 0.10166324067725301, 0.0],\n", - " [0.0, 0.11147766037194097, 0.11147766037194097, 0.10166324067725301],\n", - " [0.0, 0.12874025781005718, 0.12874025781005718, 0.11147766037194097],\n", - " [0.0, 0.19981333373425841, 0.19981333373425841, 0.12874025781005718],\n", - " [0.0, 0.053102254208276647, 0.053102254208276647, 0.0],\n", - " [0.0, 0.060456510153976302, 0.060456510153976302, 0.053102254208276647],\n", - " [0.0, 0.10303561793867122, 0.10303561793867122, 0.060456510153976302],\n", - " [0.0, 0.10410645278751852, 0.10410645278751852, 0.10303561793867122],\n", - " [0.0, 0.11498417484158399, 0.11498417484158399, 0.10410645278751852],\n", - " [0.0, 0.067740296603999953, 0.067740296603999953, 0.0],\n", - " [0.0, 0.016273413440337014, 0.016273413440337014, 0.0],\n", - " [0.0, 0.022401309113534898, 0.022401309113534898, 0.016273413440337014],\n", - " [0.0, 0.074841555361980061, 0.074841555361980061, 0.022401309113534898],\n", - " [0.0, 0.084130282419603478, 0.084130282419603478, 0.074841555361980061],\n", - " [0.0, 0.033008459355147082, 0.033008459355147082, 0.0],\n", - " [0.0, 0.061410522266129808, 0.061410522266129808, 0.033008459355147082],\n", - " [0.0, 0.067156094682460948, 0.067156094682460948, 0.061410522266129808],\n", - " [0.0, 0.10275907731192703, 0.10275907731192703, 0.067156094682460948],\n", - " [0.084130282419603478,\n", - " 0.1150719043598238,\n", - " 0.1150719043598238,\n", - " 0.10275907731192703],\n", - " [0.0, 0.11508265412302746, 0.11508265412302746, 0.1150719043598238],\n", - " [0.0, 0.12026804094604936, 0.12026804094604936, 0.0],\n", - " [0.0, 0.13055879348784344, 0.13055879348784344, 0.12026804094604936],\n", - " [0.0, 0.13768031498004041, 0.13768031498004041, 0.13055879348784344],\n", - " [0.11508265412302746,\n", - " 0.14926130113662672,\n", - " 0.14926130113662672,\n", - " 0.13768031498004041],\n", - " [0.067740296603999953,\n", - " 0.1531153862680113,\n", - " 0.1531153862680113,\n", - " 0.14926130113662672],\n", - " [0.0, 0.17189667531980435, 0.17189667531980435, 0.1531153862680113],\n", - " [0.11498417484158399,\n", - " 0.19609999141764939,\n", - " 0.19609999141764939,\n", - " 0.17189667531980435],\n", - " [0.0, 0.20121886723168816, 0.20121886723168816, 0.19609999141764939],\n", - " [0.0, 0.11857116761253537, 0.11857116761253537, 0.0],\n", - " [0.0, 0.14959511724986499, 0.14959511724986499, 0.11857116761253537],\n", - " [0.0, 0.049348178862036476, 0.049348178862036476, 0.0],\n", - " [0.0, 0.010365598197894768, 0.010365598197894768, 0.0],\n", - " [0.0, 0.061316122056093596, 0.061316122056093596, 0.010365598197894768],\n", - " [0.0, 0.078089900665838527, 0.078089900665838527, 0.0],\n", - " [0.061316122056093596,\n", - " 0.11793927264910627,\n", - " 0.11793927264910627,\n", - " 0.078089900665838527],\n", - " [0.0, 0.11800294593780485, 0.11800294593780485, 0.11793927264910627],\n", - " [0.0, 0.0095090841304497874, 0.0095090841304497874, 0.0],\n", - " [0.0, 0.021374653494285547, 0.021374653494285547, 0.0095090841304497874],\n", - " [0.0, 0.028510198683976206, 0.028510198683976206, 0.0],\n", - " [0.0, 0.052663315742557337, 0.052663315742557337, 0.028510198683976206],\n", - " [0.021374653494285547,\n", - " 0.058275868324712286,\n", - " 0.058275868324712286,\n", - " 0.052663315742557337],\n", - " [0.0, 0.055431842545584725, 0.055431842545584725, 0.0],\n", - " [0.0, 0.026114357296318145, 0.026114357296318145, 0.0],\n", - " [0.0, 0.039530875135785772, 0.039530875135785772, 0.026114357296318145],\n", - " [0.0, 0.016878395954595185, 0.016878395954595185, 0.0],\n", - " [0.0, 0.0440787699465435, 0.0440787699465435, 0.016878395954595185],\n", - " [0.039530875135785772,\n", - " 0.056774566990858685,\n", - " 0.056774566990858685,\n", - " 0.0440787699465435],\n", - " [0.055431842545584725,\n", - " 0.058670842954574233,\n", - " 0.058670842954574233,\n", - " 0.056774566990858685],\n", - " [0.058275868324712286,\n", - " 0.070528628088189924,\n", - " 0.070528628088189924,\n", - " 0.058670842954574233],\n", - " [0.0, 0.079888088548920752, 0.079888088548920752, 0.070528628088189924],\n", - " [0.0, 0.030513676884309122, 0.030513676884309122, 0.0],\n", - " [0.0, 0.070081779443735989, 0.070081779443735989, 0.030513676884309122],\n", - " [0.0, 0.083371169813067483, 0.083371169813067483, 0.070081779443735989],\n", - " [0.079888088548920752,\n", - " 0.083857842054278445,\n", - " 0.083857842054278445,\n", - " 0.083371169813067483],\n", - " [0.0, 0.086583197261358172, 0.086583197261358172, 0.083857842054278445],\n", - " [0.0, 0.087111353393229424, 0.087111353393229424, 0.086583197261358172],\n", - " [0.0, 0.11361477591405093, 0.11361477591405093, 0.087111353393229424],\n", - " [0.0, 0.12619580618231044, 0.12619580618231044, 0.11361477591405093],\n", - " [0.11800294593780485,\n", - " 0.14043187334078042,\n", - " 0.14043187334078042,\n", - " 0.12619580618231044],\n", - " [0.0, 0.029637829104036229, 0.029637829104036229, 0.0],\n", - " [0.0, 0.04653628059912316, 0.04653628059912316, 0.0],\n", - " [0.029637829104036229,\n", - " 0.062866962468373561,\n", - " 0.062866962468373561,\n", - " 0.04653628059912316],\n", - " [0.0, 0.074214599210657262, 0.074214599210657262, 0.062866962468373561],\n", - " [0.0, 0.13677144877860162, 0.13677144877860162, 0.074214599210657262],\n", - " [0.0, 0.024899007470180787, 0.024899007470180787, 0.0],\n", - " [0.0, 0.025591493117829628, 0.025591493117829628, 0.024899007470180787],\n", - " [0.0, 0.066507090749774359, 0.066507090749774359, 0.025591493117829628],\n", - " [0.0, 0.024920257482615057, 0.024920257482615057, 0.0],\n", - " [0.0, 0.029977533671083658, 0.029977533671083658, 0.024920257482615057],\n", - " [0.0, 0.026704903107863481, 0.026704903107863481, 0.0],\n", - " [0.0, 0.03619429177371461, 0.03619429177371461, 0.026704903107863481],\n", - " [0.029977533671083658,\n", - " 0.1119257432273783,\n", - " 0.1119257432273783,\n", - " 0.03619429177371461],\n", - " [0.0, 0.049352062834277753, 0.049352062834277753, 0.0],\n", - " [0.0, 0.086304196143636616, 0.086304196143636616, 0.0],\n", - " [0.0, 0.10234439910909067, 0.10234439910909067, 0.086304196143636616],\n", - " [0.049352062834277753,\n", - " 0.11298077792703588,\n", - " 0.11298077792703588,\n", - " 0.10234439910909067],\n", - " [0.0, 0.087915550137615081, 0.087915550137615081, 0.0],\n", - " [0.0, 0.025067298617922871, 0.025067298617922871, 0.0],\n", - " [0.0, 0.040494131142671676, 0.040494131142671676, 0.0],\n", - " [0.0, 0.050903462770209122, 0.050903462770209122, 0.040494131142671676],\n", - " [0.0, 0.077029617764855646, 0.077029617764855646, 0.050903462770209122],\n", - " [0.025067298617922871,\n", - " 0.079079251899595721,\n", - " 0.079079251899595721,\n", - " 0.077029617764855646],\n", - " [0.0, 0.080922169051509993, 0.080922169051509993, 0.079079251899595721],\n", - " [0.0, 0.026976465335546301, 0.026976465335546301, 0.0],\n", - " [0.0, 0.031690317133159056, 0.031690317133159056, 0.026976465335546301],\n", - " [0.0, 0.042798452413615323, 0.042798452413615323, 0.031690317133159056],\n", - " [0.0, 0.044815684408489528, 0.044815684408489528, 0.0],\n", - " [0.042798452413615323,\n", - " 0.045689774020012321,\n", - " 0.045689774020012321,\n", - " 0.044815684408489528],\n", - " [0.0, 0.087140516925248421, 0.087140516925248421, 0.045689774020012321],\n", - " [0.080922169051509993,\n", - " 0.093703801294289374,\n", - " 0.093703801294289374,\n", - " 0.087140516925248421],\n", - " [0.0, 0.11476267322174089, 0.11476267322174089, 0.093703801294289374],\n", - " [0.087915550137615081,\n", - " 0.11573905015162374,\n", - " 0.11573905015162374,\n", - " 0.11476267322174089],\n", - " [0.11298077792703588,\n", - " 0.12564201007625059,\n", - " 0.12564201007625059,\n", - " 0.11573905015162374],\n", - " [0.0, 0.12763188139722345, 0.12763188139722345, 0.12564201007625059],\n", - " [0.1119257432273783,\n", - " 0.13245134180521367,\n", - " 0.13245134180521367,\n", - " 0.12763188139722345],\n", - " [0.0, 0.13629955416656087, 0.13629955416656087, 0.13245134180521367],\n", - " [0.066507090749774359,\n", - " 0.13652559238472609,\n", - " 0.13652559238472609,\n", - " 0.13629955416656087],\n", - " [0.0, 0.15095084130271305, 0.15095084130271305, 0.13652559238472609],\n", - " [0.0, 0.15386943010879103, 0.15386943010879103, 0.15095084130271305],\n", - " [0.13677144877860162,\n", - " 0.15697378530507267,\n", - " 0.15697378530507267,\n", - " 0.15386943010879103],\n", - " [0.14043187334078042,\n", - " 0.16127815342444904,\n", - " 0.16127815342444904,\n", - " 0.15697378530507267],\n", - " [0.049348178862036476,\n", - " 0.16454342722819015,\n", - " 0.16454342722819015,\n", - " 0.16127815342444904],\n", - " [0.0, 0.17254602758684731, 0.17254602758684731, 0.16454342722819015],\n", - " [0.0, 0.17460068280507615, 0.17460068280507615, 0.17254602758684731],\n", - " [0.14959511724986499,\n", - " 0.19469206983336104,\n", - " 0.19469206983336104,\n", - " 0.17460068280507615],\n", - " [0.0, 0.20531797725966874, 0.20531797725966874, 0.19469206983336104],\n", - " [0.20121886723168816,\n", - " 0.20959430748471852,\n", - " 0.20959430748471852,\n", - " 0.20531797725966874],\n", - " [0.0, 0.2108767225134234, 0.2108767225134234, 0.20959430748471852],\n", - " [0.19981333373425841,\n", - " 0.22751804313722743,\n", - " 0.22751804313722743,\n", - " 0.2108767225134234],\n", - " [0.0, 0.24039510737533906, 0.24039510737533906, 0.22751804313722743],\n", - " [0.0, 0.24946561416956989, 0.24946561416956989, 0.24039510737533906],\n", - " [0.23550661681787541,\n", - " 0.25783676403879591,\n", - " 0.25783676403879591,\n", - " 0.24946561416956989],\n", - " [0.020106456699274241,\n", - " 0.30076594157750691,\n", - " 0.30076594157750691,\n", - " 0.25783676403879591],\n", - " [0.0, 0.34493409663441477, 0.34493409663441477, 0.30076594157750691],\n", - " [0.17180076704427436,\n", - " 0.3613255714518312,\n", - " 0.3613255714518312,\n", - " 0.34493409663441477],\n", - " [0.0, 0.36281042197408714, 0.36281042197408714, 0.3613255714518312],\n", - " [0.34687298302693015,\n", - " 0.48246802527111676,\n", - " 0.48246802527111676,\n", - " 0.36281042197408714],\n", - " [0.0, 0.48308492094558325, 0.48308492094558325, 0.48246802527111676],\n", - " [0.0, 0.58910361981318693, 0.58910361981318693, 0.48308492094558325],\n", - " [0.54282733990283816,\n", - " 0.59244134173772833,\n", - " 0.59244134173772833,\n", - " 0.58910361981318693],\n", - " [0.58361241921843809,\n", - " 0.61495342846836987,\n", - " 0.61495342846836987,\n", - " 0.59244134173772833],\n", - " [0.20832830392914825,\n", - " 0.69992089603897245,\n", - " 0.69992089603897245,\n", - " 0.61495342846836987],\n", - " [0.0, 0.75378691827929678, 0.75378691827929678, 0.69992089603897245],\n", - " [0.68737633742950621,\n", - " 0.85430122020865618,\n", - " 0.85430122020865618,\n", - " 0.75378691827929678],\n", - " [0.0, 0.042023140827410196, 0.042023140827410196, 0.0],\n", - " [0.0, 0.15932293929626154, 0.15932293929626154, 0.0],\n", - " [0.042023140827410196,\n", - " 0.21766038212086505,\n", - " 0.21766038212086505,\n", - " 0.15932293929626154],\n", - " [0.0, 0.13133931793640435, 0.13133931793640435, 0.0],\n", - " [0.0, 0.29172392523411683, 0.29172392523411683, 0.13133931793640435],\n", - " [0.0, 0.40929711956596387, 0.40929711956596387, 0.29172392523411683],\n", - " [0.21766038212086505,\n", - " 0.86998025137643531,\n", - " 0.86998025137643531,\n", - " 0.40929711956596387],\n", - " [0.85430122020865618,\n", - " 0.9142936765142966,\n", - " 0.9142936765142966,\n", - " 0.86998025137643531],\n", - " [0.0, 0.044857776193196537, 0.044857776193196537, 0.0],\n", - " [0.0, 0.26880538606396615, 0.26880538606396615, 0.044857776193196537],\n", - " [0.0, 0.39230453352591782, 0.39230453352591782, 0.0],\n", - " [0.26880538606396615,\n", - " 0.41907548995378552,\n", - " 0.41907548995378552,\n", - " 0.39230453352591782],\n", - " [0.0, 0.93354286767400008, 0.93354286767400008, 0.41907548995378552],\n", - " [0.9142936765142966,\n", - " 0.9353851077251425,\n", - " 0.9353851077251425,\n", - " 0.93354286767400008],\n", - " [0.8973537547478202,\n", - " 1.0034151482815983,\n", - " 1.0034151482815983,\n", - " 0.9353851077251425],\n", - " [0.0, 1.1600974917350628, 1.1600974917350628, 1.0034151482815983],\n", - " [0.69897950780334228,\n", - " 1.3652687976003031,\n", - " 1.3652687976003031,\n", - " 1.1600974917350628],\n", - " [0.81267704712327438,\n", - " 1.4128696483065686,\n", - " 1.4128696483065686,\n", - " 1.3652687976003031],\n", - " [0.71142520708294088,\n", - " 1.5419587655861655,\n", - " 1.5419587655861655,\n", - " 1.4128696483065686],\n", - " [0.0, 2.4131301186707561, 2.4131301186707561, 0.0],\n", - " [1.5419587655861655,\n", - " 2.4419968518130983,\n", - " 2.4419968518130983,\n", - " 2.4131301186707561],\n", - " [0.0, 2.7006547332130433, 2.7006547332130433, 2.4419968518130983],\n", - " [0.0, 2.8047954181954138, 2.8047954181954138, 2.7006547332130433],\n", - " [0.0, 3.1285245157308621, 3.1285245157308621, 2.8047954181954138],\n", - " [0.0, 4.3725094114435077, 4.3725094114435077, 3.1285245157308621],\n", - " [0.0, 0.063030961733102825, 0.063030961733102825, 0.0],\n", - " [0.0, 0.038131460305110249, 0.038131460305110249, 0.0],\n", - " [0.0, 0.042135372313533134, 0.042135372313533134, 0.038131460305110249],\n", - " [0.0, 0.048313019632391409, 0.048313019632391409, 0.042135372313533134],\n", - " [0.0, 0.024675691398624328, 0.024675691398624328, 0.0],\n", - " [0.0, 0.055129324365528594, 0.055129324365528594, 0.024675691398624328],\n", - " [0.048313019632391409,\n", - " 0.060495191544450676,\n", - " 0.060495191544450676,\n", - " 0.055129324365528594],\n", - " [0.0, 0.087711661801609109, 0.087711661801609109, 0.060495191544450676],\n", - " [0.0, 0.10447645283507963, 0.10447645283507963, 0.087711661801609109],\n", - " [0.0, 0.10076601413175348, 0.10076601413175348, 0.0],\n", - " [0.0, 0.017738729633203536, 0.017738729633203536, 0.0],\n", - " [0.0, 0.02573997241645793, 0.02573997241645793, 0.017738729633203536],\n", - " [0.0, 0.026469395535222717, 0.026469395535222717, 0.0],\n", - " [0.0, 0.036663044131659842, 0.036663044131659842, 0.0],\n", - " [0.026469395535222717,\n", - " 0.036871851079106323,\n", - " 0.036871851079106323,\n", - " 0.036663044131659842],\n", - " [0.0, 0.067017921759778623, 0.067017921759778623, 0.036871851079106323],\n", - " [0.02573997241645793,\n", - " 0.12897058806177739,\n", - " 0.12897058806177739,\n", - " 0.067017921759778623],\n", - " [0.10076601413175348,\n", - " 0.2240265247197312,\n", - " 0.2240265247197312,\n", - " 0.12897058806177739],\n", - " [0.10447645283507963,\n", - " 0.34097530234461204,\n", - " 0.34097530234461204,\n", - " 0.2240265247197312],\n", - " [0.063030961733102825,\n", - " 0.835032222135769,\n", - " 0.835032222135769,\n", - " 0.34097530234461204],\n", - " [0.0, 0.31975710624941311, 0.31975710624941311, 0.0],\n", - " [0.0, 0.018916667069015458, 0.018916667069015458, 0.0],\n", - " [0.0, 0.025353803541084591, 0.025353803541084591, 0.0],\n", - " [0.0, 0.029306934213594694, 0.029306934213594694, 0.025353803541084591],\n", - " [0.0, 0.022859181131441877, 0.022859181131441877, 0.0],\n", - " [0.0, 0.013150132546860243, 0.013150132546860243, 0.0],\n", - " [0.0, 0.019637404232737316, 0.019637404232737316, 0.013150132546860243],\n", - " [0.0, 0.032365678426385096, 0.032365678426385096, 0.019637404232737316],\n", - " [0.022859181131441877,\n", - " 0.03561083578069945,\n", - " 0.03561083578069945,\n", - " 0.032365678426385096],\n", - " [0.029306934213594694,\n", - " 0.040911226454359531,\n", - " 0.040911226454359531,\n", - " 0.03561083578069945],\n", - " [0.0, 0.054058047920727118, 0.054058047920727118, 0.040911226454359531],\n", - " [0.018916667069015458,\n", - " 0.06969365977619732,\n", - " 0.06969365977619732,\n", - " 0.054058047920727118],\n", - " [0.0, 0.052574719599823024, 0.052574719599823024, 0.0],\n", - " [0.0, 0.059506117500637119, 0.059506117500637119, 0.052574719599823024],\n", - " [0.0, 0.062074100380109805, 0.062074100380109805, 0.059506117500637119],\n", - " [0.0, 0.064996037186888747, 0.064996037186888747, 0.0],\n", - " [0.062074100380109805,\n", - " 0.09105624383313847,\n", - " 0.09105624383313847,\n", - " 0.064996037186888747],\n", - " [0.0, 0.0042730229346457848, 0.0042730229346457848, 0.0],\n", - " [0.0, 0.0045349355011969931, 0.0045349355011969931, 0.0042730229346457848],\n", - " [0.0, 0.0011740229980711607, 0.0011740229980711607, 0.0],\n", - " [0.0, 0.002675899288090363, 0.002675899288090363, 0.0011740229980711607],\n", - " [0.0, 0.0034711594604689647, 0.0034711594604689647, 0.0],\n", - " [0.002675899288090363,\n", - " 0.0047647339904760937,\n", - " 0.0047647339904760937,\n", - " 0.0034711594604689647],\n", - " [0.0, 0.0048711913327214706, 0.0048711913327214706, 0.0047647339904760937],\n", - " [0.0, 0.0058304327455192097, 0.0058304327455192097, 0.0048711913327214706],\n", - " [0.0045349355011969931,\n", - " 0.0067416262133117161,\n", - " 0.0067416262133117161,\n", - " 0.0058304327455192097],\n", - " [0.0, 0.013143705717947091, 0.013143705717947091, 0.0067416262133117161],\n", - " [0.0, 0.014506452943433926, 0.014506452943433926, 0.013143705717947091],\n", - " [0.0, 0.014720343813918017, 0.014720343813918017, 0.014506452943433926],\n", - " [0.0, 0.0076818812799946045, 0.0076818812799946045, 0.0],\n", - " [0.0, 0.011179693063768276, 0.011179693063768276, 0.0076818812799946045],\n", - " [0.0, 0.0070076084365486213, 0.0070076084365486213, 0.0],\n", - " [0.0, 0.0077155461893525148, 0.0077155461893525148, 0.0070076084365486213],\n", - " [0.0, 0.011061529234246052, 0.011061529234246052, 0.0077155461893525148],\n", - " [0.0, 0.014194392132103974, 0.014194392132103974, 0.011061529234246052],\n", - " [0.011179693063768276,\n", - " 0.015179853820112842,\n", - " 0.015179853820112842,\n", - " 0.014194392132103974],\n", - " [0.014720343813918017,\n", - " 0.020930380072995677,\n", - " 0.020930380072995677,\n", - " 0.015179853820112842],\n", - " [0.0, 0.023783414746416025, 0.023783414746416025, 0.020930380072995677],\n", - " [0.0, 0.027682855235686182, 0.027682855235686182, 0.023783414746416025],\n", - " [0.0, 0.028264730000478668, 0.028264730000478668, 0.027682855235686182],\n", - " [0.0, 0.029969554217571498, 0.029969554217571498, 0.028264730000478668],\n", - " [0.0, 0.013539744347661097, 0.013539744347661097, 0.0],\n", - " [0.0, 0.003165741777214179, 0.003165741777214179, 0.0],\n", - " [0.0, 0.0059563619769112649, 0.0059563619769112649, 0.0],\n", - " [0.003165741777214179,\n", - " 0.0064697809854744456,\n", - " 0.0064697809854744456,\n", - " 0.0059563619769112649],\n", - " [0.0, 0.014420051733609761, 0.014420051733609761, 0.0064697809854744456],\n", - " [0.0, 0.015478868337186213, 0.015478868337186213, 0.014420051733609761],\n", - " [0.013539744347661097,\n", - " 0.020982022423972228,\n", - " 0.020982022423972228,\n", - " 0.015478868337186213],\n", - " [0.0, 0.027878442657364083, 0.027878442657364083, 0.0],\n", - " [0.020982022423972228,\n", - " 0.034887794914552045,\n", - " 0.034887794914552045,\n", - " 0.027878442657364083],\n", - " [0.0, 0.037017641010741106, 0.037017641010741106, 0.034887794914552045],\n", - " [0.029969554217571498,\n", - " 0.040189486436131086,\n", - " 0.040189486436131086,\n", - " 0.037017641010741106],\n", - " [0.0, 0.049236536403369953, 0.049236536403369953, 0.040189486436131086],\n", - " [0.0, 0.028168664327581059, 0.028168664327581059, 0.0],\n", - " [0.0, 0.048946432209098313, 0.048946432209098313, 0.028168664327581059],\n", - " [0.0, 0.052517601811202359, 0.052517601811202359, 0.048946432209098313],\n", - " [0.049236536403369953,\n", - " 0.085083675902020012,\n", - " 0.085083675902020012,\n", - " 0.052517601811202359],\n", - " [0.0, 0.0052954775044343431, 0.0052954775044343431, 0.0],\n", - " [0.0, 0.0060312012899588398, 0.0060312012899588398, 0.0],\n", - " [0.0, 0.018149390099946681, 0.018149390099946681, 0.0],\n", - " [0.0, 0.0044886952447233857, 0.0044886952447233857, 0.0],\n", - " [0.0, 0.0046389492344732705, 0.0046389492344732705, 0.0044886952447233857],\n", - " [0.0, 0.0047475157714315054, 0.0047475157714315054, 0.0046389492344732705],\n", - " [0.0, 0.0088270589099660717, 0.0088270589099660717, 0.0047475157714315054],\n", - " [0.0, 0.011056615485761267, 0.011056615485761267, 0.0088270589099660717],\n", - " [0.0, 0.014541799785447328, 0.014541799785447328, 0.011056615485761267],\n", - " [0.0, 0.018202622585770101, 0.018202622585770101, 0.0],\n", - " [0.014541799785447328,\n", - " 0.018862869612016803,\n", - " 0.018862869612016803,\n", - " 0.018202622585770101],\n", - " [0.018149390099946681,\n", - " 0.022282108069029877,\n", - " 0.022282108069029877,\n", - " 0.018862869612016803],\n", - " [0.0060312012899588398,\n", - " 0.023295122965976994,\n", - " 0.023295122965976994,\n", - " 0.022282108069029877],\n", - " [0.0052954775044343431,\n", - " 0.024152765990666944,\n", - " 0.024152765990666944,\n", - " 0.023295122965976994],\n", - " [0.0, 0.033926039040834535, 0.033926039040834535, 0.024152765990666944],\n", - " [0.0, 0.012613642971004412, 0.012613642971004412, 0.0],\n", - " [0.0, 0.023545021087269729, 0.023545021087269729, 0.012613642971004412],\n", - " [0.0, 0.0046362339242140005, 0.0046362339242140005, 0.0],\n", - " [0.0, 0.012239654406887642, 0.012239654406887642, 0.0046362339242140005],\n", - " [0.0, 0.022337662590341523, 0.022337662590341523, 0.012239654406887642],\n", - " [0.0, 0.02558678662903947, 0.02558678662903947, 0.022337662590341523],\n", - " [0.0, 0.032550808438499654, 0.032550808438499654, 0.02558678662903947],\n", - " [0.023545021087269729,\n", - " 0.034770221885976831,\n", - " 0.034770221885976831,\n", - " 0.032550808438499654],\n", - " [0.033926039040834535,\n", - " 0.036156795654483417,\n", - " 0.036156795654483417,\n", - " 0.034770221885976831],\n", - " [0.0, 0.024030875556248481, 0.024030875556248481, 0.0],\n", - " [0.0, 0.019772699486922899, 0.019772699486922899, 0.0],\n", - " [0.0, 0.025789709595102295, 0.025789709595102295, 0.019772699486922899],\n", - " [0.0, 0.020040412296158033, 0.020040412296158033, 0.0],\n", - " [0.0, 0.022625403620706017, 0.022625403620706017, 0.0],\n", - " [0.0, 0.0032566860456573203, 0.0032566860456573203, 0.0],\n", - " [0.0, 0.006646174538784134, 0.006646174538784134, 0.0],\n", - " [0.0, 0.0038941843818645389, 0.0038941843818645389, 0.0],\n", - " [0.0, 0.008938300957120629, 0.008938300957120629, 0.0038941843818645389],\n", - " [0.0, 0.013168957323949066, 0.013168957323949066, 0.008938300957120629],\n", - " [0.006646174538784134,\n", - " 0.014340231588090668,\n", - " 0.014340231588090668,\n", - " 0.013168957323949066],\n", - " [0.0032566860456573203,\n", - " 0.015020982990474975,\n", - " 0.015020982990474975,\n", - " 0.014340231588090668],\n", - " [0.0, 0.0051050991175468673, 0.0051050991175468673, 0.0],\n", - " [0.0, 0.011436965025740486, 0.011436965025740486, 0.0051050991175468673],\n", - " [0.0, 0.018808141907164191, 0.018808141907164191, 0.011436965025740486],\n", - " [0.0, 0.019014719193299612, 0.019014719193299612, 0.018808141907164191],\n", - " [0.0, 0.021849739700966948, 0.021849739700966948, 0.019014719193299612],\n", - " [0.015020982990474975,\n", - " 0.021954474737511206,\n", - " 0.021954474737511206,\n", - " 0.021849739700966948],\n", - " [0.0, 0.0053398683504352765, 0.0053398683504352765, 0.0],\n", - " [0.0, 0.0098222983562929814, 0.0098222983562929814, 0.0053398683504352765],\n", - " [0.0, 0.015244300738310313, 0.015244300738310313, 0.0098222983562929814],\n", - " [0.0, 0.013573658349906516, 0.013573658349906516, 0.0],\n", - " [0.0, 0.0097813874271491987, 0.0097813874271491987, 0.0],\n", - " [0.0, 0.010031335554151042, 0.010031335554151042, 0.0],\n", - " [0.0097813874271491987,\n", - " 0.016699318608857334,\n", - " 0.016699318608857334,\n", - " 0.010031335554151042],\n", - " [0.0, 0.00075365575695506785, 0.00075365575695506785, 0.0],\n", - " [0.0, 0.0051095911773845846, 0.0051095911773845846, 0.0],\n", - " [0.0, 0.0091829440268384292, 0.0091829440268384292, 0.0051095911773845846],\n", - " [0.0, 0.0048811148316761357, 0.0048811148316761357, 0.0],\n", - " [0.0, 0.0046754032981107885, 0.0046754032981107885, 0.0],\n", - " [0.0, 0.0050136458790002942, 0.0050136458790002942, 0.0046754032981107885],\n", - " [0.0, 0.0063875073385496915, 0.0063875073385496915, 0.0050136458790002942],\n", - " [0.0, 0.0070993059519933403, 0.0070993059519933403, 0.0063875073385496915],\n", - " [0.0, 0.0077283760907438581, 0.0077283760907438581, 0.0070993059519933403],\n", - " [0.0, 0.0080075617387561741, 0.0080075617387561741, 0.0077283760907438581],\n", - " [0.0, 0.0099468449771769676, 0.0099468449771769676, 0.0080075617387561741],\n", - " [0.0048811148316761357,\n", - " 0.011924750773078977,\n", - " 0.011924750773078977,\n", - " 0.0099468449771769676],\n", - " [0.0091829440268384292,\n", - " 0.011962894507602058,\n", - " 0.011962894507602058,\n", - " 0.011924750773078977],\n", - " [0.0, 0.012611240898499208, 0.012611240898499208, 0.011962894507602058],\n", - " [0.00075365575695506785,\n", - " 0.01376824876300633,\n", - " 0.01376824876300633,\n", - " 0.012611240898499208],\n", - " [0.0, 0.017214438881357715, 0.017214438881357715, 0.01376824876300633],\n", - " [0.016699318608857334,\n", - " 0.017327232006294945,\n", - " 0.017327232006294945,\n", - " 0.017214438881357715],\n", - " [0.013573658349906516,\n", - " 0.020238797839796242,\n", - " 0.020238797839796242,\n", - " 0.017327232006294945],\n", - " [0.015244300738310313,\n", - " 0.021602112350417257,\n", - " 0.021602112350417257,\n", - " 0.020238797839796242],\n", - " [0.0, 0.022432704919381024, 0.022432704919381024, 0.021602112350417257],\n", - " [0.021954474737511206,\n", - " 0.023078995320422156,\n", - " 0.023078995320422156,\n", - " 0.022432704919381024],\n", - " [0.0, 0.023375387847048765, 0.023375387847048765, 0.023078995320422156],\n", - " [0.022625403620706017,\n", - " 0.025456268717157574,\n", - " 0.025456268717157574,\n", - " 0.023375387847048765],\n", - " [0.0, 0.025509151338292842, 0.025509151338292842, 0.025456268717157574],\n", - " [0.020040412296158033,\n", - " 0.027304204309957468,\n", - " 0.027304204309957468,\n", - " 0.025509151338292842],\n", - " [0.0, 0.028138312671517906, 0.028138312671517906, 0.027304204309957468],\n", - " [0.025789709595102295,\n", - " 0.029716085559844133,\n", - " 0.029716085559844133,\n", - " 0.028138312671517906],\n", - " [0.024030875556248481,\n", - " 0.034130906228813367,\n", - " 0.034130906228813367,\n", - " 0.029716085559844133],\n", - " [0.0, 0.038447930945632904, 0.038447930945632904, 0.034130906228813367],\n", - " [0.0, 0.054895990063030246, 0.054895990063030246, 0.038447930945632904],\n", - " [0.0, 0.035649035400695271, 0.035649035400695271, 0.0],\n", - " [0.0, 0.057274761291517942, 0.057274761291517942, 0.035649035400695271],\n", - " [0.054895990063030246,\n", - " 0.061960015695607308,\n", - " 0.061960015695607308,\n", - " 0.057274761291517942],\n", - " [0.0, 0.039433081974402484, 0.039433081974402484, 0.0],\n", - " [0.0, 0.064259212607996219, 0.064259212607996219, 0.039433081974402484],\n", - " [0.061960015695607308,\n", - " 0.066250870613151588,\n", - " 0.066250870613151588,\n", - " 0.064259212607996219],\n", - " [0.036156795654483417,\n", - " 0.073936339170936879,\n", - " 0.073936339170936879,\n", - " 0.066250870613151588],\n", - " [0.0, 0.086800820791053557, 0.086800820791053557, 0.073936339170936879],\n", - " [0.085083675902020012,\n", - " 0.093041924813493798,\n", - " 0.093041924813493798,\n", - " 0.086800820791053557],\n", - " [0.09105624383313847,\n", - " 0.24660045835520966,\n", - " 0.24660045835520966,\n", - " 0.093041924813493798],\n", - " [0.0, 0.0081486583558312859, 0.0081486583558312859, 0.0],\n", - " [0.0, 0.12190062733226319, 0.12190062733226319, 0.0081486583558312859],\n", - " [0.0, 0.049348181445722901, 0.049348181445722901, 0.0],\n", - " [0.0, 0.055073572437241328, 0.055073572437241328, 0.0],\n", - " [0.0, 0.010409502197506228, 0.010409502197506228, 0.0],\n", - " [0.0, 0.011527685023458963, 0.011527685023458963, 0.010409502197506228],\n", - " [0.0, 0.023110772315087451, 0.023110772315087451, 0.011527685023458963],\n", - " [0.0, 0.0076437993170943826, 0.0076437993170943826, 0.0],\n", - " [0.0, 0.012564878749913801, 0.012564878749913801, 0.0],\n", - " [0.0076437993170943826,\n", - " 0.013685820472297718,\n", - " 0.013685820472297718,\n", - " 0.012564878749913801],\n", - " [0.0, 0.016588366525969941, 0.016588366525969941, 0.013685820472297718],\n", - " [0.0, 0.023363982708434799, 0.023363982708434799, 0.016588366525969941],\n", - " [0.023110772315087451,\n", - " 0.026479014218809428,\n", - " 0.026479014218809428,\n", - " 0.023363982708434799],\n", - " [0.0, 0.025590961920174921, 0.025590961920174921, 0.0],\n", - " [0.0, 0.0094752469624766293, 0.0094752469624766293, 0.0],\n", - " [0.0, 0.011433089040147745, 0.011433089040147745, 0.0],\n", - " [0.0094752469624766293,\n", - " 0.0153561395213761,\n", - " 0.0153561395213761,\n", - " 0.011433089040147745],\n", - " [0.0, 0.0092668778453151631, 0.0092668778453151631, 0.0],\n", - " [0.0, 0.0098933488768942167, 0.0098933488768942167, 0.0092668778453151631],\n", - " [0.0, 0.01135804604674881, 0.01135804604674881, 0.0098933488768942167],\n", - " [0.0, 0.016343930647186245, 0.016343930647186245, 0.01135804604674881],\n", - " [0.0, 0.021700551997586883, 0.021700551997586883, 0.016343930647186245],\n", - " [0.0153561395213761,\n", - " 0.022296078601405447,\n", - " 0.022296078601405447,\n", - " 0.021700551997586883],\n", - " [0.0, 0.023872238102034066, 0.023872238102034066, 0.0],\n", - " [0.022296078601405447,\n", - " 0.026879561026921229,\n", - " 0.026879561026921229,\n", - " 0.023872238102034066],\n", - " [0.025590961920174921,\n", - " 0.02944272066232877,\n", - " 0.02944272066232877,\n", - " 0.026879561026921229],\n", - " [0.026479014218809428,\n", - " 0.034664475014057956,\n", - " 0.034664475014057956,\n", - " 0.02944272066232877],\n", - " [0.0, 0.035624178867733308, 0.035624178867733308, 0.034664475014057956],\n", - " [0.0, 0.038596637496030289, 0.038596637496030289, 0.035624178867733308],\n", - " [0.0, 0.034591984418357459, 0.034591984418357459, 0.0],\n", - " [0.0, 0.027335635533130353, 0.027335635533130353, 0.0],\n", - " [0.0, 0.01278652806668026, 0.01278652806668026, 0.0],\n", - " [0.0, 0.019184654284089525, 0.019184654284089525, 0.01278652806668026],\n", - " [0.0, 0.019655557407514092, 0.019655557407514092, 0.019184654284089525],\n", - " [0.0, 0.0062363214317422344, 0.0062363214317422344, 0.0],\n", - " [0.0, 0.01007990322373699, 0.01007990322373699, 0.0062363214317422344],\n", - " [0.0, 0.020257881626668913, 0.020257881626668913, 0.01007990322373699],\n", - " [0.0, 0.025105464743756335, 0.025105464743756335, 0.020257881626668913],\n", - " [0.019655557407514092,\n", - " 0.025410854137555294,\n", - " 0.025410854137555294,\n", - " 0.025105464743756335],\n", - " [0.0, 0.01253748607177551, 0.01253748607177551, 0.0],\n", - " [0.0, 0.0031900222569738955, 0.0031900222569738955, 0.0],\n", - " [0.0, 0.005437790452012657, 0.005437790452012657, 0.0],\n", - " [0.0, 0.0049398552610330658, 0.0049398552610330658, 0.0],\n", - " [0.0, 0.0051527503335615727, 0.0051527503335615727, 0.0],\n", - " [0.0, 0.0078141656624375177, 0.0078141656624375177, 0.0],\n", - " [0.0051527503335615727,\n", - " 0.0082106801788906728,\n", - " 0.0082106801788906728,\n", - " 0.0078141656624375177],\n", - " [0.0, 0.008721855880487045, 0.008721855880487045, 0.0082106801788906728],\n", - " [0.0, 0.010704138358599, 0.010704138358599, 0.0],\n", - " [0.008721855880487045,\n", - " 0.011417178810892104,\n", - " 0.011417178810892104,\n", - " 0.010704138358599],\n", - " [0.0049398552610330658,\n", - " 0.012684672837721313,\n", - " 0.012684672837721313,\n", - " 0.011417178810892104],\n", - " [0.0, 0.013477439074244155, 0.013477439074244155, 0.012684672837721313],\n", - " [0.005437790452012657,\n", - " 0.014909073378316092,\n", - " 0.014909073378316092,\n", - " 0.013477439074244155],\n", - " [0.0, 0.0176974907260894, 0.0176974907260894, 0.014909073378316092],\n", - " [0.0, 0.018411759828979708, 0.018411759828979708, 0.0176974907260894],\n", - " [0.0031900222569738955,\n", - " 0.019978757443845148,\n", - " 0.019978757443845148,\n", - " 0.018411759828979708],\n", - " [0.01253748607177551,\n", - " 0.02551917782766687,\n", - " 0.02551917782766687,\n", - " 0.019978757443845148],\n", - " [0.025410854137555294,\n", - " 0.026860448786274308,\n", - " 0.026860448786274308,\n", - " 0.02551917782766687],\n", - " [0.0, 0.012726267520371868, 0.012726267520371868, 0.0],\n", - " [0.0, 0.021713716402310398, 0.021713716402310398, 0.012726267520371868],\n", - " [0.0, 0.032318429989716083, 0.032318429989716083, 0.021713716402310398],\n", - " [0.026860448786274308,\n", - " 0.033831832421552396,\n", - " 0.033831832421552396,\n", - " 0.032318429989716083],\n", - " [0.0, 0.036007502343262929, 0.036007502343262929, 0.033831832421552396],\n", - " [0.0, 0.0048531377478874616, 0.0048531377478874616, 0.0],\n", - " [0.0, 0.005841397949120317, 0.005841397949120317, 0.0],\n", - " [0.0, 0.0068610459843974885, 0.0068610459843974885, 0.005841397949120317],\n", - " [0.0, 0.02010442908913317, 0.02010442908913317, 0.0068610459843974885],\n", - " [0.0, 0.028297589314283583, 0.028297589314283583, 0.02010442908913317],\n", - " [0.0, 0.0043190546419351866, 0.0043190546419351866, 0.0],\n", - " [0.0, 0.011401308696808317, 0.011401308696808317, 0.0043190546419351866],\n", - " [0.0, 0.024374599894150296, 0.024374599894150296, 0.0],\n", - " [0.011401308696808317,\n", - " 0.026311416989586781,\n", - " 0.026311416989586781,\n", - " 0.024374599894150296],\n", - " [0.0, 0.029341494934649628, 0.029341494934649628, 0.026311416989586781],\n", - " [0.028297589314283583,\n", - " 0.032653926961393097,\n", - " 0.032653926961393097,\n", - " 0.029341494934649628],\n", - " [0.0048531377478874616,\n", - " 0.032926602618550072,\n", - " 0.032926602618550072,\n", - " 0.032653926961393097],\n", - " [0.0, 0.023814472175548763, 0.023814472175548763, 0.0],\n", - " [0.0, 0.035127802806326727, 0.035127802806326727, 0.023814472175548763],\n", - " [0.032926602618550072,\n", - " 0.036366916641367104,\n", - " 0.036366916641367104,\n", - " 0.035127802806326727],\n", - " [0.036007502343262929,\n", - " 0.037793581743467905,\n", - " 0.037793581743467905,\n", - " 0.036366916641367104],\n", - " [0.027335635533130353,\n", - " 0.041694453887773195,\n", - " 0.041694453887773195,\n", - " 0.037793581743467905],\n", - " [0.0, 0.043891861045072679, 0.043891861045072679, 0.041694453887773195],\n", - " [0.034591984418357459,\n", - " 0.044042754148672168,\n", - " 0.044042754148672168,\n", - " 0.043891861045072679],\n", - " [0.038596637496030289,\n", - " 0.045700920450248678,\n", - " 0.045700920450248678,\n", - " 0.044042754148672168],\n", - " [0.0, 0.045898864746312398, 0.045898864746312398, 0.045700920450248678],\n", - " [0.0, 0.046959095391630873, 0.046959095391630873, 0.045898864746312398],\n", - " [0.0, 0.066294241295906192, 0.066294241295906192, 0.046959095391630873],\n", - " [0.055073572437241328,\n", - " 0.082337337271738587,\n", - " 0.082337337271738587,\n", - " 0.066294241295906192],\n", - " [0.0, 0.083179596206043593, 0.083179596206043593, 0.082337337271738587],\n", - " [0.0, 0.090935674853160675, 0.090935674853160675, 0.083179596206043593],\n", - " [0.0, 0.091235253230318433, 0.091235253230318433, 0.090935674853160675],\n", - " [0.049348181445722901,\n", - " 0.095480446636993607,\n", - " 0.095480446636993607,\n", - " 0.091235253230318433],\n", - " [0.0, 0.085581493472596554, 0.085581493472596554, 0.0],\n", - " [0.0, 0.11357092193426943, 0.11357092193426943, 0.085581493472596554],\n", - " [0.095480446636993607,\n", - " 0.12175321185496389,\n", - " 0.12175321185496389,\n", - " 0.11357092193426943],\n", - " [0.0, 0.12563268087563847, 0.12563268087563847, 0.12175321185496389],\n", - " [0.12190062733226319,\n", - " 0.12604821256963281,\n", - " 0.12604821256963281,\n", - " 0.12563268087563847],\n", - " [0.0, 0.031324323711773294, 0.031324323711773294, 0.0],\n", - " [0.0, 0.043285747966276357, 0.043285747966276357, 0.031324323711773294],\n", - " [0.0, 0.47825892879903786, 0.47825892879903786, 0.043285747966276357],\n", - " [0.0, 0.0040926170111554696, 0.0040926170111554696, 0.0],\n", - " [0.0, 0.012216766920915374, 0.012216766920915374, 0.0],\n", - " [0.0, 0.011348982905970199, 0.011348982905970199, 0.0],\n", - " [0.0, 0.0021186245538075323, 0.0021186245538075323, 0.0],\n", - " [0.0, 0.017784494285755681, 0.017784494285755681, 0.0021186245538075323],\n", - " [0.011348982905970199,\n", - " 0.020552522862173201,\n", - " 0.020552522862173201,\n", - " 0.017784494285755681],\n", - " [0.0, 0.0058002875790790455, 0.0058002875790790455, 0.0],\n", - " [0.0, 0.0034492736916614253, 0.0034492736916614253, 0.0],\n", - " [0.0, 0.0083202608733163146, 0.0083202608733163146, 0.0034492736916614253],\n", - " [0.0, 0.014158415871842907, 0.014158415871842907, 0.0083202608733163146],\n", - " [0.0058002875790790455,\n", - " 0.018037350692379286,\n", - " 0.018037350692379286,\n", - " 0.014158415871842907],\n", - " [0.0, 0.018375769072340661, 0.018375769072340661, 0.018037350692379286],\n", - " [0.0, 0.0075266487230342934, 0.0075266487230342934, 0.0],\n", - " [0.0, 0.018691796516118589, 0.018691796516118589, 0.0075266487230342934],\n", - " [0.018375769072340661,\n", - " 0.020418699321947047,\n", - " 0.020418699321947047,\n", - " 0.018691796516118589],\n", - " [0.0, 0.0013132562583144482, 0.0013132562583144482, 0.0],\n", - " [0.0, 0.0016457633487238802, 0.0016457633487238802, 0.0],\n", - " [0.0, 0.0053556696126633727, 0.0053556696126633727, 0.0016457633487238802],\n", - " [0.0, 0.0077603222226917063, 0.0077603222226917063, 0.0053556696126633727],\n", - " [0.0, 0.0084602340984158211, 0.0084602340984158211, 0.0077603222226917063],\n", - " [0.0, 0.0097469200263446479, 0.0097469200263446479, 0.0084602340984158211],\n", - " [0.0, 0.015506481257847156, 0.015506481257847156, 0.0097469200263446479],\n", - " [0.0013132562583144482,\n", - " 0.015918461766137891,\n", - " 0.015918461766137891,\n", - " 0.015506481257847156],\n", - " [0.0, 0.019608438923075278, 0.019608438923075278, 0.0],\n", - " [0.0, 0.0059287781203216355, 0.0059287781203216355, 0.0],\n", - " [0.0, 0.0090570163409397515, 0.0090570163409397515, 0.0059287781203216355],\n", - " [0.0, 0.0090387394032560749, 0.0090387394032560749, 0.0],\n", - " [0.0, 0.0018684220615269847, 0.0018684220615269847, 0.0],\n", - " [0.0, 0.0045621894962838269, 0.0045621894962838269, 0.0018684220615269847],\n", - " [0.0, 0.0086574826017748931, 0.0086574826017748931, 0.0045621894962838269],\n", - " [0.0, 0.010149394513961659, 0.010149394513961659, 0.0086574826017748931],\n", - " [0.0, 0.011618349495517353, 0.011618349495517353, 0.0],\n", - " [0.0, 0.011815224627572073, 0.011815224627572073, 0.011618349495517353],\n", - " [0.010149394513961659,\n", - " 0.011838115137132288,\n", - " 0.011838115137132288,\n", - " 0.011815224627572073],\n", - " [0.0, 0.011854846308578049, 0.011854846308578049, 0.011838115137132288],\n", - " [0.0, 0.012407002579186808, 0.012407002579186808, 0.011854846308578049],\n", - " [0.0, 0.015198996052373612, 0.015198996052373612, 0.012407002579186808],\n", - " [0.0090387394032560749,\n", - " 0.016416007096732257,\n", - " 0.016416007096732257,\n", - " 0.015198996052373612],\n", - " [0.0090570163409397515,\n", - " 0.020946885066757515,\n", - " 0.020946885066757515,\n", - " 0.016416007096732257],\n", - " [0.019608438923075278,\n", - " 0.021001981097028367,\n", - " 0.021001981097028367,\n", - " 0.020946885066757515],\n", - " [0.015918461766137891,\n", - " 0.021258130350525092,\n", - " 0.021258130350525092,\n", - " 0.021001981097028367],\n", - " [0.0, 0.022690524762553291, 0.022690524762553291, 0.021258130350525092],\n", - " [0.020418699321947047,\n", - " 0.023179161071962811,\n", - " 0.023179161071962811,\n", - " 0.022690524762553291],\n", - " [0.0, 0.025876808033448218, 0.025876808033448218, 0.023179161071962811],\n", - " [0.020552522862173201,\n", - " 0.026147583788948901,\n", - " 0.026147583788948901,\n", - " 0.025876808033448218],\n", - " [0.0, 0.029201841465906018, 0.029201841465906018, 0.026147583788948901],\n", - " [0.0, 0.0093298144140174181, 0.0093298144140174181, 0.0],\n", - " [0.0, 0.014643848298858885, 0.014643848298858885, 0.0093298144140174181],\n", - " [0.0, 0.0077250064724891368, 0.0077250064724891368, 0.0],\n", - " [0.0, 0.012821410569826434, 0.012821410569826434, 0.0077250064724891368],\n", - " [0.0, 0.013624415877386803, 0.013624415877386803, 0.0],\n", - " [0.0, 0.01953787255562929, 0.01953787255562929, 0.013624415877386803],\n", - " [0.0, 0.021591925574157868, 0.021591925574157868, 0.01953787255562929],\n", - " [0.012821410569826434,\n", - " 0.02335274127377732,\n", - " 0.02335274127377732,\n", - " 0.021591925574157868],\n", - " [0.014643848298858885,\n", - " 0.029326657583160387,\n", - " 0.029326657583160387,\n", - " 0.02335274127377732],\n", - " [0.029201841465906018,\n", - " 0.029592505892537795,\n", - " 0.029592505892537795,\n", - " 0.029326657583160387],\n", - " [0.012216766920915374,\n", - " 0.029841495203827555,\n", - " 0.029841495203827555,\n", - " 0.029592505892537795],\n", - " [0.0040926170111554696,\n", - " 0.034668000057691134,\n", - " 0.034668000057691134,\n", - " 0.029841495203827555],\n", - " [0.0, 0.036202061281094704, 0.036202061281094704, 0.034668000057691134],\n", - " [0.0, 0.039270297999889806, 0.039270297999889806, 0.036202061281094704],\n", - " [0.0, 0.020850539225641385, 0.020850539225641385, 0.0],\n", - " [0.0, 0.040815773078553635, 0.040815773078553635, 0.020850539225641385],\n", - " [0.039270297999889806,\n", - " 0.043159691206031151,\n", - " 0.043159691206031151,\n", - " 0.040815773078553635],\n", - " [0.0, 0.016367294278529586, 0.016367294278529586, 0.0],\n", - " [0.0, 0.019266364706401723, 0.019266364706401723, 0.0],\n", - " [0.0, 0.020528661062038399, 0.020528661062038399, 0.019266364706401723],\n", - " [0.0, 0.026859876581994277, 0.026859876581994277, 0.020528661062038399],\n", - " [0.0, 0.0044756547007100004, 0.0044756547007100004, 0.0],\n", - " [0.0, 0.0059445902297800817, 0.0059445902297800817, 0.0],\n", - " [0.0, 0.0087439470492446172, 0.0087439470492446172, 0.0059445902297800817],\n", - " [0.0, 0.00905321340740807, 0.00905321340740807, 0.0],\n", - " [0.0087439470492446172,\n", - " 0.020349852530178052,\n", - " 0.020349852530178052,\n", - " 0.00905321340740807],\n", - " [0.0, 0.011408221991178691, 0.011408221991178691, 0.0],\n", - " [0.0, 0.015272051597607826, 0.015272051597607826, 0.011408221991178691],\n", - " [0.0, 0.003271729206397637, 0.003271729206397637, 0.0],\n", - " [0.0, 0.011461665673017337, 0.011461665673017337, 0.003271729206397637],\n", - " [0.0, 0.016011895702880731, 0.016011895702880731, 0.011461665673017337],\n", - " [0.015272051597607826,\n", - " 0.020152895573590426,\n", - " 0.020152895573590426,\n", - " 0.016011895702880731],\n", - " [0.0, 0.022011504264815233, 0.022011504264815233, 0.020152895573590426],\n", - " [0.020349852530178052,\n", - " 0.026006105283181619,\n", - " 0.026006105283181619,\n", - " 0.022011504264815233],\n", - " [0.0, 0.031878338931004391, 0.031878338931004391, 0.026006105283181619],\n", - " [0.0044756547007100004,\n", - " 0.032791678227868215,\n", - " 0.032791678227868215,\n", - " 0.031878338931004391],\n", - " [0.026859876581994277,\n", - " 0.03572885338210556,\n", - " 0.03572885338210556,\n", - " 0.032791678227868215],\n", - " [0.0, 0.01891224875576504, 0.01891224875576504, 0.0],\n", - " [0.0, 0.041812000191331924, 0.041812000191331924, 0.01891224875576504],\n", - " [0.03572885338210556,\n", - " 0.066154816612247647,\n", - " 0.066154816612247647,\n", - " 0.041812000191331924],\n", - " [0.016367294278529586,\n", - " 0.084140424434394401,\n", - " 0.084140424434394401,\n", - " 0.066154816612247647],\n", - " [0.043159691206031151,\n", - " 0.085706272658421873,\n", - " 0.085706272658421873,\n", - " 0.084140424434394401],\n", - " [0.0, 0.11390434780990256, 0.11390434780990256, 0.085706272658421873],\n", - " [0.0, 0.005645761684661992, 0.005645761684661992, 0.0],\n", - " [0.0, 0.015731352262281388, 0.015731352262281388, 0.005645761684661992],\n", - " [0.0, 0.034645463267215744, 0.034645463267215744, 0.015731352262281388],\n", - " [0.0, 0.043626896302625166, 0.043626896302625166, 0.0],\n", - " [0.0, 0.05151920124574691, 0.05151920124574691, 0.0],\n", - " [0.0, 0.016443492846713804, 0.016443492846713804, 0.0],\n", - " [0.0, 0.0093575203980529407, 0.0093575203980529407, 0.0],\n", - " [0.0, 0.010876928472691207, 0.010876928472691207, 0.0093575203980529407],\n", - " [0.0, 0.020992388739731967, 0.020992388739731967, 0.010876928472691207],\n", - " [0.0, 0.023869242635664919, 0.023869242635664919, 0.020992388739731967],\n", - " [0.016443492846713804,\n", - " 0.036515468023842326,\n", - " 0.036515468023842326,\n", - " 0.023869242635664919],\n", - " [0.0, 0.049656162084883146, 0.049656162084883146, 0.036515468023842326],\n", - " [0.0, 0.051657046266701298, 0.051657046266701298, 0.049656162084883146],\n", - " [0.0, 0.022471757852913655, 0.022471757852913655, 0.0],\n", - " [0.0, 0.0021137360289267687, 0.0021137360289267687, 0.0],\n", - " [0.0, 0.0091747908967959348, 0.0091747908967959348, 0.0],\n", - " [0.0021137360289267687,\n", - " 0.015369284075720456,\n", - " 0.015369284075720456,\n", - " 0.0091747908967959348],\n", - " [0.0, 0.032231469482478674, 0.032231469482478674, 0.015369284075720456],\n", - " [0.0, 0.016044445331639505, 0.016044445331639505, 0.0],\n", - " [0.0, 0.017689724842405198, 0.017689724842405198, 0.016044445331639505],\n", - " [0.0, 0.02983946851068495, 0.02983946851068495, 0.017689724842405198],\n", - " [0.0, 0.036092799074053231, 0.036092799074053231, 0.02983946851068495],\n", - " [0.0, 0.0047980104209984055, 0.0047980104209984055, 0.0],\n", - " [0.0, 0.036764546848831049, 0.036764546848831049, 0.0047980104209984055],\n", - " [0.036092799074053231,\n", - " 0.039571301848686555,\n", - " 0.039571301848686555,\n", - " 0.036764546848831049],\n", - " [0.0, 0.039988554612538564, 0.039988554612538564, 0.039571301848686555],\n", - " [0.032231469482478674,\n", - " 0.040349496960929154,\n", - " 0.040349496960929154,\n", - " 0.039988554612538564],\n", - " [0.0, 0.016728393497284191, 0.016728393497284191, 0.0],\n", - " [0.0, 0.025826293462285439, 0.025826293462285439, 0.016728393497284191],\n", - " [0.0, 0.0096548907813564545, 0.0096548907813564545, 0.0],\n", - " [0.0, 0.01754479256076092, 0.01754479256076092, 0.0096548907813564545],\n", - " [0.0, 0.017779817771845025, 0.017779817771845025, 0.01754479256076092],\n", - " [0.0, 0.02344731807691551, 0.02344731807691551, 0.017779817771845025],\n", - " [0.0, 0.015654497436837209, 0.015654497436837209, 0.0],\n", - " [0.0, 0.016823383161540369, 0.016823383161540369, 0.015654497436837209],\n", - " [0.0, 0.027081339294797741, 0.027081339294797741, 0.016823383161540369],\n", - " [0.0, 0.027284658858047813, 0.027284658858047813, 0.027081339294797741],\n", - " [0.0, 0.028127151899899686, 0.028127151899899686, 0.027284658858047813],\n", - " [0.02344731807691551,\n", - " 0.028381817718391978,\n", - " 0.028381817718391978,\n", - " 0.028127151899899686],\n", - " [0.025826293462285439,\n", - " 0.033187095835581416,\n", - " 0.033187095835581416,\n", - " 0.028381817718391978],\n", - " [0.0, 0.038550279921162958, 0.038550279921162958, 0.033187095835581416],\n", - " [0.0, 0.039754078143007195, 0.039754078143007195, 0.038550279921162958],\n", - " [0.0, 0.015054976187293225, 0.015054976187293225, 0.0],\n", - " [0.0, 0.011200876126447606, 0.011200876126447606, 0.0],\n", - " [0.0, 0.01553496346953908, 0.01553496346953908, 0.011200876126447606],\n", - " [0.0, 0.022716660405967162, 0.022716660405967162, 0.01553496346953908],\n", - " [0.0, 0.0018834994027040854, 0.0018834994027040854, 0.0],\n", - " [0.0, 0.00408496964493204, 0.00408496964493204, 0.0],\n", - " [0.0, 0.0042183903328170203, 0.0042183903328170203, 0.00408496964493204],\n", - " [0.0018834994027040854,\n", - " 0.008117778329076588,\n", - " 0.008117778329076588,\n", - " 0.0042183903328170203],\n", - " [0.0, 0.011136710196461692, 0.011136710196461692, 0.0],\n", - " [0.0, 0.012433232122016228, 0.012433232122016228, 0.011136710196461692],\n", - " [0.0, 0.013034593396035885, 0.013034593396035885, 0.012433232122016228],\n", - " [0.008117778329076588,\n", - " 0.014930391722921862,\n", - " 0.014930391722921862,\n", - " 0.013034593396035885],\n", - " [0.0, 0.023790167485746555, 0.023790167485746555, 0.014930391722921862],\n", - " [0.0, 0.013659653326489706, 0.013659653326489706, 0.0],\n", - " [0.0, 0.018534040897763338, 0.018534040897763338, 0.013659653326489706],\n", - " [0.0, 0.018709651119144452, 0.018709651119144452, 0.018534040897763338],\n", - " [0.0, 0.018832972203028295, 0.018832972203028295, 0.018709651119144452],\n", - " [0.0, 0.016770497488151855, 0.016770497488151855, 0.0],\n", - " [0.0, 0.01686740489819916, 0.01686740489819916, 0.0],\n", - " [0.016770497488151855,\n", - " 0.020788870700450424,\n", - " 0.020788870700450424,\n", - " 0.01686740489819916],\n", - " [0.0, 0.021245630444870357, 0.021245630444870357, 0.020788870700450424],\n", - " [0.018832972203028295,\n", - " 0.021282228125834558,\n", - " 0.021282228125834558,\n", - " 0.021245630444870357],\n", - " [0.0, 0.0036205481629180605, 0.0036205481629180605, 0.0],\n", - " [0.0, 0.0053529076210998405, 0.0053529076210998405, 0.0],\n", - " [0.0, 0.010410261331974025, 0.010410261331974025, 0.0053529076210998405],\n", - " [0.0036205481629180605,\n", - " 0.015598729211057616,\n", - " 0.015598729211057616,\n", - " 0.010410261331974025],\n", - " [0.0, 0.0063956557912441302, 0.0063956557912441302, 0.0],\n", - " [0.0, 0.011751187557010524, 0.011751187557010524, 0.0],\n", - " [0.0063956557912441302,\n", - " 0.0180231706977385,\n", - " 0.0180231706977385,\n", - " 0.011751187557010524],\n", - " [0.015598729211057616,\n", - " 0.0188822568831154,\n", - " 0.0188822568831154,\n", - " 0.0180231706977385],\n", - " [0.0, 0.023115774202911384, 0.023115774202911384, 0.0188822568831154],\n", - " [0.021282228125834558,\n", - " 0.023518754771463722,\n", - " 0.023518754771463722,\n", - " 0.023115774202911384],\n", - " [0.0, 0.02392055386064397, 0.02392055386064397, 0.023518754771463722],\n", - " [0.023790167485746555,\n", - " 0.024628163248606935,\n", - " 0.024628163248606935,\n", - " 0.02392055386064397],\n", - " [0.022716660405967162,\n", - " 0.025344429604944717,\n", - " 0.025344429604944717,\n", - " 0.024628163248606935],\n", - " [0.0, 0.032641634226857681, 0.032641634226857681, 0.025344429604944717],\n", - " [0.015054976187293225,\n", - " 0.038141165687486156,\n", - " 0.038141165687486156,\n", - " 0.032641634226857681],\n", - " [0.0, 0.050617202105605962, 0.050617202105605962, 0.038141165687486156],\n", - " [0.0, 0.026837139955665567, 0.026837139955665567, 0.0],\n", - " [0.0, 0.00091723988137770382, 0.00091723988137770382, 0.0],\n", - " [0.0, 0.0072889607626886411, 0.0072889607626886411, 0.00091723988137770382],\n", - " [0.0, 0.010735983979127308, 0.010735983979127308, 0.0072889607626886411],\n", - " [0.0, 0.013132314723610192, 0.013132314723610192, 0.010735983979127308],\n", - " [0.0, 0.028516993530177049, 0.028516993530177049, 0.013132314723610192],\n", - " [0.0, 0.0083488423748452629, 0.0083488423748452629, 0.0],\n", - " [0.0, 0.041639970232935343, 0.041639970232935343, 0.0083488423748452629],\n", - " [0.028516993530177049,\n", - " 0.045521656395608991,\n", - " 0.045521656395608991,\n", - " 0.041639970232935343],\n", - " [0.0, 0.024178163060911171, 0.024178163060911171, 0.0],\n", - " [0.0, 0.025256613391348562, 0.025256613391348562, 0.024178163060911171],\n", - " [0.0, 0.018145217606852036, 0.018145217606852036, 0.0],\n", - " [0.0, 0.02866962340178187, 0.02866962340178187, 0.0],\n", - " [0.018145217606852036,\n", - " 0.036067928593140522,\n", - " 0.036067928593140522,\n", - " 0.02866962340178187],\n", - " [0.0, 0.026872177619239865, 0.026872177619239865, 0.0],\n", - " [0.0, 0.031824437465572182, 0.031824437465572182, 0.0],\n", - " [0.026872177619239865,\n", - " 0.039503035997246673,\n", - " 0.039503035997246673,\n", - " 0.031824437465572182],\n", - " [0.0, 0.01295924110432559, 0.01295924110432559, 0.0],\n", - " [0.0, 0.0078999779746543597, 0.0078999779746543597, 0.0],\n", - " [0.0, 0.009784365079044623, 0.009784365079044623, 0.0078999779746543597],\n", - " [0.0, 0.013138898926469739, 0.013138898926469739, 0.009784365079044623],\n", - " [0.0, 0.038850566765492846, 0.038850566765492846, 0.013138898926469739],\n", - " [0.0, 0.013068957762575519, 0.013068957762575519, 0.0],\n", - " [0.0, 0.010472641023157274, 0.010472641023157274, 0.0],\n", - " [0.0, 0.0074976109528307935, 0.0074976109528307935, 0.0],\n", - " [0.0, 0.0082169838748780005, 0.0082169838748780005, 0.0],\n", - " [0.0, 0.0071094655214020185, 0.0071094655214020185, 0.0],\n", - " [0.0, 0.008502720094182235, 0.008502720094182235, 0.0071094655214020185],\n", - " [0.0, 0.0090949327100323663, 0.0090949327100323663, 0.008502720094182235],\n", - " [0.0082169838748780005,\n", - " 0.012687629289982277,\n", - " 0.012687629289982277,\n", - " 0.0090949327100323663],\n", - " [0.0074976109528307935,\n", - " 0.013412455778122038,\n", - " 0.013412455778122038,\n", - " 0.012687629289982277],\n", - " [0.0, 0.020425741063671898, 0.020425741063671898, 0.013412455778122038],\n", - " [0.0, 0.020945638519751449, 0.020945638519751449, 0.020425741063671898],\n", - " [0.0, 0.0046159819107085814, 0.0046159819107085814, 0.0],\n", - " [0.0, 0.0087074430804908141, 0.0087074430804908141, 0.0046159819107085814],\n", - " [0.0, 0.0047240512274948285, 0.0047240512274948285, 0.0],\n", - " [0.0, 0.012533624735085378, 0.012533624735085378, 0.0047240512274948285],\n", - " [0.0087074430804908141,\n", - " 0.024124461797105687,\n", - " 0.024124461797105687,\n", - " 0.012533624735085378],\n", - " [0.0, 0.024330815789857841, 0.024330815789857841, 0.024124461797105687],\n", - " [0.020945638519751449,\n", - " 0.02611003540786656,\n", - " 0.02611003540786656,\n", - " 0.024330815789857841],\n", - " [0.0, 0.026183460141852424, 0.026183460141852424, 0.02611003540786656],\n", - " [0.010472641023157274,\n", - " 0.028453054739345875,\n", - " 0.028453054739345875,\n", - " 0.026183460141852424],\n", - " [0.0, 0.023961728318296242, 0.023961728318296242, 0.0],\n", - " [0.0, 0.0026605882808133428, 0.0026605882808133428, 0.0],\n", - " [0.0, 0.0031933938059647265, 0.0031933938059647265, 0.0026605882808133428],\n", - " [0.0, 0.006404772985831129, 0.006404772985831129, 0.0],\n", - " [0.0, 0.0092839153916868655, 0.0092839153916868655, 0.0],\n", - " [0.0, 0.012506858598389625, 0.012506858598389625, 0.0092839153916868655],\n", - " [0.0, 0.021576178577310687, 0.021576178577310687, 0.012506858598389625],\n", - " [0.006404772985831129,\n", - " 0.022802888281968452,\n", - " 0.022802888281968452,\n", - " 0.021576178577310687],\n", - " [0.0031933938059647265,\n", - " 0.027114779770449349,\n", - " 0.027114779770449349,\n", - " 0.022802888281968452],\n", - " [0.023961728318296242,\n", - " 0.028697297782195347,\n", - " 0.028697297782195347,\n", - " 0.027114779770449349],\n", - " [0.028453054739345875,\n", - " 0.030342464978967885,\n", - " 0.030342464978967885,\n", - " 0.028697297782195347],\n", - " [0.0, 0.010936474980538541, 0.010936474980538541, 0.0],\n", - " [0.0, 0.022534058334001274, 0.022534058334001274, 0.010936474980538541],\n", - " [0.0, 0.024946584956662972, 0.024946584956662972, 0.022534058334001274],\n", - " [0.0, 0.011936571408909311, 0.011936571408909311, 0.0],\n", - " [0.0, 0.01486662789606516, 0.01486662789606516, 0.011936571408909311],\n", - " [0.0, 0.01734754743472304, 0.01734754743472304, 0.01486662789606516],\n", - " [0.0, 0.025462235113986566, 0.025462235113986566, 0.01734754743472304],\n", - " [0.0, 0.0063256936378555595, 0.0063256936378555595, 0.0],\n", - " [0.0, 0.0098333152090222323, 0.0098333152090222323, 0.0063256936378555595],\n", - " [0.0, 0.013995963025105827, 0.013995963025105827, 0.0],\n", - " [0.0, 0.014657231525767984, 0.014657231525767984, 0.013995963025105827],\n", - " [0.0, 0.015413549364114546, 0.015413549364114546, 0.014657231525767984],\n", - " [0.0, 0.018770229966626015, 0.018770229966626015, 0.0],\n", - " [0.015413549364114546,\n", - " 0.025582557827551571,\n", - " 0.025582557827551571,\n", - " 0.018770229966626015],\n", - " [0.0, 0.0091517309838083163, 0.0091517309838083163, 0.0],\n", - " [0.0, 0.011846586554787701, 0.011846586554787701, 0.0],\n", - " [0.0, 0.012314092455395775, 0.012314092455395775, 0.011846586554787701],\n", - " [0.0, 0.0043967719977236952, 0.0043967719977236952, 0.0],\n", - " [0.0, 0.0064475596158582154, 0.0064475596158582154, 0.0043967719977236952],\n", - " [0.0, 0.0064507553821239417, 0.0064507553821239417, 0.0],\n", - " [0.0064475596158582154,\n", - " 0.0099091612157657209,\n", - " 0.0099091612157657209,\n", - " 0.0064507553821239417],\n", - " [0.0, 0.012954085069966544, 0.012954085069966544, 0.0],\n", - " [0.0099091612157657209,\n", - " 0.014775899363489366,\n", - " 0.014775899363489366,\n", - " 0.012954085069966544],\n", - " [0.012314092455395775,\n", - " 0.015297956791676358,\n", - " 0.015297956791676358,\n", - " 0.014775899363489366],\n", - " [0.0091517309838083163,\n", - " 0.021973264345564941,\n", - " 0.021973264345564941,\n", - " 0.015297956791676358],\n", - " [0.0, 0.0076840578472562628, 0.0076840578472562628, 0.0],\n", - " [0.0, 0.0081479747176861992, 0.0081479747176861992, 0.0],\n", - " [0.0076840578472562628,\n", - " 0.011071142714281347,\n", - " 0.011071142714281347,\n", - " 0.0081479747176861992],\n", - " [0.0, 0.015824663914282701, 0.015824663914282701, 0.0],\n", - " [0.0, 0.0066119486537624143, 0.0066119486537624143, 0.0],\n", - " [0.0, 0.011587068007050279, 0.011587068007050279, 0.0],\n", - " [0.0, 0.01586509993665184, 0.01586509993665184, 0.011587068007050279],\n", - " [0.0, 0.016661243200913292, 0.016661243200913292, 0.01586509993665184],\n", - " [0.0066119486537624143,\n", - " 0.017368037597845842,\n", - " 0.017368037597845842,\n", - " 0.016661243200913292],\n", - " [0.015824663914282701,\n", - " 0.019008609233711046,\n", - " 0.019008609233711046,\n", - " 0.017368037597845842],\n", - " [0.011071142714281347,\n", - " 0.019670857073346051,\n", - " 0.019670857073346051,\n", - " 0.019008609233711046],\n", - " [0.0, 0.021719060315769, 0.021719060315769, 0.019670857073346051],\n", - " [0.0, 0.022148126173561548, 0.022148126173561548, 0.021719060315769],\n", - " [0.0, 0.023256480838686786, 0.023256480838686786, 0.022148126173561548],\n", - " [0.021973264345564941,\n", - " 0.024039552179689595,\n", - " 0.024039552179689595,\n", - " 0.023256480838686786],\n", - " [0.0, 0.026789652274710994, 0.026789652274710994, 0.024039552179689595],\n", - " [0.025582557827551571,\n", - " 0.026830182891660764,\n", - " 0.026830182891660764,\n", - " 0.026789652274710994],\n", - " [0.0, 0.027243873476433134, 0.027243873476433134, 0.026830182891660764],\n", - " [0.0, 0.028087196816346909, 0.028087196816346909, 0.027243873476433134],\n", - " [0.0, 0.028101294009351529, 0.028101294009351529, 0.028087196816346909],\n", - " [0.0098333152090222323,\n", - " 0.030780616790444294,\n", - " 0.030780616790444294,\n", - " 0.028101294009351529],\n", - " [0.025462235113986566,\n", - " 0.030906484837326057,\n", - " 0.030906484837326057,\n", - " 0.030780616790444294],\n", - " [0.024946584956662972,\n", - " 0.032954352064635137,\n", - " 0.032954352064635137,\n", - " 0.030906484837326057],\n", - " [0.030342464978967885,\n", - " 0.034304131354691188,\n", - " 0.034304131354691188,\n", - " 0.032954352064635137],\n", - " [0.0, 0.0070711699173522926, 0.0070711699173522926, 0.0],\n", - " [0.0, 0.014695663203814819, 0.014695663203814819, 0.0070711699173522926],\n", - " [0.0, 0.020108849121713832, 0.020108849121713832, 0.0],\n", - " [0.014695663203814819,\n", - " 0.030624388924516324,\n", - " 0.030624388924516324,\n", - " 0.020108849121713832],\n", - " [0.0, 0.0057804433220997771, 0.0057804433220997771, 0.0],\n", - " [0.0, 0.0058262905008292154, 0.0058262905008292154, 0.0],\n", - " [0.0057804433220997771,\n", - " 0.016935441683051611,\n", - " 0.016935441683051611,\n", - " 0.0058262905008292154],\n", - " [0.0, 0.01079800027782956, 0.01079800027782956, 0.0],\n", - " [0.0, 0.018568130358219855, 0.018568130358219855, 0.01079800027782956],\n", - " [0.016935441683051611,\n", - " 0.019132481307969629,\n", - " 0.019132481307969629,\n", - " 0.018568130358219855],\n", - " [0.0, 0.017126583926748134, 0.017126583926748134, 0.0],\n", - " [0.0, 0.019162293390929314, 0.019162293390929314, 0.017126583926748134],\n", - " [0.019132481307969629,\n", - " 0.020872777414609855,\n", - " 0.020872777414609855,\n", - " 0.019162293390929314],\n", - " [0.0, 0.021442001492400508, 0.021442001492400508, 0.020872777414609855],\n", - " [0.0, 0.0016902345991021003, 0.0016902345991021003, 0.0],\n", - " [0.0, 0.0063878795386264385, 0.0063878795386264385, 0.0016902345991021003],\n", - " [0.0, 0.0096614231353355194, 0.0096614231353355194, 0.0],\n", - " [0.0063878795386264385,\n", - " 0.010495883240584951,\n", - " 0.010495883240584951,\n", - " 0.0096614231353355194],\n", - " [0.0, 0.014341926300186233, 0.014341926300186233, 0.010495883240584951],\n", - " [0.0, 0.0040950390718520564, 0.0040950390718520564, 0.0],\n", - " [0.0, 0.0086915647613100555, 0.0086915647613100555, 0.0],\n", - " [0.0, 0.011386786904126698, 0.011386786904126698, 0.0086915647613100555],\n", - " [0.0040950390718520564,\n", - " 0.015908596921161259,\n", - " 0.015908596921161259,\n", - " 0.011386786904126698],\n", - " [0.014341926300186233,\n", - " 0.016618847763908953,\n", - " 0.016618847763908953,\n", - " 0.015908596921161259],\n", - " [0.0, 0.0031394740005309383, 0.0031394740005309383, 0.0],\n", - " [0.0, 0.0091560678241240038, 0.0091560678241240038, 0.0031394740005309383],\n", - " [0.0, 0.01229795210594267, 0.01229795210594267, 0.0091560678241240038],\n", - " [0.0, 0.013889449413133796, 0.013889449413133796, 0.01229795210594267],\n", - " [0.0, 0.014877012132813219, 0.014877012132813219, 0.013889449413133796],\n", - " [0.0, 0.020783042823415098, 0.020783042823415098, 0.014877012132813219],\n", - " [0.0, 0.020974470291285775, 0.020974470291285775, 0.020783042823415098],\n", - " [0.016618847763908953,\n", - " 0.020987418635934625,\n", - " 0.020987418635934625,\n", - " 0.020974470291285775],\n", - " [0.0, 0.021940790619303634, 0.021940790619303634, 0.020987418635934625],\n", - " [0.0, 0.0058023064379613557, 0.0058023064379613557, 0.0],\n", - " [0.0, 0.010771473529651725, 0.010771473529651725, 0.0],\n", - " [0.0, 0.01537499476422639, 0.01537499476422639, 0.010771473529651725],\n", - " [0.0, 0.013089890603051255, 0.013089890603051255, 0.0],\n", - " [0.0, 0.0059939496994890103, 0.0059939496994890103, 0.0],\n", - " [0.0, 0.0067361147555543991, 0.0067361147555543991, 0.0],\n", - " [0.0, 0.017536001881841342, 0.017536001881841342, 0.0067361147555543991],\n", - " [0.0059939496994890103,\n", - " 0.018036294658271147,\n", - " 0.018036294658271147,\n", - " 0.017536001881841342],\n", - " [0.013089890603051255,\n", - " 0.018700224303471936,\n", - " 0.018700224303471936,\n", - " 0.018036294658271147],\n", - " [0.01537499476422639,\n", - " 0.02059491104617716,\n", - " 0.02059491104617716,\n", - " 0.018700224303471936],\n", - " [0.0058023064379613557,\n", - " 0.022797896832825241,\n", - " 0.022797896832825241,\n", - " 0.02059491104617716],\n", - " [0.0, 0.022452705694416049, 0.022452705694416049, 0.0],\n", - " [0.0, 0.024199881755910282, 0.024199881755910282, 0.022452705694416049],\n", - " [0.022797896832825241,\n", - " 0.024792553498984925,\n", - " 0.024792553498984925,\n", - " 0.024199881755910282],\n", - " [0.0, 0.0031282723666601355, 0.0031282723666601355, 0.0],\n", - " [0.0, 0.0037015344115652374, 0.0037015344115652374, 0.0031282723666601355],\n", - " [0.0, 0.014706275701209038, 0.014706275701209038, 0.0037015344115652374],\n", - " [0.0, 0.0005153406640262553, 0.0005153406640262553, 0.0],\n", - " [0.0, 0.0041867266450053061, 0.0041867266450053061, 0.0005153406640262553],\n", - " [0.0, 0.01083176993847171, 0.01083176993847171, 0.0],\n", - " [0.0041867266450053061,\n", - " 0.018301297795512313,\n", - " 0.018301297795512313,\n", - " 0.01083176993847171],\n", - " [0.0, 0.023461919188337583, 0.023461919188337583, 0.018301297795512313],\n", - " [0.014706275701209038,\n", - " 0.025500434917859499,\n", - " 0.025500434917859499,\n", - " 0.023461919188337583],\n", - " [0.024792553498984925,\n", - " 0.025868287380498199,\n", - " 0.025868287380498199,\n", - " 0.025500434917859499],\n", - " [0.021940790619303634,\n", - " 0.025901782834389056,\n", - " 0.025901782834389056,\n", - " 0.025868287380498199],\n", - " [0.0, 0.026099727239952433, 0.026099727239952433, 0.025901782834389056],\n", - " [0.021442001492400508,\n", - " 0.028603921584286981,\n", - " 0.028603921584286981,\n", - " 0.026099727239952433],\n", - " [0.0, 0.034124490985213196, 0.034124490985213196, 0.028603921584286981],\n", - " [0.030624388924516324,\n", - " 0.034516053670718555,\n", - " 0.034516053670718555,\n", - " 0.034124490985213196],\n", - " [0.034304131354691188,\n", - " 0.037365060751992564,\n", - " 0.037365060751992564,\n", - " 0.034516053670718555],\n", - " [0.013068957762575519,\n", - " 0.038305775034581949,\n", - " 0.038305775034581949,\n", - " 0.037365060751992564],\n", - " [0.0, 0.039478872083683968, 0.039478872083683968, 0.038305775034581949],\n", - " [0.0, 0.039891422636954436, 0.039891422636954436, 0.039478872083683968],\n", - " [0.0, 0.040091773632503297, 0.040091773632503297, 0.039891422636954436],\n", - " [0.038850566765492846,\n", - " 0.040575193702559277,\n", - " 0.040575193702559277,\n", - " 0.040091773632503297],\n", - " [0.0, 0.041282390010753803, 0.041282390010753803, 0.040575193702559277],\n", - " [0.0, 0.0091723227701637662, 0.0091723227701637662, 0.0],\n", - " [0.0, 0.036139383351129525, 0.036139383351129525, 0.0091723227701637662],\n", - " [0.0, 0.03693055132272121, 0.03693055132272121, 0.036139383351129525],\n", - " [0.0, 0.007682320612939623, 0.007682320612939623, 0.0],\n", - " [0.0, 0.02335072789015381, 0.02335072789015381, 0.007682320612939623],\n", - " [0.0, 0.012813598791909455, 0.012813598791909455, 0.0],\n", - " [0.0, 0.027402901251514355, 0.027402901251514355, 0.012813598791909455],\n", - " [0.0, 0.027001592915974326, 0.027001592915974326, 0.0],\n", - " [0.0, 0.017447477210189397, 0.017447477210189397, 0.0],\n", - " [0.0, 0.012290277661635419, 0.012290277661635419, 0.0],\n", - " [0.0, 0.014943522108256967, 0.014943522108256967, 0.012290277661635419],\n", - " [0.0, 0.017659429492485893, 0.017659429492485893, 0.0],\n", - " [0.014943522108256967,\n", - " 0.022542657718201364,\n", - " 0.022542657718201364,\n", - " 0.017659429492485893],\n", - " [0.0, 0.025782743259786405, 0.025782743259786405, 0.022542657718201364],\n", - " [0.017447477210189397,\n", - " 0.027363096681478575,\n", - " 0.027363096681478575,\n", - " 0.025782743259786405],\n", - " [0.0, 0.026217503771336574, 0.026217503771336574, 0.0],\n", - " [0.0, 0.029577038729389743, 0.029577038729389743, 0.026217503771336574],\n", - " [0.027363096681478575,\n", - " 0.029783056961969527,\n", - " 0.029783056961969527,\n", - " 0.029577038729389743],\n", - " [0.0, 0.018901917892108957, 0.018901917892108957, 0.0],\n", - " [0.0, 0.010106876916236915, 0.010106876916236915, 0.0],\n", - " [0.0, 0.01083361177078147, 0.01083361177078147, 0.0],\n", - " [0.010106876916236915,\n", - " 0.012641013408741417,\n", - " 0.012641013408741417,\n", - " 0.01083361177078147],\n", - " [0.0, 0.0029374296587326952, 0.0029374296587326952, 0.0],\n", - " [0.0, 0.0053534267530273997, 0.0053534267530273997, 0.0],\n", - " [0.0, 0.0091884628747103438, 0.0091884628747103438, 0.0053534267530273997],\n", - " [0.0, 0.010566386326457388, 0.010566386326457388, 0.0091884628747103438],\n", - " [0.0, 0.011764683506155173, 0.011764683506155173, 0.010566386326457388],\n", - " [0.0, 0.01237875922699979, 0.01237875922699979, 0.011764683506155173],\n", - " [0.0029374296587326952,\n", - " 0.012912342506300087,\n", - " 0.012912342506300087,\n", - " 0.01237875922699979],\n", - " [0.0, 0.015933872002749365, 0.015933872002749365, 0.012912342506300087],\n", - " [0.012641013408741417,\n", - " 0.019441572981627419,\n", - " 0.019441572981627419,\n", - " 0.015933872002749365],\n", - " [0.0, 0.0023950770342510488, 0.0023950770342510488, 0.0],\n", - " [0.0, 0.0065516249129470832, 0.0065516249129470832, 0.0023950770342510488],\n", - " [0.0, 0.010644139044567673, 0.010644139044567673, 0.0065516249129470832],\n", - " [0.0, 0.004554452107552653, 0.004554452107552653, 0.0],\n", - " [0.0, 0.0036108863177897461, 0.0036108863177897461, 0.0],\n", - " [0.0, 0.0049154916336018803, 0.0049154916336018803, 0.0036108863177897461],\n", - " [0.004554452107552653,\n", - " 0.0053963822140391049,\n", - " 0.0053963822140391049,\n", - " 0.0049154916336018803],\n", - " [0.0, 0.0064253081638165933, 0.0064253081638165933, 0.0],\n", - " [0.0, 0.01052751518640334, 0.01052751518640334, 0.0064253081638165933],\n", - " [0.0053963822140391049,\n", - " 0.010669924554565577,\n", - " 0.010669924554565577,\n", - " 0.01052751518640334],\n", - " [0.010644139044567673,\n", - " 0.010958527273316473,\n", - " 0.010958527273316473,\n", - " 0.010669924554565577],\n", - " [0.0, 0.016578510970529814, 0.016578510970529814, 0.010958527273316473],\n", - " [0.0, 0.0086023025987255405, 0.0086023025987255405, 0.0],\n", - " [0.0, 0.010690778315912501, 0.010690778315912501, 0.0086023025987255405],\n", - " [0.0, 0.012008616614750403, 0.012008616614750403, 0.0],\n", - " [0.0, 0.0055145997134883841, 0.0055145997134883841, 0.0],\n", - " [0.0, 0.0057254171900386871, 0.0057254171900386871, 0.0055145997134883841],\n", - " [0.0, 0.0021876519375789525, 0.0021876519375789525, 0.0],\n", - " [0.0, 0.0027696701969696339, 0.0027696701969696339, 0.0],\n", - " [0.0021876519375789525,\n", - " 0.0057560863440415146,\n", - " 0.0057560863440415146,\n", - " 0.0027696701969696339],\n", - " [0.0, 0.0066589572757305808, 0.0066589572757305808, 0.0057560863440415146],\n", - " [0.0, 0.007728915189078203, 0.007728915189078203, 0.0066589572757305808],\n", - " [0.0, 0.012798375209376283, 0.012798375209376283, 0.007728915189078203],\n", - " [0.0057254171900386871,\n", - " 0.014191916184926916,\n", - " 0.014191916184926916,\n", - " 0.012798375209376283],\n", - " [0.012008616614750403,\n", - " 0.016687542329530826,\n", - " 0.016687542329530826,\n", - " 0.014191916184926916],\n", - " [0.010690778315912501,\n", - " 0.017574750780594381,\n", - " 0.017574750780594381,\n", - " 0.016687542329530826],\n", - " [0.016578510970529814,\n", - " 0.020691010221832413,\n", - " 0.020691010221832413,\n", - " 0.017574750780594381],\n", - " [0.0, 0.023510690525802676, 0.023510690525802676, 0.020691010221832413],\n", - " [0.019441572981627419,\n", - " 0.024525273841487789,\n", - " 0.024525273841487789,\n", - " 0.023510690525802676],\n", - " [0.0, 0.029016834975579026, 0.029016834975579026, 0.024525273841487789],\n", - " [0.018901917892108957,\n", - " 0.032399465011014893,\n", - " 0.032399465011014893,\n", - " 0.029016834975579026],\n", - " [0.0, 0.025277131581730092, 0.025277131581730092, 0.0],\n", - " [0.0, 0.011380820928205365, 0.011380820928205365, 0.0],\n", - " [0.0, 0.0064717420375022027, 0.0064717420375022027, 0.0],\n", - " [0.0, 0.011939403042032766, 0.011939403042032766, 0.0064717420375022027],\n", - " [0.0, 0.0025310969953757732, 0.0025310969953757732, 0.0],\n", - " [0.0, 0.0040049021211534261, 0.0040049021211534261, 0.0],\n", - " [0.0, 0.0046260468004500994, 0.0046260468004500994, 0.0040049021211534261],\n", - " [0.0025310969953757732,\n", - " 0.0066176141471080367,\n", - " 0.0066176141471080367,\n", - " 0.0046260468004500994],\n", - " [0.0, 0.01298280593708552, 0.01298280593708552, 0.0066176141471080367],\n", - " [0.011939403042032766,\n", - " 0.017622678712386888,\n", - " 0.017622678712386888,\n", - " 0.01298280593708552],\n", - " [0.011380820928205365,\n", - " 0.01923971738357997,\n", - " 0.01923971738357997,\n", - " 0.017622678712386888],\n", - " [0.0, 0.019497886911153332, 0.019497886911153332, 0.01923971738357997],\n", - " [0.0, 0.017531427323523249, 0.017531427323523249, 0.0],\n", - " [0.0, 0.020282625988763528, 0.020282625988763528, 0.017531427323523249],\n", - " [0.019497886911153332,\n", - " 0.028140803862008675,\n", - " 0.028140803862008675,\n", - " 0.020282625988763528],\n", - " [0.0, 0.0020457773583658872, 0.0020457773583658872, 0.0],\n", - " [0.0, 0.0064347330169943684, 0.0064347330169943684, 0.0020457773583658872],\n", - " [0.0, 0.019139467416832191, 0.019139467416832191, 0.0064347330169943684],\n", - " [0.0, 0.023908663304334461, 0.023908663304334461, 0.019139467416832191],\n", - " [0.0, 0.013357724693975214, 0.013357724693975214, 0.0],\n", - " [0.0, 0.011516534635041771, 0.011516534635041771, 0.0],\n", - " [0.0, 0.013471700301000004, 0.013471700301000004, 0.011516534635041771],\n", - " [0.013357724693975214,\n", - " 0.01721746189192808,\n", - " 0.01721746189192808,\n", - " 0.013471700301000004],\n", - " [0.0, 0.0043245346570484258, 0.0043245346570484258, 0.0],\n", - " [0.0, 0.0046851387386075225, 0.0046851387386075225, 0.0043245346570484258],\n", - " [0.0, 0.0053666669358179587, 0.0053666669358179587, 0.0],\n", - " [0.0, 0.0040051053669059459, 0.0040051053669059459, 0.0],\n", - " [0.0, 0.0086873264011418077, 0.0086873264011418077, 0.0040051053669059459],\n", - " [0.0053666669358179587,\n", - " 0.015209898356002047,\n", - " 0.015209898356002047,\n", - " 0.0086873264011418077],\n", - " [0.0046851387386075225,\n", - " 0.016232421415181029,\n", - " 0.016232421415181029,\n", - " 0.015209898356002047],\n", - " [0.0, 0.0083309573279443782, 0.0083309573279443782, 0.0],\n", - " [0.0, 0.017181017432039189, 0.017181017432039189, 0.0083309573279443782],\n", - " [0.016232421415181029,\n", - " 0.019308049357712135,\n", - " 0.019308049357712135,\n", - " 0.017181017432039189],\n", - " [0.0, 0.019314776778415328, 0.019314776778415328, 0.019308049357712135],\n", - " [0.0, 0.019542107588487085, 0.019542107588487085, 0.019314776778415328],\n", - " [0.01721746189192808,\n", - " 0.020854955885830483,\n", - " 0.020854955885830483,\n", - " 0.019542107588487085],\n", - " [0.0, 0.0048465098782529371, 0.0048465098782529371, 0.0],\n", - " [0.0, 0.005376190193808918, 0.005376190193808918, 0.0],\n", - " [0.0048465098782529371,\n", - " 0.0069643721899376862,\n", - " 0.0069643721899376862,\n", - " 0.005376190193808918],\n", - " [0.0, 0.012223326429414929, 0.012223326429414929, 0.0069643721899376862],\n", - " [0.0, 0.01451054874910418, 0.01451054874910418, 0.012223326429414929],\n", - " [0.0, 0.011337537519232537, 0.011337537519232537, 0.0],\n", - " [0.0, 0.0039545843017987393, 0.0039545843017987393, 0.0],\n", - " [0.0, 0.011122370430803333, 0.011122370430803333, 0.0039545843017987393],\n", - " [0.0, 0.0033818917782828437, 0.0033818917782828437, 0.0],\n", - " [0.0, 0.0073932342043243268, 0.0073932342043243268, 0.0],\n", - " [0.0033818917782828437,\n", - " 0.008473360431376217,\n", - " 0.008473360431376217,\n", - " 0.0073932342043243268],\n", - " [0.0, 0.011505786457259148, 0.011505786457259148, 0.008473360431376217],\n", - " [0.011122370430803333,\n", - " 0.012003462917007709,\n", - " 0.012003462917007709,\n", - " 0.011505786457259148],\n", - " [0.011337537519232537,\n", - " 0.01384176914270697,\n", - " 0.01384176914270697,\n", - " 0.012003462917007709],\n", - " [0.0, 0.015329241501130112, 0.015329241501130112, 0.01384176914270697],\n", - " [0.01451054874910418,\n", - " 0.017853246035386218,\n", - " 0.017853246035386218,\n", - " 0.015329241501130112],\n", - " [0.0, 0.021131584133706652, 0.021131584133706652, 0.017853246035386218],\n", - " [0.020854955885830483,\n", - " 0.021772914182536653,\n", - " 0.021772914182536653,\n", - " 0.021131584133706652],\n", - " [0.0, 0.023211873017921082, 0.023211873017921082, 0.021772914182536653],\n", - " [0.0, 0.029786381082635583, 0.029786381082635583, 0.023211873017921082],\n", - " [0.023908663304334461,\n", - " 0.031589509413727984,\n", - " 0.031589509413727984,\n", - " 0.029786381082635583],\n", - " [0.028140803862008675,\n", - " 0.03264311838657534,\n", - " 0.03264311838657534,\n", - " 0.031589509413727984],\n", - " [0.025277131581730092,\n", - " 0.033907307781656307,\n", - " 0.033907307781656307,\n", - " 0.03264311838657534],\n", - " [0.032399465011014893,\n", - " 0.033980640326517965,\n", - " 0.033980640326517965,\n", - " 0.033907307781656307],\n", - " [0.0, 0.034224904806294983, 0.034224904806294983, 0.033980640326517965],\n", - " [0.0, 0.0081783911620805141, 0.0081783911620805141, 0.0],\n", - " [0.0, 0.011559521486636425, 0.011559521486636425, 0.0],\n", - " [0.0, 0.011814058108880207, 0.011814058108880207, 0.011559521486636425],\n", - " [0.0, 0.013761144792497466, 0.013761144792497466, 0.011814058108880207],\n", - " [0.0081783911620805141,\n", - " 0.022516132105670977,\n", - " 0.022516132105670977,\n", - " 0.013761144792497466],\n", - " [0.0, 0.032343926075848961, 0.032343926075848961, 0.022516132105670977],\n", - " [0.0, 0.0058390829759468318, 0.0058390829759468318, 0.0],\n", - " [0.0, 0.023178683245601638, 0.023178683245601638, 0.0058390829759468318],\n", - " [0.0, 0.014265269783639822, 0.014265269783639822, 0.0],\n", - " [0.0, 0.016294180801745571, 0.016294180801745571, 0.0],\n", - " [0.014265269783639822,\n", - " 0.016683010819394748,\n", - " 0.016683010819394748,\n", - " 0.016294180801745571],\n", - " [0.0, 0.017314995264216135, 0.017314995264216135, 0.0],\n", - " [0.0, 0.0087415518645155045, 0.0087415518645155045, 0.0],\n", - " [0.0, 0.004571051629547746, 0.004571051629547746, 0.0],\n", - " [0.0, 0.0053758944372063197, 0.0053758944372063197, 0.004571051629547746],\n", - " [0.0, 0.0067803788979695348, 0.0067803788979695348, 0.0053758944372063197],\n", - " [0.0, 0.0089199401903844247, 0.0089199401903844247, 0.0],\n", - " [0.0067803788979695348,\n", - " 0.012892554013844568,\n", - " 0.012892554013844568,\n", - " 0.0089199401903844247],\n", - " [0.0, 0.0050104028780137942, 0.0050104028780137942, 0.0],\n", - " [0.0, 0.0053405026916960221, 0.0053405026916960221, 0.0050104028780137942],\n", - " [0.0, 0.0075512563855286274, 0.0075512563855286274, 0.0],\n", - " [0.0053405026916960221,\n", - " 0.013760380699674165,\n", - " 0.013760380699674165,\n", - " 0.0075512563855286274],\n", - " [0.012892554013844568,\n", - " 0.014581216684486968,\n", - " 0.014581216684486968,\n", - " 0.013760380699674165],\n", - " [0.0087415518645155045,\n", - " 0.014624211329162834,\n", - " 0.014624211329162834,\n", - " 0.014581216684486968],\n", - " [0.0, 0.0043704759466196355, 0.0043704759466196355, 0.0],\n", - " [0.0, 0.0071532082312771887, 0.0071532082312771887, 0.0043704759466196355],\n", - " [0.0, 0.0098728057308974607, 0.0098728057308974607, 0.0],\n", - " [0.0071532082312771887,\n", - " 0.014881556000630847,\n", - " 0.014881556000630847,\n", - " 0.0098728057308974607],\n", - " [0.0, 0.016670145320301599, 0.016670145320301599, 0.014881556000630847],\n", - " [0.014624211329162834,\n", - " 0.017473323238579797,\n", - " 0.017473323238579797,\n", - " 0.016670145320301599],\n", - " [0.0, 0.019233229006072015, 0.019233229006072015, 0.017473323238579797],\n", - " [0.0, 0.01994013974374579, 0.01994013974374579, 0.019233229006072015],\n", - " [0.017314995264216135,\n", - " 0.020884978046431617,\n", - " 0.020884978046431617,\n", - " 0.01994013974374579],\n", - " [0.016683010819394748,\n", - " 0.023617312844606046,\n", - " 0.023617312844606046,\n", - " 0.020884978046431617],\n", - " [0.0, 0.024707232058650105, 0.024707232058650105, 0.023617312844606046],\n", - " [0.023178683245601638,\n", - " 0.028456132133513588,\n", - " 0.028456132133513588,\n", - " 0.024707232058650105],\n", - " [0.0, 0.013748507409893319, 0.013748507409893319, 0.0],\n", - " [0.0, 0.032893203705326036, 0.032893203705326036, 0.013748507409893319],\n", - " [0.028456132133513588,\n", - " 0.032991351230283135,\n", - " 0.032991351230283135,\n", - " 0.032893203705326036],\n", - " [0.032343926075848961,\n", - " 0.034307969642637895,\n", - " 0.034307969642637895,\n", - " 0.032991351230283135],\n", - " [0.034224904806294983,\n", - " 0.035152823570802585,\n", - " 0.035152823570802585,\n", - " 0.034307969642637895],\n", - " [0.029783056961969527,\n", - " 0.035515943701382183,\n", - " 0.035515943701382183,\n", - " 0.035152823570802585],\n", - " [0.0, 0.035685545547180376, 0.035685545547180376, 0.035515943701382183],\n", - " [0.0, 0.038688785377678635, 0.038688785377678635, 0.035685545547180376],\n", - " [0.027001592915974326,\n", - " 0.039904594585086661,\n", - " 0.039904594585086661,\n", - " 0.038688785377678635],\n", - " [0.0, 0.0095087099545615276, 0.0095087099545615276, 0.0],\n", - " [0.0, 0.0079510221355530691, 0.0079510221355530691, 0.0],\n", - " [0.0, 0.017482280314649715, 0.017482280314649715, 0.0079510221355530691],\n", - " [0.0, 0.010531104880305193, 0.010531104880305193, 0.0],\n", - " [0.0, 0.014299745627108248, 0.014299745627108248, 0.010531104880305193],\n", - " [0.0, 0.0196917653093872, 0.0196917653093872, 0.0],\n", - " [0.0, 0.021146628903917192, 0.021146628903917192, 0.0196917653093872],\n", - " [0.014299745627108248,\n", - " 0.021252304580911884,\n", - " 0.021252304580911884,\n", - " 0.021146628903917192],\n", - " [0.017482280314649715,\n", - " 0.024008647712854939,\n", - " 0.024008647712854939,\n", - " 0.021252304580911884],\n", - " [0.0, 0.0095257674231518184, 0.0095257674231518184, 0.0],\n", - " [0.0, 0.016169768860437535, 0.016169768860437535, 0.0095257674231518184],\n", - " [0.0, 0.020244870955380672, 0.020244870955380672, 0.016169768860437535],\n", - " [0.0, 0.011717154646073855, 0.011717154646073855, 0.0],\n", - " [0.0, 0.012175707782304507, 0.012175707782304507, 0.0],\n", - " [0.0, 0.015235624700025211, 0.015235624700025211, 0.012175707782304507],\n", - " [0.0, 0.01823371212890984, 0.01823371212890984, 0.015235624700025211],\n", - " [0.011717154646073855,\n", - " 0.020921895564216,\n", - " 0.020921895564216,\n", - " 0.01823371212890984],\n", - " [0.020244870955380672,\n", - " 0.025294144875841036,\n", - " 0.025294144875841036,\n", - " 0.020921895564216],\n", - " [0.024008647712854939,\n", - " 0.025583262653538344,\n", - " 0.025583262653538344,\n", - " 0.025294144875841036],\n", - " [0.0, 0.0053797356812391277, 0.0053797356812391277, 0.0],\n", - " [0.0, 0.0099945829327688623, 0.0099945829327688623, 0.0053797356812391277],\n", - " [0.0, 0.013477518354649219, 0.013477518354649219, 0.0],\n", - " [0.0, 0.019541941177887247, 0.019541941177887247, 0.013477518354649219],\n", - " [0.0099945829327688623,\n", - " 0.020824514976348671,\n", - " 0.020824514976348671,\n", - " 0.019541941177887247],\n", - " [0.0, 0.028000977304369928, 0.028000977304369928, 0.020824514976348671],\n", - " [0.025583262653538344,\n", - " 0.0346830643542336,\n", - " 0.0346830643542336,\n", - " 0.028000977304369928],\n", - " [0.0, 0.006126979027220569, 0.006126979027220569, 0.0],\n", - " [0.0, 0.0086419639550264667, 0.0086419639550264667, 0.006126979027220569],\n", - " [0.0, 0.0099340018622907852, 0.0099340018622907852, 0.0086419639550264667],\n", - " [0.0, 0.011463652341204085, 0.011463652341204085, 0.0099340018622907852],\n", - " [0.0, 0.013283768441221923, 0.013283768441221923, 0.011463652341204085],\n", - " [0.0, 0.023562387930767224, 0.023562387930767224, 0.013283768441221923],\n", - " [0.0, 0.023888007974717299, 0.023888007974717299, 0.023562387930767224],\n", - " [0.0, 0.028861802247950683, 0.028861802247950683, 0.023888007974717299],\n", - " [0.0, 0.030663198593755513, 0.030663198593755513, 0.028861802247950683],\n", - " [0.0, 0.016182356812282115, 0.016182356812282115, 0.0],\n", - " [0.0, 0.019860874351350276, 0.019860874351350276, 0.016182356812282115],\n", - " [0.0, 0.025526575348055979, 0.025526575348055979, 0.019860874351350276],\n", - " [0.0, 0.034186950858477443, 0.034186950858477443, 0.025526575348055979],\n", - " [0.0, 0.024453119330674948, 0.024453119330674948, 0.0],\n", - " [0.0, 0.0083203597277996776, 0.0083203597277996776, 0.0],\n", - " [0.0, 0.0085275631337445642, 0.0085275631337445642, 0.0083203597277996776],\n", - " [0.0, 0.0098062299075643393, 0.0098062299075643393, 0.0085275631337445642],\n", - " [0.0, 0.010295578274191983, 0.010295578274191983, 0.0098062299075643393],\n", - " [0.0, 0.011325011611472525, 0.011325011611472525, 0.010295578274191983],\n", - " [0.0, 0.019296802688525124, 0.019296802688525124, 0.011325011611472525],\n", - " [0.0, 0.019941441071296456, 0.019941441071296456, 0.019296802688525124],\n", - " [0.0, 0.024885262827626094, 0.024885262827626094, 0.019941441071296456],\n", - " [0.0, 0.0047151383860914373, 0.0047151383860914373, 0.0],\n", - " [0.0, 0.0049543439525286184, 0.0049543439525286184, 0.0047151383860914373],\n", - " [0.0, 0.0092823846612814145, 0.0092823846612814145, 0.0049543439525286184],\n", - " [0.0, 0.0079343208909129596, 0.0079343208909129596, 0.0],\n", - " [0.0, 0.0099556987700487997, 0.0099556987700487997, 0.0],\n", - " [0.0079343208909129596,\n", - " 0.010024234833643817,\n", - " 0.010024234833643817,\n", - " 0.0099556987700487997],\n", - " [0.0092823846612814145,\n", - " 0.01181414237259632,\n", - " 0.01181414237259632,\n", - " 0.010024234833643817],\n", - " [0.0, 0.013740090974952794, 0.013740090974952794, 0.01181414237259632],\n", - " [0.0, 0.016477860844173822, 0.016477860844173822, 0.013740090974952794],\n", - " [0.0, 0.0007982205209101222, 0.0007982205209101222, 0.0],\n", - " [0.0, 0.0058933677977863414, 0.0058933677977863414, 0.0007982205209101222],\n", - " [0.0, 0.008741208268884141, 0.008741208268884141, 0.0058933677977863414],\n", - " [0.0, 0.012538611605757338, 0.012538611605757338, 0.008741208268884141],\n", - " [0.0, 0.017339220859081898, 0.017339220859081898, 0.012538611605757338],\n", - " [0.016477860844173822,\n", - " 0.026052838079564173,\n", - " 0.026052838079564173,\n", - " 0.017339220859081898],\n", - " [0.0, 0.026543482250829958, 0.026543482250829958, 0.026052838079564173],\n", - " [0.0, 0.028304730364373736, 0.028304730364373736, 0.026543482250829958],\n", - " [0.024885262827626094,\n", - " 0.029367727610424471,\n", - " 0.029367727610424471,\n", - " 0.028304730364373736],\n", - " [0.024453119330674948,\n", - " 0.02997219813427119,\n", - " 0.02997219813427119,\n", - " 0.029367727610424471],\n", - " [0.0, 0.03030370183657596, 0.03030370183657596, 0.02997219813427119],\n", - " [0.0, 0.033968851687978939, 0.033968851687978939, 0.03030370183657596],\n", - " [0.0, 0.036319804363461355, 0.036319804363461355, 0.033968851687978939],\n", - " [0.0, 0.036740365335687974, 0.036740365335687974, 0.036319804363461355],\n", - " [0.034186950858477443,\n", - " 0.036749715277808778,\n", - " 0.036749715277808778,\n", - " 0.036740365335687974],\n", - " [0.030663198593755513,\n", - " 0.038861574710762452,\n", - " 0.038861574710762452,\n", - " 0.036749715277808778],\n", - " [0.0346830643542336,\n", - " 0.040079931150139823,\n", - " 0.040079931150139823,\n", - " 0.038861574710762452],\n", - " [0.0095087099545615276,\n", - " 0.04052925315127491,\n", - " 0.04052925315127491,\n", - " 0.040079931150139823],\n", - " [0.039904594585086661,\n", - " 0.040572829060838006,\n", - " 0.040572829060838006,\n", - " 0.04052925315127491],\n", - " [0.0, 0.040654863239218672, 0.040654863239218672, 0.040572829060838006],\n", - " [0.027402901251514355,\n", - " 0.041529265367933527,\n", - " 0.041529265367933527,\n", - " 0.040654863239218672],\n", - " [0.02335072789015381,\n", - " 0.043371676702660344,\n", - " 0.043371676702660344,\n", - " 0.041529265367933527],\n", - " [0.03693055132272121,\n", - " 0.043887920091977776,\n", - " 0.043887920091977776,\n", - " 0.043371676702660344],\n", - " [0.041282390010753803,\n", - " 0.043960332630677182,\n", - " 0.043960332630677182,\n", - " 0.043887920091977776],\n", - " [0.0, 0.044125630873677879, 0.044125630873677879, 0.043960332630677182],\n", - " [0.01295924110432559,\n", - " 0.045925176330632943,\n", - " 0.045925176330632943,\n", - " 0.044125630873677879],\n", - " [0.0, 0.04602883310491316, 0.04602883310491316, 0.045925176330632943],\n", - " [0.0, 0.046550076186839436, 0.046550076186839436, 0.04602883310491316],\n", - " [0.039503035997246673,\n", - " 0.047227390834133708,\n", - " 0.047227390834133708,\n", - " 0.046550076186839436],\n", - " [0.036067928593140522,\n", - " 0.047435428162923107,\n", - " 0.047435428162923107,\n", - " 0.047227390834133708],\n", - " [0.025256613391348562,\n", - " 0.047525474063913026,\n", - " 0.047525474063913026,\n", - " 0.047435428162923107],\n", - " [0.045521656395608991,\n", - " 0.049039198790353671,\n", - " 0.049039198790353671,\n", - " 0.047525474063913026],\n", - " [0.026837139955665567,\n", - " 0.050674635913837827,\n", - " 0.050674635913837827,\n", - " 0.049039198790353671],\n", - " [0.0, 0.051304644624047893, 0.051304644624047893, 0.050674635913837827],\n", - " [0.0, 0.014830590075920877, 0.014830590075920877, 0.0],\n", - " [0.0, 0.020276611575901694, 0.020276611575901694, 0.014830590075920877],\n", - " [0.0, 0.027116079897361794, 0.027116079897361794, 0.020276611575901694],\n", - " [0.0, 0.040686535954784352, 0.040686535954784352, 0.027116079897361794],\n", - " [0.0, 0.041011165918564282, 0.041011165918564282, 0.040686535954784352],\n", - " [0.0, 0.018854345520331887, 0.018854345520331887, 0.0],\n", - " [0.0, 0.013847962016124343, 0.013847962016124343, 0.0],\n", - " [0.0, 0.023145998379849417, 0.023145998379849417, 0.013847962016124343],\n", - " [0.0, 0.0014061753091263217, 0.0014061753091263217, 0.0],\n", - " [0.0, 0.0014474584622710619, 0.0014474584622710619, 0.0],\n", - " [0.0014061753091263217,\n", - " 0.0050861955330092521,\n", - " 0.0050861955330092521,\n", - " 0.0014474584622710619],\n", - " [0.0, 0.0070172020777517601, 0.0070172020777517601, 0.0050861955330092521],\n", - " [0.0, 0.0080135403536780395, 0.0080135403536780395, 0.0070172020777517601],\n", - " [0.0, 0.0089801573482860188, 0.0089801573482860188, 0.0080135403536780395],\n", - " [0.0, 0.0092244311477722978, 0.0092244311477722978, 0.0089801573482860188],\n", - " [0.0, 0.011651159985167071, 0.011651159985167071, 0.0],\n", - " [0.0, 0.015868240041037322, 0.015868240041037322, 0.011651159985167071],\n", - " [0.0092244311477722978,\n", - " 0.023347602981889062,\n", - " 0.023347602981889062,\n", - " 0.015868240041037322],\n", - " [0.0, 0.032811271538908449, 0.032811271538908449, 0.023347602981889062],\n", - " [0.0, 0.033497793360161572, 0.033497793360161572, 0.032811271538908449],\n", - " [0.023145998379849417,\n", - " 0.036857770985234524,\n", - " 0.036857770985234524,\n", - " 0.033497793360161572],\n", - " [0.0, 0.04193261171212799, 0.04193261171212799, 0.036857770985234524],\n", - " [0.018854345520331887,\n", - " 0.047340953137849098,\n", - " 0.047340953137849098,\n", - " 0.04193261171212799],\n", - " [0.041011165918564282,\n", - " 0.052823591850609621,\n", - " 0.052823591850609621,\n", - " 0.047340953137849098],\n", - " [0.051304644624047893,\n", - " 0.052856301970531532,\n", - " 0.052856301970531532,\n", - " 0.052823591850609621],\n", - " [0.0, 0.052977622332450083, 0.052977622332450083, 0.052856301970531532],\n", - " [0.050617202105605962,\n", - " 0.05407877633600669,\n", - " 0.05407877633600669,\n", - " 0.052977622332450083],\n", - " [0.0, 0.054287721668901563, 0.054287721668901563, 0.05407877633600669],\n", - " [0.0, 0.056766080047858804, 0.056766080047858804, 0.054287721668901563],\n", - " [0.0, 0.057024987663305104, 0.057024987663305104, 0.056766080047858804],\n", - " [0.0, 0.057750458110736723, 0.057750458110736723, 0.057024987663305104],\n", - " [0.0, 0.057788964318457918, 0.057788964318457918, 0.057750458110736723],\n", - " [0.0, 0.064091023973719657, 0.064091023973719657, 0.057788964318457918],\n", - " [0.0, 0.064366258505523799, 0.064366258505523799, 0.064091023973719657],\n", - " [0.0, 0.064650231283418916, 0.064650231283418916, 0.064366258505523799],\n", - " [0.0, 0.065981934292650396, 0.065981934292650396, 0.064650231283418916],\n", - " [0.039754078143007195,\n", - " 0.067822886166836946,\n", - " 0.067822886166836946,\n", - " 0.065981934292650396],\n", - " [0.040349496960929154,\n", - " 0.069676350715290256,\n", - " 0.069676350715290256,\n", - " 0.067822886166836946],\n", - " [0.022471757852913655,\n", - " 0.07115404737609575,\n", - " 0.07115404737609575,\n", - " 0.069676350715290256],\n", - " [0.051657046266701298,\n", - " 0.07139722986222552,\n", - " 0.07139722986222552,\n", - " 0.07115404737609575],\n", - " [0.0, 0.072318655850340627, 0.072318655850340627, 0.07139722986222552],\n", - " [0.05151920124574691,\n", - " 0.075572764472395498,\n", - " 0.075572764472395498,\n", - " 0.072318655850340627],\n", - " [0.0, 0.080316879645567441, 0.080316879645567441, 0.0],\n", - " [0.075572764472395498,\n", - " 0.086932911155669451,\n", - " 0.086932911155669451,\n", - " 0.080316879645567441],\n", - " [0.0, 0.097191589970536646, 0.097191589970536646, 0.086932911155669451],\n", - " [0.043626896302625166,\n", - " 0.10782162841007423,\n", - " 0.10782162841007423,\n", - " 0.097191589970536646],\n", - " [0.034645463267215744,\n", - " 0.11189344424049065,\n", - " 0.11189344424049065,\n", - " 0.10782162841007423],\n", - " [0.0, 0.12386838412202243, 0.12386838412202243, 0.11189344424049065],\n", - " [0.0, 0.20354636928719655, 0.20354636928719655, 0.12386838412202243],\n", - " [0.0, 0.24871140418163162, 0.24871140418163162, 0.20354636928719655],\n", - " [0.0, 0.40405133034801483, 0.40405133034801483, 0.24871140418163162],\n", - " [0.11390434780990256,\n", - " 0.50773860781410329,\n", - " 0.50773860781410329,\n", - " 0.40405133034801483],\n", - " [0.47825892879903786,\n", - " 0.53246678175074746,\n", - " 0.53246678175074746,\n", - " 0.50773860781410329],\n", - " [0.12604821256963281,\n", - " 0.70966596674773785,\n", - " 0.70966596674773785,\n", - " 0.53246678175074746],\n", - " [0.24660045835520966,\n", - " 0.8485270872895021,\n", - " 0.8485270872895021,\n", - " 0.70966596674773785],\n", - " [0.06969365977619732,\n", - " 1.0607246793287155,\n", - " 1.0607246793287155,\n", - " 0.8485270872895021],\n", - " [0.0, 1.1961293772870045, 1.1961293772870045, 1.0607246793287155],\n", - " [0.0, 0.0376413478637561, 0.0376413478637561, 0.0],\n", - " [0.0, 0.06182420569647358, 0.06182420569647358, 0.0376413478637561],\n", - " [0.0, 0.06301013050295412, 0.06301013050295412, 0.06182420569647358],\n", - " [0.0, 0.043559444498297857, 0.043559444498297857, 0.0],\n", - " [0.0, 0.066695244763023256, 0.066695244763023256, 0.043559444498297857],\n", - " [0.06301013050295412,\n", - " 0.11230186059455596,\n", - " 0.11230186059455596,\n", - " 0.066695244763023256],\n", - " [0.0, 0.11434568006269434, 0.11434568006269434, 0.11230186059455596],\n", - " [0.0, 0.11620177095466838, 0.11620177095466838, 0.0],\n", - " [0.0, 0.11865098233896158, 0.11865098233896158, 0.11620177095466838],\n", - " [0.0, 0.029016821207704956, 0.029016821207704956, 0.0],\n", - " [0.0, 0.039608981456226267, 0.039608981456226267, 0.0],\n", - " [0.029016821207704956,\n", - " 0.053467731885687271,\n", - " 0.053467731885687271,\n", - " 0.039608981456226267],\n", - " [0.0, 0.014660072032570052, 0.014660072032570052, 0.0],\n", - " [0.0, 0.015819982111244919, 0.015819982111244919, 0.0],\n", - " [0.014660072032570052,\n", - " 0.017854157527027643,\n", - " 0.017854157527027643,\n", - " 0.015819982111244919],\n", - " [0.0, 0.073874903153914956, 0.073874903153914956, 0.0],\n", - " [0.017854157527027643,\n", - " 0.079541250002748615,\n", - " 0.079541250002748615,\n", - " 0.073874903153914956],\n", - " [0.0, 0.079773780065883107, 0.079773780065883107, 0.079541250002748615],\n", - " [0.0, 0.082268198892401556, 0.082268198892401556, 0.079773780065883107],\n", - " [0.0, 0.084756856194644847, 0.084756856194644847, 0.082268198892401556],\n", - " [0.053467731885687271,\n", - " 0.12277174144321371,\n", - " 0.12277174144321371,\n", - " 0.084756856194644847],\n", - " [0.11865098233896158,\n", - " 0.18359587666393465,\n", - " 0.18359587666393465,\n", - " 0.12277174144321371],\n", - " [0.0, 0.20734344704379337, 0.20734344704379337, 0.18359587666393465],\n", - " [0.0, 0.21400000386215029, 0.21400000386215029, 0.20734344704379337],\n", - " [0.11434568006269434,\n", - " 0.31696300910042918,\n", - " 0.31696300910042918,\n", - " 0.21400000386215029],\n", - " [0.0, 0.44655412602393235, 0.44655412602393235, 0.31696300910042918],\n", - " [0.0, 0.13239575540779702, 0.13239575540779702, 0.0],\n", - " [0.0, 0.16456178379258918, 0.16456178379258918, 0.13239575540779702],\n", - " [0.0, 0.22495604790269533, 0.22495604790269533, 0.0],\n", - " [0.0, 0.24420907509754808, 0.24420907509754808, 0.22495604790269533],\n", - " [0.0, 0.24814418211998671, 0.24814418211998671, 0.24420907509754808],\n", - " [0.0, 0.29492834669119361, 0.29492834669119361, 0.24814418211998671],\n", - " [0.0, 1.3527573795980603, 1.3527573795980603, 0.29492834669119361],\n", - " [0.0, 0.0064686134526594488, 0.0064686134526594488, 0.0],\n", - " [0.0, 0.013258977524681572, 0.013258977524681572, 0.0064686134526594488],\n", - " [0.0, 0.021374488204401663, 0.021374488204401663, 0.013258977524681572],\n", - " [0.0, 0.0089112464335786446, 0.0089112464335786446, 0.0],\n", - " [0.0, 0.014432778388100068, 0.014432778388100068, 0.0],\n", - " [0.0, 0.016628081368575718, 0.016628081368575718, 0.014432778388100068],\n", - " [0.0, 0.028780842135008471, 0.028780842135008471, 0.016628081368575718],\n", - " [0.0089112464335786446,\n", - " 0.031564502736455911,\n", - " 0.031564502736455911,\n", - " 0.028780842135008471],\n", - " [0.0, 0.031927124345928294, 0.031927124345928294, 0.031564502736455911],\n", - " [0.021374488204401663,\n", - " 0.033607366350251862,\n", - " 0.033607366350251862,\n", - " 0.031927124345928294],\n", - " [0.0, 0.047456334508684993, 0.047456334508684993, 0.033607366350251862],\n", - " [0.0, 0.052769926738627397, 0.052769926738627397, 0.047456334508684993],\n", - " [0.0, 0.030354267920671595, 0.030354267920671595, 0.0],\n", - " [0.0, 0.032584806889096103, 0.032584806889096103, 0.030354267920671595],\n", - " [0.0, 0.060579247271652446, 0.060579247271652446, 0.032584806889096103],\n", - " [0.052769926738627397,\n", - " 0.076307819428938259,\n", - " 0.076307819428938259,\n", - " 0.060579247271652446],\n", - " [0.0, 0.087108247370726172, 0.087108247370726172, 0.076307819428938259],\n", - " [0.0, 0.093252668406860598, 0.093252668406860598, 0.087108247370726172],\n", - " [0.0, 0.14862312004866851, 0.14862312004866851, 0.0],\n", - " [0.093252668406860598,\n", - " 0.17700729749928745,\n", - " 0.17700729749928745,\n", - " 0.14862312004866851],\n", - " [0.0, 0.081490362381084577, 0.081490362381084577, 0.0],\n", - " [0.0, 0.033427979897086305, 0.033427979897086305, 0.0],\n", - " [0.0, 0.023912172632370231, 0.023912172632370231, 0.0],\n", - " [0.0, 0.086533603415084329, 0.086533603415084329, 0.023912172632370231],\n", - " [0.0, 0.037974071838559852, 0.037974071838559852, 0.0],\n", - " [0.0, 0.069807061490940583, 0.069807061490940583, 0.037974071838559852],\n", - " [0.0, 0.034786037788169175, 0.034786037788169175, 0.0],\n", - " [0.0, 0.054265840820903702, 0.054265840820903702, 0.034786037788169175],\n", - " [0.0, 0.026330570863540511, 0.026330570863540511, 0.0],\n", - " [0.0, 0.04593072728577606, 0.04593072728577606, 0.026330570863540511],\n", - " [0.0, 0.010712453033731821, 0.010712453033731821, 0.0],\n", - " [0.0, 0.01515480451869906, 0.01515480451869906, 0.0],\n", - " [0.010712453033731821,\n", - " 0.054503358217639956,\n", - " 0.054503358217639956,\n", - " 0.01515480451869906],\n", - " [0.04593072728577606,\n", - " 0.058917152383665981,\n", - " 0.058917152383665981,\n", - " 0.054503358217639956],\n", - " [0.0, 0.0012816243599403777, 0.0012816243599403777, 0.0],\n", - " [0.0, 0.0044532758728820987, 0.0044532758728820987, 0.0],\n", - " [0.0, 0.0070788188986609657, 0.0070788188986609657, 0.0044532758728820987],\n", - " [0.0, 0.017257018630105862, 0.017257018630105862, 0.0070788188986609657],\n", - " [0.0, 0.012820287828289497, 0.012820287828289497, 0.0],\n", - " [0.0, 0.020104622354079223, 0.020104622354079223, 0.012820287828289497],\n", - " [0.017257018630105862,\n", - " 0.025578170849378704,\n", - " 0.025578170849378704,\n", - " 0.020104622354079223],\n", - " [0.0, 0.033960499701857362, 0.033960499701857362, 0.0],\n", - " [0.025578170849378704,\n", - " 0.042309564651508251,\n", - " 0.042309564651508251,\n", - " 0.033960499701857362],\n", - " [0.0012816243599403777,\n", - " 0.043604820857334539,\n", - " 0.043604820857334539,\n", - " 0.042309564651508251],\n", - " [0.0, 0.043928616015075465, 0.043928616015075465, 0.043604820857334539],\n", - " [0.0, 0.045780067682341441, 0.045780067682341441, 0.043928616015075465],\n", - " [0.0, 0.046342438358380193, 0.046342438358380193, 0.045780067682341441],\n", - " [0.0, 0.029452223175850813, 0.029452223175850813, 0.0],\n", - " [0.0, 0.032400148302129804, 0.032400148302129804, 0.029452223175850813],\n", - " [0.0, 0.052908378637034188, 0.052908378637034188, 0.032400148302129804],\n", - " [0.046342438358380193,\n", - " 0.062677507967370288,\n", - " 0.062677507967370288,\n", - " 0.052908378637034188],\n", - " [0.058917152383665981,\n", - " 0.073760385641614815,\n", - " 0.073760385641614815,\n", - " 0.062677507967370288],\n", - " [0.0, 0.081019436384118085, 0.081019436384118085, 0.073760385641614815],\n", - " [0.054265840820903702,\n", - " 0.088425539037086956,\n", - " 0.088425539037086956,\n", - " 0.081019436384118085],\n", - " [0.069807061490940583,\n", - " 0.090087045128591031,\n", - " 0.090087045128591031,\n", - " 0.088425539037086956],\n", - " [0.086533603415084329,\n", - " 0.096487531598645357,\n", - " 0.096487531598645357,\n", - " 0.090087045128591031],\n", - " [0.033427979897086305,\n", - " 0.11425791499936197,\n", - " 0.11425791499936197,\n", - " 0.096487531598645357],\n", - " [0.081490362381084577,\n", - " 0.18059379827945332,\n", - " 0.18059379827945332,\n", - " 0.11425791499936197],\n", - " [0.17700729749928745,\n", - " 0.33226632487359042,\n", - " 0.33226632487359042,\n", - " 0.18059379827945332],\n", - " [0.0, 1.3824139754013605, 1.3824139754013605, 0.33226632487359042],\n", - " [0.0, 0.10404206099938379, 0.10404206099938379, 0.0],\n", - " [0.0, 0.28512658118807399, 0.28512658118807399, 0.0],\n", - " [0.0, 0.093692798618679171, 0.093692798618679171, 0.0],\n", - " [0.0, 0.11938051576785635, 0.11938051576785635, 0.093692798618679171],\n", - " [0.0, 0.16405302850298248, 0.16405302850298248, 0.11938051576785635],\n", - " [0.0, 0.20570884762936031, 0.20570884762936031, 0.16405302850298248],\n", - " [0.0, 0.24914913420680751, 0.24914913420680751, 0.20570884762936031],\n", - " [0.0, 0.36411775319805079, 0.36411775319805079, 0.0],\n", - " [0.24914913420680751,\n", - " 0.53445138928063352,\n", - " 0.53445138928063352,\n", - " 0.36411775319805079],\n", - " [0.0, 0.15352406381411285, 0.15352406381411285, 0.0],\n", - " [0.0, 0.30064582685445979, 0.30064582685445979, 0.15352406381411285],\n", - " [0.0, 0.0077631082692477338, 0.0077631082692477338, 0.0],\n", - " [0.0, 0.023343304179140066, 0.023343304179140066, 0.0],\n", - " [0.0, 0.026316593339565892, 0.026316593339565892, 0.023343304179140066],\n", - " [0.0077631082692477338,\n", - " 0.031586200420432003,\n", - " 0.031586200420432003,\n", - " 0.026316593339565892],\n", - " [0.0, 0.074699451383528404, 0.074699451383528404, 0.0],\n", - " [0.0, 0.040105394213251711, 0.040105394213251711, 0.0],\n", - " [0.0, 0.061485644056158938, 0.061485644056158938, 0.040105394213251711],\n", - " [0.0, 0.12294559774143893, 0.12294559774143893, 0.061485644056158938],\n", - " [0.0, 0.20874092984606521, 0.20874092984606521, 0.12294559774143893],\n", - " [0.0, 0.26771299849838542, 0.26771299849838542, 0.20874092984606521],\n", - " [0.074699451383528404,\n", - " 0.33059426266195424,\n", - " 0.33059426266195424,\n", - " 0.26771299849838542],\n", - " [0.0, 0.44313161765439241, 0.44313161765439241, 0.33059426266195424],\n", - " [0.031586200420432003,\n", - " 0.50868005301760832,\n", - " 0.50868005301760832,\n", - " 0.44313161765439241],\n", - " [0.30064582685445979,\n", - " 0.76159697010032879,\n", - " 0.76159697010032879,\n", - " 0.50868005301760832],\n", - " [0.53445138928063352,\n", - " 0.94984456049240173,\n", - " 0.94984456049240173,\n", - " 0.76159697010032879],\n", - " [0.28512658118807399,\n", - " 1.0016776601846478,\n", - " 1.0016776601846478,\n", - " 0.94984456049240173],\n", - " [0.10404206099938379,\n", - " 1.3837788613387614,\n", - " 1.3837788613387614,\n", - " 1.0016776601846478],\n", - " [0.0, 0.015780862619010145, 0.015780862619010145, 0.0],\n", - " [0.0, 0.022668057922990953, 0.022668057922990953, 0.015780862619010145],\n", - " [0.0, 0.03212197112568993, 0.03212197112568993, 0.022668057922990953],\n", - " [0.0, 0.046456258448131608, 0.046456258448131608, 0.03212197112568993],\n", - " [0.0, 0.048363387980988361, 0.048363387980988361, 0.046456258448131608],\n", - " [0.0, 0.069080629600492993, 0.069080629600492993, 0.048363387980988361],\n", - " [0.0, 0.085726798849605684, 0.085726798849605684, 0.069080629600492993],\n", - " [0.0, 0.13003742001823773, 0.13003742001823773, 0.085726798849605684],\n", - " [0.0, 0.13301101590846312, 0.13301101590846312, 0.13003742001823773],\n", - " [0.0, 0.14094496867217135, 0.14094496867217135, 0.13301101590846312],\n", - " [0.0, 0.16101467630312877, 0.16101467630312877, 0.14094496867217135],\n", - " [0.0, 0.54959910681604607, 0.54959910681604607, 0.16101467630312877],\n", - " [0.0, 1.0286430032644929, 1.0286430032644929, 0.54959910681604607],\n", - " [0.0, 1.4074650961657968, 1.4074650961657968, 1.0286430032644929],\n", - " [1.3837788613387614,\n", - " 2.1555533076500297,\n", - " 2.1555533076500297,\n", - " 1.4074650961657968],\n", - " [1.3824139754013605,\n", - " 2.1925234945523449,\n", - " 2.1925234945523449,\n", - " 2.1555533076500297],\n", - " [1.3527573795980603,\n", - " 2.3151013825284155,\n", - " 2.3151013825284155,\n", - " 2.1925234945523449],\n", - " [0.0, 2.3496315246329589, 2.3496315246329589, 2.3151013825284155],\n", - " [0.0, 0.53717702949121371, 0.53717702949121371, 0.0],\n", - " [0.0, 0.067743524923044959, 0.067743524923044959, 0.0],\n", - " [0.0, 0.098273726931462566, 0.098273726931462566, 0.0],\n", - " [0.0, 0.12085925060581405, 0.12085925060581405, 0.0],\n", - " [0.0, 0.22836906117291786, 0.22836906117291786, 0.12085925060581405],\n", - " [0.0, 0.045470819214082608, 0.045470819214082608, 0.0],\n", - " [0.0, 0.059737237473791976, 0.059737237473791976, 0.045470819214082608],\n", - " [0.0, 0.043035897585616371, 0.043035897585616371, 0.0],\n", - " [0.0, 0.10816698437601531, 0.10816698437601531, 0.043035897585616371],\n", - " [0.059737237473791976,\n", - " 0.12522467749209906,\n", - " 0.12522467749209906,\n", - " 0.10816698437601531],\n", - " [0.0, 0.19512672038959708, 0.19512672038959708, 0.12522467749209906],\n", - " [0.0, 0.4084104825784966, 0.4084104825784966, 0.19512672038959708],\n", - " [0.22836906117291786,\n", - " 0.75336982355879056,\n", - " 0.75336982355879056,\n", - " 0.4084104825784966],\n", - " [0.098273726931462566,\n", - " 1.0043055584756031,\n", - " 1.0043055584756031,\n", - " 0.75336982355879056],\n", - " [0.067743524923044959,\n", - " 1.1649147984779855,\n", - " 1.1649147984779855,\n", - " 1.0043055584756031],\n", - " [0.53717702949121371,\n", - " 2.7462508141846751,\n", - " 2.7462508141846751,\n", - " 1.1649147984779855],\n", - " [2.3496315246329589,\n", - " 2.855718309312214,\n", - " 2.855718309312214,\n", - " 2.7462508141846751],\n", - " [0.16456178379258918,\n", - " 3.158308494858125,\n", - " 3.158308494858125,\n", - " 2.855718309312214],\n", - " [0.44655412602393235,\n", - " 3.9705413476992004,\n", - " 3.9705413476992004,\n", - " 3.158308494858125],\n", - " [0.0, 0.019455761614488986, 0.019455761614488986, 0.0],\n", - " [0.0, 0.0049610451519835029, 0.0049610451519835029, 0.0],\n", - " [0.0, 0.0087456600665703522, 0.0087456600665703522, 0.0049610451519835029],\n", - " [0.0, 0.010365553048438033, 0.010365553048438033, 0.0087456600665703522],\n", - " [0.0, 0.017453184265340399, 0.017453184265340399, 0.0],\n", - " [0.010365553048438033,\n", - " 0.022198907720878829,\n", - " 0.022198907720878829,\n", - " 0.017453184265340399],\n", - " [0.019455761614488986,\n", - " 0.024122978195073447,\n", - " 0.024122978195073447,\n", - " 0.022198907720878829],\n", - " [0.0, 0.026232499004095817, 0.026232499004095817, 0.0],\n", - " [0.024122978195073447,\n", - " 0.026564325701962221,\n", - " 0.026564325701962221,\n", - " 0.026232499004095817],\n", - " [0.0, 0.037309139711338202, 0.037309139711338202, 0.026564325701962221],\n", - " [0.0, 0.044554202910614335, 0.044554202910614335, 0.037309139711338202],\n", - " [0.0, 0.050169597058378965, 0.050169597058378965, 0.0],\n", - " [0.0, 0.094631180701711698, 0.094631180701711698, 0.050169597058378965],\n", - " [0.044554202910614335,\n", - " 0.36183450717282412,\n", - " 0.36183450717282412,\n", - " 0.094631180701711698],\n", - " [0.0, 0.16511871504163367, 0.16511871504163367, 0.0],\n", - " [0.0, 0.091988587014912582, 0.091988587014912582, 0.0],\n", - " [0.0, 0.15729268804366039, 0.15729268804366039, 0.0],\n", - " [0.091988587014912582,\n", - " 0.18931804586462492,\n", - " 0.18931804586462492,\n", - " 0.15729268804366039],\n", - " [0.0, 0.011118802813253939, 0.011118802813253939, 0.0],\n", - " [0.0, 0.0027924143675347119, 0.0027924143675347119, 0.0],\n", - " [0.0, 0.046921184565182489, 0.046921184565182489, 0.0027924143675347119],\n", - " [0.0, 0.054243866501204302, 0.054243866501204302, 0.0],\n", - " [0.046921184565182489,\n", - " 0.063127385626207164,\n", - " 0.063127385626207164,\n", - " 0.054243866501204302],\n", - " [0.0, 0.07822827369308398, 0.07822827369308398, 0.063127385626207164],\n", - " [0.011118802813253939,\n", - " 0.081434669060545126,\n", - " 0.081434669060545126,\n", - " 0.07822827369308398],\n", - " [0.0, 0.092168920249718039, 0.092168920249718039, 0.0],\n", - " [0.081434669060545126,\n", - " 0.10071300922919477,\n", - " 0.10071300922919477,\n", - " 0.092168920249718039],\n", - " [0.0, 0.0065519707722166308, 0.0065519707722166308, 0.0],\n", - " [0.0, 0.019147047422512879, 0.019147047422512879, 0.0065519707722166308],\n", - " [0.0, 0.023749369360050485, 0.023749369360050485, 0.019147047422512879],\n", - " [0.0, 0.041590036547232485, 0.041590036547232485, 0.023749369360050485],\n", - " [0.0, 0.056543532043902917, 0.056543532043902917, 0.041590036547232485],\n", - " [0.0, 0.058887830050014613, 0.058887830050014613, 0.056543532043902917],\n", - " [0.0, 0.10991264091996039, 0.10991264091996039, 0.0],\n", - " [0.058887830050014613,\n", - " 0.15008414347291818,\n", - " 0.15008414347291818,\n", - " 0.10991264091996039],\n", - " [0.0, 0.046112597118359494, 0.046112597118359494, 0.0],\n", - " [0.0, 0.050436332985262247, 0.050436332985262247, 0.0],\n", - " [0.046112597118359494,\n", - " 0.12305858471475831,\n", - " 0.12305858471475831,\n", - " 0.050436332985262247],\n", - " [0.0, 0.14077441573311519, 0.14077441573311519, 0.12305858471475831],\n", - " [0.0, 0.024181422001195309, 0.024181422001195309, 0.0],\n", - " [0.0, 0.012976803381420127, 0.012976803381420127, 0.0],\n", - " [0.0, 0.03769209764658938, 0.03769209764658938, 0.0],\n", - " [0.012976803381420127,\n", - " 0.055856615615340596,\n", - " 0.055856615615340596,\n", - " 0.03769209764658938],\n", - " [0.024181422001195309,\n", - " 0.056495174041682472,\n", - " 0.056495174041682472,\n", - " 0.055856615615340596],\n", - " [0.0, 0.062665290935256704, 0.062665290935256704, 0.056495174041682472],\n", - " [0.0, 0.22182070951108393, 0.22182070951108393, 0.062665290935256704],\n", - " [0.14077441573311519,\n", - " 0.24111896151278012,\n", - " 0.24111896151278012,\n", - " 0.22182070951108393],\n", - " [0.15008414347291818,\n", - " 0.24744043405231944,\n", - " 0.24744043405231944,\n", - " 0.24111896151278012],\n", - " [0.10071300922919477,\n", - " 0.29534551702201173,\n", - " 0.29534551702201173,\n", - " 0.24744043405231944],\n", - " [0.0, 0.31038622009522226, 0.31038622009522226, 0.29534551702201173],\n", - " [0.18931804586462492,\n", - " 0.32346105159199673,\n", - " 0.32346105159199673,\n", - " 0.31038622009522226],\n", - " [0.0, 0.057300424090927289, 0.057300424090927289, 0.0],\n", - " [0.0, 0.15638437428656285, 0.15638437428656285, 0.057300424090927289],\n", - " [0.0, 0.1624383542516977, 0.1624383542516977, 0.0],\n", - " [0.15638437428656285,\n", - " 0.19416214082565053,\n", - " 0.19416214082565053,\n", - " 0.1624383542516977],\n", - " [0.0, 0.40914224285082046, 0.40914224285082046, 0.19416214082565053],\n", - " [0.32346105159199673,\n", - " 0.50723592924003491,\n", - " 0.50723592924003491,\n", - " 0.40914224285082046],\n", - " [0.0, 0.52065214382061742, 0.52065214382061742, 0.50723592924003491],\n", - " [0.16511871504163367,\n", - " 0.58252392082213911,\n", - " 0.58252392082213911,\n", - " 0.52065214382061742],\n", - " [0.0, 0.028074275502674328, 0.028074275502674328, 0.0],\n", - " [0.0, 0.063125099358337072, 0.063125099358337072, 0.028074275502674328],\n", - " [0.0, 0.11791851424182852, 0.11791851424182852, 0.063125099358337072],\n", - " [0.0, 0.035804376548125669, 0.035804376548125669, 0.0],\n", - " [0.0, 0.023178977544318788, 0.023178977544318788, 0.0],\n", - " [0.0, 0.021125558832842659, 0.021125558832842659, 0.0],\n", - " [0.0, 0.012702834723005051, 0.012702834723005051, 0.0],\n", - " [0.0, 0.032998168691608758, 0.032998168691608758, 0.012702834723005051],\n", - " [0.021125558832842659,\n", - " 0.034851428579043477,\n", - " 0.034851428579043477,\n", - " 0.032998168691608758],\n", - " [0.023178977544318788,\n", - " 0.040322057090380559,\n", - " 0.040322057090380559,\n", - " 0.034851428579043477],\n", - " [0.035804376548125669,\n", - " 0.043729843219478072,\n", - " 0.043729843219478072,\n", - " 0.040322057090380559],\n", - " [0.0, 0.01917015224248091, 0.01917015224248091, 0.0],\n", - " [0.0, 0.025631049998000744, 0.025631049998000744, 0.01917015224248091],\n", - " [0.0, 0.037492276871374172, 0.037492276871374172, 0.025631049998000744],\n", - " [0.0, 0.038459281441541288, 0.038459281441541288, 0.037492276871374172],\n", - " [0.0, 0.037284442774432248, 0.037284442774432248, 0.0],\n", - " [0.0, 0.0064585973709468669, 0.0064585973709468669, 0.0],\n", - " [0.0, 0.041121834832604391, 0.041121834832604391, 0.0064585973709468669],\n", - " [0.037284442774432248,\n", - " 0.041827448428037053,\n", - " 0.041827448428037053,\n", - " 0.041121834832604391],\n", - " [0.0, 0.041987054028592291, 0.041987054028592291, 0.041827448428037053],\n", - " [0.0, 0.011827525565392214, 0.011827525565392214, 0.0],\n", - " [0.0, 0.013874598732934354, 0.013874598732934354, 0.011827525565392214],\n", - " [0.0, 0.021402312258259993, 0.021402312258259993, 0.013874598732934354],\n", - " [0.0, 0.043314462896360269, 0.043314462896360269, 0.021402312258259993],\n", - " [0.041987054028592291,\n", - " 0.047395480818324731,\n", - " 0.047395480818324731,\n", - " 0.043314462896360269],\n", - " [0.0, 0.049667643733115899, 0.049667643733115899, 0.047395480818324731],\n", - " [0.038459281441541288,\n", - " 0.057355457708925833,\n", - " 0.057355457708925833,\n", - " 0.049667643733115899],\n", - " [0.043729843219478072,\n", - " 0.060055274156397026,\n", - " 0.060055274156397026,\n", - " 0.057355457708925833],\n", - " [0.0, 0.061742378873834811, 0.061742378873834811, 0.060055274156397026],\n", - " [0.0, 0.063941931860087536, 0.063941931860087536, 0.061742378873834811],\n", - " [0.0, 0.070179216937781008, 0.070179216937781008, 0.063941931860087536],\n", - " [0.0, 0.10633125471844598, 0.10633125471844598, 0.070179216937781008],\n", - " [0.0, 0.052103041417946042, 0.052103041417946042, 0.0],\n", - " [0.0, 0.025106943919960836, 0.025106943919960836, 0.0],\n", - " [0.0, 0.042976218097921404, 0.042976218097921404, 0.025106943919960836],\n", - " [0.0, 0.047482393473789401, 0.047482393473789401, 0.042976218097921404],\n", - " [0.0, 0.015072090896755168, 0.015072090896755168, 0.0],\n", - " [0.0, 0.031183252075431798, 0.031183252075431798, 0.0],\n", - " [0.0, 0.048442617352906003, 0.048442617352906003, 0.031183252075431798],\n", - " [0.0, 0.049676535003966127, 0.049676535003966127, 0.048442617352906003],\n", - " [0.0, 0.053578648956459134, 0.053578648956459134, 0.049676535003966127],\n", - " [0.015072090896755168,\n", - " 0.058302261920100996,\n", - " 0.058302261920100996,\n", - " 0.053578648956459134],\n", - " [0.047482393473789401,\n", - " 0.066146778976757803,\n", - " 0.066146778976757803,\n", - " 0.058302261920100996],\n", - " [0.052103041417946042,\n", - " 0.083200335155576427,\n", - " 0.083200335155576427,\n", - " 0.066146778976757803],\n", - " [0.0, 0.1596093042150151, 0.1596093042150151, 0.083200335155576427],\n", - " [0.0, 0.03933770685995755, 0.03933770685995755, 0.0],\n", - " [0.0, 0.040464075783339853, 0.040464075783339853, 0.0],\n", - " [0.0, 0.013587480487569721, 0.013587480487569721, 0.0],\n", - " [0.0, 0.043262335500987188, 0.043262335500987188, 0.0],\n", - " [0.013587480487569721,\n", - " 0.057028589154913108,\n", - " 0.057028589154913108,\n", - " 0.043262335500987188],\n", - " [0.0, 0.060068950415333409, 0.060068950415333409, 0.057028589154913108],\n", - " [0.040464075783339853,\n", - " 0.063492373597152457,\n", - " 0.063492373597152457,\n", - " 0.060068950415333409],\n", - " [0.0, 0.050544916460512075, 0.050544916460512075, 0.0],\n", - " [0.0, 0.02133923058594529, 0.02133923058594529, 0.0],\n", - " [0.0, 0.034342853477830206, 0.034342853477830206, 0.02133923058594529],\n", - " [0.0, 0.0051771313485339575, 0.0051771313485339575, 0.0],\n", - " [0.0, 0.0084161317123745191, 0.0084161317123745191, 0.0051771313485339575],\n", - " [0.0, 0.010527501365472008, 0.010527501365472008, 0.0],\n", - " [0.0, 0.017304429028432933, 0.017304429028432933, 0.0],\n", - " [0.0, 0.0099219696129353805, 0.0099219696129353805, 0.0],\n", - " [0.0, 0.013991187833778757, 0.013991187833778757, 0.0099219696129353805],\n", - " [0.0, 0.014220324363389811, 0.014220324363389811, 0.013991187833778757],\n", - " [0.0, 0.016087050972753907, 0.016087050972753907, 0.014220324363389811],\n", - " [0.0, 0.018996754670204671, 0.018996754670204671, 0.016087050972753907],\n", - " [0.017304429028432933,\n", - " 0.023238386346730786,\n", - " 0.023238386346730786,\n", - " 0.018996754670204671],\n", - " [0.010527501365472008,\n", - " 0.031930720082703597,\n", - " 0.031930720082703597,\n", - " 0.023238386346730786],\n", - " [0.0, 0.033982370561806099, 0.033982370561806099, 0.031930720082703597],\n", - " [0.0084161317123745191,\n", - " 0.035247539048847289,\n", - " 0.035247539048847289,\n", - " 0.033982370561806099],\n", - " [0.0, 0.035324483704648177, 0.035324483704648177, 0.035247539048847289],\n", - " [0.0, 0.036770918359484997, 0.036770918359484997, 0.035324483704648177],\n", - " [0.034342853477830206,\n", - " 0.037778825021435584,\n", - " 0.037778825021435584,\n", - " 0.036770918359484997],\n", - " [0.0, 0.0080956932995264203, 0.0080956932995264203, 0.0],\n", - " [0.0, 0.012301172342503847, 0.012301172342503847, 0.0080956932995264203],\n", - " [0.0, 0.018898003201396785, 0.018898003201396785, 0.012301172342503847],\n", - " [0.0, 0.0038750929021119152, 0.0038750929021119152, 0.0],\n", - " [0.0, 0.0079530261536066293, 0.0079530261536066293, 0.0],\n", - " [0.0038750929021119152,\n", - " 0.010702483683709336,\n", - " 0.010702483683709336,\n", - " 0.0079530261536066293],\n", - " [0.0, 0.0013761398911478315, 0.0013761398911478315, 0.0],\n", - " [0.0, 0.0108715997442862, 0.0108715997442862, 0.0013761398911478315],\n", - " [0.0, 0.011296353615215056, 0.011296353615215056, 0.0108715997442862],\n", - " [0.010702483683709336,\n", - " 0.013405217976592679,\n", - " 0.013405217976592679,\n", - " 0.011296353615215056],\n", - " [0.0, 0.023391531843814348, 0.023391531843814348, 0.013405217976592679],\n", - " [0.0, 0.027275649231503832, 0.027275649231503832, 0.023391531843814348],\n", - " [0.018898003201396785,\n", - " 0.031408627493096773,\n", - " 0.031408627493096773,\n", - " 0.027275649231503832],\n", - " [0.0, 0.036732091527705596, 0.036732091527705596, 0.031408627493096773],\n", - " [0.0, 0.038398154031152272, 0.038398154031152272, 0.036732091527705596],\n", - " [0.037778825021435584,\n", - " 0.039233418624946545,\n", - " 0.039233418624946545,\n", - " 0.038398154031152272],\n", - " [0.0, 0.041788323022103765, 0.041788323022103765, 0.039233418624946545],\n", - " [0.0, 0.048938111794388714, 0.048938111794388714, 0.0],\n", - " [0.041788323022103765,\n", - " 0.071530984740879391,\n", - " 0.071530984740879391,\n", - " 0.048938111794388714],\n", - " [0.050544916460512075,\n", - " 0.16971627183331567,\n", - " 0.16971627183331567,\n", - " 0.071530984740879391],\n", - " [0.0, 0.2038857984362778, 0.2038857984362778, 0.16971627183331567],\n", - " [0.0, 0.032551378619040401, 0.032551378619040401, 0.0],\n", - " [0.0, 0.065129064510405829, 0.065129064510405829, 0.032551378619040401],\n", - " [0.0, 0.085087662019825441, 0.085087662019825441, 0.065129064510405829],\n", - " [0.0, 0.024311534813747891, 0.024311534813747891, 0.0],\n", - " [0.0, 0.071150655239428817, 0.071150655239428817, 0.024311534813747891],\n", - " [0.0, 0.041316469863722921, 0.041316469863722921, 0.0],\n", - " [0.0, 0.016682128311458402, 0.016682128311458402, 0.0],\n", - " [0.0, 0.05156823473806009, 0.05156823473806009, 0.016682128311458402],\n", - " [0.0, 0.05710802915528182, 0.05710802915528182, 0.05156823473806009],\n", - " [0.0, 0.066046760193064408, 0.066046760193064408, 0.05710802915528182],\n", - " [0.041316469863722921,\n", - " 0.075604126884715128,\n", - " 0.075604126884715128,\n", - " 0.066046760193064408],\n", - " [0.071150655239428817,\n", - " 0.08201664187834011,\n", - " 0.08201664187834011,\n", - " 0.075604126884715128],\n", - " [0.0, 0.088655220805091431, 0.088655220805091431, 0.08201664187834011],\n", - " [0.0, 0.099243487856888163, 0.099243487856888163, 0.088655220805091431],\n", - " [0.085087662019825441,\n", - " 0.14466520277177872,\n", - " 0.14466520277177872,\n", - " 0.099243487856888163],\n", - " [0.0, 0.18217787943106764, 0.18217787943106764, 0.0],\n", - " [0.0, 0.0083224233249679525, 0.0083224233249679525, 0.0],\n", - " [0.0, 0.030517390615844544, 0.030517390615844544, 0.0],\n", - " [0.0, 0.042979116335726514, 0.042979116335726514, 0.030517390615844544],\n", - " [0.0083224233249679525,\n", - " 0.044673234906376154,\n", - " 0.044673234906376154,\n", - " 0.042979116335726514],\n", - " [0.0, 0.012001777576675962, 0.012001777576675962, 0.0],\n", - " [0.0, 0.011049319255048391, 0.011049319255048391, 0.0],\n", - " [0.0, 0.023651892292162646, 0.023651892292162646, 0.011049319255048391],\n", - " [0.0, 0.038013919818927974, 0.038013919818927974, 0.0],\n", - " [0.023651892292162646,\n", - " 0.044273554194350827,\n", - " 0.044273554194350827,\n", - " 0.038013919818927974],\n", - " [0.012001777576675962,\n", - " 0.044727341459110746,\n", - " 0.044727341459110746,\n", - " 0.044273554194350827],\n", - " [0.0, 0.055418335467605093, 0.055418335467605093, 0.044727341459110746],\n", - " [0.0, 0.065297925885898445, 0.065297925885898445, 0.055418335467605093],\n", - " [0.044673234906376154,\n", - " 0.25271844741727612,\n", - " 0.25271844741727612,\n", - " 0.065297925885898445],\n", - " [0.18217787943106764,\n", - " 0.26012791598365387,\n", - " 0.26012791598365387,\n", - " 0.25271844741727612],\n", - " [0.14466520277177872,\n", - " 0.41342012463473371,\n", - " 0.41342012463473371,\n", - " 0.26012791598365387],\n", - " [0.2038857984362778,\n", - " 0.50578586106473944,\n", - " 0.50578586106473944,\n", - " 0.41342012463473371],\n", - " [0.063492373597152457,\n", - " 0.53771333917339426,\n", - " 0.53771333917339426,\n", - " 0.50578586106473944],\n", - " [0.0, 0.02322120556732582, 0.02322120556732582, 0.0],\n", - " [0.0, 0.043481853226375204, 0.043481853226375204, 0.02322120556732582],\n", - " [0.0, 0.033648919224846155, 0.033648919224846155, 0.0],\n", - " [0.0, 0.035040145262255656, 0.035040145262255656, 0.033648919224846155],\n", - " [0.0, 0.03948675520981236, 0.03948675520981236, 0.035040145262255656],\n", - " [0.0, 0.0494967147293639, 0.0494967147293639, 0.0],\n", - " [0.03948675520981236,\n", - " 0.057826544631335103,\n", - " 0.057826544631335103,\n", - " 0.0494967147293639],\n", - " [0.0, 0.062778242417257241, 0.062778242417257241, 0.057826544631335103],\n", - " [0.043481853226375204,\n", - " 0.066824376525339971,\n", - " 0.066824376525339971,\n", - " 0.062778242417257241],\n", - " [0.0, 0.068281707367348912, 0.068281707367348912, 0.066824376525339971],\n", - " [0.0, 0.035510742050822511, 0.035510742050822511, 0.0],\n", - " [0.0, 0.033611791219748589, 0.033611791219748589, 0.0],\n", - " [0.0, 0.035792032185949584, 0.035792032185949584, 0.033611791219748589],\n", - " [0.035510742050822511,\n", - " 0.072353443269826789,\n", - " 0.072353443269826789,\n", - " 0.035792032185949584],\n", - " [0.0, 0.074705136101870934, 0.074705136101870934, 0.072353443269826789],\n", - " [0.0, 0.0062443454420765231, 0.0062443454420765231, 0.0],\n", - " [0.0, 0.01020361788778941, 0.01020361788778941, 0.0062443454420765231],\n", - " [0.0, 0.016600546527149894, 0.016600546527149894, 0.01020361788778941],\n", - " [0.0, 0.017075298708952222, 0.017075298708952222, 0.016600546527149894],\n", - " [0.0, 0.021598562567910533, 0.021598562567910533, 0.017075298708952222],\n", - " [0.0, 0.027308618877562335, 0.027308618877562335, 0.021598562567910533],\n", - " [0.0, 0.020894251003563773, 0.020894251003563773, 0.0],\n", - " [0.0, 0.018154843348266926, 0.018154843348266926, 0.0],\n", - " [0.0, 0.016766904454906553, 0.016766904454906553, 0.0],\n", - " [0.0, 0.0012988248534735168, 0.0012988248534735168, 0.0],\n", - " [0.0, 0.0066730146111051523, 0.0066730146111051523, 0.0],\n", - " [0.0, 0.0097301317565582843, 0.0097301317565582843, 0.0066730146111051523],\n", - " [0.0, 0.011718614807217646, 0.011718614807217646, 0.0],\n", - " [0.0097301317565582843,\n", - " 0.012758337548440343,\n", - " 0.012758337548440343,\n", - " 0.011718614807217646],\n", - " [0.0, 0.015851526424924333, 0.015851526424924333, 0.012758337548440343],\n", - " [0.0012988248534735168,\n", - " 0.016015509139579137,\n", - " 0.016015509139579137,\n", - " 0.015851526424924333],\n", - " [0.0, 0.017131209998127624, 0.017131209998127624, 0.0],\n", - " [0.0, 0.023057346790125735, 0.023057346790125735, 0.017131209998127624],\n", - " [0.016015509139579137,\n", - " 0.026572281798899599,\n", - " 0.026572281798899599,\n", - " 0.023057346790125735],\n", - " [0.016766904454906553,\n", - " 0.027665793174965002,\n", - " 0.027665793174965002,\n", - " 0.026572281798899599],\n", - " [0.018154843348266926,\n", - " 0.031526522691218743,\n", - " 0.031526522691218743,\n", - " 0.027665793174965002],\n", - " [0.020894251003563773,\n", - " 0.034423506227579725,\n", - " 0.034423506227579725,\n", - " 0.031526522691218743],\n", - " [0.0, 0.03543053159352675, 0.03543053159352675, 0.034423506227579725],\n", - " [0.027308618877562335,\n", - " 0.04079198226367859,\n", - " 0.04079198226367859,\n", - " 0.03543053159352675],\n", - " [0.0, 0.042141015282025157, 0.042141015282025157, 0.04079198226367859],\n", - " [0.0, 0.049100646716716247, 0.049100646716716247, 0.042141015282025157],\n", - " [0.0, 0.057636272641450395, 0.057636272641450395, 0.049100646716716247],\n", - " [0.0, 0.077086192855790672, 0.077086192855790672, 0.057636272641450395],\n", - " [0.0, 0.041389942208225977, 0.041389942208225977, 0.0],\n", - " [0.0, 0.050367726978689922, 0.050367726978689922, 0.0],\n", - " [0.0, 0.071596724855259364, 0.071596724855259364, 0.050367726978689922],\n", - " [0.041389942208225977,\n", - " 0.079279314609802184,\n", - " 0.079279314609802184,\n", - " 0.071596724855259364],\n", - " [0.077086192855790672,\n", - " 0.085585415731887146,\n", - " 0.085585415731887146,\n", - " 0.079279314609802184],\n", - " [0.074705136101870934,\n", - " 0.11310160213277254,\n", - " 0.11310160213277254,\n", - " 0.085585415731887146],\n", - " [0.0, 0.11329652835811221, 0.11329652835811221, 0.11310160213277254],\n", - " [0.068281707367348912,\n", - " 0.15856049839099376,\n", - " 0.15856049839099376,\n", - " 0.11329652835811221],\n", - " [0.0, 0.16613860108355624, 0.16613860108355624, 0.15856049839099376],\n", - " [0.0, 0.017413644362973112, 0.017413644362973112, 0.0],\n", - " [0.0, 0.02284384556067711, 0.02284384556067711, 0.017413644362973112],\n", - " [0.0, 0.022945636840149636, 0.022945636840149636, 0.02284384556067711],\n", - " [0.0, 0.029624128679168343, 0.029624128679168343, 0.022945636840149636],\n", - " [0.0, 0.037291622718783148, 0.037291622718783148, 0.0],\n", - " [0.029624128679168343,\n", - " 0.059113064850334254,\n", - " 0.059113064850334254,\n", - " 0.037291622718783148],\n", - " [0.0, 0.1182043363375528, 0.1182043363375528, 0.059113064850334254],\n", - " [0.0, 0.024492951680022156, 0.024492951680022156, 0.0],\n", - " [0.0, 0.019300369167453389, 0.019300369167453389, 0.0],\n", - " [0.0, 0.052473872889278454, 0.052473872889278454, 0.019300369167453389],\n", - " [0.0, 0.060790256011963958, 0.060790256011963958, 0.052473872889278454],\n", - " [0.024492951680022156,\n", - " 0.12111834344970297,\n", - " 0.12111834344970297,\n", - " 0.060790256011963958],\n", - " [0.1182043363375528,\n", - " 0.19165857396161376,\n", - " 0.19165857396161376,\n", - " 0.12111834344970297],\n", - " [0.16613860108355624,\n", - " 0.21544398839837953,\n", - " 0.21544398839837953,\n", - " 0.19165857396161376],\n", - " [0.0, 0.03322555517971347, 0.03322555517971347, 0.0],\n", - " [0.0, 0.046993472280732917, 0.046993472280732917, 0.03322555517971347],\n", - " [0.0, 0.05154279411324357, 0.05154279411324357, 0.0],\n", - " [0.046993472280732917,\n", - " 0.064507183382939898,\n", - " 0.064507183382939898,\n", - " 0.05154279411324357],\n", - " [0.0, 0.10817006743549581, 0.10817006743549581, 0.0],\n", - " [0.064507183382939898,\n", - " 0.11861685027853232,\n", - " 0.11861685027853232,\n", - " 0.10817006743549581],\n", - " [0.0, 0.14313570600307696, 0.14313570600307696, 0.11861685027853232],\n", - " [0.0, 0.049428871279853723, 0.049428871279853723, 0.0],\n", - " [0.0, 0.064652898620246854, 0.064652898620246854, 0.049428871279853723],\n", - " [0.0, 0.085798792742088278, 0.085798792742088278, 0.064652898620246854],\n", - " [0.0, 0.12625295299913028, 0.12625295299913028, 0.0],\n", - " [0.0, 0.060128159293299482, 0.060128159293299482, 0.0],\n", - " [0.0, 0.10111066361665449, 0.10111066361665449, 0.060128159293299482],\n", - " [0.0, 0.051090226981292751, 0.051090226981292751, 0.0],\n", - " [0.0, 0.058254168820781022, 0.058254168820781022, 0.0],\n", - " [0.0, 0.030391366833361067, 0.030391366833361067, 0.0],\n", - " [0.0, 0.01102818285122477, 0.01102818285122477, 0.0],\n", - " [0.0, 0.01165713897146284, 0.01165713897146284, 0.01102818285122477],\n", - " [0.0, 0.023389447620670016, 0.023389447620670016, 0.01165713897146284],\n", - " [0.0, 0.023757545432976934, 0.023757545432976934, 0.023389447620670016],\n", - " [0.0, 0.027586795681993688, 0.027586795681993688, 0.023757545432976934],\n", - " [0.0, 0.034092681164728134, 0.034092681164728134, 0.027586795681993688],\n", - " [0.030391366833361067,\n", - " 0.035557808059553456,\n", - " 0.035557808059553456,\n", - " 0.034092681164728134],\n", - " [0.0, 0.035619799901176231, 0.035619799901176231, 0.035557808059553456],\n", - " [0.0, 0.010712414900475186, 0.010712414900475186, 0.0],\n", - " [0.0, 0.019273954576059796, 0.019273954576059796, 0.0],\n", - " [0.010712414900475186,\n", - " 0.023729070946838508,\n", - " 0.023729070946838508,\n", - " 0.019273954576059796],\n", - " [0.0, 0.025281220401713916, 0.025281220401713916, 0.023729070946838508],\n", - " [0.0, 0.0082922984147945997, 0.0082922984147945997, 0.0],\n", - " [0.0, 0.013781897148071046, 0.013781897148071046, 0.0082922984147945997],\n", - " [0.0, 0.0254555740457756, 0.0254555740457756, 0.013781897148071046],\n", - " [0.025281220401713916,\n", - " 0.036845240479604864,\n", - " 0.036845240479604864,\n", - " 0.0254555740457756],\n", - " [0.035619799901176231,\n", - " 0.039578549708145248,\n", - " 0.039578549708145248,\n", - " 0.036845240479604864],\n", - " [0.0, 0.042492815322122207, 0.042492815322122207, 0.039578549708145248],\n", - " [0.0, 0.046142058655851789, 0.046142058655851789, 0.042492815322122207],\n", - " [0.0, 0.049303235238679577, 0.049303235238679577, 0.046142058655851789],\n", - " [0.0, 0.031816206593497015, 0.031816206593497015, 0.0],\n", - " [0.0, 0.01113069598003754, 0.01113069598003754, 0.0],\n", - " [0.0, 0.019448689236040033, 0.019448689236040033, 0.0],\n", - " [0.0, 0.0098298916575955513, 0.0098298916575955513, 0.0],\n", - " [0.0, 0.020768142165343593, 0.020768142165343593, 0.0098298916575955513],\n", - " [0.019448689236040033,\n", - " 0.036867450711970333,\n", - " 0.036867450711970333,\n", - " 0.020768142165343593],\n", - " [0.01113069598003754,\n", - " 0.040699067704310657,\n", - " 0.040699067704310657,\n", - " 0.036867450711970333],\n", - " [0.0, 0.046452151941538532, 0.046452151941538532, 0.040699067704310657],\n", - " [0.0, 0.021012005758614758, 0.021012005758614758, 0.0],\n", - " [0.0, 0.032414164342151108, 0.032414164342151108, 0.021012005758614758],\n", - " [0.0, 0.032655006415554182, 0.032655006415554182, 0.032414164342151108],\n", - " [0.0, 0.012349729430234997, 0.012349729430234997, 0.0],\n", - " [0.0, 0.007636644943952102, 0.007636644943952102, 0.0],\n", - " [0.0, 0.014977918580362059, 0.014977918580362059, 0.007636644943952102],\n", - " [0.0, 0.0062592338988058296, 0.0062592338988058296, 0.0],\n", - " [0.0, 0.0083057934599854548, 0.0083057934599854548, 0.0062592338988058296],\n", - " [0.0, 0.018779440353749632, 0.018779440353749632, 0.0],\n", - " [0.0, 0.0273894706228489, 0.0273894706228489, 0.018779440353749632],\n", - " [0.0, 0.0093913239215786624, 0.0093913239215786624, 0.0],\n", - " [0.0, 0.010902217939483417, 0.010902217939483417, 0.0],\n", - " [0.0093913239215786624,\n", - " 0.0177223892858752,\n", - " 0.0177223892858752,\n", - " 0.010902217939483417],\n", - " [0.0, 0.0071440417831917322, 0.0071440417831917322, 0.0],\n", - " [0.0, 0.0085210825603315287, 0.0085210825603315287, 0.0071440417831917322],\n", - " [0.0, 0.015684244451044004, 0.015684244451044004, 0.0085210825603315287],\n", - " [0.0, 0.0053428454029697788, 0.0053428454029697788, 0.0],\n", - " [0.0, 0.0073037700538798695, 0.0073037700538798695, 0.0053428454029697788],\n", - " [0.0, 0.02146832317624851, 0.02146832317624851, 0.0073037700538798695],\n", - " [0.015684244451044004,\n", - " 0.021619005805076804,\n", - " 0.021619005805076804,\n", - " 0.02146832317624851],\n", - " [0.0177223892858752,\n", - " 0.028971548957551555,\n", - " 0.028971548957551555,\n", - " 0.021619005805076804],\n", - " [0.0273894706228489,\n", - " 0.030880190171047116,\n", - " 0.030880190171047116,\n", - " 0.028971548957551555],\n", - " [0.0083057934599854548,\n", - " 0.031512652760440088,\n", - " 0.031512652760440088,\n", - " 0.030880190171047116],\n", - " [0.0, 0.0051513913654497685, 0.0051513913654497685, 0.0],\n", - " [0.0, 0.016295745610431955, 0.016295745610431955, 0.0051513913654497685],\n", - " [0.0, 0.012841683106196539, 0.012841683106196539, 0.0],\n", - " [0.0, 0.01064385691373081, 0.01064385691373081, 0.0],\n", - " [0.0, 0.015250019278677725, 0.015250019278677725, 0.01064385691373081],\n", - " [0.012841683106196539,\n", - " 0.027586549077405022,\n", - " 0.027586549077405022,\n", - " 0.015250019278677725],\n", - " [0.0, 0.0077506813248888178, 0.0077506813248888178, 0.0],\n", - " [0.0, 0.019767610503044149, 0.019767610503044149, 0.0],\n", - " [0.0077506813248888178,\n", - " 0.022563988698805017,\n", - " 0.022563988698805017,\n", - " 0.019767610503044149],\n", - " [0.0, 0.0059087915854253055, 0.0059087915854253055, 0.0],\n", - " [0.0, 0.008630485096450426, 0.008630485096450426, 0.0],\n", - " [0.0059087915854253055,\n", - " 0.017159138556464212,\n", - " 0.017159138556464212,\n", - " 0.008630485096450426],\n", - " [0.0, 0.022124187533104099, 0.022124187533104099, 0.017159138556464212],\n", - " [0.0, 0.024333951364303639, 0.024333951364303639, 0.022124187533104099],\n", - " [0.022563988698805017,\n", - " 0.02499468201438038,\n", - " 0.02499468201438038,\n", - " 0.024333951364303639],\n", - " [0.0, 0.0058550522627899924, 0.0058550522627899924, 0.0],\n", - " [0.0, 0.014413012072429567, 0.014413012072429567, 0.0058550522627899924],\n", - " [0.0, 0.017138794006578244, 0.017138794006578244, 0.014413012072429567],\n", - " [0.0, 0.020950258470960322, 0.020950258470960322, 0.017138794006578244],\n", - " [0.0, 0.022560384859309481, 0.022560384859309481, 0.020950258470960322],\n", - " [0.0, 0.0090426025567859544, 0.0090426025567859544, 0.0],\n", - " [0.0, 0.019297017412024574, 0.019297017412024574, 0.0090426025567859544],\n", - " [0.0, 0.019473089636731496, 0.019473089636731496, 0.019297017412024574],\n", - " [0.0, 0.024382640074448233, 0.024382640074448233, 0.019473089636731496],\n", - " [0.0, 0.026672325676623206, 0.026672325676623206, 0.024382640074448233],\n", - " [0.022560384859309481,\n", - " 0.02673221371304434,\n", - " 0.02673221371304434,\n", - " 0.026672325676623206],\n", - " [0.02499468201438038,\n", - " 0.027507760686760179,\n", - " 0.027507760686760179,\n", - " 0.02673221371304434],\n", - " [0.0, 0.011636177422157478, 0.011636177422157478, 0.0],\n", - " [0.0, 0.021471676692796735, 0.021471676692796735, 0.0],\n", - " [0.011636177422157478,\n", - " 0.029939050519345627,\n", - " 0.029939050519345627,\n", - " 0.021471676692796735],\n", - " [0.027507760686760179,\n", - " 0.03238405919584373,\n", - " 0.03238405919584373,\n", - " 0.029939050519345627],\n", - " [0.027586549077405022,\n", - " 0.032538444600194491,\n", - " 0.032538444600194491,\n", - " 0.03238405919584373],\n", - " [0.016295745610431955,\n", - " 0.032938793860734096,\n", - " 0.032938793860734096,\n", - " 0.032538444600194491],\n", - " [0.031512652760440088,\n", - " 0.033027003406304344,\n", - " 0.033027003406304344,\n", - " 0.032938793860734096],\n", - " [0.014977918580362059,\n", - " 0.035948262447581654,\n", - " 0.035948262447581654,\n", - " 0.033027003406304344],\n", - " [0.012349729430234997,\n", - " 0.037585491735507841,\n", - " 0.037585491735507841,\n", - " 0.035948262447581654],\n", - " [0.0, 0.039967135223833397, 0.039967135223833397, 0.037585491735507841],\n", - " [0.0, 0.042069311784247498, 0.042069311784247498, 0.039967135223833397],\n", - " [0.0, 0.045382767225017509, 0.045382767225017509, 0.042069311784247498],\n", - " [0.0, 0.035401293902906278, 0.035401293902906278, 0.0],\n", - " [0.0, 0.035812854186729415, 0.035812854186729415, 0.035401293902906278],\n", - " [0.0, 0.013318653685716626, 0.013318653685716626, 0.0],\n", - " [0.0, 0.0046469802022372055, 0.0046469802022372055, 0.0],\n", - " [0.0, 0.0066843494821871262, 0.0066843494821871262, 0.0],\n", - " [0.0, 0.011573200292056286, 0.011573200292056286, 0.0066843494821871262],\n", - " [0.0046469802022372055,\n", - " 0.013399888395056543,\n", - " 0.013399888395056543,\n", - " 0.011573200292056286],\n", - " [0.013318653685716626,\n", - " 0.022303453723582344,\n", - " 0.022303453723582344,\n", - " 0.013399888395056543],\n", - " [0.0, 0.0297469320939126, 0.0297469320939126, 0.0],\n", - " [0.022303453723582344,\n", - " 0.030500858283005357,\n", - " 0.030500858283005357,\n", - " 0.0297469320939126],\n", - " [0.0, 0.0073414811175929583, 0.0073414811175929583, 0.0],\n", - " [0.0, 0.017510936725372288, 0.017510936725372288, 0.0],\n", - " [0.0, 0.034598020131214817, 0.034598020131214817, 0.017510936725372288],\n", - " [0.0073414811175929583,\n", - " 0.0372574807656137,\n", - " 0.0372574807656137,\n", - " 0.034598020131214817],\n", - " [0.0, 0.039140003027591692, 0.039140003027591692, 0.0372574807656137],\n", - " [0.030500858283005357,\n", - " 0.040594279104326579,\n", - " 0.040594279104326579,\n", - " 0.039140003027591692],\n", - " [0.035812854186729415,\n", - " 0.044549720762308627,\n", - " 0.044549720762308627,\n", - " 0.040594279104326579],\n", - " [0.0, 0.048140260281805659, 0.048140260281805659, 0.044549720762308627],\n", - " [0.0, 0.048552255529481447, 0.048552255529481447, 0.048140260281805659],\n", - " [0.045382767225017509,\n", - " 0.048948604413199079,\n", - " 0.048948604413199079,\n", - " 0.048552255529481447],\n", - " [0.032655006415554182,\n", - " 0.050750001871923647,\n", - " 0.050750001871923647,\n", - " 0.048948604413199079],\n", - " [0.0, 0.051036910417853638, 0.051036910417853638, 0.050750001871923647],\n", - " [0.0, 0.052028779978006874, 0.052028779978006874, 0.051036910417853638],\n", - " [0.046452151941538532,\n", - " 0.052229994495498581,\n", - " 0.052229994495498581,\n", - " 0.052028779978006874],\n", - " [0.0, 0.054336488311267667, 0.054336488311267667, 0.052229994495498581],\n", - " [0.031816206593497015,\n", - " 0.055016754220875493,\n", - " 0.055016754220875493,\n", - " 0.054336488311267667],\n", - " [0.049303235238679577,\n", - " 0.056775598719874455,\n", - " 0.056775598719874455,\n", - " 0.055016754220875493],\n", - " [0.0, 0.065059916077413557, 0.065059916077413557, 0.056775598719874455],\n", - " [0.0, 0.069677414999407328, 0.069677414999407328, 0.065059916077413557],\n", - " [0.0, 0.051599814612071353, 0.051599814612071353, 0.0],\n", - " [0.0, 0.044883700571589628, 0.044883700571589628, 0.0],\n", - " [0.0, 0.06436661464610216, 0.06436661464610216, 0.044883700571589628],\n", - " [0.0, 0.021131775812739808, 0.021131775812739808, 0.0],\n", - " [0.0, 0.015260473944149268, 0.015260473944149268, 0.0],\n", - " [0.0, 0.046785440470303162, 0.046785440470303162, 0.015260473944149268],\n", - " [0.0, 0.052233444353210708, 0.052233444353210708, 0.046785440470303162],\n", - " [0.0, 0.0137345275856146, 0.0137345275856146, 0.0],\n", - " [0.0, 0.016439016181025917, 0.016439016181025917, 0.0],\n", - " [0.0137345275856146,\n", - " 0.032808092919279545,\n", - " 0.032808092919279545,\n", - " 0.016439016181025917],\n", - " [0.0, 0.020149521731296201, 0.020149521731296201, 0.0],\n", - " [0.0, 0.021685105971609574, 0.021685105971609574, 0.020149521731296201],\n", - " [0.0, 0.014724365690921292, 0.014724365690921292, 0.0],\n", - " [0.0, 0.023304358090278941, 0.023304358090278941, 0.014724365690921292],\n", - " [0.021685105971609574,\n", - " 0.023673159865132225,\n", - " 0.023673159865132225,\n", - " 0.023304358090278941],\n", - " [0.0, 0.024251056162566377, 0.024251056162566377, 0.0],\n", - " [0.023673159865132225,\n", - " 0.024600125568786518,\n", - " 0.024600125568786518,\n", - " 0.024251056162566377],\n", - " [0.0, 0.014163843828564809, 0.014163843828564809, 0.0],\n", - " [0.0, 0.021100629374501675, 0.021100629374501675, 0.014163843828564809],\n", - " [0.0, 0.018618540463742003, 0.018618540463742003, 0.0],\n", - " [0.0, 0.025554908608718604, 0.025554908608718604, 0.018618540463742003],\n", - " [0.021100629374501675,\n", - " 0.031745822087324092,\n", - " 0.031745822087324092,\n", - " 0.025554908608718604],\n", - " [0.024600125568786518,\n", - " 0.032058863984864787,\n", - " 0.032058863984864787,\n", - " 0.031745822087324092],\n", - " [0.0, 0.045239892484400107, 0.045239892484400107, 0.032058863984864787],\n", - " [0.032808092919279545,\n", - " 0.046524549756014506,\n", - " 0.046524549756014506,\n", - " 0.045239892484400107],\n", - " [0.0, 0.016222695460373793, 0.016222695460373793, 0.0],\n", - " [0.0, 0.019616465328899286, 0.019616465328899286, 0.016222695460373793],\n", - " [0.0, 0.0056924280408281206, 0.0056924280408281206, 0.0],\n", - " [0.0, 0.0035933076684293444, 0.0035933076684293444, 0.0],\n", - " [0.0, 0.01369389418682869, 0.01369389418682869, 0.0035933076684293444],\n", - " [0.0, 0.018612025198781756, 0.018612025198781756, 0.01369389418682869],\n", - " [0.0056924280408281206,\n", - " 0.019809313996197654,\n", - " 0.019809313996197654,\n", - " 0.018612025198781756],\n", - " [0.019616465328899286,\n", - " 0.030304598495936017,\n", - " 0.030304598495936017,\n", - " 0.019809313996197654],\n", - " [0.0, 0.030734927232710266, 0.030734927232710266, 0.030304598495936017],\n", - " [0.0, 0.046167124547667929, 0.046167124547667929, 0.030734927232710266],\n", - " [0.0, 0.01076157181827392, 0.01076157181827392, 0.0],\n", - " [0.0, 0.011297589698694601, 0.011297589698694601, 0.0],\n", - " [0.0, 0.0041629341815617752, 0.0041629341815617752, 0.0],\n", - " [0.0, 0.0059443644740176556, 0.0059443644740176556, 0.0041629341815617752],\n", - " [0.0, 0.016931785759332563, 0.016931785759332563, 0.0059443644740176556],\n", - " [0.011297589698694601,\n", - " 0.026369407463954359,\n", - " 0.026369407463954359,\n", - " 0.016931785759332563],\n", - " [0.01076157181827392,\n", - " 0.028656463023199533,\n", - " 0.028656463023199533,\n", - " 0.026369407463954359],\n", - " [0.0, 0.029381362681128745, 0.029381362681128745, 0.028656463023199533],\n", - " [0.0, 0.0084102238376870878, 0.0084102238376870878, 0.0],\n", - " [0.0, 0.0091624909276858801, 0.0091624909276858801, 0.0084102238376870878],\n", - " [0.0, 0.01077032966069091, 0.01077032966069091, 0.0],\n", - " [0.0, 0.02642867739785822, 0.02642867739785822, 0.01077032966069091],\n", - " [0.0091624909276858801,\n", - " 0.026866084381618523,\n", - " 0.026866084381618523,\n", - " 0.02642867739785822],\n", - " [0.0, 0.011909567414477181, 0.011909567414477181, 0.0],\n", - " [0.0, 0.028205078833434323, 0.028205078833434323, 0.011909567414477181],\n", - " [0.026866084381618523,\n", - " 0.038497415043092051,\n", - " 0.038497415043092051,\n", - " 0.028205078833434323],\n", - " [0.029381362681128745,\n", - " 0.047961738354649133,\n", - " 0.047961738354649133,\n", - " 0.038497415043092051],\n", - " [0.0, 0.048114040050698498, 0.048114040050698498, 0.047961738354649133],\n", - " [0.046167124547667929,\n", - " 0.050103938547782084,\n", - " 0.050103938547782084,\n", - " 0.048114040050698498],\n", - " [0.0, 0.051023251738789258, 0.051023251738789258, 0.050103938547782084],\n", - " [0.046524549756014506,\n", - " 0.055902345183362602,\n", - " 0.055902345183362602,\n", - " 0.051023251738789258],\n", - " [0.0, 0.0076407341270326471, 0.0076407341270326471, 0.0],\n", - " [0.0, 0.013919048387015666, 0.013919048387015666, 0.0076407341270326471],\n", - " [0.0, 0.041445750421485225, 0.041445750421485225, 0.0],\n", - " [0.0, 0.052079872551689138, 0.052079872551689138, 0.041445750421485225],\n", - " [0.0, 0.054492442861373475, 0.054492442861373475, 0.052079872551689138],\n", - " [0.013919048387015666,\n", - " 0.055528120596687644,\n", - " 0.055528120596687644,\n", - " 0.054492442861373475],\n", - " [0.0, 0.059601139603197809, 0.059601139603197809, 0.055528120596687644],\n", - " [0.055902345183362602,\n", - " 0.061280774619776497,\n", - " 0.061280774619776497,\n", - " 0.059601139603197809],\n", - " [0.052233444353210708,\n", - " 0.062762024983260209,\n", - " 0.062762024983260209,\n", - " 0.061280774619776497],\n", - " [0.021131775812739808,\n", - " 0.064499172165227353,\n", - " 0.064499172165227353,\n", - " 0.062762024983260209],\n", - " [0.06436661464610216,\n", - " 0.065802444065551177,\n", - " 0.065802444065551177,\n", - " 0.064499172165227353],\n", - " [0.051599814612071353,\n", - " 0.066879755479518896,\n", - " 0.066879755479518896,\n", - " 0.065802444065551177],\n", - " [0.0, 0.07440920788450868, 0.07440920788450868, 0.066879755479518896],\n", - " [0.0, 0.077259789832745299, 0.077259789832745299, 0.07440920788450868],\n", - " [0.069677414999407328,\n", - " 0.082001113803410464,\n", - " 0.082001113803410464,\n", - " 0.077259789832745299],\n", - " [0.058254168820781022,\n", - " 0.095042493580497739,\n", - " 0.095042493580497739,\n", - " 0.082001113803410464],\n", - " [0.051090226981292751,\n", - " 0.09967525520408857,\n", - " 0.09967525520408857,\n", - " 0.095042493580497739],\n", - " [0.0, 0.10950197927435081, 0.10950197927435081, 0.09967525520408857],\n", - " [0.0, 0.11077951518669865, 0.11077951518669865, 0.10950197927435081],\n", - " [0.10111066361665449,\n", - " 0.11555191689453123,\n", - " 0.11555191689453123,\n", - " 0.11077951518669865],\n", - " [0.0, 0.039866732722909297, 0.039866732722909297, 0.0],\n", - " [0.0, 0.01027425330620076, 0.01027425330620076, 0.0],\n", - " [0.0, 0.011919113431794071, 0.011919113431794071, 0.01027425330620076],\n", - " [0.0, 0.055730433346604796, 0.055730433346604796, 0.0],\n", - " [0.0, 0.024681889413088541, 0.024681889413088541, 0.0],\n", - " [0.0, 0.035478069860125916, 0.035478069860125916, 0.024681889413088541],\n", - " [0.0, 0.020684652523065179, 0.020684652523065179, 0.0],\n", - " [0.0, 0.038980281489488171, 0.038980281489488171, 0.020684652523065179],\n", - " [0.0, 0.024372920978001533, 0.024372920978001533, 0.0],\n", - " [0.0, 0.018346030006518983, 0.018346030006518983, 0.0],\n", - " [0.0, 0.027341748316448127, 0.027341748316448127, 0.0],\n", - " [0.0, 0.021234599713671615, 0.021234599713671615, 0.0],\n", - " [0.0, 0.013093907361825545, 0.013093907361825545, 0.0],\n", - " [0.0, 0.022318347833118174, 0.022318347833118174, 0.0],\n", - " [0.013093907361825545,\n", - " 0.022772686907780497,\n", - " 0.022772686907780497,\n", - " 0.022318347833118174],\n", - " [0.0, 0.0056783899126457106, 0.0056783899126457106, 0.0],\n", - " [0.0, 0.016466290322958675, 0.016466290322958675, 0.0],\n", - " [0.0056783899126457106,\n", - " 0.028379395694765872,\n", - " 0.028379395694765872,\n", - " 0.016466290322958675],\n", - " [0.022772686907780497,\n", - " 0.029445952693025093,\n", - " 0.029445952693025093,\n", - " 0.028379395694765872],\n", - " [0.021234599713671615,\n", - " 0.032988260942343077,\n", - " 0.032988260942343077,\n", - " 0.029445952693025093],\n", - " [0.027341748316448127,\n", - " 0.036870429520147088,\n", - " 0.036870429520147088,\n", - " 0.032988260942343077],\n", - " [0.018346030006518983,\n", - " 0.039364542471622382,\n", - " 0.039364542471622382,\n", - " 0.036870429520147088],\n", - " [0.024372920978001533,\n", - " 0.040472677796260868,\n", - " 0.040472677796260868,\n", - " 0.039364542471622382],\n", - " [0.0, 0.040771327192034863, 0.040771327192034863, 0.040472677796260868],\n", - " [0.038980281489488171,\n", - " 0.042055656563656105,\n", - " 0.042055656563656105,\n", - " 0.040771327192034863],\n", - " [0.035478069860125916,\n", - " 0.045174317349574541,\n", - " 0.045174317349574541,\n", - " 0.042055656563656105],\n", - " [0.0, 0.052035893861830933, 0.052035893861830933, 0.045174317349574541],\n", - " [0.0, 0.054962677345631816, 0.054962677345631816, 0.0],\n", - " [0.0, 0.056014525482235719, 0.056014525482235719, 0.0],\n", - " [0.054962677345631816,\n", - " 0.065360152050001813,\n", - " 0.065360152050001813,\n", - " 0.056014525482235719],\n", - " [0.052035893861830933,\n", - " 0.067762307701261792,\n", - " 0.067762307701261792,\n", - " 0.065360152050001813],\n", - " [0.0, 0.017197665015923631, 0.017197665015923631, 0.0],\n", - " [0.0, 0.017465485106344946, 0.017465485106344946, 0.017197665015923631],\n", - " [0.0, 0.027386559714576153, 0.027386559714576153, 0.017465485106344946],\n", - " [0.0, 0.030152866613307773, 0.030152866613307773, 0.027386559714576153],\n", - " [0.0, 0.0058109835656279885, 0.0058109835656279885, 0.0],\n", - " [0.0, 0.0091435785117197337, 0.0091435785117197337, 0.0],\n", - " [0.0, 0.023132489446661166, 0.023132489446661166, 0.0091435785117197337],\n", - " [0.0, 0.027930348959505649, 0.027930348959505649, 0.023132489446661166],\n", - " [0.0058109835656279885,\n", - " 0.048290348373150133,\n", - " 0.048290348373150133,\n", - " 0.027930348959505649],\n", - " [0.030152866613307773,\n", - " 0.049585642327188359,\n", - " 0.049585642327188359,\n", - " 0.048290348373150133],\n", - " [0.0, 0.058547139451898773, 0.058547139451898773, 0.049585642327188359],\n", - " [0.0, 0.014464590315661248, 0.014464590315661248, 0.0],\n", - " [0.0, 0.020266035626143205, 0.020266035626143205, 0.014464590315661248],\n", - " [0.0, 0.064920691316404738, 0.064920691316404738, 0.020266035626143205],\n", - " [0.058547139451898773,\n", - " 0.067923619514865086,\n", - " 0.067923619514865086,\n", - " 0.064920691316404738],\n", - " [0.067762307701261792,\n", - " 0.075271684350757845,\n", - " 0.075271684350757845,\n", - " 0.067923619514865086],\n", - " [0.0, 0.078153590966763914, 0.078153590966763914, 0.075271684350757845],\n", - " [0.0, 0.079758459388331288, 0.079758459388331288, 0.078153590966763914],\n", - " [0.055730433346604796,\n", - " 0.080054574510144708,\n", - " 0.080054574510144708,\n", - " 0.079758459388331288],\n", - " [0.0, 0.050952970561095226, 0.050952970561095226, 0.0],\n", - " [0.0, 0.074337752595836998, 0.074337752595836998, 0.050952970561095226],\n", - " [0.0, 0.030426365836226758, 0.030426365836226758, 0.0],\n", - " [0.0, 0.014927672457555113, 0.014927672457555113, 0.0],\n", - " [0.0, 0.021243974039712784, 0.021243974039712784, 0.014927672457555113],\n", - " [0.0, 0.022446473687419886, 0.022446473687419886, 0.021243974039712784],\n", - " [0.0, 0.0231434262156648, 0.0231434262156648, 0.022446473687419886],\n", - " [0.0, 0.024628385777391442, 0.024628385777391442, 0.0231434262156648],\n", - " [0.0, 0.028763803729688616, 0.028763803729688616, 0.024628385777391442],\n", - " [0.0, 0.036741527200159801, 0.036741527200159801, 0.0],\n", - " [0.028763803729688616,\n", - " 0.054450935657706187,\n", - " 0.054450935657706187,\n", - " 0.036741527200159801],\n", - " [0.030426365836226758,\n", - " 0.064341751584799239,\n", - " 0.064341751584799239,\n", - " 0.054450935657706187],\n", - " [0.0, 0.030989071880260323, 0.030989071880260323, 0.0],\n", - " [0.0, 0.053075533195629236, 0.053075533195629236, 0.030989071880260323],\n", - " [0.0, 0.067235482433011654, 0.067235482433011654, 0.053075533195629236],\n", - " [0.064341751584799239,\n", - " 0.073138931971966692,\n", - " 0.073138931971966692,\n", - " 0.067235482433011654],\n", - " [0.0, 0.0055431923112981589, 0.0055431923112981589, 0.0],\n", - " [0.0, 0.012077838879532014, 0.012077838879532014, 0.0055431923112981589],\n", - " [0.0, 0.0068351398668917039, 0.0068351398668917039, 0.0],\n", - " [0.0, 0.010783044560791643, 0.010783044560791643, 0.0],\n", - " [0.0, 0.014798150053303297, 0.014798150053303297, 0.0],\n", - " [0.010783044560791643,\n", - " 0.018660801402939357,\n", - " 0.018660801402939357,\n", - " 0.014798150053303297],\n", - " [0.0068351398668917039,\n", - " 0.019902707579625162,\n", - " 0.019902707579625162,\n", - " 0.018660801402939357],\n", - " [0.012077838879532014,\n", - " 0.02051796919774981,\n", - " 0.02051796919774981,\n", - " 0.019902707579625162],\n", - " [0.0, 0.021978706968336512, 0.021978706968336512, 0.02051796919774981],\n", - " [0.0, 0.022035860319035872, 0.022035860319035872, 0.021978706968336512],\n", - " [0.0, 0.022656066759259484, 0.022656066759259484, 0.022035860319035872],\n", - " [0.0, 0.025145320061589836, 0.025145320061589836, 0.022656066759259484],\n", - " [0.0, 0.025808407564207946, 0.025808407564207946, 0.025145320061589836],\n", - " [0.0, 0.014457127238842139, 0.014457127238842139, 0.0],\n", - " [0.0, 0.014570593570613476, 0.014570593570613476, 0.014457127238842139],\n", - " [0.0, 0.027871167126618839, 0.027871167126618839, 0.014570593570613476],\n", - " [0.025808407564207946,\n", - " 0.029581323989977034,\n", - " 0.029581323989977034,\n", - " 0.027871167126618839],\n", - " [0.0, 0.031259943777944117, 0.031259943777944117, 0.029581323989977034],\n", - " [0.0, 0.022272909396843697, 0.022272909396843697, 0.0],\n", - " [0.0, 0.033204406243750977, 0.033204406243750977, 0.022272909396843697],\n", - " [0.0, 0.061885653111205502, 0.061885653111205502, 0.033204406243750977],\n", - " [0.0, 0.069569479378529392, 0.069569479378529392, 0.061885653111205502],\n", - " [0.031259943777944117,\n", - " 0.073646722893822181,\n", - " 0.073646722893822181,\n", - " 0.069569479378529392],\n", - " [0.073138931971966692,\n", - " 0.074923862754133541,\n", - " 0.074923862754133541,\n", - " 0.073646722893822181],\n", - " [0.0, 0.080240795017247263, 0.080240795017247263, 0.074923862754133541],\n", - " [0.0, 0.080487906079114976, 0.080487906079114976, 0.080240795017247263],\n", - " [0.074337752595836998,\n", - " 0.083632655679465789,\n", - " 0.083632655679465789,\n", - " 0.080487906079114976],\n", - " [0.080054574510144708,\n", - " 0.085898054558881054,\n", - " 0.085898054558881054,\n", - " 0.083632655679465789],\n", - " [0.0, 0.089418531636345805, 0.089418531636345805, 0.085898054558881054],\n", - " [0.011919113431794071,\n", - " 0.091454013148686689,\n", - " 0.091454013148686689,\n", - " 0.089418531636345805],\n", - " [0.039866732722909297,\n", - " 0.10084720982754217,\n", - " 0.10084720982754217,\n", - " 0.091454013148686689],\n", - " [0.0, 0.029756842910495296, 0.029756842910495296, 0.0],\n", - " [0.0, 0.030795043757070133, 0.030795043757070133, 0.0],\n", - " [0.029756842910495296,\n", - " 0.063801084144398404,\n", - " 0.063801084144398404,\n", - " 0.030795043757070133],\n", - " [0.0, 0.017936184767111462, 0.017936184767111462, 0.0],\n", - " [0.0, 0.029486984959470625, 0.029486984959470625, 0.017936184767111462],\n", - " [0.0, 0.0273646985731665, 0.0273646985731665, 0.0],\n", - " [0.0, 0.03115248744482051, 0.03115248744482051, 0.0273646985731665],\n", - " [0.029486984959470625,\n", - " 0.053224468358078175,\n", - " 0.053224468358078175,\n", - " 0.03115248744482051],\n", - " [0.0, 0.05616634334724048, 0.05616634334724048, 0.053224468358078175],\n", - " [0.0, 0.070950560054167, 0.070950560054167, 0.05616634334724048],\n", - " [0.0, 0.095845501772383712, 0.095845501772383712, 0.070950560054167],\n", - " [0.063801084144398404,\n", - " 0.1083897176396364,\n", - " 0.1083897176396364,\n", - " 0.095845501772383712],\n", - " [0.10084720982754217,\n", - " 0.10996417595744262,\n", - " 0.10996417595744262,\n", - " 0.1083897176396364],\n", - " [0.0, 0.11250178114145611, 0.11250178114145611, 0.10996417595744262],\n", - " [0.0, 0.11857866962064031, 0.11857866962064031, 0.11250178114145611],\n", - " [0.11555191689453123,\n", - " 0.1251572841907328,\n", - " 0.1251572841907328,\n", - " 0.11857866962064031],\n", - " [0.0, 0.13043172706439307, 0.13043172706439307, 0.1251572841907328],\n", - " [0.12625295299913028,\n", - " 0.13182692247792407,\n", - " 0.13182692247792407,\n", - " 0.13043172706439307],\n", - " [0.0, 0.15759386435074224, 0.15759386435074224, 0.13182692247792407],\n", - " [0.085798792742088278,\n", - " 0.16748795439075173,\n", - " 0.16748795439075173,\n", - " 0.15759386435074224],\n", - " [0.0, 0.16986891259144291, 0.16986891259144291, 0.16748795439075173],\n", - " [0.0, 0.17602481258334002, 0.17602481258334002, 0.16986891259144291],\n", - " [0.0, 0.18043829390680716, 0.18043829390680716, 0.17602481258334002],\n", - " [0.0, 0.21034746155111583, 0.21034746155111583, 0.18043829390680716],\n", - " [0.14313570600307696,\n", - " 0.22021919571418017,\n", - " 0.22021919571418017,\n", - " 0.21034746155111583],\n", - " [0.0, 0.24030772835054848, 0.24030772835054848, 0.22021919571418017],\n", - " [0.21544398839837953,\n", - " 0.24654326890426465,\n", - " 0.24654326890426465,\n", - " 0.24030772835054848],\n", - " [0.0, 0.24792203139091623, 0.24792203139091623, 0.24654326890426465],\n", - " [0.0, 0.26807768341471488, 0.26807768341471488, 0.24792203139091623],\n", - " [0.0, 0.32271848292435873, 0.32271848292435873, 0.26807768341471488],\n", - " [0.0, 0.39010566036651939, 0.39010566036651939, 0.32271848292435873],\n", - " [0.0, 0.026284500832239863, 0.026284500832239863, 0.0],\n", - " [0.0, 0.032735359246535554, 0.032735359246535554, 0.0],\n", - " [0.0, 0.0076007621986218105, 0.0076007621986218105, 0.0],\n", - " [0.0, 0.037723807827418437, 0.037723807827418437, 0.0076007621986218105],\n", - " [0.032735359246535554,\n", - " 0.048929068006656744,\n", - " 0.048929068006656744,\n", - " 0.037723807827418437],\n", - " [0.026284500832239863,\n", - " 0.058556921111002379,\n", - " 0.058556921111002379,\n", - " 0.048929068006656744],\n", - " [0.0, 0.045158268356967242, 0.045158268356967242, 0.0],\n", - " [0.0, 0.054046047219017693, 0.054046047219017693, 0.0],\n", - " [0.0, 0.072295485924086397, 0.072295485924086397, 0.054046047219017693],\n", - " [0.045158268356967242,\n", - " 0.083169540578266893,\n", - " 0.083169540578266893,\n", - " 0.072295485924086397],\n", - " [0.058556921111002379,\n", - " 0.086808092019119792,\n", - " 0.086808092019119792,\n", - " 0.083169540578266893],\n", - " [0.0, 0.10861370847181195, 0.10861370847181195, 0.086808092019119792],\n", - " [0.0, 0.023689912494564168, 0.023689912494564168, 0.0],\n", - " [0.0, 0.015333195524741043, 0.015333195524741043, 0.0],\n", - " [0.0, 0.015509542997779171, 0.015509542997779171, 0.0],\n", - " [0.0, 0.017118712013469241, 0.017118712013469241, 0.015509542997779171],\n", - " [0.0, 0.0028318474535224147, 0.0028318474535224147, 0.0],\n", - " [0.0, 0.011472344572926006, 0.011472344572926006, 0.0028318474535224147],\n", - " [0.0, 0.013719866617426349, 0.013719866617426349, 0.011472344572926006],\n", - " [0.0, 0.03177230871372063, 0.03177230871372063, 0.013719866617426349],\n", - " [0.0, 0.005953351073134763, 0.005953351073134763, 0.0],\n", - " [0.0, 0.0082073919121754928, 0.0082073919121754928, 0.005953351073134763],\n", - " [0.0, 0.012725073241441192, 0.012725073241441192, 0.0],\n", - " [0.0082073919121754928,\n", - " 0.016472262807515146,\n", - " 0.016472262807515146,\n", - " 0.012725073241441192],\n", - " [0.0, 0.021456732113724529, 0.021456732113724529, 0.016472262807515146],\n", - " [0.0, 0.0055457599118598159, 0.0055457599118598159, 0.0],\n", - " [0.0, 0.017923560165323024, 0.017923560165323024, 0.0055457599118598159],\n", - " [0.0, 0.023036479440229792, 0.023036479440229792, 0.017923560165323024],\n", - " [0.021456732113724529,\n", - " 0.026548246137926113,\n", - " 0.026548246137926113,\n", - " 0.023036479440229792],\n", - " [0.0, 0.033658906131957211, 0.033658906131957211, 0.0],\n", - " [0.0, 0.028408519162390518, 0.028408519162390518, 0.0],\n", - " [0.0, 0.030778211124103286, 0.030778211124103286, 0.028408519162390518],\n", - " [0.0, 0.0036211242729325163, 0.0036211242729325163, 0.0],\n", - " [0.0, 0.016688336435965515, 0.016688336435965515, 0.0036211242729325163],\n", - " [0.0, 0.029244836433116556, 0.029244836433116556, 0.016688336435965515],\n", - " [0.0, 0.011806660916620956, 0.011806660916620956, 0.0],\n", - " [0.0, 0.012261657718270725, 0.012261657718270725, 0.0],\n", - " [0.0, 0.016796586349611009, 0.016796586349611009, 0.012261657718270725],\n", - " [0.011806660916620956,\n", - " 0.017795631430210856,\n", - " 0.017795631430210856,\n", - " 0.016796586349611009],\n", - " [0.0, 0.009812384827347545, 0.009812384827347545, 0.0],\n", - " [0.0, 0.0099850630944424059, 0.0099850630944424059, 0.009812384827347545],\n", - " [0.0, 0.010036538098372266, 0.010036538098372266, 0.0099850630944424059],\n", - " [0.0, 0.011989018391845248, 0.011989018391845248, 0.010036538098372266],\n", - " [0.0, 0.018333692072248449, 0.018333692072248449, 0.011989018391845248],\n", - " [0.017795631430210856,\n", - " 0.021737709653962468,\n", - " 0.021737709653962468,\n", - " 0.018333692072248449],\n", - " [0.0, 0.015184981560736607, 0.015184981560736607, 0.0],\n", - " [0.0, 0.023370877818347277, 0.023370877818347277, 0.015184981560736607],\n", - " [0.021737709653962468,\n", - " 0.025817889398628356,\n", - " 0.025817889398628356,\n", - " 0.023370877818347277],\n", - " [0.0, 0.030439427097105485, 0.030439427097105485, 0.025817889398628356],\n", - " [0.029244836433116556,\n", - " 0.030618291003910184,\n", - " 0.030618291003910184,\n", - " 0.030439427097105485],\n", - " [0.0, 0.010780660091105712, 0.010780660091105712, 0.0],\n", - " [0.0, 0.014116470982507642, 0.014116470982507642, 0.010780660091105712],\n", - " [0.0, 0.015381706829865336, 0.015381706829865336, 0.014116470982507642],\n", - " [0.0, 0.011960236828759825, 0.011960236828759825, 0.0],\n", - " [0.0, 0.025809902770061382, 0.025809902770061382, 0.011960236828759825],\n", - " [0.0, 0.02783060252671514, 0.02783060252671514, 0.025809902770061382],\n", - " [0.0, 0.0037417531987009671, 0.0037417531987009671, 0.0],\n", - " [0.0, 0.01857126516960975, 0.01857126516960975, 0.0],\n", - " [0.0, 0.019871948923041758, 0.019871948923041758, 0.0],\n", - " [0.01857126516960975,\n", - " 0.020934929472055247,\n", - " 0.020934929472055247,\n", - " 0.019871948923041758],\n", - " [0.0, 0.0094415194222067494, 0.0094415194222067494, 0.0],\n", - " [0.0, 0.010775393635503932, 0.010775393635503932, 0.0],\n", - " [0.0094415194222067494,\n", - " 0.014828665921116382,\n", - " 0.014828665921116382,\n", - " 0.010775393635503932],\n", - " [0.0, 0.017692447004300914, 0.017692447004300914, 0.014828665921116382],\n", - " [0.0, 0.018396345425111777, 0.018396345425111777, 0.017692447004300914],\n", - " [0.0, 0.014337723389718324, 0.014337723389718324, 0.0],\n", - " [0.0, 0.017524500477904971, 0.017524500477904971, 0.014337723389718324],\n", - " [0.0, 0.017876312651102341, 0.017876312651102341, 0.0],\n", - " [0.017524500477904971,\n", - " 0.020797463403019179,\n", - " 0.020797463403019179,\n", - " 0.017876312651102341],\n", - " [0.0, 0.010215939359646507, 0.010215939359646507, 0.0],\n", - " [0.0, 0.013974146020421019, 0.013974146020421019, 0.010215939359646507],\n", - " [0.0, 0.014040003561249867, 0.014040003561249867, 0.013974146020421019],\n", - " [0.0, 0.0037406412551834406, 0.0037406412551834406, 0.0],\n", - " [0.0, 0.0098680892273978922, 0.0098680892273978922, 0.0],\n", - " [0.0, 0.014074997015989969, 0.014074997015989969, 0.0098680892273978922],\n", - " [0.0037406412551834406,\n", - " 0.017875598171811006,\n", - " 0.017875598171811006,\n", - " 0.014074997015989969],\n", - " [0.0, 0.0071916513402696123, 0.0071916513402696123, 0.0],\n", - " [0.0, 0.0096784921346227404, 0.0096784921346227404, 0.0071916513402696123],\n", - " [0.0, 0.011035455767658372, 0.011035455767658372, 0.0096784921346227404],\n", - " [0.0, 0.012387731107833972, 0.012387731107833972, 0.011035455767658372],\n", - " [0.0, 0.0049797335270079252, 0.0049797335270079252, 0.0],\n", - " [0.0, 0.0097165859230462122, 0.0097165859230462122, 0.0049797335270079252],\n", - " [0.0, 0.010604469482250866, 0.010604469482250866, 0.0],\n", - " [0.0097165859230462122,\n", - " 0.016406594923991966,\n", - " 0.016406594923991966,\n", - " 0.010604469482250866],\n", - " [0.012387731107833972,\n", - " 0.017873194817940578,\n", - " 0.017873194817940578,\n", - " 0.016406594923991966],\n", - " [0.0, 0.0028303231264281141, 0.0028303231264281141, 0.0],\n", - " [0.0, 0.0030880767477494873, 0.0030880767477494873, 0.0028303231264281141],\n", - " [0.0, 0.0058015260923346291, 0.0058015260923346291, 0.0],\n", - " [0.0030880767477494873,\n", - " 0.0062732796048007656,\n", - " 0.0062732796048007656,\n", - " 0.0058015260923346291],\n", - " [0.0, 0.0077529220942829892, 0.0077529220942829892, 0.0],\n", - " [0.0, 0.0097838177619970056, 0.0097838177619970056, 0.0077529220942829892],\n", - " [0.0, 0.011305448995950894, 0.011305448995950894, 0.0097838177619970056],\n", - " [0.0062732796048007656,\n", - " 0.013763463662898523,\n", - " 0.013763463662898523,\n", - " 0.011305448995950894],\n", - " [0.0, 0.013946755393279595, 0.013946755393279595, 0.013763463662898523],\n", - " [0.0, 0.018456725169976027, 0.018456725169976027, 0.013946755393279595],\n", - " [0.017873194817940578,\n", - " 0.020760026685919711,\n", - " 0.020760026685919711,\n", - " 0.018456725169976027],\n", - " [0.0, 0.020768383976613604, 0.020768383976613604, 0.020760026685919711],\n", - " [0.017875598171811006,\n", - " 0.021023867246538298,\n", - " 0.021023867246538298,\n", - " 0.020768383976613604],\n", - " [0.014040003561249867,\n", - " 0.021288310501305797,\n", - " 0.021288310501305797,\n", - " 0.021023867246538298],\n", - " [0.020797463403019179,\n", - " 0.0231757366657411,\n", - " 0.0231757366657411,\n", - " 0.021288310501305797],\n", - " [0.0, 0.020193879122147405, 0.020193879122147405, 0.0],\n", - " [0.0, 0.021216661377322255, 0.021216661377322255, 0.0],\n", - " [0.020193879122147405,\n", - " 0.023919653279258404,\n", - " 0.023919653279258404,\n", - " 0.021216661377322255],\n", - " [0.0231757366657411,\n", - " 0.024925454479310195,\n", - " 0.024925454479310195,\n", - " 0.023919653279258404],\n", - " [0.0, 0.0049568701818774041, 0.0049568701818774041, 0.0],\n", - " [0.0, 0.0081893319019283473, 0.0081893319019283473, 0.0049568701818774041],\n", - " [0.0, 0.0060712425416876801, 0.0060712425416876801, 0.0],\n", - " [0.0, 0.0062649900239350491, 0.0062649900239350491, 0.0],\n", - " [0.0060712425416876801,\n", - " 0.0075539081937767366,\n", - " 0.0075539081937767366,\n", - " 0.0062649900239350491],\n", - " [0.0, 0.012648073450131959, 0.012648073450131959, 0.0075539081937767366],\n", - " [0.0, 0.0011912187036850627, 0.0011912187036850627, 0.0],\n", - " [0.0, 0.0024183552261786011, 0.0024183552261786011, 0.0011912187036850627],\n", - " [0.0, 0.014095572106160179, 0.014095572106160179, 0.0024183552261786011],\n", - " [0.012648073450131959,\n", - " 0.014227072362225297,\n", - " 0.014227072362225297,\n", - " 0.014095572106160179],\n", - " [0.0, 0.0012866273741842158, 0.0012866273741842158, 0.0],\n", - " [0.0, 0.012897525731705413, 0.012897525731705413, 0.0012866273741842158],\n", - " [0.0, 0.015481050093580855, 0.015481050093580855, 0.012897525731705413],\n", - " [0.014227072362225297,\n", - " 0.017835091280952543,\n", - " 0.017835091280952543,\n", - " 0.015481050093580855],\n", - " [0.0, 0.01800759095493153, 0.01800759095493153, 0.017835091280952543],\n", - " [0.0081893319019283473,\n", - " 0.018571218726840005,\n", - " 0.018571218726840005,\n", - " 0.01800759095493153],\n", - " [0.0, 0.014386706537640601, 0.014386706537640601, 0.0],\n", - " [0.0, 0.020758473474707204, 0.020758473474707204, 0.014386706537640601],\n", - " [0.0, 0.021142322034248207, 0.021142322034248207, 0.020758473474707204],\n", - " [0.018571218726840005,\n", - " 0.024980071296936995,\n", - " 0.024980071296936995,\n", - " 0.021142322034248207],\n", - " [0.024925454479310195,\n", - " 0.025215156116905103,\n", - " 0.025215156116905103,\n", - " 0.024980071296936995],\n", - " [0.018396345425111777,\n", - " 0.025724950767687903,\n", - " 0.025724950767687903,\n", - " 0.025215156116905103],\n", - " [0.0, 0.026302966087495789, 0.026302966087495789, 0.025724950767687903],\n", - " [0.020934929472055247,\n", - " 0.02914320862568422,\n", - " 0.02914320862568422,\n", - " 0.026302966087495789],\n", - " [0.0037417531987009671,\n", - " 0.030222909472786046,\n", - " 0.030222909472786046,\n", - " 0.02914320862568422],\n", - " [0.02783060252671514,\n", - " 0.030451078798624485,\n", - " 0.030451078798624485,\n", - " 0.030222909472786046],\n", - " [0.0, 0.031608722293064301, 0.031608722293064301, 0.030451078798624485],\n", - " [0.015381706829865336,\n", - " 0.032208938215969131,\n", - " 0.032208938215969131,\n", - " 0.031608722293064301],\n", - " [0.030618291003910184,\n", - " 0.033083887619200586,\n", - " 0.033083887619200586,\n", - " 0.032208938215969131],\n", - " [0.030778211124103286,\n", - " 0.034831438959652156,\n", - " 0.034831438959652156,\n", - " 0.033083887619200586],\n", - " [0.033658906131957211,\n", - " 0.035170800076202977,\n", - " 0.035170800076202977,\n", - " 0.034831438959652156],\n", - " [0.0, 0.036646302910387091, 0.036646302910387091, 0.035170800076202977],\n", - " [0.026548246137926113,\n", - " 0.036800836322018221,\n", - " 0.036800836322018221,\n", - " 0.036646302910387091],\n", - " [0.03177230871372063,\n", - " 0.03741416342776991,\n", - " 0.03741416342776991,\n", - " 0.036800836322018221],\n", - " [0.017118712013469241,\n", - " 0.037739509072055158,\n", - " 0.037739509072055158,\n", - " 0.03741416342776991],\n", - " [0.0, 0.038769670026968926, 0.038769670026968926, 0.037739509072055158],\n", - " [0.0, 0.041931578553639812, 0.041931578553639812, 0.038769670026968926],\n", - " [0.015333195524741043,\n", - " 0.04271588381386919,\n", - " 0.04271588381386919,\n", - " 0.041931578553639812],\n", - " [0.0, 0.051560874866508892, 0.051560874866508892, 0.04271588381386919],\n", - " [0.0, 0.056681755406829348, 0.056681755406829348, 0.051560874866508892],\n", - " [0.023689912494564168,\n", - " 0.057821966846521619,\n", - " 0.057821966846521619,\n", - " 0.056681755406829348],\n", - " [0.0, 0.064573395419473129, 0.064573395419473129, 0.057821966846521619],\n", - " [0.0, 0.033631661526010347, 0.033631661526010347, 0.0],\n", - " [0.0, 0.035795500066350121, 0.035795500066350121, 0.033631661526010347],\n", - " [0.0, 0.021069865519268316, 0.021069865519268316, 0.0],\n", - " [0.0, 0.036963483196257432, 0.036963483196257432, 0.021069865519268316],\n", - " [0.035795500066350121,\n", - " 0.081049966767422377,\n", - " 0.081049966767422377,\n", - " 0.036963483196257432],\n", - " [0.064573395419473129,\n", - " 0.083102035528616364,\n", - " 0.083102035528616364,\n", - " 0.081049966767422377],\n", - " [0.0, 0.09200445007715545, 0.09200445007715545, 0.083102035528616364],\n", - " [0.0, 0.11267324534688748, 0.11267324534688748, 0.09200445007715545],\n", - " [0.0, 0.13167090983964708, 0.13167090983964708, 0.11267324534688748],\n", - " [0.0, 0.16427674515889262, 0.16427674515889262, 0.13167090983964708],\n", - " [0.0, 0.21777071695937564, 0.21777071695937564, 0.0],\n", - " [0.0, 0.049874376437205041, 0.049874376437205041, 0.0],\n", - " [0.0, 0.018916650073414185, 0.018916650073414185, 0.0],\n", - " [0.0, 0.033041817580148895, 0.033041817580148895, 0.018916650073414185],\n", - " [0.0, 0.05882445159115382, 0.05882445159115382, 0.033041817580148895],\n", - " [0.0, 0.007089994710859665, 0.007089994710859665, 0.0],\n", - " [0.0, 0.086730984988065085, 0.086730984988065085, 0.007089994710859665],\n", - " [0.05882445159115382,\n", - " 0.089564926282560686,\n", - " 0.089564926282560686,\n", - " 0.086730984988065085],\n", - " [0.049874376437205041,\n", - " 0.11769756402746787,\n", - " 0.11769756402746787,\n", - " 0.089564926282560686],\n", - " [0.0, 0.026533311383995659, 0.026533311383995659, 0.0],\n", - " [0.0, 0.059340922827335198, 0.059340922827335198, 0.0],\n", - " [0.026533311383995659,\n", - " 0.064458794310786216,\n", - " 0.064458794310786216,\n", - " 0.059340922827335198],\n", - " [0.0, 0.027970034697869541, 0.027970034697869541, 0.0],\n", - " [0.0, 0.035527072733339667, 0.035527072733339667, 0.0],\n", - " [0.0, 0.049283381864477303, 0.049283381864477303, 0.035527072733339667],\n", - " [0.0, 0.049813376858028717, 0.049813376858028717, 0.049283381864477303],\n", - " [0.027970034697869541,\n", - " 0.063426205979862468,\n", - " 0.063426205979862468,\n", - " 0.049813376858028717],\n", - " [0.0, 0.066825761020728958, 0.066825761020728958, 0.063426205979862468],\n", - " [0.0, 0.086080221706265753, 0.086080221706265753, 0.066825761020728958],\n", - " [0.0, 0.051893020417006011, 0.051893020417006011, 0.0],\n", - " [0.0, 0.081451008993140006, 0.081451008993140006, 0.051893020417006011],\n", - " [0.0, 0.016100706226747401, 0.016100706226747401, 0.0],\n", - " [0.0, 0.028748308645902849, 0.028748308645902849, 0.016100706226747401],\n", - " [0.0, 0.053665641941559518, 0.053665641941559518, 0.0],\n", - " [0.0, 0.025568971528004809, 0.025568971528004809, 0.0],\n", - " [0.0, 0.02622935006819857, 0.02622935006819857, 0.0],\n", - " [0.025568971528004809,\n", - " 0.03987138057554511,\n", - " 0.03987138057554511,\n", - " 0.02622935006819857],\n", - " [0.0, 0.046279111108576777, 0.046279111108576777, 0.03987138057554511],\n", - " [0.0, 0.055063669801420398, 0.055063669801420398, 0.046279111108576777],\n", - " [0.0, 0.0028661676503625748, 0.0028661676503625748, 0.0],\n", - " [0.0, 0.0072301604408232609, 0.0072301604408232609, 0.0028661676503625748],\n", - " [0.0, 0.022584634710349518, 0.022584634710349518, 0.0072301604408232609],\n", - " [0.0, 0.024382193441113698, 0.024382193441113698, 0.022584634710349518],\n", - " [0.0, 0.027510756659891032, 0.027510756659891032, 0.024382193441113698],\n", - " [0.0, 0.041618363278725264, 0.041618363278725264, 0.027510756659891032],\n", - " [0.0, 0.015380039824393331, 0.015380039824393331, 0.0],\n", - " [0.0, 0.0099473574380292366, 0.0099473574380292366, 0.0],\n", - " [0.0, 0.012080831304177234, 0.012080831304177234, 0.0],\n", - " [0.0, 0.019600744577693702, 0.019600744577693702, 0.012080831304177234],\n", - " [0.0099473574380292366,\n", - " 0.020867537276835078,\n", - " 0.020867537276835078,\n", - " 0.019600744577693702],\n", - " [0.0, 0.022284764145038979, 0.022284764145038979, 0.0],\n", - " [0.0, 0.041514080803983097, 0.041514080803983097, 0.022284764145038979],\n", - " [0.0, 0.044329656190864472, 0.044329656190864472, 0.041514080803983097],\n", - " [0.020867537276835078,\n", - " 0.051481707683409338,\n", - " 0.051481707683409338,\n", - " 0.044329656190864472],\n", - " [0.015380039824393331,\n", - " 0.051812822631082667,\n", - " 0.051812822631082667,\n", - " 0.051481707683409338],\n", - " [0.0, 0.014499382745480989, 0.014499382745480989, 0.0],\n", - " [0.0, 0.056295682649742045, 0.056295682649742045, 0.014499382745480989],\n", - " [0.051812822631082667,\n", - " 0.05640438111529722,\n", - " 0.05640438111529722,\n", - " 0.056295682649742045],\n", - " [0.041618363278725264,\n", - " 0.060340363580278465,\n", - " 0.060340363580278465,\n", - " 0.05640438111529722],\n", - " [0.055063669801420398,\n", - " 0.060497828473424858,\n", - " 0.060497828473424858,\n", - " 0.060340363580278465],\n", - " [0.0, 0.018889686498193163, 0.018889686498193163, 0.0],\n", - " [0.0, 0.015898610819821964, 0.015898610819821964, 0.0],\n", - " [0.0, 0.043655269292487531, 0.043655269292487531, 0.015898610819821964],\n", - " [0.0, 0.026227582732689849, 0.026227582732689849, 0.0],\n", - " [0.0, 0.028237665289466241, 0.028237665289466241, 0.0],\n", - " [0.0, 0.042039108280269882, 0.042039108280269882, 0.028237665289466241],\n", - " [0.026227582732689849,\n", - " 0.050838497853494161,\n", - " 0.050838497853494161,\n", - " 0.042039108280269882],\n", - " [0.043655269292487531,\n", - " 0.060413856026577395,\n", - " 0.060413856026577395,\n", - " 0.050838497853494161],\n", - " [0.0, 0.010933370614770422, 0.010933370614770422, 0.0],\n", - " [0.0, 0.025649084389115569, 0.025649084389115569, 0.0],\n", - " [0.0, 0.029635477725185533, 0.029635477725185533, 0.025649084389115569],\n", - " [0.0, 0.024056654214582723, 0.024056654214582723, 0.0],\n", - " [0.0, 0.02501702212494418, 0.02501702212494418, 0.0],\n", - " [0.024056654214582723,\n", - " 0.044687371694918175,\n", - " 0.044687371694918175,\n", - " 0.02501702212494418],\n", - " [0.029635477725185533,\n", - " 0.06018349050196585,\n", - " 0.06018349050196585,\n", - " 0.044687371694918175],\n", - " [0.0, 0.063726529114647393, 0.063726529114647393, 0.06018349050196585],\n", - " [0.010933370614770422,\n", - " 0.066382110278301307,\n", - " 0.066382110278301307,\n", - " 0.063726529114647393],\n", - " [0.0, 0.066740035608319509, 0.066740035608319509, 0.066382110278301307],\n", - " [0.060413856026577395,\n", - " 0.067743891621311503,\n", - " 0.067743891621311503,\n", - " 0.066740035608319509],\n", - " [0.018889686498193163,\n", - " 0.072006036559439671,\n", - " 0.072006036559439671,\n", - " 0.067743891621311503],\n", - " [0.0, 0.0720849620448024, 0.0720849620448024, 0.072006036559439671],\n", - " [0.0, 0.074806930407551417, 0.074806930407551417, 0.0720849620448024],\n", - " [0.060497828473424858,\n", - " 0.075252777656378722,\n", - " 0.075252777656378722,\n", - " 0.074806930407551417],\n", - " [0.053665641941559518,\n", - " 0.079561331166592461,\n", - " 0.079561331166592461,\n", - " 0.075252777656378722],\n", - " [0.0, 0.080265619196516202, 0.080265619196516202, 0.079561331166592461],\n", - " [0.028748308645902849,\n", - " 0.089348129118637418,\n", - " 0.089348129118637418,\n", - " 0.080265619196516202],\n", - " [0.0, 0.090444882668949261, 0.090444882668949261, 0.089348129118637418],\n", - " [0.0, 0.091315233017285641, 0.091315233017285641, 0.090444882668949261],\n", - " [0.081451008993140006,\n", - " 0.10672481585835608,\n", - " 0.10672481585835608,\n", - " 0.091315233017285641],\n", - " [0.0, 0.12137915216791068, 0.12137915216791068, 0.10672481585835608],\n", - " [0.0, 0.12294336917866497, 0.12294336917866497, 0.12137915216791068],\n", - " [0.086080221706265753,\n", - " 0.12531243782641832,\n", - " 0.12531243782641832,\n", - " 0.12294336917866497],\n", - " [0.064458794310786216,\n", - " 0.12570170739094735,\n", - " 0.12570170739094735,\n", - " 0.12531243782641832],\n", - " [0.0, 0.12913108177739882, 0.12913108177739882, 0.12570170739094735],\n", - " [0.11769756402746787,\n", - " 0.18246817828048495,\n", - " 0.18246817828048495,\n", - " 0.12913108177739882],\n", - " [0.0, 0.32161493973072758, 0.32161493973072758, 0.18246817828048495],\n", - " [0.21777071695937564,\n", - " 0.42397334020077027,\n", - " 0.42397334020077027,\n", - " 0.32161493973072758],\n", - " [0.16427674515889262,\n", - " 0.43400584007706261,\n", - " 0.43400584007706261,\n", - " 0.42397334020077027],\n", - " [0.10861370847181195,\n", - " 0.48621682220692647,\n", - " 0.48621682220692647,\n", - " 0.43400584007706261],\n", - " [0.39010566036651939,\n", - " 0.59919217660112711,\n", - " 0.59919217660112711,\n", - " 0.48621682220692647],\n", - " [0.53771333917339426,\n", - " 0.61465881436777581,\n", - " 0.61465881436777581,\n", - " 0.59919217660112711],\n", - " [0.03933770685995755,\n", - " 0.63618832477498188,\n", - " 0.63618832477498188,\n", - " 0.61465881436777581],\n", - " [0.0, 0.11629600478949978, 0.11629600478949978, 0.0],\n", - " [0.0, 0.017025854369164688, 0.017025854369164688, 0.0],\n", - " [0.0, 0.029859248081625121, 0.029859248081625121, 0.017025854369164688],\n", - " [0.0, 0.050410449412795523, 0.050410449412795523, 0.0],\n", - " [0.029859248081625121,\n", - " 0.051673171394834252,\n", - " 0.051673171394834252,\n", - " 0.050410449412795523],\n", - " [0.0, 0.061140195493635488, 0.061140195493635488, 0.051673171394834252],\n", - " [0.0, 0.078517693420015952, 0.078517693420015952, 0.0],\n", - " [0.061140195493635488,\n", - " 0.12990022396054496,\n", - " 0.12990022396054496,\n", - " 0.078517693420015952],\n", - " [0.0, 0.31257048860377051, 0.31257048860377051, 0.12990022396054496],\n", - " [0.0, 0.35931550349657654, 0.35931550349657654, 0.31257048860377051],\n", - " [0.11629600478949978,\n", - " 0.37982329215833932,\n", - " 0.37982329215833932,\n", - " 0.35931550349657654],\n", - " [0.0, 0.68982650073768814, 0.68982650073768814, 0.37982329215833932],\n", - " [0.63618832477498188,\n", - " 0.72971431804508158,\n", - " 0.72971431804508158,\n", - " 0.68982650073768814],\n", - " [0.1596093042150151,\n", - " 0.76549023086189538,\n", - " 0.76549023086189538,\n", - " 0.72971431804508158],\n", - " [0.10633125471844598,\n", - " 1.182349424392382,\n", - " 1.182349424392382,\n", - " 0.76549023086189538],\n", - " [0.11791851424182852,\n", - " 2.4665141302108937,\n", - " 2.4665141302108937,\n", - " 1.182349424392382],\n", - " [0.58252392082213911,\n", - " 2.7103300852497667,\n", - " 2.7103300852497667,\n", - " 2.4665141302108937],\n", - " [0.36183450717282412,\n", - " 4.3761265174128594,\n", - " 4.3761265174128594,\n", - " 2.7103300852497667],\n", - " [3.9705413476992004,\n", - " 4.5705049090223024,\n", - " 4.5705049090223024,\n", - " 4.3761265174128594],\n", - " [1.1961293772870045,\n", - " 4.6259969894202255,\n", - " 4.6259969894202255,\n", - " 4.5705049090223024],\n", - " [0.31975710624941311,\n", - " 6.0358725347559332,\n", - " 6.0358725347559332,\n", - " 4.6259969894202255],\n", - " [0.835032222135769,\n", - " 7.9744927667796501,\n", - " 7.9744927667796501,\n", - " 6.0358725347559332],\n", - " [0.0, 0.05735680385969278, 0.05735680385969278, 0.0],\n", - " [0.0, 0.055924581500435319, 0.055924581500435319, 0.0],\n", - " [0.0, 0.13637051208014506, 0.13637051208014506, 0.055924581500435319],\n", - " [0.05735680385969278,\n", - " 0.14629310655325464,\n", - " 0.14629310655325464,\n", - " 0.13637051208014506],\n", - " [0.0, 0.065186633177365311, 0.065186633177365311, 0.0],\n", - " [0.0, 0.088002073572162692, 0.088002073572162692, 0.065186633177365311],\n", - " [0.0, 0.0077344768407435326, 0.0077344768407435326, 0.0],\n", - " [0.0, 0.019857233770083738, 0.019857233770083738, 0.0],\n", - " [0.0, 0.02079540778633366, 0.02079540778633366, 0.019857233770083738],\n", - " [0.0, 0.0026873250640712053, 0.0026873250640712053, 0.0],\n", - " [0.0, 0.0030802551842314106, 0.0030802551842314106, 0.0026873250640712053],\n", - " [0.0, 0.021674212557779189, 0.021674212557779189, 0.0030802551842314106],\n", - " [0.0, 0.0054568442345367353, 0.0054568442345367353, 0.0],\n", - " [0.0, 0.016481420145116579, 0.016481420145116579, 0.0],\n", - " [0.0, 0.0094099386289197128, 0.0094099386289197128, 0.0],\n", - " [0.0, 0.0097601600396687964, 0.0097601600396687964, 0.0094099386289197128],\n", - " [0.0, 0.014967236885939809, 0.014967236885939809, 0.0097601600396687964],\n", - " [0.0, 0.015146989040739212, 0.015146989040739212, 0.014967236885939809],\n", - " [0.0, 0.0059849414366420321, 0.0059849414366420321, 0.0],\n", - " [0.0, 0.013323366879285424, 0.013323366879285424, 0.0059849414366420321],\n", - " [0.0, 0.0059032571517724057, 0.0059032571517724057, 0.0],\n", - " [0.0, 0.015854110917985106, 0.015854110917985106, 0.0],\n", - " [0.0, 0.016118847849642296, 0.016118847849642296, 0.015854110917985106],\n", - " [0.0059032571517724057,\n", - " 0.016543349993274763,\n", - " 0.016543349993274763,\n", - " 0.016118847849642296],\n", - " [0.013323366879285424,\n", - " 0.017479470129269762,\n", - " 0.017479470129269762,\n", - " 0.016543349993274763],\n", - " [0.015146989040739212,\n", - " 0.020999033739671637,\n", - " 0.020999033739671637,\n", - " 0.017479470129269762],\n", - " [0.0, 0.008849707339795742, 0.008849707339795742, 0.0],\n", - " [0.0, 0.016111682748872768, 0.016111682748872768, 0.008849707339795742],\n", - " [0.0, 0.0083565008227208196, 0.0083565008227208196, 0.0],\n", - " [0.0, 0.009970883862520416, 0.009970883862520416, 0.0083565008227208196],\n", - " [0.0, 0.014688098072931954, 0.014688098072931954, 0.009970883862520416],\n", - " [0.0, 0.016277718175468525, 0.016277718175468525, 0.014688098072931954],\n", - " [0.0, 0.0022425933648357196, 0.0022425933648357196, 0.0],\n", - " [0.0, 0.0061799574432153679, 0.0061799574432153679, 0.0022425933648357196],\n", - " [0.0, 0.015966845962804319, 0.015966845962804319, 0.0061799574432153679],\n", - " [0.0, 0.016161816884251265, 0.016161816884251265, 0.0],\n", - " [0.015966845962804319,\n", - " 0.016565174342577836,\n", - " 0.016565174342577836,\n", - " 0.016161816884251265],\n", - " [0.016277718175468525,\n", - " 0.017257701179481135,\n", - " 0.017257701179481135,\n", - " 0.016565174342577836],\n", - " [0.0, 0.019720030045609134, 0.019720030045609134, 0.017257701179481135],\n", - " [0.016111682748872768,\n", - " 0.021108394183346937,\n", - " 0.021108394183346937,\n", - " 0.019720030045609134],\n", - " [0.020999033739671637,\n", - " 0.021202403283582565,\n", - " 0.021202403283582565,\n", - " 0.021108394183346937],\n", - " [0.016481420145116579,\n", - " 0.021663805044363216,\n", - " 0.021663805044363216,\n", - " 0.021202403283582565],\n", - " [0.0, 0.02207527895633651, 0.02207527895633651, 0.021663805044363216],\n", - " [0.0054568442345367353,\n", - " 0.022275270884990893,\n", - " 0.022275270884990893,\n", - " 0.02207527895633651],\n", - " [0.0, 0.022321584397167308, 0.022321584397167308, 0.022275270884990893],\n", - " [0.021674212557779189,\n", - " 0.022826346904399272,\n", - " 0.022826346904399272,\n", - " 0.022321584397167308],\n", - " [0.0, 0.025941525571943187, 0.025941525571943187, 0.022826346904399272],\n", - " [0.0, 0.026394151492331135, 0.026394151492331135, 0.025941525571943187],\n", - " [0.0, 0.02807089955807977, 0.02807089955807977, 0.026394151492331135],\n", - " [0.02079540778633366,\n", - " 0.033680436250151657,\n", - " 0.033680436250151657,\n", - " 0.02807089955807977],\n", - " [0.0, 0.038233440663902316, 0.038233440663902316, 0.033680436250151657],\n", - " [0.0, 0.040493297235467102, 0.040493297235467102, 0.038233440663902316],\n", - " [0.0077344768407435326,\n", - " 0.042243428956462811,\n", - " 0.042243428956462811,\n", - " 0.040493297235467102],\n", - " [0.0, 0.053435745461258392, 0.053435745461258392, 0.042243428956462811],\n", - " [0.0, 0.076590647366367184, 0.076590647366367184, 0.053435745461258392],\n", - " [0.0, 0.094622355883800163, 0.094622355883800163, 0.076590647366367184],\n", - " [0.0, 0.11673019189567067, 0.11673019189567067, 0.0],\n", - " [0.094622355883800163,\n", - " 0.14655600292038881,\n", - " 0.14655600292038881,\n", - " 0.11673019189567067],\n", - " [0.0, 0.21974205990206233, 0.21974205990206233, 0.14655600292038881],\n", - " [0.088002073572162692,\n", - " 0.29109540849177362,\n", - " 0.29109540849177362,\n", - " 0.21974205990206233],\n", - " [0.0, 0.46206702520846504, 0.46206702520846504, 0.29109540849177362],\n", - " [0.14629310655325464,\n", - " 0.51151742625348673,\n", - " 0.51151742625348673,\n", - " 0.46206702520846504],\n", - " [0.0, 0.058476613445032764, 0.058476613445032764, 0.0],\n", - " [0.0, 0.078682878264587974, 0.078682878264587974, 0.058476613445032764],\n", - " [0.0, 0.04274314628101207, 0.04274314628101207, 0.0],\n", - " [0.0, 0.068080813538024948, 0.068080813538024948, 0.04274314628101207],\n", - " [0.0, 0.16589281877766662, 0.16589281877766662, 0.068080813538024948],\n", - " [0.0, 0.18872837122700739, 0.18872837122700739, 0.16589281877766662],\n", - " [0.0, 0.084649861553350983, 0.084649861553350983, 0.0],\n", - " [0.0, 0.19644275015383045, 0.19644275015383045, 0.084649861553350983],\n", - " [0.18872837122700739,\n", - " 0.24823402813474052,\n", - " 0.24823402813474052,\n", - " 0.19644275015383045],\n", - " [0.0, 0.28927785239282133, 0.28927785239282133, 0.24823402813474052],\n", - " [0.078682878264587974,\n", - " 0.31628807493486,\n", - " 0.31628807493486,\n", - " 0.28927785239282133],\n", - " [0.0, 0.54520220517253803, 0.54520220517253803, 0.31628807493486],\n", - " [0.51151742625348673,\n", - " 0.88517860504307166,\n", - " 0.88517860504307166,\n", - " 0.54520220517253803],\n", - " [0.0, 1.6524886027519214, 1.6524886027519214, 0.88517860504307166],\n", - " [0.0, 0.034225234959022258, 0.034225234959022258, 0.0],\n", - " [0.0, 0.031229236365943928, 0.031229236365943928, 0.0],\n", - " [0.0, 0.0076006132647234055, 0.0076006132647234055, 0.0],\n", - " [0.0, 0.0003924856685368449, 0.0003924856685368449, 0.0],\n", - " [0.0, 0.0089444264768658889, 0.0089444264768658889, 0.0003924856685368449],\n", - " [0.0, 0.013202855827420472, 0.013202855827420472, 0.0089444264768658889],\n", - " [0.0, 0.02273525918039811, 0.02273525918039811, 0.013202855827420472],\n", - " [0.0076006132647234055,\n", - " 0.034750347753650081,\n", - " 0.034750347753650081,\n", - " 0.02273525918039811],\n", - " [0.0, 0.049263209903537379, 0.049263209903537379, 0.034750347753650081],\n", - " [0.0, 0.052951967687711078, 0.052951967687711078, 0.049263209903537379],\n", - " [0.0, 0.054705600855854776, 0.054705600855854776, 0.052951967687711078],\n", - " [0.031229236365943928,\n", - " 0.094079876806889368,\n", - " 0.094079876806889368,\n", - " 0.054705600855854776],\n", - " [0.0, 0.11433819005476911, 0.11433819005476911, 0.094079876806889368],\n", - " [0.034225234959022258,\n", - " 0.13559904691773902,\n", - " 0.13559904691773902,\n", - " 0.11433819005476911],\n", - " [0.0, 0.15428062038377924, 0.15428062038377924, 0.13559904691773902],\n", - " [0.0, 0.1657575400306105, 0.1657575400306105, 0.15428062038377924],\n", - " [0.0, 0.03220985397358575, 0.03220985397358575, 0.0],\n", - " [0.0, 0.045396453881331407, 0.045396453881331407, 0.03220985397358575],\n", - " [0.0, 0.093181465501468649, 0.093181465501468649, 0.045396453881331407],\n", - " [0.0, 0.079257166704351067, 0.079257166704351067, 0.0],\n", - " [0.0, 0.037431388673135522, 0.037431388673135522, 0.0],\n", - " [0.0, 0.047204240116752685, 0.047204240116752685, 0.037431388673135522],\n", - " [0.0, 0.0020965745872654601, 0.0020965745872654601, 0.0],\n", - " [0.0, 0.0052134009053674624, 0.0052134009053674624, 0.0020965745872654601],\n", - " [0.0, 0.0089494369096550213, 0.0089494369096550213, 0.0],\n", - " [0.0052134009053674624,\n", - " 0.0089784152276515886,\n", - " 0.0089784152276515886,\n", - " 0.0089494369096550213],\n", - " [0.0, 0.011184952257393084, 0.011184952257393084, 0.0089784152276515886],\n", - " [0.0, 0.014879559200453642, 0.014879559200453642, 0.011184952257393084],\n", - " [0.0, 0.015335559983252161, 0.015335559983252161, 0.014879559200453642],\n", - " [0.0, 0.0066307804970425002, 0.0066307804970425002, 0.0],\n", - " [0.0, 0.008234577888389296, 0.008234577888389296, 0.0066307804970425002],\n", - " [0.0, 0.0082508480170269873, 0.0082508480170269873, 0.008234577888389296],\n", - " [0.0, 0.022985297148394222, 0.022985297148394222, 0.0082508480170269873],\n", - " [0.0, 0.024971105902617901, 0.024971105902617901, 0.022985297148394222],\n", - " [0.015335559983252161,\n", - " 0.026157833645016396,\n", - " 0.026157833645016396,\n", - " 0.024971105902617901],\n", - " [0.0, 0.0030347589690123294, 0.0030347589690123294, 0.0],\n", - " [0.0, 0.0031566643787335714, 0.0031566643787335714, 0.0030347589690123294],\n", - " [0.0, 0.02539605073627977, 0.02539605073627977, 0.0],\n", - " [0.0031566643787335714,\n", - " 0.027715111058773927,\n", - " 0.027715111058773927,\n", - " 0.02539605073627977],\n", - " [0.026157833645016396,\n", - " 0.031254579984382948,\n", - " 0.031254579984382948,\n", - " 0.027715111058773927],\n", - " [0.0, 0.036779097677899913, 0.036779097677899913, 0.031254579984382948],\n", - " [0.0, 0.037881564408033218, 0.037881564408033218, 0.036779097677899913],\n", - " [0.0, 0.0043172586209271214, 0.0043172586209271214, 0.0],\n", - " [0.0, 0.025687161248381704, 0.025687161248381704, 0.0],\n", - " [0.0, 0.0017168401206917661, 0.0017168401206917661, 0.0],\n", - " [0.0, 0.012253456165507453, 0.012253456165507453, 0.0017168401206917661],\n", - " [0.0, 0.013096390380558596, 0.013096390380558596, 0.0],\n", - " [0.012253456165507453,\n", - " 0.020516439481555439,\n", - " 0.020516439481555439,\n", - " 0.013096390380558596],\n", - " [0.0, 0.030700647289585176, 0.030700647289585176, 0.020516439481555439],\n", - " [0.025687161248381704,\n", - " 0.033612812854620061,\n", - " 0.033612812854620061,\n", - " 0.030700647289585176],\n", - " [0.0043172586209271214,\n", - " 0.041707974729060529,\n", - " 0.041707974729060529,\n", - " 0.033612812854620061],\n", - " [0.037881564408033218,\n", - " 0.047853174962580881,\n", - " 0.047853174962580881,\n", - " 0.041707974729060529],\n", - " [0.0, 0.051583478071950836, 0.051583478071950836, 0.047853174962580881],\n", - " [0.047204240116752685,\n", - " 0.055446038208345094,\n", - " 0.055446038208345094,\n", - " 0.051583478071950836],\n", - " [0.0, 0.058789937276715915, 0.058789937276715915, 0.055446038208345094],\n", - " [0.0, 0.065032274302839935, 0.065032274302839935, 0.058789937276715915],\n", - " [0.0, 0.085694968732120819, 0.085694968732120819, 0.065032274302839935],\n", - " [0.0, 0.0034538190456254087, 0.0034538190456254087, 0.0],\n", - " [0.0, 0.018143655227104694, 0.018143655227104694, 0.0034538190456254087],\n", - " [0.0, 0.037919403331275456, 0.037919403331275456, 0.0],\n", - " [0.0, 0.038638671043396161, 0.038638671043396161, 0.037919403331275456],\n", - " [0.018143655227104694,\n", - " 0.053112378688962437,\n", - " 0.053112378688962437,\n", - " 0.038638671043396161],\n", - " [0.0, 0.065364469522824126, 0.065364469522824126, 0.053112378688962437],\n", - " [0.0, 0.068054294625700854, 0.068054294625700854, 0.065364469522824126],\n", - " [0.0, 0.07391599909357166, 0.07391599909357166, 0.068054294625700854],\n", - " [0.0, 0.086596281675364928, 0.086596281675364928, 0.07391599909357166],\n", - " [0.085694968732120819,\n", - " 0.10464321828479703,\n", - " 0.10464321828479703,\n", - " 0.086596281675364928],\n", - " [0.0, 0.12405765273452482, 0.12405765273452482, 0.10464321828479703],\n", - " [0.0, 0.12733608604397526, 0.12733608604397526, 0.12405765273452482],\n", - " [0.079257166704351067,\n", - " 0.1318006198505908,\n", - " 0.1318006198505908,\n", - " 0.12733608604397526],\n", - " [0.093181465501468649,\n", - " 0.14153721545939885,\n", - " 0.14153721545939885,\n", - " 0.1318006198505908],\n", - " [0.0, 0.21253818928841284, 0.21253818928841284, 0.14153721545939885],\n", - " [0.1657575400306105,\n", - " 0.30048031565643857,\n", - " 0.30048031565643857,\n", - " 0.21253818928841284],\n", - " [0.0, 0.34354135382076895, 0.34354135382076895, 0.30048031565643857],\n", - " [0.0, 0.22174582925728303, 0.22174582925728303, 0.0],\n", - " [0.0, 0.017453594157065492, 0.017453594157065492, 0.0],\n", - " [0.0, 0.023889836437286694, 0.023889836437286694, 0.017453594157065492],\n", - " [0.0, 0.036939804033056647, 0.036939804033056647, 0.023889836437286694],\n", - " [0.0, 0.051639847889011929, 0.051639847889011929, 0.036939804033056647],\n", - " [0.0, 0.0010652703882226373, 0.0010652703882226373, 0.0],\n", - " [0.0, 0.038614883930936636, 0.038614883930936636, 0.0010652703882226373],\n", - " [0.0, 0.0086836030540343844, 0.0086836030540343844, 0.0],\n", - " [0.0, 0.0018164151507835704, 0.0018164151507835704, 0.0],\n", - " [0.0, 0.034268716593993206, 0.034268716593993206, 0.0],\n", - " [0.0, 0.034860522270902736, 0.034860522270902736, 0.034268716593993206],\n", - " [0.0, 0.024518786633918915, 0.024518786633918915, 0.0],\n", - " [0.0, 0.0049037925119146336, 0.0049037925119146336, 0.0],\n", - " [0.0, 0.0076663388915467817, 0.0076663388915467817, 0.0049037925119146336],\n", - " [0.0, 0.029605859420052054, 0.029605859420052054, 0.0076663388915467817],\n", - " [0.0, 0.0079949739837014734, 0.0079949739837014734, 0.0],\n", - " [0.0, 0.0056290505416111917, 0.0056290505416111917, 0.0],\n", - " [0.0, 0.018942320238025397, 0.018942320238025397, 0.0056290505416111917],\n", - " [0.0, 0.020280046277064406, 0.020280046277064406, 0.018942320238025397],\n", - " [0.0079949739837014734,\n", - " 0.020697478590390946,\n", - " 0.020697478590390946,\n", - " 0.020280046277064406],\n", - " [0.0, 0.0040081922359109521, 0.0040081922359109521, 0.0],\n", - " [0.0, 0.0040583023544391011, 0.0040583023544391011, 0.0040081922359109521],\n", - " [0.0, 0.0095874987874734995, 0.0095874987874734995, 0.0040583023544391011],\n", - " [0.0, 0.01344646410771666, 0.01344646410771666, 0.0095874987874734995],\n", - " [0.0, 0.014973975357265227, 0.014973975357265227, 0.01344646410771666],\n", - " [0.0, 0.016311627785102936, 0.016311627785102936, 0.014973975357265227],\n", - " [0.0, 0.018049841716749504, 0.018049841716749504, 0.016311627785102936],\n", - " [0.0, 0.01701578396664986, 0.01701578396664986, 0.0],\n", - " [0.0, 0.0062433084178198503, 0.0062433084178198503, 0.0],\n", - " [0.0, 0.0095255143693142239, 0.0095255143693142239, 0.0],\n", - " [0.0062433084178198503,\n", - " 0.012845716990505478,\n", - " 0.012845716990505478,\n", - " 0.0095255143693142239],\n", - " [0.0, 0.014791615192402182, 0.014791615192402182, 0.0],\n", - " [0.012845716990505478,\n", - " 0.017164920739698317,\n", - " 0.017164920739698317,\n", - " 0.014791615192402182],\n", - " [0.0, 0.0032647064186440418, 0.0032647064186440418, 0.0],\n", - " [0.0, 0.0075487758610271799, 0.0075487758610271799, 0.0],\n", - " [0.0, 0.0084029149704170393, 0.0084029149704170393, 0.0075487758610271799],\n", - " [0.0, 0.0066058413544296838, 0.0066058413544296838, 0.0],\n", - " [0.0, 0.0077400473512761964, 0.0077400473512761964, 0.0],\n", - " [0.0066058413544296838,\n", - " 0.01049883469724559,\n", - " 0.01049883469724559,\n", - " 0.0077400473512761964],\n", - " [0.0084029149704170393,\n", - " 0.011742317871695437,\n", - " 0.011742317871695437,\n", - " 0.01049883469724559],\n", - " [0.0032647064186440418,\n", - " 0.017795681330029917,\n", - " 0.017795681330029917,\n", - " 0.011742317871695437],\n", - " [0.0, 0.018138430499911432, 0.018138430499911432, 0.017795681330029917],\n", - " [0.0, 0.0090484726888084219, 0.0090484726888084219, 0.0],\n", - " [0.0, 0.013797565147506579, 0.013797565147506579, 0.0090484726888084219],\n", - " [0.0, 0.016129011284022179, 0.016129011284022179, 0.0],\n", - " [0.0, 0.0014048419839887724, 0.0014048419839887724, 0.0],\n", - " [0.0, 0.0049334199091456187, 0.0049334199091456187, 0.0],\n", - " [0.0, 0.0076442074801775861, 0.0076442074801775861, 0.0049334199091456187],\n", - " [0.0014048419839887724,\n", - " 0.01651873391032483,\n", - " 0.01651873391032483,\n", - " 0.0076442074801775861],\n", - " [0.0, 0.016717696043420948, 0.016717696043420948, 0.01651873391032483],\n", - " [0.016129011284022179,\n", - " 0.017250007826080854,\n", - " 0.017250007826080854,\n", - " 0.016717696043420948],\n", - " [0.013797565147506579,\n", - " 0.022884805439419415,\n", - " 0.022884805439419415,\n", - " 0.017250007826080854],\n", - " [0.018138430499911432,\n", - " 0.025180227878235744,\n", - " 0.025180227878235744,\n", - " 0.022884805439419415],\n", - " [0.017164920739698317,\n", - " 0.025462506651934096,\n", - " 0.025462506651934096,\n", - " 0.025180227878235744],\n", - " [0.01701578396664986,\n", - " 0.025639909048209744,\n", - " 0.025639909048209744,\n", - " 0.025462506651934096],\n", - " [0.018049841716749504,\n", - " 0.027476675963452737,\n", - " 0.027476675963452737,\n", - " 0.025639909048209744],\n", - " [0.020697478590390946,\n", - " 0.027920237624349298,\n", - " 0.027920237624349298,\n", - " 0.027476675963452737],\n", - " [0.0, 0.015589489953174364, 0.015589489953174364, 0.0],\n", - " [0.0, 0.018242158479735236, 0.018242158479735236, 0.015589489953174364],\n", - " [0.0, 0.0009718940271540152, 0.0009718940271540152, 0.0],\n", - " [0.0, 0.014748840361184217, 0.014748840361184217, 0.0009718940271540152],\n", - " [0.0, 0.0084836372506118252, 0.0084836372506118252, 0.0],\n", - " [0.0, 0.011365034491807835, 0.011365034491807835, 0.0],\n", - " [0.0084836372506118252,\n", - " 0.019162394761622636,\n", - " 0.019162394761622636,\n", - " 0.011365034491807835],\n", - " [0.014748840361184217,\n", - " 0.020668400034830069,\n", - " 0.020668400034830069,\n", - " 0.019162394761622636],\n", - " [0.018242158479735236,\n", - " 0.028990438647940587,\n", - " 0.028990438647940587,\n", - " 0.020668400034830069],\n", - " [0.027920237624349298,\n", - " 0.029619060484764859,\n", - " 0.029619060484764859,\n", - " 0.028990438647940587],\n", - " [0.029605859420052054,\n", - " 0.030205490692920587,\n", - " 0.030205490692920587,\n", - " 0.029619060484764859],\n", - " [0.0, 0.033883919076761554, 0.033883919076761554, 0.030205490692920587],\n", - " [0.0, 0.034047345168163268, 0.034047345168163268, 0.033883919076761554],\n", - " [0.0, 0.034985197512669909, 0.034985197512669909, 0.034047345168163268],\n", - " [0.024518786633918915,\n", - " 0.035937288781987646,\n", - " 0.035937288781987646,\n", - " 0.034985197512669909],\n", - " [0.034860522270902736,\n", - " 0.036006845029801157,\n", - " 0.036006845029801157,\n", - " 0.035937288781987646],\n", - " [0.0, 0.040146595633997452, 0.040146595633997452, 0.036006845029801157],\n", - " [0.0018164151507835704,\n", - " 0.040216194810050281,\n", - " 0.040216194810050281,\n", - " 0.040146595633997452],\n", - " [0.0, 0.018420497414567982, 0.018420497414567982, 0.0],\n", - " [0.0, 0.0054762247032074211, 0.0054762247032074211, 0.0],\n", - " [0.0, 0.010404798316163703, 0.010404798316163703, 0.0054762247032074211],\n", - " [0.0, 0.0028918950534222677, 0.0028918950534222677, 0.0],\n", - " [0.0, 0.013523083745948279, 0.013523083745948279, 0.0028918950534222677],\n", - " [0.0, 0.013669241676119444, 0.013669241676119444, 0.013523083745948279],\n", - " [0.010404798316163703,\n", - " 0.018276957651648031,\n", - " 0.018276957651648031,\n", - " 0.013669241676119444],\n", - " [0.0, 0.022203004503895198, 0.022203004503895198, 0.018276957651648031],\n", - " [0.018420497414567982,\n", - " 0.025321960133445929,\n", - " 0.025321960133445929,\n", - " 0.022203004503895198],\n", - " [0.0, 0.025470003729879277, 0.025470003729879277, 0.025321960133445929],\n", - " [0.0, 0.025592808071809327, 0.025592808071809327, 0.025470003729879277],\n", - " [0.0, 0.028203028950794386, 0.028203028950794386, 0.025592808071809327],\n", - " [0.0, 0.029486138523045286, 0.029486138523045286, 0.028203028950794386],\n", - " [0.0, 0.040604200004432975, 0.040604200004432975, 0.029486138523045286],\n", - " [0.040216194810050281,\n", - " 0.041589307135369111,\n", - " 0.041589307135369111,\n", - " 0.040604200004432975],\n", - " [0.0086836030540343844,\n", - " 0.042737283582371818,\n", - " 0.042737283582371818,\n", - " 0.041589307135369111],\n", - " [0.0, 0.046154068867225458, 0.046154068867225458, 0.042737283582371818],\n", - " [0.038614883930936636,\n", - " 0.048782694185540335,\n", - " 0.048782694185540335,\n", - " 0.046154068867225458],\n", - " [0.0, 0.083981955502362635, 0.083981955502362635, 0.048782694185540335],\n", - " [0.051639847889011929,\n", - " 0.084572747679143995,\n", - " 0.084572747679143995,\n", - " 0.083981955502362635],\n", - " [0.0, 0.1768885702186527, 0.1768885702186527, 0.084572747679143995],\n", - " [0.0, 0.20790660178311235, 0.20790660178311235, 0.1768885702186527],\n", - " [0.0, 0.28202367786056121, 0.28202367786056121, 0.20790660178311235],\n", - " [0.22174582925728303,\n", - " 0.34545371008718384,\n", - " 0.34545371008718384,\n", - " 0.28202367786056121],\n", - " [0.34354135382076895,\n", - " 0.84329815648440742,\n", - " 0.84329815648440742,\n", - " 0.34545371008718384],\n", - " [0.0, 1.5408999846781071, 1.5408999846781071, 0.84329815648440742],\n", - " [0.0, 2.7042572752622882, 2.7042572752622882, 1.5408999846781071],\n", - " [0.0, 0.59934010957385575, 0.59934010957385575, 0.0],\n", - " [0.0, 1.3469621023837253, 1.3469621023837253, 0.59934010957385575],\n", - " [0.0, 0.014150066148254108, 0.014150066148254108, 0.0],\n", - " [0.0, 0.024456702660006911, 0.024456702660006911, 0.014150066148254108],\n", - " [0.0, 0.035676244897690078, 0.035676244897690078, 0.0],\n", - " [0.024456702660006911,\n", - " 0.041778766137829812,\n", - " 0.041778766137829812,\n", - " 0.035676244897690078],\n", - " [0.0, 0.103344337111428, 0.103344337111428, 0.041778766137829812],\n", - " [0.0, 0.1612475933618791, 0.1612475933618791, 0.103344337111428],\n", - " [0.0, 0.044623613984074009, 0.044623613984074009, 0.0],\n", - " [0.0, 0.046466982525229565, 0.046466982525229565, 0.044623613984074009],\n", - " [0.0, 0.089437536957363548, 0.089437536957363548, 0.046466982525229565],\n", - " [0.0, 0.23106364339722049, 0.23106364339722049, 0.089437536957363548],\n", - " [0.0, 0.027297811084409186, 0.027297811084409186, 0.0],\n", - " [0.0, 0.051391678947093219, 0.051391678947093219, 0.0],\n", - " [0.0, 0.051501735058146307, 0.051501735058146307, 0.051391678947093219],\n", - " [0.0, 0.061493708881483852, 0.061493708881483852, 0.051501735058146307],\n", - " [0.027297811084409186,\n", - " 0.10181903407516216,\n", - " 0.10181903407516216,\n", - " 0.061493708881483852],\n", - " [0.0, 0.02099894116377668, 0.02099894116377668, 0.0],\n", - " [0.0, 0.038663795985392567, 0.038663795985392567, 0.02099894116377668],\n", - " [0.0, 0.063057416193499125, 0.063057416193499125, 0.038663795985392567],\n", - " [0.0, 0.066719189023843856, 0.066719189023843856, 0.0],\n", - " [0.063057416193499125,\n", - " 0.084465973847462739,\n", - " 0.084465973847462739,\n", - " 0.066719189023843856],\n", - " [0.0, 0.099408529473083249, 0.099408529473083249, 0.084465973847462739],\n", - " [0.0, 0.12881011423797598, 0.12881011423797598, 0.099408529473083249],\n", - " [0.0, 0.14563897607783488, 0.14563897607783488, 0.12881011423797598],\n", - " [0.10181903407516216,\n", - " 0.1604648663259334,\n", - " 0.1604648663259334,\n", - " 0.14563897607783488],\n", - " [0.0, 0.26796340553329379, 0.26796340553329379, 0.1604648663259334],\n", - " [0.23106364339722049,\n", - " 0.54122543670176126,\n", - " 0.54122543670176126,\n", - " 0.26796340553329379],\n", - " [0.0, 0.59823531346452163, 0.59823531346452163, 0.54122543670176126],\n", - " [0.0, 0.052012432052344619, 0.052012432052344619, 0.0],\n", - " [0.0, 0.10816265119716074, 0.10816265119716074, 0.0],\n", - " [0.0, 0.023772047135234019, 0.023772047135234019, 0.0],\n", - " [0.0, 0.026502844998231054, 0.026502844998231054, 0.023772047135234019],\n", - " [0.0, 0.034648702890580828, 0.034648702890580828, 0.026502844998231054],\n", - " [0.0, 0.036590694896380394, 0.036590694896380394, 0.034648702890580828],\n", - " [0.0, 0.050977138062070201, 0.050977138062070201, 0.036590694896380394],\n", - " [0.0, 0.1176954655796113, 0.1176954655796113, 0.0],\n", - " [0.050977138062070201,\n", - " 0.17035139619034725,\n", - " 0.17035139619034725,\n", - " 0.1176954655796113],\n", - " [0.10816265119716074,\n", - " 0.20380348426854866,\n", - " 0.20380348426854866,\n", - " 0.17035139619034725],\n", - " [0.0, 0.49434353106417517, 0.49434353106417517, 0.20380348426854866],\n", - " [0.052012432052344619,\n", - " 0.80736210024746746,\n", - " 0.80736210024746746,\n", - " 0.49434353106417517],\n", - " [0.0, 0.032562874381721597, 0.032562874381721597, 0.0],\n", - " [0.0, 0.044752982928511466, 0.044752982928511466, 0.032562874381721597],\n", - " [0.0, 0.18042892219653359, 0.18042892219653359, 0.044752982928511466],\n", - " [0.0, 0.01698488966699805, 0.01698488966699805, 0.0],\n", - " [0.0, 0.061122143818742786, 0.061122143818742786, 0.01698488966699805],\n", - " [0.0, 0.061969394542791739, 0.061969394542791739, 0.0],\n", - " [0.061122143818742786,\n", - " 0.14540082467785742,\n", - " 0.14540082467785742,\n", - " 0.061969394542791739],\n", - " [0.0, 0.14561550799279246, 0.14561550799279246, 0.14540082467785742],\n", - " [0.0, 0.16530793277094566, 0.16530793277094566, 0.14561550799279246],\n", - " [0.0, 0.053291331311946293, 0.053291331311946293, 0.0],\n", - " [0.0, 0.05981076211686339, 0.05981076211686339, 0.053291331311946293],\n", - " [0.0, 0.070289980573338115, 0.070289980573338115, 0.05981076211686339],\n", - " [0.0, 0.073053353441168839, 0.073053353441168839, 0.0],\n", - " [0.070289980573338115,\n", - " 0.076692975773527822,\n", - " 0.076692975773527822,\n", - " 0.073053353441168839],\n", - " [0.0, 0.079379409704285947, 0.079379409704285947, 0.076692975773527822],\n", - " [0.0, 0.059746422035124723, 0.059746422035124723, 0.0],\n", - " [0.0, 0.10173609118694762, 0.10173609118694762, 0.059746422035124723],\n", - " [0.079379409704285947,\n", - " 0.11755576825490258,\n", - " 0.11755576825490258,\n", - " 0.10173609118694762],\n", - " [0.0, 0.14291010313479996, 0.14291010313479996, 0.11755576825490258],\n", - " [0.0, 0.19328275813429344, 0.19328275813429344, 0.14291010313479996],\n", - " [0.16530793277094566,\n", - " 0.2072195995194511,\n", - " 0.2072195995194511,\n", - " 0.19328275813429344],\n", - " [0.0, 0.30975527231186278, 0.30975527231186278, 0.2072195995194511],\n", - " [0.0, 0.046518033933092826, 0.046518033933092826, 0.0],\n", - " [0.0, 0.19979537168062306, 0.19979537168062306, 0.046518033933092826],\n", - " [0.0, 0.053039229227048887, 0.053039229227048887, 0.0],\n", - " [0.0, 0.13146263878379819, 0.13146263878379819, 0.053039229227048887],\n", - " [0.0, 0.035261819947359392, 0.035261819947359392, 0.0],\n", - " [0.0, 0.071204666321813909, 0.071204666321813909, 0.035261819947359392],\n", - " [0.0, 0.035861730647024727, 0.035861730647024727, 0.0],\n", - " [0.0, 0.015482228844708696, 0.015482228844708696, 0.0],\n", - " [0.0, 0.030898703791579704, 0.030898703791579704, 0.015482228844708696],\n", - " [0.0, 0.050007937230002145, 0.050007937230002145, 0.030898703791579704],\n", - " [0.0, 0.055448972903020415, 0.055448972903020415, 0.050007937230002145],\n", - " [0.035861730647024727,\n", - " 0.1053565911084877,\n", - " 0.1053565911084877,\n", - " 0.055448972903020415],\n", - " [0.071204666321813909,\n", - " 0.10925943516694835,\n", - " 0.10925943516694835,\n", - " 0.1053565911084877],\n", - " [0.0, 0.13631799721607052, 0.13631799721607052, 0.10925943516694835],\n", - " [0.13146263878379819,\n", - " 0.21114653607861819,\n", - " 0.21114653607861819,\n", - " 0.13631799721607052],\n", - " [0.19979537168062306,\n", - " 0.23404281562355256,\n", - " 0.23404281562355256,\n", - " 0.21114653607861819],\n", - " [0.0, 0.30326293829117823, 0.30326293829117823, 0.23404281562355256],\n", - " [0.0, 0.19669145574986668, 0.19669145574986668, 0.0],\n", - " [0.0, 0.42024113468340596, 0.42024113468340596, 0.19669145574986668],\n", - " [0.30326293829117823,\n", - " 0.43646549571988302,\n", - " 0.43646549571988302,\n", - " 0.42024113468340596],\n", - " [0.30975527231186278,\n", - " 0.53273999329973465,\n", - " 0.53273999329973465,\n", - " 0.43646549571988302],\n", - " [0.18042892219653359,\n", - " 1.6229880124514178,\n", - " 1.6229880124514178,\n", - " 0.53273999329973465],\n", - " [0.80736210024746746,\n", - " 1.7295162818953203,\n", - " 1.7295162818953203,\n", - " 1.6229880124514178],\n", - " [0.59823531346452163,\n", - " 1.8971440185926829,\n", - " 1.8971440185926829,\n", - " 1.7295162818953203],\n", - " [0.1612475933618791,\n", - " 2.2980113482857316,\n", - " 2.2980113482857316,\n", - " 1.8971440185926829],\n", - " [0.0, 0.059555456995978452, 0.059555456995978452, 0.0],\n", - " [0.0, 0.2085934171636295, 0.2085934171636295, 0.059555456995978452],\n", - " [0.0, 0.01032704769041067, 0.01032704769041067, 0.0],\n", - " [0.0, 0.042869571726340441, 0.042869571726340441, 0.01032704769041067],\n", - " [0.0, 0.045592896749380205, 0.045592896749380205, 0.0],\n", - " [0.042869571726340441,\n", - " 0.049736333369088781,\n", - " 0.049736333369088781,\n", - " 0.045592896749380205],\n", - " [0.0, 0.051633019067255544, 0.051633019067255544, 0.0],\n", - " [0.0, 0.051599015581687918, 0.051599015581687918, 0.0],\n", - " [0.0, 0.1247199782232175, 0.1247199782232175, 0.051599015581687918],\n", - " [0.051633019067255544,\n", - " 0.2440109941334643,\n", - " 0.2440109941334643,\n", - " 0.1247199782232175],\n", - " [0.049736333369088781,\n", - " 0.30276168305285978,\n", - " 0.30276168305285978,\n", - " 0.2440109941334643],\n", - " [0.0, 0.065608258481690732, 0.065608258481690732, 0.0],\n", - " [0.0, 0.049200158963153322, 0.049200158963153322, 0.0],\n", - " [0.0, 0.019724040483631682, 0.019724040483631682, 0.0],\n", - " [0.0, 0.022380470616135861, 0.022380470616135861, 0.019724040483631682],\n", - " [0.0, 0.028563165808435532, 0.028563165808435532, 0.022380470616135861],\n", - " [0.0, 0.041443584063156208, 0.041443584063156208, 0.028563165808435532],\n", - " [0.0, 0.057502405593158286, 0.057502405593158286, 0.041443584063156208],\n", - " [0.049200158963153322,\n", - " 0.059470605218033344,\n", - " 0.059470605218033344,\n", - " 0.057502405593158286],\n", - " [0.0, 0.059852808288334683, 0.059852808288334683, 0.059470605218033344],\n", - " [0.0, 0.073771571875624428, 0.073771571875624428, 0.059852808288334683],\n", - " [0.0, 0.010152951147321882, 0.010152951147321882, 0.0],\n", - " [0.0, 0.059016718749859282, 0.059016718749859282, 0.010152951147321882],\n", - " [0.0, 0.028187853909095159, 0.028187853909095159, 0.0],\n", - " [0.0, 0.059670924309916135, 0.059670924309916135, 0.028187853909095159],\n", - " [0.059016718749859282,\n", - " 0.079638863333171203,\n", - " 0.079638863333171203,\n", - " 0.059670924309916135],\n", - " [0.073771571875624428,\n", - " 0.083182663848897748,\n", - " 0.083182663848897748,\n", - " 0.079638863333171203],\n", - " [0.065608258481690732,\n", - " 0.085526958568630018,\n", - " 0.085526958568630018,\n", - " 0.083182663848897748],\n", - " [0.0, 0.089477836808899522, 0.089477836808899522, 0.085526958568630018],\n", - " [0.0, 0.024142898603941719, 0.024142898603941719, 0.0],\n", - " [0.0, 0.033197929890290495, 0.033197929890290495, 0.024142898603941719],\n", - " [0.0, 0.0076075600556289079, 0.0076075600556289079, 0.0],\n", - " [0.0, 0.011210875077357949, 0.011210875077357949, 0.0],\n", - " [0.0, 0.013457505155116779, 0.013457505155116779, 0.011210875077357949],\n", - " [0.0, 0.013172021864544718, 0.013172021864544718, 0.0],\n", - " [0.0, 0.016586098667253246, 0.016586098667253246, 0.0],\n", - " [0.013172021864544718,\n", - " 0.0173423639103839,\n", - " 0.0173423639103839,\n", - " 0.016586098667253246],\n", - " [0.013457505155116779,\n", - " 0.018670737130598414,\n", - " 0.018670737130598414,\n", - " 0.0173423639103839],\n", - " [0.0, 0.020758040972126399, 0.020758040972126399, 0.018670737130598414],\n", - " [0.0, 0.031098601511959, 0.031098601511959, 0.020758040972126399],\n", - " [0.0, 0.041754629264310436, 0.041754629264310436, 0.031098601511959],\n", - " [0.0076075600556289079,\n", - " 0.061584341686824889,\n", - " 0.061584341686824889,\n", - " 0.041754629264310436],\n", - " [0.033197929890290495,\n", - " 0.065658008011209162,\n", - " 0.065658008011209162,\n", - " 0.061584341686824889],\n", - " [0.0, 0.068699861317185876, 0.068699861317185876, 0.065658008011209162],\n", - " [0.0, 0.049539020579734451, 0.049539020579734451, 0.0],\n", - " [0.0, 0.072804573956591262, 0.072804573956591262, 0.049539020579734451],\n", - " [0.068699861317185876,\n", - " 0.086915940569047168,\n", - " 0.086915940569047168,\n", - " 0.072804573956591262],\n", - " [0.0, 0.095659435593146228, 0.095659435593146228, 0.086915940569047168],\n", - " [0.089477836808899522,\n", - " 0.11460235345314687,\n", - " 0.11460235345314687,\n", - " 0.095659435593146228],\n", - " [0.0, 0.12701089509566743, 0.12701089509566743, 0.11460235345314687],\n", - " [0.0, 0.13254671252429173, 0.13254671252429173, 0.12701089509566743],\n", - " [0.0, 0.056714331962915726, 0.056714331962915726, 0.0],\n", - " [0.0, 0.11288589304248571, 0.11288589304248571, 0.056714331962915726],\n", - " [0.0, 0.07280329059184254, 0.07280329059184254, 0.0],\n", - " [0.0, 0.080841990636060734, 0.080841990636060734, 0.07280329059184254],\n", - " [0.0, 0.082324864299915548, 0.082324864299915548, 0.080841990636060734],\n", - " [0.0, 0.091779385158099774, 0.091779385158099774, 0.082324864299915548],\n", - " [0.0, 0.12864613218048723, 0.12864613218048723, 0.091779385158099774],\n", - " [0.11288589304248571,\n", - " 0.14506416723643245,\n", - " 0.14506416723643245,\n", - " 0.12864613218048723],\n", - " [0.13254671252429173,\n", - " 0.15362834161052558,\n", - " 0.15362834161052558,\n", - " 0.14506416723643245],\n", - " [0.0, 0.16585016605659414, 0.16585016605659414, 0.15362834161052558],\n", - " [0.0, 0.17605003376598116, 0.17605003376598116, 0.16585016605659414],\n", - " [0.0, 0.22579841578274806, 0.22579841578274806, 0.17605003376598116],\n", - " [0.0, 0.22883149909923156, 0.22883149909923156, 0.22579841578274806],\n", - " [0.0, 0.11163097717480681, 0.11163097717480681, 0.0],\n", - " [0.0, 0.033692195950995887, 0.033692195950995887, 0.0],\n", - " [0.0, 0.061242448816154128, 0.061242448816154128, 0.033692195950995887],\n", - " [0.0, 0.073998306257644864, 0.073998306257644864, 0.061242448816154128],\n", - " [0.0, 0.081102272132164907, 0.081102272132164907, 0.0],\n", - " [0.073998306257644864,\n", - " 0.12119266157651597,\n", - " 0.12119266157651597,\n", - " 0.081102272132164907],\n", - " [0.0, 0.11938575444750045, 0.11938575444750045, 0.0],\n", - " [0.0, 0.1468223747287877, 0.1468223747287877, 0.11938575444750045],\n", - " [0.0, 0.16871778886945177, 0.16871778886945177, 0.1468223747287877],\n", - " [0.12119266157651597,\n", - " 0.2203538448269137,\n", - " 0.2203538448269137,\n", - " 0.16871778886945177],\n", - " [0.11163097717480681,\n", - " 0.34863631449692417,\n", - " 0.34863631449692417,\n", - " 0.2203538448269137],\n", - " [0.0, 0.39832174188335839, 0.39832174188335839, 0.34863631449692417],\n", - " [0.22883149909923156,\n", - " 0.41752518876349926,\n", - " 0.41752518876349926,\n", - " 0.39832174188335839],\n", - " [0.30276168305285978,\n", - " 0.71040568246108149,\n", - " 0.71040568246108149,\n", - " 0.41752518876349926],\n", - " [0.0, 0.7369189879559388, 0.7369189879559388, 0.71040568246108149],\n", - " [0.0, 0.90149476200474365, 0.90149476200474365, 0.7369189879559388],\n", - " [0.2085934171636295,\n", - " 3.0644933075162673,\n", - " 3.0644933075162673,\n", - " 0.90149476200474365],\n", - " [2.2980113482857316,\n", - " 3.9001148663398419,\n", - " 3.9001148663398419,\n", - " 3.0644933075162673],\n", - " [1.3469621023837253,\n", - " 3.9012960550264695,\n", - " 3.9012960550264695,\n", - " 3.9001148663398419],\n", - " [2.7042572752622882,\n", - " 4.0498457533935834,\n", - " 4.0498457533935834,\n", - " 3.9012960550264695],\n", - " [1.6524886027519214,\n", - " 4.4984236760096348,\n", - " 4.4984236760096348,\n", - " 4.0498457533935834],\n", - " [0.0, 0.073944659658423909, 0.073944659658423909, 0.0],\n", - " [0.0, 0.085482524623457609, 0.085482524623457609, 0.0],\n", - " [0.0, 0.25863004466224937, 0.25863004466224937, 0.085482524623457609],\n", - " [0.0, 0.0075985062347820858, 0.0075985062347820858, 0.0],\n", - " [0.0, 0.039738337786070679, 0.039738337786070679, 0.0075985062347820858],\n", - " [0.0, 0.071684703319464818, 0.071684703319464818, 0.039738337786070679],\n", - " [0.0, 0.074451231400152099, 0.074451231400152099, 0.071684703319464818],\n", - " [0.0, 0.13994757474497152, 0.13994757474497152, 0.074451231400152099],\n", - " [0.0, 0.20481286531856546, 0.20481286531856546, 0.13994757474497152],\n", - " [0.0, 0.19811461261098345, 0.19811461261098345, 0.0],\n", - " [0.0, 0.30070401707493016, 0.30070401707493016, 0.19811461261098345],\n", - " [0.20481286531856546,\n", - " 0.52570085768428898,\n", - " 0.52570085768428898,\n", - " 0.30070401707493016],\n", - " [0.0, 0.028148966677303731, 0.028148966677303731, 0.0],\n", - " [0.0, 0.054641212449946193, 0.054641212449946193, 0.028148966677303731],\n", - " [0.0, 0.073191787107571085, 0.073191787107571085, 0.054641212449946193],\n", - " [0.0, 0.055294112932574919, 0.055294112932574919, 0.0],\n", - " [0.0, 0.005815876975994335, 0.005815876975994335, 0.0],\n", - " [0.0, 0.14049676504816741, 0.14049676504816741, 0.005815876975994335],\n", - " [0.055294112932574919,\n", - " 0.14981747602332865,\n", - " 0.14981747602332865,\n", - " 0.14049676504816741],\n", - " [0.073191787107571085,\n", - " 0.17504322746682244,\n", - " 0.17504322746682244,\n", - " 0.14981747602332865],\n", - " [0.0, 0.21577157052076726, 0.21577157052076726, 0.17504322746682244],\n", - " [0.0, 0.025878460618819703, 0.025878460618819703, 0.0],\n", - " [0.0, 0.01199615705131458, 0.01199615705131458, 0.0],\n", - " [0.0, 0.0030980074241410949, 0.0030980074241410949, 0.0],\n", - " [0.0, 0.019995884426553191, 0.019995884426553191, 0.0030980074241410949],\n", - " [0.01199615705131458,\n", - " 0.031658051898378982,\n", - " 0.031658051898378982,\n", - " 0.019995884426553191],\n", - " [0.025878460618819703,\n", - " 0.037283256684467247,\n", - " 0.037283256684467247,\n", - " 0.031658051898378982],\n", - " [0.0, 0.13433485357493333, 0.13433485357493333, 0.037283256684467247],\n", - " [0.0, 0.0143634257752038, 0.0143634257752038, 0.0],\n", - " [0.0, 0.07138260320274252, 0.07138260320274252, 0.0143634257752038],\n", - " [0.0, 0.077124019637204791, 0.077124019637204791, 0.07138260320274252],\n", - " [0.0, 0.163515104653985, 0.163515104653985, 0.077124019637204791],\n", - " [0.0, 0.19745831606948469, 0.19745831606948469, 0.163515104653985],\n", - " [0.0, 0.33032139646259784, 0.33032139646259784, 0.19745831606948469],\n", - " [0.0, 0.032723608068181961, 0.032723608068181961, 0.0],\n", - " [0.0, 0.059607699922078095, 0.059607699922078095, 0.032723608068181961],\n", - " [0.0, 0.011247056726093024, 0.011247056726093024, 0.0],\n", - " [0.0, 0.0093737056173170772, 0.0093737056173170772, 0.0],\n", - " [0.0, 0.01630576293830463, 0.01630576293830463, 0.0],\n", - " [0.0093737056173170772,\n", - " 0.0168844037502002,\n", - " 0.0168844037502002,\n", - " 0.01630576293830463],\n", - " [0.0, 0.010120872739044785, 0.010120872739044785, 0.0],\n", - " [0.0, 0.012431863939084707, 0.012431863939084707, 0.0],\n", - " [0.0, 0.01701819875897222, 0.01701819875897222, 0.012431863939084707],\n", - " [0.0, 0.018934244241585352, 0.018934244241585352, 0.01701819875897222],\n", - " [0.010120872739044785,\n", - " 0.01949769714606962,\n", - " 0.01949769714606962,\n", - " 0.018934244241585352],\n", - " [0.0168844037502002,\n", - " 0.019542592765551255,\n", - " 0.019542592765551255,\n", - " 0.01949769714606962],\n", - " [0.011247056726093024,\n", - " 0.033588850486444048,\n", - " 0.033588850486444048,\n", - " 0.019542592765551255],\n", - " [0.0, 0.036362828341592025, 0.036362828341592025, 0.033588850486444048],\n", - " [0.0, 0.042876986426282633, 0.042876986426282633, 0.036362828341592025],\n", - " [0.0, 0.043020176208382215, 0.043020176208382215, 0.0],\n", - " [0.042876986426282633,\n", - " 0.044997083105462098,\n", - " 0.044997083105462098,\n", - " 0.043020176208382215],\n", - " [0.0, 0.020237745452505274, 0.020237745452505274, 0.0],\n", - " [0.0, 0.017281247206150777, 0.017281247206150777, 0.0],\n", - " [0.0, 0.011865198734118248, 0.011865198734118248, 0.0],\n", - " [0.0, 0.00081522512228552843, 0.00081522512228552843, 0.0],\n", - " [0.0, 0.0015821453789008906, 0.0015821453789008906, 0.00081522512228552843],\n", - " [0.0, 0.0015906341502648323, 0.0015906341502648323, 0.0],\n", - " [0.0, 0.0061239697092657893, 0.0061239697092657893, 0.0015906341502648323],\n", - " [0.0015821453789008906,\n", - " 0.017390399219109995,\n", - " 0.017390399219109995,\n", - " 0.0061239697092657893],\n", - " [0.011865198734118248,\n", - " 0.017517702617637087,\n", - " 0.017517702617637087,\n", - " 0.017390399219109995],\n", - " [0.0, 0.01831336574744517, 0.01831336574744517, 0.017517702617637087],\n", - " [0.017281247206150777,\n", - " 0.025907579470109323,\n", - " 0.025907579470109323,\n", - " 0.01831336574744517],\n", - " [0.0, 0.028366467615827021, 0.028366467615827021, 0.0],\n", - " [0.025907579470109323,\n", - " 0.034287592580998241,\n", - " 0.034287592580998241,\n", - " 0.028366467615827021],\n", - " [0.020237745452505274,\n", - " 0.037606675697273023,\n", - " 0.037606675697273023,\n", - " 0.034287592580998241],\n", - " [0.0, 0.046911848098318658, 0.046911848098318658, 0.037606675697273023],\n", - " [0.044997083105462098,\n", - " 0.048365014835098773,\n", - " 0.048365014835098773,\n", - " 0.046911848098318658],\n", - " [0.0, 0.026224900018873558, 0.026224900018873558, 0.0],\n", - " [0.0, 0.036973134205795219, 0.036973134205795219, 0.026224900018873558],\n", - " [0.0, 0.036989479855760059, 0.036989479855760059, 0.0],\n", - " [0.036973134205795219,\n", - " 0.038455858396346028,\n", - " 0.038455858396346028,\n", - " 0.036989479855760059],\n", - " [0.0, 0.00064965914140107924, 0.00064965914140107924, 0.0],\n", - " [0.0, 0.00071276924736566119, 0.00071276924736566119, 0.0],\n", - " [0.0,\n", - " 0.00091121731766314923,\n", - " 0.00091121731766314923,\n", - " 0.00071276924736566119],\n", - " [0.00064965914140107924,\n", - " 0.0035409034157982827,\n", - " 0.0035409034157982827,\n", - " 0.00091121731766314923],\n", - " [0.0, 0.0041512660719321267, 0.0041512660719321267, 0.0035409034157982827],\n", - " [0.0, 0.0088833437398291044, 0.0088833437398291044, 0.0],\n", - " [0.0, 0.012020308981047032, 0.012020308981047032, 0.0],\n", - " [0.0, 0.012805711264895913, 0.012805711264895913, 0.012020308981047032],\n", - " [0.0, 0.015522795753348639, 0.015522795753348639, 0.012805711264895913],\n", - " [0.0088833437398291044,\n", - " 0.024388405954476704,\n", - " 0.024388405954476704,\n", - " 0.015522795753348639],\n", - " [0.0, 0.015610575005425153, 0.015610575005425153, 0.0],\n", - " [0.0, 0.018323352586251857, 0.018323352586251857, 0.015610575005425153],\n", - " [0.0, 0.0076194837095489116, 0.0076194837095489116, 0.0],\n", - " [0.0, 0.00036272992707620525, 0.00036272992707620525, 0.0],\n", - " [0.0, 0.0027701077596402599, 0.0027701077596402599, 0.00036272992707620525],\n", - " [0.0, 0.018450201110015937, 0.018450201110015937, 0.0027701077596402599],\n", - " [0.0076194837095489116,\n", - " 0.018883792468674457,\n", - " 0.018883792468674457,\n", - " 0.018450201110015937],\n", - " [0.018323352586251857,\n", - " 0.024763251987574668,\n", - " 0.024763251987574668,\n", - " 0.018883792468674457],\n", - " [0.024388405954476704,\n", - " 0.024857553479777965,\n", - " 0.024857553479777965,\n", - " 0.024763251987574668],\n", - " [0.0, 0.026636854619117141, 0.026636854619117141, 0.0],\n", - " [0.024857553479777965,\n", - " 0.028718911469623493,\n", - " 0.028718911469623493,\n", - " 0.026636854619117141],\n", - " [0.0041512660719321267,\n", - " 0.038638206700109902,\n", - " 0.038638206700109902,\n", - " 0.028718911469623493],\n", - " [0.038455858396346028,\n", - " 0.043438708740017533,\n", - " 0.043438708740017533,\n", - " 0.038638206700109902],\n", - " [0.0, 0.044068577127022911, 0.044068577127022911, 0.043438708740017533],\n", - " [0.0, 0.051819075416299161, 0.051819075416299161, 0.044068577127022911],\n", - " [0.048365014835098773,\n", - " 0.061544174712155043,\n", - " 0.061544174712155043,\n", - " 0.051819075416299161],\n", - " [0.0, 0.062271443214368699, 0.062271443214368699, 0.061544174712155043],\n", - " [0.059607699922078095,\n", - " 0.085379859006673609,\n", - " 0.085379859006673609,\n", - " 0.062271443214368699],\n", - " [0.0, 0.02225606649882864, 0.02225606649882864, 0.0],\n", - " [0.0, 0.059090617402426646, 0.059090617402426646, 0.02225606649882864],\n", - " [0.0, 0.057117177521300633, 0.057117177521300633, 0.0],\n", - " [0.0, 0.065920229861548968, 0.065920229861548968, 0.057117177521300633],\n", - " [0.059090617402426646,\n", - " 0.076574691641554657,\n", - " 0.076574691641554657,\n", - " 0.065920229861548968],\n", - " [0.0, 0.092676488863138937, 0.092676488863138937, 0.076574691641554657],\n", - " [0.085379859006673609,\n", - " 0.10939446425665267,\n", - " 0.10939446425665267,\n", - " 0.092676488863138937],\n", - " [0.0, 0.11645164634731418, 0.11645164634731418, 0.10939446425665267],\n", - " [0.0, 0.063389889950999131, 0.063389889950999131, 0.0],\n", - " [0.0, 0.051923219565053837, 0.051923219565053837, 0.0],\n", - " [0.0, 0.096877076819026339, 0.096877076819026339, 0.051923219565053837],\n", - " [0.063389889950999131,\n", - " 0.10714677143058869,\n", - " 0.10714677143058869,\n", - " 0.096877076819026339],\n", - " [0.0, 0.12510666250044852, 0.12510666250044852, 0.10714677143058869],\n", - " [0.11645164634731418,\n", - " 0.19304434411037158,\n", - " 0.19304434411037158,\n", - " 0.12510666250044852],\n", - " [0.0, 0.022358358548873612, 0.022358358548873612, 0.0],\n", - " [0.0, 0.024609707759340693, 0.024609707759340693, 0.0],\n", - " [0.022358358548873612,\n", - " 0.03211845606501005,\n", - " 0.03211845606501005,\n", - " 0.024609707759340693],\n", - " [0.0, 0.0060249651451306039, 0.0060249651451306039, 0.0],\n", - " [0.0, 0.0072810557613551012, 0.0072810557613551012, 0.0060249651451306039],\n", - " [0.0, 0.00069812104967540008, 0.00069812104967540008, 0.0],\n", - " [0.0, 0.0038732337910376453, 0.0038732337910376453, 0.00069812104967540008],\n", - " [0.0, 0.0054210672380984792, 0.0054210672380984792, 0.0038732337910376453],\n", - " [0.0, 0.0071222879750799193, 0.0071222879750799193, 0.0054210672380984792],\n", - " [0.0, 0.0072961053309270997, 0.0072961053309270997, 0.0071222879750799193],\n", - " [0.0, 0.013606017235033126, 0.013606017235033126, 0.0072961053309270997],\n", - " [0.0072810557613551012,\n", - " 0.017483771132105797,\n", - " 0.017483771132105797,\n", - " 0.013606017235033126],\n", - " [0.0, 0.017791237674760336, 0.017791237674760336, 0.017483771132105797],\n", - " [0.0, 0.0025436493469083682, 0.0025436493469083682, 0.0],\n", - " [0.0, 0.0071484791389507807, 0.0071484791389507807, 0.0025436493469083682],\n", - " [0.0, 0.0055294532279413101, 0.0055294532279413101, 0.0],\n", - " [0.0, 0.0074324305580364385, 0.0074324305580364385, 0.0055294532279413101],\n", - " [0.0, 0.0079787505914105661, 0.0079787505914105661, 0.0074324305580364385],\n", - " [0.0071484791389507807,\n", - " 0.0087896530079491705,\n", - " 0.0087896530079491705,\n", - " 0.0079787505914105661],\n", - " [0.0, 0.0098042358192787747, 0.0098042358192787747, 0.0087896530079491705],\n", - " [0.0, 0.01836199144972973, 0.01836199144972973, 0.0098042358192787747],\n", - " [0.017791237674760336,\n", - " 0.019972382757190817,\n", - " 0.019972382757190817,\n", - " 0.01836199144972973],\n", - " [0.0, 0.024886770802977277, 0.024886770802977277, 0.019972382757190817],\n", - " [0.0, 0.032857985604717393, 0.032857985604717393, 0.024886770802977277],\n", - " [0.03211845606501005,\n", - " 0.041970311947853514,\n", - " 0.041970311947853514,\n", - " 0.032857985604717393],\n", - " [0.0, 0.017274949840733397, 0.017274949840733397, 0.0],\n", - " [0.0, 0.012201181623106166, 0.012201181623106166, 0.0],\n", - " [0.0, 0.0098052561924728623, 0.0098052561924728623, 0.0],\n", - " [0.0, 0.01718963431839169, 0.01718963431839169, 0.0],\n", - " [0.0098052561924728623,\n", - " 0.017623102138954235,\n", - " 0.017623102138954235,\n", - " 0.01718963431839169],\n", - " [0.0, 0.0027154500547786785, 0.0027154500547786785, 0.0],\n", - " [0.0, 0.0099218319377025795, 0.0099218319377025795, 0.0],\n", - " [0.0, 0.014223826840894863, 0.014223826840894863, 0.0099218319377025795],\n", - " [0.0, 0.015244017121481821, 0.015244017121481821, 0.014223826840894863],\n", - " [0.0, 0.021674086370600944, 0.021674086370600944, 0.015244017121481821],\n", - " [0.0027154500547786785,\n", - " 0.021695597456631594,\n", - " 0.021695597456631594,\n", - " 0.021674086370600944],\n", - " [0.017623102138954235,\n", - " 0.021706773712368944,\n", - " 0.021706773712368944,\n", - " 0.021695597456631594],\n", - " [0.012201181623106166,\n", - " 0.038945767472216897,\n", - " 0.038945767472216897,\n", - " 0.021706773712368944],\n", - " [0.017274949840733397,\n", - " 0.044240447127035787,\n", - " 0.044240447127035787,\n", - " 0.038945767472216897],\n", - " [0.041970311947853514,\n", - " 0.059049934538494893,\n", - " 0.059049934538494893,\n", - " 0.044240447127035787],\n", - " [0.0, 0.06306913465396638, 0.06306913465396638, 0.059049934538494893],\n", - " [0.0, 0.0028593621666345658, 0.0028593621666345658, 0.0],\n", - " [0.0, 0.0036876998250952747, 0.0036876998250952747, 0.0],\n", - " [0.0028593621666345658,\n", - " 0.006056857683656579,\n", - " 0.006056857683656579,\n", - " 0.0036876998250952747],\n", - " [0.0, 0.010860410029086227, 0.010860410029086227, 0.006056857683656579],\n", - " [0.0, 0.0026456159963230822, 0.0026456159963230822, 0.0],\n", - " [0.0, 0.0035421977641043609, 0.0035421977641043609, 0.0],\n", - " [0.0026456159963230822,\n", - " 0.0060885420258068312,\n", - " 0.0060885420258068312,\n", - " 0.0035421977641043609],\n", - " [0.0, 0.012823845951984282, 0.012823845951984282, 0.0060885420258068312],\n", - " [0.010860410029086227,\n", - " 0.014361114859229591,\n", - " 0.014361114859229591,\n", - " 0.012823845951984282],\n", - " [0.0, 0.022777150941231176, 0.022777150941231176, 0.0],\n", - " [0.0, 0.023127708749463759, 0.023127708749463759, 0.022777150941231176],\n", - " [0.014361114859229591,\n", - " 0.028816307691995186,\n", - " 0.028816307691995186,\n", - " 0.023127708749463759],\n", - " [0.0, 0.030678002624035951, 0.030678002624035951, 0.028816307691995186],\n", - " [0.0, 0.031566429082176571, 0.031566429082176571, 0.030678002624035951],\n", - " [0.0, 0.01430599737872653, 0.01430599737872653, 0.0],\n", - " [0.0, 0.0089733251919256289, 0.0089733251919256289, 0.0],\n", - " [0.0, 0.0061099902618577126, 0.0061099902618577126, 0.0],\n", - " [0.0, 0.00076478297575189973, 0.00076478297575189973, 0.0],\n", - " [0.0, 0.0023560884957916262, 0.0023560884957916262, 0.00076478297575189973],\n", - " [0.0, 0.006913026110175087, 0.006913026110175087, 0.0023560884957916262],\n", - " [0.0, 0.00067426552633807063, 0.00067426552633807063, 0.0],\n", - " [0.0, 0.0024582434785867312, 0.0024582434785867312, 0.0],\n", - " [0.0, 0.0046617758418804516, 0.0046617758418804516, 0.0024582434785867312],\n", - " [0.00067426552633807063,\n", - " 0.0070470762731801419,\n", - " 0.0070470762731801419,\n", - " 0.0046617758418804516],\n", - " [0.0, 0.0072498893784610366, 0.0072498893784610366, 0.0070470762731801419],\n", - " [0.0, 0.0077223147436476713, 0.0077223147436476713, 0.0072498893784610366],\n", - " [0.006913026110175087,\n", - " 0.0077416733333230516,\n", - " 0.0077416733333230516,\n", - " 0.0077223147436476713],\n", - " [0.0, 0.0002312249986513723, 0.0002312249986513723, 0.0],\n", - " [0.0, 0.0028408146718807616, 0.0028408146718807616, 0.0002312249986513723],\n", - " [0.0, 0.0021830483274471778, 0.0021830483274471778, 0.0],\n", - " [0.0, 0.0046878452406272355, 0.0046878452406272355, 0.0021830483274471778],\n", - " [0.0028408146718807616,\n", - " 0.006030107461723464,\n", - " 0.006030107461723464,\n", - " 0.0046878452406272355],\n", - " [0.0, 0.0037664306710782796, 0.0037664306710782796, 0.0],\n", - " [0.0, 0.0048777721348966735, 0.0048777721348966735, 0.0],\n", - " [0.0037664306710782796,\n", - " 0.007320980603720135,\n", - " 0.007320980603720135,\n", - " 0.0048777721348966735],\n", - " [0.006030107461723464,\n", - " 0.0079361857967218622,\n", - " 0.0079361857967218622,\n", - " 0.007320980603720135],\n", - " [0.0077416733333230516,\n", - " 0.0080203522366582049,\n", - " 0.0080203522366582049,\n", - " 0.0079361857967218622],\n", - " [0.0, 0.0081868641127070211, 0.0081868641127070211, 0.0080203522366582049],\n", - " [0.0061099902618577126,\n", - " 0.010980415748047067,\n", - " 0.010980415748047067,\n", - " 0.0081868641127070211],\n", - " [0.0089733251919256289,\n", - " 0.014600241436356078,\n", - " 0.014600241436356078,\n", - " 0.010980415748047067],\n", - " [0.01430599737872653,\n", - " 0.014807611556221819,\n", - " 0.014807611556221819,\n", - " 0.014600241436356078],\n", - " [0.0, 0.016437378197266803, 0.016437378197266803, 0.014807611556221819],\n", - " [0.0, 0.0039494000810328988, 0.0039494000810328988, 0.0],\n", - " [0.0, 0.023721997238848901, 0.023721997238848901, 0.0039494000810328988],\n", - " [0.0, 0.0082581337480065777, 0.0082581337480065777, 0.0],\n", - " [0.0, 0.01829679384482279, 0.01829679384482279, 0.0082581337480065777],\n", - " [0.0, 0.018815465261322353, 0.018815465261322353, 0.01829679384482279],\n", - " [0.0, 0.020967962466589034, 0.020967962466589034, 0.0],\n", - " [0.018815465261322353,\n", - " 0.023811077779051559,\n", - " 0.023811077779051559,\n", - " 0.020967962466589034],\n", - " [0.023721997238848901,\n", - " 0.026467670335706031,\n", - " 0.026467670335706031,\n", - " 0.023811077779051559],\n", - " [0.016437378197266803,\n", - " 0.029127625049084279,\n", - " 0.029127625049084279,\n", - " 0.026467670335706031],\n", - " [0.0, 0.030312128826595685, 0.030312128826595685, 0.029127625049084279],\n", - " [0.0, 0.034820805648353978, 0.034820805648353978, 0.030312128826595685],\n", - " [0.0, 0.011468902519426439, 0.011468902519426439, 0.0],\n", - " [0.0, 0.012622087505634108, 0.012622087505634108, 0.011468902519426439],\n", - " [0.0, 0.022975496512584508, 0.022975496512584508, 0.012622087505634108],\n", - " [0.0, 0.0074459144502155841, 0.0074459144502155841, 0.0],\n", - " [0.0, 0.0081484722494494597, 0.0081484722494494597, 0.0074459144502155841],\n", - " [0.0, 0.0043145119075055586, 0.0043145119075055586, 0.0],\n", - " [0.0, 0.0094500375131535731, 0.0094500375131535731, 0.0043145119075055586],\n", - " [0.0, 0.0097108108827300751, 0.0097108108827300751, 0.0094500375131535731],\n", - " [0.0, 0.0098505899315680674, 0.0098505899315680674, 0.0097108108827300751],\n", - " [0.0, 0.01131609760473354, 0.01131609760473354, 0.0098505899315680674],\n", - " [0.0, 0.014165335506097316, 0.014165335506097316, 0.01131609760473354],\n", - " [0.0, 0.0087523393444220374, 0.0087523393444220374, 0.0],\n", - " [0.0, 0.0077389658869912439, 0.0077389658869912439, 0.0],\n", - " [0.0, 0.011682192816417691, 0.011682192816417691, 0.0077389658869912439],\n", - " [0.0, 0.004387759337062311, 0.004387759337062311, 0.0],\n", - " [0.0, 0.0060504571728084216, 0.0060504571728084216, 0.0],\n", - " [0.0, 0.0021016120003516576, 0.0021016120003516576, 0.0],\n", - " [0.0, 0.0044602772335329546, 0.0044602772335329546, 0.0021016120003516576],\n", - " [0.0, 0.0067140214476812442, 0.0067140214476812442, 0.0044602772335329546],\n", - " [0.0060504571728084216,\n", - " 0.0076479914356603184,\n", - " 0.0076479914356603184,\n", - " 0.0067140214476812442],\n", - " [0.0, 0.0055688126202908077, 0.0055688126202908077, 0.0],\n", - " [0.0, 0.0031115687361792143, 0.0031115687361792143, 0.0],\n", - " [0.0, 0.0014949130409466834, 0.0014949130409466834, 0.0],\n", - " [0.0, 0.0028363189171839317, 0.0028363189171839317, 0.0],\n", - " [0.0014949130409466834,\n", - " 0.0051019259108695198,\n", - " 0.0051019259108695198,\n", - " 0.0028363189171839317],\n", - " [0.0031115687361792143,\n", - " 0.0070612738935766335,\n", - " 0.0070612738935766335,\n", - " 0.0051019259108695198],\n", - " [0.0, 0.0012763702440901929, 0.0012763702440901929, 0.0],\n", - " [0.0, 0.0023288514336516778, 0.0023288514336516778, 0.0],\n", - " [0.0, 0.0033312571200634165, 0.0033312571200634165, 0.0023288514336516778],\n", - " [0.0, 0.0035388823094339504, 0.0035388823094339504, 0.0033312571200634165],\n", - " [0.0012763702440901929,\n", - " 0.0044345056094269742,\n", - " 0.0044345056094269742,\n", - " 0.0035388823094339504],\n", - " [0.0, 0.0062083943979124659, 0.0062083943979124659, 0.0044345056094269742],\n", - " [0.0, 0.0070897698129032344, 0.0070897698129032344, 0.0062083943979124659],\n", - " [0.0070612738935766335,\n", - " 0.0081291949170837416,\n", - " 0.0081291949170837416,\n", - " 0.0070897698129032344],\n", - " [0.0, 0.0049161880558024774, 0.0049161880558024774, 0.0],\n", - " [0.0, 0.0081776183574428195, 0.0081776183574428195, 0.0049161880558024774],\n", - " [0.0081291949170837416,\n", - " 0.0082044017454022521,\n", - " 0.0082044017454022521,\n", - " 0.0081776183574428195],\n", - " [0.0055688126202908077,\n", - " 0.008905795079608262,\n", - " 0.008905795079608262,\n", - " 0.0082044017454022521],\n", - " [0.0, 0.0097764990154934079, 0.0097764990154934079, 0.008905795079608262],\n", - " [0.0, 0.010049126131167612, 0.010049126131167612, 0.0],\n", - " [0.0097764990154934079,\n", - " 0.010800796683579392,\n", - " 0.010800796683579392,\n", - " 0.010049126131167612],\n", - " [0.0, 0.010954052446462295, 0.010954052446462295, 0.010800796683579392],\n", - " [0.0, 0.011224347553425173, 0.011224347553425173, 0.010954052446462295],\n", - " [0.0, 0.011854376828831019, 0.011854376828831019, 0.0],\n", - " [0.011224347553425173,\n", - " 0.011921791979399356,\n", - " 0.011921791979399356,\n", - " 0.011854376828831019],\n", - " [0.0076479914356603184,\n", - " 0.01283953756955534,\n", - " 0.01283953756955534,\n", - " 0.011921791979399356],\n", - " [0.0, 0.013477931295273457, 0.013477931295273457, 0.01283953756955534],\n", - " [0.004387759337062311,\n", - " 0.01600094937809135,\n", - " 0.01600094937809135,\n", - " 0.013477931295273457],\n", - " [0.0, 0.016648788094032908, 0.016648788094032908, 0.01600094937809135],\n", - " [0.011682192816417691,\n", - " 0.019535668762551726,\n", - " 0.019535668762551726,\n", - " 0.016648788094032908],\n", - " [0.0, 0.012385644916596831, 0.012385644916596831, 0.0],\n", - " [0.0, 0.016711748711617128, 0.016711748711617128, 0.012385644916596831],\n", - " [0.0, 0.018950593658245102, 0.018950593658245102, 0.016711748711617128],\n", - " [0.0, 0.020797672369755126, 0.020797672369755126, 0.018950593658245102],\n", - " [0.019535668762551726,\n", - " 0.02082140554813916,\n", - " 0.02082140554813916,\n", - " 0.020797672369755126],\n", - " [0.0087523393444220374,\n", - " 0.023977738279498562,\n", - " 0.023977738279498562,\n", - " 0.02082140554813916],\n", - " [0.0, 0.024163850355430887, 0.024163850355430887, 0.023977738279498562],\n", - " [0.014165335506097316,\n", - " 0.024344711068315511,\n", - " 0.024344711068315511,\n", - " 0.024163850355430887],\n", - " [0.0081484722494494597,\n", - " 0.024673852333993513,\n", - " 0.024673852333993513,\n", - " 0.024344711068315511],\n", - " [0.0, 0.033386698249450737, 0.033386698249450737, 0.024673852333993513],\n", - " [0.0, 0.0093711472083149207, 0.0093711472083149207, 0.0],\n", - " [0.0, 0.014007175768158207, 0.014007175768158207, 0.0],\n", - " [0.0, 0.015207030906787575, 0.015207030906787575, 0.0],\n", - " [0.014007175768158207,\n", - " 0.017751782164057102,\n", - " 0.017751782164057102,\n", - " 0.015207030906787575],\n", - " [0.0093711472083149207,\n", - " 0.031017366103526751,\n", - " 0.031017366103526751,\n", - " 0.017751782164057102],\n", - " [0.0, 0.031395950439510503, 0.031395950439510503, 0.031017366103526751],\n", - " [0.0, 0.032895685507363444, 0.032895685507363444, 0.031395950439510503],\n", - " [0.0, 0.034491738865988358, 0.034491738865988358, 0.032895685507363444],\n", - " [0.033386698249450737,\n", - " 0.034653616290370871,\n", - " 0.034653616290370871,\n", - " 0.034491738865988358],\n", - " [0.0, 0.039856411905738631, 0.039856411905738631, 0.034653616290370871],\n", - " [0.0, 0.036892769278005007, 0.036892769278005007, 0.0],\n", - " [0.0, 0.0023333677378498999, 0.0023333677378498999, 0.0],\n", - " [0.0, 0.032735671796987449, 0.032735671796987449, 0.0023333677378498999],\n", - " [0.0, 0.036083511816333978, 0.036083511816333978, 0.032735671796987449],\n", - " [0.0, 0.017134516188103716, 0.017134516188103716, 0.0],\n", - " [0.0, 0.0011734709199607658, 0.0011734709199607658, 0.0],\n", - " [0.0, 0.0039657968934358459, 0.0039657968934358459, 0.0],\n", - " [0.0011734709199607658,\n", - " 0.0088492237512740879,\n", - " 0.0088492237512740879,\n", - " 0.0039657968934358459],\n", - " [0.0, 0.017899541725974629, 0.017899541725974629, 0.0088492237512740879],\n", - " [0.0, 0.023203343487522139, 0.023203343487522139, 0.017899541725974629],\n", - " [0.017134516188103716,\n", - " 0.038911881784360849,\n", - " 0.038911881784360849,\n", - " 0.023203343487522139],\n", - " [0.036083511816333978,\n", - " 0.040501323743799729,\n", - " 0.040501323743799729,\n", - " 0.038911881784360849],\n", - " [0.036892769278005007,\n", - " 0.040927705750511967,\n", - " 0.040927705750511967,\n", - " 0.040501323743799729],\n", - " [0.039856411905738631,\n", - " 0.041581951818069264,\n", - " 0.041581951818069264,\n", - " 0.040927705750511967],\n", - " [0.022975496512584508,\n", - " 0.045443725925588978,\n", - " 0.045443725925588978,\n", - " 0.041581951818069264],\n", - " [0.034820805648353978,\n", - " 0.04670991844352277,\n", - " 0.04670991844352277,\n", - " 0.045443725925588978],\n", - " [0.0, 0.05262085032569766, 0.05262085032569766, 0.04670991844352277],\n", - " [0.031566429082176571,\n", - " 0.057461332146057788,\n", - " 0.057461332146057788,\n", - " 0.05262085032569766],\n", - " [0.0, 0.063529441820303928, 0.063529441820303928, 0.057461332146057788],\n", - " [0.0, 0.069142853007379226, 0.069142853007379226, 0.0],\n", - " [0.063529441820303928,\n", - " 0.096729483163091337,\n", - " 0.096729483163091337,\n", - " 0.069142853007379226],\n", - " [0.06306913465396638,\n", - " 0.12053011036666524,\n", - " 0.12053011036666524,\n", - " 0.096729483163091337],\n", - " [0.0, 0.22800845851854745, 0.22800845851854745, 0.12053011036666524],\n", - " [0.0, 0.43151294411176566, 0.43151294411176566, 0.22800845851854745],\n", - " [0.19304434411037158,\n", - " 0.53034443019795707,\n", - " 0.53034443019795707,\n", - " 0.43151294411176566],\n", - " [0.33032139646259784,\n", - " 0.97764707097857617,\n", - " 0.97764707097857617,\n", - " 0.53034443019795707],\n", - " [0.13433485357493333,\n", - " 2.1148774958415446,\n", - " 2.1148774958415446,\n", - " 0.97764707097857617],\n", - " [0.21577157052076726,\n", - " 3.427830042506339,\n", - " 3.427830042506339,\n", - " 2.1148774958415446],\n", - " [0.52570085768428898,\n", - " 3.5980522465589653,\n", - " 3.5980522465589653,\n", - " 3.427830042506339],\n", - " [0.25863004466224937,\n", - " 4.7158502801858653,\n", - " 4.7158502801858653,\n", - " 3.5980522465589653],\n", - " [0.073944659658423909,\n", - " 5.7298920220162124,\n", - " 5.7298920220162124,\n", - " 4.7158502801858653],\n", - " [4.4984236760096348,\n", - " 7.5963928835821077,\n", - " 7.5963928835821077,\n", - " 5.7298920220162124],\n", - " [0.0, 0.018222291897563175, 0.018222291897563175, 0.0],\n", - " [0.0, 0.15693340571401271, 0.15693340571401271, 0.018222291897563175],\n", - " [0.0, 0.22935533571512146, 0.22935533571512146, 0.15693340571401271],\n", - " [0.0, 0.070846505968885684, 0.070846505968885684, 0.0],\n", - " [0.0, 0.15963112360689588, 0.15963112360689588, 0.070846505968885684],\n", - " [0.0, 0.31221640347202134, 0.31221640347202134, 0.15963112360689588],\n", - " [0.0, 0.13134647575021088, 0.13134647575021088, 0.0],\n", - " [0.0, 0.21063404748758524, 0.21063404748758524, 0.13134647575021088],\n", - " [0.0, 0.30511481386520495, 0.30511481386520495, 0.0],\n", - " [0.21063404748758524,\n", - " 0.40157739882866911,\n", - " 0.40157739882866911,\n", - " 0.30511481386520495],\n", - " [0.31221640347202134,\n", - " 0.65808938350121016,\n", - " 0.65808938350121016,\n", - " 0.40157739882866911],\n", - " [0.0, 0.19726318846150556, 0.19726318846150556, 0.0],\n", - " [0.0, 0.77814876936740041, 0.77814876936740041, 0.19726318846150556],\n", - " [0.65808938350121016,\n", - " 0.87196031003308672,\n", - " 0.87196031003308672,\n", - " 0.77814876936740041],\n", - " [0.0, 0.937967577148062, 0.937967577148062, 0.87196031003308672],\n", - " [0.0, 0.04559703613174583, 0.04559703613174583, 0.0],\n", - " [0.0, 0.09978620307938435, 0.09978620307938435, 0.04559703613174583],\n", - " [0.0, 0.13458639338730469, 0.13458639338730469, 0.0],\n", - " [0.0, 0.24663922504742739, 0.24663922504742739, 0.13458639338730469],\n", - " [0.09978620307938435,\n", - " 0.24802077261390817,\n", - " 0.24802077261390817,\n", - " 0.24663922504742739],\n", - " [0.0, 1.0016321972525621, 1.0016321972525621, 0.24802077261390817],\n", - " [0.937967577148062,\n", - " 1.0344106690560555,\n", - " 1.0344106690560555,\n", - " 1.0016321972525621],\n", - " [0.0, 0.051059610701610032, 0.051059610701610032, 0.0],\n", - " [0.0, 0.30620752302483195, 0.30620752302483195, 0.051059610701610032],\n", - " [0.0, 0.39320586123937951, 0.39320586123937951, 0.0],\n", - " [0.30620752302483195,\n", - " 1.4496260249819526,\n", - " 1.4496260249819526,\n", - " 0.39320586123937951],\n", - " [1.0344106690560555,\n", - " 1.7062380997894255,\n", - " 1.7062380997894255,\n", - " 1.4496260249819526],\n", - " [0.0, 3.5254561507484392, 3.5254561507484392, 1.7062380997894255],\n", - " [0.22935533571512146,\n", - " 5.4774588757537028,\n", - " 5.4774588757537028,\n", - " 3.5254561507484392],\n", - " [0.0, 0.37401074157034381, 0.37401074157034381, 0.0],\n", - " [0.0, 1.1511918927932974, 1.1511918927932974, 0.37401074157034381],\n", - " [0.0, 1.4036643980485493, 1.4036643980485493, 1.1511918927932974],\n", - " [0.0, 0.042217443077475422, 0.042217443077475422, 0.0],\n", - " [0.0, 0.17091925993579879, 0.17091925993579879, 0.042217443077475422],\n", - " [0.0, 0.23222638534412943, 0.23222638534412943, 0.0],\n", - " [0.0, 1.2826024447583153, 1.2826024447583153, 0.23222638534412943],\n", - " [0.17091925993579879,\n", - " 1.8956016069216672,\n", - " 1.8956016069216672,\n", - " 1.2826024447583153],\n", - " [0.0, 1.4293244596388877, 1.4293244596388877, 0.0],\n", - " [0.0, 0.027218900804403527, 0.027218900804403527, 0.0],\n", - " [0.0, 0.017902338869547452, 0.017902338869547452, 0.0],\n", - " [0.0, 0.021602191763804377, 0.021602191763804377, 0.017902338869547452],\n", - " [0.0, 0.98956314548440616, 0.98956314548440616, 0.021602191763804377],\n", - " [0.027218900804403527,\n", - " 1.2343047174575634,\n", - " 1.2343047174575634,\n", - " 0.98956314548440616],\n", - " [0.0, 1.9029336059568589, 1.9029336059568589, 1.2343047174575634],\n", - " [1.4293244596388877,\n", - " 2.0952352414380599,\n", - " 2.0952352414380599,\n", - " 1.9029336059568589],\n", - " [1.8956016069216672,\n", - " 2.4190837089908723,\n", - " 2.4190837089908723,\n", - " 2.0952352414380599],\n", - " [1.4036643980485493,\n", - " 4.3933561372010326,\n", - " 4.3933561372010326,\n", - " 2.4190837089908723],\n", - " [0.0, 0.058790049175004168, 0.058790049175004168, 0.0],\n", - " [0.0, 0.21254339761329133, 0.21254339761329133, 0.058790049175004168],\n", - " [0.0, 0.24852808617941399, 0.24852808617941399, 0.21254339761329133],\n", - " [0.0, 0.0090695495478084684, 0.0090695495478084684, 0.0],\n", - " [0.0, 0.026339672226509233, 0.026339672226509233, 0.0090695495478084684],\n", - " [0.0, 0.019061658506014257, 0.019061658506014257, 0.0],\n", - " [0.0, 0.032828999756316909, 0.032828999756316909, 0.019061658506014257],\n", - " [0.0, 0.076414544695363615, 0.076414544695363615, 0.032828999756316909],\n", - " [0.026339672226509233,\n", - " 0.10266714583545321,\n", - " 0.10266714583545321,\n", - " 0.076414544695363615],\n", - " [0.0, 0.017496346132836831, 0.017496346132836831, 0.0],\n", - " [0.0, 0.020339967969498288, 0.020339967969498288, 0.017496346132836831],\n", - " [0.0, 0.0089800519486270373, 0.0089800519486270373, 0.0],\n", - " [0.0, 0.034767456047285115, 0.034767456047285115, 0.0089800519486270373],\n", - " [0.0, 0.045484868659808518, 0.045484868659808518, 0.034767456047285115],\n", - " [0.020339967969498288,\n", - " 0.04920993197515354,\n", - " 0.04920993197515354,\n", - " 0.045484868659808518],\n", - " [0.0, 0.11343988267359974, 0.11343988267359974, 0.04920993197515354],\n", - " [0.0, 0.002596215129766496, 0.002596215129766496, 0.0],\n", - " [0.0, 0.029376099145393797, 0.029376099145393797, 0.002596215129766496],\n", - " [0.0, 0.017297647961498026, 0.017297647961498026, 0.0],\n", - " [0.0, 0.062959414268242475, 0.062959414268242475, 0.017297647961498026],\n", - " [0.0, 0.06807711027944463, 0.06807711027944463, 0.062959414268242475],\n", - " [0.0, 0.10386342944463996, 0.10386342944463996, 0.06807711027944463],\n", - " [0.029376099145393797,\n", - " 0.11449795124804225,\n", - " 0.11449795124804225,\n", - " 0.10386342944463996],\n", - " [0.11343988267359974,\n", - " 0.17276143512080666,\n", - " 0.17276143512080666,\n", - " 0.11449795124804225],\n", - " [0.0, 0.042804594449658201, 0.042804594449658201, 0.0],\n", - " [0.0, 0.059615868801856098, 0.059615868801856098, 0.042804594449658201],\n", - " [0.0, 0.11654279922844464, 0.11654279922844464, 0.059615868801856098],\n", - " [0.0, 0.20918461994132936, 0.20918461994132936, 0.11654279922844464],\n", - " [0.17276143512080666,\n", - " 0.29645141365998151,\n", - " 0.29645141365998151,\n", - " 0.20918461994132936],\n", - " [0.0, 0.0055312137004373966, 0.0055312137004373966, 0.0],\n", - " [0.0, 0.023548418057282128, 0.023548418057282128, 0.0],\n", - " [0.0, 0.0073871397035615658, 0.0073871397035615658, 0.0],\n", - " [0.0, 0.032815841128944999, 0.032815841128944999, 0.0073871397035615658],\n", - " [0.023548418057282128,\n", - " 0.034680684105128409,\n", - " 0.034680684105128409,\n", - " 0.032815841128944999],\n", - " [0.0055312137004373966,\n", - " 0.043648809674498662,\n", - " 0.043648809674498662,\n", - " 0.034680684105128409],\n", - " [0.0, 0.046322759125518496, 0.046322759125518496, 0.043648809674498662],\n", - " [0.0, 0.05044694024418446, 0.05044694024418446, 0.046322759125518496],\n", - " [0.0, 0.017500009257146176, 0.017500009257146176, 0.0],\n", - " [0.0, 0.019062575901486412, 0.019062575901486412, 0.017500009257146176],\n", - " [0.0, 0.034493684943768609, 0.034493684943768609, 0.019062575901486412],\n", - " [0.0, 0.0072990489791360776, 0.0072990489791360776, 0.0],\n", - " [0.0, 0.038063215024489935, 0.038063215024489935, 0.0072990489791360776],\n", - " [0.034493684943768609,\n", - " 0.041901562130777975,\n", - " 0.041901562130777975,\n", - " 0.038063215024489935],\n", - " [0.0, 0.030875883954958227, 0.030875883954958227, 0.0],\n", - " [0.0, 0.044924961658304917, 0.044924961658304917, 0.0],\n", - " [0.030875883954958227,\n", - " 0.055861879676569026,\n", - " 0.055861879676569026,\n", - " 0.044924961658304917],\n", - " [0.0, 0.031513902995343589, 0.031513902995343589, 0.0],\n", - " [0.0, 0.058699545296367305, 0.058699545296367305, 0.031513902995343589],\n", - " [0.055861879676569026,\n", - " 0.08310078474960203,\n", - " 0.08310078474960203,\n", - " 0.058699545296367305],\n", - " [0.0, 0.17210894914850675, 0.17210894914850675, 0.08310078474960203],\n", - " [0.0, 0.26928745416191013, 0.26928745416191013, 0.17210894914850675],\n", - " [0.041901562130777975,\n", - " 0.31844984020093314,\n", - " 0.31844984020093314,\n", - " 0.26928745416191013],\n", - " [0.0, 0.013462055489413491, 0.013462055489413491, 0.0],\n", - " [0.0, 0.022760720287365612, 0.022760720287365612, 0.0],\n", - " [0.013462055489413491,\n", - " 0.31948939263925674,\n", - " 0.31948939263925674,\n", - " 0.022760720287365612],\n", - " [0.0, 0.39893133329559133, 0.39893133329559133, 0.31948939263925674],\n", - " [0.31844984020093314,\n", - " 0.44173870955237537,\n", - " 0.44173870955237537,\n", - " 0.39893133329559133],\n", - " [0.05044694024418446,\n", - " 0.50897786505996945,\n", - " 0.50897786505996945,\n", - " 0.44173870955237537],\n", - " [0.29645141365998151,\n", - " 0.63409158939856158,\n", - " 0.63409158939856158,\n", - " 0.50897786505996945],\n", - " [0.0, 0.6904385929313307, 0.6904385929313307, 0.63409158939856158],\n", - " [0.10266714583545321,\n", - " 0.71152957189424082,\n", - " 0.71152957189424082,\n", - " 0.6904385929313307],\n", - " [0.24852808617941399,\n", - " 1.2894119895518283,\n", - " 1.2894119895518283,\n", - " 0.71152957189424082],\n", - " [0.0, 0.031929777011439099, 0.031929777011439099, 0.0],\n", - " [0.0, 0.067425646218636615, 0.067425646218636615, 0.0],\n", - " [0.031929777011439099,\n", - " 0.070066671513628345,\n", - " 0.070066671513628345,\n", - " 0.067425646218636615],\n", - " [0.0, 0.036243610429978708, 0.036243610429978708, 0.0],\n", - " [0.0, 0.020538618502719087, 0.020538618502719087, 0.0],\n", - " [0.0, 0.02297274744126682, 0.02297274744126682, 0.020538618502719087],\n", - " [0.0, 0.030679305614688269, 0.030679305614688269, 0.0],\n", - " [0.02297274744126682,\n", - " 0.061249815101766428,\n", - " 0.061249815101766428,\n", - " 0.030679305614688269],\n", - " [0.036243610429978708,\n", - " 0.071946206189064832,\n", - " 0.071946206189064832,\n", - " 0.061249815101766428],\n", - " [0.0, 0.1039868152892518, 0.1039868152892518, 0.071946206189064832],\n", - " [0.070066671513628345,\n", - " 0.73838814447822776,\n", - " 0.73838814447822776,\n", - " 0.1039868152892518],\n", - " [0.0, 0.095005283458331966, 0.095005283458331966, 0.0],\n", - " [0.0, 0.015323524561926679, 0.015323524561926679, 0.0],\n", - " [0.0, 0.0074928979707445066, 0.0074928979707445066, 0.0],\n", - " [0.0, 0.001430863375726246, 0.001430863375726246, 0.0],\n", - " [0.0, 0.0083269486608288385, 0.0083269486608288385, 0.001430863375726246],\n", - " [0.0, 0.010359720121705523, 0.010359720121705523, 0.0083269486608288385],\n", - " [0.0074928979707445066,\n", - " 0.011887891318476443,\n", - " 0.011887891318476443,\n", - " 0.010359720121705523],\n", - " [0.0, 0.016757763842468486, 0.016757763842468486, 0.0],\n", - " [0.011887891318476443,\n", - " 0.026499743111962123,\n", - " 0.026499743111962123,\n", - " 0.016757763842468486],\n", - " [0.015323524561926679,\n", - " 0.03700714591805529,\n", - " 0.03700714591805529,\n", - " 0.026499743111962123],\n", - " [0.0, 0.04491405414789261, 0.04491405414789261, 0.03700714591805529],\n", - " [0.0, 0.015002763112171778, 0.015002763112171778, 0.0],\n", - " [0.0, 0.029910906923737501, 0.029910906923737501, 0.0],\n", - " [0.0, 0.0046288578504796426, 0.0046288578504796426, 0.0],\n", - " [0.0, 0.018303039774853605, 0.018303039774853605, 0.0046288578504796426],\n", - " [0.0, 0.018130352037395756, 0.018130352037395756, 0.0],\n", - " [0.0, 0.0042699841920049945, 0.0042699841920049945, 0.0],\n", - " [0.0, 0.0067802126810365725, 0.0067802126810365725, 0.0042699841920049945],\n", - " [0.0, 0.013195015005674087, 0.013195015005674087, 0.0067802126810365725],\n", - " [0.0, 0.017221535152238759, 0.017221535152238759, 0.013195015005674087],\n", - " [0.0, 0.020926426570253127, 0.020926426570253127, 0.017221535152238759],\n", - " [0.0, 0.02116850348984891, 0.02116850348984891, 0.020926426570253127],\n", - " [0.018130352037395756,\n", - " 0.024865212828373361,\n", - " 0.024865212828373361,\n", - " 0.02116850348984891],\n", - " [0.0, 0.02579896255666209, 0.02579896255666209, 0.024865212828373361],\n", - " [0.0, 0.027473962691971037, 0.027473962691971037, 0.02579896255666209],\n", - " [0.0, 0.0097607504834456189, 0.0097607504834456189, 0.0],\n", - " [0.0, 0.01036489864880834, 0.01036489864880834, 0.0097607504834456189],\n", - " [0.0, 0.010542859431860839, 0.010542859431860839, 0.01036489864880834],\n", - " [0.0, 0.0053027993550569903, 0.0053027993550569903, 0.0],\n", - " [0.0, 0.0074213406470740595, 0.0074213406470740595, 0.0053027993550569903],\n", - " [0.0, 0.0068835822795963921, 0.0068835822795963921, 0.0],\n", - " [0.0, 0.010407863373431466, 0.010407863373431466, 0.0068835822795963921],\n", - " [0.0074213406470740595,\n", - " 0.01089516736907201,\n", - " 0.01089516736907201,\n", - " 0.010407863373431466],\n", - " [0.010542859431860839,\n", - " 0.011056540372109694,\n", - " 0.011056540372109694,\n", - " 0.01089516736907201],\n", - " [0.0, 0.0015860948899688991, 0.0015860948899688991, 0.0],\n", - " [0.0, 0.013267364621510694, 0.013267364621510694, 0.0015860948899688991],\n", - " [0.011056540372109694,\n", - " 0.013829862219115707,\n", - " 0.013829862219115707,\n", - " 0.013267364621510694],\n", - " [0.0, 0.02828028493491741, 0.02828028493491741, 0.013829862219115707],\n", - " [0.027473962691971037,\n", - " 0.028816735588886335,\n", - " 0.028816735588886335,\n", - " 0.02828028493491741],\n", - " [0.018303039774853605,\n", - " 0.035459169209108084,\n", - " 0.035459169209108084,\n", - " 0.028816735588886335],\n", - " [0.029910906923737501,\n", - " 0.042773900663835393,\n", - " 0.042773900663835393,\n", - " 0.035459169209108084],\n", - " [0.0, 0.050596099790395352, 0.050596099790395352, 0.042773900663835393],\n", - " [0.015002763112171778,\n", - " 0.065558761100251731,\n", - " 0.065558761100251731,\n", - " 0.050596099790395352],\n", - " [0.04491405414789261,\n", - " 0.096543836576967523,\n", - " 0.096543836576967523,\n", - " 0.065558761100251731],\n", - " [0.095005283458331966,\n", - " 0.13755089030973192,\n", - " 0.13755089030973192,\n", - " 0.096543836576967523],\n", - " [0.0, 0.87696184581200687, 0.87696184581200687, 0.13755089030973192],\n", - " [0.0, 0.065912928056641562, 0.065912928056641562, 0.0],\n", - " [0.0, 0.048848349951661395, 0.048848349951661395, 0.0],\n", - " [0.0, 0.18276650560208968, 0.18276650560208968, 0.048848349951661395],\n", - " [0.0, 0.038467336923677542, 0.038467336923677542, 0.0],\n", - " [0.0, 0.14485740091551944, 0.14485740091551944, 0.038467336923677542],\n", - " [0.0, 0.019980064389286099, 0.019980064389286099, 0.0],\n", - " [0.0, 0.0055161783872521289, 0.0055161783872521289, 0.0],\n", - " [0.0, 0.015909570578740744, 0.015909570578740744, 0.0],\n", - " [0.0, 0.016475878428782266, 0.016475878428782266, 0.015909570578740744],\n", - " [0.0055161783872521289,\n", - " 0.018628984406027362,\n", - " 0.018628984406027362,\n", - " 0.016475878428782266],\n", - " [0.0, 0.026370781179182737, 0.026370781179182737, 0.018628984406027362],\n", - " [0.019980064389286099,\n", - " 0.16097984260459416,\n", - " 0.16097984260459416,\n", - " 0.026370781179182737],\n", - " [0.0, 0.022608952032323337, 0.022608952032323337, 0.0],\n", - " [0.0, 0.041901297975117359, 0.041901297975117359, 0.022608952032323337],\n", - " [0.0, 0.044524994171813589, 0.044524994171813589, 0.041901297975117359],\n", - " [0.0, 0.052439081551839128, 0.052439081551839128, 0.0],\n", - " [0.0, 0.064232408330996416, 0.064232408330996416, 0.0],\n", - " [0.052439081551839128,\n", - " 0.084569701341554324,\n", - " 0.084569701341554324,\n", - " 0.064232408330996416],\n", - " [0.044524994171813589,\n", - " 0.088972954688496281,\n", - " 0.088972954688496281,\n", - " 0.084569701341554324],\n", - " [0.0, 0.046121265919313301, 0.046121265919313301, 0.0],\n", - " [0.0, 0.09195924254798897, 0.09195924254798897, 0.046121265919313301],\n", - " [0.0, 0.03034369649531575, 0.03034369649531575, 0.0],\n", - " [0.0, 0.0065765244620543178, 0.0065765244620543178, 0.0],\n", - " [0.0, 0.025060158419289408, 0.025060158419289408, 0.0],\n", - " [0.0065765244620543178,\n", - " 0.025631569596879573,\n", - " 0.025631569596879573,\n", - " 0.025060158419289408],\n", - " [0.0, 0.019442793755010863, 0.019442793755010863, 0.0],\n", - " [0.0, 0.031744099750972352, 0.031744099750972352, 0.019442793755010863],\n", - " [0.025631569596879573,\n", - " 0.031753638783621668,\n", - " 0.031753638783621668,\n", - " 0.031744099750972352],\n", - " [0.03034369649531575,\n", - " 0.032948571228506467,\n", - " 0.032948571228506467,\n", - " 0.031753638783621668],\n", - " [0.0, 0.050821520677757748, 0.050821520677757748, 0.032948571228506467],\n", - " [0.0, 0.070828346331120548, 0.070828346331120548, 0.050821520677757748],\n", - " [0.0, 0.075976617481963993, 0.075976617481963993, 0.0],\n", - " [0.070828346331120548,\n", - " 0.097167027751188628,\n", - " 0.097167027751188628,\n", - " 0.075976617481963993],\n", - " [0.0, 0.12902053221483481, 0.12902053221483481, 0.097167027751188628],\n", - " [0.09195924254798897,\n", - " 0.19674911736778075,\n", - " 0.19674911736778075,\n", - " 0.12902053221483481],\n", - " [0.088972954688496281,\n", - " 0.20811036847066841,\n", - " 0.20811036847066841,\n", - " 0.19674911736778075],\n", - " [0.16097984260459416,\n", - " 0.2091406782837768,\n", - " 0.2091406782837768,\n", - " 0.20811036847066841],\n", - " [0.14485740091551944,\n", - " 0.26945133153316969,\n", - " 0.26945133153316969,\n", - " 0.2091406782837768],\n", - " [0.0, 0.0041774140326249869, 0.0041774140326249869, 0.0],\n", - " [0.0, 0.016441502394854833, 0.016441502394854833, 0.0],\n", - " [0.0, 0.023123446326189179, 0.023123446326189179, 0.016441502394854833],\n", - " [0.0, 0.034620772160651875, 0.034620772160651875, 0.0],\n", - " [0.023123446326189179,\n", - " 0.038872843425718867,\n", - " 0.038872843425718867,\n", - " 0.034620772160651875],\n", - " [0.0041774140326249869,\n", - " 0.044204484772473969,\n", - " 0.044204484772473969,\n", - " 0.038872843425718867],\n", - " [0.0, 0.021668147798102756, 0.021668147798102756, 0.0],\n", - " [0.0, 0.048737251666463678, 0.048737251666463678, 0.021668147798102756],\n", - " [0.0, 0.061387783165702238, 0.061387783165702238, 0.048737251666463678],\n", - " [0.0, 0.10531723889753433, 0.10531723889753433, 0.0],\n", - " [0.061387783165702238,\n", - " 0.11278621719429946,\n", - " 0.11278621719429946,\n", - " 0.10531723889753433],\n", - " [0.0, 0.1224364735893672, 0.1224364735893672, 0.0],\n", - " [0.0, 0.060355617021113792, 0.060355617021113792, 0.0],\n", - " [0.0, 0.063797468194272997, 0.063797468194272997, 0.0],\n", - " [0.0, 0.058156393878918869, 0.058156393878918869, 0.0],\n", - " [0.0, 0.0066901469341072682, 0.0066901469341072682, 0.0],\n", - " [0.0, 0.022320524389008931, 0.022320524389008931, 0.0066901469341072682],\n", - " [0.0, 0.034299966603492694, 0.034299966603492694, 0.022320524389008931],\n", - " [0.0, 0.016711090479072672, 0.016711090479072672, 0.0],\n", - " [0.0, 0.020254937299340803, 0.020254937299340803, 0.016711090479072672],\n", - " [0.0, 0.024098657389979752, 0.024098657389979752, 0.020254937299340803],\n", - " [0.0, 0.032753194928130162, 0.032753194928130162, 0.0],\n", - " [0.024098657389979752,\n", - " 0.038545134388142971,\n", - " 0.038545134388142971,\n", - " 0.032753194928130162],\n", - " [0.034299966603492694,\n", - " 0.042399971320744592,\n", - " 0.042399971320744592,\n", - " 0.038545134388142971],\n", - " [0.0, 0.013852462921808317, 0.013852462921808317, 0.0],\n", - " [0.0, 0.0064474801279153955, 0.0064474801279153955, 0.0],\n", - " [0.0, 0.0081149504003439864, 0.0081149504003439864, 0.0064474801279153955],\n", - " [0.0, 0.0094725188308022422, 0.0094725188308022422, 0.0],\n", - " [0.0, 0.010703060964028165, 0.010703060964028165, 0.0094725188308022422],\n", - " [0.0, 0.011098825973947329, 0.011098825973947329, 0.010703060964028165],\n", - " [0.0081149504003439864,\n", - " 0.012875082912366506,\n", - " 0.012875082912366506,\n", - " 0.011098825973947329],\n", - " [0.0, 0.014431684655645885, 0.014431684655645885, 0.012875082912366506],\n", - " [0.0, 0.017159092575075148, 0.017159092575075148, 0.014431684655645885],\n", - " [0.013852462921808317,\n", - " 0.020358341091556431,\n", - " 0.020358341091556431,\n", - " 0.017159092575075148],\n", - " [0.0, 0.026628989635356679, 0.026628989635356679, 0.020358341091556431],\n", - " [0.0, 0.038897048795504721, 0.038897048795504721, 0.026628989635356679],\n", - " [0.0, 0.017416775620076708, 0.017416775620076708, 0.0],\n", - " [0.0, 0.0019410414730191845, 0.0019410414730191845, 0.0],\n", - " [0.0, 0.0070966254656705113, 0.0070966254656705113, 0.0019410414730191845],\n", - " [0.0, 0.01473532982325473, 0.01473532982325473, 0.0070966254656705113],\n", - " [0.0, 0.010178320883131369, 0.010178320883131369, 0.0],\n", - " [0.0, 0.022355876833621273, 0.022355876833621273, 0.010178320883131369],\n", - " [0.01473532982325473,\n", - " 0.023293791490435835,\n", - " 0.023293791490435835,\n", - " 0.022355876833621273],\n", - " [0.017416775620076708,\n", - " 0.025739095749456459,\n", - " 0.025739095749456459,\n", - " 0.023293791490435835],\n", - " [0.0, 0.029892137461220391, 0.029892137461220391, 0.025739095749456459],\n", - " [0.0, 0.054185576614069079, 0.054185576614069079, 0.029892137461220391],\n", - " [0.038897048795504721,\n", - " 0.063718583137104906,\n", - " 0.063718583137104906,\n", - " 0.054185576614069079],\n", - " [0.0, 0.019605061514835671, 0.019605061514835671, 0.0],\n", - " [0.0, 0.021214550195562072, 0.021214550195562072, 0.019605061514835671],\n", - " [0.0, 0.027403781874037639, 0.027403781874037639, 0.021214550195562072],\n", - " [0.0, 0.029332004159274679, 0.029332004159274679, 0.027403781874037639],\n", - " [0.0, 0.040627168852872902, 0.040627168852872902, 0.0],\n", - " [0.0, 0.040996275440584616, 0.040996275440584616, 0.040627168852872902],\n", - " [0.0, 0.042186134511232966, 0.042186134511232966, 0.040996275440584616],\n", - " [0.029332004159274679,\n", - " 0.04470228526596369,\n", - " 0.04470228526596369,\n", - " 0.042186134511232966],\n", - " [0.0, 0.034999546868502596, 0.034999546868502596, 0.0],\n", - " [0.0, 0.047101313527329332, 0.047101313527329332, 0.034999546868502596],\n", - " [0.04470228526596369,\n", - " 0.065999430641483725,\n", - " 0.065999430641483725,\n", - " 0.047101313527329332],\n", - " [0.063718583137104906,\n", - " 0.077310253427342157,\n", - " 0.077310253427342157,\n", - " 0.065999430641483725],\n", - " [0.042399971320744592,\n", - " 0.083464006062494184,\n", - " 0.083464006062494184,\n", - " 0.077310253427342157],\n", - " [0.058156393878918869,\n", - " 0.091843424065093382,\n", - " 0.091843424065093382,\n", - " 0.083464006062494184],\n", - " [0.063797468194272997,\n", - " 0.093923283513727737,\n", - " 0.093923283513727737,\n", - " 0.091843424065093382],\n", - " [0.060355617021113792,\n", - " 0.1437077647206281,\n", - " 0.1437077647206281,\n", - " 0.093923283513727737],\n", - " [0.1224364735893672,\n", - " 0.16509540122304972,\n", - " 0.16509540122304972,\n", - " 0.1437077647206281],\n", - " [0.11278621719429946,\n", - " 0.23560105920390287,\n", - " 0.23560105920390287,\n", - " 0.16509540122304972],\n", - " [0.044204484772473969,\n", - " 0.27534343323384758,\n", - " 0.27534343323384758,\n", - " 0.23560105920390287],\n", - " [0.26945133153316969,\n", - " 0.28629943220691434,\n", - " 0.28629943220691434,\n", - " 0.27534343323384758],\n", - " [0.0, 0.012411138908253568, 0.012411138908253568, 0.0],\n", - " [0.0, 0.015197433993929721, 0.015197433993929721, 0.012411138908253568],\n", - " [0.0, 0.018717072554225896, 0.018717072554225896, 0.015197433993929721],\n", - " [0.0, 0.013737220279225824, 0.013737220279225824, 0.0],\n", - " [0.0, 0.022401356141987971, 0.022401356141987971, 0.013737220279225824],\n", - " [0.018717072554225896,\n", - " 0.027273128331748428,\n", - " 0.027273128331748428,\n", - " 0.022401356141987971],\n", - " [0.0, 0.0055262313560036124, 0.0055262313560036124, 0.0],\n", - " [0.0, 0.0073759979663759181, 0.0073759979663759181, 0.0],\n", - " [0.0, 0.0081775092173615709, 0.0081775092173615709, 0.0073759979663759181],\n", - " [0.0, 0.013275646010647128, 0.013275646010647128, 0.0081775092173615709],\n", - " [0.0, 0.0068032806792086998, 0.0068032806792086998, 0.0],\n", - " [0.0, 0.0099011807376736746, 0.0099011807376736746, 0.0],\n", - " [0.0068032806792086998,\n", - " 0.013317571099868678,\n", - " 0.013317571099868678,\n", - " 0.0099011807376736746],\n", - " [0.0, 0.013658926238912038, 0.013658926238912038, 0.013317571099868678],\n", - " [0.013275646010647128,\n", - " 0.016520000030264201,\n", - " 0.016520000030264201,\n", - " 0.013658926238912038],\n", - " [0.0055262313560036124,\n", - " 0.018275945119203156,\n", - " 0.018275945119203156,\n", - " 0.016520000030264201],\n", - " [0.0, 0.018886608403841952, 0.018886608403841952, 0.018275945119203156],\n", - " [0.0, 0.0071547987393090363, 0.0071547987393090363, 0.0],\n", - " [0.0, 0.0049287233641142209, 0.0049287233641142209, 0.0],\n", - " [0.0, 0.0069116320793281439, 0.0069116320793281439, 0.0],\n", - " [0.0049287233641142209,\n", - " 0.0095293956261618094,\n", - " 0.0095293956261618094,\n", - " 0.0069116320793281439],\n", - " [0.0, 0.010358096205382148, 0.010358096205382148, 0.0095293956261618094],\n", - " [0.0, 0.012207816061851612, 0.012207816061851612, 0.010358096205382148],\n", - " [0.0071547987393090363,\n", - " 0.012552163518696589,\n", - " 0.012552163518696589,\n", - " 0.012207816061851612],\n", - " [0.0, 0.016752761832010975, 0.016752761832010975, 0.012552163518696589],\n", - " [0.0, 0.020718669093361831, 0.020718669093361831, 0.016752761832010975],\n", - " [0.018886608403841952,\n", - " 0.021202279594418026,\n", - " 0.021202279594418026,\n", - " 0.020718669093361831],\n", - " [0.0, 0.026013654452987898, 0.026013654452987898, 0.021202279594418026],\n", - " [0.0, 0.035671735505852453, 0.035671735505852453, 0.026013654452987898],\n", - " [0.027273128331748428,\n", - " 0.047475042885706246,\n", - " 0.047475042885706246,\n", - " 0.035671735505852453],\n", - " [0.0, 0.029829601438846443, 0.029829601438846443, 0.0],\n", - " [0.0, 0.052045155096319927, 0.052045155096319927, 0.0],\n", - " [0.029829601438846443,\n", - " 0.058383151071172763,\n", - " 0.058383151071172763,\n", - " 0.052045155096319927],\n", - " [0.047475042885706246,\n", - " 0.06005615059259059,\n", - " 0.06005615059259059,\n", - " 0.058383151071172763],\n", - " [0.0, 0.078420780186122307, 0.078420780186122307, 0.06005615059259059],\n", - " [0.0, 0.086322418947801932, 0.086322418947801932, 0.078420780186122307],\n", - " [0.0, 0.17135151271291277, 0.17135151271291277, 0.086322418947801932],\n", - " [0.0, 0.20941826866345964, 0.20941826866345964, 0.17135151271291277],\n", - " [0.0, 0.031677119897487435, 0.031677119897487435, 0.0],\n", - " [0.0, 0.011199102553325419, 0.011199102553325419, 0.0],\n", - " [0.0, 0.0036655242462691039, 0.0036655242462691039, 0.0],\n", - " [0.0, 0.013964310688329885, 0.013964310688329885, 0.0036655242462691039],\n", - " [0.0, 0.014117531937274117, 0.014117531937274117, 0.013964310688329885],\n", - " [0.0, 0.017290281027209815, 0.017290281027209815, 0.014117531937274117],\n", - " [0.0, 0.022591780850569836, 0.022591780850569836, 0.0],\n", - " [0.0, 0.022730527006654552, 0.022730527006654552, 0.022591780850569836],\n", - " [0.017290281027209815,\n", - " 0.033638276308384889,\n", - " 0.033638276308384889,\n", - " 0.022730527006654552],\n", - " [0.011199102553325419,\n", - " 0.038251009986658049,\n", - " 0.038251009986658049,\n", - " 0.033638276308384889],\n", - " [0.031677119897487435,\n", - " 0.095371304499833789,\n", - " 0.095371304499833789,\n", - " 0.038251009986658049],\n", - " [0.0, 0.097115000329504014, 0.097115000329504014, 0.095371304499833789],\n", - " [0.0, 0.10746346507070062, 0.10746346507070062, 0.097115000329504014],\n", - " [0.0, 0.027120130125058203, 0.027120130125058203, 0.0],\n", - " [0.0, 0.021186215542181745, 0.021186215542181745, 0.0],\n", - " [0.0, 0.067754707238693604, 0.067754707238693604, 0.021186215542181745],\n", - " [0.027120130125058203,\n", - " 0.069230448359086844,\n", - " 0.069230448359086844,\n", - " 0.067754707238693604],\n", - " [0.0, 0.076892082986483132, 0.076892082986483132, 0.0],\n", - " [0.0, 0.081395000491421926, 0.081395000491421926, 0.076892082986483132],\n", - " [0.069230448359086844,\n", - " 0.090937200000873089,\n", - " 0.090937200000873089,\n", - " 0.081395000491421926],\n", - " [0.0, 0.00731955640732526, 0.00731955640732526, 0.0],\n", - " [0.0, 0.0082423352273463969, 0.0082423352273463969, 0.00731955640732526],\n", - " [0.0, 0.021221295954767259, 0.021221295954767259, 0.0082423352273463969],\n", - " [0.0, 0.02583523518375485, 0.02583523518375485, 0.021221295954767259],\n", - " [0.0, 0.052600786914263613, 0.052600786914263613, 0.0],\n", - " [0.0, 0.059027009478714358, 0.059027009478714358, 0.052600786914263613],\n", - " [0.0, 0.05990383367532507, 0.05990383367532507, 0.059027009478714358],\n", - " [0.02583523518375485,\n", - " 0.06837870037518147,\n", - " 0.06837870037518147,\n", - " 0.05990383367532507],\n", - " [0.0, 0.029243205792112214, 0.029243205792112214, 0.0],\n", - " [0.0, 0.069773892488527445, 0.069773892488527445, 0.029243205792112214],\n", - " [0.0, 0.077267640193034573, 0.077267640193034573, 0.069773892488527445],\n", - " [0.06837870037518147,\n", - " 0.078118554850943003,\n", - " 0.078118554850943003,\n", - " 0.077267640193034573],\n", - " [0.0, 0.018133631186284114, 0.018133631186284114, 0.0],\n", - " [0.0, 0.018347519314611354, 0.018347519314611354, 0.018133631186284114],\n", - " [0.0, 0.024153709466665094, 0.024153709466665094, 0.0],\n", - " [0.018347519314611354,\n", - " 0.032164706247681647,\n", - " 0.032164706247681647,\n", - " 0.024153709466665094],\n", - " [0.0, 0.013657582362923281, 0.013657582362923281, 0.0],\n", - " [0.0, 0.017632401566440522, 0.017632401566440522, 0.013657582362923281],\n", - " [0.0, 0.027939224058657477, 0.027939224058657477, 0.017632401566440522],\n", - " [0.0, 0.041150400095269629, 0.041150400095269629, 0.0],\n", - " [0.027939224058657477,\n", - " 0.043897517014051694,\n", - " 0.043897517014051694,\n", - " 0.041150400095269629],\n", - " [0.032164706247681647,\n", - " 0.046731787318706509,\n", - " 0.046731787318706509,\n", - " 0.043897517014051694],\n", - " [0.0, 0.046938064862106894, 0.046938064862106894, 0.046731787318706509],\n", - " [0.0, 0.049265626607197875, 0.049265626607197875, 0.046938064862106894],\n", - " [0.0, 0.0079629193767144103, 0.0079629193767144103, 0.0],\n", - " [0.0, 0.011104170387754029, 0.011104170387754029, 0.0079629193767144103],\n", - " [0.0, 0.0080397120595313235, 0.0080397120595313235, 0.0],\n", - " [0.0, 0.0094069617836998916, 0.0094069617836998916, 0.0],\n", - " [0.0, 0.012783477030921104, 0.012783477030921104, 0.0094069617836998916],\n", - " [0.0080397120595313235,\n", - " 0.013465896553882655,\n", - " 0.013465896553882655,\n", - " 0.012783477030921104],\n", - " [0.011104170387754029,\n", - " 0.022011228248318148,\n", - " 0.022011228248318148,\n", - " 0.013465896553882655],\n", - " [0.0, 0.032808783534296046, 0.032808783534296046, 0.022011228248318148],\n", - " [0.0, 0.032990146422832163, 0.032990146422832163, 0.032808783534296046],\n", - " [0.0, 0.063550780404328294, 0.063550780404328294, 0.032990146422832163],\n", - " [0.049265626607197875,\n", - " 0.063637827697051452,\n", - " 0.063637827697051452,\n", - " 0.063550780404328294],\n", - " [0.0, 0.066269918907437428, 0.066269918907437428, 0.063637827697051452],\n", - " [0.0, 0.066746598789752198, 0.066746598789752198, 0.066269918907437428],\n", - " [0.0, 0.068962686671851167, 0.068962686671851167, 0.066746598789752198],\n", - " [0.0, 0.072403625903682184, 0.072403625903682184, 0.068962686671851167],\n", - " [0.0, 0.097220106078940036, 0.097220106078940036, 0.072403625903682184],\n", - " [0.0, 0.10059222974465092, 0.10059222974465092, 0.097220106078940036],\n", - " [0.078118554850943003,\n", - " 0.1061467677557856,\n", - " 0.1061467677557856,\n", - " 0.10059222974465092],\n", - " [0.090937200000873089,\n", - " 0.11051043546199719,\n", - " 0.11051043546199719,\n", - " 0.1061467677557856],\n", - " [0.0, 0.17364128594605482, 0.17364128594605482, 0.11051043546199719],\n", - " [0.0, 0.19612941012760265, 0.19612941012760265, 0.17364128594605482],\n", - " [0.10746346507070062,\n", - " 0.24260265179919271,\n", - " 0.24260265179919271,\n", - " 0.19612941012760265],\n", - " [0.20941826866345964,\n", - " 0.33689833674418634,\n", - " 0.33689833674418634,\n", - " 0.24260265179919271],\n", - " [0.28629943220691434,\n", - " 0.34685812096158353,\n", - " 0.34685812096158353,\n", - " 0.33689833674418634],\n", - " [0.0, 0.37463108579107973, 0.37463108579107973, 0.34685812096158353],\n", - " [0.0, 0.033255019485785173, 0.033255019485785173, 0.0],\n", - " [0.0, 0.03209031238552254, 0.03209031238552254, 0.0],\n", - " [0.0, 0.043340079891487887, 0.043340079891487887, 0.03209031238552254],\n", - " [0.0, 0.045288921603405009, 0.045288921603405009, 0.043340079891487887],\n", - " [0.0, 0.014697892365913543, 0.014697892365913543, 0.0],\n", - " [0.0, 0.018635959245502768, 0.018635959245502768, 0.0],\n", - " [0.014697892365913543,\n", - " 0.033410940438728644,\n", - " 0.033410940438728644,\n", - " 0.018635959245502768],\n", - " [0.0, 0.011877708070159991, 0.011877708070159991, 0.0],\n", - " [0.0, 0.024422543376972198, 0.024422543376972198, 0.011877708070159991],\n", - " [0.0, 0.020523571813893141, 0.020523571813893141, 0.0],\n", - " [0.0, 0.0063275413866807984, 0.0063275413866807984, 0.0],\n", - " [0.0, 0.0055905453222384301, 0.0055905453222384301, 0.0],\n", - " [0.0, 0.021639455261156983, 0.021639455261156983, 0.0055905453222384301],\n", - " [0.0063275413866807984,\n", - " 0.02290317205104745,\n", - " 0.02290317205104745,\n", - " 0.021639455261156983],\n", - " [0.0, 0.025752390277409713, 0.025752390277409713, 0.02290317205104745],\n", - " [0.0, 0.033599478210234221, 0.033599478210234221, 0.025752390277409713],\n", - " [0.020523571813893141,\n", - " 0.035480498361771189,\n", - " 0.035480498361771189,\n", - " 0.033599478210234221],\n", - " [0.024422543376972198,\n", - " 0.039852099380085909,\n", - " 0.039852099380085909,\n", - " 0.035480498361771189],\n", - " [0.0, 0.041290964265813745, 0.041290964265813745, 0.039852099380085909],\n", - " [0.033410940438728644,\n", - " 0.042479783167995007,\n", - " 0.042479783167995007,\n", - " 0.041290964265813745],\n", - " [0.0, 0.012216770440664519, 0.012216770440664519, 0.0],\n", - " [0.0, 0.010407968725930543, 0.010407968725930543, 0.0],\n", - " [0.0, 0.01195253533774285, 0.01195253533774285, 0.0],\n", - " [0.010407968725930543,\n", - " 0.023058076784508736,\n", - " 0.023058076784508736,\n", - " 0.01195253533774285],\n", - " [0.0, 0.026623540335576693, 0.026623540335576693, 0.023058076784508736],\n", - " [0.0, 0.02885993724872099, 0.02885993724872099, 0.026623540335576693],\n", - " [0.0, 0.03285801713432969, 0.03285801713432969, 0.02885993724872099],\n", - " [0.0, 0.020670944874388694, 0.020670944874388694, 0.0],\n", - " [0.0, 0.016167761038557212, 0.016167761038557212, 0.0],\n", - " [0.0, 0.035604894846071197, 0.035604894846071197, 0.016167761038557212],\n", - " [0.020670944874388694,\n", - " 0.04023307656643197,\n", - " 0.04023307656643197,\n", - " 0.035604894846071197],\n", - " [0.0, 0.014374567680453794, 0.014374567680453794, 0.0],\n", - " [0.0, 0.014426630687723754, 0.014426630687723754, 0.0],\n", - " [0.014374567680453794,\n", - " 0.015567124461498704,\n", - " 0.015567124461498704,\n", - " 0.014426630687723754],\n", - " [0.0, 0.0092305411542299293, 0.0092305411542299293, 0.0],\n", - " [0.0, 0.018188935235468464, 0.018188935235468464, 0.0092305411542299293],\n", - " [0.0, 0.019819092940892413, 0.019819092940892413, 0.018188935235468464],\n", - " [0.0, 0.020387904870288038, 0.020387904870288038, 0.019819092940892413],\n", - " [0.015567124461498704,\n", - " 0.02399771809985226,\n", - " 0.02399771809985226,\n", - " 0.020387904870288038],\n", - " [0.0, 0.024716361322004891, 0.024716361322004891, 0.02399771809985226],\n", - " [0.0, 0.010657341178746215, 0.010657341178746215, 0.0],\n", - " [0.0, 0.026982277479857694, 0.026982277479857694, 0.010657341178746215],\n", - " [0.024716361322004891,\n", - " 0.034160473357365724,\n", - " 0.034160473357365724,\n", - " 0.026982277479857694],\n", - " [0.0, 0.016767968809609561, 0.016767968809609561, 0.0],\n", - " [0.0, 0.019055354575554968, 0.019055354575554968, 0.0],\n", - " [0.0, 0.026733844934836666, 0.026733844934836666, 0.019055354575554968],\n", - " [0.016767968809609561,\n", - " 0.040371951463852536,\n", - " 0.040371951463852536,\n", - " 0.026733844934836666],\n", - " [0.034160473357365724,\n", - " 0.04224299024690454,\n", - " 0.04224299024690454,\n", - " 0.040371951463852536],\n", - " [0.04023307656643197,\n", - " 0.042799616411825295,\n", - " 0.042799616411825295,\n", - " 0.04224299024690454],\n", - " [0.03285801713432969,\n", - " 0.046324058382227612,\n", - " 0.046324058382227612,\n", - " 0.042799616411825295],\n", - " [0.012216770440664519,\n", - " 0.04790907418225137,\n", - " 0.04790907418225137,\n", - " 0.046324058382227612],\n", - " [0.0, 0.049422803208644631, 0.049422803208644631, 0.04790907418225137],\n", - " [0.042479783167995007,\n", - " 0.056520909626439568,\n", - " 0.056520909626439568,\n", - " 0.049422803208644631],\n", - " [0.0, 0.05911357842324301, 0.05911357842324301, 0.056520909626439568],\n", - " [0.045288921603405009,\n", - " 0.061655153053091813,\n", - " 0.061655153053091813,\n", - " 0.05911357842324301],\n", - " [0.033255019485785173,\n", - " 0.078501765445113364,\n", - " 0.078501765445113364,\n", - " 0.061655153053091813],\n", - " [0.0, 0.02511575413958066, 0.02511575413958066, 0.0],\n", - " [0.0, 0.011082319071384839, 0.011082319071384839, 0.0],\n", - " [0.0, 0.025654596878535406, 0.025654596878535406, 0.011082319071384839],\n", - " [0.0, 0.0075092666086601896, 0.0075092666086601896, 0.0],\n", - " [0.0, 0.010991135564618339, 0.010991135564618339, 0.0],\n", - " [0.0075092666086601896,\n", - " 0.018001466301392367,\n", - " 0.018001466301392367,\n", - " 0.010991135564618339],\n", - " [0.0, 0.027677911951599205, 0.027677911951599205, 0.018001466301392367],\n", - " [0.025654596878535406,\n", - " 0.027785140273174511,\n", - " 0.027785140273174511,\n", - " 0.027677911951599205],\n", - " [0.0, 0.038545531634676063, 0.038545531634676063, 0.027785140273174511],\n", - " [0.0, 0.0098673413339228251, 0.0098673413339228251, 0.0],\n", - " [0.0, 0.0063740586756051605, 0.0063740586756051605, 0.0],\n", - " [0.0, 0.018314892847079368, 0.018314892847079368, 0.0],\n", - " [0.0063740586756051605,\n", - " 0.020919971916807834,\n", - " 0.020919971916807834,\n", - " 0.018314892847079368],\n", - " [0.0098673413339228251,\n", - " 0.021331549334258012,\n", - " 0.021331549334258012,\n", - " 0.020919971916807834],\n", - " [0.0, 0.038172627745551073, 0.038172627745551073, 0.021331549334258012],\n", - " [0.0, 0.038549785278257441, 0.038549785278257441, 0.038172627745551073],\n", - " [0.0, 0.041756395103025853, 0.041756395103025853, 0.038549785278257441],\n", - " [0.0, 0.044239837488396695, 0.044239837488396695, 0.041756395103025853],\n", - " [0.0, 0.051399615300118107, 0.051399615300118107, 0.044239837488396695],\n", - " [0.038545531634676063,\n", - " 0.054504194517487316,\n", - " 0.054504194517487316,\n", - " 0.051399615300118107],\n", - " [0.0, 0.049909188783232375, 0.049909188783232375, 0.0],\n", - " [0.0, 0.004343028091093059, 0.004343028091093059, 0.0],\n", - " [0.0, 0.013089538188955493, 0.013089538188955493, 0.0],\n", - " [0.0, 0.01873480082627179, 0.01873480082627179, 0.013089538188955493],\n", - " [0.0, 0.022142126930350003, 0.022142126930350003, 0.01873480082627179],\n", - " [0.0, 0.021026273326490659, 0.021026273326490659, 0.0],\n", - " [0.0, 0.022871106138527764, 0.022871106138527764, 0.021026273326490659],\n", - " [0.022142126930350003,\n", - " 0.025592030654094284,\n", - " 0.025592030654094284,\n", - " 0.022871106138527764],\n", - " [0.004343028091093059,\n", - " 0.031696392176398989,\n", - " 0.031696392176398989,\n", - " 0.025592030654094284],\n", - " [0.0, 0.044094828279507559, 0.044094828279507559, 0.031696392176398989],\n", - " [0.0, 0.058956273771328019, 0.058956273771328019, 0.044094828279507559],\n", - " [0.049909188783232375,\n", - " 0.060793509275247813,\n", - " 0.060793509275247813,\n", - " 0.058956273771328019],\n", - " [0.054504194517487316,\n", - " 0.062749260664975284,\n", - " 0.062749260664975284,\n", - " 0.060793509275247813],\n", - " [0.0, 0.11452706854276173, 0.11452706854276173, 0.062749260664975284],\n", - " [0.0, 0.16879871542757449, 0.16879871542757449, 0.11452706854276173],\n", - " [0.02511575413958066,\n", - " 0.34030637431144151,\n", - " 0.34030637431144151,\n", - " 0.16879871542757449],\n", - " [0.078501765445113364,\n", - " 0.40731883099115351,\n", - " 0.40731883099115351,\n", - " 0.34030637431144151],\n", - " [0.37463108579107973,\n", - " 0.4702885552020129,\n", - " 0.4702885552020129,\n", - " 0.40731883099115351],\n", - " [0.18276650560208968,\n", - " 0.55450140245539181,\n", - " 0.55450140245539181,\n", - " 0.4702885552020129],\n", - " [0.0, 0.56872214213269512, 0.56872214213269512, 0.55450140245539181],\n", - " [0.065912928056641562,\n", - " 0.60683047418946023,\n", - " 0.60683047418946023,\n", - " 0.56872214213269512],\n", - " [0.0, 0.68964327773856882, 0.68964327773856882, 0.0],\n", - " [0.60683047418946023,\n", - " 0.74662291830681937,\n", - " 0.74662291830681937,\n", - " 0.68964327773856882],\n", - " [0.0, 0.74868571974226783, 0.74868571974226783, 0.74662291830681937],\n", - " [0.0, 0.059159829022742576, 0.059159829022742576, 0.0],\n", - " [0.0, 0.072241931148057395, 0.072241931148057395, 0.059159829022742576],\n", - " [0.0, 0.094214764586019267, 0.094214764586019267, 0.0],\n", - " [0.0, 0.1208785245608251, 0.1208785245608251, 0.094214764586019267],\n", - " [0.072241931148057395,\n", - " 0.30407409945603225,\n", - " 0.30407409945603225,\n", - " 0.1208785245608251],\n", - " [0.0, 0.53575634275760509, 0.53575634275760509, 0.30407409945603225],\n", - " [0.0, 0.95916641175553308, 0.95916641175553308, 0.53575634275760509],\n", - " [0.74868571974226783,\n", - " 0.97054688080895379,\n", - " 0.97054688080895379,\n", - " 0.95916641175553308],\n", - " [0.87696184581200687,\n", - " 1.2251813392575837,\n", - " 1.2251813392575837,\n", - " 0.97054688080895379],\n", - " [0.73838814447822776,\n", - " 1.4080313967635734,\n", - " 1.4080313967635734,\n", - " 1.2251813392575837],\n", - " [0.0, 0.06537474369356272, 0.06537474369356272, 0.0],\n", - " [0.0, 0.10147874820374773, 0.10147874820374773, 0.06537474369356272],\n", - " [0.0, 0.20313868339635047, 0.20313868339635047, 0.10147874820374773],\n", - " [0.0, 0.03423031242919157, 0.03423031242919157, 0.0],\n", - " [0.0, 0.063851699562346986, 0.063851699562346986, 0.03423031242919157],\n", - " [0.0, 0.0095618363299018096, 0.0095618363299018096, 0.0],\n", - " [0.0, 0.015409335482107687, 0.015409335482107687, 0.0095618363299018096],\n", - " [0.0, 0.016246257045853245, 0.016246257045853245, 0.015409335482107687],\n", - " [0.0, 0.020673003676283098, 0.020673003676283098, 0.016246257045853245],\n", - " [0.0, 0.022851519008591382, 0.022851519008591382, 0.020673003676283098],\n", - " [0.0, 0.023273280172758197, 0.023273280172758197, 0.022851519008591382],\n", - " [0.0, 0.028723007520111837, 0.028723007520111837, 0.023273280172758197],\n", - " [0.0, 0.06573661877523139, 0.06573661877523139, 0.028723007520111837],\n", - " [0.063851699562346986,\n", - " 0.08442677623241937,\n", - " 0.08442677623241937,\n", - " 0.06573661877523139],\n", - " [0.0, 0.03238673896829336, 0.03238673896829336, 0.0],\n", - " [0.0, 0.038041813889457106, 0.038041813889457106, 0.03238673896829336],\n", - " [0.0, 0.046044413189879875, 0.046044413189879875, 0.038041813889457106],\n", - " [0.0, 0.052819246653095633, 0.052819246653095633, 0.046044413189879875],\n", - " [0.0, 0.060482762544375707, 0.060482762544375707, 0.052819246653095633],\n", - " [0.0, 0.0086976048427167968, 0.0086976048427167968, 0.0],\n", - " [0.0, 0.020668737576344843, 0.020668737576344843, 0.0086976048427167968],\n", - " [0.0, 0.021627016668973313, 0.021627016668973313, 0.020668737576344843],\n", - " [0.0, 0.029706922913693753, 0.029706922913693753, 0.021627016668973313],\n", - " [0.0, 0.046733394323537104, 0.046733394323537104, 0.029706922913693753],\n", - " [0.0, 0.058913514595542199, 0.058913514595542199, 0.0],\n", - " [0.0, 0.063111320078104147, 0.063111320078104147, 0.058913514595542199],\n", - " [0.046733394323537104,\n", - " 0.10703958529441325,\n", - " 0.10703958529441325,\n", - " 0.063111320078104147],\n", - " [0.0, 0.11858529272216048, 0.11858529272216048, 0.10703958529441325],\n", - " [0.060482762544375707,\n", - " 0.14329698033455052,\n", - " 0.14329698033455052,\n", - " 0.11858529272216048],\n", - " [0.08442677623241937,\n", - " 0.55449606074794644,\n", - " 0.55449606074794644,\n", - " 0.14329698033455052],\n", - " [0.20313868339635047,\n", - " 1.314948404965002,\n", - " 1.314948404965002,\n", - " 0.55449606074794644],\n", - " [0.0, 0.11272198722520105, 0.11272198722520105, 0.0],\n", - " [0.0, 0.1134382336692506, 0.1134382336692506, 0.11272198722520105],\n", - " [0.0, 0.19520297117616434, 0.19520297117616434, 0.1134382336692506],\n", - " [0.0, 0.025879899922529821, 0.025879899922529821, 0.0],\n", - " [0.0, 0.12903577226878679, 0.12903577226878679, 0.025879899922529821],\n", - " [0.0, 0.026019401165280065, 0.026019401165280065, 0.0],\n", - " [0.0, 0.028697032215901173, 0.028697032215901173, 0.026019401165280065],\n", - " [0.0, 0.030845125968294002, 0.030845125968294002, 0.028697032215901173],\n", - " [0.0, 0.059628984202319851, 0.059628984202319851, 0.030845125968294002],\n", - " [0.0, 0.067049688381082176, 0.067049688381082176, 0.059628984202319851],\n", - " [0.0, 0.10966367997199804, 0.10966367997199804, 0.067049688381082176],\n", - " [0.0, 0.066107417322105802, 0.066107417322105802, 0.0],\n", - " [0.0, 0.06624891999119345, 0.06624891999119345, 0.066107417322105802],\n", - " [0.0, 0.081196566633084166, 0.081196566633084166, 0.06624891999119345],\n", - " [0.0, 0.038448479774890056, 0.038448479774890056, 0.0],\n", - " [0.0, 0.054082529082885814, 0.054082529082885814, 0.0],\n", - " [0.038448479774890056,\n", - " 0.078815261593168609,\n", - " 0.078815261593168609,\n", - " 0.054082529082885814],\n", - " [0.0, 0.082200699571230607, 0.082200699571230607, 0.078815261593168609],\n", - " [0.0, 0.10063794334643029, 0.10063794334643029, 0.082200699571230607],\n", - " [0.081196566633084166,\n", - " 0.25294780206201123,\n", - " 0.25294780206201123,\n", - " 0.10063794334643029],\n", - " [0.10966367997199804,\n", - " 0.32706082875360559,\n", - " 0.32706082875360559,\n", - " 0.25294780206201123],\n", - " [0.12903577226878679,\n", - " 0.74773173291295003,\n", - " 0.74773173291295003,\n", - " 0.32706082875360559],\n", - " [0.19520297117616434,\n", - " 0.99648333285459811,\n", - " 0.99648333285459811,\n", - " 0.74773173291295003],\n", - " [0.0, 1.2257177471869318, 1.2257177471869318, 0.99648333285459811],\n", - " [0.0, 0.04281842710796023, 0.04281842710796023, 0.0],\n", - " [0.0, 0.045146984594768104, 0.045146984594768104, 0.04281842710796023],\n", - " [0.0, 0.046422533203185262, 0.046422533203185262, 0.0],\n", - " [0.0, 0.043262803261001168, 0.043262803261001168, 0.0],\n", - " [0.0, 0.064852578213982701, 0.064852578213982701, 0.043262803261001168],\n", - " [0.046422533203185262,\n", - " 0.06863144626918026,\n", - " 0.06863144626918026,\n", - " 0.064852578213982701],\n", - " [0.045146984594768104,\n", - " 0.12531450196206032,\n", - " 0.12531450196206032,\n", - " 0.06863144626918026],\n", - " [0.0, 0.13221010965883315, 0.13221010965883315, 0.12531450196206032],\n", - " [0.0, 0.18111021563953056, 0.18111021563953056, 0.13221010965883315],\n", - " [0.0, 0.23808015794055898, 0.23808015794055898, 0.18111021563953056],\n", - " [0.0, 0.43624384918758036, 0.43624384918758036, 0.23808015794055898],\n", - " [0.0, 0.68137738367002187, 0.68137738367002187, 0.43624384918758036],\n", - " [0.0, 0.064918394473367461, 0.064918394473367461, 0.0],\n", - " [0.0, 0.081349522168236793, 0.081349522168236793, 0.064918394473367461],\n", - " [0.0, 0.083268654444510537, 0.083268654444510537, 0.081349522168236793],\n", - " [0.0, 0.10490081030192031, 0.10490081030192031, 0.083268654444510537],\n", - " [0.0, 0.051278935402369087, 0.051278935402369087, 0.0],\n", - " [0.0, 0.029439419100923753, 0.029439419100923753, 0.0],\n", - " [0.0, 0.087931461900738958, 0.087931461900738958, 0.029439419100923753],\n", - " [0.051278935402369087,\n", - " 0.12731061104637378,\n", - " 0.12731061104637378,\n", - " 0.087931461900738958],\n", - " [0.0, 0.37219338565858412, 0.37219338565858412, 0.12731061104637378],\n", - " [0.10490081030192031,\n", - " 0.63240338055152168,\n", - " 0.63240338055152168,\n", - " 0.37219338565858412],\n", - " [0.0, 0.21011956102419671, 0.21011956102419671, 0.0],\n", - " [0.0, 0.0069242983760038016, 0.0069242983760038016, 0.0],\n", - " [0.0, 0.02550497755341205, 0.02550497755341205, 0.0069242983760038016],\n", - " [0.0, 0.030111303957150674, 0.030111303957150674, 0.02550497755341205],\n", - " [0.0, 0.030452392648206473, 0.030452392648206473, 0.030111303957150674],\n", - " [0.0, 0.033810609015512243, 0.033810609015512243, 0.030452392648206473],\n", - " [0.0, 0.045629255363195717, 0.045629255363195717, 0.033810609015512243],\n", - " [0.0, 0.0097996546877872851, 0.0097996546877872851, 0.0],\n", - " [0.0, 0.060100706526630347, 0.060100706526630347, 0.0097996546877872851],\n", - " [0.045629255363195717,\n", - " 0.074585833346562685,\n", - " 0.074585833346562685,\n", - " 0.060100706526630347],\n", - " [0.0, 0.02476702624458722, 0.02476702624458722, 0.0],\n", - " [0.0, 0.037832474952083403, 0.037832474952083403, 0.0],\n", - " [0.02476702624458722,\n", - " 0.054487707099863163,\n", - " 0.054487707099863163,\n", - " 0.037832474952083403],\n", - " [0.0, 0.049373667566833979, 0.049373667566833979, 0.0],\n", - " [0.0, 0.062035892618696492, 0.062035892618696492, 0.049373667566833979],\n", - " [0.054487707099863163,\n", - " 0.080942853056953992,\n", - " 0.080942853056953992,\n", - " 0.062035892618696492],\n", - " [0.074585833346562685,\n", - " 0.43789732489933703,\n", - " 0.43789732489933703,\n", - " 0.080942853056953992],\n", - " [0.21011956102419671,\n", - " 0.468101804005287,\n", - " 0.468101804005287,\n", - " 0.43789732489933703],\n", - " [0.0, 0.03736688001426236, 0.03736688001426236, 0.0],\n", - " [0.0, 0.038913750230476905, 0.038913750230476905, 0.03736688001426236],\n", - " [0.0, 0.08479008209100504, 0.08479008209100504, 0.038913750230476905],\n", - " [0.0, 0.097983159292805599, 0.097983159292805599, 0.08479008209100504],\n", - " [0.0, 0.72715706222108734, 0.72715706222108734, 0.097983159292805599],\n", - " [0.468101804005287,\n", - " 0.73804317928221042,\n", - " 0.73804317928221042,\n", - " 0.72715706222108734],\n", - " [0.63240338055152168,\n", - " 0.93733097275455834,\n", - " 0.93733097275455834,\n", - " 0.73804317928221042],\n", - " [0.68137738367002187,\n", - " 1.3384568279522475,\n", - " 1.3384568279522475,\n", - " 0.93733097275455834],\n", - " [1.2257177471869318,\n", - " 1.4171350448157727,\n", - " 1.4171350448157727,\n", - " 1.3384568279522475],\n", - " [1.314948404965002,\n", - " 1.4397509401559718,\n", - " 1.4397509401559718,\n", - " 1.4171350448157727],\n", - " [1.4080313967635734,\n", - " 1.5775164777247233,\n", - " 1.5775164777247233,\n", - " 1.4397509401559718],\n", - " [1.2894119895518283,\n", - " 1.7316453653727684,\n", - " 1.7316453653727684,\n", - " 1.5775164777247233],\n", - " [0.0, 1.9996467589211897, 1.9996467589211897, 1.7316453653727684],\n", - " [0.0, 0.0050002696927328553, 0.0050002696927328553, 0.0],\n", - " [0.0, 0.096460775950645838, 0.096460775950645838, 0.0050002696927328553],\n", - " [0.0, 0.10219709526204505, 0.10219709526204505, 0.096460775950645838],\n", - " [0.0, 0.0040765545500999296, 0.0040765545500999296, 0.0],\n", - " [0.0, 0.0089873049353003526, 0.0089873049353003526, 0.0],\n", - " [0.0040765545500999296,\n", - " 0.032880883579975297,\n", - " 0.032880883579975297,\n", - " 0.0089873049353003526],\n", - " [0.0, 0.0096113396568823332, 0.0096113396568823332, 0.0],\n", - " [0.0, 0.0097955476110303287, 0.0097955476110303287, 0.0096113396568823332],\n", - " [0.0, 0.020433063255420322, 0.020433063255420322, 0.0097955476110303287],\n", - " [0.0, 0.023965687889157081, 0.023965687889157081, 0.0],\n", - " [0.020433063255420322,\n", - " 0.036454403698317782,\n", - " 0.036454403698317782,\n", - " 0.023965687889157081],\n", - " [0.032880883579975297,\n", - " 0.047060828860106825,\n", - " 0.047060828860106825,\n", - " 0.036454403698317782],\n", - " [0.0, 0.0045258214723971468, 0.0045258214723971468, 0.0],\n", - " [0.0, 0.079975131891103099, 0.079975131891103099, 0.0045258214723971468],\n", - " [0.0, 0.007774012734741105, 0.007774012734741105, 0.0],\n", - " [0.0, 0.035096615506341591, 0.035096615506341591, 0.007774012734741105],\n", - " [0.0, 0.035625840691832888, 0.035625840691832888, 0.035096615506341591],\n", - " [0.0, 0.093689113182905043, 0.093689113182905043, 0.035625840691832888],\n", - " [0.0, 0.010190904277836468, 0.010190904277836468, 0.0],\n", - " [0.0, 0.032353486504547883, 0.032353486504547883, 0.0],\n", - " [0.0, 0.030562094496290701, 0.030562094496290701, 0.0],\n", - " [0.0, 0.021989283253446065, 0.021989283253446065, 0.0],\n", - " [0.0, 0.0087200268921605994, 0.0087200268921605994, 0.0],\n", - " [0.0, 0.017324002424387697, 0.017324002424387697, 0.0087200268921605994],\n", - " [0.0, 0.024329330159288409, 0.024329330159288409, 0.017324002424387697],\n", - " [0.0, 0.024449022904812361, 0.024449022904812361, 0.024329330159288409],\n", - " [0.0, 0.025040137958879445, 0.025040137958879445, 0.024449022904812361],\n", - " [0.0, 0.025887737811565444, 0.025887737811565444, 0.025040137958879445],\n", - " [0.0, 0.028988936130877364, 0.028988936130877364, 0.0],\n", - " [0.025887737811565444,\n", - " 0.029192761928253312,\n", - " 0.029192761928253312,\n", - " 0.028988936130877364],\n", - " [0.021989283253446065,\n", - " 0.031163704866398374,\n", - " 0.031163704866398374,\n", - " 0.029192761928253312],\n", - " [0.030562094496290701,\n", - " 0.035010362994407823,\n", - " 0.035010362994407823,\n", - " 0.031163704866398374],\n", - " [0.032353486504547883,\n", - " 0.038453970874284746,\n", - " 0.038453970874284746,\n", - " 0.035010362994407823],\n", - " [0.0, 0.040836396143626712, 0.040836396143626712, 0.038453970874284746],\n", - " [0.0, 0.0026414944633732615, 0.0026414944633732615, 0.0],\n", - " [0.0, 0.038869916812362237, 0.038869916812362237, 0.0026414944633732615],\n", - " [0.0, 0.039417307695981181, 0.039417307695981181, 0.038869916812362237],\n", - " [0.0, 0.065334551670606422, 0.065334551670606422, 0.039417307695981181],\n", - " [0.040836396143626712,\n", - " 0.066506222272807905,\n", - " 0.066506222272807905,\n", - " 0.065334551670606422],\n", - " [0.010190904277836468,\n", - " 0.094565478695983571,\n", - " 0.094565478695983571,\n", - " 0.066506222272807905],\n", - " [0.093689113182905043,\n", - " 0.095888094094100193,\n", - " 0.095888094094100193,\n", - " 0.094565478695983571],\n", - " [0.079975131891103099,\n", - " 0.096538362374760697,\n", - " 0.096538362374760697,\n", - " 0.095888094094100193],\n", - " [0.0, 0.10484817561121193, 0.10484817561121193, 0.096538362374760697],\n", - " [0.047060828860106825,\n", - " 0.10662332985327595,\n", - " 0.10662332985327595,\n", - " 0.10484817561121193],\n", - " [0.0, 0.14535348796985442, 0.14535348796985442, 0.10662332985327595],\n", - " [0.0, 0.0081639765433345352, 0.0081639765433345352, 0.0],\n", - " [0.0, 0.092549528848065055, 0.092549528848065055, 0.0081639765433345352],\n", - " [0.0, 0.12093045083848698, 0.12093045083848698, 0.092549528848065055],\n", - " [0.0, 0.16767751964410324, 0.16767751964410324, 0.12093045083848698],\n", - " [0.0, 0.098167326402425578, 0.098167326402425578, 0.0],\n", - " [0.0, 0.17298175517955408, 0.17298175517955408, 0.098167326402425578],\n", - " [0.16767751964410324,\n", - " 0.18928043462016758,\n", - " 0.18928043462016758,\n", - " 0.17298175517955408],\n", - " [0.0, 0.0070854925728552108, 0.0070854925728552108, 0.0],\n", - " [0.0, 0.0077665844487819578, 0.0077665844487819578, 0.0070854925728552108],\n", - " [0.0, 0.074288074749582114, 0.074288074749582114, 0.0077665844487819578],\n", - " [0.0, 0.076034267807345735, 0.076034267807345735, 0.074288074749582114],\n", - " [0.0, 0.25485393994208372, 0.25485393994208372, 0.076034267807345735],\n", - " [0.18928043462016758,\n", - " 0.26780750064552511,\n", - " 0.26780750064552511,\n", - " 0.25485393994208372],\n", - " [0.0, 0.14407510082245822, 0.14407510082245822, 0.0],\n", - " [0.0, 0.25882916116426624, 0.25882916116426624, 0.14407510082245822],\n", - " [0.0, 0.060040472033455784, 0.060040472033455784, 0.0],\n", - " [0.0, 0.0079803782491819231, 0.0079803782491819231, 0.0],\n", - " [0.0, 0.025101158558924672, 0.025101158558924672, 0.0],\n", - " [0.0079803782491819231,\n", - " 0.036272653404454423,\n", - " 0.036272653404454423,\n", - " 0.025101158558924672],\n", - " [0.0, 0.010698845965806673, 0.010698845965806673, 0.0],\n", - " [0.0, 0.012262782881547396, 0.012262782881547396, 0.0],\n", - " [0.0, 0.0033590918415543369, 0.0033590918415543369, 0.0],\n", - " [0.0, 0.0051868728536563517, 0.0051868728536563517, 0.0033590918415543369],\n", - " [0.0, 0.0098179317577600927, 0.0098179317577600927, 0.0051868728536563517],\n", - " [0.0, 0.016451273902040462, 0.016451273902040462, 0.0098179317577600927],\n", - " [0.012262782881547396,\n", - " 0.017647594651958889,\n", - " 0.017647594651958889,\n", - " 0.016451273902040462],\n", - " [0.0, 0.0064789540050831399, 0.0064789540050831399, 0.0],\n", - " [0.0, 0.014393525766815888, 0.014393525766815888, 0.0],\n", - " [0.0064789540050831399,\n", - " 0.014870305780313894,\n", - " 0.014870305780313894,\n", - " 0.014393525766815888],\n", - " [0.0, 0.0032929044929980366, 0.0032929044929980366, 0.0],\n", - " [0.0, 0.0034649422794553568, 0.0034649422794553568, 0.0],\n", - " [0.0, 0.012397215372813875, 0.012397215372813875, 0.0034649422794553568],\n", - " [0.0, 0.014470047719342483, 0.014470047719342483, 0.012397215372813875],\n", - " [0.0032929044929980366,\n", - " 0.019000429074102355,\n", - " 0.019000429074102355,\n", - " 0.014470047719342483],\n", - " [0.014870305780313894,\n", - " 0.019210324229425937,\n", - " 0.019210324229425937,\n", - " 0.019000429074102355],\n", - " [0.017647594651958889,\n", - " 0.021695713885467115,\n", - " 0.021695713885467115,\n", - " 0.019210324229425937],\n", - " [0.0, 0.023660871539305937, 0.023660871539305937, 0.021695713885467115],\n", - " [0.010698845965806673,\n", - " 0.027001255563399263,\n", - " 0.027001255563399263,\n", - " 0.023660871539305937],\n", - " [0.0, 0.030822631717619942, 0.030822631717619942, 0.027001255563399263],\n", - " [0.0, 0.035771744659711023, 0.035771744659711023, 0.030822631717619942],\n", - " [0.0, 0.036564014221638096, 0.036564014221638096, 0.035771744659711023],\n", - " [0.036272653404454423,\n", - " 0.04699365169892368,\n", - " 0.04699365169892368,\n", - " 0.036564014221638096],\n", - " [0.0, 0.049219997937829982, 0.049219997937829982, 0.04699365169892368],\n", - " [0.0, 0.049554769346653038, 0.049554769346653038, 0.049219997937829982],\n", - " [0.0, 0.058544004176347565, 0.058544004176347565, 0.049554769346653038],\n", - " [0.0, 0.062721816762590754, 0.062721816762590754, 0.058544004176347565],\n", - " [0.060040472033455784,\n", - " 0.098759086761674761,\n", - " 0.098759086761674761,\n", - " 0.062721816762590754],\n", - " [0.0, 0.020551942998167792, 0.020551942998167792, 0.0],\n", - " [0.0, 0.0086913549001295855, 0.0086913549001295855, 0.0],\n", - " [0.0, 0.025654083495614679, 0.025654083495614679, 0.0086913549001295855],\n", - " [0.0, 0.0084418451182219113, 0.0084418451182219113, 0.0],\n", - " [0.0, 0.0099727130210365434, 0.0099727130210365434, 0.0084418451182219113],\n", - " [0.0, 0.019794570593978909, 0.019794570593978909, 0.0099727130210365434],\n", - " [0.0, 0.0198499110577364, 0.0198499110577364, 0.0],\n", - " [0.019794570593978909,\n", - " 0.020977849270116165,\n", - " 0.020977849270116165,\n", - " 0.0198499110577364],\n", - " [0.0, 0.026444989941381138, 0.026444989941381138, 0.0],\n", - " [0.020977849270116165,\n", - " 0.032531368384991204,\n", - " 0.032531368384991204,\n", - " 0.026444989941381138],\n", - " [0.0, 0.033425617152120508, 0.033425617152120508, 0.032531368384991204],\n", - " [0.025654083495614679,\n", - " 0.036308546390627632,\n", - " 0.036308546390627632,\n", - " 0.033425617152120508],\n", - " [0.020551942998167792,\n", - " 0.080083064458098194,\n", - " 0.080083064458098194,\n", - " 0.036308546390627632],\n", - " [0.0, 0.10860619756256988, 0.10860619756256988, 0.080083064458098194],\n", - " [0.098759086761674761,\n", - " 0.1268012688422305,\n", - " 0.1268012688422305,\n", - " 0.10860619756256988],\n", - " [0.0, 0.13634498195754335, 0.13634498195754335, 0.1268012688422305],\n", - " [0.0, 0.015823540722604935, 0.015823540722604935, 0.0],\n", - " [0.0, 0.0018877258805218343, 0.0018877258805218343, 0.0],\n", - " [0.0, 0.0045462297566216999, 0.0045462297566216999, 0.0018877258805218343],\n", - " [0.0, 0.015733110690513509, 0.015733110690513509, 0.0],\n", - " [0.0045462297566216999,\n", - " 0.017553676424052426,\n", - " 0.017553676424052426,\n", - " 0.015733110690513509],\n", - " [0.015823540722604935,\n", - " 0.037481262532096153,\n", - " 0.037481262532096153,\n", - " 0.017553676424052426],\n", - " [0.0, 0.039795518868327114, 0.039795518868327114, 0.037481262532096153],\n", - " [0.0, 0.0027076993924782518, 0.0027076993924782518, 0.0],\n", - " [0.0, 0.0034093379122651264, 0.0034093379122651264, 0.0027076993924782518],\n", - " [0.0, 0.0013974208385482243, 0.0013974208385482243, 0.0],\n", - " [0.0, 0.011113844924237911, 0.011113844924237911, 0.0013974208385482243],\n", - " [0.0034093379122651264,\n", - " 0.013800406153438688,\n", - " 0.013800406153438688,\n", - " 0.011113844924237911],\n", - " [0.0, 0.014871595274214004, 0.014871595274214004, 0.013800406153438688],\n", - " [0.0, 0.00027679776010606507, 0.00027679776010606507, 0.0],\n", - " [0.0, 0.0048530390478512863, 0.0048530390478512863, 0.0],\n", - " [0.00027679776010606507,\n", - " 0.018046985454643436,\n", - " 0.018046985454643436,\n", - " 0.0048530390478512863],\n", - " [0.014871595274214004,\n", - " 0.020044151790483144,\n", - " 0.020044151790483144,\n", - " 0.018046985454643436],\n", - " [0.0, 0.013414113164876815, 0.013414113164876815, 0.0],\n", - " [0.0, 0.018881623341225288, 0.018881623341225288, 0.0],\n", - " [0.013414113164876815,\n", - " 0.028219571718935375,\n", - " 0.028219571718935375,\n", - " 0.018881623341225288],\n", - " [0.0, 0.031714410005548817, 0.031714410005548817, 0.028219571718935375],\n", - " [0.0, 0.035840068359308856, 0.035840068359308856, 0.031714410005548817],\n", - " [0.020044151790483144,\n", - " 0.039219584457256471,\n", - " 0.039219584457256471,\n", - " 0.035840068359308856],\n", - " [0.0, 0.055269024471219827, 0.055269024471219827, 0.039219584457256471],\n", - " [0.0, 0.030069120655580116, 0.030069120655580116, 0.0],\n", - " [0.0, 0.033885287102229857, 0.033885287102229857, 0.030069120655580116],\n", - " [0.0, 0.041092549847869045, 0.041092549847869045, 0.033885287102229857],\n", - " [0.0, 0.082792891011246136, 0.082792891011246136, 0.041092549847869045],\n", - " [0.055269024471219827,\n", - " 0.084668469845623873,\n", - " 0.084668469845623873,\n", - " 0.082792891011246136],\n", - " [0.0, 0.026526973479834275, 0.026526973479834275, 0.0],\n", - " [0.0, 0.026884884414852962, 0.026884884414852962, 0.0],\n", - " [0.0, 0.038348142067122053, 0.038348142067122053, 0.026884884414852962],\n", - " [0.0, 0.043364941139124306, 0.043364941139124306, 0.038348142067122053],\n", - " [0.0, 0.051277156561184062, 0.051277156561184062, 0.043364941139124306],\n", - " [0.026526973479834275,\n", - " 0.052318165143666238,\n", - " 0.052318165143666238,\n", - " 0.051277156561184062],\n", - " [0.0, 0.08329509681847283, 0.08329509681847283, 0.052318165143666238],\n", - " [0.0, 0.028795238165364577, 0.028795238165364577, 0.0],\n", - " [0.0, 0.050704982841920244, 0.050704982841920244, 0.028795238165364577],\n", - " [0.0, 0.0031483538555908612, 0.0031483538555908612, 0.0],\n", - " [0.0, 0.0090894887094919788, 0.0090894887094919788, 0.0031483538555908612],\n", - " [0.0, 0.018810254995619446, 0.018810254995619446, 0.0090894887094919788],\n", - " [0.0, 0.027211220406298083, 0.027211220406298083, 0.018810254995619446],\n", - " [0.0, 0.012370656409420026, 0.012370656409420026, 0.0],\n", - " [0.0, 0.013903678074526141, 0.013903678074526141, 0.012370656409420026],\n", - " [0.0, 0.0094618045319067572, 0.0094618045319067572, 0.0],\n", - " [0.0, 0.012858746517451055, 0.012858746517451055, 0.0094618045319067572],\n", - " [0.0, 0.014274787178789864, 0.014274787178789864, 0.012858746517451055],\n", - " [0.0, 0.022557152302537367, 0.022557152302537367, 0.014274787178789864],\n", - " [0.013903678074526141,\n", - " 0.025544298972572575,\n", - " 0.025544298972572575,\n", - " 0.022557152302537367],\n", - " [0.0, 0.012565155788930908, 0.012565155788930908, 0.0],\n", - " [0.0, 0.032699367730890098, 0.032699367730890098, 0.012565155788930908],\n", - " [0.025544298972572575,\n", - " 0.048341015669926574,\n", - " 0.048341015669926574,\n", - " 0.032699367730890098],\n", - " [0.0, 0.048637697067199545, 0.048637697067199545, 0.048341015669926574],\n", - " [0.027211220406298083,\n", - " 0.059031735210811294,\n", - " 0.059031735210811294,\n", - " 0.048637697067199545],\n", - " [0.050704982841920244,\n", - " 0.063344525864512183,\n", - " 0.063344525864512183,\n", - " 0.059031735210811294],\n", - " [0.0, 0.010030091225909967, 0.010030091225909967, 0.0],\n", - " [0.0, 0.011808495120037702, 0.011808495120037702, 0.010030091225909967],\n", - " [0.0, 0.018338352052457662, 0.018338352052457662, 0.0],\n", - " [0.0, 0.026092409950022464, 0.026092409950022464, 0.018338352052457662],\n", - " [0.011808495120037702,\n", - " 0.030754130535588713,\n", - " 0.030754130535588713,\n", - " 0.026092409950022464],\n", - " [0.0, 0.010170045673449904, 0.010170045673449904, 0.0],\n", - " [0.0, 0.036448759704550637, 0.036448759704550637, 0.0],\n", - " [0.010170045673449904,\n", - " 0.037474373977420782,\n", - " 0.037474373977420782,\n", - " 0.036448759704550637],\n", - " [0.030754130535588713,\n", - " 0.043540320646503754,\n", - " 0.043540320646503754,\n", - " 0.037474373977420782],\n", - " [0.0, 0.076494324822171014, 0.076494324822171014, 0.043540320646503754],\n", - " [0.063344525864512183,\n", - " 0.089946080526055988,\n", - " 0.089946080526055988,\n", - " 0.076494324822171014],\n", - " [0.08329509681847283,\n", - " 0.098198626044365661,\n", - " 0.098198626044365661,\n", - " 0.089946080526055988],\n", - " [0.084668469845623873,\n", - " 0.099497642384127172,\n", - " 0.099497642384127172,\n", - " 0.098198626044365661],\n", - " [0.0, 0.11477469450187851, 0.11477469450187851, 0.099497642384127172],\n", - " [0.039795518868327114,\n", - " 0.11657524715822352,\n", - " 0.11657524715822352,\n", - " 0.11477469450187851],\n", - " [0.0, 0.13590123097308041, 0.13590123097308041, 0.11657524715822352],\n", - " [0.0, 0.14709831644516735, 0.14709831644516735, 0.13590123097308041],\n", - " [0.13634498195754335,\n", - " 0.1528790612902893,\n", - " 0.1528790612902893,\n", - " 0.14709831644516735],\n", - " [0.0, 0.048276518267168063, 0.048276518267168063, 0.0],\n", - " [0.0, 0.04958093692135046, 0.04958093692135046, 0.048276518267168063],\n", - " [0.0, 0.015785727889456456, 0.015785727889456456, 0.0],\n", - " [0.0, 0.010969426648646034, 0.010969426648646034, 0.0],\n", - " [0.0, 0.014977663669609538, 0.014977663669609538, 0.010969426648646034],\n", - " [0.0, 0.022347837926742817, 0.022347837926742817, 0.0],\n", - " [0.0, 0.011715081092334994, 0.011715081092334994, 0.0],\n", - " [0.0, 0.013525896827935226, 0.013525896827935226, 0.011715081092334994],\n", - " [0.0, 0.0012321789642759453, 0.0012321789642759453, 0.0],\n", - " [0.0, 0.0028541271870743184, 0.0028541271870743184, 0.0012321789642759453],\n", - " [0.0, 0.0029649151758461096, 0.0029649151758461096, 0.0028541271870743184],\n", - " [0.0, 0.0057927469304320609, 0.0057927469304320609, 0.0029649151758461096],\n", - " [0.0, 0.0069919091098140538, 0.0069919091098140538, 0.0057927469304320609],\n", - " [0.0, 0.007169260073400777, 0.007169260073400777, 0.0069919091098140538],\n", - " [0.0, 0.0076482994842009934, 0.0076482994842009934, 0.0],\n", - " [0.007169260073400777,\n", - " 0.0095133624444811715,\n", - " 0.0095133624444811715,\n", - " 0.0076482994842009934],\n", - " [0.0, 0.011262115653817802, 0.011262115653817802, 0.0],\n", - " [0.0095133624444811715,\n", - " 0.011308604334753418,\n", - " 0.011308604334753418,\n", - " 0.011262115653817802],\n", - " [0.0, 0.016586162907668383, 0.016586162907668383, 0.011308604334753418],\n", - " [0.0, 0.017060508931454315, 0.017060508931454315, 0.016586162907668383],\n", - " [0.0, 0.019199712081170644, 0.019199712081170644, 0.017060508931454315],\n", - " [0.0, 0.019212061315746369, 0.019212061315746369, 0.019199712081170644],\n", - " [0.0, 0.013128441796351921, 0.013128441796351921, 0.0],\n", - " [0.0, 0.019469048898180314, 0.019469048898180314, 0.013128441796351921],\n", - " [0.019212061315746369,\n", - " 0.019895585892348543,\n", - " 0.019895585892348543,\n", - " 0.019469048898180314],\n", - " [0.013525896827935226,\n", - " 0.021673602400157897,\n", - " 0.021673602400157897,\n", - " 0.019895585892348543],\n", - " [0.0, 0.023754113433254294, 0.023754113433254294, 0.021673602400157897],\n", - " [0.022347837926742817,\n", - " 0.031175119213881188,\n", - " 0.031175119213881188,\n", - " 0.023754113433254294],\n", - " [0.0, 0.032510017856037743, 0.032510017856037743, 0.031175119213881188],\n", - " [0.014977663669609538,\n", - " 0.033080037545322995,\n", - " 0.033080037545322995,\n", - " 0.032510017856037743],\n", - " [0.0, 0.035257023130148619, 0.035257023130148619, 0.033080037545322995],\n", - " [0.0, 0.0027660616406768928, 0.0027660616406768928, 0.0],\n", - " [0.0, 0.0044479208626090824, 0.0044479208626090824, 0.0027660616406768928],\n", - " [0.0, 0.0047461395891839706, 0.0047461395891839706, 0.0044479208626090824],\n", - " [0.0, 0.023265346526535672, 0.023265346526535672, 0.0047461395891839706],\n", - " [0.0, 0.0086706661797073935, 0.0086706661797073935, 0.0],\n", - " [0.0, 0.0036170167265260102, 0.0036170167265260102, 0.0],\n", - " [0.0, 0.018910357849604213, 0.018910357849604213, 0.0036170167265260102],\n", - " [0.0086706661797073935,\n", - " 0.024195498527619794,\n", - " 0.024195498527619794,\n", - " 0.018910357849604213],\n", - " [0.023265346526535672,\n", - " 0.026224813364442878,\n", - " 0.026224813364442878,\n", - " 0.024195498527619794],\n", - " [0.0, 0.015216332048164709, 0.015216332048164709, 0.0],\n", - " [0.0, 0.017189463342417149, 0.017189463342417149, 0.0],\n", - " [0.015216332048164709,\n", - " 0.026065574614800129,\n", - " 0.026065574614800129,\n", - " 0.017189463342417149],\n", - " [0.0, 0.014677367406994527, 0.014677367406994527, 0.0],\n", - " [0.0, 0.01643672853702953, 0.01643672853702953, 0.014677367406994527],\n", - " [0.0, 0.029911922037868726, 0.029911922037868726, 0.01643672853702953],\n", - " [0.0, 0.031792488075016626, 0.031792488075016626, 0.029911922037868726],\n", - " [0.0, 0.03314689145304852, 0.03314689145304852, 0.031792488075016626],\n", - " [0.026065574614800129,\n", - " 0.033782143759690346,\n", - " 0.033782143759690346,\n", - " 0.03314689145304852],\n", - " [0.0, 0.0025855902614286544, 0.0025855902614286544, 0.0],\n", - " [0.0, 0.0018487695908354881, 0.0018487695908354881, 0.0],\n", - " [0.0, 0.0046946908311490086, 0.0046946908311490086, 0.0018487695908354881],\n", - " [0.0, 0.01000753995744756, 0.01000753995744756, 0.0],\n", - " [0.0, 0.012013231247251819, 0.012013231247251819, 0.0],\n", - " [0.01000753995744756,\n", - " 0.012520915341938442,\n", - " 0.012520915341938442,\n", - " 0.012013231247251819],\n", - " [0.0, 0.02297676052015242, 0.02297676052015242, 0.012520915341938442],\n", - " [0.0046946908311490086,\n", - " 0.025180259033617616,\n", - " 0.025180259033617616,\n", - " 0.02297676052015242],\n", - " [0.0, 0.02173480250657794, 0.02173480250657794, 0.0],\n", - " [0.0, 0.02506815966519424, 0.02506815966519424, 0.02173480250657794],\n", - " [0.0, 0.026796251864764371, 0.026796251864764371, 0.02506815966519424],\n", - " [0.025180259033617616,\n", - " 0.027473502161175015,\n", - " 0.027473502161175015,\n", - " 0.026796251864764371],\n", - " [0.0, 0.029207631074771753, 0.029207631074771753, 0.027473502161175015],\n", - " [0.0025855902614286544,\n", - " 0.036026005551549271,\n", - " 0.036026005551549271,\n", - " 0.029207631074771753],\n", - " [0.033782143759690346,\n", - " 0.037513396273869085,\n", - " 0.037513396273869085,\n", - " 0.036026005551549271],\n", - " [0.026224813364442878,\n", - " 0.04250601736225474,\n", - " 0.04250601736225474,\n", - " 0.037513396273869085],\n", - " [0.035257023130148619,\n", - " 0.043709497743617459,\n", - " 0.043709497743617459,\n", - " 0.04250601736225474],\n", - " [0.015785727889456456,\n", - " 0.046710156261784597,\n", - " 0.046710156261784597,\n", - " 0.043709497743617459],\n", - " [0.0, 0.047055444839041512, 0.047055444839041512, 0.046710156261784597],\n", - " [0.0, 0.0098168789846866493, 0.0098168789846866493, 0.0],\n", - " [0.0, 0.0020193276108646857, 0.0020193276108646857, 0.0],\n", - " [0.0, 0.018758111552078786, 0.018758111552078786, 0.0020193276108646857],\n", - " [0.0098168789846866493,\n", - " 0.019616096273208122,\n", - " 0.019616096273208122,\n", - " 0.018758111552078786],\n", - " [0.0, 0.021036813185460329, 0.021036813185460329, 0.0],\n", - " [0.019616096273208122,\n", - " 0.033280237634370886,\n", - " 0.033280237634370886,\n", - " 0.021036813185460329],\n", - " [0.0, 0.003286854119062941, 0.003286854119062941, 0.0],\n", - " [0.0, 0.012080230833888367, 0.012080230833888367, 0.003286854119062941],\n", - " [0.0, 0.02428735549623225, 0.02428735549623225, 0.0],\n", - " [0.0, 0.024501879111613667, 0.024501879111613667, 0.02428735549623225],\n", - " [0.012080230833888367,\n", - " 0.029523933765673041,\n", - " 0.029523933765673041,\n", - " 0.024501879111613667],\n", - " [0.0, 0.046397132810120291, 0.046397132810120291, 0.0],\n", - " [0.029523933765673041,\n", - " 0.047215738138885355,\n", - " 0.047215738138885355,\n", - " 0.046397132810120291],\n", - " [0.033280237634370886,\n", - " 0.050606893809046649,\n", - " 0.050606893809046649,\n", - " 0.047215738138885355],\n", - " [0.0, 0.015680919520232296, 0.015680919520232296, 0.0],\n", - " [0.0, 0.023627052397622715, 0.023627052397622715, 0.015680919520232296],\n", - " [0.0, 0.028667370388637477, 0.028667370388637477, 0.023627052397622715],\n", - " [0.0, 0.030524832268166935, 0.030524832268166935, 0.028667370388637477],\n", - " [0.0, 0.031332057864115616, 0.031332057864115616, 0.030524832268166935],\n", - " [0.0, 0.055683316720534372, 0.055683316720534372, 0.031332057864115616],\n", - " [0.0, 0.057076071150698099, 0.057076071150698099, 0.055683316720534372],\n", - " [0.050606893809046649,\n", - " 0.061290624152478435,\n", - " 0.061290624152478435,\n", - " 0.057076071150698099],\n", - " [0.047055444839041512,\n", - " 0.064665347814728408,\n", - " 0.064665347814728408,\n", - " 0.061290624152478435],\n", - " [0.04958093692135046,\n", - " 0.065336245721645536,\n", - " 0.065336245721645536,\n", - " 0.064665347814728408],\n", - " [0.0, 0.081285049209555787, 0.081285049209555787, 0.065336245721645536],\n", - " [0.0, 0.1307985206682383, 0.1307985206682383, 0.081285049209555787],\n", - " [0.0, 0.1462009067687304, 0.1462009067687304, 0.1307985206682383],\n", - " [0.0, 0.017918808888988842, 0.017918808888988842, 0.0],\n", - " [0.0, 0.010957030300224293, 0.010957030300224293, 0.0],\n", - " [0.0, 0.018240402764192119, 0.018240402764192119, 0.010957030300224293],\n", - " [0.017918808888988842,\n", - " 0.018698081639564115,\n", - " 0.018698081639564115,\n", - " 0.018240402764192119],\n", - " [0.0, 0.0042418887302701986, 0.0042418887302701986, 0.0],\n", - " [0.0, 0.0055496541333673183, 0.0055496541333673183, 0.0042418887302701986],\n", - " [0.0, 0.016551769361609028, 0.016551769361609028, 0.0],\n", - " [0.0, 0.016886872327345943, 0.016886872327345943, 0.016551769361609028],\n", - " [0.0055496541333673183,\n", - " 0.017878770791083919,\n", - " 0.017878770791083919,\n", - " 0.016886872327345943],\n", - " [0.0, 0.019752797169005069, 0.019752797169005069, 0.017878770791083919],\n", - " [0.0, 0.02209503785921469, 0.02209503785921469, 0.019752797169005069],\n", - " [0.0, 0.028768958027713634, 0.028768958027713634, 0.02209503785921469],\n", - " [0.018698081639564115,\n", - " 0.029092912263982428,\n", - " 0.029092912263982428,\n", - " 0.028768958027713634],\n", - " [0.0, 0.031832332556687798, 0.031832332556687798, 0.029092912263982428],\n", - " [0.0, 0.040789618115393868, 0.040789618115393868, 0.0],\n", - " [0.031832332556687798,\n", - " 0.043639740833325995,\n", - " 0.043639740833325995,\n", - " 0.040789618115393868],\n", - " [0.0, 0.0065974692117491589, 0.0065974692117491589, 0.0],\n", - " [0.0, 0.0069421406640872976, 0.0069421406640872976, 0.0065974692117491589],\n", - " [0.0, 0.017005207320116587, 0.017005207320116587, 0.0069421406640872976],\n", - " [0.0, 0.039959829141274467, 0.039959829141274467, 0.0],\n", - " [0.017005207320116587,\n", - " 0.051925916775727089,\n", - " 0.051925916775727089,\n", - " 0.039959829141274467],\n", - " [0.043639740833325995,\n", - " 0.055893655096088422,\n", - " 0.055893655096088422,\n", - " 0.051925916775727089],\n", - " [0.0, 0.058553971889187831, 0.058553971889187831, 0.055893655096088422],\n", - " [0.0, 0.062101744903030685, 0.062101744903030685, 0.058553971889187831],\n", - " [0.0, 0.063839681703470499, 0.063839681703470499, 0.062101744903030685],\n", - " [0.0, 0.070147126256175349, 0.070147126256175349, 0.063839681703470499],\n", - " [0.0, 0.080202764665563669, 0.080202764665563669, 0.0],\n", - " [0.070147126256175349,\n", - " 0.085277742729274866,\n", - " 0.085277742729274866,\n", - " 0.080202764665563669],\n", - " [0.0, 0.093813746162270867, 0.093813746162270867, 0.085277742729274866],\n", - " [0.0, 0.0031022625614201041, 0.0031022625614201041, 0.0],\n", - " [0.0, 0.0030745583422596432, 0.0030745583422596432, 0.0],\n", - " [0.0, 0.0094063277637993874, 0.0094063277637993874, 0.0030745583422596432],\n", - " [0.0031022625614201041,\n", - " 0.032748822329968647,\n", - " 0.032748822329968647,\n", - " 0.0094063277637993874],\n", - " [0.0, 0.0069542542375150875, 0.0069542542375150875, 0.0],\n", - " [0.0, 0.036028387876784716, 0.036028387876784716, 0.0069542542375150875],\n", - " [0.032748822329968647,\n", - " 0.053727994341870297,\n", - " 0.053727994341870297,\n", - " 0.036028387876784716],\n", - " [0.0, 0.0024303631415867268, 0.0024303631415867268, 0.0],\n", - " [0.0, 0.0094359827257255082, 0.0094359827257255082, 0.0024303631415867268],\n", - " [0.0, 0.024673714049582691, 0.024673714049582691, 0.0],\n", - " [0.0094359827257255082,\n", - " 0.026452535247116191,\n", - " 0.026452535247116191,\n", - " 0.024673714049582691],\n", - " [0.0, 0.013397270057732356, 0.013397270057732356, 0.0],\n", - " [0.0, 0.017454866255574488, 0.017454866255574488, 0.013397270057732356],\n", - " [0.0, 0.0076782568985436644, 0.0076782568985436644, 0.0],\n", - " [0.0, 0.0078267626129881699, 0.0078267626129881699, 0.0],\n", - " [0.0, 0.0080489962107045676, 0.0080489962107045676, 0.0078267626129881699],\n", - " [0.0076782568985436644,\n", - " 0.010039334888319861,\n", - " 0.010039334888319861,\n", - " 0.0080489962107045676],\n", - " [0.0, 0.010076811003490178, 0.010076811003490178, 0.010039334888319861],\n", - " [0.0, 0.012148189823997551, 0.012148189823997551, 0.010076811003490178],\n", - " [0.0, 0.012599799680947278, 0.012599799680947278, 0.012148189823997551],\n", - " [0.0, 0.0075400000000009756, 0.0075400000000009756, 0.0],\n", - " [0.0, 0.0018097762292592862, 0.0018097762292592862, 0.0],\n", - " [0.0, 0.0021934087626348186, 0.0021934087626348186, 0.0018097762292592862],\n", - " [0.0, 0.0070078362566578633, 0.0070078362566578633, 0.0021934087626348186],\n", - " [0.0, 0.0026662432372137682, 0.0026662432372137682, 0.0],\n", - " [0.0, 0.010994441686593947, 0.010994441686593947, 0.0],\n", - " [0.0026662432372137682,\n", - " 0.016892337256874279,\n", - " 0.016892337256874279,\n", - " 0.010994441686593947],\n", - " [0.0, 0.017260625278372507, 0.017260625278372507, 0.016892337256874279],\n", - " [0.0070078362566578633,\n", - " 0.018469710582461059,\n", - " 0.018469710582461059,\n", - " 0.017260625278372507],\n", - " [0.0075400000000009756,\n", - " 0.018847627383840763,\n", - " 0.018847627383840763,\n", - " 0.018469710582461059],\n", - " [0.0, 0.0051393576446881065, 0.0051393576446881065, 0.0],\n", - " [0.0, 0.017353491694754836, 0.017353491694754836, 0.0051393576446881065],\n", - " [0.0, 0.013194846342418695, 0.013194846342418695, 0.0],\n", - " [0.0, 0.015541255676425539, 0.015541255676425539, 0.013194846342418695],\n", - " [0.0, 0.016672910243867429, 0.016672910243867429, 0.015541255676425539],\n", - " [0.0, 0.0053135089159673729, 0.0053135089159673729, 0.0],\n", - " [0.0, 0.0095782825704791939, 0.0095782825704791939, 0.0053135089159673729],\n", - " [0.0, 0.0056909075726062752, 0.0056909075726062752, 0.0],\n", - " [0.0, 0.0069574248109490651, 0.0069574248109490651, 0.0],\n", - " [0.0056909075726062752,\n", - " 0.0072113816290755384,\n", - " 0.0072113816290755384,\n", - " 0.0069574248109490651],\n", - " [0.0, 0.0052114489347945079, 0.0052114489347945079, 0.0],\n", - " [0.0, 0.0066523479313700022, 0.0066523479313700022, 0.0052114489347945079],\n", - " [0.0, 0.0073495998530510153, 0.0073495998530510153, 0.0066523479313700022],\n", - " [0.0, 0.0084957444641410116, 0.0084957444641410116, 0.0073495998530510153],\n", - " [0.0, 0.010309659645207688, 0.010309659645207688, 0.0084957444641410116],\n", - " [0.0072113816290755384,\n", - " 0.011451053488654326,\n", - " 0.011451053488654326,\n", - " 0.010309659645207688],\n", - " [0.0095782825704791939,\n", - " 0.012311922676817149,\n", - " 0.012311922676817149,\n", - " 0.011451053488654326],\n", - " [0.0, 0.012378821268603089, 0.012378821268603089, 0.012311922676817149],\n", - " [0.0, 0.0041557487893288088, 0.0041557487893288088, 0.0],\n", - " [0.0, 0.0076320567345915854, 0.0076320567345915854, 0.0041557487893288088],\n", - " [0.0, 0.012431085954176527, 0.012431085954176527, 0.0076320567345915854],\n", - " [0.0, 0.008677730406038876, 0.008677730406038876, 0.0],\n", - " [0.0, 0.0088010265878479283, 0.0088010265878479283, 0.008677730406038876],\n", - " [0.0, 0.0094886000021051978, 0.0094886000021051978, 0.0088010265878479283],\n", - " [0.0, 0.012778251562708632, 0.012778251562708632, 0.0],\n", - " [0.0094886000021051978,\n", - " 0.013657911297120283,\n", - " 0.013657911297120283,\n", - " 0.012778251562708632],\n", - " [0.012431085954176527,\n", - " 0.01638004181923668,\n", - " 0.01638004181923668,\n", - " 0.013657911297120283],\n", - " [0.012378821268603089,\n", - " 0.017790629274978622,\n", - " 0.017790629274978622,\n", - " 0.01638004181923668],\n", - " [0.016672910243867429,\n", - " 0.018034241791661031,\n", - " 0.018034241791661031,\n", - " 0.017790629274978622],\n", - " [0.017353491694754836,\n", - " 0.020623823214915581,\n", - " 0.020623823214915581,\n", - " 0.018034241791661031],\n", - " [0.018847627383840763,\n", - " 0.021127356507619925,\n", - " 0.021127356507619925,\n", - " 0.020623823214915581],\n", - " [0.012599799680947278,\n", - " 0.021270086060006438,\n", - " 0.021270086060006438,\n", - " 0.021127356507619925],\n", - " [0.0, 0.024656262997460956, 0.024656262997460956, 0.021270086060006438],\n", - " [0.0, 0.024994404533815365, 0.024994404533815365, 0.024656262997460956],\n", - " [0.017454866255574488,\n", - " 0.025376155934260611,\n", - " 0.025376155934260611,\n", - " 0.024994404533815365],\n", - " [0.0, 0.026574287271721241, 0.026574287271721241, 0.025376155934260611],\n", - " [0.0, 0.02896340106064749, 0.02896340106064749, 0.026574287271721241],\n", - " [0.026452535247116191,\n", - " 0.03807623990102911,\n", - " 0.03807623990102911,\n", - " 0.02896340106064749],\n", - " [0.0, 0.057691612778634112, 0.057691612778634112, 0.03807623990102911],\n", - " [0.053727994341870297,\n", - " 0.057919152928887795,\n", - " 0.057919152928887795,\n", - " 0.057691612778634112],\n", - " [0.0, 0.060320024378314463, 0.060320024378314463, 0.057919152928887795],\n", - " [0.0, 0.083464139101776538, 0.083464139101776538, 0.060320024378314463],\n", - " [0.0, 0.095272246751088266, 0.095272246751088266, 0.083464139101776538],\n", - " [0.093813746162270867,\n", - " 0.22623419045095994,\n", - " 0.22623419045095994,\n", - " 0.095272246751088266],\n", - " [0.1462009067687304,\n", - " 0.2753032507853832,\n", - " 0.2753032507853832,\n", - " 0.22623419045095994],\n", - " [0.0, 0.31603269163173414, 0.31603269163173414, 0.2753032507853832],\n", - " [0.1528790612902893,\n", - " 0.32851639628639528,\n", - " 0.32851639628639528,\n", - " 0.31603269163173414],\n", - " [0.25882916116426624,\n", - " 0.39172763273734856,\n", - " 0.39172763273734856,\n", - " 0.32851639628639528],\n", - " [0.26780750064552511,\n", - " 0.39242657648278312,\n", - " 0.39242657648278312,\n", - " 0.39172763273734856],\n", - " [0.0, 0.39821624806755107, 0.39821624806755107, 0.39242657648278312],\n", - " [0.0, 1.0098939933997975, 1.0098939933997975, 0.39821624806755107],\n", - " [0.14535348796985442,\n", - " 1.0146186106715167,\n", - " 1.0146186106715167,\n", - " 1.0098939933997975],\n", - " [0.10219709526204505,\n", - " 3.2383195274174246,\n", - " 3.2383195274174246,\n", - " 1.0146186106715167],\n", - " [0.0, 4.4258006285521958, 4.4258006285521958, 3.2383195274174246],\n", - " [1.9996467589211897,\n", - " 4.9130977483494025,\n", - " 4.9130977483494025,\n", - " 4.4258006285521958],\n", - " [0.0, 5.0859180060061968, 5.0859180060061968, 4.9130977483494025],\n", - " [4.3933561372010326,\n", - " 6.9070353370609689,\n", - " 6.9070353370609689,\n", - " 5.0859180060061968],\n", - " [5.4774588757537028,\n", - " 8.1646530021191399,\n", - " 8.1646530021191399,\n", - " 6.9070353370609689],\n", - " [7.5963928835821077,\n", - " 14.504806894960476,\n", - " 14.504806894960476,\n", - " 8.1646530021191399],\n", - " [7.9744927667796501,\n", - " 68.72794812508468,\n", - " 68.72794812508468,\n", - " 14.504806894960476],\n", - " [4.3725094114435077,\n", - " 135.34313324148937,\n", - " 135.34313324148937,\n", - " 68.72794812508468]],\n", - " 'icoord': [[75.0, 75.0, 85.0, 85.0],\n", - " [65.0, 65.0, 80.0, 80.0],\n", - " [95.0, 95.0, 105.0, 105.0],\n", - " [115.0, 115.0, 125.0, 125.0],\n", - " [100.0, 100.0, 120.0, 120.0],\n", - " [155.0, 155.0, 165.0, 165.0],\n", - " [145.0, 145.0, 160.0, 160.0],\n", - " [135.0, 135.0, 152.5, 152.5],\n", - " [110.0, 110.0, 143.75, 143.75],\n", - " [72.5, 72.5, 126.875, 126.875],\n", - " [55.0, 55.0, 99.6875, 99.6875],\n", - " [45.0, 45.0, 77.34375, 77.34375],\n", - " [175.0, 175.0, 185.0, 185.0],\n", - " [205.0, 205.0, 215.0, 215.0],\n", - " [195.0, 195.0, 210.0, 210.0],\n", - " [255.0, 255.0, 265.0, 265.0],\n", - " [245.0, 245.0, 260.0, 260.0],\n", - " [275.0, 275.0, 285.0, 285.0],\n", - " [252.5, 252.5, 280.0, 280.0],\n", - " [235.0, 235.0, 266.25, 266.25],\n", - " [315.0, 315.0, 325.0, 325.0],\n", - " [345.0, 345.0, 355.0, 355.0],\n", - " [335.0, 335.0, 350.0, 350.0],\n", - " [320.0, 320.0, 342.5, 342.5],\n", - " [305.0, 305.0, 331.25, 331.25],\n", - " [295.0, 295.0, 318.125, 318.125],\n", - " [250.625, 250.625, 306.5625, 306.5625],\n", - " [365.0, 365.0, 375.0, 375.0],\n", - " [445.0, 445.0, 455.0, 455.0],\n", - " [435.0, 435.0, 450.0, 450.0],\n", - " [425.0, 425.0, 442.5, 442.5],\n", - " [415.0, 415.0, 433.75, 433.75],\n", - " [405.0, 405.0, 424.375, 424.375],\n", - " [395.0, 395.0, 414.6875, 414.6875],\n", - " [505.0, 505.0, 515.0, 515.0],\n", - " [495.0, 495.0, 510.0, 510.0],\n", - " [485.0, 485.0, 502.5, 502.5],\n", - " [545.0, 545.0, 555.0, 555.0],\n", - " [535.0, 535.0, 550.0, 550.0],\n", - " [525.0, 525.0, 542.5, 542.5],\n", - " [493.75, 493.75, 533.75, 533.75],\n", - " [475.0, 475.0, 513.75, 513.75],\n", - " [465.0, 465.0, 494.375, 494.375],\n", - " [575.0, 575.0, 585.0, 585.0],\n", - " [565.0, 565.0, 580.0, 580.0],\n", - " [615.0, 615.0, 625.0, 625.0],\n", - " [635.0, 635.0, 645.0, 645.0],\n", - " [620.0, 620.0, 640.0, 640.0],\n", - " [675.0, 675.0, 685.0, 685.0],\n", - " [665.0, 665.0, 680.0, 680.0],\n", - " [715.0, 715.0, 725.0, 725.0],\n", - " [705.0, 705.0, 720.0, 720.0],\n", - " [735.0, 735.0, 745.0, 745.0],\n", - " [765.0, 765.0, 775.0, 775.0],\n", - " [755.0, 755.0, 770.0, 770.0],\n", - " [795.0, 795.0, 805.0, 805.0],\n", - " [785.0, 785.0, 800.0, 800.0],\n", - " [835.0, 835.0, 845.0, 845.0],\n", - " [825.0, 825.0, 840.0, 840.0],\n", - " [855.0, 855.0, 865.0, 865.0],\n", - " [832.5, 832.5, 860.0, 860.0],\n", - " [895.0, 895.0, 905.0, 905.0],\n", - " [885.0, 885.0, 900.0, 900.0],\n", - " [875.0, 875.0, 892.5, 892.5],\n", - " [915.0, 915.0, 925.0, 925.0],\n", - " [935.0, 935.0, 945.0, 945.0],\n", - " [975.0, 975.0, 985.0, 985.0],\n", - " [965.0, 965.0, 980.0, 980.0],\n", - " [1005.0, 1005.0, 1015.0, 1015.0],\n", - " [995.0, 995.0, 1010.0, 1010.0],\n", - " [972.5, 972.5, 1002.5, 1002.5],\n", - " [955.0, 955.0, 987.5, 987.5],\n", - " [940.0, 940.0, 971.25, 971.25],\n", - " [920.0, 920.0, 955.625, 955.625],\n", - " [883.75, 883.75, 937.8125, 937.8125],\n", - " [846.25, 846.25, 910.78125, 910.78125],\n", - " [815.0, 815.0, 878.515625, 878.515625],\n", - " [792.5, 792.5, 846.7578125, 846.7578125],\n", - " [762.5, 762.5, 819.62890625, 819.62890625],\n", - " [1035.0, 1035.0, 1045.0, 1045.0],\n", - " [1025.0, 1025.0, 1040.0, 1040.0],\n", - " [1065.0, 1065.0, 1075.0, 1075.0],\n", - " [1095.0, 1095.0, 1105.0, 1105.0],\n", - " [1085.0, 1085.0, 1100.0, 1100.0],\n", - " [1070.0, 1070.0, 1092.5, 1092.5],\n", - " [1055.0, 1055.0, 1081.25, 1081.25],\n", - " [1032.5, 1032.5, 1068.125, 1068.125],\n", - " [791.064453125, 791.064453125, 1050.3125, 1050.3125],\n", - " [740.0, 740.0, 920.6884765625, 920.6884765625],\n", - " [1165.0, 1165.0, 1175.0, 1175.0],\n", - " [1155.0, 1155.0, 1170.0, 1170.0],\n", - " [1145.0, 1145.0, 1162.5, 1162.5],\n", - " [1135.0, 1135.0, 1153.75, 1153.75],\n", - " [1245.0, 1245.0, 1255.0, 1255.0],\n", - " [1235.0, 1235.0, 1250.0, 1250.0],\n", - " [1225.0, 1225.0, 1242.5, 1242.5],\n", - " [1215.0, 1215.0, 1233.75, 1233.75],\n", - " [1205.0, 1205.0, 1224.375, 1224.375],\n", - " [1275.0, 1275.0, 1285.0, 1285.0],\n", - " [1335.0, 1335.0, 1345.0, 1345.0],\n", - " [1325.0, 1325.0, 1340.0, 1340.0],\n", - " [1315.0, 1315.0, 1332.5, 1332.5],\n", - " [1305.0, 1305.0, 1323.75, 1323.75],\n", - " [1385.0, 1385.0, 1395.0, 1395.0],\n", - " [1375.0, 1375.0, 1390.0, 1390.0],\n", - " [1365.0, 1365.0, 1382.5, 1382.5],\n", - " [1355.0, 1355.0, 1373.75, 1373.75],\n", - " [1314.375, 1314.375, 1364.375, 1364.375],\n", - " [1295.0, 1295.0, 1339.375, 1339.375],\n", - " [1425.0, 1425.0, 1435.0, 1435.0],\n", - " [1415.0, 1415.0, 1430.0, 1430.0],\n", - " [1405.0, 1405.0, 1422.5, 1422.5],\n", - " [1317.1875, 1317.1875, 1413.75, 1413.75],\n", - " [1280.0, 1280.0, 1365.46875, 1365.46875],\n", - " [1265.0, 1265.0, 1322.734375, 1322.734375],\n", - " [1214.6875, 1214.6875, 1293.8671875, 1293.8671875],\n", - " [1195.0, 1195.0, 1254.27734375, 1254.27734375],\n", - " [1465.0, 1465.0, 1475.0, 1475.0],\n", - " [1455.0, 1455.0, 1470.0, 1470.0],\n", - " [1505.0, 1505.0, 1515.0, 1515.0],\n", - " [1545.0, 1545.0, 1555.0, 1555.0],\n", - " [1535.0, 1535.0, 1550.0, 1550.0],\n", - " [1565.0, 1565.0, 1575.0, 1575.0],\n", - " [1542.5, 1542.5, 1570.0, 1570.0],\n", - " [1525.0, 1525.0, 1556.25, 1556.25],\n", - " [1645.0, 1645.0, 1655.0, 1655.0],\n", - " [1635.0, 1635.0, 1650.0, 1650.0],\n", - " [1675.0, 1675.0, 1685.0, 1685.0],\n", - " [1665.0, 1665.0, 1680.0, 1680.0],\n", - " [1642.5, 1642.5, 1672.5, 1672.5],\n", - " [1695.0, 1695.0, 1705.0, 1705.0],\n", - " [1725.0, 1725.0, 1735.0, 1735.0],\n", - " [1715.0, 1715.0, 1730.0, 1730.0],\n", - " [1755.0, 1755.0, 1765.0, 1765.0],\n", - " [1745.0, 1745.0, 1760.0, 1760.0],\n", - " [1722.5, 1722.5, 1752.5, 1752.5],\n", - " [1700.0, 1700.0, 1737.5, 1737.5],\n", - " [1657.5, 1657.5, 1718.75, 1718.75],\n", - " [1625.0, 1625.0, 1688.125, 1688.125],\n", - " [1795.0, 1795.0, 1805.0, 1805.0],\n", - " [1785.0, 1785.0, 1800.0, 1800.0],\n", - " [1775.0, 1775.0, 1792.5, 1792.5],\n", - " [1656.5625, 1656.5625, 1783.75, 1783.75],\n", - " [1615.0, 1615.0, 1720.15625, 1720.15625],\n", - " [1605.0, 1605.0, 1667.578125, 1667.578125],\n", - " [1595.0, 1595.0, 1636.2890625, 1636.2890625],\n", - " [1585.0, 1585.0, 1615.64453125, 1615.64453125],\n", - " [1540.625, 1540.625, 1600.322265625, 1600.322265625],\n", - " [1835.0, 1835.0, 1845.0, 1845.0],\n", - " [1855.0, 1855.0, 1865.0, 1865.0],\n", - " [1840.0, 1840.0, 1860.0, 1860.0],\n", - " [1825.0, 1825.0, 1850.0, 1850.0],\n", - " [1815.0, 1815.0, 1837.5, 1837.5],\n", - " [1915.0, 1915.0, 1925.0, 1925.0],\n", - " [1905.0, 1905.0, 1920.0, 1920.0],\n", - " [1895.0, 1895.0, 1912.5, 1912.5],\n", - " [1955.0, 1955.0, 1965.0, 1965.0],\n", - " [1945.0, 1945.0, 1960.0, 1960.0],\n", - " [1985.0, 1985.0, 1995.0, 1995.0],\n", - " [1975.0, 1975.0, 1990.0, 1990.0],\n", - " [1952.5, 1952.5, 1982.5, 1982.5],\n", - " [2015.0, 2015.0, 2025.0, 2025.0],\n", - " [2045.0, 2045.0, 2055.0, 2055.0],\n", - " [2035.0, 2035.0, 2050.0, 2050.0],\n", - " [2020.0, 2020.0, 2042.5, 2042.5],\n", - " [2065.0, 2065.0, 2075.0, 2075.0],\n", - " [2105.0, 2105.0, 2115.0, 2115.0],\n", - " [2145.0, 2145.0, 2155.0, 2155.0],\n", - " [2135.0, 2135.0, 2150.0, 2150.0],\n", - " [2125.0, 2125.0, 2142.5, 2142.5],\n", - " [2110.0, 2110.0, 2133.75, 2133.75],\n", - " [2095.0, 2095.0, 2121.875, 2121.875],\n", - " [2195.0, 2195.0, 2205.0, 2205.0],\n", - " [2185.0, 2185.0, 2200.0, 2200.0],\n", - " [2175.0, 2175.0, 2192.5, 2192.5],\n", - " [2215.0, 2215.0, 2225.0, 2225.0],\n", - " [2183.75, 2183.75, 2220.0, 2220.0],\n", - " [2165.0, 2165.0, 2201.875, 2201.875],\n", - " [2108.4375, 2108.4375, 2183.4375, 2183.4375],\n", - " [2085.0, 2085.0, 2145.9375, 2145.9375],\n", - " [2070.0, 2070.0, 2115.46875, 2115.46875],\n", - " [2031.25, 2031.25, 2092.734375, 2092.734375],\n", - " [2005.0, 2005.0, 2061.9921875, 2061.9921875],\n", - " [1967.5, 1967.5, 2033.49609375, 2033.49609375],\n", - " [1935.0, 1935.0, 2000.498046875, 2000.498046875],\n", - " [1903.75, 1903.75, 1967.7490234375, 1967.7490234375],\n", - " [1885.0, 1885.0, 1935.74951171875, 1935.74951171875],\n", - " [1875.0, 1875.0, 1910.374755859375, 1910.374755859375],\n", - " [1826.25, 1826.25, 1892.6873779296875, 1892.6873779296875],\n", - " [1570.4736328125, 1570.4736328125, 1859.4686889648438, 1859.4686889648438],\n", - " [1510.0, 1510.0, 1714.9711608886719, 1714.9711608886719],\n", - " [1495.0, 1495.0, 1612.485580444336, 1612.485580444336],\n", - " [1485.0, 1485.0, 1553.742790222168, 1553.742790222168],\n", - " [1462.5, 1462.5, 1519.371395111084, 1519.371395111084],\n", - " [1445.0, 1445.0, 1490.935697555542, 1490.935697555542],\n", - " [1224.638671875, 1224.638671875, 1467.967848777771, 1467.967848777771],\n", - " [1185.0, 1185.0, 1346.3032603263855, 1346.3032603263855],\n", - " [1144.375, 1144.375, 1265.6516301631927, 1265.6516301631927],\n", - " [1125.0, 1125.0, 1205.0133150815964, 1205.0133150815964],\n", - " [1115.0, 1115.0, 1165.0066575407982, 1165.0066575407982],\n", - " [830.34423828125, 830.34423828125, 1140.003328770399, 1140.003328770399],\n", - " [712.5, 712.5, 985.1737835258245, 985.1737835258245],\n", - " [695.0, 695.0, 848.8368917629123, 848.8368917629123],\n", - " [672.5, 672.5, 771.9184458814561, 771.9184458814561],\n", - " [655.0, 655.0, 722.2092229407281, 722.2092229407281],\n", - " [630.0, 630.0, 688.604611470364, 688.604611470364],\n", - " [605.0, 605.0, 659.302305735182, 659.302305735182],\n", - " [595.0, 595.0, 632.151152867591, 632.151152867591],\n", - " [572.5, 572.5, 613.5755764337955, 613.5755764337955],\n", - " [479.6875, 479.6875, 593.0377882168978, 593.0377882168978],\n", - " [404.84375, 404.84375, 536.3626441084489, 536.3626441084489],\n", - " [385.0, 385.0, 470.60319705422444, 470.60319705422444],\n", - " [370.0, 370.0, 427.8015985271122, 427.8015985271122],\n", - " [2235.0, 2235.0, 2245.0, 2245.0],\n", - " [2255.0, 2255.0, 2265.0, 2265.0],\n", - " [2240.0, 2240.0, 2260.0, 2260.0],\n", - " [2295.0, 2295.0, 2305.0, 2305.0],\n", - " [2285.0, 2285.0, 2300.0, 2300.0],\n", - " [2275.0, 2275.0, 2292.5, 2292.5],\n", - " [2250.0, 2250.0, 2283.75, 2283.75],\n", - " [398.9007992635561, 398.9007992635561, 2266.875, 2266.875],\n", - " [2335.0, 2335.0, 2345.0, 2345.0],\n", - " [2325.0, 2325.0, 2340.0, 2340.0],\n", - " [2355.0, 2355.0, 2365.0, 2365.0],\n", - " [2332.5, 2332.5, 2360.0, 2360.0],\n", - " [2315.0, 2315.0, 2346.25, 2346.25],\n", - " [1332.887899631778, 1332.887899631778, 2330.625, 2330.625],\n", - " [278.59375, 278.59375, 1831.756449815889, 1831.756449815889],\n", - " [225.0, 225.0, 1055.1750999079445, 1055.1750999079445],\n", - " [202.5, 202.5, 640.0875499539723, 640.0875499539723],\n", - " [180.0, 180.0, 421.29377497698613, 421.29377497698613],\n", - " [61.171875, 61.171875, 300.64688748849306, 300.64688748849306],\n", - " [2375.0, 2375.0, 2385.0, 2385.0],\n", - " [180.90938124424653, 180.90938124424653, 2380.0, 2380.0],\n", - " [35.0, 35.0, 1280.4546906221233, 1280.4546906221233],\n", - " [25.0, 25.0, 657.7273453110616, 657.7273453110616],\n", - " [15.0, 15.0, 341.3636726555308, 341.3636726555308],\n", - " [5.0, 5.0, 178.1818363277654, 178.1818363277654],\n", - " [2395.0, 2395.0, 2405.0, 2405.0],\n", - " [2455.0, 2455.0, 2465.0, 2465.0],\n", - " [2445.0, 2445.0, 2460.0, 2460.0],\n", - " [2435.0, 2435.0, 2452.5, 2452.5],\n", - " [2485.0, 2485.0, 2495.0, 2495.0],\n", - " [2475.0, 2475.0, 2490.0, 2490.0],\n", - " [2443.75, 2443.75, 2482.5, 2482.5],\n", - " [2425.0, 2425.0, 2463.125, 2463.125],\n", - " [2415.0, 2415.0, 2444.0625, 2444.0625],\n", - " [2505.0, 2505.0, 2515.0, 2515.0],\n", - " [2535.0, 2535.0, 2545.0, 2545.0],\n", - " [2525.0, 2525.0, 2540.0, 2540.0],\n", - " [2565.0, 2565.0, 2575.0, 2575.0],\n", - " [2585.0, 2585.0, 2595.0, 2595.0],\n", - " [2570.0, 2570.0, 2590.0, 2590.0],\n", - " [2555.0, 2555.0, 2580.0, 2580.0],\n", - " [2532.5, 2532.5, 2567.5, 2567.5],\n", - " [2510.0, 2510.0, 2550.0, 2550.0],\n", - " [2429.53125, 2429.53125, 2530.0, 2530.0],\n", - " [2400.0, 2400.0, 2479.765625, 2479.765625],\n", - " [2605.0, 2605.0, 2615.0, 2615.0],\n", - " [2635.0, 2635.0, 2645.0, 2645.0],\n", - " [2675.0, 2675.0, 2685.0, 2685.0],\n", - " [2665.0, 2665.0, 2680.0, 2680.0],\n", - " [2695.0, 2695.0, 2705.0, 2705.0],\n", - " [2735.0, 2735.0, 2745.0, 2745.0],\n", - " [2725.0, 2725.0, 2740.0, 2740.0],\n", - " [2715.0, 2715.0, 2732.5, 2732.5],\n", - " [2700.0, 2700.0, 2723.75, 2723.75],\n", - " [2672.5, 2672.5, 2711.875, 2711.875],\n", - " [2655.0, 2655.0, 2692.1875, 2692.1875],\n", - " [2640.0, 2640.0, 2673.59375, 2673.59375],\n", - " [2775.0, 2775.0, 2785.0, 2785.0],\n", - " [2765.0, 2765.0, 2780.0, 2780.0],\n", - " [2755.0, 2755.0, 2772.5, 2772.5],\n", - " [2795.0, 2795.0, 2805.0, 2805.0],\n", - " [2763.75, 2763.75, 2800.0, 2800.0],\n", - " [2905.0, 2905.0, 2915.0, 2915.0],\n", - " [2895.0, 2895.0, 2910.0, 2910.0],\n", - " [2955.0, 2955.0, 2965.0, 2965.0],\n", - " [2945.0, 2945.0, 2960.0, 2960.0],\n", - " [2975.0, 2975.0, 2985.0, 2985.0],\n", - " [2952.5, 2952.5, 2980.0, 2980.0],\n", - " [2935.0, 2935.0, 2966.25, 2966.25],\n", - " [2925.0, 2925.0, 2950.625, 2950.625],\n", - " [2902.5, 2902.5, 2937.8125, 2937.8125],\n", - " [2885.0, 2885.0, 2920.15625, 2920.15625],\n", - " [2875.0, 2875.0, 2902.578125, 2902.578125],\n", - " [2865.0, 2865.0, 2888.7890625, 2888.7890625],\n", - " [3005.0, 3005.0, 3015.0, 3015.0],\n", - " [2995.0, 2995.0, 3010.0, 3010.0],\n", - " [3055.0, 3055.0, 3065.0, 3065.0],\n", - " [3045.0, 3045.0, 3060.0, 3060.0],\n", - " [3035.0, 3035.0, 3052.5, 3052.5],\n", - " [3025.0, 3025.0, 3043.75, 3043.75],\n", - " [3002.5, 3002.5, 3034.375, 3034.375],\n", - " [2876.89453125, 2876.89453125, 3018.4375, 3018.4375],\n", - " [2855.0, 2855.0, 2947.666015625, 2947.666015625],\n", - " [2845.0, 2845.0, 2901.3330078125, 2901.3330078125],\n", - " [2835.0, 2835.0, 2873.16650390625, 2873.16650390625],\n", - " [2825.0, 2825.0, 2854.083251953125, 2854.083251953125],\n", - " [3085.0, 3085.0, 3095.0, 3095.0],\n", - " [3125.0, 3125.0, 3135.0, 3135.0],\n", - " [3145.0, 3145.0, 3155.0, 3155.0],\n", - " [3130.0, 3130.0, 3150.0, 3150.0],\n", - " [3115.0, 3115.0, 3140.0, 3140.0],\n", - " [3105.0, 3105.0, 3127.5, 3127.5],\n", - " [3090.0, 3090.0, 3116.25, 3116.25],\n", - " [3165.0, 3165.0, 3175.0, 3175.0],\n", - " [3103.125, 3103.125, 3170.0, 3170.0],\n", - " [3075.0, 3075.0, 3136.5625, 3136.5625],\n", - " [2839.5416259765625, 2839.5416259765625, 3105.78125, 3105.78125],\n", - " [2815.0, 2815.0, 2972.6614379882812, 2972.6614379882812],\n", - " [3205.0, 3205.0, 3215.0, 3215.0],\n", - " [3195.0, 3195.0, 3210.0, 3210.0],\n", - " [3185.0, 3185.0, 3202.5, 3202.5],\n", - " [2893.8307189941406, 2893.8307189941406, 3193.75, 3193.75],\n", - " [3245.0, 3245.0, 3255.0, 3255.0],\n", - " [3265.0, 3265.0, 3275.0, 3275.0],\n", - " [3285.0, 3285.0, 3295.0, 3295.0],\n", - " [3355.0, 3355.0, 3365.0, 3365.0],\n", - " [3345.0, 3345.0, 3360.0, 3360.0],\n", - " [3335.0, 3335.0, 3352.5, 3352.5],\n", - " [3325.0, 3325.0, 3343.75, 3343.75],\n", - " [3315.0, 3315.0, 3334.375, 3334.375],\n", - " [3305.0, 3305.0, 3324.6875, 3324.6875],\n", - " [3375.0, 3375.0, 3385.0, 3385.0],\n", - " [3314.84375, 3314.84375, 3380.0, 3380.0],\n", - " [3290.0, 3290.0, 3347.421875, 3347.421875],\n", - " [3270.0, 3270.0, 3318.7109375, 3318.7109375],\n", - " [3250.0, 3250.0, 3294.35546875, 3294.35546875],\n", - " [3235.0, 3235.0, 3272.177734375, 3272.177734375],\n", - " [3405.0, 3405.0, 3415.0, 3415.0],\n", - " [3395.0, 3395.0, 3410.0, 3410.0],\n", - " [3465.0, 3465.0, 3475.0, 3475.0],\n", - " [3455.0, 3455.0, 3470.0, 3470.0],\n", - " [3445.0, 3445.0, 3462.5, 3462.5],\n", - " [3435.0, 3435.0, 3453.75, 3453.75],\n", - " [3425.0, 3425.0, 3444.375, 3444.375],\n", - " [3402.5, 3402.5, 3434.6875, 3434.6875],\n", - " [3253.5888671875, 3253.5888671875, 3418.59375, 3418.59375],\n", - " [3505.0, 3505.0, 3515.0, 3515.0],\n", - " [3535.0, 3535.0, 3545.0, 3545.0],\n", - " [3525.0, 3525.0, 3540.0, 3540.0],\n", - " [3565.0, 3565.0, 3575.0, 3575.0],\n", - " [3595.0, 3595.0, 3605.0, 3605.0],\n", - " [3625.0, 3625.0, 3635.0, 3635.0],\n", - " [3645.0, 3645.0, 3655.0, 3655.0],\n", - " [3685.0, 3685.0, 3695.0, 3695.0],\n", - " [3675.0, 3675.0, 3690.0, 3690.0],\n", - " [3665.0, 3665.0, 3682.5, 3682.5],\n", - " [3650.0, 3650.0, 3673.75, 3673.75],\n", - " [3630.0, 3630.0, 3661.875, 3661.875],\n", - " [3745.0, 3745.0, 3755.0, 3755.0],\n", - " [3735.0, 3735.0, 3750.0, 3750.0],\n", - " [3725.0, 3725.0, 3742.5, 3742.5],\n", - " [3715.0, 3715.0, 3733.75, 3733.75],\n", - " [3705.0, 3705.0, 3724.375, 3724.375],\n", - " [3645.9375, 3645.9375, 3714.6875, 3714.6875],\n", - " [3795.0, 3795.0, 3805.0, 3805.0],\n", - " [3785.0, 3785.0, 3800.0, 3800.0],\n", - " [3775.0, 3775.0, 3792.5, 3792.5],\n", - " [3815.0, 3815.0, 3825.0, 3825.0],\n", - " [3835.0, 3835.0, 3845.0, 3845.0],\n", - " [3855.0, 3855.0, 3865.0, 3865.0],\n", - " [3840.0, 3840.0, 3860.0, 3860.0],\n", - " [3885.0, 3885.0, 3895.0, 3895.0],\n", - " [3925.0, 3925.0, 3935.0, 3935.0],\n", - " [3915.0, 3915.0, 3930.0, 3930.0],\n", - " [3945.0, 3945.0, 3955.0, 3955.0],\n", - " [4025.0, 4025.0, 4035.0, 4035.0],\n", - " [4015.0, 4015.0, 4030.0, 4030.0],\n", - " [4005.0, 4005.0, 4022.5, 4022.5],\n", - " [3995.0, 3995.0, 4013.75, 4013.75],\n", - " [3985.0, 3985.0, 4004.375, 4004.375],\n", - " [3975.0, 3975.0, 3994.6875, 3994.6875],\n", - " [3965.0, 3965.0, 3984.84375, 3984.84375],\n", - " [3950.0, 3950.0, 3974.921875, 3974.921875],\n", - " [3922.5, 3922.5, 3962.4609375, 3962.4609375],\n", - " [3905.0, 3905.0, 3942.48046875, 3942.48046875],\n", - " [3890.0, 3890.0, 3923.740234375, 3923.740234375],\n", - " [3875.0, 3875.0, 3906.8701171875, 3906.8701171875],\n", - " [3850.0, 3850.0, 3890.93505859375, 3890.93505859375],\n", - " [3820.0, 3820.0, 3870.467529296875, 3870.467529296875],\n", - " [3783.75, 3783.75, 3845.2337646484375, 3845.2337646484375],\n", - " [3765.0, 3765.0, 3814.4918823242188, 3814.4918823242188],\n", - " [3680.3125, 3680.3125, 3789.7459411621094, 3789.7459411621094],\n", - " [3615.0, 3615.0, 3735.0292205810547, 3735.0292205810547],\n", - " [3600.0, 3600.0, 3675.0146102905273, 3675.0146102905273],\n", - " [3585.0, 3585.0, 3637.5073051452637, 3637.5073051452637],\n", - " [3570.0, 3570.0, 3611.253652572632, 3611.253652572632],\n", - " [3555.0, 3555.0, 3590.626826286316, 3590.626826286316],\n", - " [3532.5, 3532.5, 3572.813413143158, 3572.813413143158],\n", - " [3510.0, 3510.0, 3552.656706571579, 3552.656706571579],\n", - " [3495.0, 3495.0, 3531.3283532857895, 3531.3283532857895],\n", - " [3485.0, 3485.0, 3513.1641766428947, 3513.1641766428947],\n", - " [4055.0, 4055.0, 4065.0, 4065.0],\n", - " [4045.0, 4045.0, 4060.0, 4060.0],\n", - " [3499.0820883214474, 3499.0820883214474, 4052.5, 4052.5],\n", - " [4085.0, 4085.0, 4095.0, 4095.0],\n", - " [4075.0, 4075.0, 4090.0, 4090.0],\n", - " [3775.7910441607237, 3775.7910441607237, 4082.5, 4082.5],\n", - " [3336.09130859375, 3336.09130859375, 3929.145522080362, 3929.145522080362],\n", - " [3225.0, 3225.0, 3632.618415337056, 3632.618415337056],\n", - " [3043.7903594970703,\n", - " 3043.7903594970703,\n", - " 3428.809207668528,\n", - " 3428.809207668528],\n", - " [2781.875, 2781.875, 3236.299783582799, 3236.299783582799],\n", - " [4115.0, 4115.0, 4125.0, 4125.0],\n", - " [4105.0, 4105.0, 4120.0, 4120.0],\n", - " [4145.0, 4145.0, 4155.0, 4155.0],\n", - " [4195.0, 4195.0, 4205.0, 4205.0],\n", - " [4285.0, 4285.0, 4295.0, 4295.0],\n", - " [4275.0, 4275.0, 4290.0, 4290.0],\n", - " [4265.0, 4265.0, 4282.5, 4282.5],\n", - " [4325.0, 4325.0, 4335.0, 4335.0],\n", - " [4345.0, 4345.0, 4355.0, 4355.0],\n", - " [4330.0, 4330.0, 4350.0, 4350.0],\n", - " [4315.0, 4315.0, 4340.0, 4340.0],\n", - " [4305.0, 4305.0, 4327.5, 4327.5],\n", - " [4273.75, 4273.75, 4316.25, 4316.25],\n", - " [4365.0, 4365.0, 4375.0, 4375.0],\n", - " [4385.0, 4385.0, 4395.0, 4395.0],\n", - " [4405.0, 4405.0, 4415.0, 4415.0],\n", - " [4390.0, 4390.0, 4410.0, 4410.0],\n", - " [4465.0, 4465.0, 4475.0, 4475.0],\n", - " [4455.0, 4455.0, 4470.0, 4470.0],\n", - " [4445.0, 4445.0, 4462.5, 4462.5],\n", - " [4435.0, 4435.0, 4453.75, 4453.75],\n", - " [4425.0, 4425.0, 4444.375, 4444.375],\n", - " [4400.0, 4400.0, 4434.6875, 4434.6875],\n", - " [4485.0, 4485.0, 4495.0, 4495.0],\n", - " [4417.34375, 4417.34375, 4490.0, 4490.0],\n", - " [4370.0, 4370.0, 4453.671875, 4453.671875],\n", - " [4295.0, 4295.0, 4411.8359375, 4411.8359375],\n", - " [4255.0, 4255.0, 4353.41796875, 4353.41796875],\n", - " [4245.0, 4245.0, 4304.208984375, 4304.208984375],\n", - " [4505.0, 4505.0, 4515.0, 4515.0],\n", - " [4535.0, 4535.0, 4545.0, 4545.0],\n", - " [4585.0, 4585.0, 4595.0, 4595.0],\n", - " [4575.0, 4575.0, 4590.0, 4590.0],\n", - " [4565.0, 4565.0, 4582.5, 4582.5],\n", - " [4635.0, 4635.0, 4645.0, 4645.0],\n", - " [4625.0, 4625.0, 4640.0, 4640.0],\n", - " [4615.0, 4615.0, 4632.5, 4632.5],\n", - " [4605.0, 4605.0, 4623.75, 4623.75],\n", - " [4573.75, 4573.75, 4614.375, 4614.375],\n", - " [4655.0, 4655.0, 4665.0, 4665.0],\n", - " [4675.0, 4675.0, 4685.0, 4685.0],\n", - " [4715.0, 4715.0, 4725.0, 4725.0],\n", - " [4745.0, 4745.0, 4755.0, 4755.0],\n", - " [4775.0, 4775.0, 4785.0, 4785.0],\n", - " [4795.0, 4795.0, 4805.0, 4805.0],\n", - " [4780.0, 4780.0, 4800.0, 4800.0],\n", - " [4765.0, 4765.0, 4790.0, 4790.0],\n", - " [4815.0, 4815.0, 4825.0, 4825.0],\n", - " [4777.5, 4777.5, 4820.0, 4820.0],\n", - " [4750.0, 4750.0, 4798.75, 4798.75],\n", - " [4735.0, 4735.0, 4774.375, 4774.375],\n", - " [4720.0, 4720.0, 4754.6875, 4754.6875],\n", - " [4705.0, 4705.0, 4737.34375, 4737.34375],\n", - " [4695.0, 4695.0, 4721.171875, 4721.171875],\n", - " [4680.0, 4680.0, 4708.0859375, 4708.0859375],\n", - " [4660.0, 4660.0, 4694.04296875, 4694.04296875],\n", - " [4594.0625, 4594.0625, 4677.021484375, 4677.021484375],\n", - " [4855.0, 4855.0, 4865.0, 4865.0],\n", - " [4845.0, 4845.0, 4860.0, 4860.0],\n", - " [4835.0, 4835.0, 4852.5, 4852.5],\n", - " [4635.5419921875, 4635.5419921875, 4843.75, 4843.75],\n", - " [4555.0, 4555.0, 4739.64599609375, 4739.64599609375],\n", - " [4875.0, 4875.0, 4885.0, 4885.0],\n", - " [4925.0, 4925.0, 4935.0, 4935.0],\n", - " [4915.0, 4915.0, 4930.0, 4930.0],\n", - " [4905.0, 4905.0, 4922.5, 4922.5],\n", - " [4895.0, 4895.0, 4913.75, 4913.75],\n", - " [4965.0, 4965.0, 4975.0, 4975.0],\n", - " [4955.0, 4955.0, 4970.0, 4970.0],\n", - " [4985.0, 4985.0, 4995.0, 4995.0],\n", - " [4962.5, 4962.5, 4990.0, 4990.0],\n", - " [4945.0, 4945.0, 4976.25, 4976.25],\n", - " [4904.375, 4904.375, 4960.625, 4960.625],\n", - " [4880.0, 4880.0, 4932.5, 4932.5],\n", - " [5015.0, 5015.0, 5025.0, 5025.0],\n", - " [5005.0, 5005.0, 5020.0, 5020.0],\n", - " [4906.25, 4906.25, 5012.5, 5012.5],\n", - " [4647.322998046875, 4647.322998046875, 4959.375, 4959.375],\n", - " [4540.0, 4540.0, 4803.3489990234375, 4803.3489990234375],\n", - " [4525.0, 4525.0, 4671.674499511719, 4671.674499511719],\n", - " [4510.0, 4510.0, 4598.337249755859, 4598.337249755859],\n", - " [4274.6044921875, 4274.6044921875, 4554.16862487793, 4554.16862487793],\n", - " [4235.0, 4235.0, 4414.386558532715, 4414.386558532715],\n", - " [4225.0, 4225.0, 4324.693279266357, 4324.693279266357],\n", - " [4215.0, 4215.0, 4274.846639633179, 4274.846639633179],\n", - " [4200.0, 4200.0, 4244.923319816589, 4244.923319816589],\n", - " [4185.0, 4185.0, 4222.461659908295, 4222.461659908295],\n", - " [4175.0, 4175.0, 4203.730829954147, 4203.730829954147],\n", - " [4165.0, 4165.0, 4189.365414977074, 4189.365414977074],\n", - " [4150.0, 4150.0, 4177.182707488537, 4177.182707488537],\n", - " [5045.0, 5045.0, 5055.0, 5055.0],\n", - " [5035.0, 5035.0, 5050.0, 5050.0],\n", - " [4163.591353744268, 4163.591353744268, 5042.5, 5042.5],\n", - " [4135.0, 4135.0, 4603.045676872134, 4603.045676872134],\n", - " [4112.5, 4112.5, 4369.022838436067, 4369.022838436067],\n", - " [5085.0, 5085.0, 5095.0, 5095.0],\n", - " [5075.0, 5075.0, 5090.0, 5090.0],\n", - " [5065.0, 5065.0, 5082.5, 5082.5],\n", - " [5135.0, 5135.0, 5145.0, 5145.0],\n", - " [5155.0, 5155.0, 5165.0, 5165.0],\n", - " [5185.0, 5185.0, 5195.0, 5195.0],\n", - " [5215.0, 5215.0, 5225.0, 5225.0],\n", - " [5205.0, 5205.0, 5220.0, 5220.0],\n", - " [5190.0, 5190.0, 5212.5, 5212.5],\n", - " [5255.0, 5255.0, 5265.0, 5265.0],\n", - " [5295.0, 5295.0, 5305.0, 5305.0],\n", - " [5285.0, 5285.0, 5300.0, 5300.0],\n", - " [5275.0, 5275.0, 5292.5, 5292.5],\n", - " [5260.0, 5260.0, 5283.75, 5283.75],\n", - " [5245.0, 5245.0, 5271.875, 5271.875],\n", - " [5325.0, 5325.0, 5335.0, 5335.0],\n", - " [5315.0, 5315.0, 5330.0, 5330.0],\n", - " [5258.4375, 5258.4375, 5322.5, 5322.5],\n", - " [5355.0, 5355.0, 5365.0, 5365.0],\n", - " [5425.0, 5425.0, 5435.0, 5435.0],\n", - " [5415.0, 5415.0, 5430.0, 5430.0],\n", - " [5405.0, 5405.0, 5422.5, 5422.5],\n", - " [5395.0, 5395.0, 5413.75, 5413.75],\n", - " [5385.0, 5385.0, 5404.375, 5404.375],\n", - " [5375.0, 5375.0, 5394.6875, 5394.6875],\n", - " [5360.0, 5360.0, 5384.84375, 5384.84375],\n", - " [5445.0, 5445.0, 5455.0, 5455.0],\n", - " [5475.0, 5475.0, 5485.0, 5485.0],\n", - " [5465.0, 5465.0, 5480.0, 5480.0],\n", - " [5495.0, 5495.0, 5505.0, 5505.0],\n", - " [5575.0, 5575.0, 5585.0, 5585.0],\n", - " [5565.0, 5565.0, 5580.0, 5580.0],\n", - " [5555.0, 5555.0, 5572.5, 5572.5],\n", - " [5545.0, 5545.0, 5563.75, 5563.75],\n", - " [5605.0, 5605.0, 5615.0, 5615.0],\n", - " [5595.0, 5595.0, 5610.0, 5610.0],\n", - " [5554.375, 5554.375, 5602.5, 5602.5],\n", - " [5535.0, 5535.0, 5578.4375, 5578.4375],\n", - " [5525.0, 5525.0, 5556.71875, 5556.71875],\n", - " [5515.0, 5515.0, 5540.859375, 5540.859375],\n", - " [5500.0, 5500.0, 5527.9296875, 5527.9296875],\n", - " [5472.5, 5472.5, 5513.96484375, 5513.96484375],\n", - " [5450.0, 5450.0, 5493.232421875, 5493.232421875],\n", - " [5372.421875, 5372.421875, 5471.6162109375, 5471.6162109375],\n", - " [5345.0, 5345.0, 5422.01904296875, 5422.01904296875],\n", - " [5290.46875, 5290.46875, 5383.509521484375, 5383.509521484375],\n", - " [5235.0, 5235.0, 5336.9891357421875, 5336.9891357421875],\n", - " [5201.25, 5201.25, 5285.994567871094, 5285.994567871094],\n", - " [5175.0, 5175.0, 5243.622283935547, 5243.622283935547],\n", - " [5635.0, 5635.0, 5645.0, 5645.0],\n", - " [5625.0, 5625.0, 5640.0, 5640.0],\n", - " [5665.0, 5665.0, 5675.0, 5675.0],\n", - " [5655.0, 5655.0, 5670.0, 5670.0],\n", - " [5705.0, 5705.0, 5715.0, 5715.0],\n", - " [5695.0, 5695.0, 5710.0, 5710.0],\n", - " [5685.0, 5685.0, 5702.5, 5702.5],\n", - " [5662.5, 5662.5, 5693.75, 5693.75],\n", - " [5632.5, 5632.5, 5678.125, 5678.125],\n", - " [5209.311141967773, 5209.311141967773, 5655.3125, 5655.3125],\n", - " [5160.0, 5160.0, 5432.311820983887, 5432.311820983887],\n", - " [5140.0, 5140.0, 5296.155910491943, 5296.155910491943],\n", - " [5125.0, 5125.0, 5218.077955245972, 5218.077955245972],\n", - " [5115.0, 5115.0, 5171.538977622986, 5171.538977622986],\n", - " [5735.0, 5735.0, 5745.0, 5745.0],\n", - " [5725.0, 5725.0, 5740.0, 5740.0],\n", - " [5143.269488811493, 5143.269488811493, 5732.5, 5732.5],\n", - " [5755.0, 5755.0, 5765.0, 5765.0],\n", - " [5795.0, 5795.0, 5805.0, 5805.0],\n", - " [5785.0, 5785.0, 5800.0, 5800.0],\n", - " [5775.0, 5775.0, 5792.5, 5792.5],\n", - " [5815.0, 5815.0, 5825.0, 5825.0],\n", - " [5855.0, 5855.0, 5865.0, 5865.0],\n", - " [5845.0, 5845.0, 5860.0, 5860.0],\n", - " [5875.0, 5875.0, 5885.0, 5885.0],\n", - " [5852.5, 5852.5, 5880.0, 5880.0],\n", - " [5915.0, 5915.0, 5925.0, 5925.0],\n", - " [5905.0, 5905.0, 5920.0, 5920.0],\n", - " [5955.0, 5955.0, 5965.0, 5965.0],\n", - " [5945.0, 5945.0, 5960.0, 5960.0],\n", - " [5935.0, 5935.0, 5952.5, 5952.5],\n", - " [5912.5, 5912.5, 5943.75, 5943.75],\n", - " [5895.0, 5895.0, 5928.125, 5928.125],\n", - " [5866.25, 5866.25, 5911.5625, 5911.5625],\n", - " [5835.0, 5835.0, 5888.90625, 5888.90625],\n", - " [5820.0, 5820.0, 5861.953125, 5861.953125],\n", - " [5783.75, 5783.75, 5840.9765625, 5840.9765625],\n", - " [5985.0, 5985.0, 5995.0, 5995.0],\n", - " [5975.0, 5975.0, 5990.0, 5990.0],\n", - " [5812.36328125, 5812.36328125, 5982.5, 5982.5],\n", - " [5760.0, 5760.0, 5897.431640625, 5897.431640625],\n", - " [5437.8847444057465, 5437.8847444057465, 5828.7158203125, 5828.7158203125],\n", - " [5105.0, 5105.0, 5633.300282359123, 5633.300282359123],\n", - " [6065.0, 6065.0, 6075.0, 6075.0],\n", - " [6055.0, 6055.0, 6070.0, 6070.0],\n", - " [6045.0, 6045.0, 6062.5, 6062.5],\n", - " [6085.0, 6085.0, 6095.0, 6095.0],\n", - " [6115.0, 6115.0, 6125.0, 6125.0],\n", - " [6165.0, 6165.0, 6175.0, 6175.0],\n", - " [6215.0, 6215.0, 6225.0, 6225.0],\n", - " [6205.0, 6205.0, 6220.0, 6220.0],\n", - " [6195.0, 6195.0, 6212.5, 6212.5],\n", - " [6185.0, 6185.0, 6203.75, 6203.75],\n", - " [6170.0, 6170.0, 6194.375, 6194.375],\n", - " [6155.0, 6155.0, 6182.1875, 6182.1875],\n", - " [6145.0, 6145.0, 6168.59375, 6168.59375],\n", - " [6235.0, 6235.0, 6245.0, 6245.0],\n", - " [6265.0, 6265.0, 6275.0, 6275.0],\n", - " [6285.0, 6285.0, 6295.0, 6295.0],\n", - " [6270.0, 6270.0, 6290.0, 6290.0],\n", - " [6255.0, 6255.0, 6280.0, 6280.0],\n", - " [6345.0, 6345.0, 6355.0, 6355.0],\n", - " [6335.0, 6335.0, 6350.0, 6350.0],\n", - " [6325.0, 6325.0, 6342.5, 6342.5],\n", - " [6315.0, 6315.0, 6333.75, 6333.75],\n", - " [6375.0, 6375.0, 6385.0, 6385.0],\n", - " [6365.0, 6365.0, 6380.0, 6380.0],\n", - " [6324.375, 6324.375, 6372.5, 6372.5],\n", - " [6305.0, 6305.0, 6348.4375, 6348.4375],\n", - " [6267.5, 6267.5, 6326.71875, 6326.71875],\n", - " [6425.0, 6425.0, 6435.0, 6435.0],\n", - " [6415.0, 6415.0, 6430.0, 6430.0],\n", - " [6475.0, 6475.0, 6485.0, 6485.0],\n", - " [6465.0, 6465.0, 6480.0, 6480.0],\n", - " [6455.0, 6455.0, 6472.5, 6472.5],\n", - " [6445.0, 6445.0, 6463.75, 6463.75],\n", - " [6535.0, 6535.0, 6545.0, 6545.0],\n", - " [6525.0, 6525.0, 6540.0, 6540.0],\n", - " [6515.0, 6515.0, 6532.5, 6532.5],\n", - " [6505.0, 6505.0, 6523.75, 6523.75],\n", - " [6495.0, 6495.0, 6514.375, 6514.375],\n", - " [6454.375, 6454.375, 6504.6875, 6504.6875],\n", - " [6422.5, 6422.5, 6479.53125, 6479.53125],\n", - " [6405.0, 6405.0, 6451.015625, 6451.015625],\n", - " [6395.0, 6395.0, 6428.0078125, 6428.0078125],\n", - " [6655.0, 6655.0, 6665.0, 6665.0],\n", - " [6705.0, 6705.0, 6715.0, 6715.0],\n", - " [6695.0, 6695.0, 6710.0, 6710.0],\n", - " [6685.0, 6685.0, 6702.5, 6702.5],\n", - " [6735.0, 6735.0, 6745.0, 6745.0],\n", - " [6765.0, 6765.0, 6775.0, 6775.0],\n", - " [6755.0, 6755.0, 6770.0, 6770.0],\n", - " [6740.0, 6740.0, 6762.5, 6762.5],\n", - " [6805.0, 6805.0, 6815.0, 6815.0],\n", - " [6795.0, 6795.0, 6810.0, 6810.0],\n", - " [6785.0, 6785.0, 6802.5, 6802.5],\n", - " [6751.25, 6751.25, 6793.75, 6793.75],\n", - " [6725.0, 6725.0, 6772.5, 6772.5],\n", - " [6865.0, 6865.0, 6875.0, 6875.0],\n", - " [6855.0, 6855.0, 6870.0, 6870.0],\n", - " [6845.0, 6845.0, 6862.5, 6862.5],\n", - " [6835.0, 6835.0, 6853.75, 6853.75],\n", - " [6895.0, 6895.0, 6905.0, 6905.0],\n", - " [6915.0, 6915.0, 6925.0, 6925.0],\n", - " [6900.0, 6900.0, 6920.0, 6920.0],\n", - " [6885.0, 6885.0, 6910.0, 6910.0],\n", - " [6844.375, 6844.375, 6897.5, 6897.5],\n", - " [6945.0, 6945.0, 6955.0, 6955.0],\n", - " [6975.0, 6975.0, 6985.0, 6985.0],\n", - " [6965.0, 6965.0, 6980.0, 6980.0],\n", - " [6950.0, 6950.0, 6972.5, 6972.5],\n", - " [6995.0, 6995.0, 7005.0, 7005.0],\n", - " [7015.0, 7015.0, 7025.0, 7025.0],\n", - " [7000.0, 7000.0, 7020.0, 7020.0],\n", - " [6961.25, 6961.25, 7010.0, 7010.0],\n", - " [6935.0, 6935.0, 6985.625, 6985.625],\n", - " [6870.9375, 6870.9375, 6960.3125, 6960.3125],\n", - " [6825.0, 6825.0, 6915.625, 6915.625],\n", - " [6748.75, 6748.75, 6870.3125, 6870.3125],\n", - " [6693.75, 6693.75, 6809.53125, 6809.53125],\n", - " [6675.0, 6675.0, 6751.640625, 6751.640625],\n", - " [6660.0, 6660.0, 6713.3203125, 6713.3203125],\n", - " [6645.0, 6645.0, 6686.66015625, 6686.66015625],\n", - " [7055.0, 7055.0, 7065.0, 7065.0],\n", - " [7115.0, 7115.0, 7125.0, 7125.0],\n", - " [7105.0, 7105.0, 7120.0, 7120.0],\n", - " [7095.0, 7095.0, 7112.5, 7112.5],\n", - " [7085.0, 7085.0, 7103.75, 7103.75],\n", - " [7075.0, 7075.0, 7094.375, 7094.375],\n", - " [7145.0, 7145.0, 7155.0, 7155.0],\n", - " [7135.0, 7135.0, 7150.0, 7150.0],\n", - " [7084.6875, 7084.6875, 7142.5, 7142.5],\n", - " [7175.0, 7175.0, 7185.0, 7185.0],\n", - " [7165.0, 7165.0, 7180.0, 7180.0],\n", - " [7195.0, 7195.0, 7205.0, 7205.0],\n", - " [7215.0, 7215.0, 7225.0, 7225.0],\n", - " [7200.0, 7200.0, 7220.0, 7220.0],\n", - " [7235.0, 7235.0, 7245.0, 7245.0],\n", - " [7255.0, 7255.0, 7265.0, 7265.0],\n", - " [7240.0, 7240.0, 7260.0, 7260.0],\n", - " [7295.0, 7295.0, 7305.0, 7305.0],\n", - " [7365.0, 7365.0, 7375.0, 7375.0],\n", - " [7355.0, 7355.0, 7370.0, 7370.0],\n", - " [7345.0, 7345.0, 7362.5, 7362.5],\n", - " [7335.0, 7335.0, 7353.75, 7353.75],\n", - " [7415.0, 7415.0, 7425.0, 7425.0],\n", - " [7435.0, 7435.0, 7445.0, 7445.0],\n", - " [7485.0, 7485.0, 7495.0, 7495.0],\n", - " [7505.0, 7505.0, 7515.0, 7515.0],\n", - " [7545.0, 7545.0, 7555.0, 7555.0],\n", - " [7535.0, 7535.0, 7550.0, 7550.0],\n", - " [7525.0, 7525.0, 7542.5, 7542.5],\n", - " [7510.0, 7510.0, 7533.75, 7533.75],\n", - " [7490.0, 7490.0, 7521.875, 7521.875],\n", - " [7475.0, 7475.0, 7505.9375, 7505.9375],\n", - " [7465.0, 7465.0, 7490.46875, 7490.46875],\n", - " [7585.0, 7585.0, 7595.0, 7595.0],\n", - " [7575.0, 7575.0, 7590.0, 7590.0],\n", - " [7615.0, 7615.0, 7625.0, 7625.0],\n", - " [7605.0, 7605.0, 7620.0, 7620.0],\n", - " [7582.5, 7582.5, 7612.5, 7612.5],\n", - " [7565.0, 7565.0, 7597.5, 7597.5],\n", - " [7477.734375, 7477.734375, 7581.25, 7581.25],\n", - " [7455.0, 7455.0, 7529.4921875, 7529.4921875],\n", - " [7440.0, 7440.0, 7492.24609375, 7492.24609375],\n", - " [7635.0, 7635.0, 7645.0, 7645.0],\n", - " [7665.0, 7665.0, 7675.0, 7675.0],\n", - " [7655.0, 7655.0, 7670.0, 7670.0],\n", - " [7685.0, 7685.0, 7695.0, 7695.0],\n", - " [7725.0, 7725.0, 7735.0, 7735.0],\n", - " [7715.0, 7715.0, 7730.0, 7730.0],\n", - " [7705.0, 7705.0, 7722.5, 7722.5],\n", - " [7690.0, 7690.0, 7713.75, 7713.75],\n", - " [7662.5, 7662.5, 7701.875, 7701.875],\n", - " [7640.0, 7640.0, 7682.1875, 7682.1875],\n", - " [7466.123046875, 7466.123046875, 7661.09375, 7661.09375],\n", - " [7765.0, 7765.0, 7775.0, 7775.0],\n", - " [7755.0, 7755.0, 7770.0, 7770.0],\n", - " [7745.0, 7745.0, 7762.5, 7762.5],\n", - " [7815.0, 7815.0, 7825.0, 7825.0],\n", - " [7805.0, 7805.0, 7820.0, 7820.0],\n", - " [7795.0, 7795.0, 7812.5, 7812.5],\n", - " [7785.0, 7785.0, 7803.75, 7803.75],\n", - " [7845.0, 7845.0, 7855.0, 7855.0],\n", - " [7835.0, 7835.0, 7850.0, 7850.0],\n", - " [7915.0, 7915.0, 7925.0, 7925.0],\n", - " [7905.0, 7905.0, 7920.0, 7920.0],\n", - " [7895.0, 7895.0, 7912.5, 7912.5],\n", - " [7935.0, 7935.0, 7945.0, 7945.0],\n", - " [7903.75, 7903.75, 7940.0, 7940.0],\n", - " [7965.0, 7965.0, 7975.0, 7975.0],\n", - " [7995.0, 7995.0, 8005.0, 8005.0],\n", - " [7985.0, 7985.0, 8000.0, 8000.0],\n", - " [8025.0, 8025.0, 8035.0, 8035.0],\n", - " [8015.0, 8015.0, 8030.0, 8030.0],\n", - " [8045.0, 8045.0, 8055.0, 8055.0],\n", - " [8022.5, 8022.5, 8050.0, 8050.0],\n", - " [8065.0, 8065.0, 8075.0, 8075.0],\n", - " [8036.25, 8036.25, 8070.0, 8070.0],\n", - " [7992.5, 7992.5, 8053.125, 8053.125],\n", - " [7970.0, 7970.0, 8022.8125, 8022.8125],\n", - " [8115.0, 8115.0, 8125.0, 8125.0],\n", - " [8135.0, 8135.0, 8145.0, 8145.0],\n", - " [8120.0, 8120.0, 8140.0, 8140.0],\n", - " [8155.0, 8155.0, 8165.0, 8165.0],\n", - " [8175.0, 8175.0, 8185.0, 8185.0],\n", - " [8215.0, 8215.0, 8225.0, 8225.0],\n", - " [8205.0, 8205.0, 8220.0, 8220.0],\n", - " [8195.0, 8195.0, 8212.5, 8212.5],\n", - " [8180.0, 8180.0, 8203.75, 8203.75],\n", - " [8160.0, 8160.0, 8191.875, 8191.875],\n", - " [8130.0, 8130.0, 8175.9375, 8175.9375],\n", - " [8105.0, 8105.0, 8152.96875, 8152.96875],\n", - " [8095.0, 8095.0, 8128.984375, 8128.984375],\n", - " [8085.0, 8085.0, 8111.9921875, 8111.9921875],\n", - " [7996.40625, 7996.40625, 8098.49609375, 8098.49609375],\n", - " [7955.0, 7955.0, 8047.451171875, 8047.451171875],\n", - " [7921.875, 7921.875, 8001.2255859375, 8001.2255859375],\n", - " [7885.0, 7885.0, 7961.55029296875, 7961.55029296875],\n", - " [7875.0, 7875.0, 7923.275146484375, 7923.275146484375],\n", - " [7865.0, 7865.0, 7899.1375732421875, 7899.1375732421875],\n", - " [7842.5, 7842.5, 7882.068786621094, 7882.068786621094],\n", - " [7794.375, 7794.375, 7862.284393310547, 7862.284393310547],\n", - " [7753.75, 7753.75, 7828.329696655273, 7828.329696655273],\n", - " [7563.6083984375, 7563.6083984375, 7791.039848327637, 7791.039848327637],\n", - " [8245.0, 8245.0, 8255.0, 8255.0],\n", - " [8235.0, 8235.0, 8250.0, 8250.0],\n", - " [8265.0, 8265.0, 8275.0, 8275.0],\n", - " [8242.5, 8242.5, 8270.0, 8270.0],\n", - " [8305.0, 8305.0, 8315.0, 8315.0],\n", - " [8325.0, 8325.0, 8335.0, 8335.0],\n", - " [8310.0, 8310.0, 8330.0, 8330.0],\n", - " [8355.0, 8355.0, 8365.0, 8365.0],\n", - " [8345.0, 8345.0, 8360.0, 8360.0],\n", - " [8320.0, 8320.0, 8352.5, 8352.5],\n", - " [8385.0, 8385.0, 8395.0, 8395.0],\n", - " [8375.0, 8375.0, 8390.0, 8390.0],\n", - " [8336.25, 8336.25, 8382.5, 8382.5],\n", - " [8295.0, 8295.0, 8359.375, 8359.375],\n", - " [8445.0, 8445.0, 8455.0, 8455.0],\n", - " [8435.0, 8435.0, 8450.0, 8450.0],\n", - " [8465.0, 8465.0, 8475.0, 8475.0],\n", - " [8442.5, 8442.5, 8470.0, 8470.0],\n", - " [8425.0, 8425.0, 8456.25, 8456.25],\n", - " [8485.0, 8485.0, 8495.0, 8495.0],\n", - " [8515.0, 8515.0, 8525.0, 8525.0],\n", - " [8505.0, 8505.0, 8520.0, 8520.0],\n", - " [8490.0, 8490.0, 8512.5, 8512.5],\n", - " [8440.625, 8440.625, 8501.25, 8501.25],\n", - " [8595.0, 8595.0, 8605.0, 8605.0],\n", - " [8585.0, 8585.0, 8600.0, 8600.0],\n", - " [8575.0, 8575.0, 8592.5, 8592.5],\n", - " [8565.0, 8565.0, 8583.75, 8583.75],\n", - " [8555.0, 8555.0, 8574.375, 8574.375],\n", - " [8545.0, 8545.0, 8564.6875, 8564.6875],\n", - " [8535.0, 8535.0, 8554.84375, 8554.84375],\n", - " [8470.9375, 8470.9375, 8544.921875, 8544.921875],\n", - " [8415.0, 8415.0, 8507.9296875, 8507.9296875],\n", - " [8615.0, 8615.0, 8625.0, 8625.0],\n", - " [8645.0, 8645.0, 8655.0, 8655.0],\n", - " [8635.0, 8635.0, 8650.0, 8650.0],\n", - " [8665.0, 8665.0, 8675.0, 8675.0],\n", - " [8685.0, 8685.0, 8695.0, 8695.0],\n", - " [8715.0, 8715.0, 8725.0, 8725.0],\n", - " [8705.0, 8705.0, 8720.0, 8720.0],\n", - " [8690.0, 8690.0, 8712.5, 8712.5],\n", - " [8670.0, 8670.0, 8701.25, 8701.25],\n", - " [8642.5, 8642.5, 8685.625, 8685.625],\n", - " [8620.0, 8620.0, 8664.0625, 8664.0625],\n", - " [8745.0, 8745.0, 8755.0, 8755.0],\n", - " [8735.0, 8735.0, 8750.0, 8750.0],\n", - " [8642.03125, 8642.03125, 8742.5, 8742.5],\n", - " [8785.0, 8785.0, 8795.0, 8795.0],\n", - " [8775.0, 8775.0, 8790.0, 8790.0],\n", - " [8765.0, 8765.0, 8782.5, 8782.5],\n", - " [8825.0, 8825.0, 8835.0, 8835.0],\n", - " [8815.0, 8815.0, 8830.0, 8830.0],\n", - " [8845.0, 8845.0, 8855.0, 8855.0],\n", - " [8822.5, 8822.5, 8850.0, 8850.0],\n", - " [8805.0, 8805.0, 8836.25, 8836.25],\n", - " [8773.75, 8773.75, 8820.625, 8820.625],\n", - " [8692.265625, 8692.265625, 8797.1875, 8797.1875],\n", - " [8461.46484375, 8461.46484375, 8744.7265625, 8744.7265625],\n", - " [8405.0, 8405.0, 8603.095703125, 8603.095703125],\n", - " [8327.1875, 8327.1875, 8504.0478515625, 8504.0478515625],\n", - " [8285.0, 8285.0, 8415.61767578125, 8415.61767578125],\n", - " [8256.25, 8256.25, 8350.308837890625, 8350.308837890625],\n", - " [7677.324123382568, 7677.324123382568, 8303.279418945312, 8303.279418945312],\n", - " [7420.0, 7420.0, 7990.30177116394, 7990.30177116394],\n", - " [7405.0, 7405.0, 7705.15088558197, 7705.15088558197],\n", - " [7395.0, 7395.0, 7555.075442790985, 7555.075442790985],\n", - " [7385.0, 7385.0, 7475.037721395493, 7475.037721395493],\n", - " [7344.375, 7344.375, 7430.018860697746, 7430.018860697746],\n", - " [7325.0, 7325.0, 7387.196930348873, 7387.196930348873],\n", - " [8885.0, 8885.0, 8895.0, 8895.0],\n", - " [8875.0, 8875.0, 8890.0, 8890.0],\n", - " [8865.0, 8865.0, 8882.5, 8882.5],\n", - " [8915.0, 8915.0, 8925.0, 8925.0],\n", - " [8905.0, 8905.0, 8920.0, 8920.0],\n", - " [8945.0, 8945.0, 8955.0, 8955.0],\n", - " [8935.0, 8935.0, 8950.0, 8950.0],\n", - " [8975.0, 8975.0, 8985.0, 8985.0],\n", - " [9015.0, 9015.0, 9025.0, 9025.0],\n", - " [9055.0, 9055.0, 9065.0, 9065.0],\n", - " [9045.0, 9045.0, 9060.0, 9060.0],\n", - " [9075.0, 9075.0, 9085.0, 9085.0],\n", - " [9052.5, 9052.5, 9080.0, 9080.0],\n", - " [9035.0, 9035.0, 9066.25, 9066.25],\n", - " [9020.0, 9020.0, 9050.625, 9050.625],\n", - " [9105.0, 9105.0, 9115.0, 9115.0],\n", - " [9095.0, 9095.0, 9110.0, 9110.0],\n", - " [9035.3125, 9035.3125, 9102.5, 9102.5],\n", - " [9135.0, 9135.0, 9145.0, 9145.0],\n", - " [9165.0, 9165.0, 9175.0, 9175.0],\n", - " [9185.0, 9185.0, 9195.0, 9195.0],\n", - " [9170.0, 9170.0, 9190.0, 9190.0],\n", - " [9215.0, 9215.0, 9225.0, 9225.0],\n", - " [9275.0, 9275.0, 9285.0, 9285.0],\n", - " [9265.0, 9265.0, 9280.0, 9280.0],\n", - " [9255.0, 9255.0, 9272.5, 9272.5],\n", - " [9245.0, 9245.0, 9263.75, 9263.75],\n", - " [9235.0, 9235.0, 9254.375, 9254.375],\n", - " [9220.0, 9220.0, 9244.6875, 9244.6875],\n", - " [9205.0, 9205.0, 9232.34375, 9232.34375],\n", - " [9180.0, 9180.0, 9218.671875, 9218.671875],\n", - " [9335.0, 9335.0, 9345.0, 9345.0],\n", - " [9325.0, 9325.0, 9340.0, 9340.0],\n", - " [9315.0, 9315.0, 9332.5, 9332.5],\n", - " [9355.0, 9355.0, 9365.0, 9365.0],\n", - " [9385.0, 9385.0, 9395.0, 9395.0],\n", - " [9375.0, 9375.0, 9390.0, 9390.0],\n", - " [9360.0, 9360.0, 9382.5, 9382.5],\n", - " [9415.0, 9415.0, 9425.0, 9425.0],\n", - " [9405.0, 9405.0, 9420.0, 9420.0],\n", - " [9371.25, 9371.25, 9412.5, 9412.5],\n", - " [9323.75, 9323.75, 9391.875, 9391.875],\n", - " [9305.0, 9305.0, 9357.8125, 9357.8125],\n", - " [9445.0, 9445.0, 9455.0, 9455.0],\n", - " [9435.0, 9435.0, 9450.0, 9450.0],\n", - " [9465.0, 9465.0, 9475.0, 9475.0],\n", - " [9495.0, 9495.0, 9505.0, 9505.0],\n", - " [9485.0, 9485.0, 9500.0, 9500.0],\n", - " [9545.0, 9545.0, 9555.0, 9555.0],\n", - " [9565.0, 9565.0, 9575.0, 9575.0],\n", - " [9550.0, 9550.0, 9570.0, 9570.0],\n", - " [9535.0, 9535.0, 9560.0, 9560.0],\n", - " [9525.0, 9525.0, 9547.5, 9547.5],\n", - " [9515.0, 9515.0, 9536.25, 9536.25],\n", - " [9492.5, 9492.5, 9525.625, 9525.625],\n", - " [9470.0, 9470.0, 9509.0625, 9509.0625],\n", - " [9442.5, 9442.5, 9489.53125, 9489.53125],\n", - " [9331.40625, 9331.40625, 9466.015625, 9466.015625],\n", - " [9295.0, 9295.0, 9398.7109375, 9398.7109375],\n", - " [9199.3359375, 9199.3359375, 9346.85546875, 9346.85546875],\n", - " [9155.0, 9155.0, 9273.095703125, 9273.095703125],\n", - " [9140.0, 9140.0, 9214.0478515625, 9214.0478515625],\n", - " [9585.0, 9585.0, 9595.0, 9595.0],\n", - " [9615.0, 9615.0, 9625.0, 9625.0],\n", - " [9645.0, 9645.0, 9655.0, 9655.0],\n", - " [9635.0, 9635.0, 9650.0, 9650.0],\n", - " [9675.0, 9675.0, 9685.0, 9685.0],\n", - " [9705.0, 9705.0, 9715.0, 9715.0],\n", - " [9695.0, 9695.0, 9710.0, 9710.0],\n", - " [9680.0, 9680.0, 9702.5, 9702.5],\n", - " [9665.0, 9665.0, 9691.25, 9691.25],\n", - " [9642.5, 9642.5, 9678.125, 9678.125],\n", - " [9620.0, 9620.0, 9660.3125, 9660.3125],\n", - " [9605.0, 9605.0, 9640.15625, 9640.15625],\n", - " [9735.0, 9735.0, 9745.0, 9745.0],\n", - " [9725.0, 9725.0, 9740.0, 9740.0],\n", - " [9622.578125, 9622.578125, 9732.5, 9732.5],\n", - " [9785.0, 9785.0, 9795.0, 9795.0],\n", - " [9775.0, 9775.0, 9790.0, 9790.0],\n", - " [9765.0, 9765.0, 9782.5, 9782.5],\n", - " [9755.0, 9755.0, 9773.75, 9773.75],\n", - " [9825.0, 9825.0, 9835.0, 9835.0],\n", - " [9855.0, 9855.0, 9865.0, 9865.0],\n", - " [9845.0, 9845.0, 9860.0, 9860.0],\n", - " [9830.0, 9830.0, 9852.5, 9852.5],\n", - " [9905.0, 9905.0, 9915.0, 9915.0],\n", - " [9895.0, 9895.0, 9910.0, 9910.0],\n", - " [9925.0, 9925.0, 9935.0, 9935.0],\n", - " [9955.0, 9955.0, 9965.0, 9965.0],\n", - " [9945.0, 9945.0, 9960.0, 9960.0],\n", - " [9930.0, 9930.0, 9952.5, 9952.5],\n", - " [9902.5, 9902.5, 9941.25, 9941.25],\n", - " [9985.0, 9985.0, 9995.0, 9995.0],\n", - " [9975.0, 9975.0, 9990.0, 9990.0],\n", - " [9921.875, 9921.875, 9982.5, 9982.5],\n", - " [9885.0, 9885.0, 9952.1875, 9952.1875],\n", - " [9875.0, 9875.0, 9918.59375, 9918.59375],\n", - " [9841.25, 9841.25, 9896.796875, 9896.796875],\n", - " [10035.0, 10035.0, 10045.0, 10045.0],\n", - " [10055.0, 10055.0, 10065.0, 10065.0],\n", - " [10040.0, 10040.0, 10060.0, 10060.0],\n", - " [10025.0, 10025.0, 10050.0, 10050.0],\n", - " [10015.0, 10015.0, 10037.5, 10037.5],\n", - " [10085.0, 10085.0, 10095.0, 10095.0],\n", - " [10115.0, 10115.0, 10125.0, 10125.0],\n", - " [10105.0, 10105.0, 10120.0, 10120.0],\n", - " [10145.0, 10145.0, 10155.0, 10155.0],\n", - " [10165.0, 10165.0, 10175.0, 10175.0],\n", - " [10150.0, 10150.0, 10170.0, 10170.0],\n", - " [10135.0, 10135.0, 10160.0, 10160.0],\n", - " [10112.5, 10112.5, 10147.5, 10147.5],\n", - " [10090.0, 10090.0, 10130.0, 10130.0],\n", - " [10075.0, 10075.0, 10110.0, 10110.0],\n", - " [10026.25, 10026.25, 10092.5, 10092.5],\n", - " [10005.0, 10005.0, 10059.375, 10059.375],\n", - " [9869.0234375, 9869.0234375, 10032.1875, 10032.1875],\n", - " [9815.0, 9815.0, 9950.60546875, 9950.60546875],\n", - " [9805.0, 9805.0, 9882.802734375, 9882.802734375],\n", - " [9764.375, 9764.375, 9843.9013671875, 9843.9013671875],\n", - " [9677.5390625, 9677.5390625, 9804.13818359375, 9804.13818359375],\n", - " [9590.0, 9590.0, 9740.838623046875, 9740.838623046875],\n", - " [9177.02392578125, 9177.02392578125, 9665.419311523438, 9665.419311523438],\n", - " [9125.0, 9125.0, 9421.221618652344, 9421.221618652344],\n", - " [10195.0, 10195.0, 10205.0, 10205.0],\n", - " [10235.0, 10235.0, 10245.0, 10245.0],\n", - " [10225.0, 10225.0, 10240.0, 10240.0],\n", - " [10215.0, 10215.0, 10232.5, 10232.5],\n", - " [10200.0, 10200.0, 10223.75, 10223.75],\n", - " [10185.0, 10185.0, 10211.875, 10211.875],\n", - " [10265.0, 10265.0, 10275.0, 10275.0],\n", - " [10255.0, 10255.0, 10270.0, 10270.0],\n", - " [10295.0, 10295.0, 10305.0, 10305.0],\n", - " [10315.0, 10315.0, 10325.0, 10325.0],\n", - " [10300.0, 10300.0, 10320.0, 10320.0],\n", - " [10335.0, 10335.0, 10345.0, 10345.0],\n", - " [10375.0, 10375.0, 10385.0, 10385.0],\n", - " [10415.0, 10415.0, 10425.0, 10425.0],\n", - " [10405.0, 10405.0, 10420.0, 10420.0],\n", - " [10395.0, 10395.0, 10412.5, 10412.5],\n", - " [10435.0, 10435.0, 10445.0, 10445.0],\n", - " [10403.75, 10403.75, 10440.0, 10440.0],\n", - " [10465.0, 10465.0, 10475.0, 10475.0],\n", - " [10455.0, 10455.0, 10470.0, 10470.0],\n", - " [10485.0, 10485.0, 10495.0, 10495.0],\n", - " [10462.5, 10462.5, 10490.0, 10490.0],\n", - " [10421.875, 10421.875, 10476.25, 10476.25],\n", - " [10380.0, 10380.0, 10449.0625, 10449.0625],\n", - " [10525.0, 10525.0, 10535.0, 10535.0],\n", - " [10515.0, 10515.0, 10530.0, 10530.0],\n", - " [10545.0, 10545.0, 10555.0, 10555.0],\n", - " [10522.5, 10522.5, 10550.0, 10550.0],\n", - " [10505.0, 10505.0, 10536.25, 10536.25],\n", - " [10414.53125, 10414.53125, 10520.625, 10520.625],\n", - " [10365.0, 10365.0, 10467.578125, 10467.578125],\n", - " [10355.0, 10355.0, 10416.2890625, 10416.2890625],\n", - " [10340.0, 10340.0, 10385.64453125, 10385.64453125],\n", - " [10310.0, 10310.0, 10362.822265625, 10362.822265625],\n", - " [10285.0, 10285.0, 10336.4111328125, 10336.4111328125],\n", - " [10262.5, 10262.5, 10310.70556640625, 10310.70556640625],\n", - " [10575.0, 10575.0, 10585.0, 10585.0],\n", - " [10565.0, 10565.0, 10580.0, 10580.0],\n", - " [10286.602783203125, 10286.602783203125, 10572.5, 10572.5],\n", - " [10198.4375, 10198.4375, 10429.551391601562, 10429.551391601562],\n", - " [9273.110809326172,\n", - " 9273.110809326172,\n", - " 10313.994445800781,\n", - " 10313.994445800781],\n", - " [9068.90625, 9068.90625, 9793.552627563477, 9793.552627563477],\n", - " [9005.0, 9005.0, 9431.229438781738, 9431.229438781738],\n", - " [8995.0, 8995.0, 9218.11471939087, 9218.11471939087],\n", - " [8980.0, 8980.0, 9106.557359695435, 9106.557359695435],\n", - " [10595.0, 10595.0, 10605.0, 10605.0],\n", - " [10625.0, 10625.0, 10635.0, 10635.0],\n", - " [10615.0, 10615.0, 10630.0, 10630.0],\n", - " [10655.0, 10655.0, 10665.0, 10665.0],\n", - " [10645.0, 10645.0, 10660.0, 10660.0],\n", - " [10685.0, 10685.0, 10695.0, 10695.0],\n", - " [10675.0, 10675.0, 10690.0, 10690.0],\n", - " [10652.5, 10652.5, 10682.5, 10682.5],\n", - " [10622.5, 10622.5, 10667.5, 10667.5],\n", - " [10725.0, 10725.0, 10735.0, 10735.0],\n", - " [10715.0, 10715.0, 10730.0, 10730.0],\n", - " [10705.0, 10705.0, 10722.5, 10722.5],\n", - " [10745.0, 10745.0, 10755.0, 10755.0],\n", - " [10785.0, 10785.0, 10795.0, 10795.0],\n", - " [10775.0, 10775.0, 10790.0, 10790.0],\n", - " [10765.0, 10765.0, 10782.5, 10782.5],\n", - " [10750.0, 10750.0, 10773.75, 10773.75],\n", - " [10713.75, 10713.75, 10761.875, 10761.875],\n", - " [10645.0, 10645.0, 10737.8125, 10737.8125],\n", - " [10825.0, 10825.0, 10835.0, 10835.0],\n", - " [10815.0, 10815.0, 10830.0, 10830.0],\n", - " [10855.0, 10855.0, 10865.0, 10865.0],\n", - " [10845.0, 10845.0, 10860.0, 10860.0],\n", - " [10822.5, 10822.5, 10852.5, 10852.5],\n", - " [10805.0, 10805.0, 10837.5, 10837.5],\n", - " [10691.40625, 10691.40625, 10821.25, 10821.25],\n", - " [10955.0, 10955.0, 10965.0, 10965.0],\n", - " [10945.0, 10945.0, 10960.0, 10960.0],\n", - " [10935.0, 10935.0, 10952.5, 10952.5],\n", - " [10925.0, 10925.0, 10943.75, 10943.75],\n", - " [10915.0, 10915.0, 10934.375, 10934.375],\n", - " [10905.0, 10905.0, 10924.6875, 10924.6875],\n", - " [10895.0, 10895.0, 10914.84375, 10914.84375],\n", - " [10885.0, 10885.0, 10904.921875, 10904.921875],\n", - " [10875.0, 10875.0, 10894.9609375, 10894.9609375],\n", - " [11005.0, 11005.0, 11015.0, 11015.0],\n", - " [10995.0, 10995.0, 11010.0, 11010.0],\n", - " [10985.0, 10985.0, 11002.5, 11002.5],\n", - " [10975.0, 10975.0, 10993.75, 10993.75],\n", - " [11065.0, 11065.0, 11075.0, 11075.0],\n", - " [11155.0, 11155.0, 11165.0, 11165.0],\n", - " [11145.0, 11145.0, 11160.0, 11160.0],\n", - " [11135.0, 11135.0, 11152.5, 11152.5],\n", - " [11125.0, 11125.0, 11143.75, 11143.75],\n", - " [11115.0, 11115.0, 11134.375, 11134.375],\n", - " [11105.0, 11105.0, 11124.6875, 11124.6875],\n", - " [11095.0, 11095.0, 11114.84375, 11114.84375],\n", - " [11085.0, 11085.0, 11104.921875, 11104.921875],\n", - " [11235.0, 11235.0, 11245.0, 11245.0],\n", - " [11225.0, 11225.0, 11240.0, 11240.0],\n", - " [11215.0, 11215.0, 11232.5, 11232.5],\n", - " [11255.0, 11255.0, 11265.0, 11265.0],\n", - " [11275.0, 11275.0, 11285.0, 11285.0],\n", - " [11260.0, 11260.0, 11280.0, 11280.0],\n", - " [11223.75, 11223.75, 11270.0, 11270.0],\n", - " [11205.0, 11205.0, 11246.875, 11246.875],\n", - " [11195.0, 11195.0, 11225.9375, 11225.9375],\n", - " [11335.0, 11335.0, 11345.0, 11345.0],\n", - " [11325.0, 11325.0, 11340.0, 11340.0],\n", - " [11315.0, 11315.0, 11332.5, 11332.5],\n", - " [11305.0, 11305.0, 11323.75, 11323.75],\n", - " [11295.0, 11295.0, 11314.375, 11314.375],\n", - " [11210.46875, 11210.46875, 11304.6875, 11304.6875],\n", - " [11185.0, 11185.0, 11257.578125, 11257.578125],\n", - " [11175.0, 11175.0, 11221.2890625, 11221.2890625],\n", - " [11094.9609375, 11094.9609375, 11198.14453125, 11198.14453125],\n", - " [11070.0, 11070.0, 11146.552734375, 11146.552734375],\n", - " [11055.0, 11055.0, 11108.2763671875, 11108.2763671875],\n", - " [11045.0, 11045.0, 11081.63818359375, 11081.63818359375],\n", - " [11035.0, 11035.0, 11063.319091796875, 11063.319091796875],\n", - " [11025.0, 11025.0, 11049.159545898438, 11049.159545898438],\n", - " [10984.375, 10984.375, 11037.079772949219, 11037.079772949219],\n", - " [10884.98046875, 10884.98046875, 11010.72738647461, 11010.72738647461],\n", - " [10756.328125, 10756.328125, 10947.853927612305, 10947.853927612305],\n", - " [10600.0, 10600.0, 10852.091026306152, 10852.091026306152],\n", - " [9043.278679847717,\n", - " 9043.278679847717,\n", - " 10726.045513153076,\n", - " 10726.045513153076],\n", - " [8965.0, 8965.0, 9884.662096500397, 9884.662096500397],\n", - " [8942.5, 8942.5, 9424.831048250198, 9424.831048250198],\n", - " [8912.5, 8912.5, 9183.6655241251, 9183.6655241251],\n", - " [8873.75, 8873.75, 9048.08276206255, 9048.08276206255],\n", - " [7356.098465174437, 7356.098465174437, 8960.916381031275, 8960.916381031275],\n", - " [7315.0, 7315.0, 8158.507423102856, 8158.507423102856],\n", - " [7300.0, 7300.0, 7736.753711551428, 7736.753711551428],\n", - " [7285.0, 7285.0, 7518.376855775714, 7518.376855775714],\n", - " [7275.0, 7275.0, 7401.688427887857, 7401.688427887857],\n", - " [7250.0, 7250.0, 7338.3442139439285, 7338.3442139439285],\n", - " [7210.0, 7210.0, 7294.172106971964, 7294.172106971964],\n", - " [7172.5, 7172.5, 7252.086053485982, 7252.086053485982],\n", - " [7113.59375, 7113.59375, 7212.293026742991, 7212.293026742991],\n", - " [7060.0, 7060.0, 7162.9433883714955, 7162.9433883714955],\n", - " [7045.0, 7045.0, 7111.471694185748, 7111.471694185748],\n", - " [11395.0, 11395.0, 11405.0, 11405.0],\n", - " [11385.0, 11385.0, 11400.0, 11400.0],\n", - " [11375.0, 11375.0, 11392.5, 11392.5],\n", - " [11365.0, 11365.0, 11383.75, 11383.75],\n", - " [11355.0, 11355.0, 11374.375, 11374.375],\n", - " [11415.0, 11415.0, 11425.0, 11425.0],\n", - " [11455.0, 11455.0, 11465.0, 11465.0],\n", - " [11445.0, 11445.0, 11460.0, 11460.0],\n", - " [11535.0, 11535.0, 11545.0, 11545.0],\n", - " [11555.0, 11555.0, 11565.0, 11565.0],\n", - " [11540.0, 11540.0, 11560.0, 11560.0],\n", - " [11525.0, 11525.0, 11550.0, 11550.0],\n", - " [11515.0, 11515.0, 11537.5, 11537.5],\n", - " [11505.0, 11505.0, 11526.25, 11526.25],\n", - " [11495.0, 11495.0, 11515.625, 11515.625],\n", - " [11585.0, 11585.0, 11595.0, 11595.0],\n", - " [11575.0, 11575.0, 11590.0, 11590.0],\n", - " [11505.3125, 11505.3125, 11582.5, 11582.5],\n", - " [11485.0, 11485.0, 11543.90625, 11543.90625],\n", - " [11475.0, 11475.0, 11514.453125, 11514.453125],\n", - " [11452.5, 11452.5, 11494.7265625, 11494.7265625],\n", - " [11435.0, 11435.0, 11473.61328125, 11473.61328125],\n", - " [11420.0, 11420.0, 11454.306640625, 11454.306640625],\n", - " [11364.6875, 11364.6875, 11437.1533203125, 11437.1533203125],\n", - " [7078.235847092874, 7078.235847092874, 11400.92041015625, 11400.92041015625],\n", - " [7035.0, 7035.0, 9239.578128624562, 9239.578128624562],\n", - " [6665.830078125, 6665.830078125, 8137.289064312281, 8137.289064312281],\n", - " [6635.0, 6635.0, 7401.5595712186405, 7401.5595712186405],\n", - " [6625.0, 6625.0, 7018.27978560932, 7018.27978560932],\n", - " [6615.0, 6615.0, 6821.63989280466, 6821.63989280466],\n", - " [6605.0, 6605.0, 6718.31994640233, 6718.31994640233],\n", - " [6595.0, 6595.0, 6661.6599732011655, 6661.6599732011655],\n", - " [6585.0, 6585.0, 6628.329986600583, 6628.329986600583],\n", - " [6575.0, 6575.0, 6606.664993300292, 6606.664993300292],\n", - " [6565.0, 6565.0, 6590.832496650146, 6590.832496650146],\n", - " [6555.0, 6555.0, 6577.916248325073, 6577.916248325073],\n", - " [6411.50390625, 6411.50390625, 6566.4581241625365, 6566.4581241625365],\n", - " [6297.109375, 6297.109375, 6488.981015206268, 6488.981015206268],\n", - " [6240.0, 6240.0, 6393.045195103134, 6393.045195103134],\n", - " [6156.796875, 6156.796875, 6316.522597551567, 6316.522597551567],\n", - " [6135.0, 6135.0, 6236.659736275784, 6236.659736275784],\n", - " [6120.0, 6120.0, 6185.829868137892, 6185.829868137892],\n", - " [11605.0, 11605.0, 11615.0, 11615.0],\n", - " [6152.9149340689455, 6152.9149340689455, 11610.0, 11610.0],\n", - " [6105.0, 6105.0, 8881.457467034474, 8881.457467034474],\n", - " [6090.0, 6090.0, 7493.228733517237, 7493.228733517237],\n", - " [6053.75, 6053.75, 6791.614366758618, 6791.614366758618],\n", - " [6035.0, 6035.0, 6422.682183379309, 6422.682183379309],\n", - " [6025.0, 6025.0, 6228.841091689655, 6228.841091689655],\n", - " [6015.0, 6015.0, 6126.920545844827, 6126.920545844827],\n", - " [6005.0, 6005.0, 6070.960272922413, 6070.960272922413],\n", - " [5369.150141179562, 5369.150141179562, 6037.980136461207, 6037.980136461207],\n", - " [5073.75, 5073.75, 5703.565138820384, 5703.565138820384],\n", - " [4240.761419218034, 4240.761419218034, 5388.657569410192, 5388.657569410192],\n", - " [3009.0873917913996,\n", - " 3009.0873917913996,\n", - " 4814.709494314113,\n", - " 4814.709494314113],\n", - " [2656.796875, 2656.796875, 3911.898443052756, 3911.898443052756],\n", - " [2625.0, 2625.0, 3284.347659026378, 3284.347659026378],\n", - " [11665.0, 11665.0, 11675.0, 11675.0],\n", - " [11655.0, 11655.0, 11670.0, 11670.0],\n", - " [11645.0, 11645.0, 11662.5, 11662.5],\n", - " [11695.0, 11695.0, 11705.0, 11705.0],\n", - " [11685.0, 11685.0, 11700.0, 11700.0],\n", - " [11653.75, 11653.75, 11692.5, 11692.5],\n", - " [11635.0, 11635.0, 11673.125, 11673.125],\n", - " [11745.0, 11745.0, 11755.0, 11755.0],\n", - " [11735.0, 11735.0, 11750.0, 11750.0],\n", - " [11765.0, 11765.0, 11775.0, 11775.0],\n", - " [11785.0, 11785.0, 11795.0, 11795.0],\n", - " [11770.0, 11770.0, 11790.0, 11790.0],\n", - " [11835.0, 11835.0, 11845.0, 11845.0],\n", - " [11855.0, 11855.0, 11865.0, 11865.0],\n", - " [11840.0, 11840.0, 11860.0, 11860.0],\n", - " [11875.0, 11875.0, 11885.0, 11885.0],\n", - " [11850.0, 11850.0, 11880.0, 11880.0],\n", - " [11825.0, 11825.0, 11865.0, 11865.0],\n", - " [11815.0, 11815.0, 11845.0, 11845.0],\n", - " [11805.0, 11805.0, 11830.0, 11830.0],\n", - " [11780.0, 11780.0, 11817.5, 11817.5],\n", - " [11742.5, 11742.5, 11798.75, 11798.75],\n", - " [11725.0, 11725.0, 11770.625, 11770.625],\n", - " [11715.0, 11715.0, 11747.8125, 11747.8125],\n", - " [11654.0625, 11654.0625, 11731.40625, 11731.40625],\n", - " [11625.0, 11625.0, 11692.734375, 11692.734375],\n", - " [11905.0, 11905.0, 11915.0, 11915.0],\n", - " [11895.0, 11895.0, 11910.0, 11910.0],\n", - " [11975.0, 11975.0, 11985.0, 11985.0],\n", - " [11965.0, 11965.0, 11980.0, 11980.0],\n", - " [11955.0, 11955.0, 11972.5, 11972.5],\n", - " [11945.0, 11945.0, 11963.75, 11963.75],\n", - " [11935.0, 11935.0, 11954.375, 11954.375],\n", - " [12065.0, 12065.0, 12075.0, 12075.0],\n", - " [12055.0, 12055.0, 12070.0, 12070.0],\n", - " [12045.0, 12045.0, 12062.5, 12062.5],\n", - " [12095.0, 12095.0, 12105.0, 12105.0],\n", - " [12135.0, 12135.0, 12145.0, 12145.0],\n", - " [12125.0, 12125.0, 12140.0, 12140.0],\n", - " [12115.0, 12115.0, 12132.5, 12132.5],\n", - " [12100.0, 12100.0, 12123.75, 12123.75],\n", - " [12085.0, 12085.0, 12111.875, 12111.875],\n", - " [12053.75, 12053.75, 12098.4375, 12098.4375],\n", - " [12035.0, 12035.0, 12076.09375, 12076.09375],\n", - " [12025.0, 12025.0, 12055.546875, 12055.546875],\n", - " [12175.0, 12175.0, 12185.0, 12185.0],\n", - " [12165.0, 12165.0, 12180.0, 12180.0],\n", - " [12155.0, 12155.0, 12172.5, 12172.5],\n", - " [12040.2734375, 12040.2734375, 12163.75, 12163.75],\n", - " [12015.0, 12015.0, 12102.01171875, 12102.01171875],\n", - " [12005.0, 12005.0, 12058.505859375, 12058.505859375],\n", - " [12195.0, 12195.0, 12205.0, 12205.0],\n", - " [12031.7529296875, 12031.7529296875, 12200.0, 12200.0],\n", - " [12215.0, 12215.0, 12225.0, 12225.0],\n", - " [12235.0, 12235.0, 12245.0, 12245.0],\n", - " [12265.0, 12265.0, 12275.0, 12275.0],\n", - " [12255.0, 12255.0, 12270.0, 12270.0],\n", - " [12295.0, 12295.0, 12305.0, 12305.0],\n", - " [12285.0, 12285.0, 12300.0, 12300.0],\n", - " [12325.0, 12325.0, 12335.0, 12335.0],\n", - " [12315.0, 12315.0, 12330.0, 12330.0],\n", - " [12365.0, 12365.0, 12375.0, 12375.0],\n", - " [12355.0, 12355.0, 12370.0, 12370.0],\n", - " [12385.0, 12385.0, 12395.0, 12395.0],\n", - " [12405.0, 12405.0, 12415.0, 12415.0],\n", - " [12390.0, 12390.0, 12410.0, 12410.0],\n", - " [12362.5, 12362.5, 12400.0, 12400.0],\n", - " [12455.0, 12455.0, 12465.0, 12465.0],\n", - " [12495.0, 12495.0, 12505.0, 12505.0],\n", - " [12485.0, 12485.0, 12500.0, 12500.0],\n", - " [12475.0, 12475.0, 12492.5, 12492.5],\n", - " [12525.0, 12525.0, 12535.0, 12535.0],\n", - " [12515.0, 12515.0, 12530.0, 12530.0],\n", - " [12483.75, 12483.75, 12522.5, 12522.5],\n", - " [12545.0, 12545.0, 12555.0, 12555.0],\n", - " [12503.125, 12503.125, 12550.0, 12550.0],\n", - " [12460.0, 12460.0, 12526.5625, 12526.5625],\n", - " [12445.0, 12445.0, 12493.28125, 12493.28125],\n", - " [12435.0, 12435.0, 12469.140625, 12469.140625],\n", - " [12425.0, 12425.0, 12452.0703125, 12452.0703125],\n", - " [12585.0, 12585.0, 12595.0, 12595.0],\n", - " [12575.0, 12575.0, 12590.0, 12590.0],\n", - " [12565.0, 12565.0, 12582.5, 12582.5],\n", - " [12438.53515625, 12438.53515625, 12573.75, 12573.75],\n", - " [12381.25, 12381.25, 12506.142578125, 12506.142578125],\n", - " [12345.0, 12345.0, 12443.6962890625, 12443.6962890625],\n", - " [12322.5, 12322.5, 12394.34814453125, 12394.34814453125],\n", - " [12292.5, 12292.5, 12358.424072265625, 12358.424072265625],\n", - " [12262.5, 12262.5, 12325.462036132812, 12325.462036132812],\n", - " [12240.0, 12240.0, 12293.981018066406, 12293.981018066406],\n", - " [12220.0, 12220.0, 12266.990509033203, 12266.990509033203],\n", - " [12115.87646484375,\n", - " 12115.87646484375,\n", - " 12243.495254516602,\n", - " 12243.495254516602],\n", - " [11995.0, 11995.0, 12179.685859680176, 12179.685859680176],\n", - " [12605.0, 12605.0, 12615.0, 12615.0],\n", - " [12625.0, 12625.0, 12635.0, 12635.0],\n", - " [12685.0, 12685.0, 12695.0, 12695.0],\n", - " [12675.0, 12675.0, 12690.0, 12690.0],\n", - " [12665.0, 12665.0, 12682.5, 12682.5],\n", - " [12655.0, 12655.0, 12673.75, 12673.75],\n", - " [12645.0, 12645.0, 12664.375, 12664.375],\n", - " [12705.0, 12705.0, 12715.0, 12715.0],\n", - " [12654.6875, 12654.6875, 12710.0, 12710.0],\n", - " [12735.0, 12735.0, 12745.0, 12745.0],\n", - " [12725.0, 12725.0, 12740.0, 12740.0],\n", - " [12755.0, 12755.0, 12765.0, 12765.0],\n", - " [12785.0, 12785.0, 12795.0, 12795.0],\n", - " [12775.0, 12775.0, 12790.0, 12790.0],\n", - " [12760.0, 12760.0, 12782.5, 12782.5],\n", - " [12815.0, 12815.0, 12825.0, 12825.0],\n", - " [12875.0, 12875.0, 12885.0, 12885.0],\n", - " [12865.0, 12865.0, 12880.0, 12880.0],\n", - " [12855.0, 12855.0, 12872.5, 12872.5],\n", - " [12845.0, 12845.0, 12863.75, 12863.75],\n", - " [12835.0, 12835.0, 12854.375, 12854.375],\n", - " [12820.0, 12820.0, 12844.6875, 12844.6875],\n", - " [12805.0, 12805.0, 12832.34375, 12832.34375],\n", - " [12771.25, 12771.25, 12818.671875, 12818.671875],\n", - " [12732.5, 12732.5, 12794.9609375, 12794.9609375],\n", - " [12682.34375, 12682.34375, 12763.73046875, 12763.73046875],\n", - " [12630.0, 12630.0, 12723.037109375, 12723.037109375],\n", - " [12610.0, 12610.0, 12676.5185546875, 12676.5185546875],\n", - " [13025.0, 13025.0, 13035.0, 13035.0],\n", - " [13015.0, 13015.0, 13030.0, 13030.0],\n", - " [13005.0, 13005.0, 13022.5, 13022.5],\n", - " [12995.0, 12995.0, 13013.75, 13013.75],\n", - " [12985.0, 12985.0, 13004.375, 13004.375],\n", - " [12975.0, 12975.0, 12994.6875, 12994.6875],\n", - " [12965.0, 12965.0, 12984.84375, 12984.84375],\n", - " [12955.0, 12955.0, 12974.921875, 12974.921875],\n", - " [12945.0, 12945.0, 12964.9609375, 12964.9609375],\n", - " [12935.0, 12935.0, 12954.98046875, 12954.98046875],\n", - " [12925.0, 12925.0, 12944.990234375, 12944.990234375],\n", - " [12915.0, 12915.0, 12934.9951171875, 12934.9951171875],\n", - " [12905.0, 12905.0, 12924.99755859375, 12924.99755859375],\n", - " [12895.0, 12895.0, 12914.998779296875, 12914.998779296875],\n", - " [12643.25927734375,\n", - " 12643.25927734375,\n", - " 12904.999389648438,\n", - " 12904.999389648438],\n", - " [12087.342929840088,\n", - " 12087.342929840088,\n", - " 12774.129333496094,\n", - " 12774.129333496094],\n", - " [11944.6875, 11944.6875, 12430.73613166809, 12430.73613166809],\n", - " [11925.0, 11925.0, 12187.711815834045, 12187.711815834045],\n", - " [13045.0, 13045.0, 13055.0, 13055.0],\n", - " [13065.0, 13065.0, 13075.0, 13075.0],\n", - " [13085.0, 13085.0, 13095.0, 13095.0],\n", - " [13115.0, 13115.0, 13125.0, 13125.0],\n", - " [13105.0, 13105.0, 13120.0, 13120.0],\n", - " [13165.0, 13165.0, 13175.0, 13175.0],\n", - " [13155.0, 13155.0, 13170.0, 13170.0],\n", - " [13195.0, 13195.0, 13205.0, 13205.0],\n", - " [13185.0, 13185.0, 13200.0, 13200.0],\n", - " [13162.5, 13162.5, 13192.5, 13192.5],\n", - " [13145.0, 13145.0, 13177.5, 13177.5],\n", - " [13135.0, 13135.0, 13161.25, 13161.25],\n", - " [13112.5, 13112.5, 13148.125, 13148.125],\n", - " [13090.0, 13090.0, 13130.3125, 13130.3125],\n", - " [13070.0, 13070.0, 13110.15625, 13110.15625],\n", - " [13050.0, 13050.0, 13090.078125, 13090.078125],\n", - " [12056.355907917023, 12056.355907917023, 13070.0390625, 13070.0390625],\n", - " [11902.5, 11902.5, 12563.197485208511, 12563.197485208511],\n", - " [11658.8671875, 11658.8671875, 12232.848742604256, 12232.848742604256],\n", - " [13235.0, 13235.0, 13245.0, 13245.0],\n", - " [13275.0, 13275.0, 13285.0, 13285.0],\n", - " [13265.0, 13265.0, 13280.0, 13280.0],\n", - " [13255.0, 13255.0, 13272.5, 13272.5],\n", - " [13295.0, 13295.0, 13305.0, 13305.0],\n", - " [13263.75, 13263.75, 13300.0, 13300.0],\n", - " [13240.0, 13240.0, 13281.875, 13281.875],\n", - " [13315.0, 13315.0, 13325.0, 13325.0],\n", - " [13260.9375, 13260.9375, 13320.0, 13320.0],\n", - " [13225.0, 13225.0, 13290.46875, 13290.46875],\n", - " [13215.0, 13215.0, 13257.734375, 13257.734375],\n", - " [13345.0, 13345.0, 13355.0, 13355.0],\n", - " [13335.0, 13335.0, 13350.0, 13350.0],\n", - " [13236.3671875, 13236.3671875, 13342.5, 13342.5],\n", - " [13365.0, 13365.0, 13375.0, 13375.0],\n", - " [13395.0, 13395.0, 13405.0, 13405.0],\n", - " [13415.0, 13415.0, 13425.0, 13425.0],\n", - " [13400.0, 13400.0, 13420.0, 13420.0],\n", - " [13445.0, 13445.0, 13455.0, 13455.0],\n", - " [13485.0, 13485.0, 13495.0, 13495.0],\n", - " [13475.0, 13475.0, 13490.0, 13490.0],\n", - " [13505.0, 13505.0, 13515.0, 13515.0],\n", - " [13482.5, 13482.5, 13510.0, 13510.0],\n", - " [13465.0, 13465.0, 13496.25, 13496.25],\n", - " [13450.0, 13450.0, 13480.625, 13480.625],\n", - " [13525.0, 13525.0, 13535.0, 13535.0],\n", - " [13465.3125, 13465.3125, 13530.0, 13530.0],\n", - " [13595.0, 13595.0, 13605.0, 13605.0],\n", - " [13585.0, 13585.0, 13600.0, 13600.0],\n", - " [13575.0, 13575.0, 13592.5, 13592.5],\n", - " [13565.0, 13565.0, 13583.75, 13583.75],\n", - " [13555.0, 13555.0, 13574.375, 13574.375],\n", - " [13545.0, 13545.0, 13564.6875, 13564.6875],\n", - " [13615.0, 13615.0, 13625.0, 13625.0],\n", - " [13554.84375, 13554.84375, 13620.0, 13620.0],\n", - " [13645.0, 13645.0, 13655.0, 13655.0],\n", - " [13665.0, 13665.0, 13675.0, 13675.0],\n", - " [13650.0, 13650.0, 13670.0, 13670.0],\n", - " [13635.0, 13635.0, 13660.0, 13660.0],\n", - " [13705.0, 13705.0, 13715.0, 13715.0],\n", - " [13725.0, 13725.0, 13735.0, 13735.0],\n", - " [13745.0, 13745.0, 13755.0, 13755.0],\n", - " [13730.0, 13730.0, 13750.0, 13750.0],\n", - " [13710.0, 13710.0, 13740.0, 13740.0],\n", - " [13695.0, 13695.0, 13725.0, 13725.0],\n", - " [13685.0, 13685.0, 13710.0, 13710.0],\n", - " [13647.5, 13647.5, 13697.5, 13697.5],\n", - " [13587.421875, 13587.421875, 13672.5, 13672.5],\n", - " [13497.65625, 13497.65625, 13629.9609375, 13629.9609375],\n", - " [13435.0, 13435.0, 13563.80859375, 13563.80859375],\n", - " [13410.0, 13410.0, 13499.404296875, 13499.404296875],\n", - " [13785.0, 13785.0, 13795.0, 13795.0],\n", - " [13775.0, 13775.0, 13790.0, 13790.0],\n", - " [13805.0, 13805.0, 13815.0, 13815.0],\n", - " [13782.5, 13782.5, 13810.0, 13810.0],\n", - " [13765.0, 13765.0, 13796.25, 13796.25],\n", - " [13454.7021484375, 13454.7021484375, 13780.625, 13780.625],\n", - " [13385.0, 13385.0, 13617.66357421875, 13617.66357421875],\n", - " [13370.0, 13370.0, 13501.331787109375, 13501.331787109375],\n", - " [13845.0, 13845.0, 13855.0, 13855.0],\n", - " [13835.0, 13835.0, 13850.0, 13850.0],\n", - " [13825.0, 13825.0, 13842.5, 13842.5],\n", - " [13905.0, 13905.0, 13915.0, 13915.0],\n", - " [13925.0, 13925.0, 13935.0, 13935.0],\n", - " [13945.0, 13945.0, 13955.0, 13955.0],\n", - " [13975.0, 13975.0, 13985.0, 13985.0],\n", - " [13965.0, 13965.0, 13980.0, 13980.0],\n", - " [13950.0, 13950.0, 13972.5, 13972.5],\n", - " [13930.0, 13930.0, 13961.25, 13961.25],\n", - " [13910.0, 13910.0, 13945.625, 13945.625],\n", - " [14025.0, 14025.0, 14035.0, 14035.0],\n", - " [14015.0, 14015.0, 14030.0, 14030.0],\n", - " [14005.0, 14005.0, 14022.5, 14022.5],\n", - " [13995.0, 13995.0, 14013.75, 14013.75],\n", - " [14065.0, 14065.0, 14075.0, 14075.0],\n", - " [14095.0, 14095.0, 14105.0, 14105.0],\n", - " [14085.0, 14085.0, 14100.0, 14100.0],\n", - " [14070.0, 14070.0, 14092.5, 14092.5],\n", - " [14055.0, 14055.0, 14081.25, 14081.25],\n", - " [14145.0, 14145.0, 14155.0, 14155.0],\n", - " [14135.0, 14135.0, 14150.0, 14150.0],\n", - " [14125.0, 14125.0, 14142.5, 14142.5],\n", - " [14115.0, 14115.0, 14133.75, 14133.75],\n", - " [14068.125, 14068.125, 14124.375, 14124.375],\n", - " [14045.0, 14045.0, 14096.25, 14096.25],\n", - " [14004.375, 14004.375, 14070.625, 14070.625],\n", - " [13927.8125, 13927.8125, 14037.5, 14037.5],\n", - " [13895.0, 13895.0, 13982.65625, 13982.65625],\n", - " [13885.0, 13885.0, 13938.828125, 13938.828125],\n", - " [13875.0, 13875.0, 13911.9140625, 13911.9140625],\n", - " [13865.0, 13865.0, 13893.45703125, 13893.45703125],\n", - " [14175.0, 14175.0, 14185.0, 14185.0],\n", - " [14215.0, 14215.0, 14225.0, 14225.0],\n", - " [14205.0, 14205.0, 14220.0, 14220.0],\n", - " [14195.0, 14195.0, 14212.5, 14212.5],\n", - " [14235.0, 14235.0, 14245.0, 14245.0],\n", - " [14285.0, 14285.0, 14295.0, 14295.0],\n", - " [14275.0, 14275.0, 14290.0, 14290.0],\n", - " [14265.0, 14265.0, 14282.5, 14282.5],\n", - " [14255.0, 14255.0, 14273.75, 14273.75],\n", - " [14240.0, 14240.0, 14264.375, 14264.375],\n", - " [14203.75, 14203.75, 14252.1875, 14252.1875],\n", - " [14180.0, 14180.0, 14227.96875, 14227.96875],\n", - " [14165.0, 14165.0, 14203.984375, 14203.984375],\n", - " [14305.0, 14305.0, 14315.0, 14315.0],\n", - " [14325.0, 14325.0, 14335.0, 14335.0],\n", - " [14355.0, 14355.0, 14365.0, 14365.0],\n", - " [14375.0, 14375.0, 14385.0, 14385.0],\n", - " [14360.0, 14360.0, 14380.0, 14380.0],\n", - " [14345.0, 14345.0, 14370.0, 14370.0],\n", - " [14330.0, 14330.0, 14357.5, 14357.5],\n", - " [14405.0, 14405.0, 14415.0, 14415.0],\n", - " [14445.0, 14445.0, 14455.0, 14455.0],\n", - " [14435.0, 14435.0, 14450.0, 14450.0],\n", - " [14495.0, 14495.0, 14505.0, 14505.0],\n", - " [14485.0, 14485.0, 14500.0, 14500.0],\n", - " [14525.0, 14525.0, 14535.0, 14535.0],\n", - " [14545.0, 14545.0, 14555.0, 14555.0],\n", - " [14605.0, 14605.0, 14615.0, 14615.0],\n", - " [14595.0, 14595.0, 14610.0, 14610.0],\n", - " [14585.0, 14585.0, 14602.5, 14602.5],\n", - " [14575.0, 14575.0, 14593.75, 14593.75],\n", - " [14565.0, 14565.0, 14584.375, 14584.375],\n", - " [14550.0, 14550.0, 14574.6875, 14574.6875],\n", - " [14530.0, 14530.0, 14562.34375, 14562.34375],\n", - " [14515.0, 14515.0, 14546.171875, 14546.171875],\n", - " [14492.5, 14492.5, 14530.5859375, 14530.5859375],\n", - " [14475.0, 14475.0, 14511.54296875, 14511.54296875],\n", - " [14465.0, 14465.0, 14493.271484375, 14493.271484375],\n", - " [14442.5, 14442.5, 14479.1357421875, 14479.1357421875],\n", - " [14665.0, 14665.0, 14675.0, 14675.0],\n", - " [14655.0, 14655.0, 14670.0, 14670.0],\n", - " [14645.0, 14645.0, 14662.5, 14662.5],\n", - " [14705.0, 14705.0, 14715.0, 14715.0],\n", - " [14725.0, 14725.0, 14735.0, 14735.0],\n", - " [14710.0, 14710.0, 14730.0, 14730.0],\n", - " [14765.0, 14765.0, 14775.0, 14775.0],\n", - " [14755.0, 14755.0, 14770.0, 14770.0],\n", - " [14745.0, 14745.0, 14762.5, 14762.5],\n", - " [14720.0, 14720.0, 14753.75, 14753.75],\n", - " [14695.0, 14695.0, 14736.875, 14736.875],\n", - " [14685.0, 14685.0, 14715.9375, 14715.9375],\n", - " [14653.75, 14653.75, 14700.46875, 14700.46875],\n", - " [14635.0, 14635.0, 14677.109375, 14677.109375],\n", - " [14625.0, 14625.0, 14656.0546875, 14656.0546875],\n", - " [14460.81787109375, 14460.81787109375, 14640.52734375, 14640.52734375],\n", - " [14425.0, 14425.0, 14550.672607421875, 14550.672607421875],\n", - " [14785.0, 14785.0, 14795.0, 14795.0],\n", - " [14487.836303710938, 14487.836303710938, 14790.0, 14790.0],\n", - " [14410.0, 14410.0, 14638.918151855469, 14638.918151855469],\n", - " [14395.0, 14395.0, 14524.459075927734, 14524.459075927734],\n", - " [14825.0, 14825.0, 14835.0, 14835.0],\n", - " [14815.0, 14815.0, 14830.0, 14830.0],\n", - " [14805.0, 14805.0, 14822.5, 14822.5],\n", - " [14875.0, 14875.0, 14885.0, 14885.0],\n", - " [14865.0, 14865.0, 14880.0, 14880.0],\n", - " [14895.0, 14895.0, 14905.0, 14905.0],\n", - " [14945.0, 14945.0, 14955.0, 14955.0],\n", - " [14935.0, 14935.0, 14950.0, 14950.0],\n", - " [14925.0, 14925.0, 14942.5, 14942.5],\n", - " [14915.0, 14915.0, 14933.75, 14933.75],\n", - " [14900.0, 14900.0, 14924.375, 14924.375],\n", - " [14872.5, 14872.5, 14912.1875, 14912.1875],\n", - " [14855.0, 14855.0, 14892.34375, 14892.34375],\n", - " [14845.0, 14845.0, 14873.671875, 14873.671875],\n", - " [14813.75, 14813.75, 14859.3359375, 14859.3359375],\n", - " [14965.0, 14965.0, 14975.0, 14975.0],\n", - " [14985.0, 14985.0, 14995.0, 14995.0],\n", - " [15015.0, 15015.0, 15025.0, 15025.0],\n", - " [15005.0, 15005.0, 15020.0, 15020.0],\n", - " [14990.0, 14990.0, 15012.5, 15012.5],\n", - " [15055.0, 15055.0, 15065.0, 15065.0],\n", - " [15085.0, 15085.0, 15095.0, 15095.0],\n", - " [15075.0, 15075.0, 15090.0, 15090.0],\n", - " [15105.0, 15105.0, 15115.0, 15115.0],\n", - " [15082.5, 15082.5, 15110.0, 15110.0],\n", - " [15060.0, 15060.0, 15096.25, 15096.25],\n", - " [15045.0, 15045.0, 15078.125, 15078.125],\n", - " [15035.0, 15035.0, 15061.5625, 15061.5625],\n", - " [15001.25, 15001.25, 15048.28125, 15048.28125],\n", - " [14970.0, 14970.0, 15024.765625, 15024.765625],\n", - " [14836.54296875, 14836.54296875, 14997.3828125, 14997.3828125],\n", - " [14459.729537963867, 14459.729537963867, 14916.962890625, 14916.962890625],\n", - " [14343.75, 14343.75, 14688.346214294434, 14688.346214294434],\n", - " [15195.0, 15195.0, 15205.0, 15205.0],\n", - " [15185.0, 15185.0, 15200.0, 15200.0],\n", - " [15245.0, 15245.0, 15255.0, 15255.0],\n", - " [15235.0, 15235.0, 15250.0, 15250.0],\n", - " [15225.0, 15225.0, 15242.5, 15242.5],\n", - " [15265.0, 15265.0, 15275.0, 15275.0],\n", - " [15233.75, 15233.75, 15270.0, 15270.0],\n", - " [15215.0, 15215.0, 15251.875, 15251.875],\n", - " [15192.5, 15192.5, 15233.4375, 15233.4375],\n", - " [15175.0, 15175.0, 15212.96875, 15212.96875],\n", - " [15305.0, 15305.0, 15315.0, 15315.0],\n", - " [15335.0, 15335.0, 15345.0, 15345.0],\n", - " [15325.0, 15325.0, 15340.0, 15340.0],\n", - " [15310.0, 15310.0, 15332.5, 15332.5],\n", - " [15295.0, 15295.0, 15321.25, 15321.25],\n", - " [15445.0, 15445.0, 15455.0, 15455.0],\n", - " [15435.0, 15435.0, 15450.0, 15450.0],\n", - " [15425.0, 15425.0, 15442.5, 15442.5],\n", - " [15415.0, 15415.0, 15433.75, 15433.75],\n", - " [15405.0, 15405.0, 15424.375, 15424.375],\n", - " [15395.0, 15395.0, 15414.6875, 15414.6875],\n", - " [15475.0, 15475.0, 15485.0, 15485.0],\n", - " [15495.0, 15495.0, 15505.0, 15505.0],\n", - " [15515.0, 15515.0, 15525.0, 15525.0],\n", - " [15535.0, 15535.0, 15545.0, 15545.0],\n", - " [15575.0, 15575.0, 15585.0, 15585.0],\n", - " [15565.0, 15565.0, 15580.0, 15580.0],\n", - " [15595.0, 15595.0, 15605.0, 15605.0],\n", - " [15572.5, 15572.5, 15600.0, 15600.0],\n", - " [15555.0, 15555.0, 15586.25, 15586.25],\n", - " [15540.0, 15540.0, 15570.625, 15570.625],\n", - " [15625.0, 15625.0, 15635.0, 15635.0],\n", - " [15615.0, 15615.0, 15630.0, 15630.0],\n", - " [15555.3125, 15555.3125, 15622.5, 15622.5],\n", - " [15520.0, 15520.0, 15588.90625, 15588.90625],\n", - " [15500.0, 15500.0, 15554.453125, 15554.453125],\n", - " [15480.0, 15480.0, 15527.2265625, 15527.2265625],\n", - " [15465.0, 15465.0, 15503.61328125, 15503.61328125],\n", - " [15404.84375, 15404.84375, 15484.306640625, 15484.306640625],\n", - " [15385.0, 15385.0, 15444.5751953125, 15444.5751953125],\n", - " [15375.0, 15375.0, 15414.78759765625, 15414.78759765625],\n", - " [15365.0, 15365.0, 15394.893798828125, 15394.893798828125],\n", - " [15355.0, 15355.0, 15379.946899414062, 15379.946899414062],\n", - " [15645.0, 15645.0, 15655.0, 15655.0],\n", - " [15675.0, 15675.0, 15685.0, 15685.0],\n", - " [15665.0, 15665.0, 15680.0, 15680.0],\n", - " [15650.0, 15650.0, 15672.5, 15672.5],\n", - " [15367.473449707031, 15367.473449707031, 15661.25, 15661.25],\n", - " [15308.125, 15308.125, 15514.361724853516, 15514.361724853516],\n", - " [15285.0, 15285.0, 15411.243362426758, 15411.243362426758],\n", - " [15193.984375, 15193.984375, 15348.121681213379, 15348.121681213379],\n", - " [15165.0, 15165.0, 15271.05302810669, 15271.05302810669],\n", - " [15735.0, 15735.0, 15745.0, 15745.0],\n", - " [15725.0, 15725.0, 15740.0, 15740.0],\n", - " [15715.0, 15715.0, 15732.5, 15732.5],\n", - " [15705.0, 15705.0, 15723.75, 15723.75],\n", - " [15755.0, 15755.0, 15765.0, 15765.0],\n", - " [15714.375, 15714.375, 15760.0, 15760.0],\n", - " [15695.0, 15695.0, 15737.1875, 15737.1875],\n", - " [15775.0, 15775.0, 15785.0, 15785.0],\n", - " [15815.0, 15815.0, 15825.0, 15825.0],\n", - " [15805.0, 15805.0, 15820.0, 15820.0],\n", - " [15795.0, 15795.0, 15812.5, 15812.5],\n", - " [15780.0, 15780.0, 15803.75, 15803.75],\n", - " [15716.09375, 15716.09375, 15791.875, 15791.875],\n", - " [15218.026514053345, 15218.026514053345, 15753.984375, 15753.984375],\n", - " [15865.0, 15865.0, 15875.0, 15875.0],\n", - " [15855.0, 15855.0, 15870.0, 15870.0],\n", - " [15885.0, 15885.0, 15895.0, 15895.0],\n", - " [15862.5, 15862.5, 15890.0, 15890.0],\n", - " [15905.0, 15905.0, 15915.0, 15915.0],\n", - " [15876.25, 15876.25, 15910.0, 15910.0],\n", - " [15845.0, 15845.0, 15893.125, 15893.125],\n", - " [15985.0, 15985.0, 15995.0, 15995.0],\n", - " [15975.0, 15975.0, 15990.0, 15990.0],\n", - " [15965.0, 15965.0, 15982.5, 15982.5],\n", - " [16015.0, 16015.0, 16025.0, 16025.0],\n", - " [16055.0, 16055.0, 16065.0, 16065.0],\n", - " [16045.0, 16045.0, 16060.0, 16060.0],\n", - " [16095.0, 16095.0, 16105.0, 16105.0],\n", - " [16115.0, 16115.0, 16125.0, 16125.0],\n", - " [16195.0, 16195.0, 16205.0, 16205.0],\n", - " [16265.0, 16265.0, 16275.0, 16275.0],\n", - " [16255.0, 16255.0, 16270.0, 16270.0],\n", - " [16245.0, 16245.0, 16262.5, 16262.5],\n", - " [16235.0, 16235.0, 16253.75, 16253.75],\n", - " [16225.0, 16225.0, 16244.375, 16244.375],\n", - " [16215.0, 16215.0, 16234.6875, 16234.6875],\n", - " [16200.0, 16200.0, 16224.84375, 16224.84375],\n", - " [16185.0, 16185.0, 16212.421875, 16212.421875],\n", - " [16295.0, 16295.0, 16305.0, 16305.0],\n", - " [16315.0, 16315.0, 16325.0, 16325.0],\n", - " [16300.0, 16300.0, 16320.0, 16320.0],\n", - " [16285.0, 16285.0, 16310.0, 16310.0],\n", - " [16355.0, 16355.0, 16365.0, 16365.0],\n", - " [16345.0, 16345.0, 16360.0, 16360.0],\n", - " [16335.0, 16335.0, 16352.5, 16352.5],\n", - " [16297.5, 16297.5, 16343.75, 16343.75],\n", - " [16198.7109375, 16198.7109375, 16320.625, 16320.625],\n", - " [16175.0, 16175.0, 16259.66796875, 16259.66796875],\n", - " [16165.0, 16165.0, 16217.333984375, 16217.333984375],\n", - " [16155.0, 16155.0, 16191.1669921875, 16191.1669921875],\n", - " [16375.0, 16375.0, 16385.0, 16385.0],\n", - " [16415.0, 16415.0, 16425.0, 16425.0],\n", - " [16435.0, 16435.0, 16445.0, 16445.0],\n", - " [16465.0, 16465.0, 16475.0, 16475.0],\n", - " [16455.0, 16455.0, 16470.0, 16470.0],\n", - " [16440.0, 16440.0, 16462.5, 16462.5],\n", - " [16420.0, 16420.0, 16451.25, 16451.25],\n", - " [16405.0, 16405.0, 16435.625, 16435.625],\n", - " [16525.0, 16525.0, 16535.0, 16535.0],\n", - " [16515.0, 16515.0, 16530.0, 16530.0],\n", - " [16505.0, 16505.0, 16522.5, 16522.5],\n", - " [16575.0, 16575.0, 16585.0, 16585.0],\n", - " [16605.0, 16605.0, 16615.0, 16615.0],\n", - " [16595.0, 16595.0, 16610.0, 16610.0],\n", - " [16635.0, 16635.0, 16645.0, 16645.0],\n", - " [16625.0, 16625.0, 16640.0, 16640.0],\n", - " [16665.0, 16665.0, 16675.0, 16675.0],\n", - " [16655.0, 16655.0, 16670.0, 16670.0],\n", - " [16685.0, 16685.0, 16695.0, 16695.0],\n", - " [16705.0, 16705.0, 16715.0, 16715.0],\n", - " [16690.0, 16690.0, 16710.0, 16710.0],\n", - " [16745.0, 16745.0, 16755.0, 16755.0],\n", - " [16735.0, 16735.0, 16750.0, 16750.0],\n", - " [16725.0, 16725.0, 16742.5, 16742.5],\n", - " [16785.0, 16785.0, 16795.0, 16795.0],\n", - " [16775.0, 16775.0, 16790.0, 16790.0],\n", - " [16765.0, 16765.0, 16782.5, 16782.5],\n", - " [16733.75, 16733.75, 16773.75, 16773.75],\n", - " [16700.0, 16700.0, 16753.75, 16753.75],\n", - " [16662.5, 16662.5, 16726.875, 16726.875],\n", - " [16632.5, 16632.5, 16694.6875, 16694.6875],\n", - " [16815.0, 16815.0, 16825.0, 16825.0],\n", - " [16805.0, 16805.0, 16820.0, 16820.0],\n", - " [16835.0, 16835.0, 16845.0, 16845.0],\n", - " [16865.0, 16865.0, 16875.0, 16875.0],\n", - " [16855.0, 16855.0, 16870.0, 16870.0],\n", - " [16840.0, 16840.0, 16862.5, 16862.5],\n", - " [16885.0, 16885.0, 16895.0, 16895.0],\n", - " [16905.0, 16905.0, 16915.0, 16915.0],\n", - " [16890.0, 16890.0, 16910.0, 16910.0],\n", - " [16945.0, 16945.0, 16955.0, 16955.0],\n", - " [16965.0, 16965.0, 16975.0, 16975.0],\n", - " [16950.0, 16950.0, 16970.0, 16970.0],\n", - " [16935.0, 16935.0, 16960.0, 16960.0],\n", - " [16925.0, 16925.0, 16947.5, 16947.5],\n", - " [16900.0, 16900.0, 16936.25, 16936.25],\n", - " [17025.0, 17025.0, 17035.0, 17035.0],\n", - " [17015.0, 17015.0, 17030.0, 17030.0],\n", - " [17005.0, 17005.0, 17022.5, 17022.5],\n", - " [16995.0, 16995.0, 17013.75, 17013.75],\n", - " [16985.0, 16985.0, 17004.375, 17004.375],\n", - " [17085.0, 17085.0, 17095.0, 17095.0],\n", - " [17075.0, 17075.0, 17090.0, 17090.0],\n", - " [17065.0, 17065.0, 17082.5, 17082.5],\n", - " [17055.0, 17055.0, 17073.75, 17073.75],\n", - " [17045.0, 17045.0, 17064.375, 17064.375],\n", - " [16994.6875, 16994.6875, 17054.6875, 17054.6875],\n", - " [16918.125, 16918.125, 17024.6875, 17024.6875],\n", - " [17105.0, 17105.0, 17115.0, 17115.0],\n", - " [17125.0, 17125.0, 17135.0, 17135.0],\n", - " [17110.0, 17110.0, 17130.0, 17130.0],\n", - " [16971.40625, 16971.40625, 17120.0, 17120.0],\n", - " [16851.25, 16851.25, 17045.703125, 17045.703125],\n", - " [16812.5, 16812.5, 16948.4765625, 16948.4765625],\n", - " [16663.59375, 16663.59375, 16880.48828125, 16880.48828125],\n", - " [16602.5, 16602.5, 16772.041015625, 16772.041015625],\n", - " [16580.0, 16580.0, 16687.2705078125, 16687.2705078125],\n", - " [16565.0, 16565.0, 16633.63525390625, 16633.63525390625],\n", - " [16555.0, 16555.0, 16599.317626953125, 16599.317626953125],\n", - " [16545.0, 16545.0, 16577.158813476562, 16577.158813476562],\n", - " [17175.0, 17175.0, 17185.0, 17185.0],\n", - " [17165.0, 17165.0, 17180.0, 17180.0],\n", - " [17195.0, 17195.0, 17205.0, 17205.0],\n", - " [17215.0, 17215.0, 17225.0, 17225.0],\n", - " [17245.0, 17245.0, 17255.0, 17255.0],\n", - " [17235.0, 17235.0, 17250.0, 17250.0],\n", - " [17220.0, 17220.0, 17242.5, 17242.5],\n", - " [17200.0, 17200.0, 17231.25, 17231.25],\n", - " [17265.0, 17265.0, 17275.0, 17275.0],\n", - " [17215.625, 17215.625, 17270.0, 17270.0],\n", - " [17295.0, 17295.0, 17305.0, 17305.0],\n", - " [17325.0, 17325.0, 17335.0, 17335.0],\n", - " [17315.0, 17315.0, 17330.0, 17330.0],\n", - " [17300.0, 17300.0, 17322.5, 17322.5],\n", - " [17285.0, 17285.0, 17311.25, 17311.25],\n", - " [17242.8125, 17242.8125, 17298.125, 17298.125],\n", - " [17172.5, 17172.5, 17270.46875, 17270.46875],\n", - " [17155.0, 17155.0, 17221.484375, 17221.484375],\n", - " [17145.0, 17145.0, 17188.2421875, 17188.2421875],\n", - " [16561.07940673828, 16561.07940673828, 17166.62109375, 17166.62109375],\n", - " [16513.75, 16513.75, 16863.85025024414, 16863.85025024414],\n", - " [16495.0, 16495.0, 16688.80012512207, 16688.80012512207],\n", - " [16485.0, 16485.0, 16591.900062561035, 16591.900062561035],\n", - " [16420.3125, 16420.3125, 16538.450031280518, 16538.450031280518],\n", - " [16395.0, 16395.0, 16479.38126564026, 16479.38126564026],\n", - " [16380.0, 16380.0, 16437.19063282013, 16437.19063282013],\n", - " [16173.08349609375,\n", - " 16173.08349609375,\n", - " 16408.595316410065,\n", - " 16408.595316410065],\n", - " [16145.0, 16145.0, 16290.839406251907, 16290.839406251907],\n", - " [16135.0, 16135.0, 16217.919703125954, 16217.919703125954],\n", - " [17365.0, 17365.0, 17375.0, 17375.0],\n", - " [17395.0, 17395.0, 17405.0, 17405.0],\n", - " [17385.0, 17385.0, 17400.0, 17400.0],\n", - " [17415.0, 17415.0, 17425.0, 17425.0],\n", - " [17455.0, 17455.0, 17465.0, 17465.0],\n", - " [17445.0, 17445.0, 17460.0, 17460.0],\n", - " [17435.0, 17435.0, 17452.5, 17452.5],\n", - " [17475.0, 17475.0, 17485.0, 17485.0],\n", - " [17495.0, 17495.0, 17505.0, 17505.0],\n", - " [17480.0, 17480.0, 17500.0, 17500.0],\n", - " [17535.0, 17535.0, 17545.0, 17545.0],\n", - " [17525.0, 17525.0, 17540.0, 17540.0],\n", - " [17565.0, 17565.0, 17575.0, 17575.0],\n", - " [17555.0, 17555.0, 17570.0, 17570.0],\n", - " [17532.5, 17532.5, 17562.5, 17562.5],\n", - " [17585.0, 17585.0, 17595.0, 17595.0],\n", - " [17547.5, 17547.5, 17590.0, 17590.0],\n", - " [17615.0, 17615.0, 17625.0, 17625.0],\n", - " [17605.0, 17605.0, 17620.0, 17620.0],\n", - " [17645.0, 17645.0, 17655.0, 17655.0],\n", - " [17635.0, 17635.0, 17650.0, 17650.0],\n", - " [17612.5, 17612.5, 17642.5, 17642.5],\n", - " [17568.75, 17568.75, 17627.5, 17627.5],\n", - " [17515.0, 17515.0, 17598.125, 17598.125],\n", - " [17490.0, 17490.0, 17556.5625, 17556.5625],\n", - " [17705.0, 17705.0, 17715.0, 17715.0],\n", - " [17695.0, 17695.0, 17710.0, 17710.0],\n", - " [17725.0, 17725.0, 17735.0, 17735.0],\n", - " [17765.0, 17765.0, 17775.0, 17775.0],\n", - " [17755.0, 17755.0, 17770.0, 17770.0],\n", - " [17745.0, 17745.0, 17762.5, 17762.5],\n", - " [17730.0, 17730.0, 17753.75, 17753.75],\n", - " [17702.5, 17702.5, 17741.875, 17741.875],\n", - " [17685.0, 17685.0, 17722.1875, 17722.1875],\n", - " [17675.0, 17675.0, 17703.59375, 17703.59375],\n", - " [17805.0, 17805.0, 17815.0, 17815.0],\n", - " [17825.0, 17825.0, 17835.0, 17835.0],\n", - " [17865.0, 17865.0, 17875.0, 17875.0],\n", - " [17855.0, 17855.0, 17870.0, 17870.0],\n", - " [17845.0, 17845.0, 17862.5, 17862.5],\n", - " [17830.0, 17830.0, 17853.75, 17853.75],\n", - " [17810.0, 17810.0, 17841.875, 17841.875],\n", - " [17795.0, 17795.0, 17825.9375, 17825.9375],\n", - " [17895.0, 17895.0, 17905.0, 17905.0],\n", - " [17885.0, 17885.0, 17900.0, 17900.0],\n", - " [17925.0, 17925.0, 17935.0, 17935.0],\n", - " [17915.0, 17915.0, 17930.0, 17930.0],\n", - " [17892.5, 17892.5, 17922.5, 17922.5],\n", - " [17955.0, 17955.0, 17965.0, 17965.0],\n", - " [17945.0, 17945.0, 17960.0, 17960.0],\n", - " [17907.5, 17907.5, 17952.5, 17952.5],\n", - " [17810.46875, 17810.46875, 17930.0, 17930.0],\n", - " [17785.0, 17785.0, 17870.234375, 17870.234375],\n", - " [17689.296875, 17689.296875, 17827.6171875, 17827.6171875],\n", - " [17665.0, 17665.0, 17758.45703125, 17758.45703125],\n", - " [17523.28125, 17523.28125, 17711.728515625, 17711.728515625],\n", - " [17995.0, 17995.0, 18005.0, 18005.0],\n", - " [17985.0, 17985.0, 18000.0, 18000.0],\n", - " [18035.0, 18035.0, 18045.0, 18045.0],\n", - " [18025.0, 18025.0, 18040.0, 18040.0],\n", - " [18015.0, 18015.0, 18032.5, 18032.5],\n", - " [17992.5, 17992.5, 18023.75, 18023.75],\n", - " [17975.0, 17975.0, 18008.125, 18008.125],\n", - " [17617.5048828125, 17617.5048828125, 17991.5625, 17991.5625],\n", - " [17443.75, 17443.75, 17804.53369140625, 17804.53369140625],\n", - " [17420.0, 17420.0, 17624.141845703125, 17624.141845703125],\n", - " [17392.5, 17392.5, 17522.070922851562, 17522.070922851562],\n", - " [17370.0, 17370.0, 17457.28546142578, 17457.28546142578],\n", - " [17355.0, 17355.0, 17413.64273071289, 17413.64273071289],\n", - " [17345.0, 17345.0, 17384.321365356445, 17384.321365356445],\n", - " [16176.459851562977,\n", - " 16176.459851562977,\n", - " 17364.660682678223,\n", - " 17364.660682678223],\n", - " [16120.0, 16120.0, 16770.5602671206, 16770.5602671206],\n", - " [16100.0, 16100.0, 16445.2801335603, 16445.2801335603],\n", - " [16085.0, 16085.0, 16272.64006678015, 16272.64006678015],\n", - " [16075.0, 16075.0, 16178.820033390075, 16178.820033390075],\n", - " [16052.5, 16052.5, 16126.910016695037, 16126.910016695037],\n", - " [18075.0, 18075.0, 18085.0, 18085.0],\n", - " [18105.0, 18105.0, 18115.0, 18115.0],\n", - " [18095.0, 18095.0, 18110.0, 18110.0],\n", - " [18135.0, 18135.0, 18145.0, 18145.0],\n", - " [18195.0, 18195.0, 18205.0, 18205.0],\n", - " [18185.0, 18185.0, 18200.0, 18200.0],\n", - " [18225.0, 18225.0, 18235.0, 18235.0],\n", - " [18215.0, 18215.0, 18230.0, 18230.0],\n", - " [18255.0, 18255.0, 18265.0, 18265.0],\n", - " [18275.0, 18275.0, 18285.0, 18285.0],\n", - " [18295.0, 18295.0, 18305.0, 18305.0],\n", - " [18315.0, 18315.0, 18325.0, 18325.0],\n", - " [18335.0, 18335.0, 18345.0, 18345.0],\n", - " [18355.0, 18355.0, 18365.0, 18365.0],\n", - " [18340.0, 18340.0, 18360.0, 18360.0],\n", - " [18375.0, 18375.0, 18385.0, 18385.0],\n", - " [18395.0, 18395.0, 18405.0, 18405.0],\n", - " [18380.0, 18380.0, 18400.0, 18400.0],\n", - " [18350.0, 18350.0, 18390.0, 18390.0],\n", - " [18320.0, 18320.0, 18370.0, 18370.0],\n", - " [18300.0, 18300.0, 18345.0, 18345.0],\n", - " [18280.0, 18280.0, 18322.5, 18322.5],\n", - " [18260.0, 18260.0, 18301.25, 18301.25],\n", - " [18245.0, 18245.0, 18280.625, 18280.625],\n", - " [18222.5, 18222.5, 18262.8125, 18262.8125],\n", - " [18192.5, 18192.5, 18242.65625, 18242.65625],\n", - " [18175.0, 18175.0, 18217.578125, 18217.578125],\n", - " [18415.0, 18415.0, 18425.0, 18425.0],\n", - " [18435.0, 18435.0, 18445.0, 18445.0],\n", - " [18420.0, 18420.0, 18440.0, 18440.0],\n", - " [18196.2890625, 18196.2890625, 18430.0, 18430.0],\n", - " [18495.0, 18495.0, 18505.0, 18505.0],\n", - " [18485.0, 18485.0, 18500.0, 18500.0],\n", - " [18475.0, 18475.0, 18492.5, 18492.5],\n", - " [18465.0, 18465.0, 18483.75, 18483.75],\n", - " [18515.0, 18515.0, 18525.0, 18525.0],\n", - " [18555.0, 18555.0, 18565.0, 18565.0],\n", - " [18545.0, 18545.0, 18560.0, 18560.0],\n", - " [18535.0, 18535.0, 18552.5, 18552.5],\n", - " [18520.0, 18520.0, 18543.75, 18543.75],\n", - " [18474.375, 18474.375, 18531.875, 18531.875],\n", - " [18455.0, 18455.0, 18503.125, 18503.125],\n", - " [18595.0, 18595.0, 18605.0, 18605.0],\n", - " [18585.0, 18585.0, 18600.0, 18600.0],\n", - " [18575.0, 18575.0, 18592.5, 18592.5],\n", - " [18479.0625, 18479.0625, 18583.75, 18583.75],\n", - " [18313.14453125, 18313.14453125, 18531.40625, 18531.40625],\n", - " [18165.0, 18165.0, 18422.275390625, 18422.275390625],\n", - " [18155.0, 18155.0, 18293.6376953125, 18293.6376953125],\n", - " [18140.0, 18140.0, 18224.31884765625, 18224.31884765625],\n", - " [18625.0, 18625.0, 18635.0, 18635.0],\n", - " [18615.0, 18615.0, 18630.0, 18630.0],\n", - " [18665.0, 18665.0, 18675.0, 18675.0],\n", - " [18735.0, 18735.0, 18745.0, 18745.0],\n", - " [18725.0, 18725.0, 18740.0, 18740.0],\n", - " [18715.0, 18715.0, 18732.5, 18732.5],\n", - " [18705.0, 18705.0, 18723.75, 18723.75],\n", - " [18695.0, 18695.0, 18714.375, 18714.375],\n", - " [18685.0, 18685.0, 18704.6875, 18704.6875],\n", - " [18755.0, 18755.0, 18765.0, 18765.0],\n", - " [18694.84375, 18694.84375, 18760.0, 18760.0],\n", - " [18670.0, 18670.0, 18727.421875, 18727.421875],\n", - " [18795.0, 18795.0, 18805.0, 18805.0],\n", - " [18785.0, 18785.0, 18800.0, 18800.0],\n", - " [18775.0, 18775.0, 18792.5, 18792.5],\n", - " [18698.7109375, 18698.7109375, 18783.75, 18783.75],\n", - " [18885.0, 18885.0, 18895.0, 18895.0],\n", - " [18875.0, 18875.0, 18890.0, 18890.0],\n", - " [18905.0, 18905.0, 18915.0, 18915.0],\n", - " [18925.0, 18925.0, 18935.0, 18935.0],\n", - " [18945.0, 18945.0, 18955.0, 18955.0],\n", - " [18930.0, 18930.0, 18950.0, 18950.0],\n", - " [18910.0, 18910.0, 18940.0, 18940.0],\n", - " [18882.5, 18882.5, 18925.0, 18925.0],\n", - " [18865.0, 18865.0, 18903.75, 18903.75],\n", - " [18855.0, 18855.0, 18884.375, 18884.375],\n", - " [18845.0, 18845.0, 18869.6875, 18869.6875],\n", - " [18835.0, 18835.0, 18857.34375, 18857.34375],\n", - " [18825.0, 18825.0, 18846.171875, 18846.171875],\n", - " [18985.0, 18985.0, 18995.0, 18995.0],\n", - " [18975.0, 18975.0, 18990.0, 18990.0],\n", - " [18965.0, 18965.0, 18982.5, 18982.5],\n", - " [18835.5859375, 18835.5859375, 18973.75, 18973.75],\n", - " [18815.0, 18815.0, 18904.66796875, 18904.66796875],\n", - " [19035.0, 19035.0, 19045.0, 19045.0],\n", - " [19025.0, 19025.0, 19040.0, 19040.0],\n", - " [19015.0, 19015.0, 19032.5, 19032.5],\n", - " [19005.0, 19005.0, 19023.75, 19023.75],\n", - " [18859.833984375, 18859.833984375, 19014.375, 19014.375],\n", - " [18741.23046875, 18741.23046875, 18937.1044921875, 18937.1044921875],\n", - " [18655.0, 18655.0, 18839.16748046875, 18839.16748046875],\n", - " [18645.0, 18645.0, 18747.083740234375, 18747.083740234375],\n", - " [18622.5, 18622.5, 18696.041870117188, 18696.041870117188],\n", - " [18182.159423828125,\n", - " 18182.159423828125,\n", - " 18659.270935058594,\n", - " 18659.270935058594],\n", - " [18125.0, 18125.0, 18420.71517944336, 18420.71517944336],\n", - " [18102.5, 18102.5, 18272.85758972168, 18272.85758972168],\n", - " [18080.0, 18080.0, 18187.67879486084, 18187.67879486084],\n", - " [19055.0, 19055.0, 19065.0, 19065.0],\n", - " [19075.0, 19075.0, 19085.0, 19085.0],\n", - " [19060.0, 19060.0, 19080.0, 19080.0],\n", - " [19135.0, 19135.0, 19145.0, 19145.0],\n", - " [19125.0, 19125.0, 19140.0, 19140.0],\n", - " [19165.0, 19165.0, 19175.0, 19175.0],\n", - " [19155.0, 19155.0, 19170.0, 19170.0],\n", - " [19132.5, 19132.5, 19162.5, 19162.5],\n", - " [19115.0, 19115.0, 19147.5, 19147.5],\n", - " [19105.0, 19105.0, 19131.25, 19131.25],\n", - " [19095.0, 19095.0, 19118.125, 19118.125],\n", - " [19070.0, 19070.0, 19106.5625, 19106.5625],\n", - " [18133.83939743042, 18133.83939743042, 19088.28125, 19088.28125],\n", - " [18065.0, 18065.0, 18611.06032371521, 18611.06032371521],\n", - " [18055.0, 18055.0, 18338.030161857605, 18338.030161857605],\n", - " [16089.705008347519,\n", - " 16089.705008347519,\n", - " 18196.515080928802,\n", - " 18196.515080928802],\n", - " [16035.0, 16035.0, 17143.11004463816, 17143.11004463816],\n", - " [16020.0, 16020.0, 16589.05502231908, 16589.05502231908],\n", - " [16005.0, 16005.0, 16304.52751115954, 16304.52751115954],\n", - " [15973.75, 15973.75, 16154.76375557977, 16154.76375557977],\n", - " [15955.0, 15955.0, 16064.256877789885, 16064.256877789885],\n", - " [15945.0, 15945.0, 16009.628438894943, 16009.628438894943],\n", - " [15935.0, 15935.0, 15977.314219447471, 15977.314219447471],\n", - " [15925.0, 15925.0, 15956.157109723736, 15956.157109723736],\n", - " [15869.0625, 15869.0625, 15940.578554861868, 15940.578554861868],\n", - " [15835.0, 15835.0, 15904.820527430933, 15904.820527430933],\n", - " [15486.005444526672,\n", - " 15486.005444526672,\n", - " 15869.910263715466,\n", - " 15869.910263715466],\n", - " [15155.0, 15155.0, 15677.957854121069, 15677.957854121069],\n", - " [15145.0, 15145.0, 15416.478927060534, 15416.478927060534],\n", - " [15135.0, 15135.0, 15280.739463530266, 15280.739463530266],\n", - " [15125.0, 15125.0, 15207.869731765133, 15207.869731765133],\n", - " [19195.0, 19195.0, 19205.0, 19205.0],\n", - " [19215.0, 19215.0, 19225.0, 19225.0],\n", - " [19245.0, 19245.0, 19255.0, 19255.0],\n", - " [19235.0, 19235.0, 19250.0, 19250.0],\n", - " [19220.0, 19220.0, 19242.5, 19242.5],\n", - " [19200.0, 19200.0, 19231.25, 19231.25],\n", - " [19265.0, 19265.0, 19275.0, 19275.0],\n", - " [19295.0, 19295.0, 19305.0, 19305.0],\n", - " [19285.0, 19285.0, 19300.0, 19300.0],\n", - " [19270.0, 19270.0, 19292.5, 19292.5],\n", - " [19215.625, 19215.625, 19281.25, 19281.25],\n", - " [19185.0, 19185.0, 19248.4375, 19248.4375],\n", - " [19365.0, 19365.0, 19375.0, 19375.0],\n", - " [19405.0, 19405.0, 19415.0, 19415.0],\n", - " [19455.0, 19455.0, 19465.0, 19465.0],\n", - " [19445.0, 19445.0, 19460.0, 19460.0],\n", - " [19505.0, 19505.0, 19515.0, 19515.0],\n", - " [19495.0, 19495.0, 19510.0, 19510.0],\n", - " [19485.0, 19485.0, 19502.5, 19502.5],\n", - " [19475.0, 19475.0, 19493.75, 19493.75],\n", - " [19545.0, 19545.0, 19555.0, 19555.0],\n", - " [19535.0, 19535.0, 19550.0, 19550.0],\n", - " [19565.0, 19565.0, 19575.0, 19575.0],\n", - " [19542.5, 19542.5, 19570.0, 19570.0],\n", - " [19525.0, 19525.0, 19556.25, 19556.25],\n", - " [19605.0, 19605.0, 19615.0, 19615.0],\n", - " [19595.0, 19595.0, 19610.0, 19610.0],\n", - " [19585.0, 19585.0, 19602.5, 19602.5],\n", - " [19540.625, 19540.625, 19593.75, 19593.75],\n", - " [19635.0, 19635.0, 19645.0, 19645.0],\n", - " [19665.0, 19665.0, 19675.0, 19675.0],\n", - " [19655.0, 19655.0, 19670.0, 19670.0],\n", - " [19705.0, 19705.0, 19715.0, 19715.0],\n", - " [19695.0, 19695.0, 19710.0, 19710.0],\n", - " [19685.0, 19685.0, 19702.5, 19702.5],\n", - " [19735.0, 19735.0, 19745.0, 19745.0],\n", - " [19765.0, 19765.0, 19775.0, 19775.0],\n", - " [19755.0, 19755.0, 19770.0, 19770.0],\n", - " [19740.0, 19740.0, 19762.5, 19762.5],\n", - " [19825.0, 19825.0, 19835.0, 19835.0],\n", - " [19815.0, 19815.0, 19830.0, 19830.0],\n", - " [19805.0, 19805.0, 19822.5, 19822.5],\n", - " [19795.0, 19795.0, 19813.75, 19813.75],\n", - " [19785.0, 19785.0, 19804.375, 19804.375],\n", - " [19751.25, 19751.25, 19794.6875, 19794.6875],\n", - " [19855.0, 19855.0, 19865.0, 19865.0],\n", - " [19845.0, 19845.0, 19860.0, 19860.0],\n", - " [19772.96875, 19772.96875, 19852.5, 19852.5],\n", - " [19725.0, 19725.0, 19812.734375, 19812.734375],\n", - " [19693.75, 19693.75, 19768.8671875, 19768.8671875],\n", - " [19895.0, 19895.0, 19905.0, 19905.0],\n", - " [19885.0, 19885.0, 19900.0, 19900.0],\n", - " [19875.0, 19875.0, 19892.5, 19892.5],\n", - " [19945.0, 19945.0, 19955.0, 19955.0],\n", - " [19935.0, 19935.0, 19950.0, 19950.0],\n", - " [19925.0, 19925.0, 19942.5, 19942.5],\n", - " [19965.0, 19965.0, 19975.0, 19975.0],\n", - " [19985.0, 19985.0, 19995.0, 19995.0],\n", - " [20005.0, 20005.0, 20015.0, 20015.0],\n", - " [19990.0, 19990.0, 20010.0, 20010.0],\n", - " [20055.0, 20055.0, 20065.0, 20065.0],\n", - " [20075.0, 20075.0, 20085.0, 20085.0],\n", - " [20060.0, 20060.0, 20080.0, 20080.0],\n", - " [20045.0, 20045.0, 20070.0, 20070.0],\n", - " [20035.0, 20035.0, 20057.5, 20057.5],\n", - " [20105.0, 20105.0, 20115.0, 20115.0],\n", - " [20095.0, 20095.0, 20110.0, 20110.0],\n", - " [20125.0, 20125.0, 20135.0, 20135.0],\n", - " [20102.5, 20102.5, 20130.0, 20130.0],\n", - " [20165.0, 20165.0, 20175.0, 20175.0],\n", - " [20155.0, 20155.0, 20170.0, 20170.0],\n", - " [20145.0, 20145.0, 20162.5, 20162.5],\n", - " [20185.0, 20185.0, 20195.0, 20195.0],\n", - " [20215.0, 20215.0, 20225.0, 20225.0],\n", - " [20205.0, 20205.0, 20220.0, 20220.0],\n", - " [20190.0, 20190.0, 20212.5, 20212.5],\n", - " [20275.0, 20275.0, 20285.0, 20285.0],\n", - " [20265.0, 20265.0, 20280.0, 20280.0],\n", - " [20255.0, 20255.0, 20272.5, 20272.5],\n", - " [20245.0, 20245.0, 20263.75, 20263.75],\n", - " [20305.0, 20305.0, 20315.0, 20315.0],\n", - " [20295.0, 20295.0, 20310.0, 20310.0],\n", - " [20325.0, 20325.0, 20335.0, 20335.0],\n", - " [20302.5, 20302.5, 20330.0, 20330.0],\n", - " [20254.375, 20254.375, 20316.25, 20316.25],\n", - " [20375.0, 20375.0, 20385.0, 20385.0],\n", - " [20365.0, 20365.0, 20380.0, 20380.0],\n", - " [20395.0, 20395.0, 20405.0, 20405.0],\n", - " [20372.5, 20372.5, 20400.0, 20400.0],\n", - " [20435.0, 20435.0, 20445.0, 20445.0],\n", - " [20425.0, 20425.0, 20440.0, 20440.0],\n", - " [20415.0, 20415.0, 20432.5, 20432.5],\n", - " [20386.25, 20386.25, 20423.75, 20423.75],\n", - " [20355.0, 20355.0, 20405.0, 20405.0],\n", - " [20345.0, 20345.0, 20380.0, 20380.0],\n", - " [20285.3125, 20285.3125, 20362.5, 20362.5],\n", - " [20235.0, 20235.0, 20323.90625, 20323.90625],\n", - " [20201.25, 20201.25, 20279.453125, 20279.453125],\n", - " [20153.75, 20153.75, 20240.3515625, 20240.3515625],\n", - " [20116.25, 20116.25, 20197.05078125, 20197.05078125],\n", - " [20455.0, 20455.0, 20465.0, 20465.0],\n", - " [20475.0, 20475.0, 20485.0, 20485.0],\n", - " [20460.0, 20460.0, 20480.0, 20480.0],\n", - " [20156.650390625, 20156.650390625, 20470.0, 20470.0],\n", - " [20505.0, 20505.0, 20515.0, 20515.0],\n", - " [20495.0, 20495.0, 20510.0, 20510.0],\n", - " [20545.0, 20545.0, 20555.0, 20555.0],\n", - " [20565.0, 20565.0, 20575.0, 20575.0],\n", - " [20550.0, 20550.0, 20570.0, 20570.0],\n", - " [20535.0, 20535.0, 20560.0, 20560.0],\n", - " [20605.0, 20605.0, 20615.0, 20615.0],\n", - " [20595.0, 20595.0, 20610.0, 20610.0],\n", - " [20585.0, 20585.0, 20602.5, 20602.5],\n", - " [20547.5, 20547.5, 20593.75, 20593.75],\n", - " [20645.0, 20645.0, 20655.0, 20655.0],\n", - " [20635.0, 20635.0, 20650.0, 20650.0],\n", - " [20625.0, 20625.0, 20642.5, 20642.5],\n", - " [20570.625, 20570.625, 20633.75, 20633.75],\n", - " [20525.0, 20525.0, 20602.1875, 20602.1875],\n", - " [20502.5, 20502.5, 20563.59375, 20563.59375],\n", - " [20685.0, 20685.0, 20695.0, 20695.0],\n", - " [20675.0, 20675.0, 20690.0, 20690.0],\n", - " [20665.0, 20665.0, 20682.5, 20682.5],\n", - " [20533.046875, 20533.046875, 20673.75, 20673.75],\n", - " [20313.3251953125, 20313.3251953125, 20603.3984375, 20603.3984375],\n", - " [20046.25, 20046.25, 20458.36181640625, 20458.36181640625],\n", - " [20025.0, 20025.0, 20252.305908203125, 20252.305908203125],\n", - " [20000.0, 20000.0, 20138.652954101562, 20138.652954101562],\n", - " [19970.0, 19970.0, 20069.32647705078, 20069.32647705078],\n", - " [19933.75, 19933.75, 20019.66323852539, 20019.66323852539],\n", - " [19915.0, 19915.0, 19976.706619262695, 19976.706619262695],\n", - " [19883.75, 19883.75, 19945.853309631348, 19945.853309631348],\n", - " [19731.30859375, 19731.30859375, 19914.801654815674, 19914.801654815674],\n", - " [19662.5, 19662.5, 19823.055124282837, 19823.055124282837],\n", - " [19640.0, 19640.0, 19742.77756214142, 19742.77756214142],\n", - " [19625.0, 19625.0, 19691.38878107071, 19691.38878107071],\n", - " [19567.1875, 19567.1875, 19658.194390535355, 19658.194390535355],\n", - " [19484.375, 19484.375, 19612.690945267677, 19612.690945267677],\n", - " [19452.5, 19452.5, 19548.53297263384, 19548.53297263384],\n", - " [19435.0, 19435.0, 19500.51648631692, 19500.51648631692],\n", - " [19425.0, 19425.0, 19467.75824315846, 19467.75824315846],\n", - " [19410.0, 19410.0, 19446.37912157923, 19446.37912157923],\n", - " [19395.0, 19395.0, 19428.189560789615, 19428.189560789615],\n", - " [19385.0, 19385.0, 19411.594780394807, 19411.594780394807],\n", - " [19370.0, 19370.0, 19398.297390197404, 19398.297390197404],\n", - " [19355.0, 19355.0, 19384.148695098702, 19384.148695098702],\n", - " [20715.0, 20715.0, 20725.0, 20725.0],\n", - " [20705.0, 20705.0, 20720.0, 20720.0],\n", - " [20745.0, 20745.0, 20755.0, 20755.0],\n", - " [20735.0, 20735.0, 20750.0, 20750.0],\n", - " [20712.5, 20712.5, 20742.5, 20742.5],\n", - " [19369.57434754935, 19369.57434754935, 20727.5, 20727.5],\n", - " [19345.0, 19345.0, 20048.537173774675, 20048.537173774675],\n", - " [19335.0, 19335.0, 19696.768586887338, 19696.768586887338],\n", - " [19325.0, 19325.0, 19515.88429344367, 19515.88429344367],\n", - " [19315.0, 19315.0, 19420.442146721834, 19420.442146721834],\n", - " [20765.0, 20765.0, 20775.0, 20775.0],\n", - " [20795.0, 20795.0, 20805.0, 20805.0],\n", - " [20835.0, 20835.0, 20845.0, 20845.0],\n", - " [20825.0, 20825.0, 20840.0, 20840.0],\n", - " [20815.0, 20815.0, 20832.5, 20832.5],\n", - " [20865.0, 20865.0, 20875.0, 20875.0],\n", - " [20855.0, 20855.0, 20870.0, 20870.0],\n", - " [20823.75, 20823.75, 20862.5, 20862.5],\n", - " [20800.0, 20800.0, 20843.125, 20843.125],\n", - " [20895.0, 20895.0, 20905.0, 20905.0],\n", - " [20915.0, 20915.0, 20925.0, 20925.0],\n", - " [20900.0, 20900.0, 20920.0, 20920.0],\n", - " [20955.0, 20955.0, 20965.0, 20965.0],\n", - " [20995.0, 20995.0, 21005.0, 21005.0],\n", - " [20985.0, 20985.0, 21000.0, 21000.0],\n", - " [20975.0, 20975.0, 20992.5, 20992.5],\n", - " [20960.0, 20960.0, 20983.75, 20983.75],\n", - " [20945.0, 20945.0, 20971.875, 20971.875],\n", - " [20935.0, 20935.0, 20958.4375, 20958.4375],\n", - " [21045.0, 21045.0, 21055.0, 21055.0],\n", - " [21035.0, 21035.0, 21050.0, 21050.0],\n", - " [21095.0, 21095.0, 21105.0, 21105.0],\n", - " [21085.0, 21085.0, 21100.0, 21100.0],\n", - " [21125.0, 21125.0, 21135.0, 21135.0],\n", - " [21165.0, 21165.0, 21175.0, 21175.0],\n", - " [21185.0, 21185.0, 21195.0, 21195.0],\n", - " [21170.0, 21170.0, 21190.0, 21190.0],\n", - " [21155.0, 21155.0, 21180.0, 21180.0],\n", - " [21145.0, 21145.0, 21167.5, 21167.5],\n", - " [21255.0, 21255.0, 21265.0, 21265.0],\n", - " [21245.0, 21245.0, 21260.0, 21260.0],\n", - " [21235.0, 21235.0, 21252.5, 21252.5],\n", - " [21225.0, 21225.0, 21243.75, 21243.75],\n", - " [21215.0, 21215.0, 21234.375, 21234.375],\n", - " [21205.0, 21205.0, 21224.6875, 21224.6875],\n", - " [21275.0, 21275.0, 21285.0, 21285.0],\n", - " [21295.0, 21295.0, 21305.0, 21305.0],\n", - " [21325.0, 21325.0, 21335.0, 21335.0],\n", - " [21315.0, 21315.0, 21330.0, 21330.0],\n", - " [21300.0, 21300.0, 21322.5, 21322.5],\n", - " [21365.0, 21365.0, 21375.0, 21375.0],\n", - " [21355.0, 21355.0, 21370.0, 21370.0],\n", - " [21345.0, 21345.0, 21362.5, 21362.5],\n", - " [21311.25, 21311.25, 21353.75, 21353.75],\n", - " [21280.0, 21280.0, 21332.5, 21332.5],\n", - " [21395.0, 21395.0, 21405.0, 21405.0],\n", - " [21385.0, 21385.0, 21400.0, 21400.0],\n", - " [21306.25, 21306.25, 21392.5, 21392.5],\n", - " [21214.84375, 21214.84375, 21349.375, 21349.375],\n", - " [21156.25, 21156.25, 21282.109375, 21282.109375],\n", - " [21435.0, 21435.0, 21445.0, 21445.0],\n", - " [21465.0, 21465.0, 21475.0, 21475.0],\n", - " [21455.0, 21455.0, 21470.0, 21470.0],\n", - " [21485.0, 21485.0, 21495.0, 21495.0],\n", - " [21515.0, 21515.0, 21525.0, 21525.0],\n", - " [21505.0, 21505.0, 21520.0, 21520.0],\n", - " [21490.0, 21490.0, 21512.5, 21512.5],\n", - " [21462.5, 21462.5, 21501.25, 21501.25],\n", - " [21545.0, 21545.0, 21555.0, 21555.0],\n", - " [21585.0, 21585.0, 21595.0, 21595.0],\n", - " [21575.0, 21575.0, 21590.0, 21590.0],\n", - " [21605.0, 21605.0, 21615.0, 21615.0],\n", - " [21625.0, 21625.0, 21635.0, 21635.0],\n", - " [21610.0, 21610.0, 21630.0, 21630.0],\n", - " [21582.5, 21582.5, 21620.0, 21620.0],\n", - " [21565.0, 21565.0, 21601.25, 21601.25],\n", - " [21550.0, 21550.0, 21583.125, 21583.125],\n", - " [21535.0, 21535.0, 21566.5625, 21566.5625],\n", - " [21481.875, 21481.875, 21550.78125, 21550.78125],\n", - " [21440.0, 21440.0, 21516.328125, 21516.328125],\n", - " [21425.0, 21425.0, 21478.1640625, 21478.1640625],\n", - " [21415.0, 21415.0, 21451.58203125, 21451.58203125],\n", - " [21219.1796875, 21219.1796875, 21433.291015625, 21433.291015625],\n", - " [21130.0, 21130.0, 21326.2353515625, 21326.2353515625],\n", - " [21115.0, 21115.0, 21228.11767578125, 21228.11767578125],\n", - " [21092.5, 21092.5, 21171.558837890625, 21171.558837890625],\n", - " [21075.0, 21075.0, 21132.029418945312, 21132.029418945312],\n", - " [21065.0, 21065.0, 21103.514709472656, 21103.514709472656],\n", - " [21042.5, 21042.5, 21084.257354736328, 21084.257354736328],\n", - " [21025.0, 21025.0, 21063.378677368164, 21063.378677368164],\n", - " [21015.0, 21015.0, 21044.189338684082, 21044.189338684082],\n", - " [20946.71875, 20946.71875, 21029.59466934204, 21029.59466934204],\n", - " [20910.0, 20910.0, 20988.15670967102, 20988.15670967102],\n", - " [20885.0, 20885.0, 20949.07835483551, 20949.07835483551],\n", - " [20821.5625, 20821.5625, 20917.039177417755, 20917.039177417755],\n", - " [20785.0, 20785.0, 20869.300838708878, 20869.300838708878],\n", - " [20770.0, 20770.0, 20827.15041935444, 20827.15041935444],\n", - " [19367.721073360917,\n", - " 19367.721073360917,\n", - " 20798.57520967722,\n", - " 20798.57520967722],\n", - " [19216.71875, 19216.71875, 20083.14814151907, 20083.14814151907],\n", - " [15166.434865882566,\n", - " 15166.434865882566,\n", - " 19649.933445759532,\n", - " 19649.933445759532],\n", - " [14516.048107147217,\n", - " 14516.048107147217,\n", - " 17408.18415582105,\n", - " 17408.18415582105],\n", - " [14310.0, 14310.0, 15962.116131484134, 15962.116131484134],\n", - " [21655.0, 21655.0, 21665.0, 21665.0],\n", - " [21715.0, 21715.0, 21725.0, 21725.0],\n", - " [21705.0, 21705.0, 21720.0, 21720.0],\n", - " [21735.0, 21735.0, 21745.0, 21745.0],\n", - " [21712.5, 21712.5, 21740.0, 21740.0],\n", - " [21695.0, 21695.0, 21726.25, 21726.25],\n", - " [21755.0, 21755.0, 21765.0, 21765.0],\n", - " [21710.625, 21710.625, 21760.0, 21760.0],\n", - " [21685.0, 21685.0, 21735.3125, 21735.3125],\n", - " [21675.0, 21675.0, 21710.15625, 21710.15625],\n", - " [21660.0, 21660.0, 21692.578125, 21692.578125],\n", - " [21645.0, 21645.0, 21676.2890625, 21676.2890625],\n", - " [15136.058065742067, 15136.058065742067, 21660.64453125, 21660.64453125],\n", - " [14184.4921875, 14184.4921875, 18398.351298496033, 18398.351298496033],\n", - " [13879.228515625, 13879.228515625, 16291.421742998016, 16291.421742998016],\n", - " [13833.75, 13833.75, 15085.325129311508, 15085.325129311508],\n", - " [13435.665893554688,\n", - " 13435.665893554688,\n", - " 14459.537564655755,\n", - " 14459.537564655755],\n", - " [13289.43359375, 13289.43359375, 13947.601729105221, 13947.601729105221],\n", - " [11945.857965052128,\n", - " 11945.857965052128,\n", - " 13618.51766142761,\n", - " 13618.51766142761],\n", - " [2954.673829513189,\n", - " 2954.673829513189,\n", - " 12782.187813239869,\n", - " 12782.187813239869],\n", - " [2610.0, 2610.0, 7868.430821376529, 7868.430821376529],\n", - " [2439.8828125, 2439.8828125, 5239.2154106882645, 5239.2154106882645],\n", - " [21785.0, 21785.0, 21795.0, 21795.0],\n", - " [21815.0, 21815.0, 21825.0, 21825.0],\n", - " [21805.0, 21805.0, 21820.0, 21820.0],\n", - " [21790.0, 21790.0, 21812.5, 21812.5],\n", - " [21855.0, 21855.0, 21865.0, 21865.0],\n", - " [21845.0, 21845.0, 21860.0, 21860.0],\n", - " [21915.0, 21915.0, 21925.0, 21925.0],\n", - " [21965.0, 21965.0, 21975.0, 21975.0],\n", - " [21955.0, 21955.0, 21970.0, 21970.0],\n", - " [22035.0, 22035.0, 22045.0, 22045.0],\n", - " [22025.0, 22025.0, 22040.0, 22040.0],\n", - " [22015.0, 22015.0, 22032.5, 22032.5],\n", - " [22065.0, 22065.0, 22075.0, 22075.0],\n", - " [22095.0, 22095.0, 22105.0, 22105.0],\n", - " [22145.0, 22145.0, 22155.0, 22155.0],\n", - " [22135.0, 22135.0, 22150.0, 22150.0],\n", - " [22125.0, 22125.0, 22142.5, 22142.5],\n", - " [22115.0, 22115.0, 22133.75, 22133.75],\n", - " [22175.0, 22175.0, 22185.0, 22185.0],\n", - " [22165.0, 22165.0, 22180.0, 22180.0],\n", - " [22195.0, 22195.0, 22205.0, 22205.0],\n", - " [22225.0, 22225.0, 22235.0, 22235.0],\n", - " [22215.0, 22215.0, 22230.0, 22230.0],\n", - " [22200.0, 22200.0, 22222.5, 22222.5],\n", - " [22172.5, 22172.5, 22211.25, 22211.25],\n", - " [22124.375, 22124.375, 22191.875, 22191.875],\n", - " [22255.0, 22255.0, 22265.0, 22265.0],\n", - " [22245.0, 22245.0, 22260.0, 22260.0],\n", - " [22315.0, 22315.0, 22325.0, 22325.0],\n", - " [22305.0, 22305.0, 22320.0, 22320.0],\n", - " [22295.0, 22295.0, 22312.5, 22312.5],\n", - " [22285.0, 22285.0, 22303.75, 22303.75],\n", - " [22355.0, 22355.0, 22365.0, 22365.0],\n", - " [22345.0, 22345.0, 22360.0, 22360.0],\n", - " [22335.0, 22335.0, 22352.5, 22352.5],\n", - " [22375.0, 22375.0, 22385.0, 22385.0],\n", - " [22343.75, 22343.75, 22380.0, 22380.0],\n", - " [22294.375, 22294.375, 22361.875, 22361.875],\n", - " [22275.0, 22275.0, 22328.125, 22328.125],\n", - " [22252.5, 22252.5, 22301.5625, 22301.5625],\n", - " [22158.125, 22158.125, 22277.03125, 22277.03125],\n", - " [22100.0, 22100.0, 22217.578125, 22217.578125],\n", - " [22085.0, 22085.0, 22158.7890625, 22158.7890625],\n", - " [22070.0, 22070.0, 22121.89453125, 22121.89453125],\n", - " [22055.0, 22055.0, 22095.947265625, 22095.947265625],\n", - " [22023.75, 22023.75, 22075.4736328125, 22075.4736328125],\n", - " [22005.0, 22005.0, 22049.61181640625, 22049.61181640625],\n", - " [21995.0, 21995.0, 22027.305908203125, 22027.305908203125],\n", - " [21985.0, 21985.0, 22011.152954101562, 22011.152954101562],\n", - " [21962.5, 21962.5, 21998.07647705078, 21998.07647705078],\n", - " [21945.0, 21945.0, 21980.28823852539, 21980.28823852539],\n", - " [21935.0, 21935.0, 21962.644119262695, 21962.644119262695],\n", - " [21920.0, 21920.0, 21948.822059631348, 21948.822059631348],\n", - " [21905.0, 21905.0, 21934.411029815674, 21934.411029815674],\n", - " [21895.0, 21895.0, 21919.705514907837, 21919.705514907837],\n", - " [21885.0, 21885.0, 21907.35275745392, 21907.35275745392],\n", - " [22395.0, 22395.0, 22405.0, 22405.0],\n", - " [21896.17637872696, 21896.17637872696, 22400.0, 22400.0],\n", - " [21875.0, 21875.0, 22148.08818936348, 22148.08818936348],\n", - " [21852.5, 21852.5, 22011.54409468174, 22011.54409468174],\n", - " [21835.0, 21835.0, 21932.02204734087, 21932.02204734087],\n", - " [21801.25, 21801.25, 21883.511023670435, 21883.511023670435],\n", - " [22435.0, 22435.0, 22445.0, 22445.0],\n", - " [22425.0, 22425.0, 22440.0, 22440.0],\n", - " [22495.0, 22495.0, 22505.0, 22505.0],\n", - " [22485.0, 22485.0, 22500.0, 22500.0],\n", - " [22475.0, 22475.0, 22492.5, 22492.5],\n", - " [22465.0, 22465.0, 22483.75, 22483.75],\n", - " [22525.0, 22525.0, 22535.0, 22535.0],\n", - " [22515.0, 22515.0, 22530.0, 22530.0],\n", - " [22474.375, 22474.375, 22522.5, 22522.5],\n", - " [22455.0, 22455.0, 22498.4375, 22498.4375],\n", - " [22432.5, 22432.5, 22476.71875, 22476.71875],\n", - " [22415.0, 22415.0, 22454.609375, 22454.609375],\n", - " [21842.380511835217, 21842.380511835217, 22434.8046875, 22434.8046875],\n", - " [21775.0, 21775.0, 22138.59259966761, 22138.59259966761],\n", - " [22595.0, 22595.0, 22605.0, 22605.0],\n", - " [22625.0, 22625.0, 22635.0, 22635.0],\n", - " [22675.0, 22675.0, 22685.0, 22685.0],\n", - " [22725.0, 22725.0, 22735.0, 22735.0],\n", - " [22715.0, 22715.0, 22730.0, 22730.0],\n", - " [22705.0, 22705.0, 22722.5, 22722.5],\n", - " [22695.0, 22695.0, 22713.75, 22713.75],\n", - " [22680.0, 22680.0, 22704.375, 22704.375],\n", - " [22665.0, 22665.0, 22692.1875, 22692.1875],\n", - " [22655.0, 22655.0, 22678.59375, 22678.59375],\n", - " [22645.0, 22645.0, 22666.796875, 22666.796875],\n", - " [22630.0, 22630.0, 22655.8984375, 22655.8984375],\n", - " [22615.0, 22615.0, 22642.94921875, 22642.94921875],\n", - " [22600.0, 22600.0, 22628.974609375, 22628.974609375],\n", - " [22585.0, 22585.0, 22614.4873046875, 22614.4873046875],\n", - " [22575.0, 22575.0, 22599.74365234375, 22599.74365234375],\n", - " [22775.0, 22775.0, 22785.0, 22785.0],\n", - " [22765.0, 22765.0, 22780.0, 22780.0],\n", - " [22755.0, 22755.0, 22772.5, 22772.5],\n", - " [22795.0, 22795.0, 22805.0, 22805.0],\n", - " [22875.0, 22875.0, 22885.0, 22885.0],\n", - " [22865.0, 22865.0, 22880.0, 22880.0],\n", - " [22965.0, 22965.0, 22975.0, 22975.0],\n", - " [22955.0, 22955.0, 22970.0, 22970.0],\n", - " [22985.0, 22985.0, 22995.0, 22995.0],\n", - " [22962.5, 22962.5, 22990.0, 22990.0],\n", - " [22945.0, 22945.0, 22976.25, 22976.25],\n", - " [22935.0, 22935.0, 22960.625, 22960.625],\n", - " [22925.0, 22925.0, 22947.8125, 22947.8125],\n", - " [23045.0, 23045.0, 23055.0, 23055.0],\n", - " [23035.0, 23035.0, 23050.0, 23050.0],\n", - " [23025.0, 23025.0, 23042.5, 23042.5],\n", - " [23015.0, 23015.0, 23033.75, 23033.75],\n", - " [23005.0, 23005.0, 23024.375, 23024.375],\n", - " [22936.40625, 22936.40625, 23014.6875, 23014.6875],\n", - " [23075.0, 23075.0, 23085.0, 23085.0],\n", - " [23065.0, 23065.0, 23080.0, 23080.0],\n", - " [23095.0, 23095.0, 23105.0, 23105.0],\n", - " [23072.5, 23072.5, 23100.0, 23100.0],\n", - " [22975.546875, 22975.546875, 23086.25, 23086.25],\n", - " [22915.0, 22915.0, 23030.8984375, 23030.8984375],\n", - " [22905.0, 22905.0, 22972.94921875, 22972.94921875],\n", - " [23115.0, 23115.0, 23125.0, 23125.0],\n", - " [23135.0, 23135.0, 23145.0, 23145.0],\n", - " [23175.0, 23175.0, 23185.0, 23185.0],\n", - " [23165.0, 23165.0, 23180.0, 23180.0],\n", - " [23195.0, 23195.0, 23205.0, 23205.0],\n", - " [23172.5, 23172.5, 23200.0, 23200.0],\n", - " [23155.0, 23155.0, 23186.25, 23186.25],\n", - " [23140.0, 23140.0, 23170.625, 23170.625],\n", - " [23120.0, 23120.0, 23155.3125, 23155.3125],\n", - " [22938.974609375, 22938.974609375, 23137.65625, 23137.65625],\n", - " [22895.0, 22895.0, 23038.3154296875, 23038.3154296875],\n", - " [22872.5, 22872.5, 22966.65771484375, 22966.65771484375],\n", - " [22855.0, 22855.0, 22919.578857421875, 22919.578857421875],\n", - " [22845.0, 22845.0, 22887.289428710938, 22887.289428710938],\n", - " [22835.0, 22835.0, 22866.14471435547, 22866.14471435547],\n", - " [23265.0, 23265.0, 23275.0, 23275.0],\n", - " [23255.0, 23255.0, 23270.0, 23270.0],\n", - " [23295.0, 23295.0, 23305.0, 23305.0],\n", - " [23285.0, 23285.0, 23300.0, 23300.0],\n", - " [23262.5, 23262.5, 23292.5, 23292.5],\n", - " [23245.0, 23245.0, 23277.5, 23277.5],\n", - " [23235.0, 23235.0, 23261.25, 23261.25],\n", - " [23225.0, 23225.0, 23248.125, 23248.125],\n", - " [23215.0, 23215.0, 23236.5625, 23236.5625],\n", - " [22850.572357177734, 22850.572357177734, 23225.78125, 23225.78125],\n", - " [22825.0, 22825.0, 23038.176803588867, 23038.176803588867],\n", - " [22815.0, 22815.0, 22931.588401794434, 22931.588401794434],\n", - " [22800.0, 22800.0, 22873.294200897217, 22873.294200897217],\n", - " [22763.75, 22763.75, 22836.64710044861, 22836.64710044861],\n", - " [22745.0, 22745.0, 22800.198550224304, 22800.198550224304],\n", - " [22587.371826171875,\n", - " 22587.371826171875,\n", - " 22772.599275112152,\n", - " 22772.599275112152],\n", - " [22565.0, 22565.0, 22679.985550642014, 22679.985550642014],\n", - " [23315.0, 23315.0, 23325.0, 23325.0],\n", - " [23395.0, 23395.0, 23405.0, 23405.0],\n", - " [23385.0, 23385.0, 23400.0, 23400.0],\n", - " [23375.0, 23375.0, 23392.5, 23392.5],\n", - " [23365.0, 23365.0, 23383.75, 23383.75],\n", - " [23435.0, 23435.0, 23445.0, 23445.0],\n", - " [23425.0, 23425.0, 23440.0, 23440.0],\n", - " [23465.0, 23465.0, 23475.0, 23475.0],\n", - " [23485.0, 23485.0, 23495.0, 23495.0],\n", - " [23525.0, 23525.0, 23535.0, 23535.0],\n", - " [23515.0, 23515.0, 23530.0, 23530.0],\n", - " [23545.0, 23545.0, 23555.0, 23555.0],\n", - " [23615.0, 23615.0, 23625.0, 23625.0],\n", - " [23605.0, 23605.0, 23620.0, 23620.0],\n", - " [23595.0, 23595.0, 23612.5, 23612.5],\n", - " [23635.0, 23635.0, 23645.0, 23645.0],\n", - " [23675.0, 23675.0, 23685.0, 23685.0],\n", - " [23665.0, 23665.0, 23680.0, 23680.0],\n", - " [23655.0, 23655.0, 23672.5, 23672.5],\n", - " [23640.0, 23640.0, 23663.75, 23663.75],\n", - " [23755.0, 23755.0, 23765.0, 23765.0],\n", - " [23745.0, 23745.0, 23760.0, 23760.0],\n", - " [23735.0, 23735.0, 23752.5, 23752.5],\n", - " [23725.0, 23725.0, 23743.75, 23743.75],\n", - " [23715.0, 23715.0, 23734.375, 23734.375],\n", - " [23705.0, 23705.0, 23724.6875, 23724.6875],\n", - " [23695.0, 23695.0, 23714.84375, 23714.84375],\n", - " [23775.0, 23775.0, 23785.0, 23785.0],\n", - " [23795.0, 23795.0, 23805.0, 23805.0],\n", - " [23815.0, 23815.0, 23825.0, 23825.0],\n", - " [23800.0, 23800.0, 23820.0, 23820.0],\n", - " [23835.0, 23835.0, 23845.0, 23845.0],\n", - " [23810.0, 23810.0, 23840.0, 23840.0],\n", - " [23865.0, 23865.0, 23875.0, 23875.0],\n", - " [23895.0, 23895.0, 23905.0, 23905.0],\n", - " [23885.0, 23885.0, 23900.0, 23900.0],\n", - " [23915.0, 23915.0, 23925.0, 23925.0],\n", - " [23935.0, 23935.0, 23945.0, 23945.0],\n", - " [23920.0, 23920.0, 23940.0, 23940.0],\n", - " [23892.5, 23892.5, 23930.0, 23930.0],\n", - " [23870.0, 23870.0, 23911.25, 23911.25],\n", - " [23855.0, 23855.0, 23890.625, 23890.625],\n", - " [23965.0, 23965.0, 23975.0, 23975.0],\n", - " [23955.0, 23955.0, 23970.0, 23970.0],\n", - " [23985.0, 23985.0, 23995.0, 23995.0],\n", - " [24015.0, 24015.0, 24025.0, 24025.0],\n", - " [24045.0, 24045.0, 24055.0, 24055.0],\n", - " [24035.0, 24035.0, 24050.0, 24050.0],\n", - " [24020.0, 24020.0, 24042.5, 24042.5],\n", - " [24005.0, 24005.0, 24031.25, 24031.25],\n", - " [23990.0, 23990.0, 24018.125, 24018.125],\n", - " [23962.5, 23962.5, 24004.0625, 24004.0625],\n", - " [23872.8125, 23872.8125, 23983.28125, 23983.28125],\n", - " [23825.0, 23825.0, 23928.046875, 23928.046875],\n", - " [23780.0, 23780.0, 23876.5234375, 23876.5234375],\n", - " [23704.921875, 23704.921875, 23828.26171875, 23828.26171875],\n", - " [23651.875, 23651.875, 23766.591796875, 23766.591796875],\n", - " [24075.0, 24075.0, 24085.0, 24085.0],\n", - " [24065.0, 24065.0, 24080.0, 24080.0],\n", - " [24105.0, 24105.0, 24115.0, 24115.0],\n", - " [24095.0, 24095.0, 24110.0, 24110.0],\n", - " [24125.0, 24125.0, 24135.0, 24135.0],\n", - " [24145.0, 24145.0, 24155.0, 24155.0],\n", - " [24130.0, 24130.0, 24150.0, 24150.0],\n", - " [24102.5, 24102.5, 24140.0, 24140.0],\n", - " [24072.5, 24072.5, 24121.25, 24121.25],\n", - " [23709.2333984375, 23709.2333984375, 24096.875, 24096.875],\n", - " [23603.75, 23603.75, 23903.05419921875, 23903.05419921875],\n", - " [23585.0, 23585.0, 23753.402099609375, 23753.402099609375],\n", - " [23575.0, 23575.0, 23669.201049804688, 23669.201049804688],\n", - " [23565.0, 23565.0, 23622.100524902344, 23622.100524902344],\n", - " [23550.0, 23550.0, 23593.550262451172, 23593.550262451172],\n", - " [23522.5, 23522.5, 23571.775131225586, 23571.775131225586],\n", - " [23505.0, 23505.0, 23547.137565612793, 23547.137565612793],\n", - " [23490.0, 23490.0, 23526.068782806396, 23526.068782806396],\n", - " [24215.0, 24215.0, 24225.0, 24225.0],\n", - " [24255.0, 24255.0, 24265.0, 24265.0],\n", - " [24245.0, 24245.0, 24260.0, 24260.0],\n", - " [24295.0, 24295.0, 24305.0, 24305.0],\n", - " [24285.0, 24285.0, 24300.0, 24300.0],\n", - " [24275.0, 24275.0, 24292.5, 24292.5],\n", - " [24252.5, 24252.5, 24283.75, 24283.75],\n", - " [24235.0, 24235.0, 24268.125, 24268.125],\n", - " [24220.0, 24220.0, 24251.5625, 24251.5625],\n", - " [24205.0, 24205.0, 24235.78125, 24235.78125],\n", - " [24195.0, 24195.0, 24220.390625, 24220.390625],\n", - " [24185.0, 24185.0, 24207.6953125, 24207.6953125],\n", - " [24175.0, 24175.0, 24196.34765625, 24196.34765625],\n", - " [24165.0, 24165.0, 24185.673828125, 24185.673828125],\n", - " [23508.0343914032, 23508.0343914032, 24175.3369140625, 24175.3369140625],\n", - " [23470.0, 23470.0, 23841.68565273285, 23841.68565273285],\n", - " [23455.0, 23455.0, 23655.842826366425, 23655.842826366425],\n", - " [23432.5, 23432.5, 23555.421413183212, 23555.421413183212],\n", - " [23415.0, 23415.0, 23493.960706591606, 23493.960706591606],\n", - " [23374.375, 23374.375, 23454.480353295803, 23454.480353295803],\n", - " [23355.0, 23355.0, 23414.4276766479, 23414.4276766479],\n", - " [23345.0, 23345.0, 23384.71383832395, 23384.71383832395],\n", - " [23335.0, 23335.0, 23364.856919161975, 23364.856919161975],\n", - " [23320.0, 23320.0, 23349.928459580988, 23349.928459580988],\n", - " [22622.492775321007,\n", - " 22622.492775321007,\n", - " 23334.964229790494,\n", - " 23334.964229790494],\n", - " [22555.0, 22555.0, 22978.72850255575, 22978.72850255575],\n", - " [22545.0, 22545.0, 22766.864251277875, 22766.864251277875],\n", - " [24325.0, 24325.0, 24335.0, 24335.0],\n", - " [24315.0, 24315.0, 24330.0, 24330.0],\n", - " [24375.0, 24375.0, 24385.0, 24385.0],\n", - " [24365.0, 24365.0, 24380.0, 24380.0],\n", - " [24395.0, 24395.0, 24405.0, 24405.0],\n", - " [24372.5, 24372.5, 24400.0, 24400.0],\n", - " [24355.0, 24355.0, 24386.25, 24386.25],\n", - " [24345.0, 24345.0, 24370.625, 24370.625],\n", - " [24455.0, 24455.0, 24465.0, 24465.0],\n", - " [24445.0, 24445.0, 24460.0, 24460.0],\n", - " [24435.0, 24435.0, 24452.5, 24452.5],\n", - " [24425.0, 24425.0, 24443.75, 24443.75],\n", - " [24485.0, 24485.0, 24495.0, 24495.0],\n", - " [24525.0, 24525.0, 24535.0, 24535.0],\n", - " [24515.0, 24515.0, 24530.0, 24530.0],\n", - " [24505.0, 24505.0, 24522.5, 24522.5],\n", - " [24490.0, 24490.0, 24513.75, 24513.75],\n", - " [24595.0, 24595.0, 24605.0, 24605.0],\n", - " [24585.0, 24585.0, 24600.0, 24600.0],\n", - " [24575.0, 24575.0, 24592.5, 24592.5],\n", - " [24615.0, 24615.0, 24625.0, 24625.0],\n", - " [24583.75, 24583.75, 24620.0, 24620.0],\n", - " [24565.0, 24565.0, 24601.875, 24601.875],\n", - " [24555.0, 24555.0, 24583.4375, 24583.4375],\n", - " [24545.0, 24545.0, 24569.21875, 24569.21875],\n", - " [24501.875, 24501.875, 24557.109375, 24557.109375],\n", - " [24475.0, 24475.0, 24529.4921875, 24529.4921875],\n", - " [24434.375, 24434.375, 24502.24609375, 24502.24609375],\n", - " [24415.0, 24415.0, 24468.310546875, 24468.310546875],\n", - " [24635.0, 24635.0, 24645.0, 24645.0],\n", - " [24665.0, 24665.0, 24675.0, 24675.0],\n", - " [24725.0, 24725.0, 24735.0, 24735.0],\n", - " [24715.0, 24715.0, 24730.0, 24730.0],\n", - " [24705.0, 24705.0, 24722.5, 24722.5],\n", - " [24695.0, 24695.0, 24713.75, 24713.75],\n", - " [24685.0, 24685.0, 24704.375, 24704.375],\n", - " [24745.0, 24745.0, 24755.0, 24755.0],\n", - " [24694.6875, 24694.6875, 24750.0, 24750.0],\n", - " [24670.0, 24670.0, 24722.34375, 24722.34375],\n", - " [24655.0, 24655.0, 24696.171875, 24696.171875],\n", - " [24640.0, 24640.0, 24675.5859375, 24675.5859375],\n", - " [24785.0, 24785.0, 24795.0, 24795.0],\n", - " [24775.0, 24775.0, 24790.0, 24790.0],\n", - " [24765.0, 24765.0, 24782.5, 24782.5],\n", - " [24845.0, 24845.0, 24855.0, 24855.0],\n", - " [24835.0, 24835.0, 24850.0, 24850.0],\n", - " [24865.0, 24865.0, 24875.0, 24875.0],\n", - " [24842.5, 24842.5, 24870.0, 24870.0],\n", - " [24825.0, 24825.0, 24856.25, 24856.25],\n", - " [24815.0, 24815.0, 24840.625, 24840.625],\n", - " [24935.0, 24935.0, 24945.0, 24945.0],\n", - " [24925.0, 24925.0, 24940.0, 24940.0],\n", - " [24915.0, 24915.0, 24932.5, 24932.5],\n", - " [24955.0, 24955.0, 24965.0, 24965.0],\n", - " [24923.75, 24923.75, 24960.0, 24960.0],\n", - " [24905.0, 24905.0, 24941.875, 24941.875],\n", - " [24985.0, 24985.0, 24995.0, 24995.0],\n", - " [24975.0, 24975.0, 24990.0, 24990.0],\n", - " [24923.4375, 24923.4375, 24982.5, 24982.5],\n", - " [24895.0, 24895.0, 24952.96875, 24952.96875],\n", - " [24885.0, 24885.0, 24923.984375, 24923.984375],\n", - " [24827.8125, 24827.8125, 24904.4921875, 24904.4921875],\n", - " [24805.0, 24805.0, 24866.15234375, 24866.15234375],\n", - " [25025.0, 25025.0, 25035.0, 25035.0],\n", - " [25015.0, 25015.0, 25030.0, 25030.0],\n", - " [25055.0, 25055.0, 25065.0, 25065.0],\n", - " [25045.0, 25045.0, 25060.0, 25060.0],\n", - " [25095.0, 25095.0, 25105.0, 25105.0],\n", - " [25085.0, 25085.0, 25100.0, 25100.0],\n", - " [25115.0, 25115.0, 25125.0, 25125.0],\n", - " [25165.0, 25165.0, 25175.0, 25175.0],\n", - " [25155.0, 25155.0, 25170.0, 25170.0],\n", - " [25145.0, 25145.0, 25162.5, 25162.5],\n", - " [25135.0, 25135.0, 25153.75, 25153.75],\n", - " [25120.0, 25120.0, 25144.375, 25144.375],\n", - " [25092.5, 25092.5, 25132.1875, 25132.1875],\n", - " [25075.0, 25075.0, 25112.34375, 25112.34375],\n", - " [25052.5, 25052.5, 25093.671875, 25093.671875],\n", - " [25022.5, 25022.5, 25073.0859375, 25073.0859375],\n", - " [25005.0, 25005.0, 25047.79296875, 25047.79296875],\n", - " [25195.0, 25195.0, 25205.0, 25205.0],\n", - " [25185.0, 25185.0, 25200.0, 25200.0],\n", - " [25026.396484375, 25026.396484375, 25192.5, 25192.5],\n", - " [24835.576171875, 24835.576171875, 25109.4482421875, 25109.4482421875],\n", - " [24773.75, 24773.75, 24972.51220703125, 24972.51220703125],\n", - " [24657.79296875, 24657.79296875, 24873.131103515625, 24873.131103515625],\n", - " [24441.6552734375, 24441.6552734375, 24765.462036132812, 24765.462036132812],\n", - " [24357.8125, 24357.8125, 24603.558654785156, 24603.558654785156],\n", - " [25225.0, 25225.0, 25235.0, 25235.0],\n", - " [25215.0, 25215.0, 25230.0, 25230.0],\n", - " [25275.0, 25275.0, 25285.0, 25285.0],\n", - " [25265.0, 25265.0, 25280.0, 25280.0],\n", - " [25295.0, 25295.0, 25305.0, 25305.0],\n", - " [25272.5, 25272.5, 25300.0, 25300.0],\n", - " [25315.0, 25315.0, 25325.0, 25325.0],\n", - " [25345.0, 25345.0, 25355.0, 25355.0],\n", - " [25335.0, 25335.0, 25350.0, 25350.0],\n", - " [25320.0, 25320.0, 25342.5, 25342.5],\n", - " [25286.25, 25286.25, 25331.25, 25331.25],\n", - " [25435.0, 25435.0, 25445.0, 25445.0],\n", - " [25475.0, 25475.0, 25485.0, 25485.0],\n", - " [25535.0, 25535.0, 25545.0, 25545.0],\n", - " [25525.0, 25525.0, 25540.0, 25540.0],\n", - " [25515.0, 25515.0, 25532.5, 25532.5],\n", - " [25505.0, 25505.0, 25523.75, 25523.75],\n", - " [25495.0, 25495.0, 25514.375, 25514.375],\n", - " [25480.0, 25480.0, 25504.6875, 25504.6875],\n", - " [25465.0, 25465.0, 25492.34375, 25492.34375],\n", - " [25455.0, 25455.0, 25478.671875, 25478.671875],\n", - " [25565.0, 25565.0, 25575.0, 25575.0],\n", - " [25555.0, 25555.0, 25570.0, 25570.0],\n", - " [25595.0, 25595.0, 25605.0, 25605.0],\n", - " [25585.0, 25585.0, 25600.0, 25600.0],\n", - " [25562.5, 25562.5, 25592.5, 25592.5],\n", - " [25466.8359375, 25466.8359375, 25577.5, 25577.5],\n", - " [25440.0, 25440.0, 25522.16796875, 25522.16796875],\n", - " [25425.0, 25425.0, 25481.083984375, 25481.083984375],\n", - " [25645.0, 25645.0, 25655.0, 25655.0],\n", - " [25635.0, 25635.0, 25650.0, 25650.0],\n", - " [25665.0, 25665.0, 25675.0, 25675.0],\n", - " [25725.0, 25725.0, 25735.0, 25735.0],\n", - " [25715.0, 25715.0, 25730.0, 25730.0],\n", - " [25745.0, 25745.0, 25755.0, 25755.0],\n", - " [25765.0, 25765.0, 25775.0, 25775.0],\n", - " [25750.0, 25750.0, 25770.0, 25770.0],\n", - " [25722.5, 25722.5, 25760.0, 25760.0],\n", - " [25705.0, 25705.0, 25741.25, 25741.25],\n", - " [25695.0, 25695.0, 25723.125, 25723.125],\n", - " [25685.0, 25685.0, 25709.0625, 25709.0625],\n", - " [25670.0, 25670.0, 25697.03125, 25697.03125],\n", - " [25642.5, 25642.5, 25683.515625, 25683.515625],\n", - " [25625.0, 25625.0, 25663.0078125, 25663.0078125],\n", - " [25795.0, 25795.0, 25805.0, 25805.0],\n", - " [25785.0, 25785.0, 25800.0, 25800.0],\n", - " [25644.00390625, 25644.00390625, 25792.5, 25792.5],\n", - " [25615.0, 25615.0, 25718.251953125, 25718.251953125],\n", - " [25453.0419921875, 25453.0419921875, 25666.6259765625, 25666.6259765625],\n", - " [25415.0, 25415.0, 25559.833984375, 25559.833984375],\n", - " [25405.0, 25405.0, 25487.4169921875, 25487.4169921875],\n", - " [25825.0, 25825.0, 25835.0, 25835.0],\n", - " [25815.0, 25815.0, 25830.0, 25830.0],\n", - " [25885.0, 25885.0, 25895.0, 25895.0],\n", - " [25875.0, 25875.0, 25890.0, 25890.0],\n", - " [25865.0, 25865.0, 25882.5, 25882.5],\n", - " [25855.0, 25855.0, 25873.75, 25873.75],\n", - " [25845.0, 25845.0, 25864.375, 25864.375],\n", - " [25822.5, 25822.5, 25854.6875, 25854.6875],\n", - " [25446.20849609375, 25446.20849609375, 25838.59375, 25838.59375],\n", - " [25395.0, 25395.0, 25642.401123046875, 25642.401123046875],\n", - " [25385.0, 25385.0, 25518.700561523438, 25518.700561523438],\n", - " [25375.0, 25375.0, 25451.85028076172, 25451.85028076172],\n", - " [25365.0, 25365.0, 25413.42514038086, 25413.42514038086],\n", - " [25915.0, 25915.0, 25925.0, 25925.0],\n", - " [25955.0, 25955.0, 25965.0, 25965.0],\n", - " [25945.0, 25945.0, 25960.0, 25960.0],\n", - " [25935.0, 25935.0, 25952.5, 25952.5],\n", - " [25975.0, 25975.0, 25985.0, 25985.0],\n", - " [25943.75, 25943.75, 25980.0, 25980.0],\n", - " [26015.0, 26015.0, 26025.0, 26025.0],\n", - " [26005.0, 26005.0, 26020.0, 26020.0],\n", - " [25995.0, 25995.0, 26012.5, 26012.5],\n", - " [25961.875, 25961.875, 26003.75, 26003.75],\n", - " [25920.0, 25920.0, 25982.8125, 25982.8125],\n", - " [25905.0, 25905.0, 25951.40625, 25951.40625],\n", - " [25389.21257019043, 25389.21257019043, 25928.203125, 25928.203125],\n", - " [25308.75, 25308.75, 25658.707847595215, 25658.707847595215],\n", - " [25255.0, 25255.0, 25483.728923797607, 25483.728923797607],\n", - " [25245.0, 25245.0, 25369.364461898804, 25369.364461898804],\n", - " [25222.5, 25222.5, 25307.182230949402, 25307.182230949402],\n", - " [24480.685577392578, 24480.685577392578, 25264.8411154747, 25264.8411154747],\n", - " [24322.5, 24322.5, 24872.76334643364, 24872.76334643364],\n", - " [22655.932125638938,\n", - " 22655.932125638938,\n", - " 24597.63167321682,\n", - " 24597.63167321682],\n", - " [21956.796299833804,\n", - " 21956.796299833804,\n", - " 23626.78189942788,\n", - " 23626.78189942788],\n", - " [26035.0, 26035.0, 26045.0, 26045.0],\n", - " [26065.0, 26065.0, 26075.0, 26075.0],\n", - " [26055.0, 26055.0, 26070.0, 26070.0],\n", - " [26135.0, 26135.0, 26145.0, 26145.0],\n", - " [26125.0, 26125.0, 26140.0, 26140.0],\n", - " [26115.0, 26115.0, 26132.5, 26132.5],\n", - " [26105.0, 26105.0, 26123.75, 26123.75],\n", - " [26095.0, 26095.0, 26114.375, 26114.375],\n", - " [26085.0, 26085.0, 26104.6875, 26104.6875],\n", - " [26165.0, 26165.0, 26175.0, 26175.0],\n", - " [26155.0, 26155.0, 26170.0, 26170.0],\n", - " [26094.84375, 26094.84375, 26162.5, 26162.5],\n", - " [26215.0, 26215.0, 26225.0, 26225.0],\n", - " [26205.0, 26205.0, 26220.0, 26220.0],\n", - " [26195.0, 26195.0, 26212.5, 26212.5],\n", - " [26235.0, 26235.0, 26245.0, 26245.0],\n", - " [26265.0, 26265.0, 26275.0, 26275.0],\n", - " [26255.0, 26255.0, 26270.0, 26270.0],\n", - " [26240.0, 26240.0, 26262.5, 26262.5],\n", - " [26203.75, 26203.75, 26251.25, 26251.25],\n", - " [26185.0, 26185.0, 26227.5, 26227.5],\n", - " [26295.0, 26295.0, 26305.0, 26305.0],\n", - " [26315.0, 26315.0, 26325.0, 26325.0],\n", - " [26345.0, 26345.0, 26355.0, 26355.0],\n", - " [26335.0, 26335.0, 26350.0, 26350.0],\n", - " [26320.0, 26320.0, 26342.5, 26342.5],\n", - " [26300.0, 26300.0, 26331.25, 26331.25],\n", - " [26285.0, 26285.0, 26315.625, 26315.625],\n", - " [26415.0, 26415.0, 26425.0, 26425.0],\n", - " [26405.0, 26405.0, 26420.0, 26420.0],\n", - " [26395.0, 26395.0, 26412.5, 26412.5],\n", - " [26385.0, 26385.0, 26403.75, 26403.75],\n", - " [26375.0, 26375.0, 26394.375, 26394.375],\n", - " [26365.0, 26365.0, 26384.6875, 26384.6875],\n", - " [26455.0, 26455.0, 26465.0, 26465.0],\n", - " [26445.0, 26445.0, 26460.0, 26460.0],\n", - " [26505.0, 26505.0, 26515.0, 26515.0],\n", - " [26525.0, 26525.0, 26535.0, 26535.0],\n", - " [26545.0, 26545.0, 26555.0, 26555.0],\n", - " [26530.0, 26530.0, 26550.0, 26550.0],\n", - " [26565.0, 26565.0, 26575.0, 26575.0],\n", - " [26605.0, 26605.0, 26615.0, 26615.0],\n", - " [26595.0, 26595.0, 26610.0, 26610.0],\n", - " [26585.0, 26585.0, 26602.5, 26602.5],\n", - " [26570.0, 26570.0, 26593.75, 26593.75],\n", - " [26540.0, 26540.0, 26581.875, 26581.875],\n", - " [26510.0, 26510.0, 26560.9375, 26560.9375],\n", - " [26495.0, 26495.0, 26535.46875, 26535.46875],\n", - " [26485.0, 26485.0, 26515.234375, 26515.234375],\n", - " [26625.0, 26625.0, 26635.0, 26635.0],\n", - " [26500.1171875, 26500.1171875, 26630.0, 26630.0],\n", - " [26655.0, 26655.0, 26665.0, 26665.0],\n", - " [26675.0, 26675.0, 26685.0, 26685.0],\n", - " [26705.0, 26705.0, 26715.0, 26715.0],\n", - " [26735.0, 26735.0, 26745.0, 26745.0],\n", - " [26725.0, 26725.0, 26740.0, 26740.0],\n", - " [26765.0, 26765.0, 26775.0, 26775.0],\n", - " [26755.0, 26755.0, 26770.0, 26770.0],\n", - " [26732.5, 26732.5, 26762.5, 26762.5],\n", - " [26710.0, 26710.0, 26747.5, 26747.5],\n", - " [26695.0, 26695.0, 26728.75, 26728.75],\n", - " [26680.0, 26680.0, 26711.875, 26711.875],\n", - " [26785.0, 26785.0, 26795.0, 26795.0],\n", - " [26695.9375, 26695.9375, 26790.0, 26790.0],\n", - " [26660.0, 26660.0, 26742.96875, 26742.96875],\n", - " [26645.0, 26645.0, 26701.484375, 26701.484375],\n", - " [26565.05859375, 26565.05859375, 26673.2421875, 26673.2421875],\n", - " [26835.0, 26835.0, 26845.0, 26845.0],\n", - " [26825.0, 26825.0, 26840.0, 26840.0],\n", - " [26855.0, 26855.0, 26865.0, 26865.0],\n", - " [26832.5, 26832.5, 26860.0, 26860.0],\n", - " [26885.0, 26885.0, 26895.0, 26895.0],\n", - " [26915.0, 26915.0, 26925.0, 26925.0],\n", - " [26905.0, 26905.0, 26920.0, 26920.0],\n", - " [26890.0, 26890.0, 26912.5, 26912.5],\n", - " [26875.0, 26875.0, 26901.25, 26901.25],\n", - " [26935.0, 26935.0, 26945.0, 26945.0],\n", - " [26975.0, 26975.0, 26985.0, 26985.0],\n", - " [26965.0, 26965.0, 26980.0, 26980.0],\n", - " [26955.0, 26955.0, 26972.5, 26972.5],\n", - " [26940.0, 26940.0, 26963.75, 26963.75],\n", - " [27005.0, 27005.0, 27015.0, 27015.0],\n", - " [26995.0, 26995.0, 27010.0, 27010.0],\n", - " [27025.0, 27025.0, 27035.0, 27035.0],\n", - " [27065.0, 27065.0, 27075.0, 27075.0],\n", - " [27055.0, 27055.0, 27070.0, 27070.0],\n", - " [27045.0, 27045.0, 27062.5, 27062.5],\n", - " [27030.0, 27030.0, 27053.75, 27053.75],\n", - " [27002.5, 27002.5, 27041.875, 27041.875],\n", - " [26951.875, 26951.875, 27022.1875, 27022.1875],\n", - " [27085.0, 27085.0, 27095.0, 27095.0],\n", - " [26987.03125, 26987.03125, 27090.0, 27090.0],\n", - " [26888.125, 26888.125, 27038.515625, 27038.515625],\n", - " [26846.25, 26846.25, 26963.3203125, 26963.3203125],\n", - " [26815.0, 26815.0, 26904.78515625, 26904.78515625],\n", - " [26805.0, 26805.0, 26859.892578125, 26859.892578125],\n", - " [26619.150390625, 26619.150390625, 26832.4462890625, 26832.4462890625],\n", - " [26475.0, 26475.0, 26725.79833984375, 26725.79833984375],\n", - " [26452.5, 26452.5, 26600.399169921875, 26600.399169921875],\n", - " [27125.0, 27125.0, 27135.0, 27135.0],\n", - " [27115.0, 27115.0, 27130.0, 27130.0],\n", - " [27155.0, 27155.0, 27165.0, 27165.0],\n", - " [27145.0, 27145.0, 27160.0, 27160.0],\n", - " [27122.5, 27122.5, 27152.5, 27152.5],\n", - " [27105.0, 27105.0, 27137.5, 27137.5],\n", - " [26526.449584960938, 26526.449584960938, 27121.25, 27121.25],\n", - " [26435.0, 26435.0, 26823.84979248047, 26823.84979248047],\n", - " [27185.0, 27185.0, 27195.0, 27195.0],\n", - " [27215.0, 27215.0, 27225.0, 27225.0],\n", - " [27205.0, 27205.0, 27220.0, 27220.0],\n", - " [27190.0, 27190.0, 27212.5, 27212.5],\n", - " [27175.0, 27175.0, 27201.25, 27201.25],\n", - " [26629.424896240234, 26629.424896240234, 27188.125, 27188.125],\n", - " [27265.0, 27265.0, 27275.0, 27275.0],\n", - " [27285.0, 27285.0, 27295.0, 27295.0],\n", - " [27270.0, 27270.0, 27290.0, 27290.0],\n", - " [27345.0, 27345.0, 27355.0, 27355.0],\n", - " [27335.0, 27335.0, 27350.0, 27350.0],\n", - " [27415.0, 27415.0, 27425.0, 27425.0],\n", - " [27405.0, 27405.0, 27420.0, 27420.0],\n", - " [27395.0, 27395.0, 27412.5, 27412.5],\n", - " [27385.0, 27385.0, 27403.75, 27403.75],\n", - " [27375.0, 27375.0, 27394.375, 27394.375],\n", - " [27365.0, 27365.0, 27384.6875, 27384.6875],\n", - " [27342.5, 27342.5, 27374.84375, 27374.84375],\n", - " [27325.0, 27325.0, 27358.671875, 27358.671875],\n", - " [27465.0, 27465.0, 27475.0, 27475.0],\n", - " [27455.0, 27455.0, 27470.0, 27470.0],\n", - " [27505.0, 27505.0, 27515.0, 27515.0],\n", - " [27495.0, 27495.0, 27510.0, 27510.0],\n", - " [27485.0, 27485.0, 27502.5, 27502.5],\n", - " [27462.5, 27462.5, 27493.75, 27493.75],\n", - " [27445.0, 27445.0, 27478.125, 27478.125],\n", - " [27435.0, 27435.0, 27461.5625, 27461.5625],\n", - " [27341.8359375, 27341.8359375, 27448.28125, 27448.28125],\n", - " [27315.0, 27315.0, 27395.05859375, 27395.05859375],\n", - " [27305.0, 27305.0, 27355.029296875, 27355.029296875],\n", - " [27280.0, 27280.0, 27330.0146484375, 27330.0146484375],\n", - " [27525.0, 27525.0, 27535.0, 27535.0],\n", - " [27545.0, 27545.0, 27555.0, 27555.0],\n", - " [27565.0, 27565.0, 27575.0, 27575.0],\n", - " [27585.0, 27585.0, 27595.0, 27595.0],\n", - " [27570.0, 27570.0, 27590.0, 27590.0],\n", - " [27605.0, 27605.0, 27615.0, 27615.0],\n", - " [27655.0, 27655.0, 27665.0, 27665.0],\n", - " [27645.0, 27645.0, 27660.0, 27660.0],\n", - " [27635.0, 27635.0, 27652.5, 27652.5],\n", - " [27625.0, 27625.0, 27643.75, 27643.75],\n", - " [27610.0, 27610.0, 27634.375, 27634.375],\n", - " [27580.0, 27580.0, 27622.1875, 27622.1875],\n", - " [27550.0, 27550.0, 27601.09375, 27601.09375],\n", - " [27530.0, 27530.0, 27575.546875, 27575.546875],\n", - " [27305.00732421875, 27305.00732421875, 27552.7734375, 27552.7734375],\n", - " [27255.0, 27255.0, 27428.890380859375, 27428.890380859375],\n", - " [27715.0, 27715.0, 27725.0, 27725.0],\n", - " [27735.0, 27735.0, 27745.0, 27745.0],\n", - " [27720.0, 27720.0, 27740.0, 27740.0],\n", - " [27705.0, 27705.0, 27730.0, 27730.0],\n", - " [27765.0, 27765.0, 27775.0, 27775.0],\n", - " [27785.0, 27785.0, 27795.0, 27795.0],\n", - " [27770.0, 27770.0, 27790.0, 27790.0],\n", - " [27755.0, 27755.0, 27780.0, 27780.0],\n", - " [27717.5, 27717.5, 27767.5, 27767.5],\n", - " [27815.0, 27815.0, 27825.0, 27825.0],\n", - " [27805.0, 27805.0, 27820.0, 27820.0],\n", - " [27742.5, 27742.5, 27812.5, 27812.5],\n", - " [27695.0, 27695.0, 27777.5, 27777.5],\n", - " [27685.0, 27685.0, 27736.25, 27736.25],\n", - " [27875.0, 27875.0, 27885.0, 27885.0],\n", - " [27895.0, 27895.0, 27905.0, 27905.0],\n", - " [27915.0, 27915.0, 27925.0, 27925.0],\n", - " [27965.0, 27965.0, 27975.0, 27975.0],\n", - " [27955.0, 27955.0, 27970.0, 27970.0],\n", - " [27945.0, 27945.0, 27962.5, 27962.5],\n", - " [28005.0, 28005.0, 28015.0, 28015.0],\n", - " [28035.0, 28035.0, 28045.0, 28045.0],\n", - " [28025.0, 28025.0, 28040.0, 28040.0],\n", - " [28010.0, 28010.0, 28032.5, 28032.5],\n", - " [27995.0, 27995.0, 28021.25, 28021.25],\n", - " [27985.0, 27985.0, 28008.125, 28008.125],\n", - " [27953.75, 27953.75, 27996.5625, 27996.5625],\n", - " [28065.0, 28065.0, 28075.0, 28075.0],\n", - " [28055.0, 28055.0, 28070.0, 28070.0],\n", - " [28095.0, 28095.0, 28105.0, 28105.0],\n", - " [28085.0, 28085.0, 28100.0, 28100.0],\n", - " [28062.5, 28062.5, 28092.5, 28092.5],\n", - " [28115.0, 28115.0, 28125.0, 28125.0],\n", - " [28135.0, 28135.0, 28145.0, 28145.0],\n", - " [28120.0, 28120.0, 28140.0, 28140.0],\n", - " [28077.5, 28077.5, 28130.0, 28130.0],\n", - " [27975.15625, 27975.15625, 28103.75, 28103.75],\n", - " [27935.0, 27935.0, 28039.453125, 28039.453125],\n", - " [27920.0, 27920.0, 27987.2265625, 27987.2265625],\n", - " [27900.0, 27900.0, 27953.61328125, 27953.61328125],\n", - " [27880.0, 27880.0, 27926.806640625, 27926.806640625],\n", - " [27865.0, 27865.0, 27903.4033203125, 27903.4033203125],\n", - " [28165.0, 28165.0, 28175.0, 28175.0],\n", - " [28155.0, 28155.0, 28170.0, 28170.0],\n", - " [28205.0, 28205.0, 28215.0, 28215.0],\n", - " [28195.0, 28195.0, 28210.0, 28210.0],\n", - " [28185.0, 28185.0, 28202.5, 28202.5],\n", - " [28225.0, 28225.0, 28235.0, 28235.0],\n", - " [28193.75, 28193.75, 28230.0, 28230.0],\n", - " [28162.5, 28162.5, 28211.875, 28211.875],\n", - " [27884.20166015625, 27884.20166015625, 28187.1875, 28187.1875],\n", - " [27855.0, 27855.0, 28035.694580078125, 28035.694580078125],\n", - " [27845.0, 27845.0, 27945.347290039062, 27945.347290039062],\n", - " [28265.0, 28265.0, 28275.0, 28275.0],\n", - " [28255.0, 28255.0, 28270.0, 28270.0],\n", - " [28245.0, 28245.0, 28262.5, 28262.5],\n", - " [28315.0, 28315.0, 28325.0, 28325.0],\n", - " [28305.0, 28305.0, 28320.0, 28320.0],\n", - " [28385.0, 28385.0, 28395.0, 28395.0],\n", - " [28375.0, 28375.0, 28390.0, 28390.0],\n", - " [28365.0, 28365.0, 28382.5, 28382.5],\n", - " [28355.0, 28355.0, 28373.75, 28373.75],\n", - " [28345.0, 28345.0, 28364.375, 28364.375],\n", - " [28335.0, 28335.0, 28354.6875, 28354.6875],\n", - " [28415.0, 28415.0, 28425.0, 28425.0],\n", - " [28445.0, 28445.0, 28455.0, 28455.0],\n", - " [28435.0, 28435.0, 28450.0, 28450.0],\n", - " [28475.0, 28475.0, 28485.0, 28485.0],\n", - " [28505.0, 28505.0, 28515.0, 28515.0],\n", - " [28545.0, 28545.0, 28555.0, 28555.0],\n", - " [28535.0, 28535.0, 28550.0, 28550.0],\n", - " [28525.0, 28525.0, 28542.5, 28542.5],\n", - " [28510.0, 28510.0, 28533.75, 28533.75],\n", - " [28595.0, 28595.0, 28605.0, 28605.0],\n", - " [28615.0, 28615.0, 28625.0, 28625.0],\n", - " [28635.0, 28635.0, 28645.0, 28645.0],\n", - " [28655.0, 28655.0, 28665.0, 28665.0],\n", - " [28640.0, 28640.0, 28660.0, 28660.0],\n", - " [28620.0, 28620.0, 28650.0, 28650.0],\n", - " [28695.0, 28695.0, 28705.0, 28705.0],\n", - " [28735.0, 28735.0, 28745.0, 28745.0],\n", - " [28725.0, 28725.0, 28740.0, 28740.0],\n", - " [28715.0, 28715.0, 28732.5, 28732.5],\n", - " [28700.0, 28700.0, 28723.75, 28723.75],\n", - " [28685.0, 28685.0, 28711.875, 28711.875],\n", - " [28675.0, 28675.0, 28698.4375, 28698.4375],\n", - " [28635.0, 28635.0, 28686.71875, 28686.71875],\n", - " [28765.0, 28765.0, 28775.0, 28775.0],\n", - " [28755.0, 28755.0, 28770.0, 28770.0],\n", - " [28660.859375, 28660.859375, 28762.5, 28762.5],\n", - " [28600.0, 28600.0, 28711.6796875, 28711.6796875],\n", - " [28585.0, 28585.0, 28655.83984375, 28655.83984375],\n", - " [28785.0, 28785.0, 28795.0, 28795.0],\n", - " [28620.419921875, 28620.419921875, 28790.0, 28790.0],\n", - " [28575.0, 28575.0, 28705.2099609375, 28705.2099609375],\n", - " [28565.0, 28565.0, 28640.10498046875, 28640.10498046875],\n", - " [28805.0, 28805.0, 28815.0, 28815.0],\n", - " [28602.552490234375, 28602.552490234375, 28810.0, 28810.0],\n", - " [28521.875, 28521.875, 28706.276245117188, 28706.276245117188],\n", - " [28495.0, 28495.0, 28614.075622558594, 28614.075622558594],\n", - " [28480.0, 28480.0, 28554.537811279297, 28554.537811279297],\n", - " [28465.0, 28465.0, 28517.26890563965, 28517.26890563965],\n", - " [28442.5, 28442.5, 28491.134452819824, 28491.134452819824],\n", - " [28855.0, 28855.0, 28865.0, 28865.0],\n", - " [28845.0, 28845.0, 28860.0, 28860.0],\n", - " [28835.0, 28835.0, 28852.5, 28852.5],\n", - " [28825.0, 28825.0, 28843.75, 28843.75],\n", - " [28466.817226409912, 28466.817226409912, 28834.375, 28834.375],\n", - " [28420.0, 28420.0, 28650.596113204956, 28650.596113204956],\n", - " [28405.0, 28405.0, 28535.298056602478, 28535.298056602478],\n", - " [28344.84375, 28344.84375, 28470.14902830124, 28470.14902830124],\n", - " [28312.5, 28312.5, 28407.49638915062, 28407.49638915062],\n", - " [28295.0, 28295.0, 28359.99819457531, 28359.99819457531],\n", - " [28905.0, 28905.0, 28915.0, 28915.0],\n", - " [28925.0, 28925.0, 28935.0, 28935.0],\n", - " [28945.0, 28945.0, 28955.0, 28955.0],\n", - " [28930.0, 28930.0, 28950.0, 28950.0],\n", - " [28910.0, 28910.0, 28940.0, 28940.0],\n", - " [28895.0, 28895.0, 28925.0, 28925.0],\n", - " [28885.0, 28885.0, 28910.0, 28910.0],\n", - " [28875.0, 28875.0, 28897.5, 28897.5],\n", - " [28327.499097287655, 28327.499097287655, 28886.25, 28886.25],\n", - " [28285.0, 28285.0, 28606.874548643827, 28606.874548643827],\n", - " [28965.0, 28965.0, 28975.0, 28975.0],\n", - " [29005.0, 29005.0, 29015.0, 29015.0],\n", - " [28995.0, 28995.0, 29010.0, 29010.0],\n", - " [28985.0, 28985.0, 29002.5, 29002.5],\n", - " [29025.0, 29025.0, 29035.0, 29035.0],\n", - " [29065.0, 29065.0, 29075.0, 29075.0],\n", - " [29085.0, 29085.0, 29095.0, 29095.0],\n", - " [29070.0, 29070.0, 29090.0, 29090.0],\n", - " [29055.0, 29055.0, 29080.0, 29080.0],\n", - " [29045.0, 29045.0, 29067.5, 29067.5],\n", - " [29030.0, 29030.0, 29056.25, 29056.25],\n", - " [28993.75, 28993.75, 29043.125, 29043.125],\n", - " [28970.0, 28970.0, 29018.4375, 29018.4375],\n", - " [28445.937274321914, 28445.937274321914, 28994.21875, 28994.21875],\n", - " [28253.75, 28253.75, 28720.078012160957, 28720.078012160957],\n", - " [27895.17364501953, 27895.17364501953, 28486.91400608048, 28486.91400608048],\n", - " [27835.0, 27835.0, 28191.043825550005, 28191.043825550005],\n", - " [27710.625, 27710.625, 28013.021912775002, 28013.021912775002],\n", - " [27675.0, 27675.0, 27861.8234563875, 27861.8234563875],\n", - " [29105.0, 29105.0, 29115.0, 29115.0],\n", - " [27768.41172819375, 27768.41172819375, 29110.0, 29110.0],\n", - " [27341.945190429688,\n", - " 27341.945190429688,\n", - " 28439.205864096875,\n", - " 28439.205864096875],\n", - " [27245.0, 27245.0, 27890.57552726328, 27890.57552726328],\n", - " [27235.0, 27235.0, 27567.78776363164, 27567.78776363164],\n", - " [26908.774948120117,\n", - " 26908.774948120117,\n", - " 27401.39388181582,\n", - " 27401.39388181582],\n", - " [26374.84375, 26374.84375, 27155.08441496797, 27155.08441496797],\n", - " [26300.3125, 26300.3125, 26764.964082483984, 26764.964082483984],\n", - " [26206.25, 26206.25, 26532.638291241994, 26532.638291241994],\n", - " [26128.671875, 26128.671875, 26369.444145620997, 26369.444145620997],\n", - " [26062.5, 26062.5, 26249.0580103105, 26249.0580103105],\n", - " [26040.0, 26040.0, 26155.77900515525, 26155.77900515525],\n", - " [22791.78909963084,\n", - " 22791.78909963084,\n", - " 26097.889502577626,\n", - " 26097.889502577626],\n", - " [29145.0, 29145.0, 29155.0, 29155.0],\n", - " [29135.0, 29135.0, 29150.0, 29150.0],\n", - " [29125.0, 29125.0, 29142.5, 29142.5],\n", - " [29205.0, 29205.0, 29215.0, 29215.0],\n", - " [29195.0, 29195.0, 29210.0, 29210.0],\n", - " [29185.0, 29185.0, 29202.5, 29202.5],\n", - " [29235.0, 29235.0, 29245.0, 29245.0],\n", - " [29225.0, 29225.0, 29240.0, 29240.0],\n", - " [29255.0, 29255.0, 29265.0, 29265.0],\n", - " [29232.5, 29232.5, 29260.0, 29260.0],\n", - " [29193.75, 29193.75, 29246.25, 29246.25],\n", - " [29285.0, 29285.0, 29295.0, 29295.0],\n", - " [29275.0, 29275.0, 29290.0, 29290.0],\n", - " [29220.0, 29220.0, 29282.5, 29282.5],\n", - " [29175.0, 29175.0, 29251.25, 29251.25],\n", - " [29325.0, 29325.0, 29335.0, 29335.0],\n", - " [29315.0, 29315.0, 29330.0, 29330.0],\n", - " [29355.0, 29355.0, 29365.0, 29365.0],\n", - " [29345.0, 29345.0, 29360.0, 29360.0],\n", - " [29322.5, 29322.5, 29352.5, 29352.5],\n", - " [29305.0, 29305.0, 29337.5, 29337.5],\n", - " [29213.125, 29213.125, 29321.25, 29321.25],\n", - " [29385.0, 29385.0, 29395.0, 29395.0],\n", - " [29375.0, 29375.0, 29390.0, 29390.0],\n", - " [29405.0, 29405.0, 29415.0, 29415.0],\n", - " [29382.5, 29382.5, 29410.0, 29410.0],\n", - " [29267.1875, 29267.1875, 29396.25, 29396.25],\n", - " [29165.0, 29165.0, 29331.71875, 29331.71875],\n", - " [29133.75, 29133.75, 29248.359375, 29248.359375],\n", - " [29445.0, 29445.0, 29455.0, 29455.0],\n", - " [29435.0, 29435.0, 29450.0, 29450.0],\n", - " [29425.0, 29425.0, 29442.5, 29442.5],\n", - " [29475.0, 29475.0, 29485.0, 29485.0],\n", - " [29465.0, 29465.0, 29480.0, 29480.0],\n", - " [29505.0, 29505.0, 29515.0, 29515.0],\n", - " [29495.0, 29495.0, 29510.0, 29510.0],\n", - " [29472.5, 29472.5, 29502.5, 29502.5],\n", - " [29525.0, 29525.0, 29535.0, 29535.0],\n", - " [29555.0, 29555.0, 29565.0, 29565.0],\n", - " [29595.0, 29595.0, 29605.0, 29605.0],\n", - " [29585.0, 29585.0, 29600.0, 29600.0],\n", - " [29575.0, 29575.0, 29592.5, 29592.5],\n", - " [29560.0, 29560.0, 29583.75, 29583.75],\n", - " [29545.0, 29545.0, 29571.875, 29571.875],\n", - " [29530.0, 29530.0, 29558.4375, 29558.4375],\n", - " [29487.5, 29487.5, 29544.21875, 29544.21875],\n", - " [29433.75, 29433.75, 29515.859375, 29515.859375],\n", - " [29655.0, 29655.0, 29665.0, 29665.0],\n", - " [29645.0, 29645.0, 29660.0, 29660.0],\n", - " [29635.0, 29635.0, 29652.5, 29652.5],\n", - " [29685.0, 29685.0, 29695.0, 29695.0],\n", - " [29675.0, 29675.0, 29690.0, 29690.0],\n", - " [29725.0, 29725.0, 29735.0, 29735.0],\n", - " [29715.0, 29715.0, 29730.0, 29730.0],\n", - " [29705.0, 29705.0, 29722.5, 29722.5],\n", - " [29682.5, 29682.5, 29713.75, 29713.75],\n", - " [29775.0, 29775.0, 29785.0, 29785.0],\n", - " [29765.0, 29765.0, 29780.0, 29780.0],\n", - " [29815.0, 29815.0, 29825.0, 29825.0],\n", - " [29805.0, 29805.0, 29820.0, 29820.0],\n", - " [29795.0, 29795.0, 29812.5, 29812.5],\n", - " [29772.5, 29772.5, 29803.75, 29803.75],\n", - " [29755.0, 29755.0, 29788.125, 29788.125],\n", - " [29845.0, 29845.0, 29855.0, 29855.0],\n", - " [29835.0, 29835.0, 29850.0, 29850.0],\n", - " [29895.0, 29895.0, 29905.0, 29905.0],\n", - " [29885.0, 29885.0, 29900.0, 29900.0],\n", - " [29875.0, 29875.0, 29892.5, 29892.5],\n", - " [29865.0, 29865.0, 29883.75, 29883.75],\n", - " [29842.5, 29842.5, 29874.375, 29874.375],\n", - " [29771.5625, 29771.5625, 29858.4375, 29858.4375],\n", - " [29945.0, 29945.0, 29955.0, 29955.0],\n", - " [29935.0, 29935.0, 29950.0, 29950.0],\n", - " [29925.0, 29925.0, 29942.5, 29942.5],\n", - " [29915.0, 29915.0, 29933.75, 29933.75],\n", - " [29815.0, 29815.0, 29924.375, 29924.375],\n", - " [29985.0, 29985.0, 29995.0, 29995.0],\n", - " [30005.0, 30005.0, 30015.0, 30015.0],\n", - " [30035.0, 30035.0, 30045.0, 30045.0],\n", - " [30025.0, 30025.0, 30040.0, 30040.0],\n", - " [30010.0, 30010.0, 30032.5, 30032.5],\n", - " [29990.0, 29990.0, 30021.25, 30021.25],\n", - " [29975.0, 29975.0, 30005.625, 30005.625],\n", - " [29965.0, 29965.0, 29990.3125, 29990.3125],\n", - " [30075.0, 30075.0, 30085.0, 30085.0],\n", - " [30065.0, 30065.0, 30080.0, 30080.0],\n", - " [30055.0, 30055.0, 30072.5, 30072.5],\n", - " [30105.0, 30105.0, 30115.0, 30115.0],\n", - " [30095.0, 30095.0, 30110.0, 30110.0],\n", - " [30063.75, 30063.75, 30102.5, 30102.5],\n", - " [30145.0, 30145.0, 30155.0, 30155.0],\n", - " [30165.0, 30165.0, 30175.0, 30175.0],\n", - " [30150.0, 30150.0, 30170.0, 30170.0],\n", - " [30195.0, 30195.0, 30205.0, 30205.0],\n", - " [30185.0, 30185.0, 30200.0, 30200.0],\n", - " [30160.0, 30160.0, 30192.5, 30192.5],\n", - " [30135.0, 30135.0, 30176.25, 30176.25],\n", - " [30125.0, 30125.0, 30155.625, 30155.625],\n", - " [30083.125, 30083.125, 30140.3125, 30140.3125],\n", - " [30225.0, 30225.0, 30235.0, 30235.0],\n", - " [30245.0, 30245.0, 30255.0, 30255.0],\n", - " [30230.0, 30230.0, 30250.0, 30250.0],\n", - " [30215.0, 30215.0, 30240.0, 30240.0],\n", - " [30111.71875, 30111.71875, 30227.5, 30227.5],\n", - " [29977.65625, 29977.65625, 30169.609375, 30169.609375],\n", - " [29869.6875, 29869.6875, 30073.6328125, 30073.6328125],\n", - " [29745.0, 29745.0, 29971.66015625, 29971.66015625],\n", - " [29698.125, 29698.125, 29858.330078125, 29858.330078125],\n", - " [29643.75, 29643.75, 29778.2275390625, 29778.2275390625],\n", - " [30265.0, 30265.0, 30275.0, 30275.0],\n", - " [30285.0, 30285.0, 30295.0, 30295.0],\n", - " [30270.0, 30270.0, 30290.0, 30290.0],\n", - " [30315.0, 30315.0, 30325.0, 30325.0],\n", - " [30345.0, 30345.0, 30355.0, 30355.0],\n", - " [30335.0, 30335.0, 30350.0, 30350.0],\n", - " [30365.0, 30365.0, 30375.0, 30375.0],\n", - " [30342.5, 30342.5, 30370.0, 30370.0],\n", - " [30320.0, 30320.0, 30356.25, 30356.25],\n", - " [30305.0, 30305.0, 30338.125, 30338.125],\n", - " [30280.0, 30280.0, 30321.5625, 30321.5625],\n", - " [30395.0, 30395.0, 30405.0, 30405.0],\n", - " [30425.0, 30425.0, 30435.0, 30435.0],\n", - " [30445.0, 30445.0, 30455.0, 30455.0],\n", - " [30485.0, 30485.0, 30495.0, 30495.0],\n", - " [30475.0, 30475.0, 30490.0, 30490.0],\n", - " [30465.0, 30465.0, 30482.5, 30482.5],\n", - " [30450.0, 30450.0, 30473.75, 30473.75],\n", - " [30505.0, 30505.0, 30515.0, 30515.0],\n", - " [30461.875, 30461.875, 30510.0, 30510.0],\n", - " [30430.0, 30430.0, 30485.9375, 30485.9375],\n", - " [30415.0, 30415.0, 30457.96875, 30457.96875],\n", - " [30525.0, 30525.0, 30535.0, 30535.0],\n", - " [30555.0, 30555.0, 30565.0, 30565.0],\n", - " [30585.0, 30585.0, 30595.0, 30595.0],\n", - " [30575.0, 30575.0, 30590.0, 30590.0],\n", - " [30625.0, 30625.0, 30635.0, 30635.0],\n", - " [30695.0, 30695.0, 30705.0, 30705.0],\n", - " [30685.0, 30685.0, 30700.0, 30700.0],\n", - " [30675.0, 30675.0, 30692.5, 30692.5],\n", - " [30665.0, 30665.0, 30683.75, 30683.75],\n", - " [30655.0, 30655.0, 30674.375, 30674.375],\n", - " [30645.0, 30645.0, 30664.6875, 30664.6875],\n", - " [30630.0, 30630.0, 30654.84375, 30654.84375],\n", - " [30615.0, 30615.0, 30642.421875, 30642.421875],\n", - " [30605.0, 30605.0, 30628.7109375, 30628.7109375],\n", - " [30745.0, 30745.0, 30755.0, 30755.0],\n", - " [30735.0, 30735.0, 30750.0, 30750.0],\n", - " [30725.0, 30725.0, 30742.5, 30742.5],\n", - " [30775.0, 30775.0, 30785.0, 30785.0],\n", - " [30765.0, 30765.0, 30780.0, 30780.0],\n", - " [30805.0, 30805.0, 30815.0, 30815.0],\n", - " [30795.0, 30795.0, 30810.0, 30810.0],\n", - " [30772.5, 30772.5, 30802.5, 30802.5],\n", - " [30733.75, 30733.75, 30787.5, 30787.5],\n", - " [30835.0, 30835.0, 30845.0, 30845.0],\n", - " [30825.0, 30825.0, 30840.0, 30840.0],\n", - " [30760.625, 30760.625, 30832.5, 30832.5],\n", - " [30715.0, 30715.0, 30796.5625, 30796.5625],\n", - " [30616.85546875, 30616.85546875, 30755.78125, 30755.78125],\n", - " [30582.5, 30582.5, 30686.318359375, 30686.318359375],\n", - " [30560.0, 30560.0, 30634.4091796875, 30634.4091796875],\n", - " [30545.0, 30545.0, 30597.20458984375, 30597.20458984375],\n", - " [30530.0, 30530.0, 30571.102294921875, 30571.102294921875],\n", - " [30436.484375, 30436.484375, 30550.551147460938, 30550.551147460938],\n", - " [30400.0, 30400.0, 30493.51776123047, 30493.51776123047],\n", - " [30385.0, 30385.0, 30446.758880615234, 30446.758880615234],\n", - " [30865.0, 30865.0, 30875.0, 30875.0],\n", - " [30905.0, 30905.0, 30915.0, 30915.0],\n", - " [30895.0, 30895.0, 30910.0, 30910.0],\n", - " [30945.0, 30945.0, 30955.0, 30955.0],\n", - " [30935.0, 30935.0, 30950.0, 30950.0],\n", - " [30965.0, 30965.0, 30975.0, 30975.0],\n", - " [30995.0, 30995.0, 31005.0, 31005.0],\n", - " [31025.0, 31025.0, 31035.0, 31035.0],\n", - " [31015.0, 31015.0, 31030.0, 31030.0],\n", - " [31000.0, 31000.0, 31022.5, 31022.5],\n", - " [30985.0, 30985.0, 31011.25, 31011.25],\n", - " [30970.0, 30970.0, 30998.125, 30998.125],\n", - " [31065.0, 31065.0, 31075.0, 31075.0],\n", - " [31055.0, 31055.0, 31070.0, 31070.0],\n", - " [31045.0, 31045.0, 31062.5, 31062.5],\n", - " [31085.0, 31085.0, 31095.0, 31095.0],\n", - " [31105.0, 31105.0, 31115.0, 31115.0],\n", - " [31090.0, 31090.0, 31110.0, 31110.0],\n", - " [31053.75, 31053.75, 31100.0, 31100.0],\n", - " [31135.0, 31135.0, 31145.0, 31145.0],\n", - " [31125.0, 31125.0, 31140.0, 31140.0],\n", - " [31185.0, 31185.0, 31195.0, 31195.0],\n", - " [31205.0, 31205.0, 31215.0, 31215.0],\n", - " [31225.0, 31225.0, 31235.0, 31235.0],\n", - " [31210.0, 31210.0, 31230.0, 31230.0],\n", - " [31255.0, 31255.0, 31265.0, 31265.0],\n", - " [31245.0, 31245.0, 31260.0, 31260.0],\n", - " [31220.0, 31220.0, 31252.5, 31252.5],\n", - " [31190.0, 31190.0, 31236.25, 31236.25],\n", - " [31175.0, 31175.0, 31213.125, 31213.125],\n", - " [31165.0, 31165.0, 31194.0625, 31194.0625],\n", - " [31275.0, 31275.0, 31285.0, 31285.0],\n", - " [31179.53125, 31179.53125, 31280.0, 31280.0],\n", - " [31155.0, 31155.0, 31229.765625, 31229.765625],\n", - " [31132.5, 31132.5, 31192.3828125, 31192.3828125],\n", - " [31076.875, 31076.875, 31162.44140625, 31162.44140625],\n", - " [30984.0625, 30984.0625, 31119.658203125, 31119.658203125],\n", - " [30942.5, 30942.5, 31051.8603515625, 31051.8603515625],\n", - " [31295.0, 31295.0, 31305.0, 31305.0],\n", - " [31325.0, 31325.0, 31335.0, 31335.0],\n", - " [31315.0, 31315.0, 31330.0, 31330.0],\n", - " [31345.0, 31345.0, 31355.0, 31355.0],\n", - " [31322.5, 31322.5, 31350.0, 31350.0],\n", - " [31300.0, 31300.0, 31336.25, 31336.25],\n", - " [31385.0, 31385.0, 31395.0, 31395.0],\n", - " [31375.0, 31375.0, 31390.0, 31390.0],\n", - " [31365.0, 31365.0, 31382.5, 31382.5],\n", - " [31405.0, 31405.0, 31415.0, 31415.0],\n", - " [31373.75, 31373.75, 31410.0, 31410.0],\n", - " [31425.0, 31425.0, 31435.0, 31435.0],\n", - " [31445.0, 31445.0, 31455.0, 31455.0],\n", - " [31465.0, 31465.0, 31475.0, 31475.0],\n", - " [31485.0, 31485.0, 31495.0, 31495.0],\n", - " [31525.0, 31525.0, 31535.0, 31535.0],\n", - " [31515.0, 31515.0, 31530.0, 31530.0],\n", - " [31505.0, 31505.0, 31522.5, 31522.5],\n", - " [31565.0, 31565.0, 31575.0, 31575.0],\n", - " [31555.0, 31555.0, 31570.0, 31570.0],\n", - " [31545.0, 31545.0, 31562.5, 31562.5],\n", - " [31585.0, 31585.0, 31595.0, 31595.0],\n", - " [31553.75, 31553.75, 31590.0, 31590.0],\n", - " [31513.75, 31513.75, 31571.875, 31571.875],\n", - " [31625.0, 31625.0, 31635.0, 31635.0],\n", - " [31675.0, 31675.0, 31685.0, 31685.0],\n", - " [31665.0, 31665.0, 31680.0, 31680.0],\n", - " [31715.0, 31715.0, 31725.0, 31725.0],\n", - " [31705.0, 31705.0, 31720.0, 31720.0],\n", - " [31695.0, 31695.0, 31712.5, 31712.5],\n", - " [31672.5, 31672.5, 31703.75, 31703.75],\n", - " [31655.0, 31655.0, 31688.125, 31688.125],\n", - " [31645.0, 31645.0, 31671.5625, 31671.5625],\n", - " [31630.0, 31630.0, 31658.28125, 31658.28125],\n", - " [31615.0, 31615.0, 31644.140625, 31644.140625],\n", - " [31605.0, 31605.0, 31629.5703125, 31629.5703125],\n", - " [31755.0, 31755.0, 31765.0, 31765.0],\n", - " [31795.0, 31795.0, 31805.0, 31805.0],\n", - " [31785.0, 31785.0, 31800.0, 31800.0],\n", - " [31775.0, 31775.0, 31792.5, 31792.5],\n", - " [31825.0, 31825.0, 31835.0, 31835.0],\n", - " [31815.0, 31815.0, 31830.0, 31830.0],\n", - " [31783.75, 31783.75, 31822.5, 31822.5],\n", - " [31760.0, 31760.0, 31803.125, 31803.125],\n", - " [31745.0, 31745.0, 31781.5625, 31781.5625],\n", - " [31735.0, 31735.0, 31763.28125, 31763.28125],\n", - " [31617.28515625, 31617.28515625, 31749.140625, 31749.140625],\n", - " [31875.0, 31875.0, 31885.0, 31885.0],\n", - " [31865.0, 31865.0, 31880.0, 31880.0],\n", - " [31855.0, 31855.0, 31872.5, 31872.5],\n", - " [31845.0, 31845.0, 31863.75, 31863.75],\n", - " [31915.0, 31915.0, 31925.0, 31925.0],\n", - " [31905.0, 31905.0, 31920.0, 31920.0],\n", - " [31895.0, 31895.0, 31912.5, 31912.5],\n", - " [31854.375, 31854.375, 31903.75, 31903.75],\n", - " [31945.0, 31945.0, 31955.0, 31955.0],\n", - " [31935.0, 31935.0, 31950.0, 31950.0],\n", - " [31879.0625, 31879.0625, 31942.5, 31942.5],\n", - " [31683.212890625, 31683.212890625, 31910.78125, 31910.78125],\n", - " [31542.8125, 31542.8125, 31796.9970703125, 31796.9970703125],\n", - " [31490.0, 31490.0, 31669.90478515625, 31669.90478515625],\n", - " [31470.0, 31470.0, 31579.952392578125, 31579.952392578125],\n", - " [31450.0, 31450.0, 31524.976196289062, 31524.976196289062],\n", - " [31430.0, 31430.0, 31487.48809814453, 31487.48809814453],\n", - " [31391.875, 31391.875, 31458.744049072266, 31458.744049072266],\n", - " [31318.125, 31318.125, 31425.309524536133, 31425.309524536133],\n", - " [30997.18017578125,\n", - " 30997.18017578125,\n", - " 31371.717262268066,\n", - " 31371.717262268066],\n", - " [32025.0, 32025.0, 32035.0, 32035.0],\n", - " [32015.0, 32015.0, 32030.0, 32030.0],\n", - " [32005.0, 32005.0, 32022.5, 32022.5],\n", - " [32055.0, 32055.0, 32065.0, 32065.0],\n", - " [32045.0, 32045.0, 32060.0, 32060.0],\n", - " [32013.75, 32013.75, 32052.5, 32052.5],\n", - " [32105.0, 32105.0, 32115.0, 32115.0],\n", - " [32145.0, 32145.0, 32155.0, 32155.0],\n", - " [32135.0, 32135.0, 32150.0, 32150.0],\n", - " [32125.0, 32125.0, 32142.5, 32142.5],\n", - " [32175.0, 32175.0, 32185.0, 32185.0],\n", - " [32195.0, 32195.0, 32205.0, 32205.0],\n", - " [32180.0, 32180.0, 32200.0, 32200.0],\n", - " [32165.0, 32165.0, 32190.0, 32190.0],\n", - " [32133.75, 32133.75, 32177.5, 32177.5],\n", - " [32110.0, 32110.0, 32155.625, 32155.625],\n", - " [32095.0, 32095.0, 32132.8125, 32132.8125],\n", - " [32235.0, 32235.0, 32245.0, 32245.0],\n", - " [32275.0, 32275.0, 32285.0, 32285.0],\n", - " [32295.0, 32295.0, 32305.0, 32305.0],\n", - " [32280.0, 32280.0, 32300.0, 32300.0],\n", - " [32265.0, 32265.0, 32290.0, 32290.0],\n", - " [32255.0, 32255.0, 32277.5, 32277.5],\n", - " [32240.0, 32240.0, 32266.25, 32266.25],\n", - " [32225.0, 32225.0, 32253.125, 32253.125],\n", - " [32215.0, 32215.0, 32239.0625, 32239.0625],\n", - " [32113.90625, 32113.90625, 32227.03125, 32227.03125],\n", - " [32085.0, 32085.0, 32170.46875, 32170.46875],\n", - " [32075.0, 32075.0, 32127.734375, 32127.734375],\n", - " [32033.125, 32033.125, 32101.3671875, 32101.3671875],\n", - " [32315.0, 32315.0, 32325.0, 32325.0],\n", - " [32335.0, 32335.0, 32345.0, 32345.0],\n", - " [32320.0, 32320.0, 32340.0, 32340.0],\n", - " [32067.24609375, 32067.24609375, 32330.0, 32330.0],\n", - " [31995.0, 31995.0, 32198.623046875, 32198.623046875],\n", - " [31985.0, 31985.0, 32096.8115234375, 32096.8115234375],\n", - " [31975.0, 31975.0, 32040.90576171875, 32040.90576171875],\n", - " [31965.0, 31965.0, 32007.952880859375, 32007.952880859375],\n", - " [32375.0, 32375.0, 32385.0, 32385.0],\n", - " [32395.0, 32395.0, 32405.0, 32405.0],\n", - " [32445.0, 32445.0, 32455.0, 32455.0],\n", - " [32435.0, 32435.0, 32450.0, 32450.0],\n", - " [32425.0, 32425.0, 32442.5, 32442.5],\n", - " [32415.0, 32415.0, 32433.75, 32433.75],\n", - " [32475.0, 32475.0, 32485.0, 32485.0],\n", - " [32465.0, 32465.0, 32480.0, 32480.0],\n", - " [32424.375, 32424.375, 32472.5, 32472.5],\n", - " [32400.0, 32400.0, 32448.4375, 32448.4375],\n", - " [32380.0, 32380.0, 32424.21875, 32424.21875],\n", - " [32365.0, 32365.0, 32402.109375, 32402.109375],\n", - " [32355.0, 32355.0, 32383.5546875, 32383.5546875],\n", - " [32515.0, 32515.0, 32525.0, 32525.0],\n", - " [32545.0, 32545.0, 32555.0, 32555.0],\n", - " [32535.0, 32535.0, 32550.0, 32550.0],\n", - " [32520.0, 32520.0, 32542.5, 32542.5],\n", - " [32575.0, 32575.0, 32585.0, 32585.0],\n", - " [32565.0, 32565.0, 32580.0, 32580.0],\n", - " [32531.25, 32531.25, 32572.5, 32572.5],\n", - " [32625.0, 32625.0, 32635.0, 32635.0],\n", - " [32615.0, 32615.0, 32630.0, 32630.0],\n", - " [32605.0, 32605.0, 32622.5, 32622.5],\n", - " [32595.0, 32595.0, 32613.75, 32613.75],\n", - " [32665.0, 32665.0, 32675.0, 32675.0],\n", - " [32655.0, 32655.0, 32670.0, 32670.0],\n", - " [32645.0, 32645.0, 32662.5, 32662.5],\n", - " [32604.375, 32604.375, 32653.75, 32653.75],\n", - " [32705.0, 32705.0, 32715.0, 32715.0],\n", - " [32695.0, 32695.0, 32710.0, 32710.0],\n", - " [32685.0, 32685.0, 32702.5, 32702.5],\n", - " [32629.0625, 32629.0625, 32693.75, 32693.75],\n", - " [32815.0, 32815.0, 32825.0, 32825.0],\n", - " [32805.0, 32805.0, 32820.0, 32820.0],\n", - " [32835.0, 32835.0, 32845.0, 32845.0],\n", - " [32812.5, 32812.5, 32840.0, 32840.0],\n", - " [32875.0, 32875.0, 32885.0, 32885.0],\n", - " [32865.0, 32865.0, 32880.0, 32880.0],\n", - " [32855.0, 32855.0, 32872.5, 32872.5],\n", - " [32895.0, 32895.0, 32905.0, 32905.0],\n", - " [32863.75, 32863.75, 32900.0, 32900.0],\n", - " [32826.25, 32826.25, 32881.875, 32881.875],\n", - " [32795.0, 32795.0, 32854.0625, 32854.0625],\n", - " [32785.0, 32785.0, 32824.53125, 32824.53125],\n", - " [32955.0, 32955.0, 32965.0, 32965.0],\n", - " [32945.0, 32945.0, 32960.0, 32960.0],\n", - " [32975.0, 32975.0, 32985.0, 32985.0],\n", - " [33005.0, 33005.0, 33015.0, 33015.0],\n", - " [32995.0, 32995.0, 33010.0, 33010.0],\n", - " [32980.0, 32980.0, 33002.5, 33002.5],\n", - " [32952.5, 32952.5, 32991.25, 32991.25],\n", - " [32935.0, 32935.0, 32971.875, 32971.875],\n", - " [32925.0, 32925.0, 32953.4375, 32953.4375],\n", - " [32915.0, 32915.0, 32939.21875, 32939.21875],\n", - " [32804.765625, 32804.765625, 32927.109375, 32927.109375],\n", - " [32775.0, 32775.0, 32865.9375, 32865.9375],\n", - " [32765.0, 32765.0, 32820.46875, 32820.46875],\n", - " [32755.0, 32755.0, 32792.734375, 32792.734375],\n", - " [32745.0, 32745.0, 32773.8671875, 32773.8671875],\n", - " [32735.0, 32735.0, 32759.43359375, 32759.43359375],\n", - " [32725.0, 32725.0, 32747.216796875, 32747.216796875],\n", - " [32661.40625, 32661.40625, 32736.1083984375, 32736.1083984375],\n", - " [32551.875, 32551.875, 32698.75732421875, 32698.75732421875],\n", - " [32505.0, 32505.0, 32625.316162109375, 32625.316162109375],\n", - " [32495.0, 32495.0, 32565.158081054688, 32565.158081054688],\n", - " [32369.27734375, 32369.27734375, 32530.079040527344, 32530.079040527344],\n", - " [31986.476440429688,\n", - " 31986.476440429688,\n", - " 32449.678192138672,\n", - " 32449.678192138672],\n", - " [31184.44871902466, 31184.44871902466, 32218.07731628418, 32218.07731628418],\n", - " [30925.0, 30925.0, 31701.26301765442, 31701.26301765442],\n", - " [33025.0, 33025.0, 33035.0, 33035.0],\n", - " [33065.0, 33065.0, 33075.0, 33075.0],\n", - " [33055.0, 33055.0, 33070.0, 33070.0],\n", - " [33045.0, 33045.0, 33062.5, 33062.5],\n", - " [33095.0, 33095.0, 33105.0, 33105.0],\n", - " [33115.0, 33115.0, 33125.0, 33125.0],\n", - " [33100.0, 33100.0, 33120.0, 33120.0],\n", - " [33155.0, 33155.0, 33165.0, 33165.0],\n", - " [33145.0, 33145.0, 33160.0, 33160.0],\n", - " [33175.0, 33175.0, 33185.0, 33185.0],\n", - " [33215.0, 33215.0, 33225.0, 33225.0],\n", - " [33245.0, 33245.0, 33255.0, 33255.0],\n", - " [33235.0, 33235.0, 33250.0, 33250.0],\n", - " [33220.0, 33220.0, 33242.5, 33242.5],\n", - " [33205.0, 33205.0, 33231.25, 33231.25],\n", - " [33195.0, 33195.0, 33218.125, 33218.125],\n", - " [33180.0, 33180.0, 33206.5625, 33206.5625],\n", - " [33152.5, 33152.5, 33193.28125, 33193.28125],\n", - " [33135.0, 33135.0, 33172.890625, 33172.890625],\n", - " [33110.0, 33110.0, 33153.9453125, 33153.9453125],\n", - " [33275.0, 33275.0, 33285.0, 33285.0],\n", - " [33325.0, 33325.0, 33335.0, 33335.0],\n", - " [33345.0, 33345.0, 33355.0, 33355.0],\n", - " [33330.0, 33330.0, 33350.0, 33350.0],\n", - " [33315.0, 33315.0, 33340.0, 33340.0],\n", - " [33305.0, 33305.0, 33327.5, 33327.5],\n", - " [33295.0, 33295.0, 33316.25, 33316.25],\n", - " [33365.0, 33365.0, 33375.0, 33375.0],\n", - " [33395.0, 33395.0, 33405.0, 33405.0],\n", - " [33385.0, 33385.0, 33400.0, 33400.0],\n", - " [33370.0, 33370.0, 33392.5, 33392.5],\n", - " [33425.0, 33425.0, 33435.0, 33435.0],\n", - " [33445.0, 33445.0, 33455.0, 33455.0],\n", - " [33430.0, 33430.0, 33450.0, 33450.0],\n", - " [33495.0, 33495.0, 33505.0, 33505.0],\n", - " [33485.0, 33485.0, 33500.0, 33500.0],\n", - " [33475.0, 33475.0, 33492.5, 33492.5],\n", - " [33465.0, 33465.0, 33483.75, 33483.75],\n", - " [33440.0, 33440.0, 33474.375, 33474.375],\n", - " [33415.0, 33415.0, 33457.1875, 33457.1875],\n", - " [33525.0, 33525.0, 33535.0, 33535.0],\n", - " [33515.0, 33515.0, 33530.0, 33530.0],\n", - " [33436.09375, 33436.09375, 33522.5, 33522.5],\n", - " [33545.0, 33545.0, 33555.0, 33555.0],\n", - " [33575.0, 33575.0, 33585.0, 33585.0],\n", - " [33565.0, 33565.0, 33580.0, 33580.0],\n", - " [33550.0, 33550.0, 33572.5, 33572.5],\n", - " [33479.296875, 33479.296875, 33561.25, 33561.25],\n", - " [33381.25, 33381.25, 33520.2734375, 33520.2734375],\n", - " [33305.625, 33305.625, 33450.76171875, 33450.76171875],\n", - " [33280.0, 33280.0, 33378.193359375, 33378.193359375],\n", - " [33265.0, 33265.0, 33329.0966796875, 33329.0966796875],\n", - " [33131.97265625, 33131.97265625, 33297.04833984375, 33297.04833984375],\n", - " [33085.0, 33085.0, 33214.510498046875, 33214.510498046875],\n", - " [33053.75, 33053.75, 33149.75524902344, 33149.75524902344],\n", - " [33030.0, 33030.0, 33101.75262451172, 33101.75262451172],\n", - " [33595.0, 33595.0, 33605.0, 33605.0],\n", - " [33655.0, 33655.0, 33665.0, 33665.0],\n", - " [33645.0, 33645.0, 33660.0, 33660.0],\n", - " [33685.0, 33685.0, 33695.0, 33695.0],\n", - " [33705.0, 33705.0, 33715.0, 33715.0],\n", - " [33690.0, 33690.0, 33710.0, 33710.0],\n", - " [33675.0, 33675.0, 33700.0, 33700.0],\n", - " [33652.5, 33652.5, 33687.5, 33687.5],\n", - " [33635.0, 33635.0, 33670.0, 33670.0],\n", - " [33775.0, 33775.0, 33785.0, 33785.0],\n", - " [33795.0, 33795.0, 33805.0, 33805.0],\n", - " [33815.0, 33815.0, 33825.0, 33825.0],\n", - " [33800.0, 33800.0, 33820.0, 33820.0],\n", - " [33780.0, 33780.0, 33810.0, 33810.0],\n", - " [33765.0, 33765.0, 33795.0, 33795.0],\n", - " [33755.0, 33755.0, 33780.0, 33780.0],\n", - " [33745.0, 33745.0, 33767.5, 33767.5],\n", - " [33735.0, 33735.0, 33756.25, 33756.25],\n", - " [33725.0, 33725.0, 33745.625, 33745.625],\n", - " [33652.5, 33652.5, 33735.3125, 33735.3125],\n", - " [33835.0, 33835.0, 33845.0, 33845.0],\n", - " [33875.0, 33875.0, 33885.0, 33885.0],\n", - " [33915.0, 33915.0, 33925.0, 33925.0],\n", - " [33905.0, 33905.0, 33920.0, 33920.0],\n", - " [33895.0, 33895.0, 33912.5, 33912.5],\n", - " [33945.0, 33945.0, 33955.0, 33955.0],\n", - " [33935.0, 33935.0, 33950.0, 33950.0],\n", - " [33903.75, 33903.75, 33942.5, 33942.5],\n", - " [33880.0, 33880.0, 33923.125, 33923.125],\n", - " [33865.0, 33865.0, 33901.5625, 33901.5625],\n", - " [33855.0, 33855.0, 33883.28125, 33883.28125],\n", - " [33840.0, 33840.0, 33869.140625, 33869.140625],\n", - " [33693.90625, 33693.90625, 33854.5703125, 33854.5703125],\n", - " [33625.0, 33625.0, 33774.23828125, 33774.23828125],\n", - " [33615.0, 33615.0, 33699.619140625, 33699.619140625],\n", - " [33600.0, 33600.0, 33657.3095703125, 33657.3095703125],\n", - " [33065.87631225586, 33065.87631225586, 33628.65478515625, 33628.65478515625],\n", - " [31313.13150882721,\n", - " 31313.13150882721,\n", - " 33347.265548706055,\n", - " 33347.265548706055],\n", - " [30902.5, 30902.5, 32330.198528766632, 32330.198528766632],\n", - " [30885.0, 30885.0, 31616.349264383316, 31616.349264383316],\n", - " [30870.0, 30870.0, 31250.674632191658, 31250.674632191658],\n", - " [33965.0, 33965.0, 33975.0, 33975.0],\n", - " [31060.33731609583, 31060.33731609583, 33970.0, 33970.0],\n", - " [30855.0, 30855.0, 32515.168658047915, 32515.168658047915],\n", - " [34015.0, 34015.0, 34025.0, 34025.0],\n", - " [34005.0, 34005.0, 34020.0, 34020.0],\n", - " [34045.0, 34045.0, 34055.0, 34055.0],\n", - " [34035.0, 34035.0, 34050.0, 34050.0],\n", - " [34012.5, 34012.5, 34042.5, 34042.5],\n", - " [33995.0, 33995.0, 34027.5, 34027.5],\n", - " [33985.0, 33985.0, 34011.25, 34011.25],\n", - " [31685.084329023957, 31685.084329023957, 33998.125, 33998.125],\n", - " [30415.879440307617,\n", - " 30415.879440307617,\n", - " 32841.60466451198,\n", - " 32841.60466451198],\n", - " [30300.78125, 30300.78125, 31628.742052409798, 31628.742052409798],\n", - " [34085.0, 34085.0, 34095.0, 34095.0],\n", - " [34075.0, 34075.0, 34090.0, 34090.0],\n", - " [34065.0, 34065.0, 34082.5, 34082.5],\n", - " [34115.0, 34115.0, 34125.0, 34125.0],\n", - " [34105.0, 34105.0, 34120.0, 34120.0],\n", - " [34205.0, 34205.0, 34215.0, 34215.0],\n", - " [34195.0, 34195.0, 34210.0, 34210.0],\n", - " [34185.0, 34185.0, 34202.5, 34202.5],\n", - " [34175.0, 34175.0, 34193.75, 34193.75],\n", - " [34165.0, 34165.0, 34184.375, 34184.375],\n", - " [34155.0, 34155.0, 34174.6875, 34174.6875],\n", - " [34145.0, 34145.0, 34164.84375, 34164.84375],\n", - " [34135.0, 34135.0, 34154.921875, 34154.921875],\n", - " [34112.5, 34112.5, 34144.9609375, 34144.9609375],\n", - " [34265.0, 34265.0, 34275.0, 34275.0],\n", - " [34255.0, 34255.0, 34270.0, 34270.0],\n", - " [34245.0, 34245.0, 34262.5, 34262.5],\n", - " [34235.0, 34235.0, 34253.75, 34253.75],\n", - " [34225.0, 34225.0, 34244.375, 34244.375],\n", - " [34335.0, 34335.0, 34345.0, 34345.0],\n", - " [34325.0, 34325.0, 34340.0, 34340.0],\n", - " [34315.0, 34315.0, 34332.5, 34332.5],\n", - " [34305.0, 34305.0, 34323.75, 34323.75],\n", - " [34295.0, 34295.0, 34314.375, 34314.375],\n", - " [34365.0, 34365.0, 34375.0, 34375.0],\n", - " [34355.0, 34355.0, 34370.0, 34370.0],\n", - " [34304.6875, 34304.6875, 34362.5, 34362.5],\n", - " [34285.0, 34285.0, 34333.59375, 34333.59375],\n", - " [34234.6875, 34234.6875, 34309.296875, 34309.296875],\n", - " [34128.73046875, 34128.73046875, 34271.9921875, 34271.9921875],\n", - " [34073.75, 34073.75, 34200.361328125, 34200.361328125],\n", - " [34415.0, 34415.0, 34425.0, 34425.0],\n", - " [34405.0, 34405.0, 34420.0, 34420.0],\n", - " [34395.0, 34395.0, 34412.5, 34412.5],\n", - " [34445.0, 34445.0, 34455.0, 34455.0],\n", - " [34435.0, 34435.0, 34450.0, 34450.0],\n", - " [34515.0, 34515.0, 34525.0, 34525.0],\n", - " [34505.0, 34505.0, 34520.0, 34520.0],\n", - " [34495.0, 34495.0, 34512.5, 34512.5],\n", - " [34485.0, 34485.0, 34503.75, 34503.75],\n", - " [34475.0, 34475.0, 34494.375, 34494.375],\n", - " [34465.0, 34465.0, 34484.6875, 34484.6875],\n", - " [34555.0, 34555.0, 34565.0, 34565.0],\n", - " [34545.0, 34545.0, 34560.0, 34560.0],\n", - " [34535.0, 34535.0, 34552.5, 34552.5],\n", - " [34595.0, 34595.0, 34605.0, 34605.0],\n", - " [34615.0, 34615.0, 34625.0, 34625.0],\n", - " [34600.0, 34600.0, 34620.0, 34620.0],\n", - " [34585.0, 34585.0, 34610.0, 34610.0],\n", - " [34575.0, 34575.0, 34597.5, 34597.5],\n", - " [34543.75, 34543.75, 34586.25, 34586.25],\n", - " [34474.84375, 34474.84375, 34565.0, 34565.0],\n", - " [34442.5, 34442.5, 34519.921875, 34519.921875],\n", - " [34403.75, 34403.75, 34481.2109375, 34481.2109375],\n", - " [34385.0, 34385.0, 34442.48046875, 34442.48046875],\n", - " [34695.0, 34695.0, 34705.0, 34705.0],\n", - " [34685.0, 34685.0, 34700.0, 34700.0],\n", - " [34715.0, 34715.0, 34725.0, 34725.0],\n", - " [34745.0, 34745.0, 34755.0, 34755.0],\n", - " [34735.0, 34735.0, 34750.0, 34750.0],\n", - " [34720.0, 34720.0, 34742.5, 34742.5],\n", - " [34692.5, 34692.5, 34731.25, 34731.25],\n", - " [34675.0, 34675.0, 34711.875, 34711.875],\n", - " [34665.0, 34665.0, 34693.4375, 34693.4375],\n", - " [34655.0, 34655.0, 34679.21875, 34679.21875],\n", - " [34645.0, 34645.0, 34667.109375, 34667.109375],\n", - " [34635.0, 34635.0, 34656.0546875, 34656.0546875],\n", - " [34795.0, 34795.0, 34805.0, 34805.0],\n", - " [34785.0, 34785.0, 34800.0, 34800.0],\n", - " [34775.0, 34775.0, 34792.5, 34792.5],\n", - " [34765.0, 34765.0, 34783.75, 34783.75],\n", - " [34825.0, 34825.0, 34835.0, 34835.0],\n", - " [34855.0, 34855.0, 34865.0, 34865.0],\n", - " [34845.0, 34845.0, 34860.0, 34860.0],\n", - " [34830.0, 34830.0, 34852.5, 34852.5],\n", - " [34815.0, 34815.0, 34841.25, 34841.25],\n", - " [34774.375, 34774.375, 34828.125, 34828.125],\n", - " [34875.0, 34875.0, 34885.0, 34885.0],\n", - " [34945.0, 34945.0, 34955.0, 34955.0],\n", - " [34935.0, 34935.0, 34950.0, 34950.0],\n", - " [34925.0, 34925.0, 34942.5, 34942.5],\n", - " [34915.0, 34915.0, 34933.75, 34933.75],\n", - " [34905.0, 34905.0, 34924.375, 34924.375],\n", - " [34895.0, 34895.0, 34914.6875, 34914.6875],\n", - " [34975.0, 34975.0, 34985.0, 34985.0],\n", - " [34965.0, 34965.0, 34980.0, 34980.0],\n", - " [34904.84375, 34904.84375, 34972.5, 34972.5],\n", - " [34995.0, 34995.0, 35005.0, 35005.0],\n", - " [35015.0, 35015.0, 35025.0, 35025.0],\n", - " [35000.0, 35000.0, 35020.0, 35020.0],\n", - " [35045.0, 35045.0, 35055.0, 35055.0],\n", - " [35035.0, 35035.0, 35050.0, 35050.0],\n", - " [35010.0, 35010.0, 35042.5, 35042.5],\n", - " [34938.671875, 34938.671875, 35026.25, 35026.25],\n", - " [34880.0, 34880.0, 34982.4609375, 34982.4609375],\n", - " [35105.0, 35105.0, 35115.0, 35115.0],\n", - " [35095.0, 35095.0, 35110.0, 35110.0],\n", - " [35085.0, 35085.0, 35102.5, 35102.5],\n", - " [35075.0, 35075.0, 35093.75, 35093.75],\n", - " [35065.0, 35065.0, 35084.375, 35084.375],\n", - " [34931.23046875, 34931.23046875, 35074.6875, 35074.6875],\n", - " [34801.25, 34801.25, 35002.958984375, 35002.958984375],\n", - " [34645.52734375, 34645.52734375, 34902.1044921875, 34902.1044921875],\n", - " [34413.740234375, 34413.740234375, 34773.81591796875, 34773.81591796875],\n", - " [34137.0556640625, 34137.0556640625, 34593.778076171875, 34593.778076171875],\n", - " [30964.7616512049, 30964.7616512049, 34365.41687011719, 34365.41687011719],\n", - " [29710.98876953125,\n", - " 29710.98876953125,\n", - " 32665.089260661043,\n", - " 32665.089260661043],\n", - " [29625.0, 29625.0, 31188.039015096147, 31188.039015096147],\n", - " [35155.0, 35155.0, 35165.0, 35165.0],\n", - " [35145.0, 35145.0, 35160.0, 35160.0],\n", - " [35135.0, 35135.0, 35152.5, 35152.5],\n", - " [35185.0, 35185.0, 35195.0, 35195.0],\n", - " [35205.0, 35205.0, 35215.0, 35215.0],\n", - " [35190.0, 35190.0, 35210.0, 35210.0],\n", - " [35245.0, 35245.0, 35255.0, 35255.0],\n", - " [35235.0, 35235.0, 35250.0, 35250.0],\n", - " [35225.0, 35225.0, 35242.5, 35242.5],\n", - " [35265.0, 35265.0, 35275.0, 35275.0],\n", - " [35233.75, 35233.75, 35270.0, 35270.0],\n", - " [35200.0, 35200.0, 35251.875, 35251.875],\n", - " [35305.0, 35305.0, 35315.0, 35315.0],\n", - " [35295.0, 35295.0, 35310.0, 35310.0],\n", - " [35355.0, 35355.0, 35365.0, 35365.0],\n", - " [35345.0, 35345.0, 35360.0, 35360.0],\n", - " [35335.0, 35335.0, 35352.5, 35352.5],\n", - " [35325.0, 35325.0, 35343.75, 35343.75],\n", - " [35375.0, 35375.0, 35385.0, 35385.0],\n", - " [35405.0, 35405.0, 35415.0, 35415.0],\n", - " [35425.0, 35425.0, 35435.0, 35435.0],\n", - " [35445.0, 35445.0, 35455.0, 35455.0],\n", - " [35515.0, 35515.0, 35525.0, 35525.0],\n", - " [35505.0, 35505.0, 35520.0, 35520.0],\n", - " [35495.0, 35495.0, 35512.5, 35512.5],\n", - " [35485.0, 35485.0, 35503.75, 35503.75],\n", - " [35475.0, 35475.0, 35494.375, 35494.375],\n", - " [35465.0, 35465.0, 35484.6875, 35484.6875],\n", - " [35535.0, 35535.0, 35545.0, 35545.0],\n", - " [35474.84375, 35474.84375, 35540.0, 35540.0],\n", - " [35450.0, 35450.0, 35507.421875, 35507.421875],\n", - " [35430.0, 35430.0, 35478.7109375, 35478.7109375],\n", - " [35410.0, 35410.0, 35454.35546875, 35454.35546875],\n", - " [35395.0, 35395.0, 35432.177734375, 35432.177734375],\n", - " [35585.0, 35585.0, 35595.0, 35595.0],\n", - " [35575.0, 35575.0, 35590.0, 35590.0],\n", - " [35565.0, 35565.0, 35582.5, 35582.5],\n", - " [35555.0, 35555.0, 35573.75, 35573.75],\n", - " [35413.5888671875, 35413.5888671875, 35564.375, 35564.375],\n", - " [35380.0, 35380.0, 35488.98193359375, 35488.98193359375],\n", - " [35334.375, 35334.375, 35434.490966796875, 35434.490966796875],\n", - " [35302.5, 35302.5, 35384.43298339844, 35384.43298339844],\n", - " [35285.0, 35285.0, 35343.46649169922, 35343.46649169922],\n", - " [35225.9375, 35225.9375, 35314.23324584961, 35314.23324584961],\n", - " [35175.0, 35175.0, 35270.085372924805, 35270.085372924805],\n", - " [35655.0, 35655.0, 35665.0, 35665.0],\n", - " [35645.0, 35645.0, 35660.0, 35660.0],\n", - " [35635.0, 35635.0, 35652.5, 35652.5],\n", - " [35625.0, 35625.0, 35643.75, 35643.75],\n", - " [35685.0, 35685.0, 35695.0, 35695.0],\n", - " [35675.0, 35675.0, 35690.0, 35690.0],\n", - " [35634.375, 35634.375, 35682.5, 35682.5],\n", - " [35745.0, 35745.0, 35755.0, 35755.0],\n", - " [35735.0, 35735.0, 35750.0, 35750.0],\n", - " [35725.0, 35725.0, 35742.5, 35742.5],\n", - " [35715.0, 35715.0, 35733.75, 35733.75],\n", - " [35705.0, 35705.0, 35724.375, 35724.375],\n", - " [35658.4375, 35658.4375, 35714.6875, 35714.6875],\n", - " [35775.0, 35775.0, 35785.0, 35785.0],\n", - " [35765.0, 35765.0, 35780.0, 35780.0],\n", - " [35805.0, 35805.0, 35815.0, 35815.0],\n", - " [35865.0, 35865.0, 35875.0, 35875.0],\n", - " [35885.0, 35885.0, 35895.0, 35895.0],\n", - " [35870.0, 35870.0, 35890.0, 35890.0],\n", - " [35935.0, 35935.0, 35945.0, 35945.0],\n", - " [35965.0, 35965.0, 35975.0, 35975.0],\n", - " [36015.0, 36015.0, 36025.0, 36025.0],\n", - " [36005.0, 36005.0, 36020.0, 36020.0],\n", - " [35995.0, 35995.0, 36012.5, 36012.5],\n", - " [35985.0, 35985.0, 36003.75, 36003.75],\n", - " [35970.0, 35970.0, 35994.375, 35994.375],\n", - " [36035.0, 36035.0, 36045.0, 36045.0],\n", - " [36055.0, 36055.0, 36065.0, 36065.0],\n", - " [36040.0, 36040.0, 36060.0, 36060.0],\n", - " [36075.0, 36075.0, 36085.0, 36085.0],\n", - " [36115.0, 36115.0, 36125.0, 36125.0],\n", - " [36105.0, 36105.0, 36120.0, 36120.0],\n", - " [36095.0, 36095.0, 36112.5, 36112.5],\n", - " [36080.0, 36080.0, 36103.75, 36103.75],\n", - " [36050.0, 36050.0, 36091.875, 36091.875],\n", - " [35982.1875, 35982.1875, 36070.9375, 36070.9375],\n", - " [35955.0, 35955.0, 36026.5625, 36026.5625],\n", - " [35940.0, 35940.0, 35990.78125, 35990.78125],\n", - " [35925.0, 35925.0, 35965.390625, 35965.390625],\n", - " [35915.0, 35915.0, 35945.1953125, 35945.1953125],\n", - " [35905.0, 35905.0, 35930.09765625, 35930.09765625],\n", - " [35880.0, 35880.0, 35917.548828125, 35917.548828125],\n", - " [35855.0, 35855.0, 35898.7744140625, 35898.7744140625],\n", - " [35845.0, 35845.0, 35876.88720703125, 35876.88720703125],\n", - " [35835.0, 35835.0, 35860.943603515625, 35860.943603515625],\n", - " [35825.0, 35825.0, 35847.97180175781, 35847.97180175781],\n", - " [35810.0, 35810.0, 35836.485900878906, 35836.485900878906],\n", - " [36145.0, 36145.0, 36155.0, 36155.0],\n", - " [36175.0, 36175.0, 36185.0, 36185.0],\n", - " [36165.0, 36165.0, 36180.0, 36180.0],\n", - " [36225.0, 36225.0, 36235.0, 36235.0],\n", - " [36215.0, 36215.0, 36230.0, 36230.0],\n", - " [36205.0, 36205.0, 36222.5, 36222.5],\n", - " [36245.0, 36245.0, 36255.0, 36255.0],\n", - " [36213.75, 36213.75, 36250.0, 36250.0],\n", - " [36265.0, 36265.0, 36275.0, 36275.0],\n", - " [36231.875, 36231.875, 36270.0, 36270.0],\n", - " [36195.0, 36195.0, 36250.9375, 36250.9375],\n", - " [36172.5, 36172.5, 36222.96875, 36222.96875],\n", - " [36150.0, 36150.0, 36197.734375, 36197.734375],\n", - " [36135.0, 36135.0, 36173.8671875, 36173.8671875],\n", - " [35823.24295043945, 35823.24295043945, 36154.43359375, 36154.43359375],\n", - " [35795.0, 35795.0, 35988.83827209473, 35988.83827209473],\n", - " [36315.0, 36315.0, 36325.0, 36325.0],\n", - " [36345.0, 36345.0, 36355.0, 36355.0],\n", - " [36335.0, 36335.0, 36350.0, 36350.0],\n", - " [36365.0, 36365.0, 36375.0, 36375.0],\n", - " [36342.5, 36342.5, 36370.0, 36370.0],\n", - " [36320.0, 36320.0, 36356.25, 36356.25],\n", - " [36305.0, 36305.0, 36338.125, 36338.125],\n", - " [36425.0, 36425.0, 36435.0, 36435.0],\n", - " [36415.0, 36415.0, 36430.0, 36430.0],\n", - " [36455.0, 36455.0, 36465.0, 36465.0],\n", - " [36445.0, 36445.0, 36460.0, 36460.0],\n", - " [36422.5, 36422.5, 36452.5, 36452.5],\n", - " [36405.0, 36405.0, 36437.5, 36437.5],\n", - " [36475.0, 36475.0, 36485.0, 36485.0],\n", - " [36495.0, 36495.0, 36505.0, 36505.0],\n", - " [36480.0, 36480.0, 36500.0, 36500.0],\n", - " [36421.25, 36421.25, 36490.0, 36490.0],\n", - " [36535.0, 36535.0, 36545.0, 36545.0],\n", - " [36555.0, 36555.0, 36565.0, 36565.0],\n", - " [36540.0, 36540.0, 36560.0, 36560.0],\n", - " [36525.0, 36525.0, 36550.0, 36550.0],\n", - " [36515.0, 36515.0, 36537.5, 36537.5],\n", - " [36455.625, 36455.625, 36526.25, 36526.25],\n", - " [36395.0, 36395.0, 36490.9375, 36490.9375],\n", - " [36605.0, 36605.0, 36615.0, 36615.0],\n", - " [36595.0, 36595.0, 36610.0, 36610.0],\n", - " [36585.0, 36585.0, 36602.5, 36602.5],\n", - " [36575.0, 36575.0, 36593.75, 36593.75],\n", - " [36442.96875, 36442.96875, 36584.375, 36584.375],\n", - " [36635.0, 36635.0, 36645.0, 36645.0],\n", - " [36685.0, 36685.0, 36695.0, 36695.0],\n", - " [36675.0, 36675.0, 36690.0, 36690.0],\n", - " [36665.0, 36665.0, 36682.5, 36682.5],\n", - " [36655.0, 36655.0, 36673.75, 36673.75],\n", - " [36640.0, 36640.0, 36664.375, 36664.375],\n", - " [36625.0, 36625.0, 36652.1875, 36652.1875],\n", - " [36715.0, 36715.0, 36725.0, 36725.0],\n", - " [36705.0, 36705.0, 36720.0, 36720.0],\n", - " [36765.0, 36765.0, 36775.0, 36775.0],\n", - " [36755.0, 36755.0, 36770.0, 36770.0],\n", - " [36745.0, 36745.0, 36762.5, 36762.5],\n", - " [36735.0, 36735.0, 36753.75, 36753.75],\n", - " [36805.0, 36805.0, 36815.0, 36815.0],\n", - " [36795.0, 36795.0, 36810.0, 36810.0],\n", - " [36855.0, 36855.0, 36865.0, 36865.0],\n", - " [36845.0, 36845.0, 36860.0, 36860.0],\n", - " [36835.0, 36835.0, 36852.5, 36852.5],\n", - " [36825.0, 36825.0, 36843.75, 36843.75],\n", - " [36802.5, 36802.5, 36834.375, 36834.375],\n", - " [36885.0, 36885.0, 36895.0, 36895.0],\n", - " [36875.0, 36875.0, 36890.0, 36890.0],\n", - " [36818.4375, 36818.4375, 36882.5, 36882.5],\n", - " [36785.0, 36785.0, 36850.46875, 36850.46875],\n", - " [36744.375, 36744.375, 36817.734375, 36817.734375],\n", - " [36712.5, 36712.5, 36781.0546875, 36781.0546875],\n", - " [36925.0, 36925.0, 36935.0, 36935.0],\n", - " [36915.0, 36915.0, 36930.0, 36930.0],\n", - " [36955.0, 36955.0, 36965.0, 36965.0],\n", - " [36945.0, 36945.0, 36960.0, 36960.0],\n", - " [36922.5, 36922.5, 36952.5, 36952.5],\n", - " [36975.0, 36975.0, 36985.0, 36985.0],\n", - " [36995.0, 36995.0, 37005.0, 37005.0],\n", - " [36980.0, 36980.0, 37000.0, 37000.0],\n", - " [36937.5, 36937.5, 36990.0, 36990.0],\n", - " [36905.0, 36905.0, 36963.75, 36963.75],\n", - " [36746.77734375, 36746.77734375, 36934.375, 36934.375],\n", - " [36638.59375, 36638.59375, 36840.576171875, 36840.576171875],\n", - " [36513.671875, 36513.671875, 36739.5849609375, 36739.5849609375],\n", - " [36385.0, 36385.0, 36626.62841796875, 36626.62841796875],\n", - " [36321.5625, 36321.5625, 36505.814208984375, 36505.814208984375],\n", - " [36295.0, 36295.0, 36413.68835449219, 36413.68835449219],\n", - " [36285.0, 36285.0, 36354.344177246094, 36354.344177246094],\n", - " [35891.91913604736, 35891.91913604736, 36319.67208862305, 36319.67208862305],\n", - " [37065.0, 37065.0, 37075.0, 37075.0],\n", - " [37055.0, 37055.0, 37070.0, 37070.0],\n", - " [37095.0, 37095.0, 37105.0, 37105.0],\n", - " [37135.0, 37135.0, 37145.0, 37145.0],\n", - " [37125.0, 37125.0, 37140.0, 37140.0],\n", - " [37165.0, 37165.0, 37175.0, 37175.0],\n", - " [37205.0, 37205.0, 37215.0, 37215.0],\n", - " [37195.0, 37195.0, 37210.0, 37210.0],\n", - " [37315.0, 37315.0, 37325.0, 37325.0],\n", - " [37305.0, 37305.0, 37320.0, 37320.0],\n", - " [37295.0, 37295.0, 37312.5, 37312.5],\n", - " [37285.0, 37285.0, 37303.75, 37303.75],\n", - " [37275.0, 37275.0, 37294.375, 37294.375],\n", - " [37265.0, 37265.0, 37284.6875, 37284.6875],\n", - " [37335.0, 37335.0, 37345.0, 37345.0],\n", - " [37274.84375, 37274.84375, 37340.0, 37340.0],\n", - " [37355.0, 37355.0, 37365.0, 37365.0],\n", - " [37307.421875, 37307.421875, 37360.0, 37360.0],\n", - " [37255.0, 37255.0, 37333.7109375, 37333.7109375],\n", - " [37245.0, 37245.0, 37294.35546875, 37294.35546875],\n", - " [37235.0, 37235.0, 37269.677734375, 37269.677734375],\n", - " [37225.0, 37225.0, 37252.3388671875, 37252.3388671875],\n", - " [37385.0, 37385.0, 37395.0, 37395.0],\n", - " [37375.0, 37375.0, 37390.0, 37390.0],\n", - " [37238.66943359375, 37238.66943359375, 37382.5, 37382.5],\n", - " [37202.5, 37202.5, 37310.584716796875, 37310.584716796875],\n", - " [37185.0, 37185.0, 37256.54235839844, 37256.54235839844],\n", - " [37170.0, 37170.0, 37220.77117919922, 37220.77117919922],\n", - " [37155.0, 37155.0, 37195.38558959961, 37195.38558959961],\n", - " [37132.5, 37132.5, 37175.192794799805, 37175.192794799805],\n", - " [37115.0, 37115.0, 37153.8463973999, 37153.8463973999],\n", - " [37435.0, 37435.0, 37445.0, 37445.0],\n", - " [37425.0, 37425.0, 37440.0, 37440.0],\n", - " [37415.0, 37415.0, 37432.5, 37432.5],\n", - " [37405.0, 37405.0, 37423.75, 37423.75],\n", - " [37455.0, 37455.0, 37465.0, 37465.0],\n", - " [37485.0, 37485.0, 37495.0, 37495.0],\n", - " [37475.0, 37475.0, 37490.0, 37490.0],\n", - " [37460.0, 37460.0, 37482.5, 37482.5],\n", - " [37414.375, 37414.375, 37471.25, 37471.25],\n", - " [37505.0, 37505.0, 37515.0, 37515.0],\n", - " [37525.0, 37525.0, 37535.0, 37535.0],\n", - " [37510.0, 37510.0, 37530.0, 37530.0],\n", - " [37585.0, 37585.0, 37595.0, 37595.0],\n", - " [37575.0, 37575.0, 37590.0, 37590.0],\n", - " [37565.0, 37565.0, 37582.5, 37582.5],\n", - " [37555.0, 37555.0, 37573.75, 37573.75],\n", - " [37545.0, 37545.0, 37564.375, 37564.375],\n", - " [37520.0, 37520.0, 37554.6875, 37554.6875],\n", - " [37605.0, 37605.0, 37615.0, 37615.0],\n", - " [37645.0, 37645.0, 37655.0, 37655.0],\n", - " [37635.0, 37635.0, 37650.0, 37650.0],\n", - " [37675.0, 37675.0, 37685.0, 37685.0],\n", - " [37695.0, 37695.0, 37705.0, 37705.0],\n", - " [37680.0, 37680.0, 37700.0, 37700.0],\n", - " [37665.0, 37665.0, 37690.0, 37690.0],\n", - " [37642.5, 37642.5, 37677.5, 37677.5],\n", - " [37735.0, 37735.0, 37745.0, 37745.0],\n", - " [37725.0, 37725.0, 37740.0, 37740.0],\n", - " [37715.0, 37715.0, 37732.5, 37732.5],\n", - " [37660.0, 37660.0, 37723.75, 37723.75],\n", - " [37625.0, 37625.0, 37691.875, 37691.875],\n", - " [37610.0, 37610.0, 37658.4375, 37658.4375],\n", - " [37537.34375, 37537.34375, 37634.21875, 37634.21875],\n", - " [37442.8125, 37442.8125, 37585.78125, 37585.78125],\n", - " [37134.42319869995, 37134.42319869995, 37514.296875, 37514.296875],\n", - " [37100.0, 37100.0, 37324.360036849976, 37324.360036849976],\n", - " [37085.0, 37085.0, 37212.18001842499, 37212.18001842499],\n", - " [37755.0, 37755.0, 37765.0, 37765.0],\n", - " [37785.0, 37785.0, 37795.0, 37795.0],\n", - " [37775.0, 37775.0, 37790.0, 37790.0],\n", - " [37760.0, 37760.0, 37782.5, 37782.5],\n", - " [37805.0, 37805.0, 37815.0, 37815.0],\n", - " [37771.25, 37771.25, 37810.0, 37810.0],\n", - " [37835.0, 37835.0, 37845.0, 37845.0],\n", - " [37825.0, 37825.0, 37840.0, 37840.0],\n", - " [37865.0, 37865.0, 37875.0, 37875.0],\n", - " [37855.0, 37855.0, 37870.0, 37870.0],\n", - " [37832.5, 37832.5, 37862.5, 37862.5],\n", - " [37885.0, 37885.0, 37895.0, 37895.0],\n", - " [37847.5, 37847.5, 37890.0, 37890.0],\n", - " [37790.625, 37790.625, 37868.75, 37868.75],\n", - " [37965.0, 37965.0, 37975.0, 37975.0],\n", - " [37955.0, 37955.0, 37970.0, 37970.0],\n", - " [37945.0, 37945.0, 37962.5, 37962.5],\n", - " [37935.0, 37935.0, 37953.75, 37953.75],\n", - " [37925.0, 37925.0, 37944.375, 37944.375],\n", - " [37915.0, 37915.0, 37934.6875, 37934.6875],\n", - " [37905.0, 37905.0, 37924.84375, 37924.84375],\n", - " [37829.6875, 37829.6875, 37914.921875, 37914.921875],\n", - " [37148.590009212494, 37148.590009212494, 37872.3046875, 37872.3046875],\n", - " [37062.5, 37062.5, 37510.44734835625, 37510.44734835625],\n", - " [37045.0, 37045.0, 37286.47367417812, 37286.47367417812],\n", - " [37035.0, 37035.0, 37165.73683708906, 37165.73683708906],\n", - " [37025.0, 37025.0, 37100.36841854453, 37100.36841854453],\n", - " [38045.0, 38045.0, 38055.0, 38055.0],\n", - " [38075.0, 38075.0, 38085.0, 38085.0],\n", - " [38065.0, 38065.0, 38080.0, 38080.0],\n", - " [38050.0, 38050.0, 38072.5, 38072.5],\n", - " [38135.0, 38135.0, 38145.0, 38145.0],\n", - " [38125.0, 38125.0, 38140.0, 38140.0],\n", - " [38165.0, 38165.0, 38175.0, 38175.0],\n", - " [38155.0, 38155.0, 38170.0, 38170.0],\n", - " [38132.5, 38132.5, 38162.5, 38162.5],\n", - " [38115.0, 38115.0, 38147.5, 38147.5],\n", - " [38105.0, 38105.0, 38131.25, 38131.25],\n", - " [38095.0, 38095.0, 38118.125, 38118.125],\n", - " [38061.25, 38061.25, 38106.5625, 38106.5625],\n", - " [38035.0, 38035.0, 38083.90625, 38083.90625],\n", - " [38185.0, 38185.0, 38195.0, 38195.0],\n", - " [38059.453125, 38059.453125, 38190.0, 38190.0],\n", - " [38225.0, 38225.0, 38235.0, 38235.0],\n", - " [38215.0, 38215.0, 38230.0, 38230.0],\n", - " [38205.0, 38205.0, 38222.5, 38222.5],\n", - " [38245.0, 38245.0, 38255.0, 38255.0],\n", - " [38213.75, 38213.75, 38250.0, 38250.0],\n", - " [38124.7265625, 38124.7265625, 38231.875, 38231.875],\n", - " [38025.0, 38025.0, 38178.30078125, 38178.30078125],\n", - " [38015.0, 38015.0, 38101.650390625, 38101.650390625],\n", - " [38005.0, 38005.0, 38058.3251953125, 38058.3251953125],\n", - " [37995.0, 37995.0, 38031.66259765625, 38031.66259765625],\n", - " [38265.0, 38265.0, 38275.0, 38275.0],\n", - " [38013.331298828125, 38013.331298828125, 38270.0, 38270.0],\n", - " [37985.0, 37985.0, 38141.66564941406, 38141.66564941406],\n", - " [38315.0, 38315.0, 38325.0, 38325.0],\n", - " [38345.0, 38345.0, 38355.0, 38355.0],\n", - " [38335.0, 38335.0, 38350.0, 38350.0],\n", - " [38320.0, 38320.0, 38342.5, 38342.5],\n", - " [38375.0, 38375.0, 38385.0, 38385.0],\n", - " [38365.0, 38365.0, 38380.0, 38380.0],\n", - " [38331.25, 38331.25, 38372.5, 38372.5],\n", - " [38415.0, 38415.0, 38425.0, 38425.0],\n", - " [38405.0, 38405.0, 38420.0, 38420.0],\n", - " [38435.0, 38435.0, 38445.0, 38445.0],\n", - " [38412.5, 38412.5, 38440.0, 38440.0],\n", - " [38485.0, 38485.0, 38495.0, 38495.0],\n", - " [38475.0, 38475.0, 38490.0, 38490.0],\n", - " [38555.0, 38555.0, 38565.0, 38565.0],\n", - " [38585.0, 38585.0, 38595.0, 38595.0],\n", - " [38575.0, 38575.0, 38590.0, 38590.0],\n", - " [38560.0, 38560.0, 38582.5, 38582.5],\n", - " [38545.0, 38545.0, 38571.25, 38571.25],\n", - " [38535.0, 38535.0, 38558.125, 38558.125],\n", - " [38525.0, 38525.0, 38546.5625, 38546.5625],\n", - " [38605.0, 38605.0, 38615.0, 38615.0],\n", - " [38645.0, 38645.0, 38655.0, 38655.0],\n", - " [38635.0, 38635.0, 38650.0, 38650.0],\n", - " [38625.0, 38625.0, 38642.5, 38642.5],\n", - " [38675.0, 38675.0, 38685.0, 38685.0],\n", - " [38695.0, 38695.0, 38705.0, 38705.0],\n", - " [38680.0, 38680.0, 38700.0, 38700.0],\n", - " [38665.0, 38665.0, 38690.0, 38690.0],\n", - " [38633.75, 38633.75, 38677.5, 38677.5],\n", - " [38610.0, 38610.0, 38655.625, 38655.625],\n", - " [38725.0, 38725.0, 38735.0, 38735.0],\n", - " [38715.0, 38715.0, 38730.0, 38730.0],\n", - " [38765.0, 38765.0, 38775.0, 38775.0],\n", - " [38755.0, 38755.0, 38770.0, 38770.0],\n", - " [38745.0, 38745.0, 38762.5, 38762.5],\n", - " [38805.0, 38805.0, 38815.0, 38815.0],\n", - " [38795.0, 38795.0, 38810.0, 38810.0],\n", - " [38825.0, 38825.0, 38835.0, 38835.0],\n", - " [38845.0, 38845.0, 38855.0, 38855.0],\n", - " [38830.0, 38830.0, 38850.0, 38850.0],\n", - " [38905.0, 38905.0, 38915.0, 38915.0],\n", - " [38895.0, 38895.0, 38910.0, 38910.0],\n", - " [38885.0, 38885.0, 38902.5, 38902.5],\n", - " [38875.0, 38875.0, 38893.75, 38893.75],\n", - " [38865.0, 38865.0, 38884.375, 38884.375],\n", - " [38840.0, 38840.0, 38874.6875, 38874.6875],\n", - " [38802.5, 38802.5, 38857.34375, 38857.34375],\n", - " [38785.0, 38785.0, 38829.921875, 38829.921875],\n", - " [38945.0, 38945.0, 38955.0, 38955.0],\n", - " [38935.0, 38935.0, 38950.0, 38950.0],\n", - " [38925.0, 38925.0, 38942.5, 38942.5],\n", - " [38985.0, 38985.0, 38995.0, 38995.0],\n", - " [38975.0, 38975.0, 38990.0, 38990.0],\n", - " [38965.0, 38965.0, 38982.5, 38982.5],\n", - " [39005.0, 39005.0, 39015.0, 39015.0],\n", - " [38973.75, 38973.75, 39010.0, 39010.0],\n", - " [38933.75, 38933.75, 38991.875, 38991.875],\n", - " [38807.4609375, 38807.4609375, 38962.8125, 38962.8125],\n", - " [38753.75, 38753.75, 38885.13671875, 38885.13671875],\n", - " [38722.5, 38722.5, 38819.443359375, 38819.443359375],\n", - " [38632.8125, 38632.8125, 38770.9716796875, 38770.9716796875],\n", - " [38535.78125, 38535.78125, 38701.89208984375, 38701.89208984375],\n", - " [38515.0, 38515.0, 38618.836669921875, 38618.836669921875],\n", - " [38505.0, 38505.0, 38566.91833496094, 38566.91833496094],\n", - " [38482.5, 38482.5, 38535.95916748047, 38535.95916748047],\n", - " [38465.0, 38465.0, 38509.229583740234, 38509.229583740234],\n", - " [38455.0, 38455.0, 38487.11479187012, 38487.11479187012],\n", - " [38426.25, 38426.25, 38471.05739593506, 38471.05739593506],\n", - " [38395.0, 38395.0, 38448.65369796753, 38448.65369796753],\n", - " [38351.875, 38351.875, 38421.826848983765, 38421.826848983765],\n", - " [38305.0, 38305.0, 38386.85092449188, 38386.85092449188],\n", - " [38295.0, 38295.0, 38345.92546224594, 38345.92546224594],\n", - " [38285.0, 38285.0, 38320.46273112297, 38320.46273112297],\n", - " [38063.33282470703,\n", - " 38063.33282470703,\n", - " 38302.731365561485,\n", - " 38302.731365561485],\n", - " [37062.684209272265,\n", - " 37062.684209272265,\n", - " 38183.03209513426,\n", - " 38183.03209513426],\n", - " [37015.0, 37015.0, 37622.85815220326, 37622.85815220326],\n", - " [36105.795612335205,\n", - " 36105.795612335205,\n", - " 37318.92907610163,\n", - " 37318.92907610163],\n", - " [35772.5, 35772.5, 36712.36234421842, 36712.36234421842],\n", - " [35686.5625, 35686.5625, 36242.43117210921, 36242.43117210921],\n", - " [35615.0, 35615.0, 35964.496836054605, 35964.496836054605],\n", - " [35605.0, 35605.0, 35789.7484180273, 35789.7484180273],\n", - " [35222.5426864624, 35222.5426864624, 35697.37420901365, 35697.37420901365],\n", - " [35143.75, 35143.75, 35459.95844773803, 35459.95844773803],\n", - " [35125.0, 35125.0, 35301.85422386901, 35301.85422386901],\n", - " [30406.519507548073,\n", - " 30406.519507548073,\n", - " 35213.42711193451,\n", - " 35213.42711193451],\n", - " [29615.0, 29615.0, 32809.97330974129, 32809.97330974129],\n", - " [29474.8046875, 29474.8046875, 31212.486654870645, 31212.486654870645],\n", - " [29191.0546875, 29191.0546875, 30343.645671185324, 30343.645671185324],\n", - " [24444.839301104235,\n", - " 24444.839301104235,\n", - " 29767.350179342662,\n", - " 29767.350179342662],\n", - " [3839.5491115941322,\n", - " 3839.5491115941322,\n", - " 27106.09474022345,\n", - " 27106.09474022345],\n", - " [91.5909181638827,\n", - " 91.5909181638827,\n", - " 15472.821925908791,\n", - " 15472.821925908791]],\n", - " 'ivl': ['3182',\n", - " '1090',\n", - " '367',\n", - " '179',\n", - " '1748',\n", - " '3292',\n", - " '710',\n", - " '709',\n", - " '1209',\n", - " '106',\n", - " '1121',\n", - " '2698',\n", - " '2700',\n", - " '20',\n", - " '21',\n", - " '1624',\n", - " '1625',\n", - " '2094',\n", - " '2277',\n", - " '1512',\n", - " '329',\n", - " '1771',\n", - " '450',\n", - " '2988',\n", - " '330',\n", - " '669',\n", - " '1145',\n", - " '1605',\n", - " '3435',\n", - " '331',\n", - " '2536',\n", - " '1092',\n", - " '2152',\n", - " '2844',\n", - " '2537',\n", - " '2538',\n", - " '579',\n", - " '2142',\n", - " '3559',\n", - " '1193',\n", - " '2499',\n", - " '3682',\n", - " '897',\n", - " '686',\n", - " '356',\n", - " '685',\n", - " '974',\n", - " '1792',\n", - " '249',\n", - " '797',\n", - " '660',\n", - " '796',\n", - " '348',\n", - " '1262',\n", - " '3090',\n", - " '3285',\n", - " '773',\n", - " '733',\n", - " '2453',\n", - " '26',\n", - " '39',\n", - " '1626',\n", - " '1819',\n", - " '1636',\n", - " '3454',\n", - " '1944',\n", - " '6',\n", - " '2646',\n", - " '3058',\n", - " '1170',\n", - " '487',\n", - " '569',\n", - " '816',\n", - " '257',\n", - " '2198',\n", - " '2850',\n", - " '2431',\n", - " '3347',\n", - " '896',\n", - " '214',\n", - " '215',\n", - " '654',\n", - " '652',\n", - " '648',\n", - " '650',\n", - " '649',\n", - " '653',\n", - " '2195',\n", - " '651',\n", - " '646',\n", - " '647',\n", - " '645',\n", - " '2193',\n", - " '2855',\n", - " '2857',\n", - " '3348',\n", - " '58',\n", - " '57',\n", - " '354',\n", - " '2853',\n", - " '213',\n", - " '2854',\n", - " '657',\n", - " '2199',\n", - " '2200',\n", - " '3560',\n", - " '260',\n", - " '261',\n", - " '259',\n", - " '258',\n", - " '655',\n", - " '2887',\n", - " '314',\n", - " '2683',\n", - " '670',\n", - " '2858',\n", - " '1421',\n", - " '3394',\n", - " '1631',\n", - " '862',\n", - " '1103',\n", - " '496',\n", - " '3631',\n", - " '3151',\n", - " '2870',\n", - " '2871',\n", - " '3149',\n", - " '2885',\n", - " '3354',\n", - " '1057',\n", - " '256',\n", - " '644',\n", - " '3653',\n", - " '147',\n", - " '255',\n", - " '1059',\n", - " '3395',\n", - " '488',\n", - " '643',\n", - " '3812',\n", - " '2868',\n", - " '1102',\n", - " '1617',\n", - " '3654',\n", - " '3279',\n", - " '2515',\n", - " '3635',\n", - " '3636',\n", - " '2498',\n", - " '2418',\n", - " '27',\n", - " '890',\n", - " '1351',\n", - " '3146',\n", - " '1633',\n", - " '1635',\n", - " '30',\n", - " '3145',\n", - " '29',\n", - " '2419',\n", - " '3852',\n", - " '1630',\n", - " '1171',\n", - " '3707',\n", - " '2220',\n", - " '3706',\n", - " '3790',\n", - " '3175',\n", - " '3393',\n", - " '1511',\n", - " '3396',\n", - " '505',\n", - " '25',\n", - " '1629',\n", - " '980',\n", - " '506',\n", - " '981',\n", - " '32',\n", - " '3397',\n", - " '829',\n", - " '1061',\n", - " '3516',\n", - " '3248',\n", - " '3567',\n", - " '3826',\n", - " '3318',\n", - " '3688',\n", - " '1144',\n", - " '1946',\n", - " '1772',\n", - " '2846',\n", - " '2325',\n", - " '2501',\n", - " '311',\n", - " '3827',\n", - " '3497',\n", - " '3747',\n", - " '1949',\n", - " '2763',\n", - " '2941',\n", - " '310',\n", - " '2706',\n", - " '2707',\n", - " '3432',\n", - " '668',\n", - " '993',\n", - " '3200',\n", - " '3568',\n", - " '3250',\n", - " '160',\n", - " '2817',\n", - " '3828',\n", - " '2502',\n", - " '2575',\n", - " '309',\n", - " '3452',\n", - " '1950',\n", - " '1154',\n", - " '1073',\n", - " '1152',\n", - " '3342',\n", - " '1155',\n", - " '3480',\n", - " '2684',\n", - " '2685',\n", - " '509',\n", - " '894',\n", - " '2894',\n", - " '2895',\n", - " '1031',\n", - " '1570',\n", - " '1198',\n", - " '3597',\n", - " '3477',\n", - " '3554',\n", - " '2565',\n", - " '3810',\n", - " '347',\n", - " '3762',\n", - " '1545',\n", - " '2042',\n", - " '1687',\n", - " '1982',\n", - " '1983',\n", - " '3702',\n", - " '1752',\n", - " '2652',\n", - " '1050',\n", - " '1329',\n", - " '1646',\n", - " '3215',\n", - " '3730',\n", - " '374',\n", - " '795',\n", - " '1062',\n", - " '2917',\n", - " '3514',\n", - " '3664',\n", - " '3663',\n", - " '3853',\n", - " '548',\n", - " '2413',\n", - " '3865',\n", - " '3344',\n", - " '3345',\n", - " '2004',\n", - " '2365',\n", - " '2363',\n", - " '2366',\n", - " '1563',\n", - " '1695',\n", - " '2179',\n", - " '1876',\n", - " '1402',\n", - " '2003',\n", - " '1125',\n", - " '1914',\n", - " '745',\n", - " '1331',\n", - " '429',\n", - " '1915',\n", - " '528',\n", - " '529',\n", - " '3496',\n", - " '3387',\n", - " '3315',\n", - " '3716',\n", - " '665',\n", - " '3786',\n", - " '3691',\n", - " '3814',\n", - " '3815',\n", - " '3690',\n", - " '3314',\n", - " '3419',\n", - " '3572',\n", - " '3816',\n", - " '3555',\n", - " '3713',\n", - " '1169',\n", - " '2615',\n", - " '3382',\n", - " '3381',\n", - " '2616',\n", - " '3715',\n", - " '777',\n", - " '2614',\n", - " '2840',\n", - " '3388',\n", - " '3644',\n", - " '2368',\n", - " '3214',\n", - " '3288',\n", - " '3645',\n", - " '3289',\n", - " '3643',\n", - " '2841',\n", - " '3576',\n", - " '3483',\n", - " '3714',\n", - " '2504',\n", - " '2930',\n", - " '2561',\n", - " '3364',\n", - " '2451',\n", - " '3657',\n", - " '3655',\n", - " '3656',\n", - " '3363',\n", - " '3521',\n", - " '3080',\n", - " '3219',\n", - " '2447',\n", - " '3081',\n", - " '3517',\n", - " '2984',\n", - " '3519',\n", - " '2448',\n", - " '2872',\n", - " '2308',\n", - " '656',\n", - " '2307',\n", - " '2449',\n", - " '1296',\n", - " '1295',\n", - " '925',\n", - " '1293',\n", - " '1294',\n", - " '1689',\n", - " '3461',\n", - " '16',\n", - " '1265',\n", - " '1668',\n", - " '1669',\n", - " '2471',\n", - " '3099',\n", - " '1342',\n", - " '2726',\n", - " '537',\n", - " '3839',\n", - " '3840',\n", - " '1264',\n", - " '2204',\n", - " '2559',\n", - " '2043',\n", - " '2382',\n", - " '1750',\n", - " '2100',\n", - " '1776',\n", - " '2205',\n", - " '2472',\n", - " '2558',\n", - " '2897',\n", - " '3102',\n", - " '3104',\n", - " '3106',\n", - " '243',\n", - " '762',\n", - " '824',\n", - " '185',\n", - " '1429',\n", - " '271',\n", - " '1430',\n", - " '1720',\n", - " '1721',\n", - " '538',\n", - " '1197',\n", - " '1006',\n", - " '28',\n", - " '135',\n", - " '624',\n", - " '677',\n", - " '15',\n", - " '1007',\n", - " '136',\n", - " '757',\n", - " '313',\n", - " '1008',\n", - " '2045',\n", - " '204',\n", - " '1977',\n", - " '124',\n", - " '353',\n", - " '451',\n", - " '2434',\n", - " '2823',\n", - " '3611',\n", - " '788',\n", - " '251',\n", - " '253',\n", - " '2238',\n", - " '2237',\n", - " '2239',\n", - " '1083',\n", - " '14',\n", - " '2694',\n", - " '2279',\n", - " '2695',\n", - " '3818',\n", - " '1361',\n", - " '1362',\n", - " '3820',\n", - " '2944',\n", - " '3573',\n", - " '3600',\n", - " '2666',\n", - " '2912',\n", - " '2247',\n", - " '2427',\n", - " '2976',\n", - " '2975',\n", - " '3842',\n", - " '3247',\n", - " '3512',\n", - " '2745',\n", - " '3569',\n", - " '2192',\n", - " '2621',\n", - " '2428',\n", - " '2619',\n", - " '2744',\n", - " '2977',\n", - " '2426',\n", - " '3599',\n", - " '3843',\n", - " '2429',\n", - " '2623',\n", - " '3147',\n", - " '2278',\n", - " '3733',\n", - " '3821',\n", - " '3823',\n", - " '2318',\n", - " '1022',\n", - " '3822',\n", - " '1575',\n", - " '3272',\n", - " '2864',\n", - " '2748',\n", - " '3837',\n", - " '2750',\n", - " '3057',\n", - " '2349',\n", - " '2457',\n", - " '2888',\n", - " '1130',\n", - " '3056',\n", - " '1576',\n", - " '1577',\n", - " '1194',\n", - " '3055',\n", - " '2091',\n", - " '2612',\n", - " '1841',\n", - " '791',\n", - " '1842',\n", - " '1844',\n", - " '2090',\n", - " '2348',\n", - " '1843',\n", - " '1845',\n", - " '1020',\n", - " '1850',\n", - " '154',\n", - " '792',\n", - " '152',\n", - " '1131',\n", - " '2747',\n", - " '3488',\n", - " '3858',\n", - " '267',\n", - " '359',\n", - " '266',\n", - " '360',\n", - " '2730',\n", - " '1419',\n", - " '411',\n", - " '785',\n", - " '96',\n", - " '1420',\n", - " '2317',\n", - " '269',\n", - " '2959',\n", - " '588',\n", - " '1658',\n", - " '2636',\n", - " '3201',\n", - " '3052',\n", - " '3359',\n", - " '3595',\n", - " '2970',\n", - " '3446',\n", - " '3500',\n", - " '141',\n", - " '265',\n", - " '1034',\n", - " '1380',\n", - " '1528',\n", - " '808',\n", - " '1427',\n", - " '1426',\n", - " '1424',\n", - " '1425',\n", - " '1769',\n", - " '2782',\n", - " '2526',\n", - " '2662',\n", - " '2244',\n", - " '2151',\n", - " '2352',\n", - " '2439',\n", - " '2661',\n", - " '2354',\n", - " '2641',\n", - " '1526',\n", - " '1529',\n", - " '2525',\n", - " '1064',\n", - " '2298',\n", - " '1865',\n", - " '1996',\n", - " '2353',\n", - " '2132',\n", - " '2555',\n", - " '774',\n", - " '1423',\n", - " '1315',\n", - " '1768',\n", - " '1997',\n", - " '661',\n", - " '1316',\n", - " '584',\n", - " '142',\n", - " '585',\n", - " '2133',\n", - " '1379',\n", - " '707',\n", - " '986',\n", - " '1033',\n", - " '1770',\n", - " '793',\n", - " '985',\n", - " '2245',\n", - " '1868',\n", - " '3196',\n", - " '3053',\n", - " '2994',\n", - " '3166',\n", - " '3781',\n", - " '3693',\n", - " '2892',\n", - " '3501',\n", - " '82',\n", - " '1867',\n", - " '3088',\n", - " '2968',\n", - " '2969',\n", - " '1666',\n", - " '2148',\n", - " '2146',\n", - " '2147',\n", - " '131',\n", - " '132',\n", - " '627',\n", - " '628',\n", - " '1298',\n", - " '1299',\n", - " '1485',\n", - " '1486',\n", - " '1300',\n", - " '1301',\n", - " '36',\n", - " '37',\n", - " '1484',\n", - " '1665',\n", - " '38',\n", - " '1777',\n", - " '780',\n", - " '302',\n", - " '303',\n", - " '821',\n", - " '558',\n", - " '3796',\n", - " '2175',\n", - " '1191',\n", - " '1189',\n", - " '1187',\n", - " '1190',\n", - " '2627',\n", - " '2628',\n", - " '467',\n", - " '218',\n", - " '798',\n", - " '3548',\n", - " '3700',\n", - " '3278',\n", - " '3547',\n", - " '3699',\n", - " '3694',\n", - " '3695',\n", - " '3698',\n", - " '3546',\n", - " '3696',\n", - " '2286',\n", - " '3236',\n", - " '2714',\n", - " '2034',\n", - " '2715',\n", - " '2713',\n", - " '2716',\n", - " '3213',\n", - " '2955',\n", - " '2956',\n", - " '2038',\n", - " '2037',\n", - " '3212',\n", - " '3795',\n", - " '2029',\n", - " '2712',\n", - " '1659',\n", - " '1660',\n", - " '1032',\n", - " '2689',\n", - " '3361',\n", - " '1813',\n", - " '3362',\n", - " '2098',\n", - " '1223',\n", - " '3596',\n", - " '1810',\n", - " '1222',\n", - " '1661',\n", - " '2097',\n", - " '1811',\n", - " '2096',\n", - " '1881',\n", - " '3076',\n", - " '3557',\n", - " '519',\n", - " '3672',\n", - " '3065',\n", - " '1029',\n", - " '3856',\n", - " '2000',\n", - " '3536',\n", - " '3077',\n", - " '3332',\n", - " '3264',\n", - " '3262',\n", - " '3426',\n", - " '2355',\n", - " '3425',\n", - " '3333',\n", - " '1229',\n", - " '1713',\n", - " '2159',\n", - " '1711',\n", - " '1714',\n", - " '2886',\n", - " '2160',\n", - " '2161',\n", - " '3144',\n", - " '2384',\n", - " '1481',\n", - " '1086',\n", - " '3265',\n", - " '2518',\n", - " '2787',\n", - " '1712',\n", - " '1230',\n", - " '3179',\n", - " '1228',\n", - " '2838',\n", - " '2963',\n", - " '2960',\n", - " '3470',\n", - " '3598',\n", - " '1599',\n", - " '2961',\n", - " '3261',\n", - " '3844',\n", - " '2655',\n", - " '2962',\n", - " '937',\n", - " '1569',\n", - " '2760',\n", - " '2936',\n", - " '518',\n", - " '3209',\n", - " '3208',\n", - " '3210',\n", - " '3207',\n", - " '3211',\n", - " '3274',\n", - " '3116',\n", - " '3275',\n", - " '482',\n", - " '340',\n", - " '2438',\n", - " '559',\n", - " '751',\n", - " '51',\n", - " '52',\n", - " '352',\n", - " '1670',\n", - " '1521',\n", - " '3119',\n", - " '426',\n", - " '1765',\n", - " '2338',\n", - " '3464',\n", - " '2443',\n", - " '2784',\n", - " '469',\n", - " '1479',\n", - " '1371',\n", - " '1035',\n", - " '1478',\n", - " '3263',\n", - " '3509',\n", - " '1736',\n", - " '2982',\n", - " '2983',\n", - " '1703',\n", - " '1781',\n", - " '923',\n", - " '924',\n", - " '2633',\n", - " '1407',\n", - " '1408',\n", - " '1606',\n", - " '1900',\n", - " '1106',\n", - " '1107',\n", - " '1105',\n", - " '1406',\n", - " '1000',\n", - " '1779',\n", - " '1704',\n", - " '1901',\n", - " '1899',\n", - " '1902',\n", - " '2383',\n", - " '3323',\n", - " '3719',\n", - " '3544',\n", - " '3540',\n", - " '3543',\n", - " '2599',\n", - " '2756',\n", - " '3542',\n", - " '2040',\n", - " '3066',\n", - " '3541',\n", - " '1823',\n", - " '1482',\n", - " '1651',\n", - " '1652',\n", - " '2311',\n", - " '2460',\n", - " '3836',\n", - " '2123',\n", - " '2785',\n", - " '3760',\n", - " '2786',\n", - " '3406',\n", - " '2533',\n", - " '1738',\n", - " '2632',\n", - " '1907',\n", - " '2061',\n", - " '1822',\n", - " '2236',\n", - " '1908',\n", - " '2264',\n", - " '1737',\n", - " '1593',\n", - " '1735',\n", - " '1404',\n", - " '1261',\n", - " '1594',\n", - " '3739',\n", - " '3787',\n", - " '3863',\n", - " '840',\n", - " '3537',\n", - " '1260',\n", - " '1405',\n", - " '3343',\n", - " '2060',\n", - " '3661',\n", - " '2631',\n", - " '3593',\n", - " '3294',\n", - " '3662',\n", - " '3030',\n", - " '3031',\n", - " '2690',\n", - " '3538',\n", - " '3738',\n", - " '3216',\n", - " '3732',\n", - " '3770',\n", - " '834',\n", - " '504',\n", - " '507',\n", - " '295',\n", - " '392',\n", - " '3764',\n", - " '468',\n", - " '162',\n", - " '332',\n", - " '42',\n", - " '192',\n", - " '95',\n", - " '127',\n", - " '193',\n", - " '508',\n", - " '578',\n", - " '2797',\n", - " '1701',\n", - " '2585',\n", - " '870',\n", - " '446',\n", - " '736',\n", - " '3129',\n", - " '869',\n", - " '3180',\n", - " '3319',\n", - " '3763',\n", - " '3038',\n", - " '737',\n", - " '3510',\n", - " '445',\n", - " '299',\n", - " '408',\n", - " '407',\n", - " '2798',\n", - " '3130',\n", - " '2980',\n", - " '3078',\n", - " '1586',\n", - " '1767',\n", - " '503',\n", - " '481',\n", - " '574',\n", - " '631',\n", - " '2981',\n", - " '576',\n", - " '577',\n", - " '575',\n", - " '339',\n", - " '573',\n", - " '3220',\n", - " '738',\n", - " '3765',\n", - " '1067',\n", - " '1762',\n", - " '1763',\n", - " '1766',\n", - " '296',\n", - " '502',\n", - " '1236',\n", - " '1237',\n", - " '999',\n", - " '1403',\n", - " '1309',\n", - " '228',\n", - " '231',\n", - " '370',\n", - " '517',\n", - " '2337',\n", - " '2711',\n", - " '2303',\n", - " '3463',\n", - " '3466',\n", - " '217',\n", - " '2679',\n", - " '3439',\n", - " '755',\n", - " '603',\n", - " '1508',\n", - " '3526',\n", - " '2362',\n", - " '2680',\n", - " '3438',\n", - " '3442',\n", - " '2671',\n", - " '3440',\n", - " '3583',\n", - " '3245',\n", - " '3746',\n", - " '932',\n", - " '2450',\n", - " '3239',\n", - " '3072',\n", - " '3671',\n", - " '3807',\n", - " '3806',\n", - " '3808',\n", - " '3310',\n", - " '3311',\n", - " '3472',\n", - " '3034',\n", - " '3035',\n", - " '3036',\n", - " '1352',\n", - " '3803',\n", - " '3804',\n", - " '2978',\n", - " '3143',\n", - " '3142',\n", - " '2890',\n", - " '3135',\n", - " '3136',\n", - " '3131',\n", - " '3141',\n", - " '3137',\n", - " '3133',\n", - " '3140',\n", - " '3139',\n", - " '3132',\n", - " '3134',\n", - " '2578',\n", - " '2446',\n", - " '2524',\n", - " '2601',\n", - " '2602',\n", - " '2331',\n", - " '2398',\n", - " '2445',\n", - " '2243',\n", - " '2122',\n", - " '2241',\n", - " '1973',\n", - " '2332',\n", - " '2330',\n", - " '3805',\n", - " '220',\n", - " '1503',\n", - " '1219',\n", - " '2577',\n", - " '3138',\n", - " '2176',\n", - " '1348',\n", - " '1640',\n", - " '1063',\n", - " '1634',\n", - " '1639',\n", - " '1807',\n", - " '1602',\n", - " '1632',\n", - " '2727',\n", - " '2044',\n", - " '2891',\n", - " '936',\n", - " '2399',\n", - " '2334',\n", - " '1760',\n", - " '2121',\n", - " '634',\n", - " '933',\n", - " '87',\n", - " '511',\n", - " '369',\n", - " '368',\n", - " '602',\n", - " '9',\n", - " '8',\n", - " '466',\n", - " '90',\n", - " '165',\n", - " '10',\n", - " '91',\n", - " '88',\n", - " '89',\n", - " '273',\n", - " '365',\n", - " '333',\n", - " '633',\n", - " '934',\n", - " '366',\n", - " '31',\n", - " '134',\n", - " '245',\n", - " '137',\n", - " '225',\n", - " '1014',\n", - " '226',\n", - " '364',\n", - " '632',\n", - " '227',\n", - " '1603',\n", - " '224',\n", - " '229',\n", - " '1066',\n", - " '363',\n", - " '1604',\n", - " '2914',\n", - " '1933',\n", - " '2012',\n", - " '1350',\n", - " '1773',\n", - " '47',\n", - " '1582',\n", - " '904',\n", - " '906',\n", - " '1507',\n", - " '2617',\n", - " '716',\n", - " '717',\n", - " '604',\n", - " '1774',\n", - " '2441',\n", - " '2505',\n", - " '1349',\n", - " '991',\n", - " '1825',\n", - " '1826',\n", - " '987',\n", - " '988',\n", - " '1140',\n", - " '1504',\n", - " '905',\n", - " '1506',\n", - " '1638',\n", - " '1987',\n", - " '1989',\n", - " '1505',\n", - " '1985',\n", - " '1986',\n", - " '1988',\n", - " '1509',\n", - " '1984',\n", - " '989',\n", - " '990',\n", - " '1217',\n", - " '45',\n", - " '46',\n", - " '2172',\n", - " '2173',\n", - " '2581',\n", - " '1794',\n", - " '2021',\n", - " '2579',\n", - " '1849',\n", - " '2580',\n", - " '2582',\n", - " '2576',\n", - " '2997',\n", - " '802',\n", - " '882',\n", - " '878',\n", - " '879',\n", - " '1847',\n", - " '1848',\n", - " '1266',\n", - " '1398',\n", - " '1267',\n", - " '1399',\n", - " '2233',\n", - " '1357',\n", - " '1359',\n", - " '1360',\n", - " '1358',\n", - " '1183',\n", - " '2022',\n", - " '3117',\n", - " '3120',\n", - " '3118',\n", - " '2764',\n", - " '2928',\n", - " '3441',\n", - " '2444',\n", - " '2681',\n", - " '2442',\n", - " '3008',\n", - " '448',\n", - " '1515',\n", - " '320',\n", - " '323',\n", - " '449',\n", - " '2299',\n", - " '2167',\n", - " '3006',\n", - " '1517',\n", - " '3465',\n", - " '3792',\n", - " '1745',\n", - " '2998',\n", - " '3491',\n", - " '3000',\n", - " '3005',\n", - " '2999',\n", - " '3001',\n", - " '3002',\n", - " '3003',\n", - " '3007',\n", - " '3171',\n", - " '1519',\n", - " '957',\n", - " '1079',\n", - " '1078',\n", - " '955',\n", - " '1081',\n", - " '1672',\n", - " '3170',\n", - " '1082',\n", - " '3169',\n", - " '1522',\n", - " '1898',\n", - " '2168',\n", - " '2171',\n", - " '2761',\n", - " '3004',\n", - " '93',\n", - " '321',\n", - " '515',\n", - " '94',\n", - " '322',\n", - " '688',\n", - " '883',\n", - " '2400',\n", - " '803',\n", - " '202',\n", - " '1400',\n", - " '1401',\n", - " '373',\n", - " '2030',\n", - " '2027',\n", - " '2032',\n", - " '2035',\n", - " '2023',\n", - " '2025',\n", - " '2028',\n", - " '2031',\n", - " '2033',\n", - " '2026',\n", - " '2024',\n", - " '2036',\n", - " '2440',\n", - " '2626',\n", - " '2110',\n", - " '2574',\n", - " '2770',\n", - " '3676',\n", - " '2202',\n", - " '2254',\n", - " '2479',\n", - " '270',\n", - " '2569',\n", - " '3589',\n", - " '1143',\n", - " '858',\n", - " '381',\n", - " '2420',\n", - " '566',\n", - " '1961',\n", - " '465',\n", - " '1852',\n", - " '3845',\n", - " '789',\n", - " '1046',\n", - " '830',\n", - " '1292',\n", - " '831',\n", - " '1410',\n", - " '1962',\n", - " '3829',\n", - " '2114',\n", - " '2425',\n", - " '3233',\n", - " '1418',\n", - " '1662',\n", - " '2221',\n", - " '2507',\n", - " '623',\n", - " '1204',\n", - " '3697',\n", - " '3612',\n", - " '1374',\n", - " '2',\n", - " '1343',\n", - " '3639',\n", - " '1051',\n", - " '3390',\n", - " '2089',\n", - " '3389',\n", - " '1487',\n", - " '2069',\n", - " '2508',\n", - " '1501',\n", - " '1864',\n", - " '121',\n", - " '3811',\n", - " '3295',\n", - " '2165',\n", - " '2128',\n", - " '3720',\n", - " '1366',\n", - " '1663',\n", - " '1469',\n", - " '1871',\n", - " '1936',\n", - " '2487',\n", - " '3341',\n", - " '1591',\n", - " '1956',\n", - " '155',\n", - " '778',\n", - " '913',\n", - " '1890',\n", - " '1699',\n", - " '2877',\n", - " '1159',\n", - " '2557',\n", - " '1060',\n", - " '3489',\n", - " '1037',\n", - " '3752',\n", - " '304',\n", - " '3751',\n", - " '3404',\n", - " '40',\n", - " '3338',\n", - " '428',\n", - " '430',\n", - " '1883',\n", - " '1628',\n", - " '1276',\n", - " '1806',\n", - " '2423',\n", - " '1483',\n", - " '1998',\n", - " '1326',\n", - " '2691',\n", - " '804',\n", - " '2056',\n", - " '427',\n", - " '1705',\n", - " '3545',\n", - " '3817',\n", - " '740',\n", - " '3092',\n", - " '2884',\n", - " '3148',\n", - " '2099',\n", - " '2120',\n", - " '2903',\n", - " '3723',\n", - " '3199',\n", - " '3590',\n", - " '2162',\n", - " '2305',\n", - " '2659',\n", - " '1967',\n", - " '3756',\n", - " '1176',\n", - " '312',\n", - " '2506',\n", - " '376',\n", - " '500',\n", - " '722',\n", - " '2101',\n", - " '282',\n", - " '1246',\n", - " '1378',\n", - " '892',\n", - " '1377',\n", - " '2921',\n", - " '3855',\n", - " '2675',\n", - " '2935',\n", - " '2178',\n", - " '1363',\n", - " '1730',\n", - " '2385',\n", - " '2390',\n", - " '2186',\n", - " '1256',\n", - " '2106',\n", - " '1257',\n", - " '2164',\n", - " '2503',\n", - " '2539',\n", - " '3495',\n", - " '104',\n", - " '1931',\n", - " '1678',\n", - " '1951',\n", - " '3266',\n", - " '1417',\n", - " '3749',\n", - " '2916',\n", - " '212',\n", - " '19',\n", - " '211',\n", - " '1978',\n", - " '606',\n", - " '463',\n", - " '2458',\n", - " '3268',\n", - " '2873',\n", - " '1887',\n", - " '2227',\n", - " '1556',\n", - " '1214',\n", - " '1544',\n", - " '1888',\n", - " '1808',\n", - " '1889',\n", - " '2228',\n", - " '2408',\n", - " '2242',\n", - " '1755',\n", - " '1976',\n", - " '59',\n", - " '3423',\n", - " '3614',\n", - " '3011',\n", - " '3082',\n", - " '1069',\n", - " '3850',\n", - " '547',\n", - " '3453',\n", - " '3621',\n", - " '1550',\n", - " '1869',\n", - " '812',\n", - " '2866',\n", - " '958',\n", - " '1027',\n", - " '435',\n", - " '3780',\n", - " '3649',\n", - " '835',\n", - " '3033',\n", - " '2335',\n", - " '3857',\n", - " '3485',\n", - " '3809',\n", - " '60',\n", - " '3074',\n", - " '100',\n", - " '597',\n", - " '1365',\n", - " '1490',\n", - " '2734',\n", - " '2867',\n", - " '1141',\n", - " '1905',\n", - " '2347',\n", - " '1613',\n", - " '2312',\n", - " '726',\n", - " '2452',\n", - " '262',\n", - " '2129',\n", - " '3578',\n", - " '3778',\n", - " '1999',\n", - " '2150',\n", - " '3607',\n", - " '3025',\n", - " '1339',\n", - " '3608',\n", - " '706',\n", - " '1442',\n", - " '550',\n", - " '1608',\n", - " '2206',\n", - " '3494',\n", - " '393',\n", - " '1443',\n", - " '554',\n", - " '764',\n", - " '690',\n", - " '281',\n", - " '459',\n", - " '689',\n", - " '556',\n", - " '171',\n", - " '553',\n", - " '691',\n", - " '1857',\n", - " '405',\n", - " '551',\n", - " '2568',\n", - " '2411',\n", - " '483',\n", - " '941',\n", - " '2085',\n", - " '978',\n", - " '33',\n", - " '406',\n", - " '1543',\n", - " '1122',\n", - " '3625',\n", - " '3626',\n", - " '947',\n", - " '1258',\n", - " '1561',\n", - " '3277',\n", - " '1259',\n", - " '3019',\n", - " '1123',\n", - " '2781',\n", - " '3848',\n", - " '3846',\n", - " '3847',\n", - " '2284',\n", - " '3779',\n", - " '1231',\n", - " '1513',\n", - " '620',\n", - " '1317',\n", - " '1318',\n", - " '1734',\n", - " '2163',\n", - " '3685',\n", - " '619',\n", - " '1894',\n", - " '1531',\n", - " '2908',\n", - " '758',\n", - " '1926',\n", - " '3798',\n", - " '1696',\n", - " '1432',\n", - " '698',\n", - " '1895',\n", - " '3069',\n", - " '1532',\n", - " '1992',\n", - " '3070',\n", - " '3799',\n", - " '1619',\n", - " '761',\n", - " '1885',\n", - " '1271',\n", - " '759',\n", - " '1431',\n", - " '1533',\n", - " '3383',\n", - " '1270',\n", - " '895',\n", - " '1085',\n", - " '1234',\n", - " '1030',\n", - " '1656',\n", - " '713',\n", - " '3527',\n", - " '621',\n", - " '2852',\n", - " '161',\n", - " '1416',\n", - " '401',\n", - " '1759',\n", - " '1011',\n", - " '1993',\n", - " '1028',\n", - " '607',\n", - " '746',\n", - " '977',\n", - " '2309',\n", - " '2124',\n", - " '2006',\n", - " '2005',\n", - " '2455',\n", - " '70',\n", - " '334',\n", - " '2049',\n", - " '5',\n", - " '1893',\n", - " '1551',\n", - " '2454',\n", - " '2954',\n", - " '3712',\n", - " '2063',\n", - " '2664',\n", - " '2792',\n", - " '2527',\n", - " '2629',\n", - " '3184',\n", - " '3270',\n", - " '2510',\n", - " '2603',\n", - " '3740',\n", - " '1886',\n", - " '2459',\n", - " '2369',\n", - " '2654',\n", - " '1136',\n", - " '2421',\n", - " '1038',\n", - " '3469',\n", - " '1052',\n", - " '1238',\n", - " '388',\n", - " '744',\n", - " '3096',\n", - " '1041',\n", - " '1979',\n", - " '2495',\n", - " '1039',\n", - " '1040',\n", - " '2219',\n", - " '3824',\n", - " '1383',\n", - " '398',\n", - " '781',\n", - " '2521',\n", - " '782',\n", - " '187',\n", - " '297',\n", - " '263',\n", - " '2923',\n", - " '3575',\n", - " '1557',\n", - " '1718',\n", - " '1863',\n", - " '2512',\n", - " '1729',\n", - " '599',\n", - " '926',\n", - " '1877',\n", - " '485',\n", - " '927',\n", - " '1502',\n", - " '394',\n", - " '1445',\n", - " '395',\n", - " '2389',\n", - " '1715',\n", - " '1716',\n", - " '328',\n", - " '1558',\n", - " '605',\n", - " '1444',\n", - " '776',\n", - " '1717',\n", - " '2924',\n", - " '327',\n", - " '3451',\n", - " '2514',\n", - " '2755',\n", - " '2708',\n", - " '1878',\n", - " '2513',\n", - " '976',\n", - " '1254',\n", - " '973',\n", - " '676',\n", - " '891',\n", - " '1094',\n", - " '841',\n", - " '1095',\n", - " '564',\n", - " '565',\n", - " '1601',\n", - " '3658',\n", - " '1372',\n", - " '1945',\n", - " '1921',\n", - " '456',\n", - " '856',\n", - " '743',\n", - " '1306',\n", - " '1746',\n", - " '1824',\n", - " '3014',\n", - " '3259',\n", - " '1337',\n", - " '2701',\n", - " '3015',\n", - " '2788',\n", - " '3125',\n", - " '3493',\n", - " '3377',\n", - " '3642',\n", - " '1354',\n", - " '823',\n", - " '3093',\n", - " '1616',\n", - " '3618',\n", - " '3085',\n", - " '3677',\n", - " '3115',\n", - " '1903',\n", - " '3232',\n", - " '3386',\n", - " '236',\n", - " '815',\n", - " '3767',\n", - " '1798',\n", - " '3414',\n", - " '2943',\n", - " '3176',\n", - " '326',\n", - " '1080',\n", - " '3692',\n", - " '2437',\n", - " '2407',\n", - " '2656',\n", - " '1314',\n", - " '3227',\n", - " '739',\n", - " '3226',\n", - " '3455',\n", - " '3413',\n", - " '3854',\n", - " '3415',\n", - " '3416',\n", - " '3530',\n", - " '3108',\n", - " '3225',\n", - " '3228',\n", - " '772',\n", - " '833',\n", - " '2964',\n", - " '241',\n", - " '1596',\n", - " '2196',\n", - " '145',\n", - " '3579',\n", - " '73',\n", - " '421',\n", - " '1904',\n", - " '3107',\n", - " '2372',\n", - " '2933',\n", - " '305',\n", - " '3744',\n", - " '3774',\n", - " '2795',\n", - " '2064',\n", - " '1313',\n", - " '3535',\n", - " '3717',\n", - " '942',\n", - " '1797',\n", - " '2702',\n", - " '832',\n", - " '2552',\n", - " '2554',\n", - " '2710',\n", - " '2250',\n", - " '2461',\n", - " '922',\n", - " '2757',\n", - " '3620',\n", - " '3711',\n", - " '2807',\n", - " '2806',\n", - " '1268',\n", - " '2881',\n", - " '1470',\n", - " '3531',\n", - " '2805',\n", - " '3391',\n", - " '3617',\n", - " '3615',\n", - " '3616',\n", - " '2553',\n", - " '2925',\n", - " '2709',\n", - " '1097',\n", - " '1809',\n", - " '3533',\n", - " '3775',\n", - " '1226',\n", - " '3156',\n", - " '3490',\n", - " '3534',\n", - " '422',\n", - " '3619',\n", - " '3249',\n", - " '3291',\n", - " '3755',\n", - " '3449',\n", - " '3158',\n", - " '2589',\n", - " '172',\n", - " '3424',\n", - " '2678',\n", - " '809',\n", - " '2966',\n", - " '1104',\n", - " '2422',\n", - " '3273',\n", - " '2799',\n", - " '3532',\n", - " '484',\n", - " '3866',\n", - " '615',\n", - " '953',\n", - " '3743',\n", - " '35',\n", - " '613',\n", - " '4',\n", - " '3525',\n", - " '99',\n", - " '1297',\n", - " '837',\n", - " '337',\n", - " '2251',\n", - " '151',\n", - " '1373',\n", - " '1240',\n", - " '176',\n", - " '177',\n", - " '728',\n", - " '174',\n", - " '1161',\n", - " '1024',\n", - " '592',\n", - " '813',\n", - " '2189',\n", - " '771',\n", - " '74',\n", - " '3603',\n", - " '719',\n", - " '721',\n", - " '417',\n", - " '71',\n", - " '544',\n", - " '917',\n", - " '1311',\n", - " '3327',\n", - " '2906',\n", - " '3300',\n", - " '2214',\n", - " '3741',\n", - " '2067',\n", - " '3195',\n", - " '2066',\n", - " '1909',\n", - " '1952',\n", - " '2772',\n", - " '2995',\n", - " '1312',\n", - " '1310',\n", - " '1411',\n", - " '1178',\n", - " '188',\n", - " '1488',\n", - " '814',\n", - " '3024',\n", - " '522',\n", - " '2065',\n", - " '2273',\n", - " '2879',\n", - " '521',\n", - " '2301',\n", - " '2149',\n", - " '1023',\n", - " '523',\n", - " '810',\n", - " '639',\n", - " '23',\n", - " '201',\n", - " '718',\n", - " '423',\n", - " '720',\n", - " '921',\n", - " '684',\n", - " '424',\n", - " '681',\n", - " '682',\n", - " '308',\n", - " '683',\n", - " '884',\n", - " '425',\n", - " '1054',\n", - " '1177',\n", - " '454',\n", - " '1385',\n", - " '2391',\n", - " '3772',\n", - " '2630',\n", - " '3773',\n", - " '3835',\n", - " '2790',\n", - " '2789',\n", - " '3246',\n", - " '512',\n", - " '362',\n", - " '56',\n", - " '361',\n", - " '472',\n", - " '470',\n", - " '471',\n", - " '3782',\n", - " '1607',\n", - " '2562',\n", - " '768',\n", - " '543',\n", - " '2593',\n", - " '2456',\n", - " '2474',\n", - " '2723',\n", - " '120',\n", - " '1304',\n", - " '2059',\n", - " '591',\n", - " '1303',\n", - " '2153',\n", - " '2018',\n", - " '2058',\n", - " '1072',\n", - " '1860',\n", - " '34',\n", - " '601',\n", - " '1302',\n", - " '1692',\n", - " '1210',\n", - " '1858',\n", - " '1413',\n", - " '1414',\n", - " '84',\n", - " '1859',\n", - " '399',\n", - " '589',\n", - " '287',\n", - " '2752',\n", - " '196',\n", - " '1119',\n", - " '384',\n", - " '383',\n", - " '1920',\n", - " '2249',\n", - " '1120',\n", - " '1415',\n", - " '1305',\n", - " '1',\n", - " '622',\n", - " '1919',\n", - " '1817',\n", - " '714',\n", - " '712',\n", - " '970',\n", - " '787',\n", - " '341',\n", - " '477',\n", - " '1058',\n", - " '1655',\n", - " '410',\n", - " '1815',\n", - " '701',\n", - " '1285',\n", - " '400',\n", - " '1620',\n", - " '700',\n", - " '552',\n", - " '555',\n", - " '699',\n", - " '857',\n", - " '108',\n", - " '859',\n", - " '1132',\n", - " '1816',\n", - " '1571',\n", - " '1965',\n", - " '1572',\n", - " '3726',\n", - " '3783',\n", - " '1892',\n", - " '2971',\n", - " '1673',\n", - " '2972',\n", - " '1376',\n", - " '1722',\n", - " '1925',\n", - " '2409',\n", - " '1462',\n", - " '1654',\n", - " '2883',\n", - " '1751',\n", - " '1475',\n", - " '1872',\n", - " '3040',\n", - " '1065',\n", - " '2904',\n", - " '2430',\n", - " '3384',\n", - " '2875',\n", - " '3336',\n", - " '2766',\n", - " '3150',\n", - " '3186',\n", - " '3474',\n", - " '801',\n", - " '827',\n", - " '289',\n", - " '290',\n", - " '696',\n", - " '2833',\n", - " '3112',\n", - " '2002',\n", - " '1854',\n", - " '1917',\n", - " '1916',\n", - " '2310',\n", - " '2216',\n", - " '2676',\n", - " '2830',\n", - " '2218',\n", - " '2831',\n", - " '1724',\n", - " '2217',\n", - " '2677',\n", - " '3750',\n", - " '667',\n", - " '839',\n", - " '2113',\n", - " '191',\n", - " '195',\n", - " '666',\n", - " '2733',\n", - " '292',\n", - " '415',\n", - " '2111',\n", - " '2104',\n", - " '272',\n", - " '495',\n", - " '44',\n", - " '587',\n", - " '2112',\n", - " '3061',\n", - " '2937',\n", - " '697',\n", - " '1356',\n", - " '1235',\n", - " '928',\n", - " '1375',\n", - " '1679',\n", - " '158',\n", - " '1552',\n", - " '221',\n", - " '156',\n", - " '490',\n", - " '635',\n", - " '2530',\n", - " '318',\n", - " '3458',\n", - " '2052',\n", - " '2345',\n", - " '3223',\n", - " '180',\n", - " '968',\n", - " '1880',\n", - " '2531',\n", - " '1138',\n", - " '157',\n", - " '1896',\n", - " '754',\n", - " '1546',\n", - " '2532',\n", - " '1175',\n", - " '2105',\n", - " '741',\n", - " '1433',\n", - " '1096',\n", - " '1391',\n", - " '2109',\n", - " '1139',\n", - " '2367',\n", - " '581',\n", - " '969',\n", - " '966',\n", - " '967',\n", - " '3255',\n", - " '351',\n", - " '86',\n", - " '199',\n", - " '414',\n", - " '965',\n", - " '1162',\n", - " '2115',\n", - " '2836',\n", - " '2731',\n", - " '3511',\n", - " '389',\n", - " '1137',\n", - " '2497',\n", - " '2732',\n", - " '2910',\n", - " '2834',\n", - " '3251',\n", - " '1553',\n", - " '294',\n", - " '1948',\n", - " '1251',\n", - " '1496',\n", - " '3376',\n", - " '1215',\n", - " '2835',\n", - " '3669',\n", - " '533',\n", - " '711',\n", - " '2207',\n", - " '1071',\n", - " '2361',\n", - " '3459',\n", - " '3253',\n", - " '1592',\n", - " '1820',\n", - " '1747',\n", - " '1749',\n", - " '3371',\n", - " '2989',\n", - " '3373',\n", - " '1549',\n", - " '2597',\n", - " '1252',\n", - " '1047',\n", - " '2051',\n", - " '2103',\n", - " '2183',\n", - " '1554',\n", - " '2102',\n", - " '2793',\n", - " '2320',\n", - " '767',\n", - " '846',\n", - " '0',\n", - " '608',\n", - " '637',\n", - " '956',\n", - " '133',\n", - " '625',\n", - " '687',\n", - " '580',\n", - " '63',\n", - " '48',\n", - " '183',\n", - " '22',\n", - " '345',\n", - " '286',\n", - " '200',\n", - " '150',\n", - " '439',\n", - " '1307',\n", - " '92',\n", - " '342',\n", - " '626',\n", - " '438',\n", - " '598',\n", - " '531',\n", - " '708',\n", - " '2290',\n", - " '2938',\n", - " '3668',\n", - " '3665',\n", - " '2704',\n", - " '3670',\n", - " '769',\n", - " '3613',\n", - " '1173',\n", - " '1761',\n", - " '2300',\n", - " '748',\n", - " '527',\n", - " '609',\n", - " '1498',\n", - " '1497',\n", - " '3234',\n", - " '3235',\n", - " '418',\n", - " '3437',\n", - " '3556',\n", - " '3303',\n", - " '3701',\n", - " '3515',\n", - " '3710',\n", - " '2749',\n", - " '2804',\n", - " '3571',\n", - " '3769',\n", - " '3301',\n", - " '3768',\n", - " '2046',\n", - " '794',\n", - " '1001',\n", - " '3360',\n", - " '3558',\n", - " '2257',\n", - " '1364',\n", - " '1796',\n", - " '2945',\n", - " '3444',\n", - " '3302',\n", - " '1947',\n", - " '2780',\n", - " '3445',\n", - " '2907',\n", - " '2462',\n", - " '2802',\n", - " '2746',\n", - " '3063',\n", - " '2915',\n", - " '3833',\n", - " '2017',\n", - " '1981',\n", - " '2351',\n", - " '2803',\n", - " '2810',\n", - " '2350',\n", - " '2433',\n", - " '1795',\n", - " '3725',\n", - " '3064',\n", - " '1793',\n", - " '3724',\n", - " '749',\n", - " '636',\n", - " '2019',\n", - " '2528',\n", - " '1110',\n", - " '371',\n", - " '480',\n", - " '663',\n", - " '3834',\n", - " '2373',\n", - " '3155',\n", - " '3659',\n", - " '175',\n", - " '3640',\n", - " '2519',\n", - " '2635',\n", - " '3258',\n", - " '315',\n", - " '3154',\n", - " '3023',\n", - " '1384',\n", - " '2520',\n", - " '1585',\n", - " '664',\n", - " '992',\n", - " '3153',\n", - " '770',\n", - " '3152',\n", - " '178',\n", - " '2851',\n", - " '3628',\n", - " '2484',\n", - " '3016',\n", - " '3173',\n", - " '2843',\n", - " '3832',\n", - " '1932',\n", - " '2288',\n", - " '3731',\n", - " '81',\n", - " '3660',\n", - " '2940',\n", - " '3562',\n", - " '945',\n", - " '3187',\n", - " '3330',\n", - " '3185',\n", - " '17',\n", - " '674',\n", - " '464',\n", - " '2231',\n", - " '2336',\n", - " '2598',\n", - " '101',\n", - " '3324',\n", - " '2020',\n", - " '1677',\n", - " '2213',\n", - " '2404',\n", - " '240',\n", - " '3306',\n", - " '375',\n", - " '539',\n", - " '540',\n", - " '3721',\n", - " '1019',\n", - " '907',\n", - " '853',\n", - " '1017',\n", - " '1111',\n", - " '1113',\n", - " '1117',\n", - " '2268',\n", - " '3666',\n", - " '2591',\n", - " '2084',\n", - " '2169',\n", - " '852',\n", - " '2083',\n", - " '1167',\n", - " '939',\n", - " '1166',\n", - " '1918',\n", - " '209',\n", - " '210',\n", - " '975',\n", - " '1018',\n", - " '971',\n", - " '69',\n", - " '940',\n", - " '1688',\n", - " '730',\n", - " '2211',\n", - " '2212',\n", - " '2522',\n", - " '2265',\n", - " '2754',\n", - " '2592',\n", - " '3450',\n", - " '3060',\n", - " '2753',\n", - " '2170',\n", - " '2174',\n", - " '2406',\n", - " '3059',\n", - " '105',\n", - " '2364',\n", - " '2896',\n", - " '1611',\n", - " '1076',\n", - " '3479',\n", - " '2703',\n", - " '889',\n", - " '125',\n", - " '2209',\n", - " '396',\n", - " '549',\n", - " '916',\n", - " '2166',\n", - " '2771',\n", - " '851',\n", - " '268',\n", - " '572',\n", - " '2957',\n", - " '285',\n", - " '126',\n", - " '128',\n", - " '2344',\n", - " '1253',\n", - " '1727',\n", - " '979',\n", - " '2376',\n", - " '2230',\n", - " '2465',\n", - " '2848',\n", - " '3260',\n", - " '3366',\n", - " '2464',\n", - " '2847',\n", - " '3367',\n", - " '3582',\n", - " '3198',\n", - " '3513',\n", - " '3580',\n", - " '3581',\n", - " '1381',\n", - " '2934',\n", - " '693',\n", - " '1160',\n", - " '2809',\n", - " '1534',\n", - " '557',\n", - " '2550',\n", - " '2551',\n", - " '3029',\n", - " '2811',\n", - " '671',\n", - " '1397',\n", - " '850',\n", - " '949',\n", - " '725',\n", - " '996',\n", - " '1128',\n", - " '1129',\n", - " '727',\n", - " '997',\n", - " '1347',\n", - " '2047',\n", - " '2882',\n", - " '2048',\n", - " '1910',\n", - " '1911',\n", - " '1220',\n", - " '562',\n", - " '2476',\n", - " '76',\n", - " '948',\n", - " '672',\n", - " '673',\n", - " '692',\n", - " '1247',\n", - " '561',\n", - " '1185',\n", - " '1186',\n", - " '1188',\n", - " '998',\n", - " '1016',\n", - " '2015',\n", - " '237',\n", - " '2050',\n", - " '2658',\n", - " '2319',\n", - " '2013',\n", - " '2014',\n", - " '1341',\n", - " '930',\n", - " '2657',\n", - " '129',\n", - " '994',\n", - " '3084',\n", - " '2825',\n", - " '478',\n", - " '3398',\n", - " '3588',\n", - " '3400',\n", - " '3736',\n", - " '3797',\n", - " '3484',\n", - " '7',\n", - " '247',\n", - " '248',\n", - " '2511',\n", - " '2108',\n", - " '2595',\n", - " '1682',\n", - " '2827',\n", - " '3705',\n", - " '959',\n", - " '866',\n", - " '914',\n", - " '2478',\n", - " '3192',\n", - " '3735',\n", - " '3481',\n", - " '2009',\n", - " '1452',\n", - " '2232',\n", - " '1525',\n", - " '2594',\n", - " '2993',\n", - " '3869',\n", - " '2824',\n", - " '2828',\n", - " '3326',\n", - " '3794',\n", - " '2902',\n", - " '3703',\n", - " '3704',\n", - " '3868',\n", - " '3325',\n", - " '3793',\n", - " '3231',\n", - " '3585',\n", - " '2203',\n", - " '2263',\n", - " '1589',\n", - " '1590',\n", - " '1527',\n", - " '2267',\n", - " '1618',\n", - " '2266',\n", - " '3193',\n", - " '2991',\n", - " '3399',\n", - " '2779',\n", - " '2618',\n", - " '2826',\n", - " '2740',\n", - " '3586',\n", - " '2736',\n", - " '2778',\n", - " '1284',\n", - " '1975',\n", - " '2053',\n", - " '1938',\n", - " '2180',\n", - " '3087',\n", - " '2620',\n", - " '2622',\n", - " '3086',\n", - " '2548',\n", - " '3587',\n", - " '1232',\n", - " '1355',\n", - " '1450',\n", - " '2007',\n", - " '2126',\n", - " '2547',\n", - " '1972',\n", - " '2125',\n", - " '1451',\n", - " '1974',\n", - " '867',\n", - " '404',\n", - " '614',\n", - " '616',\n", - " '915',\n", - " '61',\n", - " '358',\n", - " '316',\n", - " '1025',\n", - " '822',\n", - " '1184',\n", - " '390',\n", - " '1026',\n", - " '1182',\n", - " '1233',\n", - " '845',\n", - " '1394',\n", - " '2356',\n", - " '3722',\n", - " '2909',\n", - " '3630',\n", - " '3240',\n", - " '3241',\n", - " '3238',\n", - " '3632',\n", - " '2953',\n", - " '2768',\n", - " '864',\n", - " '278',\n", - " '455',\n", - " '703',\n", - " '2432',\n", - " '1084',\n", - " '1249',\n", - " '1192',\n", - " '1353',\n", - " '1382',\n", - " '1680',\n", - " '3244',\n", - " '3467',\n", - " '2188',\n", - " '246',\n", - " '1207',\n", - " '1818',\n", - " '1923',\n", - " '1142',\n", - " '1968',\n", - " '498',\n", - " '2653',\n", - " '1202',\n", - " '234',\n", - " '1686',\n", - " '2185',\n", - " '2475',\n", - " '2947',\n", - " '3351',\n", - " '2648',\n", - " '2946',\n", - " '2258',\n", - " '3355',\n", - " '2010',\n", - " '107',\n", - " '355',\n", - " '546',\n", - " '2473',\n", - " '1837',\n", - " '2967',\n", - " '2743',\n", - " '3401',\n", - " '3825',\n", - " '2392',\n", - " '2647',\n", - " '612',\n", - " '3851',\n", - " '3021',\n", - " '3322',\n", - " '2584',\n", - " '3320',\n", - " '3321',\n", - " '2414',\n", - " '2918',\n", - " '242',\n", - " '378',\n", - " '3163',\n", - " '461',\n", - " '184',\n", - " '611',\n", - " '938',\n", - " '1164',\n", - " '1412',\n", - " '2068',\n", - " '252',\n", - " '3230',\n", - " '1330',\n", - " '2333',\n", - " '1495',\n", - " '1706',\n", - " '1580',\n", - " '1272',\n", - " '1048',\n", - " '610',\n", - " '763',\n", - " '541',\n", - " '3237',\n", - " '3871',\n", - " '3849',\n", - " '194',\n", - " '1213',\n", - " '1409',\n", - " '3584',\n", - " '2509',\n", - " '3205',\n", - " '3378',\n", - " '3062',\n", - " '3652',\n", - " '2979',\n", - " '3162',\n", - " '779',\n", - " '530',\n", - " '617',\n", - " '1212',\n", - " '1539',\n", - " '2705',\n", - " '475',\n", - " '775',\n", - " '3281',\n", - " '678',\n", - " '2297',\n", - " '3079',\n", - " '1939',\n", - " '3331',\n", - " '3346',\n", - " '3379',\n", - " '3646',\n", - " '3010',\n", - " '2878',\n", - " '2958',\n", - " '3507',\n", - " '3718',\n", - " '1588',\n", - " '1937',\n", - " '2926',\n", - " '1211',\n", - " '1573',\n", - " '2839',\n", - " '3097',\n", - " '3482',\n", - " '2566',\n", - " '1541',\n", - " '1991',\n", - " '1955',\n", - " '2403',\n", - " '1587',\n", - " '2127',\n", - " '1667',\n", - " '1851',\n", - " '1874',\n", - " '1884',\n", - " '1814',\n", - " '1913',\n", - " '1906',\n", - " '1980',\n", - " '2869',\n", - " '2494',\n", - " '2818',\n", - " '109',\n", - " '510',\n", - " '920',\n", - " '3',\n", - " '2375',\n", - " '173',\n", - " '836',\n", - " '385',\n", - " '1538',\n", - " '432',\n", - " '186',\n", - " '723',\n", - " '536',\n", - " '638',\n", - " '453',\n", - " '534',\n", - " '1091',\n", - " '2289',\n", - " '535',\n", - " '3190',\n", - " '1510',\n", - " '2927',\n", - " '148',\n", - " '149',\n", - " '2808',\n", - " '2360',\n", - " '3218',\n", - " '2572',\n", - " '2246',\n", - " '2405',\n", - " '2596',\n", - " '2692',\n", - " '3276',\n", - " '3502',\n", - " '1758',\n", - " '1757',\n", - " '2544',\n", - " '1725',\n", - " '181',\n", - " '1455',\n", - " '786',\n", - " '1287',\n", - " '1291',\n", - " '3282',\n", - " '3283',\n", - " '1126',\n", - " '1286',\n", - " '2016',\n", - " '2660',\n", - " '3802',\n", - " '2815',\n", - " '3487',\n", - " '2324',\n", - " '2965',\n", - " '3293',\n", - " '1112',\n", - " '2699',\n", - " '1791',\n", - " '1005',\n", - " '1790',\n", - " '123',\n", - " '3638',\n", - " '2387',\n", - " '1459',\n", - " '2294',\n", - " '2640',\n", - " '1833',\n", - " '112',\n", - " '2295',\n", - " '443',\n", - " '3434',\n", - " '1205',\n", - " '1206',\n", - " '1458',\n", - " '2259',\n", - " '1650',\n", - " '1653',\n", - " '1108',\n", - " '3528',\n", - " '900',\n", - " '3709',\n", - " '1323',\n", - " '3708',\n", - " '3478',\n", - " '1834',\n", - " '1964',\n", - " '954',\n", - " '3188',\n", - " '1835',\n", - " '1836',\n", - " '2118',\n", - " '2117',\n", - " '1963',\n", - " '1966',\n", - " '2248',\n", - " '1959',\n", - " '2116',\n", - " '1891',\n", - " '2119',\n", - " '1277',\n", - " '1756',\n", - " '114',\n", - " '747',\n", - " '2054',\n", - " '520',\n", - " '1685',\n", - " '113',\n", - " '115',\n", - " '117',\n", - " '118',\n", - " '116',\n", - " '119',\n", - " '1369',\n", - " '1370',\n", - " '1367',\n", - " '2586',\n", - " '1684',\n", - " '2735',\n", - " '1147',\n", - " '3357',\n", - " '3529',\n", - " '447',\n", - " '901',\n", - " '1146',\n", - " '902',\n", - " '898',\n", - " '899',\n", - " '462',\n", - " '2393',\n", - " '1456',\n", - " '2055',\n", - " '419',\n", - " '3206',\n", - " '1764',\n", - " '391',\n", - " '2889',\n", - " '1690',\n", - " '1802',\n", - " '3408',\n", - " '2874',\n", - " '820',\n", - " '2663',\n", - " '3046',\n", - " '3647',\n", - " '1454',\n", - " '865',\n", - " '2739',\n", - " '1098',\n", - " '1099',\n", - " '3896',\n", - " '964',\n", - " '1225',\n", - " '2741',\n", - " '1115',\n", - " '2738',\n", - " '2177',\n", - " '2282',\n", - " '2378',\n", - " '2285',\n", - " '3039',\n", - " '2283',\n", - " '2377',\n", - " '3194',\n", - " '2485',\n", - " '2819',\n", - " '2939',\n", - " '3475',\n", - " '2742',\n", - " '2737',\n", - " '2379',\n", - " '2380',\n", - " '1567',\n", - " '3894',\n", - " '2861',\n", - " '3476',\n", - " '1116',\n", - " '1566',\n", - " '3784',\n", - " '3895',\n", - " '2182',\n", - " '3041',\n", - " '2482',\n", - " '3124',\n", - " '1114',\n", - " '1422',\n", - " '3893',\n", - " '167',\n", - " '2374',\n", - " '3113',\n", - " '1782',\n", - " '1345',\n", - " '3114',\n", - " '912',\n", - " '1438',\n", - " '1439',\n", - " '1785',\n", - " '1789',\n", - " '1344',\n", - " '1783',\n", - " '2469',\n", - " '2669',\n", - " '3280',\n", - " '3759',\n", - " '3443',\n", - " '724',\n", - " '2901',\n", - " '2466',\n", - " '3420',\n", - " '2394',\n", - " '2395',\n", - " '3203',\n", - " '3591',\n", - " '3335',\n", - " '2081',\n", - " '3757',\n", - " '2643',\n", - " '2720',\n", - " '2341',\n", - " '2342',\n", - " '2346',\n", - " '2718',\n", - " '2082',\n", - " '2271',\n", - " '2272',\n", - " '2719',\n", - " '2721',\n", - " '3372',\n", - " '2796',\n", - " '2517',\n", - " '3109',\n", - " '1922',\n", - " '2467',\n", - " '2948',\n", - " '3020',\n", - " '1784',\n", - " '54',\n", - " '55',\n", - " '1612',\n", - " '2296',\n", - " '880',\n", - " '2292',\n", - " '1053',\n", - " '1723',\n", - " '3758',\n", - " '3566',\n", - " '3073',\n", - " '3304',\n", - " '590',\n", - " '3242',\n", - " '514',\n", - " '460',\n", - " '2899',\n", - " '3110',\n", - " '2155',\n", - " '1990',\n", - " '715',\n", - " '3202',\n", - " '2234',\n", - " '2269',\n", - " '2158',\n", - " '2270',\n", - " '3673',\n", - " '2950',\n", - " '239',\n", - " '2343',\n", - " '2900',\n", - " '3044',\n", - " '3045',\n", - " '2645',\n", - " '2776',\n", - " '2842',\n", - " '168',\n", - " '169',\n", - " '166',\n", - " '2468',\n", - " '3422',\n", - " '2080',\n", - " '3183',\n", - " '2898',\n", - " '3334',\n", - " '2644',\n", - " '3901',\n", - " '3370',\n", - " '3674',\n", - " '2516',\n", - " '3204',\n", - " '2996',\n", - " '3876',\n", - " '2642',\n", - " '3565',\n", - " '2951',\n", - " '2949',\n", - " '2952',\n", - " '3675',\n", - " '283',\n", - " '3374',\n", - " '3375',\n", - " '2154',\n", - " '2235',\n", - " '11',\n", - " '3111',\n", - " '207',\n", - " '2291',\n", - " '1224',\n", - " '1324',\n", - " '2208',\n", - " '2545',\n", - " '570',\n", - " '153',\n", - " '102',\n", - " '2665',\n", - " '110',\n", - " '219',\n", - " '13',\n", - " '111',\n", - " '238',\n", - " '2417',\n", - " '2316',\n", - " '3369',\n", - " '1681',\n", - " '2470',\n", - " '1542',\n", - " '1787',\n", - " '1396',\n", - " '1273',\n", - " '911',\n", - " '1437',\n", - " '1786',\n", - " '1788',\n", - " '2071',\n", - " '2542',\n", - " '2801',\n", - " '731',\n", - " '64',\n", - " '300',\n", - " '3217',\n", - " '735',\n", - " '43',\n", - " '2600',\n", - " '1461',\n", - " '3601',\n", - " '80',\n", - " '1846',\n", - " '2696',\n", - " '2313',\n", - " '3191',\n", - " '288',\n", - " '2252',\n", - " '2302',\n", - " '3126',\n", - " '1856',\n", - " '1473',\n", - " '2256',\n", - " '1882',\n", - " '1657',\n", - " '2088',\n", - " '545',\n", - " '560',\n", - " '1453',\n", - " '223',\n", - " '3350',\n", - " '1255',\n", - " '1595',\n", - " '413',\n", - " '3874',\n", - " '1449',\n", - " '1274',\n", - " '1615',\n", - " '1476',\n", - " '85',\n", - " '563',\n", - " '208',\n", - " '1805',\n", - " '379',\n", - " '103',\n", - " '2323',\n", - " '950',\n", - " '3353',\n", - " '3037',\n", - " '3667',\n", - " '433',\n", - " '1562',\n", - " '3577',\n", - " '3339',\n", - " '908',\n", - " '1332',\n", - " '842',\n", - " '1463',\n", - " '1671',\n", - " '2837',\n", - " '2134',\n", - " '2314',\n", - " '3742',\n", - " '457',\n", - " '497',\n", - " '2783',\n", - " '1732',\n", - " '1994',\n", - " '1163',\n", - " '946',\n", - " '1560',\n", - " '2321',\n", - " '3887',\n", - " '3520',\n", - " '3734',\n", - " '817',\n", - " '1540',\n", - " '1739',\n", - " '532',\n", - " '1093',\n", - " '122',\n", - " '3754',\n", - " '3165',\n", - " '3460',\n", - " '3885',\n", - " '694',\n", - " '910',\n", - " '695',\n", - " '1089',\n", - " '1010',\n", - " '1221',\n", - " '2079',\n", - " '372',\n", - " '1555',\n", - " '2729',\n", - " '1941',\n", - " '1335',\n", - " '1840',\n", - " '1480',\n", - " '2386',\n", - " '2625',\n", - " '877',\n", - " '244',\n", - " '1803',\n", - " '2401',\n", - " '2240',\n", - " '2546',\n", - " '2762',\n", - " '3337',\n", - " '3800',\n", - " '3083',\n", - " '3290',\n", - " '3873',\n", - " '182',\n", - " '420',\n", - " '222',\n", - " '346',\n", - " '1036',\n", - " '1664',\n", - " '3539',\n", - " '1208',\n", - " '2463',\n", - " '2092',\n", - " '2381',\n", - " '2821',\n", - " '1912',\n", - " '2583',\n", - " '1045',\n", - " '618',\n", - " '2260',\n", - " '2639',\n", - " '3761',\n", - " '3867',\n", - " '3075',\n", - " '3468',\n", - " '3349',\n", - " '3650',\n", - " '3172',\n", - " '3875',\n", - " '2905',\n", - " '3243',\n", - " '78',\n", - " '1958',\n", - " '3486',\n", - " '77',\n", - " '79',\n", - " '2634',\n", - " '1584',\n", - " '2920',\n", - " '317',\n", - " '766',\n", - " '1321',\n", - " '3094',\n", - " '765',\n", - " '1077',\n", - " '1004',\n", - " '2751',\n", - " '1075',\n", - " '1275',\n", - " '1491',\n", - " '1074',\n", - " '3776',\n", - " '919',\n", - " '3271',\n", - " '3385',\n", - " '2136',\n", - " '1322',\n", - " '1960',\n", - " '2135',\n", - " '1957',\n", - " '2435',\n", - " '2816',\n", - " '3095',\n", - " '3881',\n", - " '380',\n", - " '1929',\n", - " '2728',\n", - " '760',\n", - " '1940',\n", - " '2197',\n", - " '3648',\n", - " '3627',\n", - " '1196',\n", - " '863',\n", - " '1227',\n", - " '3267',\n", - " '3368',\n", - " '888',\n", - " '886',\n", - " '887',\n", - " '67',\n", - " '324',\n", - " '325',\n", - " '2876',\n", - " '3748',\n", - " '3051',\n", - " '3872',\n", - " '1158',\n", - " '3552',\n", - " '2070',\n", - " '3050',\n", - " '1346',\n", - " '41',\n", - " '434',\n", - " '2856',\n", - " '3128',\n", - " '3563',\n", - " '3071',\n", - " '3859',\n", - " '675',\n", - " '2865',\n", - " '849',\n", - " '2095',\n", - " '2791',\n", - " '1133',\n", - " '1263',\n", - " '1694',\n", - " '1812',\n", - " '274',\n", - " '409',\n", - " '2412',\n", - " '2774',\n", - " '3605',\n", - " '2773',\n", - " '3549',\n", - " '2500',\n", - " '2693',\n", - " '2181',\n", - " '3013',\n", - " '250',\n", - " '3492',\n", - " '1801',\n", - " '2800',\n", - " '486',\n", - " '1578',\n", - " '3229',\n", - " '3457',\n", - " '280',\n", - " '1087',\n", - " '3641',\n", - " '3091',\n", - " '3456',\n", - " '3864',\n", - " '2567',\n", - " '2483',\n", - " '138',\n", - " '3574',\n", - " '2832',\n", - " '3870',\n", - " '377',\n", - " '203',\n", - " '190',\n", - " '524',\n", - " '491',\n", - " '336',\n", - " '596',\n", - " '492',\n", - " '595',\n", - " '493',\n", - " '216',\n", - " '335',\n", - " '800',\n", - " '1134',\n", - " '3766',\n", - " '855',\n", - " '2087',\n", - " '1866',\n", - " '2493',\n", - " '2011',\n", - " '2201',\n", - " '1780',\n", - " '1648',\n", - " '3254',\n", - " '876',\n", - " '1009',\n", - " '1579',\n", - " '1156',\n", - " '1499',\n", - " '1683',\n", - " '1135',\n", - " '1055',\n", - " '2280',\n", - " '2388',\n", - " '2187',\n", - " '3054',\n", - " '3689',\n", - " '3462',\n", - " '983',\n", - " '1598',\n", - " '2523',\n", - " '3178',\n", - " '2985',\n", - " '3447',\n", - " '3177',\n", - " '2987',\n", - " '3448',\n", - " '1775',\n", - " '163',\n", - " '65',\n", - " '1530',\n", - " '2637',\n", - " '2590',\n", - " '1697',\n", - " '1325',\n", - " '1647',\n", - " '1428',\n", - " '1124',\n", - " '1744',\n", - " '1698',\n", - " '1839',\n", - " '1778',\n", - " '397',\n", - " '1457',\n", - " '2340',\n", - " '1970',\n", - " '2253',\n", - " '2093',\n", - " '3841',\n", - " '1969',\n", - " '1995',\n", - " '2157',\n", - " '2986',\n", - " '1389',\n", - " '3098',\n", - " '1821',\n", - " '944',\n", - " '2226',\n", - " '3403',\n", - " '2224',\n", - " '2225',\n", - " '235',\n", - " '143',\n", - " '705',\n", - " '75',\n", - " '144',\n", - " '1565',\n", - " '868',\n", - " '1564',\n", - " '3886',\n", - " '489',\n", - " '838',\n", - " '1044',\n", - " '1043',\n", - " '357',\n", - " '1726',\n", - " '3899',\n", - " '2194',\n", - " '3897',\n", - " '3405',\n", - " '2673',\n", - " '2605',\n", - " '3316',\n", - " '3317',\n", - " '24',\n", - " '2606',\n", - " '1218',\n", - " '2674',\n", - " '2130',\n", - " '2326',\n", - " '3518',\n", - " '3900',\n", - " '2137',\n", - " '3788',\n", - " '2849',\n", - " '232',\n", - " '233',\n", - " '729',\n", - " '1675',\n", - " '929',\n", - " '811',\n", - " '1446',\n", - " '2682',\n", - " '1568',\n", - " '3392',\n", - " '2486',\n", - " '1953',\n", - " '1447',\n", - " '2613',\n", - " '1954',\n", - " '3012',\n", - " '861',\n", - " '1434',\n", - " '2549',\n", - " '640',\n", - " '641',\n", - " '642',\n", - " '349',\n", - " '350',\n", - " '293',\n", - " '291',\n", - " '1731',\n", - " '130',\n", - " '1707',\n", - " '2489',\n", - " '807',\n", - " '1200',\n", - " '1336',\n", - " '1149',\n", - " '230',\n", - " '1153',\n", - " '2315',\n", - " '2488',\n", - " '3296',\n", - " '732',\n", - " '3127',\n", - " '3499',\n", - " '1157',\n", - " '3819',\n", - " '1002',\n", - " '1600',\n", - " '1151',\n", - " '1248',\n", - " '3297',\n", - " '860',\n", - " '1042',\n", - " '301',\n", - " '1547',\n", - " '2769',\n", - " '2039',\n", - " '893',\n", - " '2293',\n", - " '53',\n", - " '600',\n", - " '387',\n", - " '1003',\n", - " '1861',\n", - " '2143',\n", - " '2573',\n", - " '2942',\n", - " '3340',\n", - " '3813',\n", - " '3174',\n", - " '3687',\n", - " '264',\n", - " '2570',\n", - " '1013',\n", - " '1150',\n", - " '1642',\n", - " '494',\n", - " '2845',\n", - " '2571',\n", - " '1472',\n", - " '2255',\n", - " '1148',\n", - " '3269',\n", - " '1934',\n", - " '1471',\n", - " '1930',\n", - " '3358',\n", - " '3508',\n", - " '458',\n", - " '1165',\n", - " '83',\n", - " '2777',\n", - " '2911',\n", - " '3257',\n", - " '2973',\n", - " '1831',\n", - " '2913',\n", - " '1733',\n", - " '2075',\n", - " '1390',\n", - " '3181',\n", - " '2222',\n", - " '3123',\n", - " '3407',\n", - " '2145',\n", - " '3686',\n", - " '3356',\n", - " '3889',\n", - " '2223',\n", - " '2604',\n", - " '2974',\n", - " '3592',\n", - " '1012',\n", - " '2074',\n", - " '3604',\n", - " '3801',\n", - " '3256',\n", - " '3028',\n", - " '2076',\n", - " '2306',\n", - " '2697',\n", - " '1609',\n", - " '2359',\n", - " '49',\n", - " '479',\n", - " '3312',\n", - " '3745',\n", - " '2370',\n", - " '3121',\n", - " '3570',\n", - " '1282',\n", - " '799',\n", - " '1283',\n", - " '1719',\n", - " '2008',\n", - " '1216',\n", - " '2107',\n", - " '140',\n", - " '139',\n", - " '2358',\n", - " '2086',\n", - " '2357',\n", - " '1702',\n", - " '3427',\n", - " '2210',\n", - " '3089',\n", - " '1109',\n", - " '2543',\n", - " '2765',\n", - " '254',\n", - " '1474',\n", - " '474',\n", - " '844',\n", - " '1614',\n", - " '1754',\n", - " '3160',\n", - " '1250',\n", - " '2001',\n", - " '3365',\n", - " '3224',\n", - " '2402',\n", - " '3027',\n", - " '1674',\n", - " '1448',\n", - " '2215',\n", - " '2274',\n", - " '3418',\n", - " '1641',\n", - " '2610',\n", - " '2880',\n", - " '1870',\n", - " '189',\n", - " '742',\n", - " '1239',\n", - " '1489',\n", - " '1862',\n", - " '50',\n", - " '444',\n", - " '284',\n", - " '501',\n", - " '1875',\n", - " '1056',\n", - " '164',\n", - " '412',\n", - " '1708',\n", - " '1853',\n", - " '476',\n", - " '885',\n", - " '62',\n", - " '382',\n", - " '3651',\n", - " '473',\n", - " '275',\n", - " '2929',\n", - " '2287',\n", - " '3309',\n", - " '3606',\n", - " '3882',\n", - " '756',\n", - " '3898',\n", - " '2667',\n", - " '205',\n", - " '206',\n", - " '881',\n", - " '403',\n", - " '277',\n", - " '402',\n", - " '1070',\n", - " '1436',\n", - " '2535',\n", - " '3197',\n", - " '2893',\n", - " '2322',\n", - " '3785',\n", - " '276',\n", - " '499',\n", - " '3771',\n", - " '2725',\n", - " '2436',\n", - " '3047',\n", - " '2184',\n", - " '1610',\n", - " '1804',\n", - " '3352',\n", - " '1942',\n", - " '2724',\n", - " '750',\n", - " '1015',\n", - " '1118',\n", - " '1201',\n", - " '854',\n", - " '790',\n", - " '935',\n", - " '386',\n", - " '3610',\n", - " '1574',\n", - " '3009',\n", - " '2556',\n", - " '3609',\n", - " '843',\n", - " '3402',\n", - " '2041',\n", - " '3883',\n", - " '3884',\n", - " '3890',\n", - " '1559',\n", - " '1637',\n", - " '1500',\n", - " '1597',\n", - " '2563',\n", - " '2651',\n", - " '2261',\n", - " '2650',\n", - " '3506',\n", - " '3831',\n", - " '3026',\n", - " '2814',\n", - " '1465',\n", - " '1466',\n", - " '3891',\n", - " '3830',\n", - " '2687',\n", - " '3504',\n", - " '3505',\n", - " '2057',\n", - " '2229',\n", - " '2829',\n", - " '918',\n", - " '1199',\n", - " '1799',\n", - " '2813',\n", - " '2262',\n", - " '2481',\n", - " '2131',\n", - " '2688',\n", - " '2480',\n", - " '2686',\n", - " '3892',\n", - " '2649',\n", - " '3503',\n", - " '2564',\n", - " '2812',\n", - " '1308',\n", - " '1800',\n", - " '1467',\n", - " '3122',\n", - " '3287',\n", - " '2156',\n", - " '3328',\n", - " '2638',\n", - " '1645',\n", - " '1333',\n", - " '1334',\n", - " '1548',\n", - " '3409',\n", - " '2424',\n", - " '3838',\n", - " '3428',\n", - " '3594',\n", - " '3380',\n", - " '3888',\n", - " '3473',\n", - " '3737',\n", - " '828',\n", - " '1392',\n", - " '3313',\n", - " '3049',\n", - " '1243',\n", - " '3048',\n", - " '593',\n", - " '2281',\n", - " '1241',\n", - " '2588',\n", - " '960',\n", - " '2371',\n", - " '1971',\n", - " '2587',\n", - " '1581',\n", - " '440',\n", - " '2717',\n", - " '1709',\n", - " '1710',\n", - " '68',\n", - " '159',\n", - " '679',\n", - " '962',\n", - " '594',\n", - " '279',\n", - " '441',\n", - " '442',\n", - " '1386',\n", - " '1387',\n", - " '1460',\n", - " '1879',\n", - " '961',\n", - " '963',\n", - " '1649',\n", - " '1244',\n", - " '1242',\n", - " '1245',\n", - " '2062',\n", - " '1927',\n", - " '2077',\n", - " '542',\n", - " '98',\n", - " '1368',\n", - " '319',\n", - " '1101',\n", - " '1753',\n", - " '995',\n", - " '1203',\n", - " '1100',\n", - " '1928',\n", - " '903',\n", - " '2078',\n", - " '72',\n", - " '3421',\n", - " '3022',\n", - " '2922',\n", - " '3252',\n", - " '3522',\n", - " '3523',\n", - " '3524',\n", - " '2534',\n", - " '2722',\n", - " '1269',\n", - " '2529',\n", - " '3679',\n", - " '2396',\n", - " '2191',\n", - " '2397',\n", - " '3329',\n", - " '3017',\n", - " '3018',\n", - " '2608',\n", - " '2609',\n", - " '2540',\n", - " '2541',\n", - " '1320',\n", - " '567',\n", - " '1583',\n", - " '1676',\n", - " '1838',\n", - " '2190',\n", - " '1319',\n", - " '3222',\n", - " '3678',\n", - " '2607',\n", - " '3221',\n", - " '931',\n", - " '338',\n", - " '818',\n", - " '431',\n", - " '1728',\n", - " '2304',\n", - " '1691',\n", - " '2560',\n", - " '2416',\n", - " '2415',\n", - " '3861',\n", - " '1195',\n", - " '2073',\n", - " '1393',\n", - " '1855',\n", - " '2072',\n", - " '3862',\n", - " '3498',\n", - " '307',\n", - " '513',\n", - " '1943',\n", - " '734',\n", - " '659',\n", - " '306',\n", - " '909',\n", - " '826',\n", - " '658',\n", - " '825',\n", - " '516',\n", - " '951',\n", - " '1068',\n", - " '1168',\n", - " '3189',\n", - " '436',\n", - " '662',\n", - " '437',\n", - " '784',\n", - " '783',\n", - " '952',\n", - " '1492',\n", - " '3429',\n", - " '568',\n", - " '943',\n", - " '1281',\n", - " '848',\n", - " '1693',\n", - " '806',\n", - " '629',\n", - " '805',\n", - " '2919',\n", - " '680',\n", - " '1494',\n", - " '2767',\n", - " '3727',\n", - " '3305',\n", - " '3789',\n", - " '3633',\n", - " '3681',\n", - " '298',\n", - " '3553',\n", - " '3032',\n", - " '1493',\n", - " '3791',\n", - " '3637',\n", - " '2477',\n", - " '3551',\n", - " '1621',\n", - " '3729',\n", - " '3878',\n", - " '3879',\n", - " '3880',\n", - " '3164',\n", - " '3167',\n", - " '3634',\n", - " '3680',\n", - " '3412',\n", - " '3471',\n", - " '3728',\n", - " '847',\n", - " '586',\n", - " '1278',\n", - " '1279',\n", - " '1280',\n", - " '526',\n", - " '630',\n", - " '704',\n", - " '582',\n", - " '583',\n", - " '2275',\n", - " '3307',\n", - " '2276',\n", - " '3308',\n", - " '3561',\n", - " '1741',\n", - " '3433',\n", - " '1174',\n", - " '170',\n", - " '525',\n", - " '1523',\n", - " '1524',\n", - " '3430',\n", - " '3550',\n", - " '2339',\n", - " '3860',\n", - " '3877',\n", - " '1897',\n", - " '3564',\n", - " '2820',\n", - " '3431',\n", - " '1740',\n", - " '2822',\n", - " '18',\n", - " '452',\n", - " '1622',\n", - " '1623',\n", - " '571',\n", - " '1388',\n", - " '1535',\n", - " '1440',\n", - " '1441',\n", - " '1516',\n", - " '1518',\n", - " '1520',\n", - " '1742',\n", - " '1924',\n", - " '2410',\n", - " '2491',\n", - " '3602',\n", - " '3436',\n", - " '3067',\n", - " '3068',\n", - " '2492',\n", - " '2144',\n", - " '3168',\n", - " '2490',\n", - " '2775',\n", - " '1468',\n", - " '197',\n", - " '1873',\n", - " '982',\n", - " '3284',\n", - " '2794',\n", - " '3683',\n", - " '3684',\n", - " '1464',\n", - " '66',\n", - " '3103',\n", - " '3101',\n", - " '1643',\n", - " '1088',\n", - " '2992',\n", - " '1514',\n", - " '2990',\n", - " '3286',\n", - " '984',\n", - " '3100',\n", - " '198',\n", - " '2611',\n", - " '2932',\n", - " '1327',\n", - " '1172',\n", - " '2931',\n", - " '3105',\n", - " '3777',\n", - " '1328',\n", - " '1644',\n", - " '3161',\n", - " '1340',\n", - " '3159',\n", - " '2862',\n", - " '2863',\n", - " '872',\n", - " '1181',\n", - " '1829',\n", - " '3623',\n", - " '2328',\n", - " '2329',\n", - " '3417',\n", - " '3157',\n", - " '3298',\n", - " '3299',\n", - " '2496',\n", - " '2668',\n", - " '1021',\n", - " '972',\n", - " '702',\n", - " '819',\n", - " '2141',\n", - " '1477',\n", - " '1288',\n", - " '3624',\n", - " '3622',\n", - " '2859',\n", - " '3410',\n", - " '3753',\n", - " '3629',\n", - " '2327',\n", - " '2672',\n", - " '1289',\n", - " '1290',\n", - " '1338',\n", - " '875',\n", - " '873',\n", - " '874',\n", - " '1435',\n", - " '752',\n", - " '753',\n", - " '146',\n", - " '344',\n", - " '871',\n", - " '1832',\n", - " '2670',\n", - " '12',\n", - " '2624',\n", - " '1935',\n", - " '2860',\n", - " '1743',\n", - " '1127',\n", - " '1180',\n", - " '1536',\n", - " '1830',\n", - " '2140',\n", - " '343',\n", - " '1828',\n", - " '1395',\n", - " '97',\n", - " '1537',\n", - " '1049',\n", - " '2138',\n", - " '2139',\n", - " '2759',\n", - " '416',\n", - " '1627',\n", - " '1700',\n", - " '1179',\n", - " '3411',\n", - " '1827',\n", - " '3042',\n", - " '2758',\n", - " '3043'],\n", - " 'leaves': [3182,\n", - " 1090,\n", - " 367,\n", - " 179,\n", - " 1748,\n", - " 3292,\n", - " 710,\n", - " 709,\n", - " 1209,\n", - " 106,\n", - " 1121,\n", - " 2698,\n", - " 2700,\n", - " 20,\n", - " 21,\n", - " 1624,\n", - " 1625,\n", - " 2094,\n", - " 2277,\n", - " 1512,\n", - " 329,\n", - " 1771,\n", - " 450,\n", - " 2988,\n", - " 330,\n", - " 669,\n", - " 1145,\n", - " 1605,\n", - " 3435,\n", - " 331,\n", - " 2536,\n", - " 1092,\n", - " 2152,\n", - " 2844,\n", - " 2537,\n", - " 2538,\n", - " 579,\n", - " 2142,\n", - " 3559,\n", - " 1193,\n", - " 2499,\n", - " 3682,\n", - " 897,\n", - " 686,\n", - " 356,\n", - " 685,\n", - " 974,\n", - " 1792,\n", - " 249,\n", - " 797,\n", - " 660,\n", - " 796,\n", - " 348,\n", - " 1262,\n", - " 3090,\n", - " 3285,\n", - " 773,\n", - " 733,\n", - " 2453,\n", - " 26,\n", - " 39,\n", - " 1626,\n", - " 1819,\n", - " 1636,\n", - " 3454,\n", - " 1944,\n", - " 6,\n", - " 2646,\n", - " 3058,\n", - " 1170,\n", - " 487,\n", - " 569,\n", - " 816,\n", - " 257,\n", - " 2198,\n", - " 2850,\n", - " 2431,\n", - " 3347,\n", - " 896,\n", - " 214,\n", - " 215,\n", - " 654,\n", - " 652,\n", - " 648,\n", - " 650,\n", - " 649,\n", - " 653,\n", - " 2195,\n", - " 651,\n", - " 646,\n", - " 647,\n", - " 645,\n", - " 2193,\n", - " 2855,\n", - " 2857,\n", - " 3348,\n", - " 58,\n", - " 57,\n", - " 354,\n", - " 2853,\n", - " 213,\n", - " 2854,\n", - " 657,\n", - " 2199,\n", - " 2200,\n", - " 3560,\n", - " 260,\n", - " 261,\n", - " 259,\n", - " 258,\n", - " 655,\n", - " 2887,\n", - " 314,\n", - " 2683,\n", - " 670,\n", - " 2858,\n", - " 1421,\n", - " 3394,\n", - " 1631,\n", - " 862,\n", - " 1103,\n", - " 496,\n", - " 3631,\n", - " 3151,\n", - " 2870,\n", - " 2871,\n", - " 3149,\n", - " 2885,\n", - " 3354,\n", - " 1057,\n", - " 256,\n", - " 644,\n", - " 3653,\n", - " 147,\n", - " 255,\n", - " 1059,\n", - " 3395,\n", - " 488,\n", - " 643,\n", - " 3812,\n", - " 2868,\n", - " 1102,\n", - " 1617,\n", - " 3654,\n", - " 3279,\n", - " 2515,\n", - " 3635,\n", - " 3636,\n", - " 2498,\n", - " 2418,\n", - " 27,\n", - " 890,\n", - " 1351,\n", - " 3146,\n", - " 1633,\n", - " 1635,\n", - " 30,\n", - " 3145,\n", - " 29,\n", - " 2419,\n", - " 3852,\n", - " 1630,\n", - " 1171,\n", - " 3707,\n", - " 2220,\n", - " 3706,\n", - " 3790,\n", - " 3175,\n", - " 3393,\n", - " 1511,\n", - " 3396,\n", - " 505,\n", - " 25,\n", - " 1629,\n", - " 980,\n", - " 506,\n", - " 981,\n", - " 32,\n", - " 3397,\n", - " 829,\n", - " 1061,\n", - " 3516,\n", - " 3248,\n", - " 3567,\n", - " 3826,\n", - " 3318,\n", - " 3688,\n", - " 1144,\n", - " 1946,\n", - " 1772,\n", - " 2846,\n", - " 2325,\n", - " 2501,\n", - " 311,\n", - " 3827,\n", - " 3497,\n", - " 3747,\n", - " 1949,\n", - " 2763,\n", - " 2941,\n", - " 310,\n", - " 2706,\n", - " 2707,\n", - " 3432,\n", - " 668,\n", - " 993,\n", - " 3200,\n", - " 3568,\n", - " 3250,\n", - " 160,\n", - " 2817,\n", - " 3828,\n", - " 2502,\n", - " 2575,\n", - " 309,\n", - " 3452,\n", - " 1950,\n", - " 1154,\n", - " 1073,\n", - " 1152,\n", - " 3342,\n", - " 1155,\n", - " 3480,\n", - " 2684,\n", - " 2685,\n", - " 509,\n", - " 894,\n", - " 2894,\n", - " 2895,\n", - " 1031,\n", - " 1570,\n", - " 1198,\n", - " 3597,\n", - " 3477,\n", - " 3554,\n", - " 2565,\n", - " 3810,\n", - " 347,\n", - " 3762,\n", - " 1545,\n", - " 2042,\n", - " 1687,\n", - " 1982,\n", - " 1983,\n", - " 3702,\n", - " 1752,\n", - " 2652,\n", - " 1050,\n", - " 1329,\n", - " 1646,\n", - " 3215,\n", - " 3730,\n", - " 374,\n", - " 795,\n", - " 1062,\n", - " 2917,\n", - " 3514,\n", - " 3664,\n", - " 3663,\n", - " 3853,\n", - " 548,\n", - " 2413,\n", - " 3865,\n", - " 3344,\n", - " 3345,\n", - " 2004,\n", - " 2365,\n", - " 2363,\n", - " 2366,\n", - " 1563,\n", - " 1695,\n", - " 2179,\n", - " 1876,\n", - " 1402,\n", - " 2003,\n", - " 1125,\n", - " 1914,\n", - " 745,\n", - " 1331,\n", - " 429,\n", - " 1915,\n", - " 528,\n", - " 529,\n", - " 3496,\n", - " 3387,\n", - " 3315,\n", - " 3716,\n", - " 665,\n", - " 3786,\n", - " 3691,\n", - " 3814,\n", - " 3815,\n", - " 3690,\n", - " 3314,\n", - " 3419,\n", - " 3572,\n", - " 3816,\n", - " 3555,\n", - " 3713,\n", - " 1169,\n", - " 2615,\n", - " 3382,\n", - " 3381,\n", - " 2616,\n", - " 3715,\n", - " 777,\n", - " 2614,\n", - " 2840,\n", - " 3388,\n", - " 3644,\n", - " 2368,\n", - " 3214,\n", - " 3288,\n", - " 3645,\n", - " 3289,\n", - " 3643,\n", - " 2841,\n", - " 3576,\n", - " 3483,\n", - " 3714,\n", - " 2504,\n", - " 2930,\n", - " 2561,\n", - " 3364,\n", - " 2451,\n", - " 3657,\n", - " 3655,\n", - " 3656,\n", - " 3363,\n", - " 3521,\n", - " 3080,\n", - " 3219,\n", - " 2447,\n", - " 3081,\n", - " 3517,\n", - " 2984,\n", - " 3519,\n", - " 2448,\n", - " 2872,\n", - " 2308,\n", - " 656,\n", - " 2307,\n", - " 2449,\n", - " 1296,\n", - " 1295,\n", - " 925,\n", - " 1293,\n", - " 1294,\n", - " 1689,\n", - " 3461,\n", - " 16,\n", - " 1265,\n", - " 1668,\n", - " 1669,\n", - " 2471,\n", - " 3099,\n", - " 1342,\n", - " 2726,\n", - " 537,\n", - " 3839,\n", - " 3840,\n", - " 1264,\n", - " 2204,\n", - " 2559,\n", - " 2043,\n", - " 2382,\n", - " 1750,\n", - " 2100,\n", - " 1776,\n", - " 2205,\n", - " 2472,\n", - " 2558,\n", - " 2897,\n", - " 3102,\n", - " 3104,\n", - " 3106,\n", - " 243,\n", - " 762,\n", - " 824,\n", - " 185,\n", - " 1429,\n", - " 271,\n", - " 1430,\n", - " 1720,\n", - " 1721,\n", - " 538,\n", - " 1197,\n", - " 1006,\n", - " 28,\n", - " 135,\n", - " 624,\n", - " 677,\n", - " 15,\n", - " 1007,\n", - " 136,\n", - " 757,\n", - " 313,\n", - " 1008,\n", - " 2045,\n", - " 204,\n", - " 1977,\n", - " 124,\n", - " 353,\n", - " 451,\n", - " 2434,\n", - " 2823,\n", - " 3611,\n", - " 788,\n", - " 251,\n", - " 253,\n", - " 2238,\n", - " 2237,\n", - " 2239,\n", - " 1083,\n", - " 14,\n", - " 2694,\n", - " 2279,\n", - " 2695,\n", - " 3818,\n", - " 1361,\n", - " 1362,\n", - " 3820,\n", - " 2944,\n", - " 3573,\n", - " 3600,\n", - " 2666,\n", - " 2912,\n", - " 2247,\n", - " 2427,\n", - " 2976,\n", - " 2975,\n", - " 3842,\n", - " 3247,\n", - " 3512,\n", - " 2745,\n", - " 3569,\n", - " 2192,\n", - " 2621,\n", - " 2428,\n", - " 2619,\n", - " 2744,\n", - " 2977,\n", - " 2426,\n", - " 3599,\n", - " 3843,\n", - " 2429,\n", - " 2623,\n", - " 3147,\n", - " 2278,\n", - " 3733,\n", - " 3821,\n", - " 3823,\n", - " 2318,\n", - " 1022,\n", - " 3822,\n", - " 1575,\n", - " 3272,\n", - " 2864,\n", - " 2748,\n", - " 3837,\n", - " 2750,\n", - " 3057,\n", - " 2349,\n", - " 2457,\n", - " 2888,\n", - " 1130,\n", - " 3056,\n", - " 1576,\n", - " 1577,\n", - " 1194,\n", - " 3055,\n", - " 2091,\n", - " 2612,\n", - " 1841,\n", - " 791,\n", - " 1842,\n", - " 1844,\n", - " 2090,\n", - " 2348,\n", - " 1843,\n", - " 1845,\n", - " 1020,\n", - " 1850,\n", - " 154,\n", - " 792,\n", - " 152,\n", - " 1131,\n", - " 2747,\n", - " 3488,\n", - " 3858,\n", - " 267,\n", - " 359,\n", - " 266,\n", - " 360,\n", - " 2730,\n", - " 1419,\n", - " 411,\n", - " 785,\n", - " 96,\n", - " 1420,\n", - " 2317,\n", - " 269,\n", - " 2959,\n", - " 588,\n", - " 1658,\n", - " 2636,\n", - " 3201,\n", - " 3052,\n", - " 3359,\n", - " 3595,\n", - " 2970,\n", - " 3446,\n", - " 3500,\n", - " 141,\n", - " 265,\n", - " 1034,\n", - " 1380,\n", - " 1528,\n", - " 808,\n", - " 1427,\n", - " 1426,\n", - " 1424,\n", - " 1425,\n", - " 1769,\n", - " 2782,\n", - " 2526,\n", - " 2662,\n", - " 2244,\n", - " 2151,\n", - " 2352,\n", - " 2439,\n", - " 2661,\n", - " 2354,\n", - " 2641,\n", - " 1526,\n", - " 1529,\n", - " 2525,\n", - " 1064,\n", - " 2298,\n", - " 1865,\n", - " 1996,\n", - " 2353,\n", - " 2132,\n", - " 2555,\n", - " 774,\n", - " 1423,\n", - " 1315,\n", - " 1768,\n", - " 1997,\n", - " 661,\n", - " 1316,\n", - " 584,\n", - " 142,\n", - " 585,\n", - " 2133,\n", - " 1379,\n", - " 707,\n", - " 986,\n", - " 1033,\n", - " 1770,\n", - " 793,\n", - " 985,\n", - " 2245,\n", - " 1868,\n", - " 3196,\n", - " 3053,\n", - " 2994,\n", - " 3166,\n", - " 3781,\n", - " 3693,\n", - " 2892,\n", - " 3501,\n", - " 82,\n", - " 1867,\n", - " 3088,\n", - " 2968,\n", - " 2969,\n", - " 1666,\n", - " 2148,\n", - " 2146,\n", - " 2147,\n", - " 131,\n", - " 132,\n", - " 627,\n", - " 628,\n", - " 1298,\n", - " 1299,\n", - " 1485,\n", - " 1486,\n", - " 1300,\n", - " 1301,\n", - " 36,\n", - " 37,\n", - " 1484,\n", - " 1665,\n", - " 38,\n", - " 1777,\n", - " 780,\n", - " 302,\n", - " 303,\n", - " 821,\n", - " 558,\n", - " 3796,\n", - " 2175,\n", - " 1191,\n", - " 1189,\n", - " 1187,\n", - " 1190,\n", - " 2627,\n", - " 2628,\n", - " 467,\n", - " 218,\n", - " 798,\n", - " 3548,\n", - " 3700,\n", - " 3278,\n", - " 3547,\n", - " 3699,\n", - " 3694,\n", - " 3695,\n", - " 3698,\n", - " 3546,\n", - " 3696,\n", - " 2286,\n", - " 3236,\n", - " 2714,\n", - " 2034,\n", - " 2715,\n", - " 2713,\n", - " 2716,\n", - " 3213,\n", - " 2955,\n", - " 2956,\n", - " 2038,\n", - " 2037,\n", - " 3212,\n", - " 3795,\n", - " 2029,\n", - " 2712,\n", - " 1659,\n", - " 1660,\n", - " 1032,\n", - " 2689,\n", - " 3361,\n", - " 1813,\n", - " 3362,\n", - " 2098,\n", - " 1223,\n", - " 3596,\n", - " 1810,\n", - " 1222,\n", - " 1661,\n", - " 2097,\n", - " 1811,\n", - " 2096,\n", - " 1881,\n", - " 3076,\n", - " 3557,\n", - " 519,\n", - " 3672,\n", - " 3065,\n", - " 1029,\n", - " 3856,\n", - " 2000,\n", - " 3536,\n", - " 3077,\n", - " 3332,\n", - " 3264,\n", - " 3262,\n", - " 3426,\n", - " 2355,\n", - " 3425,\n", - " 3333,\n", - " 1229,\n", - " 1713,\n", - " 2159,\n", - " 1711,\n", - " 1714,\n", - " 2886,\n", - " 2160,\n", - " 2161,\n", - " 3144,\n", - " 2384,\n", - " 1481,\n", - " 1086,\n", - " 3265,\n", - " 2518,\n", - " 2787,\n", - " 1712,\n", - " 1230,\n", - " 3179,\n", - " 1228,\n", - " 2838,\n", - " 2963,\n", - " 2960,\n", - " 3470,\n", - " 3598,\n", - " 1599,\n", - " 2961,\n", - " 3261,\n", - " 3844,\n", - " 2655,\n", - " 2962,\n", - " 937,\n", - " 1569,\n", - " 2760,\n", - " 2936,\n", - " 518,\n", - " 3209,\n", - " 3208,\n", - " 3210,\n", - " 3207,\n", - " 3211,\n", - " 3274,\n", - " 3116,\n", - " 3275,\n", - " 482,\n", - " 340,\n", - " 2438,\n", - " 559,\n", - " 751,\n", - " 51,\n", - " 52,\n", - " 352,\n", - " 1670,\n", - " 1521,\n", - " 3119,\n", - " 426,\n", - " 1765,\n", - " 2338,\n", - " 3464,\n", - " 2443,\n", - " 2784,\n", - " 469,\n", - " 1479,\n", - " 1371,\n", - " 1035,\n", - " 1478,\n", - " 3263,\n", - " 3509,\n", - " 1736,\n", - " 2982,\n", - " 2983,\n", - " 1703,\n", - " 1781,\n", - " 923,\n", - " 924,\n", - " 2633,\n", - " 1407,\n", - " 1408,\n", - " 1606,\n", - " 1900,\n", - " 1106,\n", - " 1107,\n", - " 1105,\n", - " 1406,\n", - " 1000,\n", - " 1779,\n", - " 1704,\n", - " 1901,\n", - " 1899,\n", - " 1902,\n", - " 2383,\n", - " 3323,\n", - " 3719,\n", - " 3544,\n", - " 3540,\n", - " 3543,\n", - " 2599,\n", - " 2756,\n", - " 3542,\n", - " 2040,\n", - " 3066,\n", - " 3541,\n", - " 1823,\n", - " 1482,\n", - " 1651,\n", - " 1652,\n", - " 2311,\n", - " 2460,\n", - " 3836,\n", - " 2123,\n", - " 2785,\n", - " 3760,\n", - " 2786,\n", - " 3406,\n", - " 2533,\n", - " 1738,\n", - " 2632,\n", - " 1907,\n", - " 2061,\n", - " 1822,\n", - " 2236,\n", - " 1908,\n", - " 2264,\n", - " 1737,\n", - " 1593,\n", - " 1735,\n", - " 1404,\n", - " 1261,\n", - " 1594,\n", - " 3739,\n", - " 3787,\n", - " 3863,\n", - " 840,\n", - " 3537,\n", - " 1260,\n", - " 1405,\n", - " 3343,\n", - " 2060,\n", - " 3661,\n", - " 2631,\n", - " 3593,\n", - " 3294,\n", - " 3662,\n", - " 3030,\n", - " 3031,\n", - " 2690,\n", - " 3538,\n", - " 3738,\n", - " 3216,\n", - " 3732,\n", - " 3770,\n", - " 834,\n", - " 504,\n", - " 507,\n", - " 295,\n", - " 392,\n", - " 3764,\n", - " 468,\n", - " 162,\n", - " 332,\n", - " 42,\n", - " 192,\n", - " 95,\n", - " 127,\n", - " 193,\n", - " 508,\n", - " 578,\n", - " 2797,\n", - " 1701,\n", - " 2585,\n", - " 870,\n", - " 446,\n", - " 736,\n", - " 3129,\n", - " 869,\n", - " 3180,\n", - " 3319,\n", - " 3763,\n", - " 3038,\n", - " 737,\n", - " 3510,\n", - " 445,\n", - " 299,\n", - " 408,\n", - " 407,\n", - " 2798,\n", - " 3130,\n", - " 2980,\n", - " 3078,\n", - " 1586,\n", - " 1767,\n", - " 503,\n", - " 481,\n", - " 574,\n", - " 631,\n", - " 2981,\n", - " 576,\n", - " 577,\n", - " 575,\n", - " 339,\n", - " 573,\n", - " 3220,\n", - " 738,\n", - " 3765,\n", - " 1067,\n", - " 1762,\n", - " 1763,\n", - " 1766,\n", - " 296,\n", - " 502,\n", - " 1236,\n", - " 1237,\n", - " 999,\n", - " 1403,\n", - " 1309,\n", - " 228,\n", - " 231,\n", - " 370,\n", - " 517,\n", - " 2337,\n", - " 2711,\n", - " 2303,\n", - " 3463,\n", - " 3466,\n", - " 217,\n", - " 2679,\n", - " 3439,\n", - " 755,\n", - " 603,\n", - " 1508,\n", - " 3526,\n", - " 2362,\n", - " 2680,\n", - " 3438,\n", - " 3442,\n", - " 2671,\n", - " 3440,\n", - " 3583,\n", - " 3245,\n", - " 3746,\n", - " 932,\n", - " 2450,\n", - " 3239,\n", - " 3072,\n", - " 3671,\n", - " 3807,\n", - " 3806,\n", - " 3808,\n", - " 3310,\n", - " 3311,\n", - " 3472,\n", - " 3034,\n", - " 3035,\n", - " 3036,\n", - " 1352,\n", - " 3803,\n", - " 3804,\n", - " 2978,\n", - " 3143,\n", - " 3142,\n", - " 2890,\n", - " 3135,\n", - " 3136,\n", - " 3131,\n", - " 3141,\n", - " 3137,\n", - " 3133,\n", - " 3140,\n", - " 3139,\n", - " 3132,\n", - " 3134,\n", - " 2578,\n", - " 2446,\n", - " 2524,\n", - " 2601,\n", - " 2602,\n", - " 2331,\n", - " 2398,\n", - " 2445,\n", - " 2243,\n", - " 2122,\n", - " 2241,\n", - " 1973,\n", - " 2332,\n", - " 2330,\n", - " 3805,\n", - " 220,\n", - " 1503,\n", - " 1219,\n", - " 2577,\n", - " 3138,\n", - " 2176,\n", - " 1348,\n", - " 1640,\n", - " 1063,\n", - " 1634,\n", - " 1639,\n", - " 1807,\n", - " 1602,\n", - " 1632,\n", - " 2727,\n", - " 2044,\n", - " 2891,\n", - " 936,\n", - " 2399,\n", - " 2334,\n", - " 1760,\n", - " 2121,\n", - " 634,\n", - " 933,\n", - " 87,\n", - " 511,\n", - " 369,\n", - " 368,\n", - " 602,\n", - " 9,\n", - " 8,\n", - " 466,\n", - " 90,\n", - " 165,\n", - " 10,\n", - " 91,\n", - " 88,\n", - " 89,\n", - " 273,\n", - " 365,\n", - " 333,\n", - " 633,\n", - " 934,\n", - " 366,\n", - " 31,\n", - " 134,\n", - " 245,\n", - " 137,\n", - " 225,\n", - " 1014,\n", - " 226,\n", - " 364,\n", - " 632,\n", - " 227,\n", - " 1603,\n", - " 224,\n", - " 229,\n", - " 1066,\n", - " 363,\n", - " 1604,\n", - " 2914,\n", - " 1933,\n", - " 2012,\n", - " 1350,\n", - " 1773,\n", - " 47,\n", - " 1582,\n", - " 904,\n", - " 906,\n", - " 1507,\n", - " 2617,\n", - " 716,\n", - " 717,\n", - " 604,\n", - " 1774,\n", - " 2441,\n", - " 2505,\n", - " 1349,\n", - " 991,\n", - " 1825,\n", - " 1826,\n", - " 987,\n", - " 988,\n", - " 1140,\n", - " 1504,\n", - " 905,\n", - " 1506,\n", - " 1638,\n", - " 1987,\n", - " 1989,\n", - " 1505,\n", - " 1985,\n", - " 1986,\n", - " 1988,\n", - " 1509,\n", - " 1984,\n", - " 989,\n", - " 990,\n", - " 1217,\n", - " 45,\n", - " 46,\n", - " 2172,\n", - " 2173,\n", - " 2581,\n", - " 1794,\n", - " 2021,\n", - " 2579,\n", - " 1849,\n", - " 2580,\n", - " 2582,\n", - " 2576,\n", - " 2997,\n", - " 802,\n", - " 882,\n", - " 878,\n", - " 879,\n", - " 1847,\n", - " 1848,\n", - " 1266,\n", - " 1398,\n", - " 1267,\n", - " 1399,\n", - " 2233,\n", - " 1357,\n", - " 1359,\n", - " 1360,\n", - " 1358,\n", - " 1183,\n", - " 2022,\n", - " 3117,\n", - " 3120,\n", - " 3118,\n", - " 2764,\n", - " 2928,\n", - " 3441,\n", - " 2444,\n", - " 2681,\n", - " 2442,\n", - " 3008,\n", - " 448,\n", - " 1515,\n", - " 320,\n", - " 323,\n", - " 449,\n", - " 2299,\n", - " 2167,\n", - " 3006,\n", - " 1517,\n", - " 3465,\n", - " 3792,\n", - " 1745,\n", - " 2998,\n", - " 3491,\n", - " 3000,\n", - " 3005,\n", - " 2999,\n", - " 3001,\n", - " 3002,\n", - " 3003,\n", - " 3007,\n", - " 3171,\n", - " 1519,\n", - " 957,\n", - " 1079,\n", - " 1078,\n", - " 955,\n", - " 1081,\n", - " 1672,\n", - " 3170,\n", - " 1082,\n", - " 3169,\n", - " 1522,\n", - " 1898,\n", - " 2168,\n", - " 2171,\n", - " 2761,\n", - " 3004,\n", - " 93,\n", - " 321,\n", - " 515,\n", - " 94,\n", - " 322,\n", - " 688,\n", - " 883,\n", - " 2400,\n", - " 803,\n", - " 202,\n", - " 1400,\n", - " 1401,\n", - " 373,\n", - " 2030,\n", - " 2027,\n", - " 2032,\n", - " 2035,\n", - " 2023,\n", - " 2025,\n", - " 2028,\n", - " 2031,\n", - " 2033,\n", - " 2026,\n", - " 2024,\n", - " 2036,\n", - " 2440,\n", - " 2626,\n", - " 2110,\n", - " 2574,\n", - " 2770,\n", - " 3676,\n", - " 2202,\n", - " 2254,\n", - " 2479,\n", - " 270,\n", - " 2569,\n", - " 3589,\n", - " 1143,\n", - " 858,\n", - " 381,\n", - " 2420,\n", - " 566,\n", - " 1961,\n", - " 465,\n", - " 1852,\n", - " 3845,\n", - " 789,\n", - " 1046,\n", - " 830,\n", - " 1292,\n", - " 831,\n", - " 1410,\n", - " 1962,\n", - " 3829,\n", - " 2114,\n", - " 2425,\n", - " 3233,\n", - " 1418,\n", - " 1662,\n", - " 2221,\n", - " 2507,\n", - " 623,\n", - " 1204,\n", - " 3697,\n", - " 3612,\n", - " 1374,\n", - " 2,\n", - " 1343,\n", - " 3639,\n", - " 1051,\n", - " 3390,\n", - " 2089,\n", - " 3389,\n", - " 1487,\n", - " 2069,\n", - " 2508,\n", - " 1501,\n", - " 1864,\n", - " 121,\n", - " 3811,\n", - " 3295,\n", - " 2165,\n", - " 2128,\n", - " 3720,\n", - " 1366,\n", - " 1663,\n", - " 1469,\n", - " 1871,\n", - " 1936,\n", - " 2487,\n", - " 3341,\n", - " 1591,\n", - " 1956,\n", - " 155,\n", - " 778,\n", - " 913,\n", - " 1890,\n", - " 1699,\n", - " 2877,\n", - " 1159,\n", - " 2557,\n", - " 1060,\n", - " 3489,\n", - " 1037,\n", - " 3752,\n", - " 304,\n", - " 3751,\n", - " 3404,\n", - " 40,\n", - " 3338,\n", - " 428,\n", - " 430,\n", - " 1883,\n", - " 1628,\n", - " 1276,\n", - " 1806,\n", - " 2423,\n", - " 1483,\n", - " 1998,\n", - " 1326,\n", - " 2691,\n", - " 804,\n", - " 2056,\n", - " 427,\n", - " 1705,\n", - " 3545,\n", - " 3817,\n", - " 740,\n", - " 3092,\n", - " 2884,\n", - " 3148,\n", - " 2099,\n", - " 2120,\n", - " 2903,\n", - " 3723,\n", - " 3199,\n", - " 3590,\n", - " 2162,\n", - " 2305,\n", - " 2659,\n", - " 1967,\n", - " 3756,\n", - " 1176,\n", - " 312,\n", - " 2506,\n", - " 376,\n", - " 500,\n", - " 722,\n", - " 2101,\n", - " 282,\n", - " 1246,\n", - " 1378,\n", - " 892,\n", - " 1377,\n", - " 2921,\n", - " 3855,\n", - " 2675,\n", - " 2935,\n", - " 2178,\n", - " 1363,\n", - " 1730,\n", - " 2385,\n", - " 2390,\n", - " 2186,\n", - " 1256,\n", - " 2106,\n", - " 1257,\n", - " 2164,\n", - " 2503,\n", - " 2539,\n", - " 3495,\n", - " 104,\n", - " 1931,\n", - " 1678,\n", - " 1951,\n", - " 3266,\n", - " 1417,\n", - " 3749,\n", - " 2916,\n", - " 212,\n", - " 19,\n", - " 211,\n", - " 1978,\n", - " 606,\n", - " 463,\n", - " 2458,\n", - " 3268,\n", - " 2873,\n", - " 1887,\n", - " 2227,\n", - " 1556,\n", - " 1214,\n", - " 1544,\n", - " 1888,\n", - " 1808,\n", - " 1889,\n", - " 2228,\n", - " 2408,\n", - " 2242,\n", - " 1755,\n", - " 1976,\n", - " 59,\n", - " 3423,\n", - " 3614,\n", - " 3011,\n", - " 3082,\n", - " 1069,\n", - " 3850,\n", - " 547,\n", - " 3453,\n", - " 3621,\n", - " 1550,\n", - " 1869,\n", - " 812,\n", - " 2866,\n", - " 958,\n", - " 1027,\n", - " 435,\n", - " 3780,\n", - " 3649,\n", - " 835,\n", - " 3033,\n", - " 2335,\n", - " 3857,\n", - " 3485,\n", - " 3809,\n", - " 60,\n", - " 3074,\n", - " 100,\n", - " 597,\n", - " 1365,\n", - " 1490,\n", - " 2734,\n", - " 2867,\n", - " 1141,\n", - " 1905,\n", - " 2347,\n", - " 1613,\n", - " 2312,\n", - " 726,\n", - " 2452,\n", - " 262,\n", - " 2129,\n", - " 3578,\n", - " 3778,\n", - " 1999,\n", - " 2150,\n", - " 3607,\n", - " 3025,\n", - " 1339,\n", - " 3608,\n", - " 706,\n", - " 1442,\n", - " 550,\n", - " 1608,\n", - " 2206,\n", - " 3494,\n", - " 393,\n", - " 1443,\n", - " 554,\n", - " 764,\n", - " 690,\n", - " 281,\n", - " 459,\n", - " 689,\n", - " 556,\n", - " 171,\n", - " 553,\n", - " 691,\n", - " 1857,\n", - " 405,\n", - " 551,\n", - " 2568,\n", - " 2411,\n", - " 483,\n", - " 941,\n", - " 2085,\n", - " 978,\n", - " 33,\n", - " 406,\n", - " 1543,\n", - " 1122,\n", - " 3625,\n", - " 3626,\n", - " 947,\n", - " 1258,\n", - " 1561,\n", - " 3277,\n", - " 1259,\n", - " 3019,\n", - " 1123,\n", - " 2781,\n", - " 3848,\n", - " 3846,\n", - " 3847,\n", - " 2284,\n", - " 3779,\n", - " 1231,\n", - " 1513,\n", - " 620,\n", - " 1317,\n", - " 1318,\n", - " 1734,\n", - " 2163,\n", - " 3685,\n", - " 619,\n", - " 1894,\n", - " 1531,\n", - " 2908,\n", - " 758,\n", - " 1926,\n", - " 3798,\n", - " 1696,\n", - " 1432,\n", - " 698,\n", - " 1895,\n", - " 3069,\n", - " 1532,\n", - " 1992,\n", - " 3070,\n", - " 3799,\n", - " 1619,\n", - " 761,\n", - " 1885,\n", - " 1271,\n", - " 759,\n", - " 1431,\n", - " 1533,\n", - " 3383,\n", - " 1270,\n", - " 895,\n", - " 1085,\n", - " 1234,\n", - " 1030,\n", - " 1656,\n", - " 713,\n", - " 3527,\n", - " 621,\n", - " 2852,\n", - " 161,\n", - " 1416,\n", - " 401,\n", - " 1759,\n", - " 1011,\n", - " 1993,\n", - " 1028,\n", - " 607,\n", - " 746,\n", - " 977,\n", - " 2309,\n", - " 2124,\n", - " 2006,\n", - " 2005,\n", - " 2455,\n", - " 70,\n", - " 334,\n", - " 2049,\n", - " 5,\n", - " 1893,\n", - " 1551,\n", - " 2454,\n", - " 2954,\n", - " 3712,\n", - " 2063,\n", - " 2664,\n", - " 2792,\n", - " 2527,\n", - " 2629,\n", - " 3184,\n", - " 3270,\n", - " 2510,\n", - " 2603,\n", - " 3740,\n", - " 1886,\n", - " 2459,\n", - " 2369,\n", - " 2654,\n", - " 1136,\n", - " 2421,\n", - " 1038,\n", - " 3469,\n", - " 1052,\n", - " 1238,\n", - " 388,\n", - " 744,\n", - " 3096,\n", - " 1041,\n", - " 1979,\n", - " 2495,\n", - " 1039,\n", - " 1040,\n", - " 2219,\n", - " 3824,\n", - " 1383,\n", - " 398,\n", - " 781,\n", - " 2521,\n", - " 782,\n", - " 187,\n", - " 297,\n", - " 263,\n", - " 2923,\n", - " 3575,\n", - " 1557,\n", - " 1718,\n", - " 1863,\n", - " 2512,\n", - " 1729,\n", - " 599,\n", - " 926,\n", - " 1877,\n", - " 485,\n", - " 927,\n", - " 1502,\n", - " 394,\n", - " 1445,\n", - " 395,\n", - " 2389,\n", - " 1715,\n", - " 1716,\n", - " 328,\n", - " 1558,\n", - " 605,\n", - " 1444,\n", - " 776,\n", - " 1717,\n", - " 2924,\n", - " 327,\n", - " 3451,\n", - " 2514,\n", - " 2755,\n", - " 2708,\n", - " 1878,\n", - " 2513,\n", - " 976,\n", - " 1254,\n", - " 973,\n", - " 676,\n", - " 891,\n", - " 1094,\n", - " 841,\n", - " 1095,\n", - " 564,\n", - " 565,\n", - " 1601,\n", - " 3658,\n", - " 1372,\n", - " 1945,\n", - " 1921,\n", - " 456,\n", - " 856,\n", - " 743,\n", - " 1306,\n", - " 1746,\n", - " 1824,\n", - " 3014,\n", - " 3259,\n", - " 1337,\n", - " 2701,\n", - " 3015,\n", - " 2788,\n", - " 3125,\n", - " 3493,\n", - " 3377,\n", - " 3642,\n", - " 1354,\n", - " 823,\n", - " 3093,\n", - " 1616,\n", - " 3618,\n", - " 3085,\n", - " 3677,\n", - " 3115,\n", - " 1903,\n", - " 3232,\n", - " 3386,\n", - " 236,\n", - " 815,\n", - " 3767,\n", - " 1798,\n", - " 3414,\n", - " 2943,\n", - " 3176,\n", - " 326,\n", - " 1080,\n", - " 3692,\n", - " 2437,\n", - " 2407,\n", - " 2656,\n", - " 1314,\n", - " 3227,\n", - " 739,\n", - " 3226,\n", - " 3455,\n", - " 3413,\n", - " 3854,\n", - " 3415,\n", - " 3416,\n", - " 3530,\n", - " 3108,\n", - " 3225,\n", - " 3228,\n", - " 772,\n", - " 833,\n", - " 2964,\n", - " 241,\n", - " 1596,\n", - " 2196,\n", - " 145,\n", - " 3579,\n", - " 73,\n", - " 421,\n", - " 1904,\n", - " 3107,\n", - " 2372,\n", - " 2933,\n", - " 305,\n", - " 3744,\n", - " 3774,\n", - " 2795,\n", - " 2064,\n", - " 1313,\n", - " 3535,\n", - " 3717,\n", - " 942,\n", - " 1797,\n", - " 2702,\n", - " 832,\n", - " 2552,\n", - " 2554,\n", - " 2710,\n", - " 2250,\n", - " 2461,\n", - " 922,\n", - " 2757,\n", - " 3620,\n", - " 3711,\n", - " 2807,\n", - " 2806,\n", - " 1268,\n", - " 2881,\n", - " 1470,\n", - " 3531,\n", - " 2805,\n", - " 3391,\n", - " 3617,\n", - " 3615,\n", - " 3616,\n", - " 2553,\n", - " 2925,\n", - " 2709,\n", - " 1097,\n", - " 1809,\n", - " 3533,\n", - " 3775,\n", - " 1226,\n", - " 3156,\n", - " 3490,\n", - " 3534,\n", - " 422,\n", - " 3619,\n", - " 3249,\n", - " 3291,\n", - " 3755,\n", - " 3449,\n", - " 3158,\n", - " 2589,\n", - " 172,\n", - " 3424,\n", - " 2678,\n", - " 809,\n", - " 2966,\n", - " 1104,\n", - " 2422,\n", - " 3273,\n", - " 2799,\n", - " 3532,\n", - " 484,\n", - " 3866,\n", - " 615,\n", - " 953,\n", - " 3743,\n", - " 35,\n", - " 613,\n", - " 4,\n", - " 3525,\n", - " 99,\n", - " 1297,\n", - " 837,\n", - " 337,\n", - " 2251,\n", - " 151,\n", - " 1373,\n", - " 1240,\n", - " 176,\n", - " 177,\n", - " 728,\n", - " 174,\n", - " 1161,\n", - " 1024,\n", - " 592,\n", - " 813,\n", - " 2189,\n", - " 771,\n", - " 74,\n", - " 3603,\n", - " 719,\n", - " 721,\n", - " 417,\n", - " 71,\n", - " 544,\n", - " 917,\n", - " 1311,\n", - " 3327,\n", - " 2906,\n", - " 3300,\n", - " 2214,\n", - " 3741,\n", - " 2067,\n", - " 3195,\n", - " 2066,\n", - " 1909,\n", - " 1952,\n", - " 2772,\n", - " 2995,\n", - " 1312,\n", - " 1310,\n", - " 1411,\n", - " 1178,\n", - " 188,\n", - " 1488,\n", - " 814,\n", - " 3024,\n", - " 522,\n", - " 2065,\n", - " 2273,\n", - " 2879,\n", - " 521,\n", - " 2301,\n", - " 2149,\n", - " 1023,\n", - " 523,\n", - " 810,\n", - " 639,\n", - " 23,\n", - " 201,\n", - " 718,\n", - " 423,\n", - " 720,\n", - " 921,\n", - " 684,\n", - " 424,\n", - " 681,\n", - " 682,\n", - " 308,\n", - " 683,\n", - " 884,\n", - " 425,\n", - " 1054,\n", - " 1177,\n", - " 454,\n", - " 1385,\n", - " 2391,\n", - " 3772,\n", - " 2630,\n", - " 3773,\n", - " 3835,\n", - " 2790,\n", - " 2789,\n", - " 3246,\n", - " 512,\n", - " 362,\n", - " 56,\n", - " 361,\n", - " 472,\n", - " 470,\n", - " 471,\n", - " 3782,\n", - " 1607,\n", - " 2562,\n", - " 768,\n", - " 543,\n", - " 2593,\n", - " 2456,\n", - " 2474,\n", - " 2723,\n", - " 120,\n", - " 1304,\n", - " 2059,\n", - " 591,\n", - " 1303,\n", - " 2153,\n", - " 2018,\n", - " 2058,\n", - " 1072,\n", - " 1860,\n", - " 34,\n", - " 601,\n", - " 1302,\n", - " 1692,\n", - " 1210,\n", - " 1858,\n", - " 1413,\n", - " 1414,\n", - " 84,\n", - " 1859,\n", - " 399,\n", - " 589,\n", - " 287,\n", - " 2752,\n", - " 196,\n", - " 1119,\n", - " 384,\n", - " 383,\n", - " 1920,\n", - " 2249,\n", - " 1120,\n", - " 1415,\n", - " 1305,\n", - " 1,\n", - " 622,\n", - " 1919,\n", - " 1817,\n", - " 714,\n", - " 712,\n", - " 970,\n", - " 787,\n", - " 341,\n", - " 477,\n", - " 1058,\n", - " 1655,\n", - " 410,\n", - " 1815,\n", - " 701,\n", - " 1285,\n", - " 400,\n", - " 1620,\n", - " 700,\n", - " 552,\n", - " 555,\n", - " 699,\n", - " 857,\n", - " 108,\n", - " 859,\n", - " 1132,\n", - " 1816,\n", - " 1571,\n", - " 1965,\n", - " 1572,\n", - " 3726,\n", - " 3783,\n", - " 1892,\n", - " 2971,\n", - " 1673,\n", - " 2972,\n", - " 1376,\n", - " 1722,\n", - " 1925,\n", - " 2409,\n", - " 1462,\n", - " 1654,\n", - " 2883,\n", - " 1751,\n", - " 1475,\n", - " 1872,\n", - " 3040,\n", - " 1065,\n", - " 2904,\n", - " 2430,\n", - " 3384,\n", - " 2875,\n", - " 3336,\n", - " 2766,\n", - " 3150,\n", - " 3186,\n", - " 3474,\n", - " 801,\n", - " 827,\n", - " 289,\n", - " 290,\n", - " 696,\n", - " 2833,\n", - " 3112,\n", - " 2002,\n", - " 1854,\n", - " 1917,\n", - " 1916,\n", - " 2310,\n", - " 2216,\n", - " 2676,\n", - " 2830,\n", - " 2218,\n", - " 2831,\n", - " 1724,\n", - " 2217,\n", - " 2677,\n", - " 3750,\n", - " 667,\n", - " 839,\n", - " 2113,\n", - " 191,\n", - " 195,\n", - " 666,\n", - " 2733,\n", - " 292,\n", - " 415,\n", - " 2111,\n", - " 2104,\n", - " 272,\n", - " 495,\n", - " 44,\n", - " 587,\n", - " 2112,\n", - " 3061,\n", - " 2937,\n", - " 697,\n", - " 1356,\n", - " 1235,\n", - " 928,\n", - " 1375,\n", - " 1679,\n", - " 158,\n", - " 1552,\n", - " 221,\n", - " 156,\n", - " 490,\n", - " 635,\n", - " 2530,\n", - " 318,\n", - " 3458,\n", - " 2052,\n", - " 2345,\n", - " 3223,\n", - " 180,\n", - " 968,\n", - " 1880,\n", - " 2531,\n", - " 1138,\n", - " 157,\n", - " 1896,\n", - " 754,\n", - " 1546,\n", - " 2532,\n", - " 1175,\n", - " 2105,\n", - " 741,\n", - " 1433,\n", - " 1096,\n", - " 1391,\n", - " 2109,\n", - " 1139,\n", - " 2367,\n", - " 581,\n", - " 969,\n", - " 966,\n", - " 967,\n", - " 3255,\n", - " 351,\n", - " 86,\n", - " 199,\n", - " 414,\n", - " 965,\n", - " 1162,\n", - " 2115,\n", - " 2836,\n", - " 2731,\n", - " 3511,\n", - " 389,\n", - " 1137,\n", - " 2497,\n", - " 2732,\n", - " 2910,\n", - " 2834,\n", - " 3251,\n", - " 1553,\n", - " 294,\n", - " 1948,\n", - " 1251,\n", - " 1496,\n", - " 3376,\n", - " 1215,\n", - " 2835,\n", - " 3669,\n", - " 533,\n", - " 711,\n", - " 2207,\n", - " 1071,\n", - " 2361,\n", - " 3459,\n", - " 3253,\n", - " 1592,\n", - " 1820,\n", - " 1747,\n", - " 1749,\n", - " 3371,\n", - " 2989,\n", - " 3373,\n", - " 1549,\n", - " 2597,\n", - " 1252,\n", - " 1047,\n", - " 2051,\n", - " 2103,\n", - " 2183,\n", - " 1554,\n", - " 2102,\n", - " 2793,\n", - " 2320,\n", - " 767,\n", - " 846,\n", - " 0,\n", - " 608,\n", - " 637,\n", - " 956,\n", - " 133,\n", - " 625,\n", - " 687,\n", - " 580,\n", - " 63,\n", - " 48,\n", - " 183,\n", - " 22,\n", - " 345,\n", - " 286,\n", - " 200,\n", - " 150,\n", - " 439,\n", - " 1307,\n", - " 92,\n", - " 342,\n", - " 626,\n", - " 438,\n", - " 598,\n", - " 531,\n", - " 708,\n", - " 2290,\n", - " 2938,\n", - " 3668,\n", - " 3665,\n", - " 2704,\n", - " 3670,\n", - " 769,\n", - " 3613,\n", - " 1173,\n", - " 1761,\n", - " 2300,\n", - " 748,\n", - " 527,\n", - " 609,\n", - " 1498,\n", - " 1497,\n", - " 3234,\n", - " 3235,\n", - " 418,\n", - " 3437,\n", - " 3556,\n", - " 3303,\n", - " 3701,\n", - " 3515,\n", - " 3710,\n", - " 2749,\n", - " 2804,\n", - " 3571,\n", - " 3769,\n", - " 3301,\n", - " 3768,\n", - " 2046,\n", - " 794,\n", - " 1001,\n", - " 3360,\n", - " 3558,\n", - " 2257,\n", - " 1364,\n", - " 1796,\n", - " 2945,\n", - " 3444,\n", - " 3302,\n", - " 1947,\n", - " 2780,\n", - " 3445,\n", - " 2907,\n", - " 2462,\n", - " 2802,\n", - " 2746,\n", - " 3063,\n", - " 2915,\n", - " 3833,\n", - " 2017,\n", - " 1981,\n", - " 2351,\n", - " 2803,\n", - " 2810,\n", - " 2350,\n", - " 2433,\n", - " 1795,\n", - " 3725,\n", - " 3064,\n", - " 1793,\n", - " 3724,\n", - " 749,\n", - " 636,\n", - " 2019,\n", - " 2528,\n", - " 1110,\n", - " 371,\n", - " 480,\n", - " 663,\n", - " 3834,\n", - " 2373,\n", - " 3155,\n", - " 3659,\n", - " 175,\n", - " 3640,\n", - " 2519,\n", - " 2635,\n", - " 3258,\n", - " 315,\n", - " 3154,\n", - " 3023,\n", - " 1384,\n", - " 2520,\n", - " 1585,\n", - " 664,\n", - " 992,\n", - " 3153,\n", - " 770,\n", - " 3152,\n", - " 178,\n", - " 2851,\n", - " 3628,\n", - " 2484,\n", - " 3016,\n", - " 3173,\n", - " 2843,\n", - " 3832,\n", - " 1932,\n", - " 2288,\n", - " 3731,\n", - " 81,\n", - " 3660,\n", - " 2940,\n", - " 3562,\n", - " 945,\n", - " 3187,\n", - " 3330,\n", - " 3185,\n", - " 17,\n", - " 674,\n", - " 464,\n", - " 2231,\n", - " 2336,\n", - " 2598,\n", - " 101,\n", - " 3324,\n", - " 2020,\n", - " 1677,\n", - " 2213,\n", - " 2404,\n", - " 240,\n", - " 3306,\n", - " 375,\n", - " 539,\n", - " 540,\n", - " 3721,\n", - " 1019,\n", - " 907,\n", - " 853,\n", - " 1017,\n", - " 1111,\n", - " 1113,\n", - " 1117,\n", - " 2268,\n", - " 3666,\n", - " 2591,\n", - " 2084,\n", - " 2169,\n", - " 852,\n", - " 2083,\n", - " 1167,\n", - " 939,\n", - " 1166,\n", - " 1918,\n", - " 209,\n", - " 210,\n", - " 975,\n", - " 1018,\n", - " 971,\n", - " 69,\n", - " 940,\n", - " 1688,\n", - " 730,\n", - " 2211,\n", - " 2212,\n", - " 2522,\n", - " 2265,\n", - " 2754,\n", - " 2592,\n", - " 3450,\n", - " 3060,\n", - " 2753,\n", - " 2170,\n", - " 2174,\n", - " 2406,\n", - " 3059,\n", - " 105,\n", - " 2364,\n", - " 2896,\n", - " 1611,\n", - " 1076,\n", - " 3479,\n", - " 2703,\n", - " 889,\n", - " 125,\n", - " 2209,\n", - " 396,\n", - " 549,\n", - " 916,\n", - " 2166,\n", - " 2771,\n", - " 851,\n", - " 268,\n", - " 572,\n", - " 2957,\n", - " 285,\n", - " 126,\n", - " 128,\n", - " 2344,\n", - " 1253,\n", - " 1727,\n", - " 979,\n", - " 2376,\n", - " 2230,\n", - " 2465,\n", - " 2848,\n", - " 3260,\n", - " 3366,\n", - " 2464,\n", - " 2847,\n", - " 3367,\n", - " 3582,\n", - " 3198,\n", - " 3513,\n", - " 3580,\n", - " 3581,\n", - " 1381,\n", - " 2934,\n", - " 693,\n", - " 1160,\n", - " 2809,\n", - " 1534,\n", - " 557,\n", - " 2550,\n", - " 2551,\n", - " 3029,\n", - " 2811,\n", - " 671,\n", - " 1397,\n", - " 850,\n", - " 949,\n", - " 725,\n", - " 996,\n", - " 1128,\n", - " 1129,\n", - " 727,\n", - " 997,\n", - " 1347,\n", - " 2047,\n", - " 2882,\n", - " 2048,\n", - " 1910,\n", - " 1911,\n", - " 1220,\n", - " 562,\n", - " 2476,\n", - " 76,\n", - " 948,\n", - " 672,\n", - " 673,\n", - " 692,\n", - " 1247,\n", - " 561,\n", - " 1185,\n", - " 1186,\n", - " 1188,\n", - " 998,\n", - " 1016,\n", - " 2015,\n", - " 237,\n", - " 2050,\n", - " 2658,\n", - " 2319,\n", - " 2013,\n", - " 2014,\n", - " 1341,\n", - " 930,\n", - " 2657,\n", - " 129,\n", - " 994,\n", - " 3084,\n", - " 2825,\n", - " 478,\n", - " 3398,\n", - " 3588,\n", - " 3400,\n", - " 3736,\n", - " 3797,\n", - " 3484,\n", - " 7,\n", - " 247,\n", - " 248,\n", - " 2511,\n", - " 2108,\n", - " 2595,\n", - " 1682,\n", - " 2827,\n", - " 3705,\n", - " 959,\n", - " 866,\n", - " 914,\n", - " 2478,\n", - " 3192,\n", - " 3735,\n", - " 3481,\n", - " 2009,\n", - " 1452,\n", - " 2232,\n", - " 1525,\n", - " 2594,\n", - " 2993,\n", - " 3869,\n", - " 2824,\n", - " 2828,\n", - " 3326,\n", - " 3794,\n", - " 2902,\n", - " 3703,\n", - " 3704,\n", - " 3868,\n", - " 3325,\n", - " 3793,\n", - " 3231,\n", - " 3585,\n", - " 2203,\n", - " 2263,\n", - " 1589,\n", - " 1590,\n", - " 1527,\n", - " 2267,\n", - " 1618,\n", - " 2266,\n", - " 3193,\n", - " 2991,\n", - " 3399,\n", - " 2779,\n", - " 2618,\n", - " 2826,\n", - " 2740,\n", - " 3586,\n", - " 2736,\n", - " 2778,\n", - " 1284,\n", - " 1975,\n", - " 2053,\n", - " 1938,\n", - " 2180,\n", - " 3087,\n", - " 2620,\n", - " 2622,\n", - " 3086,\n", - " 2548,\n", - " 3587,\n", - " 1232,\n", - " 1355,\n", - " 1450,\n", - " 2007,\n", - " 2126,\n", - " 2547,\n", - " 1972,\n", - " 2125,\n", - " 1451,\n", - " 1974,\n", - " 867,\n", - " 404,\n", - " 614,\n", - " 616,\n", - " 915,\n", - " 61,\n", - " 358,\n", - " 316,\n", - " 1025,\n", - " 822,\n", - " 1184,\n", - " 390,\n", - " 1026,\n", - " 1182,\n", - " 1233,\n", - " 845,\n", - " 1394,\n", - " 2356,\n", - " 3722,\n", - " 2909,\n", - " 3630,\n", - " 3240,\n", - " 3241,\n", - " 3238,\n", - " 3632,\n", - " 2953,\n", - " 2768,\n", - " 864,\n", - " 278,\n", - " 455,\n", - " 703,\n", - " 2432,\n", - " 1084,\n", - " 1249,\n", - " 1192,\n", - " 1353,\n", - " 1382,\n", - " 1680,\n", - " 3244,\n", - " 3467,\n", - " 2188,\n", - " 246,\n", - " 1207,\n", - " 1818,\n", - " 1923,\n", - " 1142,\n", - " 1968,\n", - " 498,\n", - " 2653,\n", - " 1202,\n", - " 234,\n", - " 1686,\n", - " 2185,\n", - " 2475,\n", - " 2947,\n", - " 3351,\n", - " 2648,\n", - " 2946,\n", - " 2258,\n", - " 3355,\n", - " 2010,\n", - " 107,\n", - " 355,\n", - " 546,\n", - " 2473,\n", - " 1837,\n", - " 2967,\n", - " 2743,\n", - " 3401,\n", - " 3825,\n", - " 2392,\n", - " 2647,\n", - " 612,\n", - " 3851,\n", - " 3021,\n", - " 3322,\n", - " 2584,\n", - " 3320,\n", - " 3321,\n", - " 2414,\n", - " 2918,\n", - " 242,\n", - " 378,\n", - " 3163,\n", - " 461,\n", - " 184,\n", - " 611,\n", - " 938,\n", - " 1164,\n", - " 1412,\n", - " 2068,\n", - " 252,\n", - " 3230,\n", - " 1330,\n", - " 2333,\n", - " 1495,\n", - " 1706,\n", - " 1580,\n", - " 1272,\n", - " 1048,\n", - " 610,\n", - " 763,\n", - " 541,\n", - " 3237,\n", - " 3871,\n", - " 3849,\n", - " 194,\n", - " 1213,\n", - " 1409,\n", - " 3584,\n", - " 2509,\n", - " 3205,\n", - " 3378,\n", - " 3062,\n", - " 3652,\n", - " 2979,\n", - " 3162,\n", - " 779,\n", - " 530,\n", - " 617,\n", - " 1212,\n", - " 1539,\n", - " 2705,\n", - " 475,\n", - " 775,\n", - " 3281,\n", - " 678,\n", - " 2297,\n", - " 3079,\n", - " 1939,\n", - " 3331,\n", - " 3346,\n", - " 3379,\n", - " 3646,\n", - " 3010,\n", - " 2878,\n", - " 2958,\n", - " 3507,\n", - " 3718,\n", - " 1588,\n", - " 1937,\n", - " 2926,\n", - " 1211,\n", - " 1573,\n", - " 2839,\n", - " 3097,\n", - " 3482,\n", - " 2566,\n", - " 1541,\n", - " 1991,\n", - " 1955,\n", - " 2403,\n", - " 1587,\n", - " 2127,\n", - " 1667,\n", - " 1851,\n", - " 1874,\n", - " 1884,\n", - " 1814,\n", - " 1913,\n", - " 1906,\n", - " 1980,\n", - " 2869,\n", - " 2494,\n", - " 2818,\n", - " 109,\n", - " 510,\n", - " 920,\n", - " 3,\n", - " 2375,\n", - " 173,\n", - " 836,\n", - " 385,\n", - " 1538,\n", - " 432,\n", - " 186,\n", - " 723,\n", - " 536,\n", - " 638,\n", - " 453,\n", - " 534,\n", - " 1091,\n", - " 2289,\n", - " 535,\n", - " 3190,\n", - " 1510,\n", - " 2927,\n", - " 148,\n", - " 149,\n", - " 2808,\n", - " 2360,\n", - " 3218,\n", - " 2572,\n", - " 2246,\n", - " 2405,\n", - " 2596,\n", - " 2692,\n", - " 3276,\n", - " 3502,\n", - " 1758,\n", - " 1757,\n", - " 2544,\n", - " 1725,\n", - " 181,\n", - " 1455,\n", - " 786,\n", - " 1287,\n", - " 1291,\n", - " 3282,\n", - " 3283,\n", - " 1126,\n", - " 1286,\n", - " 2016,\n", - " 2660,\n", - " 3802,\n", - " 2815,\n", - " 3487,\n", - " 2324,\n", - " 2965,\n", - " 3293,\n", - " 1112,\n", - " 2699,\n", - " 1791,\n", - " 1005,\n", - " 1790,\n", - " 123,\n", - " 3638,\n", - " 2387,\n", - " 1459,\n", - " 2294,\n", - " 2640,\n", - " 1833,\n", - " 112,\n", - " 2295,\n", - " 443,\n", - " 3434,\n", - " 1205,\n", - " 1206,\n", - " 1458,\n", - " 2259,\n", - " 1650,\n", - " 1653,\n", - " 1108,\n", - " 3528,\n", - " 900,\n", - " 3709,\n", - " 1323,\n", - " 3708,\n", - " 3478,\n", - " 1834,\n", - " 1964,\n", - " 954,\n", - " 3188,\n", - " 1835,\n", - " 1836,\n", - " 2118,\n", - " 2117,\n", - " 1963,\n", - " 1966,\n", - " 2248,\n", - " 1959,\n", - " 2116,\n", - " 1891,\n", - " 2119,\n", - " 1277,\n", - " 1756,\n", - " 114,\n", - " 747,\n", - " 2054,\n", - " 520,\n", - " 1685,\n", - " 113,\n", - " 115,\n", - " 117,\n", - " 118,\n", - " 116,\n", - " 119,\n", - " 1369,\n", - " 1370,\n", - " 1367,\n", - " 2586,\n", - " 1684,\n", - " 2735,\n", - " 1147,\n", - " 3357,\n", - " 3529,\n", - " 447,\n", - " 901,\n", - " 1146,\n", - " 902,\n", - " 898,\n", - " 899,\n", - " 462,\n", - " 2393,\n", - " 1456,\n", - " 2055,\n", - " 419,\n", - " 3206,\n", - " 1764,\n", - " 391,\n", - " 2889,\n", - " 1690,\n", - " 1802,\n", - " 3408,\n", - " 2874,\n", - " 820,\n", - " 2663,\n", - " 3046,\n", - " 3647,\n", - " 1454,\n", - " 865,\n", - " 2739,\n", - " 1098,\n", - " 1099,\n", - " 3896,\n", - " 964,\n", - " 1225,\n", - " 2741,\n", - " 1115,\n", - " 2738,\n", - " 2177,\n", - " 2282,\n", - " 2378,\n", - " 2285,\n", - " 3039,\n", - " 2283,\n", - " 2377,\n", - " 3194,\n", - " 2485,\n", - " 2819,\n", - " 2939,\n", - " 3475,\n", - " 2742,\n", - " 2737,\n", - " 2379,\n", - " 2380,\n", - " 1567,\n", - " 3894,\n", - " 2861,\n", - " 3476,\n", - " 1116,\n", - " 1566,\n", - " 3784,\n", - " 3895,\n", - " 2182,\n", - " 3041,\n", - " 2482,\n", - " 3124,\n", - " 1114,\n", - " 1422,\n", - " 3893,\n", - " 167,\n", - " 2374,\n", - " 3113,\n", - " 1782,\n", - " 1345,\n", - " 3114,\n", - " 912,\n", - " 1438,\n", - " 1439,\n", - " 1785,\n", - " 1789,\n", - " 1344,\n", - " 1783,\n", - " 2469,\n", - " 2669,\n", - " 3280,\n", - " 3759,\n", - " 3443,\n", - " 724,\n", - " 2901,\n", - " 2466,\n", - " 3420,\n", - " 2394,\n", - " 2395,\n", - " 3203,\n", - " 3591,\n", - " 3335,\n", - " 2081,\n", - " 3757,\n", - " 2643,\n", - " 2720,\n", - " 2341,\n", - " 2342,\n", - " 2346,\n", - " 2718,\n", - " 2082,\n", - " 2271,\n", - " 2272,\n", - " 2719,\n", - " 2721,\n", - " 3372,\n", - " 2796,\n", - " 2517,\n", - " 3109,\n", - " 1922,\n", - " 2467,\n", - " 2948,\n", - " 3020,\n", - " 1784,\n", - " 54,\n", - " 55,\n", - " 1612,\n", - " 2296,\n", - " 880,\n", - " 2292,\n", - " 1053,\n", - " 1723,\n", - " 3758,\n", - " 3566,\n", - " 3073,\n", - " 3304,\n", - " 590,\n", - " 3242,\n", - " 514,\n", - " 460,\n", - " 2899,\n", - " 3110,\n", - " 2155,\n", - " 1990,\n", - " 715,\n", - " 3202,\n", - " 2234,\n", - " 2269,\n", - " 2158,\n", - " 2270,\n", - " 3673,\n", - " 2950,\n", - " 239,\n", - " 2343,\n", - " 2900,\n", - " 3044,\n", - " 3045,\n", - " 2645,\n", - " 2776,\n", - " 2842,\n", - " 168,\n", - " 169,\n", - " 166,\n", - " 2468,\n", - " 3422,\n", - " 2080,\n", - " 3183,\n", - " 2898,\n", - " 3334,\n", - " 2644,\n", - " 3901,\n", - " 3370,\n", - " 3674,\n", - " 2516,\n", - " 3204,\n", - " 2996,\n", - " 3876,\n", - " 2642,\n", - " 3565,\n", - " 2951,\n", - " 2949,\n", - " 2952,\n", - " 3675,\n", - " 283,\n", - " 3374,\n", - " 3375,\n", - " 2154,\n", - " 2235,\n", - " 11,\n", - " 3111,\n", - " 207,\n", - " 2291,\n", - " 1224,\n", - " 1324,\n", - " 2208,\n", - " 2545,\n", - " 570,\n", - " 153,\n", - " 102,\n", - " 2665,\n", - " 110,\n", - " 219,\n", - " 13,\n", - " 111,\n", - " 238,\n", - " 2417,\n", - " 2316,\n", - " 3369,\n", - " 1681,\n", - " 2470,\n", - " 1542,\n", - " 1787,\n", - " 1396,\n", - " 1273,\n", - " 911,\n", - " 1437,\n", - " 1786,\n", - " 1788,\n", - " 2071,\n", - " 2542,\n", - " 2801,\n", - " 731,\n", - " 64,\n", - " 300,\n", - " 3217,\n", - " 735,\n", - " 43,\n", - " 2600,\n", - " 1461,\n", - " 3601,\n", - " 80,\n", - " 1846,\n", - " 2696,\n", - " 2313,\n", - " 3191,\n", - " 288,\n", - " 2252,\n", - " 2302,\n", - " 3126,\n", - " 1856,\n", - " 1473,\n", - " 2256,\n", - " 1882,\n", - " 1657,\n", - " 2088,\n", - " 545,\n", - " 560,\n", - " 1453,\n", - " 223,\n", - " 3350,\n", - " 1255,\n", - " 1595,\n", - " 413,\n", - " 3874,\n", - " 1449,\n", - " 1274,\n", - " 1615,\n", - " 1476,\n", - " 85,\n", - " 563,\n", - " 208,\n", - " 1805,\n", - " 379,\n", - " 103,\n", - " 2323,\n", - " 950,\n", - " 3353,\n", - " 3037,\n", - " 3667,\n", - " 433,\n", - " 1562,\n", - " 3577,\n", - " 3339,\n", - " 908,\n", - " 1332,\n", - " 842,\n", - " 1463,\n", - " 1671,\n", - " 2837,\n", - " 2134,\n", - " 2314,\n", - " 3742,\n", - " 457,\n", - " 497,\n", - " 2783,\n", - " 1732,\n", - " 1994,\n", - " 1163,\n", - " 946,\n", - " 1560,\n", - " 2321,\n", - " 3887,\n", - " 3520,\n", - " 3734,\n", - " 817,\n", - " 1540,\n", - " 1739,\n", - " 532,\n", - " 1093,\n", - " 122,\n", - " 3754,\n", - " 3165,\n", - " 3460,\n", - " 3885,\n", - " 694,\n", - " 910,\n", - " 695,\n", - " 1089,\n", - " 1010,\n", - " 1221,\n", - " 2079,\n", - " 372,\n", - " 1555,\n", - " 2729,\n", - " 1941,\n", - " 1335,\n", - " 1840,\n", - " 1480,\n", - " 2386,\n", - " 2625,\n", - " 877,\n", - " 244,\n", - " 1803,\n", - " 2401,\n", - " 2240,\n", - " 2546,\n", - " 2762,\n", - " 3337,\n", - " 3800,\n", - " 3083,\n", - " 3290,\n", - " 3873,\n", - " 182,\n", - " 420,\n", - " 222,\n", - " 346,\n", - " 1036,\n", - " 1664,\n", - " 3539,\n", - " 1208,\n", - " 2463,\n", - " 2092,\n", - " 2381,\n", - " 2821,\n", - " 1912,\n", - " 2583,\n", - " 1045,\n", - " 618,\n", - " 2260,\n", - " 2639,\n", - " 3761,\n", - " 3867,\n", - " 3075,\n", - " 3468,\n", - " 3349,\n", - " 3650,\n", - " 3172,\n", - " 3875,\n", - " 2905,\n", - " 3243,\n", - " 78,\n", - " 1958,\n", - " 3486,\n", - " 77,\n", - " 79,\n", - " 2634,\n", - " 1584,\n", - " 2920,\n", - " 317,\n", - " 766,\n", - " 1321,\n", - " 3094,\n", - " 765,\n", - " 1077,\n", - " 1004,\n", - " 2751,\n", - " 1075,\n", - " 1275,\n", - " 1491,\n", - " 1074,\n", - " 3776,\n", - " 919,\n", - " 3271,\n", - " 3385,\n", - " 2136,\n", - " 1322,\n", - " 1960,\n", - " 2135,\n", - " 1957,\n", - " 2435,\n", - " 2816,\n", - " 3095,\n", - " 3881,\n", - " 380,\n", - " 1929,\n", - " 2728,\n", - " 760,\n", - " 1940,\n", - " 2197,\n", - " 3648,\n", - " 3627,\n", - " 1196,\n", - " 863,\n", - " 1227,\n", - " 3267,\n", - " 3368,\n", - " 888,\n", - " 886,\n", - " 887,\n", - " 67,\n", - " 324,\n", - " 325,\n", - " 2876,\n", - " 3748,\n", - " 3051,\n", - " 3872,\n", - " 1158,\n", - " 3552,\n", - " 2070,\n", - " 3050,\n", - " 1346,\n", - " 41,\n", - " 434,\n", - " 2856,\n", - " 3128,\n", - " 3563,\n", - " 3071,\n", - " 3859,\n", - " 675,\n", - " 2865,\n", - " 849,\n", - " 2095,\n", - " 2791,\n", - " 1133,\n", - " 1263,\n", - " 1694,\n", - " 1812,\n", - " 274,\n", - " 409,\n", - " 2412,\n", - " 2774,\n", - " 3605,\n", - " 2773,\n", - " 3549,\n", - " 2500,\n", - " 2693,\n", - " 2181,\n", - " 3013,\n", - " 250,\n", - " 3492,\n", - " 1801,\n", - " 2800,\n", - " 486,\n", - " 1578,\n", - " 3229,\n", - " 3457,\n", - " 280,\n", - " 1087,\n", - " 3641,\n", - " 3091,\n", - " 3456,\n", - " 3864,\n", - " 2567,\n", - " 2483,\n", - " 138,\n", - " 3574,\n", - " 2832,\n", - " 3870,\n", - " 377,\n", - " 203,\n", - " 190,\n", - " 524,\n", - " 491,\n", - " 336,\n", - " 596,\n", - " 492,\n", - " 595,\n", - " 493,\n", - " 216,\n", - " 335,\n", - " 800,\n", - " 1134,\n", - " 3766,\n", - " 855,\n", - " 2087,\n", - " 1866,\n", - " 2493,\n", - " 2011,\n", - " 2201,\n", - " 1780,\n", - " 1648,\n", - " 3254,\n", - " 876,\n", - " 1009,\n", - " 1579,\n", - " 1156,\n", - " 1499,\n", - " 1683,\n", - " 1135,\n", - " 1055,\n", - " 2280,\n", - " 2388,\n", - " 2187,\n", - " 3054,\n", - " 3689,\n", - " 3462,\n", - " 983,\n", - " 1598,\n", - " 2523,\n", - " 3178,\n", - " 2985,\n", - " 3447,\n", - " 3177,\n", - " 2987,\n", - " 3448,\n", - " 1775,\n", - " 163,\n", - " 65,\n", - " 1530,\n", - " 2637,\n", - " 2590,\n", - " 1697,\n", - " 1325,\n", - " 1647,\n", - " 1428,\n", - " 1124,\n", - " 1744,\n", - " 1698,\n", - " 1839,\n", - " 1778,\n", - " 397,\n", - " 1457,\n", - " 2340,\n", - " 1970,\n", - " 2253,\n", - " 2093,\n", - " 3841,\n", - " 1969,\n", - " 1995,\n", - " 2157,\n", - " 2986,\n", - " 1389,\n", - " 3098,\n", - " 1821,\n", - " 944,\n", - " 2226,\n", - " 3403,\n", - " 2224,\n", - " 2225,\n", - " 235,\n", - " 143,\n", - " 705,\n", - " 75,\n", - " 144,\n", - " 1565,\n", - " 868,\n", - " 1564,\n", - " 3886,\n", - " 489,\n", - " 838,\n", - " 1044,\n", - " 1043,\n", - " 357,\n", - " 1726,\n", - " 3899,\n", - " 2194,\n", - " 3897,\n", - " 3405,\n", - " 2673,\n", - " 2605,\n", - " 3316,\n", - " 3317,\n", - " 24,\n", - " 2606,\n", - " 1218,\n", - " 2674,\n", - " 2130,\n", - " 2326,\n", - " 3518,\n", - " 3900,\n", - " 2137,\n", - " 3788,\n", - " 2849,\n", - " 232,\n", - " 233,\n", - " 729,\n", - " 1675,\n", - " 929,\n", - " 811,\n", - " 1446,\n", - " 2682,\n", - " 1568,\n", - " 3392,\n", - " 2486,\n", - " 1953,\n", - " 1447,\n", - " 2613,\n", - " 1954,\n", - " 3012,\n", - " 861,\n", - " 1434,\n", - " 2549,\n", - " 640,\n", - " 641,\n", - " 642,\n", - " 349,\n", - " 350,\n", - " 293,\n", - " 291,\n", - " 1731,\n", - " 130,\n", - " 1707,\n", - " 2489,\n", - " 807,\n", - " 1200,\n", - " 1336,\n", - " 1149,\n", - " 230,\n", - " 1153,\n", - " 2315,\n", - " 2488,\n", - " 3296,\n", - " 732,\n", - " 3127,\n", - " 3499,\n", - " 1157,\n", - " 3819,\n", - " 1002,\n", - " 1600,\n", - " 1151,\n", - " 1248,\n", - " 3297,\n", - " 860,\n", - " 1042,\n", - " 301,\n", - " 1547,\n", - " 2769,\n", - " 2039,\n", - " 893,\n", - " 2293,\n", - " 53,\n", - " 600,\n", - " 387,\n", - " 1003,\n", - " 1861,\n", - " 2143,\n", - " 2573,\n", - " 2942,\n", - " 3340,\n", - " 3813,\n", - " 3174,\n", - " 3687,\n", - " 264,\n", - " 2570,\n", - " 1013,\n", - " 1150,\n", - " 1642,\n", - " 494,\n", - " 2845,\n", - " 2571,\n", - " 1472,\n", - " 2255,\n", - " 1148,\n", - " 3269,\n", - " 1934,\n", - " 1471,\n", - " 1930,\n", - " 3358,\n", - " 3508,\n", - " 458,\n", - " 1165,\n", - " 83,\n", - " 2777,\n", - " 2911,\n", - " 3257,\n", - " 2973,\n", - " 1831,\n", - " 2913,\n", - " 1733,\n", - " 2075,\n", - " 1390,\n", - " 3181,\n", - " 2222,\n", - " 3123,\n", - " 3407,\n", - " 2145,\n", - " 3686,\n", - " 3356,\n", - " 3889,\n", - " 2223,\n", - " 2604,\n", - " 2974,\n", - " 3592,\n", - " 1012,\n", - " 2074,\n", - " 3604,\n", - " 3801,\n", - " 3256,\n", - " 3028,\n", - " 2076,\n", - " 2306,\n", - " 2697,\n", - " 1609,\n", - " 2359,\n", - " 49,\n", - " 479,\n", - " 3312,\n", - " 3745,\n", - " 2370,\n", - " 3121,\n", - " 3570,\n", - " 1282,\n", - " 799,\n", - " 1283,\n", - " 1719,\n", - " 2008,\n", - " 1216,\n", - " 2107,\n", - " 140,\n", - " 139,\n", - " 2358,\n", - " 2086,\n", - " 2357,\n", - " 1702,\n", - " 3427,\n", - " 2210,\n", - " 3089,\n", - " 1109,\n", - " 2543,\n", - " 2765,\n", - " 254,\n", - " 1474,\n", - " 474,\n", - " 844,\n", - " 1614,\n", - " 1754,\n", - " 3160,\n", - " 1250,\n", - " 2001,\n", - " 3365,\n", - " 3224,\n", - " 2402,\n", - " 3027,\n", - " 1674,\n", - " 1448,\n", - " 2215,\n", - " 2274,\n", - " 3418,\n", - " 1641,\n", - " 2610,\n", - " 2880,\n", - " 1870,\n", - " 189,\n", - " 742,\n", - " 1239,\n", - " 1489,\n", - " 1862,\n", - " 50,\n", - " 444,\n", - " 284,\n", - " 501,\n", - " 1875,\n", - " 1056,\n", - " 164,\n", - " 412,\n", - " 1708,\n", - " 1853,\n", - " 476,\n", - " 885,\n", - " 62,\n", - " 382,\n", - " 3651,\n", - " 473,\n", - " 275,\n", - " 2929,\n", - " 2287,\n", - " 3309,\n", - " 3606,\n", - " 3882,\n", - " 756,\n", - " 3898,\n", - " 2667,\n", - " 205,\n", - " 206,\n", - " 881,\n", - " 403,\n", - " 277,\n", - " 402,\n", - " 1070,\n", - " 1436,\n", - " 2535,\n", - " 3197,\n", - " 2893,\n", - " 2322,\n", - " 3785,\n", - " 276,\n", - " 499,\n", - " 3771,\n", - " 2725,\n", - " 2436,\n", - " 3047,\n", - " 2184,\n", - " 1610,\n", - " 1804,\n", - " 3352,\n", - " 1942,\n", - " 2724,\n", - " 750,\n", - " 1015,\n", - " 1118,\n", - " 1201,\n", - " 854,\n", - " 790,\n", - " 935,\n", - " 386,\n", - " 3610,\n", - " 1574,\n", - " 3009,\n", - " 2556,\n", - " 3609,\n", - " 843,\n", - " 3402,\n", - " 2041,\n", - " 3883,\n", - " 3884,\n", - " 3890,\n", - " 1559,\n", - " 1637,\n", - " 1500,\n", - " 1597,\n", - " 2563,\n", - " 2651,\n", - " 2261,\n", - " 2650,\n", - " 3506,\n", - " 3831,\n", - " 3026,\n", - " 2814,\n", - " 1465,\n", - " 1466,\n", - " 3891,\n", - " 3830,\n", - " 2687,\n", - " 3504,\n", - " 3505,\n", - " 2057,\n", - " 2229,\n", - " 2829,\n", - " 918,\n", - " 1199,\n", - " 1799,\n", - " 2813,\n", - " 2262,\n", - " 2481,\n", - " 2131,\n", - " 2688,\n", - " 2480,\n", - " 2686,\n", - " 3892,\n", - " 2649,\n", - " 3503,\n", - " 2564,\n", - " 2812,\n", - " 1308,\n", - " 1800,\n", - " 1467,\n", - " 3122,\n", - " 3287,\n", - " 2156,\n", - " 3328,\n", - " 2638,\n", - " 1645,\n", - " 1333,\n", - " 1334,\n", - " 1548,\n", - " 3409,\n", - " 2424,\n", - " 3838,\n", - " 3428,\n", - " 3594,\n", - " 3380,\n", - " 3888,\n", - " 3473,\n", - " 3737,\n", - " 828,\n", - " 1392,\n", - " 3313,\n", - " 3049,\n", - " 1243,\n", - " 3048,\n", - " 593,\n", - " 2281,\n", - " 1241,\n", - " 2588,\n", - " 960,\n", - " 2371,\n", - " 1971,\n", - " 2587,\n", - " 1581,\n", - " 440,\n", - " 2717,\n", - " 1709,\n", - " 1710,\n", - " 68,\n", - " 159,\n", - " 679,\n", - " 962,\n", - " 594,\n", - " 279,\n", - " 441,\n", - " 442,\n", - " 1386,\n", - " 1387,\n", - " 1460,\n", - " 1879,\n", - " 961,\n", - " 963,\n", - " 1649,\n", - " 1244,\n", - " 1242,\n", - " 1245,\n", - " 2062,\n", - " 1927,\n", - " 2077,\n", - " 542,\n", - " 98,\n", - " 1368,\n", - " 319,\n", - " 1101,\n", - " 1753,\n", - " 995,\n", - " 1203,\n", - " 1100,\n", - " 1928,\n", - " 903,\n", - " 2078,\n", - " 72,\n", - " 3421,\n", - " 3022,\n", - " 2922,\n", - " 3252,\n", - " 3522,\n", - " 3523,\n", - " 3524,\n", - " 2534,\n", - " 2722,\n", - " 1269,\n", - " 2529,\n", - " 3679,\n", - " 2396,\n", - " 2191,\n", - " 2397,\n", - " 3329,\n", - " 3017,\n", - " 3018,\n", - " 2608,\n", - " 2609,\n", - " 2540,\n", - " 2541,\n", - " 1320,\n", - " 567,\n", - " 1583,\n", - " 1676,\n", - " 1838,\n", - " 2190,\n", - " 1319,\n", - " 3222,\n", - " 3678,\n", - " 2607,\n", - " 3221,\n", - " 931,\n", - " 338,\n", - " 818,\n", - " 431,\n", - " 1728,\n", - " 2304,\n", - " 1691,\n", - " 2560,\n", - " 2416,\n", - " 2415,\n", - " 3861,\n", - " 1195,\n", - " 2073,\n", - " 1393,\n", - " 1855,\n", - " 2072,\n", - " 3862,\n", - " 3498,\n", - " 307,\n", - " 513,\n", - " 1943,\n", - " 734,\n", - " 659,\n", - " 306,\n", - " 909,\n", - " 826,\n", - " 658,\n", - " 825,\n", - " 516,\n", - " 951,\n", - " 1068,\n", - " 1168,\n", - " 3189,\n", - " 436,\n", - " 662,\n", - " 437,\n", - " 784,\n", - " 783,\n", - " 952,\n", - " 1492,\n", - " 3429,\n", - " 568,\n", - " 943,\n", - " 1281,\n", - " 848,\n", - " 1693,\n", - " 806,\n", - " 629,\n", - " 805,\n", - " 2919,\n", - " 680,\n", - " 1494,\n", - " 2767,\n", - " 3727,\n", - " 3305,\n", - " 3789,\n", - " 3633,\n", - " 3681,\n", - " 298,\n", - " 3553,\n", - " 3032,\n", - " 1493,\n", - " 3791,\n", - " 3637,\n", - " 2477,\n", - " 3551,\n", - " 1621,\n", - " 3729,\n", - " 3878,\n", - " 3879,\n", - " 3880,\n", - " 3164,\n", - " 3167,\n", - " 3634,\n", - " 3680,\n", - " 3412,\n", - " 3471,\n", - " 3728,\n", - " 847,\n", - " 586,\n", - " 1278,\n", - " 1279,\n", - " 1280,\n", - " 526,\n", - " 630,\n", - " 704,\n", - " 582,\n", - " 583,\n", - " 2275,\n", - " 3307,\n", - " 2276,\n", - " 3308,\n", - " 3561,\n", - " 1741,\n", - " 3433,\n", - " 1174,\n", - " 170,\n", - " 525,\n", - " 1523,\n", - " 1524,\n", - " 3430,\n", - " 3550,\n", - " 2339,\n", - " 3860,\n", - " 3877,\n", - " 1897,\n", - " 3564,\n", - " 2820,\n", - " 3431,\n", - " 1740,\n", - " 2822,\n", - " 18,\n", - " 452,\n", - " 1622,\n", - " 1623,\n", - " 571,\n", - " 1388,\n", - " 1535,\n", - " 1440,\n", - " 1441,\n", - " 1516,\n", - " 1518,\n", - " 1520,\n", - " 1742,\n", - " 1924,\n", - " 2410,\n", - " 2491,\n", - " 3602,\n", - " 3436,\n", - " 3067,\n", - " 3068,\n", - " 2492,\n", - " 2144,\n", - " 3168,\n", - " 2490,\n", - " 2775,\n", - " 1468,\n", - " 197,\n", - " 1873,\n", - " 982,\n", - " 3284,\n", - " 2794,\n", - " 3683,\n", - " 3684,\n", - " 1464,\n", - " 66,\n", - " 3103,\n", - " 3101,\n", - " 1643,\n", - " 1088,\n", - " 2992,\n", - " 1514,\n", - " 2990,\n", - " 3286,\n", - " 984,\n", - " 3100,\n", - " 198,\n", - " 2611,\n", - " 2932,\n", - " 1327,\n", - " 1172,\n", - " 2931,\n", - " 3105,\n", - " 3777,\n", - " 1328,\n", - " 1644,\n", - " 3161,\n", - " 1340,\n", - " 3159,\n", - " 2862,\n", - " 2863,\n", - " 872,\n", - " 1181,\n", - " 1829,\n", - " 3623,\n", - " 2328,\n", - " 2329,\n", - " 3417,\n", - " 3157,\n", - " 3298,\n", - " 3299,\n", - " 2496,\n", - " 2668,\n", - " 1021,\n", - " 972,\n", - " 702,\n", - " 819,\n", - " 2141,\n", - " 1477,\n", - " 1288,\n", - " 3624,\n", - " 3622,\n", - " 2859,\n", - " 3410,\n", - " 3753,\n", - " 3629,\n", - " 2327,\n", - " 2672,\n", - " 1289,\n", - " 1290,\n", - " 1338,\n", - " 875,\n", - " 873,\n", - " 874,\n", - " 1435,\n", - " 752,\n", - " 753,\n", - " 146,\n", - " 344,\n", - " 871,\n", - " 1832,\n", - " 2670,\n", - " 12,\n", - " 2624,\n", - " 1935,\n", - " 2860,\n", - " 1743,\n", - " 1127,\n", - " 1180,\n", - " 1536,\n", - " 1830,\n", - " 2140,\n", - " 343,\n", - " 1828,\n", - " 1395,\n", - " 97,\n", - " 1537,\n", - " 1049,\n", - " 2138,\n", - " 2139,\n", - " 2759,\n", - " 416,\n", - " 1627,\n", - " 1700,\n", - " 1179,\n", - " 3411,\n", - " 1827,\n", - " 3042,\n", - " 2758,\n", - " 3043]}" - ] - }, - "execution_count": 81, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD/CAYAAADhYy38AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGdFJREFUeJzt3WtsU+fhx/HfcRJIQsgV4hA7bVoghFBKgUEvE60LDVWr\nUk0tigbTlAHdNPFmm6YVXkxbmFTitpu0bhPSX+3GmCZR0F4Am1BK18pIUysoUDG00HJNydVcElNy\ng1zO/0XqkLtjx07Mw/cjWbKPz3meJ8fn/M7j55zjWLZt2wIA3PMcU90AAEB0EOgAYAgCHQAMQaAD\ngCEIdAAwBIEOAIYYM9A3b94sp9OpxYsXD3vvd7/7nRwOh5qbm/unVVZWav78+SouLtaRI0ei31oA\nwKjGDPRNmzapqqpq2PTa2lp9+OGHevDBB/unVVdXa9++faqurlZVVZW2bt2q3t7e6LcYADAyO4TL\nly/bjzzyyKBp69evt0+fPm0XFhbaN27csG3btnfu3Gl7vd7+eZ5//nn7008/HVbeM888Y0viwYMH\nDx5hPJ555plQcW0nKkwHDx6U2+3Wo48+Omh6Q0ODnnjiif7Xbrdb9fX1w5Y/evSouDkVAMJjWVbI\necIK9Pb2du3cuVMffvhh/7Sxwnk8DQAAREdYgX7x4kXV1NRoyZIlkqS6ujotX75cx44dk8vlUm1t\nbf+8dXV1crlcI5ZTUVHR/9zj8cjj8YTfcgAwmM/nk8/nC2sZK9SPc9XU1GjdunU6c+bMsPceeugh\nnTx5UtnZ2aqurtbGjRt1/Phx1dfX67nnntOFCxeG9dIty2LIBQDCNJ7sHPMqlw0bNuipp57SuXPn\nVFBQoN27dw+rIKikpERlZWUqKSnRCy+8oF27djHkAgCTKGQPPeoV0kMHgLBNuIcOALh3EOgAYAgC\nHQAMEfaNRdGQnS21tExFzYhHWVnSgJ8EAhChKTkpKtnivCiCLEtsD0AInBQFgPsIgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGGDPQN2/eLKfTqcWLF/dP+8UvfqGFCxdqyZIleuWVV3Tz5s3+9yorKzV//nwV\nFxfryJEjsWs1AGCYMQN906ZNqqqqGjRt7dq1+t///qfTp0+rqKhIlZWVkqTq6mrt27dP1dXVqqqq\n0tatW9Xb2xu7lgMABhkz0FetWqWsrKxB00pLS+Vw9C32+OOPq66uTpJ08OBBbdiwQUlJSSosLNS8\nefN0/PjxGDUbADDUhMbQ//KXv+jFF1+UJDU0NMjtdve/53a7VV9fP7HWAQDGLTHSBd944w1NmzZN\nGzduHHUey7JGeadCFRV9zzwejzweT6TNAAAj+Xw++Xy+sJaJKND/+te/6vDhw/roo4/6p7lcLtXW\n1va/rqurk8vlGqWEu4EOABhuaGd3x44dIZcJe8ilqqpKb7/9tg4ePKjk5OT+6S+//LLef/993blz\nR5cvX9b58+e1cuXKcIsHAERozB76hg0bdPToUV2/fl0FBQXasWOHKisrdefOHZWWlkqSnnzySe3a\ntUslJSUqKytTSUmJEhMTtWvXrjGGXAAA0WbZtm1PaoWWJcnW5NaKeGZZYnsAQrAsS6HimjtFAcAQ\nBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADEGg\nA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIcYM9M2bN8vpdGrx4sX905qb\nm1VaWqqioiKtXbtWgUCg/73KykrNnz9fxcXFOnLkSOxaDQAYZsxA37Rpk6qqqgZN83q9Ki0t1blz\n57RmzRp5vV5JUnV1tfbt26fq6mpVVVVp69at6u3tjV3LAQCDjBnoq1atUlZW1qBphw4dUnl5uSSp\nvLxcBw4ckCQdPHhQGzZsUFJSkgoLCzVv3jwdP348Rs0GAAwV9hi63++X0+mUJDmdTvn9fklSQ0OD\n3G53/3xut1v19fVRaiYAIJQJnRS1LEuWZY35PgBgciSGu4DT6VRTU5Py8vLU2Nio3NxcSZLL5VJt\nbW3/fHV1dXK5XKOUUqGKir5nHo9HHo8n3GYAgNF8Pp98Pl9Yy1i2bdtjzVBTU6N169bpzJkzkqTX\nX39dOTk52rZtm7xerwKBgLxer6qrq7Vx40YdP35c9fX1eu6553ThwoVhvfS+17bGrhX3E8sS2wMQ\ngmVZChHXY/fQN2zYoKNHj+r69esqKCjQb37zG23fvl1lZWX685//rMLCQu3fv1+SVFJSorKyMpWU\nlCgxMVG7du1iyAUAJlHIHnrUK6SHjiHooQOhjaeHzp2iAGAIAh0ADEGgA4AhCHQAMASBDgCGINAB\nwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAM\nQaADgCEIdAAwBIEOAIYg0AHAEBEHemVlpRYtWqTFixdr48aNun37tpqbm1VaWqqioiKtXbtWgUAg\nmm0FAIwhokCvqanRu+++q1OnTunMmTPq6enR+++/L6/Xq9LSUp07d05r1qyR1+uNdnsBAKOIKNDT\n09OVlJSk9vZ2dXd3q729Xfn5+Tp06JDKy8slSeXl5Tpw4EBUGwsAGF1EgZ6dna2f//zneuCBB5Sf\nn6/MzEyVlpbK7/fL6XRKkpxOp/x+f1QbCwAYXUSBfvHiRf3+979XTU2NGhoa1Nraqr///e+D5rEs\nS5ZlRaWRAIDQEiNZ6MSJE3rqqaeUk5MjSXrllVf06aefKi8vT01NTcrLy1NjY6Nyc3NHKaFCFRV9\nzzwejzweTyTNAABj+Xw++Xy+sJaxbNu2w63o9OnT+t73vqfPPvtMycnJ+sEPfqCVK1fqq6++Uk5O\njrZt2yav16tAIDDsxGhfr91W+LXCVJYltgcgBMuyFCquIwp0SXrrrbe0Z88eORwOLVu2TO+9955u\n3bqlsrIyXblyRYWFhdq/f78yMzOHNYpAx0AEOhBaTAM9UgQ6hiLQgdDGE+jcKQoAhiDQAcAQBDoA\nGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0ADBHRfyy6\n52VnSy0tU90KfOPX+rVk7ZjqZiAoK0tqbp7qViAC9+fvofMD3MDo2D/iEr+HDgD3EQIdAAxBoAOA\nIQh0ADAEgQ4AhiDQAcAQBDoAGCLiQA8EAlq/fr0WLlyokpISHTt2TM3NzSotLVVRUZHWrl2rQCAQ\nzbYCAMYQcaD/5Cc/0YsvvqizZ8/qv//9r4qLi+X1elVaWqpz585pzZo18nq90WwrAGAMEd0pevPm\nTS1dulSXLl0aNL24uFhHjx6V0+lUU1OTPB6Pvvjii8EVcqcoEN/YP+JSzO4UvXz5smbPnq1NmzZp\n2bJl+uEPf6i2tjb5/X45nU5JktPplN/vj6R4AEAEIgr07u5unTp1Slu3btWpU6c0Y8aMYcMrlmV9\n0xsHAEyGiH5t0e12y+12a8WKFZKk9evXq7KyUnl5eWpqalJeXp4aGxuVm5s7SgkVqqjoe+bxeOTx\neCJpBgAYy+fzyefzhbVMxL+2+PTTT+u9995TUVGRKioq1N7eLknKycnRtm3b5PV6FQgERuy5M4YO\nxDH2j7g0njH0iAP99OnTeu2113Tnzh3NnTtXu3fvVk9Pj8rKynTlyhUVFhZq//79yszMHNYoAh2I\nY+wfcSmmgR4pAh2Ic+wfcYnfQweA+wiBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0\nADAEgQ4AhiDQAcAQBDoAGIJABwBDEOgAYAgCHQAMQaADgCEIdAAwBIEOAIYg0AHAEAQ6ABiCQAcA\nQxDoAGCICQV6T0+Pli5dqnXr1kmSmpubVVpaqqKiIq1du1aBQCAqjQQAhDahQH/nnXdUUlIiy7Ik\nSV6vV6WlpTp37pzWrFkjr9cblUYCAEKLONDr6up0+PBhvfbaa7JtW5J06NAhlZeXS5LKy8t14MCB\n6LQSABBSxIH+s5/9TG+//bYcjrtF+P1+OZ1OSZLT6ZTf7594CwEA4xJRoP/rX/9Sbm6uli5d2t87\nH8qyrP6hGABA7CVGstAnn3yiQ4cO6fDhw+rs7NTXX3+t73//+3I6nWpqalJeXp4aGxuVm5s7SgkV\nqqjoe+bxeOTxeCJqPACYyufzyefzhbWMZY/WxR6no0eP6re//a3++c9/6vXXX1dOTo62bdsmr9er\nQCAw7MRoX6/d1sRqnSDL0tQ2AIhj7B9xybKsUUdEgqJyHXpwaGX79u368MMPVVRUpI8//ljbt2+P\nRvEAgHGYcA897ArpoQPxjf0jLk1aDx0AMPUIdAAwBIEOAIYg0AHAEAQ6ABiCQAcAQxDoAGAIAh0A\nDEGgA4AhCHQAMASBDgCGINABwBAEOgAYgkAHAEMQ6ABgCAIdAAxBoAOAIQh0ADAEgQ4AhiDQAcAQ\nBDoAGIJABwBDEOgAYIiIAr22tlbPPvusFi1apEceeUR/+MMfJEnNzc0qLS1VUVGR1q5dq0AgENXG\nAgBGZ9m2bYe7UFNTk5qamvTYY4+ptbVVy5cv14EDB7R7927NmjVLr7/+ut588021tLTI6/UOrtCy\nJNkKv9YosixNbQOAOMb+EZcsy1KouI6oh56Xl6fHHntMkpSWlqaFCxeqvr5ehw4dUnl5uSSpvLxc\nBw4ciKR4AEAEJjyGXlNTo88//1yPP/64/H6/nE6nJMnpdMrv90+4gQCA8UmcyMKtra169dVX9c47\n72jmzJmD3rMs65vhlZFUqKKi75nH45HH45lIMwDAOD6fTz6fL6xlIhpDl6Suri699NJLeuGFF/TT\nn/5UklRcXCyfz6e8vDw1Njbq2Wef1RdffDG4QsbQgfjG/hGXYjaGbtu2tmzZopKSkv4wl6SXX35Z\ne/bskSTt2bNH3/nOdyIpHgAQgYh66P/5z3/09NNP69FHH+0fVqmsrNTKlStVVlamK1euqLCwUPv3\n71dmZubgCumhA/GN/SMujaeHHvGQS6QIdCDOsX/EpZgNuQAA4g+BDgCGINABwBAEOgAYYkI3FgGY\nItnZUktL7Mof9abACcrKkpqbY1M2uMoFuCfdq9vwvdruOMBVLgBwHyHQAcAQBDoAGIJABwBDEOgA\nYAgCHQAMQaADgCEIdAAwhBmBnp3dd8PCeB9SePNnZ0/t3wfci0baLyX2rxgy407RWN99xt1tiJVY\n38I/1GTeej/e/Yb9a1zun39wQaDjXjXZ29Zk1hesayIHLX77pd/9F+iT3duJBjbY+9v9EOgTqZPO\nVL/xBLpZv7bY0nLvffix+lU7YCTJyX0dn1h3IrKz++rCpDKrh34vHs3vxTYjeqaihy7F/pthsJ6B\n++W9+A16oCn+Nh2/v7b4TIWy34zxme1wr3yZqoc09W2I5oMrFoYba1uUJn9d2vbkBmvwW0HwG/TQ\nR7BN8fzIypI6OiZvnUVoSnrotm3L2mHJ/nWUqh6ph07Pd3xG6jWNpycy2vplvQ832jqJVY91rM8v\neLAItidWvU7L6gvylJTBf+O9us0M/MYxZU2Ygh56VVWViouLNX/+fL355psjV7qjr1prh9X/iHmP\nHSMb2GvKyro7jV547I3WYw31CBrt/Y6OsT+jgfPGsqfe2XlvD7GMJM63/6j20Ht6erRgwQL9+9//\nlsvl0ooVK7R3714tXLjwboWWJVVEq8Y+doXooUdq6DobSzDwOzr6dtaJjIveT1f3jLQtBtdbJOth\n4Oc00vJj9SaHvher/WTotpScfHebGWneeN9X4yBbJv0ql+PHj2vevHkqLCyUJH33u9/VwYMHBwX6\nQFnJWWreFoWduiJEECE8QzeagUNaQw28siicDT3UwcMEAw92Q68sCU4PfhsKN9izsvqWDS4fnDbe\nMga2LZL6xysY5J2dd+saSTxsDwZ0MqIa6PX19SooKOh/7Xa7dezYsVHnb+lskbVj4h/koAgZuGGM\ntZEY8OHFzEiXtaWkjH/Z8fbYx7MT38ufU7AHPlLwSoMPfuEGWvBAOrDHPbCMUJcMDmxb8HUkB4ZQ\ngkEeNLTseLjyJXjQGbgOBgp+XkMPgsH34mj7jGqgW1E+yo7npKm1w5ItyQoGzsCNdCyjfXiRSE6+\nJ86Ajyol5W77g+tvaKgP3TGTkwdfpREUDJpo7ajR/JymQkvL8O1jpPU29PV4vukMPMgGnwfL6OwM\nvd6G3rcR/MyGrvNohlaw7IQEqadn5Dom+/Meum0PNfCgN3R4Mtrb5wTXdVQD3eVyqba2tv91bW2t\n3G73oHmWLFmi0xWnx1WeNc6hFId090OZiqP9eHaeeDaw/SP12EZbZjT38rqIhUi2j/HMP/AzCBVK\nE6knFgfVgWEeqzpiIdZtHGM9LFmyJOTiUT0p2t3drQULFuijjz5Sfn6+Vq5cOeykKAAgNqLaQ09M\nTNSf/vQnPf/88+rp6dGWLVsIcwCYJJN+YxEAIDbM+AcXiNjevXv11ltv6datWzpy5EhM6jh58qSO\nHTumN954Q3v37o1JHePxwQcfTFndofzoRz/S4cOH1TN0bHkC3n33Xe3fv187d+7U/v37o1Yu4tek\n9NCvX7+uo0eP6m9/+5tqamrkdrt1584d3bhxQ83NzWpra9PSpUvV2dmp7OxsdXd3q7m5WS6XS598\n8ols29aaNWv0wQcfKD8/X7dv31ZiYqKysrKUn58v27Z19epV9fT06MKFC8rJyVFdXZ1mz56t9vZ2\ndXR0yOl0qrW1VTk5OXI4HPL7/UpMTNSsWbN0/fp1ZWZm6vz587IsSxkZGbp586ZSUlLU0dGhmTNn\nqre3V9evX1d2drba29slSQ899JCuXr2q9vZ2FRQUKDk5WTU1NZo5c6Zu3Lghh8Oh3t5e5efnq6Gh\nQQ888ICampqUlJSkgoICXb16VYFAQLZtq6SkRGfPntXcuXPV3d2t9PR0TZ8+XWfPnlVqaqrS09PV\n09Oja9euacGCBTp16pRSU1OVk5Oj9vZ2rV69WvX19WpoaNCVK1dUUlKihoYGJSQkaNq0aerq6lJR\nUZEuXbqkb3/72zp06JDu3LmjtLQ0JScn68aNG+rt7VVPT48WLVqk3t5eXb58WSkpKUpNTVV7e7sS\nEhKUkZGh2tpapaWlKTU1tb98SVqxYkX/ZaoJCQmqra3VnDlz1NraKr/fr+zsbDU3NyslJUVz5szR\nww8/rEcffVSff/655syZo1OnTmnu3Lm6fPmybt++rc7OTs2dO1etra2aM2eOqqqq1NnZqRkzZmj6\n9OlauHCh2tralJ+fr1OnTulb3/qWnnzySR0/flzt7e0KBAKqrq6WZVnKyclRa2urVq9eLb/fr2vX\nrqm1tVWdnZ0qKyuTz+eT0+nU9evXlZycrJKSErW0tOjjjz9Wenq6UlJSZNu20tPTVV9fr+RvLgt0\nOBxKT09XS0tL/3bT0dGhrq4uzZ49Wx0dHZo1a5a6u7v11VdfKS8vT7Nnz9bZs2fldDqVm5urW7du\n6dKlS3K73bp27ZocDocSEhLU1dWlmzdvqrCwUPPnz1ddXZ1qamq0fPlydXR0qKOjQx6PRydOnNCN\nGzd069YttbW1acGCBfryyy81ffr0/vq//vprpaenq7GxUR0dHUpPT1dHR4dSUlKUkJAgl8ul1NRU\nXbhwQampqbJtWxkZGUpLS9OFCxc0bdo05ebmKiMjQxcvXlRbW5uyv7ljsr6+XtOmTVN3d7e6urq0\nfv16XbhwQV1dXUpLS9Orr76qP/7xj2psbJTUd67twQcf1LVr1/TAAw+ooKBAXV1dOnv2bP+6bm5u\n1owZM5Senq7k5GRlZWXp/PnzqqmpUVpamnJzc1VbWyuXyyWXy6Xz588rEAho0aJFunjxojIzM3Xz\n5k1lZGQoKSlJtm2rt7dXixYt0smTJ1VbW6sZM2YoJSVFPT09amtrU1pamlavXq3PPvtMLpdL1dXV\nunPnjh5++GFVV1dr+vTpSk1N1a1bt5SXlyeHw6Hbt28rJSVFbW1t8vv9mjNnjtLS0pSUlKR58+bp\nyy+/VFpamnp7e9XY2KiUlBQFAgH19PQoNzdXtm0rEAgoJydHnZ2dcjgcunLlimzbVk5Ojq5du6Zl\ny5bpl7/8pZ544gllZGSMmbWTEujRvpwRAO43BQUFunLlypjzTMqQS0JCwmRUAwDGunXrVsh5JiXQ\nf/WrX/V/PYu2tLS0YdMSE8d/8U5CQoKSkpLCWmYk4X4LGe9BLljuwPkn2taRyo/V/KO11bKsEctK\nSkoKq/xwWZYV1vpzOOL7NFNmZuao701kO7EsSwkJCVH5+6O9DoNDfCOVPdZ+FfybolFvNIy0/Y/U\nvvT0dP34xz/W//3f/4UuczKGXBISEtTb2xvragDAWPPmzdP58+fHnIchFwC4B2zZsiXkPJMS6KtW\nrZqMagDAOA6HQ6mpqXrppZdCzjspQy7By+YAAJF59dVX9Y9//GPMeeL7jA8AQJJ04sSJkPNMSqAv\nW7Ysqldm4C7OTwD3h7GuaAqalEA/ffq0uru7J6Oq+040bxUHEL9axvHT4JMS6OvWrVNeXp7cbvew\n64CXLl0qafTrkgeK1jXKkd65Gus7XlNTU5WYmNj/d46nPsuyNH/+fGVmZoZ1ve945h1Y/3jLDveb\nWPA293DqGKmMgWbOnDlsnpRv/gFE8ATTaPLy8vqfB//+geW7XK7+2/6jJZxvWZF+I5vKb3LRvA49\nnGvBI9lfg9tvOG0eq57ExEQ5HI6IRyhmzpyppKQkJSQkaM6cOaHbwq8tAoAZOCkKAIYg0AHAEAQ6\nABiCQAcAQxDoAGCI/wdeheftyb5rNAAAAABJRU5ErkJggg==\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "dendrogram(clusters)" - ] - }, - { - "cell_type": "code", - "execution_count": 82, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "distances = [(int(cluster[0]), int(cluster[1]), cluster[2], int(cluster[3])) for cluster in clusters]" - ] - }, - { - "cell_type": "code", - "execution_count": 85, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "3901" - ] - }, - "execution_count": 85, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "len(distances)" - ] - }, - { - "cell_type": "code", - "execution_count": 83, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "([(2721, 3372, 0.0002312249986513723, 2),\n", - " (2608, 2609, 0.00027679776010606507, 2),\n", - " (898, 899, 0.00036272992707620525, 2),\n", - " (2847, 3367, 0.0003924856685368449, 2),\n", - " (1236, 1237, 0.0005153406640262553, 2),\n", - " (115, 117, 0.00064965914140107924, 2),\n", - " (2346, 2718, 0.00067426552633807063, 2),\n", - " (2283, 2377, 0.00069812104967540008, 2),\n", - " (116, 119, 0.00071276924736566119, 2),\n", - " (28, 135, 0.00075365575695506785, 2)],\n", - " [(7488, 7777, 5.4774588757537028, 30),\n", - " (6919, 7790, 5.7298920220162124, 309),\n", - " (7563, 7789, 6.0358725347559332, 1917),\n", - " (7785, 7792, 6.9070353370609689, 960),\n", - " (7787, 7794, 7.5963928835821077, 735),\n", - " (7688, 7795, 7.9744927667796501, 1938),\n", - " (7793, 7796, 8.1646530021191399, 990),\n", - " (7797, 7799, 14.504806894960476, 1725),\n", - " (7798, 7800, 68.72794812508468, 3663),\n", - " (7783, 7801, 135.34313324148937, 3902)])" - ] - }, - "execution_count": 83, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "distances[:10],distances[-10:]" - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "import cartopy.crs as ccrs\n", - "import cartopy.feature as cfeature\n", - "import matplotlib.pyplot as plt\n", - "import shapely.geometry as sgeom" - ] - }, - { - "cell_type": "code", - "execution_count": 46, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "points = [sgeom.Point(point) for point in coordinates]" - ] - }, - { - "cell_type": "code", - "execution_count": 56, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 56, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV0AAAC1CAYAAAD86CzsAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXdUFdf39h+69F5VqohGVMReULCGGEs0NojYsRtrsPce\nJRE7GsVu7NGIvRsVUcSCChaKCoLSO9w7z/uHP+eVL4iASNH7WesuZco5+5yZ2XNmn332liNJyJAh\nQ4aMMkG+vAWQIUOGjG8JmdKVIUOGjDJEpnRlyJAhowyRKV0ZMmTIKENkSleGDBkyyhDFwnbq6ekh\nMTGxrGSRIUOGjK8CXV1dJCQkFLhPrjCXMTk5Ocg8ymTIkCGjeBSmO2XmBRkyZMgoQ2RKV4YMGTLK\nEJnSlSFDhowypNCJNBky3pOUlITExERkZ2cjOzsbAKCoqFjgr0qVKtDS0oKcnFw5Sy1DRsVDpnTL\nAZJ4/vw5Xrx4AWNjY8TFxeHEiROIiYlBUlISsrKyIJFIQBK6urpISUlBcnIySKJKlSpQUVHJ86+q\nqiq0tLSgr6+PGjVqwMXFBUZGRp+UIysrCyoqKqJyPHLkCIKDg3Hv3j1ERUVBQUEBCgoKyMzMxNOn\nT6GnpyfWKycnB4lEUuAvPT0dCgoKsLKygqWlJapWrYrU1FSMHj0aTZs2/dLdK0NGhUbmvVAGzJ07\nF+fOnQPwbsT4+vVrKCsro0aNGoiKikJubi5GjhyJqlWrQkdHB6qqqlBQUBCP19LSgpaWFuTl5ZGV\nlYXs7GxkZWUhICAAq1atQlpaWp76mjdvDiMjIyQnJyM1NRUZGRkQBAEAoKOjA1tbWwQHByMsLAxK\nSkqws7NDUFCQeL6npyeGDBkCkpBKpVBQUECDBg2grKycr21+fn4YNGhQkfrhhx9+gKenJ968eYO3\nb9/i7du3AN651+jp6aFv377Q1dUtfgfLkFHBKEx3yka6pUxKSgrWrl2L6dOnAwDU1dUhJyeHtLQ0\n6OrqomPHjhg9ejT09fVBEnJycpCTk4OxsTGcnJyKVMedO3dw8uRJLFq0SNxWrVo1xMXFIScnBy4u\nLnB0dISOjg40NTWhrq4OeXl5yMnJ4fXr13j69CnGjx+PunXrIjMzE48fP0Z4eDj27duHw4cPw87O\nDk2aNCmSLD169EBSUhJUVFSgqakJNTU1JCUlISYmBvHx8QgNDYW/vz8A4O3bt9i8eTNUVVWhqKiI\n0NBQBAcHiy+E69evY/v27cXp7hKTnp6O8PBwxMbGIiEhAdWrV0dsbCxSU1NhamoKc3NzWFtbiy+/\nkjJz5kwcPnwYWlpaaNasGUJDQ/HkyRP06NEDy5YtK6XWlA5BQUG4cuUKrly5gkePHiEmJgaWlpZo\n27YtPDw8UK9evfIW8atANtItJomJiZBIJNDV1YWiYv53louLCy5evIh+/fqhbdu26NChA44fP44b\nN24gMDAQL1++zDcyfc+HfS2RSODv7w8NDQ2QxN27dxEdHY3g4GA8fvwY3bt3x9q1a8Xjt23bhs6d\nO0NPT69C2VKlUimSk5Ohp6cHX19fDB8+XNz3448/omnTprC3t0fdunVhZWUFefnSm9vNysrCtGnT\n8ObNG0RGRsLR0RGRkZF4+vQpXrx4gZSUlHznGBkZIS4uTvz78ePHsLOzK7EMlpaWiIyMzLfdyckJ\nly9fLnG5pU12djaqVKkCAGjdujWWLl2KGjVq4MmTJzhx4gS2bNmCGjVqYMuWLcjKyoKJiQn09fXL\nWeqKS2G6U6Z0C+DBgwdo06YNEhIS0LZtW5w6dUpUsP+r0Nq2bYvBgwcjKysLq1evhqWlJRITExEU\nFIS0tDRMmTIF7u7uUFZWRkpKCtasWYOdO3cCAFRVVfHmzRvIy8tDVVU1T7mXL19GmzZtAADOzs7Q\n0tJCTk4OJBIJACAyMhJPnjwBACgoKCA6OrpIdtzyJDY2FrVq1UK3bt3g4+MDLS2tL1pfZmYm1NTU\nAAB//vknkpKSYGxsDEdHRwiCgLVr14rXAgDq1KkDXV1d6OrqQl1dHY0bN8bw4cOhrq7+WXKQRFRU\nFBQVFWFmZlahXor/y/379zFq1CgEBQXB1NQUVatWhZGREVJSUnD+/Hno6OhAXV1dfJG4urri6NGj\nBQ5AvmUK1Z0shE/srtS8evWKGzdu5IIFCzhr1ixOmDCBgiDw8uXLBCD+FBUVmZubK57Xr18/AmCT\nJk3yHDdr1qw8fwNgrVq12Lp1a9atW5c1a9akg4NDnv2qqqqUSqV55Lp58yYnT55MPT09AmDfvn0p\nkUjyla2trc1GjRpx8eLFZd11JSYgIICWlpaMi4srszrj4+M5d+5cmpiYEABHjx5Nkjx58iTr1avH\nn376iY0aNcrTt2pqamUmX0UlMzOTjx8/5vnz57l3717OnTtX7B8lJSVqaGiI9/Dx48fLW9wKR2G6\n85sb6W7fvh0bNmzA9evXUa1aNcTExEAqlQJ4N+Glq6uL69evQ1NTE4qKijh69Cjq1auH1atXQ1tb\nG7q6ulBQUEBqaioOHDiAmJgY3Lx5E1FRUWjWrBnWr1+fp766deuiSpUq6Nu3LyZNmgQAqFq1KqpV\nq4Zbt25h4cKFEAQBZmZmMDAwQJcuXQC8G0GfPXtWHBWlpaVh3759GDJkSL423bhxAxKJBIIgQElJ\nCRoaGrC1tYWKisqX7MoiIwgCTExM8ObNG3FbWd9XWVlZ4tdE7dq18erVK6xbtw59+vTBkydPsGrV\nKmhqasLMzAwNGjSAs7Nzmcr3ISQRHh6OBw8eICEhASkpKYiPj8ft27dx6dIlpKWlwcTEBJGRkQVO\nbn5u3VFRUUhNTUV2djbMzc0REhKCGzduIC4uDvv27YOFhQWaN2+OO3fu4Pz58wAAGxsbVK1aVZyj\nsLCwQLNmzeDq6goLC4tSlRF4Z5OPjIxEVlYWFBUVoa2tjWrVqn22Db60kJkXPuC9ElNXV8d3330H\nR0dHbNmyBbm5uWjTpg0iIyMRERGR5xwlJSXk5uYCAAYMGAA/Pz9cvHgRLi4uAIBffvkF9erVw5w5\nczB8+HBcvnwZiYmJePnyJczMzNC5c2esW7cOJiYmov9qTk4OMjIykJubK5oMlJSU0KpVK/Tq1Qsd\nOnQo0FwQHh6O3bt3w9/fH/Hx8ahSpQqUlZWhqKgIeXl55OTkIDU1FVFRUfjuu+8wYsSIAhV1WUIS\nS5YswYwZM9CuXTucOXOm3D6xc3Jy8OjRI+jo6HwRZVASSOLcuXO4cOECrl27hjt37kBBQeGjAVOs\nra3Rtm1bbNy48bNs4Pfu3cOLFy8QGBiIa9euISEhAQkJCUhKSoKJiQmUlJTw/Plz2Nvbo3nz5lBX\nV4ednR1++eWXPOWkp6dj586dqFmzJuTk5CCVSvHo0SOsX78eDx8+xNOnT2FjY1NiOf+XoKAgNGzY\nEDY2NqLZLSkpCfHx8dDR0UGtWrXQvHlzPHv2DI6OjjA1NYWGhga6du1aZmaQb17pCoKASZMmITs7\nGyQhkUjEiYDk5GQsX74c1tbWUFdXR0BAQIFlGBkZQUdHBwsWLEDv3r2Rk5OD06dPY8OGDbh06RI0\nNTXRpEkTXLp0CUlJSQAAFRUV6OjoIDc3FxYWFoiNjRXdvbKzs2FoaAhlZWWoqKhAUVERDx8+hLOz\nMy5cuPDZbU5LS8Nff/2F+fPno2bNmjh48CDMzMw+u9ySMn/+fMyZMwfAu+tRke2aZUlsbCzWr1+P\nefPmwcvLC5mZmQgMDMSDBw/QsGFDtGzZErVq1YKdnR1sbW2ho6NTonqys7ORmpoKJSUlAEDHjh1x\n8+ZNfP/996hXrx6cnJxgbGwMTU1NWFlZlegrSSKRoHfv3jh8+DAAQENDA6NGjcLixYtLdQR69epV\n9OnTB7m5uVBSUkJMTEwePeXm5oYXL17gypUrec579uwZrK2tS02OwvjmbbqCIIj2qHXr1nHdunWc\nM2cOx40bx27duon7WrduzenTp3P69OlcvXo1b926xVu3bjEwMJBjxowRj+vbty8FQeC1a9doZWVF\nOTk5GhkZifsMDQ1Zr149urq60sLCggDo4ODAfv36iX8DoJOTE+3t7amjo0MrK6s8dkV9fX3OmDEj\nn823uEilUi5evJjm5ua8d+9eKfVo0Vm6dCkbN24stmvkyJGf3aavhbt374r9sm/fPrq7u9PKyorb\ntm1jfHx8oeemp6fzxIkTvHjxIsPCwpiTk8Pc3Fy+evUqz3FSqZQ1atSgkpISdXV1qampKdpj27Vr\nV6rtSUtLo7W1NQGwSpUq1NDQoJqaGrW1tamsrEx9fX1aWFhw6NCh3L59O/fv38/Vq1dTS0uLFhYW\nrFevHh0cHDh69GgGBwd/sr6IiAj+9ttveZ6brVu3ivsFQWB8fDwjIyPL/J4rTHd+E0p36tSprF69\nOp88eSJuu3btGh0dHamgoEBVVVXWrVuX5ubmBMA6depQX1+fenp6rFatmnhBq1evTgCcOnUqw8LC\nxO2TJk3iixcv8kyQjRs3jlZWVqxVqxZ/++03jhs3js7Ozrxy5QrPnj1LPT09urq68vTp03zx4gX9\n/PwIgCoqKpSXlxfLGj16NO/cufPZfbBgwQIC4OvXrz+7rKJib28vtmPAgAF88OBBmdVd0fHx8SEA\nzpgxg+fPn6ehoSEnTpzItLS0T56bnp5OJycnNmvWjE5OTgRADw8Pzps3T3yxTZgwgR4eHnRzcyMA\nbtu2rQxalZc3b97w9OnTjI+PZ0ZGBmNjY3nz5k2OHDmS7u7u/Omnn/j9999z+fLlfPbsGe/cucOA\ngACOHTuWAJiRkUHy3aR3dnY2SeaZ1D5x4gS1tLSooaFBZWVlysnJUUtLizVr1mTz5s3ZuXNnenh4\ncPLkyYyMjCzTthemOz9pXgCAPn36YO/evUUdWecjPj4egYGBSE1NxfHjxxEfH4/69eujQYMGUFFR\nQcOGDWFqalri8j+FnZ0dwsLC0KRJE/Tq1QthYWHYtGkT5OXlRcd84J0ProqKClRVVZGdnY3o6GhY\nWlqid+/eyM7OxtGjR+Hr6ws/Pz/s2LED4eHhOHLkCA4fPgxzc3NIpVKEhISILmAZGRlwc3PDqlWr\n4OnpiZ07d2LSpElYsWIFUlNToaamlueza968edDU1ETTpk1Rv3593L59G6dPn8bixYthbm4OOTk5\nTJkyBU5OTqhZs6boV1kU3vsPA+98ROfNmyfapL8Ey5Ytw9SpU2FjY4Nnz55h7Nix8PHx+WL1lRZv\n3rzBnj17QBJZWVl49eoVzM3N0apVKzg6OpbKxJUgCOJ1nzNnDmrWrAl3d3eMGDECCxcuLNT/1c/P\nD9OmTUPHjh2xdetWcfIUANTU1JCRkQEAWLhwIapVqwaSmDdvHpSVlREaGvrZspcFN2/eRNOmTTF8\n+HDY2tpi7ty5kJeXh76+PqKioqCnpwddXV2EhYUBePfcvjfjJSYmirbp+Ph4JCQk4OHDh9i4cSNa\ntWqFzp07w9TUFGlpaUhLS0NGRga0tLRgbm6Odu3afbYZ5N9//0WPHj2Qm5tbcptu06ZN4e7ujrFj\nxxar8ujoaMycORPnz59HQkICGjVqBHV1dbRv3x7m5uY4deoUnj59irt37+Lt27fQ1dVFZmYmrK2t\nYW1tDS0tLRgZGSE3N1dchmpjYwMrKyuYmZmJEwgk8fLlS6ioqOD58+e4cOECQkNDYWlpiY0bN6JZ\ns2aYPHkyTp06BVVVVVy6dAnm5ubo3r07WrduDU1NzQLl37FjR74JA+DdRMz48eNx+PBhSCQSdOrU\nCX/88Qe2bNmC27dvIykpCQYGBqIXQ/v27REbG4szZ86gVq1aACDazyQSCYyMjFC1alXUq1cPCgoK\niIiIQHR0NFq2bIm2bdtCTU0NYWFhyM3NRXJyMlatWoUHDx4gIiICffr0wdq1a/P5+BaEVCqFvb09\nIiMjkZmZCQBYv349RowYUazrWhQCAgLQrFmzPNvs7Ozw+PHjUq/rc8jIyMDRo0dx8+ZNPHz4EPLy\n8rh58yY6d+4MHR0dKCsrw8zMDM+fP8eaNWsAvPP37du3L4yNjT+r7tjYWNy5cwcrV65ETEwMQkJC\nAADr1q3DyJEjce/ePURERMDMzAxVq1aFiYkJ5OTk0LhxY7Rv3x5LliwRy/Lx8cHEiRMhlUqxa9cu\n5OTkwMPDo1QXmpQ1sbGx+OuvvxAYGIhp06bB2toaCQkJsLKywtu3bxETE4M6deogIyOjSEvHExMT\ncfr0aZw4cQLJyclQV1eHhoYGVFVVkZycjKCgINSrVw8bN25EVFQUsrKyxOuvqKiIzMxM6Ovr4+bN\nm9i7dy8MDQ1hbGwMNTU1ZGdnQ1tbG3Xq1MH169cxcOBAAB/30Pmk0j1+/Dh++OGHInXU3bt34e/v\nj7S0NOzatQudOnXC5MmTYWVlVeisoUQiEZeSPn/+HBEREUhNTUVMTAxUVFSQnZ2N4OBgPH/+HOHh\n4cjNzUWnTp1gZmaG/fv3IysrC1KpFCYmJujYsSPs7Oxw48YNuLi4ICEhAX/88QeioqLEm9bAwADX\nr1+Hrq4uateujZs3b4ruTJqamhgyZAi6d++OnJwcJCcnIywsDFevXkVMTAx0dHTQrFkzPH78GEeO\nHAEADB06FJs3b87TJiMjIxw6dAhr1qwRvxI6d+4MR0dHODs7Y8OGDbhw4QLU1dWRnJyMtLQ0ODg4\nwN7eHgYGBjh48CDCw8Nx6NAhtG/fPt/LYceOHfDw8ICHhwe2bdtWpOszcuRI7NmzB6mpqRAEAQ0a\nNMgTc6E0SE5OxtGjRzF8+HBRuTdu3Bhnz5794oshisqbN2+wdu1arF+/Ho6OjmjTpg3s7e0BvFsg\nYWVlle+cpUuXYv78+XBxccF///0HCwsLGBsbw9TUFC4uLujcuTMMDQ3F4yUSCV69egUzMzNxJPoh\nEokEwcHBOHHiBNq3bw97e3vk5OQgODgY0dHR8PDwAAA0aNAAL168gIKCAtq1a4cLFy4gJiYGnp6e\n8Pb2hrq6Ovbs2QM3NzcAHx8syCicwMBA9OvXD1FRUbCwsICamhqysrIQHR0NiUQCJSUlODg4iJNz\nXl5eiIuLQ0ZGBlRUVJCQkICQkBC8fv0abdq0wcmTJ0s+kSYvL09DQ0MuWrSIL168+KQdAwCNjIx4\n5swZCoJQdCNIMXjx4gU3bdrEefPmMSgoqEj1CIKQxx6Um5vLx48f88iRI1y+fDl79+4tym9iYkJz\nc3NaW1vT1tZW3N6iRQuamJjQzMyM5ubmbNiwIbdv385ly5aJE2mKiooEQF1dXf73338kyaSkJKqr\nq3PNmjVUUFDg/v37aWlpySNHjpB854gOgMuWLRPl27JlCxUUFKihoUF1dXX27NmTiYmJ4v727duL\nNuDBgwfT19c3T/s+hq+vLwGwTZs2nz2x9uzZM44cOZJOTk6sX78+dXR0qKqqyrZt23LlypV89OjR\nZ5Vf2rx9+5bDhw+njo4Ohw4dWmL50tLSGBQUxJMnT3Ljxo3s2bMntbW12bx5c27atIlSqZSHDx/O\nM8Fz6dIl/vfff1ywYAE7duxILS0tcdIJ/7cgQ0dHh82aNaOLiwurVKnClStXknx374aHh3PdunXi\ndQfAs2fPkiRjYmJobGxMAGzUqFGp9de3yMcm3HJzc7l9+3b27NmTGzZs+Oj5ycnJ/Pfffz9vIk0q\nlfL8+fP09PQUL3bnzp3p5ubGvXv3UiKRiMenpKRw27Zt4nFLlixhVlbWp9pZIcjJyeHgwYPZvXt3\nenh4cOTIkfTy8uKvv/5KeXl5rl69miQpkUh44sQJHjlyhDNnzmSfPn04duxYjhs3jlevXuXFixcJ\ngFevXs1XhyAIHDZsGFVVVTllyhQ+e/aMr1694p49ewiAPj4+4rHDhw8X+/HChQsEwFWrVuUpLykp\niQcPHuTGjRvZtm1b1q9fn3369OGFCxc+2kYA/OOPPz6rr1JSUrhp0yYaGhpy1qxZvHDhAm/dusU3\nb97kewFmZ2czMjKSqampJN/d1IIgMCcnh1evXuWVK1fK5B4JDg6mlZUVx40b99mTiWvXruXSpUt5\n5swZxsTEUBAEZmVl8ciRI9TS0uK6det45MgRAqCLiwsBsGrVqjQyMuKkSZN45MgRvn37liR5//59\nXrlyJc9zRFKcOCqIxMREPn78mOS7e6BHjx7ivfLrr79+VttklA6fpXTV1NR49OhRXr9+ncuXLycA\n/v333+zVq5d4oZOTk9muXTuamZlRW1s7j1uUm5tbqTeosvPw4UNqaGiwSpUqNDIyYqdOnbh9+3ZR\n+UilUoaEhPCff/7hlStXCIBDhw7N8yA+efJEvD5ubm6MiIgQPRR27tz50brbtm1LT0/PfA95YVy9\nepV//PEHBw0aRCcnJ2ppafGHH35gYGBgoed96BJVpUoV9uzZkwYGBjQyMqKenh4bNGggzrZ/qa8i\nkty1axcNDAy4Z8+ejx7z8OFDjhkzhu3ateOIESNEpfa/CILAqlWr5nHt09fXZ+3atcVt8vLyoivh\n/v37OXPmTM6fP79IblDFZc2aNQTAunXr0s/Pr9TLl1EyPkvpWllZ0dXVlUZGRmzXrh19fX05d+5c\nVq1alf369ePu3buZkpJCXV1dAuDSpUvp5+dHLy8vjh49mgD4zz//lHqjKisBAQE0NTVllSpVqKen\nR01NTXbp0oW+vr7ip03Xrl3zfJoC4LVr1/KUk5KSwnbt2lFfX58AqKysTENDQ+7YsaNQBfbkyRM2\nbtyYK1asKJK8c+fOpZWVFUeNGsX169fz3LlzecwchXHy5ElR/o4dO9LX15fPnj1jZGQkX758yezs\nbP7+++8EwGPHjhWpzOKQnJzMESNG0MbGplC3u7i4OALg3LlzOWrUqCINFmbNmsWBAweK16pWrVoE\nwG7dujE7O5uCIDAlJaW0m1QgOTk5X/SlJaNoeHt7c/LkyWJ8lo9RZD/d+Ph47ty5kz/99BNr167N\n+fPnU1VVle7u7jx8+DClUinPnj3LCRMmsEOHDmzZsqX4wA0aNKj0WlYJefPmDVu3bk0lJSWampqK\nI6V9+/bx+++/z6NcDx48yPHjx9Pc3JyOjo5s3Lgxzc3NqaOjQ0VFRdGu3r9/f/bo0YP//vsve/To\nwb59+4qf8J/i2LFjtLOz48uXLws97vnz5zQ3N+fNmzdL1G5BEPjnn3+KbevTpw8nT57MqVOn0tnZ\nmRoaGnRwcKCfn1+pOq+/ePGCS5cupZGREQcOHMikpKQCj8vMzOTmzZtpYWFBfX191q9fn/Xr1+ee\nPXuYmZlZaB1BQUF0dHQUzW1bt27lr7/+ylu3bpVaO2RULt6bed77S3+MEi+O+PBhwgdO96dOnaKO\njg4tLS3p6urK6dOnMyIiooTNqNxkZGRwypQpVFJSoqurq/ggT5gwgV26dKGlpaXo3K6trc1u3bpx\n2bJlvH//PmfMmEFvb28eO3aMO3fu5L59+6iqqkpVVVX+/PPPtLS0zDMJ4+DgUCzZlixZQiMjo49G\niFq+fDn19PTyTO6VlKioKF66dIk7d+7kkiVLOHfuXPr7+39UGZaUgwcPsnHjxtTT0/vkYoyAgAAa\nGxvzhx9+oJ+fH/X19bl79+5ijxhjY2OZnJz8uaLLqEBkZWVx6dKlnD17dpGOT0tLo7+/P2fPnk0L\nCwtqaWl92RVpgiCIN2pgYCAB8NSpU0US9j3Jyck8dOiQaGf8Gj6VUlNT2aJFC/bs2ZNhYWEf9Szo\n1q0b7ezseOTIEfEN6enpySZNmnDMmDF0dXXlTz/9xGbNmtHKyore3t6cO3cu+/fvL6746t+/P58+\nfVpsGa9evUoDAwPeuHEj375JkyZx/PjxxS6zvLh37x719PTo7+/PnJycTx7v7OzMzZs3kyRfv35N\nLS2tIptNZHwdREREcOLEiezatSsbNWrEixcvMjg4WAwN4Ojo+NFz4+LiOHv2bDZq1IgaGhpiCIFx\n48Zx/vz5ZbMMOCQkhD179qSOjg4HDBjA6OhohoeHf/K8o0ePiiO2Z8+e0d3dnQDYsGFDzpkzh6dO\nneKFCxcYFBRUpIepojB48GAOGDCgWJ/NmZmZvHPnDs+dO8cGDRrke/mcPHmSzs7O1NPT465du8Tt\nqampXL9+fYm8AA4cOCDGmlVRUeGECRN49uxZmpmZfXKirCIRHh7OqlWrFvn4nj17smPHjoyKimJO\nTg4VFBQ4Z84choaG8tixY5wzZw4HDhzIfv368a+//voqBgIy3iEIAjds2EADAwNOnTqVhw4d4ubN\nm6mqqirqIhUVFV69epUBAQG8d+8eN2zYwN69e/P333/nL7/8Qm1tbXp6evLq1asFmvXKROm+d5EB\nwF69eolD7BUrVvDUqVNMSEigRCJhdHQ0yXcK5sMgL927d6empqZo6zx79iynTp3KNm3asHXr1vzu\nu++opqbG5s2bc8+ePcWafS8P9PX1GRAQUKKH9cqVK1RSUvqoa9OECRPo5eXF3NxcZmRksFmzZrSw\nsGCfPn2K5KtbEIIgMCYmhqNHj6aLiwvnzZtXonLKC4lEQlVVVdFkIQgCd+zYwVmzZhX4sn758iWN\njIxEn8t79+6xTZs2+SYw3//KalJMRsl48OAB/fz8uGzZMk6cOJETJ07k3LlzuWTJErZp04bW1tb0\n8PDg48ePRffXD7/wEhMTWb9+fRoZGfHPP/+kubk5FRQUqK+vT11dXbq5udHX15ft27fniBEj+ObN\nm0LlKUx3lmpox/fHvo/ZMHv2bCxYsCDfcVKpFBcuXED79u0xefJkqKmpoVq1aujWrVuhKWfS0tJw\n8eJFLFy4EAkJCejQoQO0tLSgrq4ODw8PmJubF1nWL0337t1x9epVTJw4UUxSWVRatGgBBQUFnDx5\nssBUMUFBQejXrx+UlJSQmpoKFxcXrFu3Dj/99BN0dXWxa9euChPM+XORSCQYPHgwDh8+jLS0NNy5\ncwcODg4FHtujRw+kpqaiVatWOHHiBCQSCVRUVNCxY0cxrCTwLgFmx44d0b9/f6xZs0ZcLvvs2TPU\nqFEDDRulaK/OAAAgAElEQVQ2xIYNG8RUSs7OzhUmILyMvCQmJmLmzJk4ePAgOnToABMTExgZGUFe\nXl7Mht26dWsA7+4PW1tbGBsbIzU1FadPn0ZsbCxu376NOXPmoEuXLvDy8hJjtHh7e0NBQaFEYUjL\nLbSjIAjMzs5mRkYGN2/eTDMzMzo7O9PExIQGBgbiKGLp0qXFLvfGjRv8448/uGjRIrq7u7NFixaf\nDIdX1oSFhVFfX5/Dhg3jyJEjuXPnziLJmJSUxJ9//pkDBgz46DGCIPDAgQN5XKEyMzPZvn17enp6\nlob4FQI/Pz+2aNGCnTp1Eu+Xj/m7pqamcsuWLZwyZQpbtGghrvjS19fPM5k7d+5cenl5iX9nZWXx\nxx9/pIKCAg0NDYs9KSmj7BEEgVu2bKGxsTFHjRrFhISEYpdx6tQpAuDPP//MEydOkHw36aujo8Om\nTZt+lnyF6c4vqnTDwsK4evVqMWQiADZo0ID//vsvDx06xJYtW9LHx+ezVyTl5uZy7NixNDU1LdP8\nW0Xh2LFjXL9+Pb29vdm9e3dqa2tz0qRJvHTpUqEmkn///Zc1atQodn2nT58Wl51+Dfz++++sX78+\n3759y+nTp4uLcQrjwIEDrF27trgarHnz5mzatCkfPnxIDw8PGhsb53GD8/f3Z5MmTfjo0SP++uuv\nvHz58pdulozP4MGDB3RycmLjxo1L7KKXlpZGHR0dnjx5Ms/2lJQU9u/fv3IpXalUyu3bt9PU1DSP\nTcze3p5btmwpdnnFYciQIaxTp06FfmhevXrFSZMm0cHBgSYmJnR0dKSzszP3799Pkvznn384cOBA\nGhkZ8fTp08UuPysrixs2bKClpSXbtm3L33777aOrqyoyYWFhHDhwoBgTw9bWlsuXL6e1tTU9PT0L\nfVEfO3aMDg4OrFmzpngfKioqUl1dndOmTePff//NY8eOcd++fQwJCaGbm1uhM9UyKgYSiYQ//PAD\nAXDt2rWfNa/j7+/PVq1a5dkmCALHjBlDLS2tAj16ikOZKt2HDx+KinbIkCG8fft2mcz8Tps2jc2b\nN+eQIUNobGxcKWbenz17xsDAQLq5uXHWrFnMyMgg8C7LxOeO2NPS0njo0CFOmzaNpqamvH79eilJ\n/eWZP38+9fX1uWjRIvbv35/169ennZ0d5eTkGBgYKAbwLijOQ3BwsBj/430AbxUVFQLvMiW0b9+e\nGhoabNeunbiAZ9iwYZXifvnWiY+Pp5KSEpWUlNi3b1+6uLjQ0dGR+/fv5+jRoyknJ1fksp4+fUoz\nM7M891CXLl2ooaHBhQsXfras5WZeKEverwaZMWMGN2/eTGNjYz58+LC8xSoSR44cYcOGDSmRSHj6\n9Gk2bty4VMtfsWIFdXR0vsja/y+Bq6urGNynd+/eHDJkCAFQQUGBQUFBlEqlbNSoEd3c3MTAQhs2\nbKCOjg5tbGzYunVruru7MzU1lUFBQbx06RKjo6O5ZMkS/v3330VeuSejYvL27VsuWLCAmzZt4qlT\np/KYL4uanUQQBFavXp2PHz/m1atX2a5dOxoYGHxyJWJR+SaUrkQiESdOcnJyOHPmTNH3t6IjlUrZ\npk0b/vLLL2LYx9IiLS2Ne/fupY6OTqGBcCoKqampNDExYadOndiiRQva2tqKJoYPF91ERUURAAcO\nHMi7d+9SX1+/0rxkZZQuPXv2pJ6eHrt37y6a6YrC0KFDOW3aNDZt2pTz5s1jbGxsqcn0TSjd96Sn\np5N8t9rEysqKjRo14sKFCyu8n2VKSgrHjh1LS0vLYgUISk9P56NHj3jv3j2GhYUxJSWFOTk5fPz4\nMbt160ZVVVUxxm9lULrZ2dlcv349Z86cyePHjzM7OztP8tAVK1Zw3LhxHDhwoOiZYGJi8sXnC2RU\nTMLDw8WEl+3atePo0aOLfO77CH4TJkwoNJRmSfimlO57PrQtA6C6ujq9vb1LvXPLi5ycHB4/fpx6\nenpi/IX3n+Dy8vI0NTXlnDlz2LFjR7EPOnTowL1791aqPggPDxflb9asGZ2dneni4sI2bdpQS0uL\nW7dula0W+4Y5f/48W7Rowc6dO3P69OlUVVUt1tftl1r6/U0qXZKMjo7mnDlz8ihfc3PzCr+a7VO8\nfv06X5uqVKkiruhbsGABSbJjx460tbXlkydP6OPjw7Zt2xIAu3TpUs4tKB4RERHs0KED7ezsxDYv\nX76cz58/L2/RZJQzU6dOpZeXl5i1W09Pr0Kspvxmle57IiMj86RG+d/YtJWJ+/fvi+3w8fFhYmIi\nd+zYQXt7+zxv7ZiYGAKggYEBe/XqxaZNm4phJOXk5EQzTGUgPj6eAGhoaMgxY8aUKLjPl+TZs2c8\nevQoX716VaTjc3JyPrmMVMan2bFjB01MTBgaGio+E+np6RXiy+ebV7rku+wBrq6u/PnnnyttqElB\nEMSb68M2hIWFUVlZWQwUNHjwYAKgv78/9+zZI6YDev+rWrVqpQoeRL6LRHfw4EFWr1690BxVX4qA\ngAA6OjrSw8OD586dY1xcHN3d3fOMvnfs2FFoGS9fvuTgwYNpbGxMDQ0NAuDGjRvLqAVfF0FBQTQ0\nNGRISAjJ/5+fcdiwYeUs2TtkSpfvAprUqlWrvMX4bD40jSQmJtLHx4fjxo0rMEjL4cOH850fEhLC\nmJiYshS5VAkJCaGmpmaxzrl//z7NzMwI/P9kjsXh4sWLNDEx4fz58ykvL08A9PLyytPXheWdk0ql\nHDduHDU0NDhhwgQGBwdz6tSprFOnDqdNm1Zseb51Ll26RCMjI+7evZvku8GInZ0du3Tp8kUykJQE\nmdLlu9ixn7u0r6IQGxvLLVu2iIrk/c/Q0JBmZmYcMmRIpVoMURCCIBRoAnn+/DktLCwKPTcuLo4T\nJ07kihUrGBcXx1WrVuXpq+I8mM+fPycA/vnnnyTJc+fOFfiCs7GxKTAZKfluVAaAsbGxTElJEc/x\n9vZmaGhokWWRQW7fvp2GhoY8c+aMuO3Ro0eiJ8ukSZM4ZMiQT2Yu/9LIlC7JVatWceDAgeUtxmdz\n5MgRamtrs0ePHvz777+5bds2ysnJsU2bNiUOJVnRuHHjBmvXrk1FRUXq6OjQ0NCQDRo0oIODA21s\nbPJcR0EQuHr1anbp0oU//fQTBw8eTE1NTQ4YMIBNmjRh165dGRMTwxYtWvDHH3/ksmXLKCcnx99+\n+61IdtX+/fvnSzf15MkTBgYGin0dFBREZ2dnKioqcsmSJfncE1NSUmhnZ0d/f38KgiCmvCqqI/+3\nzJMnTzhlyhT6+/tzxIgRNDc3F00KJHn27Fk6OjqyZ8+eDA0NFTOq/PXXX+UotUzpkiQHDBhAb2/v\n8hbjs2nevDmrVauWR7kmJCR8Fcr2PatWraKuri4lEgnfvn3LmJgY3rx5k7dv32ZgYGAee/SLFy8I\ngPv37+e+ffvo7e3NqKgo1qxZUxyBjhs3jqmpqWzatCl79OjBWbNmccSIEWLwoY/FII6Pj6eCgkKe\nCFaPHj3i6tWrOX/+fPr4+ORZrh0YGMhu3bqxW7du+cqaM2cOW7ZsyfT0dKanp3P8+PEEwJkzZ5ZJ\nCvrKhlQq5cSJE1mlShV6enqyadOmnD59er4FDA0aNKCzs7PoEmlra8tly5YVeVLzSyFTuiTXrl1b\nYYzsxeXEiRP5Pme/5gf16tWrtLe3L/SY9PR0Tpo0iXZ2dnR3d8+z782bNzQ1NaW+vj7fvn3LXr16\nsXr16hw2bBiHDRtGAOzduzcvX75MAOLISSqV8tGjR1y1ahU3b97M27dvi/3dpUsXurq60tjYmEOG\nDOHMmTPp4eFBbW1turq6csqUKRw2bBibNGnC77//Pp+8UqmUHh4e7Nixo6h435fdvn370uu8SkJi\nYiK3bdv20VVgW7dupbW1daFZnEmKXxg///wz165dy8jIyC8hbrGRKV2SM2fOLDQ+bUUlLS1NfDiV\nlZUZGxv7VY1qCyIwMPCTYS379evH1q1b8/z58/n6471bnaKiovgJHxwczJEjR4pJKz98gb3/FG3Y\nsKG47X2QnPe/gwcPcvfu3fniNiQmJnL//v1ctGgR161bx/3793/UMyQ3N1csj/z/M+7FWUX1NXDw\n4EEaGxuLo9N169Zx48aNjI+PZ2pqKkeNGkV9ff1PeoOQpJOTE+fOnUt9ff0KtehHpnT5bqHEh+lc\nKjpSqTRPOqNvKeNsr169OHPmzI/uT0xMJICPBq5OTk4W++1/PzN3794t7luyZAn//fdfamlpMSws\njHXr1iXwLkj60qVLCaDE6Y8K4r3nxZMnT0hSXN78rfjsXr58mZaWljQxMeG+ffvE6zBw4EBqamry\nl19+4d9//00AH52U/BBBENioUSNu3ryZSkpKTEtLK4NWFI3CdOe7PCXfAKampvD09ESHDh2QnZ1d\n3uJ8ku3btyM8PBwAcOjQIWhpaZWzRGWHubk59u7dW+A+iUSCjRs3wtTU9KNpVLS0tHDmzBlcuHAB\nJiYmCA0NhbKyMurVqwc3NzcAwPLlyzF16lR07twZixcvxrBhw+Dl5QUAePDgAWxtbaGvr4+0tLRS\na9eVK1dQu3ZtaGpqAgAOHDgAY2NjpKSklFodFZmIiAhERERg0qRJeP78Oezs7HD9+nVs3boVmpqa\n2LlzJ6ytrTFjxgxMmDABOTk5BZaTk5OD7OxsTJ06FWlpadizZw9mz55dYGqrCklJtXVlRCqVslmz\nZlyzZk15i/JJ/vdT9Fvi/eRY7dq12b59e0ZERHDZsmWcM2cOf/zxRzo4OPDy5cs8cOAAZ82axaFD\nh7J3797s2bMnzczMaGlpydq1a4v9997N6P3f8+fPz2OSyMzMpJGRkbj/zp07zM3NZf/+/dmpUyeu\nXr2aAQEBnDNnDk+cOMGMjAz6+vpyzJgxPH/+fJHblZCQwB49etDAwIADBgwQEyTevXv3S3RjhUMQ\nBO7Zs4d6enqsUaOG2N+CIPDixYtiwHmJRMJ27dpx69at+crIzMykra0tDQwM2K1bN8bExNDKyor3\n7t0r+wYVQmHPbakmpqwM3Lt3D+3bt8fJkyfh6OhY3uIUyuLFixEeHo5NmzaVtyhlilQqxeXLlwEA\no0ePxqNHjyAvL49mzZrB1NQUysrKuHbtGqytreHk5ARTU1Noa2sjPT0dbdq0QVpaGiQSCXR1dWFr\na4sHDx6gTp06iIqKwsGDB+Hp6ZlvVPTff/9hwoQJqFq1KlxdXaGjo4NOnTph7dq1CAoKwtmzZ/HT\nTz/hypUriIqKgrq6OpKSklC/fn0EBwcXq32hoaG4evUqsrKyUL9+fbRs2bJEyQ8rK8ePH8fIkSPR\npUsX9OnTR0wcuXbtWixcuBAxMTGYNWsW5OXlMW/ePISGhuL48eN4+vQpXr16BalUipkzZ6Jp06Z4\n8eIFLCwsIAhCherDcktMWVHZu3cvq1WrxoMHDzIjI6O8xcmHVCqlt7c3raysymXJa0UhKyuLtWrV\noru7O11dXenk5ERra2suXry4SLmxoqOjqa2tXayRJD6YPDty5Ei+/R+OmKdNm8Zx48YVq03fOjk5\nOdTQ0Ciw3w4cOEANDQ22b9+empqavHjxIn19famhoUEDAwNqa2vT3t6ex44d44gRI+ju7k4TExOO\nHTu2HFpSOIXpzm9S6UqlUi5atIjNmzenqqoqDx06VN4iiQQGBtLKyoqtW7fmuXPnvnpPhY9x4MAB\n1qtXj25ubiXug/eTNRcuXChWGQkJCXz79m2B59y/f587duzg27dvWb169RItK/7WuXz5MnV1dRkV\nFZVne1RUFEePHs1t27bx3r177NmzZz5XSWVlZRoYGHDp0qX08/Pjo0ePyqkVhSNTuoVw4cIFamtr\nl7szNUmuWbOG+vr69PPzo1QqLW9xyo2tW7fSxsaGx44d+6yXjiAIXLduHa2srFilShXWrl2bXl5e\neTxYsrKyOHLkSJqYmLBu3br09vYu0r2wdetWduzYscSyfetMmzaN3bt3/+h9vmXLFgJg9+7dxeBA\nAwcO5P79+ytFhhCZ0v0Eo0aN4pQpU9i/f3/a2Njw77//LnMZdu7cyZo1a4ruRN8yDg4OJcqE/DEE\nQWBCQgIDAwPZtWtX/vjjjzx+/DgzMjK4detWOjo6Mjw8nCdPnmSHDh2orq7OOnXq0NXVld7e3rxw\n4QIHDx7MTp06sXfv3jx79uw3b/r5XDIzM9m4ceMCJ8vId1+jVatWJQCuXr36sxO1ljWF6c5vbiKt\nIKKjo1G3bl1YWVlBRUUFISEhiI2NhYqKymeVm5KSAjU1NSgqKiI9PR0zZsxAQkICVFVVoaioiGHD\nhiEqKgqurq4YNGgQnJ2dMXTo0FJqVeWEJDQ1NREVFQU9Pb1SLz8pKQk+Pj44d+4cHjx4AFNTUzg7\nO2PNmjXiMcnJybh37x7i4uJw8uRJBAQE4Oeff4aFhQWWL18OXV1d1KlTB2vWrIGSklKR6s3JycGB\nAwcQHh6OVq1aoU2bNqXetspEWloaNDU14efnhwEDBhR4zIEDBxAQEID58+dDVVW1jCX8PGQTaUVg\n0aJFot2oZs2anDVrVonLun//Ph0dHammpkZ1dXUaGRnR3d2dALh+/XquW7eOXl5eVFJSYo0aNejm\n5kYfHx/26dOnFFtUOdm/fz/19fX5+vXrL15XeHg4d+3aVayVTJqamhw7dixXrlzJlStXFvm8wMBA\nAmDbtm1ZpUqVSjdy+xJ06NCB48ePL28xvgiF6U6Z0v0/pFIpR44cmWcZ6Pr164uV2ic7O5vDhg2j\nrq4ut27dSolEwvj4eN64cYOzZ8/mn3/+mcdGKQgCMzIyaGRkxBs3btDAwKDCZUUoK44fP043NzfW\nqFGDN27cKG9xPsqHkztKSkpFPi8rK4vGxsZ88OABx48fz169en10Rd23wIsXL2hnZ/fVmmhkSreI\n1KlThwBoZ2dHW1tbGhsbc+XKlUWezNm8eTNbt25d7KXGtWvX5okTJ9i/f396e3vTz8+PK1asqJDu\nbF+CkydPsmrVqlyxYgXj4+PLW5xCycrKEpWuvr5+nrTwn8LHx4cmJiYMDAwU04b7+voyJCSEs2fP\n5syZM0t12XFFRRAEtmvXjiNGjPhqAzfJlG4RiYuLE6NQAeCvv/5KZWVlbtq0qUjne3t7lyiS2eHD\nh2lnZ8cVK1awS5cuYv3Tp08vdlmVjZMnT1JPT69UJ86+NFu2bBFd+szMzIqVUXbu3LlUUlLijBkz\neOfOHXbq1CnParg//viDz549K/BFLwhCpU+qSpJ+fn5s2LDhV/2CkSndYuLv708ArF69OleuXEkd\nHR2ePHnyk+fNnj2bI0aMKHZ9giBw0KBB4kO3efNmdurUqdyj35cF33//Pf38/MpbjGKRm5tLR0dH\n/vXXXxw8eDA9PT2LfG5ERISoYN++fcvs7Gz269ePAGhlZcUOHTrQzMyM2trabNKkCRs2bEgbGxsx\n47OJiUmlDn4eGhpKQ0ND7t+/nzY2NsVaRl2ZkCndYpKYmMgmTZoQAK2trXn27FkaGBh8MtScs7Nz\nkZRzQeTm5vLGjRvMzc1lp06dvom+X7lyJS0tLSu8SaEg7t69SwA8deoUdXV1uWTJkiKf6+fnRwDU\n1NSkqakpu3btyhs3blBfX59eXl68c+cO37x5w6tXrzIgIIBhYWF8/vw509LSuHr1atarV4+BgYFf\nsHWljyAI3LZtGw0NDenr6ysGmd+3b195i/ZFKHelKwhCpbPdSKVSjho1igB45swZhoSE0NTUlP7+\n/h89x97ensHBwUWuIy0tjWPHjhVHPubm5vT09OS2bdu4ePHi0mhGhSU9PZ2qqqqVNjMzSdaoUYM+\nPj588eIFTUxMPhlw+0OePXvG0NBQhoWFiSaD4OBgzpw5k4aGhh+dTMzNzaWPjw/19fW5fv36UmkH\nSW7bto1jxowp1dCnubm53L17N+fOnUsnJyc6ODjw9u3bYsp0HR2dAvPgfQ2Uu9LdsGEDu3TpwjVr\n1lSqT6OsrCyeOHFCtK+dOXOGVlZWH3UxqlWrFi9dulTgvtzcXF6+fJlbtmzhX3/9xbS0NFarVi3f\nMsf3v/cj7K/BhlcQM2fOpIuLS3mL8VncvXuXVlZWPHDgAIcNG1Zq0eu6d+/O/v37F3rM6NGjxYhc\nb9++ZXR0dLHr2blzJ0eMGEE1NTUC7xKbTp48uUQy3717l1OmTOGWLVt4/fp1Llu2jPXr1ycADh8+\nnLt37xbvZalUSmVl5a8iZ+HHKHelm52dzefPn9PGxoYA6OLiUulGviTFFCsfW+/t7e3N3r1759su\nlUpZu3ZtNmjQQPTXPXToEG/duiUGYxEEgU+ePOHSpUtZpUoVMdU3AG7atOmri8Hwww8/cMaMGeUt\nxmczc+ZMDh48mBs2bKCTk1O+pJTFQRAELlq0iMbGxp90HUxOTqazszPr1KlDVVVV/vDDD8WqKzk5\nmXJyclyyZAl37drF8+fPMyAggFZWVsUOBr5s2TIaGhpy+vTp4j07ZswYnj59+qODhvT09K92QEFW\nAKX7IU+fPhXtWR9La1JRiYmJIQDevn27wP3x8fGsUaNGvuhUYWFhNDIyIvlutFy9evVC3cFu3br1\n0RGwubk5e/XqxStXrpRew8qB27dv09DQsLzF+GzWrVvHQYMGUSKR0M3NjXXr1i2x4r116xY1NTWL\nlDWBfDeYuXTpEs+fP886deoUuZ7Vq1fTxMSEEyZMyLNdEAQOHjyYRkZGRR45Hzx4kDY2Nnz16hW9\nvb3FNEeVzeZc2lQopUuSNjY27Nq1a6VTuuS7sJAGBgacPn16vihJ5DsXKF1dXbq5uXHGjBns0qUL\ndXR0uGLFCgqCQADs3LlzoXX8888/7NGjB1evXs0nT56wXr16otKdM2eO+P8VK1awc+fOnDZtWqUb\nCWdkZLBly5aV3m3o0aNHNDAw4KNHjygIgmhGKy5Pnz6lrq5ugUktP0VERASNjY0/eQ8IgsD58+fz\nu+++4/379ws8RiqVskmTJpw3b16R6p42bZqYot7a2ppNmzaljY3NJ188//zzDz09Pcs9VfqXosIp\n3cpOdHQ0+/TpQ21tbfbu3TtfkJqIiAj+9ttv9PLy4r59+xgTE0OSotItbDKOzLskOSwsTLSNvf8N\nGjSIo0eP5vr160XXtoqUlK8oCIJAVVXVfIkeKyPr16+niYkJ09LSeOfOHerr6/P69etFOjcuLo7z\n5s0jAP72228lql8QBJqamvL58+cfPSYpKYm//PIL69at+8lRbGhoKI2MjCgIAjMzMwu9txITE2lh\nYcGjR4/y+PHjnD17NkNDQz8ps4WFhZjd42tEpnS/EKmpqZw1axYNDQ1Zt25drlq1ii9evODNmzfp\n4+OTLwRdSEgIAfDJkye8ffs2r1279tERQVJSUj6bV0ZGhqjAKzvXr1+ntbV1eYtRanTv3p0bN24k\n+W7iuFWrVoUeHxcXJwbrbtSoUZFNCoXVv2fPngL3Xb9+nW3atGHHjh2L9JJ7+vQpFRQUeO7cOcrJ\nyX1yUu/KlSs0MDDg0aNHiyTr+2zNgYGB1NTUrHRfaUVBpnS/MO9ta+7u7tTW1qalpSWHDh1KIyMj\n+vj4iMctW7ZMnCW2sLCgvb09DQ0NC8xQ8DUjCAJ/++03/vLLL+UtSqlx8uRJmpqa8syZM7xx48ZH\nn52kpCT+/fffbNKkCXv06PFZE28f4uvry1atWuWLT3v06FFqampy7ty5RY718OTJE1pbW9Pc3Jxr\n166lvr7+J8/577//aGhoWCSXydWrVxMAGzRoUCnyFZYEmdItQyQSifjmjoiIoI2NDceMGcMTJ04U\naL/08vJip06dylrMciUsLIwAePny5fIWpVQ5c+YMq1WrxilTphBAnkUfkZGRXLlyJY2MjOjq6kpf\nX99S9VGVSCRs2rRpvljQ69ev55AhQ0pcriAI1NfXL9LqyBkzZhRp6Xp4eLhoKrOzs+Off/751cUZ\nKUx3fjMp2MsKBQUFMUGehYUFbty4ASUlJcyePRtGRkYwMzNDx44dxeOzsrLQqlWr8hK3XLC1tcXw\n4cNx4cKF8halVGnfvj1u3ryJw4cPAwB27tyJWbNmwd7eHnXr1kVgYCAOHjwIf39/DBs2DGpqaqVW\nt4KCAvr27YuLFy/m2W5lZYWIiIgSlysnJ4fOnTvD19cX/fr1g5KSEhISEgo8tlWrVrhx48Yny7S0\ntBSfkdDQUIwfPx4rVqyAIAgllrMyIVO6XxgDAwN4e3sjICAAt2/fRrdu3XDmzBkcO3YMAPDy5Uvo\n6Oh8spxXr16hYcOGaNGiBUaNGvXRG7+yUKtWLdy8eRNSqbS8RSlVTE1NcebMGQDAr7/+itu3b8PX\n1xcvX77E7t27UaNGDXh7e4vXvzRxcXHBP//8g/T0dHFbQEAAbG1tP6vcH3/8Effu3cOxY8cgkUhQ\no0YN7NmzJ99xgiBAWVm5SGXOmDEDADBv3jwYGBhg9uzZ6Nmz52fJWWko6RBZRsm5fv06AfDAgQOs\nVasWjx07VuBxgiBw6dKlYiZUfODBoKamxsWLF/PcuXN89eoVHz9+zH379tHLy4sLFy5kSEhIGbeq\neCQmJrJ+/fp0dHQs0PWuMpOSkkIAHDBgAC9dusS1a9eyV69e1NXVFa/jl1qN1b9/f06dOlX8293d\nndu2bfusMq9du0YArF27NgVBYEBAAM3MzPLYb69du8Y6depw0aJFhZYllUqppaXFK1eu0MPDI58f\nemV3IXxPYbpTpnTLCQcHBwJghw4d2LJlSyYnJ5MkL168yKtXr1IQBAYGBtLU1JTnz59nXFwcVVVV\nCYBpaWm8fPkyHRwc6OTkRF1dXSoqKtLCwkK8eZcvX17OLfw0giBw1KhRdHZ2LrUJpYrCq1ev2Lhx\nYzZq1Iienp7ctGkTIyMjSZKDBg3i77///kXqDQ0NpbGxMSUSibjI5nNDhB49epQA8sQDWbp0KatV\nqxDUGcwAACAASURBVMbJkydz1apVNDMz486dOz/piTBw4EAC7zI079+/P8/KS0tLy69mlZpM6VZA\nHj58SE1NTSopKbFly5ZUUFCgvb09AVBBQYHff/89TU1NOWnSJPGcdu3aUVlZOd+NHRMTw/DwcJLk\noUOH2KRJEzZt2rRSZCbIyspi//79v+p1+B+Sk5NDY2PjL5qAtEGDBty0aZMYLhIAN2/eXOLy3nvd\nKCoq5rmndu7cSQC0tbUtUuCibt265VHeubm51NTUpIGBARs2bEgAXLp0aYnlrEjIlG4FZtWqVXk+\nr94HtB41ahR37dqV59isrKwiRYEKCwtjjx49aGRkxGvXrn0p0UuNV69eUU9Pj7GxseUtyhdn586d\ndHZ2/qJ1XL58mQA4ZMgQtm7dmkuWLKGpqWmJV4A2btxY9DT4MKB/SkoKFy5cWOSvlHr16tHX11f8\n+320MfxfgKeJEyfy559/LpGMFQ2Z0q3gSCQScdSwfft2rlu3jh07dvxs+9Zff/1FJSWlfIs0KiIL\nFiygsbFxsQKaC4LAp0+f8vr16wwMDKzwTva5ubmsXbt2iWMuF4fY2FhKpVL27t2ba9asoaKiYomT\nYSYkJHDBggUEQG1tbf7xxx/F7ut//vmHjRo1ynMvfjjgcHV1Fcv/GpAp3UqIlpYWnz179lll5OTk\n0MfHhxoaGtTU1KSKigqdnZ25YcOGfE70FYE7d+7QysqKgwcPFv02BUFgdHQ0b968ydevX1MQBEZG\nRnLy5Mk0NTVl9erV2aRJE5qbm3PixInl3ILCWb16NV1cXMr05eDv709lZWX269evWPXGx8dzyZIl\n3LJlC0NCQiiVStm8eXNOmzaN9evX56hRo4pc1okTJ2hoaMiuXbvS2NhYjAOcm5vLxMREHjlyRFS+\nX0tQc5nSrYSUZmbgpKQkPnr0iElJSTx69ChbtWrFTp06VcjwmikpKezXrx9r167N6dOns379+tTX\n12eDBg34/9o707Cmzm2P/4EAoswJo8yjiAwqIJNorVocK4qV1nM9rdZah1r1OFar1SoOvc4DCq0c\nexwoaqu0IuIAVlRQEAREBESCgGGeA4Qk637oMbdUxSmQhO7f8/Ahe3jXSkL++91rr3ctHR0dMjIy\nIh0dHVq6dGmHEpu1tbXE4XBo+/bttGDBAnJwcJA8nJQHsrOzicPhyKSe9Js8nMrOziYANHToUOJw\nOHTt2jVavHgxLVu2jBoaGsjCwoLu3Lnz0nG2bdtGFhYWlJiYSG1tbRJx/SsPHz6k69evv7af8goj\nugqGSCR6pcI4b0pbWxv5+fm9ccHqrkYsFlNsbCwtX76c4uPjO8zKHz58+ML6AQkJCfTRRx/R+vXr\nydvbmwYPHiwXlewqKirIxsZG4XrB7du3j8zMzGjr1q3E4XAoNDSU+vbtS5WVlRQQENBpJ+Sqqira\nv38/mZubU0lJCRH9UXvYx8dHksXRk2FEV4EQiUQ0bNgw8vHx6dKcxezsbDIxMekxeZF/5Wnlrdzc\nXJn6kZ+fT87OzrRmzRqZ+vGm/Pvf/yYHBwf65ZdfyMTEhAYPHkz+/v40adIkmj9//jPHP3z4kOLi\n4qhXr140fPjwDjP7L7744qVZKmKxWCF75v0VRnQVBKFQSEuXLiUAXX7rLxaLyd3d/ZlC1j2Fx48f\nk4aGhswuKmKxmPbu3UtsNpsOHDgg9w/5XoRYLKZt27aRlZUVJScn09SpU0lDQ4PU1NQIQIeyjxcu\nXKDevXuTmpoaRUZGPjPW0+pily5dopiYGNqyZQvFxcVRQkIC2djYUHh4OF2+fJkA0KJFi7rxXUqf\nzrST9Tar2Riky48//oiwsDAkJSVBXV29S20REaqqqvDw4UNwuVxYWlp2qb3uhsvlwszMDCxW9/+L\ni8VizJw5E1lZWbhx4wYcHBy63QdpoaSkhGXLluHMmTMoKipCdHQ0bt68icDAQMyfP7/Dst+LFy9i\nzZo1WL58OVRUVJ4Z69KlSwCAiIgI/PTTT8/s9/T0xP379wEAV65ckWwXi8VQVu45FQt6zjtRcNra\n2rB7924cOnQIfn5+XW5PSUkJISEhqK6uhpWVFQICAhAaGvpWxVHkiZ9//hkTJ06Uie2VK1fi0aNH\nuHbtmkIL7p/ZvHkzvvjiC2RkZMDHxweTJk1CTk4O/pjU/UHfvn2RnZ39XMEVCoU4d+4cIiMjcevW\nLQCAr6+vZH9+fj7c3d0REBAAABgzZgzS09Mxbtw4GBgYwMrKCrt27erid9lNvOkUmUG6cLlcAkCZ\nmZndarelpYWCg4Pp7NmzNHfuXGKz2bRlyxaFr4ewaNEi+vzzz7vVplgsph07dpCBgUGPiEv+lbCw\nMBoxYgSJxWJJdsMPP/wgedBZV1dHZmZmzw0tbN++nYYMGULl5eWkqalJn376aYe2U38mLi6OysrK\nJDUfHB0dacqUKcRisUgkElF4eDh5eHjQyJEj6eTJk6/cSLM7QzydaScjunJCZWXlC9NpupNTp04R\nAGKz2WRra0tjxoyh4OBghWs0WFVVRRYWFi/sptAVHDhwgAwMDLp0ia8sEQgE5OrqKik8Hh8fT5aW\nlrRixQrJMbt27SI3NzdauHAhhYWFUVxcHPH5fJo/fz5t376dfv75Z7K1tZW06nn//fcl5yYkJFBo\naCjNnDmTANCAAQMkxaGe/k2ePJkGDhxIly5doujoaAoICKDevXtTYGAgRUdHv1CAg4ODCQCdO3eu\naz+k/8KIrgKQlZVFenp63SoSz0MsFlNrayuJRCLKyMigX3/9lfbv308mJia0du1ahXoglJGRQcbG\nxt3SmUMgEJC5uTklJiZ2uS1Zkp+fT8bGxnT27FkiIjpx4gQFBQVJ9ldXV9P3339PH374IU2dOpVc\nXFzI3NycANCNGzck3cDx3xojACS93ZYsWUIAJHUYAFD//v3po48+krxms9nPVNDj8/n0n//8R9L+\n6PPPP6eWlpYOx5SUlFCvXr0IAF25cqWLPyVGdBWClStX0oIFC2Ttxgvh8Xjk6elJ3t7etHDhQrla\neNAZt27dIgMDA0muaFfx7bff0ujRo7vUhryQlJRE5ubmtGDBAgoNDe0031soFFJ0dDTdvHlTcsEe\nNmxYh9nr+PHjJcf/OWunvb2d6urqqLGxkU6dOkWhoaHk4+NDurq69NlnnxGPx3vGXnV1NQUHB9OU\nKVNIIBDQ9evXae/evRQQEEAASFlZmfbs2UMffPBBl2YIMaKrABw4cIBYLNYzV2h5QiAQUGxsLI0Y\nMYJ27dola3demU8++eSVW4q/Ka6urt1SU0FeqK+vp+HDh5OKigppa2vT4MGD6ZdffqH6+nqKi4uj\nzMzMFy41X7FiBQ0cOJCKi4tp1KhRr3QnUlFRQQDoyJEjxOPx6JNPPqFp06Y999i6ujoaOnQoASAl\nJaUOAh8XF0c1NTUEgLy9vd96qf2LYERXASgvL6cJEybQsGHD5P4W/qeffuowO5F3kpKSyNDQsEtX\np82ePZtGjRrVZePLIyKRiIyNjQkAhYSEdBA3Gxsbcnd3p6tXr75SZbyXUV1dTWpqapLVbOnp6c8t\nel5aWkrJycmUn58vKSMZGRlJBw8e7HB3tmnTJomvy5cvp7CwMKn+7hjRVRBEIpGkFqo8c+zYsQ5x\nPEXAzc2NLl++3GXj79mz529TE/jPiMVi+s9//kPTpk0jHx8fsrS0JCsrKwoKCuogwocOHZI07Fy6\ndCn5+vqSr68vAaDExETKy8uj9evXk729/SvVYDAzMyMA5OXlJWnGefDgQdLT0yMnJydycHCg6dOn\nk5ubW4cFHH/1PTIyUhJLdnV1ldodESO6CkR6ejqZmJjIbZhBIBDQiBEj6MCBA7J25bWwsbGhS5cu\nddn4V69eJRsbmx7T+eBNeZpOFh0dTT/88AMtX76cAgIC6MiRIx0ehv1ZkJcvX97h9auUIj1z5gwd\nPHiQTp8+TWZmZtS3b1/icDh0+PBhIiKaOXMmTZgwgfz9/QkApaSkdDpeeHg4aWpqEgB68ODBW38O\njOgqGOPGjaP9+/fL2o1nEAgENGXKFBo7dqzC1WyYPXt2h9SmrsDPz4++/fbbLrWhyIjFYmpsbCQt\nLS0CQCdPniSBQCDJZHhR1bKXXchaWlooISGhQy+4trY2+vjjj6lPnz4SMb9169YLx8jMzJTU8/X1\n9X3r0qeM6CoYqampZGJi8spJ393F2rVrafTo0XJZEvJl3Llzh+zs7LrUxrlz52jkyJEv3C8Wi/8W\n3TFehaqqKomw5efnS+on/5Wn3SVMTU0pJiaG7t69S2fPnn1GFF1dXQnAMwJdWVlJFy9epM2bN7+w\nOt2fCQ8PJ0dHx7f+H2dEVwGZNm2aXFWmSkhIIA6Ho7Bl+b766iuaPHlyl9q4du0aeXt7v3D/iRMn\nCECHOsAMLyY6OprU1dUJAE2cOJH8/PwkD+6exnGJ/njIBoDMzc0pKipKhh7/P4zoKiClpaUE4I1b\nrEiTpqYmUldX77bVPNImOTmZzMzMnpvXKU3u3btHTk5Oz92XmZlJ6urqZGlp2e3LkxWF9PR02rx5\nM6WmphKPxyMAdOLEiQ6z2qcNN588eSLZlpSURC4uLnTw4EGaOHGiXDRk7Uw7mYI3coqpqSn8/f2x\nf//+DkVFZEFtbS3YbDbGjh0rUz/elBMnTmDOnDkwMjLqUjs6Ojp4/PjxM9tbWlrwzTffwMjICIcP\nH0ZqamqX+qGIREZGYuDAgfj9998xZswYGBsbY9y4cQgJCelQYSwsLAz79++HsbGxZJuysjJUVFTg\n7++PmJgYDBo0CLW1tVLzLSgoCNevX5faeMxMV47hcrnk5eVFQ4cOpaysLJn5UV5eTmw2W2b23xYb\nGxtKTU3tcjsRERE0bNgwyeuioiLasWMHOTk50ZQpU6ihoYFGjRpFAOSyR50sEAgEtHPnTlJRUaH0\n9HQi+uOuYNOmTc9dUr1ixQoyMjKiHTt2SD7DX375hQICAoiIqLGxkZydnaW6UAUAubu7v9KxQqGQ\nUlJSmPCCIiMUCiWFVKZPn06PHj3qdh9u3LhBHh4e3W5XGjwNjXTlgpO8vDz68ssvycDAQCIcRERB\nQUHk7e1Nv/76q+QBz7vvvktjx47tMl8Uifb2dkldhtcppp+VlUW+vr40aNAgunr1Kk2bNq3DCsll\ny5ZJNWf6l19+IQBUVVXV6XFPnjwhDw+PlxauYkRXQaivr6cFCxaQlZUVZWRkdKvtLVu20CeffNKt\nNqWFWCymXr16vfQH86aEh4cTh8OhVatWdSiHKRaLicVidSjxKBaLicPh9NgqZK9LSkoK6erq0qxZ\ns167FGZbWxtFRESQoaEh2dnZdfh+y8rKSE1NTaoX2peNJRaLJWIbGRnJiG5PQSwW08aNG7t9puTj\n40Px8fHdalOazJ8/n4KDg6U6plAopAULFpC1tfULRdTe3r5DUn5aWhrZ2NjI/TLv7qC5uZnc3d1p\n69atbzWOUCh8JlQjFArJxMSEQkNDX5iK1hWEhYXR2rVrqbW1lRHdnkR2djb169ev2+ylp6cTm83u\nsplid9DS0kJsNluqxU3WrVtHnp6enVZbmzJlCh06dEjy+l//+hetXr1aaj4oEgKBgG7fvk3btm0j\nd3d30tbWpk8++aTLLkA5OTk0efJksrW1faM7w5ycHBo2bBilpaW9kX1GdHsQjx8/JlNT026z5+Xl\nRT/++GO32esqVqxYQbNmzZLaeJs3b6YPPvjghfsTExNJVVWVKisrieiPuhpmZmYduuP+HWhqaqK4\nuDiysrIiGxsbmj59Ov3222/ddhFfsGABDRw48LXF/WnKJv7bHeN1YUS3B5GTk0P29vZdbqetrY12\n7NhBenp61Nzc3OX2upq6ujqysrKiCxcuSGW8xsZGAvDC3N8ZM2Z0WBKcnJzcrXco8kBbW5tEuGJi\nYmTig0gkot69e5Ozs/Nr52nfv39fUhry+PHjr3VuZ9rJ5OkqGAUFBbC3t++Ssevq6rB//34MGjQI\nWlpa2LBhA1JSUtC7d+8usded6Ojo4MMPP5Q0RXxbNDU1AQCNjY3P3W9ubo6amhrJ69jYWJk1ypQV\n5eXlAICioiJMmDBBJj4oKyvj6tWruHfvHqKiol7r3H79+qG1tRUnT57Ee++9Jz2fpDYSQ7eQl5cn\nddEVCoVYu3YtLC0tcf78eezcuRONjY2ora3tMoGXBfr6+qisrHzrcfh8PiIiIgD8v/j+lcDAQFy9\nehVEBIFAgNOnT2P8+PFvbVuRuHTpEkaMGAFLS0uZ+uHh4YGUlBRs3rwZkZGRr3WumpoagoODoa+v\nLzV/WFIbiaFbyM3NxeDBg6U65hdffIH79+8jNzcXJiYmUh1bnvD09MTJkyffaoyEhARMnToVvr6+\nSEpK6rAy6s8MHjwY7e3t8PDwQHFxMby8vODv7/9WthUNU1NTXLlyBWVlZTA1NZWpL15eXvj999/x\nzjvvoF+/fvDx8ZGZL4zoKhhcLhdTpkyR2ng1NTU4evQoSktLoa2tLbVx5REfHx88ePAAlZWVMDAw\neKMxzp49C2dnZ8TExHR6nIaGBtLT03Hx4kVYW1vD0dHxjewpMt999x0AIDU1VS5CKw4ODpg5cybO\nnTsnU9FlwgsKxuPHj184u3oTWCwWBAIBtLS0pDamvKKmpoYRI0bgxx9/fOMxlJSUMGrUqFc6VkVF\nBYGBgX9LwQUgiaE6OTnJ2JP/R0tLC6WlpTL1gRFdBSI5ORkCgQADBgyQ2pg//vgjBg0aBCUlJamN\nKc9s2bIF27dvx5UrV1773CdPnuC3337D0KFDu8CzngeHw8G8efMQGhoqa1ckBAUFIT4+XqY+MKKr\nQBQXF2PgwIFgsaQTFUpISMCWLVtw+PBhqYynCDg4OGDfvn1YtGgRRCLRK59XU1MDHx8f/OMf/0BA\nQEAXetiz2LBhA3766Sc0NTXJ2hUAQHZ2Nvr16ydTHxjRVSBKSkqgp6cnlbFqamowZ84cHDhwQK5u\n/7qDoKAg6OvrY+/eva90vFgsxvz58zF27FisW7fub3NXIA3YbDZsbGxeu5wlEaGpqQnl5eVSLW2a\nnJyM4cOHS228N4ERXQVCKBRK5WFXTk4OfH19ERQUJBcPOLobJSUlREREYNWqVWhtbe302La2Nkyf\nPh1lZWX43//9327ysGfx5ZdfYvfu3Z0eQ0S4efMmDhw4gNmzZ8PCwgKGhoZwdHSEp6cnli5dikeP\nHr21L0lJSXBzc3vrcd4GRnQVCFVVVTQ3N7/VGAKBALNnz8bs2bOxdetWKXmmeKioqHQquM3Nzfjt\nt9/g6+uL9vZ2XLhwoUcsEpEF2traL1xEAvwhhNbW1pgxYwZu374NZ2dnXLx4Ec3NzaipqcHGjRtR\nVVUFGxsbFBcXo62tDRMnTkR+fv5r+TF//nw0NzfLvhj/my5lY+h+3n33XTp16tQrH//gwQOyt7en\n6OhoqqmpocbGRvrggw9owoQJCtfNV9o8LcW3c+dOunLlCi1ZsoTs7e1JV1dXUuPV29ubjh49ylQF\ne0t0dHRoypQpRERUU1NDX3/9NTk5OZGhoSH179+fNDQ0KCIiotPPWSwW07p168jJyYkGDhxIADrU\n0H0Z169fp759+0qt2WtzczNduHDhhT53pp2M6CoI9+/fJyMjo9fqUlpcXCxZ+66iokIsFouCg4N7\nRC0FaRAREUH9+/cnOzs7Wr9+vaQ3V05ODpWUlMjavR7DTz/9RBYWFtSvXz/icDg0adIkSklJoeLi\nYsrIyOjQ76wzmpqayM3NTfI/DYBaWlpeep5YLKbx48fTgQMH3vatSLh9+zYBIC8vr+d2eGZEtwew\nePFiWrVq1Wufd/fuXdLR0aGSkpJXakHNwNAV8Pl8yszMlEp5zZycHFq1ahVpamqSp6fnM23X/0pq\naipZWlpKfbLx6aefEgDy9/d/poFsZ9qp9N8DnouSkpLMmyIyACkpKfD29n6jugsNDQ0wNzdHbGws\n/Pz8ushDBobuh4gwYMAA7Nq1S7JghYhQX18PXV1dEBHS0tKwb98+qKmpITw8XKr2xWIxLCwsUFpa\nCicnJ0RGRqKgoAAffvghVFRUXqidzDJgBaC+vh6DBw9+JcHNzMxEU1MTamtrkZeXh3//+98ICQlh\nBJehx6GkpIQtW7Zg6tSpcHZ2hr+/Py5duoQ7d+4gKioK3333HZqammBnZ4dNmzZJ3b6ysjIWLlyI\nxMRE9OnTB5MnT0ZZWRkmTZrUud/MTFf+yc3NhY+Pzyu1lTYxMQGPx0NgYCAsLS0xadIkjBo1Cioq\nKt3gKQND99PU1ISUlBQkJiaCxWLByMgIkZGRmDFjBubNm9dledW5ublwcnLCrl27EBAQgEGDBiEk\nJAQnTpzoVDsZ0VUANm/ejOLiYoSFhT13f0NDA86cOQM3Nzf4+/sjNjaWWarK8LeEx+Ph0KFDGDJk\nCNra2tDa2opp06ZJ3c65c+fw66+/QiAQICYmBhMmTICGhgb2798PJSWlTrWTCS8oABkZGejfvz+I\n6LlX7aioKMyZMwcAEBISgv79+3e3iwwMcsHDhw/xzTffYODAgTAyMkJcXBwmTpwIDQ0Nqdl48OAB\ngoODO+R537hxA6mpqa80q2ZmugrA0y8yMjISH3/88TP7s7Ky4OrqCuCPxQ+qqqrd6R4Dg9xARBg2\nbBjmzZsHLpeLlStXoq2tDWpqalIZv7S0FBMmTMD06dPR1NSEs2fPIjQ0FP7+/h0K2jMzXQXmz1+c\nra3tc485f/48hgwZgp07dzKCy/C3RklJCWvWrEFQUBD4fD62bdsmFcEtKyvDvn37EB4ejpkzZyI1\nNRVRUVEoLS197QLtzDJgOaewsBAaGhpwcnKCl5dXh31CoRAREREICwvD0qVLZVqYmYFBXhg9ejSK\niopQV1eHZcuWvfV4N2/ehIeHBxoaGpCSkoLa2lrw+XwcO3bsjTqtMOEFOeebb75BdnY2Tp069cy+\nNWvWICEhAcHBwZg3bx7U1dVl4CEDQ89GXV0dU6ZMwb59+3DhwgUsXLgQ9+/fB4fDeeE5THhBQSkp\nKcH69esB/FGApU+fPh32s1gslJeXQyAQSC1mxcDA0JGNGzfi6tWrMDMzQ//+/RETE9Op4L4MZqYr\nx4hEIpiZmWHixIk4ePDgM09GRSIR5syZg/Pnz6OkpISp8/o3QigUQklJicm/llM6004mpivHZGVl\nQUtLC4cOHXquoG7cuBFpaWmIiopiBPdvhqqqKlgsFnbs2CFrVxheEya8IMdoa2ujpaXlmfxcsViM\nRYsW4fjx40hNTYWVlZXsnGSQCfb29igoKICurq6sXWF4TZjwghwjEolgZ2eHH374ASNGjJBsLykp\ngYODA7hc7nNbiRcUFGD16tVobW1FZWUloqKiYGFh0Z2uMzD8rWHCCwqKiooK/Pz8sG/fPhQVFQH4\nQ1A//fRTtLS0YMWKFc89b+vWrYiOjkZMTAxu3rwpN00BGRgYmJmu3MPj8SS5gO+++y6uX78ODQ0N\nuLm5QSAQ4OLFi8+0kWltbUV9fT1UVFTAZrOZeC8DQzfDzHQVGGNjY0kn1cuXL6O1tRWnTp3CxYsX\nYWJigj59+uCdd97BtWvXJOf06tULRkZG4HA4jOAyMMgZzIM0BWDw4MEQCAQ4duwYIiIiEBQUBGdn\nZ0mpx8TExLduWMnAwNA9MOEFBaSlpQU3b96Euro6fHx8oKzM3LAwMMgTTD1dBgYGhm6EiekyMDAw\nyAmM6DIwMDB0I4zoMjAwMHQjjOgyMDAwdCOM6PZg0tLS8NVXXyEuLk7WrjAwMPwXJk+3B1FUVISE\nhATMnDmzw/a0tDQEBgbKyCsGBoY/w8x0ewC1tbVYsmQJHB0dJYK7bNky7N+/H1lZWcxMV04RiUTg\ncrnIyspCWVkZxGKxrF16JYqLi3H06FGUlpZ2epxIJEJ1dbXU7BYVFWHJkiWoq6uT2piygMnTVWAa\nGxuxZcsWHDhwABYWFrCyskJMTAyys7Ph7Owsa/cYngMR4fLly/juu+9w/fp16OrqQkdHB1VVVVBS\nUsKxY8fw7rvvdosf+fn5+PLLL7F9+3b079//pefU1NRg8+bNiIyMhJ+fH65du4ZJkyZh/vz50NXV\nRXNzM4qLi5GUlITo6GhUVFQAAPz8/BAcHAxTU1O88847kloh9+/fR1RUFNrb22FpaQk+n4+GhgYY\nGBigT58+yM3NRUlJCQQCAVpaWpCRkYHHjx8jJCQEq1evhlAoRHt7O5qamiASiSAWi8FisaCtrQ1n\nZ2eptl1/XZjFET2UUaNGoVevXjAzM8Pp06cxf/58eHp6IjAwkFmlJgcQEbKzsxEfHw8+n4+4uDjc\nuHEDxsbG+PbbbxEcHNyhHm5kZCTWrl0LXV1dODs7IyQkBFZWVrh06RIyMjLg4uICKysrGBkZQUtL\nC4MGDXppbQ2hUIhbt27hwIEDSE5OhpqaGiorK1FTUwNNTU24u7vj7t27UFNTA5/PB4vFgqqqKpqa\nmmBvbw+BQAA+n4/q6mqwWCxMnz4dK1asgKWlJWpra7Fnzx5ERUWhra0NvXv3hrm5Odzd3RESEgJr\na2toaGjg8OHDSElJQUFBAdLS0qCvrw8lJSUIBALMmDEDWlpaKC4uRq9evaCrq4vKyko0NDSgX79+\nsLS0hLq6Onr16gUTExM4ODhg8eLFkveipqYGTU1NqKioQEVFBQKBABUVFbh//z6ysrLQv39/mfwW\nGNHtIRARUlNTIRaL4eHhAXd3d2zYsAGrV6+Gq6srVq5cCXd3d1m72aMhIoSHhyMpKQnvv/8+xo0b\nBxUVFaipqaGhoQFJSUmIi4tDTk4OsrKy0KdPH7z33nvQ0tKCr68vxo8fDxUVlReKpVAoREZGBu7c\nuYOTJ0/iyZMn8PDwgJ+fHx48eAAul4vy8nI8evQIn3/+OVavXv3cccRiMVasWIGIiAiYm5vjfL+f\nQwAADmVJREFUn//8J8aNGwehUAhDQ0Ow2WwQEVRVVSESiVBZWYnevXtLZo+ampq4d+8eNDU1oaGh\nATabjfb2drDZ7Lf6/Nra2lBeXg6xWIy+fftCVVX1rcZ7Hu3t7fjyyy8RFxeHuro6uLu7w9raGpaW\nlrC2tkZNTQ14PB5CQkLg6uraJUWhGNHtIezYsQN79uxBe3s7PD09UVVVhfj4eNTX12P37t04fvw4\nZsyYgY0bN8raVZlBREhMTJTM2IYMGQIAuHv3LrhcLqysrFBRUYGSkhK0tLRAVVUVRkZGMDY2hqen\n5zM/QLFYjCdPniAhIQFZWVlIT08Hj8fDvHnzEB4ejuzsbOjo6GDSpEmIjY2Fra0txo4dC3d3dzg7\nO8PMzEzqP+r6+nqsX78ep0+fBpfLlWz7/vvvUVFRgcrKSqSnp0NPTw9Hjx6FqampVO0rEjweD1lZ\nWXj06BGKiorA5XKhqqoKExMTHD9+HO3t7ejbty8sLCwwd+5c+Pn5SSUswYiugtPc3Ix79+5h5cqV\n+J//+R94eXlJ/i5fviy5faquroabmxtWr16NuXPnytjrN6OtrQ3V1dUwMDBARUUFzp07hyFDhsDV\n1RU1NTUoKyuDUCiEk5MTqqqqkJOTg6KiIuTn5yMtLQ337t0Dm81Gnz59UFNTAysrKwgEApSWlmLA\ngAGIjY2Fh4cH+vXrBw0NDQgEApSXl0taaotEIjQ2NkIsFkMoFILH40FTUxNDhw6Fh4cH7O3tMXbs\n2A6dmfPz8xEbGwtXV1e88847Xf4Z+fn54caNGwgPD8fs2bORnZ2Njz/+GNbW1hg0aBAMDAxga2sL\nf3//LplJ9hSICFwuFzweD2lpaThy5AgKCwsREBAALS0tqKmpgcVigcViwcDAAPb29vDy8oKNjc1L\nL6SM6HYRixcvRk5ODhwdHaGlpYW+ffuira0Nn3322TPt0t+UnTt3YsmSJZLXDx8+hFAoxOLFi5Gd\nnY2FCxfiX//6l2R/Xl4ePD09UVtbq1BxXSLCqVOnMG/ePEl8rqysDKNHj0ZCQgJUVFSgrq4OMzMz\niEQi5OfnQ09PDy4uLrC2toaNjQ08PDzQv39/mJubA/jjNvPYsWPo06cPJk6cCHV19Wf6zT2lvb0d\nly9fljzYUlFRAYvFgpGRkdS+S2mxaNEi7N69G9HR0Xjy5Am+/fZbrFq1CosWLVKo71weKSoqwu3b\nt9Hc3AyBQACRSIT29nbJhfn27duoqqpCWlpapw8fO9POHp+nm5GRgV69esHR0RFKSkqoqqpCW1ub\npBsDEb12G+usrCy4urqCzWajuroa8fHxHfbX1NTgs88+Q2FhISorK2Fra4u6ujqsWrUK/v7+cHFx\ngUAgwHvvvQcjIyOoq6sDAHJycsDn82FlZQU1NTVoa2vDysoKpqamUFZWRklJCWxtbcHhcKClpQVl\nZWW0trZ2sO3g4AAHBwccP34c//jHP97ik+t6SkpKcPr0aaSlpSExMRF6enqIiYmBj48PMjMzUV1d\njYCAAAB/dMN4Kn5EhMLCQlhbW3cqMqqqqvj44487bHvRDEVVVVVhcpmDgoKQkZGB7du3w8LCAleu\nXIGLi4us3eoRWFlZvbDRKxHh66+/RkREBPT19d/YhkLPdGtra5GVlQWxWCy5nTQyMkLv3r3R2NiI\nuro6jBw5UnL81KlTcf36dZSVlUm2DRo0CIGBgbCwsEBRURGuXr2KkJAQ/POf/0RLSwuMjY2fsdvU\n1AQtLS24ubnByckJH3zwAfLy8hAWFoby8nKIRCKw2WzY2dmBzWajoKAAqqqqmDVrFng8HrhcLkQi\nES5cuIDGxkZoaGjAxsYGhYWF0NHRQVNTEwQCAVxdXWFqaorc3FwUFxfD0dERxsbGMDIygoWFBfz8\n/DBixAiJkAgEApSUlGDOnDlwcXGR6/bclZWVMDQ0hKGhITZt2gR/f3/JhZGBQV5obGzElStXcObM\nGSQlJUFTUxPx8fHPbQj7ZxQyvJCSkiKZwjc0NODOnTuorKxEa2srysvLce/ePVRVVcHFxQUsFgvN\nzc3Q19dHeXk5WlpaoKmpCV1dXdTV1aGyshJ8Pl8SIG9uboZYLIaenh4mTJgADoeDx48fw9zcHJ6e\nntiwYQOysrKgrq4OExMTmJubY+DAgVBWVkZZWRnq6urw6NEjZGZmAgDMzc1RXFwMIgKfz4eqqirU\n1NRe6X0SEWpra5GXlwcHBwfJFVQoFCIuLg58Ph92dnZwcXF5bnyOiPD48WNcvHgR69atg4qKCgID\nA/Hdd99BW1tbSt+GdHiaG5qcnIzz588jKioKa9euxfr162XtGgNDB8RiMU6ePIk1a9bA3NwcI0eO\nxPvvvw97e/tX+m0rlOgKBALcvHkTw4cPx6RJk8DlcmFsbAw3NzeYmZlBXV0dBgYGcHJygp2dXZfE\nsIgI7e3tUFJSwv3791FcXIz09HQoKyvD2NgY+vr64PP5klmrh4cHZsyYIVUf2tvbwefzIRQKJa14\nWCwWWltbcfbsWdy6dQv37t1DQUEBtLW14e/vj4ULF0pux2VBY2Mj8vLy8PjxY5SVlaG+vh7Nzc3g\n8XjIy8tDZmYmdHR04O3tjeHDhyM4OPilMwYGBlmwZs0a/PbbbwgNDcXYsWNf+3y5EN3KykoYGxtj\n1qxZ0NDQQE1NDerr6zFmzBgoKyvj0aNHSE9PR0pKCszNzaGlpYVTp079bdNdPvroI5w4cULyum/f\nvhCJRFBVVYW/vz/GjBkDJycn9OvXD5qamlKx+aKHTC+Cz+cjPz8fN2/eRGJiIuLi4mBlZQULCwuY\nmppCT08PvXv3hpGRkWS2zogsgyLQr18/rFu3Dh9++OEbnS8T0f3qq6/A4/EkS/+GDh0KdXV1aGpq\nIjAwEOPHjweLxcL58+ehoaEBKysruLi4wMfH52//wywrK8PixYsRHR0t2bZ7924sXLhQqnbEYjGO\nHDmC77//Hg8ePEBjYyPs7Owwfvx4fPXVV9DR0XnmnObmZnz66ae4ceMGysvLYW1tDS8vLwwbNgzj\nx4+HoaGhVH1kYJAFsbGxmDFjBoYOHQotLS2EhYW9VhaLTERXW1sbjY2N0NbWRkNDA4yMjJCQkIDD\nhw/j119/RWtrK/T19aGrqws2mw0NDQ1oamrC2dkZnp6ecHd3f+W4aE9j7969WLhwIVauXIkhQ4aA\nzWbD29v7lXMua2trce/ePfj6+j43/EJEKCgowOLFi1FRUYGvv/4aXl5e0NLSQk5ODrZu3QoOh4Ow\nsLBnzv39998xbNgwTJ8+Haampqirq0N9fT34fD7mzp37RrdiDAzygFAoxIYNGxAXF4e2tjbJMxsA\nuHHjBnx8fF55LJmIrkgkwpkzZxAfHw+hUAgjIyOEhoZK9j18+BCNjY0oLy9HTU0NRCIRGhoaEBMT\ng0uXLsHZ2RnZ2dlvZFvRqa+vx5EjR7B27VrY2NjA3NwchoaGsLOzw4ABA+Dl5SW5G6iurgaHw4Gm\npibYbDbU1NSQn58PAFiwYAH27t0rGbeiogK2trZoamqCiooKFixYgLlz56K6uhpcLheFhYXIzc1F\nbGwsBgwYgKtXrz7jW3t7O7Zt24acnBw0NDRAWVkZQqEQsbGxAIBz584xwsugcIjFYixbtgxXr17F\nnj17oKGhAVNTUxgaGr5RRo1cxHSf4unpidTU1A7bevfuDVtbW5SUlEjais+aNQvjxo2Tqm1FQyAQ\nIC0tDeXl5SgvL0d+fj7u3r2L27dvQ0NDA3Z2dujTpw+Sk5NRX1/f4VwTExOcOXMGXl5ekm08Hg+T\nJ0/G3bt3oaqqCoFAAA0NDWhra0NfXx8mJiawsbHB4MGDMXjwYPz888+4ffs2mpqaIBaLUV9fj5KS\nEjQ1NaFv377gcDjQ09MDh8OBgYEB2Gw2Zs+eDSMjo+7+qBgY3oqHDx/Czs4OZmZmiIqKgq+v71ul\nL8qV6La1tSEtLQ1RUVGIj4/HgwcPUFNTg4cPH8LCwoKJCb4CRISSkhIUFhairq4O1dXVKC0txePH\nj5GbmytJdxs5ciQWL14MLpeL9PR0ZGVlISsrCyUlJTA0NIS9vT2srKwkYQs+n4/6+nrweDyUlpZi\n3LhxCAwMhJ6eHpSVlaGpqQlzc3MYGBgw+bQMPY729nYcP34cmzZtQktLC4YNGwZvb294eHjA0dER\nenp6rzzWW4luRUUFDAwMUFZWBjU1NXA4HOTl5YHL5aK+vh4tLS0YOHDgG5VQ++yzzxAREYFdu3bB\n0dERo0ePZpYxSoGnonz06FHs2rULgwYNgqenJ1xcXODq6gpra+u/bbycgeFlEBHy8vKQlJSE5ORk\npKWloaCgAOrq6li8eDFsbGzA4XDg6ekJbW1t1NXVobW1FUZGRhL9eivR1dLSAovFgpKSEoRCIbS0\ntAD8kVKho6MDVVVV3L59G7W1tXB3d4eJiYlkxZSdnR1MTU0l69k1NTVRW1sLHo+H+vp6pKam4vbt\n22hra0Nubi4KCwuhr68viU2Wl5ejoqIC+vr6yM7O/ttnNTAwMMgGIsKdO3fwww8/oLq6GuXl5bhz\n5w4EAgF69eoFNTU1NDY2wsbGBnZ2doiJiXlz0RWLxaioqACbzYZYLEZhYSEcHByemZHyeDxkZmZK\n4o9cLhcFBQXg8XiSJ9yNjY3Q09ODiYkJdHR0wOfz0dTUhKamJtTU1IDFYkFNTe2ZFh9eXl64du0a\nMztjYGCQGxobG8FisSQrXZuamlBYWAgul4uJEyfKT0z3RRARysvL8eTJExgaGsLY2Pi1C9EwMDAw\nyANy9SCNgYGBoafTmXYyT60YGBgYuhFGdBkYGBi6kZcWMWfyMRkYGBhej85yejsVXSaey8DAwCBd\nmPACAwMDQzfCiC4DAwNDN8KILgMDA0M3woguAwMDQzfCiC4DAwNDN/J/jNcjUmD3+H0AAAAASUVO\nRK5CYII=\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = plt.axes(projection=ccrs.PlateCarree())\n", - "ax.add_feature(cfeature.COASTLINE)\n", - "ax.add_geometries(points, ccrs.PlateCarree())\n", - "ax" - ] - }, - { - "cell_type": "code", - "execution_count": 58, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 58, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ax.add_geometries(points, ccrs.PlateCarree())" - ] - }, - { - "cell_type": "code", - "execution_count": 50, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "plt.axes?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "name": "" - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/junit.xml b/junit.xml deleted file mode 100644 index 1ff53e7..0000000 --- a/junit.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/pylint_report.txt b/pylint_report.txt deleted file mode 100644 index 28ebbc8..0000000 --- a/pylint_report.txt +++ /dev/null @@ -1,1545 +0,0 @@ -pylint...................................................................Failed -- hook id: pylint -- exit code: 30 - -************* Module blitzortung -blitzortung/__init__.py:39:4: W0107: Unnecessary pass statement (unnecessary-pass) -blitzortung/__init__.py:47:0: E0401: Unable to import 'injector' (import-error) -blitzortung/__init__.py:47:0: C0413: Import "import injector" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:49:0: C0413: Import "from . import builder" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:50:0: C0413: Import "from . import config" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:51:0: C0413: Import "from . import data" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:52:0: C0413: Import "from . import dataimport" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:53:0: C0413: Import "from . import db" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:54:0: C0413: Import "from . import geom" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:55:0: C0413: Import "from . import util" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:56:0: C0413: Import "from . import base" should be placed at the top of the module (wrong-import-position) -blitzortung/__init__.py:65:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.base -blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.builder -blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -************* Module blitzortung.builder.base -blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.builder.strike -blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) -************* Module blitzortung.cache -blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.db -blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) -blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) -blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) -blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.cli.imprt -blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) -blitzortung/cli/imprt.py:25:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'stopit' (import-error) -blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) -blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/imprt.py:28:0: C0411: standard import "optparse.OptionParser" should be placed before third party imports "requests", "statsd", "stopit" (wrong-import-order) -************* Module blitzortung.cli.imprt_websocket -blitzortung/cli/imprt_websocket.py:58:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:15:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:40:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) -blitzortung/cli/imprt_websocket.py:44:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:50:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) -blitzortung/cli/imprt_websocket.py:39:15: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:76:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:76:13: W0613: Unused argument 'we' (unused-argument) -blitzortung/cli/imprt_websocket.py:80:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:80:13: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:86:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:91:0: W0613: Unused argument 'args' (unused-argument) -blitzortung/cli/imprt_websocket.py:104:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:105:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:129:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/imprt_websocket.py:111:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/imprt_websocket.py:15:0: C0411: third party import "websocket.WebSocketConnectionClosedException" should be placed before first party imports "blitzortung.builder", "blitzortung.data", "blitzortung.logger" (wrong-import-order) -blitzortung/cli/imprt_websocket.py:34:4: W0611: Unused import thread (unused-import) -blitzortung/cli/imprt_websocket.py:36:4: W0611: Unused _thread imported as thread (unused-import) -************* Module blitzortung.cli.start_webservice -blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) -blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.update -blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) -blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/update.py:24:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/update.py:25:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) -blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) -blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) -blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/update.py:26:0: C0411: standard import "optparse.OptionParser" should be placed before third party imports "requests", "statsd" (wrong-import-order) -************* Module blitzortung.cli.webservice -blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) -blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) -blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) -blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) -blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) -blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) -blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) -blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) -blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) -blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) -blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) -blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) -blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) -blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) -blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) -blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) -blitzortung/cli/webservice.py:33:4: W0611: Unused defer imported from twisted.internet (unused-import) -************* Module blitzortung.cli.webservice_insertlog -blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) -blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) -blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) -************* Module blitzortung.config -blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) -blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.convert -blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.data -blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) -blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) -blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) -blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) -blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) -blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) -blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) -blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:25:0: W0611: Unused Union imported from typing (unused-import) -************* Module blitzortung.dataimport.__init__ -blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) -************* Module blitzortung.dataimport -blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) -************* Module blitzortung.dataimport.base -blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) -blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) -blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) -blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.dataimport.strike -blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.db.__init__ -blitzortung/db/__init__.py:45:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/__init__.py:46:0: C0301: Line too long (104/100) (line-too-long) -************* Module blitzortung.db -blitzortung/db/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/__init__.py:27:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/__init__.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/__init__.py:29:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/__init__.py:30:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/__init__.py:37:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/__init__.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:45:47: W0621: Redefining name 'config' from outer scope (line 32) (redefined-outer-name) -blitzortung/db/__init__.py:51:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:52:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:57:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:58:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:60:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) -blitzortung/db/__init__.py:63:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:64:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:66:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) -blitzortung/db/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:70:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:72:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) -blitzortung/db/__init__.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:76:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:78:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) -blitzortung/db/__init__.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:82:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:84:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) -blitzortung/db/__init__.py:87:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:88:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:90:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) -blitzortung/db/__init__.py:93:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:94:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:96:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) -blitzortung/db/__init__.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:100:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:102:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) -blitzortung/db/__init__.py:27:0: C0411: third party import "psycopg2" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:28:0: C0411: third party import "psycopg2.pool" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:29:0: C0411: third party import "psycopg2.extras" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:30:0: C0411: third party import "psycopg2.extensions" should be placed before local import ".compat" (wrong-import-order) -************* Module blitzortung.db.compat -blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) -************* Module blitzortung.db.grid_result -blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.mapper -blitzortung/db/mapper.py:37:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/mapper.py:23:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/mapper.py:24:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/mapper.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/mapper.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:44:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/mapper.py:23:0: W0611: Unused import shapely.wkb (unused-import) -************* Module blitzortung.db.query -blitzortung/db/query.py:49:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query.py:102:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:131:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/db/query.py:168:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:267:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:304:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/db/query.py:25:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query.py:27:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:91:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/query.py:119:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:124:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) -blitzortung/db/query.py:127:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:141:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:146:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:151:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:168:42: C0321: More than one statement on a single line (multiple-statements) -blitzortung/db/query.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:187:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:194:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:216:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:224:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:232:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:249:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:288:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:327:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:330:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:334:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/db/query.py:22:0: W0611: Unused Tuple imported from typing (unused-import) -blitzortung/db/query.py:22:0: W0611: Unused MutableSequence imported from typing (unused-import) -blitzortung/db/query.py:22:0: W0611: Unused Sequence imported from typing (unused-import) -************* Module blitzortung.db.query_builder -blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) -blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.table -blitzortung/db/table.py:177:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/table.py:184:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:200:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/db/table.py:214:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/table.py:226:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/db/table.py:236:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/table.py:237:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:270:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/table.py:279:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:286:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/table.py:290:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:294:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/db/table.py:297:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/db/table.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/table.py:37:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/table.py:38:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/table.py:39:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/table.py:40:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/table.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:118:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:125:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:133:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:136:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:142:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/db/table.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:151:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:170:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:170:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:178:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:184:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:234:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:234:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:254:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:276:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) -blitzortung/db/table.py:277:8: W0621: Redefining name 'data' from outer scope (line 33) (redefined-outer-name) -blitzortung/db/table.py:286:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) -blitzortung/db/table.py:288:8: W0621: Redefining name 'data' from outer scope (line 33) (redefined-outer-name) -blitzortung/db/table.py:294:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:297:8: W0621: Redefining name 'query' from outer scope (line 30) (redefined-outer-name) -blitzortung/db/table.py:27:0: C0411: third party import "injector.inject" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" (wrong-import-order) -blitzortung/db/table.py:37:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) -blitzortung/db/table.py:38:0: C0411: third party import "psycopg2.pool" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) -blitzortung/db/table.py:39:0: C0411: third party import "psycopg2.extras" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) -blitzortung/db/table.py:40:0: C0411: third party import "psycopg2.extensions" should be placed before first party import "blitzortung.db.grid_result.build_grid_result" and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) -blitzortung/db/table.py:42:0: C0411: standard import "abc.ABCMeta" should be placed before third party imports "injector.inject", "psycopg2", "psycopg2.pool", "psycopg2.extras", "psycopg2.extensions", first party import "blitzortung.db.grid_result.build_grid_result", and local imports ".mapper", ".query", ".query_builder" (...) ".data", ".geom", "logger.get_logger_name" (wrong-import-order) -blitzortung/db/table.py:23:0: W0611: Unused import math (unused-import) -blitzortung/db/table.py:30:0: W0611: Unused import query (unused-import) -************* Module blitzortung.geom -blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) -blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) -blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:25:0: W0611: Unused Any imported from typing (unused-import) -************* Module blitzortung.gis.constants -blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) -************* Module blitzortung.gis.local_grid -blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) -blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.lock -blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) -blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.logger -blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service -blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -************* Module blitzortung.service.cache -blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.db -blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) -blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) -blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.general -blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.histogram -blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service.metrics -blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.strike -blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:27:0: W0611: Unused create_time_interval imported from general (unused-import) -************* Module blitzortung.service.strike_grid -blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.util -blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) -blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) -blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) -blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/util.py:25:0: W0611: Unused Union imported from typing (unused-import) -************* Module blitzortung.websocket -blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) -************* Module test_builder_base -tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) -************* Module test_builder_strike -tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) -tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) -tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) -tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) -tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) -tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) -tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) -************* Module tests.cli.test_update -tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) -tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) -tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) -tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) -tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) -tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) -tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) -tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) -tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) -tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) -tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) -tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) -tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) -************* Module tests.conftest -tests/conftest.py:43:0: C0301: Line too long (104/100) (line-too-long) -tests/conftest.py:92:0: C0301: Line too long (220/100) (line-too-long) -tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/conftest.py:5:0: E0401: Unable to import 'psycopg2' (import-error) -tests/conftest.py:6:0: E0401: Unable to import 'pyproj' (import-error) -tests/conftest.py:7:0: E0401: Unable to import 'pytest' (import-error) -tests/conftest.py:8:0: E0401: Unable to import 'testcontainers.postgres' (import-error) -tests/conftest.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:17:18: W0621: Redefining name 'now' from outer scope (line 12) (redefined-outer-name) -tests/conftest.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:28:17: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) -tests/conftest.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:43:23: W0621: Redefining name 'utm_north' from outer scope (line 33) (redefined-outer-name) -tests/conftest.py:43:34: W0621: Redefining name 'utm_south' from outer scope (line 38) (redefined-outer-name) -tests/conftest.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:67:24: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) -tests/conftest.py:72:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:91:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:91:22: W0621: Redefining name 'postgres_container' from outer scope (line 72) (redefined-outer-name) -tests/conftest.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:96:20: W0621: Redefining name 'connection_string' from outer scope (line 91) (redefined-outer-name) -tests/conftest.py:97:4: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) -tests/conftest.py:103:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:103:15: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) -tests/conftest.py:5:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:6:0: C0411: third party import "pyproj" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:7:0: C0411: third party import "pytest" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:8:0: C0411: third party import "testcontainers.postgres.PostgresContainer" should be placed before first party import "blitzortung.db" (wrong-import-order) -************* Module test_dataimport_base -tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -************* Module tests.db.test_db -tests/db/test_db.py:111:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:206:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:216:0: C0301: Line too long (119/100) (line-too-long) -tests/db/test_db.py:234:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db.py:252:0: C0301: Line too long (122/100) (line-too-long) -tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/db/test_db.py:6:0: E0401: Unable to import 'psycopg2' (import-error) -tests/db/test_db.py:7:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db.py:8:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db.py:9:0: E0401: Unable to import 'psycopg2.pool' (import-error) -tests/db/test_db.py:10:0: E0401: Unable to import 'testcontainers.postgres' (import-error) -tests/db/test_db.py:20:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:21:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -tests/db/test_db.py:22:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -tests/db/test_db.py:24:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:30:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) -tests/db/test_db.py:34:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:79:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:88:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:102:8: C0104: Disallowed name "foo" (disallowed-name) -tests/db/test_db.py:110:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:110:19: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:124:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:124:33: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:124:33: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:124:49: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:131:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:131:42: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:141:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:141:43: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:150:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:150:46: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:160:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:160:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:160:53: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:170:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:170:49: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:170:65: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:180:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:180:55: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:180:71: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:190:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:190:58: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:190:74: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:206:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:206:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:206:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:206:32: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:206:77: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:216:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:216:60: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:216:111: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:234:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:234:53: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:234:98: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:252:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:252:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:252:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:252:39: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:252:91: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:263:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:263:34: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:263:34: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:275:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:275:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:2:0: W0611: Unused import os (unused-import) -tests/db/test_db.py:9:0: W0611: Unused ThreadedConnectionPool imported from psycopg2.pool (unused-import) -tests/db/test_db.py:10:0: W0611: Unused PostgresContainer imported from testcontainers.postgres (unused-import) -************* Module tests.db.test_db_init -tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_mapper -tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -************* Module tests.db.test_db_query -tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_query_builder -tests/db/test_db_query_builder.py:65:0: C0301: Line too long (115/100) (line-too-long) -tests/db/test_db_query_builder.py:66:0: C0301: Line too long (103/100) (line-too-long) -tests/db/test_db_query_builder.py:79:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:80:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:85:0: C0301: Line too long (116/100) (line-too-long) -tests/db/test_db_query_builder.py:109:0: C0301: Line too long (110/100) (line-too-long) -tests/db/test_db_query_builder.py:115:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:116:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:134:0: C0301: Line too long (199/100) (line-too-long) -tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'shapely' (import-error) -tests/db/test_db_query_builder.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query_builder.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:34:15: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:34:25: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) -tests/db/test_db_query_builder.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:39:22: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:39:22: W0613: Unused argument 'end_time' (unused-argument) -tests/db/test_db_query_builder.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:49:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:53:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:59:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:59:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:59:69: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:73:45: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:57: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:67: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:98:62: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:74: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:84: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:100:8: W0612: Unused variable 'query' (unused-variable) -tests/db/test_db_query_builder.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:103:66: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:103:78: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:103:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:123:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:129:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_query_builder.py:129:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/db/test_db_query_builder.py:129:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:69: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:47: W0613: Unused argument 'start_time' (unused-argument) -tests/db/test_db_query_builder.py:24:0: W0611: Unused import shapely (unused-import) -************* Module tests.db.test_db_table -tests/db/test_db_table.py:124:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:133:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:142:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:24:0: W0611: Unused import pytest (unused-import) -************* Module tests.gis.test_local_grid -tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) -tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) -************* Module tests.service.test_general -tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.service.test_histogram -tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_metrics -tests/service/test_metrics.py:60:0: C0301: Line too long (127/100) (line-too-long) -tests/service/test_metrics.py:63:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_metrics.py:81:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_metrics.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_metrics.py:20:22: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:24:52: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:40:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_metrics.py:40:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_metrics.py:40:47: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:60:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:60:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:60:68: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:81:62: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:2:0: C0411: standard import "unittest.mock.Mock" should be placed before third party import "pytest" (wrong-import-order) -************* Module tests.service.test_service_db -tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) -tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) -tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) -tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) -************* Module tests.service.test_service_init -tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) -tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) -tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) -tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) -tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_strike_grid -tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) -tests/service/test_strike_grid.py:51:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:60:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:65:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:66:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:91:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:119:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:139:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:148:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:153:0: C0301: Line too long (125/100) (line-too-long) -tests/service/test_strike_grid.py:154:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:178:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:202:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_strike_grid.py:15:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:20:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:25:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:32:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:51:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:51:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:51:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:51:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:51:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) -tests/service/test_strike_grid.py:51:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:72:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:72:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:91:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:91:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:122:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:125:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:139:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:139:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:139:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:139:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:139:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) -tests/service/test_strike_grid.py:139:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:148:25: W0612: Unused variable 'state' (unused-variable) -tests/service/test_strike_grid.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:159:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:159:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:178:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:178:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:11:0: W0611: Unused time_interval imported from tests.conftest (unused-import) -************* Module tests.service.test_strikes -tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strikes.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strikes.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:35:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:35:33: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:39:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_strikes.py:39:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_strikes.py:39:20: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) -tests/service/test_strikes.py:39:35: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:39:50: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:39:65: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_strikes.py:39:77: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:39:50: W0613: Unused argument 'query_builder' (unused-argument) -tests/service/test_strikes.py:39:65: W0613: Unused argument 'connection' (unused-argument) -tests/service/test_strikes.py:39:77: W0613: Unused argument 'strike_mapper' (unused-argument) -tests/service/test_strikes.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:42:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_strikes.py:42:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_strikes.py:42:31: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:42:46: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:42:61: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_strikes.py:42:73: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) -tests/service/test_strikes.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:56:44: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:56:59: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:77:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:77:50: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:77:65: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:77:50: W0613: Unused argument 'time_interval' (unused-argument) -tests/service/test_strikes.py:85:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:85:54: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:9:0: W0611: Unused time_interval imported from tests.conftest (unused-import) -************* Module tests.test_base -tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_builder -tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) -tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) -tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) -tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) -tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) -tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_cache -tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) -tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_config -tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) -tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) -tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) -tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) -************* Module tests.test_convert -tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_data -tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) -tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) -tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) -tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) -tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) -tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) -tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) -tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) -tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) -tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.test_data_benchmark -tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) -tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) -************* Module tests.test_dataimport -tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) -tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) -tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) -************* Module tests.test_geom -tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) -tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) -tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) -tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) -tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_lock -tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.test_util -tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) -tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) -tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) -tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) -tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_websocket -tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) -tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) -tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) - ------------------------------------------------------------------- -Your code has been rated at 6.19/10 (previous run: 6.19/10, +0.00) - diff --git a/pylint_report_2.txt b/pylint_report_2.txt deleted file mode 100644 index 743be4a..0000000 --- a/pylint_report_2.txt +++ /dev/null @@ -1,1513 +0,0 @@ -pylint...................................................................Failed -- hook id: pylint -- exit code: 30 - -************* Module blitzortung -blitzortung/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:54:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:58:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.base -blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.builder -blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -************* Module blitzortung.builder.base -blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.builder.strike -blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) -************* Module blitzortung.cache -blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.db -blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) -blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) -blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) -blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.cli.imprt -blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) -blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt.py:28:0: E0401: Unable to import 'stopit' (import-error) -blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) -blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.imprt_websocket -blitzortung/cli/imprt_websocket.py:53:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:11:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:35:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) -blitzortung/cli/imprt_websocket.py:39:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:45:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) -blitzortung/cli/imprt_websocket.py:34:15: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:71:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:71:13: W0613: Unused argument 'we' (unused-argument) -blitzortung/cli/imprt_websocket.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:75:13: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:86:0: W0613: Unused argument 'args' (unused-argument) -blitzortung/cli/imprt_websocket.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:100:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:124:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/imprt_websocket.py:106:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.start_webservice -blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) -blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.update -blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) -blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/update.py:25:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/update.py:26:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) -blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) -blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) -blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.webservice -blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) -blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) -blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) -blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) -blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) -blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) -blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) -blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) -blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) -blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) -blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) -blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) -blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) -blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) -blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) -blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) -blitzortung/cli/webservice.py:33:4: W0611: Unused defer imported from twisted.internet (unused-import) -************* Module blitzortung.cli.webservice_insertlog -blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) -blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) -blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) -************* Module blitzortung.config -blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) -blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.convert -blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.data -blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) -blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) -blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) -blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) -blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) -blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) -blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) -blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.dataimport.__init__ -blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) -************* Module blitzortung.dataimport -blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) -************* Module blitzortung.dataimport.base -blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) -blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) -blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) -blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.dataimport.strike -blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.db.__init__ -blitzortung/db/__init__.py:45:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/__init__.py:46:0: C0301: Line too long (104/100) (line-too-long) -************* Module blitzortung.db -blitzortung/db/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/__init__.py:27:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/__init__.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/__init__.py:29:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/__init__.py:30:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/__init__.py:37:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/__init__.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:45:47: W0621: Redefining name 'config' from outer scope (line 32) (redefined-outer-name) -blitzortung/db/__init__.py:51:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:52:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:57:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:58:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:60:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) -blitzortung/db/__init__.py:63:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:64:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:66:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) -blitzortung/db/__init__.py:69:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:70:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:72:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) -blitzortung/db/__init__.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:76:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:78:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) -blitzortung/db/__init__.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:82:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:84:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) -blitzortung/db/__init__.py:87:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:88:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:90:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) -blitzortung/db/__init__.py:93:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:94:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:96:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) -blitzortung/db/__init__.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:100:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:102:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) -blitzortung/db/__init__.py:27:0: C0411: third party import "psycopg2" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:28:0: C0411: third party import "psycopg2.pool" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:29:0: C0411: third party import "psycopg2.extras" should be placed before local import ".compat" (wrong-import-order) -blitzortung/db/__init__.py:30:0: C0411: third party import "psycopg2.extensions" should be placed before local import ".compat" (wrong-import-order) -************* Module blitzortung.db.compat -blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) -************* Module blitzortung.db.grid_result -blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.mapper -blitzortung/db/mapper.py:37:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/mapper.py:23:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/mapper.py:24:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/mapper.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/mapper.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:44:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/mapper.py:23:0: W0611: Unused import shapely.wkb (unused-import) -************* Module blitzortung.db.query -blitzortung/db/query.py:48:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query.py:101:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:130:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/db/query.py:167:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/query.py:265:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:302:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:23:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query.py:26:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:83:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:90:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/query.py:118:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:123:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) -blitzortung/db/query.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:167:42: C0321: More than one statement on a single line (multiple-statements) -blitzortung/db/query.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:186:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:193:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:215:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:223:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:227:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:231:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:248:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:287:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:326:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:329:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:343:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:333:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.db.query_builder -blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) -blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.table -blitzortung/db/table.py:173:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/table.py:180:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:196:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/db/table.py:210:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/table.py:222:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/db/table.py:232:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/table.py:233:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:266:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/table.py:275:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:282:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/table.py:286:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:290:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/db/table.py:293:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/db/table.py:25:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/table.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/table.py:27:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/table.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/table.py:29:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/table.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:113:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:114:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:121:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:138:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/db/table.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:166:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:166:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:174:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:230:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:230:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:273:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) -blitzortung/db/table.py:284:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) -blitzortung/db/table.py:290:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.geom -blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) -blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) -blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.gis.constants -blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) -************* Module blitzortung.gis.local_grid -blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) -blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.lock -blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) -blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.logger -blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service -blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -************* Module blitzortung.service.cache -blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.db -blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) -blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) -blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.general -blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.histogram -blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service.metrics -blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.strike -blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:27:0: W0611: Unused create_time_interval imported from general (unused-import) -************* Module blitzortung.service.strike_grid -blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.util -blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) -blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) -blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) -blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.websocket -blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) -************* Module test_builder_base -tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) -************* Module test_builder_strike -tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) -tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) -tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) -tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) -tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) -tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) -tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) -************* Module tests.cli.test_update -tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) -tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) -tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) -tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) -tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) -tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) -tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) -tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) -tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) -tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) -tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) -tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) -tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) -************* Module tests.conftest -tests/conftest.py:43:0: C0301: Line too long (104/100) (line-too-long) -tests/conftest.py:92:0: C0301: Line too long (220/100) (line-too-long) -tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/conftest.py:5:0: E0401: Unable to import 'psycopg2' (import-error) -tests/conftest.py:6:0: E0401: Unable to import 'pyproj' (import-error) -tests/conftest.py:7:0: E0401: Unable to import 'pytest' (import-error) -tests/conftest.py:8:0: E0401: Unable to import 'testcontainers.postgres' (import-error) -tests/conftest.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:17:18: W0621: Redefining name 'now' from outer scope (line 12) (redefined-outer-name) -tests/conftest.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:28:17: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) -tests/conftest.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:43:23: W0621: Redefining name 'utm_north' from outer scope (line 33) (redefined-outer-name) -tests/conftest.py:43:34: W0621: Redefining name 'utm_south' from outer scope (line 38) (redefined-outer-name) -tests/conftest.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:67:24: W0621: Redefining name 'utm_eu' from outer scope (line 23) (redefined-outer-name) -tests/conftest.py:72:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:91:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:91:22: W0621: Redefining name 'postgres_container' from outer scope (line 72) (redefined-outer-name) -tests/conftest.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:96:20: W0621: Redefining name 'connection_string' from outer scope (line 91) (redefined-outer-name) -tests/conftest.py:97:4: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) -tests/conftest.py:103:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:103:15: W0621: Redefining name 'connection_pool' from outer scope (line 96) (redefined-outer-name) -tests/conftest.py:5:0: C0411: third party import "psycopg2" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:6:0: C0411: third party import "pyproj" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:7:0: C0411: third party import "pytest" should be placed before first party import "blitzortung.db" (wrong-import-order) -tests/conftest.py:8:0: C0411: third party import "testcontainers.postgres.PostgresContainer" should be placed before first party import "blitzortung.db" (wrong-import-order) -************* Module test_dataimport_base -tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -************* Module tests.db.test_db -tests/db/test_db.py:111:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:206:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:216:0: C0301: Line too long (119/100) (line-too-long) -tests/db/test_db.py:234:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db.py:252:0: C0301: Line too long (122/100) (line-too-long) -tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/db/test_db.py:6:0: E0401: Unable to import 'psycopg2' (import-error) -tests/db/test_db.py:7:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db.py:8:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db.py:9:0: E0401: Unable to import 'psycopg2.pool' (import-error) -tests/db/test_db.py:10:0: E0401: Unable to import 'testcontainers.postgres' (import-error) -tests/db/test_db.py:20:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:21:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -tests/db/test_db.py:22:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -tests/db/test_db.py:24:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:30:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) -tests/db/test_db.py:34:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:79:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:88:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:102:8: C0104: Disallowed name "foo" (disallowed-name) -tests/db/test_db.py:110:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:110:19: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:124:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:124:33: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:124:33: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:124:49: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:131:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:131:42: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:141:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:141:43: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:150:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:150:46: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:160:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:160:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:160:53: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:170:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:170:49: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:170:65: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:180:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:180:55: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:180:71: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:190:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:190:58: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:190:74: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:206:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:206:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:206:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:206:32: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:206:77: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:216:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:216:60: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:216:111: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:234:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:234:53: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:234:98: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:252:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:252:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:252:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:252:39: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:252:91: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:263:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:263:34: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:263:34: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:275:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:275:37: W0621: Redefining name 'strike_factory' from outer scope (line 110) (redefined-outer-name) -tests/db/test_db.py:2:0: W0611: Unused import os (unused-import) -tests/db/test_db.py:9:0: W0611: Unused ThreadedConnectionPool imported from psycopg2.pool (unused-import) -tests/db/test_db.py:10:0: W0611: Unused PostgresContainer imported from testcontainers.postgres (unused-import) -************* Module tests.db.test_db_init -tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_mapper -tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -************* Module tests.db.test_db_query -tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_query_builder -tests/db/test_db_query_builder.py:65:0: C0301: Line too long (115/100) (line-too-long) -tests/db/test_db_query_builder.py:66:0: C0301: Line too long (103/100) (line-too-long) -tests/db/test_db_query_builder.py:79:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:80:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:85:0: C0301: Line too long (116/100) (line-too-long) -tests/db/test_db_query_builder.py:109:0: C0301: Line too long (110/100) (line-too-long) -tests/db/test_db_query_builder.py:115:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:116:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:134:0: C0301: Line too long (199/100) (line-too-long) -tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'shapely' (import-error) -tests/db/test_db_query_builder.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query_builder.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:34:15: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:34:25: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) -tests/db/test_db_query_builder.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:39:22: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:39:22: W0613: Unused argument 'end_time' (unused-argument) -tests/db/test_db_query_builder.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:49:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:53:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:59:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:59:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:59:69: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:73:45: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:57: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:73:67: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:98:62: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:74: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:98:84: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:100:8: W0612: Unused variable 'query' (unused-variable) -tests/db/test_db_query_builder.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:103:66: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:103:78: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:103:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:123:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:129:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_query_builder.py:129:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/db/test_db_query_builder.py:129:47: W0621: Redefining name 'start_time' from outer scope (line 34) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:59: W0621: Redefining name 'end_time' from outer scope (line 44) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:69: W0621: Redefining name 'interval_duration' from outer scope (line 39) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:88: W0621: Redefining name 'srid' from outer scope (line 49) (redefined-outer-name) -tests/db/test_db_query_builder.py:129:47: W0613: Unused argument 'start_time' (unused-argument) -tests/db/test_db_query_builder.py:24:0: W0611: Unused import shapely (unused-import) -************* Module tests.db.test_db_table -tests/db/test_db_table.py:124:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:133:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:142:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:24:0: W0611: Unused import pytest (unused-import) -************* Module tests.gis.test_local_grid -tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) -tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) -************* Module tests.service.test_general -tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.service.test_histogram -tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_metrics -tests/service/test_metrics.py:60:0: C0301: Line too long (127/100) (line-too-long) -tests/service/test_metrics.py:63:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_metrics.py:81:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_metrics.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_metrics.py:20:22: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:24:52: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:40:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_metrics.py:40:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_metrics.py:40:47: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:60:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:60:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:60:68: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:81:62: W0621: Redefining name 'mock_statsd' from outer scope (line 8) (redefined-outer-name) -tests/service/test_metrics.py:2:0: C0411: standard import "unittest.mock.Mock" should be placed before third party import "pytest" (wrong-import-order) -************* Module tests.service.test_service_db -tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) -tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) -tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) -tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) -************* Module tests.service.test_service_init -tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) -tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) -tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) -tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) -tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_strike_grid -tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) -tests/service/test_strike_grid.py:51:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:60:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:65:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:66:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:91:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:119:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:139:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:148:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:153:0: C0301: Line too long (125/100) (line-too-long) -tests/service/test_strike_grid.py:154:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:178:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:202:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_strike_grid.py:15:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:20:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:25:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:32:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:51:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:51:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:51:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:51:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:51:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) -tests/service/test_strike_grid.py:51:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:72:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:72:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:91:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:91:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:122:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:125:18: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:139:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:139:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:139:61: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:139:76: W0621: Redefining name 'query_builder' from outer scope (line 15) (redefined-outer-name) -tests/service/test_strike_grid.py:139:91: W0621: Redefining name 'connection' from outer scope (line 20) (redefined-outer-name) -tests/service/test_strike_grid.py:139:103: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:148:25: W0612: Unused variable 'state' (unused-variable) -tests/service/test_strike_grid.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:159:37: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:159:77: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:178:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:178:44: W0621: Redefining name 'statsd_client' from outer scope (line 25) (redefined-outer-name) -tests/service/test_strike_grid.py:178:84: W0621: Redefining name 'time_interval' from outer scope (line 11) (redefined-outer-name) -tests/service/test_strike_grid.py:11:0: W0611: Unused time_interval imported from tests.conftest (unused-import) -************* Module tests.service.test_strikes -tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strikes.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:28:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strikes.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:35:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:35:33: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:39:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_strikes.py:39:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_strikes.py:39:20: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) -tests/service/test_strikes.py:39:35: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:39:50: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:39:65: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_strikes.py:39:77: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:39:50: W0613: Unused argument 'query_builder' (unused-argument) -tests/service/test_strikes.py:39:65: W0613: Unused argument 'connection' (unused-argument) -tests/service/test_strikes.py:39:77: W0613: Unused argument 'strike_mapper' (unused-argument) -tests/service/test_strikes.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:42:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_strikes.py:42:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_strikes.py:42:31: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:42:46: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_strikes.py:42:61: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_strikes.py:42:73: W0621: Redefining name 'statsd_client' from outer scope (line 23) (redefined-outer-name) -tests/service/test_strikes.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:56:44: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:56:59: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:77:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:77:50: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:77:65: W0621: Redefining name 'strike_mapper' from outer scope (line 28) (redefined-outer-name) -tests/service/test_strikes.py:77:50: W0613: Unused argument 'time_interval' (unused-argument) -tests/service/test_strikes.py:85:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:85:54: W0621: Redefining name 'time_interval' from outer scope (line 9) (redefined-outer-name) -tests/service/test_strikes.py:9:0: W0611: Unused time_interval imported from tests.conftest (unused-import) -************* Module tests.test_base -tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_builder -tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) -tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) -tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) -tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) -tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) -tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_cache -tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) -tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_config -tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) -tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) -tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) -tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) -************* Module tests.test_convert -tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_data -tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) -tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) -tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) -tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) -tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) -tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) -tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) -tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) -tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) -tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.test_data_benchmark -tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) -tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) -************* Module tests.test_dataimport -tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) -tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) -tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) -************* Module tests.test_geom -tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) -tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) -tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) -tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) -tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_lock -tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.test_util -tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) -tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) -tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) -tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) -tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_websocket -tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) -tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) -tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) - ------------------------------------------------------------------- -Your code has been rated at 6.25/10 (previous run: 6.19/10, +0.05) - diff --git a/pylint_report_3.txt b/pylint_report_3.txt deleted file mode 100644 index 7a26cdf..0000000 --- a/pylint_report_3.txt +++ /dev/null @@ -1,1478 +0,0 @@ -pylint...................................................................Failed -- hook id: pylint -- exit code: 30 - -************* Module blitzortung -blitzortung/__init__.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:54:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/__init__.py:58:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.base -blitzortung/base.py:68:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/base.py:76:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/base.py:26:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/base.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/base.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:64:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:77:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/base.py:88:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/base.py:92:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.builder -blitzortung/builder/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -************* Module blitzortung.builder.base -blitzortung/builder/base.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:28:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/builder/base.py:32:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:50:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/builder/base.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/base.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.builder.strike -blitzortung/builder/strike.py:60:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/builder/strike.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:67:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/builder/strike.py:105:12: W0707: Consider explicitly re-raising using 'raise BuilderError(e) from e' (raise-missing-from) -************* Module blitzortung.cache -blitzortung/cache.py:138:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cache.py:24:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:46:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cache.py:46:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/cache.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:105:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:117:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cache.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.db -blitzortung/cli/db.py:51:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/db.py:54:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/db.py:192:0: C0301: Line too long (114/100) (line-too-long) -blitzortung/cli/db.py:29:0: E0401: Unable to import 'shapely.wkt' (import-error) -blitzortung/cli/db.py:30:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/cli/db.py:46:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:56:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/db.py:57:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:84:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:93:4: W0702: No exception type(s) specified (bare-except) -blitzortung/cli/db.py:145:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:187:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/db.py:192:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:208:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/db.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/db.py:219:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.cli.imprt -blitzortung/cli/imprt.py:55:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/cli/imprt.py:79:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/imprt.py:121:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/cli/imprt.py:139:0: C0301: Line too long (123/100) (line-too-long) -blitzortung/cli/imprt.py:26:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/imprt.py:27:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt.py:28:0: E0401: Unable to import 'stopit' (import-error) -blitzortung/cli/imprt.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:50:0: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/imprt.py:78:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:86:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:92:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:96:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:100:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:110:31: W1202: Use lazy % formatting in logging functions (logging-format-interpolation) -blitzortung/cli/imprt.py:110:31: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/imprt.py:117:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt.py:125:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.imprt_websocket -blitzortung/cli/imprt_websocket.py:53:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/cli/imprt_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/imprt_websocket.py:9:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/imprt_websocket.py:10:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:11:0: E0401: Unable to import 'websocket' (import-error) -blitzortung/cli/imprt_websocket.py:28:0: C0103: Constant name "strike_db" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:30:0: C0103: Constant name "strike_count" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/cli/imprt_websocket.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:35:4: W0602: Using global for 'strike_db' but no assignment is done (global-variable-not-assigned) -blitzortung/cli/imprt_websocket.py:39:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:45:8: C0415: Import outside toplevel (traceback) (import-outside-toplevel) -blitzortung/cli/imprt_websocket.py:34:15: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:71:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:71:13: W0613: Unused argument 'we' (unused-argument) -blitzortung/cli/imprt_websocket.py:75:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:75:13: W0613: Unused argument 'ws' (unused-argument) -blitzortung/cli/imprt_websocket.py:81:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:86:0: W0613: Unused argument 'args' (unused-argument) -blitzortung/cli/imprt_websocket.py:99:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/imprt_websocket.py:100:4: W0603: Using the global statement (global-statement) -blitzortung/cli/imprt_websocket.py:124:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/imprt_websocket.py:106:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.start_webservice -blitzortung/cli/start_webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/start_webservice.py:4:0: E0401: Unable to import 'twisted.scripts.twistd' (import-error) -blitzortung/cli/start_webservice.py:7:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.cli.update -blitzortung/cli/update.py:203:0: C0325: Unnecessary parens after 'not' keyword (superfluous-parens) -blitzortung/cli/update.py:278:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/cli/update.py:25:0: E0401: Unable to import 'requests' (import-error) -blitzortung/cli/update.py:26:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/update.py:57:4: C0415: Import outside toplevel (json) (import-outside-toplevel) -blitzortung/cli/update.py:58:4: C0415: Import outside toplevel (blitzortung.builder.Strike) (import-outside-toplevel) -blitzortung/cli/update.py:89:19: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:147:0: R0914: Too many local variables (18/15) (too-many-locals) -blitzortung/cli/update.py:289:11: W0718: Catching too general exception Exception (broad-exception-caught) -blitzortung/cli/update.py:267:14: W0612: Unused variable 'args' (unused-variable) -************* Module blitzortung.cli.webservice -blitzortung/cli/webservice.py:97:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:113:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:142:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:145:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice.py:146:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice.py:150:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:156:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:162:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:167:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/cli/webservice.py:173:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:179:0: C0301: Line too long (120/100) (line-too-long) -blitzortung/cli/webservice.py:186:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:192:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/cli/webservice.py:199:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:200:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:203:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/cli/webservice.py:204:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:207:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice.py:215:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:217:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:225:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:241:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:250:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/cli/webservice.py:258:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:260:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:268:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:288:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/cli/webservice.py:297:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/cli/webservice.py:305:0: C0301: Line too long (130/100) (line-too-long) -blitzortung/cli/webservice.py:307:0: C0301: Line too long (174/100) (line-too-long) -blitzortung/cli/webservice.py:315:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/cli/webservice.py:332:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/cli/webservice.py:347:0: C0301: Line too long (129/100) (line-too-long) -blitzortung/cli/webservice.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/cli/webservice.py:12:0: E0401: Unable to import 'twisted.application' (import-error) -blitzortung/cli/webservice.py:13:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/cli/webservice.py:14:0: E0401: Unable to import 'twisted.internet.error' (import-error) -blitzortung/cli/webservice.py:15:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/cli/webservice.py:16:0: E0401: Unable to import 'twisted.python.log' (import-error) -blitzortung/cli/webservice.py:17:0: E0401: Unable to import 'twisted.python.logfile' (import-error) -blitzortung/cli/webservice.py:18:0: E0401: Unable to import 'twisted.python.util' (import-error) -blitzortung/cli/webservice.py:19:0: E0401: Unable to import 'twisted.web' (import-error) -blitzortung/cli/webservice.py:20:0: E0401: Unable to import 'txjsonrpc_ng.web' (import-error) -blitzortung/cli/webservice.py:21:0: E0401: Unable to import 'txjsonrpc_ng.web.data' (import-error) -blitzortung/cli/webservice.py:22:0: E0401: Unable to import 'txjsonrpc_ng.web.jsonrpc' (import-error) -blitzortung/cli/webservice.py:43:0: C0413: Import "import blitzortung.cache" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:44:0: C0413: Import "import blitzortung.config" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:45:0: C0413: Import "import blitzortung.db" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:46:0: C0413: Import "import blitzortung.geom" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:47:0: C0413: Import "import blitzortung.service" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:48:0: C0413: Import "from blitzortung.db.query import TimeInterval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:49:0: C0413: Import "from blitzortung.service.db import create_connection_pool" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:50:0: C0413: Import "from blitzortung.service.general import create_time_interval" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:51:0: C0413: Import "from blitzortung.service.strike_grid import GridParameters" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice.py:60:0: R0902: Too many instance attributes (13/7) (too-many-instance-attributes) -blitzortung/cli/webservice.py:84:43: W0621: Redefining name 'log_directory' from outer scope (line 413) (redefined-outer-name) -blitzortung/cli/webservice.py:113:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice.py:124:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/cli/webservice.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:142:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:136:4: R1711: Useless return at end of function or method (useless-return) -blitzortung/cli/webservice.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:145:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:145:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:158:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:162:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:175:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:179:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/cli/webservice.py:179:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:179:4: R0914: Too many local variables (16/15) (too-many-locals) -blitzortung/cli/webservice.py:194:36: W0108: Lambda may not be necessary (unnecessary-lambda) -blitzortung/cli/webservice.py:199:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:199:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:199:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:203:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:203:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:203:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:207:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/cli/webservice.py:207:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:213:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:218:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:235:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:250:4: R0913: Too many arguments (9/5) (too-many-arguments) -blitzortung/cli/webservice.py:250:4: R0917: Too many positional arguments (9/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:261:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:280:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:297:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:297:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/cli/webservice.py:297:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/cli/webservice.py:303:11: R0916: Too many boolean expressions in if statement (6/5) (too-many-boolean-expressions) -blitzortung/cli/webservice.py:308:20: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:326:16: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice.py:364:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:371:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:377:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/cli/webservice.py:395:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:386:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/cli/webservice.py:424:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:435:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice.py:33:4: C0412: Imports from package twisted are not grouped (ungrouped-imports) -************* Module blitzortung.cli.webservice_insertlog -blitzortung/cli/webservice_insertlog.py:33:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:34:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:77:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:136:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/cli/webservice_insertlog.py:15:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: E0401: Unable to import 'geoip2.database' (import-error) -blitzortung/cli/webservice_insertlog.py:23:0: C0413: Import "import geoip2.database" should be placed at the top of the module (wrong-import-position) -blitzortung/cli/webservice_insertlog.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/cli/webservice_insertlog.py:27:0: R0914: Too many local variables (37/15) (too-many-locals) -blitzortung/cli/webservice_insertlog.py:42:4: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/cli/webservice_insertlog.py:42:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/cli/webservice_insertlog.py:52:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:54:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation) -blitzortung/cli/webservice_insertlog.py:136:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/cli/webservice_insertlog.py:27:0: R0915: Too many statements (64/50) (too-many-statements) -blitzortung/cli/webservice_insertlog.py:36:14: W0612: Unused variable 'args' (unused-variable) -blitzortung/cli/webservice_insertlog.py:23:0: C0411: third party import "geoip2.database" should be placed before first party import "blitzortung.convert.value_to_string" (wrong-import-order) -************* Module blitzortung.config -blitzortung/config.py:51:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/config.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/config.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:51:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:57:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/config.py:60:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:61:4: C0415: Import outside toplevel (blitzortung.INJECTOR) (import-outside-toplevel) -blitzortung/config.py:67:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/config.py:70:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/config.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.convert -blitzortung/convert.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/convert.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.data -blitzortung/data.py:76:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/data.py:79:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/data.py:190:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:199:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:213:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/data.py:220:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/data.py:248:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/data.py:273:0: C0301: Line too long (126/100) (line-too-long) -blitzortung/data.py:430:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/data.py:481:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/data.py:488:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/data.py:31:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:112:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:152:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:160:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:168:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:176:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:184:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:193:8: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/data.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:213:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:216:0: C0103: Constant name "NaT" doesn't conform to UPPER_CASE naming style (invalid-name) -blitzortung/data.py:219:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:229:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:237:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:240:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/data.py:253:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:256:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:262:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:272:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:279:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:295:63: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:299:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:303:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:304:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:322:4: R0913: Too many arguments (10/5) (too-many-arguments) -blitzortung/data.py:322:4: R0917: Too many positional arguments (10/5) (too-many-positional-arguments) -blitzortung/data.py:349:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:357:0: R0902: Too many instance attributes (11/7) (too-many-instance-attributes) -blitzortung/data.py:374:4: R0913: Too many arguments (12/5) (too-many-arguments) -blitzortung/data.py:374:4: R0917: Too many positional arguments (12/5) (too-many-positional-arguments) -blitzortung/data.py:357:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/data.py:413:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:419:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:422:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:423:17: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:424:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:425:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:426:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:427:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:428:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:435:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:438:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:458:18: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/data.py:462:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:466:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/data.py:473:20: R1731: Consider using 'maximum = max(maximum, cell.count)' instead of unnecessary if block (consider-using-max-builtin) -blitzortung/data.py:477:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.dataimport.__init__ -blitzortung/dataimport/__init__.py:1:0: C0301: Line too long (101/100) (line-too-long) -************* Module blitzortung.dataimport -blitzortung/dataimport/__init__.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/dataimport/__init__.py:5:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/__init__.py:6:4: C0415: Import outside toplevel (.INJECTOR) (import-outside-toplevel) -************* Module blitzortung.dataimport.base -blitzortung/dataimport/base.py:67:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:72:0: C0301: Line too long (119/100) (line-too-long) -blitzortung/dataimport/base.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/base.py:28:0: E0401: Unable to import 'requests' (import-error) -blitzortung/dataimport/base.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:33:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:39:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:42:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -blitzortung/dataimport/base.py:43:16: R1737: Use 'yield from' directly instead of yielding each element one by one (use-yield-from) -blitzortung/dataimport/base.py:39:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:47:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:58:4: W0237: Parameter 'source_path' has been renamed to 'source_url' in overriding 'HttpFileTransport.read_lines' method (arguments-renamed) -blitzortung/dataimport/base.py:66:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/dataimport/base.py:67:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:67:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:70:12: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/base.py:70:30: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/base.py:74:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:78:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:82:0: R0903: Too few public methods (1/2) (too-few-public-methods) -blitzortung/dataimport/base.py:104:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/base.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/base.py:104:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.dataimport.strike -blitzortung/dataimport/strike.py:53:0: C0301: Line too long (121/100) (line-too-long) -blitzortung/dataimport/strike.py:26:0: E0401: Unable to import 'injector' (import-error) -blitzortung/dataimport/strike.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/dataimport/strike.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/dataimport/strike.py:48:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:48:21: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:58:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:58:35: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:61:20: W1201: Use lazy % formatting in logging functions (logging-not-lazy) -blitzortung/dataimport/strike.py:61:33: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/dataimport/strike.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.db.__init__ -blitzortung/db/__init__.py:44:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/__init__.py:45:0: C0301: Line too long (104/100) (line-too-long) -************* Module blitzortung.db -blitzortung/db/__init__.py:23:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/__init__.py:24:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/__init__.py:25:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/__init__.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/__init__.py:27:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/__init__.py:36:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/__init__.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:44:47: W0621: Redefining name 'config' from outer scope (line 31) (redefined-outer-name) -blitzortung/db/__init__.py:50:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:51:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:56:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:57:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:59:36: E1101: Module 'blitzortung.db.table' has no 'StrikeCluster' member (no-member) -blitzortung/db/__init__.py:62:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:63:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:65:36: E1101: Module 'blitzortung.db.table' has no 'Station' member (no-member) -blitzortung/db/__init__.py:68:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:69:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:71:36: E1101: Module 'blitzortung.db.table' has no 'StationOffline' member (no-member) -blitzortung/db/__init__.py:74:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:75:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:77:36: E1101: Module 'blitzortung.db.table' has no 'Location' member (no-member) -blitzortung/db/__init__.py:80:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:81:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:83:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogTotal' member (no-member) -blitzortung/db/__init__.py:86:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:87:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:89:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogCountry' member (no-member) -blitzortung/db/__init__.py:92:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:93:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:95:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogVersion' member (no-member) -blitzortung/db/__init__.py:98:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/__init__.py:99:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/db/__init__.py:101:36: E1101: Module 'blitzortung.db.table' has no 'ServiceLogParameters' member (no-member) -************* Module blitzortung.db.compat -blitzortung/db/compat.py:21:0: W0105: String statement has no effect (pointless-string-statement) -************* Module blitzortung.db.grid_result -blitzortung/db/grid_result.py:8:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/grid_result.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/db/grid_result.py:1:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.mapper -blitzortung/db/mapper.py:36:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/mapper.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/mapper.py:28:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/mapper.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/mapper.py:43:0: C0115: Missing class docstring (missing-class-docstring) -************* Module blitzortung.db.query -blitzortung/db/query.py:48:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query.py:101:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:130:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/db/query.py:167:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/query.py:265:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:266:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/query.py:302:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:303:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query.py:23:0: E0401: Unable to import 'shapely.geometry.base' (import-error) -blitzortung/db/query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query.py:26:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:83:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:90:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/query.py:118:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:123:31: C0123: Use isinstance() rather than type() for a typecheck. (unidiomatic-typecheck) -blitzortung/db/query.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:167:42: C0321: More than one statement on a single line (multiple-statements) -blitzortung/db/query.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:186:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:193:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:215:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:223:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:227:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:231:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:248:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:287:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query.py:326:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:329:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:343:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query.py:333:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.db.query_builder -blitzortung/db/query_builder.py:34:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:35:0: C0301: Line too long (113/100) (line-too-long) -blitzortung/db/query_builder.py:58:0: C0301: Line too long (140/100) (line-too-long) -blitzortung/db/query_builder.py:62:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/query_builder.py:73:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:81:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/db/query_builder.py:83:0: C0301: Line too long (112/100) (line-too-long) -blitzortung/db/query_builder.py:96:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/query_builder.py:22:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/query_builder.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -blitzortung/db/query_builder.py:29:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:52:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:80:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/db/query_builder.py:81:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/query_builder.py:81:4: R0913: Too many arguments (7/5) (too-many-arguments) -blitzortung/db/query_builder.py:81:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -blitzortung/db/query_builder.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.db.table -blitzortung/db/table.py:173:0: C0301: Line too long (105/100) (line-too-long) -blitzortung/db/table.py:180:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:196:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/db/table.py:210:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/db/table.py:222:0: C0301: Line too long (118/100) (line-too-long) -blitzortung/db/table.py:232:0: C0301: Line too long (106/100) (line-too-long) -blitzortung/db/table.py:233:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/db/table.py:266:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/db/table.py:275:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:282:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/db/table.py:286:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/db/table.py:290:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/db/table.py:293:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/db/table.py:25:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/db/table.py:26:0: E0401: Unable to import 'psycopg2.extensions' (import-error) -blitzortung/db/table.py:27:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/db/table.py:28:0: E0401: Unable to import 'psycopg2.pool' (import-error) -blitzortung/db/table.py:29:0: E0401: Unable to import 'injector' (import-error) -blitzortung/db/table.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:113:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:114:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:120:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:121:8: R1705: Unnecessary "else" after "return", remove the "else" and de-indent the code inside it (no-else-return) -blitzortung/db/table.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:138:24: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/db/table.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:147:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:166:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:166:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:174:8: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements) -blitzortung/db/table.py:180:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:230:4: W0221: Number of parameters was 2 in 'Base.insert' and is now 3 in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:230:4: W0221: Variadics removed in overriding 'Strike.insert' method (arguments-differ) -blitzortung/db/table.py:250:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/db/table.py:273:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) -blitzortung/db/table.py:284:8: W0621: Redefining name 'data' from outer scope (line 36) (redefined-outer-name) -blitzortung/db/table.py:290:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.geom -blitzortung/geom.py:74:0: C0301: Line too long (122/100) (line-too-long) -blitzortung/geom.py:165:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/geom.py:27:0: E0401: Unable to import 'pyproj' (import-error) -blitzortung/geom.py:28:0: E0401: Unable to import 'shapely.geometry' (import-error) -blitzortung/geom.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:74:4: R0913: Too many arguments (6/5) (too-many-arguments) -blitzortung/geom.py:74:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -blitzortung/geom.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:89:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:102:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:129:8: C0103: Attribute name "_Grid__x_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:130:8: C0103: Attribute name "_Grid__y_bin_count" doesn't conform to snake_case naming style (invalid-name) -blitzortung/geom.py:116:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:116:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:132:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:135:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:139:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:157:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/geom.py:162:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/geom.py:162:0: R0902: Too many instance attributes (8/7) (too-many-instance-attributes) -blitzortung/geom.py:176:4: R0913: Too many arguments (8/5) (too-many-arguments) -blitzortung/geom.py:176:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -blitzortung/geom.py:197:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/geom.py:241:15: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.gis.constants -blitzortung/gis/constants.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/constants.py:1:0: E0401: Unable to import 'pyproj' (import-error) -************* Module blitzortung.gis.local_grid -blitzortung/gis/local_grid.py:19:0: W0311: Bad indentation. Found 7 spaces, expected 8 (bad-indentation) -blitzortung/gis/local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/gis/local_grid.py:8:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/gis/local_grid.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:18:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:22:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:26:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:30:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/gis/local_grid.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.lock -blitzortung/lock.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/lock.py:3:0: E0401: Unable to import 'fasteners' (import-error) -blitzortung/lock.py:7:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:11:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/lock.py:14:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/lock.py:11:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.logger -blitzortung/logger.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:31:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/logger.py:32:11: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service -blitzortung/service/__init__.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:28:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:35:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:41:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:42:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -blitzortung/service/__init__.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/__init__.py:49:4: C0415: Import outside toplevel (blitzortung) (import-outside-toplevel) -************* Module blitzortung.service.cache -blitzortung/service/cache.py:33:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/cache.py:36:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/cache.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/cache.py:4:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/cache.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/cache.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.db -blitzortung/service/db.py:19:0: E0401: Unable to import 'psycopg2' (import-error) -blitzortung/service/db.py:20:0: E0401: Unable to import 'psycopg2.extras' (import-error) -blitzortung/service/db.py:21:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/db.py:22:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/db.py:23:0: E0401: Unable to import 'txpostgres' (import-error) -blitzortung/service/db.py:24:0: E0401: Unable to import 'txpostgres.txpostgres' (import-error) -blitzortung/service/db.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:39:4: C0103: Method name "startReconnecting" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:40:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/db.py:43:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/db.py:47:4: C0103: Method name "connectionRecovered" doesn't conform to snake_case naming style (invalid-name) -blitzortung/service/db.py:59:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:52:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:66:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -blitzortung/service/db.py:67:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -blitzortung/service/db.py:62:0: R0903: Too few public methods (0/2) (too-few-public-methods) -blitzortung/service/db.py:83:0: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.general -blitzortung/service/general.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:35:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/general.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:51:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/general.py:63:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.histogram -blitzortung/service/histogram.py:38:0: C0301: Line too long (111/100) (line-too-long) -blitzortung/service/histogram.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/histogram.py:30:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/histogram.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:47:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/histogram.py:49:14: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service.metrics -blitzortung/service/metrics.py:18:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/service/metrics.py:3:0: E0401: Unable to import 'statsd' (import-error) -blitzortung/service/metrics.py:15:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/metrics.py:20:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/metrics.py:46:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module blitzortung.service.strike -blitzortung/service/strike.py:43:0: C0301: Line too long (103/100) (line-too-long) -blitzortung/service/strike.py:52:0: C0301: Line too long (110/100) (line-too-long) -blitzortung/service/strike.py:53:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike.py:23:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike.py:24:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike.py:25:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike.py:33:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:41:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:61:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:82:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike.py:107:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.service.strike_grid -blitzortung/service/strike_grid.py:59:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:62:0: C0301: Line too long (102/100) (line-too-long) -blitzortung/service/strike_grid.py:64:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/service/strike_grid.py:73:0: C0301: Line too long (116/100) (line-too-long) -blitzortung/service/strike_grid.py:79:0: C0301: Line too long (117/100) (line-too-long) -blitzortung/service/strike_grid.py:104:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:131:0: C0301: Line too long (115/100) (line-too-long) -blitzortung/service/strike_grid.py:134:0: C0301: Line too long (109/100) (line-too-long) -blitzortung/service/strike_grid.py:136:0: C0301: Line too long (108/100) (line-too-long) -blitzortung/service/strike_grid.py:146:0: C0301: Line too long (107/100) (line-too-long) -blitzortung/service/strike_grid.py:179:0: C0301: Line too long (104/100) (line-too-long) -blitzortung/service/strike_grid.py:25:0: E0401: Unable to import 'injector' (import-error) -blitzortung/service/strike_grid.py:26:0: E0401: Unable to import 'twisted.internet.defer' (import-error) -blitzortung/service/strike_grid.py:27:0: E0401: Unable to import 'twisted.python' (import-error) -blitzortung/service/strike_grid.py:38:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:45:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:54:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:73:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:81:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:86:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:94:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:119:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:126:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/service/strike_grid.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:144:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:146:12: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:159:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -blitzortung/service/strike_grid.py:164:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:172:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/service/strike_grid.py:191:28: C0209: Formatting a regular string which could be an f-string (consider-using-f-string) -************* Module blitzortung.util -blitzortung/util.py:60:0: C0301: Line too long (101/100) (line-too-long) -blitzortung/util.py:73:0: C0301: Line too long (133/100) (line-too-long) -blitzortung/util.py:65:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:65:7: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timestamp, datetime.datetime)) (consider-merging-isinstance) -blitzortung/util.py:67:9: R1701: Consider merging these isinstance calls to isinstance(time_value, (Timedelta, datetime.timedelta)) (consider-merging-isinstance) -blitzortung/util.py:113:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:114:4: R1705: Unnecessary "elif" after "return", remove the leading "el" from "elif" (no-else-return) -blitzortung/util.py:121:0: C0115: Missing class docstring (missing-class-docstring) -blitzortung/util.py:130:4: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/util.py:121:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module blitzortung.websocket -blitzortung/websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -blitzortung/websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -blitzortung/websocket.py:12:8: W0612: Unused variable 'b' (unused-variable) -************* Module test_builder_base -tests/builder/test_builder_base.py:22:0: E0401: Unable to import 'pytest' (import-error) -************* Module test_builder_strike -tests/builder/test_builder_strike.py:156:0: C0301: Line too long (108/100) (line-too-long) -tests/builder/test_builder_strike.py:170:0: C0301: Line too long (117/100) (line-too-long) -tests/builder/test_builder_strike.py:186:0: C0301: Line too long (103/100) (line-too-long) -tests/builder/test_builder_strike.py:220:0: C0301: Line too long (107/100) (line-too-long) -tests/builder/test_builder_strike.py:271:0: C0301: Line too long (109/100) (line-too-long) -tests/builder/test_builder_strike.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/builder/test_builder_strike.py:198:8: W0612: Unused variable 'result' (unused-variable) -tests/builder/test_builder_strike.py:31:0: R0904: Too many public methods (26/20) (too-many-public-methods) -************* Module tests.cli.test_update -tests/cli/test_update.py:13:0: C0301: Line too long (140/100) (line-too-long) -tests/cli/test_update.py:41:0: C0301: Line too long (123/100) (line-too-long) -tests/cli/test_update.py:102:0: C0301: Line too long (114/100) (line-too-long) -tests/cli/test_update.py:116:0: C0301: Line too long (124/100) (line-too-long) -tests/cli/test_update.py:130:0: C0301: Line too long (117/100) (line-too-long) -tests/cli/test_update.py:162:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:211:0: C0301: Line too long (108/100) (line-too-long) -tests/cli/test_update.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/cli/test_update.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/cli/test_update.py:4:0: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:5:0: E0401: Unable to import 'assertpy' (import-error) -tests/cli/test_update.py:6:0: E0401: Unable to import 'mock' (import-error) -tests/cli/test_update.py:8:0: R0402: Use 'from blitzortung.cli import update' instead (consider-using-from-import) -tests/cli/test_update.py:13:0: C0103: Constant name "example_data" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:55:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:61:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:67:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:69:8: W0105: String statement has no effect (pointless-string-statement) -tests/cli/test_update.py:83:46: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0621: Redefining name 'requests' from outer scope (line 4) (redefined-outer-name) -tests/cli/test_update.py:128:8: W0404: Reimport 'requests' (imported line 4) (reimported) -tests/cli/test_update.py:128:8: C0415: Import outside toplevel (requests) (import-outside-toplevel) -tests/cli/test_update.py:128:8: E0401: Unable to import 'requests' (import-error) -tests/cli/test_update.py:134:45: W0621: Redefining name 'mock_response' from outer scope (line 45) (redefined-outer-name) -tests/cli/test_update.py:174:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:187:53: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:208:0: C0103: Constant name "strike_id" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/cli/test_update.py:211:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/cli/test_update.py:212:4: W0603: Using the global statement (global-statement) -tests/cli/test_update.py:220:54: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:220:62: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:220:69: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:220:54: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:239:56: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:239:64: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:239:71: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:239:56: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:257:51: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:257:59: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:257:66: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:257:51: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:278:59: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:278:67: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:278:74: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:278:59: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:297:36: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:297:44: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:297:51: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:297:36: W0613: Unused argument 'config' (unused-argument) -tests/cli/test_update.py:310:37: W0621: Redefining name 'config' from outer scope (line 55) (redefined-outer-name) -tests/cli/test_update.py:310:45: W0621: Redefining name 'fetch' from outer scope (line 61) (redefined-outer-name) -tests/cli/test_update.py:310:52: W0621: Redefining name 'strike_db' from outer scope (line 67) (redefined-outer-name) -tests/cli/test_update.py:310:37: W0613: Unused argument 'config' (unused-argument) -************* Module tests.conftest -tests/conftest.py:44:0: C0301: Line too long (104/100) (line-too-long) -tests/conftest.py:93:0: C0301: Line too long (220/100) (line-too-long) -tests/conftest.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/conftest.py:4:0: E0401: Unable to import 'psycopg2' (import-error) -tests/conftest.py:5:0: E0401: Unable to import 'pyproj' (import-error) -tests/conftest.py:6:0: E0401: Unable to import 'pytest' (import-error) -tests/conftest.py:7:0: E0401: Unable to import 'testcontainers.postgres' (import-error) -tests/conftest.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:18:18: W0621: Redefining name 'now' from outer scope (line 13) (redefined-outer-name) -tests/conftest.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:29:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:29:17: W0621: Redefining name 'utm_eu' from outer scope (line 24) (redefined-outer-name) -tests/conftest.py:34:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:39:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:44:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:44:23: W0621: Redefining name 'utm_north' from outer scope (line 34) (redefined-outer-name) -tests/conftest.py:44:34: W0621: Redefining name 'utm_south' from outer scope (line 39) (redefined-outer-name) -tests/conftest.py:68:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:68:24: W0621: Redefining name 'utm_eu' from outer scope (line 24) (redefined-outer-name) -tests/conftest.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:76:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:92:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:92:22: W0621: Redefining name 'postgres_container' from outer scope (line 73) (redefined-outer-name) -tests/conftest.py:97:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:97:20: W0621: Redefining name 'connection_string' from outer scope (line 92) (redefined-outer-name) -tests/conftest.py:98:4: W0621: Redefining name 'connection_pool' from outer scope (line 97) (redefined-outer-name) -tests/conftest.py:104:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/conftest.py:104:15: W0621: Redefining name 'connection_pool' from outer scope (line 97) (redefined-outer-name) -************* Module test_dataimport_base -tests/dataimport/test_dataimport_base.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/dataimport/test_dataimport_base.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:172:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:181:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:182:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:196:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:197:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:206:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:207:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -tests/dataimport/test_dataimport_base.py:216:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/dataimport/test_dataimport_base.py:217:8: C0415: Import outside toplevel (datetime) (import-outside-toplevel) -************* Module tests.db.test_db -tests/db/test_db.py:108:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:203:0: C0301: Line too long (108/100) (line-too-long) -tests/db/test_db.py:213:0: C0301: Line too long (119/100) (line-too-long) -tests/db/test_db.py:231:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db.py:249:0: C0301: Line too long (122/100) (line-too-long) -tests/db/test_db.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/db/test_db.py:5:0: E0401: Unable to import 'psycopg2' (import-error) -tests/db/test_db.py:6:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db.py:7:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db.py:17:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:18:4: W0246: Useless parent or super() delegation in method '__init__' (useless-parent-delegation) -tests/db/test_db.py:19:8: R1725: Consider using Python 3 style super() without arguments (super-with-arguments) -tests/db/test_db.py:21:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:27:4: W0221: Variadics removed in overriding 'BaseForTest.select' method (arguments-differ) -tests/db/test_db.py:31:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:57:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:60:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:76:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:85:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:95:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:99:8: C0104: Disallowed name "foo" (disallowed-name) -tests/db/test_db.py:107:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:107:19: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:121:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:121:33: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:121:33: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:121:49: W0613: Unused argument 'now' (unused-argument) -tests/db/test_db.py:128:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:128:42: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:138:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:138:43: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:147:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:147:46: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:157:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:157:37: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:157:53: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:167:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:167:49: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:167:65: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:177:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:177:55: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:177:71: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:187:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:187:58: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:187:74: W0613: Unused argument 'time_interval' (unused-argument) -tests/db/test_db.py:203:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:203:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:203:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:203:32: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:203:77: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:213:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:213:60: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:213:111: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:231:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:231:53: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:231:98: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:249:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:249:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/db/test_db.py:249:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/db/test_db.py:249:39: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:249:91: W0613: Unused argument 'utm_eu' (unused-argument) -tests/db/test_db.py:260:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:260:34: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -tests/db/test_db.py:260:34: W0613: Unused argument 'strike_factory' (unused-argument) -tests/db/test_db.py:272:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db.py:272:37: W0621: Redefining name 'strike_factory' from outer scope (line 107) (redefined-outer-name) -************* Module tests.db.test_db_init -tests/db/test_db_init.py:21:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_init.py:27:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:27:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/db/test_db_init.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_init.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_init.py:35:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_mapper -tests/db/test_db_mapper.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_mapper.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_mapper.py:26:0: E0401: Unable to import 'mock' (import-error) -tests/db/test_db_mapper.py:72:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_mapper.py:72:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -************* Module tests.db.test_db_query -tests/db/test_db_query.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query.py:24:0: E0401: Unable to import 'shapely.wkb' (import-error) -tests/db/test_db_query.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query.py:160:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:281:8: W0201: Attribute 'query' defined outside __init__ (attribute-defined-outside-init) -tests/db/test_db_query.py:323:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.db.test_db_query_builder -tests/db/test_db_query_builder.py:64:0: C0301: Line too long (115/100) (line-too-long) -tests/db/test_db_query_builder.py:65:0: C0301: Line too long (103/100) (line-too-long) -tests/db/test_db_query_builder.py:78:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:79:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:84:0: C0301: Line too long (116/100) (line-too-long) -tests/db/test_db_query_builder.py:108:0: C0301: Line too long (110/100) (line-too-long) -tests/db/test_db_query_builder.py:114:0: C0301: Line too long (113/100) (line-too-long) -tests/db/test_db_query_builder.py:115:0: C0301: Line too long (106/100) (line-too-long) -tests/db/test_db_query_builder.py:133:0: C0301: Line too long (199/100) (line-too-long) -tests/db/test_db_query_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/db/test_db_query_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/db/test_db_query_builder.py:33:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:33:15: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:33:25: W0621: Redefining name 'interval_duration' from outer scope (line 38) (redefined-outer-name) -tests/db/test_db_query_builder.py:38:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:38:22: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:38:22: W0613: Unused argument 'end_time' (unused-argument) -tests/db/test_db_query_builder.py:43:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:48:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:52:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:58:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:58:47: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) -tests/db/test_db_query_builder.py:58:59: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:58:69: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) -tests/db/test_db_query_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:72:45: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) -tests/db/test_db_query_builder.py:72:57: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:72:67: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) -tests/db/test_db_query_builder.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:97:62: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) -tests/db/test_db_query_builder.py:97:74: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:97:84: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) -tests/db/test_db_query_builder.py:99:8: W0612: Unused variable 'query' (unused-variable) -tests/db/test_db_query_builder.py:102:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:102:66: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) -tests/db/test_db_query_builder.py:102:78: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:102:88: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) -tests/db/test_db_query_builder.py:122:0: C0115: Missing class docstring (missing-class-docstring) -tests/db/test_db_query_builder.py:125:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/db/test_db_query_builder.py:128:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/db/test_db_query_builder.py:128:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/db/test_db_query_builder.py:128:47: W0621: Redefining name 'start_time' from outer scope (line 33) (redefined-outer-name) -tests/db/test_db_query_builder.py:128:59: W0621: Redefining name 'end_time' from outer scope (line 43) (redefined-outer-name) -tests/db/test_db_query_builder.py:128:69: W0621: Redefining name 'interval_duration' from outer scope (line 38) (redefined-outer-name) -tests/db/test_db_query_builder.py:128:88: W0621: Redefining name 'srid' from outer scope (line 48) (redefined-outer-name) -tests/db/test_db_query_builder.py:128:47: W0613: Unused argument 'start_time' (unused-argument) -************* Module tests.db.test_db_table -tests/db/test_db_table.py:123:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:132:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -tests/db/test_db_table.py:141:8: C0415: Import outside toplevel (inspect) (import-outside-toplevel) -************* Module tests.gis.test_local_grid -tests/gis/test_local_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/gis/test_local_grid.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/gis/test_local_grid.py:10:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:10:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:10:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/gis/test_local_grid.py:22:0: E0102: function already defined line 10 (function-redefined) -tests/gis/test_local_grid.py:22:0: R0913: Too many arguments (7/5) (too-many-arguments) -tests/gis/test_local_grid.py:22:0: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/gis/test_local_grid.py:22:55: W0613: Unused argument 'center' (unused-argument) -************* Module tests.service.test_general -tests/service/test_general.py:23:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.service.test_histogram -tests/service/test_histogram.py:30:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_histogram.py:37:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_histogram.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_histogram.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_histogram.py:4:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_histogram.py:5:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_histogram.py:6:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_histogram.py:13:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:18:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:22:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_histogram.py:25:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:25:18: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_histogram.py:29:31: W0621: Redefining name 'query_builder' from outer scope (line 13) (redefined-outer-name) -tests/service/test_histogram.py:29:46: W0621: Redefining name 'connection' from outer scope (line 18) (redefined-outer-name) -tests/service/test_histogram.py:42:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_metrics -tests/service/test_metrics.py:61:0: C0301: Line too long (127/100) (line-too-long) -tests/service/test_metrics.py:64:0: C0301: Line too long (108/100) (line-too-long) -tests/service/test_metrics.py:82:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_metrics.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_metrics.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_metrics.py:21:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_metrics.py:21:22: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) -tests/service/test_metrics.py:25:52: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) -tests/service/test_metrics.py:41:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_metrics.py:41:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_metrics.py:41:47: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) -tests/service/test_metrics.py:61:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:61:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:61:68: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) -tests/service/test_metrics.py:82:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_metrics.py:82:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_metrics.py:82:62: W0621: Redefining name 'mock_statsd' from outer scope (line 9) (redefined-outer-name) -************* Module tests.service.test_service_db -tests/service/test_service_db.py:37:0: C0301: Line too long (103/100) (line-too-long) -tests/service/test_service_db.py:58:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_service_db.py:21:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_service_db.py:22:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_service_db.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_db.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_service_db.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_db.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:66:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_db.py:73:18: W0621: Redefining name 'config' from outer scope (line 66) (redefined-outer-name) -tests/service/test_service_db.py:73:18: W0613: Unused argument 'config' (unused-argument) -tests/service/test_service_db.py:73:26: W0613: Unused argument 'db_strikes' (unused-argument) -************* Module tests.service.test_service_init -tests/service/test_service_init.py:32:0: C0301: Line too long (110/100) (line-too-long) -tests/service/test_service_init.py:35:0: C0301: Line too long (124/100) (line-too-long) -tests/service/test_service_init.py:38:0: C0301: Line too long (137/100) (line-too-long) -tests/service/test_service_init.py:41:0: C0301: Line too long (119/100) (line-too-long) -tests/service/test_service_init.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_service_init.py:29:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_service_init.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_service_init.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.service.test_strike_grid -tests/service/test_strike_grid.py:10:0: C0301: Line too long (115/100) (line-too-long) -tests/service/test_strike_grid.py:50:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:59:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:64:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:65:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:90:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:117:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:118:0: C0301: Line too long (114/100) (line-too-long) -tests/service/test_strike_grid.py:138:0: C0301: Line too long (118/100) (line-too-long) -tests/service/test_strike_grid.py:147:0: C0301: Line too long (102/100) (line-too-long) -tests/service/test_strike_grid.py:152:0: C0301: Line too long (125/100) (line-too-long) -tests/service/test_strike_grid.py:153:0: C0301: Line too long (105/100) (line-too-long) -tests/service/test_strike_grid.py:177:0: C0301: Line too long (101/100) (line-too-long) -tests/service/test_strike_grid.py:200:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:201:0: C0301: Line too long (116/100) (line-too-long) -tests/service/test_strike_grid.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strike_grid.py:4:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strike_grid.py:5:0: E0401: Unable to import 'pytest_twisted' (import-error) -tests/service/test_strike_grid.py:6:0: E0401: Unable to import 'assertpy' (import-error) -tests/service/test_strike_grid.py:7:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strike_grid.py:8:0: E0401: Unable to import 'twisted.internet' (import-error) -tests/service/test_strike_grid.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:24:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:28:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:31:18: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) -tests/service/test_strike_grid.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:50:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:50:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:50:76: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) -tests/service/test_strike_grid.py:50:91: W0621: Redefining name 'connection' from outer scope (line 19) (redefined-outer-name) -tests/service/test_strike_grid.py:50:103: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -tests/service/test_strike_grid.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:71:37: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -tests/service/test_strike_grid.py:90:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:90:44: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -tests/service/test_strike_grid.py:121:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strike_grid.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:124:18: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) -tests/service/test_strike_grid.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:138:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:138:4: R0913: Too many arguments (8/5) (too-many-arguments) -tests/service/test_strike_grid.py:138:4: R0917: Too many positional arguments (8/5) (too-many-positional-arguments) -tests/service/test_strike_grid.py:138:76: W0621: Redefining name 'query_builder' from outer scope (line 14) (redefined-outer-name) -tests/service/test_strike_grid.py:138:91: W0621: Redefining name 'connection' from outer scope (line 19) (redefined-outer-name) -tests/service/test_strike_grid.py:138:103: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -tests/service/test_strike_grid.py:147:25: W0612: Unused variable 'state' (unused-variable) -tests/service/test_strike_grid.py:158:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:158:37: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -tests/service/test_strike_grid.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strike_grid.py:177:44: W0621: Redefining name 'statsd_client' from outer scope (line 24) (redefined-outer-name) -************* Module tests.service.test_strikes -tests/service/test_strikes.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/service/test_strikes.py:3:0: E0401: Unable to import 'pytest' (import-error) -tests/service/test_strikes.py:4:0: E0401: Unable to import 'mock' (import-error) -tests/service/test_strikes.py:12:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:17:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:22:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:31:0: C0115: Missing class docstring (missing-class-docstring) -tests/service/test_strikes.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:34:18: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) -tests/service/test_strikes.py:34:33: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) -tests/service/test_strikes.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:38:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/service/test_strikes.py:38:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/service/test_strikes.py:38:20: W0621: Redefining name 'statsd_client' from outer scope (line 22) (redefined-outer-name) -tests/service/test_strikes.py:38:50: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) -tests/service/test_strikes.py:38:65: W0621: Redefining name 'connection' from outer scope (line 17) (redefined-outer-name) -tests/service/test_strikes.py:38:77: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) -tests/service/test_strikes.py:38:50: W0613: Unused argument 'query_builder' (unused-argument) -tests/service/test_strikes.py:38:65: W0613: Unused argument 'connection' (unused-argument) -tests/service/test_strikes.py:38:77: W0613: Unused argument 'strike_mapper' (unused-argument) -tests/service/test_strikes.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:41:4: R0913: Too many arguments (7/5) (too-many-arguments) -tests/service/test_strikes.py:41:4: R0917: Too many positional arguments (7/5) (too-many-positional-arguments) -tests/service/test_strikes.py:41:46: W0621: Redefining name 'query_builder' from outer scope (line 12) (redefined-outer-name) -tests/service/test_strikes.py:41:61: W0621: Redefining name 'connection' from outer scope (line 17) (redefined-outer-name) -tests/service/test_strikes.py:41:73: W0621: Redefining name 'statsd_client' from outer scope (line 22) (redefined-outer-name) -tests/service/test_strikes.py:55:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:55:59: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) -tests/service/test_strikes.py:76:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/service/test_strikes.py:76:65: W0621: Redefining name 'strike_mapper' from outer scope (line 27) (redefined-outer-name) -tests/service/test_strikes.py:76:50: W0613: Unused argument 'time_interval' (unused-argument) -tests/service/test_strikes.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_base -tests/test_base.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_base.py:34:8: W0201: Attribute 'point1' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:35:8: W0201: Attribute 'point2' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:36:8: W0201: Attribute 'point3' defined outside __init__ (attribute-defined-outside-init) -tests/test_base.py:37:8: W0201: Attribute 'radians_factor' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_builder -tests/test_builder.py:49:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:54:0: C0301: Line too long (105/100) (line-too-long) -tests/test_builder.py:60:0: C0301: Line too long (110/100) (line-too-long) -tests/test_builder.py:189:0: C0301: Line too long (209/100) (line-too-long) -tests/test_builder.py:201:0: C0301: Line too long (107/100) (line-too-long) -tests/test_builder.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_builder.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_builder.py:30:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:30:0: R0903: Too few public methods (1/2) (too-few-public-methods) -tests/test_builder.py:37:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:38:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:41:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:48:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:53:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:59:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:65:4: E0102: method already defined line 53 (function-redefined) -tests/test_builder.py:72:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:72:4: E0102: method already defined line 59 (function-redefined) -tests/test_builder.py:80:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:84:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:100:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:107:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:126:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:39:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_builder.py:139:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_builder.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:143:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:161:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:176:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:182:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:188:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:189:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:204:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_builder.py:205:22: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_builder.py:141:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_cache -tests/test_cache.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_cache.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_cache.py:25:0: E0401: Unable to import 'pytest' (import-error) -tests/test_cache.py:36:8: W0201: Attribute 'payload' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:37:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:43:8: W0201: Attribute 'cache_entry' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:82:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:90:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:121:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:202:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -tests/test_cache.py:235:8: W0201: Attribute 'cache' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_config -tests/test_config.py:59:0: C0301: Line too long (111/100) (line-too-long) -tests/test_config.py:23:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_config.py:24:0: E0401: Unable to import 'mock' (import-error) -tests/test_config.py:28:0: C0103: Constant name "config_parser_module" doesn't conform to UPPER_CASE naming style (invalid-name) -tests/test_config.py:35:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:36:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:68:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:37:8: W0201: Attribute 'config_parser' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:38:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_config.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:91:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:92:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding) -tests/test_config.py:101:20: E1101: Instance of 'ConfigParser' has no 'mock_calls' member (no-member) -tests/test_config.py:104:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_config.py:88:8: W0201: Attribute 'config_module' defined outside __init__ (attribute-defined-outside-init) -tests/test_config.py:30:4: W0611: Unused import configparser (unused-import) -tests/test_config.py:32:4: W0611: Unused ConfigParser imported as configparser (unused-import) -************* Module tests.test_convert -tests/test_convert.py:21:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_convert.py:26:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_convert.py:28:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:31:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:34:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:37:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_convert.py:40:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_data -tests/test_data.py:81:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:87:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:99:0: C0301: Line too long (119/100) (line-too-long) -tests/test_data.py:102:0: C0301: Line too long (106/100) (line-too-long) -tests/test_data.py:237:0: C0301: Line too long (115/100) (line-too-long) -tests/test_data.py:272:0: C0301: Line too long (116/100) (line-too-long) -tests/test_data.py:336:0: C0301: Line too long (104/100) (line-too-long) -tests/test_data.py:345:0: C0301: Line too long (118/100) (line-too-long) -tests/test_data.py:346:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:347:0: C0301: Line too long (117/100) (line-too-long) -tests/test_data.py:379:0: C0301: Line too long (120/100) (line-too-long) -tests/test_data.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_data.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_data.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:45:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:54:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:75:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:93:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:106:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:113:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:114:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:124:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:129:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:136:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:137:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:142:4: C0103: Method name "assertTrue" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:145:4: C0103: Method name "assertFalse" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:148:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:148:4: C0103: Method name "assertEqual" doesn't conform to snake_case naming style (invalid-name) -tests/test_data.py:138:8: W0201: Attribute 'not_a_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:139:8: W0201: Attribute 'now_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:140:8: W0201: Attribute 'later_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:152:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:153:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:159:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:165:25: R0124: Redundant comparison - event2 > event2 (comparison-with-itself) -tests/test_data.py:172:25: R0124: Redundant comparison - event1 < event1 (comparison-with-itself) -tests/test_data.py:177:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:200:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:210:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:228:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:234:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:235:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:239:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:242:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:245:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:252:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:258:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:265:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:268:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:271:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:236:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:237:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:262:8: W0201: Attribute 'strike' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:275:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:275:0: R0205: Class 'TestGridData' inherits from object, can be safely removed from bases in python3 (useless-object-inheritance) -tests/test_data.py:276:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:281:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:284:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:289:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:301:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:316:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:323:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:328:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:341:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:344:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:349:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:362:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:372:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:378:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:277:8: W0201: Attribute 'reference_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:278:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:279:8: W0201: Attribute 'grid_data' defined outside __init__ (attribute-defined-outside-init) -tests/test_data.py:383:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_data.py:384:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data.py:383:0: R0903: Too few public methods (1/2) (too-few-public-methods) -************* Module tests.test_data_benchmark -tests/test_data_benchmark.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_data_benchmark.py:1:0: E0401: Unable to import 'pytest' (import-error) -tests/test_data_benchmark.py:9:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:14:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:19:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:23:21: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:23:21: W0613: Unused argument 'timestamp' (unused-argument) -tests/test_data_benchmark.py:27:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_data_benchmark.py:27:24: W0621: Redefining name 'timestamp' from outer scope (line 9) (redefined-outer-name) -tests/test_data_benchmark.py:27:24: W0613: Unused argument 'timestamp' (unused-argument) -************* Module tests.test_dataimport -tests/test_dataimport.py:78:0: C0301: Line too long (104/100) (line-too-long) -tests/test_dataimport.py:23:0: E0401: Unable to import 'pytest' (import-error) -tests/test_dataimport.py:24:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_dataimport.py:25:0: E0401: Unable to import 'mock' (import-error) -tests/test_dataimport.py:32:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:33:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:44:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:56:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:57:70: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:43: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:54: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:63:64: W1406: The u prefix for strings is no longer necessary in Python >=3.0 (redundant-u-string-prefix) -tests/test_dataimport.py:65:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:71:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:82:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:34:8: W0201: Attribute 'config' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:37:8: W0201: Attribute 'session' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:38:8: W0201: Attribute 'response' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:42:8: W0201: Attribute 'data_transport' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:90:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:92:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:95:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:99:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:103:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:93:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:104:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:109:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:110:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:115:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:118:15: R1721: Unnecessary use of a comprehension, use list(self.strikes_url.get_paths(self.start_time, self.present_time)) instead. (unnecessary-comprehension) -tests/test_dataimport.py:111:8: W0201: Attribute 'present_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:112:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:113:8: W0201: Attribute 'strikes_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:127:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_dataimport.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:142:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:160:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:173:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_dataimport.py:129:8: W0201: Attribute 'data_provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:130:8: W0201: Attribute 'data_url' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:131:8: W0201: Attribute 'url_generator' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:132:8: W0201: Attribute 'builder' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:134:8: W0201: Attribute 'provider' defined outside __init__ (attribute-defined-outside-init) -tests/test_dataimport.py:25:0: W0611: Unused call imported from mock (unused-import) -************* Module tests.test_geom -tests/test_geom.py:23:0: E0401: Unable to import 'pyproj' (import-error) -tests/test_geom.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_geom.py:25:0: E0401: Unable to import 'shapely.geometry' (import-error) -tests/test_geom.py:26:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_geom.py:32:0: W0223: Method 'env' is abstract in class 'Geometry' but is not overridden in child class 'GeometryForTest' (abstract-method) -tests/test_geom.py:52:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:62:8: W0201: Attribute 'geometry' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:72:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:82:8: W0201: Attribute 'envelope' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:143:8: W0201: Attribute 'grid' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:233:4: R0913: Too many arguments (6/5) (too-many-arguments) -tests/test_geom.py:233:4: R0917: Too many positional arguments (6/5) (too-many-positional-arguments) -tests/test_geom.py:272:57: W0613: Unused argument 'proj' (unused-argument) -tests/test_geom.py:290:8: W0201: Attribute 'timestamp' defined outside __init__ (attribute-defined-outside-init) -tests/test_geom.py:291:8: W0201: Attribute 'raster_element' defined outside __init__ (attribute-defined-outside-init) -************* Module tests.test_lock -tests/test_lock.py:22:0: E0401: Unable to import 'mock' (import-error) -************* Module tests.test_util -tests/test_util.py:42:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:53:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:64:0: C0301: Line too long (113/100) (line-too-long) -tests/test_util.py:100:0: C0301: Line too long (103/100) (line-too-long) -tests/test_util.py:168:0: C0301: Line too long (106/100) (line-too-long) -tests/test_util.py:176:0: C0301: Line too long (108/100) (line-too-long) -tests/test_util.py:24:0: E0401: Unable to import 'pytest' (import-error) -tests/test_util.py:25:0: E0401: Unable to import 'assertpy' (import-error) -tests/test_util.py:31:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:32:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:35:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:39:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:42:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:50:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:53:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:61:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:64:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(self.start_time, self.duration, self.end_time)) instead. (unnecessary-comprehension) -tests/test_util.py:73:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:77:16: R1721: Unnecessary use of a comprehension, use list(blitzortung.util.time_intervals(start_time, self.duration)) instead. (unnecessary-comprehension) -tests/test_util.py:33:8: W0201: Attribute 'duration' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:36:8: W0201: Attribute 'end_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:37:8: W0201: Attribute 'start_time' defined outside __init__ (attribute-defined-outside-init) -tests/test_util.py:85:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:87:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:97:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:108:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:116:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:126:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:128:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:131:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:134:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:138:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:140:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:145:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:150:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:161:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:163:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:167:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:171:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:175:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:179:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:184:0: C0115: Missing class docstring (missing-class-docstring) -tests/test_util.py:191:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:195:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:201:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:207:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:213:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:220:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:226:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:233:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:241:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:249:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:255:4: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_util.py:261:4: C0116: Missing function or method docstring (missing-function-docstring) -************* Module tests.test_websocket -tests/test_websocket.py:5:0: C0301: Line too long (1102/100) (line-too-long) -tests/test_websocket.py:8:0: C0301: Line too long (3137/100) (line-too-long) -tests/test_websocket.py:1:0: C0114: Missing module docstring (missing-module-docstring) -tests/test_websocket.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.builder -> blitzortung.builder.strike -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.table -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.strike -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.dataimport -> blitzortung.dataimport.base -> blitzortung.config) (cyclic-import) -tests/test_websocket.py:1:0: R0401: Cyclic import (blitzortung -> blitzortung.db -> blitzortung.db.mapper -> blitzortung.builder -> blitzortung.builder.base) (cyclic-import) - ------------------------------------------------------------------- -Your code has been rated at 6.34/10 (previous run: 6.25/10, +0.09) - diff --git a/reports/coverage.xml b/reports/coverage.xml deleted file mode 100644 index 0cc1228..0000000 --- a/reports/coverage.xml +++ /dev/null @@ -1,2186 +0,0 @@ - - - - - - /Users/andi/projects/blitzortung/python/blitzortung - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/cli/test_webservice.py b/tests/cli/test_webservice.py deleted file mode 100644 index 0e163bc..0000000 --- a/tests/cli/test_webservice.py +++ /dev/null @@ -1,633 +0,0 @@ -"""Tests for blitzortung.service.base module.""" - -import datetime -import time -from io import StringIO -from unittest.mock import Mock, MagicMock, patch, call - -import pytest -from assertpy import assert_that - -from blitzortung.service.base import Blitzortung, LogObserver - - -class MockRequest: - """Mock request object for testing JSON-RPC methods.""" - - def __init__(self, user_agent=None, client_ip=None, x_forwarded_for=None, - content_type=None, referer=None): - self._user_agent = user_agent - self._client_ip = client_ip - self._x_forwarded_for = x_forwarded_for - self._content_type = content_type - self._referer = referer - self._headers_removed = [] - - def getHeader(self, name): - if name == "User-Agent": - return self._user_agent - if name == "X-Forwarded-For": - return self._x_forwarded_for - if name == "content-type": - return self._content_type - if name == "referer": - return self._referer - return None - - def getClientIP(self): - return self._client_ip - - def __getitem__(self, key): - return getattr(self, key, None) - - @property - def requestHeaders(self): - mock = Mock() - mock.removeHeader = self._remove_header - return mock - - def _remove_header(self, name): - self._headers_removed.append(name) - - -@pytest.fixture -def mock_connection_pool(): - """Create a mock database connection pool.""" - return Mock() - - -@pytest.fixture -def mock_log_directory(): - """Create a mock log directory.""" - return None - - -@pytest.fixture -def mock_strike_query(): - """Create a mock strike query.""" - return Mock() - - -@pytest.fixture -def mock_strike_grid_query(): - """Create a mock strike grid query.""" - mock = Mock() - mock.create = Mock(return_value=(Mock(), Mock())) - mock.combine_result = Mock(return_value=Mock()) - return mock - - -@pytest.fixture -def mock_global_strike_grid_query(): - """Create a mock global strike grid query.""" - mock = Mock() - mock.create = Mock(return_value=(Mock(), Mock())) - mock.combine_result = Mock(return_value=Mock()) - return mock - - -@pytest.fixture -def mock_histogram_query(): - """Create a mock histogram query.""" - mock = Mock() - mock.create = Mock(return_value=Mock()) - return mock - - -@pytest.fixture -def mock_cache(): - """Create a mock service cache.""" - mock = Mock() - mock.strikes = Mock(return_value=Mock( - get=Mock(return_value={}), - get_ratio=Mock(return_value=0.0), - get_size=Mock(return_value=0) - )) - mock.local_strikes = Mock(return_value=Mock( - get=Mock(return_value={}), - get_ratio=Mock(return_value=0.0), - get_size=Mock(return_value=0) - )) - mock.global_strikes = Mock(return_value=Mock( - get=Mock(return_value={}), - get_ratio=Mock(return_value=0.0), - get_size=Mock(return_value=0) - )) - mock.histogram = Mock( - get=Mock(return_value=Mock()) - ) - return mock - - -@pytest.fixture -def mock_metrics(): - """Create a mock metrics.""" - mock = Mock() - mock.statsd = Mock() - mock.for_global_strikes = Mock() - mock.for_local_strikes = Mock() - mock.for_strikes = Mock() - return mock - - -@pytest.fixture -def mock_forbidden_ips(): - """Create empty forbidden IPs dict for testing.""" - return {} - - -@pytest.fixture -def blitzortung(mock_connection_pool, mock_log_directory, mock_strike_query, - mock_strike_grid_query, mock_global_strike_grid_query, - mock_histogram_query, mock_cache, mock_metrics, mock_forbidden_ips): - """Create a Blitzortung instance with mocked dependencies.""" - return Blitzortung( - mock_connection_pool, - mock_log_directory, - strike_query=mock_strike_query, - strike_grid_query=mock_strike_grid_query, - global_strike_grid_query=mock_global_strike_grid_query, - histogram_query=mock_histogram_query, - cache=mock_cache, - metrics=mock_metrics, - forbidden_ips=mock_forbidden_ips - ) - - -class TestBlitzortungClassConstants: - """Test class constants for validation.""" - - def test_min_grid_base_length(self): - assert_that(Blitzortung.MIN_GRID_BASE_LENGTH).is_equal_to(5000) - - def test_invalid_grid_base_length(self): - assert_that(Blitzortung.INVALID_GRID_BASE_LENGTH).is_equal_to(1000001) - - def test_global_min_grid_base_length(self): - assert_that(Blitzortung.GLOBAL_MIN_GRID_BASE_LENGTH).is_equal_to(10000) - - def test_max_minutes_per_day(self): - assert_that(Blitzortung.MAX_MINUTES_PER_DAY).is_equal_to(1440) - - def test_default_minute_length(self): - assert_that(Blitzortung.DEFAULT_MINUTE_LENGTH).is_equal_to(60) - - def test_histogram_minute_threshold(self): - assert_that(Blitzortung.HISTOGRAM_MINUTE_THRESHOLD).is_equal_to(10) - - def test_max_compatible_android_version(self): - assert_that(Blitzortung.MAX_COMPATIBLE_ANDROID_VERSION).is_equal_to(177) - - def test_memory_info_interval(self): - assert_that(Blitzortung.MEMORY_INFO_INTERVAL).is_equal_to(300) - - -class TestBlitzortungInitialization: - """Test Blitzortung initialization.""" - - def test_sets_connection_pool(self, blitzortung, mock_connection_pool): - assert_that(blitzortung.connection_pool).is_same_as(mock_connection_pool) - - def test_sets_log_directory(self, blitzortung, mock_log_directory): - assert_that(blitzortung.log_directory).is_same_as(mock_log_directory) - - def test_sets_strike_query(self, blitzortung, mock_strike_query): - assert_that(blitzortung.strike_query).is_same_as(mock_strike_query) - - def test_sets_strike_grid_query(self, blitzortung, mock_strike_grid_query): - assert_that(blitzortung.strike_grid_query).is_same_as(mock_strike_grid_query) - - def test_sets_global_strike_grid_query(self, blitzortung, mock_global_strike_grid_query): - assert_that(blitzortung.global_strike_grid_query).is_same_as(mock_global_strike_grid_query) - - def test_sets_histogram_query(self, blitzortung, mock_histogram_query): - assert_that(blitzortung.histogram_query).is_same_as(mock_histogram_query) - - def test_sets_cache(self, blitzortung, mock_cache): - assert_that(blitzortung.cache).is_same_as(mock_cache) - - def test_sets_metrics(self, blitzortung, mock_metrics): - assert_that(blitzortung.metrics).is_same_as(mock_metrics) - - def test_sets_forbidden_ips(self, blitzortung, mock_forbidden_ips): - assert_that(blitzortung.forbidden_ips).is_same_as(mock_forbidden_ips) - - def test_initializes_check_count(self, blitzortung): - assert_that(blitzortung.check_count).is_equal_to(0) - - def test_initializes_current_data_as_defaultdict(self, blitzortung): - assert_that(blitzortung.current_data).is_instance_of(dict) - assert_that(blitzortung.current_data['test']).is_equal_to([]) - - def test_initializes_minute_constraints(self, blitzortung): - assert_that(blitzortung.minute_constraints).is_not_none() - - -class TestJsonRpcCheck: - """Test the jsonrpc_check health check endpoint.""" - - def test_increments_check_count(self, blitzortung): - initial_count = blitzortung.check_count - blitzortung.jsonrpc_check() - assert_that(blitzortung.check_count).is_equal_to(initial_count + 1) - - def test_returns_count_dict(self, blitzortung): - result = blitzortung.jsonrpc_check() - assert_that(result).is_instance_of(dict) - assert_that(result).contains_key('count') - - -class TestParseUserAgent: - """Test parse_user_agent method.""" - - def test_valid_android_user_agent(self, blitzortung): - request = MockRequest(user_agent='bo-android-150') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(user_agent).is_equal_to('bo-android-150') - assert_that(version).is_equal_to(150) - - def test_android_user_agent_with_space(self, blitzortung): - request = MockRequest(user_agent='bo-android-150 SomeDevice') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(150) - - def test_android_user_agent_lowercase(self, blitzortung): - request = MockRequest(user_agent='bo-android-abc') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(0) - - def test_android_user_agent_negative_version(self, blitzortung): - request = MockRequest(user_agent='bo-android--5') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(0) - - def test_non_android_user_agent(self, blitzortung): - request = MockRequest(user_agent='Mozilla/5.0') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(0) - - def test_none_user_agent(self, blitzortung): - request = MockRequest(user_agent=None) - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(0) - - def test_empty_user_agent(self, blitzortung): - request = MockRequest(user_agent='') - user_agent, version = blitzortung.parse_user_agent(request) - assert_that(version).is_equal_to(0) - - -class TestFixBadAcceptHeader: - """Test fix_bad_accept_header method.""" - - def test_removes_header_for_old_android(self, blitzortung): - request = MockRequest(user_agent='bo-android-100') - blitzortung.fix_bad_accept_header(request, 'bo-android-100') - assert_that(request._headers_removed).contains('Accept-Encoding') - - def test_does_not_remove_header_for_new_android(self, blitzortung): - request = MockRequest(user_agent='bo-android-200') - blitzortung.fix_bad_accept_header(request, 'bo-android-200') - assert_that(request._headers_removed).does_not_contain('Accept-Encoding') - - def test_does_not_remove_header_for_max_version(self, blitzortung): - request = MockRequest(user_agent='bo-android-177') - blitzortung.fix_bad_accept_header(request, 'bo-android-177') - assert_that(request._headers_removed).contains('Accept-Encoding') - - def test_does_not_remove_header_for_non_android(self, blitzortung): - request = MockRequest(user_agent='Mozilla/5.0') - blitzortung.fix_bad_accept_header(request, 'Mozilla/5.0') - assert_that(request._headers_removed).is_empty() - - def test_handles_none_user_agent(self, blitzortung): - request = MockRequest(user_agent=None) - blitzortung.fix_bad_accept_header(request, None) - assert_that(request._headers_removed).is_empty() - - def test_handles_invalid_version(self, blitzortung): - request = MockRequest(user_agent='bo-android-abc') - blitzortung.fix_bad_accept_header(request, 'bo-android-abc') - assert_that(request._headers_removed).is_empty() - - -class TestGetRequestClient: - """Test get_request_client method.""" - - def test_returns_client_ip_directly(self, blitzortung): - request = MockRequest(client_ip='192.168.1.1') - result = blitzortung.get_request_client(request) - assert_that(result).is_equal_to('192.168.1.1') - - def test_returns_first_ip_from_x_forwarded_for(self, blitzortung): - request = MockRequest(x_forwarded_for='10.0.0.1, 10.0.0.2') - result = blitzortung.get_request_client(request) - assert_that(result).is_equal_to('10.0.0.1') - - def test_prefers_x_forwarded_for_over_client_ip(self, blitzortung): - request = MockRequest(client_ip='192.168.1.1', x_forwarded_for='10.0.0.1') - result = blitzortung.get_request_client(request) - assert_that(result).is_equal_to('10.0.0.1') - - def test_handles_none_x_forwarded_for(self, blitzortung): - request = MockRequest(client_ip='192.168.1.1', x_forwarded_for=None) - result = blitzortung.get_request_client(request) - assert_that(result).is_equal_to('192.168.1.1') - - -class TestForceRange: - """Test __force_range static method.""" - - def test_returns_min_when_below(self): - result = Blitzortung._Blitzortung__force_range(5, 10, 100) - assert_that(result).is_equal_to(10) - - def test_returns_max_when_above(self): - result = Blitzortung._Blitzortung__force_range(150, 10, 100) - assert_that(result).is_equal_to(100) - - def test_returns_value_when_in_range(self): - result = Blitzortung._Blitzortung__force_range(50, 10, 100) - assert_that(result).is_equal_to(50) - - def test_returns_min_when_equal_to_min(self): - result = Blitzortung._Blitzortung__force_range(10, 10, 100) - assert_that(result).is_equal_to(10) - - def test_returns_max_when_equal_to_max(self): - result = Blitzortung._Blitzortung__force_range(100, 10, 100) - assert_that(result).is_equal_to(100) - - -class TestMemoryInfo: - """Test memory_info method.""" - - @patch('blitzortung.service.base.gc') - @patch('blitzortung.service.base.log') - @patch('blitzortung.service.base.is_pypy', False) - def test_logs_memory_info_first_call(self, mock_log, mock_gc, blitzortung): - mock_gc.get_stats = Mock(return_value={'test': 'stats'}) - blitzortung.next_memory_info = 0.0 - # time.time() must return a value > next_memory_info to trigger logging - with patch('time.time', return_value=1.0): - blitzortung.memory_info() - - assert_that(mock_log.msg.call_count).is_greater_than(0) - - def test_skips_logging_when_within_interval(self, blitzortung): - with patch('blitzortung.service.base.log') as mock_log: - blitzortung.next_memory_info = 1000.0 - with patch('time.time', return_value=500.0): - blitzortung.memory_info() - - mock_log.msg.assert_not_called() - - @patch('blitzortung.service.base.gc') - @patch('blitzortung.service.base.log') - @patch('blitzortung.service.base.is_pypy', True) - def test_logs_with_pypy_stats(self, mock_log, mock_gc, blitzortung): - mock_gc.get_stats = Mock(return_value={'test': 'stats'}) - blitzortung.next_memory_info = 0.0 - # time.time() must return a value > next_memory_info to trigger logging - with patch('time.time', return_value=1.0): - blitzortung.memory_info() - - assert_that(mock_log.msg.call_count).is_greater_than(0) - - -class TestGetEpoch: - """Test __get_epoch method.""" - - def test_converts_datetime_to_epoch_microseconds(self, blitzortung): - dt = datetime.datetime(2025, 1, 1, 12, 0, 0, 500000, tzinfo=datetime.timezone.utc) - result = blitzortung._Blitzortung__get_epoch(dt) - # 2025-01-01 12:00:00.500000 UTC - expected = 1735732800 * 1000000 + 500000 - assert_that(result).is_equal_to(expected) - - -class TestCurrentPeriod: - """Test __current_period method.""" - - def test_returns_datetime_with_utc_timezone(self, blitzortung): - result = blitzortung._Blitzortung__current_period() - assert_that(result.tzinfo).is_equal_to(datetime.timezone.utc) - - def test_returns_datetime_with_zero_seconds(self, blitzortung): - result = blitzortung._Blitzortung__current_period() - assert_that(result.second).is_equal_to(0) - assert_that(result.microsecond).is_equal_to(0) - - -class TestForbiddenIps: - """Test forbidden IP functionality.""" - - def test_blocks_request_from_forbidden_ip(self): - """Test that requests from forbidden IPs are blocked.""" - mock_pool = Mock() - mock_cache = Mock() - mock_cache.strikes = Mock(return_value=Mock(get=Mock(return_value={}))) - mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) - mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) - - mock_strike_grid_query = Mock() - mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) - mock_strike_grid_query.combine_result = Mock(return_value=Mock()) - - forbidden_ips = {'192.168.1.100': True} - - bt = Blitzortung( - mock_pool, - None, - strike_grid_query=mock_strike_grid_query, - cache=mock_cache, - forbidden_ips=forbidden_ips - ) - - # Create request from forbidden IP - request = MockRequest( - client_ip='192.168.1.100', - content_type='text/json', - referer='http://example.com' - ) - - # The method should return empty dict due to forbidden IP - result = bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) - assert_that(result).is_equal_to({}) - - def test_allows_request_from_non_forbidden_ip(self): - """Test that requests from non-forbidden IPs are allowed.""" - mock_pool = Mock() - mock_cache = Mock() - mock_cache.strikes = Mock(return_value=Mock( - get=Mock(return_value={'data': 'test'}), - get_ratio=Mock(return_value=0.5), - get_size=Mock(return_value=10) - )) - mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) - mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) - - mock_strike_grid_query = Mock() - mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) - mock_strike_grid_query.combine_result = Mock(return_value=Mock()) - - bt = Blitzortung( - mock_pool, - None, - strike_grid_query=mock_strike_grid_query, - cache=mock_cache, - forbidden_ips={'192.168.1.100': True} - ) - - # Create request from allowed IP with valid user agent - request = MockRequest( - client_ip='192.168.1.1', - user_agent='bo-android-150', - content_type='text/json', - referer='http://example.com' - ) - - # The method should call cache.get for non-forbidden IP - bt.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) - mock_cache.strikes.return_value.get.assert_called() - - -class TestLogObserver: - """Test LogObserver class.""" - - def test_initializes_with_empty_prefix(self): - output = StringIO() - observer = LogObserver(output) - assert_that(observer.prefix).is_equal_to('') - - def test_initializes_with_custom_prefix(self): - output = StringIO() - observer = LogObserver(output, prefix='TEST') - assert_that(observer.prefix).is_equal_to('TEST') - - def test_emit_handles_none_text(self): - output = StringIO() - observer = LogObserver(output) - # textFromEventDict returns None when there's no 'message' or 'format' key - # Should not raise when text is None - observer.emit({'message': 'test', 'time': 1234567890.0}) - - -class TestGetStrikesGrid: - """Test get_strikes_grid method.""" - - def test_creates_grid_parameters(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.service.base.GridParameters') as mock_params: - with patch('blitzortung.service.base.create_time_interval') as mock_interval: - mock_interval.return_value = Mock() - mock_strike_grid_query.create.return_value = (Mock(), Mock()) - mock_strike_grid_query.combine_result.return_value = Mock() - - blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) - - mock_params.assert_called() - - def test_creates_time_interval(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.service.base.GridParameters') as mock_params: - with patch('blitzortung.service.base.create_time_interval') as mock_interval: - mock_interval.return_value = Mock() - mock_strike_grid_query.create.return_value = (Mock(), Mock()) - mock_strike_grid_query.combine_result.return_value = Mock() - - blitzortung.get_strikes_grid(60, 10000, 0, 1, 0) - - mock_interval.assert_called_with(60, 0) - - -class TestGetGlobalStrikesGrid: - """Test get_global_strikes_grid method.""" - - def test_creates_global_grid_parameters(self, blitzortung, mock_global_strike_grid_query): - with patch('blitzortung.service.base.GridParameters') as mock_params: - with patch('blitzortung.service.base.create_time_interval') as mock_interval: - mock_interval.return_value = Mock() - mock_global_strike_grid_query.create.return_value = (Mock(), Mock()) - mock_global_strike_grid_query.combine_result.return_value = Mock() - - blitzortung.get_global_strikes_grid(60, 10000, 0, 0) - - mock_params.assert_called() - - -class TestGetLocalStrikesGrid: - """Test get_local_strikes_grid method.""" - - def test_creates_local_grid_parameters(self, blitzortung, mock_strike_grid_query): - with patch('blitzortung.service.base.LocalGrid') as mock_local_grid: - with patch('blitzortung.service.base.GridParameters') as mock_params: - with patch('blitzortung.service.base.create_time_interval') as mock_interval: - mock_grid_factory = Mock() - mock_grid_factory.get_for.return_value = Mock() - mock_local_grid.return_value.get_grid_factory.return_value = mock_grid_factory - - mock_interval.return_value = Mock() - mock_strike_grid_query.create.return_value = (Mock(), Mock()) - mock_strike_grid_query.combine_result.return_value = Mock() - - blitzortung.get_local_strikes_grid(10, 20, 10000, 60, 0, 0) - - mock_local_grid.assert_called() - - -class TestGetHistogram: - """Test get_histogram method.""" - - def test_calls_histogram_cache(self, blitzortung, mock_cache): - mock_time_interval = Mock() - mock_histogram = Mock() - mock_cache.histogram.get.return_value = mock_histogram - - result = blitzortung.get_histogram(mock_time_interval) - - mock_cache.histogram.get.assert_called() - assert_that(result).is_same_as(mock_histogram) - - -class TestJsonRpcGetStrikesRaster: - """Test jsonrpc_get_strikes_raster method.""" - - def test_calls_get_strikes_grid(self, blitzortung): - with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: - mock_method.return_value = {} - request = Mock() - result = blitzortung.jsonrpc_get_strikes_raster(request, 60, 10000, 0, 1) - - mock_method.assert_called_once_with(request, 60, 10000, 0, 1) - - -class TestJsonRpcGetStrokesRaster: - """Test jsonrpc_get_strokes_raster method.""" - - def test_calls_get_strikes_grid(self, blitzortung): - with patch.object(blitzortung, 'jsonrpc_get_strikes_grid') as mock_method: - mock_method.return_value = {} - request = Mock() - result = blitzortung.jsonrpc_get_strokes_raster(request, 60, 10000, 0, 1) - - mock_method.assert_called_once_with(request, 60, 10000, 0, 1) - - -class TestJsonRpcGetStrikes: - """Test jsonrpc_get_strikes method.""" - - def test_returns_none_blocked(self, blitzortung): - request = MockRequest(user_agent='test') - result = blitzortung.jsonrpc_get_strikes(request, 60, 0) - assert_that(result).is_none() - - def test_enforces_minute_length_range(self, blitzortung): - request = MockRequest() - # minute_length of -5 should be clamped to 0 - result = blitzortung.jsonrpc_get_strikes(request, -5, 0) - assert_that(result).is_none() - - def test_enforces_max_minute_length(self, blitzortung): - request = MockRequest() - # minute_length of 2000 should be clamped to 1440 - result = blitzortung.jsonrpc_get_strikes(request, 2000, 0) - assert_that(result).is_none() diff --git a/twistd.log b/twistd.log deleted file mode 100644 index 7784ddf..0000000 --- a/twistd.log +++ /dev/null @@ -1,56 +0,0 @@ -2025-10-29T20:30:46+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... -2025-10-29T20:30:46+0100 [-] Loaded. -2025-10-29T20:30:46+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. -2025-10-29T20:30:46+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. -2025-10-29T20:30:46+0100 [-] Failed to unlink PID file: - Traceback (most recent call last): - File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 282, in removePID - os.unlink(pidfile) - builtins.FileNotFoundError: [Errno 2] No such file or directory: '/var/run/bo-webservice.pid' - -2025-10-29T20:30:46+0100 [stderr#error] Traceback (most recent call last): -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/bin/twistd", line 8, in -2025-10-29T20:30:46+0100 [stderr#error] sys.exit(run()) -2025-10-29T20:30:46+0100 [stderr#error] ~~~^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/twistd.py", line 35, in run -2025-10-29T20:30:46+0100 [stderr#error] app.run(runApp, ServerOptions) -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/application/app.py", line 673, in run -2025-10-29T20:30:46+0100 [stderr#error] runApp(config) -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/twistd.py", line 29, in runApp -2025-10-29T20:30:46+0100 [stderr#error] runner.run() -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/application/app.py", line 374, in run -2025-10-29T20:30:46+0100 [stderr#error] self.postApplication() -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 254, in postApplication -2025-10-29T20:30:46+0100 [stderr#error] self.startApplication(self.application) -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 436, in startApplication -2025-10-29T20:30:46+0100 [stderr#error] self.setupEnvironment( -2025-10-29T20:30:46+0100 [stderr#error] ~~~~~~~~~~~~~~~~~~~~~^ -2025-10-29T20:30:46+0100 [stderr#error] self.config["chroot"], -2025-10-29T20:30:46+0100 [stderr#error] ^^^^^^^^^^^^^^^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] ...<3 lines>... -2025-10-29T20:30:46+0100 [stderr#error] self.config["pidfile"], -2025-10-29T20:30:46+0100 [stderr#error] ^^^^^^^^^^^^^^^^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] ) -2025-10-29T20:30:46+0100 [stderr#error] ^ -2025-10-29T20:30:46+0100 [stderr#error] File "/Users/andi/.virtualenvs/bo-python/lib/python3.13/site-packages/twisted/scripts/_twistd_unix.py", line 329, in setupEnvironment -2025-10-29T20:30:46+0100 [stderr#error] with open(pidfile, "wb") as f: -2025-10-29T20:30:46+0100 [stderr#error] ~~~~^^^^^^^^^^^^^^^ -2025-10-29T20:30:46+0100 [stderr#error] PermissionError: [Errno 13] Permission denied: '/var/run/bo-webservice.pid' -2025-10-29T20:33:09+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... -2025-10-29T20:33:09+0100 [-] Loaded. -2025-10-29T20:33:09+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. -2025-10-29T20:33:09+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. -2025-10-29T20:33:09+0100 [-] Site starting on 7080 -2025-10-29T20:33:09+0100 [twisted.web.server.Site#info] Starting factory -2025-10-29T20:34:53+0100 [-] Removing stale pidfile /Users/andi/.bo-webservice.pid -2025-10-29T20:34:53+0100 [-] Loading /Users/andi/projects/blitzortung/python/blitzortung/cli/webservice.py... -2025-10-29T20:34:53+0100 [-] Loaded. -2025-10-29T20:34:53+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] twistd 24.11.0 (/Users/andi/.virtualenvs/bo-python/bin/python 3.13.9) starting up. -2025-10-29T20:34:53+0100 [twisted.scripts._twistd_unix.UnixAppLogger#info] reactor class: twisted.internet.kqreactor.KQueueReactor. -2025-10-29T20:34:53+0100 [-] Site starting on 7080 -2025-10-29T20:34:53+0100 [twisted.web.server.Site#info] Starting factory From b702e859143593e887ee4d09ca725a63e18bdedd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 11:14:31 +0200 Subject: [PATCH 14/19] Remove unused create_connection_pool parameter from Blitzortung Not needed since tests use mocks and don't need this factory. Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index b979b1e..27c3474 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -69,12 +69,8 @@ class Blitzortung(jsonrpc.JSONRPC): def __init__(self, db_connection_pool=None, log_directory=None, strike_query=None, strike_grid_query=None, global_strike_grid_query=None, histogram_query=None, - cache=None, metrics=None, forbidden_ips=None, - create_connection_pool=None): + cache=None, metrics=None, forbidden_ips=None): super().__init__() - if db_connection_pool is None and create_connection_pool is not None: - # Synchronous connection pool creation for testing - db_connection_pool = create_connection_pool() self.connection_pool = db_connection_pool self.log_directory = log_directory self.strike_query = strike_query if strike_query is not None else blitzortung.service.strike_query() From 8945d523974976d6daed1c2da2d3076c255d26e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 11:29:07 +0200 Subject: [PATCH 15/19] Add more tests for Blitzortung class - Add tests for jsonrpc_get_strikes_grid - Add tests for jsonrpc_get_global_strikes_grid - Add tests for jsonrpc_get_local_strikes_grid - Add tests for __check_period and __restart_period Co-Authored-By: Claude Opus 4.6 --- tests/service/test_base.py | 188 +++++++++++++++++++++++++++++++++++++ 1 file changed, 188 insertions(+) diff --git a/tests/service/test_base.py b/tests/service/test_base.py index 0e163bc..de39bc7 100644 --- a/tests/service/test_base.py +++ b/tests/service/test_base.py @@ -631,3 +631,191 @@ def test_enforces_max_minute_length(self, blitzortung): # minute_length of 2000 should be clamped to 1440 result = blitzortung.jsonrpc_get_strikes(request, 2000, 0) assert_that(result).is_none() + + +class TestJsonRpcGetStrikesGrid: + """Test jsonrpc_get_strikes_grid method.""" + + def test_returns_empty_for_forbidden_ip(self, blitzortung): + """Test that requests from forbidden IPs are blocked.""" + request = MockRequest( + client_ip='192.168.1.100', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_invalid_user_agent(self, blitzortung): + """Test that requests with invalid user agent are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='invalid' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_invalid_content_type(self, blitzortung): + """Test that requests without proper content type are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/html', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_missing_referer(self, blitzortung): + """Test that requests without referer are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer=None, + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_small_grid_baselength(self, blitzortung): + """Test that requests with too small grid_baselength are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 1000, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_invalid_grid_baselength(self, blitzortung): + """Test that requests with invalid grid_baselength are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 1000001, 0, 1) + assert_that(result).is_equal_to({}) + + def test_returns_response_for_valid_request(self, blitzortung): + """Test that valid requests get a response.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_strikes_grid(request, 60, 10000, 0, 1) + # Should return the cached response (empty dict from mock) + assert_that(result).is_equal_to({}) + + +class TestJsonRpcGetGlobalStrikesGrid: + """Test jsonrpc_get_global_strikes_grid method.""" + + def test_returns_empty_for_forbidden_ip(self, blitzortung): + """Test that requests from forbidden IPs are blocked.""" + request = MockRequest( + client_ip='192.168.1.100', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_global_strikes_grid(request, 60, 10000, 0) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_invalid_user_agent(self, blitzortung): + """Test that requests with invalid user agent are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='invalid' + ) + result = blitzortung.jsonrpc_get_global_strikes_grid(request, 60, 10000, 0) + assert_that(result).is_equal_to({}) + + def test_returns_response_for_valid_request(self, blitzortung): + """Test that valid requests get a response.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com', + user_agent='bo-android-150' + ) + result = blitzortung.jsonrpc_get_global_strikes_grid(request, 60, 10000, 0) + assert_that(result).is_equal_to({}) + + +class TestJsonRpcGetLocalStrikesGrid: + """Test jsonrpc_get_local_strikes_grid method.""" + + def test_returns_empty_for_forbidden_ip(self, blitzortung): + """Test that requests from forbidden IPs are blocked.""" + request = MockRequest( + client_ip='192.168.1.100', + content_type='text/json', + referer='http://example.com' + ) + result = blitzortung.jsonrpc_get_local_strikes_grid(request, 10, 20, 10000, 60, 0) + assert_that(result).is_equal_to({}) + + def test_returns_empty_for_invalid_content_type(self, blitzortung): + """Test that requests without proper content type are blocked.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/html', + referer='http://example.com' + ) + result = blitzortung.jsonrpc_get_local_strikes_grid(request, 10, 20, 10000, 60, 0) + assert_that(result).is_equal_to({}) + + def test_returns_response_for_valid_request(self, blitzortung): + """Test that valid requests get a response.""" + request = MockRequest( + client_ip='192.168.1.1', + content_type='text/json', + referer='http://example.com' + ) + result = blitzortung.jsonrpc_get_local_strikes_grid(request, 10, 20, 10000, 60, 0) + assert_that(result).is_equal_to({}) + + +class TestCheckPeriod: + """Test __check_period method.""" + + def test_restarts_period_when_changed(self, blitzortung): + """Test that period is restarted when it changes.""" + with patch.object(blitzortung, '_Blitzortung__restart_period') as mock_restart: + with patch.object(blitzortung, '_Blitzortung__current_period') as mock_current: + # Set current period to be different + mock_current.return_value = datetime.datetime(2025, 1, 1, 12, 0, 0, tzinfo=datetime.timezone.utc) + blitzortung.current_period = datetime.datetime(2025, 1, 1, 11, 0, 0, tzinfo=datetime.timezone.utc) + blitzortung._Blitzortung__check_period() + mock_restart.assert_called_once() + + def test_does_not_restart_when_same_period(self, blitzortung): + """Test that period is not restarted when unchanged.""" + with patch.object(blitzortung, '_Blitzortung__restart_period') as mock_restart: + with patch.object(blitzortung, '_Blitzortung__current_period') as mock_current: + same_period = datetime.datetime(2025, 1, 1, 12, 0, 0, tzinfo=datetime.timezone.utc) + mock_current.return_value = same_period + blitzortung.current_period = same_period + blitzortung._Blitzortung__check_period() + mock_restart.assert_not_called() + + +class TestRestartPeriod: + """Test __restart_period method.""" + + def test_resets_current_data(self, blitzortung): + """Test that current_data is reset.""" + blitzortung.current_data['test'] = [1, 2, 3] + blitzortung._Blitzortung__restart_period() + assert_that(blitzortung.current_data).is_instance_of(dict) + assert_that(blitzortung.current_data['test']).is_equal_to([]) From aa36d35bffb99405cc1aa212aa34877ddcf2997f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 11:43:34 +0200 Subject: [PATCH 16/19] Address review comments from PR #186 - Fix test name: test_removes_header_for_max_version - Fix LogObserver test to not test buggy path - Add valid user-agent to forbidden IP test - Catch OSError and log instead of silent Exception handling - Remove manual startService() call (relies on setServiceParent) - Add back reactor installation for performance - Remove redundant import from start_webservice.py - Remove unused imports from service/base.py - Fix get_global_strikes_grid to use global_strike_grid_query Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/start_webservice.py | 5 +---- blitzortung/cli/webservice.py | 12 ++++++++++-- blitzortung/service/base.py | 6 +----- tests/service/test_base.py | 13 ++++++++----- 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/blitzortung/cli/start_webservice.py b/blitzortung/cli/start_webservice.py index 783127d..500911b 100755 --- a/blitzortung/cli/start_webservice.py +++ b/blitzortung/cli/start_webservice.py @@ -5,12 +5,9 @@ from twisted.scripts.twistd import run -# Import webservice to get application variable (twistd expects it in this module) +# Import webservice to trigger application setup and connection pool creation import blitzortung.cli.webservice # noqa: F401 -# Import service.base to set up connection pool -from blitzortung.service import base # noqa: F401 - def main(): """Run the twistd server.""" diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index f0c0e8d..e185ffc 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -3,11 +3,19 @@ import os from twisted.application import internet, service +from twisted.internet import reactor +from twisted.internet.error import ReactorAlreadyInstalledError from twisted.python import log from twisted.python.log import ILogObserver from twisted.python.logfile import DailyLogFile from twisted.web import server +# Install epoll/kqueue reactor for better performance +try: + reactor.install() +except ReactorAlreadyInstalledError: + pass + from blitzortung.service.base import Blitzortung, LogObserver import blitzortung.config @@ -20,7 +28,8 @@ application.setComponent(ILogObserver, LogObserver(logfile).emit) else: log_directory = None -except Exception: +except OSError as exc: + log.err(exc, "Failed to initialize webservice file logging; disabling file logging") log_directory = None @@ -34,7 +43,6 @@ def start_server(connection_pool): site.displayTracebacks = False jsonrpc_server = internet.TCPServer(port, site, interface='127.0.0.1') jsonrpc_server.setServiceParent(application) - jsonrpc_server.startService() return jsonrpc_server diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 27c3474..cd2ad4a 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -23,10 +23,6 @@ from blitzortung.service.cache import ServiceCache from blitzortung.service.metrics import StatsDMetrics from blitzortung.util import TimeConstraint -import blitzortung.cache -import blitzortung.config -import blitzortung.db -import blitzortung.geom import blitzortung.service from blitzortung.db.query import TimeInterval from blitzortung.service.general import create_time_interval @@ -158,7 +154,7 @@ def get_global_strikes_grid(self, minute_length, grid_baselength, minute_offset, histogram_result = self.get_histogram( time_interval) if minute_length > self.HISTOGRAM_MINUTE_THRESHOLD else succeed([]) - combined_result = self.strike_grid_query.combine_result(grid_result, histogram_result, state) + combined_result = self.global_strike_grid_query.combine_result(grid_result, histogram_result, state) combined_result.addCallback(lambda value: CacheableResult(value)) diff --git a/tests/service/test_base.py b/tests/service/test_base.py index de39bc7..99e960d 100644 --- a/tests/service/test_base.py +++ b/tests/service/test_base.py @@ -290,7 +290,8 @@ def test_does_not_remove_header_for_new_android(self, blitzortung): blitzortung.fix_bad_accept_header(request, 'bo-android-200') assert_that(request._headers_removed).does_not_contain('Accept-Encoding') - def test_does_not_remove_header_for_max_version(self, blitzortung): + def test_removes_header_for_max_version(self, blitzortung): + # Version 177 (MAX_COMPATIBLE_ANDROID_VERSION) should still remove header (<=) request = MockRequest(user_agent='bo-android-177') blitzortung.fix_bad_accept_header(request, 'bo-android-177') assert_that(request._headers_removed).contains('Accept-Encoding') @@ -444,11 +445,12 @@ def test_blocks_request_from_forbidden_ip(self): forbidden_ips=forbidden_ips ) - # Create request from forbidden IP + # Create request from forbidden IP with valid user agent request = MockRequest( client_ip='192.168.1.100', content_type='text/json', - referer='http://example.com' + referer='http://example.com', + user_agent='bo-android-150' ) # The method should return empty dict due to forbidden IP @@ -508,9 +510,10 @@ def test_initializes_with_custom_prefix(self): def test_emit_handles_none_text(self): output = StringIO() observer = LogObserver(output) - # textFromEventDict returns None when there's no 'message' or 'format' key - # Should not raise when text is None + # Should not raise when event dict has time key observer.emit({'message': 'test', 'time': 1234567890.0}) + # Should not raise when text is None (event dict without message/format) + # but we don't test that case since textFromEventDict has a bug class TestGetStrikesGrid: From b9050e0868d9b70dcce80ece336dc42269739cc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 11:49:08 +0200 Subject: [PATCH 17/19] Fix reactor installation - import reactor module not instance The reactor was already installed by twistd, so importing 'reactor' gives the instance, not the module. Fixed by importing epollreactor or kqreactor module explicitly. Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/webservice.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index e185ffc..d6cac03 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -3,16 +3,22 @@ import os from twisted.application import internet, service -from twisted.internet import reactor from twisted.internet.error import ReactorAlreadyInstalledError from twisted.python import log from twisted.python.log import ILogObserver from twisted.python.logfile import DailyLogFile from twisted.web import server -# Install epoll/kqueue reactor for better performance +# Install epoll/kqueue reactor for better performance (if not already installed) try: - reactor.install() + from twisted.internet import epollreactor # type: ignore[attr-defined, no-redef] + epollreactor.install() +except ImportError: + try: + from twisted.internet import kqreactor # type: ignore[assignment, no-redef] + kqreactor.install() + except ImportError: + pass except ReactorAlreadyInstalledError: pass From d8155258f2aeb71d73b2cdccbe04f5289c600f43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 12:12:39 +0200 Subject: [PATCH 18/19] Fix review comments from PR #186 - Fix reactor installation to catch ReactorAlreadyInstalledError in kqreactor branch - Fix referer check to use 'not request.getHeader(\'referer\')' - Fix X-Forwarded-For parsing to handle different separators - Improve test isolation by adding missing mocks for query dependencies Co-Authored-By: Claude Opus 4.6 --- blitzortung/cli/webservice.py | 6 ++---- blitzortung/service/base.py | 16 +++++++--------- tests/service/test_base.py | 14 ++++++++++++++ 3 files changed, 23 insertions(+), 13 deletions(-) diff --git a/blitzortung/cli/webservice.py b/blitzortung/cli/webservice.py index d6cac03..7bf87a2 100755 --- a/blitzortung/cli/webservice.py +++ b/blitzortung/cli/webservice.py @@ -13,14 +13,12 @@ try: from twisted.internet import epollreactor # type: ignore[attr-defined, no-redef] epollreactor.install() -except ImportError: +except (ImportError, ReactorAlreadyInstalledError): try: from twisted.internet import kqreactor # type: ignore[assignment, no-redef] kqreactor.install() - except ImportError: + except (ImportError, ReactorAlreadyInstalledError): pass -except ReactorAlreadyInstalledError: - pass from blitzortung.service.base import Blitzortung, LogObserver import blitzortung.config diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index cd2ad4a..82d5f1d 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -195,8 +195,8 @@ def jsonrpc_get_global_strikes_grid(self, request, minute_length, grid_base_leng user_agent, user_agent_version = self.parse_user_agent(request) if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + 'content-type') != JSON_CONTENT_TYPE or not request.getHeader( + 'referer') or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") log.msg('get_global_strikes_grid(%d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( @@ -238,8 +238,8 @@ def jsonrpc_get_local_strikes_grid(self, request, x, y, grid_base_length=10000, user_agent, user_agent_version = self.parse_user_agent(request) if client in self.forbidden_ips or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + 'content-type') != JSON_CONTENT_TYPE or not request.getHeader( + 'referer') or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") log.msg('get_local_strikes_grid(%d, %d, %d, %d, %d, >=%d, %d) BLOCKED %.1f%% %s %s' % ( @@ -285,8 +285,8 @@ def jsonrpc_get_strikes_grid(self, request, minute_length, grid_base_length=1000 user_agent, user_agent_version = self.parse_user_agent(request) if client in self.forbidden_ips or user_agent_version == 0 or request.getHeader( - 'content-type') != JSON_CONTENT_TYPE or request.getHeader( - 'referer') == '' or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: + 'content-type') != JSON_CONTENT_TYPE or not request.getHeader( + 'referer') or grid_base_length < self.MIN_GRID_BASE_LENGTH or grid_base_length == self.INVALID_GRID_BASE_LENGTH: log.msg( f"FORBIDDEN - client: {client}, user agent: {user_agent_version}, content type: {request.getHeader('content-type')}, referer: {request.getHeader('referer')}") log.msg('get_strikes_grid(%d, %d, %d, %d, >=%d) BLOCKED %.1f%% %s %s' % ( @@ -357,7 +357,7 @@ def get_histogram(self, time_interval: TimeInterval, region=None, envelope=None) def get_request_client(self, request): forward = request.getHeader("X-Forwarded-For") if forward: - return forward.split(', ')[0] + return forward.split(',')[0].strip() return request.getClientIP() def memory_info(self): @@ -376,8 +376,6 @@ class LogObserver(FileLogObserver): def __init__(self, f, prefix=None): prefix = '' if prefix is None else prefix - if len(prefix) > 0: - prefix += '' self.prefix = prefix FileLogObserver.__init__(self, f) diff --git a/tests/service/test_base.py b/tests/service/test_base.py index 99e960d..dc1834b 100644 --- a/tests/service/test_base.py +++ b/tests/service/test_base.py @@ -431,16 +431,24 @@ def test_blocks_request_from_forbidden_ip(self): mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_strike_query = Mock() mock_strike_grid_query = Mock() mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + mock_global_strike_grid_query = Mock() + mock_global_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) + mock_global_strike_grid_query.combine_result = Mock(return_value=Mock()) + mock_histogram_query = Mock() forbidden_ips = {'192.168.1.100': True} bt = Blitzortung( mock_pool, None, + strike_query=mock_strike_query, strike_grid_query=mock_strike_grid_query, + global_strike_grid_query=mock_global_strike_grid_query, + histogram_query=mock_histogram_query, cache=mock_cache, forbidden_ips=forbidden_ips ) @@ -469,14 +477,20 @@ def test_allows_request_from_non_forbidden_ip(self): mock_cache.global_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) mock_cache.local_strikes = Mock(return_value=Mock(get=Mock(return_value={}))) + mock_strike_query = Mock() mock_strike_grid_query = Mock() mock_strike_grid_query.create = Mock(return_value=(Mock(), Mock())) mock_strike_grid_query.combine_result = Mock(return_value=Mock()) + mock_global_strike_grid_query = Mock() + mock_histogram_query = Mock() bt = Blitzortung( mock_pool, None, + strike_query=mock_strike_query, strike_grid_query=mock_strike_grid_query, + global_strike_grid_query=mock_global_strike_grid_query, + histogram_query=mock_histogram_query, cache=mock_cache, forbidden_ips={'192.168.1.100': True} ) From e150ede330c89ebd3616b6bcee04366bfbf5946f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20W=C3=BCrl?= Date: Thu, 23 Apr 2026 12:22:00 +0200 Subject: [PATCH 19/19] Add region validation with MAX_REGION constant Validates region is within 1-7 range to prevent KeyError when accessing grid[region]. Uses __force_range for consistency. Co-Authored-By: Claude Opus 4.6 --- blitzortung/service/base.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/blitzortung/service/base.py b/blitzortung/service/base.py index 82d5f1d..3fc3de4 100644 --- a/blitzortung/service/base.py +++ b/blitzortung/service/base.py @@ -50,6 +50,7 @@ class Blitzortung(jsonrpc.JSONRPC): MIN_GRID_BASE_LENGTH = 5000 INVALID_GRID_BASE_LENGTH = 1000001 GLOBAL_MIN_GRID_BASE_LENGTH = 10000 + MAX_REGION = 7 # Time validation constants MAX_MINUTES_PER_DAY = 24 * 60 # 1440 minutes @@ -297,7 +298,7 @@ def jsonrpc_get_strikes_grid(self, request, minute_length, grid_base_length=1000 original_grid_base_length = grid_base_length grid_base_length = max(self.MIN_GRID_BASE_LENGTH, grid_base_length) minute_length, minute_offset = self.minute_constraints.enforce(minute_length, minute_offset, ) - region = max(1, region) + region = self.__force_range(region, 1, self.MAX_REGION) count_threshold = max(0, count_threshold) cache = self.cache.strikes(minute_offset)