From 20da1e2dd5800ad42c3c1ad203da5bc7c73813d2 Mon Sep 17 00:00:00 2001 From: VIGNESH S Date: Wed, 1 May 2024 18:16:41 +0530 Subject: [PATCH] backend/feat: #20 Added Driver Module --- .github/workflows/cross_native.yml | 4 + .github/workflows/driver.yml | 25 ++++++ .github/workflows/{backend.yml => user.yml} | 2 +- Backend/Cargo.toml | 45 ++--------- Backend/crates/common/Cargo.toml | 19 +++++ Backend/crates/common/src/lib.rs | 1 + .../{ => crates/common}/src/tools/contants.rs | 0 Backend/{ => crates/common}/src/tools/mod.rs | 0 .../src/tools/polygon_utils/geo_json.rs | 0 .../common}/src/tools/polygon_utils/mod.rs | 0 .../common}/src/tools/session_utils.rs | 2 +- .../{ => crates/common}/src/tools/types.rs | 0 .../{ => crates/common}/src/tools/utils.rs | 0 Backend/crates/driver/Cargo.toml | 41 ++++++++++ Backend/{ => crates/driver}/configs/app.dhall | 0 Backend/crates/driver/diesel.toml | 9 +++ .../down.sql | 0 .../up.sql | 0 .../down.sql | 1 + .../2024-05-01-125352_initial-queries/up.sql | 33 ++++++++ .../down.sql | 1 + .../2024-05-01-125647_create-role-type/up.sql | 2 + .../driver}/shape_files/bengaluru.json | 0 .../{ => crates/driver}/src/db/database.rs | 0 Backend/{ => crates/driver}/src/db/mod.rs | 0 Backend/crates/driver/src/db/schema.rs | 49 ++++++++++++ .../driver}/src/handlers/auth/auth.rs | 8 +- .../driver}/src/handlers/auth/auth_verify.rs | 6 +- .../driver}/src/handlers/auth/mod.rs | 0 .../error_handler/common_error_handler.rs | 0 .../driver}/src/handlers/error_handler/mod.rs | 0 .../driver}/src/handlers/geometry/mod.rs | 0 .../src/handlers/geometry/serviceability.rs | 2 +- .../{ => crates/driver}/src/handlers/mod.rs | 0 .../driver}/src/handlers/user/design.md | 0 Backend/{ => crates/driver}/src/main.rs | 3 +- .../driver}/src/middlewares/middleware.rs | 0 .../driver}/src/middlewares/mod.rs | 0 .../{ => crates/driver}/src/routes/auth.rs | 0 Backend/crates/driver/src/routes/driver.rs | 0 Backend/{ => crates/driver}/src/routes/mod.rs | 0 .../{ => crates/driver}/src/routes/routes.rs | 0 .../driver}/src/routes/serviceability.rs | 0 .../{ => crates/driver}/src/routes/session.rs | 2 +- .../{ => crates/driver}/src/storage/mod.rs | 0 .../crates/driver/src/storage/models/auth.rs | 59 ++++++++++++++ .../driver}/src/storage/models/geometry.rs | 0 .../driver}/src/storage/models/mod.rs | 0 .../crates/driver/src/storage/models/user.rs | 65 +++++++++++++++ .../crates/driver/src/storage/queries/auth.rs | 71 ++++++++++++++++ .../driver}/src/storage/queries/mod.rs | 0 .../crates/driver/src/storage/queries/user.rs | 68 ++++++++++++++++ .../{ => crates/driver}/src/storage/result.rs | 0 .../driver}/src/transformers/auth.rs | 0 .../driver}/src/transformers/mod.rs | 0 Backend/{ => crates/driver}/src/types.rs | 0 Backend/crates/user/Cargo.toml | 39 +++++++++ Backend/crates/user/configs/app.dhall | 5 ++ Backend/{ => crates/user}/diesel.toml | 2 +- .../down.sql | 6 ++ .../up.sql | 36 +++++++++ .../down.sql | 0 .../up.sql | 0 .../down.sql | 0 .../2024-03-03-051935_add_token_field/up.sql | 0 .../down.sql | 0 .../2024-03-03-052716_alter_time_Stamp/up.sql | 0 .../down.sql | 0 .../up.sql | 0 .../down.sql | 0 .../2024-03-17-064742_add_role_in_auth/up.sql | 0 .../down.sql | 0 .../up.sql | 0 .../2024-05-01-100047_switch-schema/down.sql | 5 ++ .../2024-05-01-100047_switch-schema/up.sql | 2 + .../crates/user/shape_files/bengaluru.json | 1 + Backend/crates/user/src/db/database.rs | 22 +++++ Backend/crates/user/src/db/mod.rs | 2 + Backend/{ => crates/user}/src/db/schema.rs | 11 ++- Backend/crates/user/src/handlers/auth/auth.rs | 60 ++++++++++++++ .../user/src/handlers/auth/auth_verify.rs | 80 +++++++++++++++++++ Backend/crates/user/src/handlers/auth/mod.rs | 2 + .../error_handler/common_error_handler.rs | 12 +++ .../user/src/handlers/error_handler/mod.rs | 1 + .../crates/user/src/handlers/geometry/mod.rs | 1 + .../src/handlers/geometry/serviceability.rs | 19 +++++ Backend/crates/user/src/handlers/mod.rs | 3 + .../crates/user/src/handlers/user/design.md | 18 +++++ Backend/crates/user/src/main.rs | 43 ++++++++++ .../crates/user/src/middlewares/middleware.rs | 0 Backend/crates/user/src/middlewares/mod.rs | 1 + Backend/crates/user/src/routes/auth.rs | 25 ++++++ Backend/crates/user/src/routes/mod.rs | 4 + Backend/crates/user/src/routes/routes.rs | 12 +++ .../crates/user/src/routes/serviceability.rs | 15 ++++ Backend/crates/user/src/routes/session.rs | 27 +++++++ Backend/crates/user/src/storage/mod.rs | 3 + .../user}/src/storage/models/auth.rs | 2 +- .../user/src/storage/models/geometry.rs | 18 +++++ Backend/crates/user/src/storage/models/mod.rs | 3 + .../user}/src/storage/models/user.rs | 4 +- .../user}/src/storage/queries/auth.rs | 4 +- .../crates/user/src/storage/queries/mod.rs | 2 + .../user}/src/storage/queries/user.rs | 2 +- Backend/crates/user/src/storage/result.rs | 7 ++ Backend/crates/user/src/transformers/auth.rs | 1 + Backend/crates/user/src/transformers/mod.rs | 1 + Backend/crates/user/src/types.rs | 33 ++++++++ 108 files changed, 989 insertions(+), 63 deletions(-) create mode 100644 .github/workflows/driver.yml rename .github/workflows/{backend.yml => user.yml} (89%) create mode 100644 Backend/crates/common/Cargo.toml create mode 100644 Backend/crates/common/src/lib.rs rename Backend/{ => crates/common}/src/tools/contants.rs (100%) rename Backend/{ => crates/common}/src/tools/mod.rs (100%) rename Backend/{ => crates/common}/src/tools/polygon_utils/geo_json.rs (100%) rename Backend/{ => crates/common}/src/tools/polygon_utils/mod.rs (100%) rename Backend/{ => crates/common}/src/tools/session_utils.rs (94%) rename Backend/{ => crates/common}/src/tools/types.rs (100%) rename Backend/{ => crates/common}/src/tools/utils.rs (100%) create mode 100644 Backend/crates/driver/Cargo.toml rename Backend/{ => crates/driver}/configs/app.dhall (100%) create mode 100644 Backend/crates/driver/diesel.toml rename Backend/{ => crates/driver}/migrations/00000000000000_diesel_initial_setup/down.sql (100%) rename Backend/{ => crates/driver}/migrations/00000000000000_diesel_initial_setup/up.sql (100%) create mode 100644 Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/down.sql create mode 100644 Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/up.sql create mode 100644 Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/down.sql create mode 100644 Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/up.sql rename Backend/{ => crates/driver}/shape_files/bengaluru.json (100%) rename Backend/{ => crates/driver}/src/db/database.rs (100%) rename Backend/{ => crates/driver}/src/db/mod.rs (100%) create mode 100644 Backend/crates/driver/src/db/schema.rs rename Backend/{ => crates/driver}/src/handlers/auth/auth.rs (89%) rename Backend/{ => crates/driver}/src/handlers/auth/auth_verify.rs (96%) rename Backend/{ => crates/driver}/src/handlers/auth/mod.rs (100%) rename Backend/{ => crates/driver}/src/handlers/error_handler/common_error_handler.rs (100%) rename Backend/{ => crates/driver}/src/handlers/error_handler/mod.rs (100%) rename Backend/{ => crates/driver}/src/handlers/geometry/mod.rs (100%) rename Backend/{ => crates/driver}/src/handlers/geometry/serviceability.rs (82%) rename Backend/{ => crates/driver}/src/handlers/mod.rs (100%) rename Backend/{ => crates/driver}/src/handlers/user/design.md (100%) rename Backend/{ => crates/driver}/src/main.rs (97%) rename Backend/{ => crates/driver}/src/middlewares/middleware.rs (100%) rename Backend/{ => crates/driver}/src/middlewares/mod.rs (100%) rename Backend/{ => crates/driver}/src/routes/auth.rs (100%) create mode 100644 Backend/crates/driver/src/routes/driver.rs rename Backend/{ => crates/driver}/src/routes/mod.rs (100%) rename Backend/{ => crates/driver}/src/routes/routes.rs (100%) rename Backend/{ => crates/driver}/src/routes/serviceability.rs (100%) rename Backend/{ => crates/driver}/src/routes/session.rs (92%) rename Backend/{ => crates/driver}/src/storage/mod.rs (100%) create mode 100644 Backend/crates/driver/src/storage/models/auth.rs rename Backend/{ => crates/driver}/src/storage/models/geometry.rs (100%) rename Backend/{ => crates/driver}/src/storage/models/mod.rs (100%) create mode 100644 Backend/crates/driver/src/storage/models/user.rs create mode 100644 Backend/crates/driver/src/storage/queries/auth.rs rename Backend/{ => crates/driver}/src/storage/queries/mod.rs (100%) create mode 100644 Backend/crates/driver/src/storage/queries/user.rs rename Backend/{ => crates/driver}/src/storage/result.rs (100%) rename Backend/{ => crates/driver}/src/transformers/auth.rs (100%) rename Backend/{ => crates/driver}/src/transformers/mod.rs (100%) rename Backend/{ => crates/driver}/src/types.rs (100%) create mode 100644 Backend/crates/user/Cargo.toml create mode 100644 Backend/crates/user/configs/app.dhall rename Backend/{ => crates/user}/diesel.toml (86%) create mode 100644 Backend/crates/user/migrations/00000000000000_diesel_initial_setup/down.sql create mode 100644 Backend/crates/user/migrations/00000000000000_diesel_initial_setup/up.sql rename Backend/{ => crates/user}/migrations/2024-03-03-043630_create_auth_table/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-03-043630_create_auth_table/up.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-03-051935_add_token_field/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-03-051935_add_token_field/up.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-03-052716_alter_time_Stamp/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-03-052716_alter_time_Stamp/up.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-15-131532_create_user_table/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-15-131532_create_user_table/up.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-17-064742_add_role_in_auth/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-17-064742_add_role_in_auth/up.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-19-141300_remove-session-token/down.sql (100%) rename Backend/{ => crates/user}/migrations/2024-03-19-141300_remove-session-token/up.sql (100%) create mode 100644 Backend/crates/user/migrations/2024-05-01-100047_switch-schema/down.sql create mode 100644 Backend/crates/user/migrations/2024-05-01-100047_switch-schema/up.sql create mode 100644 Backend/crates/user/shape_files/bengaluru.json create mode 100644 Backend/crates/user/src/db/database.rs create mode 100644 Backend/crates/user/src/db/mod.rs rename Backend/{ => crates/user}/src/db/schema.rs (84%) create mode 100644 Backend/crates/user/src/handlers/auth/auth.rs create mode 100644 Backend/crates/user/src/handlers/auth/auth_verify.rs create mode 100644 Backend/crates/user/src/handlers/auth/mod.rs create mode 100644 Backend/crates/user/src/handlers/error_handler/common_error_handler.rs create mode 100644 Backend/crates/user/src/handlers/error_handler/mod.rs create mode 100644 Backend/crates/user/src/handlers/geometry/mod.rs create mode 100644 Backend/crates/user/src/handlers/geometry/serviceability.rs create mode 100644 Backend/crates/user/src/handlers/mod.rs create mode 100644 Backend/crates/user/src/handlers/user/design.md create mode 100644 Backend/crates/user/src/main.rs create mode 100644 Backend/crates/user/src/middlewares/middleware.rs create mode 100644 Backend/crates/user/src/middlewares/mod.rs create mode 100644 Backend/crates/user/src/routes/auth.rs create mode 100644 Backend/crates/user/src/routes/mod.rs create mode 100644 Backend/crates/user/src/routes/routes.rs create mode 100644 Backend/crates/user/src/routes/serviceability.rs create mode 100644 Backend/crates/user/src/routes/session.rs create mode 100644 Backend/crates/user/src/storage/mod.rs rename Backend/{ => crates/user}/src/storage/models/auth.rs (95%) create mode 100644 Backend/crates/user/src/storage/models/geometry.rs create mode 100644 Backend/crates/user/src/storage/models/mod.rs rename Backend/{ => crates/user}/src/storage/models/user.rs (94%) rename Backend/{ => crates/user}/src/storage/queries/auth.rs (96%) create mode 100644 Backend/crates/user/src/storage/queries/mod.rs rename Backend/{ => crates/user}/src/storage/queries/user.rs (97%) create mode 100644 Backend/crates/user/src/storage/result.rs create mode 100644 Backend/crates/user/src/transformers/auth.rs create mode 100644 Backend/crates/user/src/transformers/mod.rs create mode 100644 Backend/crates/user/src/types.rs diff --git a/.github/workflows/cross_native.yml b/.github/workflows/cross_native.yml index c752d0c..2882016 100644 --- a/.github/workflows/cross_native.yml +++ b/.github/workflows/cross_native.yml @@ -25,3 +25,7 @@ jobs: with: channel: stable - run: flutter build apk + - name: Update Status + uses: ouzi-dev/commit-status-updater@v2 + with: + status: "${{ job.status }}" diff --git a/.github/workflows/driver.yml b/.github/workflows/driver.yml new file mode 100644 index 0000000..630715a --- /dev/null +++ b/.github/workflows/driver.yml @@ -0,0 +1,25 @@ +name: Rust + +on: [pull_request] + +env: + CARGO_TERM_COLOR: always +permissions: + statuses: write + pull-requests: write + +jobs: + build: + runs-on: ubuntu-latest + defaults: + run: + working-directory: Backend/crates/driver/ + + steps: + - uses: actions/checkout@v3 + - name: Build + run: cargo build --verbose + - name: Update Status + uses: ouzi-dev/commit-status-updater@v2 + with: + status: "${{ job.status }}" diff --git a/.github/workflows/backend.yml b/.github/workflows/user.yml similarity index 89% rename from .github/workflows/backend.yml rename to .github/workflows/user.yml index 214273f..ff64715 100644 --- a/.github/workflows/backend.yml +++ b/.github/workflows/user.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: Backend/ + working-directory: Backend/crates/user/ steps: - uses: actions/checkout@v3 diff --git a/Backend/Cargo.toml b/Backend/Cargo.toml index 6530b88..e2c0511 100644 --- a/Backend/Cargo.toml +++ b/Backend/Cargo.toml @@ -1,39 +1,6 @@ -[package] -name = "stosp" -version = "0.1.0" -edition = "2021" - -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[dependencies] -actix-web = "4.3.0" -actix-rt = "2.8.0" -chrono = { version = "0.4", features = ["serde"] } -dotenv = "0.15.0" -diesel = { version = "2.0.3", features = ["postgres", "r2d2", "uuid", "chrono"] } -diesel_migrations = "2.0.0" -env_logger = "0.11.1" -lazy_static = "1.4" -listenfd = "1.0.0" -log = "0.4" -serde = {version = "1.0", features = ["derive"]} -serde_json = "1.0" -r2d2 = "0.8" -rand = "0.8" -futures = "0.3.26" -futures-util = "0.3.26" -futures-macro = "0.3.26" -chacha20poly1305 = "0.10.1" -base64 = "0.22.0" -jsonwebtoken = "9.2.0" -serde_dhall ="0.12.1" -uuid = { version = "1.3.0", features = ["serde", "v4"] } -cargo-watch = "8.5.2" -cargo-run-script = "0.2.0" -geo = { version = "0.28.0", features = ["use-serde"] } -geojson = { version = "0.24.1", features = ["geo-types"] } - -[package.metadata.scripts] -start = "cargo watch -x run" -goodbye = "echo Goodbye" -install = "cargo install --path . --force" +[workspace] +resolver = "2" +members = ["crates/*"] +package.name = "stosp" +package.edition = "2021" +package.license = "Apache-2.0" diff --git a/Backend/crates/common/Cargo.toml b/Backend/crates/common/Cargo.toml new file mode 100644 index 0000000..405700d --- /dev/null +++ b/Backend/crates/common/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "common" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +actix-web = "4.5.1" +actix-rt = "2.9.0" +chrono = { version = "0.4", features = ["serde"] } +diesel = { version = "2.1.6", features = ["postgres", "r2d2", "uuid", "chrono"] } +diesel_migrations = "2.1.0" +geo = { version = "0.28.0", features = ["use-serde"] } +geojson = { version = "0.24.1", features = ["geo-types"] } +jsonwebtoken = "9.3.0" +serde = {version = "1.0.199", features = ["derive"]} +serde_json = "1.0.116" +log = "0.4" \ No newline at end of file diff --git a/Backend/crates/common/src/lib.rs b/Backend/crates/common/src/lib.rs new file mode 100644 index 0000000..31e2f21 --- /dev/null +++ b/Backend/crates/common/src/lib.rs @@ -0,0 +1 @@ +pub mod tools; \ No newline at end of file diff --git a/Backend/src/tools/contants.rs b/Backend/crates/common/src/tools/contants.rs similarity index 100% rename from Backend/src/tools/contants.rs rename to Backend/crates/common/src/tools/contants.rs diff --git a/Backend/src/tools/mod.rs b/Backend/crates/common/src/tools/mod.rs similarity index 100% rename from Backend/src/tools/mod.rs rename to Backend/crates/common/src/tools/mod.rs diff --git a/Backend/src/tools/polygon_utils/geo_json.rs b/Backend/crates/common/src/tools/polygon_utils/geo_json.rs similarity index 100% rename from Backend/src/tools/polygon_utils/geo_json.rs rename to Backend/crates/common/src/tools/polygon_utils/geo_json.rs diff --git a/Backend/src/tools/polygon_utils/mod.rs b/Backend/crates/common/src/tools/polygon_utils/mod.rs similarity index 100% rename from Backend/src/tools/polygon_utils/mod.rs rename to Backend/crates/common/src/tools/polygon_utils/mod.rs diff --git a/Backend/src/tools/session_utils.rs b/Backend/crates/common/src/tools/session_utils.rs similarity index 94% rename from Backend/src/tools/session_utils.rs rename to Backend/crates/common/src/tools/session_utils.rs index b5c00c7..20e8fd7 100644 --- a/Backend/src/tools/session_utils.rs +++ b/Backend/crates/common/src/tools/session_utils.rs @@ -36,7 +36,7 @@ impl SessionToken { SessionToken { id, exp, - iat: get_current_time().timestamp(), + iat: get_current_time().and_utc().timestamp(), } } } diff --git a/Backend/src/tools/types.rs b/Backend/crates/common/src/tools/types.rs similarity index 100% rename from Backend/src/tools/types.rs rename to Backend/crates/common/src/tools/types.rs diff --git a/Backend/src/tools/utils.rs b/Backend/crates/common/src/tools/utils.rs similarity index 100% rename from Backend/src/tools/utils.rs rename to Backend/crates/common/src/tools/utils.rs diff --git a/Backend/crates/driver/Cargo.toml b/Backend/crates/driver/Cargo.toml new file mode 100644 index 0000000..936ed3e --- /dev/null +++ b/Backend/crates/driver/Cargo.toml @@ -0,0 +1,41 @@ +[package] +name = "driver" +version = "0.1.0" +edition.workspace = true +license.workspace = true + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +actix-web = "4.5.1" +actix-rt = "2.9.0" +chrono = { version = "0.4", features = ["serde"] } +dotenv = "0.15.0" +diesel = { version = "2.1.6", features = ["postgres", "r2d2", "uuid", "chrono"] } +diesel_migrations = "2.1.0" +lazy_static = "1.4" +listenfd = "1.0.1" +log = "0.4" +serde = {version = "1.0.199", features = ["derive"]} +serde_json = "1.0.116" +r2d2 = "0.8.10" +rand = "0.8.5" +futures = "0.3.30" +futures-util = "0.3.30" +futures-macro = "0.3.30" +chacha20poly1305 = "0.10.1" +base64 = "0.22.0" +jsonwebtoken = "9.3.0" +serde_dhall ="0.12.1" +uuid = { version = "1.8.0", features = ["serde", "v4"] } +cargo-watch = "8.5.2" +cargo-run-script = "0.2.0" +geo = { version = "0.28.0", features = ["use-serde"] } +geojson = { version = "0.24.1", features = ["geo-types"] } +common = { path = "../common" } + +[package.metadata.scripts] +start = "cargo watch -x run" +goodbye = "echo Goodbye" +install = "cargo install --path . --force" + diff --git a/Backend/configs/app.dhall b/Backend/crates/driver/configs/app.dhall similarity index 100% rename from Backend/configs/app.dhall rename to Backend/crates/driver/configs/app.dhall diff --git a/Backend/crates/driver/diesel.toml b/Backend/crates/driver/diesel.toml new file mode 100644 index 0000000..74a2ebd --- /dev/null +++ b/Backend/crates/driver/diesel.toml @@ -0,0 +1,9 @@ +# For documentation on how to configure this file, +# see https://diesel.rs/guides/configuring-diesel-cli + +[print_schema] +file = "src/db/schema.rs" +schema = "school_trips_driver" + +[migrations_directory] +dir = "./migrations" diff --git a/Backend/migrations/00000000000000_diesel_initial_setup/down.sql b/Backend/crates/driver/migrations/00000000000000_diesel_initial_setup/down.sql similarity index 100% rename from Backend/migrations/00000000000000_diesel_initial_setup/down.sql rename to Backend/crates/driver/migrations/00000000000000_diesel_initial_setup/down.sql diff --git a/Backend/migrations/00000000000000_diesel_initial_setup/up.sql b/Backend/crates/driver/migrations/00000000000000_diesel_initial_setup/up.sql similarity index 100% rename from Backend/migrations/00000000000000_diesel_initial_setup/up.sql rename to Backend/crates/driver/migrations/00000000000000_diesel_initial_setup/up.sql diff --git a/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/down.sql b/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/down.sql new file mode 100644 index 0000000..d9a93fe --- /dev/null +++ b/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/down.sql @@ -0,0 +1 @@ +-- This file should undo anything in `up.sql` diff --git a/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/up.sql b/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/up.sql new file mode 100644 index 0000000..9826bb9 --- /dev/null +++ b/Backend/crates/driver/migrations/2024-05-01-125352_initial-queries/up.sql @@ -0,0 +1,33 @@ +-- Your SQL goes here +CREATE SCHEMA IF NOT EXISTS school_trips_driver; +CREATE TABLE school_trips_driver.auth + ( + id VARCHAR(255) PRIMARY KEY, + mobile_number VARCHAR NOT NULL, + country_code VARCHAR(10) NOT NULL, + token VARCHAR NOT NULL, + created_at TIMESTAMP NOT NULL, + otp VARCHAR(10) NOT NULL, + updated_at TIMESTAMP NOT NULL +); + +ALTER TABLE school_trips_driver.auth ADD COLUMN token_expiry TIMESTAMP NOT NULL DEFAULT now(); +ALTER TABLE school_trips_driver.auth ALTER COLUMN created_at SET DATA TYPE TIMESTAMPTZ; +ALTER TABLE school_trips_driver.auth ALTER COLUMN updated_at SET DATA TYPE TIMESTAMPTZ; +ALTER TABLE school_trips_driver.auth ALTER COLUMN token_expiry SET DATA TYPE TIMESTAMPTZ; + +CREATE TYPE school_trips_driver.role_type AS ENUM ('PARENT', 'DRIVER'); + +CREATE TABLE school_trips_driver.users + ( name Varchar(255), + created_at TIMESTAMPTZ NOT NULL, + updated_at TIMESTAMPTZ NOT NULL, + session_token Varchar NOT NULL, + mobile_number Varchar NOT NULL, + role role_type NOT NULL, + id Varchar PRIMARY KEY + ); + +ALTER TABLE school_trips_driver.auth ADD COLUMN role role_type NOT NULL; + +ALTER TABLE school_trips_driver.users DROP COLUMN session_token; \ No newline at end of file diff --git a/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/down.sql b/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/down.sql new file mode 100644 index 0000000..d9a93fe --- /dev/null +++ b/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/down.sql @@ -0,0 +1 @@ +-- This file should undo anything in `up.sql` diff --git a/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/up.sql b/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/up.sql new file mode 100644 index 0000000..f1993c0 --- /dev/null +++ b/Backend/crates/driver/migrations/2024-05-01-125647_create-role-type/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +CREATE TYPE school_trips_driver.role_type AS ENUM ('PARENT', 'DRIVER'); \ No newline at end of file diff --git a/Backend/shape_files/bengaluru.json b/Backend/crates/driver/shape_files/bengaluru.json similarity index 100% rename from Backend/shape_files/bengaluru.json rename to Backend/crates/driver/shape_files/bengaluru.json diff --git a/Backend/src/db/database.rs b/Backend/crates/driver/src/db/database.rs similarity index 100% rename from Backend/src/db/database.rs rename to Backend/crates/driver/src/db/database.rs diff --git a/Backend/src/db/mod.rs b/Backend/crates/driver/src/db/mod.rs similarity index 100% rename from Backend/src/db/mod.rs rename to Backend/crates/driver/src/db/mod.rs diff --git a/Backend/crates/driver/src/db/schema.rs b/Backend/crates/driver/src/db/schema.rs new file mode 100644 index 0000000..9ecdaa8 --- /dev/null +++ b/Backend/crates/driver/src/db/schema.rs @@ -0,0 +1,49 @@ +// @generated automatically by Diesel CLI. + +pub mod school_trips_driver { + pub mod sql_types { + #[derive(diesel::sql_types::SqlType)] + #[diesel(postgres_type(name = "role_type"))] + pub struct RoleType; + } + + diesel::table! { + use diesel::sql_types::*; + use super::sql_types::RoleType; + + school_trips_driver.auth (id) { + #[max_length = 255] + id -> Varchar, + mobile_number -> Varchar, + #[max_length = 10] + country_code -> Varchar, + token -> Varchar, + created_at -> Timestamptz, + #[max_length = 10] + otp -> Varchar, + updated_at -> Timestamptz, + token_expiry -> Timestamptz, + role -> RoleType, + } + } + + diesel::table! { + use diesel::sql_types::*; + use super::sql_types::RoleType; + + school_trips_driver.users (id) { + #[max_length = 255] + name -> Nullable, + created_at -> Timestamptz, + updated_at -> Timestamptz, + mobile_number -> Varchar, + role -> RoleType, + id -> Varchar, + } + } + + diesel::allow_tables_to_appear_in_same_query!( + auth, + users, + ); +} diff --git a/Backend/src/handlers/auth/auth.rs b/Backend/crates/driver/src/handlers/auth/auth.rs similarity index 89% rename from Backend/src/handlers/auth/auth.rs rename to Backend/crates/driver/src/handlers/auth/auth.rs index c975aaf..b3e2215 100644 --- a/Backend/src/handlers/auth/auth.rs +++ b/Backend/crates/driver/src/handlers/auth/auth.rs @@ -1,12 +1,12 @@ use crate::storage::models; use crate::storage::models::auth::{Auth, AuthResponse}; use crate::storage::result::QueryResult; -use crate::tools; -use crate::tools::utils::get_current_time; +// use crate::tools::utils::get_current_time; use crate::ServerState; use actix_web::web::{self}; use actix_web::HttpResponse; use base64::{engine::general_purpose::STANDARD, Engine as _}; +use common::tools::utils::{get_current_time, get_exipry_from_minutes}; pub fn handle_auth( state: web::Data, @@ -21,7 +21,7 @@ pub fn handle_auth( let updated_auth = Auth { token: id.clone(), updated_at: get_current_time(), - token_expiry: tools::utils::get_exipry_from_minutes(state.config.auth_timeout), + token_expiry: get_exipry_from_minutes(state.config.auth_timeout), ..existing_user }; updated_auth.update(&state.data.pool); @@ -38,7 +38,7 @@ pub fn handle_auth( country_code: req.country_code.clone(), otp: state.config.default_otp.clone(), role: req.role.to_owned(), - token_expiry: tools::utils::get_exipry_from_minutes(state.config.auth_timeout), + token_expiry: get_exipry_from_minutes(state.config.auth_timeout), }; match auth.insert(&state.data.pool) { QueryResult::Success => { diff --git a/Backend/src/handlers/auth/auth_verify.rs b/Backend/crates/driver/src/handlers/auth/auth_verify.rs similarity index 96% rename from Backend/src/handlers/auth/auth_verify.rs rename to Backend/crates/driver/src/handlers/auth/auth_verify.rs index 4b7e31b..257e3b1 100644 --- a/Backend/src/handlers/auth/auth_verify.rs +++ b/Backend/crates/driver/src/handlers/auth/auth_verify.rs @@ -2,12 +2,12 @@ use crate::storage::models; use crate::storage::models::auth::{Auth, VerifyAuthResponse}; use crate::storage::models::user::User; use crate::storage::result::QueryResult; -use crate::tools::contants::ONEWEEK; -use crate::tools::session_utils::SessionToken; -use crate::tools::utils::{get_current_time, get_exipry_from_minutes, is_expired}; use crate::ServerState; use actix_web::web::{self}; use actix_web::HttpResponse; +use common::tools::contants::ONEWEEK; +use common::tools::session_utils::SessionToken; +use common::tools::utils::{get_current_time, get_exipry_from_minutes, is_expired}; pub fn handle_verify_auth( state: web::Data, diff --git a/Backend/src/handlers/auth/mod.rs b/Backend/crates/driver/src/handlers/auth/mod.rs similarity index 100% rename from Backend/src/handlers/auth/mod.rs rename to Backend/crates/driver/src/handlers/auth/mod.rs diff --git a/Backend/src/handlers/error_handler/common_error_handler.rs b/Backend/crates/driver/src/handlers/error_handler/common_error_handler.rs similarity index 100% rename from Backend/src/handlers/error_handler/common_error_handler.rs rename to Backend/crates/driver/src/handlers/error_handler/common_error_handler.rs diff --git a/Backend/src/handlers/error_handler/mod.rs b/Backend/crates/driver/src/handlers/error_handler/mod.rs similarity index 100% rename from Backend/src/handlers/error_handler/mod.rs rename to Backend/crates/driver/src/handlers/error_handler/mod.rs diff --git a/Backend/src/handlers/geometry/mod.rs b/Backend/crates/driver/src/handlers/geometry/mod.rs similarity index 100% rename from Backend/src/handlers/geometry/mod.rs rename to Backend/crates/driver/src/handlers/geometry/mod.rs diff --git a/Backend/src/handlers/geometry/serviceability.rs b/Backend/crates/driver/src/handlers/geometry/serviceability.rs similarity index 82% rename from Backend/src/handlers/geometry/serviceability.rs rename to Backend/crates/driver/src/handlers/geometry/serviceability.rs index 83739fb..fd91dc0 100644 --- a/Backend/src/handlers/geometry/serviceability.rs +++ b/Backend/crates/driver/src/handlers/geometry/serviceability.rs @@ -1,6 +1,6 @@ use crate::{ storage::models::geometry::ServiceabilityRequest, - tools::polygon_utils::geo_json::get_available_shape_files, web, HttpResponse, ServerState, + common::tools::polygon_utils::geo_json::get_available_shape_files, web, HttpResponse, ServerState, }; use geo::{coord, Intersects}; diff --git a/Backend/src/handlers/mod.rs b/Backend/crates/driver/src/handlers/mod.rs similarity index 100% rename from Backend/src/handlers/mod.rs rename to Backend/crates/driver/src/handlers/mod.rs diff --git a/Backend/src/handlers/user/design.md b/Backend/crates/driver/src/handlers/user/design.md similarity index 100% rename from Backend/src/handlers/user/design.md rename to Backend/crates/driver/src/handlers/user/design.md diff --git a/Backend/src/main.rs b/Backend/crates/driver/src/main.rs similarity index 97% rename from Backend/src/main.rs rename to Backend/crates/driver/src/main.rs index ed52dd7..04b7464 100644 --- a/Backend/src/main.rs +++ b/Backend/crates/driver/src/main.rs @@ -1,5 +1,6 @@ extern crate diesel; extern crate diesel_migrations; +extern crate common; use actix_web::{web, App, HttpResponse, HttpServer, Result}; use serde; use types::ServerState; @@ -7,7 +8,6 @@ mod db; mod handlers; mod routes; mod storage; -mod tools; mod transformers; mod types; @@ -28,7 +28,6 @@ async fn not_found() -> Result { async fn main() -> std::io::Result<()> { let server_state = ServerState::new(); // creating the server state let app_data: web::Data<_> = web::Data::new(server_state); - env_logger::init(); HttpServer::new( move || { App::new() diff --git a/Backend/src/middlewares/middleware.rs b/Backend/crates/driver/src/middlewares/middleware.rs similarity index 100% rename from Backend/src/middlewares/middleware.rs rename to Backend/crates/driver/src/middlewares/middleware.rs diff --git a/Backend/src/middlewares/mod.rs b/Backend/crates/driver/src/middlewares/mod.rs similarity index 100% rename from Backend/src/middlewares/mod.rs rename to Backend/crates/driver/src/middlewares/mod.rs diff --git a/Backend/src/routes/auth.rs b/Backend/crates/driver/src/routes/auth.rs similarity index 100% rename from Backend/src/routes/auth.rs rename to Backend/crates/driver/src/routes/auth.rs diff --git a/Backend/crates/driver/src/routes/driver.rs b/Backend/crates/driver/src/routes/driver.rs new file mode 100644 index 0000000..e69de29 diff --git a/Backend/src/routes/mod.rs b/Backend/crates/driver/src/routes/mod.rs similarity index 100% rename from Backend/src/routes/mod.rs rename to Backend/crates/driver/src/routes/mod.rs diff --git a/Backend/src/routes/routes.rs b/Backend/crates/driver/src/routes/routes.rs similarity index 100% rename from Backend/src/routes/routes.rs rename to Backend/crates/driver/src/routes/routes.rs diff --git a/Backend/src/routes/serviceability.rs b/Backend/crates/driver/src/routes/serviceability.rs similarity index 100% rename from Backend/src/routes/serviceability.rs rename to Backend/crates/driver/src/routes/serviceability.rs diff --git a/Backend/src/routes/session.rs b/Backend/crates/driver/src/routes/session.rs similarity index 92% rename from Backend/src/routes/session.rs rename to Backend/crates/driver/src/routes/session.rs index 38436c7..8eb0959 100644 --- a/Backend/src/routes/session.rs +++ b/Backend/crates/driver/src/routes/session.rs @@ -1,7 +1,7 @@ use actix_web::{get, http::header::AUTHORIZATION, web, HttpRequest, HttpResponse}; use crate::{ - tools::{session_utils::SessionToken, utils::get_token_from_bearer}, + common::tools::{session_utils::SessionToken, utils::get_token_from_bearer}, types::ServerState, }; diff --git a/Backend/src/storage/mod.rs b/Backend/crates/driver/src/storage/mod.rs similarity index 100% rename from Backend/src/storage/mod.rs rename to Backend/crates/driver/src/storage/mod.rs diff --git a/Backend/crates/driver/src/storage/models/auth.rs b/Backend/crates/driver/src/storage/models/auth.rs new file mode 100644 index 0000000..2714ff4 --- /dev/null +++ b/Backend/crates/driver/src/storage/models/auth.rs @@ -0,0 +1,59 @@ +use crate::db::{self}; +use chrono::NaiveDateTime; +use diesel::prelude::*; +use serde::{Deserialize, Serialize}; + +use super::user::{Role, User}; + +/// Auth table sturct +#[derive(AsChangeset, Queryable, Insertable)] +#[diesel(table_name = db::schema::school_trips_driver::auth)] +pub struct Auth { + pub id: String, + pub mobile_number: String, + pub country_code: String, + pub token: String, + pub created_at: NaiveDateTime, + pub otp: String, + pub updated_at: NaiveDateTime, + pub token_expiry: NaiveDateTime, + pub role: Role, +} +// Request and Response types.. +#[derive(Deserialize, Serialize)] +pub struct AuthRequest { + pub mobile_number: String, + pub country_code: String, + pub role: Role, +} + +#[derive(Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct AuthResponse { + pub auth_id: String, +} + +#[derive(Deserialize, Serialize)] +pub struct VerifyAuthRequest { + pub otp: String, +} + +#[derive(Deserialize, Serialize)] +pub struct VerifyAuthResponse { + pub session_token: String, + pub user: User, +} +// TODO Add User creation +#[derive(Deserialize, Serialize)] +pub struct RegisterUserRequest { + pub user_name: String, + pub user_pass: String, +} + +#[derive(Deserialize, Serialize)] +pub struct RegisterUserResponse { + pub id: String, + pub user_name: Option, + pub mobile_number: Option, + pub country_code: Option, +} diff --git a/Backend/src/storage/models/geometry.rs b/Backend/crates/driver/src/storage/models/geometry.rs similarity index 100% rename from Backend/src/storage/models/geometry.rs rename to Backend/crates/driver/src/storage/models/geometry.rs diff --git a/Backend/src/storage/models/mod.rs b/Backend/crates/driver/src/storage/models/mod.rs similarity index 100% rename from Backend/src/storage/models/mod.rs rename to Backend/crates/driver/src/storage/models/mod.rs diff --git a/Backend/crates/driver/src/storage/models/user.rs b/Backend/crates/driver/src/storage/models/user.rs new file mode 100644 index 0000000..c8f214c --- /dev/null +++ b/Backend/crates/driver/src/storage/models/user.rs @@ -0,0 +1,65 @@ +use std::io::Write; + +use crate::db::{ + self, + schema::school_trips_driver::{ + sql_types::RoleType, + users::{self}, + }, +}; +use chrono::NaiveDateTime; +use diesel::{ + deserialize::{self, FromSql, FromSqlRow}, + expression::AsExpression, + pg::{Pg, PgValue}, + prelude::*, + serialize::{self, IsNull, Output, ToSql}, +}; +use serde::{Deserialize, Serialize}; + +#[derive(Debug, PartialEq, FromSqlRow, AsExpression, Eq, Serialize, Deserialize, Clone, Copy)] +#[diesel(sql_type = RoleType)] +pub enum Role { + PARENT, + DRIVER, +} + +impl ToSql for Role { + fn to_sql<'b>(&'b self, out: &mut Output<'b, '_, Pg>) -> serialize::Result { + match *self { + Role::PARENT => out.write_all(b"PARENT")?, + Role::DRIVER => out.write_all(b"DRIVER")?, + } + Ok(IsNull::No) + } +} + +impl FromSql for Role { + fn from_sql(bytes: PgValue<'_>) -> deserialize::Result { + match bytes.as_bytes() { + b"PARENT" => Ok(Role::PARENT), + b"DRIVER" => Ok(Role::DRIVER), + _ => Err("Unrecognized enum variant".into()), + } + } +} + +/// User table sturct +#[derive(AsChangeset, Queryable, Insertable, Selectable, Serialize, Deserialize, Clone)] +#[diesel(table_name = db::schema::school_trips_driver::users)] +pub struct User { + pub name: Option, + pub updated_at: NaiveDateTime, + pub created_at: NaiveDateTime, + pub id: String, + pub mobile_number: String, + pub role: Role, +} + +impl Selectable for Role { + type SelectExpression = users::role; + + fn construct_selection() -> Self::SelectExpression { + users::role + } +} diff --git a/Backend/crates/driver/src/storage/queries/auth.rs b/Backend/crates/driver/src/storage/queries/auth.rs new file mode 100644 index 0000000..708d3f2 --- /dev/null +++ b/Backend/crates/driver/src/storage/queries/auth.rs @@ -0,0 +1,71 @@ +use diesel::ExpressionMethods; +use diesel::QueryDsl; +use diesel::RunQueryDsl; + +use crate::db::schema::school_trips_driver::auth::dsl; +use crate::db::schema::school_trips_driver::auth::{self}; + +use crate::{ + db::database::DBPool, + storage::{models::auth::Auth, result}, +}; + +// Implementaiton of Auth table and related Queries +impl Auth { + /// Implementation for inserting a record in auth table + pub fn insert(self, conn: &DBPool) -> result::QueryResult { + let insert_query = diesel::insert_into(auth::table).values(&self); + match insert_query.execute(&mut conn.get().unwrap()) { + Ok(_) => return result::QueryResult::Success, + Err(err) => return result::QueryResult::Failed(err.to_string()), + }; + } + + /// Implementation for updating a record in auth table + pub fn update(self, conn: &DBPool) -> result::QueryResult { + let update_query = diesel::update(auth::table).set(&self); + match update_query.execute(&mut conn.get().unwrap()) { + Ok(_) => return result::QueryResult::Record(self), + Err(err) => return result::QueryResult::Failed(err.to_string()), + }; + } + + /// Implementation to find all the records by primary key. + pub fn get_all_by_key(key: String, conn: &DBPool) -> result::QueryResult { + let get_all_result = dsl::auth.filter(auth::id.eq(key.to_owned())); + let results = get_all_result.load::(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Records(results), + Err(err) => return result::QueryResult::Failed(err.to_string()), + } + } + + /// Implementation to find the record by mobile number. + pub fn get_by_mobile(key: String, conn: &DBPool) -> result::QueryResult> { + let get_all_result = dsl::auth.filter(auth::mobile_number.eq(key.to_owned())); + let results = get_all_result.load::(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Record(results.into_iter().nth(0)), + Err(err) => result::QueryResult::Failed(err.to_string()), + } + } + + /// Implementation to find the record by primary key. + pub fn get_one_by_key(key: String, conn: &DBPool) -> result::QueryResult> { + let get_all_result = dsl::auth.filter(auth::id.eq(key.to_owned())); + let results = get_all_result.load::(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Record(results.into_iter().nth(0)), + Err(err) => result::QueryResult::Failed(err.to_string()), + } + } + /// Implementation to find the record by token. + pub fn get_by_token(key: String, conn: &DBPool) -> result::QueryResult> { + let get_all_result = dsl::auth.filter(auth::token.eq(key.to_owned())); + let results = get_all_result.load::(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Record(results.into_iter().nth(0)), + Err(err) => result::QueryResult::Failed(err.to_string()), + } + } +} diff --git a/Backend/src/storage/queries/mod.rs b/Backend/crates/driver/src/storage/queries/mod.rs similarity index 100% rename from Backend/src/storage/queries/mod.rs rename to Backend/crates/driver/src/storage/queries/mod.rs diff --git a/Backend/crates/driver/src/storage/queries/user.rs b/Backend/crates/driver/src/storage/queries/user.rs new file mode 100644 index 0000000..9126bf1 --- /dev/null +++ b/Backend/crates/driver/src/storage/queries/user.rs @@ -0,0 +1,68 @@ +use diesel::ExpressionMethods; +use diesel::QueryDsl; +use diesel::RunQueryDsl; +use diesel::SelectableHelper; + +use crate::db::schema::school_trips_driver::users::{self}; + +use crate::{ + db::database::DBPool, + storage::{models::user::User, result}, +}; + +// Implementaiton of User table and related Queries +impl User { + /// Implementation for inserting a record in users table + pub fn insert(self, conn: &DBPool) -> result::QueryResult { + let insert_query = diesel::insert_into(users::table).values(&self); + match insert_query.execute(&mut conn.get().unwrap()) { + Ok(_) => return result::QueryResult::Success, + Err(err) => return result::QueryResult::Failed(err.to_string()), + }; + } + + /// Implementation for updating a record in users table + pub fn update(self, conn: &DBPool) -> result::QueryResult { + let update_query = diesel::update(users::table).set(&self); + match update_query.execute(&mut conn.get().unwrap()) { + Ok(_) => return result::QueryResult::Record(self), + Err(err) => return result::QueryResult::Failed(err.to_string()), + }; + } + + /// Implementation to find all the records by primary key. + pub fn get_all_by_key(key: String, conn: &DBPool) -> result::QueryResult { + let results = users::table + .select(User::as_select()) + .filter(users::id.eq(key)) + .load(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Records(results), + Err(err) => return result::QueryResult::Failed(err.to_string()), + } + } + + /// Implementation to find the record by mobile number. + pub fn get_by_mobile(key: &String, conn: &DBPool) -> result::QueryResult> { + let results = users::table + .select(User::as_select()) + .filter(users::mobile_number.eq(key)) + .load(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Record(results.into_iter().nth(0)), + Err(err) => result::QueryResult::Failed(err.to_string()), + } + } + + /// Implementation to find the record by primary key. + pub fn get_one_by_key(key: String, conn: &DBPool) -> result::QueryResult> { + let results = users::table + .select(User::as_select()) + .filter(users::id.eq(key)) + .load(&mut conn.get().unwrap()); + match results { + Ok(results) => result::QueryResult::Record(results.into_iter().nth(0)), + Err(err) => result::QueryResult::Failed(err.to_string()), + } + } +} diff --git a/Backend/src/storage/result.rs b/Backend/crates/driver/src/storage/result.rs similarity index 100% rename from Backend/src/storage/result.rs rename to Backend/crates/driver/src/storage/result.rs diff --git a/Backend/src/transformers/auth.rs b/Backend/crates/driver/src/transformers/auth.rs similarity index 100% rename from Backend/src/transformers/auth.rs rename to Backend/crates/driver/src/transformers/auth.rs diff --git a/Backend/src/transformers/mod.rs b/Backend/crates/driver/src/transformers/mod.rs similarity index 100% rename from Backend/src/transformers/mod.rs rename to Backend/crates/driver/src/transformers/mod.rs diff --git a/Backend/src/types.rs b/Backend/crates/driver/src/types.rs similarity index 100% rename from Backend/src/types.rs rename to Backend/crates/driver/src/types.rs diff --git a/Backend/crates/user/Cargo.toml b/Backend/crates/user/Cargo.toml new file mode 100644 index 0000000..c1c0b59 --- /dev/null +++ b/Backend/crates/user/Cargo.toml @@ -0,0 +1,39 @@ +[package] +name = "user" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +actix-web = "4.5.1" +actix-rt = "2.9.0" +chrono = { version = "0.4", features = ["serde"] } +dotenv = "0.15.0" +diesel = { version = "2.1.6", features = ["postgres", "r2d2", "uuid", "chrono"] } +diesel_migrations = "2.1.0" +lazy_static = "1.4" +listenfd = "1.0.1" +log = "0.4" +serde = {version = "1.0.199", features = ["derive"]} +serde_json = "1.0.116" +r2d2 = "0.8.10" +rand = "0.8.5" +futures = "0.3.30" +futures-util = "0.3.30" +futures-macro = "0.3.30" +chacha20poly1305 = "0.10.1" +base64 = "0.22.0" +jsonwebtoken = "9.3.0" +serde_dhall ="0.12.1" +uuid = { version = "1.8.0", features = ["serde", "v4"] } +cargo-watch = "8.5.2" +cargo-run-script = "0.2.0" +geo = { version = "0.28.0", features = ["use-serde"] } +geojson = { version = "0.24.1", features = ["geo-types"] } +common = { path = "../common" } + +[package.metadata.scripts] +start = "cargo watch -x run" +goodbye = "echo Goodbye" +install = "cargo install --path . --force" diff --git a/Backend/crates/user/configs/app.dhall b/Backend/crates/user/configs/app.dhall new file mode 100644 index 0000000..9221c38 --- /dev/null +++ b/Backend/crates/user/configs/app.dhall @@ -0,0 +1,5 @@ +{ + default_otp = "7722" +, auth_timeout = 3 +, jwt_secret = "CFE0B48F9E026F89F1D6EDF1527B45DE09ADE01772B76318A930FC5C39E9B885" +} \ No newline at end of file diff --git a/Backend/diesel.toml b/Backend/crates/user/diesel.toml similarity index 86% rename from Backend/diesel.toml rename to Backend/crates/user/diesel.toml index 42edafc..a49afde 100644 --- a/Backend/diesel.toml +++ b/Backend/crates/user/diesel.toml @@ -3,7 +3,7 @@ [print_schema] file = "src/db/schema.rs" -schema = "school_trips" +schema = "school_trips_user" [migrations_directory] dir = "./migrations" diff --git a/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/down.sql b/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/down.sql new file mode 100644 index 0000000..a9f5260 --- /dev/null +++ b/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/down.sql @@ -0,0 +1,6 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + +DROP FUNCTION IF EXISTS diesel_manage_updated_at(_tbl regclass); +DROP FUNCTION IF EXISTS diesel_set_updated_at(); diff --git a/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/up.sql b/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/up.sql new file mode 100644 index 0000000..d68895b --- /dev/null +++ b/Backend/crates/user/migrations/00000000000000_diesel_initial_setup/up.sql @@ -0,0 +1,36 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + + + + +-- Sets up a trigger for the given table to automatically set a column called +-- `updated_at` whenever the row is modified (unless `updated_at` was included +-- in the modified columns) +-- +-- # Example +-- +-- ```sql +-- CREATE TABLE users (id SERIAL PRIMARY KEY, updated_at TIMESTAMP NOT NULL DEFAULT NOW()); +-- +-- SELECT diesel_manage_updated_at('users'); +-- ``` +CREATE OR REPLACE FUNCTION diesel_manage_updated_at(_tbl regclass) RETURNS VOID AS $$ +BEGIN + EXECUTE format('CREATE TRIGGER set_updated_at BEFORE UPDATE ON %s + FOR EACH ROW EXECUTE PROCEDURE diesel_set_updated_at()', _tbl); +END; +$$ LANGUAGE plpgsql; + +CREATE OR REPLACE FUNCTION diesel_set_updated_at() RETURNS trigger AS $$ +BEGIN + IF ( + NEW IS DISTINCT FROM OLD AND + NEW.updated_at IS NOT DISTINCT FROM OLD.updated_at + ) THEN + NEW.updated_at := current_timestamp; + END IF; + RETURN NEW; +END; +$$ LANGUAGE plpgsql; diff --git a/Backend/migrations/2024-03-03-043630_create_auth_table/down.sql b/Backend/crates/user/migrations/2024-03-03-043630_create_auth_table/down.sql similarity index 100% rename from Backend/migrations/2024-03-03-043630_create_auth_table/down.sql rename to Backend/crates/user/migrations/2024-03-03-043630_create_auth_table/down.sql diff --git a/Backend/migrations/2024-03-03-043630_create_auth_table/up.sql b/Backend/crates/user/migrations/2024-03-03-043630_create_auth_table/up.sql similarity index 100% rename from Backend/migrations/2024-03-03-043630_create_auth_table/up.sql rename to Backend/crates/user/migrations/2024-03-03-043630_create_auth_table/up.sql diff --git a/Backend/migrations/2024-03-03-051935_add_token_field/down.sql b/Backend/crates/user/migrations/2024-03-03-051935_add_token_field/down.sql similarity index 100% rename from Backend/migrations/2024-03-03-051935_add_token_field/down.sql rename to Backend/crates/user/migrations/2024-03-03-051935_add_token_field/down.sql diff --git a/Backend/migrations/2024-03-03-051935_add_token_field/up.sql b/Backend/crates/user/migrations/2024-03-03-051935_add_token_field/up.sql similarity index 100% rename from Backend/migrations/2024-03-03-051935_add_token_field/up.sql rename to Backend/crates/user/migrations/2024-03-03-051935_add_token_field/up.sql diff --git a/Backend/migrations/2024-03-03-052716_alter_time_Stamp/down.sql b/Backend/crates/user/migrations/2024-03-03-052716_alter_time_Stamp/down.sql similarity index 100% rename from Backend/migrations/2024-03-03-052716_alter_time_Stamp/down.sql rename to Backend/crates/user/migrations/2024-03-03-052716_alter_time_Stamp/down.sql diff --git a/Backend/migrations/2024-03-03-052716_alter_time_Stamp/up.sql b/Backend/crates/user/migrations/2024-03-03-052716_alter_time_Stamp/up.sql similarity index 100% rename from Backend/migrations/2024-03-03-052716_alter_time_Stamp/up.sql rename to Backend/crates/user/migrations/2024-03-03-052716_alter_time_Stamp/up.sql diff --git a/Backend/migrations/2024-03-15-131532_create_user_table/down.sql b/Backend/crates/user/migrations/2024-03-15-131532_create_user_table/down.sql similarity index 100% rename from Backend/migrations/2024-03-15-131532_create_user_table/down.sql rename to Backend/crates/user/migrations/2024-03-15-131532_create_user_table/down.sql diff --git a/Backend/migrations/2024-03-15-131532_create_user_table/up.sql b/Backend/crates/user/migrations/2024-03-15-131532_create_user_table/up.sql similarity index 100% rename from Backend/migrations/2024-03-15-131532_create_user_table/up.sql rename to Backend/crates/user/migrations/2024-03-15-131532_create_user_table/up.sql diff --git a/Backend/migrations/2024-03-17-064742_add_role_in_auth/down.sql b/Backend/crates/user/migrations/2024-03-17-064742_add_role_in_auth/down.sql similarity index 100% rename from Backend/migrations/2024-03-17-064742_add_role_in_auth/down.sql rename to Backend/crates/user/migrations/2024-03-17-064742_add_role_in_auth/down.sql diff --git a/Backend/migrations/2024-03-17-064742_add_role_in_auth/up.sql b/Backend/crates/user/migrations/2024-03-17-064742_add_role_in_auth/up.sql similarity index 100% rename from Backend/migrations/2024-03-17-064742_add_role_in_auth/up.sql rename to Backend/crates/user/migrations/2024-03-17-064742_add_role_in_auth/up.sql diff --git a/Backend/migrations/2024-03-19-141300_remove-session-token/down.sql b/Backend/crates/user/migrations/2024-03-19-141300_remove-session-token/down.sql similarity index 100% rename from Backend/migrations/2024-03-19-141300_remove-session-token/down.sql rename to Backend/crates/user/migrations/2024-03-19-141300_remove-session-token/down.sql diff --git a/Backend/migrations/2024-03-19-141300_remove-session-token/up.sql b/Backend/crates/user/migrations/2024-03-19-141300_remove-session-token/up.sql similarity index 100% rename from Backend/migrations/2024-03-19-141300_remove-session-token/up.sql rename to Backend/crates/user/migrations/2024-03-19-141300_remove-session-token/up.sql diff --git a/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/down.sql b/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/down.sql new file mode 100644 index 0000000..521f8f4 --- /dev/null +++ b/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/down.sql @@ -0,0 +1,5 @@ +-- This file should undo anything in `up.sql` +create schema if not exists school_trips +alter table school_trips_user.user rename school_trips.user +alter table school_trips_user.auth rename school_trips.auth +drop schema if exists school_trips_user \ No newline at end of file diff --git a/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/up.sql b/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/up.sql new file mode 100644 index 0000000..7541bbd --- /dev/null +++ b/Backend/crates/user/migrations/2024-05-01-100047_switch-schema/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +ALTER SCHEMA school_trips RENAME TO school_trips_user diff --git a/Backend/crates/user/shape_files/bengaluru.json b/Backend/crates/user/shape_files/bengaluru.json new file mode 100644 index 0000000..3f2d589 --- /dev/null +++ b/Backend/crates/user/shape_files/bengaluru.json @@ -0,0 +1 @@ +{"type": "MultiPolygon","coordinates": [[[[77.559097630467093,12.715448856421],[77.559097619894999,12.7149324937371],[77.559097588201396,12.713260845169399],[77.5600050309464,12.7116914695148],[77.560128979591298,12.7114730381365],[77.560435178045907,12.7109334313994],[77.560919141482401,12.7097380713187],[77.560919167461094,12.709738000597],[77.561261097269906,12.7086757395119],[77.561283501909799,12.708650771578],[77.561323793364096,12.708605858380899],[77.561993297915805,12.707855576759499],[77.562126878393798,12.7077058782929],[77.563205243702598,12.706482501362901],[77.563344674233505,12.706324320221499],[77.5651282916849,12.7043596067375],[77.565128310808603,12.704359586676199],[77.565274021371394,12.7042023985247],[77.566123323751597,12.7032824102943],[77.566128331508594,12.7032769853045],[77.566593537142296,12.7027730586604],[77.566916097719897,12.7024236479597],[77.567010908607301,12.702320944839499],[77.567936519729798,12.701358727251399],[77.567991269379107,12.7013018127568],[77.567991292146701,12.701301789046299],[77.568070323091405,12.701203118854901],[77.568212976969406,12.701254546172899],[77.568621599033406,12.7014013742759],[77.569069845042804,12.701562439560901],[77.573642723109501,12.703140763083301],[77.575111391940794,12.7036476496075],[77.575639817816295,12.7038300241601],[77.575713839129605,12.703855570660901],[77.575744143145698,12.703900763796801],[77.576025553639994,12.7043201653425],[77.576558072648695,12.705113801100801],[77.576901585446095,12.705625749030199],[77.576901607857494,12.705625781337],[77.577925932089997,12.7070835807917],[77.578057212424198,12.7072662513733],[77.578117708879901,12.7073494138074],[77.578262767424704,12.7075634638193],[77.578390167012003,12.707751455311699],[77.578483341533101,12.707903468648],[77.578483363999695,12.7079035063748],[77.578681050037403,12.708234810974],[77.579106404811498,12.7085966761716],[77.579661550119297,12.7090069857651],[77.579785175617602,12.709115394804],[77.579914000280993,12.709221491809499],[77.580547485061302,12.709743212623099],[77.580682441407305,12.7098535363487],[77.581412522092293,12.7104503562111],[77.581412565686705,12.7104503901179],[77.5820359093251,12.710902510508999],[77.582035975140499,12.710902557751099],[77.582383125744101,12.711170215448499],[77.582383164710606,12.7111702466899],[77.582545684323193,12.7112954253843],[77.583503956439202,12.712031775497399],[77.583564245385006,12.7120807504837],[77.58375054695,12.7122320899394],[77.584094936177095,12.7124928863946],[77.584881282398598,12.7130866768602],[77.585264249404403,12.713374853708499],[77.586144783612099,12.714089660573601],[77.586144843908002,12.714089707868199],[77.587158231376705,12.714866031779099],[77.587599286994504,12.715203907007099],[77.588195760174699,12.7156608397807],[77.589338005526997,12.7165119575776],[77.589291674876407,12.7165552719283],[77.589432438300804,12.7166651815935],[77.589519720172007,12.716733324224499],[77.589645050892003,12.716831167202701],[77.589743012262204,12.7169076246157],[77.589777294036395,12.716934382215401],[77.589843383662597,12.7169859665118],[77.590899211430099,12.717838321327701],[77.592186002592499,12.718877113273701],[77.592896163671099,12.719450400629301],[77.593094760693504,12.719610720549699],[77.593227548543794,12.7197179139825],[77.593948150105405,12.720299622151799],[77.594197399190193,12.7205008273889],[77.594647995921505,12.7208833054338],[77.5946923310416,12.720920937894601],[77.594818117182399,12.7207984863698],[77.594850633089706,12.720763507935001],[77.595672322743496,12.7203020009441],[77.595821190607595,12.7202183879496],[77.595912916213607,12.720166869749001],[77.595926183532598,12.7201594181844],[77.596472698532097,12.7198524619302],[77.596673828445006,12.719768417560701],[77.596762214221997,12.7197304916986],[77.597073582257394,12.7195928562041],[77.597488979567601,12.719400150730101],[77.597556174739196,12.7193685451579],[77.600662256122604,12.7176801989577],[77.602379704440494,12.7167466368715],[77.603095655549794,12.7163574588582],[77.603556501865398,12.7161754394235],[77.603694773201696,12.716120826331601],[77.604048936790306,12.7159809421858],[77.608495675908102,12.7142245635308],[77.6108400791815,12.7132985314531],[77.614244078788502,12.711953915396601],[77.614178208099602,12.711407073961301],[77.614159517832803,12.7112915778584],[77.6141569184947,12.7112755123991],[77.614033559408099,12.710527089497299],[77.6139524558007,12.710035025197501],[77.613942972203802,12.709977489432999],[77.613902397579494,12.7097313192403],[77.613707778423603,12.708550529960601],[77.613704239524594,12.708529056743],[77.613645404244394,12.7081720910224],[77.613584707296994,12.7078039373779],[77.613325973426598,12.7062309233071],[77.613288292773802,12.7060018353139],[77.612847925250193,12.7033244757185],[77.612091786219494,12.7024261630837],[77.611980183961194,12.7022935760106],[77.611803071699597,12.702083160471201],[77.608869646385102,12.698598071862101],[77.603798418637595,12.6925727926184],[77.603701314705305,12.6924574160139],[77.603626232655699,12.692144940338499],[77.603578799989705,12.691947386093],[77.603506757408098,12.691648991395301],[77.602790821955097,12.688683586593701],[77.602698919189393,12.688302919555399],[77.602529556633996,12.687601402554399],[77.602461131012006,12.687335777478699],[77.601668398759202,12.684275616460299],[77.600692538147698,12.680528392186099],[77.600621547092302,12.6802565354743],[77.600561769666001,12.6800276127421],[77.600642262949904,12.680007355492],[77.600578472651094,12.6797658093307],[77.600471973406698,12.6793625423474],[77.599985211143604,12.6775193510246],[77.599900542146301,12.677335996482601],[77.599593424869795,12.676670495590599],[77.598183185526693,12.6736803238568],[77.598040456347604,12.673404419145299],[77.596772627671797,12.6709413298725],[77.596640197931194,12.6706840471837],[77.595258113884796,12.6679989060904],[77.5948186701483,12.6671451289437],[77.594638529418106,12.6667970325748],[77.594650123010396,12.666778991369201],[77.596331303610796,12.664162765551],[77.596367371009507,12.664409264021],[77.596445506275799,12.6649432713435],[77.596722389203407,12.665526239271699],[77.597125988203302,12.6663759972976],[77.597616926522505,12.667409633722601],[77.597931726903894,12.6680917410592],[77.6036254015482,12.669615148777201],[77.609479013230796,12.6711476892139],[77.618714408078205,12.673565302727599],[77.636357678654406,12.6766982091141],[77.645997696928106,12.678548547857799],[77.646289329859897,12.678660512606299],[77.648374971092395,12.6793111500587],[77.652706737861095,12.6806624223321],[77.655617591179706,12.681905729581599],[77.6572992637917,12.6822092982994],[77.657716595713893,12.682284474486799],[77.660273732162295,12.682740777148799],[77.663253299286396,12.683272424757099],[77.663505797582602,12.6831968306346],[77.663837615061198,12.683108374863901],[77.664340767747106,12.6830016721813],[77.665058558449701,12.682855765432601],[77.6652370814585,12.6828096746885],[77.665413629591399,12.6827640887832],[77.666901817598202,12.682379479941099],[77.667802841957396,12.682033465849299],[77.668147140523303,12.682040672983399],[77.669868072068894,12.681401290887001],[77.670076445591505,12.681305946430999],[77.671440646730403,12.680957586956101],[77.672236976582397,12.680798752692899],[77.674114468992201,12.680022991754401],[77.674975050176897,12.679737576064801],[77.676035302168103,12.679382961056399],[77.677046425865697,12.679331587982899],[77.677065774619905,12.6793270585102],[77.677016493654506,12.679083676146099],[77.676629704054307,12.6773118911373],[77.676399658558097,12.676583626337999],[77.676374967712505,12.676031540190101],[77.676260563073498,12.6756203876431],[77.675881009597404,12.6745634494138],[77.675668579046203,12.6740389628955],[77.675497126800394,12.6735713822554],[77.676133211663,12.6731087310256],[77.676618688929693,12.6727541420191],[77.676786871633695,12.6725299010676],[77.6773111673633,12.6721595480373],[77.677344232354798,12.6721564921446],[77.677330887427104,12.6719733554944],[77.677308384165102,12.6717975066354],[77.677282984332507,12.6716055107294],[77.677028383810693,12.669686029558999],[77.676996139346699,12.6693289200081],[77.676977641294101,12.6691242990528],[77.676997025249506,12.6690205791464],[77.677141710397393,12.6682459720727],[77.677133553523504,12.6675804876815],[77.676922054659599,12.666475305729699],[77.676853898673798,12.665893777023699],[77.676618184320404,12.6653343334597],[77.676146720408994,12.6634490473532],[77.677156563750202,12.6629131573047],[77.678065594824304,12.662333758958001],[77.678734603979194,12.662077235236501],[77.6788696876215,12.661927777567101],[77.678267186368601,12.660615097793601],[77.678699716693103,12.660240443586201],[77.679705781251599,12.6600618319204],[77.680925196414293,12.660124907399],[77.682219172221394,12.6599846945367],[77.683144736220797,12.660065904686],[77.683514096114095,12.6600387840117],[77.683631346655005,12.660030175382801],[77.684629698637494,12.660023542729199],[77.686060996754605,12.6596252137397],[77.687383810388198,12.659130444604701],[77.689648730098895,12.658493775906599],[77.690496852501298,12.6592430268425],[77.691892176057706,12.660536036769599],[77.691956042255796,12.6604666960557],[77.692838162405494,12.660488074156699],[77.693938952658399,12.6605471628171],[77.694385099414802,12.6605567517081],[77.694982015965707,12.6605335228501],[77.695107985397101,12.6605969208908],[77.695386586637198,12.660602619820899],[77.695642565147395,12.6606330041199],[77.695977959135305,12.6606871662283],[77.696293891970598,12.6606565555521],[77.696609509975204,12.6607427660661],[77.696717921565295,12.6606601068959],[77.697112886698505,12.660651944465499],[77.697443027865006,12.6606370310306],[77.697995095068507,12.660688315819399],[77.698107447764997,12.6606982319029],[77.698740098479604,12.6607317168771],[77.699016105402094,12.6607195485918],[77.699536823515501,12.660691006432801],[77.700406855095395,12.6605871629056],[77.700668746863997,12.6605825023971],[77.700991104267302,12.6605799586341],[77.701078547574497,12.6605787365319],[77.7018801107033,12.660659190155499],[77.702405691721097,12.6607278816434],[77.702700896503103,12.66080149459],[77.702906092811801,12.6608812703755],[77.703065488558394,12.6609766005241],[77.703218065913106,12.661141111066501],[77.703699787978394,12.6612454853339],[77.703811085829102,12.661278303962201],[77.704174763730705,12.661470951960199],[77.704290428827903,12.6615269725985],[77.704444648872595,12.661647370711499],[77.704573987654797,12.661640024727699],[77.704703753011401,12.6616894453431],[77.704861012549998,12.661676945203],[77.704997624163795,12.661714641562501],[77.705535196478607,12.6623016373974],[77.705642660329104,12.6624254073269],[77.705878827331901,12.662710525520501],[77.705930250701797,12.662781784734801],[77.706073405130297,12.662961427442401],[77.706388755244006,12.663393589625599],[77.706618393008398,12.6634376963046],[77.706873173443498,12.6640395147575],[77.706946250526002,12.664138576915599],[77.7071188198627,12.664398480665501],[77.707569807918404,12.6650668505902],[77.707705247764906,12.665241945186899],[77.708180437602607,12.665489495061999],[77.708225183550496,12.6657083509643],[77.708409367283295,12.665696050152],[77.708721887338399,12.665795340408],[77.708999665517794,12.665909788691801],[77.709336296339899,12.6659488167888],[77.709629479158096,12.666043655004399],[77.710199788622106,12.666215160003],[77.710581295863093,12.66634765913],[77.710862985229994,12.666393550732201],[77.710970721424204,12.6667595716967],[77.711064830471798,12.667137908068099],[77.711149752474498,12.668067656051999],[77.711285232799398,12.6693512617324],[77.711341693957095,12.669589376101699],[77.711403466734595,12.669826814739199],[77.711526655548894,12.670166007982701],[77.711634697654901,12.6704561651384],[77.711718972505096,12.670712085619099],[77.711778519669494,12.6710604719022],[77.711800070440901,12.6712832478434],[77.711901815619498,12.671811843756901],[77.712052155029198,12.672581639248],[77.712214481783406,12.6734499838799],[77.712224196547297,12.6740547594734],[77.712285176352495,12.674705808307801],[77.712236519623602,12.675098735316499],[77.7120568938914,12.675251888931699],[77.7120305303756,12.6756041489749],[77.711896544400503,12.6767661333886],[77.711907716589906,12.677306686016101],[77.711887794076702,12.6784753086525],[77.711873035913399,12.679327404575],[77.711864714219402,12.6794662692136],[77.711906756378895,12.6799275843738],[77.711830154987098,12.6805729126655],[77.711667801585506,12.681348409819201],[77.7117051637304,12.681945308424201],[77.711801568126404,12.6828073735504],[77.711960497926299,12.683394107989299],[77.7124251976784,12.683233924421],[77.713148268836093,12.682950784339299],[77.713819857215995,12.6826801708376],[77.714571679492707,12.6825481385619],[77.715440121278505,12.682246796669601],[77.717809728161896,12.6816036833574],[77.718491172315794,12.6812476745176],[77.719466398447196,12.6806955836034],[77.719899227035597,12.680380882453999],[77.720290759598399,12.6802248211426],[77.720886945891195,12.6800037139057],[77.721681788141098,12.6798624251073],[77.721950341836205,12.6798170309767],[77.723211114916396,12.6793849308301],[77.723205759058501,12.679362061047099],[77.723179525487097,12.6793687745726],[77.722851806160307,12.679453679673101],[77.722822698874495,12.6791968460128],[77.722806934484694,12.6790572208883],[77.723139292293297,12.6789806308377],[77.723183552739698,12.6789395284357],[77.723190373746306,12.678933194584401],[77.723189190085193,12.677917856317301],[77.723299500255493,12.676852107536901],[77.7233089233941,12.6766389722418],[77.723331436801601,12.6757989139478],[77.723348464896304,12.675398477445301],[77.723369469554399,12.674897913688101],[77.723390720460401,12.6744874968961],[77.7234260133703,12.674383356656],[77.723427813431002,12.673980840388699],[77.723587241625495,12.6737576310418],[77.724064618290001,12.6730581314497],[77.724263703517906,12.672243147833701],[77.724369002302495,12.671565381804999],[77.7247686392177,12.6714062762445],[77.724800011317896,12.671150806696],[77.724781186296397,12.6708042704641],[77.725212246001405,12.670950443155199],[77.725384997682696,12.670912915958199],[77.725584362493393,12.670855323082399],[77.725691295205706,12.670824513180399],[77.725688474860902,12.6708014548398],[77.7260895614817,12.6709797769016],[77.729358145901401,12.6726375167576],[77.729856388462906,12.6728139002244],[77.730073259006801,12.6728875603039],[77.730383560643403,12.672826247774401],[77.730775213668196,12.672768068429701],[77.730869674725199,12.672680833318401],[77.731071183872103,12.6726979600463],[77.731241043054197,12.6726498649957],[77.731575826912803,12.6724974686145],[77.731786375873,12.672470925668501],[77.732273440038,12.6723902943765],[77.732328989192595,12.6725253906611],[77.733059091719497,12.6724871228176],[77.733091228108705,12.6724854337051],[77.7337864924082,12.6724242715191],[77.734752301155893,12.672435573645799],[77.735154639008599,12.6722936950922],[77.7353746781871,12.672221779107501],[77.736146312269497,12.672352291371199],[77.736439330010199,12.6723553479817],[77.736454471092998,12.672355566986401],[77.737018007843403,12.672235085173799],[77.737153432751199,12.6722102557158],[77.738021389396494,12.6720458394372],[77.738722330932703,12.6720545990785],[77.740287867673203,12.6732191098481],[77.740301128338501,12.673229056349401],[77.741001612545503,12.6737334954814],[77.740953935045894,12.6745614250064],[77.740925851850093,12.6757129782116],[77.740891060109504,12.676572217823001],[77.740806378975606,12.677554530870299],[77.740939077857007,12.6785042856592],[77.741091878004795,12.6790717399127],[77.741244795082196,12.679884078898199],[77.741500656056004,12.6810237172702],[77.741683693252398,12.682113228050399],[77.741514340355096,12.6827389259673],[77.741296350881697,12.683590120263201],[77.741113397497699,12.684592682708701],[77.741096161807903,12.6847118221734],[77.740991295637301,12.685435070634499],[77.7406657755335,12.685860096653199],[77.740647212015901,12.685886172923601],[77.740087817055098,12.686777868012999],[77.739739859366694,12.6870836069343],[77.739547254085494,12.687316977479499],[77.738516511777505,12.6883187016837],[77.738252968312196,12.688527218650499],[77.737469628588997,12.689150789006501],[77.737357253880901,12.6894202350848],[77.736978313030605,12.6901729937663],[77.735959759433499,12.6917701712444],[77.735678191295094,12.6932059671405],[77.735697160199905,12.6937659269514],[77.735733277769597,12.6942375081177],[77.735823862785097,12.6942569105421],[77.736303787205202,12.695855506573601],[77.736769963943402,12.6964563073984],[77.7369272867315,12.697098735594601],[77.737561506154094,12.6983928510027],[77.740710538268004,12.7006071120024],[77.740801807175302,12.7006712869831],[77.741041429839996,12.7008036973318],[77.7411237781279,12.700785717836199],[77.744108054267798,12.7001341385985],[77.744961847948701,12.700149598802501],[77.747267782595998,12.6995658727228],[77.747543089892403,12.6994172119316],[77.748775291972393,12.699011031299801],[77.748927742733201,12.6990272934798],[77.748987819826894,12.699007811736299],[77.751476754331193,12.6979519275586],[77.754161572158594,12.697294462092801],[77.755663563958095,12.6973638422742],[77.756684536742,12.697554033461101],[77.757606547271294,12.6976046812617],[77.760128011849602,12.6972499576174],[77.760677045237003,12.697048166359099],[77.760694256384895,12.6968520613656],[77.760925361516499,12.6968531162132],[77.760906354776196,12.6970921944942],[77.7621444518213,12.696936736008199],[77.762570664180302,12.696958744307301],[77.762671616643999,12.6972048387637],[77.763073794522498,12.697853699335299],[77.764253702653704,12.700678003568299],[77.764747098604701,12.702139330414701],[77.764942482814703,12.7022619012471],[77.765068948313598,12.702642715871001],[77.764544975395097,12.702434535424],[77.764701796422301,12.7028664796943],[77.764756033040001,12.7030470310912],[77.764869665711203,12.7037069537538],[77.765023127391203,12.704438356401001],[77.765269670525001,12.705896302836299],[77.765590593658104,12.7069191403313],[77.7657160312218,12.707399132637899],[77.765819822591595,12.707939797219],[77.766101358982894,12.7090079270523],[77.766045145865306,12.7096866706694],[77.766028022382301,12.7098891807596],[77.766022348576001,12.7100082930291],[77.765877095897096,12.710862690525699],[77.765958028703395,12.711912808669201],[77.7660592312088,12.712599834191],[77.766127333281403,12.712972229860499],[77.766222833988195,12.7129683169827],[77.767229501427593,12.7131966954845],[77.767325463934498,12.713217570239401],[77.768394056026395,12.7134498770838],[77.768528341766995,12.7134804682905],[77.768855374822706,12.7135486799753],[77.768838701023299,12.7132486581565],[77.769704487431298,12.7132055418035],[77.769785898311,12.7136457259111],[77.769873747646201,12.714172085421099],[77.769945742545502,12.714613010943999],[77.769962176216694,12.7147140419909],[77.770086417538295,12.715486564088],[77.770221852676798,12.7163162427562],[77.770237501032597,12.716412875499],[77.770384631719594,12.7169894945393],[77.770516614361298,12.7175173049593],[77.770543039406604,12.717624841944],[77.770657046488395,12.718163888787601],[77.770695573316701,12.718258518831901],[77.771118564019901,12.7191679213197],[77.7711948569291,12.7192311736977],[77.771350014058697,12.7193801651418],[77.771406964978397,12.719455494081799],[77.771484141548797,12.719577322527099],[77.771831263514599,12.7201906538965],[77.771895082449007,12.7202904343629],[77.772377604060495,12.720995484206499],[77.772444188890304,12.7211050393253],[77.772811842940598,12.7216997554454],[77.772959996378205,12.7220085398601],[77.772990879324198,12.7220790410167],[77.773203604364596,12.7225638255275],[77.773398265989997,12.7229150322866],[77.773506269270399,12.7230602130699],[77.773955931745107,12.723689874457699],[77.774093583738406,12.7238936448065],[77.774341683556599,12.724132255348101],[77.774408007488304,12.7245131655067],[77.774248655326303,12.7245712417461],[77.773595582161207,12.7248093458448],[77.773552177725804,12.7244009047389],[77.773375776683395,12.7243635960189],[77.773241535284697,12.7243742215037],[77.772215077924201,12.724557837343101],[77.772092357419098,12.724580545612801],[77.770021211494196,12.7250219595476],[77.769957556284197,12.7250398222376],[77.769646519093399,12.725127102238201],[77.768959834407298,12.7253197938879],[77.768369732126601,12.7254691511533],[77.767749206497498,12.7256254304561],[77.767431110230007,12.725705390866899],[77.767288194395405,12.725741365864],[77.767203595056202,12.725748677361601],[77.766729249726097,12.725806311065501],[77.766655064771996,12.725806566026],[77.766243757263297,12.7257073909242],[77.765179944394006,12.725874223755101],[77.764477780269402,12.7261262899407],[77.763390152088903,12.7264091397935],[77.762189538742604,12.726620643895],[77.762148481556295,12.726693452952601],[77.761059484774805,12.727258495325501],[77.760969309157105,12.7285665191816],[77.760969470557299,12.7296432075218],[77.761055267946006,12.729852818695001],[77.761220452213607,12.730417382239199],[77.761488898988205,12.7313906192835],[77.761858212416996,12.732390183837101],[77.762033133707902,12.732813164119699],[77.762257050720805,12.733717361397501],[77.762275492145903,12.7337918873253],[77.762283176468998,12.733822940542799],[77.762350899696003,12.73408014196],[77.762444247251494,12.7344653186268],[77.762516611374807,12.734649803602],[77.762579333383002,12.734777199996],[77.762648931008499,12.734854634290899],[77.762709918049097,12.735144007621599],[77.763021336690898,12.736249424055501],[77.763056806850699,12.736356758134299],[77.762996939851902,12.736400636893899],[77.763966461080102,12.7372100229907],[77.764836229997101,12.7378441172973],[77.7661427923248,12.7385280559519],[77.766787471682704,12.738849641459501],[77.767354807454396,12.739132602136999],[77.767980546432298,12.7394404529397],[77.769401878584802,12.7401221772017],[77.769591479780303,12.740256013592299],[77.769859342669506,12.7402846549187],[77.769958298690895,12.7402952307619],[77.770452289124194,12.740347928873099],[77.7708254797557,12.740387740172901],[77.771765762176003,12.7404778851568],[77.772458284791099,12.7405442750663],[77.773334952861504,12.7405920773506],[77.774339768078505,12.740478861237699],[77.775111568506205,12.7403551177024],[77.776836290643701,12.7402879881902],[77.777181637995,12.740475565727101],[77.777342432621495,12.740547316436199],[77.777648186175995,12.740683750018199],[77.777992214395098,12.740837263135299],[77.778027336194,12.740850722260401],[77.778442074204904,12.741037999728899],[77.778526578836093,12.741076158899199],[77.778868177977898,12.7412302959908],[77.779105499877502,12.7413030045136],[77.779259773410203,12.741350259218599],[77.779805742653394,12.7414969398521],[77.780374355110695,12.7414761870671],[77.780886129697507,12.7414098457739],[77.783400677551001,12.7411348261097],[77.783779640266204,12.741152065019399],[77.784012500746798,12.741134428766999],[77.785142995997404,12.742184151709701],[77.787971046940697,12.7447985173094],[77.789208017936105,12.7455901043955],[77.790139784705602,12.7462432109026],[77.791290168826606,12.746737348277],[77.791494669398105,12.7467638400139],[77.792001845244997,12.746749490020999],[77.792063770503901,12.7470619831549],[77.792246418750693,12.747715760917099],[77.7922763785173,12.747821969460601],[77.792478609042305,12.7481275357722],[77.792646461352803,12.748519427975999],[77.792946244269302,12.74944778449],[77.793136782791905,12.750157385203799],[77.793296845573906,12.7506606098958],[77.793425643757402,12.751416650639401],[77.793521824744104,12.7518675890332],[77.793718380309997,12.752545257889],[77.793751221814603,12.7526584867868],[77.793771000805805,12.7529001449],[77.793776298649107,12.752964871718101],[77.793786213242996,12.7530158284056],[77.793992214731404,12.7540745529035],[77.794064735042298,12.7544275752606],[77.793899021387404,12.754456108341801],[77.793991659047506,12.7551385355621],[77.794242306990398,12.7560520529657],[77.794370498284195,12.756518930250399],[77.7944756517619,12.757141992471301],[77.794776252578203,12.757883704057299],[77.795008336859198,12.7582307879242],[77.794413413766605,12.758323721642601],[77.7940282226607,12.758411968427501],[77.793133125047802,12.7588104884889],[77.792794812214098,12.758965281753101],[77.792422325939498,12.7591519318115],[77.791092135393001,12.759795843495199],[77.789976803282499,12.7602153267402],[77.789368569543996,12.760463116133099],[77.789263483429494,12.7604444796922],[77.788340021730903,12.760870124292101],[77.787864557583106,12.761072804538401],[77.787397561020896,12.761276654811301],[77.787395745871294,12.7612651178487],[77.785320539530701,12.762109721778399],[77.785066830989905,12.762332344181999],[77.784433663704306,12.762845379074401],[77.783568875481393,12.7636542015392],[77.783126185086601,12.7639532631162],[77.782851880163193,12.7640852399664],[77.782807934438694,12.7643336146488],[77.782765595354405,12.7645405055318],[77.7827065544395,12.7649862718803],[77.782253101352694,12.7652191279657],[77.781538017959505,12.7655364809687],[77.781044655577503,12.7657678860357],[77.780601586743799,12.766909552554599],[77.780040851292398,12.7677024821683],[77.779830609886702,12.7678069471648],[77.779538167124798,12.7679353539991],[77.779289537598601,12.767924473123699],[77.778893667576497,12.7679071470714],[77.778891033399205,12.767907043825399],[77.778903269456293,12.767958525374],[77.780113867260397,12.7698833774474],[77.781964577134602,12.7728259280088],[77.7821188024311,12.773038155321601],[77.7823094899164,12.773337628939],[77.782527552306803,12.773450043371501],[77.782712860900105,12.7735455722684],[77.782832673491995,12.773607234541499],[77.783199877037603,12.7737947071688],[77.783328552550898,12.7738566884805],[77.783858414499505,12.7743744222137],[77.783964473973896,12.7744496857004],[77.784247489921796,12.7750974795108],[77.784367618283795,12.775327125689101],[77.784410095268996,12.775439102404899],[77.784500810943101,12.775629729400499],[77.784613260733906,12.775922386028],[77.784604921518294,12.7761640906806],[77.784610201593793,12.7763512835882],[77.784663040484602,12.7765703501787],[77.784924968054895,12.7770663412776],[77.785034580130898,12.777166321025099],[77.785290050105203,12.7772631181638],[77.785188130630502,12.7773749962327],[77.785179826800302,12.7773841116729],[77.785186528240303,12.777394720818799],[77.785430175836893,12.777378209521199],[77.785928942735893,12.777556838576],[77.786059187160006,12.777662877874],[77.786242111169202,12.777912017620601],[77.786283419493799,12.778032523484301],[77.786484840695607,12.7783149977177],[77.786689812559999,12.7784754269367],[77.786949694731007,12.778843544095601],[77.787146985491603,12.7788342261706],[77.787280952280597,12.7788198287071],[77.787494089849105,12.7790042775801],[77.788046706379006,12.7793917000552],[77.788086732874703,12.7795412993743],[77.788036390353497,12.7796198961058],[77.788137384742399,12.779822939464699],[77.788289487964903,12.779707624634799],[77.788755954418207,12.7804689687957],[77.789059065535994,12.7808922923459],[77.789136807466306,12.7811522458908],[77.789339876859003,12.781395191107601],[77.789157465388499,12.7816653535542],[77.790181908858997,12.7828475930732],[77.790550375805196,12.7833110319628],[77.790819290946899,12.783432450383099],[77.791155432352198,12.784035268075],[77.791812660334998,12.785774076027399],[77.792179343268501,12.786356018310601],[77.792199833381403,12.786658672557],[77.792313734561802,12.7868193428649],[77.792510482273002,12.786994722838401],[77.792659973090593,12.7872293384596],[77.793124032315504,12.7880695312094],[77.7934513845521,12.788624679556801],[77.793767638196201,12.7891401657907],[77.794115280756799,12.789817033611399],[77.794326885730698,12.7903391077596],[77.794507184732296,12.790531951891801],[77.794583893462203,12.7908885454141],[77.794689860914403,12.7912544035949],[77.794656697472902,12.791440399927099],[77.794711853912702,12.7917034701312],[77.794976636330901,12.7917696506358],[77.794929815242,12.7918532716717],[77.795495359642203,12.792030977396699],[77.796049570337999,12.792168462079401],[77.7964286981843,12.7930274596996],[77.796640182426501,12.793508163812801],[77.796709832714598,12.7936090790415],[77.796798061842594,12.793644231285199],[77.796948780548405,12.7936769206212],[77.797148363313894,12.793608059657601],[77.797458456857498,12.793521144914401],[77.797640063920497,12.793492530779],[77.797820030923404,12.7935074200575],[77.797892452812903,12.7935241027625],[77.798203626440994,12.7939083153453],[77.798404910233998,12.794365563712301],[77.798717397435794,12.7947354276887],[77.799056133454101,12.795138460695499],[77.799166415815407,12.7953248882586],[77.799422453150498,12.7957674202109],[77.799669086402403,12.7958380459763],[77.799769035829698,12.795860906679],[77.799814992444198,12.7958604488663],[77.799909783908603,12.795576253973],[77.799946245216105,12.795364530795201],[77.799953749493994,12.7952648895787],[77.799924598607305,12.794981533479],[77.799981581920207,12.7947536849504],[77.800036447251898,12.794645839605399],[77.800417409821407,12.7944658718377],[77.800466411233302,12.7944573593357],[77.800702747907394,12.7947447976048],[77.800832137077705,12.794960168953599],[77.8009128970196,12.7952334235025],[77.801033476113304,12.7955587112512],[77.801181923083206,12.795966039622201],[77.801267016425896,12.796126447650099],[77.801357360363696,12.7962853120376],[77.801497590890406,12.7963319241244],[77.801801814435606,12.796370990570001],[77.8019716670007,12.7963649696802],[77.802320651219702,12.7962978176362],[77.802491893749504,12.7962418334485],[77.802735739840799,12.7961230205002],[77.802850677475107,12.7960353448884],[77.802921081754306,12.795964813640101],[77.803117050159102,12.795609994397401],[77.803368542602001,12.795220030098699],[77.80364164097,12.794843485543099],[77.803862721451793,12.794531354470401],[77.804031983929605,12.794337002851201],[77.804149368733903,12.7942434275843],[77.804297180896896,12.794191894152799],[77.804508437762095,12.7941369138463],[77.804688346207399,12.7941178717344],[77.804873964367104,12.7941348429854],[77.805101677325496,12.7942496532324],[77.805222260285802,12.7943714584568],[77.805610352490206,12.7944396335315],[77.805958688532897,12.7945500480324],[77.806176797404106,12.7945121236109],[77.806375447068703,12.794445411277399],[77.806605101363104,12.794129681562501],[77.806797027018902,12.794281612349099],[77.807062782791107,12.794527955035299],[77.807388971081707,12.7945447487884],[77.807581503589603,12.7947381446994],[77.807935928752997,12.794970545324],[77.808166814144101,12.795062069532401],[77.808279650455106,12.7952679046408],[77.808546200407903,12.7957862113294],[77.808650760504705,12.796139794960901],[77.808862268035895,12.796524910237199],[77.809033511760404,12.7968339443243],[77.809036555240993,12.7968741439047],[77.809053214118293,12.797084457507401],[77.808831040008499,12.797226326413501],[77.808536298131102,12.7976427989167],[77.808489397893595,12.797607743416901],[77.808276950595896,12.7978695513745],[77.808030958280995,12.7981602801867],[77.807833789922299,12.798394404195401],[77.8077808381978,12.7984649691266],[77.807597441156702,12.799051588237401],[77.807547512979795,12.799301425088601],[77.807557377132099,12.7994510843592],[77.807433743925102,12.7994711442355],[77.807457849988793,12.7995918129104],[77.807464434066901,12.7996097174792],[77.807492018684599,12.7996848462149],[77.807280548430398,12.799875414623701],[77.806768234702801,12.7999361998259],[77.806436237887993,12.800008903488299],[77.806229977647106,12.7999274597989],[77.805927643105505,12.8000121523808],[77.805336959824103,12.8003121531583],[77.804942336806903,12.801312807781001],[77.804859113965307,12.801598002362301],[77.804842496960902,12.801879367333701],[77.804776942850296,12.802197789538001],[77.804656264040304,12.8024528958513],[77.804545156914003,12.8026877258336],[77.804484372669407,12.803018846452799],[77.803985663085797,12.803007876069399],[77.804077129357694,12.803869699131001],[77.804055452940901,12.8045444041868],[77.803964318291406,12.804792383962999],[77.803670350480303,12.8048111019018],[77.803002267182194,12.8049223031575],[77.801617098983201,12.8051227266147],[77.800431889527104,12.8053246677799],[77.799978173167105,12.805432565608401],[77.800015066439897,12.806312815145301],[77.800201735057897,12.807422025051199],[77.800224245772597,12.807636805488],[77.800343736573097,12.8082166967314],[77.800525524675507,12.809182545432201],[77.800948732881594,12.810881893758999],[77.800971785937705,12.810983893323201],[77.801072783016707,12.811282373542699],[77.801450348179003,12.8124234814216],[77.801495914648996,12.812594491980599],[77.801358537743994,12.8129243564454],[77.801454617816006,12.8132808797977],[77.801840435616,12.814941623654899],[77.801871354168895,12.8150241380359],[77.801897438673393,12.8150983573844],[77.802082808698501,12.815748679408101],[77.802113100650203,12.8158433425975],[77.802143973051898,12.8159320621833],[77.802371129384895,12.816704430865901],[77.802240936805504,12.8171440826818],[77.803605166815601,12.8168967574706],[77.804719237663306,12.8167700468088],[77.805068169939801,12.8167103575617],[77.805941484926507,12.816669807596501],[77.806978032164196,12.8164458310002],[77.809778688140199,12.815822694469],[77.809282964563195,12.816743928878999],[77.808725280486797,12.8186778197108],[77.808356057087806,12.820187521364],[77.808243347060994,12.8214322095853],[77.808023572726299,12.8224860563283],[77.807950213383407,12.8232562145923],[77.808126613829998,12.8246193405156],[77.808308398948796,12.8253103716022],[77.808932943302594,12.8265000041233],[77.809381760065193,12.827515727462],[77.809570028998607,12.827980189898099],[77.809865685928401,12.829371799370501],[77.810049457682496,12.8299218187466],[77.809920530377596,12.829980170408801],[77.810091471515193,12.8306924297703],[77.810055356038703,12.8310227162868],[77.809152999753607,12.8313665172283],[77.807867198252396,12.8317627949857],[77.807811806914998,12.8317842839432],[77.807214879395303,12.8320297386836],[77.806634200993102,12.8322111680795],[77.805954262183903,12.832527417247],[77.805108493698498,12.8328048822722],[77.8043277353066,12.833047057165],[77.803426219344203,12.8331237658671],[77.802159117052398,12.833223278939601],[77.801697719074497,12.8333181010362],[77.800835087253702,12.8334741218586],[77.800318240805197,12.8335930856987],[77.799041415813704,12.833720740143701],[77.798223986746706,12.8338941629871],[77.797678302684702,12.8340555612053],[77.797444267589995,12.834080667304301],[77.796596057530294,12.834411510894499],[77.795995145671597,12.8345959746594],[77.795589204836403,12.834800768491],[77.795613428785302,12.834978009488699],[77.795014288872906,12.836317836359999],[77.794888852996095,12.8365934189993],[77.794799537140904,12.8368616771024],[77.794626053532198,12.837051618152801],[77.794082827473204,12.8383240798166],[77.794000918545194,12.8385193901706],[77.7933089089845,12.839829548017301],[77.793086447483105,12.840613650253699],[77.792726471168905,12.8419598745615],[77.792528271243199,12.8427913014845],[77.792538774426305,12.8430021004962],[77.792588597689601,12.8434069914408],[77.792750843119094,12.843417628768499],[77.792803589879298,12.843540472069],[77.792888115665704,12.8435217242062],[77.793079511923807,12.8436981387402],[77.793373518055304,12.8440763882141],[77.7935740545757,12.844347886466601],[77.794305736691101,12.845086274225],[77.794753314059193,12.8454490611278],[77.7948312705809,12.845499454742701],[77.795451850079203,12.845293533279399],[77.796168427118005,12.8450232425451],[77.796797159786294,12.8449627494188],[77.796993437685401,12.8457735283734],[77.7972767737146,12.846621220135701],[77.797683066289395,12.8477296416486],[77.797617570112493,12.847971056179],[77.797916473926506,12.8489660943552],[77.798089277163996,12.8494983788549],[77.798538897790294,12.850716786575999],[77.7986951972957,12.851128081567101],[77.798700455101496,12.8511416391616],[77.7990036952542,12.8519456254906],[77.799243441138401,12.851863798699201],[77.799772286931997,12.8516606556216],[77.799942935324196,12.851729363166401],[77.800667104392801,12.851416431001701],[77.801350843645196,12.8512435206571],[77.802068292934393,12.8509014532434],[77.802891451987605,12.8506464350342],[77.803244948278305,12.850453743463],[77.805050200257298,12.849449242145299],[77.806262109524297,12.8487364416199],[77.806707844410198,12.8484861248215],[77.807011395217401,12.848256806402],[77.807898792304201,12.8476799665229],[77.808585469322196,12.8480366839369],[77.808977547743197,12.848229793872299],[77.8093022195023,12.848470319839199],[77.809591546041801,12.848688380317901],[77.809934820451303,12.8496750966842],[77.810330100065499,12.8513259511897],[77.810733213079502,12.8520012236024],[77.811142681471694,12.8525300217115],[77.811989429933007,12.853270751004001],[77.8124928811487,12.8536195200012],[77.812799321010999,12.853891407702299],[77.812956931031806,12.853989495127999],[77.813081548313207,12.854082306086999],[77.813098753766099,12.8540951217397],[77.813628691280201,12.854474948976399],[77.814255641691503,12.855032227094],[77.814596971346802,12.855274914385101],[77.815235671917605,12.8559243190966],[77.815237650023406,12.855926355559101],[77.815369077678895,12.8558699711425],[77.815864468937903,12.855804893979199],[77.816043800978207,12.856187025999599],[77.816880272704097,12.8561075111497],[77.817858839854793,12.856092327521701],[77.820533908623702,12.8560444601026],[77.8212063593339,12.8560260482225],[77.821291832209297,12.8560927866891],[77.8221443223444,12.856108597488999],[77.822917588655201,12.855993517650299],[77.822999033933201,12.856211798907101],[77.823687608816101,12.8575644318166],[77.823927994944,12.858031293089599],[77.825110466370504,12.859890275180801],[77.825691689241395,12.8604032431692],[77.826170608459904,12.860292016857199],[77.826758651420505,12.8604985895682],[77.826848765059694,12.8607732366834],[77.8276338872937,12.860823913194601],[77.828272741120401,12.8612881163799],[77.828889133944799,12.861555985932901],[77.828896369245101,12.861653304212201],[77.829478469391304,12.8619125906432],[77.830068533563903,12.8621142984234],[77.830241002812102,12.862130627372499],[77.830553190484395,12.862164245598001],[77.831345727076197,12.8620824541803],[77.831700161939906,12.8620655061154],[77.832016894077597,12.8621140137178],[77.832371382049601,12.862154959858101],[77.8325027043104,12.8618078711464],[77.833078602105402,12.8620165038901],[77.832378790267796,12.8637507105779],[77.8320646939071,12.8649081175631],[77.832592736210799,12.8675591247321],[77.836736521314194,12.8704003458414],[77.836898653409406,12.870358507191],[77.836963673424805,12.870355601755501],[77.836931588988605,12.870382401653799],[77.8368069022508,12.870486551063999],[77.836757516830303,12.870551409048099],[77.836682473655799,12.870748442121601],[77.836662441761703,12.870786887490199],[77.836628453977497,12.870852127915899],[77.836610057541094,12.8709435561896],[77.836592383624804,12.8710322668122],[77.836782646157204,12.8716501597636],[77.836835846449603,12.8718138804029],[77.8368393658657,12.8718283389571],[77.836178086642207,12.872095036692199],[77.836144834748197,12.8721084346385],[77.836112562140798,12.8721213152396],[77.835895926884007,12.8722077297161],[77.835806513904899,12.872243346578999],[77.835779959866599,12.8722367782091],[77.835648256044394,12.872204202076301],[77.835380192033696,12.872155776291599],[77.835323600914705,12.8721766792046],[77.834990876312901,12.8722995783538],[77.834956666896204,12.8723266576278],[77.834932606907302,12.8723457143379],[77.834891190627999,12.872379682319499],[77.8347819510237,12.872469275616],[77.834560357988593,12.8726510105397],[77.833985149796106,12.8731506821383],[77.833877200212498,12.8732444452049],[77.833863122508305,12.873256671643601],[77.833799224972594,12.873305379467],[77.833715272121296,12.8733693745625],[77.833680049857705,12.873396224410101],[77.833634690074405,12.8734309367722],[77.833429845203298,12.8735876984766],[77.833253069142003,12.873791693229601],[77.833126766792802,12.8739309648799],[77.833120257350501,12.873935445103401],[77.832895389003497,12.8740901658509],[77.832358535396494,12.874366348305401],[77.832223799755894,12.8743826219777],[77.832151960288797,12.874391298983801],[77.832100798734402,12.874397477894799],[77.832067440521797,12.874401466212399],[77.832057242544593,12.874325366852499],[77.831984023152003,12.8742802169822],[77.831939180381895,12.8742525656667],[77.831872138285604,12.874211225830701],[77.831744115790997,12.8745059536851],[77.831559166346906,12.875368623285899],[77.831581093330598,12.8755105776899],[77.831585602062503,12.875539768083501],[77.8316899058117,12.876215025526299],[77.831819299024701,12.8768883042437],[77.831698963536695,12.876958187148301],[77.831622357847493,12.877002674715399],[77.831488051606101,12.8770817224566],[77.831244702448501,12.877445354090501],[77.831435541370197,12.877949959547299],[77.8314910613351,12.878388559623099],[77.831560905134197,12.8786049751065],[77.831565707087407,12.878619854372999],[77.831587506659503,12.878687401556901],[77.831602832083504,12.878734887381],[77.831535056655397,12.8787620404383],[77.831470698162605,12.878787824188301],[77.831468318820299,12.8787887830094],[77.831458368875602,12.8787927954984],[77.831417942702501,12.878772845712],[77.831331749275904,12.8787303093979],[77.831239952411096,12.8799178606316],[77.831379295432001,12.880273797337701],[77.831400440395896,12.880327809632799],[77.831530867003593,12.880660970678999],[77.831570546462203,12.8807527337189],[77.831654922029799,12.8809478614032],[77.831694809977705,12.8810399789445],[77.831729880835795,12.8810732791958],[77.831716022885999,12.881100349533501],[77.831646804262604,12.8812355613449],[77.831708622882701,12.8812971628144],[77.8321342691534,12.8817213186892],[77.832154795051906,12.881741772636],[77.832174408395701,12.881798986339399],[77.832243553061701,12.882000688132299],[77.832314288243893,12.8823829063976],[77.832211090439202,12.8828948379106],[77.832026515732196,12.883363703756499],[77.831894880405102,12.883560597660599],[77.831870431465006,12.883597166791001],[77.831766574348606,12.8837525109649],[77.831675714434994,12.8842397588366],[77.831546035498704,12.8849357047892],[77.831526644950401,12.8850397690814],[77.831166561697003,12.8857700387601],[77.830872129706293,12.886609580399201],[77.8307572326149,12.887202153407999],[77.830532438197693,12.887359194345199],[77.830403045697096,12.8874495933786],[77.830144745462206,12.888054884112099],[77.830157596636596,12.8882322874005],[77.830163448952405,12.888313072127501],[77.830192578830705,12.888715177963601],[77.830028737094196,12.8894499735559],[77.829900872154298,12.8895687416142],[77.829668990926905,12.889784174717301],[77.829264942287296,12.8900137192587],[77.828762960086706,12.89051551699],[77.828402375287297,12.8915971519745],[77.828343703604901,12.8920420225654],[77.828326328886405,12.892173764247101],[77.828290064880306,12.892448725721801],[77.828118437842306,12.892838200193699],[77.827691633072106,12.893236241931101],[77.827027659234602,12.8935931201976],[77.826332708481402,12.894035123905701],[77.825883776803806,12.894754379585599],[77.825568547303106,12.8956393986391],[77.825451613776707,12.8958171870879],[77.825416785812394,12.8958701398897],[77.825224674573505,12.8961622290508],[77.8252287876644,12.896186099015701],[77.825299281838596,12.8965952189298],[77.8255239862971,12.8971116361281],[77.825345591922499,12.8977823760069],[77.825330081267495,12.8978028439984],[77.824880904580894,12.898395582219599],[77.824427279955202,12.8988851833859],[77.824219725968007,12.899108914413601],[77.824212166600105,12.899127794308299],[77.823998159994204,12.8996622855664],[77.823975205041407,12.8997196156384],[77.823964781705499,12.8997580699104],[77.823847977953406,12.9001889703503],[77.823565699412796,12.900826774185999],[77.823224787331498,12.9013064284834],[77.823143689708104,12.9013712497153],[77.822862622420203,12.901595905269099],[77.8223271376323,12.9017334899742],[77.821707648519705,12.901846247848701],[77.821653810820095,12.9019064576233],[77.821477276496395,12.9021038857723],[77.821464498960097,12.902442819704101],[77.821207759679396,12.9024047121704],[77.821182060113301,12.902400897704499],[77.821202468016693,12.902437063541999],[77.821219328531996,12.902466943770699],[77.821458687681698,12.9029692599975],[77.821503170020094,12.9030789958742],[77.821536649244393,12.9031615884898],[77.821522718715201,12.9032137129982],[77.8215411001067,12.9032438062012],[77.821827135947998,12.903297659101],[77.821889862757303,12.903309468795101],[77.8218300881761,12.903512437344901],[77.821747552282801,12.9037926901094],[77.821673731057601,12.9040433547283],[77.821646186728103,12.9041618776614],[77.821491272210196,12.9048284709376],[77.821461787829605,12.905058698769301],[77.821410204039907,12.905461482166],[77.821398513865802,12.905552760673199],[77.821564090252807,12.9061010234634],[77.821592225614907,12.906194185206299],[77.822039421651695,12.9064879397848],[77.822174377584005,12.9065762694486],[77.822324915687304,12.9066747967903],[77.822476186174299,12.9068413433316],[77.822084709772199,12.9073664862384],[77.821923743460005,12.9075185251184],[77.821682918675606,12.907745993503701],[77.821561161263702,12.9078609977359],[77.821537795852805,12.9079014489618],[77.821253538955204,12.9083935581251],[77.821277378681899,12.9089277706462],[77.821304906739499,12.909591046161299],[77.821408754297707,12.910243248598301],[77.821251754853805,12.9111778305918],[77.821202203105798,12.911353075535301],[77.821170534553701,12.9114650735273],[77.821033342942997,12.9119502625599],[77.821000477498004,12.9120102749935],[77.820798439893494,12.912379191763099],[77.8204420359816,12.912697840364],[77.820016089703898,12.912935601564399],[77.8196751372992,12.9131253282629],[77.819015711110495,12.9134215639084],[77.818486580682503,12.9135819458723],[77.818209822269495,12.9135667965592],[77.818172612656994,12.913564759241799],[77.818048578176501,12.913557969977401],[77.817926683469096,12.913723600443401],[77.817775778412496,12.913695565753599],[77.817744071773902,12.913774098201801],[77.817641542409206,12.9137556636844],[77.817466314737601,12.913841722592901],[77.817159865770805,12.9141195693947],[77.816817857015096,12.9142982518407],[77.816553818975393,12.914874830351801],[77.816509652972101,12.915800689828799],[77.816501781534498,12.915965703336701],[77.816500069607301,12.9160015913594],[77.816952736204897,12.9167279552645],[77.817377433710803,12.9174106801786],[77.817468749108102,12.917557474278301],[77.8174760607628,12.9175692284295],[77.817720829733702,12.918334691229701],[77.817820795403904,12.919211641176499],[77.817461439868893,12.920103292985701],[77.817280685441901,12.920717493696801],[77.817231481986298,12.9208846866507],[77.817132984893107,12.921219089796701],[77.816997022947206,12.921402814427999],[77.817011523416696,12.921409191395901],[77.816804501594902,12.921701390903101],[77.817461754432102,12.9219448465778],[77.817475048888099,12.921949770496299],[77.817547216387993,12.9219764964805],[77.817554957995299,12.921979363037799],[77.8175581431518,12.9219782871617],[77.818986174990002,12.921504288157999],[77.819200844026497,12.9214615166961],[77.820204447902995,12.921261554233901],[77.820256097332802,12.921251263239199],[77.821397113914003,12.9217602716244],[77.821912884716596,12.9216889616592],[77.822006341798001,12.9216760404552],[77.822962397669102,12.921441531642101],[77.823115440986598,12.9214041821301],[77.823118353035994,12.921403472265901],[77.823167176437906,12.921391568207699],[77.823244699806295,12.921372675720001],[77.823264997838294,12.9213677292728],[77.823504384712095,12.921309477571301],[77.823848815726393,12.9212257375868],[77.825474819763997,12.9208304222586],[77.825574711130201,12.9208061364928],[77.825652186743696,12.920787299878],[77.825691595390595,12.9207777184841],[77.825721616596894,12.9207704029771],[77.8257290596883,12.9207685899033],[77.825739963055995,12.9207659336407],[77.826673357564701,12.9204069970483],[77.8283041756399,12.9197628515912],[77.829656209654402,12.9196531562645],[77.829677958309901,12.919686683232699],[77.829707822399996,12.919732718436],[77.829864950136994,12.9199748431949],[77.830353218157597,12.920612318004499],[77.830872833827698,12.921263293202101],[77.831489799628002,12.9221313845274],[77.832115062170701,12.9228901394162],[77.832119681785301,12.9228957455987],[77.832232294745396,12.9229757487604],[77.832684871202403,12.9232972705713],[77.832649750866096,12.9233371159255],[77.832766890569999,12.923371608671999],[77.832571551305605,12.9235983530395],[77.832078001335404,12.924171397437901],[77.8320761960602,12.9241940576524],[77.831955102316698,12.924125238801],[77.831953417247604,12.924147698991399],[77.831875344005695,12.925186880638501],[77.831842647723605,12.9256220691623],[77.831690535877598,12.925649836502499],[77.831589338699402,12.9256683092978],[77.831568365907202,12.925672136463399],[77.829820147209603,12.926139792894],[77.829650153437001,12.926188577264501],[77.829565767371307,12.9262127934237],[77.827582221161606,12.926742659060601],[77.826970242006297,12.9269213658034],[77.825245162896493,12.9272842922639],[77.825157313193003,12.927302773592499],[77.824808359915494,12.9273714511893],[77.824711960711596,12.927390423299601],[77.824683341012303,12.9273959225303],[77.8244867694969,12.927534098565401],[77.824416206524802,12.9275836993464],[77.824284935586107,12.927672250169101],[77.823926494975197,12.9279059027728],[77.823837468426902,12.927962238549499],[77.8238001824637,12.9279812633111],[77.822940489621999,12.928412321102799],[77.822842494230898,12.9284614569551],[77.822322519788699,12.928718026029999],[77.822103858404503,12.9280579283782],[77.821887371665596,12.9274449202226],[77.821787704949998,12.9271627069103],[77.821726968178297,12.9269907264945],[77.821716124113905,12.9269883660745],[77.821711828813505,12.9269874351785],[77.821631135862802,12.9267574521244],[77.821620778134502,12.926755100891],[77.821048822663798,12.926659662095201],[77.821012539361405,12.9266536076824],[77.820955662002902,12.9263831507461],[77.8208774845086,12.9260092261416],[77.820852748131699,12.925898355307799],[77.820755770139996,12.9254603823414],[77.820742910542407,12.9254023065002],[77.820741464108394,12.925395772423],[77.820700776821994,12.9253290169608],[77.820696553205593,12.9253220874589],[77.8206864246077,12.9253054545794],[77.820613170628107,12.925185163919201],[77.820478044906494,12.925178771448801],[77.820449405350999,12.9251774162747],[77.820380014715795,12.925012709905401],[77.820349335624599,12.924939889918599],[77.820019764888102,12.924805045283],[77.819325992136598,12.9249529110397],[77.819279360608405,12.9249585247721],[77.819099942364005,12.9249981754524],[77.818594150467902,12.9250953773054],[77.818316086258605,12.925082440590799],[77.818171492422707,12.925075592741299],[77.817966166790896,12.9251974406292],[77.817719250758202,12.9253448154741],[77.817424999216698,12.925501586906901],[77.817248390859703,12.9255028606752],[77.817228547633803,12.925503003570199],[77.816801627585804,12.925506930837001],[77.816325195355503,12.92569248921],[77.816321449953904,12.9256939487023],[77.815855111265904,12.925964375089601],[77.816005012273607,12.9268039853249],[77.815699637040595,12.9274263025236],[77.815608114290001,12.927617751242501],[77.815483453057098,12.927882561323401],[77.815391340237596,12.9279726620735],[77.815337668751198,12.9280251604845],[77.814926534917106,12.9284273113119],[77.814144768227607,12.9289347642459],[77.813690205113801,12.9293497853531],[77.813324102619006,12.929854785985899],[77.8133392732706,12.929860524450801],[77.813049507154204,12.930745406441099],[77.812045481175105,12.9318173750965],[77.811752649783799,12.9324299723158],[77.811472185491098,12.9328416789416],[77.8108837854098,12.933170666405699],[77.810551515117496,12.933525572808501],[77.810246308569006,12.9343390592141],[77.809834215536299,12.9341644280598],[77.809834536656396,12.934163252127201],[77.809828262138694,12.9341619051848],[77.809702644764897,12.934287255399401],[77.809441411508203,12.934134947832799],[77.809342691108597,12.9340697649224],[77.808969745021997,12.9338094333346],[77.808623279122799,12.933570785728801],[77.808602582325904,12.9335565297707],[77.808556548446603,12.933525071604301],[77.808533245488306,12.9335091708106],[77.808528180045798,12.933493336452599],[77.808146449191,12.932300016449499],[77.808143303112502,12.9322902008215],[77.808135098668103,12.932264601325301],[77.808133240785594,12.932258804125],[77.807917300273203,12.9315886691786],[77.807734523313698,12.931022852207199],[77.807719501567703,12.9309834270978],[77.807421595463097,12.930204777519901],[77.806926283467604,12.928925956969],[77.806844253560598,12.9287374369821],[77.806839097567206,12.9287255870475],[77.806835126995793,12.9287126873764],[77.806600404257495,12.9279635078342],[77.806585054014406,12.9279145121023],[77.806391540161499,12.927323969682201],[77.806356010345297,12.927230389403601],[77.806342095290404,12.9271900715031],[77.806328165003904,12.927149708600099],[77.806161043618999,12.9266698994584],[77.806022457936393,12.926272013692],[77.805985762875594,12.9261986389836],[77.805752678697004,12.925611653670099],[77.805707136430399,12.9254985179453],[77.805652327064905,12.9253623638261],[77.805506076530193,12.924999049481601],[77.805375589494304,12.924718669540299],[77.805350326050004,12.924652651937899],[77.805238714856898,12.924355804187901],[77.804991701685594,12.9238307715668],[77.804710381028698,12.9232168119302],[77.804479370101006,12.922719680810401],[77.804387962120302,12.9225139248547],[77.804357043830706,12.922444329342801],[77.804243874031897,12.9221895874367],[77.803995983535202,12.9216601714883],[77.803914697414797,12.921467004093801],[77.803820937970201,12.9212441970925],[77.803825648137305,12.9212428710388],[77.803789700631995,12.921152506632],[77.803787433209706,12.9211452260316],[77.803713988694199,12.920909415456901],[77.803629827522798,12.9206397189594],[77.803627188001698,12.920631276196699],[77.8036238877785,12.920620401630201],[77.8035463362244,12.9203648402141],[77.803426571476805,12.9199722377189],[77.803336154985701,12.919675827229099],[77.803335754664104,12.919675024884301],[77.803291433341897,12.919586144942601],[77.803232498238302,12.919467997029001],[77.803216298277903,12.919434565645499],[77.803172637500495,12.919423428949701],[77.801227856853799,12.918927346662],[77.799915330872196,12.9188230866223],[77.799111038784403,12.9187631470173],[77.797844441463994,12.9186562519237],[77.797685951099794,12.918642875330701],[77.797685098421894,12.9186513122651],[77.797664941977303,12.9186496042506],[77.797636105076293,12.9189263251435],[77.7978777062538,12.920133502778],[77.797887721011804,12.920183543064001],[77.797892175761305,12.9202057427028],[77.797982388438101,12.9206161315049],[77.7982633768341,12.9218886107921],[77.798277031371896,12.921950079400499],[77.798476438115699,12.92306177889],[77.798621467135604,12.9235752680618],[77.798624726390102,12.923623541584501],[77.798656505712202,12.924119637184701],[77.798666041354807,12.9242685016977],[77.798513573283401,12.9243220106948],[77.798381328233901,12.9256247580759],[77.798295104386796,12.925608215707101],[77.798295451104096,12.9256053656904],[77.796612969052404,12.9255979376649],[77.7964507485448,12.9256470084201],[77.796438625370101,12.925650675679901],[77.796293692421699,12.9255928269765],[77.796260540374504,12.925579594806401],[77.796037738363395,12.925692517662499],[77.795928623437504,12.925716529621001],[77.795927658871804,12.925716742296499],[77.795790944168601,12.9257138190183],[77.795632715933905,12.925710510125301],[77.795611232186204,12.9257100691606],[77.795004078066796,12.9257526508007],[77.795003622451304,12.9257526710375],[77.793992519148205,12.9257979242002],[77.793984607206795,12.925798121836801],[77.793971616116906,12.9257984461265],[77.793505496257794,12.9258100754286],[77.793489207297299,12.925815351682999],[77.793512054902394,12.925873803714101],[77.793537092243596,12.9259378689086],[77.792896861285399,12.9261099768934],[77.792794813253806,12.9261373626025],[77.792430320275002,12.9261893079217],[77.791814986171104,12.926276670912999],[77.790759034553005,12.9264951219268],[77.790743413062899,12.9264991515543],[77.790554230649406,12.9265479536315],[77.790177655875695,12.926645652088],[77.789974044127405,12.9266984769563],[77.789785614794496,12.9267126594112],[77.789454328737094,12.9267379821309],[77.789445004303204,12.9267375371308],[77.789018179999701,12.9267171536153],[77.788988626772294,12.9267156005959],[77.788691832580795,12.926699465839199],[77.788690895611097,12.9266995941873],[77.788320967509705,12.9267503013336],[77.788092318573504,12.926781491720901],[77.788089985789696,12.926781810224901],[77.787670134837796,12.926801378225999],[77.787421665949907,12.926812821242001],[77.787415107894404,12.9268131234577],[77.786936138463204,12.926930731005999],[77.786693227081798,12.926990302762],[77.786113461322202,12.927132558280899],[77.786051925826996,12.9271342262219],[77.785530805719802,12.9271483350918],[77.785313952371695,12.9271542138803],[77.785295976234806,12.9271547011765],[77.785168326513002,12.9271984661657],[77.784775273905495,12.9273332587738],[77.784756043091406,12.9273398540559],[77.783673904813099,12.9276856725394],[77.783540380825997,12.9277283550202],[77.782525359635002,12.928113553890199],[77.782530197179398,12.928126015857099],[77.782545072574095,12.9281530938211],[77.782662083752797,12.9283658797833],[77.782633396589901,12.9283764356499],[77.782776383389006,12.928686257192901],[77.782709967833298,12.928808068921301],[77.782708054457601,12.9288115824342],[77.782705454261105,12.9288163579723],[77.782629596706798,12.9288537918932],[77.782628229259601,12.9288544658967],[77.781676092967302,12.9293239391473],[77.781672792917902,12.929325563262999],[77.7813356144365,12.9294915207677],[77.781011976725694,12.9296505939455],[77.780365878808496,12.9299672570844],[77.780363927844704,12.929968212808401],[77.780323488377704,12.9299879801614],[77.779782331613305,12.930251759223101],[77.779776627847994,12.9302545389803],[77.778896972889797,12.930682230190101],[77.778889801613005,12.9306857166013],[77.778892730583905,12.930767091078501],[77.778894971638906,12.9308300037425],[77.778895630656393,12.9308485164483],[77.778862667431298,12.930856935135999],[77.778854341912094,12.930859061711899],[77.778273463197607,12.9310068361027],[77.778261626775702,12.9310098473679],[77.778277286257904,12.931085969011299],[77.778351479382493,12.931447202371899],[77.778444950261601,12.931882515177501],[77.778452041481501,12.931915542456901],[77.778375113479797,12.9319644968564],[77.778274689146699,12.932028356900499],[77.778199799609595,12.932035105702999],[77.778170023567895,12.932037789572799],[77.777654670731394,12.932083462733599],[77.777456676686498,12.932071110230201],[77.777444524035801,12.932070351694],[77.777247762937506,12.932058400518301],[77.776964690549804,12.932099853508699],[77.776947056357699,12.932126539100899],[77.776880332739793,12.932227505719499],[77.776871467161897,12.9322409203925],[77.776942189436994,12.9328017335748],[77.777023395440594,12.933167949627499],[77.777033957078899,12.9332155791286],[77.777185599136303,12.9338994397514],[77.777278158189702,12.934115049740599],[77.777300300197396,12.934166627109899],[77.777359971129897,12.9343056276638],[77.777382898732995,12.9343590348956],[77.777416288060905,12.9344372215105],[77.777448461819503,12.9345051801936],[77.777468182499305,12.9345468342246],[77.777913935948206,12.935494645451699],[77.777957997867503,12.935588333805599],[77.777996501918096,12.9357489617948],[77.778004581635201,12.935782669572101],[77.777897605653393,12.9359007080603],[77.777739878558606,12.936074732616699],[77.777300625572707,12.936150168568],[77.777189371874798,12.936213609147099],[77.777165054963504,12.9362327076849],[77.776735985984701,12.936569529354299],[77.775991481042794,12.937087830458699],[77.775670332090499,12.937324389127699],[77.775663913836297,12.9373291167611],[77.775422956038099,12.9384822238565],[77.775386731393397,12.938655575425299],[77.775374148934205,12.938715788883201],[77.775289520538706,12.9389014323163],[77.774998963994307,12.9395389944952],[77.774501944289497,12.939771631792],[77.774022069479599,12.939924974326299],[77.774002802084297,12.9399311313288],[77.773665608089303,12.9400380364839],[77.773407309013805,12.940113420655599],[77.773387354543303,12.940119244378399],[77.7730722587185,12.940210196920701],[77.771798852168899,12.9405448728994],[77.771790705983605,12.9405470136736],[77.7712444149915,12.9406870511192],[77.7710640805998,12.940740153161],[77.770629359337306,12.940861834780801],[77.770628622086093,12.940862041348],[77.769961921849301,12.9410486297445],[77.769961264471604,12.9410488137814],[77.769281052215305,12.941239308354],[77.769277273207194,12.9412403665479],[77.769246991594599,12.9412488488836],[77.768197441958904,12.941521466209799],[77.768184737728106,12.941524766379001],[77.767195444282294,12.9417837232227],[77.767167562363895,12.941791021805299],[77.766430615810407,12.9419862095444],[77.766390247915794,12.941996901579],[77.765282259704904,12.9422994938143],[77.765236934209497,12.9423269813662],[77.765135239991906,12.9423886543248],[77.765257972253195,12.9433515326771],[77.765264881716007,12.9434042449763],[77.765347069965202,12.9440934827372],[77.765363091558996,12.9442286700691],[77.765367385765899,12.9442650410135],[77.765442899879105,12.9449046161519],[77.765444894362503,12.9449273731451],[77.765455824692594,12.9450524349476],[77.765456041427299,12.9450548833592],[77.765465507812195,12.9451637027116],[77.765474875067099,12.9452713822182],[77.765475171660398,12.9452748080795],[77.765477198787096,12.945298185306299],[77.765490091696904,12.945434005605801],[77.765513649057496,12.945461591426101],[77.765528795025503,12.9454739805137],[77.765571237738001,12.945508712589801],[77.766017430668199,12.9458736839197],[77.766907410135204,12.9466010438888],[77.766967496060303,12.9466499113362],[77.767251768645096,12.946881108583399],[77.768905745467094,12.948217955707101],[77.768944131526098,12.9482468829816],[77.769048283430806,12.948325370951601],[77.769344737523895,12.948548773712],[77.769511034050595,12.948643379914399],[77.769524692428604,12.9486539679337],[77.769559981609405,12.948681338174699],[77.770473635693193,12.9493899690828],[77.770500422877305,12.949414962621701],[77.770502475784497,12.949416879307],[77.770817033274497,12.949710547011],[77.771217318039902,12.950084587136599],[77.772145995735002,12.950955865093],[77.772403670846401,12.951198871433901],[77.772514952115003,12.951303946665],[77.772729240493902,12.9515065095393],[77.772709138577596,12.9515265522496],[77.772668363075695,12.9515669960468],[77.771795962392005,12.9524322935345],[77.771668817898302,12.952557518636],[77.771173057603207,12.9530457966002],[77.771145800464794,12.9530726134765],[77.771095427098601,12.9531221743631],[77.771087032968097,12.9531364891306],[77.771045615288301,12.9531772918969],[77.771044720576896,12.9532086429199],[77.771014909881899,12.953259477266499],[77.770899605568204,12.953456100828401],[77.770824697813296,12.953583891706],[77.7707017022082,12.953793784609299],[77.770629502408099,12.953917028257599],[77.770626718256395,12.9539217804264],[77.770570876420905,12.9540171235837],[77.770555636919099,12.954043146815501],[77.770036534047406,12.9545641489114],[77.770008832551099,12.9545919514515],[77.7698684394163,12.9547328576658],[77.769855711804794,12.954741343333399],[77.769802788427299,12.954813301879801],[77.769754079148996,12.954837247587401],[77.769640329463201,12.9548931670498],[77.769320781069197,12.955050264671501],[77.769294426101396,12.955066084770699],[77.769017305737407,12.955232430668101],[77.768877118019006,12.955534795345301],[77.768737798218893,12.955837630438801],[77.768713661400099,12.9558901486332],[77.768685588005994,12.955898916691],[77.768654354553107,12.9559086812885],[77.7686529932149,12.955911590902399],[77.768624881285803,12.9559200395893],[77.768569929670804,12.955936549452399],[77.768509358223,12.955954747748301],[77.768419144862705,12.9564303840486],[77.768387735997607,12.956518186424899],[77.768193796999498,12.9567052330321],[77.768190380337799,12.9567645885285],[77.768182097443699,12.9569088897091],[77.768151007488697,12.9571053742554],[77.768141278481707,12.957167011811499],[77.768090599890201,12.9572785713248],[77.768049429290798,12.9573694918714],[77.767951100655196,12.957605477184501],[77.767931920666996,12.957651508316401],[77.767887444281797,12.9577582495138],[77.767849656016296,12.9578498766208],[77.767738508482395,12.958029058377599],[77.767659750106404,12.9581577768781],[77.767445904070499,12.9583084007793],[77.767404753274604,12.9583373931001],[77.7672593763821,12.958435349902],[77.767108754327694,12.9587995228922],[77.767015230883601,12.959006715192499],[77.767005658009893,12.959053418325199],[77.766975194083699,12.959202117880301],[77.766968221274595,12.9592361523155],[77.766962738471094,12.959262915446001],[77.766919543864503,12.9594250228128],[77.766879005506198,12.9595772973103],[77.7669528043631,12.959562879005899],[77.766990623302505,12.959555490699101],[77.767000745827403,12.959553522252699],[77.767008736299204,12.9595119803462],[77.767016721224195,12.9594704366923],[77.767042252860705,12.959480737732701],[77.767042923586899,12.9594810070184],[77.767046070400696,12.959465889930501],[77.767072275249703,12.9594760185035],[77.767203649206905,12.9595268003297],[77.767216655181102,12.9595573875776],[77.7672449649301,12.959623961171999],[77.767490869650004,12.960202170348399],[77.7674955599431,12.960213202401],[77.768144684579994,12.9604678501219],[77.768174761222696,12.9605609090362],[77.768390786370603,12.9612293373548],[77.768564237855799,12.9613558683149],[77.768716637451007,12.9614670923307],[77.768953130276699,12.9616397035287],[77.769078781587893,12.9616553661651],[77.769261496624907,12.961678161169299],[77.769327506645595,12.9616863961897],[77.769740573689006,12.9618263632244],[77.769763775156406,12.9618342271863],[77.769952064130706,12.961898029878499],[77.770156612563696,12.9622967648751],[77.770332711200695,12.9626400379512],[77.770360259879297,12.9626937368607],[77.770366766373797,12.9627959502241],[77.770373553922298,12.962902585042301],[77.770374483680698,12.962917186302899],[77.770428554574195,12.9629097824794],[77.770506414092097,12.962899122752599],[77.770545648251797,12.962893751249],[77.770657456661894,12.9628784428897],[77.770642771524905,12.9630145719702],[77.770628163235202,12.9631499884196],[77.7706212050457,12.963214502444901],[77.7705060851155,12.963213316271499],[77.770765861807604,12.964221060463499],[77.771201092498998,12.964861794743801],[77.771257944343503,12.964945964591299],[77.771287605563899,12.964989934670101],[77.771321386213899,12.9650297887148],[77.772085851646807,12.9659316826816],[77.772189710551601,12.965942974964401],[77.773038436812996,12.9660352549847],[77.773146899122494,12.966046710080199],[77.7733473876349,12.966067884825801],[77.773458742406206,12.9660796205956],[77.773495470893295,12.9660834899917],[77.773528928376393,12.9660990461142],[77.773598292260999,12.9661065421648],[77.773635383342494,12.966110550398],[77.773959349514399,12.9662631024457],[77.774063945037895,12.9663123370399],[77.774203040113306,12.966432980174799],[77.774241167075502,12.9664440186009],[77.774416390171893,12.966494749120899],[77.774456287558905,12.9665062988768],[77.774542545863,12.9665312688513],[77.774599948836595,12.9665478855632],[77.774631483568399,12.966557322197101],[77.774688651602801,12.966565542377101],[77.774781025092906,12.966578825002401],[77.7748611254883,12.9666093806914],[77.775067983503305,12.966688281886499],[77.775194805769502,12.9668275777194],[77.775223862073503,12.966859527803701],[77.775264112509703,12.9669038160661],[77.775777816443906,12.9672141410073],[77.775782896125705,12.967217217690701],[77.775801018299902,12.9672273808117],[77.775944456685494,12.9673140849908],[77.775995439407097,12.9673449175428],[77.776180141689807,12.9674570593435],[77.776308259961098,12.9675348457586],[77.776346330640607,12.9675543231753],[77.776562072425804,12.967626003691899],[77.776657052135207,12.967657561563501],[77.776708976658298,12.967674813423899],[77.776789088810801,12.96769152772],[77.776849973060393,12.9677041845086],[77.776923685285894,12.9677195326159],[77.776940324338895,12.967723030573399],[77.777296268017906,12.9677978666775],[77.777311739218703,12.9678011196336],[77.777334176054097,12.9678058365604],[77.777416722555103,12.967823375575801],[77.777437506664697,12.968055572292799],[77.777440516936295,12.968089198468901],[77.777428750221503,12.968091754014401],[77.777456549013905,12.968100825451399],[77.777508185512701,12.968117675514501],[77.777578547769707,12.9681406379623],[77.777583937042706,12.968142394267501],[77.777598103605001,12.9681470179071],[77.777629174822707,12.968157158228101],[77.777638059557304,12.9681537743974],[77.778504589379693,12.967823701816799],[77.778639324565205,12.9677565359145],[77.778679016991305,12.9677367494539],[77.778844518191903,12.967654247214799],[77.778749422412503,12.9673626931343],[77.778666233835395,12.9671751870841],[77.778704585909395,12.966966201924301],[77.778772025699993,12.9668423096496],[77.778791054224698,12.9668073523962],[77.778796412217105,12.9668077043652],[77.778945483872903,12.966817498258401],[77.778978698200604,12.9668196745377],[77.779301266339502,12.9669057991243],[77.779703018537603,12.967040179354299],[77.779894913361005,12.9671043252701],[77.780008757115397,12.9670958397809],[77.780238432130702,12.967078613458799],[77.780645117494302,12.967089702569],[77.780753116789199,12.9670676826071],[77.780797663891803,12.9670585996935],[77.780907444110795,12.9670362164744],[77.781223052454294,12.9669447716189],[77.781264037479104,12.9669174301773],[77.781446442995701,12.966795742717199],[77.781642243830802,12.96651669003],[77.781783180215896,12.966315858839099],[77.781822933543495,12.966293812159201],[77.781877163099097,12.9662637383417],[77.781977159230607,12.9662082826339],[77.782041744224202,12.9661846822762],[77.782123544484904,12.966165634762],[77.782372436179401,12.966268470500101],[77.782585884482202,12.966357496783299],[77.783055935529902,12.966484797195699],[77.783453862989802,12.9665699322974],[77.783816032527696,12.9666353471578],[77.7840638678977,12.966730084258799],[77.784028556466197,12.9668904957603],[77.784022673586605,12.967168464050401],[77.784014560703696,12.9675541106105],[77.783968233796998,12.967865293677701],[77.783964309492703,12.9678916445138],[77.783963901453404,12.9678943750634],[77.783956006141807,12.9679474322357],[77.783922349549897,12.968106251581601],[77.783885097143099,12.9682820410135],[77.783791916743496,12.9684960273746],[77.783744221142996,12.9687430758103],[77.783588433718904,12.969178196213401],[77.783587399277195,12.969181085222701],[77.783583190438307,12.9692111706728],[77.783578921865995,12.969241682220201],[77.783504256285298,12.9697753805658],[77.783470416167901,12.9700185582195],[77.783395194301605,12.9705596380616],[77.783391209991294,12.970588298401999],[77.783203030021696,12.970900876797799],[77.782893618407101,12.9709441853906],[77.782623074643695,12.9709100734354],[77.782205131836704,12.9708573337488],[77.781955610830906,12.970855630911499],[77.781540620632498,12.9708205028648],[77.7813276528681,12.9707630392185],[77.781225463463599,12.970735465509801],[77.781164049500703,12.9707188943334],[77.780827855281998,12.97031982897],[77.780504825560797,12.9700197487527],[77.780470121679201,12.9699875102598],[77.780346232984201,12.969930820452801],[77.779878282359405,12.9700629108928],[77.7797443770434,12.9700879437518],[77.779699072784695,12.970096413207999],[77.779488741416898,12.9701357319979],[77.779200834063204,12.9702339913841],[77.778823669985201,12.9704043426146],[77.778628373168303,12.9705768776714],[77.778527892172903,12.970864877169801],[77.778529307087595,12.9708714417733],[77.778619286465798,12.9712889484352],[77.778833787216897,12.9718020777545],[77.778959483976905,12.9721189222804],[77.778980668797502,12.9721723227568],[77.778979288986406,12.9721808575308],[77.778923818897695,12.9725238729054],[77.778795891720307,12.972813694265501],[77.778544572049498,12.972877491474399],[77.778277897436794,12.972914800316],[77.778227071411195,12.9729624681977],[77.778110081955006,12.9730721877308],[77.777986245113098,12.9732680650734],[77.777962933251402,12.9733049388885],[77.777931439921105,12.973329251034],[77.777779566810594,12.973446492852499],[77.777515412176996,12.9735666403464],[77.777498333957695,12.9735752217645],[77.777460360676201,12.9735943024496],[77.777093016000705,12.9737788857126],[77.776784977654103,12.974062382953701],[77.776770696685503,12.9740884668522],[77.776552407663104,12.9744871705522],[77.776542186292104,12.9744924701366],[77.776438336980206,12.974546319896399],[77.776251391846003,12.9747895647153],[77.776250014906495,12.974799196085],[77.776230113139604,12.9749384220947],[77.776222449835601,12.974992028813499],[77.776201677980893,12.975137342507301],[77.776266562867505,12.9753164486362],[77.776402023587195,12.975691594031501],[77.776504942202706,12.9759773544622],[77.776657661254106,12.976188509496099],[77.776757883430307,12.9762136640256],[77.776917799848306,12.9762534378411],[77.777173977129806,12.9764832445859],[77.777353908514797,12.9764570485892],[77.777758744300598,12.9762829513038],[77.778075503818798,12.9762793633796],[77.778278431663907,12.9764953851348],[77.778306970032602,12.9765330408965],[77.778331226089506,12.9765650443323],[77.778447956901601,12.976719066027099],[77.778448570058302,12.9767219410362],[77.778462910366301,12.976789231685199],[77.778496908058102,12.9769483921485],[77.778530664034093,12.977231917619999],[77.778483039933704,12.9775365136519],[77.778375852968907,12.977962675286699],[77.778207267805499,12.9783093116593],[77.778173227459504,12.978342272367801],[77.778153624687107,12.978361253589499],[77.778208584176994,12.978370823016601],[77.7781489417887,12.9784287186577],[77.777928190948799,12.978510217026701],[77.777590190822195,12.978485370208899],[77.777275767343795,12.978401430205301],[77.777029519011293,12.978489380746501],[77.776946315957602,12.9785891922446],[77.776885033805499,12.9786627767391],[77.776791644181301,12.978775024534499],[77.776480760184995,12.9791495354958],[77.776270204368402,12.9794039424307],[77.776250942859505,12.979427216059699],[77.776192598403398,12.979497711373799],[77.776014907238704,12.9796954916954],[77.775835021695897,12.9798959231195],[77.775489245295205,12.980054581854301],[77.775031131310897,12.9802789552233],[77.774668277805503,12.980458735106],[77.774686851470193,12.9805340366572],[77.774700832870295,12.980590701290399],[77.774834003143098,12.980822960346],[77.774865120923494,12.9808772207472],[77.775065009109795,12.9811360924725],[77.775247221794601,12.9813103650438],[77.775249484322401,12.981397326316101],[77.775233955965007,12.9813977152607],[77.775238356577603,12.9815582728111],[77.775374428763001,12.982080363575299],[77.775441104015002,12.982162111296599],[77.775443460965505,12.9821649984044],[77.775634064084002,12.9823982223086],[77.775758049644296,12.9824965821263],[77.776042644603393,12.9827219978391],[77.776095714625995,12.9828589005776],[77.776132904637805,12.9829548370077],[77.776186985673107,12.983094348511001],[77.776262071436804,12.9832877927536],[77.776276104526502,12.983323931581801],[77.776279376913493,12.9833323579441],[77.776328848187404,12.9834597022423],[77.776354925356202,12.9835268061858],[77.776411947532793,12.9838449495583],[77.776498596916596,12.9841133624146],[77.776564944628802,12.9843187359246],[77.776766859197195,12.9847972150022],[77.776781289532096,12.9848741376654],[77.776913392450595,12.985194827762699],[77.776847489340099,12.985246338914299],[77.776722236170698,12.985344246149101],[77.776513669766302,12.985462688946299],[77.776424411832707,12.985542174966101],[77.776159231753098,12.9857783279377],[77.775983694672206,12.986110186329601],[77.775972781498496,12.986141470828599],[77.775865833949496,12.9864480424615],[77.775922944884101,12.986842572631399],[77.7759418902112,12.986973427248],[77.775959960077799,12.986962821674201],[77.775962564064599,12.9869798113477],[77.775990106396605,12.987159164153599],[77.776009343453097,12.9872844322612],[77.776051975945904,12.9874255780804],[77.776060388668995,12.987453432138199],[77.776098210195897,12.987578666019299],[77.776128991755201,12.987966420711601],[77.776142682940502,12.9881388557741],[77.776143295579203,12.988146571641501],[77.776152363468199,12.988260724734101],[77.776058253765697,12.988788605388301],[77.775885957499796,12.989502714779601],[77.775824314575999,12.9897008683515],[77.775807137328499,12.9897560853271],[77.775721495562493,12.990031381712701],[77.775543398808594,12.9902872197009],[77.775543025520506,12.9909938930761],[77.775605561796596,12.991509638410299],[77.775502863911299,12.991678210139],[77.775485983259401,12.991705919902399],[77.775452974577902,12.991760101072799],[77.775073332206603,12.991950144937601],[77.775053537443199,12.991947226492499],[77.774469030182701,12.991861056795701],[77.774118243329397,12.9918858226441],[77.774118196960501,12.9918863750638],[77.774110424434696,12.9919798399114],[77.774140946995701,12.9921581413324],[77.774141508652306,12.9921614360389],[77.774400056875905,12.9936780264951],[77.774407043952394,12.9937191555557],[77.774407157309398,12.993719823699401],[77.774351495560097,12.9937731330847],[77.774295126091403,12.9938271663514],[77.774287640133707,12.993789221374101],[77.774161441105903,12.9939085559921],[77.774264302431206,12.9944906476157],[77.774327195050205,12.994846572842301],[77.774359403158599,12.995028919201101],[77.774376411092305,12.9951252076619],[77.774382113518001,12.995157492554201],[77.774405640149496,12.995290715561501],[77.774634840784302,12.9957185528393],[77.7746559740892,12.995758002275601],[77.7745021022332,12.9964476983022],[77.774638903589604,12.997082350768199],[77.774586364991407,12.9972496963656],[77.774552519254797,12.997357503555399],[77.774494327606305,12.9975428556904],[77.774454407361603,12.997914513191301],[77.774951441827795,12.998178154180501],[77.774846392904905,12.998969505742201],[77.774737664134506,12.999787490211],[77.774742852475597,13.0004328442303],[77.7747482940689,13.0011156865878],[77.774199457193802,13.001155176435701],[77.773800340001301,13.001273893361301],[77.773652273130196,13.001769711954299],[77.773334039503197,13.0018964759475],[77.7729221319358,13.002061637785101],[77.772559452985703,13.002527406293],[77.772617474106795,13.0028777345726],[77.772714520209206,13.0029513853742],[77.772738758520504,13.0029697807006],[77.772869345394398,13.002984009860601],[77.773116814572901,13.0030437137119],[77.773502610254496,13.0031065113639],[77.774038650968805,13.0030912205031],[77.774482927733899,13.0029335098082],[77.774780670379499,13.0029685659478],[77.775569549706702,13.003552852958199],[77.775623847149603,13.004051785374401],[77.775710863648698,13.0046435785888],[77.775735704810899,13.0051237065083],[77.7758363680408,13.005755386460899],[77.775755347337906,13.005866791574901],[77.7751052953315,13.0060410475617],[77.774696301165505,13.0062485736367],[77.774477596303896,13.0063076751116],[77.774359354851001,13.0063597284176],[77.774178446673901,13.0063465976533],[77.773861000119794,13.0061782724619],[77.773568273695901,13.006169948283],[77.773354381595993,13.0063983089658],[77.773363779765006,13.0065774411517],[77.773405027887094,13.0073636159385],[77.773414071270395,13.0075243261146],[77.773450469556906,13.0081189220481],[77.773167714294203,13.008803820131901],[77.773193526344002,13.0092209831567],[77.773214088411393,13.009553301710501],[77.773311528967895,13.0100411833125],[77.773399653484006,13.0102878426],[77.773679266104807,13.0105727298895],[77.773862417700201,13.010759337454401],[77.773901136910794,13.0107987864856],[77.773908252185905,13.010867829134799],[77.774144447304494,13.013159661367199],[77.774063031113002,13.0132485891031],[77.773477971887004,13.0138876282287],[77.773156963693097,13.0143819716791],[77.772874586033296,13.0148168242252],[77.7728471716961,13.014859041086201],[77.772831085105096,13.0148634325109],[77.772582205991597,13.0149345012059],[77.772540618061598,13.014946376481101],[77.772513288357899,13.0149560388152],[77.772389545324302,13.014999788013901],[77.772125779070706,13.015093340004],[77.7717438568327,13.0152296713221],[77.771719460723205,13.0152383799366],[77.772061358463603,13.0159461813011],[77.772067666104107,13.0159592606764],[77.772429305788506,13.0166596226248],[77.772740982463702,13.017073664770001],[77.772763371625302,13.0171034071397],[77.772775857412299,13.017124951285201],[77.772826230004199,13.017211883852401],[77.772859577570301,13.0172926473308],[77.772867464028593,13.017311745718199],[77.772860141590101,13.017443362649701],[77.772857704154006,13.017487179521],[77.773020464912804,13.0178922641929],[77.773043054886301,13.0179484867847],[77.773316841886299,13.0186306649332],[77.773338870870205,13.0186855529582],[77.773373396605294,13.018771563675299],[77.773396047097194,13.0188279915106],[77.773444552491995,13.018948817129701],[77.773444795049201,13.0189494206567],[77.773443657083703,13.0189625615747],[77.773438946096505,13.0190169688035],[77.773421789908497,13.019216969586299],[77.773417436183095,13.019267718191101],[77.773379320129493,13.0197113534146],[77.773701917088204,13.0196875955397],[77.774136624639297,13.019456042640799],[77.774348312977907,13.0193859939916],[77.774434067287203,13.0193570851012],[77.774572013932996,13.019570905436201],[77.7745618610886,13.0197259745045],[77.774638466987298,13.019880110229501],[77.774755998808303,13.0200259778352],[77.774754100887407,13.0201043071188],[77.774752108946004,13.0201617844666],[77.774729302176894,13.0208200033357],[77.7747432216932,13.020844677292301],[77.774775377294802,13.020901677904799],[77.774776283265794,13.020903283324801],[77.774783804165196,13.0209441255064],[77.774813937938305,13.0211077773274],[77.774810809886105,13.0211424844235],[77.7747988160679,13.0212755802646],[77.774786157966304,13.0214176043213],[77.774782908714698,13.021454250318399],[77.774783868654694,13.0214951112601],[77.774786033175403,13.021587217699199],[77.774794622732401,13.021631281382399],[77.774823660550894,13.0217802245547],[77.774843923041004,13.021884138582401],[77.774846761840294,13.021916349166],[77.774858330368801,13.0220476353804],[77.774869737699206,13.0220743758914],[77.774936741982998,13.0222314433239],[77.774943264632,13.022247250972001],[77.774993065215497,13.0223679961939],[77.775079705229004,13.0225782181715],[77.776007726757001,13.0223996385779],[77.776254295893807,13.022352190009],[77.776323880591505,13.0223387999224],[77.776324210644404,13.022426942291901],[77.776324521842696,13.022465612374001],[77.776325358443998,13.022542829199301],[77.776466670809896,13.022818501155401],[77.776521654936005,13.022927809569699],[77.776567546171194,13.023060336521899],[77.776580707207302,13.023098344976701],[77.776633664509902,13.0232512769278],[77.776724244433296,13.0235226351638],[77.776731273631896,13.0235442835297],[77.776814925107004,13.023778215942],[77.776831470511596,13.0238442810279],[77.776897030922697,13.0241334621827],[77.776947988020893,13.0243582258224],[77.776938733694806,13.0245919786865],[77.776944933352198,13.0246330037882],[77.776999577408205,13.0248299032202],[77.776993789566802,13.024946867966401],[77.776982762695198,13.0251696998385],[77.777113541146306,13.025546740360801],[77.777116191432995,13.0255544876374],[77.777024668496793,13.025568362581801],[77.776985507728696,13.0255561947489],[77.776969895215203,13.0255586167664],[77.776911806072604,13.0255442255317],[77.776860639141802,13.0255315486369],[77.776817061444007,13.0255207532757],[77.776756681234403,13.025505794892201],[77.776763856305394,13.0255622507177],[77.776791862056598,13.0257818811367],[77.776808749097995,13.025846010350801],[77.776828003954805,13.025919075012199],[77.776943168915494,13.0263547650038],[77.776958534488799,13.026412896266599],[77.777005876852201,13.0265920009948],[77.777040937106904,13.026724368259501],[77.777094863495705,13.0271056641638],[77.7771418852371,13.027437234603701],[77.777163450110706,13.0275018781645],[77.777254324560801,13.0277742578398],[77.777329861022096,13.028000644615499],[77.777326098956706,13.028027694801301],[77.777307348807,13.028162559372999],[77.777292268677598,13.028271042292101],[77.777290286790901,13.0282853132451],[77.777335606776006,13.0282836855054],[77.777455820943004,13.0282793676397],[77.777456121465704,13.0282824401843],[77.777478887555006,13.0285154602508],[77.7774819131821,13.028546361621901],[77.777588581547604,13.028770043186601],[77.7775926898221,13.0287786564411],[77.777643786499198,13.029062951558201],[77.777647051896395,13.0290811525372],[77.777665764158598,13.0291854583632],[77.777700693058407,13.029368310913],[77.777728003840295,13.029511436335699],[77.777802823564599,13.029749932984799],[77.777804080257098,13.0297871791836],[77.777804974234201,13.029813549822601],[77.777806161658603,13.029848798645199],[77.777833371935301,13.029844674050301],[77.777834038662405,13.0298681818308],[77.777835994302094,13.0299371898976],[77.777879050035196,13.030084849917101],[77.777880703457399,13.0300905212197],[77.778034487814793,13.0300121771172],[77.778056729346801,13.029820770445401],[77.778057503536502,13.0298141101767],[77.778073802094198,13.029814363512299],[77.778092295530499,13.0298146502109],[77.778839984394594,13.0298375886656],[77.778860850390899,13.0298382283374],[77.779020343125495,13.030315579031001],[77.779002920839403,13.0303207143086],[77.779003241862398,13.030321659337],[77.778959124648594,13.030335738373701],[77.778670250709197,13.0304279268014],[77.778655263125103,13.0304327098405],[77.778742685174606,13.0306954393015],[77.778746033136599,13.030705508683999],[77.778751272182802,13.030691777288],[77.778755856753804,13.0306897344938],[77.778761233763205,13.030676230154301],[77.778776092415299,13.030670294965899],[77.778904838904893,13.030618865673301],[77.779055458474303,13.0305487741219],[77.779084949570205,13.030535047136],[77.779099113572798,13.0305284536486],[77.779113547039898,13.030521735322401],[77.779148590153397,13.030516126394],[77.779229808679105,13.0305031260639],[77.779552620894293,13.0311315602614],[77.779575187865007,13.0311261917651],[77.779669802806794,13.031103682882399],[77.779687106590401,13.0310995659482],[77.779740580244706,13.0312615366781],[77.779748785100395,13.0312863563984],[77.7797476637041,13.0315180179755],[77.779746891810106,13.031684444367],[77.779850286228395,13.0320554075603],[77.779907111694499,13.032104413455601],[77.780333496711705,13.032473181286299],[77.780326849943407,13.032480721198],[77.780364198094603,13.0325123712951],[77.780386571836203,13.0325192238135],[77.7805447365362,13.0325676670544],[77.780538122889695,13.0325734704595],[77.780308180306207,13.032775219934001],[77.780483255483105,13.032965512125701],[77.780501657633806,13.0329637942458],[77.780512870579003,13.0329760681038],[77.780612872359598,13.032972647398401],[77.781109269176099,13.0329556688129],[77.781117496895206,13.0329553871308],[77.781247792149102,13.032863528699499],[77.781258146230201,13.03285623981],[77.781272686004698,13.032846004539699],[77.7815529465135,13.033327415239],[77.781334720164395,13.034135096663301],[77.781217641527903,13.0345840338033],[77.781176837038004,13.0345726578105],[77.781125863017394,13.0345554933696],[77.781086519137205,13.0345462912847],[77.7810007565528,13.034526225130699],[77.780907453054297,13.034526436972],[77.780819188945102,13.0345266371063],[77.780679249791504,13.0345267481788],[77.779858858545097,13.034527396990899],[77.779600903775801,13.034525346584299],[77.779003654656506,13.034576998570699],[77.7790108077387,13.0347776647437],[77.779010876070501,13.034779576312401],[77.779013501193901,13.0348532842303],[77.779020917061004,13.035061554329101],[77.779023782604,13.035142021824299],[77.779027977699997,13.0352599550843],[77.779030950741301,13.0353435297049],[77.779038796503102,13.035564297856601],[77.779029025291806,13.0356188478072],[77.779012252898596,13.0357124894796],[77.778933655588105,13.0361513606214],[77.778923404048797,13.036208605781299],[77.778888937967693,13.0364010948526],[77.778880574459393,13.0364478043416],[77.778718192046895,13.0373548930482],[77.778689942513296,13.0375127006531],[77.778689649438903,13.037523664534801],[77.778675936418495,13.038036049532099],[77.778674831781998,13.0380773000961],[77.778672439687895,13.0381666123199],[77.778647864347406,13.0381795549768],[77.778564879805202,13.038223234630999],[77.778501889698902,13.038234575289099],[77.778476750563797,13.038239026568601],[77.778036749321501,13.0383169401095],[77.777720748895604,13.0383728951461],[77.777695913151405,13.038377292513401],[77.777695133663102,13.0384150013553],[77.777666108766795,13.039811362297501],[77.777655648531905,13.039844742507499],[77.777640645835007,13.0398926162744],[77.777605464640203,13.0400048866702],[77.777592987629106,13.040044704725201],[77.777533477087701,13.0402346371222],[77.777530031632693,13.040245639361601],[77.777491051934504,13.0403700575693],[77.777262635639104,13.0410994763281],[77.777214690028899,13.041196886993299],[77.776715602300101,13.0422118503734],[77.776656410941897,13.042351967282301],[77.776438426106793,13.0428679197428],[77.776268841252502,13.043269311871899],[77.776253121183203,13.0433065189328],[77.776226117742198,13.043347134207499],[77.775902497229893,13.0438338887041],[77.7756172402446,13.0442629372327],[77.775593500509302,13.0442986441091],[77.775562770859096,13.044344863715599],[77.775488961182106,13.044444426132401],[77.775329769417993,13.044659139740499],[77.775050255175003,13.045019407087301],[77.774975271030101,13.0451160534981],[77.774955273462297,13.0451625599243],[77.774945421053104,13.0451854723743],[77.774936343652598,13.0452065825378],[77.774876394897902,13.045345999268701],[77.774855355555701,13.045394926899],[77.774788111195704,13.045465373771],[77.774737660151104,13.0455182283041],[77.774800910607098,13.0456736915125],[77.775128982358595,13.046480051755999],[77.775499518994593,13.0460555893521],[77.775652517613295,13.046137818193399],[77.775774776234798,13.046203525549499],[77.776088109454193,13.0463719246238],[77.776594800294703,13.0464378360198],[77.776876831724607,13.0464745225256],[77.776979180254898,13.046487836077199],[77.776782938620698,13.047469846386701],[77.776283058691604,13.0474572870637],[77.776267146755501,13.047544816850801],[77.776250814610194,13.047634650973301],[77.776234419802094,13.047761531368],[77.7762285664231,13.047806828289],[77.776206126629404,13.04798049451],[77.776200664276203,13.048022771989601],[77.776195403690295,13.048063480966199],[77.776174939538194,13.048224216797699],[77.776001840764906,13.048340668496399],[77.775566661407893,13.0483338244529],[77.774990468470705,13.048307538587499],[77.774807879563795,13.0482442559905],[77.774532809179803,13.0481489204483],[77.7744878789957,13.0481346233652],[77.774197544462893,13.0480426551972],[77.773974065154206,13.0479718649938],[77.773717902925398,13.0478968904428],[77.773354419874494,13.0477905047223],[77.773217124333996,13.047963929281901],[77.773005575216999,13.0483768055902],[77.772978023748195,13.048430576092599],[77.772951232497803,13.0484829518611],[77.772913856182299,13.048556019444201],[77.772903621071904,13.0485519974323],[77.772782493410205,13.048504658153201],[77.772689901961002,13.048487949496099],[77.772677714715996,13.0484857649605],[77.771951013215599,13.0483555111956],[77.771803226948705,13.0483540219685],[77.771793796684705,13.048353927012],[77.771696593842506,13.048352834168499],[77.771505596297899,13.0483630495544],[77.771411783879103,13.048357727098301],[77.771392906147994,13.048356655708],[77.770745714407397,13.048319869372699],[77.770619946674501,13.048307214402699],[77.770599281321196,13.048305135035701],[77.7704654840296,13.048291662687999],[77.7701454847939,13.0482925500721],[77.770066089464095,13.048378900799801],[77.770067476704497,13.0483827575421],[77.770081723759503,13.048422368794901],[77.770244598352804,13.0488752129435],[77.770272983713795,13.049074139979901],[77.770281523690002,13.0491339860239],[77.770321840092095,13.049416597314099],[77.770322697794995,13.0494170027471],[77.770329632620303,13.0494202833657],[77.7703695789926,13.0494391836445],[77.770432964126798,13.0494691739244],[77.770435177207005,13.0494880195172],[77.770485116202295,13.0499132736383],[77.770490876920903,13.049962325035301],[77.770495339753197,13.0500003274654],[77.770515784992497,13.050174429713],[77.770513571595302,13.0501750667749],[77.770448681522794,13.050193755033201],[77.770440098877799,13.050196226304299],[77.770452181950304,13.0502165017895],[77.770453133073801,13.0502180967868],[77.770454082314501,13.050219688191],[77.770469733307905,13.050245949643999],[77.770516324810302,13.050324126323201],[77.770512484801301,13.0503509326164],[77.770491136590607,13.050499968537901],[77.770443963294795,13.050829295092001],[77.770420647217506,13.0509920716149],[77.770425201886297,13.0513714358196],[77.770423643294095,13.0513831242209],[77.770421199673706,13.0514014623555],[77.770402760334704,13.051539845069],[77.770313695287996,13.0519850999629],[77.770343327587497,13.0521239621941],[77.770353519029399,13.052361611218601],[77.770328023394995,13.052488387000301],[77.770260109757302,13.052721991361301],[77.770232144600399,13.053369728620501],[77.770220629151197,13.053489904066399],[77.770212358309493,13.053576147036299],[77.770210821387295,13.0535921765279],[77.770148231456801,13.0542439332744],[77.770147574313697,13.054250775682799],[77.770145035326294,13.0542771723921],[77.770477170749302,13.0542228417982],[77.770503563558407,13.0542185247741],[77.7705224367037,13.0542154246978],[77.770454052394697,13.054294829711299],[77.770443757446301,13.054306783363099],[77.770402949691203,13.054354167617401],[77.770100987471807,13.054704792034901],[77.769969493688905,13.0548574444329],[77.769946796077704,13.0548837942726],[77.769881194016307,13.054960803613501],[77.769885542236196,13.055327388216799],[77.769885811595202,13.0553500629991],[77.769892812984907,13.055692876488999],[77.769895607978796,13.0557002699652],[77.769948837224007,13.0558410707629],[77.769979804172195,13.0559232168115],[77.769985100329194,13.0559372670951],[77.770000934554503,13.0559793453575],[77.770005568206102,13.0559916575393],[77.769984398115795,13.0560102324781],[77.769831094855107,13.0561447434524],[77.769802230836106,13.056170069980899],[77.769490305766993,13.0564382923664],[77.769165142502104,13.0566551936592],[77.769105671971204,13.056694863825999],[77.769061883831498,13.056664043945799],[77.768987884497605,13.0566117624782],[77.768914875978894,13.0565599202199],[77.768856974415002,13.056518804655999],[77.768781536369602,13.0564649902438],[77.768710910343401,13.0564146083422],[77.768540664618499,13.056367894933301],[77.768476870338105,13.0563507133446],[77.768414121540502,13.056334083305901],[77.768377211146301,13.056484137829299],[77.7683407899369,13.0566322034383],[77.768333959087002,13.056638768711],[77.768291610748804,13.0566796048907],[77.7679885008871,13.056971890604601],[77.767975232037699,13.057232818556001],[77.767963518342697,13.0574482461858],[77.767910882356603,13.0597699339082],[77.767906079412995,13.0599817989195],[77.767841846875001,13.0628152223776],[77.767942216997696,13.062901535523901],[77.767245425820406,13.0646312291969],[77.767049388452094,13.0646297690271],[77.766876260295902,13.064629618855299],[77.766819343087704,13.064754898477799],[77.7666997755111,13.065018778869099],[77.766715904758598,13.0651339322888],[77.766168330123506,13.065739374109],[77.765765324287301,13.066609361406901],[77.765720938784995,13.0666753540964],[77.765716290460304,13.066682742398701],[77.765617595416103,13.0668396941587],[77.765114551815202,13.067450960510801],[77.764981538629101,13.067612589260699],[77.763820410850897,13.069023501979601],[77.763089659199807,13.0702142749629],[77.762940378366196,13.0704198067868],[77.762909876050003,13.070525289151201],[77.762838744281495,13.070771150772],[77.762723784697002,13.0708590223584],[77.762113568582606,13.071328436191999],[77.761876810238604,13.0715040225779],[77.761749465591805,13.0715914798173],[77.761593078533807,13.071716950292601],[77.761399837057098,13.071846254673501],[77.761213307651403,13.071967397054101],[77.761060617167999,13.0721014174191],[77.760910206978707,13.072206604720099],[77.760704467355396,13.072350602037901],[77.760450238917699,13.0724962946665],[77.760148825518897,13.072669371568299],[77.7601097427968,13.072688180932699],[77.760120130999894,13.072704884255099],[77.7602625245204,13.0729413214071],[77.760113775399205,13.0730058024592],[77.759648252061396,13.0732077527204],[77.759054228557801,13.073447457613099],[77.758601858111007,13.0736330041739],[77.758349169504001,13.0737383419015],[77.758350441776699,13.0739121243217],[77.758356230576396,13.0740674596674],[77.758371709310495,13.074482767163699],[77.758418010244398,13.0750120080122],[77.758528799963003,13.0751827692508],[77.758691057982702,13.0753275402129],[77.759379016497206,13.075728908537499],[77.759377845746002,13.0757334213873],[77.759312328376495,13.0759860212618],[77.759098742926795,13.0768094891042],[77.758940407431695,13.0774057931998],[77.758949499580098,13.077419538476001],[77.758979067578196,13.0774642384249],[77.759026389699898,13.0775357777009],[77.759177406066698,13.0775737070606],[77.7593013219211,13.0775865509141],[77.759324681611403,13.0775889722979],[77.760617380868695,13.077722958234601],[77.760901151796901,13.077751682669399],[77.760899405373905,13.077760272030099],[77.760188752507901,13.081255308013301],[77.760155297174805,13.0814199920906],[77.760168743259698,13.0814201282884],[77.760253929155297,13.0814209929746],[77.765500593527193,13.0814741973442],[77.765553383027594,13.0814747101187],[77.765554969560498,13.0814823694803],[77.765715521628593,13.0822574546744],[77.765921239123799,13.083250568833099],[77.765940977204195,13.0833458546856],[77.766922902706995,13.0880859847568],[77.766920345307796,13.0883585020112],[77.766910171787302,13.0883913499332],[77.766905243518593,13.088407195428299],[77.766376005718101,13.0900696290462],[77.766282835166393,13.0903610645681],[77.766255945183303,13.090445175997999],[77.765685064045499,13.0922308754621],[77.7648931092928,13.0947138159961],[77.764909990655894,13.094724521679399],[77.764941556536698,13.0947445384011],[77.764948090051803,13.0948449078215],[77.765220931364098,13.0953641527225],[77.765288696979397,13.0956164078592],[77.765607617869094,13.096803577208201],[77.765296817470301,13.0975748260534],[77.764679600798104,13.098309209730401],[77.764646697417106,13.098965624373999],[77.764652206665104,13.0997865377478],[77.764640057921198,13.1000570092007],[77.764619984290903,13.1005038907692],[77.764798094633207,13.1013874830651],[77.764683672149701,13.101621737788999],[77.764138090561801,13.1025489455422],[77.764143187890298,13.102677952782299],[77.764480489371707,13.103405680325601],[77.7644616823072,13.104341576282],[77.765332291434603,13.104679980859199],[77.7658248283104,13.1058792628149],[77.766419237229897,13.107357081697],[77.766499082373699,13.107628686572699],[77.765490497806198,13.1083636943253],[77.764524976588802,13.1083704750632],[77.764152337103198,13.1087365627768],[77.764017252636606,13.108712439798699],[77.763937541634206,13.1087912431635],[77.763863486595497,13.108864454820299],[77.763912581473704,13.109164649305701],[77.763815385713599,13.1092681905909],[77.763596866159006,13.109500973872301],[77.762136852527405,13.1124090883437],[77.761980685142902,13.112717494281799],[77.761786329963996,13.112803243352401],[77.761765672390894,13.1128128422618],[77.761633987891102,13.1128739603342],[77.760587571806496,13.1133556675266],[77.759559805361604,13.1138177978602],[77.759428557680195,13.113721915649799],[77.759241770807904,13.113585460842399],[77.7592031905494,13.1135501300753],[77.759078488293895,13.113431186253299],[77.758972483704497,13.1133300776073],[77.758907163439503,13.113335522726199],[77.758868406060103,13.113338753695199],[77.756265177949501,13.1135557385934],[77.756173790716502,13.1135633554696],[77.755982938093595,13.1135793187676],[77.755420878014604,13.1134176644346],[77.755393546583704,13.113409803590001],[77.755213949751905,13.113356782155501],[77.754778919213507,13.113327763453899],[77.754756816158206,13.1133262773272],[77.754631358577299,13.1133178394513],[77.754337541372607,13.1134792320837],[77.7542014391489,13.113476598810299],[77.754126855009801,13.1134751447228],[77.754054995764903,13.1134737445695],[77.754025519521306,13.1136203896952],[77.753760154868502,13.1138505119137],[77.753681324539798,13.113734730074301],[77.752692099046499,13.1141343579273],[77.752664447852098,13.114145550357099],[77.752223051354406,13.1143242168827],[77.752167803365893,13.1143288074392],[77.752098522852904,13.114334564236],[77.751947660306598,13.1143470981463],[77.751736490919996,13.1143646360352],[77.750463216569699,13.114470378358501],[77.748106183306604,13.1158035961996],[77.747921813482193,13.115996525499],[77.747880091283605,13.116040065809999],[77.747867647151693,13.1160669948784],[77.745785655957604,13.1154292360029],[77.745783031447502,13.1154284320345],[77.744773041671607,13.115119785164801],[77.736366125604107,13.1145632752672],[77.736317830277002,13.1145309606036],[77.732301610270298,13.1143481704765],[77.732161928219796,13.1143420757708],[77.732108349316405,13.1143227493324],[77.732529772149704,13.116273862597801],[77.732916819629693,13.1181446646161],[77.732931717444401,13.118209560071399],[77.733322411223398,13.1199116092595],[77.7333356673022,13.1199693676745],[77.733478280938996,13.121795092906799],[77.733577780958896,13.1232030951551],[77.733580392439293,13.123240045386201],[77.733584353946,13.123295724550299],[77.733305729100394,13.1234116196805],[77.732270073269703,13.123842403026501],[77.732222889670396,13.1238620277344],[77.731907643088604,13.1239932272858],[77.731290905921298,13.124231720734601],[77.731129087328,13.1242938790847],[77.731104880058695,13.1243031775634],[77.731021415942095,13.1243352666504],[77.730706174980298,13.1244566826668],[77.730668870398404,13.124471042413401],[77.729799439316494,13.1248218329845],[77.729681166176803,13.124869552947199],[77.729263907007706,13.1250372890661],[77.727090521089906,13.1259120079516],[77.726893141332098,13.125991445206999],[77.726745412214896,13.126050900808499],[77.7262178333539,13.125929053496399],[77.7249528660235,13.125636897928601],[77.724636055019801,13.125552022796301],[77.724102894806805,13.125409185638],[77.730033336682496,13.1313190126961],[77.730028614716502,13.131328843249801],[77.729465481083693,13.1324664997284],[77.729166717718797,13.1330742337075],[77.729060305134993,13.133290694333599],[77.729656063916096,13.134246031447701],[77.7298028160033,13.1344803188467],[77.731162977162398,13.136696043412501],[77.731651553366305,13.137508122617399],[77.731711048969302,13.1376074397197],[77.732099632670199,13.1382579989927],[77.732465765840502,13.1388733762545],[77.732607647024494,13.139112819313301],[77.732661067712996,13.1392042494947],[77.733019137440294,13.139817081552801],[77.733263618522997,13.1402306451438],[77.7333499134497,13.1406912013538],[77.733601295277197,13.142014022080099],[77.733651016773905,13.142274732446401],[77.733664453495194,13.1423451741123],[77.733678909302895,13.142415416136201],[77.733772433553995,13.1428698633826],[77.733774405276193,13.142879442120201],[77.733638243996594,13.1429455090407],[77.733613265553302,13.142957639188801],[77.733058924553205,13.1445806280264],[77.733010390021306,13.144723424794201],[77.733003347028401,13.144744151729601],[77.7329872259469,13.1447916082215],[77.732978318337899,13.1448178346142],[77.732496852269904,13.1448913975451],[77.731743636474206,13.1450433764922],[77.731657131788893,13.1450608310266],[77.730661106876695,13.145261449069],[77.730661048011498,13.145261460534799],[77.730660987303096,13.145261472020101],[77.7304749752942,13.145298217772501],[77.730427954703003,13.1453074446969],[77.729559661729994,13.1454912449811],[77.729288810287301,13.1455480837107],[77.729105362688202,13.145588392057601],[77.728412227057007,13.145747604348299],[77.728395975257996,13.1457823286836],[77.728395434123101,13.1457829062433],[77.728395208141905,13.145783142607799],[77.728465464546403,13.1464648153982],[77.728469336835701,13.146497816497099],[77.728505984807299,13.146817730338901],[77.728546466654393,13.1470744033156],[77.728643427148299,13.1476891702185],[77.728644923632004,13.147695711635899],[77.728658448698795,13.147757127583001],[77.728914808697695,13.1489212327554],[77.728919904948697,13.148944375361401],[77.729136304517993,13.1500671079994],[77.729141766824696,13.1500970018442],[77.729146286212696,13.1501217359205],[77.729294081960902,13.150929550960599],[77.729326207922895,13.1511051430892],[77.729329433634106,13.151140327138901],[77.729335573769106,13.1512073047152],[77.729359662915499,13.1514618506574],[77.729429716761402,13.1522020794071],[77.729434799336502,13.152255781051],[77.729460602065501,13.1525261929596],[77.729475500766398,13.152593140634],[77.729557302185896,13.1529609229574],[77.729585392329994,13.1530872158859],[77.729595858385494,13.1531342731572],[77.729615230496705,13.1532213609783],[77.730040855296707,13.1554254806275],[77.730041970824999,13.1554539617459],[77.730045678317794,13.155548604435699],[77.730081118648897,13.155602729296501],[77.731086453739096,13.157102892407901],[77.731274754958605,13.157380035045501],[77.731457546204993,13.157607609664201],[77.7314752396464,13.1576296108446],[77.731758244063599,13.157986467797199],[77.732041748138499,13.1578976929564],[77.732047112093198,13.1579099184776],[77.732117279484399,13.1580698401613],[77.732168505115993,13.1581867046452],[77.732245921524196,13.1583633212731],[77.732298347427701,13.1584830075867],[77.732309947124193,13.1584819888861],[77.732598694685507,13.1584570710411],[77.732649968790696,13.158587173193901],[77.732711043009601,13.1587421670891],[77.732723547960603,13.1587739062181],[77.732680498504493,13.158843282588199],[77.732692762822495,13.1588966319988],[77.732797122077002,13.1589941709592],[77.733168866220495,13.159339947975701],[77.733271860265603,13.1595530590881],[77.733404022075305,13.159824994267],[77.733411447669894,13.159858776576],[77.733370889530406,13.1598668670474],[77.733374405569506,13.1598843443028],[77.733379317718502,13.1599087641513],[77.733411208196401,13.1600673025142],[77.733418529104597,13.160103695662601],[77.733167108878504,13.1600684003349],[77.732456308317595,13.1602838686442],[77.732178622804,13.1603639691795],[77.732101861977796,13.160349741470901],[77.732049351190895,13.160340008886701],[77.7319338681977,13.160317149226],[77.731842830785098,13.1602991276708],[77.7317920827183,13.160289081777],[77.731790562986305,13.160291106969099],[77.731779824986802,13.160305420780601],[77.731736787569105,13.1603627880435],[77.731527411186306,13.1606418823055],[77.731515973942294,13.1606571502483],[77.731446342210802,13.1607501082759],[77.731435651177506,13.1607463756876],[77.731202608383896,13.160665014300699],[77.731140483057203,13.1607138322699],[77.731087782244003,13.1607552446584],[77.731028698298999,13.160802017609599],[77.730820566318101,13.160975248307199],[77.730815914379605,13.160977533567699],[77.730703773692099,13.1610326253438],[77.729795012355297,13.161466658115399],[77.729595525180599,13.1615896050192],[77.729587868100694,13.161600377443699],[77.729556411997606,13.161644633118501],[77.729540656776294,13.1616668050559],[77.729532092055095,13.161678857223899],[77.729495968986697,13.161729704493],[77.729482934320799,13.161730517044401],[77.729399919593405,13.1617356900825],[77.729320127884705,13.1617405632293],[77.729285399568695,13.1617426534995],[77.729150297069296,13.1618131821612],[77.7290840012991,13.161847572689901],[77.729085281066901,13.161850178749001],[77.729149163893894,13.1619802687215],[77.729334873666303,13.162329438478499],[77.729356404233997,13.1623717673451],[77.7293574926302,13.162373906606801],[77.7293899609855,13.162437576022],[77.7303041370632,13.164290258477701],[77.730750663674002,13.165195180730199],[77.730700210102995,13.1652268458098],[77.729963619430805,13.165688496781],[77.729944504429696,13.1657004769871],[77.729584989357704,13.165924904486999],[77.729551063808898,13.165946082849],[77.729666079896901,13.1660452635937],[77.729583358275903,13.166161112178401],[77.729554580119398,13.1662014153657],[77.729344966277097,13.166494186323201],[77.729244435741194,13.1666345981325],[77.728870004997702,13.167187558565599],[77.728848499256799,13.1672193173801],[77.728653712036603,13.167731616860401],[77.728622200070703,13.167814496164301],[77.728601711684206,13.167868278296],[77.7285742504978,13.1679403639125],[77.728326541981502,13.168125292238701],[77.728273831166007,13.168164644008201],[77.728251559351705,13.168181103031801],[77.727803642635607,13.168507035904099],[77.727787470238198,13.168518804040399],[77.727765172923597,13.1685348811935],[77.727483942155999,13.1688723658001],[77.727469263167507,13.1688902155558],[77.727281590662301,13.169118432070601],[77.727277263097406,13.169192721458099],[77.727274421647607,13.169239469495199],[77.727408284985103,13.169404982256699],[77.727444937976898,13.169450300306201],[77.728035596917707,13.1701460995547],[77.728268596094793,13.1704239526147],[77.728418275680696,13.1705878527791],[77.728506423056004,13.170684375631399],[77.729221344727804,13.1714919695687],[77.729225634068996,13.1714968732804],[77.729736510726198,13.1720832757658],[77.729788777093006,13.1721435597357],[77.729815759642094,13.172199171656599],[77.729842765512302,13.1722790830059],[77.729851393230007,13.1723046142094],[77.7300299518499,13.1728318407107],[77.730259048391403,13.1735065832793],[77.730180838429007,13.173563143750201],[77.730171234564494,13.173570130333299],[77.728818291438202,13.174554314362201],[77.726618732697503,13.1760855622889],[77.726696822154096,13.176197951186801],[77.726735643662806,13.1762636587672],[77.726775863155794,13.1763317326583],[77.726867085183699,13.1766535710005],[77.726963467028199,13.1769691493491],[77.727025990495207,13.177310174400199],[77.727130674454202,13.1777381376441],[77.727260047108899,13.1781844286799],[77.727334308682202,13.178593962187801],[77.727388642387396,13.1788011447239],[77.727433074030202,13.178970377815901],[77.727438532534507,13.178984354839701],[77.7274421835439,13.178993702537699],[77.727630483805299,13.179475436099301],[77.727640362104594,13.1795143848357],[77.727773382955107,13.1800382274344],[77.727782508501903,13.180079703569801],[77.727913573228093,13.180674652008401],[77.727922250677494,13.1807205231058],[77.7279421932585,13.1808258943627],[77.728048370105597,13.1813864375527],[77.728269244793694,13.1820171434582],[77.728276572692707,13.182038071565801],[77.728291581998107,13.1820895246536],[77.728613412730297,13.1831932589826],[77.728756885006405,13.1837875546275],[77.729037096415794,13.184947257887201],[77.729065059471694,13.1850629850644],[77.729127228802398,13.1853201919587],[77.7292827084202,13.1857521454259],[77.729336928615098,13.1858226916532],[77.729196190583096,13.1862775825165],[77.729099964808995,13.186588607531601],[77.728731334197093,13.1877801752075],[77.728187860704494,13.1895368940919],[77.727429947042395,13.191986739624999],[77.727429413052306,13.191988467068899],[77.727267683315603,13.1925112513208],[77.727242539349007,13.192529103475399],[77.726575206426304,13.192717415775199],[77.726521792433203,13.1927322934509],[77.726417643572702,13.192761302089799],[77.726066871230799,13.1928588956873],[77.726059732337106,13.1928608578666],[77.726043163152497,13.192865411857801],[77.725137875705798,13.1931142684225],[77.724177393550093,13.1933782947144],[77.724117564208896,13.1933947406473],[77.724092388148605,13.193401661613899],[77.723962160264705,13.193437458103899],[77.7188935266486,13.1948306901343],[77.718722872504699,13.194877596508899],[77.714166962700105,13.1961297973198],[77.714031008295294,13.196167164895],[77.713549518623594,13.196299494981099],[77.713491351240805,13.1962219868707],[77.713091026529497,13.195688565642399],[77.713036305685307,13.1956156477693],[77.712961524024607,13.195515998455701],[77.711852635015703,13.19403848374],[77.711811824064995,13.1939841706479],[77.7097578256313,13.191250578705199],[77.709743188507005,13.1912320560187],[77.709143175052304,13.1904727645554],[77.709129201860193,13.1904550821308],[77.708956040095799,13.190235952726701],[77.708395846805502,13.1900713038999],[77.708123884238105,13.190054061801099],[77.707572970931196,13.190019088720399],[77.7075651778934,13.190018593881099],[77.706315001992905,13.189938982388],[77.706304878494194,13.189938337792601],[77.705517742259403,13.1898879874448],[77.705388743457704,13.189878805542101],[77.7053763872091,13.1898779261398],[77.704373168496602,13.1898062305637],[77.7043713693092,13.1898061023187],[77.703261443140406,13.189726987979901],[77.703231809903997,13.189733246656701],[77.702615378791904,13.189863432828901],[77.702073761681703,13.1899191752288],[77.702070719036598,13.1899194882771],[77.701925110509904,13.1899344792142],[77.701548450780194,13.189989713940699],[77.701097390936496,13.1901103813533],[77.700789760332796,13.190169179621],[77.700785801530998,13.1901699359268],[77.700622777760898,13.1902010937639],[77.700373791628905,13.1902279240146],[77.700367586936693,13.1902285928862],[77.700193412513499,13.190247361134199],[77.7001404967003,13.190253062810999],[77.700108847033803,13.190256473364601],[77.700105981349793,13.190256782718],[77.699988052476002,13.1902694897466],[77.699984496149497,13.190269873228999],[77.699943292359805,13.1903123163099],[77.699610756987695,13.1906548444967],[77.699336946113803,13.190806972329501],[77.6993201933346,13.1908162800326],[77.699413779483706,13.191138399466],[77.699439548241102,13.1912270945549],[77.699514268650802,13.191472111939399],[77.699473232436105,13.19149289804],[77.699441885448607,13.191508776143399],[77.699439007080898,13.191509191318101],[77.699384168742,13.191536390386201],[77.699182986521805,13.191636174659701],[77.699183935711403,13.1916410066283],[77.699258781145602,13.192022007292101],[77.699233824968204,13.1920231032841],[77.698546280387802,13.192053309496499],[77.697907121990497,13.1920813328266],[77.697882034848803,13.192100068062601],[77.697522202116204,13.192368795278499],[77.697382469696706,13.192473004182199],[77.697021607249297,13.192741509571601],[77.696983481146205,13.1927697724739],[77.696852774112898,13.1928666655756],[77.695625537069702,13.1937143386887],[77.695484089634803,13.1938107806709],[77.695369908859902,13.1938886308112],[77.694798352030503,13.194273511953799],[77.694615597348303,13.1946035546292],[77.692668789981994,13.1984400527828],[77.692612956772706,13.1985500792821],[77.692533744375396,13.1987338353768],[77.690488579950497,13.2028784334844],[77.689893911076993,13.202924304196999],[77.689885333632006,13.2029249671094],[77.689732575782401,13.2029239010113],[77.689670018427904,13.2029270239568],[77.689499252377601,13.2029357479436],[77.687106916941801,13.203057953938499],[77.687007594836999,13.203063027007101],[77.686867063804797,13.2025982276589],[77.686839528911307,13.2025071689432],[77.686998998531294,13.2001595321731],[77.687011092593295,13.1999814556694],[77.687035940655093,13.1996159251688],[77.687057425307202,13.1992998718497],[77.687101835365695,13.19864657169],[77.6870058330164,13.1965860937611],[77.686951334479602,13.195354971371399],[77.6869507024944,13.195340343549001],[77.686943036420303,13.195104497610201],[77.6869008307455,13.193806079216801],[77.686899342764505,13.1937602916899],[77.684206914343406,13.1920328832883],[77.683658781400098,13.191680337864501],[77.683654895624699,13.1916779142155],[77.683646976473995,13.191672974514701],[77.683654044472107,13.191666158628699],[77.682991600918797,13.191436306618399],[77.682867044730301,13.191413607546901],[77.682823714608304,13.191404233852801],[77.682486433381698,13.1913312688645],[77.681791365535105,13.1912169847973],[77.681747840197801,13.191208558774701],[77.681159885251205,13.191094740930399],[77.680988963676796,13.1910616137116],[77.680961621446698,13.191056311772901],[77.680786612347504,13.1910223762354],[77.680535656577305,13.1909736868951],[77.680483598981695,13.1909652984692],[77.680110433866403,13.190905168584401],[77.679823490992504,13.1908588886419],[77.679810100909094,13.1908567288064],[77.679768398277602,13.1908597985596],[77.679356901884304,13.190890086452701],[77.679336401356807,13.190892128477399],[77.678940973359104,13.190785086648599],[77.678927054972704,13.1907813170714],[77.678886453729106,13.1907764038459],[77.677763320797098,13.190640487009899],[77.677256409614102,13.1905801144379],[77.676793232048695,13.190524949573099],[77.676727816129798,13.190513922123801],[77.676640150490002,13.190498989804301],[77.676585245632694,13.190489638404101],[77.675737005470197,13.1903382195161],[77.675685890851298,13.1903349703119],[77.675430508746999,13.190318738399201],[77.675356580995498,13.1904951655677],[77.675009888631706,13.1903884282885],[77.674965619150797,13.190376247182099],[77.674364105443402,13.1902107334574],[77.673922282812796,13.190276800073599],[77.673506075418103,13.1904195819768],[77.673418844000494,13.190471284734],[77.673307959557505,13.1905375627697],[77.673260060917599,13.190566388921001],[77.673068556191396,13.1906827593993],[77.672187970171805,13.1911946288119],[77.672036456749794,13.1912827005749],[77.671238346894299,13.1917466238893],[77.671237634815498,13.1916562353841],[77.671236302354103,13.191487119046601],[77.671191720919893,13.191509199126299],[77.671190337381901,13.1914301522323],[77.671182514931402,13.1905606450251],[77.671177525751403,13.1900993340145],[77.671177372891904,13.190086962118899],[77.671174504387906,13.189855106312301],[77.671175737254501,13.1895327467276],[77.671176997689301,13.1892032429813],[77.6711645367605,13.188374984117701],[77.671158918900304,13.1880639890125],[77.671152571198505,13.1877125331362],[77.671164997781602,13.186980882345701],[77.671165728227294,13.1869396565528],[77.671167395148302,13.186807931077199],[77.671175065549804,13.186201706219601],[77.671180667602698,13.1857558488267],[77.6711814902621,13.1856903448372],[77.671181531219304,13.185686646003001],[77.671019836262801,13.185639294340699],[77.671000651184201,13.1853507177729],[77.670996622851405,13.1852960985038],[77.668893749211904,13.1853054082568],[77.668710962834993,13.1853172271446],[77.668361540832095,13.1853311160133],[77.668331389685406,13.185332317203001],[77.668090174311004,13.1854041619402],[77.667903337329903,13.185459809935301],[77.667788426695296,13.185494034998101],[77.667566931245204,13.185560006145099],[77.667557715445994,13.185563828538299],[77.667539209204804,13.1855039856696],[77.667399016238207,13.185050635969301],[77.667315990226896,13.1850812088836],[77.666551034007099,13.185362887531999],[77.665775044324107,13.1856486267772],[77.665220645905606,13.185850933424],[77.664762808392496,13.185726652097101],[77.664714114671796,13.1857019670875],[77.664303234534202,13.1858129434393],[77.664161042569603,13.1858513488204],[77.663655077274697,13.1856914507403],[77.662563043649598,13.1851025318203],[77.661938169243598,13.184767126042701],[77.661389373696807,13.1844725539615],[77.654038841397096,13.1884445900522],[77.653582602367095,13.1886744391585],[77.653094253468097,13.1889184311884],[77.650507717209507,13.1902290057307],[77.650852537906502,13.1904238181097],[77.651457743363096,13.1904001982575],[77.651784141947701,13.190594584744],[77.653142892184505,13.191416136017599],[77.655579091546898,13.196608314668801],[77.655607531841994,13.196668926530601],[77.656011304920497,13.197495878173701],[77.656018153002805,13.197509903479601],[77.6563747451452,13.1980942544951],[77.656543565315104,13.1984218778247],[77.656587861152701,13.198507840915999],[77.656669830691698,13.1986680466733],[77.656772684012097,13.199033759900701],[77.657122188824204,13.199238608154401],[77.657220906675605,13.1992964682336],[77.656756339817903,13.199331846667],[77.656695859350606,13.1993365632491],[77.655679656154703,13.1994403452744],[77.655591328084299,13.1994486298666],[77.654608019678705,13.1995316138446],[77.654473105328805,13.1995434934678],[77.653536768909802,13.1996263909263],[77.653368088316498,13.199641150489001],[77.652540944655698,13.1997143770467],[77.652463552095696,13.199720096359799],[77.651483947237693,13.199805605837501],[77.651383458050404,13.1998143863173],[77.650494756704902,13.199889663459],[77.650413758093407,13.199896251536],[77.6503384755339,13.1999048527539],[77.649081541625193,13.199998364776301],[77.647757523175699,13.2001244327907],[77.646543479788505,13.2002282211345],[77.646536028478906,13.2002287733802],[77.645935371489003,13.2002815996764],[77.645230613195693,13.2003636620859],[77.645092559485704,13.2003798315504],[77.644574699191807,13.200441044183901],[77.644512798155304,13.2004479371692],[77.643782743377798,13.200528956293001],[77.643540846824493,13.2005552181548],[77.643206291349202,13.2005853702415],[77.642692327028598,13.200815099889301],[77.642671638737795,13.2008250412589],[77.642399873670598,13.200955618850299],[77.641656256138305,13.201296830638899],[77.641558707378493,13.201342043350399],[77.641390339449003,13.2014200602068],[77.640894023009395,13.2016530212774],[77.640566158732298,13.201806913720599],[77.640442476258002,13.2018729425219],[77.639958739880797,13.2020456108615],[77.639740571253697,13.2021304092756],[77.639661743585293,13.2021610480331],[77.639496348487,13.2022253106403],[77.639476361527002,13.2022332742599],[77.638943215962797,13.2023556826607],[77.638184748781896,13.202502469829801],[77.637457179532802,13.202665585941499],[77.637027097060894,13.202763624268099],[77.6370601943906,13.2028541474129],[77.637122372846207,13.203024209148101],[77.637173151302903,13.203163091179601],[77.637217320128897,13.2032833726864],[77.637222333956998,13.2032970941475],[77.637420976685803,13.2037635672447],[77.637639621409207,13.2042639766702],[77.637721505472697,13.2045278501956],[77.637770802227706,13.2046765310089],[77.637821744139899,13.204845227586301],[77.637637797184496,13.204844772758801],[77.637265451485803,13.204843852589899],[77.637122204168605,13.204843568620101],[77.634839174981906,13.204845805162901],[77.634825303911299,13.204845299394499],[77.634504229256393,13.204833538457899],[77.634339005641095,13.2048274861179],[77.634244001906694,13.2048202335973],[77.633996308126399,13.2048174432254],[77.632659022525999,13.2048023745009],[77.632471178656203,13.204872477015099],[77.632450360332797,13.204880261713599],[77.632252024562803,13.2049544226099],[77.632029594487094,13.2050375924261],[77.631588318267504,13.205200364208601],[77.630936025295497,13.205440970706601],[77.630476716881503,13.2056594482313],[77.630200951030304,13.205790620653699],[77.630142221458399,13.205794773074899],[77.630022341926306,13.205803250017301],[77.629869699418606,13.205814065677201],[77.629684995799394,13.205827153157401],[77.628637448789306,13.2059017372234],[77.628442105706,13.205939407157199],[77.626986811056,13.206220262111],[77.626472487141896,13.2063192056314],[77.625257740323804,13.206555110647001],[77.624125056180205,13.206680100567599],[77.623179480728595,13.206814225369],[77.622837802504407,13.206788644197699],[77.622583920704201,13.2067696353245],[77.618479795246401,13.206178482180301],[77.616647126101697,13.2059419324329],[77.613941914883398,13.2055927347124],[77.614000345616901,13.2055301068593],[77.614171663734197,13.2053464818782],[77.614953428933504,13.204508556541001],[77.615367153096102,13.204065108260799],[77.616093115176398,13.203314505483201],[77.616093370531203,13.2033142408839],[77.616194611857594,13.203212151360001],[77.6145576181422,13.2026950197313],[77.614436776934099,13.202656845164499],[77.613937048664496,13.2025041300406],[77.613414868594901,13.202343919003001],[77.613318099398896,13.202314229420599],[77.613131494354803,13.202255064800401],[77.612703743202403,13.202119441562701],[77.6126710102549,13.2021104797155],[77.612636232721002,13.2021009587517],[77.612603529375207,13.2020920056269],[77.612533591260103,13.202127800059699],[77.612238780851101,13.202126730272299],[77.611828279222394,13.2021508682306],[77.610164418413902,13.2022554248546],[77.609818189562802,13.2022784956277],[77.609564064825804,13.2022958384985],[77.609355382465793,13.2023100806329],[77.608419406642994,13.202378309941899],[77.607763233321506,13.202429030012],[77.607005288085304,13.202496857163601],[77.606666555004793,13.2025356535224],[77.606237614112004,13.202559444767999],[77.606196818433105,13.202564093718101],[77.605857200456498,13.202603389511699],[77.6050399664921,13.202607963289299],[77.603985395544001,13.202618955797099],[77.603762307548195,13.202614680923899],[77.603716903237199,13.2026144509646],[77.603692675957305,13.202567100146601],[77.603668403486495,13.202519660346301],[77.603609197987097,13.202392438516799],[77.603300294140396,13.2017286555566],[77.603270749885098,13.201665149670299],[77.602853143188199,13.200739148384599],[77.602853123367893,13.200739105222199],[77.602804474751693,13.200631231638599],[77.602737387664902,13.2004852913087],[77.602627011677896,13.200244667776699],[77.602283842394797,13.199480137783],[77.602239142355501,13.199376250373501],[77.601716123280497,13.1981606926773],[77.601639297616202,13.197977680595599],[77.601572829766894,13.1978193556701],[77.601428169481807,13.1975438716592],[77.601203951482404,13.1971164497942],[77.601153975072094,13.1970211267435],[77.600994667548306,13.1967080996597],[77.600975074420006,13.1966696017546],[77.600775295290504,13.196308611263699],[77.600624480148099,13.1960361296186],[77.600539840608405,13.195877032996],[77.600332364105199,13.195487122189901],[77.600181092314003,13.195202920167899],[77.600147604943999,13.1951324783718],[77.600058193278798,13.194944406717701],[77.599939559403097,13.194720018941901],[77.599756706851906,13.194391650167001],[77.599589536606004,13.1940916988752],[77.599494261054403,13.1941049392489],[77.598777759041994,13.194204505899],[77.596838101391796,13.194480936716101],[77.595737761036304,13.1946377454575],[77.594442887371599,13.194824126247701],[77.592087797513898,13.196011313755401],[77.591980566104496,13.1959355588767],[77.591868744780101,13.195856561049],[77.590566638916698,13.194938814263899],[77.590506717655501,13.1949069524486],[77.590409125861001,13.194934402198699],[77.586403271918599,13.196063145203601],[77.586428277888601,13.1960855974762],[77.586516446718093,13.1961647656019],[77.586323429712294,13.196195782742899],[77.583760561189195,13.196607611237599],[77.582757050292102,13.1967627798601],[77.582355785541594,13.1969106056443],[77.582321581079896,13.1969240920135],[77.582270123748998,13.1969443772854],[77.581991775776999,13.197047227466101],[77.581267764718604,13.197314760309],[77.581127480367599,13.197348346172999],[77.579707278564698,13.197688360022299],[77.579602585089702,13.1977077476348],[77.579491666026499,13.1977282883916],[77.579352099535001,13.1976823153515],[77.579323554843398,13.1976711727925],[77.579208333503502,13.1976261866062],[77.579161158928201,13.1976077648943],[77.579131594968004,13.197642613649601],[77.579029237638494,13.197763265760299],[77.578973050150793,13.1977939667954],[77.578869061897606,13.197850780724201],[77.578804261233898,13.197842010837601],[77.578780175318499,13.1978387509087],[77.578701585222007,13.197828120633799],[77.578644224146899,13.197820362578501],[77.578458166772606,13.1977951981938],[77.578425428997406,13.1977907714256],[77.578412503369194,13.1977939046473],[77.578047534012796,13.197882376350201],[77.577784993945897,13.1979460421349],[77.577742780704099,13.1979530876421],[77.577720343124298,13.197956832490799],[77.577720349994905,13.1979568721726],[77.577718815645497,13.197957130649],[77.577718806912003,13.1979570891791],[77.577712336309006,13.1979253065356],[77.577648659976404,13.197934767143099],[77.575103614261707,13.1983173409077],[77.575046386767994,13.1983263023678],[77.574803828669801,13.1984003552207],[77.574545324161306,13.1984798461444],[77.574365100043593,13.19853564828],[77.574338066480706,13.1985387488544],[77.574044038942802,13.1985721700065],[77.573788616718304,13.1987076810678],[77.573635047230297,13.1988155263052],[77.5735861569988,13.198849862435001],[77.573369497147496,13.198963944168799],[77.573118048212606,13.1990685597019],[77.572616680404096,13.199169937930201],[77.572684815619198,13.1995346223552],[77.572583379909204,13.1995792933606],[77.572572994673195,13.1995838670548],[77.5725633033489,13.199588138349601],[77.572445855745599,13.1996593813136],[77.572289239731006,13.1997546617611],[77.572263869731799,13.1997701261109],[77.572024231387701,13.1998959169693],[77.571791886904407,13.2000184190134],[77.5717634372578,13.200033453520099],[77.571495918709303,13.2000818042128],[77.571372796781404,13.200104130298699],[77.571236952449695,13.200227797082],[77.570914955586801,13.2003143453279],[77.570840229272903,13.2003344964545],[77.570376891132895,13.200414509206899],[77.570363721609297,13.2004089904858],[77.570129429544096,13.2003108425899],[77.570012044895606,13.200381697309099],[77.569832884662404,13.200452746841499],[77.569843183284107,13.200480341914201],[77.569861082523801,13.2005283000302],[77.569870682408194,13.2005525630122],[77.569888105703896,13.2005968028376],[77.569925109130295,13.2006907564313],[77.569884377116693,13.200704184930901],[77.569637164790194,13.200785683048201],[77.569587527444597,13.200802112710599],[77.569149653663203,13.2009470480958],[77.569143854633595,13.2009489746276],[77.569135139257995,13.2009525033248],[77.569071003892503,13.2009786964586],[77.568207136517998,13.2013315030751],[77.567659738976403,13.2015550595275],[77.567987502554104,13.2036491782836],[77.568024138335502,13.203743862236401],[77.568026645920298,13.203750342727901],[77.568495313650004,13.204942193244401],[77.568673491868594,13.205508952296499],[77.568743024315197,13.2056360399823],[77.568752588482198,13.205653520328999],[77.568782412472302,13.2057079962904],[77.568828261822901,13.2057753786452],[77.568837835506898,13.2057894484127],[77.569392085808204,13.206601877844699],[77.569748114851194,13.207489004702699],[77.570187355800101,13.207494997100699],[77.570214604778599,13.2074953692418],[77.570338139623601,13.207497238376099],[77.570751725032096,13.2075034948412],[77.570755519124901,13.2075035524716],[77.5709026476313,13.207505784978601],[77.571344524998594,13.2073714723211],[77.571486292520106,13.207328380605],[77.571505848684893,13.207322436333399],[77.571419839609504,13.2074618068358],[77.571398316245293,13.2074966835502],[77.570939263909295,13.2082392278221],[77.570927103653403,13.2082588968102],[77.570921482798099,13.2082679894833],[77.570919476774193,13.2082776312467],[77.570894597193302,13.2083981323511],[77.5706460376108,13.209601998222601],[77.570642367535598,13.209619774995099],[77.570634062018698,13.209660002687301],[77.570598856662201,13.2096862879076],[77.570432180931505,13.209810593938199],[77.570375220298203,13.2098530750807],[77.570290540858494,13.209892876054001],[77.570276844042198,13.2098993133816],[77.570117209341305,13.2109162299719],[77.570062052219797,13.211156968458299],[77.570044252880294,13.211234653205899],[77.5699774235473,13.2115266399262],[77.569959899257199,13.2117970448835],[77.569936262111199,13.211966858469999],[77.569921101463095,13.212075774715499],[77.5699194344608,13.2120877683336],[77.569876772894304,13.2123304699948],[77.569838637645006,13.2127798334445],[77.569827251022105,13.2129140089],[77.569811418433105,13.213104061446201],[77.569793641093895,13.213317449441],[77.569782737355496,13.213448336955199],[77.569720346152494,13.2142113130755],[77.569719945402099,13.2142153111984],[77.569706241337201,13.214352111851801],[77.569697200905694,13.214442550933899],[77.569673704001403,13.214681154436899],[77.569637029039498,13.2150720951377],[77.569624019579294,13.2152107688658],[77.569590574048206,13.215567206475001],[77.569546919333803,13.2159066175477],[77.569540554834404,13.2159561049462],[77.569536731826204,13.2159858790993],[77.569076618517897,13.2160327927719],[77.568668243715905,13.2161429657202],[77.568609908701703,13.2161586104062],[77.568573443228004,13.216168390648599],[77.568264302889204,13.2161773700849],[77.568180998780093,13.216175865335501],[77.5673312211091,13.2162668601761],[77.567253464634803,13.216275244459201],[77.566979715138601,13.216304763458],[77.566902510557796,13.216313107765099],[77.566895506612298,13.2163138647119],[77.566864433763001,13.2163172249442],[77.566746569808899,13.2163161426634],[77.566141744738303,13.2163107722638],[77.565884068748503,13.216308483985401],[77.565601671576204,13.2163404336728],[77.565474247177804,13.2163549904386],[77.565389922329501,13.216364623597499],[77.5651746716958,13.216436002623199],[77.565090262179694,13.2164640920069],[77.565026325123,13.2164854151507],[77.564981349191996,13.2165004154642],[77.564737562856706,13.216551674506301],[77.564547516056706,13.216591967569199],[77.564410172067696,13.2166210874362],[77.564400897727097,13.2166258069975],[77.564204966507106,13.216725820250799],[77.564101599204804,13.216778583659201],[77.564041343019099,13.216809341329601],[77.564036465088904,13.2168116497651],[77.563849509608104,13.216900370998699],[77.563675906636703,13.216982755171699],[77.563647934696604,13.2169914079081],[77.5634684829636,13.217047537911499],[77.563192129065101,13.2171339778973],[77.563026986434295,13.217186370243899],[77.562762399233506,13.217270312162],[77.562747589880502,13.217334857032499],[77.562718399157603,13.217368881494499],[77.562692860757807,13.217398644844],[77.562569053661306,13.217446732278299],[77.5622361097561,13.217576048688301],[77.562091218698797,13.2176326110591],[77.561793211204701,13.2177489457458],[77.561743623957099,13.2177683508868],[77.561664102419996,13.2177760239988],[77.561511872573405,13.217790711921801],[77.561378795583195,13.217890905621701],[77.561275819194094,13.2179684256934],[77.561271227495894,13.2179701566268],[77.561001725878299,13.2180717217762],[77.560900465424197,13.2181100241721],[77.560578702103797,13.218231733538101],[77.560563049868804,13.2182376687689],[77.560481470661699,13.2182906544466],[77.560356674099097,13.2183717093603],[77.560343869406907,13.218380029149399],[77.5602529501611,13.218393205980901],[77.559725135745296,13.218469700338],[77.558735315823895,13.2188612101959],[77.558663808419794,13.2189347870309],[77.5586137434329,13.218986334632399],[77.558296828616605,13.2193126338544],[77.558221413744306,13.2193609144446],[77.558206946904306,13.2193701777191],[77.558186336049204,13.219383443317099],[77.5575567223174,13.2197886752922],[77.557467155418394,13.2197255608008],[77.557380236529397,13.2198799890774],[77.557436785118995,13.2199789321628],[77.557499909046399,13.2201216011788],[77.557511170117806,13.220147052341799],[77.557528618194098,13.220186506406399],[77.557538922721406,13.2202098079081],[77.557672800699194,13.2201868494992],[77.557844287888102,13.220157821083699],[77.557861438172097,13.2201549183109],[77.558007806261401,13.2206404538416],[77.5580242461197,13.2206949864864],[77.558065517615105,13.220844741093201],[77.558072153730393,13.2208688210092],[77.5580971493672,13.220959517780001],[77.558234989319203,13.2212048981938],[77.558238396220901,13.221425878071299],[77.558245484190394,13.2214217515497],[77.558291342115893,13.2214197339911],[77.558395589788304,13.2214151460495],[77.558446428729795,13.221412908744799],[77.558538643812099,13.221408732129699],[77.558563655536901,13.221407599026699],[77.558563421711497,13.2214241678139],[77.558560626391397,13.2216221502407],[77.558559655313204,13.2216909174445],[77.5585588472414,13.221753299283399],[77.558543014210301,13.222739264761801],[77.558541793308095,13.222815282791901],[77.558529717177095,13.2235673217228],[77.558353074267899,13.223502516753999],[77.558352516223707,13.2235130221641],[77.558116708350894,13.2234276986865],[77.5580410998855,13.2234290664378],[77.5580287370978,13.223429303147499],[77.557933204607707,13.2234311314451],[77.5578558656902,13.223432100882601],[77.557493336791396,13.223436644384501],[77.557495618675702,13.2234810755143],[77.557559443670399,13.224688233889101],[77.557564949793104,13.2247923684545],[77.557634248816697,13.2261030380857],[77.557646022373007,13.226142128766201],[77.557810601512401,13.226688571306701],[77.557824886518901,13.226735999094799],[77.557849088766901,13.226816146973601],[77.557962076442806,13.2269494434089],[77.558054028581907,13.2274394339385],[77.5581397218414,13.2278929581119],[77.558144020528701,13.2279157089375],[77.558161046018498,13.228005602697399],[77.558179664146607,13.2280320506365],[77.558188028686104,13.228043928448701],[77.558253303595095,13.2281366572675],[77.558258267497393,13.2281437086125],[77.558270556290097,13.2281699371607],[77.558388551975099,13.2284390907793],[77.558410935935697,13.2284901505158],[77.558611366051807,13.228947337553301],[77.558669743925705,13.2291560145185],[77.558932564798894,13.230090895727599],[77.558930036529304,13.2300911071712],[77.558973979083305,13.2301402559207],[77.559043364935206,13.2302178611081],[77.559170229265106,13.2303598893455],[77.559172080378502,13.230376520340799],[77.559172743901797,13.2303824827375],[77.559197317760507,13.2306033061907],[77.559226636072196,13.2308667570999],[77.559233149676601,13.2309234713849],[77.559242993533303,13.230957157869501],[77.559494485894405,13.2318177717144],[77.559535937613603,13.2319412199687],[77.559552237156097,13.2319897620637],[77.559019662561994,13.2321724667338],[77.559010626281705,13.232175585637499],[77.558617202088797,13.2323110903925],[77.558550385940606,13.2323341038854],[77.558475141145294,13.2323599654524],[77.558056396307194,13.232510210778299],[77.557840307101102,13.2325877435844],[77.557821096693601,13.232594620610101],[77.557753495407994,13.232612935747699],[77.557752065437498,13.2326133231947],[77.557623517017504,13.2326481503466],[77.557493268121803,13.232683429029301],[77.557487611681395,13.2326849610112],[77.557090798270593,13.232819232815499],[77.556966305034805,13.232861358635599],[77.556886023480203,13.232888523307],[77.556729569879593,13.232941463492599],[77.556451230230905,13.233017212742199],[77.555789416171507,13.2331542398778],[77.555681753247697,13.233176270281101],[77.555677185268806,13.2331774769325],[77.5556242012929,13.2331884474965],[77.555524932258805,13.2332095120563],[77.555473938876005,13.233221061650999],[77.555420679687302,13.2332331461678],[77.554704874883896,13.2333974349822],[77.554545025270201,13.233483334012799],[77.554480446567695,13.233518037340801],[77.554258771901701,13.233519140332699],[77.553780416985305,13.233522710458899],[77.5536403822924,13.233523755179601],[77.553637149379895,13.233523786612],[77.553455197260206,13.233525573922901],[77.553016600878607,13.2335724175768],[77.553009070319803,13.233579069970199],[77.552760232245703,13.233798139596001],[77.552596162637101,13.233953904443901],[77.552433164522895,13.234107731455801],[77.552156132291501,13.234326414898501],[77.551895640257399,13.2345295154617],[77.551819013834802,13.234589259339099],[77.551707515982997,13.2346761913628],[77.551701131246702,13.2346673968801],[77.550798308489803,13.233474106350799],[77.550619883357797,13.2332382730605],[77.550491876001303,13.2330842789152],[77.550328672902793,13.232885973372699],[77.550200899025,13.232730717275601],[77.550025977561702,13.232504186414999],[77.549359396358099,13.2316303189754],[77.549290339253005,13.231648209195001],[77.548291573316504,13.231906583904699],[77.546896578497595,13.232252302420299],[77.546747120435896,13.2322893421546],[77.5466520091733,13.2323124162995],[77.545552584047002,13.232575149602299],[77.545163461826903,13.2326622330097],[77.544814367070998,13.232740836449],[77.544739157310502,13.2327577713864],[77.544713999569495,13.2327604361466],[77.543904872046397,13.232846916022],[77.543848283139198,13.232852995412101],[77.543726546504701,13.232906126969899],[77.543317859254799,13.2330849359808],[77.543317383820394,13.233071915640201],[77.543294615413799,13.232464767481],[77.543288617384405,13.232304823045],[77.543284199061702,13.232192057433499],[77.543240136523806,13.231144474857199],[77.543216918491495,13.2310194550164],[77.5430136028032,13.229924698790301],[77.542949586498196,13.229706367239499],[77.542892419525799,13.2295110633255],[77.542888397279796,13.229497320295],[77.542690465953598,13.228818663699199],[77.542631851583394,13.228698297437999],[77.542346050201104,13.2281113907262],[77.542109880418394,13.227371322060399],[77.542095525807596,13.227326335604999],[77.541942318965397,13.227168788330101],[77.541929668191898,13.2271557807191],[77.5419152743778,13.227140983545601],[77.541690691782406,13.2262957722258],[77.541231604218197,13.2260244808793],[77.540660691456196,13.2260389738973],[77.540523604979597,13.2257350075418],[77.540455513596001,13.2254824806516],[77.540435396968306,13.2254078773526],[77.540433519407799,13.2254073431099],[77.540025586994304,13.225291296907701],[77.539429525388996,13.22538518416],[77.539063530544297,13.2255432660897],[77.539029971004993,13.2255522177123],[77.538715633287097,13.225631642264799],[77.538693648330195,13.2256367050826],[77.538692984582099,13.2256345000187],[77.538392308808895,13.2246401988073],[77.538198060882905,13.2239978352275],[77.538190484100497,13.2239543404147],[77.538150809785094,13.2237157893217],[77.538148875491999,13.2237041593709],[77.5381482427847,13.2236962206608],[77.538148234632004,13.2236961457549],[77.538124190053196,13.2234862533049],[77.5381145985248,13.223400095601701],[77.5380443480379,13.2231749148888],[77.537987635272003,13.2229931354216],[77.5379792531823,13.222966269477901],[77.537906566601706,13.2226669454116],[77.537606391226504,13.221431009214101],[77.537600948188,13.221408597908599],[77.537596575697407,13.2213906345313],[77.537551562643102,13.2211806131162],[77.537519654023399,13.221032219156699],[77.537509484802897,13.2209849283996],[77.5374834159024,13.2208484382073],[77.537468354529096,13.220769672601801],[77.537459020726899,13.220720857542],[77.537378416251201,13.2201430288785],[77.537302592341703,13.2196017001942],[77.537295034106194,13.219547742170599],[77.537247465275698,13.219069226712801],[77.5372298786085,13.219068405698],[77.536839906109606,13.2190502018362],[77.536821632575396,13.2190541208246],[77.536683135539405,13.2190838234295],[77.536635885671501,13.219093959401899],[77.536456124736006,13.2190707746682],[77.536267961093102,13.219046518570201],[77.536239800229794,13.2190524067002],[77.535684705891697,13.2191684763329],[77.5353898282073,13.219230249512],[77.535290387136598,13.2192554143601],[77.534913827197897,13.2193508524965],[77.534899600480401,13.219354458372001],[77.534861272487703,13.2193645199981],[77.534842900316406,13.2193693423876],[77.534503781365899,13.2194585189634],[77.533547521438294,13.219709891100999],[77.533516409490105,13.219719353385299],[77.533361654068997,13.219766420076599],[77.533354135411301,13.219737910952199],[77.533338900338507,13.219680137562801],[77.533307467297206,13.2196923513297],[77.533299293772401,13.2196955276045],[77.532776568673896,13.219900878385999],[77.532769063720295,13.219901823701401],[77.532743501200102,13.2199050259379],[77.532388839970594,13.2199494520126],[77.532236307249306,13.2199997186988],[77.531873042342099,13.220119058467899],[77.531849142391096,13.2201266340637],[77.531648154606401,13.220190342442599],[77.531308100851206,13.220297440042801],[77.531288081520998,13.220300833881099],[77.531083789648505,13.2203352681216],[77.531054732246801,13.220344122535799],[77.530437399978496,13.220532238379199],[77.530408834105799,13.2205413679335],[77.530284387453904,13.220581140031801],[77.530250205176799,13.2205920200749],[77.530088719190502,13.2206431991266],[77.530084473538096,13.2206445412431],[77.529376634777705,13.220669176760101],[77.528683180286606,13.2207992574718],[77.528204622478896,13.2208936973599],[77.528023501433694,13.2209277609258],[77.5279420204714,13.2209427242597],[77.527776224491603,13.2209731703724],[77.527742181494204,13.2209794220947],[77.527738191373999,13.220980149099701],[77.527559384838597,13.2210404368762],[77.527513774579404,13.221055684027499],[77.5274684280744,13.2210708436373],[77.527293817879396,13.221055029872],[77.527097364026304,13.221149199206099],[77.527061252988204,13.221166414046399],[77.527084066516494,13.2212057863385],[77.527107170150302,13.2212456580838],[77.527175199164503,13.2213632034935],[77.527249735743695,13.2214921765661],[77.527128055089904,13.2215320184107],[77.527266996320805,13.2215211976595],[77.527271126263898,13.2215627667223],[77.527215747738097,13.2215851267479],[77.526731362541298,13.2217807664242],[77.526563132693795,13.2217009835359],[77.526468455086402,13.22165606616],[77.526470080446103,13.22164161093],[77.526470333032904,13.221639364228301],[77.526517688349898,13.2212182342018],[77.526521696360106,13.221182717354701],[77.526529393705701,13.2211144974875],[77.526537969192105,13.2210386012404],[77.526476145125301,13.220815073037899],[77.526336791245001,13.2203084952768],[77.526242656448403,13.2202217591266],[77.525831783525305,13.2200533671695],[77.525782793246094,13.220001239927299],[77.525614613615303,13.219822111593],[77.525532990660096,13.219685162473199],[77.525510220464895,13.2195906637484],[77.525412195382501,13.2191826890813],[77.525396701608898,13.2191181486892],[77.525380522746403,13.2190967916421],[77.525280504340699,13.218964717639199],[77.525206954423993,13.218867531358899],[77.525231208668998,13.2188301222699],[77.525263798681905,13.2187798449838],[77.525298297481498,13.2187266035404],[77.524943766993303,13.217767379388199],[77.5249395202285,13.2177558895125],[77.524956706352597,13.217746910952799],[77.525408302366799,13.2175138131743],[77.5254560645308,13.2174891600328],[77.525332001945102,13.217205708544499],[77.525264163397097,13.217089329467299],[77.525085992113603,13.216832153851],[77.525019540173304,13.216736419603],[77.5248864872204,13.216572924684],[77.524843668302793,13.2165178604097],[77.524742892287804,13.216396785891099],[77.524696310948599,13.2163408164273],[77.524399742938101,13.2160944250254],[77.524241167551907,13.215962679192801],[77.5241743260232,13.2159705606198],[77.523867562308098,13.216007705306399],[77.523866932887898,13.2160037109741],[77.523864968505094,13.215987913392601],[77.523800825109106,13.215472015361399],[77.523610074437499,13.2149517159007],[77.523477044714696,13.214869915599101],[77.523351551032803,13.2146790791894],[77.523254505516206,13.214331168945501],[77.523225576962005,13.214299258532099],[77.523192995057698,13.214263331220099],[77.523001901597098,13.214052614288301],[77.522965312294801,13.2139684479426],[77.522867088374198,13.213743344587501],[77.5228510401855,13.213706649640001],[77.522816278001997,13.213723513448],[77.522794593216702,13.213734050431199],[77.522768565605602,13.213746698300101],[77.522688707008896,13.213785569205999],[77.522636732936704,13.213810867736701],[77.522366418510202,13.213848214322001],[77.522360465669905,13.2138340018885],[77.522290216230303,13.2136662868997],[77.522300255058099,13.213539000496599],[77.522271159979397,13.213445464290199],[77.522250856519705,13.213380446918499],[77.522248346927498,13.213372419074499],[77.522230511961894,13.2133154669907],[77.522234789518293,13.2131581447393],[77.522222146631407,13.2129623255308],[77.522201572027498,13.2126505306005],[77.522371028856497,13.2121118887923],[77.522299362453097,13.2119869442605],[77.522179725862799,13.21177983634],[77.5222167915623,13.2117589538998],[77.522479394737402,13.211613126048499],[77.522471125033107,13.2115672771737],[77.522380895213203,13.211622879398099],[77.522372443827607,13.2115772961217],[77.522324421880597,13.2113175342656],[77.522323427138005,13.2113149556446],[77.522101699042295,13.2107395849717],[77.522063993961297,13.210544118566499],[77.5220735552343,13.2102468196773],[77.5220336620485,13.2096529981354],[77.522159768169999,13.209549233548],[77.522145748158806,13.209446559044601],[77.522135603700306,13.2093733074827],[77.521997517099805,13.209187563845999],[77.522032898763896,13.2089068238417],[77.522061342667996,13.208676746427599],[77.522058265611605,13.208640130326801],[77.522018894404297,13.208179344525],[77.522017438595896,13.208162310449699],[77.521932871938105,13.2081685687251],[77.521861993067304,13.2081738147461],[77.521831726054003,13.2081760547262],[77.521804697915698,13.20809223278],[77.521799436485097,13.2080759147268],[77.521780824074796,13.208018255531901],[77.521597805425202,13.207505779008899],[77.5215856736381,13.2074718071572],[77.521582038915099,13.207463035986001],[77.521333374681205,13.2068629320007],[77.521129931465495,13.206902898263801],[77.521109359845397,13.206906940759501],[77.520695605326495,13.2069882387676],[77.520689295381203,13.2069959777194],[77.520559962730005,13.207154591218501],[77.521227688985306,13.2085954456458],[77.521363549816101,13.2086725679938],[77.521532460032304,13.2087684745708],[77.521731255364898,13.208866237507401],[77.521719374974495,13.208871027380599],[77.521514867304404,13.2089534857648],[77.521425852139402,13.209040926410401],[77.521394184186803,13.2090720676473],[77.521291929050093,13.209172624332499],[77.521054751330695,13.209321230259301],[77.520979262595702,13.2093685282815],[77.520842428985603,13.2094542618761],[77.520946747512696,13.209970470850999],[77.520953831929106,13.210010486987001],[77.520985428443296,13.210021311664599],[77.521256693654806,13.210114246030001],[77.521461594601803,13.210184443637299],[77.521616606366706,13.210338044209401],[77.521479878362697,13.210615332167899],[77.521380978155705,13.210847387244399],[77.521035269803406,13.210967342107599],[77.520982543585703,13.210985637640601],[77.5204965010672,13.2110192123818],[77.520446198845093,13.2110236545318],[77.520408196614397,13.2110280567535],[77.519803800607605,13.2110980744327],[77.519600779494596,13.2111215937166],[77.519595050599307,13.2111222572949],[77.5195497065464,13.2107945497401],[77.519542489497795,13.210748332525201],[77.519534982318007,13.2107002615395],[77.519523874405607,13.210649695412901],[77.519522005505607,13.2106411868872],[77.519461671977098,13.2103665349971],[77.519449779605395,13.2103123979491],[77.519213138050006,13.209235140572501],[77.519120853866696,13.209253839792201],[77.519097667096005,13.209258537641199],[77.519032993995694,13.209271634397],[77.518890774572199,13.209300412992199],[77.518855526378601,13.2093075461095],[77.518574659649502,13.209364288170301],[77.5183529183128,13.209409004393899],[77.518221503483701,13.2094354627482],[77.518160479122898,13.209447749097199],[77.518214809040103,13.2096342504463],[77.518228537991206,13.209681376666101],[77.518238927286205,13.2097170264685],[77.518458400442896,13.2104694990478],[77.518583257905107,13.2108968662646],[77.518598623679694,13.2109494594715],[77.518602399499002,13.2109623680964],[77.518591074072404,13.211077075701199],[77.518589216328806,13.2110958951968],[77.518584286884206,13.211146075458],[77.518577434630899,13.2112158338666],[77.518630816716595,13.2114866434337],[77.518692278993598,13.2117973735755],[77.518696586490194,13.2117911893623],[77.518789484398098,13.2117808005206],[77.519190972462596,13.2117359019887],[77.519250376385997,13.211729298732401],[77.519271518182194,13.211813738251699],[77.5194236613454,13.2124213823258],[77.519445153066002,13.2125071058018],[77.519446706872799,13.2125133036463],[77.519512955639698,13.212561458047],[77.519586892536907,13.2126151996085],[77.519768400921706,13.2127471306207],[77.519818468313204,13.2127835493185],[77.5199093290082,13.212849639725],[77.519991583392397,13.213380409089799],[77.519895416567607,13.2138434060337],[77.519936814488702,13.213907335799],[77.519948364964193,13.21392517116],[77.520084851259398,13.214135918658901],[77.5200886058512,13.2141417162479],[77.520028981232599,13.2141443891715],[77.519915556366797,13.214149473386399],[77.520021870882701,13.2143401008074],[77.519991089328798,13.214504782152201],[77.519979166239906,13.2145685734158],[77.5198628272327,13.2144952634997],[77.519625548333707,13.2143455447448],[77.519452947113507,13.2144180930486],[77.519402688445993,13.2144105022878],[77.518612103489204,13.2142910916291],[77.518453122022606,13.214270812788101],[77.518418311329498,13.214266372731601],[77.518377728708103,13.2142611962804],[77.518412503746106,13.2144543687271],[77.518490508942804,13.2146852335646],[77.518609991222405,13.214844693312401],[77.518660501832102,13.2149046739122],[77.518727049131101,13.2149699941086],[77.518845203419801,13.215071380044],[77.518961489378299,13.2151630503423],[77.519009292498595,13.2152007337107],[77.5191012665437,13.2152732387801],[77.519231845388504,13.2154440628206],[77.519334751492806,13.2155989051773],[77.519419272361503,13.216404842562],[77.519312496370901,13.2166680724948],[77.519312099205194,13.216670435365801],[77.519308284209899,13.216674744565401],[77.519247813135394,13.2167430528156],[77.519216820573803,13.216778292688099],[77.518847251767596,13.2171985070581],[77.518847282351302,13.2172220556736],[77.518847336438697,13.217264510951001],[77.518847392583694,13.2173085138503],[77.518847455890196,13.217357705300699],[77.518850155997697,13.2175139968789],[77.518839853896495,13.2175989088327],[77.518839063315099,13.2176054378619],[77.518828941347195,13.217616996305599],[77.518469824705406,13.2180270843425],[77.518176186192207,13.2183421966255],[77.518177016997697,13.218377856502601],[77.518172348094197,13.2183828905568],[77.518175150391102,13.218445941363299],[77.518176878389795,13.218484827723801],[77.518182471138999,13.2186106719624],[77.518183692284893,13.2186620781718],[77.518185301132505,13.218674353115601],[77.518186225777896,13.2186951671641],[77.518189487118093,13.2187162427822],[77.518201370699799,13.218792923288801],[77.518278666030099,13.219291672619701],[77.518280540477207,13.219303767863799],[77.518319227390606,13.219530043563999],[77.5184336623348,13.2201968604837],[77.518466727916206,13.220598886395001],[77.518424664625798,13.2206126198737],[77.5174332789896,13.2209362471184],[77.517417757809099,13.2212510766681],[77.517417360294999,13.2212591576021],[77.517272725517202,13.2213411710279],[77.516936807491305,13.2215316499928],[77.516906438918099,13.2215380954227],[77.516556079910202,13.221612461303099],[77.515568533841403,13.2219008227553],[77.515309217362301,13.221972612114699],[77.514144515151003,13.2222949039911],[77.514116972965496,13.222301450502901],[77.513779838370894,13.2223815824397],[77.513117512405003,13.2225387813944],[77.513078369376601,13.222546800726199],[77.512106179129901,13.2227459798601],[77.512095563068897,13.222748156801099],[77.511907452391398,13.222786691702501],[77.511553865038707,13.2228591739556],[77.5115108715963,13.222867990732899],[77.511514372737196,13.222895955854799],[77.511539377050795,13.2230956884293],[77.511555519606603,13.2232253172775],[77.511673221880997,13.224198209852901],[77.5116814612486,13.2242214863378],[77.511925616817095,13.224911257191801],[77.511938528381407,13.2249477949699],[77.512022232278198,13.2252990181996],[77.512037727894807,13.2253640911349],[77.512040327934201,13.226050819534599],[77.512001628671996,13.226061706575701],[77.511912634619705,13.2260867441705],[77.510639646449206,13.226445686570999],[77.509967452055093,13.226636056279],[77.509133866198297,13.2268299775423],[77.508870233954497,13.2268917500533],[77.508742662497696,13.2269217624258],[77.508612959548202,13.2269523829316],[77.507931046887506,13.2271163487945],[77.507928411121398,13.2271112908189],[77.507884194724198,13.2268612744012],[77.507816727779996,13.2268759514942],[77.507814444527099,13.2268705548663],[77.507763864895793,13.226750975964601],[77.507665844355003,13.2265192391553],[77.507395720357593,13.2258387801885],[77.507238994102806,13.2253814784242],[77.507224960894405,13.2253315075844],[77.506868740985695,13.224063016812201],[77.506868749282205,13.2240564312944],[77.505346648666801,13.224673162381199],[77.505183548817996,13.2247125533237],[77.505049689928796,13.224739388231599],[77.504980843008795,13.2247531917257],[77.504696285188899,13.224810243663001],[77.504565540879597,13.2248367622995],[77.504552220545406,13.224839464183701],[77.504536053812302,13.224851959659199],[77.504170505467002,13.225134512559199],[77.504131128737001,13.225151886628799],[77.503813282203396,13.2252921969292],[77.503477542171098,13.2254590141129],[77.503269898122099,13.2255440387899],[77.503026880182802,13.2256948479512],[77.502690027823107,13.225627859461101],[77.502608087484106,13.225656442363],[77.502483832213997,13.225699799654601],[77.502174990368104,13.225693663634701],[77.502126451404806,13.225557244852901],[77.502110046176597,13.225562654747],[77.501774726200097,13.2256733037618],[77.501633726098007,13.225751810074501],[77.501468034820306,13.2258440633136],[77.501188582693302,13.225999864383599],[77.501300822395706,13.226537052950301],[77.501182454843899,13.2265750034679],[77.500964648169699,13.226644958447601],[77.5006579207881,13.226743471816199],[77.500324517276894,13.2268771654721],[77.499910261623697,13.2270432790888],[77.499908280533305,13.2270440754705],[77.499711698751199,13.2271066336909],[77.499547123879907,13.2270875843131],[77.499307242665097,13.227059817656301],[77.498999550488193,13.227024201596301],[77.498935590440695,13.2269967869029],[77.498687299792195,13.2268902235054],[77.498579390036596,13.2268436339895],[77.497357041650702,13.226315883696399],[77.495848815799604,13.2256555284538],[77.4953455738668,13.225484751537399],[77.494971213502495,13.225357711012],[77.494911507795607,13.2253374019667],[77.494850040052398,13.2253164876137],[77.494524957084806,13.225209542847701],[77.493946199087006,13.2250186631638],[77.493399264233901,13.224866400754101],[77.493241638788206,13.224822519148301],[77.493133615321,13.2247938830485],[77.492650032648797,13.2246652483391],[77.492555172417099,13.224640015261],[77.492440578552902,13.2246051402328],[77.492427326937801,13.2246011071599],[77.492078237623801,13.2244942476697],[77.491980151785398,13.2244642230162],[77.491733127332495,13.2243886064932],[77.491339936020395,13.2242682460693],[77.491257675087695,13.2242429121849],[77.490455548002799,13.2239945924075],[77.490151572393302,13.223925413734801],[77.489980813300306,13.223892385914599],[77.489915653192597,13.223879783062401],[77.489839937071196,13.2238651381869],[77.489244403935899,13.223749951579901],[77.487619602124397,13.2234356773805],[77.487496784443906,13.223411754364299],[77.487129924541406,13.2233402070457],[77.486828903976203,13.2232975046012],[77.483213185630106,13.2227784094105],[77.483048718273196,13.222827762653999],[77.482520719038405,13.2229862029749],[77.479983519946799,13.223926666212201],[77.479419173377593,13.224135877576099],[77.479257340597201,13.2241959049549],[77.479210833510507,13.224213162131599],[77.479114206099695,13.224065876299999],[77.478991069847893,13.223878182295101],[77.478195235881998,13.222644544881399],[77.478075796627706,13.2224596052172],[77.477927453369205,13.222231181418],[77.477881635787796,13.222160850525],[77.477402227448906,13.2212818427047],[77.477234899969403,13.2209771449886],[77.477211973511899,13.2209354586423],[77.476985463400894,13.220463555403001],[77.476863238363407,13.220208915512],[77.4761469953676,13.218725652020099],[77.475473354843601,13.2173365520965],[77.475274172553,13.2169301270571],[77.475194037165807,13.216766595062801],[77.475033432231399,13.2164389134737],[77.474776705012204,13.215915964449501],[77.474489786112201,13.215332777457199],[77.474376761543098,13.2151034165631],[77.474260814230504,13.2143686542735],[77.474240465532503,13.214239423492399],[77.474202750980496,13.2140273791029],[77.474167420870202,13.213828557786099],[77.474128856243794,13.2136112975667],[77.474086745771999,13.2133738025897],[77.474048665928194,13.2131587801163],[77.473848960657804,13.2120268398806],[77.473828619289606,13.211911174916899],[77.473800520427403,13.211751292855901],[77.473788314635499,13.2117520307358],[77.473717466079293,13.211745897431999],[77.473672183961995,13.211741977914],[77.473667043504904,13.211498632719699],[77.473663440399093,13.2113272181334],[77.473612877680097,13.2101215771977],[77.473612733698999,13.2101181787299],[77.473581887592204,13.2093862069176],[77.473487080581194,13.207231759152601],[77.473485084758806,13.2071871492856],[77.473479843174104,13.207069965738199],[77.473593144171502,13.2070704873806],[77.4736837932616,13.2070709045779],[77.476247023374,13.2070826882353],[77.478714535056497,13.2070375951802],[77.4787854038061,13.2070363771816],[77.478870684790607,13.2069417996679],[77.478912831901496,13.206895058233799],[77.478898757257497,13.206811579848701],[77.478617197350701,13.205713320704399],[77.478592577612105,13.205617356048799],[77.478583725164597,13.2055827422069],[77.478215117767107,13.2041446725718],[77.478211397071703,13.2041301551166],[77.478215139645698,13.204097855967399],[77.478449315733499,13.2021004597154],[77.478456798494094,13.2020477830599],[77.478628552170804,13.2004904604717],[77.478630880816397,13.200467546973501],[77.478635248661305,13.2004245633682],[77.478620422880397,13.200151563312],[77.478578359036604,13.1993620659165],[77.4785742249327,13.199282790846199],[77.478535326415397,13.1985232587309],[77.4785180391426,13.197627678598399],[77.4785157168334,13.1976084376678],[77.478418891513996,13.196802984135701],[77.478409953635094,13.196728298318],[77.478366312750396,13.1963628170405],[77.478357438567002,13.1962884983195],[77.478243402875293,13.1954442550841],[77.478111707839901,13.19488548925],[77.4774757637947,13.193440228620799],[77.477433210895995,13.193275100030601],[77.477423079126496,13.193235783052801],[77.477410550971697,13.193187148015801],[77.477359953551002,13.192990610395601],[77.477304412109007,13.1927746899967],[77.477229094563796,13.1924357827489],[77.477181779425507,13.1922228789728],[77.477169961760296,13.1921697023836],[77.477154925750895,13.192102043164301],[77.477153931802306,13.192097566017701],[77.4770913063103,13.1910584328719],[77.477002733449794,13.190582725110801],[77.476997192643594,13.1905529813929],[77.476856147534903,13.1896904800691],[77.476713574993894,13.189226381031],[77.476704138998997,13.1891956820179],[77.476494187977906,13.188513682925],[77.476479053971403,13.1882118164699],[77.476476960277793,13.1881706480997],[77.476398605856005,13.1879838794693],[77.476314220768003,13.1877826932676],[77.476452151066496,13.187700762414901],[77.476467759494994,13.1876916461093],[77.476235194169902,13.1868277381085],[77.476103646010202,13.1863073096868],[77.476073706071901,13.186188861481501],[77.475946894158298,13.1856871680643],[77.475946766378499,13.185686657016401],[77.476005202505803,13.1856171210577],[77.475749575868605,13.1850183655297],[77.475531180738201,13.1845069016906],[77.475473217387005,13.1843711673231],[77.475015226328097,13.1832986658645],[77.474910162730595,13.1831519199309],[77.474879755215497,13.1831087752568],[77.474492409913395,13.1828320342878],[77.4738561211622,13.182377500545],[77.473792987102598,13.1823324147064],[77.473658554641204,13.182236416516901],[77.473617187133001,13.1822831662569],[77.473610491938103,13.1822743503976],[77.472969234979004,13.1814299946733],[77.472363891411405,13.1805836439129],[77.471978724137102,13.1800412687041],[77.471338828494794,13.179149281059701],[77.470835760555502,13.1783239938931],[77.470216884510506,13.177328439643899],[77.469990862408395,13.1767688231858],[77.468663398905605,13.1737239923364],[77.468530550395201,13.172521088603199],[77.468457756177401,13.171731033000199],[77.468312712571603,13.170410044371501],[77.468262705398004,13.170108163907599],[77.468283100026198,13.1695357403794],[77.468314964817594,13.168799667908999],[77.468342728535106,13.168012514699299],[77.468365648671806,13.167507951543699],[77.468395862715695,13.166427568128],[77.4684677105341,13.1659029859791],[77.468581491128404,13.1650735035859],[77.468652220063603,13.164648919299101],[77.468765494849293,13.163897179219999],[77.468848728269805,13.1634982470624],[77.468863033773602,13.1634296826197],[77.468864439839507,13.163416803208801],[77.468985104160396,13.1623116564885],[77.468992135814602,13.162298187172601],[77.467575277731996,13.162285927939999],[77.467436912561197,13.1622854180257],[77.464738075977095,13.1622754634349],[77.464516650399204,13.162274965496399],[77.464210540810797,13.162274276819099],[77.464166635586594,13.1622741816388],[77.464157034690501,13.162274160897701],[77.463907459388295,13.1622143383966],[77.463822907633102,13.162194083192],[77.4617519057023,13.161707849263699],[77.461685571847298,13.161692215246299],[77.461675269200398,13.161689782450701],[77.461616473241406,13.161576280456],[77.4614602860416,13.1612752364244],[77.461049487594394,13.1605031200498],[77.460989608038304,13.1603897113212],[77.460775757826895,13.1605618066405],[77.460743904191006,13.160585268078201],[77.460715724748695,13.160528031793],[77.460697731469807,13.160491484845901],[77.460638559758095,13.160376651616399],[77.460421491312403,13.1605550054178],[77.460229498962505,13.160700408075799],[77.460222970988795,13.1607053649613],[77.459603397560002,13.1611941767917],[77.458729721192896,13.161929215285999],[77.4586080295052,13.1620374579427],[77.458476558238502,13.1621543992771],[77.458436097521201,13.1621704853914],[77.457778716010495,13.1624318371138],[77.457497996512998,13.162543927238699],[77.457097200998206,13.1627039624346],[77.457095692962795,13.1627039976558],[77.457062077527098,13.1627047938874],[77.456901884674295,13.1627088097159],[77.456073036907199,13.1630007351446],[77.455828599696105,13.1630864245416],[77.455509434832706,13.1631941942004],[77.455434617310701,13.1632195426048],[77.455346566336601,13.163248502466701],[77.455076860717796,13.1633372068063],[77.4550460243413,13.1633473781371],[77.455009341104599,13.1633601876428],[77.454913641239699,13.163393604394299],[77.454883755290794,13.1634040394748],[77.454825165491002,13.163425382599399],[77.4546397527685,13.1634929248519],[77.454380591780506,13.1634349554681],[77.454348385416907,13.163430518294801],[77.454347419655704,13.163430382970899],[77.454345730956604,13.1634301461407],[77.454223221041602,13.163410806447001],[77.453687514985205,13.163338840424201],[77.453586850377107,13.163324622228499],[77.453579938927007,13.163333590624999],[77.453564767031196,13.1633532759642],[77.453559027828007,13.163360708925699],[77.453453970769203,13.1634967705194],[77.453431990809804,13.1635076611106],[77.453208177155105,13.1636185578054],[77.452961254074197,13.1636531305837],[77.452300792720195,13.1637530695069],[77.451793305054196,13.163941232328099],[77.451699928551903,13.1639762087399],[77.450812685908303,13.1643047125821],[77.450532182776399,13.1646188575568],[77.450498585635401,13.164656576707699],[77.4501754517851,13.164464437799801],[77.449552294456097,13.1648695102889],[77.449048121211007,13.165192663427799],[77.448356852845606,13.1656156590072],[77.448263797694693,13.165672803547899],[77.4475032546965,13.1658167605899],[77.447224420948999,13.165867902375],[77.447040824564297,13.165901576720699],[77.446551496380096,13.166008154086599],[77.4464685496295,13.166026220351201],[77.446378693443094,13.1660461604168],[77.446352870286702,13.1660518910133],[77.445418823581306,13.166278333496001],[77.444866381153602,13.1664103508185],[77.444792833766101,13.1664279258399],[77.444716998677507,13.166434243131301],[77.444169881168904,13.166589244411901],[77.4429897691587,13.166889941349799],[77.442436338669296,13.166695301453499],[77.442384547086803,13.1666770917235],[77.442215266385702,13.1666713731312],[77.442129325780201,13.166666168438001],[77.440740022836493,13.1666800900921],[77.440684925565407,13.166680646837699],[77.440018809754505,13.166661554935599],[77.439834301209601,13.1666562569799],[77.439745449239297,13.166653705700501],[77.439147706212907,13.166706641349601],[77.438568366314101,13.166645484749701],[77.437634435072994,13.1665183873308],[77.437553280847695,13.1665071533756],[77.437484441443701,13.166497624785601],[77.437359509569603,13.1664560119864],[77.436230335546995,13.166078174472901],[77.435413796389696,13.166118589823901],[77.435340284434702,13.1661222286575],[77.435306200603307,13.1661246203806],[77.435015058343794,13.1659843643948],[77.434458888150004,13.1657165364931],[77.434178379611097,13.1657375415327],[77.433457639179807,13.1657913009438],[77.433427322481506,13.165793575361601],[77.433378335848502,13.1657972610792],[77.433374818599503,13.1657936478165],[77.432733464116495,13.165134837327701],[77.432604248005603,13.165002103242101],[77.432466240329802,13.1648603792224],[77.432372838002905,13.1646209397381],[77.432162152217501,13.164078017389],[77.431847195004394,13.163262682493199],[77.431846377585103,13.1632605750873],[77.431508442261801,13.1624518324275],[77.431166085972805,13.161588062696801],[77.431148536798005,13.161495290463],[77.4311019940412,13.161144729597099],[77.431077894560701,13.1609632109188],[77.4310460950242,13.1607236955492],[77.431042476936994,13.1606466617566],[77.431041101957305,13.1606173779474],[77.431040116805903,13.160596394753799],[77.430952712204402,13.1603220989712],[77.430875143945997,13.1600786692826],[77.430745340697996,13.1596730299506],[77.430735483628396,13.1596422769158],[77.429903617185303,13.159000559743699],[77.429755442528702,13.1588862541119],[77.429737854129399,13.158872657184499],[77.429631502478998,13.1587904418574],[77.429612237362605,13.1587254374508],[77.429530945522203,13.1584514352933],[77.429507314272698,13.158371782650599],[77.429138099118106,13.1578367656967],[77.428961647023002,13.1575810728762],[77.428105852179598,13.156144255408501],[77.427150952978494,13.154546510253899],[77.427135874000101,13.154517763370899],[77.426587433947006,13.1534723525592],[77.426242061939703,13.152813791796801],[77.426119564695099,13.1525802104291],[77.425745712274306,13.1518731215891],[77.425568981874306,13.151538859428699],[77.425562789967699,13.1515271485317],[77.425529279831593,13.151463768888201],[77.425478725155898,13.1513681360814],[77.425390997844502,13.1512348509545],[77.425091392018103,13.150779654673],[77.425063236545597,13.1507368646113],[77.424590709261807,13.1497828789411],[77.424569141444707,13.1497393353995],[77.424210971826696,13.1489538606811],[77.424180726833697,13.148887539645999],[77.424078141992098,13.148662590746],[77.423938024263805,13.148355355396401],[77.423897517280096,13.1482665356341],[77.423660537621103,13.147760701695701],[77.423405030059996,13.147215405131201],[77.423354178773494,13.1471065557326],[77.423299902256403,13.1470320402991],[77.422961393656095,13.1465672987704],[77.422493933908598,13.145927948831799],[77.4224590824644,13.1458802755101],[77.422427823271505,13.1458375160513],[77.422365485538705,13.1455815386434],[77.422355068861904,13.1455387633528],[77.422340498191403,13.1454789287839],[77.4222454777736,13.145333805728001],[77.422168673395007,13.1452164815323],[77.422089700433403,13.1450958464207],[77.421905509099005,13.1447968519374],[77.421760523914699,13.1445614288971],[77.421741509915904,13.1445305527972],[77.421711522418704,13.144467313487],[77.421656421280105,13.1443511135789],[77.421478645634807,13.144057055569],[77.421417585970403,13.1439560567458],[77.421061603615499,13.143392053029601],[77.421020801835198,13.143327383084401],[77.420965190164296,13.143239240632401],[77.420622266088301,13.142736186350501],[77.420607403427695,13.1427143786273],[77.420509793692801,13.1424088800704],[77.420480972895106,13.1423186391704],[77.420456378914096,13.1422416214193],[77.420445238991604,13.142206734299901],[77.4204087564503,13.1420924728258],[77.420323127755907,13.141953365343101],[77.419954405553,13.141354097631201],[77.419679502489601,13.140491096859501],[77.419670619982597,13.140463198939401],[77.419596983753706,13.1400716129043],[77.419591082769699,13.1400402299859],[77.4195857283283,13.140011745880599],[77.419509000032207,13.1396034798142],[77.419502985948398,13.1395714654799],[77.418990058122304,13.138588506076699],[77.418961855927293,13.1385344591137],[77.418907670870297,13.138430620716299],[77.418243827625503,13.1371575832218],[77.418263390774896,13.137143735929699],[77.4182744601124,13.1371359011514],[77.418258368490001,13.137117039437999],[77.418242657396206,13.1370986250075],[77.417731614788494,13.136499488911699],[77.417658330321004,13.136433398708901],[77.417631629696601,13.136402147138201],[77.417425889637599,13.1361613397862],[77.417384225321598,13.136089306849],[77.417032228258705,13.135480747317001],[77.417010551286793,13.1354432709454],[77.416896769557397,13.135246556554],[77.416858795775795,13.1351809038899],[77.416854140881995,13.1351731663948],[77.416820456382993,13.1351171728606],[77.416803248178098,13.135088567837],[77.4167473980024,13.134995736760301],[77.416741646641498,13.134986177197099],[77.416718300076994,13.1349473720172],[77.416423065942993,13.1343424590961],[77.416134998527895,13.1337522420199],[77.416096432626205,13.1336732260012],[77.416080115046896,13.133639799387501],[77.4160287746911,13.133554892154899],[77.416012971920793,13.1335287594663],[77.415961386172995,13.1334434533474],[77.415917883561704,13.1333665121071],[77.415853486747295,13.1332963548485],[77.415825816400201,13.1332585506165],[77.415824682867907,13.1332566141442],[77.415823379481694,13.1332552204863],[77.415594620350504,13.1329426803142],[77.415095842244199,13.131944509392801],[77.415093464182704,13.1319397474957],[77.415028471752393,13.131809734357599],[77.414973403140195,13.131697389737999],[77.414935541218199,13.1316140135662],[77.414756630907405,13.1312200263273],[77.414687451001996,13.1311173021468],[77.414649307581101,13.1310383043754],[77.414432313052501,13.1305888962134],[77.414391032905598,13.1305243636456],[77.414374885249302,13.130499217077601],[77.414328877881701,13.1303949027279],[77.414295767558997,13.1303309223036],[77.413846708579797,13.1294631741437],[77.413821053557399,13.1294882305902],[77.413756912304507,13.129550873088901],[77.413715406077301,13.129417488333999],[77.413702297971994,13.129375156788599],[77.413654478333598,13.1294222624505],[77.413614751895807,13.1292893000837],[77.413285704998998,13.128184407098599],[77.412987266876399,13.127147402551399],[77.412949675327198,13.1270167781549],[77.412848514175906,13.1266683528676],[77.412840326256401,13.1266401525061],[77.412811431629095,13.126549901548101],[77.412753071827197,13.126367985501201],[77.412742829535802,13.126336058326601],[77.412719923231606,13.1262646568359],[77.4127081427729,13.1262569489932],[77.411380218116193,13.1253800295544],[77.411122007779298,13.125209514651701],[77.411025391621706,13.1251462117914],[77.410937918011797,13.125059206479801],[77.410898136242807,13.125019639163201],[77.410889550398693,13.1250110989386],[77.410864366365104,13.1249860538649],[77.410774845082202,13.1248970346996],[77.410735061592504,13.124857474593201],[77.410590191818102,13.1247134820964],[77.410589918130498,13.124713209984201],[77.410546287430705,13.1246698431253],[77.4100743895454,13.1241983842579],[77.4094281365212,13.123552726886199],[77.409411584299093,13.123536188952301],[77.409258375920103,13.1233824619617],[77.409235171327296,13.123270572329901],[77.409230586123002,13.123248462232899],[77.409205397137299,13.1231270579074],[77.409099857954104,13.1226181730368],[77.409098001603496,13.1226092182487],[77.408388381018398,13.122263199189501],[77.408262921649595,13.1222020234966],[77.408261647060101,13.122201398427499],[77.408171930603899,13.1221572488418],[77.408124409699298,13.1221338644201],[77.407958540929101,13.1220522400452],[77.4076243758185,13.121887797462],[77.4075654492962,13.1218587992987],[77.407480084874294,13.1218167907696],[77.407409658208294,13.121782133740201],[77.407323691730497,13.121739828999001],[77.407234743485802,13.121696057655999],[77.407233439192495,13.1216954111738],[77.407141129212604,13.1216496834446],[77.407128044635499,13.1216432018385],[77.4071136770729,13.1216360843919],[77.407018970470403,13.1215890526273],[77.406920890126202,13.1215403455827],[77.406833939938807,13.1214971661847],[77.406791730711902,13.1214762047943],[77.4067342305068,13.1214475861095],[77.406661316576404,13.121411295002201],[77.406577250199405,13.121369452883901],[77.406334287709996,13.1212520025804],[77.406268166867306,13.1212200381419],[77.406148323764498,13.1211621048531],[77.406144911549006,13.1211604570682],[77.406118041799303,13.1211608429112],[77.406091393269506,13.121161225779501],[77.406077457762606,13.1213252353417],[77.406075522547397,13.1213251197101],[77.4059816568559,13.121319472779801],[77.405967913823304,13.121318646216],[77.405417759408095,13.1212852247752],[77.404629708626601,13.121018701461701],[77.404607228830898,13.1210111265615],[77.404558855434502,13.1209948277178],[77.404162306823494,13.121058117566299],[77.404148453210794,13.1210603287479],[77.404140992418604,13.121026667318301],[77.404137144469601,13.121009313645599],[77.404128029103305,13.1209681818044],[77.404072261981696,13.120972042244301],[77.404003881060405,13.120976775860999],[77.403957652594499,13.1209799770395],[77.403861843195202,13.120986609465501],[77.4038436410721,13.120987869155099],[77.403827327527793,13.120988999164201],[77.403801132613395,13.120990812384401],[77.403789908055998,13.120991588557301],[77.403524428643607,13.1210099677148],[77.403478774464801,13.121010417572601],[77.403466793987903,13.1210104372957],[77.403454283446607,13.1210104583543],[77.403396417285094,13.1210105370394],[77.403395072288205,13.1210105387573],[77.403357818304798,13.1210126097155],[77.4033488450237,13.1210131082393],[77.403411800273204,13.1211798686045],[77.403427587349199,13.1212216854142],[77.403451628461895,13.1212854571775],[77.403523360086496,13.1214771510699],[77.403560132180303,13.121575418716899],[77.403649395362606,13.121814523146201],[77.403661379370604,13.121846625296],[77.403695201961298,13.1219373460368],[77.403715596944593,13.1220936241895],[77.403716544200094,13.1221008798413],[77.403742576165996,13.122300354403899],[77.403855561020904,13.1231661036978],[77.403867757409699,13.123259561741801],[77.403886433293295,13.123409851838399],[77.4039157599574,13.123645856567901],[77.403926946779194,13.1237358833329],[77.403984302527405,13.124167901327301],[77.403994081006303,13.124241552747399],[77.404001608460007,13.1242957005057],[77.404073236801196,13.1248109758877],[77.404082651835694,13.1248787197017],[77.404072546879604,13.1249495020105],[77.404063897129703,13.125010096812799],[77.404011368527804,13.1255168263773],[77.404010368096607,13.125526474736599],[77.403985714921106,13.125798570754201],[77.403939230850597,13.126311621065501],[77.403935958330493,13.1263479388899],[77.403934481951694,13.1263858979347],[77.403928756330998,13.1265331026712],[77.403928629471494,13.1265363620376],[77.4039216509602,13.1267157835126],[77.403920971744597,13.126733243625701],[77.403901638954096,13.1270185232435],[77.403896658456802,13.127092019807501],[77.403894547069996,13.127123172965099],[77.403889531214404,13.127175029069001],[77.403888618195197,13.1271844706037],[77.403863230922099,13.127446870327001],[77.403856335172307,13.1275181385778],[77.403847929994996,13.127605014302199],[77.403837626709304,13.1277115146765],[77.4038353533075,13.127735016327801],[77.4038284960574,13.127805883045699],[77.403826086970895,13.127830789169399],[77.403815798712003,13.127937128573],[77.403717171883798,13.1279381504983],[77.403703296857202,13.1279382946091],[77.403520471636696,13.127940224303],[77.402971771284101,13.127946433949599],[77.402308049567097,13.127953944327301],[77.4021509565966,13.1279557212822],[77.402116237039706,13.1279561141731],[77.401585607450599,13.1279624439617],[77.401544399688106,13.127961618833201],[77.401216910893297,13.127955060526199],[77.400504333286094,13.1279409549898],[77.400489164430795,13.1279347979228],[77.399603708059601,13.127575536261],[77.399583967583496,13.1275278026009],[77.399583436072106,13.1275265172939],[77.399140799397003,13.126456171039299],[77.399127544934501,13.126412642471699],[77.399127298291006,13.126411831579301],[77.398938201053696,13.125790947813],[77.398897155295899,13.1255331581288],[77.398856998926206,13.125281028984],[77.398856090603303,13.1252753035408],[77.398753413208695,13.1246276158284],[77.398737228163696,13.124525656809199],[77.398576489646501,13.1235130883518],[77.3983857586162,13.122865553199601],[77.398374995072899,13.1228290101349],[77.398182024755599,13.121712263118299],[77.398169933770504,13.121642358947501],[77.398163993756,13.121608016225199],[77.398102566257506,13.121612679905599],[77.398049743692496,13.1216166905397],[77.398060049782899,13.121522359854501],[77.398064585559396,13.121480842018499],[77.398088168099093,13.121264722152899],[77.398240693902494,13.120510544103601],[77.398197198044599,13.1202843521822],[77.398191866149503,13.120256623180101],[77.398171834285506,13.120152503330599],[77.398121384518305,13.119890341758101],[77.398026296528798,13.119354666405799],[77.398010175298893,13.1192639340979],[77.397966714465696,13.119019330118199],[77.3979658534696,13.1190144851812],[77.397945172163205,13.118905916830601],[77.397931111339702,13.1188320996147],[77.397869799028598,13.118531623812199],[77.397841574722904,13.118402194098801],[77.397838714181901,13.118389075922501],[77.397809478880802,13.1182550131846],[77.397804720675097,13.118233195248299],[77.397730952856193,13.117893960196],[77.397730417522695,13.1178913259171],[77.397720796612006,13.117843943993099],[77.3976317430824,13.1174053786669],[77.397619158888105,13.1173434003958],[77.397576668979994,13.1171576632954],[77.397572610911595,13.1171397837194],[77.397448750430598,13.116594228797799],[77.397385593314496,13.116313636158701],[77.397360141644299,13.116200553681599],[77.397356538739004,13.1161845474321],[77.397355776782405,13.116181167122599],[77.397404156349495,13.1161677985727],[77.397441357885796,13.1161575185291],[77.397463860110406,13.1161513003821],[77.397476922878496,13.116147689231299],[77.397512662577995,13.116137719155599],[77.397523137825601,13.116134788075501],[77.397549437105894,13.116127611134401],[77.397844644616697,13.116047047291101],[77.397944267142094,13.116019859581399],[77.398332579859996,13.115913886738101],[77.398642419337506,13.1158293285082],[77.399138962938494,13.115693816647999],[77.399644637195706,13.1155656595277],[77.400052042916997,13.115462300130099],[77.400087988810995,13.115453180755001],[77.400139310256705,13.115440160187701],[77.400392820712298,13.1153757059152],[77.400439360007596,13.115363873768599],[77.400515399473093,13.1153411101321],[77.400519484326907,13.115339887496001],[77.400545609361799,13.115332066767801],[77.400574806517895,13.1153169844992],[77.4006199582645,13.1152936459399],[77.400636173448007,13.115285264338899],[77.400658901966494,13.1152735086989],[77.400851168053293,13.1152189596095],[77.401379309530896,13.1150651089529],[77.401449446668096,13.1150446770556],[77.401806582973194,13.114291780907701],[77.401953459801405,13.1139821415989],[77.4017989352717,13.113582074115101],[77.401237743321303,13.1121810188196],[77.401359596536807,13.1120482936528],[77.401213057336903,13.111615312446601],[77.401188958939898,13.111544109047401],[77.400959498276094,13.1108595625933],[77.400778249149297,13.1103224561995],[77.400884506033805,13.110135928641199],[77.4009567910893,13.110009036514599],[77.401233334539597,13.1095204468932],[77.401278293973206,13.109441014378101],[77.401278379248694,13.1094409675022],[77.401393198751407,13.1093798717155],[77.401535422564507,13.1093200293026],[77.401535548361693,13.1093199784347],[77.401641766863193,13.1092766252796],[77.4017479835301,13.109233277524901],[77.401804413792703,13.109195993254801],[77.401860845871795,13.109158708054601],[77.401860919190597,13.109158664000701],[77.401903608211697,13.1091333045522],[77.401942599917504,13.109110145376899],[77.402019891779602,13.1090732131773],[77.402019946838806,13.109073187364601],[77.402485848706505,13.1087758854349],[77.4024874015915,13.108774895121201],[77.402488379146604,13.108774273399201],[77.402521544041306,13.1087531273885],[77.402572936786498,13.108720358910301],[77.402732156533801,13.1086182684303],[77.402776272517897,13.108589983426199],[77.402805412800404,13.1085757825378],[77.403037652190207,13.1084625937771],[77.403548834544495,13.1082105881956],[77.403650653076497,13.1081603930905],[77.403830375713895,13.1080563650938],[77.404080369511306,13.107904956148699],[77.404293873837005,13.107812411108],[77.404403239454894,13.107765015878201],[77.404696211712803,13.1076380952397],[77.404726117893105,13.1076251393328],[77.404915561124994,13.1075431188706],[77.4049749467693,13.1075174115807],[77.405014610049093,13.1075002452933],[77.405403602863103,13.107332514314599],[77.405912092301307,13.1070482191894],[77.405971812477603,13.106975020101199],[77.406110246328893,13.1068053408798],[77.406200551553695,13.1067645851778],[77.406529239986497,13.1066178433649],[77.406751966015804,13.1065184076822],[77.406834908591193,13.106532080477299],[77.406945294336893,13.1065502765943],[77.407203619692197,13.1063238275361],[77.407794878588106,13.1060333347142],[77.407800038209203,13.1060307990388],[77.408006347987694,13.105929435900901],[77.408505029874206,13.105699766994301],[77.408680888810096,13.1056187747248],[77.408773440671794,13.1055761486039],[77.4089137844486,13.105511512569],[77.4089440042804,13.105497594656301],[77.409124248567906,13.105414582369001],[77.409409599406501,13.105283167371899],[77.409684526712695,13.105156553434099],[77.409740850312801,13.1051306136316],[77.409820321868395,13.1050940141761],[77.409973428352799,13.105023502717501],[77.410038509559996,13.1049934466295],[77.410267305371605,13.104887781297601],[77.410292372332705,13.104876157659101],[77.410493428272702,13.1047829304951],[77.410550142727402,13.104756632697599],[77.410647616153597,13.1047114345618],[77.410742666349407,13.1046673026578],[77.410799133931306,13.104645288103301],[77.411639905288396,13.1043174969052],[77.412216495858402,13.1040611258071],[77.412428649285602,13.1039668203479],[77.412430765054296,13.1039664653256],[77.4124467750555,13.103963259657901],[77.412608431852703,13.103935921098801],[77.412624943679404,13.1039331317719],[77.412691739177006,13.1039218481815],[77.412785056589499,13.103906096696701],[77.412876193048206,13.103890728826],[77.412878447721596,13.103890344489701],[77.4131637403338,13.103841819954701],[77.413256991139406,13.103825958700201],[77.413444549183495,13.103794057238799],[77.413644444382001,13.103760056816],[77.413697147709698,13.1037510924508],[77.414133893267305,13.103673678746199],[77.414335552998907,13.1036419020633],[77.415443629997796,13.1034414589137],[77.415538728392505,13.1034242558764],[77.415911764690193,13.1033710089648],[77.415934753704093,13.1033677277221],[77.416066131844502,13.103338302820299],[77.416148826407806,13.103319780148301],[77.416173789485001,13.103314189002401],[77.416891461442404,13.1031944044221],[77.416891797356598,13.1031943488663],[77.417099033792496,13.103159362676699],[77.417163531061107,13.103131505174],[77.417842934487894,13.1028386548117],[77.417916244969206,13.102798443514301],[77.4178812184132,13.102763412231401],[77.417859352114505,13.102689939346501],[77.417709041839998,13.1021848752968],[77.417690796352005,13.102123567068499],[77.417638169090594,13.101946729804601],[77.417597553511101,13.1018098905776],[77.417402965863204,13.101152194853199],[77.417278394926399,13.1007756130955],[77.417236220274503,13.100619803221599],[77.417236202065396,13.1006197320129],[77.417234225369597,13.1006124219565],[77.417228803025694,13.100592363673],[77.417206835303602,13.100511094078101],[77.417046638850394,13.100087560442301],[77.416919112651897,13.0997438017435],[77.416899927006796,13.099692085129],[77.4167315166968,13.099238115632801],[77.416731451283297,13.099237930117299],[77.416704703627502,13.0991628086433],[77.416536699890401,13.0986895788637],[77.416528555726998,13.098667544725901],[77.416309013444405,13.0981310251611],[77.416430005785401,13.0980886444601],[77.416484830773001,13.0980693052957],[77.416590617972602,13.098031994060401],[77.416640750674802,13.0980145980931],[77.416664901012297,13.098006255200699],[77.416901670292802,13.0979244598766],[77.417322227109494,13.097781539679501],[77.417592752818095,13.097689693429601],[77.417647361570204,13.097671171065301],[77.417757563011705,13.0976337927075],[77.417757660384794,13.097633758363401],[77.417982942872698,13.0975594572161],[77.418219396928905,13.0974861741942],[77.418259373339495,13.097473793884699],[77.4183681579797,13.0974401168247],[77.418527006231798,13.097390972227],[77.418715926048506,13.097316586086601],[77.418780090703905,13.0972918397371],[77.419366091736606,13.097065993480999],[77.419872093803903,13.0968711184843],[77.419956973409498,13.096808559597299],[77.419988355956605,13.096785429932901],[77.420041846535696,13.0967460025569],[77.420071494762894,13.0967241477915],[77.420101141132506,13.0967022921375],[77.420076461770705,13.096670421164101],[77.420054738949801,13.0966423660775],[77.419980579579004,13.0965182928673],[77.419884615692098,13.096357977432699],[77.419778342808797,13.096135661339],[77.419775828452899,13.0961304010562],[77.419748177782907,13.096115931124],[77.419669948183298,13.0960749915274],[77.419668053495698,13.096074001866301],[77.419574471107893,13.0958134797449],[77.419562974012607,13.0957816900846],[77.419478504958207,13.0955503777366],[77.419464929229903,13.0955132008093],[77.419241786071098,13.095547035075199],[77.419179289858405,13.0955566333677],[77.419078948180598,13.0955720441052],[77.418991189007201,13.0954003976343],[77.418790795413003,13.0950209533568],[77.418748093112995,13.094941878813099],[77.4190341307023,13.094788526002301],[77.418997863746696,13.0946998750756],[77.418846109736705,13.0945135093835],[77.418840126134597,13.0944838210696],[77.418822947475405,13.094405771133101],[77.418808345548598,13.094339751112299],[77.418808304994599,13.094339562653399],[77.418726309476696,13.0942609190265],[77.418644258392405,13.0941824321977],[77.418644215033794,13.0941823341188],[77.418611811691207,13.094104660977001],[77.418527805548095,13.0939218239163],[77.418488068359096,13.093822203938],[77.418339225940699,13.0934492923025],[77.418256233129,13.0932984524911],[77.418129332607194,13.0931088189717],[77.418129261528193,13.0931087139243],[77.418013785372494,13.0929342736941],[77.417642344285099,13.092367313915201],[77.417493821592899,13.0921513520268],[77.417322797964303,13.0918308636608],[77.416953156656106,13.091149807372901],[77.417184714566901,13.0910260616049],[77.417138576706606,13.0909650642455],[77.417102140990707,13.0909168938362],[77.417433793778898,13.09070671429],[77.417650294936905,13.090569911351301],[77.417994032028403,13.0904044415734],[77.418502916509198,13.090160942035901],[77.418606890826197,13.0901114597389],[77.418798574108195,13.0900074856647],[77.419268039837206,13.0897501726073],[77.419385266715494,13.089704000089901],[77.419652879346899,13.0895976001535],[77.419956134719996,13.0894746823268],[77.420071989524402,13.089436039837301],[77.420128317528906,13.0894169861203],[77.420215284534294,13.089387569570199],[77.420561266897494,13.0892566451426],[77.420913216223596,13.089192441061],[77.421244761857295,13.0891249638969],[77.421651397244204,13.0890817523976],[77.422040045266101,13.0890355937872],[77.421960845404996,13.088803638154801],[77.421954824287596,13.088785779383301],[77.421940354686996,13.0887427551486],[77.421935077339597,13.0887280011697],[77.421830699853302,13.0884319383585],[77.421803860213501,13.0883419939773],[77.421512417443793,13.087365302377099],[77.421505191290393,13.087140947206599],[77.421503853983594,13.087094253268701],[77.421500204592405,13.0869561811291],[77.421604543453597,13.086920164424701],[77.421451051396204,13.086339720668599],[77.421354501423195,13.086142363893501],[77.421330203473204,13.0860912918578],[77.421282360458704,13.0857554518906],[77.421261709129794,13.08560114912],[77.421057780227201,13.085365209560999],[77.421052018585897,13.0851446308649],[77.420974129112807,13.0850221392203],[77.421039093804694,13.0849491157144],[77.421053315148697,13.084933069187199],[77.421103883448097,13.084876009811699],[77.421208058714299,13.0847578119741],[77.421456552299105,13.0844710504493],[77.421513609293598,13.084405206486901],[77.421574658811707,13.084333379779],[77.421680155368904,13.084256892009099],[77.422051868508603,13.0839749342455],[77.422063119586994,13.083966400453599],[77.422139486852799,13.083907300741799],[77.422326938552501,13.0838072761621],[77.422568600241505,13.083783475297],[77.423024342782199,13.083738432299199],[77.423210513822298,13.0837806564095],[77.423210828824807,13.083780727541299],[77.423566492251496,13.0838614765935],[77.423567464057598,13.083861696963901],[77.423568701449696,13.0838633451357],[77.423568903004295,13.0838646343942],[77.423770139935996,13.0841282777755],[77.4240516555911,13.084498526553],[77.424339652784298,13.0847392555507],[77.424383017010896,13.0847778844042],[77.424681865603304,13.085044458642299],[77.425110113277199,13.0850122191968],[77.425195811689207,13.085005814496],[77.425200346493696,13.085006653720701],[77.425681783508196,13.085096188604799],[77.425957361381904,13.0851064874606],[77.426422348714794,13.085044215716],[77.426692678697805,13.084974622148801],[77.426967428621595,13.0848982969899],[77.426967538846895,13.084898258004699],[77.427271029058204,13.0847894747616],[77.427396407093795,13.084782848765],[77.427541732568898,13.084775137828601],[77.427791598547003,13.084683985001099],[77.428077220800304,13.0845808905172],[77.428187814999603,13.0845280394248],[77.428898800202802,13.0842002522595],[77.428947849624393,13.084178430146499],[77.429018057991996,13.084147193722901],[77.429511188249606,13.083931292789799],[77.429739735026104,13.083798863353399],[77.4299252737095,13.0836916867698],[77.430111277164301,13.0835842689762],[77.430185495454197,13.0833913555275],[77.430126665818193,13.0833327481516],[77.429940166211793,13.0831518357188],[77.429688700277495,13.082917732218201],[77.429631088379793,13.082511327712799],[77.4294734720973,13.0820811376725],[77.429445671531099,13.0820047528033],[77.429414299060795,13.0819185530583],[77.429234103400006,13.0815638982019],[77.428988709372007,13.080846542958399],[77.4288276043808,13.080354146951199],[77.428756199649399,13.080152517148001],[77.428702304713198,13.0800003074835],[77.428622467286999,13.0797748341303],[77.428578831757605,13.079683031106301],[77.4281990661013,13.078879000493901],[77.428171082084603,13.0787297354277],[77.428137520002494,13.078552506083801],[77.428086451187795,13.078466139808199],[77.428022067803894,13.078357200205399],[77.427743563465199,13.0775451817907],[77.427602728496296,13.077271681299701],[77.427584798386803,13.077235945312999],[77.427540062168205,13.077146755389199],[77.427505779168598,13.0770784074413],[77.4273580190968,13.076684787472299],[77.427343141115998,13.0766451267228],[77.427280159679498,13.076269769551899],[77.427251383183801,13.0760210136864],[77.427074101194705,13.0757331448628],[77.427048921434505,13.0756922409784],[77.427041699813401,13.075514610047099],[77.427018922251705,13.074953216690799],[77.427015688611206,13.074873272629601],[77.426713349717403,13.0736157670942],[77.426558466025398,13.0731661983934],[77.426533297351099,13.0730872672613],[77.426018552499102,13.0714729712269],[77.426018121657606,13.0714716082267],[77.426018045740406,13.071471384863299],[77.425799374080697,13.0708230775241],[77.425775837450203,13.0707531138377],[77.425775732046006,13.0707527967835],[77.425683097316906,13.0704770063477],[77.425600902354603,13.0702191107864],[77.425581562146505,13.0701582875633],[77.425477217558694,13.0697284955433],[77.425372975992005,13.069310895643801],[77.4253690356134,13.0693004932017],[77.425343821488894,13.0692336018341],[77.425208191808494,13.0688737884152],[77.425168440675606,13.068764568258899],[77.425043713422397,13.0684218700667],[77.425032888609607,13.068392162259601],[77.425022081274605,13.0683624506734],[77.424996746735602,13.0682921721105],[77.4249014470183,13.0680278059745],[77.424819131917801,13.0677956183655],[77.424781484243695,13.0676880769874],[77.423873502436606,13.067538236126],[77.422937716480007,13.0675801092952],[77.422793559275107,13.0675830370776],[77.4226177087602,13.067585861728499],[77.421376039016806,13.067605803668],[77.420796651802206,13.0676125112153],[77.420678285715198,13.0676483812701],[77.4203852126182,13.067737194696001],[77.420298602001495,13.067763481408999],[77.420179790134497,13.0677995903546],[77.419476510878596,13.068013327793899],[77.418632744631907,13.0682837929377],[77.4177296468105,13.068587041092],[77.416978975924707,13.068792973894499],[77.416774680604107,13.0688648645241],[77.416766995090398,13.0688772028884],[77.416676930049505,13.0690218403006],[77.416600753778795,13.06905231468],[77.416593459558101,13.0690642328486],[77.416161212560297,13.0697717412059],[77.415360712980203,13.071084807335],[77.415350054862003,13.0711022540874],[77.415199769507197,13.0714139842033],[77.415176170587301,13.071462933747799],[77.414751125527005,13.072348619685],[77.414722965671004,13.072407296917399],[77.413989147085701,13.0724439453287],[77.412273943081402,13.072528721384501],[77.412196390371093,13.0725324094113],[77.411626554678094,13.072445089385299],[77.411357271039606,13.072403565242499],[77.410655585634402,13.0722949107691],[77.410152918845,13.0722168396521],[77.409481489855096,13.072112423480601],[77.4084048632444,13.071944931231],[77.408330578340099,13.071933378228101],[77.408254233157706,13.0719215082961],[77.407175900342096,13.0716770354262],[77.406498884497907,13.0715235580876],[77.406340622205406,13.071487684639299],[77.406254484681199,13.0714681601163],[77.404646964079106,13.071389489585499],[77.404406617396006,13.0713777855273],[77.403851014675894,13.071146433979999],[77.403781347883495,13.071117392716801],[77.403732624344599,13.0710970808561],[77.402943114398795,13.071184487348001],[77.402702326140599,13.0712111440968],[77.401884954059895,13.071299782498301],[77.401272924109307,13.071367449831699],[77.401142284750406,13.071381933047499],[77.401097515603496,13.0713868968289],[77.400643218056004,13.071320927747401],[77.400426192827396,13.0712894331751],[77.400364686007507,13.071280506712601],[77.399579646108805,13.0713664502934],[77.399170108137795,13.071411517423901],[77.398498065000098,13.0714857941229],[77.398457397416806,13.0714903001187],[77.397700516324306,13.071575450814301],[77.397688325514693,13.0715768298671],[77.397339485556799,13.071616096407499],[77.3972618325501,13.0716248371321],[77.397177673675301,13.0706878736147],[77.397174214059902,13.070649359309],[77.396868302911898,13.0698504650801],[77.396860305622297,13.069829579598601],[77.396575588723294,13.0698215080421],[77.396123388996102,13.0698090137961],[77.396022812279398,13.069806300047301],[77.395280477132999,13.0697864389566],[77.395203022493206,13.0697843670339],[77.395202683386998,13.0696315387331],[77.395202575591796,13.069582730711399],[77.395000265392298,13.069645690421799],[77.394950493494505,13.0696611798015],[77.394931603084999,13.069667058178],[77.394646917803797,13.0695240213209],[77.394469603431205,13.069434939297199],[77.394136434892701,13.0692747680626],[77.394088172816694,13.069251563055699],[77.394033666864004,13.0692253555713],[77.393962443779799,13.069228148954],[77.393028993252003,13.0692640341552],[77.392500968179505,13.0692842324769],[77.391992127696497,13.0693036584418],[77.391203771176194,13.069333604315],[77.389924465159893,13.069374728189601],[77.389837709442503,13.0693775168785],[77.389724166564804,13.069262720606799],[77.389791651605805,13.069238392375199],[77.389741528774906,13.069186832039099],[77.389603979920395,13.0690453390317],[77.389538533530896,13.0689780150964],[77.389244573551196,13.0686756239818],[77.388200419448395,13.067637525466701],[77.387132865436698,13.067424843216401],[77.386971693993701,13.067380326864701],[77.386898375450599,13.067366664817801],[77.386854269051,13.067354280652999],[77.386785875410496,13.0673350929912],[77.386752671565702,13.0673370857908],[77.386585762506499,13.0673471049311],[77.385706252863201,13.0673999382291],[77.385564979535602,13.0674084432556],[77.385241021763804,13.067427973246801],[77.385197914678102,13.067430575024099],[77.385173065718305,13.0674320748491],[77.385134136972297,13.067434424799201],[77.385087013840007,13.067403994280699],[77.384929710205199,13.0673024127492],[77.384681594830496,13.067142180822],[77.384101270733098,13.0667758467571],[77.384100955462799,13.066775649076201],[77.383983701090798,13.0664570706281],[77.383959315193195,13.0663908279837],[77.383932124279994,13.0663169643906],[77.383727048961902,13.065759884589699],[77.383725914289897,13.0654556095147],[77.383725708415994,13.065402286018699],[77.383725573242501,13.065367369192799],[77.383725415513894,13.0653267420763],[77.383929502091902,13.0652674506021],[77.383566956620598,13.0641004510287],[77.383562421995805,13.0640858551834],[77.383516010818198,13.0639364901824],[77.383263749074402,13.0631247126747],[77.383051506928197,13.062632789233801],[77.383050488472193,13.0626300021055],[77.383028577076203,13.062569902333999],[77.383001983927997,13.062496961859599],[77.382936769258606,13.062318059140701],[77.382778132478407,13.0618955720506],[77.382769223713296,13.061871846265801],[77.382682973742504,13.0616420581628],[77.382682305845407,13.0616378627627],[77.382599491577494,13.061116200915301],[77.382594081751705,13.0610821232929],[77.382591543091195,13.061066130175901],[77.382405270617596,13.0599507693827],[77.382405241280793,13.0599505934587],[77.382196854080206,13.0589952434231],[77.382197106339405,13.0589849296581],[77.382197325271804,13.058975946242301],[77.382207550123198,13.0584058313955],[77.382207959794997,13.058383000953199],[77.382217239301596,13.0578655733277],[77.382218266051595,13.057812416394],[77.382222906895393,13.057572218795499],[77.382223078056995,13.057563346957499],[77.382222600849502,13.057055780328],[77.382224627241797,13.0566437991467],[77.382224627879296,13.056643481087301],[77.382224588051002,13.056639903351501],[77.382215617748898,13.055830971517601],[77.382245759502197,13.055831197991701],[77.382245872931705,13.055821975199599],[77.382292459829998,13.0558204987338],[77.382321646780198,13.0558195738239],[77.382324035896502,13.055819500307701],[77.382376497510805,13.0558146762168],[77.383233800087794,13.0557362977659],[77.383250335526796,13.0557347863964],[77.384156710802301,13.0556542955099],[77.384157454868102,13.0556542308211],[77.384820794194198,13.055596214706799],[77.384821314485094,13.0555961692477],[77.385426561312102,13.055481119848199],[77.385426809699297,13.055481072378701],[77.385590419960906,13.055448022358],[77.386258051328198,13.0552090344377],[77.386266480236699,13.0552060173719],[77.386934361983805,13.054977235810799],[77.387046721928598,13.0549972334098],[77.387190890359705,13.055022892648999],[77.388718730022106,13.0552903918155],[77.388781008487399,13.055301295253001],[77.389102044999802,13.0553572636559],[77.389589361356101,13.055443785696401],[77.389594232134101,13.055428345877299],[77.389639670525099,13.0554290942392],[77.389849982735498,13.0554325546233],[77.391260716393603,13.055308011917701],[77.391410029505593,13.055315748781499],[77.3917089111292,13.0553312352429],[77.391724292601396,13.0553320317592],[77.391773632931503,13.0553347712329],[77.391859514896197,13.0549693731062],[77.391898624639396,13.0548003735053],[77.391905208848499,13.054771555133],[77.391905448973404,13.054771415571301],[77.392097001586393,13.054659604965201],[77.392288462495699,13.0545467126333],[77.392288440116801,13.054546398403],[77.392259406363095,13.054272596951201],[77.392254561454195,13.054226838738501],[77.392250772929103,13.0541910586547],[77.392250360343795,13.0541871645333],[77.392477906962597,13.054048579104499],[77.393801944965503,13.053242180637801],[77.393828493371004,13.0532260106402],[77.393829348212407,13.0532254877011],[77.3938336537758,13.051544547956],[77.393834876874905,13.0510670630854],[77.393835094619703,13.0509820962045],[77.393360692920595,13.050852526339799],[77.393350148729297,13.050251029730299],[77.393320017412293,13.0485362497552],[77.393167599289399,13.0475808020042],[77.392888294148705,13.04582768046],[77.392626095328097,13.0443057505626],[77.3923924264448,13.0429446284077],[77.392112872588498,13.0410633781553],[77.392102076412996,13.040990546481201],[77.391899270469395,13.039614016383201],[77.391903150635997,13.039548186252601],[77.391948274330005,13.038781829837401],[77.392087019065002,13.038592571009],[77.392246131703402,13.0378516319368],[77.392285489236102,13.0378385000945],[77.392164290303199,13.037764248052101],[77.3920756116174,13.03770991977],[77.392056884772899,13.0365643432902],[77.392045912766903,13.0362938565539],[77.392018593702304,13.0356203755218],[77.392017850179897,13.035456027233399],[77.392014532821605,13.034722419509],[77.392014345168604,13.034683327052401],[77.391964166605604,13.0345647252812],[77.391895634991599,13.034402743385099],[77.391791010528706,13.0341551882467],[77.391570815623993,13.033633743446901],[77.391571663567902,13.033613322454499],[77.391584194415401,13.033311097902599],[77.391605945337602,13.0327816953902],[77.391614952344099,13.0325607349673],[77.391551079440106,13.032349844535601],[77.391439540166104,13.031981480408801],[77.391328715401002,13.0316153115433],[77.3913189931978,13.0315831804519],[77.391312701083805,13.031562380827699],[77.391222216027998,13.0312631692174],[77.391221476709802,13.0312607454734],[77.391082069182104,13.0307991833286],[77.391034701975798,13.0306421964642],[77.390991522924494,13.0305186694144],[77.390905312689299,13.0302717385952],[77.390995647341697,13.0293201434599],[77.391002661075305,13.029245649966899],[77.390668834954795,13.0280893857745],[77.390646382631203,13.0280116168157],[77.390514931033906,13.0275563052887],[77.390651969114103,13.0273836403657],[77.390645308221707,13.02665825227],[77.390687912937906,13.0266459231536],[77.390770190808595,13.026622112383199],[77.390771552379903,13.026593166086499],[77.390807538371206,13.0258279704067],[77.390593078588594,13.0257974120175],[77.390430938188103,13.025774310338599],[77.390010972548296,13.025714469983599],[77.389945159278696,13.0257050918038],[77.389796535028907,13.0256839179241],[77.389655274549796,13.025763401149501],[77.389514194990497,13.0258429260144],[77.389437831332401,13.0258860252108],[77.389215221800796,13.0258563648595],[77.389094481598306,13.025883675954001],[77.388959869181306,13.025914114713901],[77.388891803590894,13.025957390256499],[77.388733079104796,13.0260582487292],[77.3885980484052,13.0260458525301],[77.388484565423397,13.0260354333991],[77.388324668374693,13.0260207498614],[77.388230442026298,13.0260120984787],[77.388187331001205,13.026008055746299],[77.388140104423201,13.026003628072999],[77.388050828454894,13.025995257180901],[77.388016585256295,13.0259919784205],[77.387972852651103,13.0259877904854],[77.387888260634696,13.025979688998699],[77.387718569038697,13.0261306916486],[77.387661854575995,13.0260848499169],[77.387620525301401,13.0260514349151],[77.387373724499398,13.0262422512857],[77.387344259202195,13.0262650096765],[77.387059807402906,13.026472316639699],[77.386734910561998,13.0265675460477],[77.386406481486105,13.026661461316101],[77.386298053015807,13.026692431991],[77.386188711456299,13.0267234218769],[77.385720719730003,13.0268692409431],[77.385700953455398,13.026875752396],[77.385374636293093,13.026983026064601],[77.385289931457706,13.0270108196802],[77.385040580026498,13.0270986065711],[77.384837436146199,13.0271700453601],[77.384880189859601,13.0272459828776],[77.384314820185196,13.027415595005399],[77.384001731829798,13.0275311340732],[77.383638292154799,13.0275528855045],[77.382916171034793,13.027595795541],[77.382476061472502,13.0276211862205],[77.382434128405393,13.027400917265499],[77.3824251386512,13.0273536929946],[77.382246385361299,13.027334242103001],[77.382238322689005,13.027333360268999],[77.382219285926794,13.0273312782092],[77.382161860948699,13.0273249852186],[77.381529177853693,13.027254196709199],[77.381213530613493,13.027223803471401],[77.380953173089495,13.027198733337499],[77.380486991736603,13.027169015941899],[77.380164117150997,13.0271495468232],[77.379945085761506,13.0271689118756],[77.3789017135569,13.027286559595501],[77.378524626455004,13.0273287738327],[77.378382869842,13.0276494828087],[77.378214789465105,13.0280861412735],[77.378153519564506,13.0282540485378],[77.378115552057693,13.0283580965539],[77.378099488738798,13.0284021175297],[77.378046062120404,13.0285440773887],[77.377966580498097,13.028771923573901],[77.377966563456198,13.0287719725229],[77.377887842980599,13.0289955785132],[77.377713034932896,13.0293559988746],[77.377648050220301,13.0294888213257],[77.3773467210478,13.03011411752],[77.377096569009396,13.0300072670108],[77.376927690672304,13.029935479687101],[77.3769049957818,13.0297609319462],[77.376890708993898,13.029651056587401],[77.3768551500429,13.029500814425999],[77.3767521726122,13.029064956436599],[77.376731378381194,13.028976941995101],[77.3766584925377,13.028668917234601],[77.376658432036805,13.0286686611769],[77.376544009173799,13.0281875227362],[77.376555973990804,13.028077372154099],[77.376564789226904,13.027996221511501],[77.376590682997303,13.0277559642371],[77.376590825650496,13.027513919197499],[77.376590960424394,13.0272867866854],[77.376614052817303,13.0270044281373],[77.376615766086502,13.0269834831144],[77.376653309684997,13.0265244351458],[77.376636100844806,13.0264173179861],[77.376619793376406,13.0263158118336],[77.376613849421602,13.026278814711601],[77.3766135611625,13.026145832261999],[77.376631228557201,13.0261115117857],[77.376952044063799,13.0254883159012],[77.376952087483204,13.025488230567699],[77.377406642352099,13.0246359625389],[77.377462827413694,13.0241897577201],[77.377711297916505,13.0240157219111],[77.377643195893299,13.0239236788425],[77.377634502503895,13.0238276300328],[77.377631925119204,13.0237991570178],[77.3776237234229,13.023708568461201],[77.3776215675163,13.0236847657251],[77.377617173229794,13.023636242986299],[77.377614701350794,13.0236089752627],[77.377559706065,13.0232418694165],[77.377506375411599,13.022902684707899],[77.377480354146101,13.0228078258006],[77.377360926445306,13.022378019687901],[77.377308509217599,13.021987014173],[77.377255406819202,13.0216004694768],[77.377194327064103,13.021479955415501],[77.377144786335293,13.02138220838],[77.377087906627494,13.0212702549961],[77.377236066520098,13.0208022321826],[77.377204047406295,13.020657025451399],[77.377196496577895,13.0206226417152],[77.3770871030884,13.0201195497431],[77.377086364342404,13.020029055301],[77.377085554766595,13.0199297815525],[77.377073090553196,13.0198834245234],[77.377070446012198,13.0198735908637],[77.377051928789996,13.0198046676479],[77.377038327777001,13.0197539974733],[77.376921840039401,13.019317037322701],[77.376919379776396,13.0192463250731],[77.3769186242573,13.019224596705699],[77.376918139611206,13.019210399793099],[77.376934152146504,13.0191696620508],[77.376942574957695,13.019148232638999],[77.376954560516296,13.019117740315499],[77.376949946464194,13.019101018751201],[77.376919632410406,13.018991147413001],[77.376889940710299,13.018883240135199],[77.376796093730306,13.0185407172136],[77.376756960124396,13.0182760318538],[77.3767115078644,13.017966985052199],[77.376719449849503,13.0178346291612],[77.376739629211698,13.017499198295599],[77.376771630644399,13.0173719528908],[77.376927607724298,13.0166545412022],[77.376815358858096,13.0166530067886],[77.376724567179494,13.0166517662741],[77.376430275164594,13.0166912579207],[77.3763359566464,13.016703914834],[77.376218118333099,13.0166943065162],[77.375971993217604,13.0166774543199],[77.375748260369903,13.0166484922067],[77.375373325008397,13.0166038910394],[77.375308599065505,13.0165961910646],[77.374854894772398,13.0165403781974],[77.373758719845995,13.016406826389],[77.373638530006801,13.016392293152901],[77.373425627645403,13.0163666091431],[77.372542373352402,13.016355116840501],[77.372336315191902,13.016353275925299],[77.371804178341506,13.0163485066742],[77.370841409105907,13.0163425961876],[77.370790652267502,13.016335672695901],[77.370827877189896,13.016218122081501],[77.370828354666301,13.016210869274101],[77.370833414925102,13.016134350229599],[77.370834691108698,13.016115057272399],[77.370853730942002,13.0158290838691],[77.370867773701093,13.0156218155732],[77.370900008820897,13.0151460440257],[77.370951219865404,13.014455381740699],[77.370968817544906,13.014224150786401],[77.3709952078855,13.013877380312699],[77.370925643642195,13.013653061596299],[77.370557757036295,13.0124667608466],[77.370521342361798,13.012347799743999],[77.370516717202605,13.012332655702901],[77.370493239477298,13.012255779429999],[77.370359476204598,13.0116066197431],[77.370339605316801,13.0115099638325],[77.370339618253396,13.011509870646501],[77.370342844731994,13.0114822768259],[77.370529334766601,13.009887223749701],[77.370467853033801,13.0097797311421],[77.370452604828003,13.0097539858814],[77.370291837709303,13.0094825448128],[77.369986953719106,13.0089677719848],[77.369966076923205,13.008680419205501],[77.369974981954797,13.008656839579301],[77.369985609587701,13.0086284489636],[77.370318928651699,13.0077380246125],[77.370249310839,13.0074208231333],[77.370300840049595,13.0072372906599],[77.370588716655803,13.006212743363299],[77.370847623877907,13.005842614512799],[77.371342386699794,13.0054713693614],[77.371811047482794,13.005485631853199],[77.371976567972197,13.0054906688678],[77.372323018450501,13.005050557813201],[77.372354810950299,13.0050101703354],[77.372703844076298,13.0045807345368],[77.372705121107003,13.004579172334701],[77.372768738426203,13.0045013372411],[77.372953035633003,13.0042758540968],[77.372928566886102,13.004264285347],[77.372657493863798,13.0041361248048],[77.372494325070505,13.0040589906021],[77.372327832061103,13.004273050415399],[77.372319984835698,13.004256273277701],[77.372314842707496,13.0042452795602],[77.3722447256945,13.0040953757827],[77.372134051297294,13.0038587629098],[77.372130779043502,13.0038517666571],[77.371770249056894,13.003084496861],[77.371471689268304,13.002587685107599],[77.370969488243702,13.001355426302201],[77.370917480259195,13.001227811106901],[77.370907714737299,13.0012082142004],[77.370607588353707,13.0005057179254],[77.370305130128102,12.999696400362099],[77.370627337510101,12.998781042531199],[77.370832044626496,12.9983394086046],[77.370887778525301,12.9980541346028],[77.370968564801004,12.997597560466801],[77.371033621950701,12.997225873224499],[77.371072738965907,12.996941328363899],[77.371122030629394,12.996886474203],[77.371146182949701,12.996859669669799],[77.371234112531198,12.996762469169701],[77.371152657911097,12.996542591640599],[77.371240376808501,12.995720829195101],[77.371756582945693,12.9953787430769],[77.371944140637595,12.995254448803299],[77.372114156499904,12.995079179783399],[77.3722388089909,12.9949369295385],[77.372304677994194,12.9948484844705],[77.372267375092093,12.994711138224],[77.372144789075605,12.994259791306099],[77.372115652241106,12.994133331631801],[77.372007737193201,12.9938038678605],[77.371900582621805,12.993476727355199],[77.371980202048704,12.993265291044899],[77.372131656064496,12.992899421708699],[77.372070877491794,12.9925132737255],[77.372068570199502,12.9924986162866],[77.3720307120672,12.9922565474791],[77.372017464731599,12.9921717300703],[77.372014512693397,12.9921528281193],[77.370219246777197,12.991330222277],[77.368543258472499,12.991034918661599],[77.367449144472602,12.990888277274101],[77.367085112933907,12.9906310555453],[77.367079351480896,12.990626985037601],[77.366455529857106,12.990186299406799],[77.365902189090804,12.9894037440273],[77.365332929485305,12.9878772321666],[77.364402433893005,12.987621688509],[77.364362241773406,12.987629999401401],[77.362991741238901,12.987913387591499],[77.361659752137996,12.988612532622501],[77.360870003988396,12.9886845628813],[77.360782280181297,12.9886761444395],[77.3602681303298,12.988626802743701],[77.359912622986499,12.988592685526701],[77.359621973033796,12.988567490730899],[77.359609016240597,12.9885541288229],[77.358929628763605,12.9878534609791],[77.358791759980207,12.9877112731089],[77.358376995225896,12.9872835131334],[77.357676789654803,12.986803202360299],[77.357296303142803,12.9865805218374],[77.357096963366104,12.986463883472499],[77.356837327407206,12.9863119910684],[77.356696708825595,12.9862297376757],[77.356692700726498,12.9862273921892],[77.356230562134499,12.985957106952601],[77.355242524954093,12.985568551626599],[77.354679901833904,12.9843473752417],[77.354649072356395,12.983665339200501],[77.354610884604,12.982820483771199],[77.354316199363794,12.9814846039376],[77.354272539607607,12.981286682972801],[77.353809788703401,12.979188870686],[77.353749583474894,12.9787887753841],[77.353732787385695,12.978677155179801],[77.353659382818194,12.9781893384102],[77.352433907692301,12.9765910811961],[77.351921256794,12.975747612089901],[77.351878148065396,12.9756766839087],[77.351568255621501,12.9757261990129],[77.351254774189101,12.975776292886099],[77.351148854660906,12.975793217804],[77.351070440789599,12.975805748356199],[77.350364823438696,12.9751954683011],[77.349926274807004,12.9743868248298],[77.349902348111698,12.9743427057182],[77.349648539514902,12.9743151028983],[77.349528494387897,12.9743020472301],[77.347934865592705,12.974128726667701],[77.346217396157996,12.9739420359014],[77.344809844100496,12.973493896355301],[77.342370151064998,12.9731813150833],[77.342137499168999,12.9731515053709],[77.341601823164893,12.973082869417899],[77.3391171942136,12.972484864735501],[77.338996877364394,12.972455884217201],[77.338868636489707,12.9724249942182],[77.338798804820101,12.972745988758099],[77.338762934182895,12.972730594225901],[77.338643784332106,12.9726931102043],[77.338610069827894,12.972686501763899],[77.338601142226693,12.9726872335225],[77.338594569987293,12.972686328481499],[77.338569593237196,12.9726898249535],[77.338548056433396,12.972710919571799],[77.338532430404697,12.972726225045101],[77.338512661521307,12.972758538123699],[77.338469021145997,12.972829891358099],[77.338277486253304,12.973143022732501],[77.338177318773006,12.973295360735699],[77.338118231312393,12.973359590636999],[77.3379161312848,12.973504837261601],[77.337781918002506,12.973608661924599],[77.337660101298297,12.9737028928163],[77.337655505922001,12.973768893646501],[77.337651966527105,12.9739294540505],[77.337651961809001,12.973929639329301],[77.337649183478206,12.9740552988687],[77.337645788113505,12.9742088885691],[77.337634876413702,12.974699567669299],[77.337626517607006,12.9750724017113],[77.337589898951407,12.9752810396038],[77.3374677584182,12.9757737974093],[77.3373816039838,12.9761457169369],[77.337340747480397,12.976321993724699],[77.3373582311809,12.9764715130227],[77.337471714940705,12.9773094828141],[77.337471865560502,12.9773106136611],[77.337489463760306,12.977443671149],[77.337568948711706,12.9780446612753],[77.337596630996103,12.978284099227301],[77.337619834445306,12.9783746058283],[77.337613996284006,12.9783759558771],[77.337447012858803,12.9784145676915],[77.337416229125793,12.9783607156605],[77.336637552697198,12.978318052576499],[77.336495356072803,12.9783365439206],[77.3362552819505,12.978394405954001],[77.336240992565607,12.9783963180464],[77.336169091033696,12.9784059386044],[77.336042986815102,12.9784508227382],[77.335933661731602,12.978491253155401],[77.335833869015303,12.9785186385597],[77.335384091422398,12.9785972715878],[77.335031621785703,12.978653989782099],[77.334885321594001,12.978668810606599],[77.334837248063593,12.9786638523964],[77.334756682827205,12.978655543572399],[77.334361127015796,12.9786666702388],[77.334015734368407,12.9786040888967],[77.333336097183107,12.978560974995901],[77.332865668851497,12.9784795239381],[77.332471125632793,12.978269122280301],[77.332195128166305,12.9782642771988],[77.331630295943896,12.9782544428439],[77.331428577974705,12.978251004557199],[77.331182369780905,12.9782086107124],[77.330941081387394,12.978113484737801],[77.330808520016802,12.9780612236154],[77.330789729606806,12.9780567123382],[77.330704137346501,12.978017256936401],[77.330647890166404,12.9779913282387],[77.330616284440694,12.977976758233099],[77.330512800226401,12.9779288419256],[77.330505697350901,12.9779257863767],[77.330495662432398,12.977920831544701],[77.330478807283399,12.9779133906054],[77.330445756166895,12.977898154930299],[77.330419673943297,12.977886131421601],[77.330392770934097,12.9778737303344],[77.330359963191697,12.977858606318501],[77.3303296039701,12.9778446124381],[77.330301072334393,12.9778314605904],[77.330284104006594,12.9778236393333],[77.330283814340405,12.9778235027755],[77.330279381717901,12.977821344956],[77.330256077719397,12.9778092477346],[77.330224993668907,12.9777931097766],[77.330189268287199,12.9777745646636],[77.330158392557294,12.977758534164501],[77.330129109336099,12.9777433324449],[77.330110624484107,12.977733738355001],[77.3300775396701,12.977716562905799],[77.330047669443701,12.977701054695],[77.330024192321702,12.9776888668337],[77.330005183980802,12.9776785644884],[77.3299878818205,12.977670017901399],[77.329987596651705,12.9776698695562],[77.329600222208398,12.977468772598201],[77.329566281253406,12.9774512749299],[77.329354207351599,12.9773420957223],[77.329296865550205,12.9773125765595],[77.329237146188703,12.977281827198],[77.329204331318707,12.9772649347361],[77.329187058689996,12.977254310452301],[77.329085994534097,12.977192148281301],[77.329015434381304,12.9771487525339],[77.329002491280306,12.977140792114399],[77.328905792978901,12.9770813286527],[77.328844948783399,12.9770763128643],[77.328785512626197,12.977071413665101],[77.328775467371898,12.977070586480099],[77.328775120064407,12.9770723732916],[77.3287731049314,12.9770703871606],[77.328769772132304,12.9770671053253],[77.328700403023205,12.976998733320199],[77.328712425668698,12.9769013163507],[77.327361247981202,12.9768460232669],[77.327268582081899,12.9768426012257],[77.327221430409395,12.976840832912901],[77.327092181362104,12.9768358686777],[77.325941717086494,12.9761915824244],[77.325769923590897,12.976112815239601],[77.325530599864294,12.976003085514501],[77.325530408974998,12.9760029688501],[77.325595027186097,12.975763755847099],[77.3258926482292,12.9743625757296],[77.325590019674195,12.972917796358701],[77.325577954570605,12.9728612286752],[77.325637169650406,12.9729138091766],[77.325678606100595,12.972910305897701],[77.325765177538798,12.972902821678201],[77.325605201599402,12.9718965725407],[77.325637555122896,12.9714735062916],[77.325731659994801,12.970264072745699],[77.325825738175098,12.969990885011301],[77.326106626988107,12.9697720050215],[77.326139179324102,12.969619849658701],[77.326154302316198,12.969549164125301],[77.326256139275301,12.9690731664199],[77.326256121502198,12.969073137663599],[77.326087617696004,12.9687494243991],[77.326179829162001,12.9683565680148],[77.326179974498302,12.96835594775],[77.326263917511497,12.9684062433719],[77.326463361624903,12.9685257429747],[77.326657021879399,12.9684243750061],[77.326666534615498,12.968419395143799],[77.326692183522397,12.9684059488374],[77.327413128872706,12.9676205093576],[77.327629713339604,12.9673845489993],[77.329004964574807,12.966325353783899],[77.329014866633798,12.9663176713242],[77.329068221561201,12.966276275268299],[77.329233010856598,12.9661484213362],[77.3294192450807,12.9660039289843],[77.329916532888205,12.96583040408],[77.3299840358941,12.9658068492345],[77.330014572225906,12.965796194397701],[77.330029329317696,12.965791044592899],[77.330056790053803,12.9657814618479],[77.330060400121695,12.9657802024392],[77.330060308181501,12.9657783427559],[77.330059906213293,12.965764655954301],[77.330055697529204,12.965621339752699],[77.330054545311498,12.9655820869644],[77.330049899784896,12.965423907786599],[77.330052593956097,12.965317822136001],[77.330054367958894,12.9652479889111],[77.3300680532911,12.9647092140103],[77.330077665413597,12.964330780947099],[77.330080266653198,12.964228364729401],[77.330080688671302,12.9642117401833],[77.330101122095797,12.9633896533092],[77.330104269207496,12.963263026637099],[77.330119833779705,12.963176068767],[77.3302702562288,12.962335697734501],[77.330326251591401,12.9620228671536],[77.330386144113703,12.961688261138899],[77.330404225573105,12.961587238841799],[77.330640204919703,12.9602688734065],[77.330666916296096,12.9601196446581],[77.330882534101306,12.958915024771301],[77.331078980601305,12.9571301464883],[77.331336505116795,12.9555260355149],[77.331355848700298,12.955405547502799],[77.331924130197393,12.951989093468001],[77.331929036986807,12.9519595922837],[77.331945698657705,12.951859423084899],[77.3319791858044,12.9516590669575],[77.331990743800503,12.951589914231199],[77.332077484502506,12.9510709321532],[77.332103571949702,12.9509148462328],[77.332113691731706,12.9508543004932],[77.332468576495401,12.949059241375201],[77.333552778527206,12.9492967415704],[77.333780827006507,12.949346696360999],[77.333859586507401,12.949363948925299],[77.334120284237898,12.9494395242479],[77.334289994587806,12.949462652965099],[77.334316393805196,12.9493800564072],[77.334346059539897,12.949287237119799],[77.334440948789407,12.948990344618601],[77.334762132752203,12.9483797490521],[77.334867580028998,12.948179285775],[77.335132983129199,12.9476747298022],[77.335167602682802,12.9472249577172],[77.335283573483096,12.945718305553401],[77.335344763534394,12.944288489944899],[77.335366902714597,12.9437410543543],[77.335485340603995,12.9420634677618],[77.335649532722996,12.940391447667601],[77.335591452397594,12.9397165755886],[77.335790782889106,12.937581818574101],[77.335888552058904,12.9352101973977],[77.335942104393695,12.934678967424199],[77.335935428304794,12.9339617973326],[77.335988711310904,12.932368675954899],[77.3361758765312,12.932374048761901],[77.336424646903396,12.9323811909957],[77.336479160498499,12.9323827556948],[77.3377588250234,12.932798524657599],[77.338172596572605,12.932932959367999],[77.339132193207803,12.9332242560344],[77.340288110273406,12.9335751413937],[77.340151191776798,12.931567619784399],[77.340074889230394,12.9304488171522],[77.339818706987799,12.9266923415382],[77.339812533416605,12.926601817942901],[77.339806123767005,12.926280336992701],[77.339799241236804,12.925934394567101],[77.339797794225802,12.925861651974801],[77.339786371436304,12.9252777571782],[77.339673794823696,12.919522292057099],[77.339603172285095,12.9154962941117],[77.339553243418194,12.9127403883328],[77.339512940249804,12.9125522838244],[77.339485593607904,12.912424720677601],[77.339486100599103,12.912420800861099],[77.339486094786807,12.912420770191],[77.339457341785504,12.912341032444401],[77.339448500187402,12.9123165302322],[77.339339941863201,12.912015687252399],[77.339321400642206,12.911964351990701],[77.339236130083094,12.9117282652428],[77.339223599209603,12.9116936468709],[77.338846310914306,12.910651349278901],[77.339840784699106,12.904519855271101],[77.340015445160603,12.903995436417899],[77.340016843036693,12.9039912384521],[77.340112749521197,12.903703487582099],[77.340359840975395,12.9029621276607],[77.341278564339504,12.9002056105672],[77.341449144276694,12.899265815979501],[77.341707636608206,12.8978416684813],[77.342365260824394,12.8942184922912],[77.342368946784603,12.8941983796154],[77.343295112903107,12.8899259244067],[77.343345343506002,12.8896942060463],[77.343425119127602,12.889333664284299],[77.343489649457297,12.889042022546001],[77.343550929688604,12.888765070726601],[77.343546973617293,12.8887640634095],[77.343426281564106,12.8887333278419],[77.338721654114707,12.8875351912274],[77.338421270887693,12.887462575127],[77.338421235806905,12.887462566404499],[77.337916097485703,12.887388184667399],[77.337457011738607,12.887155598986],[77.337142884509603,12.887102459997299],[77.337054284374204,12.8870874725856],[77.336856076597101,12.886999588430101],[77.336845535617499,12.8869951645628],[77.336837893407505,12.8869919572588],[77.336646903859702,12.8869118019994],[77.336628254696095,12.8869068586575],[77.335822408579105,12.886693233513601],[77.335633212145595,12.8875771178426],[77.335542019853705,12.8875810861643],[77.334803765117698,12.887613208463099],[77.334436126757296,12.8877814519212],[77.334262453767906,12.887768386278299],[77.333583816777093,12.8877173302402],[77.333198000947803,12.887896492461101],[77.332627422867105,12.8875118381228],[77.332523141870595,12.8874364974019],[77.332477959607004,12.8874031677981],[77.332264507481099,12.88723890344],[77.332108987560702,12.887135391264501],[77.332112147111403,12.8871188154734],[77.332127228975395,12.887039691936],[77.332147978441597,12.8869306665485],[77.332148139568005,12.8869298645226],[77.3322934686053,12.8862065954076],[77.332330427161395,12.886019741244001],[77.334598276907698,12.883584191603701],[77.335193920174703,12.883564534173001],[77.335628573509396,12.8835283808216],[77.335598835620104,12.8838693317623],[77.335687987426297,12.884022740831799],[77.335830434920595,12.8840107115268],[77.336017838405397,12.883722145804301],[77.336670795501107,12.8831819799288],[77.336637177424606,12.8830906678032],[77.336350455998797,12.882311877280101],[77.336332001856903,12.882257300173601],[77.336407834427206,12.8822294386732],[77.336537458106704,12.882167928703799],[77.336571780316902,12.882151643152399],[77.336638664082699,12.8821199064122],[77.336407856076804,12.881366341252599],[77.336300014487307,12.8809460586565],[77.336266562655396,12.880815689584299],[77.3361402892793,12.8803235725576],[77.336147876712801,12.880005720092701],[77.336148848349197,12.8799992570193],[77.336189937510198,12.8798369574305],[77.336320390891103,12.8793216757762],[77.336361131599702,12.879160750057199],[77.336381143076295,12.879073268536001],[77.336554818976794,12.8783140371884],[77.336574880818503,12.8782263347422],[77.336589869149705,12.8775860313424],[77.336591586384102,12.877512652863199],[77.336603650081599,12.876997280860699],[77.336605626074203,12.876912865326901],[77.336606093201496,12.876892911512201],[77.336901835394201,12.876888968039699],[77.337310345846504,12.8768835208969],[77.337318894126994,12.876883165397199],[77.337559018260393,12.876873166449499],[77.339119020987496,12.8767875153247],[77.340006708997194,12.8767293791766],[77.340993046917205,12.8766667728678],[77.341003924547195,12.8766663349847],[77.341910172326195,12.876629884587601],[77.341913243982901,12.8766296971852],[77.343148598918702,12.876554256952099],[77.344419979406297,12.876492819525399],[77.344423705959699,12.8764926397858],[77.344982577912702,12.8764517756518],[77.344058167938499,12.8753899665069],[77.343889978475303,12.8751967759494],[77.343893140404901,12.875113571798201],[77.343929802922005,12.874150419695001],[77.343954516849394,12.873501155764901],[77.343976016252299,12.872936363291499],[77.343986935823395,12.8726379538397],[77.3440252853039,12.8715899435967],[77.3440342940752,12.8713437645333],[77.344039192203098,12.8712099245778],[77.344040116209598,12.871184683436001],[77.344053689472801,12.8708137485231],[77.344056034479195,12.8707496527565],[77.344067978933097,12.8704232498011],[77.344071303060801,12.8703324088175],[77.344338378662698,12.870310125001399],[77.344947507422006,12.870259299573499],[77.345223524015097,12.8702362680107],[77.345226244441406,12.8699622740136],[77.3466027345236,12.869813762013001],[77.346602997363505,12.869813701829299],[77.346707534635101,12.8698024917956],[77.348406674462694,12.8696223818815],[77.348627332914006,12.8696235505437],[77.348676743850106,12.8696238070542],[77.348801320231104,12.8696244542475],[77.348880785391998,12.869624909385401],[77.349066990502493,12.869626026878899],[77.349180436557205,12.8696302018958],[77.349437475348395,12.869639977527701],[77.349752610858701,12.869651998740901],[77.350284199656997,12.8696737146788],[77.350469545544499,12.8696799902437],[77.350528756447801,12.869682016278899],[77.350644386807701,12.869685973172199],[77.350715753863398,12.8696884160056],[77.351084935753505,12.8697946994244],[77.351428428509493,12.869895288862301],[77.351484488472593,12.869911705512999],[77.351523509283794,12.8699253365878],[77.351704591927501,12.8699885955516],[77.351794467192306,12.8700202015921],[77.351985828699199,12.870088173373199],[77.352059166734904,12.8701142233868],[77.352120085718397,12.870135861487601],[77.352140321631197,12.870143094695401],[77.352207963505194,12.870167273859],[77.352225522161405,12.870173323896999],[77.352298261791802,12.870130958493201],[77.352364305271905,12.870092673258],[77.3523835076371,12.8700814174382],[77.352398751618495,12.8700724299239],[77.352479711539999,12.8700296400879],[77.352483163706907,12.8700286901441],[77.352536810031694,12.8700139227573],[77.352828371225698,12.869934014610299],[77.352870516891201,12.8699224632925],[77.353030927930604,12.8698717420103],[77.353038456792902,12.8698693612134],[77.353053846008805,12.869864494536699],[77.3530661443897,12.869860709199999],[77.353078227878498,12.8698569899473],[77.353088924671994,12.869853696990701],[77.353111907914794,12.8698466233201],[77.353401463382397,12.8698274890302],[77.353653784329694,12.869817396764001],[77.353664297930294,12.8698169761327],[77.353716789522394,12.8698148763671],[77.353731505802898,12.8698142878659],[77.353738309258702,12.8698140153138],[77.353783617170706,12.869812203248999],[77.353797711100995,12.8698116393099],[77.353816479996595,12.8698108888014],[77.353859783830899,12.8698081848119],[77.3538788645035,12.8698069932578],[77.353879799001206,12.8698070607646],[77.353885535934793,12.869807475481],[77.353895143561004,12.8698081689716],[77.353901585516297,12.8698079439386],[77.354003849363806,12.8698043714259],[77.354008691187801,12.8698042023303],[77.354157431551201,12.8697990059381],[77.354165616340595,12.8697987200614],[77.354182581596007,12.8697981275945],[77.354349752601394,12.8698124827129],[77.354365963465895,12.8698132596235],[77.354396330498901,12.869814714436901],[77.354443809504801,12.8698169886569],[77.354448020236802,12.869817190273301],[77.354455011718699,12.869817525935501],[77.354482999739503,12.869818867479999],[77.354539704164907,12.8698190727008],[77.354543600012406,12.869819086488],[77.354549549703506,12.8698191080241],[77.354636324936294,12.869819422523699],[77.354663687068907,12.869819521817501],[77.354700891055003,12.8698196564591],[77.354703122648402,12.869819664416699],[77.354706635360401,12.8698196771265],[77.354709928873703,12.8698196890952],[77.354760831889905,12.8698198741138],[77.354760916620805,12.869819874256001],[77.354847501199202,12.8698201885915],[77.354851189818902,12.8698202015256],[77.3548765386155,12.869820291782901],[77.354904432143101,12.8698203907938],[77.354918222333197,12.8698204394463],[77.355076998818504,12.8698210039732],[77.355126686062505,12.869821180872099],[77.355128908446204,12.8698211889088],[77.355130381127793,12.869821193744301],[77.3551407150199,12.869820959001199],[77.355141598530395,12.8698209908181],[77.355464585705505,12.8698327284734],[77.355508157072904,12.869835207498699],[77.355544147563705,12.869837254980601],[77.355664679485699,12.8698441112615],[77.355747142100498,12.869848802285],[77.356390527899194,12.869844625687501],[77.356460485339298,12.8698441709645],[77.356502809436506,12.8698544102027],[77.356592917505196,12.8698762066808],[77.356592947091997,12.869876219064899],[77.356692278557304,12.869907658767],[77.356748950583395,12.8699255948854],[77.3567967762949,12.869940730825],[77.356820625221502,12.8699441180171],[77.356931008462595,12.869959794534701],[77.357190539400904,12.8699983174527],[77.358645362500795,12.870209074098099],[77.358634252389095,12.870088875190699],[77.358695944571195,12.8700916260865],[77.358861518766304,12.870099009707101],[77.359054775094805,12.8701076267832],[77.359887086727298,12.8701445342985],[77.360338972091796,12.8701645708587],[77.360827402451093,12.8701833276951],[77.361850247855202,12.870222605352399],[77.362607710041203,12.870251688670001],[77.362733907195505,12.870256534285801],[77.363144715605202,12.870272306359499],[77.363178756776193,12.8702736131471],[77.363277838540697,12.8702728387916],[77.364176051030697,12.8702645652365],[77.364212596548001,12.8702642282655],[77.364424575274498,12.870262274865],[77.364574264985293,12.8702608951579],[77.366140250998697,12.870246180361001],[77.366145659370403,12.870246129714999],[77.366145425255098,12.870244244247299],[77.366179400244306,12.8701298259432],[77.366227952220299,12.869968769568199],[77.366228013990195,12.8699685801618],[77.366317163403394,12.869696335617499],[77.366378789812302,12.8695114810122],[77.3666343293702,12.868744671145199],[77.366653368436005,12.868687541049599],[77.366725414025595,12.8684713510136],[77.367013022585297,12.8673858321753],[77.367032892981001,12.8673046367217],[77.367063754210307,12.867177617181699],[77.367239707916696,12.8664597655729],[77.367270218043998,12.866335289173501],[77.367307743222298,12.866080481036599],[77.367307747555401,12.8660804520828],[77.367344132418296,12.865847713372499],[77.367402567758901,12.865481502724],[77.367446926942094,12.8652035030061],[77.367448760431401,12.8651921040359],[77.367462630494799,12.865105885562301],[77.367485468585599,12.86496448572],[77.367571839215799,12.864434886649899],[77.367876012256403,12.862916525987099],[77.367876741139,12.862913037003],[77.368059084163704,12.8620399359994],[77.368497069280096,12.860837061012001],[77.368568331373794,12.8606143117487],[77.368595980423294,12.8605281332788],[77.368602440019799,12.8605080335096],[77.368630602638007,12.8604209404944],[77.368861698815806,12.8597062748018],[77.368898512337395,12.859593943434801],[77.369141690971105,12.8588519129642],[77.369293663637194,12.858407369060799],[77.369341403992394,12.858269858288701],[77.369706490289701,12.857218266629999],[77.369762246496904,12.857060501054301],[77.369836220838707,12.8568511887837],[77.369958853248804,12.856812273106501],[77.371296553184607,12.8564008797184],[77.371344853909704,12.856386724894699],[77.371979239218604,12.8562008195315],[77.372156058343705,12.8560954471301],[77.372206554355103,12.8560653096888],[77.372338068383996,12.855986730525],[77.372391032528398,12.855955039166201],[77.3723990458994,12.855953721556],[77.372489091675504,12.8559389106659],[77.372569936076701,12.8559305125445],[77.372623581262005,12.8559280855068],[77.372641402925893,12.8559266339884],[77.372731485456299,12.855919560932101],[77.3730224195061,12.8558994284757],[77.373878756197001,12.856002048119301],[77.374661670918002,12.855934594133901],[77.374689094618603,12.855908828833],[77.374757662977004,12.8558444073575],[77.374793950238299,12.8558453555759],[77.374926647358805,12.855848823811799],[77.375063318778302,12.8558245468991],[77.375276341398305,12.8557867079715],[77.375603275091905,12.8557258839291],[77.376314491874396,12.8555934252197],[77.377080975251403,12.8554616845932],[77.378294799695297,12.8553603468084],[77.379434415754801,12.8552459243149],[77.379535813695597,12.855298190697701],[77.379544897415101,12.855302871938299],[77.379523177032496,12.855340606168999],[77.379437570301803,12.8554893295084],[77.3794334577087,12.8554898366737],[77.379465098564694,12.8555045345268],[77.379485799057903,12.8555141505256],[77.379475665113901,12.855540800316],[77.379452009327295,12.8556030064416],[77.379347858498903,12.856122857796199],[77.379343911134995,12.856142562613901],[77.379332568423393,12.8562015080864],[77.379447052912397,12.856654256347399],[77.380022490989305,12.8569881791427],[77.380030726625293,12.8569929584077],[77.379991778627897,12.857241123350899],[77.379978387912203,12.8573264419597],[77.380118451893694,12.8573306022819],[77.3801194836023,12.8573306326763],[77.380325354156,12.8573367482712],[77.3803284299441,12.857336839627299],[77.380333489280005,12.857337409042801],[77.380504847524193,12.8573567895506],[77.380628560840407,12.857352078531401],[77.380629459326897,12.857352044172099],[77.380807069744705,12.8573452616775],[77.380924382376506,12.8573251855282],[77.381558818980096,12.857215657073301],[77.381652678544199,12.8571992858925],[77.381667045925298,12.8571967736048],[77.381745305048995,12.857164079151801],[77.382023013102895,12.857276042463701],[77.382375229179203,12.8572869525591],[77.382611060395007,12.857642533669599],[77.383030254091693,12.857917777939001],[77.383089492558497,12.857958053105399],[77.383142572221104,12.857994159117601],[77.383146433506695,12.8579967823388],[77.383199796503007,12.8580261225248],[77.383216087287096,12.8580350797801],[77.383268728422294,12.858064042491],[77.383345857668502,12.858106477181],[77.384150972449504,12.858797966838701],[77.384466653360604,12.858780742505401],[77.384605524474296,12.858773220719799],[77.384617022659697,12.8587725975142],[77.384881278808507,12.8590767019954],[77.384998864331195,12.859048746838001],[77.385239184524096,12.8589916130927],[77.385816674650002,12.8588521415716],[77.385816698779493,12.858852161230599],[77.385831782922807,12.8588655621929],[77.386069782443101,12.859077014357],[77.386393802037105,12.859165002104399],[77.386488206961403,12.8591906266136],[77.386585305821995,12.859201470365999],[77.386675623826306,12.8592659692411],[77.3872145084528,12.859605533718],[77.387384049078307,12.8597059164681],[77.387519974533603,12.8597864383882],[77.387611840754403,12.859840880496501],[77.387835921473595,12.8599738125187],[77.3878519516593,12.859983329311101],[77.387861143386701,12.859988786293799],[77.387868178183396,12.859992962682],[77.387931284293998,12.859968259993099],[77.388009193660395,12.859937763425201],[77.388046355036195,12.8599232163709],[77.388386048545698,12.8597930183932],[77.388495349680099,12.8597471118357],[77.388496053786795,12.8597477514739],[77.388724926950104,12.859955592751801],[77.388995767725604,12.8602711624746],[77.389050039589904,12.860333665698199],[77.389154173863304,12.8604535935601],[77.3894573480964,12.8604366232505],[77.389829453455604,12.8604140655692],[77.389878401788806,12.8605413577462],[77.390151385718198,12.861031012146899],[77.391220023388797,12.8628593524717],[77.391229313795407,12.8628757894554],[77.391489025859698,12.8637163931964],[77.3915268472511,12.8638388094551],[77.391640782892793,12.8642075781716],[77.391702554167196,12.864397033751199],[77.391985320490093,12.865264276414001],[77.392043946768396,12.865324657139899],[77.392106486531006,12.8653889660781],[77.392200665056095,12.865497375744701],[77.392572847316401,12.8659431721182],[77.392572867789397,12.865943194520399],[77.393311226290606,12.8662178156737],[77.393399639258504,12.866362395637699],[77.393540577801801,12.8665918900354],[77.394319444936102,12.866665093773401],[77.394926544572698,12.8667247436082],[77.395150133060298,12.866746711712301],[77.395111582336895,12.867488388063901],[77.395106759437297,12.8675789955021],[77.395029785372898,12.8688055739044],[77.394960401837906,12.869399053838899],[77.394920479074102,12.869726058171899],[77.395195482920499,12.869536576307199],[77.395426091533395,12.8693776827202],[77.395428873123805,12.8693757778787],[77.3954944650811,12.869330711158],[77.3961330601567,12.8688940858277],[77.396139350463599,12.8688912037693],[77.396150018313804,12.868886316431499],[77.397244258533703,12.868230378278801],[77.398088232506197,12.8676740891436],[77.398088259047896,12.867674071732999],[77.398227366128097,12.867578562630399],[77.398227389915803,12.8675785461486],[77.398236663164695,12.867572088461699],[77.398502811178503,12.8673834303776],[77.398646496227002,12.8672825310205],[77.400410987987101,12.866074159019499],[77.401407965669506,12.8658165652728],[77.402081641444198,12.865643260608],[77.402094424191802,12.8656697912628],[77.402261514425405,12.8660165977434],[77.401812373530305,12.8676613954188],[77.401843905391402,12.868029141944501],[77.401921235677605,12.868906873624701],[77.401954337452295,12.8692725871118],[77.402342242352205,12.8703207460433],[77.402591043851601,12.8709895991626],[77.402849405625403,12.8713067186013],[77.402987116919206,12.8714757494515],[77.403677297657495,12.872322887700401],[77.4050489815302,12.873687222169201],[77.405260269025106,12.874114879775901],[77.406609170775297,12.874597887247599],[77.4081923190151,12.875567094553601],[77.408289620657598,12.8755906338664],[77.4089937951574,12.8757609903336],[77.409942930791502,12.8759906076198],[77.410390519812694,12.8760540186701],[77.410525503968998,12.876073142478701],[77.410954558021999,12.8761339744902],[77.411379962043895,12.876194289103401],[77.411551507534099,12.8761632510487],[77.412658802347707,12.8759629039037],[77.413662483016296,12.8757815114247],[77.414659683417696,12.875517986151999],[77.415439609428503,12.875283531608201],[77.415733545953202,12.875254441588201],[77.415960443213294,12.8752319854663],[77.416102971891107,12.875124892898],[77.415729183870297,12.8739688850207],[77.415266366100596,12.8723996512835],[77.415287133097905,12.8717412320776],[77.417641873617796,12.871454799008999],[77.417908082303498,12.8714269923386],[77.418004431475296,12.871417708246],[77.4183847142357,12.8713981665859],[77.418546068250507,12.8713898752156],[77.420455968993494,12.8715245153724],[77.4210441744343,12.8718202061635],[77.421988629871393,12.872310088838001],[77.423550742665299,12.8731517135388],[77.424347571774106,12.8736120712447],[77.424508058732002,12.873582698852401],[77.425400583204095,12.873344313403701],[77.426744321390601,12.874969948819601],[77.426837189649206,12.8750751717865],[77.427212097907599,12.8751501815537],[77.427337494578097,12.8751752701728],[77.427589174698298,12.875225624225299],[77.427673924906102,12.875242922255101],[77.427753416151106,12.875297673930101],[77.427917716566299,12.8754108387499],[77.427963138262498,12.8754417752014],[77.428125069181405,12.875552064157199],[77.428147500828601,12.8754998626593],[77.428169467403094,12.875448714487099],[77.428196935308705,12.8753848060619],[77.428226714963799,12.8753155615577],[77.428263324308503,12.8752304390036],[77.428283974585099,12.875182422969701],[77.428346554920395,12.875176786549501],[77.428491218143904,12.8751637561592],[77.429543110934702,12.875077349064799],[77.429582009506007,12.875074153834699],[77.430369038174405,12.8750095008094],[77.431301046678698,12.8749113110762],[77.431241439754501,12.874702386217701],[77.431193609263502,12.874534740584499],[77.431127183679195,12.874301914298201],[77.430915608042596,12.873581394463701],[77.4308399285825,12.8731948582789],[77.430758064352801,12.872776594587],[77.4307247885382,12.872606580125099],[77.430569223085399,12.871806762634799],[77.430568594380603,12.8714711140438],[77.430568292736396,12.871310242841799],[77.430568312347106,12.870706726608701],[77.430573371229599,12.8705686635],[77.430578480744003,12.870415785431501],[77.430585620313494,12.8701890699777],[77.430530861462799,12.870192657212399],[77.430397652158604,12.8702013841317],[77.430206362263206,12.870210075937701],[77.430072153489306,12.8702154354235],[77.430031878927096,12.8702170097548],[77.4291018653348,12.8702536260417],[77.428865957831704,12.870236961443901],[77.428457248124602,12.8702858366714],[77.428238499969297,12.8703119985878],[77.427867148005006,12.870272631706801],[77.426297057609105,12.8701111007795],[77.424664246512407,12.870112989377599],[77.424585695696805,12.8701194176336],[77.424328398497707,12.870140711432899],[77.423946152856004,12.8700849724825],[77.423766676833097,12.870058992341701],[77.423558169898598,12.870028948084499],[77.423534185550906,12.8700255412801],[77.423390511853995,12.8700051325904],[77.422513659494399,12.8698805766444],[77.420899129530397,12.869833967826301],[77.420656462311399,12.8698183890611],[77.418844601233801,12.869526480234599],[77.418895811536103,12.869449841847199],[77.418948729584599,12.869370648714201],[77.418769497670098,12.8693493349714],[77.420152242330104,12.867454923393501],[77.420329020995496,12.8672177020986],[77.420393934648899,12.867130593176199],[77.420411492099802,12.867175615716301],[77.420415173357199,12.8671850563354],[77.420415641948594,12.867169297722899],[77.420637409145101,12.8668290917097],[77.420770535081701,12.8666248662529],[77.420842922444194,12.8665276588422],[77.420860141931499,12.866493022166001],[77.420874356102502,12.8664608446994],[77.421201295476607,12.8657207148932],[77.421207527159893,12.8657065899754],[77.421209180158897,12.8657028421453],[77.421209799361407,12.8657014386353],[77.421210124743496,12.865700701947899],[77.421211948990702,12.865696565817],[77.421212063509401,12.865696311765401],[77.421214781823195,12.865690145233099],[77.421217327133704,12.8656843760534],[77.421219853505406,12.8656786486118],[77.421220704334104,12.865676718903799],[77.421222134724104,12.8656734773104],[77.421336655345698,12.8654138824544],[77.421340312859499,12.8654055911343],[77.421435025221299,12.865190898592701],[77.421461999092202,12.8651298920761],[77.421520322846007,12.8649979799935],[77.421550877282201,12.8649289214011],[77.421596040097697,12.8648268450016],[77.421631381065197,12.8647468110542],[77.421641732795194,12.8647233695289],[77.421648435054095,12.864708192144001],[77.421781738202199,12.8644063138221],[77.421958129906599,12.864006691767701],[77.422145808248899,12.863581497074],[77.422153404988507,12.8635643389745],[77.422189797632399,12.863497000081701],[77.422193554526501,12.8634900487056],[77.422691170939402,12.8628516890321],[77.422737398544996,12.862792494151099],[77.423107856327803,12.862318114949399],[77.423108361269101,12.862317473281101],[77.424290986659798,12.8608131174925],[77.424343246472603,12.8607470313375],[77.424368116224699,12.8607155811172],[77.424547989656404,12.8604884575814],[77.424556418614401,12.860477814463399],[77.424641097369701,12.860371061627101],[77.424648819508306,12.8603613267833],[77.424712973158194,12.860280543737],[77.424746026737495,12.8602389224858],[77.424902887741098,12.860041756380999],[77.424919380726706,12.8600210246699],[77.424996714687893,12.859924011257],[77.4250284566305,12.859884191138001],[77.425065659531896,12.8598375719203],[77.425209697557804,12.8596639876036],[77.425244978301095,12.859621470179899],[77.4254657738784,12.859356307052],[77.425509516110907,12.859243004300501],[77.425532760184296,12.859182798322101],[77.425582421675301,12.8591733694546],[77.425721390356102,12.8591469843502],[77.425889373072195,12.859115091102201],[77.426036950286004,12.858992799695301],[77.426063396683901,12.858955072309399],[77.4260881263709,12.8589200109059],[77.426095491255197,12.8587684722687],[77.426102943876202,12.858615138376701],[77.426147793745301,12.858597294938701],[77.426235166888702,12.8585687522234],[77.4263337029723,12.8585365633942],[77.426333723056402,12.8585365451375],[77.426479723188805,12.858426232918699],[77.4264800684835,12.8584259414925],[77.426569547224503,12.858364978038299],[77.426992168580497,12.858077040214299],[77.427047589216997,12.8580392813512],[77.427132705424896,12.857984448021201],[77.427182309117896,12.8579443296017],[77.4278448994272,12.857421373868601],[77.4279161562187,12.8573651335238],[77.428010058718698,12.857292358258301],[77.428121308366499,12.8572590898023],[77.428215877196195,12.857230809713],[77.428279982949405,12.8572117910801],[77.429030672997996,12.856874904701799],[77.4290778266393,12.8568537433797],[77.429077878594597,12.8568536877823],[77.429235670385296,12.856783697883801],[77.429246836900106,12.8567583250274],[77.429325805018493,12.8565787550365],[77.429352466839106,12.8565181269164],[77.4292516614303,12.856384081000201],[77.429205711076094,12.8563229779185],[77.429201319337196,12.856317132001299],[77.429115132253301,12.855995575337801],[77.429109604669904,12.8559742748673],[77.429086609708406,12.855885660355],[77.428959212476201,12.8553957590831],[77.428776097310205,12.854749865131399],[77.428717056204405,12.8545257841997],[77.428634496457406,12.854213828050099],[77.428594464700794,12.854062566646499],[77.4284815547026,12.853643477917601],[77.428454803940298,12.8535446961034],[77.428398176677305,12.8533363649269],[77.428194192772494,12.8526103695968],[77.428032859919099,12.852055823585101],[77.428030875673798,12.852020784383001],[77.428011355369307,12.8519844943214],[77.427486443261898,12.8510086003899],[77.427554399695794,12.851011059987],[77.428553282845996,12.8510472087459],[77.431105006003307,12.8510702966951],[77.431199253019699,12.851071149194301],[77.431203913885895,12.8510711909401],[77.431545468781394,12.851074279312799],[77.431566533405999,12.851074469913801],[77.431845248470196,12.8510756030942],[77.431850913813904,12.8510756264831],[77.433056219826497,12.851083851493801],[77.433086537650297,12.8510841838595],[77.433965639230706,12.850842092502299],[77.433966444973294,12.850841900705399],[77.434042528454796,12.8508215040297],[77.434438050967898,12.8507154696764],[77.436933227683895,12.850046532823599],[77.436948242925396,12.850042507248499],[77.4373371412061,12.849939892514501],[77.437407149410703,12.8499037764789],[77.437414759192805,12.849899850387899],[77.437507864248801,12.8498518162335],[77.437661493817998,12.849764353135299],[77.437675921621505,12.849756138748701],[77.437701139606105,12.8497417821523],[77.437342566212294,12.8491460777343],[77.436876856802002,12.8485761243955],[77.436769834433903,12.8484451461619],[77.436694336438805,12.848352748181799],[77.435867022991005,12.8473398455797],[77.435077577397095,12.8463726856378],[77.434352016459997,12.845483239748001],[77.4343249952165,12.845413143274],[77.434302010525997,12.845353520264601],[77.434244474663501,12.8452042646314],[77.434163830554894,12.8449950654235],[77.4339779379482,12.844513632575699],[77.433849402301902,12.8437235461738],[77.433780620426703,12.843302712903],[77.433766670364903,12.8432173616849],[77.433996314336397,12.843015163101301],[77.434356509335998,12.8426978777531],[77.434610485989296,12.842234278012899],[77.434637778235597,12.842184460228401],[77.434852458175598,12.8417925910598],[77.434867599326594,12.840894096837401],[77.434877510808803,12.840305973480501],[77.434768428891402,12.8393971849212],[77.434761709262901,12.839341197794999],[77.434683847751799,12.838692509581],[77.434651526360199,12.838694326274799],[77.434654709929703,12.838713869292199],[77.434656491781894,12.838728318484],[77.434275437367802,12.838744133650399],[77.434122838006502,12.838750859130201],[77.434087270173293,12.838752426652199],[77.434053172256796,12.838753929947201],[77.433614392929002,12.838902741276801],[77.433488543339905,12.838945477693001],[77.432939078839794,12.8391331621789],[77.432387255516701,12.839321651773099],[77.432349959492498,12.8393344507687],[77.432320716117403,12.8393444871312],[77.431613476374494,12.839449870126399],[77.431339916429906,12.8394906311191],[77.430512993035904,12.8396108487368],[77.430499096153099,12.839612869383201],[77.430246629272602,12.8396461099296],[77.430066178532002,12.8396698688348],[77.429955332299997,12.839683371630199],[77.426166963551907,12.837583295076101],[77.425390654957297,12.8371553671426],[77.424733816532594,12.836793041643199],[77.423953182118893,12.836362751423501],[77.423898359740406,12.8363325664972],[77.423850195136794,12.8363060653296],[77.423719972348707,12.836234661409801],[77.422961932395395,12.835819008084499],[77.422929703279806,12.8358015226154],[77.422491623218605,12.835563851856501],[77.422393822387093,12.835478182871601],[77.422309857702402,12.8352509897241],[77.4220828822844,12.8346334180893],[77.422081507667997,12.8346296828378],[77.421978043064001,12.8343484607731],[77.421962935109903,12.8343008221352],[77.421704053117793,12.8334845189544],[77.4216850496734,12.8334245980862],[77.421581652296098,12.8330976608336],[77.421274104476495,12.8322475579991],[77.421186971513706,12.8320058759403],[77.421178549090001,12.8319738449722],[77.420619099016307,12.829828319264101],[77.420580057902598,12.8296587425748],[77.420560912649506,12.8295751633328],[77.420347068144295,12.8286416102525],[77.420335755428795,12.8285919350754],[77.420298758033098,12.8284294802129],[77.420246454255604,12.8281436580217],[77.419905709648305,12.8262366491607],[77.4199690787501,12.8262259116471],[77.420560825136107,12.8261256425901],[77.420560851784302,12.8261256369234],[77.423667080523899,12.825132773342199],[77.423798136580302,12.8250908817732],[77.424422368014902,12.8248913493717],[77.425524031122194,12.8245808446901],[77.425524108312501,12.8245808286176],[77.4255651919147,12.8245661237936],[77.425585245810097,12.8245589742102],[77.425847329248796,12.824465542380301],[77.426050379972907,12.8243935848958],[77.426832030638494,12.824099615002099],[77.427067917510499,12.824010626330599],[77.428116201438797,12.823613304909699],[77.429094668634605,12.823239685220001],[77.429695596033596,12.823022977320999],[77.429732982148394,12.8230095141375],[77.429762952359297,12.822998724407601],[77.429821618510303,12.8229964356773],[77.429917047750607,12.822992712067601],[77.432608797768495,12.822810771983001],[77.432956559799706,12.823022004931101],[77.433144141716994,12.823135942535099],[77.433303653933905,12.823261023859001],[77.433344556472306,12.8232930969743],[77.433347241369404,12.8232952017774],[77.433500931755802,12.8234156763511],[77.433597367252503,12.8232752639135],[77.433604601223195,12.823264685125199],[77.433944916914001,12.822767023618001],[77.434199880501197,12.821812716053801],[77.434718585474599,12.821171216484201],[77.435082514128396,12.8204802738213],[77.435206559332798,12.8198814450186],[77.435024067297107,12.819430706463899],[77.434965095726895,12.8192850528871],[77.434911467103305,12.8191525957587],[77.434474397243306,12.8179984186061],[77.434268947139003,12.817577187111301],[77.434167202946597,12.817368581598499],[77.434118030002296,12.817267762064199],[77.434122718266295,12.817223773019901],[77.434161670640805,12.8168583302695],[77.434197311333193,12.816523952188],[77.434211860351397,12.816467192462801],[77.434394168383804,12.8157559750526],[77.434441669678094,12.8156734864626],[77.434857549346106,12.8149512869335],[77.434896810744604,12.8149034703467],[77.434964508191399,12.814821019765899],[77.435507324909906,12.814159913350601],[77.435864155708302,12.8134333055855],[77.436068302100907,12.813159917093101],[77.436350216684005,12.8127823807769],[77.4363698197714,12.812628226554001],[77.436439927971904,12.8120768988534],[77.436323367844594,12.8114090592564],[77.436313183336694,12.810323711349699],[77.436244655018399,12.809874965120001],[77.436215231545305,12.809682290436401],[77.436269409370396,12.809729980257901],[77.436401380250203,12.8098461449831],[77.436587541820401,12.8100113129868],[77.436622060210098,12.8100420779614],[77.436667550757207,12.810082621575299],[77.438450105723106,12.810151364170901],[77.438814230258302,12.810337908889201],[77.438871284176102,12.810317208575301],[77.438987263987698,12.810275160797],[77.439349859311605,12.810143702245],[77.439544841453397,12.8100729275235],[77.440102818735596,12.809915010880999],[77.440191310325403,12.809889966438501],[77.440258583662697,12.8098707839192],[77.440693959288197,12.809417539699201],[77.440974567705595,12.809123673812399],[77.441733556517704,12.8083288225163],[77.441889654900706,12.8081646215328],[77.441889717006305,12.808164569454799],[77.441913743611295,12.808137441844201],[77.441916406215796,12.808144700572999],[77.443569972934895,12.806913664400399],[77.4436960660247,12.806817489445301],[77.443719987311994,12.806803443226499],[77.443728687380798,12.8067983351684],[77.443812074880398,12.806749411435501],[77.443927649852199,12.806681602149901],[77.443950944777399,12.806673258539099],[77.444006942864306,12.806653200500399],[77.444001170304702,12.806820342728299],[77.443872939625393,12.8069768876962],[77.443851783491795,12.8070027147935],[77.443801813847301,12.8070636344855],[77.443755597557001,12.807119941095801],[77.443770213671201,12.807378682710899],[77.444043069422705,12.8080622808478],[77.444224583454599,12.8084118610614],[77.444379016681594,12.808707974531],[77.444554496440304,12.8091604456458],[77.4446026873036,12.8092847052091],[77.444660903953107,12.809379208478701],[77.444816320720406,12.809631499807301],[77.444833080227696,12.8096587050398],[77.445106308425096,12.8095964599535],[77.445584555168907,12.809487508510401],[77.445766828824404,12.809516647832],[77.446025095357797,12.8095579353395],[77.446173006242802,12.809581581290299],[77.4461921827628,12.8096402720813],[77.4462266043233,12.8097456207541],[77.446251868815907,12.8098229418933],[77.446065195664303,12.810268091379699],[77.445936081104705,12.8110042482857],[77.445874772238597,12.811650331126399],[77.445864490618405,12.8117586848744],[77.445962169143399,12.812305137704399],[77.446012018437798,12.812579580781399],[77.446031377648794,12.8126861581936],[77.446051122955893,12.8127948643581],[77.446204054346694,12.8133905013554],[77.446256274877896,12.8138625021897],[77.446247410390399,12.814272178507],[77.446247660091103,12.8142734375222],[77.446293477356704,12.8145048363622],[77.446448879082197,12.814910978332],[77.446644224908397,12.815134074365],[77.446778487071896,12.8151653800234],[77.446834762900394,12.8151891833965],[77.446845902158799,12.8151938974408],[77.4468757314188,12.815206655300999],[77.446876450216493,12.8152068166728],[77.448225395706004,12.815510613562999],[77.448245805792993,12.815589456739],[77.448249494723399,12.815590369311099],[77.448265920349002,12.8156671569786],[77.448326948963697,12.8159029076916],[77.448509033037595,12.8166242550438],[77.448571267812696,12.816878993009199],[77.448589787646199,12.816954376004899],[77.448756012375895,12.8176309585214],[77.448813762061405,12.8176950443652],[77.448820013617507,12.8177019786151],[77.448967272728694,12.817864919801],[77.448979310188804,12.8180222179091],[77.449238467721699,12.8187335038221],[77.449422905267497,12.8186824612695],[77.450139767756895,12.818485521203399],[77.450261540877605,12.8184520673138],[77.450297816940704,12.8185322323977],[77.450853196520598,12.818463481233699],[77.451356655007999,12.8184011147705],[77.451467691054702,12.818437082201999],[77.451597467913203,12.818479169800201],[77.451597532349496,12.818479168296101],[77.451693305464801,12.8185102750344],[77.451740022183202,12.8184150634468],[77.451762004499798,12.818370262848299],[77.451793950389003,12.818357746563599],[77.451829388104699,12.8182842146747],[77.451874040066201,12.8182665698411],[77.451969120281404,12.8182289647596],[77.452038664058605,12.818201431781],[77.452144746553103,12.818138971789701],[77.452173118062305,12.8181222638738],[77.452279159791999,12.818059785245101],[77.452289133644697,12.8180721104009],[77.452331418803894,12.8181242158897],[77.452515421962104,12.818178220078901],[77.452570273906602,12.818120383964301],[77.452642352561298,12.8180443852176],[77.453098702763796,12.817887966244101],[77.453171596300805,12.8178861442911],[77.453197929141297,12.817907737949501],[77.453237833547007,12.817940463024501],[77.453237858649302,12.817940488089199],[77.453273994678696,12.81791790426],[77.453311176744805,12.8178946655479],[77.453362403331795,12.817862662576699],[77.453312216335704,12.817816919571699],[77.4533130531089,12.817775267976501],[77.453313193053006,12.8177684233197],[77.4533189676538,12.817481047180699],[77.453320155954998,12.817421884566199],[77.453317555648496,12.8174188232588],[77.453320264571602,12.8174164632645],[77.453370927012301,12.817372328424399],[77.453549865924103,12.8172163875319],[77.453613924559207,12.8171605398989],[77.453693472724495,12.8171287678312],[77.453967470824097,12.817019379853299],[77.454046389813001,12.8169878701665],[77.454137363273205,12.8169515586586],[77.454151408020394,12.816945961250401],[77.454151582942899,12.816945864747501],[77.454429112262602,12.8167903723421],[77.454506336650994,12.8167471414795],[77.454558112272096,12.8167181546237],[77.454662835689106,12.8166595302483],[77.454601535450195,12.816638368761399],[77.454706132635593,12.816579169101001],[77.454839666778,12.816402138201299],[77.454908897832297,12.8163104143424],[77.455398928020799,12.8156617323696],[77.455454850959796,12.8155877036159],[77.457544382898703,12.8128887258353],[77.457609191277498,12.812805013826001],[77.459267018041203,12.8108907595908],[77.459684792832803,12.810084965174401],[77.459735936444204,12.809986321481601],[77.459991419833202,12.809498763954],[77.460052006743496,12.809383141407199],[77.4602452543824,12.809006183672601],[77.460305357516305,12.8088890214968],[77.460340821852597,12.8088199197216],[77.460397316438105,12.808709839695601],[77.460605063471306,12.8083473419047],[77.460658612116404,12.8082539043758],[77.4611102007119,12.807330921634801],[77.461790608250197,12.807733473527801],[77.461843940971804,12.807764990278701],[77.461949126237698,12.807822740206101],[77.463644667154696,12.808749465053401],[77.463721451322897,12.8087914324585],[77.463819838122703,12.8088452063659],[77.4646029970298,12.809267729427701],[77.464982111693899,12.8091947979681],[77.466695283652399,12.808968132059199],[77.469298756866806,12.809990004994001],[77.469285455191994,12.810234597725399],[77.469262818352306,12.8106508488623],[77.469383263312196,12.810690508151101],[77.469486992071495,12.8107246636838],[77.4694711020976,12.810987154159999],[77.471084649302298,12.811527750968301],[77.474607261171798,12.811805251601299],[77.476291090168004,12.811937934196701],[77.4763063693579,12.811488190720601],[77.476321516038894,12.8110523888699],[77.476326541131201,12.810805720864201],[77.476328456310895,12.8107117044201],[77.476345046642805,12.809897384403801],[77.476346360846904,12.809833067739399],[77.476987454182705,12.810259166079801],[77.477768480854806,12.8107782630684],[77.478279912232296,12.8111181115358],[77.478782574525496,12.811452131466501],[77.478596794013498,12.8105453221976],[77.477757527868803,12.8064434737916],[77.478573433175399,12.8056559197952],[77.479049995526793,12.805195926942799],[77.479192034051295,12.805058825981799],[77.480099767149895,12.804201362674201],[77.481422356357797,12.802952463503701],[77.4826263685882,12.8024906797021],[77.483122504401507,12.802300470873099],[77.482984489220698,12.802124926594299],[77.482759356043601,12.8018383060685],[77.481997153366294,12.800867927081301],[77.481845300612903,12.800748727257],[77.481696754562194,12.800632122675999],[77.4813673338803,12.800373535377201],[77.480945460759401,12.8000423346831],[77.480211534337101,12.7994660866971],[77.480153177214106,12.7994202705192],[77.480113225106095,12.7994070840726],[77.479704997587405,12.799272381040799],[77.479615428767701,12.7992428255405],[77.479542859161299,12.7992188798197],[77.479516906367394,12.7992103112572],[77.479609856682501,12.799027585301801],[77.479569393089307,12.799013677144499],[77.478991815288396,12.7988156024809],[77.477717814320997,12.798380088404899],[77.476577653850299,12.798487524493799],[77.475843471572603,12.7985899859663],[77.475637639232701,12.7986187128477],[77.475210983717702,12.7986782595415],[77.475068080337707,12.7986981870107],[77.474292349875697,12.798848360287799],[77.473543347233203,12.7990486805929],[77.473412776806995,12.799118231105201],[77.473279887201798,12.799176356639901],[77.471338499754694,12.7980446307685],[77.471296927214496,12.797901630081],[77.471213874815803,12.7978591342237],[77.471142121924203,12.7976324794408],[77.470915786747696,12.7969032258705],[77.4707735517527,12.7965231516255],[77.470537567205795,12.795714751603001],[77.470396046381794,12.795219887588299],[77.470020249494794,12.7939921289955],[77.470004997004494,12.7939417605321],[77.470301089126195,12.7930513654041],[77.470342585811593,12.792926577506501],[77.470648365567897,12.792007042360099],[77.470869939004501,12.7913845871365],[77.470869971334494,12.7913845037092],[77.471174463979494,12.7905503580429],[77.471249997515002,12.7903470501856],[77.471317990791604,12.7902785508197],[77.471318008656894,12.7902784946338],[77.471610237701697,12.789988056335201],[77.471610342413101,12.7898934791572],[77.471611607210306,12.7892913392465],[77.471611793808293,12.7892123542851],[77.471636379596802,12.7891543949696],[77.471636415731695,12.789154324156],[77.471755593587602,12.7888730910954],[77.471780171166699,12.7888150505367],[77.471798060454006,12.788772792182099],[77.471805472929503,12.7887552747477],[77.471809336081606,12.7887461328207],[77.471853796874797,12.7886409099834],[77.4718649633528,12.788614482043201],[77.471868691510707,12.788605658518399],[77.471882469624404,12.7885807312304],[77.472204903664505,12.7884343298934],[77.472221856398903,12.7884264629366],[77.472354023125604,12.7883651263662],[77.472354050591605,12.7883651107487],[77.473042689572395,12.7879692668904],[77.474090941615998,12.7871930125907],[77.474228576561501,12.787111474520801],[77.474265990027504,12.7870893096378],[77.474269669204702,12.7870866178484],[77.474335548441303,12.7870292122787],[77.474614496753503,12.7867861461012],[77.475533869087698,12.7859850281848],[77.475571634058198,12.7859455963043],[77.475722683655903,12.785792113581101],[77.476495004856204,12.7850223314415],[77.476631703133904,12.7849003687438],[77.477900049441502,12.7822119256062],[77.478349003583105,12.780991174652399],[77.478438095121803,12.780758424028701],[77.478524074011702,12.7805339698479],[77.478359627879897,12.779725465639601],[77.478287721785506,12.7793718987418],[77.478272562844097,12.7792864942194],[77.478046164561107,12.7779897461164],[77.477991101925099,12.7776743579191],[77.477977423531698,12.7775932934855],[77.477830524656994,12.7769319448449],[77.477780121749802,12.7766381818293],[77.477722853704904,12.776304405853899],[77.477594599202405,12.7755539374234],[77.477563378837004,12.775381720755201],[77.477541514466793,12.775260911400601],[77.477505612008699,12.7750514594648],[77.4774671894683,12.774827305614499],[77.477453578180203,12.7747484477516],[77.477415392364406,12.7745272217647],[77.477361246623005,12.7742156581256],[77.477342306373103,12.7741066709159],[77.477288845523603,12.773799046462599],[77.477271352623305,12.7736983869389],[77.477271345924706,12.7736983607998],[77.477254242528204,12.7736025278314],[77.477080200523005,12.7726379774259],[77.477050082281494,12.7724710592798],[77.476824522616695,12.771297297564599],[77.476795970798094,12.771148720532301],[77.476784305748097,12.7710922163427],[77.476770308423696,12.771024410221999],[77.476757758092504,12.770967554736201],[77.476383161756999,12.7693059161994],[77.476362396852096,12.7692138055614],[77.476312073265206,12.7689899778268],[77.476012845322401,12.7680581876283],[77.475662938036294,12.767008961536501],[77.475646435241799,12.766969849274799],[77.475630843546,12.7669328887857],[77.475419866200497,12.766666601837599],[77.475082073386801,12.766163819653601],[77.474885733103903,12.7658746811993],[77.474702429623704,12.7656047403212],[77.474686827886103,12.7655817654418],[77.474306931037304,12.7650223090127],[77.4742782650967,12.764980094050401],[77.474227608585196,12.764909170649499],[77.474124104422003,12.7647631185623],[77.474119233783696,12.764742941571001],[77.474079149502401,12.764576523377899],[77.474756751776994,12.7637654496209],[77.4751884458977,12.7634238421794],[77.475424468988905,12.7630701534795],[77.4755755325953,12.7628432680616],[77.475626166195298,12.7627672192351],[77.475640054712798,12.7627491387716],[77.475788846962999,12.7625554437552],[77.475970222690805,12.762319330069399],[77.476266371188402,12.761932720336199],[77.476352757846499,12.7612590428856],[77.476315830956196,12.760658439256201],[77.476245072032896,12.760385925815299],[77.476187370296898,12.7601611521332],[77.476167738975704,12.760084925401699],[77.476118550104701,12.7598953335883],[77.476103914844103,12.759838925726299],[77.476055208115497,12.759651192422499],[77.475961406175301,12.759448682787999],[77.475746339863605,12.7589843398233],[77.475698738826196,12.758881540578599],[77.475608219645295,12.7588261357162],[77.475433473355807,12.758888733129799],[77.4753823075132,12.7592621421073],[77.475345509045098,12.7596103148054],[77.475137083759407,12.7595907524806],[77.475039981764198,12.7593729251842],[77.474842158274896,12.75894089038],[77.474587781441699,12.758794854749199],[77.474623523553404,12.75866717297],[77.474627913707806,12.758651490968999],[77.474685772932204,12.7584448085305],[77.474742435614999,12.758242402831],[77.474793022175604,12.758120377171601],[77.474827031921293,12.7580383367781],[77.474898635462097,12.7578656118444],[77.474919709177797,12.757814777417099],[77.474908047264094,12.757806804672301],[77.474826262850996,12.757750892950201],[77.474822494156797,12.7577483161751],[77.474715447778706,12.7576751705731],[77.474571130335605,12.7576256478857],[77.474535976433401,12.757613588090599],[77.474356418076198,12.757552043329801],[77.473840870192106,12.7572898844343],[77.473900255880693,12.757228922396299],[77.473929410571202,12.757198997562501],[77.473983557500304,12.7571434117419],[77.4739951622539,12.7571062089417],[77.473909598030005,12.7570796795767],[77.473969386427498,12.7570181074988],[77.473998736989898,12.756987881762401],[77.474033261313906,12.7569523219641],[77.4740532457146,12.7569317377861],[77.474109460897594,12.756756831461701],[77.473982316066596,12.7566214420628],[77.473973074104293,12.756611565465301],[77.473972540199,12.7566109949212],[77.473970901280296,12.756609243882],[77.474013617895594,12.7565853314868],[77.474112479747006,12.7565299901058],[77.474238122531702,12.756459531320701],[77.474337290570801,12.7563502864678],[77.474398201435093,12.756276377068501],[77.474459112265293,12.7562024676612],[77.4746760433123,12.755953468798699],[77.474851350472605,12.755536498310899],[77.474908272599393,12.755359583123401],[77.475025390654594,12.755215346438501],[77.475037612630601,12.7552012210306],[77.474832866816499,12.7549775547295],[77.475622772367899,12.754187392271501],[77.476002744606006,12.752564218908701],[77.476540973215705,12.752188636828199],[77.477227810135304,12.752068647613701],[77.478439995355501,12.751501474413899],[77.479193426952094,12.7507174737495],[77.480065317350906,12.7502192275926],[77.481223859369706,12.7497720757663],[77.481962860692903,12.7498329501255],[77.482294071118503,12.7496328575295],[77.482590474842894,12.7494598654635],[77.482878133349004,12.748764498045199],[77.483379931137094,12.748401199896399],[77.483776384107699,12.7481614077717],[77.484463712551502,12.7477814241812],[77.484697261684204,12.7473817984067],[77.485031679639704,12.746712286441801],[77.484902432950307,12.745945534872],[77.484842222508107,12.745390295330299],[77.485141614451805,12.7451872721741],[77.485246601586098,12.7451599081207],[77.485254998327505,12.7450590907406],[77.485281269239394,12.7447379645075],[77.485314415020596,12.744320791312999],[77.485425117950996,12.7438327003987],[77.4854258655553,12.7438316841441],[77.485498239423194,12.743733282273601],[77.485777646752496,12.7433533882134],[77.486204852433602,12.743083403200799],[77.486305051198698,12.743020078809],[77.486330330055694,12.7429786823801],[77.486379261537905,12.7428985503033],[77.486431824066798,12.7428124732825],[77.486455932404397,12.7428041230984],[77.486586575100105,12.7427589070578],[77.486747053968699,12.742703368729],[77.487125207273607,12.742643633759],[77.487145851960307,12.742640373068401],[77.487151091531402,12.7426338220949],[77.487330374299503,12.7424096597464],[77.487485303758305,12.742361318225599],[77.488096976956101,12.742190829923601],[77.488096480600603,12.742309019738499],[77.488104325760204,12.7424430130543],[77.488110498690304,12.742447310821399],[77.488165941091495,12.7424859122803],[77.488243500800195,12.7425399129362],[77.488302647157894,12.742581165657301],[77.488356132074401,12.7426184690634],[77.488400851276893,12.742306405342401],[77.488484537494202,12.7423050016963],[77.488786653362197,12.7422702836233],[77.488860668293,12.742261777997999],[77.489051484591997,12.742252634761799],[77.489052474150895,12.742253681656299],[77.490361666624807,12.742038572010699],[77.490437676561697,12.742026082561299],[77.492175182479798,12.741740586655901],[77.492186661920002,12.7416951203626],[77.492211297345193,12.7415975528474],[77.492252764843101,12.7415948906529],[77.492704627220405,12.741567299860501],[77.493006081291497,12.740383935439301],[77.493086577242906,12.7400841441521],[77.493096229623404,12.7400481973102],[77.493178338541099,12.7400359207641],[77.493927272280303,12.7399231495131],[77.493995527222197,12.7399128718118],[77.494104286038194,12.739896398982401],[77.494253841163101,12.7398881916242],[77.496434568209693,12.7397685081591],[77.496442031562495,12.7397654733044],[77.496775296580793,12.739630763187],[77.500729593075903,12.737996135062099],[77.502684696007606,12.7371879060775],[77.502690836473406,12.7371294516938],[77.502710050059804,12.7369465602664],[77.502837948377802,12.7357291140328],[77.502846452001506,12.7356468967784],[77.503131105993802,12.7356993295425],[77.503712646528996,12.7358065720066],[77.503928662256499,12.735839499767501],[77.504439443651293,12.7359173577728],[77.504790891787593,12.7359710031341],[77.506387727796593,12.7362477063344],[77.506618878746494,12.736290270614999],[77.507407788211097,12.737065042591601],[77.507583671908193,12.737243649666601],[77.507777423404605,12.7374405837108],[77.507939269948295,12.7375987245626],[77.508459610380498,12.738606952349],[77.509013510977397,12.7396778548373],[77.509566918570002,12.7408550885037],[77.510072647695907,12.7419139549439],[77.510548622127999,12.742888202841399],[77.511165875717793,12.7441537304636],[77.511628413126104,12.745089859074101],[77.512243606700693,12.7463582269203],[77.5122790583533,12.7464223971827],[77.512321221007397,12.746498715360101],[77.512502501022297,12.7464323788719],[77.512607301714993,12.746394028608201],[77.512768583606402,12.7467968739144],[77.512889234716894,12.7467072646402],[77.513045026024699,12.7465915553152],[77.513135345745994,12.7465284971817],[77.513209416574995,12.746480215714801],[77.514438258131094,12.745571808538701],[77.515365220896498,12.744905316488699],[77.516302279048503,12.7442189601389],[77.517269739495205,12.743522442117399],[77.5182390712162,12.7428212822548],[77.519355494785998,12.742012684333901],[77.519362934709903,12.7420102923793],[77.519383937448495,12.741994651566101],[77.519550941942697,12.7419393170511],[77.519056418598694,12.7408391290151],[77.518439303618607,12.739465396763],[77.518351821585796,12.7392161022532],[77.518309649935503,12.739095927697999],[77.518243134188893,12.738906379553899],[77.517516399688503,12.7368757850188],[77.517495120090203,12.7368166711528],[77.517109144137805,12.735744785800801],[77.517194623703503,12.735671673855],[77.521783354519997,12.7317467860312],[77.521807655746301,12.731683661346199],[77.5219409879724,12.732027443377],[77.522753485460797,12.734149386511399],[77.522760507134905,12.734168005619299],[77.522949626866804,12.734522332473199],[77.524083053566699,12.736712709115601],[77.524179251011006,12.736898610955601],[77.528406957344401,12.745068289887699],[77.528575083554898,12.7453931651066],[77.528630428063295,12.7454996333077],[77.529733748581904,12.7476221055477],[77.529982062953707,12.748099784012799],[77.531185804437698,12.7504931600969],[77.531247978470404,12.7506167769593],[77.531309396025406,12.7507447504276],[77.531361501126796,12.750853318524401],[77.531364375577397,12.7508593317073],[77.531376802032895,12.7508853225583],[77.531590263962499,12.7513317895908],[77.531608603872598,12.751370148526799],[77.531787178546793,12.751248768307001],[77.531856670882703,12.7512015332464],[77.531959901466706,12.751268977955499],[77.532357858414301,12.7515289794094],[77.532541809690997,12.752191137229101],[77.532560118200294,12.752257040042499],[77.532580748378905,12.752423285271799],[77.532699572748101,12.7527305695201],[77.533334282720602,12.753274902472199],[77.533386764179497,12.753383769868099],[77.533415152395094,12.753902317080501],[77.533215073273695,12.7543019850012],[77.533185606443595,12.7543428891335],[77.533360644305901,12.7544657446646],[77.533420866438107,12.7545538335056],[77.5335471750479,12.7549072178338],[77.534093133891204,12.7550886935073],[77.534116635113307,12.755096505500999],[77.534168728429805,12.755113968031999],[77.534264878631703,12.7552486471264],[77.534275735726098,12.755263855247099],[77.534428734030897,12.755477708843401],[77.534497780776405,12.755550603693001],[77.534704533919694,12.7557686584598],[77.534697771880801,12.755915400459401],[77.535585329483496,12.7547830495547],[77.535914220377293,12.7543668427647],[77.536640944947294,12.753463350959001],[77.539436690288198,12.749994237683699],[77.540950079115504,12.7481156214723],[77.540936886967003,12.7482031004511],[77.540872564834601,12.748629640538001],[77.540834334313004,12.748883162546999],[77.540900413623802,12.748843749939001],[77.540895485233506,12.748875623340499],[77.540812873550394,12.749409100913599],[77.540904120783097,12.7498553854512],[77.540939012922394,12.7500260383179],[77.541268172106001,12.751639162834699],[77.541399908447801,12.7520965949378],[77.542062190467902,12.7543997352587],[77.542140603766796,12.7547342712983],[77.542199483664106,12.754985473921799],[77.543130185940697,12.7589560586141],[77.543213646485498,12.7592199689689],[77.5439210691667,12.761424373202701],[77.543953580345999,12.7615242151267],[77.544135329476106,12.762079591447399],[77.545037356503897,12.7637041423603],[77.545410984014097,12.7650926774475],[77.545446609543006,12.765223883883399],[77.545545605562396,12.765589384287701],[77.545513790401799,12.765941551175899],[77.5456619429049,12.7659905763848],[77.545995320586101,12.766100893270499],[77.545996858690202,12.7661339023257],[77.546008426475694,12.7663820888076],[77.546024953027896,12.766736664260501],[77.545826382260699,12.7666346334232],[77.5459287609726,12.7668724494798],[77.545635038185694,12.767106687916099],[77.545758153305499,12.767661055865901],[77.545815329149804,12.7679175020671],[77.545822668018602,12.7679599660762],[77.546099926872301,12.7695513527107],[77.546277216633001,12.769689041535001],[77.546345847248801,12.769734250700299],[77.547389577994494,12.7704217839227],[77.5484189557626,12.770656009953299],[77.549161426301694,12.7708171131151],[77.549881378437703,12.770858991401299],[77.550551214746406,12.7708790732834],[77.550830982625797,12.771067190064599],[77.551308184803204,12.7718380506504],[77.551682823017501,12.772425239022599],[77.551695579763802,12.772916059245301],[77.551705281387598,12.7732879315473],[77.551677960581003,12.773299994216901],[77.551203707838596,12.773509384950099],[77.549987456882505,12.7739960561302],[77.5494942557538,12.774192564057801],[77.548477685614102,12.774204397456099],[77.547411404318595,12.7741970039277],[77.547117329501702,12.7742015696852],[77.5464541927753,12.774632523391199],[77.545533556874801,12.775206565869301],[77.543849116086406,12.775835722851401],[77.543870700236994,12.775878296194801],[77.544158218634493,12.776445406411099],[77.544382695602707,12.7768884605408],[77.544708941808594,12.7775324027747],[77.545325178439001,12.7793203804209],[77.545914968549397,12.780200555196],[77.546205013135307,12.7807140653353],[77.547083666454895,12.782364605880799],[77.548160298842902,12.783871133006601],[77.549354501186599,12.785206099524499],[77.549435041277107,12.7852961315066],[77.549434489450505,12.7852972815444],[77.548955407556804,12.786296712239899],[77.548862009132193,12.7864917068691],[77.548999393751401,12.7868538314905],[77.548316893247701,12.788617912981],[77.548315411842395,12.788621741772801],[77.548305595399995,12.788639753484199],[77.547625736363599,12.7898872231816],[77.546823675325598,12.7904963078562],[77.546588758568305,12.790674701574],[77.546254579095603,12.790928475373599],[77.545254543622903,12.792405189102199],[77.543736981001999,12.7930899350328],[77.543583338185897,12.7931591303406],[77.543409116273907,12.7932601549672],[77.543485038838,12.7933855149069],[77.543493530014501,12.7933995452451],[77.542334868648595,12.794728416278399],[77.542391093280898,12.794810928573],[77.542416749306199,12.795535481437801],[77.542183522658505,12.7980389822345],[77.542170695756099,12.798172157576801],[77.542160054993104,12.7982823399967],[77.542147859682501,12.7984083564117],[77.542134467500205,12.7985463970184],[77.542716713730997,12.7988686003154],[77.544194740786395,12.799842350551099],[77.545802172694806,12.8007451985677],[77.547498791638205,12.8014049657504],[77.547554866846994,12.8013963841166],[77.549393540157496,12.801114985876699],[77.549646294274197,12.8010580601421],[77.550699047459901,12.800856368211701],[77.551878456694595,12.8005785381682],[77.553031022515896,12.800307025821001],[77.553165474663402,12.800114342820301],[77.553207890452398,12.8000535571628],[77.553229406027199,12.8000674011362],[77.553465678508402,12.800219922565001],[77.553485266277093,12.800232567327599],[77.554222561091905,12.800037432882799],[77.554331696904896,12.7997517108601],[77.554343599363307,12.7997205503823],[77.554835046941307,12.7997459770119],[77.555829969041199,12.799625311854999],[77.555996627171297,12.799605099155601],[77.555678120073097,12.7986110153944],[77.555037702268294,12.79734389383],[77.554250947308901,12.7947085594851],[77.553782510169498,12.793153165224799],[77.553222173436595,12.791375512058099],[77.5530541779342,12.7904839140779],[77.553019878579804,12.790300751388701],[77.552905460381595,12.789686293275601],[77.553058161004202,12.789641211587],[77.556262918808898,12.788689684930899],[77.556397857895504,12.7886576942945],[77.5568256316527,12.7885563377843],[77.558201953195706,12.7882309849614],[77.559563150012295,12.7878461951048],[77.559619698177102,12.7878302093171],[77.561325420661106,12.7879318774475],[77.562143660722498,12.7887549493049],[77.562185885963999,12.788797423597799],[77.563334459125599,12.7885299682811],[77.563562449440894,12.788149503616999],[77.562448932753995,12.786946251648001],[77.562268859124899,12.786739354950001],[77.562088286830999,12.784330217633499],[77.561223934890194,12.783261824418901],[77.558042439509194,12.7825131178394],[77.557889018796402,12.7824770119843],[77.5575014410298,12.7821193208338],[77.556352933970302,12.7810593659452],[77.556222953795299,12.779370295691599],[77.556178736330295,12.777308466873],[77.556895581268506,12.7756628162354],[77.557247733585896,12.774059288264001],[77.557686829611001,12.7725488297304],[77.557742397108299,12.7723580141865],[77.558680922262695,12.769054452233],[77.558608725789895,12.766510498841599],[77.558576764004499,12.7653491707567],[77.559641369783506,12.764375390687],[77.561499264498195,12.762440195981],[77.562299983090099,12.7616358959345],[77.562560152974299,12.761374561649999],[77.563144178484393,12.7607879180142],[77.564799239710595,12.759950348576099],[77.566296761078306,12.759284712848499],[77.566412817970502,12.759233125787301],[77.566659317909298,12.759477168385001],[77.567747742191997,12.7602476998848],[77.569520438079195,12.761039387195799],[77.570519334902698,12.7620341337715],[77.570743590024506,12.762257455546401],[77.571691539766903,12.766127048974001],[77.571842024973293,12.7671299282155],[77.571442950781602,12.769746150511001],[77.570854071222399,12.771647637329],[77.570906964624001,12.773928695289801],[77.570949974884897,12.7770884335907],[77.571413177856499,12.7788785505743],[77.572354012137893,12.7803925958034],[77.573537863760905,12.781626161195399],[77.573880215905007,12.7819881583351],[77.574702113916899,12.7828572127685],[77.576115591527497,12.784404809853701],[77.577247226988206,12.785894109776301],[77.579326255320794,12.7874852000398],[77.579664192135994,12.787743886388199],[77.579718532253494,12.7877854835056],[77.580243359595201,12.787510077068401],[77.581041358400896,12.7870913200562],[77.581381280504203,12.786913143282],[77.581311355361393,12.7865426398191],[77.581966133796698,12.7862701781395],[77.582267848839194,12.786144708154101],[77.584494440176897,12.7852203201004],[77.586845799805801,12.784073857116899],[77.587062028917202,12.7839684277263],[77.588219491924093,12.7834040662056],[77.591083837536999,12.7809206392708],[77.592129992391506,12.7798296514773],[77.592153055502493,12.7786345588861],[77.592160168330693,12.778266020992801],[77.592168695581904,12.777824175279701],[77.591992918006795,12.777680508327199],[77.592013156172996,12.7769717442846],[77.592037918772704,12.7760498262233],[77.592583713270699,12.7744035246681],[77.592744388405606,12.7739052335306],[77.593329123864706,12.772852045626999],[77.593746954009504,12.7721003922373],[77.594581548552995,12.7705988171633],[77.594806234298304,12.7701787726837],[77.594902872118695,12.769998110063399],[77.5951881170364,12.7694648501425],[77.595494415091395,12.767007063280801],[77.595577925635396,12.766330701964],[77.595591814690906,12.766230550420699],[77.595669364388797,12.765671167984999],[77.595481271803706,12.765658425764901],[77.595171391981296,12.765637399900299],[77.595532253908402,12.765174594935401],[77.596389340060597,12.764074699445001],[77.596443083514799,12.764005730484699],[77.596460432265204,12.763942466918399],[77.596548515807399,12.763621252796],[77.596959966124899,12.762121106894901],[77.597190558101303,12.761124877763001],[77.597382218021295,12.760296904174799],[77.597925657554597,12.7580800745841],[77.597949819160604,12.7579815124275],[77.598006625488793,12.7580119264728],[77.598187358936599,12.7581086919038],[77.598430878400706,12.7582390728245],[77.598430933819898,12.7582369284076],[77.598152174344705,12.7578810530411],[77.598032816175504,12.7577286768091],[77.597870177844499,12.757521045091201],[77.597702239984599,12.7573066416239],[77.597274611624201,12.756760691385701],[77.597232885203496,12.7567238309387],[77.596672733086706,12.755746699523501],[77.596549788134794,12.755532232113501],[77.596342344355705,12.7551703622647],[77.596074215982298,12.754702682448499],[77.595991308991103,12.754349972564601],[77.595847973475799,12.7537401882106],[77.595636295332,12.7528267529035],[77.595512586494607,12.7522928652301],[77.595325889937797,12.751530381810801],[77.595176530716799,12.7514014253202],[77.594490514830497,12.7508091382345],[77.594126259283698,12.7504946753693],[77.593647030100897,12.7504458206976],[77.592815709037197,12.750361069003899],[77.592204056701604,12.750305928982],[77.590721233750003,12.750157393338],[77.588845256213006,12.750715086875701],[77.588220776789797,12.7509561764341],[77.588040249523203,12.751025871223099],[77.587244602798805,12.751333038368299],[77.585840816654496,12.751616440269199],[77.585376332649801,12.7517032974855],[77.583570039048396,12.751671899875801],[77.5830543863175,12.7517003057434],[77.582644348198201,12.751713551162201],[77.581793463445706,12.7517621532097],[77.581634568715998,12.751693664284399],[77.580602292740096,12.7512487185965],[77.580301790245798,12.751212178106],[77.577983517956298,12.750930269147601],[77.576547786940495,12.751194341325901],[77.576516825049097,12.7511712797576],[77.576033410916807,12.7508112172988],[77.575477139222002,12.749805552672701],[77.575468337873502,12.749741978008901],[77.575292284630294,12.748484388040801],[77.575014945617596,12.748221050997699],[77.573520177709,12.7468041321721],[77.572692659052805,12.7457765918811],[77.572442291444702,12.7454657050669],[77.571627525056698,12.7444539827043],[77.570639379669004,12.742820315483099],[77.569902998053905,12.7404536447449],[77.569563707439698,12.739414336540801],[77.569672897600896,12.7391396492813],[77.5693507045941,12.7382524682791],[77.5691539052428,12.737809154640001],[77.569060872836701,12.7375995881431],[77.568963790213004,12.737380897984499],[77.567993630499203,12.735443309833],[77.568408817067507,12.7344857960636],[77.568662778905505,12.7344151264767],[77.570066003519401,12.7340250257515],[77.571698537463902,12.733649234966901],[77.572204143605205,12.7331145604208],[77.572750452960307,12.7325348820518],[77.5727946675391,12.7324879672957],[77.571852688877399,12.731017427580101],[77.570981164932604,12.730196460999499],[77.570888104221694,12.7301712855619],[77.570762744074599,12.7301816751222],[77.570634037943293,12.730212007641899],[77.569305312260894,12.7305251518495],[77.568426095140097,12.7307393987036],[77.566743512597597,12.7311396256351],[77.5667433445835,12.731139666113499],[77.566743184815195,12.731139702898099],[77.562963867563695,12.7320371270654],[77.562450877245297,12.732159672849701],[77.559733900001206,12.7314814005487],[77.559439199938595,12.7314078288302],[77.558080253991093,12.7310685646974],[77.557611275325499,12.7309516063755],[77.557595477771798,12.730947669921401],[77.557590382393201,12.7309464398441],[77.557585301738598,12.730945209624499],[77.557585287065194,12.730945123033001],[77.557584451772797,12.7309386441797],[77.557231094706907,12.728189173760301],[77.557143502141599,12.727507596839599],[77.5574486875053,12.726633868284001],[77.557572118943597,12.726280490922599],[77.558821405435296,12.722712835038999],[77.559254714097307,12.721472632984399],[77.559181943983802,12.719800762875501],[77.559179977070301,12.7197565822683],[77.559156391329196,12.7192290339579],[77.559123550925406,12.718101150671901],[77.559120807183007,12.7179432811326],[77.559109158535193,12.717007747121199],[77.559097643801607,12.7160828365702],[77.559097637331007,12.7157954866802],[77.559097630467093,12.715448856421]]],[[[77.551481343324198,12.7939042872733],[77.551496936838305,12.793982192613999],[77.551623764698604,12.7946158375377],[77.551706329640297,12.794612207249401],[77.552393381033198,12.7945819962694],[77.552570086490107,12.7945742264088],[77.552578938602196,12.7945952601806],[77.552717569587102,12.794924650565299],[77.552751174866103,12.7950044962364],[77.551670357409705,12.7952591541367],[77.551597377487099,12.795276349393299],[77.551606896549004,12.7953164725261],[77.551786109759306,12.7960718476137],[77.551817859705096,12.7960723070869],[77.552292423024099,12.796079178013001],[77.552291623676993,12.796108525084399],[77.552290849037306,12.7961369422445],[77.552278162517993,12.7966025462171],[77.552324030710395,12.796605306382],[77.552600709959606,12.796621952335199],[77.552676752862595,12.7966265278157],[77.552683929056101,12.797273488050299],[77.551358402428605,12.7977560190684],[77.551027825368294,12.7978763580777],[77.550931052014903,12.7979115857582],[77.550926159589494,12.797902206315699],[77.550505214086499,12.797095245802],[77.550449242182907,12.7970164665194],[77.550307019193895,12.796816291548],[77.550642069068999,12.7965919793761],[77.549877931664795,12.7954203293804],[77.549874150889593,12.795415937152899],[77.549546533118999,12.7950352874981],[77.549541002150804,12.795028861318301],[77.549312297403006,12.7942158580656],[77.549306390868097,12.7941948624863],[77.550117430094005,12.7939888436222],[77.5514135245962,12.7939084919994],[77.551481343324198,12.7939042872733]]]]} \ No newline at end of file diff --git a/Backend/crates/user/src/db/database.rs b/Backend/crates/user/src/db/database.rs new file mode 100644 index 0000000..6c5cbe9 --- /dev/null +++ b/Backend/crates/user/src/db/database.rs @@ -0,0 +1,22 @@ +use diesel::prelude::*; +use diesel::r2d2::{self, ConnectionManager}; +use dotenv::dotenv; + +pub type DBPool = r2d2::Pool>; + +// Struct for maintaining DB pool connections +pub struct Database { + pub pool: DBPool, +} + +impl Database { + pub fn new() -> Self { + dotenv().ok(); + let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set"); + let manager = ConnectionManager::::new(database_url); + let pool: DBPool = r2d2::Pool::builder() + .build(manager) + .expect("Failed to create pool."); + Database { pool } + } +} diff --git a/Backend/crates/user/src/db/mod.rs b/Backend/crates/user/src/db/mod.rs new file mode 100644 index 0000000..aac853f --- /dev/null +++ b/Backend/crates/user/src/db/mod.rs @@ -0,0 +1,2 @@ +pub mod database; +pub mod schema; diff --git a/Backend/src/db/schema.rs b/Backend/crates/user/src/db/schema.rs similarity index 84% rename from Backend/src/db/schema.rs rename to Backend/crates/user/src/db/schema.rs index 5c3306f..5e3cf30 100644 --- a/Backend/src/db/schema.rs +++ b/Backend/crates/user/src/db/schema.rs @@ -1,6 +1,6 @@ // @generated automatically by Diesel CLI. -pub mod school_trips { +pub mod school_trips_user { pub mod sql_types { #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "role_type"))] @@ -11,7 +11,7 @@ pub mod school_trips { use diesel::sql_types::*; use super::sql_types::RoleType; - school_trips.auth (id) { + school_trips_user.auth (id) { #[max_length = 255] id -> Varchar, mobile_number -> Varchar, @@ -31,7 +31,7 @@ pub mod school_trips { use diesel::sql_types::*; use super::sql_types::RoleType; - school_trips.users (id) { + school_trips_user.users (id) { #[max_length = 255] name -> Nullable, created_at -> Timestamptz, @@ -42,5 +42,8 @@ pub mod school_trips { } } - diesel::allow_tables_to_appear_in_same_query!(auth, users,); + diesel::allow_tables_to_appear_in_same_query!( + auth, + users, + ); } diff --git a/Backend/crates/user/src/handlers/auth/auth.rs b/Backend/crates/user/src/handlers/auth/auth.rs new file mode 100644 index 0000000..b3e2215 --- /dev/null +++ b/Backend/crates/user/src/handlers/auth/auth.rs @@ -0,0 +1,60 @@ +use crate::storage::models; +use crate::storage::models::auth::{Auth, AuthResponse}; +use crate::storage::result::QueryResult; +// use crate::tools::utils::get_current_time; +use crate::ServerState; +use actix_web::web::{self}; +use actix_web::HttpResponse; +use base64::{engine::general_purpose::STANDARD, Engine as _}; +use common::tools::utils::{get_current_time, get_exipry_from_minutes}; + +pub fn handle_auth( + state: web::Data, + req: web::Json, +) -> HttpResponse { + let mobile_hash = STANDARD.encode(req.mobile_number.clone()); + let id = uuid::Uuid::new_v4().to_string(); + let auth_filter = Auth::get_by_mobile(mobile_hash.clone(), &state.data.pool); + match auth_filter { + QueryResult::Record(record) => match record { + Some(existing_user) => { + let updated_auth = Auth { + token: id.clone(), + updated_at: get_current_time(), + token_expiry: get_exipry_from_minutes(state.config.auth_timeout), + ..existing_user + }; + updated_auth.update(&state.data.pool); + let res = AuthResponse { auth_id: id }; + return HttpResponse::Ok().json(res); + } + None => { + let auth = Auth { + id: uuid::Uuid::new_v4().to_string().to_owned(), + token: id.clone(), + created_at: get_current_time(), + updated_at: get_current_time(), + mobile_number: mobile_hash.clone(), + country_code: req.country_code.clone(), + otp: state.config.default_otp.clone(), + role: req.role.to_owned(), + token_expiry: get_exipry_from_minutes(state.config.auth_timeout), + }; + match auth.insert(&state.data.pool) { + QueryResult::Success => { + let res = AuthResponse { + auth_id: id.clone(), + }; + return HttpResponse::Ok().json(res); + } + QueryResult::Failed(err) => { + HttpResponse::InternalServerError().body(err.to_string()) + } + _ => HttpResponse::InternalServerError().body("INTERNAL_ERROR"), + } + } + }, + QueryResult::Failed(err) => HttpResponse::InternalServerError().body(err.to_string()), + _ => HttpResponse::InternalServerError().body("INTERNAL_ERROR"), + } +} diff --git a/Backend/crates/user/src/handlers/auth/auth_verify.rs b/Backend/crates/user/src/handlers/auth/auth_verify.rs new file mode 100644 index 0000000..890f267 --- /dev/null +++ b/Backend/crates/user/src/handlers/auth/auth_verify.rs @@ -0,0 +1,80 @@ +use crate::storage::models; +use crate::storage::models::auth::{Auth, VerifyAuthResponse}; +use crate::storage::models::user::User; +use crate::storage::result::QueryResult; +use crate::ServerState; +use actix_web::web::{self}; +use actix_web::HttpResponse; +use common::tools::contants::ONEWEEK; +use common::tools::session_utils::SessionToken; +use common::tools::utils::{get_current_time, get_exipry_from_minutes, is_expired}; + +pub fn handle_verify_auth( + state: web::Data, + req: web::Json, + token: String, +) -> HttpResponse { + match Auth::get_by_token(token.to_owned(), &state.data.pool) { + QueryResult::Record(existing_token) => match existing_token { + Some(auth) => { + let expiry_time = auth.token_expiry; + if is_expired(expiry_time) { + HttpResponse::BadRequest().body("Token Expired - ".to_string() + &token) + } else { + if auth.otp == req.otp { + let existing_user = + User::get_by_mobile(&auth.mobile_number, &state.data.pool); + match existing_user { + QueryResult::Record(user) => { + let response: VerifyAuthResponse; + match user { + Some(register_user) => { + let upadated_user = User { + updated_at: get_current_time(), + ..register_user + }; + response = VerifyAuthResponse { + session_token: SessionToken::new( + upadated_user.id.clone(), + get_exipry_from_minutes(ONEWEEK).and_utc().timestamp(), + ) + .encode(state.config.jwt_secret.clone()), + user: upadated_user.to_owned() + }; + upadated_user.update(&state.data.pool); + } + None => { + let user = User { + name: None, + updated_at: get_current_time(), + created_at: get_current_time(), + id: uuid::Uuid::new_v4().to_string(), + mobile_number: auth.mobile_number.to_owned(), + role: auth.role.to_owned(), + }; + response = VerifyAuthResponse { + session_token: SessionToken::new( + user.id.clone(), + get_exipry_from_minutes(ONEWEEK).and_utc().timestamp(), + ) + .encode(state.config.jwt_secret.clone()), + user: user.to_owned() + }; + user.insert(&state.data.pool); + } + } + HttpResponse::Ok().json(response) + } + _ => HttpResponse::BadRequest().finish(), + } + } else { + HttpResponse::BadRequest() + .body("Wrong OTP - ".to_string() + &req.otp.to_owned()) + } + } + } + None => HttpResponse::BadRequest().body("Invalid Token - ".to_string() + &token), + }, + _ => HttpResponse::InternalServerError().body("INTERNAL_ERROR"), + } +} diff --git a/Backend/crates/user/src/handlers/auth/mod.rs b/Backend/crates/user/src/handlers/auth/mod.rs new file mode 100644 index 0000000..9faa8de --- /dev/null +++ b/Backend/crates/user/src/handlers/auth/mod.rs @@ -0,0 +1,2 @@ +pub mod auth; +pub mod auth_verify; diff --git a/Backend/crates/user/src/handlers/error_handler/common_error_handler.rs b/Backend/crates/user/src/handlers/error_handler/common_error_handler.rs new file mode 100644 index 0000000..e51e2ac --- /dev/null +++ b/Backend/crates/user/src/handlers/error_handler/common_error_handler.rs @@ -0,0 +1,12 @@ +// TODO: Added generic error handler +// pub fn check_db_response_and_handle(db_response: QueryResult, get_response_closure: F) -> HttpResponse +// where T: Fn(T) -> R +// { +// let _ = get_response_closure; +// match db_response { +// QueryResult::Success => HttpResponse::Ok().json(get_response_closure()), +// QueryResult::Failed(_) => todo!(), +// QueryResult::Record(_) => todo!(), +// QueryResult::Records(_) => todo!(), +// } +// } diff --git a/Backend/crates/user/src/handlers/error_handler/mod.rs b/Backend/crates/user/src/handlers/error_handler/mod.rs new file mode 100644 index 0000000..7929c95 --- /dev/null +++ b/Backend/crates/user/src/handlers/error_handler/mod.rs @@ -0,0 +1 @@ +pub mod common_error_handler; diff --git a/Backend/crates/user/src/handlers/geometry/mod.rs b/Backend/crates/user/src/handlers/geometry/mod.rs new file mode 100644 index 0000000..69ceacc --- /dev/null +++ b/Backend/crates/user/src/handlers/geometry/mod.rs @@ -0,0 +1 @@ +pub mod serviceability; diff --git a/Backend/crates/user/src/handlers/geometry/serviceability.rs b/Backend/crates/user/src/handlers/geometry/serviceability.rs new file mode 100644 index 0000000..fd91dc0 --- /dev/null +++ b/Backend/crates/user/src/handlers/geometry/serviceability.rs @@ -0,0 +1,19 @@ +use crate::{ + storage::models::geometry::ServiceabilityRequest, + common::tools::polygon_utils::geo_json::get_available_shape_files, web, HttpResponse, ServerState, +}; +use geo::{coord, Intersects}; + +pub fn origin_serviceability( + _: web::Data, + req: web::Json, +) -> HttpResponse { + let areas = get_available_shape_files(); + for area in areas { + return HttpResponse::Ok().json( + area.get_polygon() + .intersects(&coord! {x: req.point.lon, y: req.point.lat}), + ); + } + return HttpResponse::Ok().json(false); +} diff --git a/Backend/crates/user/src/handlers/mod.rs b/Backend/crates/user/src/handlers/mod.rs new file mode 100644 index 0000000..2939e69 --- /dev/null +++ b/Backend/crates/user/src/handlers/mod.rs @@ -0,0 +1,3 @@ +pub mod auth; +pub mod error_handler; +pub mod geometry; diff --git a/Backend/crates/user/src/handlers/user/design.md b/Backend/crates/user/src/handlers/user/design.md new file mode 100644 index 0000000..a3de08f --- /dev/null +++ b/Backend/crates/user/src/handlers/user/design.md @@ -0,0 +1,18 @@ +User table - + Once otp is verified we have to create the user. + We are going to use JWT using mobile number and unique API key with expiry of one month. + +User table will consist of + name : Varchar(255) + created_at : TimeStampz + updated_at : TimeStampz + sessionToken : Varchar + mobileNumber : Varchar + role : varchar + +JWT - +{ + mobileNumber :: String, + session_expiry_time :: UTC, + id:: String +} \ No newline at end of file diff --git a/Backend/crates/user/src/main.rs b/Backend/crates/user/src/main.rs new file mode 100644 index 0000000..04b7464 --- /dev/null +++ b/Backend/crates/user/src/main.rs @@ -0,0 +1,43 @@ +extern crate diesel; +extern crate diesel_migrations; +extern crate common; +use actix_web::{web, App, HttpResponse, HttpServer, Result}; +use serde; +use types::ServerState; +mod db; +mod handlers; +mod routes; +mod storage; +mod transformers; +mod types; + +#[derive(serde::Deserialize, serde::Serialize)] +pub struct Response { + pub message: String, +} +/// 404 errors for unknown endpoints +async fn not_found() -> Result { + let response = Response { + message: "Resource not found".to_string(), + }; + Ok(HttpResponse::NotFound().json(response)) +} + +/// actix's main function which starts the server and adds the listners. +#[actix_web::main] +async fn main() -> std::io::Result<()> { + let server_state = ServerState::new(); // creating the server state + let app_data: web::Data<_> = web::Data::new(server_state); + HttpServer::new( + move || { + App::new() + .app_data(app_data.clone()) + .configure(routes::routes::add_all_routes) // adding all the endpoints + .default_service(web::route().to(not_found)) // sending 404 is route is not defined. + .wrap(actix_web::middleware::Logger::default()) + }, // middleware to log the API calls. TODO need to imporve. + ) + .bind(("127.0.0.1", 8844))? // Server Port and Host + .run() + .await +} diff --git a/Backend/crates/user/src/middlewares/middleware.rs b/Backend/crates/user/src/middlewares/middleware.rs new file mode 100644 index 0000000..e69de29 diff --git a/Backend/crates/user/src/middlewares/mod.rs b/Backend/crates/user/src/middlewares/mod.rs new file mode 100644 index 0000000..f35d8d4 --- /dev/null +++ b/Backend/crates/user/src/middlewares/mod.rs @@ -0,0 +1 @@ +pub mod middleware; \ No newline at end of file diff --git a/Backend/crates/user/src/routes/auth.rs b/Backend/crates/user/src/routes/auth.rs new file mode 100644 index 0000000..8a5bdba --- /dev/null +++ b/Backend/crates/user/src/routes/auth.rs @@ -0,0 +1,25 @@ +use crate::{ + handlers::auth::{auth::handle_auth, auth_verify::handle_verify_auth}, + storage::models, + ServerState, +}; +use actix_web::{post, web, HttpResponse}; + +/// Handler for auth Endpoint +#[post("/auth")] +pub async fn create_auth( + state: web::Data, + json_payload: web::Json, +) -> HttpResponse { + handle_auth(state, json_payload) +} + +/// Handler for auth/verify Endpoint +#[post("/auth/{auth_id}/verify")] +pub async fn verify_auth( + state: web::Data, + json_payload: web::Json, + path: web::Path, +) -> HttpResponse { + handle_verify_auth(state, json_payload, path.into_inner()) +} diff --git a/Backend/crates/user/src/routes/mod.rs b/Backend/crates/user/src/routes/mod.rs new file mode 100644 index 0000000..a51c7dd --- /dev/null +++ b/Backend/crates/user/src/routes/mod.rs @@ -0,0 +1,4 @@ +pub mod auth; +pub mod routes; +pub mod serviceability; +pub mod session; diff --git a/Backend/crates/user/src/routes/routes.rs b/Backend/crates/user/src/routes/routes.rs new file mode 100644 index 0000000..295f24c --- /dev/null +++ b/Backend/crates/user/src/routes/routes.rs @@ -0,0 +1,12 @@ +use actix_web::web::{self}; + +/// Adding all the endpoints +pub fn add_all_routes(cfg: &mut web::ServiceConfig) { + cfg.service( + web::scope("/api") + .service(super::auth::create_auth) + .service(super::auth::verify_auth) + .service(super::session::verify_session) + .service(super::serviceability::serviceability), + ); +} diff --git a/Backend/crates/user/src/routes/serviceability.rs b/Backend/crates/user/src/routes/serviceability.rs new file mode 100644 index 0000000..38e32da --- /dev/null +++ b/Backend/crates/user/src/routes/serviceability.rs @@ -0,0 +1,15 @@ +use actix_web::{get, web, HttpResponse}; + +use crate::{ + handlers::geometry::serviceability::origin_serviceability, + storage::models, + types::ServerState, +}; + +#[get("origin/serviceability")] +pub async fn serviceability( + state: web::Data, + req: web::Json, +) -> HttpResponse { + return origin_serviceability(state, req); +} diff --git a/Backend/crates/user/src/routes/session.rs b/Backend/crates/user/src/routes/session.rs new file mode 100644 index 0000000..8eb0959 --- /dev/null +++ b/Backend/crates/user/src/routes/session.rs @@ -0,0 +1,27 @@ +use actix_web::{get, http::header::AUTHORIZATION, web, HttpRequest, HttpResponse}; + +use crate::{ + common::tools::{session_utils::SessionToken, utils::get_token_from_bearer}, + types::ServerState, +}; + +#[get("/verifySession")] +pub async fn verify_session(state: web::Data, req: HttpRequest) -> HttpResponse { + let headers = req.headers(); + if headers.contains_key(AUTHORIZATION) { + match headers.get(AUTHORIZATION) { + Some(token) => { + match SessionToken::decode( + get_token_from_bearer(token.to_str().unwrap().to_owned()), + state.config.jwt_secret.to_owned(), + ) { + Some(_) => HttpResponse::Ok().body("Authorized").into(), + None => HttpResponse::Unauthorized().body("UnAuthorized").into(), + } + } + None => HttpResponse::Unauthorized().into(), + } + } else { + HttpResponse::Unauthorized().into() + } +} diff --git a/Backend/crates/user/src/storage/mod.rs b/Backend/crates/user/src/storage/mod.rs new file mode 100644 index 0000000..4e930e6 --- /dev/null +++ b/Backend/crates/user/src/storage/mod.rs @@ -0,0 +1,3 @@ +pub mod models; +pub mod queries; +pub mod result; diff --git a/Backend/src/storage/models/auth.rs b/Backend/crates/user/src/storage/models/auth.rs similarity index 95% rename from Backend/src/storage/models/auth.rs rename to Backend/crates/user/src/storage/models/auth.rs index 2802689..c01f4b1 100644 --- a/Backend/src/storage/models/auth.rs +++ b/Backend/crates/user/src/storage/models/auth.rs @@ -7,7 +7,7 @@ use super::user::{Role, User}; /// Auth table sturct #[derive(AsChangeset, Queryable, Insertable)] -#[diesel(table_name = db::schema::school_trips::auth)] +#[diesel(table_name = db::schema::school_trips_user::auth)] pub struct Auth { pub id: String, pub mobile_number: String, diff --git a/Backend/crates/user/src/storage/models/geometry.rs b/Backend/crates/user/src/storage/models/geometry.rs new file mode 100644 index 0000000..1752e84 --- /dev/null +++ b/Backend/crates/user/src/storage/models/geometry.rs @@ -0,0 +1,18 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Deserialize, Serialize)] +pub struct ServiceabilityRequest { + pub point: LatLong, +} + +#[derive(Deserialize, Serialize)] +pub struct LatLong { + pub lat: f64, + pub lon: f64, +} + +#[derive(Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct ServiceabilityResponse { + pub serviceable: bool, +} diff --git a/Backend/crates/user/src/storage/models/mod.rs b/Backend/crates/user/src/storage/models/mod.rs new file mode 100644 index 0000000..9d22048 --- /dev/null +++ b/Backend/crates/user/src/storage/models/mod.rs @@ -0,0 +1,3 @@ +pub mod auth; +pub mod geometry; +pub mod user; diff --git a/Backend/src/storage/models/user.rs b/Backend/crates/user/src/storage/models/user.rs similarity index 94% rename from Backend/src/storage/models/user.rs rename to Backend/crates/user/src/storage/models/user.rs index a9a2428..d7e28f4 100644 --- a/Backend/src/storage/models/user.rs +++ b/Backend/crates/user/src/storage/models/user.rs @@ -2,7 +2,7 @@ use std::io::Write; use crate::db::{ self, - schema::school_trips::{ + schema::school_trips_user::{ sql_types::RoleType, users::{self}, }, @@ -46,7 +46,7 @@ impl FromSql for Role { /// User table sturct #[derive(AsChangeset, Queryable, Insertable, Selectable, Serialize, Deserialize, Clone)] -#[diesel(table_name = db::schema::school_trips::users)] +#[diesel(table_name = db::schema::school_trips_user::users)] pub struct User { pub name: Option, pub updated_at: NaiveDateTime, diff --git a/Backend/src/storage/queries/auth.rs b/Backend/crates/user/src/storage/queries/auth.rs similarity index 96% rename from Backend/src/storage/queries/auth.rs rename to Backend/crates/user/src/storage/queries/auth.rs index 9d0ab42..2911dd4 100644 --- a/Backend/src/storage/queries/auth.rs +++ b/Backend/crates/user/src/storage/queries/auth.rs @@ -2,8 +2,8 @@ use diesel::ExpressionMethods; use diesel::QueryDsl; use diesel::RunQueryDsl; -use crate::db::schema::school_trips::auth::dsl; -use crate::db::schema::school_trips::auth::{self}; +use crate::db::schema::school_trips_user::auth::dsl; +use crate::db::schema::school_trips_user::auth::{self}; use crate::{ db::database::DBPool, diff --git a/Backend/crates/user/src/storage/queries/mod.rs b/Backend/crates/user/src/storage/queries/mod.rs new file mode 100644 index 0000000..f9bae3d --- /dev/null +++ b/Backend/crates/user/src/storage/queries/mod.rs @@ -0,0 +1,2 @@ +pub mod auth; +pub mod user; diff --git a/Backend/src/storage/queries/user.rs b/Backend/crates/user/src/storage/queries/user.rs similarity index 97% rename from Backend/src/storage/queries/user.rs rename to Backend/crates/user/src/storage/queries/user.rs index 15e9880..04ba99b 100644 --- a/Backend/src/storage/queries/user.rs +++ b/Backend/crates/user/src/storage/queries/user.rs @@ -3,7 +3,7 @@ use diesel::QueryDsl; use diesel::RunQueryDsl; use diesel::SelectableHelper; -use crate::db::schema::school_trips::users::{self}; +use crate::db::schema::school_trips_user::users::{self}; use crate::{ db::database::DBPool, diff --git a/Backend/crates/user/src/storage/result.rs b/Backend/crates/user/src/storage/result.rs new file mode 100644 index 0000000..a8f72bc --- /dev/null +++ b/Backend/crates/user/src/storage/result.rs @@ -0,0 +1,7 @@ +/// Custom return type for DB queries +pub enum QueryResult { + Success, + Failed(String), + Record(T), + Records(Vec), +} diff --git a/Backend/crates/user/src/transformers/auth.rs b/Backend/crates/user/src/transformers/auth.rs new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Backend/crates/user/src/transformers/auth.rs @@ -0,0 +1 @@ + diff --git a/Backend/crates/user/src/transformers/mod.rs b/Backend/crates/user/src/transformers/mod.rs new file mode 100644 index 0000000..0e4a05d --- /dev/null +++ b/Backend/crates/user/src/transformers/mod.rs @@ -0,0 +1 @@ +pub mod auth; diff --git a/Backend/crates/user/src/types.rs b/Backend/crates/user/src/types.rs new file mode 100644 index 0000000..8793625 --- /dev/null +++ b/Backend/crates/user/src/types.rs @@ -0,0 +1,33 @@ +use serde::Deserialize; + +use crate::db::{self, database::Database}; + +/// Servers state to handle the API +pub struct ServerState { + pub data: Database, + pub config: ServerConfig, +} + +impl ServerState { + pub fn new() -> Self { + ServerState { + data: db::database::Database::new(), // creating new db pool + config: ServerConfig::new(), // reading and creating config + } + } +} + +#[derive(Deserialize)] // To deserialize from dhall config file +pub struct ServerConfig { + pub default_otp: String, + pub auth_timeout: i64, + pub jwt_secret: String, +} + +impl ServerConfig { + pub fn new() -> Self { + serde_dhall::from_file("./configs/app.dhall") + .parse() // Reads the dhall config and tries to parse. + .unwrap() + } +}