Skip to content

Instantly share code, notes, and snippets.

@vamshigvk
Created July 5, 2020 06:20
Show Gist options
  • Save vamshigvk/2585046db444f79fc801c1f6b1eb6e4a to your computer and use it in GitHub Desktop.
Save vamshigvk/2585046db444f79fc801c1f6b1eb6e4a to your computer and use it in GitHub Desktop.
Created on Skills Network Labs
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# The Battle of Neighborhoods\n",
"### _Opening a new shopping mall in Hyderabad city of Telangana state, India_\n",
"#### IBM Data Science Capstone Project, by Vamshi Krishna Gundu, June 2020\n",
"\n",
"***"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Table of Content:\n",
"1. Introduction/Business Understanding\n",
"2. Analytic approach\n",
"3. Data requirements\n",
"4. Data Preparation and pre-processing\n",
"5. Data Analysis\n",
"6. Conclusion"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![Namaste Hyderabad](https://camo.githubusercontent.com/6142076fab68a2e69083e1cd00f7419564a0541d/68747470733a2f2f6d69726f2e6d656469756d2e636f6d2f6d61782f313430302f302a2d307a6663716463324e6c6b414f6d66)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 1. Introduction/Business Understanding\n",
"### 1.1 Introduction"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" A shopping center, is a group of shops built together, sometimes under one roof(wikipedia). Most of the shopping is done at the shopping malls by us because it is a place where you can buy what you want, have some snack or food in between and if you are tired you can watch a movie or have fun playing games or any activities, all at a single place. So, most of us prefer shopping at shopping malls instead of shopping any other store or outlet. It is a place where any startup or someone can showcase their product and let the market know about it. Now a days, flash mobs are being conducted in Malls, social media festivals are also celebrated by conducting flash mobs and shows. Real estate business, Restaurants, Groceries, Jeweleries, without leaving a corner each and every business is brought into these malls. \n",
"\n",
" As a result this is a really huge benifit for the Businesses as well as owners/real-estate, Businesses will get into huge sales and owners of the outlets get the income as rent, as well as real estate developers get the profit as well as fame by constructing large and beautiful shopping malls.\n",
"\n",
" However there are plenty number of malls which are located in the city of Hyderabad. So, selecting a suitable location for business as well as public is difficult. The location of the mall ultimately decides whether it will get into profits or loss."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.2 Business Problem\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" The objective of the project \" The Battle of Neighborhoods - Opening a Shopping Mall in Hyderabad , Telangana, India\" is to explore and analyze the neighborhoods and the shopping malls in hyderabad , Telangana and select the best locations in the city to open a new Shopping Mall. Using geocoder library to get the latitude and longitudes for neighborhoods. Foursquare api to explore neighborhoods, Data Science methodology and K means clustering this project will be a solution to the business problem : \n",
" In the city of Hyderabad , Telangana state of India, if someone is looking to open a Shopping Mall, where would you recommend that they open it so that Business man - investors, property developers and residents in the neighborhoods will get benifitted?\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.3 Target audience of this Project"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Indian mall developers are looking to add over 65million square feets of new mall supply by 2022 end. Hyderabad one among the top cities comprise 11% share out of 7 cities. Hyderabad malls have average vacancy of 15%, lease rates of 100/- tp 160/- rupees per square feet, At present, Hyderabad has over four million sft of the area, says an article by Times of India. Hyderabad expected to get 6 million sq ft of shopping mall space in 3 years, says Economic Times report. With the increasing supply of shopping malls selecting a location which will meet the customer demand is difficult. So, this project helps in finding a good location to open a new shopping mall to Business stake holders, property developers, investors as well as customers ."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"___\n",
"## 2. Analytic Approach"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" First we are going to analyze the data using exploratory data analysis to uncover the hidden patterns in data and to provide useful insights to both the constructor, Business man and residents live in neighborhoods.\n",
" And secondly we will use prescriptive analysis to help decide a location to construct new shopping mall using K-means clustering."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 3. Data Requirements"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.1 Below is the required data:\n",
" We are going to analyze Hyderabad city shopping malls in this city.\n",
"- List of neighborhoods in the city of Hyderabad. This will give us the scope of the areas to open shopping malls near to the residential areas and meet the demand.\n",
"- Latitude and Longitudes of the extracted neighborhood data. This will act as the input parameters to the foursquare api to explore a neighborhood.\n",
"- Shopping malls data, this will be the output from the foursquare api and help us to create clusters on the neighborhoods depending on the frequency of malls in a given radius of a particular neighborhood."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.2 Sources and methods to get the data:\n",
"- The list of neighborhoods in Hyderabad is taken from a wikipedia page (https://en.wikipedia.org/wiki/List_of_neighbourhoods_in_Hyderabad), contains 31 neighborhoods in total, combining all the zones. By using web scraping technique we will get the neighborhood data from the wikipedia page.\n",
"- We will then get the Latitude and Longitude of each neighborhood using geocoder library and attach these coordinates to our neighborhood data\n",
"- Then with the help of Foursquare api calls we will send the coordinates of each neighborhoods and get the venues details of shopping malls and create the shopping malls data of each neighborhood.(https://developer.foursquare.com/docs/api)\n",
"\n",
"- This project will be completed with the help of data science skills, data cleaning, exploring, analyzing, visualizing using folium maps in particular. Also takes help from foursquare api to get the shopping mall details which are near to each neighborhood. And finally using a machine learning technique 'K-means clustering' to cluster malls into different categories."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 4. Data Preparation and Pre-processing"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.1 Importing required libraries"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Requirement already satisfied: geocoder in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (1.38.1)\n",
"Requirement already satisfied: click in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geocoder) (7.1.2)\n",
"Requirement already satisfied: requests in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geocoder) (2.23.0)\n",
"Requirement already satisfied: ratelim in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geocoder) (0.1.6)\n",
"Requirement already satisfied: future in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geocoder) (0.18.2)\n",
"Requirement already satisfied: six in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geocoder) (1.15.0)\n",
"Requirement already satisfied: certifi>=2017.4.17 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from requests->geocoder) (2020.4.5.2)\n",
"Requirement already satisfied: chardet<4,>=3.0.2 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from requests->geocoder) (3.0.4)\n",
"Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from requests->geocoder) (1.25.9)\n",
"Requirement already satisfied: idna<3,>=2.5 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from requests->geocoder) (2.9)\n",
"Requirement already satisfied: decorator in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from ratelim->geocoder) (4.4.2)\n",
"Requirement already satisfied: geopy in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (2.0.0)\n",
"Requirement already satisfied: geographiclib<2,>=1.49 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geopy) (1.50)\n",
"Requirement already satisfied: beautifulsoup4 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (4.9.1)\n",
"Requirement already satisfied: soupsieve>1.2 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from beautifulsoup4) (2.0.1)\n",
"Collecting geopandas\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/f8/dd/c0a6429cc7692efd5c99420c9df525c40f472b50705871a770449027e244/geopandas-0.8.0-py2.py3-none-any.whl (962kB)\n",
"\u001b[K |████████████████████████████████| 962kB 9.4MB/s eta 0:00:01\n",
"\u001b[?25hCollecting shapely (from geopandas)\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/20/fa/c96d3461fda99ed8e82ff0b219ac2c8384694b4e640a611a1a8390ecd415/Shapely-1.7.0-cp36-cp36m-manylinux1_x86_64.whl (1.8MB)\n",
"\u001b[K |████████████████████████████████| 1.8MB 30.3MB/s eta 0:00:01\n",
"\u001b[?25hCollecting fiona (from geopandas)\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/ec/20/4e63bc5c6e62df889297b382c3ccd4a7a488b00946aaaf81a118158c6f09/Fiona-1.8.13.post1-cp36-cp36m-manylinux1_x86_64.whl (14.7MB)\n",
"\u001b[K |████████████████████████████████| 14.7MB 6.8MB/s eta 0:00:011 |███▊ | 1.7MB 31.0MB/s eta 0:00:01\n",
"\u001b[?25hCollecting pyproj>=2.2.0 (from geopandas)\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/e5/c3/071e080230ac4b6c64f1a2e2f9161c9737a2bc7b683d2c90b024825000c0/pyproj-2.6.1.post1-cp36-cp36m-manylinux2010_x86_64.whl (10.9MB)\n",
"\u001b[K |████████████████████████████████| 10.9MB 1.2MB/s eta 0:00:01\n",
"\u001b[?25hRequirement already satisfied: pandas>=0.23.0 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from geopandas) (1.0.4)\n",
"Requirement already satisfied: six>=1.7 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from fiona->geopandas) (1.15.0)\n",
"Collecting cligj>=0.5 (from fiona->geopandas)\n",
" Downloading https://files.pythonhosted.org/packages/e4/be/30a58b4b0733850280d01f8bd132591b4668ed5c7046761098d665ac2174/cligj-0.5.0-py3-none-any.whl\n",
"Collecting click-plugins>=1.0 (from fiona->geopandas)\n",
" Downloading https://files.pythonhosted.org/packages/e9/da/824b92d9942f4e472702488857914bdd50f73021efea15b4cad9aca8ecef/click_plugins-1.1.1-py2.py3-none-any.whl\n",
"Collecting munch (from fiona->geopandas)\n",
" Downloading https://files.pythonhosted.org/packages/cc/ab/85d8da5c9a45e072301beb37ad7f833cd344e04c817d97e0cc75681d248f/munch-2.5.0-py2.py3-none-any.whl\n",
"Requirement already satisfied: click<8,>=4.0 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from fiona->geopandas) (7.1.2)\n",
"Requirement already satisfied: attrs>=17 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from fiona->geopandas) (19.3.0)\n",
"Requirement already satisfied: pytz>=2017.2 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from pandas>=0.23.0->geopandas) (2020.1)\n",
"Requirement already satisfied: python-dateutil>=2.6.1 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from pandas>=0.23.0->geopandas) (2.8.1)\n",
"Requirement already satisfied: numpy>=1.13.3 in /home/jupyterlab/conda/envs/python/lib/python3.6/site-packages (from pandas>=0.23.0->geopandas) (1.18.5)\n",
"Installing collected packages: shapely, cligj, click-plugins, munch, fiona, pyproj, geopandas\n",
" Found existing installation: pyproj 1.9.6\n",
" Uninstalling pyproj-1.9.6:\n",
" Successfully uninstalled pyproj-1.9.6\n",
"Successfully installed click-plugins-1.1.1 cligj-0.5.0 fiona-1.8.13.post1 geopandas-0.8.0 munch-2.5.0 pyproj-2.6.1.post1 shapely-1.7.0\n"
]
}
],
"source": [
"!pip install geocoder\n",
"!pip install geopy\n",
"!pip install beautifulsoup4\n",
"!pip install geopandas"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Libraries imported.\n"
]
}
],
"source": [
"import numpy as np # library to handle data in a vectorized manner\n",
"\n",
"import pandas as pd # library for data analsysis\n",
"pd.set_option(\"display.max_columns\", None)\n",
"pd.set_option(\"display.max_rows\", None)\n",
"\n",
"import json # library to handle JSON files\n",
"\n",
"#!conda install -c conda-forge geopy --yes # uncomment this line if you haven't completed the Foursquare API lab\n",
"from geopy.geocoders import Nominatim # convert an address into latitude and longitude values\n",
"#!conda install -c conda-forge geocoder --yes # uncomment this line if you haven't completed the Foursquare API lab\n",
"import geocoder # to get coordinates\n",
"\n",
"import requests # library to handle requests\n",
"\n",
"#!conda install -c anaconda beautifulsoup4 --yes\n",
"from bs4 import BeautifulSoup # library to parse HTML and XML documents\n",
"\n",
"from pandas.io.json import json_normalize # tranform JSON file into a pandas dataframe\n",
"\n",
"# Matplotlib and associated plotting modules\n",
"import matplotlib.cm as cm\n",
"import matplotlib.colors as colors\n",
"\n",
"# import k-means from clustering stage\n",
"from sklearn.cluster import KMeans\n",
"\n",
"import folium # map rendering library\n",
"\n",
"print(\"Libraries imported.\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.2 Data preparation :Scraping Neighborhood data from Wikipedia page"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets scrape the Neighborhood data from wikipedia page using beautifulsoup library and get all the list elements and store in a list called hyd_neighborhood_list"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['1 Central\\n\\n1.1 Ameerpet\\n1.2 Sanathnagar\\n1.3 Khairatabad\\n1.4 Musheerabad\\n1.5 Amberpet\\n1.6 Nampally\\n1.7 Secunderabad\\n1.8 Secunderabad Cantt.\\n\\n', '1.1 Ameerpet', '1.2 Sanathnagar', '1.3 Khairatabad', '1.4 Musheerabad', '1.5 Amberpet', '1.6 Nampally', '1.7 Secunderabad', '1.8 Secunderabad Cantt.', '2 Old City', '3 Western\\n\\n3.1 HITEC City\\n3.2 Jubilee Hills\\n3.3 Gachibowli\\n\\n', '3.1 HITEC City', '3.2 Jubilee Hills', '3.3 Gachibowli', '4 North Western\\n\\n4.1 Serilingampally\\n4.2 Kukatpally\\n4.3 Patancheru\\n\\n', '4.1 Serilingampally', '4.2 Kukatpally', '4.3 Patancheru', '5 Northern\\n\\n5.1 Balanagar\\n5.2 Qutbullapur\\n5.3 Kompally\\n5.4 Alwal\\n\\n', '5.1 Balanagar', '5.2 Qutbullapur', '5.3 Kompally', '5.4 Alwal', '6 North Eastern\\n\\n6.1 Malkajgiri\\n6.2 Kapra\\n6.3 Keesara\\n\\n', '6.1 Malkajgiri', '6.2 Kapra', '6.3 Keesara', '7 Eastern\\n\\n7.1 Uppal\\n7.2 Ghatkesar\\n\\n', '7.1 Uppal', '7.2 Ghatkesar', '8 South Eastern\\n\\n8.1 Dilsukhnagar\\n8.2 LB Nagar\\n8.3 Saroornagar\\n8.4 Hayathnagar\\n\\n', '8.1 Dilsukhnagar', '8.2 LB Nagar', '8.3 Saroornagar', '8.4 Hayathnagar', '9 South Western\\n\\n9.1 Mehdipatnam\\n9.2 Rajendranagar\\n9.3 Shamshabad\\n\\n', '9.1 Mehdipatnam', '9.2 Rajendranagar', '9.3 Shamshabad', '10 References', '11 External links']\n"
]
}
],
"source": [
"page = \"https://en.wikipedia.org/wiki/List_of_neighbourhoods_in_Hyderabad\"\n",
"request = requests.get(page).text\n",
"soup = BeautifulSoup(request,'html.parser')\n",
"\n",
"hyd_neighborhood_list = []\n",
"[hyd_neighborhood_list.append(row.text) for row in soup.find_all(\"div\",class_=\"toc\")[0].findAll(\"li\")]\n",
"print(hyd_neighborhood_list)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Using regular expression we will find all the list element that start with float values and store them in a list called float_elements"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['1.1 Ameerpet', '1.2 Sanathnagar', '1.3 Khairatabad', '1.4 Musheerabad', '1.5 Amberpet', '1.6 Nampally', '1.7 Secunderabad', '1.8 Secunderabad Cantt.', '1.1 Ameerpet', '1.2 Sanathnagar', '1.3 Khairatabad', '1.4 Musheerabad', '1.5 Amberpet', '1.6 Nampally', '1.7 Secunderabad', '1.8 Secunderabad Cantt.', '3.1 HITEC City', '3.2 Jubilee Hills', '3.3 Gachibowli', '3.1 HITEC City', '3.2 Jubilee Hills', '3.3 Gachibowli', '4.1 Serilingampally', '4.2 Kukatpally', '4.3 Patancheru', '4.1 Serilingampally', '4.2 Kukatpally', '4.3 Patancheru', '5.1 Balanagar', '5.2 Qutbullapur', '5.3 Kompally', '5.4 Alwal', '5.1 Balanagar', '5.2 Qutbullapur', '5.3 Kompally', '5.4 Alwal', '6.1 Malkajgiri', '6.2 Kapra', '6.3 Keesara', '6.1 Malkajgiri', '6.2 Kapra', '6.3 Keesara', '7.1 Uppal', '7.2 Ghatkesar', '7.1 Uppal', '7.2 Ghatkesar', '8.1 Dilsukhnagar', '8.2 LB Nagar', '8.3 Saroornagar', '8.4 Hayathnagar', '8.1 Dilsukhnagar', '8.2 LB Nagar', '8.3 Saroornagar', '8.4 Hayathnagar', '9.1 Mehdipatnam', '9.2 Rajendranagar', '9.3 Shamshabad', '9.1 Mehdipatnam', '9.2 Rajendranagar', '9.3 Shamshabad']\n"
]
}
],
"source": [
"import re\n",
"float_elements = []\n",
"[float_elements.extend(re.findall(\"\\d+[.]\\d*.*\", hyd_neighborhood_list[num])) for num in range(len(hyd_neighborhood_list))]\n",
"print(float_elements)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" From list object called float_elements we are going to get the unique neighborhoods and store with the help of set called hyd_neighborhood_set and print the length of the set of neighborhoods we scraped from wikipedia page."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of neighborhoods we have scraped: 30\n",
"{'Sanathnagar', 'Ghatkesar', 'Mehdipatnam', 'Balanagar', 'Malkajgiri', 'Secunderabad Cantt', 'Keesara', 'Serilingampally', 'Secunderabad', 'Patancheru', 'Kompally', 'Rajendranagar', 'Alwal', 'HITEC City', 'Shamshabad', 'Musheerabad', 'Saroornagar', 'Uppal', 'Ameerpet', 'Kapra', 'Jubilee Hills', 'Khairatabad', 'Hayathnagar', 'Dilsukhnagar', 'Nampally', 'Gachibowli', 'Amberpet', 'LB Nagar', 'Qutbullapur', 'Kukatpally'}\n"
]
}
],
"source": [
"hyd_neighborhood_set = set([])\n",
"[hyd_neighborhood_set.add(\" \".join(re.findall(\"[a-zA-Z]+\", float_elements[num]))) for num in range(len(float_elements))]\n",
"\n",
"print(\"Number of neighborhoods we have scraped: \",len(hyd_neighborhood_set))\n",
"print(hyd_neighborhood_set)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We then finally convert our set of neighborhoods to list and store in a column called Neighborhood of hyd_df dataframe and print head of it and also see the shape of dataframe"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Neighborhood\n",
"0 Sanathnagar\n",
"1 Ghatkesar\n",
"2 Mehdipatnam\n",
"3 Balanagar\n",
"4 Malkajgiri\n",
"(30, 1)\n"
]
}
],
"source": [
"hyd_df = pd.DataFrame({\"Neighborhood\": list(hyd_neighborhood_set)})\n",
"print(hyd_df.head())\n",
"print(hyd_df.shape)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Sanathnagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Ghatkesar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Mehdipatnam</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Malkajgiri</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Secunderabad Cantt</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>Keesara</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Serilingampally</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Secunderabad</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Patancheru</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Kompally</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Rajendranagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Alwal</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>HITEC City</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Shamshabad</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Musheerabad</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Saroornagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Uppal</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Ameerpet</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Kapra</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Jubilee Hills</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Khairatabad</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Hayathnagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Dilsukhnagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Nampally</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>Gachibowli</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>Amberpet</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>LB Nagar</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>Qutbullapur</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>Kukatpally</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood\n",
"0 Sanathnagar\n",
"1 Ghatkesar\n",
"2 Mehdipatnam\n",
"3 Balanagar\n",
"4 Malkajgiri\n",
"5 Secunderabad Cantt\n",
"6 Keesara\n",
"7 Serilingampally\n",
"8 Secunderabad\n",
"9 Patancheru\n",
"10 Kompally\n",
"11 Rajendranagar\n",
"12 Alwal\n",
"13 HITEC City\n",
"14 Shamshabad\n",
"15 Musheerabad\n",
"16 Saroornagar\n",
"17 Uppal\n",
"18 Ameerpet\n",
"19 Kapra\n",
"20 Jubilee Hills\n",
"21 Khairatabad\n",
"22 Hayathnagar\n",
"23 Dilsukhnagar\n",
"24 Nampally\n",
"25 Gachibowli\n",
"26 Amberpet\n",
"27 LB Nagar\n",
"28 Qutbullapur\n",
"29 Kukatpally"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.3 Getting the geographical coordinates using geocoder library"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We define a function called get_latlang to get the latitude and longitudes for a given neighborhood and loop over all the neighborhoods in our hyd_df dataframe to get respective coordinates, if any of the neighborhoods has no location information lets return and store as None"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"def get_latlang(neighborhood):\n",
" locator = Nominatim(user_agent=\"myGeocoder\")\n",
" location = locator.geocode(neighborhood+\", Hyderabad,Telangana\")\n",
" if(location==None):\n",
" return None\n",
" else:\n",
" return location.latitude,location.longitude"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Sending one neighborhood at a time and storing the returned coordinates in a list called coordinates"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"coordinates = [ get_latlang(neighborhood) for neighborhood in hyd_df[\"Neighborhood\"] ]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets temporarily store our coordinates in latitude and longitude columns of hyd_coords dataframe"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>17.465657</td>\n",
" <td>78.340672</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>17.433725</td>\n",
" <td>78.500683</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>17.528609</td>\n",
" <td>78.267425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>17.544703</td>\n",
" <td>78.491842</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>17.311091</td>\n",
" <td>78.442585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>17.449005</td>\n",
" <td>78.383138</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>17.419142</td>\n",
" <td>78.498573</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>17.361165</td>\n",
" <td>78.538756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>17.402509</td>\n",
" <td>78.561256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>17.484636</td>\n",
" <td>78.561009</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>17.430836</td>\n",
" <td>78.410288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>17.411771</td>\n",
" <td>78.462200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>17.328115</td>\n",
" <td>78.604540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>17.391852</td>\n",
" <td>78.466005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>17.443622</td>\n",
" <td>78.351964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>17.350162</td>\n",
" <td>78.551094</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>17.493084</td>\n",
" <td>78.405441</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Latitude Longitude\n",
"0 17.456965 78.443478\n",
"1 NaN NaN\n",
"2 17.394263 78.434251\n",
"3 17.476746 78.422108\n",
"4 17.448344 78.528973\n",
"5 NaN NaN\n",
"6 NaN NaN\n",
"7 17.465657 78.340672\n",
"8 17.433725 78.500683\n",
"9 17.528609 78.267425\n",
"10 17.544703 78.491842\n",
"11 17.311091 78.442585\n",
"12 17.502229 78.508858\n",
"13 17.449005 78.383138\n",
"14 NaN NaN\n",
"15 17.419142 78.498573\n",
"16 17.361165 78.538756\n",
"17 17.402509 78.561256\n",
"18 17.437501 78.448251\n",
"19 17.484636 78.561009\n",
"20 17.430836 78.410288\n",
"21 17.411771 78.462200\n",
"22 17.328115 78.604540\n",
"23 17.368431 78.523428\n",
"24 17.391852 78.466005\n",
"25 17.443622 78.351964\n",
"26 17.390263 78.516481\n",
"27 17.350162 78.551094\n",
"28 NaN NaN\n",
"29 17.493084 78.405441"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_coords = pd.DataFrame(coordinates, columns=['Latitude', 'Longitude'])\n",
"hyd_coords"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets add the coordinates to our dataframe hyd_df with Latitude and Longitude as column names from the temporarily created dataframe hyd_coords"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Ghatkesar</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Malkajgiri</td>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Latitude Longitude\n",
"0 Sanathnagar 17.456965 78.443478\n",
"1 Ghatkesar NaN NaN\n",
"2 Mehdipatnam 17.394263 78.434251\n",
"3 Balanagar 17.476746 78.422108\n",
"4 Malkajgiri 17.448344 78.528973"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_df['Latitude'] = hyd_coords['Latitude']\n",
"hyd_df['Longitude'] = hyd_coords['Longitude']\n",
"hyd_df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We can see some of the Latitude and Longitude values in rows of some Neighborhoods(Ghatkesar,Secunderabad Cantt,Keesara,Patancheru,Qutbullapur) which are in the out skirts of the city of Hyderabad as None, lets remove them from our dataframe hyd_df using dropna and reset index"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Balanagar</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Malkajgiri</td>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Serilingampally</td>\n",
" <td>17.465657</td>\n",
" <td>78.340672</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Secunderabad</td>\n",
" <td>17.433725</td>\n",
" <td>78.500683</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>Patancheru</td>\n",
" <td>17.528609</td>\n",
" <td>78.267425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Kompally</td>\n",
" <td>17.544703</td>\n",
" <td>78.491842</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Rajendranagar</td>\n",
" <td>17.311091</td>\n",
" <td>78.442585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Alwal</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>HITEC City</td>\n",
" <td>17.449005</td>\n",
" <td>78.383138</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Musheerabad</td>\n",
" <td>17.419142</td>\n",
" <td>78.498573</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Saroornagar</td>\n",
" <td>17.361165</td>\n",
" <td>78.538756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>Uppal</td>\n",
" <td>17.402509</td>\n",
" <td>78.561256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Ameerpet</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Kapra</td>\n",
" <td>17.484636</td>\n",
" <td>78.561009</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>17.430836</td>\n",
" <td>78.410288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Khairatabad</td>\n",
" <td>17.411771</td>\n",
" <td>78.462200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Hayathnagar</td>\n",
" <td>17.328115</td>\n",
" <td>78.604540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Nampally</td>\n",
" <td>17.391852</td>\n",
" <td>78.466005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Gachibowli</td>\n",
" <td>17.443622</td>\n",
" <td>78.351964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Amberpet</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>LB Nagar</td>\n",
" <td>17.350162</td>\n",
" <td>78.551094</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Kukatpally</td>\n",
" <td>17.493084</td>\n",
" <td>78.405441</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Latitude Longitude\n",
"0 Sanathnagar 17.456965 78.443478\n",
"1 Mehdipatnam 17.394263 78.434251\n",
"2 Balanagar 17.476746 78.422108\n",
"3 Malkajgiri 17.448344 78.528973\n",
"4 Serilingampally 17.465657 78.340672\n",
"5 Secunderabad 17.433725 78.500683\n",
"6 Patancheru 17.528609 78.267425\n",
"7 Kompally 17.544703 78.491842\n",
"8 Rajendranagar 17.311091 78.442585\n",
"9 Alwal 17.502229 78.508858\n",
"10 HITEC City 17.449005 78.383138\n",
"11 Musheerabad 17.419142 78.498573\n",
"12 Saroornagar 17.361165 78.538756\n",
"13 Uppal 17.402509 78.561256\n",
"14 Ameerpet 17.437501 78.448251\n",
"15 Kapra 17.484636 78.561009\n",
"16 Jubilee Hills 17.430836 78.410288\n",
"17 Khairatabad 17.411771 78.462200\n",
"18 Hayathnagar 17.328115 78.604540\n",
"19 Dilsukhnagar 17.368431 78.523428\n",
"20 Nampally 17.391852 78.466005\n",
"21 Gachibowli 17.443622 78.351964\n",
"22 Amberpet 17.390263 78.516481\n",
"23 LB Nagar 17.350162 78.551094\n",
"24 Kukatpally 17.493084 78.405441"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_df = hyd_df.dropna(axis = 0).reset_index(drop=True)\n",
"hyd_df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Above is the final dataframe with neighborhood and location data as latitude and longitude on which we are going to work on now, before moving forward lets save the data in a csv file named hyd_df.csv"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"hyd_df.to_csv(\"hyd_df.csv\", index=False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.4 Create the map of Hyderabad city with neighborhoods superimposed on top"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets get the coordinates of Hyderabad, Telangana and store its value in hyd_location to create a map of hyderabad showing its neighborhoods using folium library"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The geograpical coordinates of Hyderabad,Telangana are, Latitude: 17.38878595 Longitude: 78.46106473453146\n"
]
}
],
"source": [
"address = 'Hyderabad, Telangana'\n",
"geolocator = Nominatim(user_agent=\"myGeocoder\")\n",
"hyd_location = geolocator.geocode(address)\n",
"print('The geograpical coordinates of Hyderabad,Telangana are, Latitude: ', hyd_location.latitude,' Longitude: ', hyd_location.longitude)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div style=\"width:100%;\"><div style=\"position:relative;width:100%;height:0;padding-bottom:60%;\"><span style=\"color:#565656\">Make this Notebook Trusted to load map: File -> Trust Notebook</span><iframe src=\"about:blank\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" data-html=PCFET0NUWVBFIGh0bWw+CjxoZWFkPiAgICAKICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiAvPgogICAgPHNjcmlwdD5MX1BSRUZFUl9DQU5WQVMgPSBmYWxzZTsgTF9OT19UT1VDSCA9IGZhbHNlOyBMX0RJU0FCTEVfM0QgPSBmYWxzZTs8L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeS8xLjExLjEvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvTGVhZmxldC5hd2Vzb21lLW1hcmtlcnMvMi4wLjIvbGVhZmxldC5hd2Vzb21lLW1hcmtlcnMuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC8zLjIuMC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvY3NzL2Jvb3RzdHJhcC10aGVtZS5taW4uY3NzIi8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNi4zL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9MZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy8yLjAuMi9sZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9yYXdnaXQuY29tL3B5dGhvbi12aXN1YWxpemF0aW9uL2ZvbGl1bS9tYXN0ZXIvZm9saXVtL3RlbXBsYXRlcy9sZWFmbGV0LmF3ZXNvbWUucm90YXRlLmNzcyIvPgogICAgPHN0eWxlPmh0bWwsIGJvZHkge3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTttYXJnaW46IDA7cGFkZGluZzogMDt9PC9zdHlsZT4KICAgIDxzdHlsZT4jbWFwIHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDowO2xlZnQ6MDt9PC9zdHlsZT4KICAgIAogICAgICAgICAgICA8c3R5bGU+ICNtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMgewogICAgICAgICAgICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgIHdpZHRoIDogMTAwLjAlOwogICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAuMCU7CiAgICAgICAgICAgICAgICBsZWZ0OiAwLjAlOwogICAgICAgICAgICAgICAgdG9wOiAwLjAlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICA8L3N0eWxlPgogICAgICAgIAo8L2hlYWQ+Cjxib2R5PiAgICAKICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb2xpdW0tbWFwIiBpZD0ibWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjIiA+PC9kaXY+CiAgICAgICAgCjwvYm9keT4KPHNjcmlwdD4gICAgCiAgICAKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGJvdW5kcyA9IG51bGw7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgdmFyIG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyA9IEwubWFwKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2VudGVyOiBbMTcuMzg4Nzg1OTUsNzguNDYxMDY0NzM0NTMxNDZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgem9vbTogMTAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhCb3VuZHM6IGJvdW5kcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyczogW10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JsZENvcHlKdW1wOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyczogTC5DUlMuRVBTRzM4NTcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciB0aWxlX2xheWVyX2M3YzI0NWIzZDEwODQwYTJhZmQyMmE1ODA0MTUyYzJmID0gTC50aWxlTGF5ZXIoCiAgICAgICAgICAgICAgICAnaHR0cHM6Ly97c30udGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLAogICAgICAgICAgICAgICAgewogICJhdHRyaWJ1dGlvbiI6IG51bGwsCiAgImRldGVjdFJldGluYSI6IGZhbHNlLAogICJtYXhab29tIjogMTgsCiAgIm1pblpvb20iOiAxLAogICJub1dyYXAiOiBmYWxzZSwKICAic3ViZG9tYWlucyI6ICJhYmMiCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9kZjFhYzI3YzMzYTI0NWE4OThjZGVhMTcyYTczOGU2NyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ1Njk2NTQsNzguNDQzNDc4MDYzNjU5NF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF82Mjg5ZjdkZWZlOWI0ZjI1YWNjOWI4NDAxYTRmYTc5OSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF83NDgyYWQ0NjM1Y2Y0YzdmOWEwNWYwNjFhY2I2ODhiMCA9ICQoJzxkaXYgaWQ9Imh0bWxfNzQ4MmFkNDYzNWNmNGM3ZjlhMDVmMDYxYWNiNjg4YjAiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlNhbmF0aG5hZ2FyPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF82Mjg5ZjdkZWZlOWI0ZjI1YWNjOWI4NDAxYTRmYTc5OS5zZXRDb250ZW50KGh0bWxfNzQ4MmFkNDYzNWNmNGM3ZjlhMDVmMDYxYWNiNjg4YjApOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZGYxYWMyN2MzM2EyNDVhODk4Y2RlYTE3MmE3MzhlNjcuYmluZFBvcHVwKHBvcHVwXzYyODlmN2RlZmU5YjRmMjVhY2M5Yjg0MDFhNGZhNzk5KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzU5M2U0NTI1ZTQ4MjQ3NmE4OTgwZDk0ODFiNzRlNGQzID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzk0MjYyNyw3OC40MzQyNTE0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzU3YWIzNzQ4YTY4MTQyNDc5ZDgxMmU4MmI5ZjFlYmQ2ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzRkNDRiNzFmNTY2NjRhOWJhODM3NmM4Nzk4NzBjZjUwID0gJCgnPGRpdiBpZD0iaHRtbF80ZDQ0YjcxZjU2NjY0YTliYTgzNzZjODc5ODcwY2Y1MCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+TWVoZGlwYXRuYW08L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzU3YWIzNzQ4YTY4MTQyNDc5ZDgxMmU4MmI5ZjFlYmQ2LnNldENvbnRlbnQoaHRtbF80ZDQ0YjcxZjU2NjY0YTliYTgzNzZjODc5ODcwY2Y1MCk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl81OTNlNDUyNWU0ODI0NzZhODk4MGQ5NDgxYjc0ZTRkMy5iaW5kUG9wdXAocG9wdXBfNTdhYjM3NDhhNjgxNDI0NzlkODEyZTgyYjlmMWViZDYpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMGJmNWZkNjQ5ZjY3NDExN2IwYmNiYWQyZGQ1MjMwM2EgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40NzY3NDY0LDc4LjQyMjEwODJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfODBhNDM4N2QzYzRiNDI3NGFkNGExN2NhNzUyNjQ2ZGMgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfOTIwNjk4MTc1MzkzNDlhOWFmMWU5NDM0ZDYyODkzOGUgPSAkKCc8ZGl2IGlkPSJodG1sXzkyMDY5ODE3NTM5MzQ5YTlhZjFlOTQzNGQ2Mjg5MzhlIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5CYWxhbmFnYXI8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzgwYTQzODdkM2M0YjQyNzRhZDRhMTdjYTc1MjY0NmRjLnNldENvbnRlbnQoaHRtbF85MjA2OTgxNzUzOTM0OWE5YWYxZTk0MzRkNjI4OTM4ZSk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl8wYmY1ZmQ2NDlmNjc0MTE3YjBiY2JhZDJkZDUyMzAzYS5iaW5kUG9wdXAocG9wdXBfODBhNDM4N2QzYzRiNDI3NGFkNGExN2NhNzUyNjQ2ZGMpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfYmQ1YjZlNDVkOWVmNDI1MzhlZTExYmI1MDdjMGE1ZWMgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40NDgzNDM4LDc4LjUyODk3MjddLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNTEwOTc2ODdjNjc2NDg1Y2EyNzE4N2I4ZWVlOTc2MTggPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMjEyMzQ0ZWM5NDhhNDcwOWJmOWZiNjc1Y2Q2OGI5MTAgPSAkKCc8ZGl2IGlkPSJodG1sXzIxMjM0NGVjOTQ4YTQ3MDliZjlmYjY3NWNkNjhiOTEwIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5NYWxrYWpnaXJpPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF81MTA5NzY4N2M2NzY0ODVjYTI3MTg3YjhlZWU5NzYxOC5zZXRDb250ZW50KGh0bWxfMjEyMzQ0ZWM5NDhhNDcwOWJmOWZiNjc1Y2Q2OGI5MTApOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfYmQ1YjZlNDVkOWVmNDI1MzhlZTExYmI1MDdjMGE1ZWMuYmluZFBvcHVwKHBvcHVwXzUxMDk3Njg3YzY3NjQ4NWNhMjcxODdiOGVlZTk3NjE4KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzViNDg3ZGI2YTg5NjQ2MWE4YzY2MGU4N2I0ZmM2YmQ2ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDY1NjU3MzUsNzguMzQwNjcyMzk1NjUxMTNdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNGRjZTk1NzZjZTQzNGVhZGE4YmVlZjU4NWUxZGVmMTEgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfNjA4OGQ1NWE1ZTRhNDBkYWEwNjdiOTY5MGM2MjhkN2YgPSAkKCc8ZGl2IGlkPSJodG1sXzYwODhkNTVhNWU0YTQwZGFhMDY3Yjk2OTBjNjI4ZDdmIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5TZXJpbGluZ2FtcGFsbHk8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzRkY2U5NTc2Y2U0MzRlYWRhOGJlZWY1ODVlMWRlZjExLnNldENvbnRlbnQoaHRtbF82MDg4ZDU1YTVlNGE0MGRhYTA2N2I5NjkwYzYyOGQ3Zik7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl81YjQ4N2RiNmE4OTY0NjFhOGM2NjBlODdiNGZjNmJkNi5iaW5kUG9wdXAocG9wdXBfNGRjZTk1NzZjZTQzNGVhZGE4YmVlZjU4NWUxZGVmMTEpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMGQyOWZhYmVjMTU1NGQwZjlkM2E2NzZiMmMzNmM1ZWEgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40MzM3MjQ2LDc4LjUwMDY4MjddLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfYTVhMTU4MTM3Yzc2NDIyMmFiMGUyNTVjZGM3ODIxNzMgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMjdkMWM1NmYyZGQxNGU1N2JiMGQ5MmJkMWY5YTFkNGMgPSAkKCc8ZGl2IGlkPSJodG1sXzI3ZDFjNTZmMmRkMTRlNTdiYjBkOTJiZDFmOWExZDRjIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5TZWN1bmRlcmFiYWQ8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2E1YTE1ODEzN2M3NjQyMjJhYjBlMjU1Y2RjNzgyMTczLnNldENvbnRlbnQoaHRtbF8yN2QxYzU2ZjJkZDE0ZTU3YmIwZDkyYmQxZjlhMWQ0Yyk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl8wZDI5ZmFiZWMxNTU0ZDBmOWQzYTY3NmIyYzM2YzVlYS5iaW5kUG9wdXAocG9wdXBfYTVhMTU4MTM3Yzc2NDIyMmFiMGUyNTVjZGM3ODIxNzMpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfN2QzZjUyNGNkZmUzNGM3MGE5MmMzNjMyNGE3YjhkOWYgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy41Mjg2MDkyLDc4LjI2NzQyNTRdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMjIzNzgwYzU1ZDBkNGUwNzkzMGQ2Njc4NDNjZjEyNjUgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMWY5NDgzODc0YzliNDhjYWIzNDVkMWVjYjAzOTEyOWEgPSAkKCc8ZGl2IGlkPSJodG1sXzFmOTQ4Mzg3NGM5YjQ4Y2FiMzQ1ZDFlY2IwMzkxMjlhIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5QYXRhbmNoZXJ1PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8yMjM3ODBjNTVkMGQ0ZTA3OTMwZDY2Nzg0M2NmMTI2NS5zZXRDb250ZW50KGh0bWxfMWY5NDgzODc0YzliNDhjYWIzNDVkMWVjYjAzOTEyOWEpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfN2QzZjUyNGNkZmUzNGM3MGE5MmMzNjMyNGE3YjhkOWYuYmluZFBvcHVwKHBvcHVwXzIyMzc4MGM1NWQwZDRlMDc5MzBkNjY3ODQzY2YxMjY1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2YzNjFhZjc3YTA3NzQ2ZjhiMjNkNDk4MDdjZDNkZTY5ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNTQ0NzAyOSw3OC40OTE4NDJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfOTgxOWY3OGEwZmQyNDE1OWEzYWI1OWFhYWM2ZjQ5YWIgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMDVjOTc1NDQxNzIzNDU4NGJjZGIyMDBiZWZlYzFhYTggPSAkKCc8ZGl2IGlkPSJodG1sXzA1Yzk3NTQ0MTcyMzQ1ODRiY2RiMjAwYmVmZWMxYWE4IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5Lb21wYWxseTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfOTgxOWY3OGEwZmQyNDE1OWEzYWI1OWFhYWM2ZjQ5YWIuc2V0Q29udGVudChodG1sXzA1Yzk3NTQ0MTcyMzQ1ODRiY2RiMjAwYmVmZWMxYWE4KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2YzNjFhZjc3YTA3NzQ2ZjhiMjNkNDk4MDdjZDNkZTY5LmJpbmRQb3B1cChwb3B1cF85ODE5Zjc4YTBmZDI0MTU5YTNhYjU5YWFhYzZmNDlhYik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9mZDM2ZDBhZDRlZGQ0ZTYyOTJmNTgyM2FhMGY1MDllMiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjMxMTA5MTEsNzguNDQyNTg1NF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9mYzliYjIwMWQ1ODA0NzM0ODNjYjJjYzY4MGQ0NTQxMyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF80MjA3N2M0ZTlkOTA0MWY2OTVlZjg2YjkzNTA1MTA1NyA9ICQoJzxkaXYgaWQ9Imh0bWxfNDIwNzdjNGU5ZDkwNDFmNjk1ZWY4NmI5MzUwNTEwNTciIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlJhamVuZHJhbmFnYXI8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2ZjOWJiMjAxZDU4MDQ3MzQ4M2NiMmNjNjgwZDQ1NDEzLnNldENvbnRlbnQoaHRtbF80MjA3N2M0ZTlkOTA0MWY2OTVlZjg2YjkzNTA1MTA1Nyk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9mZDM2ZDBhZDRlZGQ0ZTYyOTJmNTgyM2FhMGY1MDllMi5iaW5kUG9wdXAocG9wdXBfZmM5YmIyMDFkNTgwNDczNDgzY2IyY2M2ODBkNDU0MTMpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMGYxMWU3MjRmYzY1NDY0OGE1OTQ1YTQwYmE3ZjI2MjIgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy41MDIyMjkyLDc4LjUwODg1ODRdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfOThlNzkyYWRjZDVjNGVlNGE4MWQ0Yzg0YzgzMTJmNzcgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfM2VhY2U2MTMwNDIzNGYxYTk4MTEyYzk0YTI5N2VkNzQgPSAkKCc8ZGl2IGlkPSJodG1sXzNlYWNlNjEzMDQyMzRmMWE5ODExMmM5NGEyOTdlZDc0IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5BbHdhbDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfOThlNzkyYWRjZDVjNGVlNGE4MWQ0Yzg0YzgzMTJmNzcuc2V0Q29udGVudChodG1sXzNlYWNlNjEzMDQyMzRmMWE5ODExMmM5NGEyOTdlZDc0KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzBmMTFlNzI0ZmM2NTQ2NDhhNTk0NWE0MGJhN2YyNjIyLmJpbmRQb3B1cChwb3B1cF85OGU3OTJhZGNkNWM0ZWU0YTgxZDRjODRjODMxMmY3Nyk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9jYjMxY2Q4Y2FjNTY0ZmRlOTUyZTY1OWFmODRmODBmMCA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ0OTAwNTUsNzguMzgzMTM3Nl0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF81ZGVjNTg1NzJiYjI0MGM1YjZhODQwZjM2OWU1ZTFlMiA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF80ZjVlNzYxODIyMDQ0MjBkODIxMjk3OTZiZTgyODQ3NyA9ICQoJzxkaXYgaWQ9Imh0bWxfNGY1ZTc2MTgyMjA0NDIwZDgyMTI5Nzk2YmU4Mjg0NzciIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkhJVEVDIENpdHk8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzVkZWM1ODU3MmJiMjQwYzViNmE4NDBmMzY5ZTVlMWUyLnNldENvbnRlbnQoaHRtbF80ZjVlNzYxODIyMDQ0MjBkODIxMjk3OTZiZTgyODQ3Nyk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9jYjMxY2Q4Y2FjNTY0ZmRlOTUyZTY1OWFmODRmODBmMC5iaW5kUG9wdXAocG9wdXBfNWRlYzU4NTcyYmIyNDBjNWI2YTg0MGYzNjllNWUxZTIpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfYmI2NjcwY2MyMDViNDFmZGI3ZmVlYTA0NGE0MzFiMjAgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40MTkxNDIzLDc4LjQ5ODU3MzJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMTBhZDg0MDFiNDU1NDMxMWFlYjIyZmY5OWQ2ZGNmZGEgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfOTk2ZmZmMTA2YzhlNDJjZmE3NDhmNjk2Njc4OTkyYmIgPSAkKCc8ZGl2IGlkPSJodG1sXzk5NmZmZjEwNmM4ZTQyY2ZhNzQ4ZjY5NjY3ODk5MmJiIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5NdXNoZWVyYWJhZDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMTBhZDg0MDFiNDU1NDMxMWFlYjIyZmY5OWQ2ZGNmZGEuc2V0Q29udGVudChodG1sXzk5NmZmZjEwNmM4ZTQyY2ZhNzQ4ZjY5NjY3ODk5MmJiKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2JiNjY3MGNjMjA1YjQxZmRiN2ZlZWEwNDRhNDMxYjIwLmJpbmRQb3B1cChwb3B1cF8xMGFkODQwMWI0NTU0MzExYWViMjJmZjk5ZDZkY2ZkYSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9kYTA2ZDE3ODQwZDI0NDcxOTc3NmVjNjg4ZDllMWQ4NyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM2MTE2NTQ1LDc4LjUzODc1NjE5NTg4OTYyXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzRlYTRhZTU0YjY1MzRiOGQ5YWIyM2RiOWI1ZjI0YzRiID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sX2MyZDYxYzIwNzAzNzQ3MzQ5YWU1NTZiMmI2NzgwNGVmID0gJCgnPGRpdiBpZD0iaHRtbF9jMmQ2MWMyMDcwMzc0NzM0OWFlNTU2YjJiNjc4MDRlZiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+U2Fyb29ybmFnYXI8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzRlYTRhZTU0YjY1MzRiOGQ5YWIyM2RiOWI1ZjI0YzRiLnNldENvbnRlbnQoaHRtbF9jMmQ2MWMyMDcwMzc0NzM0OWFlNTU2YjJiNjc4MDRlZik7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9kYTA2ZDE3ODQwZDI0NDcxOTc3NmVjNjg4ZDllMWQ4Ny5iaW5kUG9wdXAocG9wdXBfNGVhNGFlNTRiNjUzNGI4ZDlhYjIzZGI5YjVmMjRjNGIpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfNWY4MTNjYThiNjUxNDliNzg3OWVmODk2NjkxNjBlMzQgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40MDI1MDkxLDc4LjU2MTI1NjJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfYmI2NWE5NGJiMzlkNGY1Yzk4ZTU1OWU4ZjRlMTA2ZTYgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfN2E0NWNkNWQ1ZDAyNDg3YWJiZWZhN2MzODQ4OWRiMmYgPSAkKCc8ZGl2IGlkPSJodG1sXzdhNDVjZDVkNWQwMjQ4N2FiYmVmYTdjMzg0ODlkYjJmIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5VcHBhbDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYmI2NWE5NGJiMzlkNGY1Yzk4ZTU1OWU4ZjRlMTA2ZTYuc2V0Q29udGVudChodG1sXzdhNDVjZDVkNWQwMjQ4N2FiYmVmYTdjMzg0ODlkYjJmKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzVmODEzY2E4YjY1MTQ5Yjc4NzllZjg5NjY5MTYwZTM0LmJpbmRQb3B1cChwb3B1cF9iYjY1YTk0YmIzOWQ0ZjVjOThlNTU5ZThmNGUxMDZlNik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9mYmQ4ZWE4Nzk4ZjA0MDBmODEwNGUyZTkwNzZlOWY2NiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQzNzUwMTIsNzguNDQ4MjUwNV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF81ZDE5MDU2ZTU4NWI0MTA1YjkzNjJmZTJmZmNiODIxMCA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9kMDIzNzAwMTRkZjQ0OGU2ODQyYjkxMTQwZDljZmQ5MCA9ICQoJzxkaXYgaWQ9Imh0bWxfZDAyMzcwMDE0ZGY0NDhlNjg0MmI5MTE0MGQ5Y2ZkOTAiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkFtZWVycGV0PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF81ZDE5MDU2ZTU4NWI0MTA1YjkzNjJmZTJmZmNiODIxMC5zZXRDb250ZW50KGh0bWxfZDAyMzcwMDE0ZGY0NDhlNjg0MmI5MTE0MGQ5Y2ZkOTApOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZmJkOGVhODc5OGYwNDAwZjgxMDRlMmU5MDc2ZTlmNjYuYmluZFBvcHVwKHBvcHVwXzVkMTkwNTZlNTg1YjQxMDViOTM2MmZlMmZmY2I4MjEwKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzI3NWQ3YjMwZDAwYTRmMzBhMWEzNzY2MjRhYmUzMzVmID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDg0NjM1Niw3OC41NjEwMDk1XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2UyNTQ4YzRlMjExYTQyMDlhMGMzNWExYWQ4NWMwZDExID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzNlMTBmNTNhNWY3YjRmYTRiY2RlYzdlNTY0MmY0MzExID0gJCgnPGRpdiBpZD0iaHRtbF8zZTEwZjUzYTVmN2I0ZmE0YmNkZWM3ZTU2NDJmNDMxMSIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+S2FwcmE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2UyNTQ4YzRlMjExYTQyMDlhMGMzNWExYWQ4NWMwZDExLnNldENvbnRlbnQoaHRtbF8zZTEwZjUzYTVmN2I0ZmE0YmNkZWM3ZTU2NDJmNDMxMSk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl8yNzVkN2IzMGQwMGE0ZjMwYTFhMzc2NjI0YWJlMzM1Zi5iaW5kUG9wdXAocG9wdXBfZTI1NDhjNGUyMTFhNDIwOWEwYzM1YTFhZDg1YzBkMTEpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfOGM4ZGU0YWRjY2NmNDQ3MTk5MTBkN2I2ZDhmOWE2YmIgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40MzA4MzYyLDc4LjQxMDI4ODJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNjYzOTI0MzhhOTA1NGNlMDk0NDM2NmYzMTQxZDYwOGEgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfNDRlOWMzOGFiZjJlNGI0MTkyNjcwMTkxOWZmMDI4ZWYgPSAkKCc8ZGl2IGlkPSJodG1sXzQ0ZTljMzhhYmYyZTRiNDE5MjY3MDE5MTlmZjAyOGVmIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5KdWJpbGVlIEhpbGxzPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF82NjM5MjQzOGE5MDU0Y2UwOTQ0MzY2ZjMxNDFkNjA4YS5zZXRDb250ZW50KGh0bWxfNDRlOWMzOGFiZjJlNGI0MTkyNjcwMTkxOWZmMDI4ZWYpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfOGM4ZGU0YWRjY2NmNDQ3MTk5MTBkN2I2ZDhmOWE2YmIuYmluZFBvcHVwKHBvcHVwXzY2MzkyNDM4YTkwNTRjZTA5NDQzNjZmMzE0MWQ2MDhhKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzY0YWNiNmQ1NzI4NTRiNGI5MDBjMWI3N2ZmODExYzEyID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDExNzcwNiw3OC40NjIyMDAzXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2U3ODU4ZGVmN2IzNDQwZjY5OTRiOGE5OWYzMTJjYTVjID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzRiNWYwOWY1MzBiMDQ5Mzg4YzMwY2FkNjVjMWIxYjZkID0gJCgnPGRpdiBpZD0iaHRtbF80YjVmMDlmNTMwYjA0OTM4OGMzMGNhZDY1YzFiMWI2ZCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+S2hhaXJhdGFiYWQ8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2U3ODU4ZGVmN2IzNDQwZjY5OTRiOGE5OWYzMTJjYTVjLnNldENvbnRlbnQoaHRtbF80YjVmMDlmNTMwYjA0OTM4OGMzMGNhZDY1YzFiMWI2ZCk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl82NGFjYjZkNTcyODU0YjRiOTAwYzFiNzdmZjgxMWMxMi5iaW5kUG9wdXAocG9wdXBfZTc4NThkZWY3YjM0NDBmNjk5NGI4YTk5ZjMxMmNhNWMpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfODNhYjFiOTljMzUyNDJkNDk3Mjg4MDk5NDU4MzE3NjQgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy4zMjgxMTQ3LDc4LjYwNDUzOTldLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfY2YyNjgyMWI5Y2VlNGM5YjhjZWVkYzdhMDJiNzBhZTYgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfYTZjN2Q1ZjQyY2Y4NDlkYjk5YmE4MTgxNzBkYzJiMzggPSAkKCc8ZGl2IGlkPSJodG1sX2E2YzdkNWY0MmNmODQ5ZGI5OWJhODE4MTcwZGMyYjM4IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5IYXlhdGhuYWdhcjwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfY2YyNjgyMWI5Y2VlNGM5YjhjZWVkYzdhMDJiNzBhZTYuc2V0Q29udGVudChodG1sX2E2YzdkNWY0MmNmODQ5ZGI5OWJhODE4MTcwZGMyYjM4KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzgzYWIxYjk5YzM1MjQyZDQ5NzI4ODA5OTQ1ODMxNzY0LmJpbmRQb3B1cChwb3B1cF9jZjI2ODIxYjljZWU0YzliOGNlZWRjN2EwMmI3MGFlNik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl80YTBlMGMwZmJjNGI0YTU0YWJkODVhZjg5MGYwYjJhYSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM2ODQzMDcsNzguNTIzNDI4M10sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF81ZWJiNmVkZmZiNDU0YWI1YTg3ODlmNDVlNzY2ODhiMyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF84ZDgxZTNjMTJlYmQ0ZmFmOTBjOWVlMTZmMzZmN2FlYyA9ICQoJzxkaXYgaWQ9Imh0bWxfOGQ4MWUzYzEyZWJkNGZhZjkwYzllZTE2ZjM2ZjdhZWMiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkRpbHN1a2huYWdhcjwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfNWViYjZlZGZmYjQ1NGFiNWE4Nzg5ZjQ1ZTc2Njg4YjMuc2V0Q29udGVudChodG1sXzhkODFlM2MxMmViZDRmYWY5MGM5ZWUxNmYzNmY3YWVjKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzRhMGUwYzBmYmM0YjRhNTRhYmQ4NWFmODkwZjBiMmFhLmJpbmRQb3B1cChwb3B1cF81ZWJiNmVkZmZiNDU0YWI1YTg3ODlmNDVlNzY2ODhiMyk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8yYTZjYTk1ZWE3ZWQ0N2RiOWM5MDFlYzI5ODJhZmRlYyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM5MTg1MjQsNzguNDY2MDA1Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF80NThkZTM2ZmIyYjQ0YWYwYjQ0ZTIwNDIwMWU3ZDU0NSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9jN2M1MzUyZGI0ZDc0ODJmYTcwOTZjNjVkZWNjNjNlZiA9ICQoJzxkaXYgaWQ9Imh0bWxfYzdjNTM1MmRiNGQ3NDgyZmE3MDk2YzY1ZGVjYzYzZWYiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPk5hbXBhbGx5PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF80NThkZTM2ZmIyYjQ0YWYwYjQ0ZTIwNDIwMWU3ZDU0NS5zZXRDb250ZW50KGh0bWxfYzdjNTM1MmRiNGQ3NDgyZmE3MDk2YzY1ZGVjYzYzZWYpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMmE2Y2E5NWVhN2VkNDdkYjljOTAxZWMyOTgyYWZkZWMuYmluZFBvcHVwKHBvcHVwXzQ1OGRlMzZmYjJiNDRhZjBiNDRlMjA0MjAxZTdkNTQ1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzQ0OGJkMDNiNWFmNzQ2MzQ4ZmFmYzYyNzI2NTE2OTc4ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDQzNjIyMiw3OC4zNTE5NjM4XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2M5NzAxOTdlOTFhYTRjODY4MzM1ZDEyMjE2ODIzOGY1ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sX2M0MGE4MTJlNDhmZDQ0NDVhZjFmZTgzZTk3ZGYwNTMxID0gJCgnPGRpdiBpZD0iaHRtbF9jNDBhODEyZTQ4ZmQ0NDQ1YWYxZmU4M2U5N2RmMDUzMSIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+R2FjaGlib3dsaTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYzk3MDE5N2U5MWFhNGM4NjgzMzVkMTIyMTY4MjM4ZjUuc2V0Q29udGVudChodG1sX2M0MGE4MTJlNDhmZDQ0NDVhZjFmZTgzZTk3ZGYwNTMxKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzQ0OGJkMDNiNWFmNzQ2MzQ4ZmFmYzYyNzI2NTE2OTc4LmJpbmRQb3B1cChwb3B1cF9jOTcwMTk3ZTkxYWE0Yzg2ODMzNWQxMjIxNjgyMzhmNSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9mNTBiNTM2ZDdmNWI0OGJiODFiZTQwMGRjMzQxMjRhZiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM5MDI2MzE1MDAwMDAwMyw3OC41MTY0ODExNzVdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiYmx1ZSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMzMTg2Y2MiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfM2JhOTkwM2E1MmViNGFhMzg1Y2RmOTllMjg0Zjg4MWMpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNDIxNzRmMTZiMmJkNGQzMjhjZjQ3NmU2MGRlYzM5YzggPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfOTlkOTFiNDc5NjMzNGFjNjljZWRkNGY1NzQ4NTZkYzkgPSAkKCc8ZGl2IGlkPSJodG1sXzk5ZDkxYjQ3OTYzMzRhYzY5Y2VkZDRmNTc0ODU2ZGM5IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5BbWJlcnBldDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfNDIxNzRmMTZiMmJkNGQzMjhjZjQ3NmU2MGRlYzM5Yzguc2V0Q29udGVudChodG1sXzk5ZDkxYjQ3OTYzMzRhYzY5Y2VkZDRmNTc0ODU2ZGM5KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2Y1MGI1MzZkN2Y1YjQ4YmI4MWJlNDAwZGMzNDEyNGFmLmJpbmRQb3B1cChwb3B1cF80MjE3NGYxNmIyYmQ0ZDMyOGNmNDc2ZTYwZGVjMzljOCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9iYTFhYjZlOWZkMzU0MGYxYWE3MTZlNjBkMWM3MTU0NCA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM1MDE2MTcsNzguNTUxMDkzOF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICJibHVlIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzMxODZjYyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF8zYmE5OTAzYTUyZWI0YWEzODVjZGY5OWUyODRmODgxYyk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9kZTY3MDMyOTRiZmU0MDg1YTkyMTNjYjM1ODM3NzIyNyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF8zZDA1YjhjZjM2MzA0ODQxODQ2N2VlNTc2ZWJkZTg4MyA9ICQoJzxkaXYgaWQ9Imh0bWxfM2QwNWI4Y2YzNjMwNDg0MTg0NjdlZTU3NmViZGU4ODMiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkxCIE5hZ2FyPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9kZTY3MDMyOTRiZmU0MDg1YTkyMTNjYjM1ODM3NzIyNy5zZXRDb250ZW50KGh0bWxfM2QwNWI4Y2YzNjMwNDg0MTg0NjdlZTU3NmViZGU4ODMpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfYmExYWI2ZTlmZDM1NDBmMWFhNzE2ZTYwZDFjNzE1NDQuYmluZFBvcHVwKHBvcHVwX2RlNjcwMzI5NGJmZTQwODVhOTIxM2NiMzU4Mzc3MjI3KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzBiMmIwNzg4NzI0MzQ4M2Y5M2YyNTFjMTBjZWRlNDM0ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDkzMDg0MSw3OC40MDU0NDA4XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogImJsdWUiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzE4NmNjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzNiYTk5MDNhNTJlYjRhYTM4NWNkZjk5ZTI4NGY4ODFjKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzBlZjQ2OTFjNjk3NzRkNDQ4ZDI3NzliYzQ0NDg2ZTNmID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzM5YjViNzRmY2NiODQ2NTNiZmUyNzkyMDg4Zjg4MDAyID0gJCgnPGRpdiBpZD0iaHRtbF8zOWI1Yjc0ZmNjYjg0NjUzYmZlMjc5MjA4OGY4ODAwMiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+S3VrYXRwYWxseTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMGVmNDY5MWM2OTc3NGQ0NDhkMjc3OWJjNDQ0ODZlM2Yuc2V0Q29udGVudChodG1sXzM5YjViNzRmY2NiODQ2NTNiZmUyNzkyMDg4Zjg4MDAyKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzBiMmIwNzg4NzI0MzQ4M2Y5M2YyNTFjMTBjZWRlNDM0LmJpbmRQb3B1cChwb3B1cF8wZWY0NjkxYzY5Nzc0ZDQ0OGQyNzc5YmM0NDQ4NmUzZik7CgogICAgICAgICAgICAKICAgICAgICAKPC9zY3JpcHQ+ onload=\"this.contentDocument.open();this.contentDocument.write(atob(this.getAttribute('data-html')));this.contentDocument.close();\" allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe></div></div>"
],
"text/plain": [
"<folium.folium.Map at 0x7f2e75597b70>"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"map_hyd = folium.Map(location=[hyd_location.latitude, hyd_location.longitude], zoom_start=10)\n",
"\n",
"# add markers to map\n",
"for lat, lng, neighborhood in zip(hyd_df['Latitude'], hyd_df['Longitude'], hyd_df['Neighborhood']):\n",
" label = '{}'.format(neighborhood)\n",
" label = folium.Popup(label, parse_html=True)\n",
" folium.CircleMarker(\n",
" [lat, lng],\n",
" radius=5,\n",
" popup=label,\n",
" color='blue',\n",
" fill=True,\n",
" fill_color='#3186cc',\n",
" fill_opacity=0.7).add_to(map_hyd) \n",
"\n",
" \n",
"map_hyd"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" The red color circle represents the Outer Ring Road of the city and blue dots represents the main neighborhoods of the city."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"***"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 5. Data Analysis:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.1 Exploring the Neighborhoods using Foursquare API"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Here I save Foursquare credentials with client_id and client_secret in a hidden cell, so that no body can use them other than me;)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"# @hidden_cell\n",
"VERSION = '20180605' # Foursquare API version\n",
"\n",
"CLIENT_ID = '4JK4TLSKPCBG3A4UGFOCLGMY4AH0WW3RAXJKXPF5XRKPKMJ3'\n",
"CLIENT_SECRET = 'ARBBD03PGFCEY0TXMN45ZMEAIJ1QNZSZYNOFZ25MNC2TGCP4'\n",
"CODE = 'EOLCY1TCJ3UZWHV4ASDPP24RKA3NQ5Q0NKXE1FK4VGCERBPN#_=_'\n",
"ACCESS_TOKEN = 'TXW53PPKEYED1VEQV3TOBGYULVNEFW233BFMX3TSK11XSD2J'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Now, let's get the top 100 venues that are within a radius of 2000 meters for each neighborhood using below code.\n",
" Below code first creates a url with 2000m as radius and venues limit to 100 for each neighborhood and then gets the results json using requests.get method, for each venue we get we will only take values like name, latitude,longitude and category."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"radius = 2000\n",
"LIMIT = 100\n",
"venues = []\n",
"for lat, long, neighborhood in zip(hyd_df['Latitude'], hyd_df['Longitude'], hyd_df['Neighborhood']):\n",
" \n",
" # create the API request URL\n",
" url = \"https://api.foursquare.com/v2/venues/explore?client_id={}&client_secret={}&v={}&ll={},{}&radius={}&limit={}\".format(\n",
" CLIENT_ID,\n",
" CLIENT_SECRET,\n",
" VERSION,\n",
" lat,\n",
" long,\n",
" radius, \n",
" LIMIT)\n",
" \n",
" # make the GET request\n",
" results = requests.get(url).json()[\"response\"]['groups'][0]['items']\n",
" \n",
" # return only relevant information for each nearby venue\n",
" for venue in results:\n",
" venues.append((\n",
" neighborhood,\n",
" lat, \n",
" long, \n",
" venue['venue']['name'], \n",
" venue['venue']['categories'][0]['name'],\n",
" venue['venue']['location']['lat'], \n",
" venue['venue']['location']['lng']))"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(883, 7)\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" <th>Venue_name</th>\n",
" <th>Venue_category</th>\n",
" <th>Venue_latitude</th>\n",
" <th>Venue_longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" <td>Sri Ramulu Theatre</td>\n",
" <td>Indie Movie Theater</td>\n",
" <td>17.467776</td>\n",
" <td>78.428811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" <td>Domino's Pizza</td>\n",
" <td>Pizza Place</td>\n",
" <td>17.441819</td>\n",
" <td>78.446165</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" <td>Just Bake</td>\n",
" <td>Bakery</td>\n",
" <td>17.445300</td>\n",
" <td>78.446561</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" <td>Sanath Nagar Bus Station</td>\n",
" <td>Bus Station</td>\n",
" <td>17.454899</td>\n",
" <td>78.447747</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Sanathnagar</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" <td>Greenland Restaurant</td>\n",
" <td>Indian Restaurant</td>\n",
" <td>17.443589</td>\n",
" <td>78.449170</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Latitude Longitude Venue_name \\\n",
"0 Sanathnagar 17.456965 78.443478 Sri Ramulu Theatre \n",
"1 Sanathnagar 17.456965 78.443478 Domino's Pizza \n",
"2 Sanathnagar 17.456965 78.443478 Just Bake \n",
"3 Sanathnagar 17.456965 78.443478 Sanath Nagar Bus Station \n",
"4 Sanathnagar 17.456965 78.443478 Greenland Restaurant \n",
"\n",
" Venue_category Venue_latitude Venue_longitude \n",
"0 Indie Movie Theater 17.467776 78.428811 \n",
"1 Pizza Place 17.441819 78.446165 \n",
"2 Bakery 17.445300 78.446561 \n",
"3 Bus Station 17.454899 78.447747 \n",
"4 Indian Restaurant 17.443589 78.449170 "
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# convert the venues list into a new DataFrame\n",
"hyd_venues_df = pd.DataFrame(venues)\n",
"\n",
"# define the column names\n",
"hyd_venues_df.columns = ['Neighborhood', 'Latitude', 'Longitude', 'Venue_name', 'Venue_category','Venue_latitude', 'Venue_longitude']\n",
"\n",
"print(hyd_venues_df.shape)\n",
"hyd_venues_df.head()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" <th>Venue_name</th>\n",
" <th>Venue_category</th>\n",
" <th>Venue_latitude</th>\n",
" <th>Venue_longitude</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Neighborhood</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alwal</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Amberpet</th>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Ameerpet</th>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Balanagar</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dilsukhnagar</th>\n",
" <td>13</td>\n",
" <td>13</td>\n",
" <td>13</td>\n",
" <td>13</td>\n",
" <td>13</td>\n",
" <td>13</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Gachibowli</th>\n",
" <td>72</td>\n",
" <td>72</td>\n",
" <td>72</td>\n",
" <td>72</td>\n",
" <td>72</td>\n",
" <td>72</td>\n",
" </tr>\n",
" <tr>\n",
" <th>HITEC City</th>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Hayathnagar</th>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jubilee Hills</th>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kapra</th>\n",
" <td>14</td>\n",
" <td>14</td>\n",
" <td>14</td>\n",
" <td>14</td>\n",
" <td>14</td>\n",
" <td>14</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Khairatabad</th>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" <td>100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kompally</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kukatpally</th>\n",
" <td>50</td>\n",
" <td>50</td>\n",
" <td>50</td>\n",
" <td>50</td>\n",
" <td>50</td>\n",
" <td>50</td>\n",
" </tr>\n",
" <tr>\n",
" <th>LB Nagar</th>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Malkajgiri</th>\n",
" <td>9</td>\n",
" <td>9</td>\n",
" <td>9</td>\n",
" <td>9</td>\n",
" <td>9</td>\n",
" <td>9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Mehdipatnam</th>\n",
" <td>48</td>\n",
" <td>48</td>\n",
" <td>48</td>\n",
" <td>48</td>\n",
" <td>48</td>\n",
" <td>48</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Musheerabad</th>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nampally</th>\n",
" <td>73</td>\n",
" <td>73</td>\n",
" <td>73</td>\n",
" <td>73</td>\n",
" <td>73</td>\n",
" <td>73</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Patancheru</th>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Rajendranagar</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sanathnagar</th>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Saroornagar</th>\n",
" <td>18</td>\n",
" <td>18</td>\n",
" <td>18</td>\n",
" <td>18</td>\n",
" <td>18</td>\n",
" <td>18</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Secunderabad</th>\n",
" <td>65</td>\n",
" <td>65</td>\n",
" <td>65</td>\n",
" <td>65</td>\n",
" <td>65</td>\n",
" <td>65</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Serilingampally</th>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Uppal</th>\n",
" <td>10</td>\n",
" <td>10</td>\n",
" <td>10</td>\n",
" <td>10</td>\n",
" <td>10</td>\n",
" <td>10</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Latitude Longitude Venue_name Venue_category \\\n",
"Neighborhood \n",
"Alwal 4 4 4 4 \n",
"Amberpet 21 21 21 21 \n",
"Ameerpet 100 100 100 100 \n",
"Balanagar 7 7 7 7 \n",
"Dilsukhnagar 13 13 13 13 \n",
"Gachibowli 72 72 72 72 \n",
"HITEC City 100 100 100 100 \n",
"Hayathnagar 3 3 3 3 \n",
"Jubilee Hills 100 100 100 100 \n",
"Kapra 14 14 14 14 \n",
"Khairatabad 100 100 100 100 \n",
"Kompally 7 7 7 7 \n",
"Kukatpally 50 50 50 50 \n",
"LB Nagar 12 12 12 12 \n",
"Malkajgiri 9 9 9 9 \n",
"Mehdipatnam 48 48 48 48 \n",
"Musheerabad 24 24 24 24 \n",
"Nampally 73 73 73 73 \n",
"Patancheru 5 5 5 5 \n",
"Rajendranagar 4 4 4 4 \n",
"Sanathnagar 17 17 17 17 \n",
"Saroornagar 18 18 18 18 \n",
"Secunderabad 65 65 65 65 \n",
"Serilingampally 7 7 7 7 \n",
"Uppal 10 10 10 10 \n",
"\n",
" Venue_latitude Venue_longitude \n",
"Neighborhood \n",
"Alwal 4 4 \n",
"Amberpet 21 21 \n",
"Ameerpet 100 100 \n",
"Balanagar 7 7 \n",
"Dilsukhnagar 13 13 \n",
"Gachibowli 72 72 \n",
"HITEC City 100 100 \n",
"Hayathnagar 3 3 \n",
"Jubilee Hills 100 100 \n",
"Kapra 14 14 \n",
"Khairatabad 100 100 \n",
"Kompally 7 7 \n",
"Kukatpally 50 50 \n",
"LB Nagar 12 12 \n",
"Malkajgiri 9 9 \n",
"Mehdipatnam 48 48 \n",
"Musheerabad 24 24 \n",
"Nampally 73 73 \n",
"Patancheru 5 5 \n",
"Rajendranagar 4 4 \n",
"Sanathnagar 17 17 \n",
"Saroornagar 18 18 \n",
"Secunderabad 65 65 \n",
"Serilingampally 7 7 \n",
"Uppal 10 10 "
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_venues_df.groupby([\"Neighborhood\"]).count()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"There are 131 uniques categories combining all the neighborhoods of the city\n"
]
}
],
"source": [
"print('There are {} uniques categories combining all the neighborhoods of the city'\n",
" .format(len(hyd_venues_df['Venue_category'].unique())))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets see the list of venue categories that are present in the city neighborhoods"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"array(['Indie Movie Theater', 'Pizza Place', 'Bakery', 'Bus Station',\n",
" 'Indian Restaurant', 'Sandwich Place', 'Metro Station',\n",
" 'Department Store', 'Breakfast Spot', 'Train Station',\n",
" 'Restaurant', 'Asian Restaurant', 'Juice Bar', 'BBQ Joint',\n",
" 'Falafel Restaurant', 'Steakhouse', 'Café', 'Chinese Restaurant',\n",
" 'Park', 'Ice Cream Shop', 'Fast Food Restaurant',\n",
" 'Italian Restaurant', 'Hookah Bar', 'Snack Place',\n",
" 'Vegetarian / Vegan Restaurant', 'Bookstore', 'Hotel Bar',\n",
" 'Hyderabadi Restaurant', 'Electronics Store', 'Coffee Shop',\n",
" 'Grocery Store', 'Diner', 'Shopping Mall', 'Multiplex', 'Tea Room',\n",
" 'Cricket Ground', 'Light Rail Station', 'Indian Sweet Shop',\n",
" 'Arcade', 'Gym', 'Hotel', 'Sports Bar', 'Dessert Shop',\n",
" 'Flea Market', 'Smoke Shop', 'Convenience Store', 'Movie Theater',\n",
" 'Miscellaneous Shop', 'Hotel Pool', 'Harbor / Marina', 'ATM',\n",
" 'Shipping Store', 'Bridal Shop', 'Gaming Cafe', 'Golf Course',\n",
" 'Food Court', 'Business Service', 'Gastropub',\n",
" 'Athletics & Sports', 'Mexican Restaurant', 'Afghan Restaurant',\n",
" 'South Indian Restaurant', 'Dumpling Restaurant', 'Burger Joint',\n",
" 'Lounge', 'Nightclub', 'Pub', 'Bistro', 'Arts & Crafts Store',\n",
" 'Office', 'Multicuisine Indian Restaurant', 'Cocktail Bar',\n",
" 'Mediterranean Restaurant', 'Furniture / Home Store', 'Laser Tag',\n",
" 'Beer Garden', 'Bowling Alley', 'Supermarket', 'Bed & Breakfast',\n",
" 'Stadium', 'Platform', 'Gas Station', 'Food', 'Clothing Store',\n",
" 'Bar', 'Performing Arts Venue', 'Thai Restaurant',\n",
" 'Bengali Restaurant', 'Rajasthani Restaurant', 'Concert Hall',\n",
" 'Deli / Bodega', 'Middle Eastern Restaurant', 'Boutique',\n",
" 'Food Truck', 'Cupcake Shop', 'North Indian Restaurant', 'Brewery',\n",
" 'Frozen Yogurt Shop', 'Spa', 'Dance Studio', 'Liquor Store',\n",
" 'Parsi Restaurant', 'Social Club', 'Irish Pub',\n",
" 'Comfort Food Restaurant', 'New American Restaurant',\n",
" 'Scenic Lookout', 'Chaat Place', 'Science Museum',\n",
" 'American Restaurant', 'Donut Shop', 'Lake', 'Historic Site',\n",
" 'Garden', 'Mattress Store', 'Shoe Store', 'Neighborhood',\n",
" 'Mobile Phone Shop', 'Fried Chicken Joint', 'Farmers Market',\n",
" 'Gift Shop', \"Women's Store\", 'Soccer Field',\n",
" 'Japanese Restaurant', 'Gym / Fitness Center', 'Andhra Restaurant',\n",
" 'Food & Drink Shop', 'General Entertainment', 'Butcher',\n",
" 'Shop & Service', 'Food Stand'], dtype=object)"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_venues_df['Venue_category'].unique()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets check for mall categories if present any as the main aim of this project is on shopping mall category"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"'Shopping Mall' in hyd_venues_df['Venue_category'].unique()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is true that Shopping Mall category is present in the fetched venues list"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.2 Analyze venues in each Neighborhood"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets analyze each neighborhood venues by making venue category as column using get_dummies method and add city Neighborhood column at the front of the dataframe and renaming it to Neighborhoods to avoid confusion with the category 'Neighborhood'"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(883, 131)\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhoods</th>\n",
" <th>ATM</th>\n",
" <th>Afghan Restaurant</th>\n",
" <th>American Restaurant</th>\n",
" <th>Andhra Restaurant</th>\n",
" <th>Arcade</th>\n",
" <th>Arts &amp; Crafts Store</th>\n",
" <th>Asian Restaurant</th>\n",
" <th>Athletics &amp; Sports</th>\n",
" <th>BBQ Joint</th>\n",
" <th>Bakery</th>\n",
" <th>Bar</th>\n",
" <th>Bed &amp; Breakfast</th>\n",
" <th>Beer Garden</th>\n",
" <th>Bengali Restaurant</th>\n",
" <th>Bistro</th>\n",
" <th>Bookstore</th>\n",
" <th>Boutique</th>\n",
" <th>Bowling Alley</th>\n",
" <th>Breakfast Spot</th>\n",
" <th>Brewery</th>\n",
" <th>Bridal Shop</th>\n",
" <th>Burger Joint</th>\n",
" <th>Bus Station</th>\n",
" <th>Business Service</th>\n",
" <th>Butcher</th>\n",
" <th>Café</th>\n",
" <th>Chaat Place</th>\n",
" <th>Chinese Restaurant</th>\n",
" <th>Clothing Store</th>\n",
" <th>Cocktail Bar</th>\n",
" <th>Coffee Shop</th>\n",
" <th>Comfort Food Restaurant</th>\n",
" <th>Concert Hall</th>\n",
" <th>Convenience Store</th>\n",
" <th>Cricket Ground</th>\n",
" <th>Cupcake Shop</th>\n",
" <th>Dance Studio</th>\n",
" <th>Deli / Bodega</th>\n",
" <th>Department Store</th>\n",
" <th>Dessert Shop</th>\n",
" <th>Diner</th>\n",
" <th>Donut Shop</th>\n",
" <th>Dumpling Restaurant</th>\n",
" <th>Electronics Store</th>\n",
" <th>Falafel Restaurant</th>\n",
" <th>Farmers Market</th>\n",
" <th>Fast Food Restaurant</th>\n",
" <th>Flea Market</th>\n",
" <th>Food</th>\n",
" <th>Food &amp; Drink Shop</th>\n",
" <th>Food Court</th>\n",
" <th>Food Stand</th>\n",
" <th>Food Truck</th>\n",
" <th>Fried Chicken Joint</th>\n",
" <th>Frozen Yogurt Shop</th>\n",
" <th>Furniture / Home Store</th>\n",
" <th>Gaming Cafe</th>\n",
" <th>Garden</th>\n",
" <th>Gas Station</th>\n",
" <th>Gastropub</th>\n",
" <th>General Entertainment</th>\n",
" <th>Gift Shop</th>\n",
" <th>Golf Course</th>\n",
" <th>Grocery Store</th>\n",
" <th>Gym</th>\n",
" <th>Gym / Fitness Center</th>\n",
" <th>Harbor / Marina</th>\n",
" <th>Historic Site</th>\n",
" <th>Hookah Bar</th>\n",
" <th>Hotel</th>\n",
" <th>Hotel Bar</th>\n",
" <th>Hotel Pool</th>\n",
" <th>Hyderabadi Restaurant</th>\n",
" <th>Ice Cream Shop</th>\n",
" <th>Indian Restaurant</th>\n",
" <th>Indian Sweet Shop</th>\n",
" <th>Indie Movie Theater</th>\n",
" <th>Irish Pub</th>\n",
" <th>Italian Restaurant</th>\n",
" <th>Japanese Restaurant</th>\n",
" <th>Juice Bar</th>\n",
" <th>Lake</th>\n",
" <th>Laser Tag</th>\n",
" <th>Light Rail Station</th>\n",
" <th>Liquor Store</th>\n",
" <th>Lounge</th>\n",
" <th>Mattress Store</th>\n",
" <th>Mediterranean Restaurant</th>\n",
" <th>Metro Station</th>\n",
" <th>Mexican Restaurant</th>\n",
" <th>Middle Eastern Restaurant</th>\n",
" <th>Miscellaneous Shop</th>\n",
" <th>Mobile Phone Shop</th>\n",
" <th>Movie Theater</th>\n",
" <th>Multicuisine Indian Restaurant</th>\n",
" <th>Multiplex</th>\n",
" <th>New American Restaurant</th>\n",
" <th>Nightclub</th>\n",
" <th>North Indian Restaurant</th>\n",
" <th>Office</th>\n",
" <th>Park</th>\n",
" <th>Parsi Restaurant</th>\n",
" <th>Performing Arts Venue</th>\n",
" <th>Pizza Place</th>\n",
" <th>Platform</th>\n",
" <th>Pub</th>\n",
" <th>Rajasthani Restaurant</th>\n",
" <th>Restaurant</th>\n",
" <th>Sandwich Place</th>\n",
" <th>Scenic Lookout</th>\n",
" <th>Science Museum</th>\n",
" <th>Shipping Store</th>\n",
" <th>Shoe Store</th>\n",
" <th>Shop &amp; Service</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Smoke Shop</th>\n",
" <th>Snack Place</th>\n",
" <th>Soccer Field</th>\n",
" <th>Social Club</th>\n",
" <th>South Indian Restaurant</th>\n",
" <th>Spa</th>\n",
" <th>Sports Bar</th>\n",
" <th>Stadium</th>\n",
" <th>Steakhouse</th>\n",
" <th>Supermarket</th>\n",
" <th>Tea Room</th>\n",
" <th>Thai Restaurant</th>\n",
" <th>Train Station</th>\n",
" <th>Vegetarian / Vegan Restaurant</th>\n",
" <th>Women's Store</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhoods ATM Afghan Restaurant American Restaurant \\\n",
"0 Sanathnagar 0 0 0 \n",
"1 Sanathnagar 0 0 0 \n",
"2 Sanathnagar 0 0 0 \n",
"3 Sanathnagar 0 0 0 \n",
"4 Sanathnagar 0 0 0 \n",
"\n",
" Andhra Restaurant Arcade Arts & Crafts Store Asian Restaurant \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Athletics & Sports BBQ Joint Bakery Bar Bed & Breakfast Beer Garden \\\n",
"0 0 0 0 0 0 0 \n",
"1 0 0 0 0 0 0 \n",
"2 0 0 1 0 0 0 \n",
"3 0 0 0 0 0 0 \n",
"4 0 0 0 0 0 0 \n",
"\n",
" Bengali Restaurant Bistro Bookstore Boutique Bowling Alley \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Breakfast Spot Brewery Bridal Shop Burger Joint Bus Station \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 1 \n",
"4 0 0 0 0 0 \n",
"\n",
" Business Service Butcher Café Chaat Place Chinese Restaurant \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Clothing Store Cocktail Bar Coffee Shop Comfort Food Restaurant \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Concert Hall Convenience Store Cricket Ground Cupcake Shop \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Dance Studio Deli / Bodega Department Store Dessert Shop Diner \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Donut Shop Dumpling Restaurant Electronics Store Falafel Restaurant \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Farmers Market Fast Food Restaurant Flea Market Food Food & Drink Shop \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Food Court Food Stand Food Truck Fried Chicken Joint \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Frozen Yogurt Shop Furniture / Home Store Gaming Cafe Garden \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Gas Station Gastropub General Entertainment Gift Shop Golf Course \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Grocery Store Gym Gym / Fitness Center Harbor / Marina Historic Site \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Hookah Bar Hotel Hotel Bar Hotel Pool Hyderabadi Restaurant \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Ice Cream Shop Indian Restaurant Indian Sweet Shop Indie Movie Theater \\\n",
"0 0 0 0 1 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 1 0 0 \n",
"\n",
" Irish Pub Italian Restaurant Japanese Restaurant Juice Bar Lake \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Laser Tag Light Rail Station Liquor Store Lounge Mattress Store \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Mediterranean Restaurant Metro Station Mexican Restaurant \\\n",
"0 0 0 0 \n",
"1 0 0 0 \n",
"2 0 0 0 \n",
"3 0 0 0 \n",
"4 0 0 0 \n",
"\n",
" Middle Eastern Restaurant Miscellaneous Shop Mobile Phone Shop \\\n",
"0 0 0 0 \n",
"1 0 0 0 \n",
"2 0 0 0 \n",
"3 0 0 0 \n",
"4 0 0 0 \n",
"\n",
" Movie Theater Multicuisine Indian Restaurant Multiplex \\\n",
"0 0 0 0 \n",
"1 0 0 0 \n",
"2 0 0 0 \n",
"3 0 0 0 \n",
"4 0 0 0 \n",
"\n",
" New American Restaurant Nightclub North Indian Restaurant Office Park \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Parsi Restaurant Performing Arts Venue Pizza Place Platform Pub \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 1 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Rajasthani Restaurant Restaurant Sandwich Place Scenic Lookout \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Science Museum Shipping Store Shoe Store Shop & Service Shopping Mall \\\n",
"0 0 0 0 0 0 \n",
"1 0 0 0 0 0 \n",
"2 0 0 0 0 0 \n",
"3 0 0 0 0 0 \n",
"4 0 0 0 0 0 \n",
"\n",
" Smoke Shop Snack Place Soccer Field Social Club \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" South Indian Restaurant Spa Sports Bar Stadium Steakhouse Supermarket \\\n",
"0 0 0 0 0 0 0 \n",
"1 0 0 0 0 0 0 \n",
"2 0 0 0 0 0 0 \n",
"3 0 0 0 0 0 0 \n",
"4 0 0 0 0 0 0 \n",
"\n",
" Tea Room Thai Restaurant Train Station Vegetarian / Vegan Restaurant \\\n",
"0 0 0 0 0 \n",
"1 0 0 0 0 \n",
"2 0 0 0 0 \n",
"3 0 0 0 0 \n",
"4 0 0 0 0 \n",
"\n",
" Women's Store \n",
"0 0 \n",
"1 0 \n",
"2 0 \n",
"3 0 \n",
"4 0 "
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# one hot encoding\n",
"val = hyd_venues_df['Neighborhood'] \n",
"\n",
"hyd_data_onehot = pd.get_dummies(hyd_venues_df[['Venue_category']], prefix=\"\", prefix_sep=\"\")\n",
"\n",
"# dropping the existing Neighborhood column\n",
"hyd_data_onehot.drop(['Neighborhood'], inplace=True,axis=1)\n",
"\n",
"# add neighborhood column back to dataframe in the front column\n",
"hyd_data_onehot.insert(loc=0, column='Neighborhoods', value=val)\n",
"\n",
"print(hyd_data_onehot.shape)\n",
"hyd_data_onehot.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets group the neighborhoods and calculate the mean of each category and reset the index"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(25, 131)\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhoods</th>\n",
" <th>ATM</th>\n",
" <th>Afghan Restaurant</th>\n",
" <th>American Restaurant</th>\n",
" <th>Andhra Restaurant</th>\n",
" <th>Arcade</th>\n",
" <th>Arts &amp; Crafts Store</th>\n",
" <th>Asian Restaurant</th>\n",
" <th>Athletics &amp; Sports</th>\n",
" <th>BBQ Joint</th>\n",
" <th>Bakery</th>\n",
" <th>Bar</th>\n",
" <th>Bed &amp; Breakfast</th>\n",
" <th>Beer Garden</th>\n",
" <th>Bengali Restaurant</th>\n",
" <th>Bistro</th>\n",
" <th>Bookstore</th>\n",
" <th>Boutique</th>\n",
" <th>Bowling Alley</th>\n",
" <th>Breakfast Spot</th>\n",
" <th>Brewery</th>\n",
" <th>Bridal Shop</th>\n",
" <th>Burger Joint</th>\n",
" <th>Bus Station</th>\n",
" <th>Business Service</th>\n",
" <th>Butcher</th>\n",
" <th>Café</th>\n",
" <th>Chaat Place</th>\n",
" <th>Chinese Restaurant</th>\n",
" <th>Clothing Store</th>\n",
" <th>Cocktail Bar</th>\n",
" <th>Coffee Shop</th>\n",
" <th>Comfort Food Restaurant</th>\n",
" <th>Concert Hall</th>\n",
" <th>Convenience Store</th>\n",
" <th>Cricket Ground</th>\n",
" <th>Cupcake Shop</th>\n",
" <th>Dance Studio</th>\n",
" <th>Deli / Bodega</th>\n",
" <th>Department Store</th>\n",
" <th>Dessert Shop</th>\n",
" <th>Diner</th>\n",
" <th>Donut Shop</th>\n",
" <th>Dumpling Restaurant</th>\n",
" <th>Electronics Store</th>\n",
" <th>Falafel Restaurant</th>\n",
" <th>Farmers Market</th>\n",
" <th>Fast Food Restaurant</th>\n",
" <th>Flea Market</th>\n",
" <th>Food</th>\n",
" <th>Food &amp; Drink Shop</th>\n",
" <th>Food Court</th>\n",
" <th>Food Stand</th>\n",
" <th>Food Truck</th>\n",
" <th>Fried Chicken Joint</th>\n",
" <th>Frozen Yogurt Shop</th>\n",
" <th>Furniture / Home Store</th>\n",
" <th>Gaming Cafe</th>\n",
" <th>Garden</th>\n",
" <th>Gas Station</th>\n",
" <th>Gastropub</th>\n",
" <th>General Entertainment</th>\n",
" <th>Gift Shop</th>\n",
" <th>Golf Course</th>\n",
" <th>Grocery Store</th>\n",
" <th>Gym</th>\n",
" <th>Gym / Fitness Center</th>\n",
" <th>Harbor / Marina</th>\n",
" <th>Historic Site</th>\n",
" <th>Hookah Bar</th>\n",
" <th>Hotel</th>\n",
" <th>Hotel Bar</th>\n",
" <th>Hotel Pool</th>\n",
" <th>Hyderabadi Restaurant</th>\n",
" <th>Ice Cream Shop</th>\n",
" <th>Indian Restaurant</th>\n",
" <th>Indian Sweet Shop</th>\n",
" <th>Indie Movie Theater</th>\n",
" <th>Irish Pub</th>\n",
" <th>Italian Restaurant</th>\n",
" <th>Japanese Restaurant</th>\n",
" <th>Juice Bar</th>\n",
" <th>Lake</th>\n",
" <th>Laser Tag</th>\n",
" <th>Light Rail Station</th>\n",
" <th>Liquor Store</th>\n",
" <th>Lounge</th>\n",
" <th>Mattress Store</th>\n",
" <th>Mediterranean Restaurant</th>\n",
" <th>Metro Station</th>\n",
" <th>Mexican Restaurant</th>\n",
" <th>Middle Eastern Restaurant</th>\n",
" <th>Miscellaneous Shop</th>\n",
" <th>Mobile Phone Shop</th>\n",
" <th>Movie Theater</th>\n",
" <th>Multicuisine Indian Restaurant</th>\n",
" <th>Multiplex</th>\n",
" <th>New American Restaurant</th>\n",
" <th>Nightclub</th>\n",
" <th>North Indian Restaurant</th>\n",
" <th>Office</th>\n",
" <th>Park</th>\n",
" <th>Parsi Restaurant</th>\n",
" <th>Performing Arts Venue</th>\n",
" <th>Pizza Place</th>\n",
" <th>Platform</th>\n",
" <th>Pub</th>\n",
" <th>Rajasthani Restaurant</th>\n",
" <th>Restaurant</th>\n",
" <th>Sandwich Place</th>\n",
" <th>Scenic Lookout</th>\n",
" <th>Science Museum</th>\n",
" <th>Shipping Store</th>\n",
" <th>Shoe Store</th>\n",
" <th>Shop &amp; Service</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Smoke Shop</th>\n",
" <th>Snack Place</th>\n",
" <th>Soccer Field</th>\n",
" <th>Social Club</th>\n",
" <th>South Indian Restaurant</th>\n",
" <th>Spa</th>\n",
" <th>Sports Bar</th>\n",
" <th>Stadium</th>\n",
" <th>Steakhouse</th>\n",
" <th>Supermarket</th>\n",
" <th>Tea Room</th>\n",
" <th>Thai Restaurant</th>\n",
" <th>Train Station</th>\n",
" <th>Vegetarian / Vegan Restaurant</th>\n",
" <th>Women's Store</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.190476</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.095238</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.030000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.020000</td>\n",
" <td>0.190000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.153846</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Gachibowli</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.041667</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.027778</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.055556</td>\n",
" <td>0.194444</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.027778</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>HITEC City</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.01</td>\n",
" <td>0.020000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.130000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.060000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Hayathnagar</td>\n",
" <td>0.666667</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.333333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.020000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.110000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.060000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.03</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.030000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.02</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Kapra</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Khairatabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.030000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.060000</td>\n",
" <td>0.010000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.030000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.090000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Kompally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.285714</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Kukatpally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.080000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.160000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.180000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.080000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>LB Nagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.166667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Malkajgiri</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.062500</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.041667</td>\n",
" <td>0.187500</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.062500</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Musheerabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.125000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.125000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Nampally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.054795</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.054795</td>\n",
" <td>0.013699</td>\n",
" <td>0.041096</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.082192</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.054795</td>\n",
" <td>0.123288</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.0</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.027397</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.041096</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Patancheru</td>\n",
" <td>0.600000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.2</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.2</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Rajendranagar</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.25</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.117647</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Saroornagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.166667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Secunderabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.061538</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.046154</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.107692</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.123077</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Serilingampally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.142857</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Uppal</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.100000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.1</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.200000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhoods ATM Afghan Restaurant American Restaurant \\\n",
"0 Alwal 0.000000 0.00 0.00 \n",
"1 Amberpet 0.000000 0.00 0.00 \n",
"2 Ameerpet 0.000000 0.00 0.00 \n",
"3 Balanagar 0.000000 0.00 0.00 \n",
"4 Dilsukhnagar 0.000000 0.00 0.00 \n",
"5 Gachibowli 0.000000 0.00 0.00 \n",
"6 HITEC City 0.000000 0.01 0.00 \n",
"7 Hayathnagar 0.666667 0.00 0.00 \n",
"8 Jubilee Hills 0.000000 0.00 0.00 \n",
"9 Kapra 0.000000 0.00 0.00 \n",
"10 Khairatabad 0.000000 0.00 0.01 \n",
"11 Kompally 0.000000 0.00 0.00 \n",
"12 Kukatpally 0.000000 0.00 0.02 \n",
"13 LB Nagar 0.000000 0.00 0.00 \n",
"14 Malkajgiri 0.000000 0.00 0.00 \n",
"15 Mehdipatnam 0.000000 0.00 0.00 \n",
"16 Musheerabad 0.000000 0.00 0.00 \n",
"17 Nampally 0.000000 0.00 0.00 \n",
"18 Patancheru 0.600000 0.00 0.00 \n",
"19 Rajendranagar 0.250000 0.00 0.00 \n",
"20 Sanathnagar 0.000000 0.00 0.00 \n",
"21 Saroornagar 0.000000 0.00 0.00 \n",
"22 Secunderabad 0.000000 0.00 0.00 \n",
"23 Serilingampally 0.000000 0.00 0.00 \n",
"24 Uppal 0.000000 0.00 0.00 \n",
"\n",
" Andhra Restaurant Arcade Arts & Crafts Store Asian Restaurant \\\n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.00 0.010000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.00 0.000000 \n",
"6 0.000000 0.000000 0.01 0.040000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"8 0.000000 0.000000 0.00 0.010000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.00 0.010000 \n",
"11 0.000000 0.142857 0.00 0.000000 \n",
"12 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.083333 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"15 0.000000 0.000000 0.00 0.062500 \n",
"16 0.000000 0.000000 0.00 0.083333 \n",
"17 0.000000 0.000000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.058824 \n",
"21 0.000000 0.000000 0.00 0.000000 \n",
"22 0.000000 0.030769 0.00 0.015385 \n",
"23 0.000000 0.142857 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Athletics & Sports BBQ Joint Bakery Bar Bed & Breakfast \\\n",
"0 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"1 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"2 0.00 0.010000 0.030000 0.010000 0.000000 \n",
"3 0.00 0.000000 0.142857 0.000000 0.000000 \n",
"4 0.00 0.000000 0.076923 0.000000 0.000000 \n",
"5 0.00 0.013889 0.041667 0.013889 0.000000 \n",
"6 0.01 0.020000 0.020000 0.000000 0.010000 \n",
"7 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"8 0.00 0.020000 0.020000 0.010000 0.000000 \n",
"9 0.00 0.000000 0.071429 0.000000 0.000000 \n",
"10 0.00 0.010000 0.020000 0.000000 0.000000 \n",
"11 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"12 0.02 0.000000 0.080000 0.000000 0.000000 \n",
"13 0.00 0.000000 0.000000 0.000000 0.083333 \n",
"14 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"15 0.00 0.020833 0.020833 0.000000 0.000000 \n",
"16 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"17 0.00 0.000000 0.054795 0.000000 0.000000 \n",
"18 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.00 0.000000 0.117647 0.000000 0.000000 \n",
"21 0.00 0.000000 0.055556 0.000000 0.055556 \n",
"22 0.00 0.000000 0.076923 0.000000 0.000000 \n",
"23 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"\n",
" Beer Garden Bengali Restaurant Bistro Bookstore Boutique \\\n",
"0 0.00 0.00 0.00 0.000000 0.00 \n",
"1 0.00 0.00 0.00 0.000000 0.00 \n",
"2 0.00 0.01 0.00 0.030000 0.01 \n",
"3 0.00 0.00 0.00 0.000000 0.00 \n",
"4 0.00 0.00 0.00 0.000000 0.00 \n",
"5 0.00 0.00 0.00 0.000000 0.00 \n",
"6 0.01 0.00 0.01 0.000000 0.00 \n",
"7 0.00 0.00 0.00 0.000000 0.00 \n",
"8 0.01 0.00 0.01 0.000000 0.00 \n",
"9 0.00 0.00 0.00 0.000000 0.00 \n",
"10 0.00 0.00 0.01 0.030000 0.00 \n",
"11 0.00 0.00 0.00 0.000000 0.00 \n",
"12 0.00 0.00 0.00 0.000000 0.00 \n",
"13 0.00 0.00 0.00 0.000000 0.00 \n",
"14 0.00 0.00 0.00 0.000000 0.00 \n",
"15 0.00 0.00 0.00 0.020833 0.00 \n",
"16 0.00 0.00 0.00 0.000000 0.00 \n",
"17 0.00 0.00 0.00 0.000000 0.00 \n",
"18 0.00 0.00 0.00 0.000000 0.00 \n",
"19 0.00 0.00 0.00 0.000000 0.00 \n",
"20 0.00 0.00 0.00 0.000000 0.00 \n",
"21 0.00 0.00 0.00 0.000000 0.00 \n",
"22 0.00 0.00 0.00 0.000000 0.00 \n",
"23 0.00 0.00 0.00 0.000000 0.00 \n",
"24 0.00 0.00 0.00 0.000000 0.00 \n",
"\n",
" Bowling Alley Breakfast Spot Brewery Bridal Shop Burger Joint \\\n",
"0 0.000000 0.000000 0.000000 0.0 0.00 \n",
"1 0.000000 0.000000 0.000000 0.0 0.00 \n",
"2 0.000000 0.020000 0.000000 0.0 0.00 \n",
"3 0.000000 0.000000 0.000000 0.0 0.00 \n",
"4 0.076923 0.000000 0.000000 0.0 0.00 \n",
"5 0.000000 0.000000 0.013889 0.0 0.00 \n",
"6 0.010000 0.010000 0.000000 0.0 0.01 \n",
"7 0.000000 0.000000 0.000000 0.0 0.00 \n",
"8 0.010000 0.010000 0.040000 0.0 0.00 \n",
"9 0.000000 0.000000 0.000000 0.0 0.00 \n",
"10 0.000000 0.000000 0.000000 0.0 0.00 \n",
"11 0.000000 0.000000 0.000000 0.0 0.00 \n",
"12 0.000000 0.000000 0.000000 0.0 0.00 \n",
"13 0.000000 0.000000 0.000000 0.0 0.00 \n",
"14 0.000000 0.111111 0.000000 0.0 0.00 \n",
"15 0.000000 0.000000 0.000000 0.0 0.00 \n",
"16 0.000000 0.000000 0.000000 0.0 0.00 \n",
"17 0.000000 0.027397 0.000000 0.0 0.00 \n",
"18 0.000000 0.000000 0.000000 0.2 0.00 \n",
"19 0.000000 0.250000 0.000000 0.0 0.00 \n",
"20 0.000000 0.058824 0.000000 0.0 0.00 \n",
"21 0.055556 0.000000 0.000000 0.0 0.00 \n",
"22 0.000000 0.000000 0.000000 0.0 0.00 \n",
"23 0.000000 0.000000 0.000000 0.0 0.00 \n",
"24 0.000000 0.000000 0.000000 0.0 0.00 \n",
"\n",
" Bus Station Business Service Butcher Café Chaat Place \\\n",
"0 0.250000 0.00 0.00 0.000000 0.000000 \n",
"1 0.000000 0.00 0.00 0.047619 0.000000 \n",
"2 0.000000 0.00 0.00 0.040000 0.000000 \n",
"3 0.000000 0.00 0.00 0.000000 0.000000 \n",
"4 0.000000 0.00 0.00 0.153846 0.000000 \n",
"5 0.000000 0.00 0.00 0.013889 0.000000 \n",
"6 0.000000 0.00 0.00 0.100000 0.000000 \n",
"7 0.000000 0.00 0.00 0.000000 0.000000 \n",
"8 0.000000 0.00 0.00 0.110000 0.000000 \n",
"9 0.000000 0.00 0.00 0.142857 0.000000 \n",
"10 0.000000 0.00 0.00 0.060000 0.010000 \n",
"11 0.000000 0.00 0.00 0.000000 0.000000 \n",
"12 0.000000 0.00 0.02 0.020000 0.000000 \n",
"13 0.000000 0.00 0.00 0.000000 0.000000 \n",
"14 0.000000 0.00 0.00 0.111111 0.000000 \n",
"15 0.000000 0.00 0.00 0.083333 0.000000 \n",
"16 0.000000 0.00 0.00 0.041667 0.000000 \n",
"17 0.013699 0.00 0.00 0.054795 0.013699 \n",
"18 0.000000 0.00 0.00 0.000000 0.000000 \n",
"19 0.000000 0.25 0.00 0.000000 0.000000 \n",
"20 0.117647 0.00 0.00 0.000000 0.000000 \n",
"21 0.000000 0.00 0.00 0.055556 0.000000 \n",
"22 0.000000 0.00 0.00 0.030769 0.000000 \n",
"23 0.000000 0.00 0.00 0.000000 0.000000 \n",
"24 0.100000 0.00 0.00 0.000000 0.000000 \n",
"\n",
" Chinese Restaurant Clothing Store Cocktail Bar Coffee Shop \\\n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.095238 \n",
"2 0.040000 0.030000 0.01 0.040000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.00 0.027778 \n",
"6 0.010000 0.000000 0.01 0.040000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"8 0.010000 0.000000 0.02 0.060000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"10 0.030000 0.000000 0.00 0.040000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.020000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"15 0.020833 0.000000 0.00 0.020833 \n",
"16 0.000000 0.000000 0.00 0.041667 \n",
"17 0.041096 0.013699 0.00 0.013699 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.055556 \n",
"22 0.030769 0.000000 0.00 0.061538 \n",
"23 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Comfort Food Restaurant Concert Hall Convenience Store Cricket Ground \\\n",
"0 0.00 0.00 0.000000 0.000000 \n",
"1 0.00 0.00 0.095238 0.000000 \n",
"2 0.00 0.01 0.010000 0.000000 \n",
"3 0.00 0.00 0.000000 0.000000 \n",
"4 0.00 0.00 0.076923 0.000000 \n",
"5 0.00 0.00 0.000000 0.000000 \n",
"6 0.00 0.00 0.000000 0.000000 \n",
"7 0.00 0.00 0.000000 0.000000 \n",
"8 0.01 0.00 0.000000 0.000000 \n",
"9 0.00 0.00 0.000000 0.000000 \n",
"10 0.00 0.00 0.010000 0.000000 \n",
"11 0.00 0.00 0.000000 0.000000 \n",
"12 0.00 0.00 0.000000 0.000000 \n",
"13 0.00 0.00 0.000000 0.000000 \n",
"14 0.00 0.00 0.000000 0.111111 \n",
"15 0.00 0.00 0.000000 0.000000 \n",
"16 0.00 0.00 0.041667 0.000000 \n",
"17 0.00 0.00 0.000000 0.000000 \n",
"18 0.00 0.00 0.000000 0.000000 \n",
"19 0.00 0.00 0.000000 0.000000 \n",
"20 0.00 0.00 0.000000 0.000000 \n",
"21 0.00 0.00 0.000000 0.000000 \n",
"22 0.00 0.00 0.015385 0.000000 \n",
"23 0.00 0.00 0.000000 0.000000 \n",
"24 0.00 0.00 0.100000 0.100000 \n",
"\n",
" Cupcake Shop Dance Studio Deli / Bodega Department Store Dessert Shop \\\n",
"0 0.00 0.00 0.00 0.250000 0.000000 \n",
"1 0.00 0.00 0.00 0.000000 0.000000 \n",
"2 0.00 0.00 0.02 0.020000 0.000000 \n",
"3 0.00 0.00 0.00 0.000000 0.000000 \n",
"4 0.00 0.00 0.00 0.076923 0.000000 \n",
"5 0.00 0.00 0.00 0.041667 0.013889 \n",
"6 0.00 0.00 0.00 0.020000 0.010000 \n",
"7 0.00 0.00 0.00 0.000000 0.000000 \n",
"8 0.01 0.01 0.01 0.000000 0.030000 \n",
"9 0.00 0.00 0.00 0.071429 0.000000 \n",
"10 0.00 0.00 0.00 0.010000 0.000000 \n",
"11 0.00 0.00 0.00 0.000000 0.000000 \n",
"12 0.00 0.00 0.00 0.000000 0.000000 \n",
"13 0.00 0.00 0.00 0.083333 0.000000 \n",
"14 0.00 0.00 0.00 0.111111 0.000000 \n",
"15 0.00 0.00 0.00 0.000000 0.000000 \n",
"16 0.00 0.00 0.00 0.000000 0.000000 \n",
"17 0.00 0.00 0.00 0.013699 0.013699 \n",
"18 0.00 0.00 0.00 0.000000 0.000000 \n",
"19 0.00 0.00 0.00 0.000000 0.000000 \n",
"20 0.00 0.00 0.00 0.058824 0.000000 \n",
"21 0.00 0.00 0.00 0.000000 0.000000 \n",
"22 0.00 0.00 0.00 0.015385 0.015385 \n",
"23 0.00 0.00 0.00 0.000000 0.000000 \n",
"24 0.00 0.00 0.00 0.000000 0.000000 \n",
"\n",
" Diner Donut Shop Dumpling Restaurant Electronics Store \\\n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.047619 \n",
"2 0.020000 0.000000 0.00 0.010000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"5 0.000000 0.013889 0.00 0.000000 \n",
"6 0.010000 0.000000 0.01 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"8 0.000000 0.000000 0.00 0.000000 \n",
"9 0.071429 0.000000 0.00 0.071429 \n",
"10 0.000000 0.020000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.083333 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"15 0.020833 0.000000 0.00 0.041667 \n",
"16 0.000000 0.000000 0.00 0.000000 \n",
"17 0.013699 0.000000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.055556 \n",
"22 0.000000 0.000000 0.00 0.030769 \n",
"23 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Falafel Restaurant Farmers Market Fast Food Restaurant Flea Market \\\n",
"0 0.000000 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.000000 0.000000 0.000000 \n",
"2 0.000000 0.000000 0.030000 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.076923 0.000000 \n",
"5 0.000000 0.000000 0.027778 0.000000 \n",
"6 0.000000 0.000000 0.040000 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.000000 0.000000 0.000000 \n",
"9 0.000000 0.000000 0.142857 0.000000 \n",
"10 0.000000 0.000000 0.060000 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.160000 0.000000 \n",
"13 0.000000 0.000000 0.083333 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.000000 \n",
"15 0.020833 0.000000 0.083333 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.041667 \n",
"17 0.000000 0.013699 0.027397 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.000000 \n",
"22 0.000000 0.000000 0.046154 0.030769 \n",
"23 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 0.100000 \n",
"\n",
" Food Food & Drink Shop Food Court Food Stand Food Truck \\\n",
"0 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.047619 0.000000 0.00 0.000000 \n",
"2 0.010000 0.000000 0.000000 0.00 0.010000 \n",
"3 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"5 0.000000 0.000000 0.013889 0.00 0.013889 \n",
"6 0.000000 0.000000 0.020000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"8 0.000000 0.000000 0.010000 0.00 0.010000 \n",
"9 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.010000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"12 0.020000 0.000000 0.000000 0.02 0.000000 \n",
"13 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"15 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"16 0.000000 0.000000 0.041667 0.00 0.000000 \n",
"17 0.013699 0.000000 0.000000 0.00 0.013699 \n",
"18 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.250000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"22 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"23 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"24 0.100000 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Fried Chicken Joint Frozen Yogurt Shop Furniture / Home Store \\\n",
"0 0.000000 0.00 0.000000 \n",
"1 0.000000 0.00 0.000000 \n",
"2 0.000000 0.00 0.020000 \n",
"3 0.000000 0.00 0.000000 \n",
"4 0.000000 0.00 0.000000 \n",
"5 0.000000 0.00 0.013889 \n",
"6 0.000000 0.00 0.010000 \n",
"7 0.000000 0.00 0.000000 \n",
"8 0.000000 0.01 0.000000 \n",
"9 0.000000 0.00 0.000000 \n",
"10 0.000000 0.00 0.010000 \n",
"11 0.000000 0.00 0.000000 \n",
"12 0.000000 0.00 0.000000 \n",
"13 0.000000 0.00 0.000000 \n",
"14 0.000000 0.00 0.000000 \n",
"15 0.000000 0.00 0.000000 \n",
"16 0.000000 0.00 0.000000 \n",
"17 0.013699 0.00 0.000000 \n",
"18 0.000000 0.00 0.000000 \n",
"19 0.000000 0.00 0.000000 \n",
"20 0.000000 0.00 0.000000 \n",
"21 0.000000 0.00 0.000000 \n",
"22 0.000000 0.00 0.000000 \n",
"23 0.000000 0.00 0.000000 \n",
"24 0.000000 0.00 0.000000 \n",
"\n",
" Gaming Cafe Garden Gas Station Gastropub General Entertainment \\\n",
"0 0.000000 0.000000 0.0 0.00 0.000000 \n",
"1 0.000000 0.000000 0.0 0.00 0.047619 \n",
"2 0.000000 0.000000 0.0 0.00 0.000000 \n",
"3 0.000000 0.000000 0.0 0.00 0.000000 \n",
"4 0.000000 0.000000 0.0 0.00 0.000000 \n",
"5 0.000000 0.013889 0.0 0.00 0.000000 \n",
"6 0.000000 0.000000 0.0 0.01 0.000000 \n",
"7 0.000000 0.000000 0.0 0.00 0.000000 \n",
"8 0.010000 0.000000 0.0 0.01 0.000000 \n",
"9 0.000000 0.000000 0.0 0.00 0.000000 \n",
"10 0.000000 0.010000 0.0 0.00 0.000000 \n",
"11 0.142857 0.000000 0.0 0.00 0.000000 \n",
"12 0.000000 0.000000 0.0 0.00 0.000000 \n",
"13 0.000000 0.000000 0.0 0.00 0.000000 \n",
"14 0.000000 0.000000 0.0 0.00 0.000000 \n",
"15 0.000000 0.000000 0.0 0.00 0.000000 \n",
"16 0.000000 0.000000 0.0 0.00 0.000000 \n",
"17 0.000000 0.000000 0.0 0.00 0.000000 \n",
"18 0.000000 0.000000 0.0 0.00 0.000000 \n",
"19 0.000000 0.000000 0.0 0.00 0.000000 \n",
"20 0.000000 0.000000 0.0 0.00 0.000000 \n",
"21 0.000000 0.000000 0.0 0.00 0.000000 \n",
"22 0.000000 0.000000 0.0 0.00 0.000000 \n",
"23 0.000000 0.000000 0.0 0.00 0.000000 \n",
"24 0.000000 0.000000 0.1 0.00 0.000000 \n",
"\n",
" Gift Shop Golf Course Grocery Store Gym Gym / Fitness Center \\\n",
"0 0.000000 0.000000 0.000000 0.250000 0.000000 \n",
"1 0.000000 0.000000 0.047619 0.000000 0.000000 \n",
"2 0.000000 0.000000 0.000000 0.010000 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"5 0.000000 0.013889 0.000000 0.000000 0.013889 \n",
"6 0.000000 0.000000 0.000000 0.010000 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.000000 0.000000 0.020000 0.000000 \n",
"9 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"10 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.142857 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 0.020000 0.000000 \n",
"13 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"15 0.000000 0.000000 0.020833 0.000000 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"17 0.013699 0.000000 0.000000 0.000000 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"22 0.000000 0.000000 0.000000 0.015385 0.000000 \n",
"23 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"\n",
" Harbor / Marina Historic Site Hookah Bar Hotel Hotel Bar \\\n",
"0 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"2 0.000000 0.00 0.020000 0.050000 0.000000 \n",
"3 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.00 0.076923 0.000000 0.000000 \n",
"5 0.000000 0.00 0.000000 0.041667 0.000000 \n",
"6 0.000000 0.00 0.000000 0.050000 0.000000 \n",
"7 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.00 0.040000 0.030000 0.000000 \n",
"9 0.000000 0.00 0.000000 0.071429 0.000000 \n",
"10 0.000000 0.01 0.000000 0.060000 0.030000 \n",
"11 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.00 0.000000 0.000000 0.020000 \n",
"13 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"15 0.000000 0.00 0.020833 0.000000 0.020833 \n",
"16 0.000000 0.00 0.000000 0.083333 0.041667 \n",
"17 0.000000 0.00 0.000000 0.082192 0.027397 \n",
"18 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"22 0.030769 0.00 0.015385 0.107692 0.015385 \n",
"23 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"\n",
" Hotel Pool Hyderabadi Restaurant Ice Cream Shop Indian Restaurant \\\n",
"0 0.000000 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.000000 0.047619 0.190476 \n",
"2 0.000000 0.010000 0.020000 0.190000 \n",
"3 0.000000 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.076923 \n",
"5 0.000000 0.013889 0.055556 0.194444 \n",
"6 0.000000 0.000000 0.010000 0.130000 \n",
"7 0.000000 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.000000 0.040000 0.060000 \n",
"9 0.000000 0.000000 0.000000 0.142857 \n",
"10 0.000000 0.020000 0.030000 0.100000 \n",
"11 0.000000 0.000000 0.000000 0.285714 \n",
"12 0.000000 0.000000 0.060000 0.180000 \n",
"13 0.000000 0.083333 0.000000 0.083333 \n",
"14 0.000000 0.000000 0.000000 0.111111 \n",
"15 0.000000 0.020833 0.041667 0.187500 \n",
"16 0.000000 0.000000 0.000000 0.250000 \n",
"17 0.000000 0.027397 0.054795 0.123288 \n",
"18 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.117647 \n",
"21 0.000000 0.055556 0.000000 0.166667 \n",
"22 0.015385 0.015385 0.015385 0.123077 \n",
"23 0.000000 0.000000 0.142857 0.142857 \n",
"24 0.000000 0.000000 0.000000 0.200000 \n",
"\n",
" Indian Sweet Shop Indie Movie Theater Irish Pub Italian Restaurant \\\n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.285714 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.00 0.013889 \n",
"6 0.000000 0.000000 0.00 0.030000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"8 0.000000 0.000000 0.01 0.040000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.00 0.010000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.111111 0.00 0.000000 \n",
"15 0.000000 0.000000 0.00 0.020833 \n",
"16 0.000000 0.000000 0.00 0.000000 \n",
"17 0.000000 0.000000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.117647 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.000000 \n",
"22 0.015385 0.000000 0.00 0.000000 \n",
"23 0.142857 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Japanese Restaurant Juice Bar Lake Laser Tag Light Rail Station \\\n",
"0 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.000000 0.00 0.000000 \n",
"6 0.000000 0.000000 0.000000 0.01 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"8 0.000000 0.010000 0.000000 0.00 0.000000 \n",
"9 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.010000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.083333 0.00 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.00 0.111111 \n",
"15 0.000000 0.041667 0.000000 0.00 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"17 0.000000 0.027397 0.000000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.058824 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"22 0.000000 0.015385 0.000000 0.00 0.000000 \n",
"23 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Liquor Store Lounge Mattress Store Mediterranean Restaurant \\\n",
"0 0.000000 0.000000 0.000000 0.00 \n",
"1 0.000000 0.000000 0.000000 0.00 \n",
"2 0.000000 0.010000 0.000000 0.00 \n",
"3 0.000000 0.000000 0.000000 0.00 \n",
"4 0.000000 0.000000 0.000000 0.00 \n",
"5 0.013889 0.013889 0.000000 0.00 \n",
"6 0.000000 0.020000 0.000000 0.01 \n",
"7 0.000000 0.000000 0.333333 0.00 \n",
"8 0.010000 0.050000 0.000000 0.01 \n",
"9 0.000000 0.000000 0.000000 0.00 \n",
"10 0.000000 0.020000 0.000000 0.00 \n",
"11 0.000000 0.000000 0.000000 0.00 \n",
"12 0.000000 0.000000 0.000000 0.00 \n",
"13 0.000000 0.000000 0.000000 0.00 \n",
"14 0.000000 0.000000 0.000000 0.00 \n",
"15 0.000000 0.000000 0.000000 0.00 \n",
"16 0.000000 0.000000 0.000000 0.00 \n",
"17 0.000000 0.013699 0.000000 0.00 \n",
"18 0.000000 0.000000 0.000000 0.00 \n",
"19 0.000000 0.000000 0.000000 0.00 \n",
"20 0.000000 0.000000 0.000000 0.00 \n",
"21 0.000000 0.000000 0.000000 0.00 \n",
"22 0.000000 0.000000 0.000000 0.00 \n",
"23 0.000000 0.000000 0.000000 0.00 \n",
"24 0.000000 0.000000 0.000000 0.00 \n",
"\n",
" Metro Station Mexican Restaurant Middle Eastern Restaurant \\\n",
"0 0.000000 0.00 0.000000 \n",
"1 0.000000 0.00 0.000000 \n",
"2 0.000000 0.00 0.010000 \n",
"3 0.000000 0.00 0.000000 \n",
"4 0.000000 0.00 0.000000 \n",
"5 0.000000 0.00 0.000000 \n",
"6 0.000000 0.01 0.000000 \n",
"7 0.000000 0.00 0.000000 \n",
"8 0.000000 0.00 0.010000 \n",
"9 0.000000 0.00 0.000000 \n",
"10 0.000000 0.00 0.010000 \n",
"11 0.000000 0.00 0.000000 \n",
"12 0.000000 0.00 0.020000 \n",
"13 0.000000 0.00 0.000000 \n",
"14 0.000000 0.00 0.000000 \n",
"15 0.000000 0.00 0.000000 \n",
"16 0.000000 0.00 0.000000 \n",
"17 0.000000 0.00 0.013699 \n",
"18 0.000000 0.00 0.000000 \n",
"19 0.000000 0.00 0.000000 \n",
"20 0.058824 0.00 0.000000 \n",
"21 0.000000 0.00 0.000000 \n",
"22 0.015385 0.00 0.000000 \n",
"23 0.000000 0.00 0.000000 \n",
"24 0.000000 0.00 0.000000 \n",
"\n",
" Miscellaneous Shop Mobile Phone Shop Movie Theater \\\n",
"0 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.000000 0.047619 \n",
"2 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.076923 \n",
"5 0.000000 0.000000 0.013889 \n",
"6 0.000000 0.000000 0.010000 \n",
"7 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.000000 0.000000 \n",
"9 0.000000 0.000000 0.000000 \n",
"10 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.000000 0.083333 \n",
"14 0.000000 0.000000 0.000000 \n",
"15 0.000000 0.000000 0.000000 \n",
"16 0.000000 0.000000 0.125000 \n",
"17 0.000000 0.013699 0.000000 \n",
"18 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.055556 \n",
"22 0.015385 0.000000 0.015385 \n",
"23 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 \n",
"\n",
" Multicuisine Indian Restaurant Multiplex New American Restaurant \\\n",
"0 0.00 0.000000 0.00 \n",
"1 0.00 0.000000 0.00 \n",
"2 0.00 0.020000 0.00 \n",
"3 0.00 0.000000 0.00 \n",
"4 0.00 0.076923 0.00 \n",
"5 0.00 0.000000 0.00 \n",
"6 0.01 0.010000 0.00 \n",
"7 0.00 0.000000 0.00 \n",
"8 0.03 0.000000 0.01 \n",
"9 0.00 0.000000 0.00 \n",
"10 0.00 0.090000 0.00 \n",
"11 0.00 0.285714 0.00 \n",
"12 0.00 0.020000 0.00 \n",
"13 0.00 0.000000 0.00 \n",
"14 0.00 0.111111 0.00 \n",
"15 0.00 0.000000 0.00 \n",
"16 0.00 0.000000 0.00 \n",
"17 0.00 0.000000 0.00 \n",
"18 0.00 0.000000 0.00 \n",
"19 0.00 0.000000 0.00 \n",
"20 0.00 0.000000 0.00 \n",
"21 0.00 0.055556 0.00 \n",
"22 0.00 0.000000 0.00 \n",
"23 0.00 0.000000 0.00 \n",
"24 0.00 0.100000 0.00 \n",
"\n",
" Nightclub North Indian Restaurant Office Park Parsi Restaurant \\\n",
"0 0.00 0.00 0.00 0.250000 0.00 \n",
"1 0.00 0.00 0.00 0.000000 0.00 \n",
"2 0.00 0.00 0.00 0.000000 0.00 \n",
"3 0.00 0.00 0.00 0.000000 0.00 \n",
"4 0.00 0.00 0.00 0.000000 0.00 \n",
"5 0.00 0.00 0.00 0.000000 0.00 \n",
"6 0.01 0.00 0.01 0.000000 0.00 \n",
"7 0.00 0.00 0.00 0.000000 0.00 \n",
"8 0.01 0.01 0.00 0.010000 0.01 \n",
"9 0.00 0.00 0.00 0.000000 0.00 \n",
"10 0.01 0.00 0.00 0.010000 0.00 \n",
"11 0.00 0.00 0.00 0.000000 0.00 \n",
"12 0.00 0.00 0.00 0.000000 0.00 \n",
"13 0.00 0.00 0.00 0.000000 0.00 \n",
"14 0.00 0.00 0.00 0.000000 0.00 \n",
"15 0.00 0.00 0.00 0.020833 0.00 \n",
"16 0.00 0.00 0.00 0.000000 0.00 \n",
"17 0.00 0.00 0.00 0.000000 0.00 \n",
"18 0.00 0.00 0.00 0.000000 0.00 \n",
"19 0.00 0.00 0.00 0.000000 0.00 \n",
"20 0.00 0.00 0.00 0.000000 0.00 \n",
"21 0.00 0.00 0.00 0.000000 0.00 \n",
"22 0.00 0.00 0.00 0.015385 0.00 \n",
"23 0.00 0.00 0.00 0.000000 0.00 \n",
"24 0.00 0.00 0.00 0.000000 0.00 \n",
"\n",
" Performing Arts Venue Pizza Place Platform Pub Rajasthani Restaurant \\\n",
"0 0.000000 0.000000 0.000000 0.00 0.00 \n",
"1 0.000000 0.047619 0.047619 0.00 0.00 \n",
"2 0.010000 0.040000 0.000000 0.01 0.01 \n",
"3 0.000000 0.142857 0.000000 0.00 0.00 \n",
"4 0.000000 0.076923 0.000000 0.00 0.00 \n",
"5 0.000000 0.055556 0.000000 0.00 0.00 \n",
"6 0.000000 0.020000 0.000000 0.01 0.00 \n",
"7 0.000000 0.000000 0.000000 0.00 0.00 \n",
"8 0.000000 0.010000 0.000000 0.00 0.00 \n",
"9 0.000000 0.071429 0.000000 0.00 0.00 \n",
"10 0.020000 0.040000 0.000000 0.02 0.00 \n",
"11 0.000000 0.000000 0.000000 0.00 0.00 \n",
"12 0.000000 0.060000 0.000000 0.00 0.00 \n",
"13 0.000000 0.166667 0.000000 0.00 0.00 \n",
"14 0.000000 0.000000 0.000000 0.00 0.00 \n",
"15 0.000000 0.041667 0.000000 0.00 0.00 \n",
"16 0.000000 0.000000 0.125000 0.00 0.00 \n",
"17 0.013699 0.000000 0.013699 0.00 0.00 \n",
"18 0.000000 0.000000 0.000000 0.00 0.00 \n",
"19 0.000000 0.000000 0.000000 0.00 0.00 \n",
"20 0.000000 0.058824 0.000000 0.00 0.00 \n",
"21 0.000000 0.055556 0.000000 0.00 0.00 \n",
"22 0.000000 0.030769 0.000000 0.00 0.00 \n",
"23 0.000000 0.285714 0.000000 0.00 0.00 \n",
"24 0.000000 0.000000 0.000000 0.00 0.00 \n",
"\n",
" Restaurant Sandwich Place Scenic Lookout Science Museum \\\n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.095238 0.00 0.000000 \n",
"2 0.010000 0.050000 0.00 0.000000 \n",
"3 0.142857 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"5 0.041667 0.055556 0.00 0.000000 \n",
"6 0.060000 0.020000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"8 0.020000 0.030000 0.00 0.000000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"10 0.030000 0.030000 0.01 0.010000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"15 0.062500 0.020833 0.00 0.000000 \n",
"16 0.041667 0.000000 0.00 0.000000 \n",
"17 0.027397 0.000000 0.00 0.013699 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"20 0.058824 0.058824 0.00 0.000000 \n",
"21 0.055556 0.000000 0.00 0.000000 \n",
"22 0.015385 0.015385 0.00 0.000000 \n",
"23 0.142857 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Shipping Store Shoe Store Shop & Service Shopping Mall Smoke Shop \\\n",
"0 0.0 0.000000 0.00 0.000000 0.000000 \n",
"1 0.0 0.000000 0.00 0.047619 0.000000 \n",
"2 0.0 0.000000 0.00 0.010000 0.000000 \n",
"3 0.0 0.000000 0.00 0.142857 0.000000 \n",
"4 0.0 0.000000 0.00 0.076923 0.000000 \n",
"5 0.0 0.000000 0.00 0.000000 0.000000 \n",
"6 0.0 0.000000 0.00 0.020000 0.000000 \n",
"7 0.0 0.000000 0.00 0.000000 0.000000 \n",
"8 0.0 0.000000 0.00 0.000000 0.000000 \n",
"9 0.0 0.000000 0.00 0.071429 0.000000 \n",
"10 0.0 0.000000 0.00 0.030000 0.010000 \n",
"11 0.0 0.000000 0.00 0.000000 0.000000 \n",
"12 0.0 0.000000 0.02 0.080000 0.000000 \n",
"13 0.0 0.000000 0.00 0.000000 0.000000 \n",
"14 0.0 0.000000 0.00 0.000000 0.000000 \n",
"15 0.0 0.000000 0.00 0.000000 0.000000 \n",
"16 0.0 0.000000 0.00 0.000000 0.000000 \n",
"17 0.0 0.013699 0.00 0.013699 0.013699 \n",
"18 0.2 0.000000 0.00 0.000000 0.000000 \n",
"19 0.0 0.000000 0.00 0.000000 0.000000 \n",
"20 0.0 0.000000 0.00 0.000000 0.000000 \n",
"21 0.0 0.000000 0.00 0.055556 0.000000 \n",
"22 0.0 0.000000 0.00 0.000000 0.015385 \n",
"23 0.0 0.000000 0.00 0.000000 0.000000 \n",
"24 0.0 0.000000 0.00 0.000000 0.000000 \n",
"\n",
" Snack Place Soccer Field Social Club South Indian Restaurant Spa \\\n",
"0 0.000000 0.000000 0.00 0.000000 0.00 \n",
"1 0.000000 0.000000 0.00 0.000000 0.00 \n",
"2 0.000000 0.000000 0.00 0.010000 0.00 \n",
"3 0.000000 0.000000 0.00 0.000000 0.00 \n",
"4 0.000000 0.000000 0.00 0.000000 0.00 \n",
"5 0.027778 0.000000 0.00 0.027778 0.00 \n",
"6 0.020000 0.000000 0.00 0.010000 0.00 \n",
"7 0.000000 0.000000 0.00 0.000000 0.00 \n",
"8 0.020000 0.000000 0.01 0.010000 0.02 \n",
"9 0.071429 0.000000 0.00 0.000000 0.00 \n",
"10 0.000000 0.000000 0.00 0.010000 0.00 \n",
"11 0.000000 0.000000 0.00 0.000000 0.00 \n",
"12 0.040000 0.000000 0.00 0.000000 0.00 \n",
"13 0.000000 0.000000 0.00 0.083333 0.00 \n",
"14 0.000000 0.000000 0.00 0.000000 0.00 \n",
"15 0.020833 0.000000 0.00 0.000000 0.00 \n",
"16 0.000000 0.000000 0.00 0.000000 0.00 \n",
"17 0.027397 0.013699 0.00 0.041096 0.00 \n",
"18 0.000000 0.000000 0.00 0.000000 0.00 \n",
"19 0.000000 0.000000 0.00 0.000000 0.00 \n",
"20 0.000000 0.000000 0.00 0.000000 0.00 \n",
"21 0.000000 0.000000 0.00 0.055556 0.00 \n",
"22 0.015385 0.000000 0.00 0.000000 0.00 \n",
"23 0.000000 0.000000 0.00 0.000000 0.00 \n",
"24 0.000000 0.000000 0.00 0.000000 0.00 \n",
"\n",
" Sports Bar Stadium Steakhouse Supermarket Tea Room Thai Restaurant \\\n",
"0 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"1 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"2 0.000000 0.000000 0.000000 0.000000 0.000000 0.01 \n",
"3 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"4 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"5 0.000000 0.027778 0.000000 0.013889 0.000000 0.00 \n",
"6 0.020000 0.000000 0.000000 0.010000 0.000000 0.00 \n",
"7 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"8 0.010000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"9 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"10 0.000000 0.010000 0.000000 0.000000 0.000000 0.00 \n",
"11 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"12 0.000000 0.000000 0.000000 0.020000 0.000000 0.00 \n",
"13 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"14 0.000000 0.000000 0.000000 0.000000 0.111111 0.00 \n",
"15 0.000000 0.000000 0.020833 0.000000 0.000000 0.00 \n",
"16 0.000000 0.041667 0.000000 0.000000 0.000000 0.00 \n",
"17 0.000000 0.013699 0.000000 0.000000 0.000000 0.00 \n",
"18 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"19 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"20 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"21 0.000000 0.055556 0.000000 0.000000 0.000000 0.00 \n",
"22 0.015385 0.000000 0.000000 0.000000 0.015385 0.00 \n",
"23 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"24 0.000000 0.100000 0.000000 0.000000 0.000000 0.00 \n",
"\n",
" Train Station Vegetarian / Vegan Restaurant Women's Store \n",
"0 0.000000 0.000000 0.000000 \n",
"1 0.047619 0.000000 0.000000 \n",
"2 0.000000 0.050000 0.000000 \n",
"3 0.142857 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.000000 \n",
"5 0.000000 0.027778 0.000000 \n",
"6 0.000000 0.020000 0.000000 \n",
"7 0.000000 0.000000 0.000000 \n",
"8 0.000000 0.000000 0.000000 \n",
"9 0.000000 0.000000 0.000000 \n",
"10 0.000000 0.010000 0.000000 \n",
"11 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 \n",
"15 0.000000 0.020833 0.000000 \n",
"16 0.000000 0.000000 0.000000 \n",
"17 0.000000 0.013699 0.013699 \n",
"18 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 \n",
"20 0.058824 0.000000 0.000000 \n",
"21 0.055556 0.000000 0.000000 \n",
"22 0.000000 0.030769 0.000000 \n",
"23 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 "
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_grouped = hyd_data_onehot.groupby([\"Neighborhoods\"]).mean().reset_index()\n",
"\n",
"print(hyd_grouped.shape)\n",
"hyd_grouped"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets now only grab Shopping Malls categories from all the neighborhoods"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhoods</th>\n",
" <th>Shopping Mall</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.047619</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.010000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.142857</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.076923</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Gachibowli</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>HITEC City</td>\n",
" <td>0.020000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Hayathnagar</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Kapra</td>\n",
" <td>0.071429</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Khairatabad</td>\n",
" <td>0.030000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Kompally</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Kukatpally</td>\n",
" <td>0.080000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>LB Nagar</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Malkajgiri</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Musheerabad</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Nampally</td>\n",
" <td>0.013699</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Patancheru</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Rajendranagar</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Saroornagar</td>\n",
" <td>0.055556</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Secunderabad</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Serilingampally</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Uppal</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhoods Shopping Mall\n",
"0 Alwal 0.000000\n",
"1 Amberpet 0.047619\n",
"2 Ameerpet 0.010000\n",
"3 Balanagar 0.142857\n",
"4 Dilsukhnagar 0.076923\n",
"5 Gachibowli 0.000000\n",
"6 HITEC City 0.020000\n",
"7 Hayathnagar 0.000000\n",
"8 Jubilee Hills 0.000000\n",
"9 Kapra 0.071429\n",
"10 Khairatabad 0.030000\n",
"11 Kompally 0.000000\n",
"12 Kukatpally 0.080000\n",
"13 LB Nagar 0.000000\n",
"14 Malkajgiri 0.000000\n",
"15 Mehdipatnam 0.000000\n",
"16 Musheerabad 0.000000\n",
"17 Nampally 0.013699\n",
"18 Patancheru 0.000000\n",
"19 Rajendranagar 0.000000\n",
"20 Sanathnagar 0.000000\n",
"21 Saroornagar 0.055556\n",
"22 Secunderabad 0.000000\n",
"23 Serilingampally 0.000000\n",
"24 Uppal 0.000000"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall = hyd_grouped[[\"Neighborhoods\",\"Shopping Mall\"]]\n",
"hyd_mall"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f2ea73176a0>"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAD4CAYAAADrRI2NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAWfklEQVR4nO3dfZRcdZ3n8feXDpCEBMPQ7QoJIckITAhkDTSPskyIiCy4ILoacESHdYigMDojOjjiEPWgKGGUMXMGgjBB5UkeRsfE2RFnJ7icEwhJwIQYHgaThZasdMLypMQQ890/qpLTabo71Q+3qjr3/TqnT6ruQ/0+Xd31ye1bt+6NzESSVB57NDqAJKm+LH5JKhmLX5JKxuKXpJKx+CWpZEY0OkAtWltbc9KkSY2OIUnDyooVKzZmZlv36cOi+CdNmsTy5csbHUOShpWI+D89TXdXjySVjMUvSSVj8UtSyQyLffySGuP111+no6ODzZs3NzqK+jBy5EgmTJjAnnvuWdPyFr+kXnV0dDB27FgmTZpERDQ6jnqQmWzatImOjg4mT55c0zru6pHUq82bN7P//vtb+k0sIth///379VeZxS+pT5Z+8+vvz8jil6SScR+/pJpNunzxkD7e+qvP3OUyV111FbfddhstLS3sscce3HDDDRx33HE7PtjZ2to6pJm6OuOMM7jtttsYN27coB5n/fr1TJ48mSuuuIIvf/nLAGzcuJEDDjiAj33sY8yfP7/XdRcuXMjy5cuZP38+c+fOZcyYMVx22WWDyrPbF/9Q/6L2Ry2/1JJ6t3TpUhYtWsTKlSvZe++92bhxI1u2bKnb+D/+8Y+H7LGmTJnCokWLdhT/XXfdxbRp04bs8fvDXT2SmtaGDRtobW1l7733BqC1tZUDDzxwx/xvfetbHHXUURx55JE8/vjjALzwwgu85z3vYfr06Rx//PGsWrUKgLlz53L++ecza9YsDjnkEG688UYAlixZwsknn8w555zD4YcfzkUXXcS2bduAyuliNm7cyPr165k6dSoXXngh06ZN47TTTuO1114D4OGHH2b69OmccMIJfOYzn+GII47o8XsZNWoUU6dO3XH6mTvvvJMPfOADO+b/6Ec/4rjjjmPGjBmceuqp/PrXvx7Kp3InFr+kpnXaaafx7LPPcuihh/Lxj3+c+++/f6f5ra2trFy5kosvvph58+YBcOWVVzJjxgxWrVrFV77yFT784Q/vWH7VqlUsXryYpUuX8qUvfYnnnnsOgGXLlnHttdeyevVqnn76ae699943ZHnqqaf4xCc+wZo1axg3bhz33HMPABdccAHXX389S5cupaWlpc/v59xzz+WOO+6go6ODlpaWnf4TO+mkk3jwwQd55JFHOPfcc/n6178+sCetBha/pKY1ZswYVqxYwYIFC2hra2P27NksXLhwx/z3vve9ABx99NGsX78egAceeIDzzz8fgFmzZrFp0yZeeuklAM4++2xGjRpFa2srp5xyCsuWLQPg2GOPZcqUKbS0tHDeeefxwAMPvCHL5MmTedvb3rbTeC+++CKvvPIKJ554IgAf/OAH+/x+Tj/9dO677z5uv/12Zs+evdO8jo4O3vWud3HkkUdyzTXXsGbNmn4+W7Wz+CU1tZaWFmbOnMkXv/hF5s+fv2NLG9ixC6ilpYWtW7cClQ80dbf9cMfuhz3uanpX28fqOl5PY/Vlr7324uijj+baa6/lfe97307zLr30Ui655BJWr17NDTfcUOinpS1+SU3riSee4Kmnntpx/9FHH+Xggw/uc52TTz6ZW2+9Fajsv29tbWXfffcF4Ic//CGbN29m06ZNLFmyhGOOOQao7OpZt24d27Zt48477+Skk06qKd9+++3H2LFjefDBBwG44447drnOpz/9ab72ta+x//777zT9pZdeYvz48QDccsstNY0/ULv9UT2Shk69j1R79dVXufTSS3nxxRcZMWIEb33rW1mwYEGf68ydO5cLLriA6dOnM3r06J1K9Nhjj+XMM8/kmWee4Qtf+AIHHnggTz75JCeccAKXX345q1ev3vFGb61uuukmLrzwQvbZZx9mzpzJm970pj6XnzZtWo9H88ydO5f3v//9jB8/nuOPP55169bVnKG/or9/qjRCe3t7DvRCLB7OKQ3c2rVrmTp1aqNjDInejoFfsmQJ8+bNY9GiRQN63FdffZUxY8YAcPXVV7Nhwwauu+66Qeftr55+VhGxIjPbuy/rFr8kDcLixYv56le/ytatWzn44IN3evO5WRVW/BFxM/Bu4PnMPKLL9EuBS4CtwOLM/GxRGSRpu7lz5/Y4febMmcycOXPAjzt79uw3HKHT7Ip8c3chcHrXCRFxCnA2MD0zpwHzChxf0hAY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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"count, bin_edges = np.histogram(hyd_mall['Shopping Mall'])\n",
"hyd_mall.plot(kind='hist')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" If you can see most of the neighborhoods, almost half of them are lacking Shopping Malls and remaining neighborhoods are having malls moderately. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.3 Cluster the Neighborhoods by Venue Categories using K-means clustering"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" In this corner we are going to form clusters on Neighborhoods based on the Venues it has nearby using K-means clustering"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets find the k value for K-means to form clusters using below function with the help of elbow method"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [],
"source": [
"def get_inertia(n_clusters):\n",
" km = KMeans(n_clusters=n_clusters, init='k-means++', max_iter=15, random_state=8)\n",
" km.fit(X1)\n",
" return km.inertia_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets pass the venue categories as X value to the model"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [],
"source": [
"X1 = hyd_grouped.drop([\"Neighborhoods\"], 1)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Error')"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 720x576 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"scores = [get_inertia(x) for x in range(2, 25)]\n",
"plt.figure(figsize=[10, 8])\n",
"sns.lineplot(x=range(2, 25), y=scores)\n",
"plt.title(\"K vs Error\")\n",
"plt.xticks(range(2, 25))\n",
"plt.xlabel(\"K\")\n",
"plt.ylabel(\"Error\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" From above curve we can assume that k-value of 15 is the optimal one"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([ 4, 1, 1, 6, 14, 1, 1, 5, 1, 13], dtype=int32)"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_clusters1 = 15\n",
"hyd_venues_clustering = hyd_grouped.drop([\"Neighborhoods\"], 1)\n",
"kmeans1 = KMeans(n_clusters=n_clusters1, init='k-means++', max_iter=15, random_state=8).fit(X1)\n",
"kmeans1.labels_[0:10]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets add cluster labels to a new copied data frame"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [],
"source": [
"hyd_venues_merged = hyd_grouped.copy()\n",
"hyd_venues_merged[\"Cluster_labels\"] = kmeans1.labels_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Add back our Neighborhood column to dataframe"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>ATM</th>\n",
" <th>Afghan Restaurant</th>\n",
" <th>American Restaurant</th>\n",
" <th>Andhra Restaurant</th>\n",
" <th>Arcade</th>\n",
" <th>Arts &amp; Crafts Store</th>\n",
" <th>Asian Restaurant</th>\n",
" <th>Athletics &amp; Sports</th>\n",
" <th>BBQ Joint</th>\n",
" <th>Bakery</th>\n",
" <th>Bar</th>\n",
" <th>Bed &amp; Breakfast</th>\n",
" <th>Beer Garden</th>\n",
" <th>Bengali Restaurant</th>\n",
" <th>Bistro</th>\n",
" <th>Bookstore</th>\n",
" <th>Boutique</th>\n",
" <th>Bowling Alley</th>\n",
" <th>Breakfast Spot</th>\n",
" <th>Brewery</th>\n",
" <th>Bridal Shop</th>\n",
" <th>Burger Joint</th>\n",
" <th>Bus Station</th>\n",
" <th>Business Service</th>\n",
" <th>Butcher</th>\n",
" <th>Café</th>\n",
" <th>Chaat Place</th>\n",
" <th>Chinese Restaurant</th>\n",
" <th>Clothing Store</th>\n",
" <th>Cocktail Bar</th>\n",
" <th>Coffee Shop</th>\n",
" <th>Comfort Food Restaurant</th>\n",
" <th>Concert Hall</th>\n",
" <th>Convenience Store</th>\n",
" <th>Cricket Ground</th>\n",
" <th>Cupcake Shop</th>\n",
" <th>Dance Studio</th>\n",
" <th>Deli / Bodega</th>\n",
" <th>Department Store</th>\n",
" <th>Dessert Shop</th>\n",
" <th>Diner</th>\n",
" <th>Donut Shop</th>\n",
" <th>Dumpling Restaurant</th>\n",
" <th>Electronics Store</th>\n",
" <th>Falafel Restaurant</th>\n",
" <th>Farmers Market</th>\n",
" <th>Fast Food Restaurant</th>\n",
" <th>Flea Market</th>\n",
" <th>Food</th>\n",
" <th>Food &amp; Drink Shop</th>\n",
" <th>Food Court</th>\n",
" <th>Food Stand</th>\n",
" <th>Food Truck</th>\n",
" <th>Fried Chicken Joint</th>\n",
" <th>Frozen Yogurt Shop</th>\n",
" <th>Furniture / Home Store</th>\n",
" <th>Gaming Cafe</th>\n",
" <th>Garden</th>\n",
" <th>Gas Station</th>\n",
" <th>Gastropub</th>\n",
" <th>General Entertainment</th>\n",
" <th>Gift Shop</th>\n",
" <th>Golf Course</th>\n",
" <th>Grocery Store</th>\n",
" <th>Gym</th>\n",
" <th>Gym / Fitness Center</th>\n",
" <th>Harbor / Marina</th>\n",
" <th>Historic Site</th>\n",
" <th>Hookah Bar</th>\n",
" <th>Hotel</th>\n",
" <th>Hotel Bar</th>\n",
" <th>Hotel Pool</th>\n",
" <th>Hyderabadi Restaurant</th>\n",
" <th>Ice Cream Shop</th>\n",
" <th>Indian Restaurant</th>\n",
" <th>Indian Sweet Shop</th>\n",
" <th>Indie Movie Theater</th>\n",
" <th>Irish Pub</th>\n",
" <th>Italian Restaurant</th>\n",
" <th>Japanese Restaurant</th>\n",
" <th>Juice Bar</th>\n",
" <th>Lake</th>\n",
" <th>Laser Tag</th>\n",
" <th>Light Rail Station</th>\n",
" <th>Liquor Store</th>\n",
" <th>Lounge</th>\n",
" <th>Mattress Store</th>\n",
" <th>Mediterranean Restaurant</th>\n",
" <th>Metro Station</th>\n",
" <th>Mexican Restaurant</th>\n",
" <th>Middle Eastern Restaurant</th>\n",
" <th>Miscellaneous Shop</th>\n",
" <th>Mobile Phone Shop</th>\n",
" <th>Movie Theater</th>\n",
" <th>Multicuisine Indian Restaurant</th>\n",
" <th>Multiplex</th>\n",
" <th>New American Restaurant</th>\n",
" <th>Nightclub</th>\n",
" <th>North Indian Restaurant</th>\n",
" <th>Office</th>\n",
" <th>Park</th>\n",
" <th>Parsi Restaurant</th>\n",
" <th>Performing Arts Venue</th>\n",
" <th>Pizza Place</th>\n",
" <th>Platform</th>\n",
" <th>Pub</th>\n",
" <th>Rajasthani Restaurant</th>\n",
" <th>Restaurant</th>\n",
" <th>Sandwich Place</th>\n",
" <th>Scenic Lookout</th>\n",
" <th>Science Museum</th>\n",
" <th>Shipping Store</th>\n",
" <th>Shoe Store</th>\n",
" <th>Shop &amp; Service</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Smoke Shop</th>\n",
" <th>Snack Place</th>\n",
" <th>Soccer Field</th>\n",
" <th>Social Club</th>\n",
" <th>South Indian Restaurant</th>\n",
" <th>Spa</th>\n",
" <th>Sports Bar</th>\n",
" <th>Stadium</th>\n",
" <th>Steakhouse</th>\n",
" <th>Supermarket</th>\n",
" <th>Tea Room</th>\n",
" <th>Thai Restaurant</th>\n",
" <th>Train Station</th>\n",
" <th>Vegetarian / Vegan Restaurant</th>\n",
" <th>Women's Store</th>\n",
" <th>Cluster_labels</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.190476</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.03</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.04</td>\n",
" <td>0.03</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.030000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.020000</td>\n",
" <td>0.05</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.020000</td>\n",
" <td>0.190000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.020000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.05</td>\n",
" <td>0.0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.285714</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.142857</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.153846</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>14</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood ATM Afghan Restaurant American Restaurant \\\n",
"0 Alwal 0.0 0.0 0.0 \n",
"1 Amberpet 0.0 0.0 0.0 \n",
"2 Ameerpet 0.0 0.0 0.0 \n",
"3 Balanagar 0.0 0.0 0.0 \n",
"4 Dilsukhnagar 0.0 0.0 0.0 \n",
"\n",
" Andhra Restaurant Arcade Arts & Crafts Store Asian Restaurant \\\n",
"0 0.0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.0 0.01 \n",
"3 0.0 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.0 0.00 \n",
"\n",
" Athletics & Sports BBQ Joint Bakery Bar Bed & Breakfast \\\n",
"0 0.0 0.00 0.000000 0.00 0.0 \n",
"1 0.0 0.00 0.000000 0.00 0.0 \n",
"2 0.0 0.01 0.030000 0.01 0.0 \n",
"3 0.0 0.00 0.142857 0.00 0.0 \n",
"4 0.0 0.00 0.076923 0.00 0.0 \n",
"\n",
" Beer Garden Bengali Restaurant Bistro Bookstore Boutique \\\n",
"0 0.0 0.00 0.0 0.00 0.00 \n",
"1 0.0 0.00 0.0 0.00 0.00 \n",
"2 0.0 0.01 0.0 0.03 0.01 \n",
"3 0.0 0.00 0.0 0.00 0.00 \n",
"4 0.0 0.00 0.0 0.00 0.00 \n",
"\n",
" Bowling Alley Breakfast Spot Brewery Bridal Shop Burger Joint \\\n",
"0 0.000000 0.00 0.0 0.0 0.0 \n",
"1 0.000000 0.00 0.0 0.0 0.0 \n",
"2 0.000000 0.02 0.0 0.0 0.0 \n",
"3 0.000000 0.00 0.0 0.0 0.0 \n",
"4 0.076923 0.00 0.0 0.0 0.0 \n",
"\n",
" Bus Station Business Service Butcher Café Chaat Place \\\n",
"0 0.25 0.0 0.0 0.000000 0.0 \n",
"1 0.00 0.0 0.0 0.047619 0.0 \n",
"2 0.00 0.0 0.0 0.040000 0.0 \n",
"3 0.00 0.0 0.0 0.000000 0.0 \n",
"4 0.00 0.0 0.0 0.153846 0.0 \n",
"\n",
" Chinese Restaurant Clothing Store Cocktail Bar Coffee Shop \\\n",
"0 0.00 0.00 0.00 0.000000 \n",
"1 0.00 0.00 0.00 0.095238 \n",
"2 0.04 0.03 0.01 0.040000 \n",
"3 0.00 0.00 0.00 0.000000 \n",
"4 0.00 0.00 0.00 0.000000 \n",
"\n",
" Comfort Food Restaurant Concert Hall Convenience Store Cricket Ground \\\n",
"0 0.0 0.00 0.000000 0.0 \n",
"1 0.0 0.00 0.095238 0.0 \n",
"2 0.0 0.01 0.010000 0.0 \n",
"3 0.0 0.00 0.000000 0.0 \n",
"4 0.0 0.00 0.076923 0.0 \n",
"\n",
" Cupcake Shop Dance Studio Deli / Bodega Department Store Dessert Shop \\\n",
"0 0.0 0.0 0.00 0.250000 0.0 \n",
"1 0.0 0.0 0.00 0.000000 0.0 \n",
"2 0.0 0.0 0.02 0.020000 0.0 \n",
"3 0.0 0.0 0.00 0.000000 0.0 \n",
"4 0.0 0.0 0.00 0.076923 0.0 \n",
"\n",
" Diner Donut Shop Dumpling Restaurant Electronics Store \\\n",
"0 0.00 0.0 0.0 0.000000 \n",
"1 0.00 0.0 0.0 0.047619 \n",
"2 0.02 0.0 0.0 0.010000 \n",
"3 0.00 0.0 0.0 0.000000 \n",
"4 0.00 0.0 0.0 0.000000 \n",
"\n",
" Falafel Restaurant Farmers Market Fast Food Restaurant Flea Market \\\n",
"0 0.0 0.0 0.000000 0.0 \n",
"1 0.0 0.0 0.000000 0.0 \n",
"2 0.0 0.0 0.030000 0.0 \n",
"3 0.0 0.0 0.000000 0.0 \n",
"4 0.0 0.0 0.076923 0.0 \n",
"\n",
" Food Food & Drink Shop Food Court Food Stand Food Truck \\\n",
"0 0.00 0.000000 0.0 0.0 0.00 \n",
"1 0.00 0.047619 0.0 0.0 0.00 \n",
"2 0.01 0.000000 0.0 0.0 0.01 \n",
"3 0.00 0.000000 0.0 0.0 0.00 \n",
"4 0.00 0.000000 0.0 0.0 0.00 \n",
"\n",
" Fried Chicken Joint Frozen Yogurt Shop Furniture / Home Store \\\n",
"0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.02 \n",
"3 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.00 \n",
"\n",
" Gaming Cafe Garden Gas Station Gastropub General Entertainment \\\n",
"0 0.0 0.0 0.0 0.0 0.000000 \n",
"1 0.0 0.0 0.0 0.0 0.047619 \n",
"2 0.0 0.0 0.0 0.0 0.000000 \n",
"3 0.0 0.0 0.0 0.0 0.000000 \n",
"4 0.0 0.0 0.0 0.0 0.000000 \n",
"\n",
" Gift Shop Golf Course Grocery Store Gym Gym / Fitness Center \\\n",
"0 0.0 0.0 0.000000 0.25 0.0 \n",
"1 0.0 0.0 0.047619 0.00 0.0 \n",
"2 0.0 0.0 0.000000 0.01 0.0 \n",
"3 0.0 0.0 0.000000 0.00 0.0 \n",
"4 0.0 0.0 0.000000 0.00 0.0 \n",
"\n",
" Harbor / Marina Historic Site Hookah Bar Hotel Hotel Bar Hotel Pool \\\n",
"0 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"1 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"2 0.0 0.0 0.020000 0.05 0.0 0.0 \n",
"3 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"4 0.0 0.0 0.076923 0.00 0.0 0.0 \n",
"\n",
" Hyderabadi Restaurant Ice Cream Shop Indian Restaurant \\\n",
"0 0.00 0.000000 0.000000 \n",
"1 0.00 0.047619 0.190476 \n",
"2 0.01 0.020000 0.190000 \n",
"3 0.00 0.000000 0.000000 \n",
"4 0.00 0.000000 0.076923 \n",
"\n",
" Indian Sweet Shop Indie Movie Theater Irish Pub Italian Restaurant \\\n",
"0 0.0 0.000000 0.0 0.0 \n",
"1 0.0 0.000000 0.0 0.0 \n",
"2 0.0 0.000000 0.0 0.0 \n",
"3 0.0 0.285714 0.0 0.0 \n",
"4 0.0 0.000000 0.0 0.0 \n",
"\n",
" Japanese Restaurant Juice Bar Lake Laser Tag Light Rail Station \\\n",
"0 0.0 0.0 0.0 0.0 0.0 \n",
"1 0.0 0.0 0.0 0.0 0.0 \n",
"2 0.0 0.0 0.0 0.0 0.0 \n",
"3 0.0 0.0 0.0 0.0 0.0 \n",
"4 0.0 0.0 0.0 0.0 0.0 \n",
"\n",
" Liquor Store Lounge Mattress Store Mediterranean Restaurant \\\n",
"0 0.0 0.00 0.0 0.0 \n",
"1 0.0 0.00 0.0 0.0 \n",
"2 0.0 0.01 0.0 0.0 \n",
"3 0.0 0.00 0.0 0.0 \n",
"4 0.0 0.00 0.0 0.0 \n",
"\n",
" Metro Station Mexican Restaurant Middle Eastern Restaurant \\\n",
"0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.01 \n",
"3 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.00 \n",
"\n",
" Miscellaneous Shop Mobile Phone Shop Movie Theater \\\n",
"0 0.0 0.0 0.000000 \n",
"1 0.0 0.0 0.047619 \n",
"2 0.0 0.0 0.000000 \n",
"3 0.0 0.0 0.000000 \n",
"4 0.0 0.0 0.076923 \n",
"\n",
" Multicuisine Indian Restaurant Multiplex New American Restaurant \\\n",
"0 0.0 0.000000 0.0 \n",
"1 0.0 0.000000 0.0 \n",
"2 0.0 0.020000 0.0 \n",
"3 0.0 0.000000 0.0 \n",
"4 0.0 0.076923 0.0 \n",
"\n",
" Nightclub North Indian Restaurant Office Park Parsi Restaurant \\\n",
"0 0.0 0.0 0.0 0.25 0.0 \n",
"1 0.0 0.0 0.0 0.00 0.0 \n",
"2 0.0 0.0 0.0 0.00 0.0 \n",
"3 0.0 0.0 0.0 0.00 0.0 \n",
"4 0.0 0.0 0.0 0.00 0.0 \n",
"\n",
" Performing Arts Venue Pizza Place Platform Pub Rajasthani Restaurant \\\n",
"0 0.00 0.000000 0.000000 0.00 0.00 \n",
"1 0.00 0.047619 0.047619 0.00 0.00 \n",
"2 0.01 0.040000 0.000000 0.01 0.01 \n",
"3 0.00 0.142857 0.000000 0.00 0.00 \n",
"4 0.00 0.076923 0.000000 0.00 0.00 \n",
"\n",
" Restaurant Sandwich Place Scenic Lookout Science Museum Shipping Store \\\n",
"0 0.000000 0.000000 0.0 0.0 0.0 \n",
"1 0.000000 0.095238 0.0 0.0 0.0 \n",
"2 0.010000 0.050000 0.0 0.0 0.0 \n",
"3 0.142857 0.000000 0.0 0.0 0.0 \n",
"4 0.000000 0.000000 0.0 0.0 0.0 \n",
"\n",
" Shoe Store Shop & Service Shopping Mall Smoke Shop Snack Place \\\n",
"0 0.0 0.0 0.000000 0.0 0.0 \n",
"1 0.0 0.0 0.047619 0.0 0.0 \n",
"2 0.0 0.0 0.010000 0.0 0.0 \n",
"3 0.0 0.0 0.142857 0.0 0.0 \n",
"4 0.0 0.0 0.076923 0.0 0.0 \n",
"\n",
" Soccer Field Social Club South Indian Restaurant Spa Sports Bar \\\n",
"0 0.0 0.0 0.00 0.0 0.0 \n",
"1 0.0 0.0 0.00 0.0 0.0 \n",
"2 0.0 0.0 0.01 0.0 0.0 \n",
"3 0.0 0.0 0.00 0.0 0.0 \n",
"4 0.0 0.0 0.00 0.0 0.0 \n",
"\n",
" Stadium Steakhouse Supermarket Tea Room Thai Restaurant Train Station \\\n",
"0 0.0 0.0 0.0 0.0 0.00 0.000000 \n",
"1 0.0 0.0 0.0 0.0 0.00 0.047619 \n",
"2 0.0 0.0 0.0 0.0 0.01 0.000000 \n",
"3 0.0 0.0 0.0 0.0 0.00 0.142857 \n",
"4 0.0 0.0 0.0 0.0 0.00 0.000000 \n",
"\n",
" Vegetarian / Vegan Restaurant Women's Store Cluster_labels \n",
"0 0.00 0.0 4 \n",
"1 0.00 0.0 1 \n",
"2 0.05 0.0 1 \n",
"3 0.00 0.0 6 \n",
"4 0.00 0.0 14 "
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_venues_merged.rename(columns={\"Neighborhoods\": \"Neighborhood\"}, inplace=True)\n",
"hyd_venues_merged.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Add coordinates, Latitude and Longitude to the above dataframe"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(25, 134)\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>ATM</th>\n",
" <th>Afghan Restaurant</th>\n",
" <th>American Restaurant</th>\n",
" <th>Andhra Restaurant</th>\n",
" <th>Arcade</th>\n",
" <th>Arts &amp; Crafts Store</th>\n",
" <th>Asian Restaurant</th>\n",
" <th>Athletics &amp; Sports</th>\n",
" <th>BBQ Joint</th>\n",
" <th>Bakery</th>\n",
" <th>Bar</th>\n",
" <th>Bed &amp; Breakfast</th>\n",
" <th>Beer Garden</th>\n",
" <th>Bengali Restaurant</th>\n",
" <th>Bistro</th>\n",
" <th>Bookstore</th>\n",
" <th>Boutique</th>\n",
" <th>Bowling Alley</th>\n",
" <th>Breakfast Spot</th>\n",
" <th>Brewery</th>\n",
" <th>Bridal Shop</th>\n",
" <th>Burger Joint</th>\n",
" <th>Bus Station</th>\n",
" <th>Business Service</th>\n",
" <th>Butcher</th>\n",
" <th>Café</th>\n",
" <th>Chaat Place</th>\n",
" <th>Chinese Restaurant</th>\n",
" <th>Clothing Store</th>\n",
" <th>Cocktail Bar</th>\n",
" <th>Coffee Shop</th>\n",
" <th>Comfort Food Restaurant</th>\n",
" <th>Concert Hall</th>\n",
" <th>Convenience Store</th>\n",
" <th>Cricket Ground</th>\n",
" <th>Cupcake Shop</th>\n",
" <th>Dance Studio</th>\n",
" <th>Deli / Bodega</th>\n",
" <th>Department Store</th>\n",
" <th>Dessert Shop</th>\n",
" <th>Diner</th>\n",
" <th>Donut Shop</th>\n",
" <th>Dumpling Restaurant</th>\n",
" <th>Electronics Store</th>\n",
" <th>Falafel Restaurant</th>\n",
" <th>Farmers Market</th>\n",
" <th>Fast Food Restaurant</th>\n",
" <th>Flea Market</th>\n",
" <th>Food</th>\n",
" <th>Food &amp; Drink Shop</th>\n",
" <th>Food Court</th>\n",
" <th>Food Stand</th>\n",
" <th>Food Truck</th>\n",
" <th>Fried Chicken Joint</th>\n",
" <th>Frozen Yogurt Shop</th>\n",
" <th>Furniture / Home Store</th>\n",
" <th>Gaming Cafe</th>\n",
" <th>Garden</th>\n",
" <th>Gas Station</th>\n",
" <th>Gastropub</th>\n",
" <th>General Entertainment</th>\n",
" <th>Gift Shop</th>\n",
" <th>Golf Course</th>\n",
" <th>Grocery Store</th>\n",
" <th>Gym</th>\n",
" <th>Gym / Fitness Center</th>\n",
" <th>Harbor / Marina</th>\n",
" <th>Historic Site</th>\n",
" <th>Hookah Bar</th>\n",
" <th>Hotel</th>\n",
" <th>Hotel Bar</th>\n",
" <th>Hotel Pool</th>\n",
" <th>Hyderabadi Restaurant</th>\n",
" <th>Ice Cream Shop</th>\n",
" <th>Indian Restaurant</th>\n",
" <th>Indian Sweet Shop</th>\n",
" <th>Indie Movie Theater</th>\n",
" <th>Irish Pub</th>\n",
" <th>Italian Restaurant</th>\n",
" <th>Japanese Restaurant</th>\n",
" <th>Juice Bar</th>\n",
" <th>Lake</th>\n",
" <th>Laser Tag</th>\n",
" <th>Light Rail Station</th>\n",
" <th>Liquor Store</th>\n",
" <th>Lounge</th>\n",
" <th>Mattress Store</th>\n",
" <th>Mediterranean Restaurant</th>\n",
" <th>Metro Station</th>\n",
" <th>Mexican Restaurant</th>\n",
" <th>Middle Eastern Restaurant</th>\n",
" <th>Miscellaneous Shop</th>\n",
" <th>Mobile Phone Shop</th>\n",
" <th>Movie Theater</th>\n",
" <th>Multicuisine Indian Restaurant</th>\n",
" <th>Multiplex</th>\n",
" <th>New American Restaurant</th>\n",
" <th>Nightclub</th>\n",
" <th>North Indian Restaurant</th>\n",
" <th>Office</th>\n",
" <th>Park</th>\n",
" <th>Parsi Restaurant</th>\n",
" <th>Performing Arts Venue</th>\n",
" <th>Pizza Place</th>\n",
" <th>Platform</th>\n",
" <th>Pub</th>\n",
" <th>Rajasthani Restaurant</th>\n",
" <th>Restaurant</th>\n",
" <th>Sandwich Place</th>\n",
" <th>Scenic Lookout</th>\n",
" <th>Science Museum</th>\n",
" <th>Shipping Store</th>\n",
" <th>Shoe Store</th>\n",
" <th>Shop &amp; Service</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Smoke Shop</th>\n",
" <th>Snack Place</th>\n",
" <th>Soccer Field</th>\n",
" <th>Social Club</th>\n",
" <th>South Indian Restaurant</th>\n",
" <th>Spa</th>\n",
" <th>Sports Bar</th>\n",
" <th>Stadium</th>\n",
" <th>Steakhouse</th>\n",
" <th>Supermarket</th>\n",
" <th>Tea Room</th>\n",
" <th>Thai Restaurant</th>\n",
" <th>Train Station</th>\n",
" <th>Vegetarian / Vegan Restaurant</th>\n",
" <th>Women's Store</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.25</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>4</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.190476</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.095238</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.047619</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>1</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.03</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.04</td>\n",
" <td>0.03</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.030000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.02</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.020000</td>\n",
" <td>0.05</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.020000</td>\n",
" <td>0.190000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.020000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.05</td>\n",
" <td>0.0</td>\n",
" <td>1</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.285714</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.142857</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>6</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.153846</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.076923</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.0</td>\n",
" <td>14</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood ATM Afghan Restaurant American Restaurant \\\n",
"0 Alwal 0.0 0.0 0.0 \n",
"1 Amberpet 0.0 0.0 0.0 \n",
"2 Ameerpet 0.0 0.0 0.0 \n",
"3 Balanagar 0.0 0.0 0.0 \n",
"4 Dilsukhnagar 0.0 0.0 0.0 \n",
"\n",
" Andhra Restaurant Arcade Arts & Crafts Store Asian Restaurant \\\n",
"0 0.0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.0 0.01 \n",
"3 0.0 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.0 0.00 \n",
"\n",
" Athletics & Sports BBQ Joint Bakery Bar Bed & Breakfast \\\n",
"0 0.0 0.00 0.000000 0.00 0.0 \n",
"1 0.0 0.00 0.000000 0.00 0.0 \n",
"2 0.0 0.01 0.030000 0.01 0.0 \n",
"3 0.0 0.00 0.142857 0.00 0.0 \n",
"4 0.0 0.00 0.076923 0.00 0.0 \n",
"\n",
" Beer Garden Bengali Restaurant Bistro Bookstore Boutique \\\n",
"0 0.0 0.00 0.0 0.00 0.00 \n",
"1 0.0 0.00 0.0 0.00 0.00 \n",
"2 0.0 0.01 0.0 0.03 0.01 \n",
"3 0.0 0.00 0.0 0.00 0.00 \n",
"4 0.0 0.00 0.0 0.00 0.00 \n",
"\n",
" Bowling Alley Breakfast Spot Brewery Bridal Shop Burger Joint \\\n",
"0 0.000000 0.00 0.0 0.0 0.0 \n",
"1 0.000000 0.00 0.0 0.0 0.0 \n",
"2 0.000000 0.02 0.0 0.0 0.0 \n",
"3 0.000000 0.00 0.0 0.0 0.0 \n",
"4 0.076923 0.00 0.0 0.0 0.0 \n",
"\n",
" Bus Station Business Service Butcher Café Chaat Place \\\n",
"0 0.25 0.0 0.0 0.000000 0.0 \n",
"1 0.00 0.0 0.0 0.047619 0.0 \n",
"2 0.00 0.0 0.0 0.040000 0.0 \n",
"3 0.00 0.0 0.0 0.000000 0.0 \n",
"4 0.00 0.0 0.0 0.153846 0.0 \n",
"\n",
" Chinese Restaurant Clothing Store Cocktail Bar Coffee Shop \\\n",
"0 0.00 0.00 0.00 0.000000 \n",
"1 0.00 0.00 0.00 0.095238 \n",
"2 0.04 0.03 0.01 0.040000 \n",
"3 0.00 0.00 0.00 0.000000 \n",
"4 0.00 0.00 0.00 0.000000 \n",
"\n",
" Comfort Food Restaurant Concert Hall Convenience Store Cricket Ground \\\n",
"0 0.0 0.00 0.000000 0.0 \n",
"1 0.0 0.00 0.095238 0.0 \n",
"2 0.0 0.01 0.010000 0.0 \n",
"3 0.0 0.00 0.000000 0.0 \n",
"4 0.0 0.00 0.076923 0.0 \n",
"\n",
" Cupcake Shop Dance Studio Deli / Bodega Department Store Dessert Shop \\\n",
"0 0.0 0.0 0.00 0.250000 0.0 \n",
"1 0.0 0.0 0.00 0.000000 0.0 \n",
"2 0.0 0.0 0.02 0.020000 0.0 \n",
"3 0.0 0.0 0.00 0.000000 0.0 \n",
"4 0.0 0.0 0.00 0.076923 0.0 \n",
"\n",
" Diner Donut Shop Dumpling Restaurant Electronics Store \\\n",
"0 0.00 0.0 0.0 0.000000 \n",
"1 0.00 0.0 0.0 0.047619 \n",
"2 0.02 0.0 0.0 0.010000 \n",
"3 0.00 0.0 0.0 0.000000 \n",
"4 0.00 0.0 0.0 0.000000 \n",
"\n",
" Falafel Restaurant Farmers Market Fast Food Restaurant Flea Market \\\n",
"0 0.0 0.0 0.000000 0.0 \n",
"1 0.0 0.0 0.000000 0.0 \n",
"2 0.0 0.0 0.030000 0.0 \n",
"3 0.0 0.0 0.000000 0.0 \n",
"4 0.0 0.0 0.076923 0.0 \n",
"\n",
" Food Food & Drink Shop Food Court Food Stand Food Truck \\\n",
"0 0.00 0.000000 0.0 0.0 0.00 \n",
"1 0.00 0.047619 0.0 0.0 0.00 \n",
"2 0.01 0.000000 0.0 0.0 0.01 \n",
"3 0.00 0.000000 0.0 0.0 0.00 \n",
"4 0.00 0.000000 0.0 0.0 0.00 \n",
"\n",
" Fried Chicken Joint Frozen Yogurt Shop Furniture / Home Store \\\n",
"0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.02 \n",
"3 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.00 \n",
"\n",
" Gaming Cafe Garden Gas Station Gastropub General Entertainment \\\n",
"0 0.0 0.0 0.0 0.0 0.000000 \n",
"1 0.0 0.0 0.0 0.0 0.047619 \n",
"2 0.0 0.0 0.0 0.0 0.000000 \n",
"3 0.0 0.0 0.0 0.0 0.000000 \n",
"4 0.0 0.0 0.0 0.0 0.000000 \n",
"\n",
" Gift Shop Golf Course Grocery Store Gym Gym / Fitness Center \\\n",
"0 0.0 0.0 0.000000 0.25 0.0 \n",
"1 0.0 0.0 0.047619 0.00 0.0 \n",
"2 0.0 0.0 0.000000 0.01 0.0 \n",
"3 0.0 0.0 0.000000 0.00 0.0 \n",
"4 0.0 0.0 0.000000 0.00 0.0 \n",
"\n",
" Harbor / Marina Historic Site Hookah Bar Hotel Hotel Bar Hotel Pool \\\n",
"0 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"1 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"2 0.0 0.0 0.020000 0.05 0.0 0.0 \n",
"3 0.0 0.0 0.000000 0.00 0.0 0.0 \n",
"4 0.0 0.0 0.076923 0.00 0.0 0.0 \n",
"\n",
" Hyderabadi Restaurant Ice Cream Shop Indian Restaurant \\\n",
"0 0.00 0.000000 0.000000 \n",
"1 0.00 0.047619 0.190476 \n",
"2 0.01 0.020000 0.190000 \n",
"3 0.00 0.000000 0.000000 \n",
"4 0.00 0.000000 0.076923 \n",
"\n",
" Indian Sweet Shop Indie Movie Theater Irish Pub Italian Restaurant \\\n",
"0 0.0 0.000000 0.0 0.0 \n",
"1 0.0 0.000000 0.0 0.0 \n",
"2 0.0 0.000000 0.0 0.0 \n",
"3 0.0 0.285714 0.0 0.0 \n",
"4 0.0 0.000000 0.0 0.0 \n",
"\n",
" Japanese Restaurant Juice Bar Lake Laser Tag Light Rail Station \\\n",
"0 0.0 0.0 0.0 0.0 0.0 \n",
"1 0.0 0.0 0.0 0.0 0.0 \n",
"2 0.0 0.0 0.0 0.0 0.0 \n",
"3 0.0 0.0 0.0 0.0 0.0 \n",
"4 0.0 0.0 0.0 0.0 0.0 \n",
"\n",
" Liquor Store Lounge Mattress Store Mediterranean Restaurant \\\n",
"0 0.0 0.00 0.0 0.0 \n",
"1 0.0 0.00 0.0 0.0 \n",
"2 0.0 0.01 0.0 0.0 \n",
"3 0.0 0.00 0.0 0.0 \n",
"4 0.0 0.00 0.0 0.0 \n",
"\n",
" Metro Station Mexican Restaurant Middle Eastern Restaurant \\\n",
"0 0.0 0.0 0.00 \n",
"1 0.0 0.0 0.00 \n",
"2 0.0 0.0 0.01 \n",
"3 0.0 0.0 0.00 \n",
"4 0.0 0.0 0.00 \n",
"\n",
" Miscellaneous Shop Mobile Phone Shop Movie Theater \\\n",
"0 0.0 0.0 0.000000 \n",
"1 0.0 0.0 0.047619 \n",
"2 0.0 0.0 0.000000 \n",
"3 0.0 0.0 0.000000 \n",
"4 0.0 0.0 0.076923 \n",
"\n",
" Multicuisine Indian Restaurant Multiplex New American Restaurant \\\n",
"0 0.0 0.000000 0.0 \n",
"1 0.0 0.000000 0.0 \n",
"2 0.0 0.020000 0.0 \n",
"3 0.0 0.000000 0.0 \n",
"4 0.0 0.076923 0.0 \n",
"\n",
" Nightclub North Indian Restaurant Office Park Parsi Restaurant \\\n",
"0 0.0 0.0 0.0 0.25 0.0 \n",
"1 0.0 0.0 0.0 0.00 0.0 \n",
"2 0.0 0.0 0.0 0.00 0.0 \n",
"3 0.0 0.0 0.0 0.00 0.0 \n",
"4 0.0 0.0 0.0 0.00 0.0 \n",
"\n",
" Performing Arts Venue Pizza Place Platform Pub Rajasthani Restaurant \\\n",
"0 0.00 0.000000 0.000000 0.00 0.00 \n",
"1 0.00 0.047619 0.047619 0.00 0.00 \n",
"2 0.01 0.040000 0.000000 0.01 0.01 \n",
"3 0.00 0.142857 0.000000 0.00 0.00 \n",
"4 0.00 0.076923 0.000000 0.00 0.00 \n",
"\n",
" Restaurant Sandwich Place Scenic Lookout Science Museum Shipping Store \\\n",
"0 0.000000 0.000000 0.0 0.0 0.0 \n",
"1 0.000000 0.095238 0.0 0.0 0.0 \n",
"2 0.010000 0.050000 0.0 0.0 0.0 \n",
"3 0.142857 0.000000 0.0 0.0 0.0 \n",
"4 0.000000 0.000000 0.0 0.0 0.0 \n",
"\n",
" Shoe Store Shop & Service Shopping Mall Smoke Shop Snack Place \\\n",
"0 0.0 0.0 0.000000 0.0 0.0 \n",
"1 0.0 0.0 0.047619 0.0 0.0 \n",
"2 0.0 0.0 0.010000 0.0 0.0 \n",
"3 0.0 0.0 0.142857 0.0 0.0 \n",
"4 0.0 0.0 0.076923 0.0 0.0 \n",
"\n",
" Soccer Field Social Club South Indian Restaurant Spa Sports Bar \\\n",
"0 0.0 0.0 0.00 0.0 0.0 \n",
"1 0.0 0.0 0.00 0.0 0.0 \n",
"2 0.0 0.0 0.01 0.0 0.0 \n",
"3 0.0 0.0 0.00 0.0 0.0 \n",
"4 0.0 0.0 0.00 0.0 0.0 \n",
"\n",
" Stadium Steakhouse Supermarket Tea Room Thai Restaurant Train Station \\\n",
"0 0.0 0.0 0.0 0.0 0.00 0.000000 \n",
"1 0.0 0.0 0.0 0.0 0.00 0.047619 \n",
"2 0.0 0.0 0.0 0.0 0.01 0.000000 \n",
"3 0.0 0.0 0.0 0.0 0.00 0.142857 \n",
"4 0.0 0.0 0.0 0.0 0.00 0.000000 \n",
"\n",
" Vegetarian / Vegan Restaurant Women's Store Cluster_labels Latitude \\\n",
"0 0.00 0.0 4 17.502229 \n",
"1 0.00 0.0 1 17.390263 \n",
"2 0.05 0.0 1 17.437501 \n",
"3 0.00 0.0 6 17.476746 \n",
"4 0.00 0.0 14 17.368431 \n",
"\n",
" Longitude \n",
"0 78.508858 \n",
"1 78.516481 \n",
"2 78.448251 \n",
"3 78.422108 \n",
"4 78.523428 "
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_venues_merged = hyd_venues_merged.join(hyd_df.set_index(\"Neighborhood\"), on=\"Neighborhood\")\n",
"print(hyd_venues_merged.shape)\n",
"hyd_venues_merged.head() # check the last columns!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Sort above dataframe by cluster labels"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>ATM</th>\n",
" <th>Afghan Restaurant</th>\n",
" <th>American Restaurant</th>\n",
" <th>Andhra Restaurant</th>\n",
" <th>Arcade</th>\n",
" <th>Arts &amp; Crafts Store</th>\n",
" <th>Asian Restaurant</th>\n",
" <th>Athletics &amp; Sports</th>\n",
" <th>BBQ Joint</th>\n",
" <th>Bakery</th>\n",
" <th>Bar</th>\n",
" <th>Bed &amp; Breakfast</th>\n",
" <th>Beer Garden</th>\n",
" <th>Bengali Restaurant</th>\n",
" <th>Bistro</th>\n",
" <th>Bookstore</th>\n",
" <th>Boutique</th>\n",
" <th>Bowling Alley</th>\n",
" <th>Breakfast Spot</th>\n",
" <th>Brewery</th>\n",
" <th>Bridal Shop</th>\n",
" <th>Burger Joint</th>\n",
" <th>Bus Station</th>\n",
" <th>Business Service</th>\n",
" <th>Butcher</th>\n",
" <th>Café</th>\n",
" <th>Chaat Place</th>\n",
" <th>Chinese Restaurant</th>\n",
" <th>Clothing Store</th>\n",
" <th>Cocktail Bar</th>\n",
" <th>Coffee Shop</th>\n",
" <th>Comfort Food Restaurant</th>\n",
" <th>Concert Hall</th>\n",
" <th>Convenience Store</th>\n",
" <th>Cricket Ground</th>\n",
" <th>Cupcake Shop</th>\n",
" <th>Dance Studio</th>\n",
" <th>Deli / Bodega</th>\n",
" <th>Department Store</th>\n",
" <th>Dessert Shop</th>\n",
" <th>Diner</th>\n",
" <th>Donut Shop</th>\n",
" <th>Dumpling Restaurant</th>\n",
" <th>Electronics Store</th>\n",
" <th>Falafel Restaurant</th>\n",
" <th>Farmers Market</th>\n",
" <th>Fast Food Restaurant</th>\n",
" <th>Flea Market</th>\n",
" <th>Food</th>\n",
" <th>Food &amp; Drink Shop</th>\n",
" <th>Food Court</th>\n",
" <th>Food Stand</th>\n",
" <th>Food Truck</th>\n",
" <th>Fried Chicken Joint</th>\n",
" <th>Frozen Yogurt Shop</th>\n",
" <th>Furniture / Home Store</th>\n",
" <th>Gaming Cafe</th>\n",
" <th>Garden</th>\n",
" <th>Gas Station</th>\n",
" <th>Gastropub</th>\n",
" <th>General Entertainment</th>\n",
" <th>Gift Shop</th>\n",
" <th>Golf Course</th>\n",
" <th>Grocery Store</th>\n",
" <th>Gym</th>\n",
" <th>Gym / Fitness Center</th>\n",
" <th>Harbor / Marina</th>\n",
" <th>Historic Site</th>\n",
" <th>Hookah Bar</th>\n",
" <th>Hotel</th>\n",
" <th>Hotel Bar</th>\n",
" <th>Hotel Pool</th>\n",
" <th>Hyderabadi Restaurant</th>\n",
" <th>Ice Cream Shop</th>\n",
" <th>Indian Restaurant</th>\n",
" <th>Indian Sweet Shop</th>\n",
" <th>Indie Movie Theater</th>\n",
" <th>Irish Pub</th>\n",
" <th>Italian Restaurant</th>\n",
" <th>Japanese Restaurant</th>\n",
" <th>Juice Bar</th>\n",
" <th>Lake</th>\n",
" <th>Laser Tag</th>\n",
" <th>Light Rail Station</th>\n",
" <th>Liquor Store</th>\n",
" <th>Lounge</th>\n",
" <th>Mattress Store</th>\n",
" <th>Mediterranean Restaurant</th>\n",
" <th>Metro Station</th>\n",
" <th>Mexican Restaurant</th>\n",
" <th>Middle Eastern Restaurant</th>\n",
" <th>Miscellaneous Shop</th>\n",
" <th>Mobile Phone Shop</th>\n",
" <th>Movie Theater</th>\n",
" <th>Multicuisine Indian Restaurant</th>\n",
" <th>Multiplex</th>\n",
" <th>New American Restaurant</th>\n",
" <th>Nightclub</th>\n",
" <th>North Indian Restaurant</th>\n",
" <th>Office</th>\n",
" <th>Park</th>\n",
" <th>Parsi Restaurant</th>\n",
" <th>Performing Arts Venue</th>\n",
" <th>Pizza Place</th>\n",
" <th>Platform</th>\n",
" <th>Pub</th>\n",
" <th>Rajasthani Restaurant</th>\n",
" <th>Restaurant</th>\n",
" <th>Sandwich Place</th>\n",
" <th>Scenic Lookout</th>\n",
" <th>Science Museum</th>\n",
" <th>Shipping Store</th>\n",
" <th>Shoe Store</th>\n",
" <th>Shop &amp; Service</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Smoke Shop</th>\n",
" <th>Snack Place</th>\n",
" <th>Soccer Field</th>\n",
" <th>Social Club</th>\n",
" <th>South Indian Restaurant</th>\n",
" <th>Spa</th>\n",
" <th>Sports Bar</th>\n",
" <th>Stadium</th>\n",
" <th>Steakhouse</th>\n",
" <th>Supermarket</th>\n",
" <th>Tea Room</th>\n",
" <th>Thai Restaurant</th>\n",
" <th>Train Station</th>\n",
" <th>Vegetarian / Vegan Restaurant</th>\n",
" <th>Women's Store</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Serilingampally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.142857</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0</td>\n",
" <td>17.465657</td>\n",
" <td>78.340672</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Saroornagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.166667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.361165</td>\n",
" <td>78.538756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.095238</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.190476</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.047619</td>\n",
" <td>0.047619</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.095238</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.047619</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.030000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.020000</td>\n",
" <td>0.190000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.062500</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.041667</td>\n",
" <td>0.187500</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.062500</td>\n",
" <td>0.020833</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020833</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Secunderabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.061538</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.046154</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.107692</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.123077</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.015385</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.015385</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.030769</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.433725</td>\n",
" <td>78.500683</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Gachibowli</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.041667</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.027778</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.055556</td>\n",
" <td>0.194444</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013889</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.055556</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.055556</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.027778</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>0.013889</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027778</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.443622</td>\n",
" <td>78.351964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>HITEC City</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.01</td>\n",
" <td>0.020000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.130000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.060000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.449005</td>\n",
" <td>78.383138</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.020000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.010000</td>\n",
" <td>0.040000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.110000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.060000</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.050000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.03</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.030000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.02</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.430836</td>\n",
" <td>78.410288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Nampally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.054795</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.054795</td>\n",
" <td>0.013699</td>\n",
" <td>0.041096</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.082192</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.054795</td>\n",
" <td>0.123288</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.027397</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.0</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>0.027397</td>\n",
" <td>0.013699</td>\n",
" <td>0.00</td>\n",
" <td>0.041096</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.013699</td>\n",
" <td>0.013699</td>\n",
" <td>1</td>\n",
" <td>17.391852</td>\n",
" <td>78.466005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Khairatabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.030000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.060000</td>\n",
" <td>0.010000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.040000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.01</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.030000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.030000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.090000</td>\n",
" <td>0.00</td>\n",
" <td>0.01</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.030000</td>\n",
" <td>0.01</td>\n",
" <td>0.010000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.030000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.010000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.010000</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.411771</td>\n",
" <td>78.462200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Patancheru</td>\n",
" <td>0.600000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.2</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.2</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>2</td>\n",
" <td>17.528609</td>\n",
" <td>78.267425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Rajendranagar</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.25</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>3</td>\n",
" <td>17.311091</td>\n",
" <td>78.442585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.250000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>4</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Hayathnagar</td>\n",
" <td>0.666667</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.333333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>5</td>\n",
" <td>17.328115</td>\n",
" <td>78.604540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>6</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Kompally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.285714</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.285714</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>7</td>\n",
" <td>17.544703</td>\n",
" <td>78.491842</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.117647</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.000000</td>\n",
" <td>0.117647</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.058824</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.058824</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>8</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Malkajgiri</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.111111</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>9</td>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Uppal</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.100000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.1</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.200000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.100000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.100000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>10</td>\n",
" <td>17.402509</td>\n",
" <td>78.561256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>LB Nagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.166667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>11</td>\n",
" <td>17.350162</td>\n",
" <td>78.551094</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Musheerabad</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.083333</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.083333</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.250000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.125000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.125000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.041667</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>12</td>\n",
" <td>17.419142</td>\n",
" <td>78.498573</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Kapra</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.071429</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>13</td>\n",
" <td>17.484636</td>\n",
" <td>78.561009</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Kukatpally</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.080000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.02</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.160000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.180000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.060000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.02</td>\n",
" <td>0.080000</td>\n",
" <td>0.000000</td>\n",
" <td>0.040000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.020000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>13</td>\n",
" <td>17.493084</td>\n",
" <td>78.405441</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.153846</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.0</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.076923</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.00</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>14</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood ATM Afghan Restaurant American Restaurant \\\n",
"23 Serilingampally 0.000000 0.00 0.00 \n",
"21 Saroornagar 0.000000 0.00 0.00 \n",
"1 Amberpet 0.000000 0.00 0.00 \n",
"2 Ameerpet 0.000000 0.00 0.00 \n",
"15 Mehdipatnam 0.000000 0.00 0.00 \n",
"22 Secunderabad 0.000000 0.00 0.00 \n",
"5 Gachibowli 0.000000 0.00 0.00 \n",
"6 HITEC City 0.000000 0.01 0.00 \n",
"8 Jubilee Hills 0.000000 0.00 0.00 \n",
"17 Nampally 0.000000 0.00 0.00 \n",
"10 Khairatabad 0.000000 0.00 0.01 \n",
"18 Patancheru 0.600000 0.00 0.00 \n",
"19 Rajendranagar 0.250000 0.00 0.00 \n",
"0 Alwal 0.000000 0.00 0.00 \n",
"7 Hayathnagar 0.666667 0.00 0.00 \n",
"3 Balanagar 0.000000 0.00 0.00 \n",
"11 Kompally 0.000000 0.00 0.00 \n",
"20 Sanathnagar 0.000000 0.00 0.00 \n",
"14 Malkajgiri 0.000000 0.00 0.00 \n",
"24 Uppal 0.000000 0.00 0.00 \n",
"13 LB Nagar 0.000000 0.00 0.00 \n",
"16 Musheerabad 0.000000 0.00 0.00 \n",
"9 Kapra 0.000000 0.00 0.00 \n",
"12 Kukatpally 0.000000 0.00 0.02 \n",
"4 Dilsukhnagar 0.000000 0.00 0.00 \n",
"\n",
" Andhra Restaurant Arcade Arts & Crafts Store Asian Restaurant \\\n",
"23 0.000000 0.142857 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.00 0.010000 \n",
"15 0.000000 0.000000 0.00 0.062500 \n",
"22 0.000000 0.030769 0.00 0.015385 \n",
"5 0.013889 0.000000 0.00 0.000000 \n",
"6 0.000000 0.000000 0.01 0.040000 \n",
"8 0.000000 0.000000 0.00 0.010000 \n",
"17 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.00 0.010000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"11 0.000000 0.142857 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.058824 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.083333 \n",
"16 0.000000 0.000000 0.00 0.083333 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Athletics & Sports BBQ Joint Bakery Bar Bed & Breakfast \\\n",
"23 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"21 0.00 0.000000 0.055556 0.000000 0.055556 \n",
"1 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"2 0.00 0.010000 0.030000 0.010000 0.000000 \n",
"15 0.00 0.020833 0.020833 0.000000 0.000000 \n",
"22 0.00 0.000000 0.076923 0.000000 0.000000 \n",
"5 0.00 0.013889 0.041667 0.013889 0.000000 \n",
"6 0.01 0.020000 0.020000 0.000000 0.010000 \n",
"8 0.00 0.020000 0.020000 0.010000 0.000000 \n",
"17 0.00 0.000000 0.054795 0.000000 0.000000 \n",
"10 0.00 0.010000 0.020000 0.000000 0.000000 \n",
"18 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"0 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"7 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"3 0.00 0.000000 0.142857 0.000000 0.000000 \n",
"11 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.00 0.000000 0.117647 0.000000 0.000000 \n",
"14 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"13 0.00 0.000000 0.000000 0.000000 0.083333 \n",
"16 0.00 0.000000 0.000000 0.000000 0.000000 \n",
"9 0.00 0.000000 0.071429 0.000000 0.000000 \n",
"12 0.02 0.000000 0.080000 0.000000 0.000000 \n",
"4 0.00 0.000000 0.076923 0.000000 0.000000 \n",
"\n",
" Beer Garden Bengali Restaurant Bistro Bookstore Boutique \\\n",
"23 0.00 0.00 0.00 0.000000 0.00 \n",
"21 0.00 0.00 0.00 0.000000 0.00 \n",
"1 0.00 0.00 0.00 0.000000 0.00 \n",
"2 0.00 0.01 0.00 0.030000 0.01 \n",
"15 0.00 0.00 0.00 0.020833 0.00 \n",
"22 0.00 0.00 0.00 0.000000 0.00 \n",
"5 0.00 0.00 0.00 0.000000 0.00 \n",
"6 0.01 0.00 0.01 0.000000 0.00 \n",
"8 0.01 0.00 0.01 0.000000 0.00 \n",
"17 0.00 0.00 0.00 0.000000 0.00 \n",
"10 0.00 0.00 0.01 0.030000 0.00 \n",
"18 0.00 0.00 0.00 0.000000 0.00 \n",
"19 0.00 0.00 0.00 0.000000 0.00 \n",
"0 0.00 0.00 0.00 0.000000 0.00 \n",
"7 0.00 0.00 0.00 0.000000 0.00 \n",
"3 0.00 0.00 0.00 0.000000 0.00 \n",
"11 0.00 0.00 0.00 0.000000 0.00 \n",
"20 0.00 0.00 0.00 0.000000 0.00 \n",
"14 0.00 0.00 0.00 0.000000 0.00 \n",
"24 0.00 0.00 0.00 0.000000 0.00 \n",
"13 0.00 0.00 0.00 0.000000 0.00 \n",
"16 0.00 0.00 0.00 0.000000 0.00 \n",
"9 0.00 0.00 0.00 0.000000 0.00 \n",
"12 0.00 0.00 0.00 0.000000 0.00 \n",
"4 0.00 0.00 0.00 0.000000 0.00 \n",
"\n",
" Bowling Alley Breakfast Spot Brewery Bridal Shop Burger Joint \\\n",
"23 0.000000 0.000000 0.000000 0.0 0.00 \n",
"21 0.055556 0.000000 0.000000 0.0 0.00 \n",
"1 0.000000 0.000000 0.000000 0.0 0.00 \n",
"2 0.000000 0.020000 0.000000 0.0 0.00 \n",
"15 0.000000 0.000000 0.000000 0.0 0.00 \n",
"22 0.000000 0.000000 0.000000 0.0 0.00 \n",
"5 0.000000 0.000000 0.013889 0.0 0.00 \n",
"6 0.010000 0.010000 0.000000 0.0 0.01 \n",
"8 0.010000 0.010000 0.040000 0.0 0.00 \n",
"17 0.000000 0.027397 0.000000 0.0 0.00 \n",
"10 0.000000 0.000000 0.000000 0.0 0.00 \n",
"18 0.000000 0.000000 0.000000 0.2 0.00 \n",
"19 0.000000 0.250000 0.000000 0.0 0.00 \n",
"0 0.000000 0.000000 0.000000 0.0 0.00 \n",
"7 0.000000 0.000000 0.000000 0.0 0.00 \n",
"3 0.000000 0.000000 0.000000 0.0 0.00 \n",
"11 0.000000 0.000000 0.000000 0.0 0.00 \n",
"20 0.000000 0.058824 0.000000 0.0 0.00 \n",
"14 0.000000 0.111111 0.000000 0.0 0.00 \n",
"24 0.000000 0.000000 0.000000 0.0 0.00 \n",
"13 0.000000 0.000000 0.000000 0.0 0.00 \n",
"16 0.000000 0.000000 0.000000 0.0 0.00 \n",
"9 0.000000 0.000000 0.000000 0.0 0.00 \n",
"12 0.000000 0.000000 0.000000 0.0 0.00 \n",
"4 0.076923 0.000000 0.000000 0.0 0.00 \n",
"\n",
" Bus Station Business Service Butcher Café Chaat Place \\\n",
"23 0.000000 0.00 0.00 0.000000 0.000000 \n",
"21 0.000000 0.00 0.00 0.055556 0.000000 \n",
"1 0.000000 0.00 0.00 0.047619 0.000000 \n",
"2 0.000000 0.00 0.00 0.040000 0.000000 \n",
"15 0.000000 0.00 0.00 0.083333 0.000000 \n",
"22 0.000000 0.00 0.00 0.030769 0.000000 \n",
"5 0.000000 0.00 0.00 0.013889 0.000000 \n",
"6 0.000000 0.00 0.00 0.100000 0.000000 \n",
"8 0.000000 0.00 0.00 0.110000 0.000000 \n",
"17 0.013699 0.00 0.00 0.054795 0.013699 \n",
"10 0.000000 0.00 0.00 0.060000 0.010000 \n",
"18 0.000000 0.00 0.00 0.000000 0.000000 \n",
"19 0.000000 0.25 0.00 0.000000 0.000000 \n",
"0 0.250000 0.00 0.00 0.000000 0.000000 \n",
"7 0.000000 0.00 0.00 0.000000 0.000000 \n",
"3 0.000000 0.00 0.00 0.000000 0.000000 \n",
"11 0.000000 0.00 0.00 0.000000 0.000000 \n",
"20 0.117647 0.00 0.00 0.000000 0.000000 \n",
"14 0.000000 0.00 0.00 0.111111 0.000000 \n",
"24 0.100000 0.00 0.00 0.000000 0.000000 \n",
"13 0.000000 0.00 0.00 0.000000 0.000000 \n",
"16 0.000000 0.00 0.00 0.041667 0.000000 \n",
"9 0.000000 0.00 0.00 0.142857 0.000000 \n",
"12 0.000000 0.00 0.02 0.020000 0.000000 \n",
"4 0.000000 0.00 0.00 0.153846 0.000000 \n",
"\n",
" Chinese Restaurant Clothing Store Cocktail Bar Coffee Shop \\\n",
"23 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.055556 \n",
"1 0.000000 0.000000 0.00 0.095238 \n",
"2 0.040000 0.030000 0.01 0.040000 \n",
"15 0.020833 0.000000 0.00 0.020833 \n",
"22 0.030769 0.000000 0.00 0.061538 \n",
"5 0.013889 0.000000 0.00 0.027778 \n",
"6 0.010000 0.000000 0.01 0.040000 \n",
"8 0.010000 0.000000 0.02 0.060000 \n",
"17 0.041096 0.013699 0.00 0.013699 \n",
"10 0.030000 0.000000 0.00 0.040000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"16 0.000000 0.000000 0.00 0.041667 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.020000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Comfort Food Restaurant Concert Hall Convenience Store Cricket Ground \\\n",
"23 0.00 0.00 0.000000 0.000000 \n",
"21 0.00 0.00 0.000000 0.000000 \n",
"1 0.00 0.00 0.095238 0.000000 \n",
"2 0.00 0.01 0.010000 0.000000 \n",
"15 0.00 0.00 0.000000 0.000000 \n",
"22 0.00 0.00 0.015385 0.000000 \n",
"5 0.00 0.00 0.000000 0.000000 \n",
"6 0.00 0.00 0.000000 0.000000 \n",
"8 0.01 0.00 0.000000 0.000000 \n",
"17 0.00 0.00 0.000000 0.000000 \n",
"10 0.00 0.00 0.010000 0.000000 \n",
"18 0.00 0.00 0.000000 0.000000 \n",
"19 0.00 0.00 0.000000 0.000000 \n",
"0 0.00 0.00 0.000000 0.000000 \n",
"7 0.00 0.00 0.000000 0.000000 \n",
"3 0.00 0.00 0.000000 0.000000 \n",
"11 0.00 0.00 0.000000 0.000000 \n",
"20 0.00 0.00 0.000000 0.000000 \n",
"14 0.00 0.00 0.000000 0.111111 \n",
"24 0.00 0.00 0.100000 0.100000 \n",
"13 0.00 0.00 0.000000 0.000000 \n",
"16 0.00 0.00 0.041667 0.000000 \n",
"9 0.00 0.00 0.000000 0.000000 \n",
"12 0.00 0.00 0.000000 0.000000 \n",
"4 0.00 0.00 0.076923 0.000000 \n",
"\n",
" Cupcake Shop Dance Studio Deli / Bodega Department Store Dessert Shop \\\n",
"23 0.00 0.00 0.00 0.000000 0.000000 \n",
"21 0.00 0.00 0.00 0.000000 0.000000 \n",
"1 0.00 0.00 0.00 0.000000 0.000000 \n",
"2 0.00 0.00 0.02 0.020000 0.000000 \n",
"15 0.00 0.00 0.00 0.000000 0.000000 \n",
"22 0.00 0.00 0.00 0.015385 0.015385 \n",
"5 0.00 0.00 0.00 0.041667 0.013889 \n",
"6 0.00 0.00 0.00 0.020000 0.010000 \n",
"8 0.01 0.01 0.01 0.000000 0.030000 \n",
"17 0.00 0.00 0.00 0.013699 0.013699 \n",
"10 0.00 0.00 0.00 0.010000 0.000000 \n",
"18 0.00 0.00 0.00 0.000000 0.000000 \n",
"19 0.00 0.00 0.00 0.000000 0.000000 \n",
"0 0.00 0.00 0.00 0.250000 0.000000 \n",
"7 0.00 0.00 0.00 0.000000 0.000000 \n",
"3 0.00 0.00 0.00 0.000000 0.000000 \n",
"11 0.00 0.00 0.00 0.000000 0.000000 \n",
"20 0.00 0.00 0.00 0.058824 0.000000 \n",
"14 0.00 0.00 0.00 0.111111 0.000000 \n",
"24 0.00 0.00 0.00 0.000000 0.000000 \n",
"13 0.00 0.00 0.00 0.083333 0.000000 \n",
"16 0.00 0.00 0.00 0.000000 0.000000 \n",
"9 0.00 0.00 0.00 0.071429 0.000000 \n",
"12 0.00 0.00 0.00 0.000000 0.000000 \n",
"4 0.00 0.00 0.00 0.076923 0.000000 \n",
"\n",
" Diner Donut Shop Dumpling Restaurant Electronics Store \\\n",
"23 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.055556 \n",
"1 0.000000 0.000000 0.00 0.047619 \n",
"2 0.020000 0.000000 0.00 0.010000 \n",
"15 0.020833 0.000000 0.00 0.041667 \n",
"22 0.000000 0.000000 0.00 0.030769 \n",
"5 0.000000 0.013889 0.00 0.000000 \n",
"6 0.010000 0.000000 0.01 0.000000 \n",
"8 0.000000 0.000000 0.00 0.000000 \n",
"17 0.013699 0.000000 0.00 0.000000 \n",
"10 0.000000 0.020000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.083333 \n",
"16 0.000000 0.000000 0.00 0.000000 \n",
"9 0.071429 0.000000 0.00 0.071429 \n",
"12 0.000000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Falafel Restaurant Farmers Market Fast Food Restaurant Flea Market \\\n",
"23 0.000000 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.000000 0.000000 0.000000 \n",
"2 0.000000 0.000000 0.030000 0.000000 \n",
"15 0.020833 0.000000 0.083333 0.000000 \n",
"22 0.000000 0.000000 0.046154 0.030769 \n",
"5 0.000000 0.000000 0.027778 0.000000 \n",
"6 0.000000 0.000000 0.040000 0.000000 \n",
"8 0.000000 0.000000 0.000000 0.000000 \n",
"17 0.000000 0.013699 0.027397 0.000000 \n",
"10 0.000000 0.000000 0.060000 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.000000 0.000000 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 0.100000 \n",
"13 0.000000 0.000000 0.083333 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.041667 \n",
"9 0.000000 0.000000 0.142857 0.000000 \n",
"12 0.000000 0.000000 0.160000 0.000000 \n",
"4 0.000000 0.000000 0.076923 0.000000 \n",
"\n",
" Food Food & Drink Shop Food Court Food Stand Food Truck \\\n",
"23 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.047619 0.000000 0.00 0.000000 \n",
"2 0.010000 0.000000 0.000000 0.00 0.010000 \n",
"15 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"22 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"5 0.000000 0.000000 0.013889 0.00 0.013889 \n",
"6 0.000000 0.000000 0.020000 0.00 0.000000 \n",
"8 0.000000 0.000000 0.010000 0.00 0.010000 \n",
"17 0.013699 0.000000 0.000000 0.00 0.013699 \n",
"10 0.000000 0.000000 0.010000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.250000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"24 0.100000 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"16 0.000000 0.000000 0.041667 0.00 0.000000 \n",
"9 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"12 0.020000 0.000000 0.000000 0.02 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Fried Chicken Joint Frozen Yogurt Shop Furniture / Home Store \\\n",
"23 0.000000 0.00 0.000000 \n",
"21 0.000000 0.00 0.000000 \n",
"1 0.000000 0.00 0.000000 \n",
"2 0.000000 0.00 0.020000 \n",
"15 0.000000 0.00 0.000000 \n",
"22 0.000000 0.00 0.000000 \n",
"5 0.000000 0.00 0.013889 \n",
"6 0.000000 0.00 0.010000 \n",
"8 0.000000 0.01 0.000000 \n",
"17 0.013699 0.00 0.000000 \n",
"10 0.000000 0.00 0.010000 \n",
"18 0.000000 0.00 0.000000 \n",
"19 0.000000 0.00 0.000000 \n",
"0 0.000000 0.00 0.000000 \n",
"7 0.000000 0.00 0.000000 \n",
"3 0.000000 0.00 0.000000 \n",
"11 0.000000 0.00 0.000000 \n",
"20 0.000000 0.00 0.000000 \n",
"14 0.000000 0.00 0.000000 \n",
"24 0.000000 0.00 0.000000 \n",
"13 0.000000 0.00 0.000000 \n",
"16 0.000000 0.00 0.000000 \n",
"9 0.000000 0.00 0.000000 \n",
"12 0.000000 0.00 0.000000 \n",
"4 0.000000 0.00 0.000000 \n",
"\n",
" Gaming Cafe Garden Gas Station Gastropub General Entertainment \\\n",
"23 0.000000 0.000000 0.0 0.00 0.000000 \n",
"21 0.000000 0.000000 0.0 0.00 0.000000 \n",
"1 0.000000 0.000000 0.0 0.00 0.047619 \n",
"2 0.000000 0.000000 0.0 0.00 0.000000 \n",
"15 0.000000 0.000000 0.0 0.00 0.000000 \n",
"22 0.000000 0.000000 0.0 0.00 0.000000 \n",
"5 0.000000 0.013889 0.0 0.00 0.000000 \n",
"6 0.000000 0.000000 0.0 0.01 0.000000 \n",
"8 0.010000 0.000000 0.0 0.01 0.000000 \n",
"17 0.000000 0.000000 0.0 0.00 0.000000 \n",
"10 0.000000 0.010000 0.0 0.00 0.000000 \n",
"18 0.000000 0.000000 0.0 0.00 0.000000 \n",
"19 0.000000 0.000000 0.0 0.00 0.000000 \n",
"0 0.000000 0.000000 0.0 0.00 0.000000 \n",
"7 0.000000 0.000000 0.0 0.00 0.000000 \n",
"3 0.000000 0.000000 0.0 0.00 0.000000 \n",
"11 0.142857 0.000000 0.0 0.00 0.000000 \n",
"20 0.000000 0.000000 0.0 0.00 0.000000 \n",
"14 0.000000 0.000000 0.0 0.00 0.000000 \n",
"24 0.000000 0.000000 0.1 0.00 0.000000 \n",
"13 0.000000 0.000000 0.0 0.00 0.000000 \n",
"16 0.000000 0.000000 0.0 0.00 0.000000 \n",
"9 0.000000 0.000000 0.0 0.00 0.000000 \n",
"12 0.000000 0.000000 0.0 0.00 0.000000 \n",
"4 0.000000 0.000000 0.0 0.00 0.000000 \n",
"\n",
" Gift Shop Golf Course Grocery Store Gym Gym / Fitness Center \\\n",
"23 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.000000 0.047619 0.000000 0.000000 \n",
"2 0.000000 0.000000 0.000000 0.010000 0.000000 \n",
"15 0.000000 0.000000 0.020833 0.000000 0.000000 \n",
"22 0.000000 0.000000 0.000000 0.015385 0.000000 \n",
"5 0.000000 0.013889 0.000000 0.000000 0.013889 \n",
"6 0.000000 0.000000 0.000000 0.010000 0.000000 \n",
"8 0.000000 0.000000 0.000000 0.020000 0.000000 \n",
"17 0.013699 0.000000 0.000000 0.000000 0.000000 \n",
"10 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.000000 0.000000 0.250000 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.142857 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"9 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 0.020000 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"\n",
" Harbor / Marina Historic Site Hookah Bar Hotel Hotel Bar \\\n",
"23 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"1 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"2 0.000000 0.00 0.020000 0.050000 0.000000 \n",
"15 0.000000 0.00 0.020833 0.000000 0.020833 \n",
"22 0.030769 0.00 0.015385 0.107692 0.015385 \n",
"5 0.000000 0.00 0.000000 0.041667 0.000000 \n",
"6 0.000000 0.00 0.000000 0.050000 0.000000 \n",
"8 0.000000 0.00 0.040000 0.030000 0.000000 \n",
"17 0.000000 0.00 0.000000 0.082192 0.027397 \n",
"10 0.000000 0.01 0.000000 0.060000 0.030000 \n",
"18 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"7 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.00 0.000000 0.000000 0.000000 \n",
"16 0.000000 0.00 0.000000 0.083333 0.041667 \n",
"9 0.000000 0.00 0.000000 0.071429 0.000000 \n",
"12 0.000000 0.00 0.000000 0.000000 0.020000 \n",
"4 0.000000 0.00 0.076923 0.000000 0.000000 \n",
"\n",
" Hotel Pool Hyderabadi Restaurant Ice Cream Shop Indian Restaurant \\\n",
"23 0.000000 0.000000 0.142857 0.142857 \n",
"21 0.000000 0.055556 0.000000 0.166667 \n",
"1 0.000000 0.000000 0.047619 0.190476 \n",
"2 0.000000 0.010000 0.020000 0.190000 \n",
"15 0.000000 0.020833 0.041667 0.187500 \n",
"22 0.015385 0.015385 0.015385 0.123077 \n",
"5 0.000000 0.013889 0.055556 0.194444 \n",
"6 0.000000 0.000000 0.010000 0.130000 \n",
"8 0.000000 0.000000 0.040000 0.060000 \n",
"17 0.000000 0.027397 0.054795 0.123288 \n",
"10 0.000000 0.020000 0.030000 0.100000 \n",
"18 0.000000 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.000000 0.000000 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.285714 \n",
"20 0.000000 0.000000 0.000000 0.117647 \n",
"14 0.000000 0.000000 0.000000 0.111111 \n",
"24 0.000000 0.000000 0.000000 0.200000 \n",
"13 0.000000 0.083333 0.000000 0.083333 \n",
"16 0.000000 0.000000 0.000000 0.250000 \n",
"9 0.000000 0.000000 0.000000 0.142857 \n",
"12 0.000000 0.000000 0.060000 0.180000 \n",
"4 0.000000 0.000000 0.000000 0.076923 \n",
"\n",
" Indian Sweet Shop Indie Movie Theater Irish Pub Italian Restaurant \\\n",
"23 0.142857 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.00 0.000000 \n",
"15 0.000000 0.000000 0.00 0.020833 \n",
"22 0.015385 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.00 0.013889 \n",
"6 0.000000 0.000000 0.00 0.030000 \n",
"8 0.000000 0.000000 0.01 0.040000 \n",
"17 0.000000 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.00 0.010000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.285714 0.00 0.000000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.117647 0.00 0.000000 \n",
"14 0.000000 0.111111 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"16 0.000000 0.000000 0.00 0.000000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Japanese Restaurant Juice Bar Lake Laser Tag Light Rail Station \\\n",
"23 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"21 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"1 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"2 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"15 0.000000 0.041667 0.000000 0.00 0.000000 \n",
"22 0.000000 0.015385 0.000000 0.00 0.000000 \n",
"5 0.013889 0.000000 0.000000 0.00 0.000000 \n",
"6 0.000000 0.000000 0.000000 0.01 0.000000 \n",
"8 0.000000 0.010000 0.000000 0.00 0.000000 \n",
"17 0.000000 0.027397 0.000000 0.00 0.000000 \n",
"10 0.000000 0.000000 0.010000 0.00 0.000000 \n",
"18 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"3 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"20 0.000000 0.058824 0.000000 0.00 0.000000 \n",
"14 0.000000 0.000000 0.000000 0.00 0.111111 \n",
"24 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.083333 0.00 0.000000 \n",
"16 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"9 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.000000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Liquor Store Lounge Mattress Store Mediterranean Restaurant \\\n",
"23 0.000000 0.000000 0.000000 0.00 \n",
"21 0.000000 0.000000 0.000000 0.00 \n",
"1 0.000000 0.000000 0.000000 0.00 \n",
"2 0.000000 0.010000 0.000000 0.00 \n",
"15 0.000000 0.000000 0.000000 0.00 \n",
"22 0.000000 0.000000 0.000000 0.00 \n",
"5 0.013889 0.013889 0.000000 0.00 \n",
"6 0.000000 0.020000 0.000000 0.01 \n",
"8 0.010000 0.050000 0.000000 0.01 \n",
"17 0.000000 0.013699 0.000000 0.00 \n",
"10 0.000000 0.020000 0.000000 0.00 \n",
"18 0.000000 0.000000 0.000000 0.00 \n",
"19 0.000000 0.000000 0.000000 0.00 \n",
"0 0.000000 0.000000 0.000000 0.00 \n",
"7 0.000000 0.000000 0.333333 0.00 \n",
"3 0.000000 0.000000 0.000000 0.00 \n",
"11 0.000000 0.000000 0.000000 0.00 \n",
"20 0.000000 0.000000 0.000000 0.00 \n",
"14 0.000000 0.000000 0.000000 0.00 \n",
"24 0.000000 0.000000 0.000000 0.00 \n",
"13 0.000000 0.000000 0.000000 0.00 \n",
"16 0.000000 0.000000 0.000000 0.00 \n",
"9 0.000000 0.000000 0.000000 0.00 \n",
"12 0.000000 0.000000 0.000000 0.00 \n",
"4 0.000000 0.000000 0.000000 0.00 \n",
"\n",
" Metro Station Mexican Restaurant Middle Eastern Restaurant \\\n",
"23 0.000000 0.00 0.000000 \n",
"21 0.000000 0.00 0.000000 \n",
"1 0.000000 0.00 0.000000 \n",
"2 0.000000 0.00 0.010000 \n",
"15 0.000000 0.00 0.000000 \n",
"22 0.015385 0.00 0.000000 \n",
"5 0.000000 0.00 0.000000 \n",
"6 0.000000 0.01 0.000000 \n",
"8 0.000000 0.00 0.010000 \n",
"17 0.000000 0.00 0.013699 \n",
"10 0.000000 0.00 0.010000 \n",
"18 0.000000 0.00 0.000000 \n",
"19 0.000000 0.00 0.000000 \n",
"0 0.000000 0.00 0.000000 \n",
"7 0.000000 0.00 0.000000 \n",
"3 0.000000 0.00 0.000000 \n",
"11 0.000000 0.00 0.000000 \n",
"20 0.058824 0.00 0.000000 \n",
"14 0.000000 0.00 0.000000 \n",
"24 0.000000 0.00 0.000000 \n",
"13 0.000000 0.00 0.000000 \n",
"16 0.000000 0.00 0.000000 \n",
"9 0.000000 0.00 0.000000 \n",
"12 0.000000 0.00 0.020000 \n",
"4 0.000000 0.00 0.000000 \n",
"\n",
" Miscellaneous Shop Mobile Phone Shop Movie Theater \\\n",
"23 0.000000 0.000000 0.000000 \n",
"21 0.000000 0.000000 0.055556 \n",
"1 0.000000 0.000000 0.047619 \n",
"2 0.000000 0.000000 0.000000 \n",
"15 0.000000 0.000000 0.000000 \n",
"22 0.015385 0.000000 0.015385 \n",
"5 0.000000 0.000000 0.013889 \n",
"6 0.000000 0.000000 0.010000 \n",
"8 0.000000 0.000000 0.000000 \n",
"17 0.000000 0.013699 0.000000 \n",
"10 0.000000 0.000000 0.000000 \n",
"18 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.000000 0.000000 \n",
"7 0.000000 0.000000 0.000000 \n",
"3 0.000000 0.000000 0.000000 \n",
"11 0.000000 0.000000 0.000000 \n",
"20 0.000000 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.000000 0.083333 \n",
"16 0.000000 0.000000 0.125000 \n",
"9 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.076923 \n",
"\n",
" Multicuisine Indian Restaurant Multiplex New American Restaurant \\\n",
"23 0.00 0.000000 0.00 \n",
"21 0.00 0.055556 0.00 \n",
"1 0.00 0.000000 0.00 \n",
"2 0.00 0.020000 0.00 \n",
"15 0.00 0.000000 0.00 \n",
"22 0.00 0.000000 0.00 \n",
"5 0.00 0.000000 0.00 \n",
"6 0.01 0.010000 0.00 \n",
"8 0.03 0.000000 0.01 \n",
"17 0.00 0.000000 0.00 \n",
"10 0.00 0.090000 0.00 \n",
"18 0.00 0.000000 0.00 \n",
"19 0.00 0.000000 0.00 \n",
"0 0.00 0.000000 0.00 \n",
"7 0.00 0.000000 0.00 \n",
"3 0.00 0.000000 0.00 \n",
"11 0.00 0.285714 0.00 \n",
"20 0.00 0.000000 0.00 \n",
"14 0.00 0.111111 0.00 \n",
"24 0.00 0.100000 0.00 \n",
"13 0.00 0.000000 0.00 \n",
"16 0.00 0.000000 0.00 \n",
"9 0.00 0.000000 0.00 \n",
"12 0.00 0.020000 0.00 \n",
"4 0.00 0.076923 0.00 \n",
"\n",
" Nightclub North Indian Restaurant Office Park Parsi Restaurant \\\n",
"23 0.00 0.00 0.00 0.000000 0.00 \n",
"21 0.00 0.00 0.00 0.000000 0.00 \n",
"1 0.00 0.00 0.00 0.000000 0.00 \n",
"2 0.00 0.00 0.00 0.000000 0.00 \n",
"15 0.00 0.00 0.00 0.020833 0.00 \n",
"22 0.00 0.00 0.00 0.015385 0.00 \n",
"5 0.00 0.00 0.00 0.000000 0.00 \n",
"6 0.01 0.00 0.01 0.000000 0.00 \n",
"8 0.01 0.01 0.00 0.010000 0.01 \n",
"17 0.00 0.00 0.00 0.000000 0.00 \n",
"10 0.01 0.00 0.00 0.010000 0.00 \n",
"18 0.00 0.00 0.00 0.000000 0.00 \n",
"19 0.00 0.00 0.00 0.000000 0.00 \n",
"0 0.00 0.00 0.00 0.250000 0.00 \n",
"7 0.00 0.00 0.00 0.000000 0.00 \n",
"3 0.00 0.00 0.00 0.000000 0.00 \n",
"11 0.00 0.00 0.00 0.000000 0.00 \n",
"20 0.00 0.00 0.00 0.000000 0.00 \n",
"14 0.00 0.00 0.00 0.000000 0.00 \n",
"24 0.00 0.00 0.00 0.000000 0.00 \n",
"13 0.00 0.00 0.00 0.000000 0.00 \n",
"16 0.00 0.00 0.00 0.000000 0.00 \n",
"9 0.00 0.00 0.00 0.000000 0.00 \n",
"12 0.00 0.00 0.00 0.000000 0.00 \n",
"4 0.00 0.00 0.00 0.000000 0.00 \n",
"\n",
" Performing Arts Venue Pizza Place Platform Pub Rajasthani Restaurant \\\n",
"23 0.000000 0.285714 0.000000 0.00 0.00 \n",
"21 0.000000 0.055556 0.000000 0.00 0.00 \n",
"1 0.000000 0.047619 0.047619 0.00 0.00 \n",
"2 0.010000 0.040000 0.000000 0.01 0.01 \n",
"15 0.000000 0.041667 0.000000 0.00 0.00 \n",
"22 0.000000 0.030769 0.000000 0.00 0.00 \n",
"5 0.000000 0.055556 0.000000 0.00 0.00 \n",
"6 0.000000 0.020000 0.000000 0.01 0.00 \n",
"8 0.000000 0.010000 0.000000 0.00 0.00 \n",
"17 0.013699 0.000000 0.013699 0.00 0.00 \n",
"10 0.020000 0.040000 0.000000 0.02 0.00 \n",
"18 0.000000 0.000000 0.000000 0.00 0.00 \n",
"19 0.000000 0.000000 0.000000 0.00 0.00 \n",
"0 0.000000 0.000000 0.000000 0.00 0.00 \n",
"7 0.000000 0.000000 0.000000 0.00 0.00 \n",
"3 0.000000 0.142857 0.000000 0.00 0.00 \n",
"11 0.000000 0.000000 0.000000 0.00 0.00 \n",
"20 0.000000 0.058824 0.000000 0.00 0.00 \n",
"14 0.000000 0.000000 0.000000 0.00 0.00 \n",
"24 0.000000 0.000000 0.000000 0.00 0.00 \n",
"13 0.000000 0.166667 0.000000 0.00 0.00 \n",
"16 0.000000 0.000000 0.125000 0.00 0.00 \n",
"9 0.000000 0.071429 0.000000 0.00 0.00 \n",
"12 0.000000 0.060000 0.000000 0.00 0.00 \n",
"4 0.000000 0.076923 0.000000 0.00 0.00 \n",
"\n",
" Restaurant Sandwich Place Scenic Lookout Science Museum \\\n",
"23 0.142857 0.000000 0.00 0.000000 \n",
"21 0.055556 0.000000 0.00 0.000000 \n",
"1 0.000000 0.095238 0.00 0.000000 \n",
"2 0.010000 0.050000 0.00 0.000000 \n",
"15 0.062500 0.020833 0.00 0.000000 \n",
"22 0.015385 0.015385 0.00 0.000000 \n",
"5 0.041667 0.055556 0.00 0.000000 \n",
"6 0.060000 0.020000 0.00 0.000000 \n",
"8 0.020000 0.030000 0.00 0.000000 \n",
"17 0.027397 0.000000 0.00 0.013699 \n",
"10 0.030000 0.030000 0.01 0.010000 \n",
"18 0.000000 0.000000 0.00 0.000000 \n",
"19 0.000000 0.000000 0.00 0.000000 \n",
"0 0.000000 0.000000 0.00 0.000000 \n",
"7 0.000000 0.000000 0.00 0.000000 \n",
"3 0.142857 0.000000 0.00 0.000000 \n",
"11 0.000000 0.000000 0.00 0.000000 \n",
"20 0.058824 0.058824 0.00 0.000000 \n",
"14 0.000000 0.000000 0.00 0.000000 \n",
"24 0.000000 0.000000 0.00 0.000000 \n",
"13 0.000000 0.000000 0.00 0.000000 \n",
"16 0.041667 0.000000 0.00 0.000000 \n",
"9 0.000000 0.000000 0.00 0.000000 \n",
"12 0.000000 0.020000 0.00 0.000000 \n",
"4 0.000000 0.000000 0.00 0.000000 \n",
"\n",
" Shipping Store Shoe Store Shop & Service Shopping Mall Smoke Shop \\\n",
"23 0.0 0.000000 0.00 0.000000 0.000000 \n",
"21 0.0 0.000000 0.00 0.055556 0.000000 \n",
"1 0.0 0.000000 0.00 0.047619 0.000000 \n",
"2 0.0 0.000000 0.00 0.010000 0.000000 \n",
"15 0.0 0.000000 0.00 0.000000 0.000000 \n",
"22 0.0 0.000000 0.00 0.000000 0.015385 \n",
"5 0.0 0.000000 0.00 0.000000 0.000000 \n",
"6 0.0 0.000000 0.00 0.020000 0.000000 \n",
"8 0.0 0.000000 0.00 0.000000 0.000000 \n",
"17 0.0 0.013699 0.00 0.013699 0.013699 \n",
"10 0.0 0.000000 0.00 0.030000 0.010000 \n",
"18 0.2 0.000000 0.00 0.000000 0.000000 \n",
"19 0.0 0.000000 0.00 0.000000 0.000000 \n",
"0 0.0 0.000000 0.00 0.000000 0.000000 \n",
"7 0.0 0.000000 0.00 0.000000 0.000000 \n",
"3 0.0 0.000000 0.00 0.142857 0.000000 \n",
"11 0.0 0.000000 0.00 0.000000 0.000000 \n",
"20 0.0 0.000000 0.00 0.000000 0.000000 \n",
"14 0.0 0.000000 0.00 0.000000 0.000000 \n",
"24 0.0 0.000000 0.00 0.000000 0.000000 \n",
"13 0.0 0.000000 0.00 0.000000 0.000000 \n",
"16 0.0 0.000000 0.00 0.000000 0.000000 \n",
"9 0.0 0.000000 0.00 0.071429 0.000000 \n",
"12 0.0 0.000000 0.02 0.080000 0.000000 \n",
"4 0.0 0.000000 0.00 0.076923 0.000000 \n",
"\n",
" Snack Place Soccer Field Social Club South Indian Restaurant Spa \\\n",
"23 0.000000 0.000000 0.00 0.000000 0.00 \n",
"21 0.000000 0.000000 0.00 0.055556 0.00 \n",
"1 0.000000 0.000000 0.00 0.000000 0.00 \n",
"2 0.000000 0.000000 0.00 0.010000 0.00 \n",
"15 0.020833 0.000000 0.00 0.000000 0.00 \n",
"22 0.015385 0.000000 0.00 0.000000 0.00 \n",
"5 0.027778 0.000000 0.00 0.027778 0.00 \n",
"6 0.020000 0.000000 0.00 0.010000 0.00 \n",
"8 0.020000 0.000000 0.01 0.010000 0.02 \n",
"17 0.027397 0.013699 0.00 0.041096 0.00 \n",
"10 0.000000 0.000000 0.00 0.010000 0.00 \n",
"18 0.000000 0.000000 0.00 0.000000 0.00 \n",
"19 0.000000 0.000000 0.00 0.000000 0.00 \n",
"0 0.000000 0.000000 0.00 0.000000 0.00 \n",
"7 0.000000 0.000000 0.00 0.000000 0.00 \n",
"3 0.000000 0.000000 0.00 0.000000 0.00 \n",
"11 0.000000 0.000000 0.00 0.000000 0.00 \n",
"20 0.000000 0.000000 0.00 0.000000 0.00 \n",
"14 0.000000 0.000000 0.00 0.000000 0.00 \n",
"24 0.000000 0.000000 0.00 0.000000 0.00 \n",
"13 0.000000 0.000000 0.00 0.083333 0.00 \n",
"16 0.000000 0.000000 0.00 0.000000 0.00 \n",
"9 0.071429 0.000000 0.00 0.000000 0.00 \n",
"12 0.040000 0.000000 0.00 0.000000 0.00 \n",
"4 0.000000 0.000000 0.00 0.000000 0.00 \n",
"\n",
" Sports Bar Stadium Steakhouse Supermarket Tea Room Thai Restaurant \\\n",
"23 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"21 0.000000 0.055556 0.000000 0.000000 0.000000 0.00 \n",
"1 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"2 0.000000 0.000000 0.000000 0.000000 0.000000 0.01 \n",
"15 0.000000 0.000000 0.020833 0.000000 0.000000 0.00 \n",
"22 0.015385 0.000000 0.000000 0.000000 0.015385 0.00 \n",
"5 0.000000 0.027778 0.000000 0.013889 0.000000 0.00 \n",
"6 0.020000 0.000000 0.000000 0.010000 0.000000 0.00 \n",
"8 0.010000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"17 0.000000 0.013699 0.000000 0.000000 0.000000 0.00 \n",
"10 0.000000 0.010000 0.000000 0.000000 0.000000 0.00 \n",
"18 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"19 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"0 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"7 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"3 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"11 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"20 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"14 0.000000 0.000000 0.000000 0.000000 0.111111 0.00 \n",
"24 0.000000 0.100000 0.000000 0.000000 0.000000 0.00 \n",
"13 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"16 0.000000 0.041667 0.000000 0.000000 0.000000 0.00 \n",
"9 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"12 0.000000 0.000000 0.000000 0.020000 0.000000 0.00 \n",
"4 0.000000 0.000000 0.000000 0.000000 0.000000 0.00 \n",
"\n",
" Train Station Vegetarian / Vegan Restaurant Women's Store \\\n",
"23 0.000000 0.000000 0.000000 \n",
"21 0.055556 0.000000 0.000000 \n",
"1 0.047619 0.000000 0.000000 \n",
"2 0.000000 0.050000 0.000000 \n",
"15 0.000000 0.020833 0.000000 \n",
"22 0.000000 0.030769 0.000000 \n",
"5 0.000000 0.027778 0.000000 \n",
"6 0.000000 0.020000 0.000000 \n",
"8 0.000000 0.000000 0.000000 \n",
"17 0.000000 0.013699 0.013699 \n",
"10 0.000000 0.010000 0.000000 \n",
"18 0.000000 0.000000 0.000000 \n",
"19 0.000000 0.000000 0.000000 \n",
"0 0.000000 0.000000 0.000000 \n",
"7 0.000000 0.000000 0.000000 \n",
"3 0.142857 0.000000 0.000000 \n",
"11 0.000000 0.000000 0.000000 \n",
"20 0.058824 0.000000 0.000000 \n",
"14 0.000000 0.000000 0.000000 \n",
"24 0.000000 0.000000 0.000000 \n",
"13 0.000000 0.000000 0.000000 \n",
"16 0.000000 0.000000 0.000000 \n",
"9 0.000000 0.000000 0.000000 \n",
"12 0.000000 0.000000 0.000000 \n",
"4 0.000000 0.000000 0.000000 \n",
"\n",
" Cluster_labels Latitude Longitude \n",
"23 0 17.465657 78.340672 \n",
"21 1 17.361165 78.538756 \n",
"1 1 17.390263 78.516481 \n",
"2 1 17.437501 78.448251 \n",
"15 1 17.394263 78.434251 \n",
"22 1 17.433725 78.500683 \n",
"5 1 17.443622 78.351964 \n",
"6 1 17.449005 78.383138 \n",
"8 1 17.430836 78.410288 \n",
"17 1 17.391852 78.466005 \n",
"10 1 17.411771 78.462200 \n",
"18 2 17.528609 78.267425 \n",
"19 3 17.311091 78.442585 \n",
"0 4 17.502229 78.508858 \n",
"7 5 17.328115 78.604540 \n",
"3 6 17.476746 78.422108 \n",
"11 7 17.544703 78.491842 \n",
"20 8 17.456965 78.443478 \n",
"14 9 17.448344 78.528973 \n",
"24 10 17.402509 78.561256 \n",
"13 11 17.350162 78.551094 \n",
"16 12 17.419142 78.498573 \n",
"9 13 17.484636 78.561009 \n",
"12 13 17.493084 78.405441 \n",
"4 14 17.368431 78.523428 "
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_venues_merged.sort_values([\"Cluster_labels\"], inplace=True)\n",
"hyd_venues_merged"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Create a map of hyderabad and add neighborhoods and cluster them based on venues it has"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div style=\"width:100%;\"><div style=\"position:relative;width:100%;height:0;padding-bottom:60%;\"><span style=\"color:#565656\">Make this Notebook Trusted to load map: File -> Trust Notebook</span><iframe src=\"about:blank\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" data-html=PCFET0NUWVBFIGh0bWw+CjxoZWFkPiAgICAKICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiAvPgogICAgPHNjcmlwdD5MX1BSRUZFUl9DQU5WQVMgPSBmYWxzZTsgTF9OT19UT1VDSCA9IGZhbHNlOyBMX0RJU0FCTEVfM0QgPSBmYWxzZTs8L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeS8xLjExLjEvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvTGVhZmxldC5hd2Vzb21lLW1hcmtlcnMvMi4wLjIvbGVhZmxldC5hd2Vzb21lLW1hcmtlcnMuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC8zLjIuMC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvY3NzL2Jvb3RzdHJhcC10aGVtZS5taW4uY3NzIi8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNi4zL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9MZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy8yLjAuMi9sZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9yYXdnaXQuY29tL3B5dGhvbi12aXN1YWxpemF0aW9uL2ZvbGl1bS9tYXN0ZXIvZm9saXVtL3RlbXBsYXRlcy9sZWFmbGV0LmF3ZXNvbWUucm90YXRlLmNzcyIvPgogICAgPHN0eWxlPmh0bWwsIGJvZHkge3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTttYXJnaW46IDA7cGFkZGluZzogMDt9PC9zdHlsZT4KICAgIDxzdHlsZT4jbWFwIHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDowO2xlZnQ6MDt9PC9zdHlsZT4KICAgIAogICAgICAgICAgICA8c3R5bGU+ICNtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIgewogICAgICAgICAgICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgIHdpZHRoIDogMTAwLjAlOwogICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAuMCU7CiAgICAgICAgICAgICAgICBsZWZ0OiAwLjAlOwogICAgICAgICAgICAgICAgdG9wOiAwLjAlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICA8L3N0eWxlPgogICAgICAgIAo8L2hlYWQ+Cjxib2R5PiAgICAKICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb2xpdW0tbWFwIiBpZD0ibWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyIiA+PC9kaXY+CiAgICAgICAgCjwvYm9keT4KPHNjcmlwdD4gICAgCiAgICAKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGJvdW5kcyA9IG51bGw7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgdmFyIG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMiA9IEwubWFwKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2VudGVyOiBbMTcuMzg4Nzg1OTUsNzguNDYxMDY0NzM0NTMxNDZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgem9vbTogMTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhCb3VuZHM6IGJvdW5kcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyczogW10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JsZENvcHlKdW1wOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyczogTC5DUlMuRVBTRzM4NTcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciB0aWxlX2xheWVyXzc0NDBlYWQzNGNlMDRkMzQ4ZGJlNTM1NDM4ODc0ODRkID0gTC50aWxlTGF5ZXIoCiAgICAgICAgICAgICAgICAnaHR0cHM6Ly97c30udGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLAogICAgICAgICAgICAgICAgewogICJhdHRyaWJ1dGlvbiI6IG51bGwsCiAgImRldGVjdFJldGluYSI6IGZhbHNlLAogICJtYXhab29tIjogMTgsCiAgIm1pblpvb20iOiAxLAogICJub1dyYXAiOiBmYWxzZSwKICAic3ViZG9tYWlucyI6ICJhYmMiCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9mYTk1NDQ5MDRhOWI0OTRmYmU5ZTFiMzMxZmE0OWE4ZSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ2NTY1NzM1LDc4LjM0MDY3MjM5NTY1MTEzXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiNmZjAwMDAiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjZmYwMDAwIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzEzNjg0NDdmYWYwNTQwMjg4YTBhMTc2MTVjNTRjYmRlID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sX2RjNmI4ZjFkMTIwZjRhYzhhMDFhYjMxNDQxMjdjNjdlID0gJCgnPGRpdiBpZD0iaHRtbF9kYzZiOGYxZDEyMGY0YWM4YTAxYWIzMTQ0MTI3YzY3ZSIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+U2VyaWxpbmdhbXBhbGx5IC0gQ2x1c3RlciAwPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8xMzY4NDQ3ZmFmMDU0MDI4OGEwYTE3NjE1YzU0Y2JkZS5zZXRDb250ZW50KGh0bWxfZGM2YjhmMWQxMjBmNGFjOGEwMWFiMzE0NDEyN2M2N2UpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZmE5NTQ0OTA0YTliNDk0ZmJlOWUxYjMzMWZhNDlhOGUuYmluZFBvcHVwKHBvcHVwXzEzNjg0NDdmYWYwNTQwMjg4YTBhMTc2MTVjNTRjYmRlKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzExOGNkODY1NDYzOTRjYmRiOTFmNmE4ODBiNDNkMjEwID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzYxMTY1NDUsNzguNTM4NzU2MTk1ODg5NjJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfYzdiZjNkZmRlNmJhNGE5NDk0YmI0MmZmMGJlZjJlODEgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfZjM0MzhhZjYzYjcwNDA1YTk3MWI0ODgxMzZlOTU2YmMgPSAkKCc8ZGl2IGlkPSJodG1sX2YzNDM4YWY2M2I3MDQwNWE5NzFiNDg4MTM2ZTk1NmJjIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5TYXJvb3JuYWdhciAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYzdiZjNkZmRlNmJhNGE5NDk0YmI0MmZmMGJlZjJlODEuc2V0Q29udGVudChodG1sX2YzNDM4YWY2M2I3MDQwNWE5NzFiNDg4MTM2ZTk1NmJjKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzExOGNkODY1NDYzOTRjYmRiOTFmNmE4ODBiNDNkMjEwLmJpbmRQb3B1cChwb3B1cF9jN2JmM2RmZGU2YmE0YTk0OTRiYjQyZmYwYmVmMmU4MSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9kODA0OWZhMjUyMGY0MmY5YjhmMDZkNzFkODYwMjY5NSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM5MDI2MzE1MDAwMDAwMyw3OC41MTY0ODExNzVdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMWE1YjMzZDMwNGQ3NGM0ZmIwNzMwZWFlOGEyZGYwMmMgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMTc4YjZlZjQ4ZWEyNDkyN2FmMmI1MzY1N2E2ZGI4ZGYgPSAkKCc8ZGl2IGlkPSJodG1sXzE3OGI2ZWY0OGVhMjQ5MjdhZjJiNTM2NTdhNmRiOGRmIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5BbWJlcnBldCAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMWE1YjMzZDMwNGQ3NGM0ZmIwNzMwZWFlOGEyZGYwMmMuc2V0Q29udGVudChodG1sXzE3OGI2ZWY0OGVhMjQ5MjdhZjJiNTM2NTdhNmRiOGRmKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2Q4MDQ5ZmEyNTIwZjQyZjliOGYwNmQ3MWQ4NjAyNjk1LmJpbmRQb3B1cChwb3B1cF8xYTViMzNkMzA0ZDc0YzRmYjA3MzBlYWU4YTJkZjAyYyk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9lMTZlOTNmYzY2MmU0YmM3YjBhOTBkNjI0ZDA0M2FhYyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQzNzUwMTIsNzguNDQ4MjUwNV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9kOGQ3ODJkMmIyMjY0NzM5OWI4YTA5YTk5Yjc3Njg3YSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9iYzQ0ZDFmZWMxYzU0NzJiYTU5ODkwMDM4MWU5YzExNSA9ICQoJzxkaXYgaWQ9Imh0bWxfYmM0NGQxZmVjMWM1NDcyYmE1OTg5MDAzODFlOWMxMTUiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkFtZWVycGV0IC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9kOGQ3ODJkMmIyMjY0NzM5OWI4YTA5YTk5Yjc3Njg3YS5zZXRDb250ZW50KGh0bWxfYmM0NGQxZmVjMWM1NDcyYmE1OTg5MDAzODFlOWMxMTUpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZTE2ZTkzZmM2NjJlNGJjN2IwYTkwZDYyNGQwNDNhYWMuYmluZFBvcHVwKHBvcHVwX2Q4ZDc4MmQyYjIyNjQ3Mzk5YjhhMDlhOTliNzc2ODdhKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2FlMGE1ODlmN2NiYjRhYTNiYjlkMGJlNmJhYjFmNjE0ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzk0MjYyNyw3OC40MzQyNTE0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzI0MWJlZTE3N2FkNDRlNWFiY2YwMWEwODQ0MjkzZjFiID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzM3ZWMxODM2ZTA2ZDQ3NTM5MDFhNzk2ZWIxYmY2OGIzID0gJCgnPGRpdiBpZD0iaHRtbF8zN2VjMTgzNmUwNmQ0NzUzOTAxYTc5NmViMWJmNjhiMyIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+TWVoZGlwYXRuYW0gLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzI0MWJlZTE3N2FkNDRlNWFiY2YwMWEwODQ0MjkzZjFiLnNldENvbnRlbnQoaHRtbF8zN2VjMTgzNmUwNmQ0NzUzOTAxYTc5NmViMWJmNjhiMyk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9hZTBhNTg5ZjdjYmI0YWEzYmI5ZDBiZTZiYWIxZjYxNC5iaW5kUG9wdXAocG9wdXBfMjQxYmVlMTc3YWQ0NGU1YWJjZjAxYTA4NDQyOTNmMWIpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfNjY1Y2Q0MzJkNzNiNDQ1NTljNTYzYWI1ZDU2ZDRiOWMgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40MzM3MjQ2LDc4LjUwMDY4MjddLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNjJjNWJiMzRiNTk4NDQ5MGE0OTIwMTliNDAzOGU3ZjAgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfYmVkMmQwZDVlMDNiNDgyODg2ZTkzNWQzMjk3NmEwYzIgPSAkKCc8ZGl2IGlkPSJodG1sX2JlZDJkMGQ1ZTAzYjQ4Mjg4NmU5MzVkMzI5NzZhMGMyIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5TZWN1bmRlcmFiYWQgLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzYyYzViYjM0YjU5ODQ0OTBhNDkyMDE5YjQwMzhlN2YwLnNldENvbnRlbnQoaHRtbF9iZWQyZDBkNWUwM2I0ODI4ODZlOTM1ZDMyOTc2YTBjMik7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl82NjVjZDQzMmQ3M2I0NDU1OWM1NjNhYjVkNTZkNGI5Yy5iaW5kUG9wdXAocG9wdXBfNjJjNWJiMzRiNTk4NDQ5MGE0OTIwMTliNDAzOGU3ZjApOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfODVjYzBhNmRlODdhNDY4Yjg2MDZhOTIxODEzYTA5ZWYgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40NDM2MjIyLDc4LjM1MTk2MzhdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMDlkZmYyZDI2ZjgzNGY4ZmI0MWJiNWUzZTE2MDlkYjUgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfYjU3OGQ0MzM3NzYyNDBkN2IzNGQ5NGY2NmMxM2Q0ODYgPSAkKCc8ZGl2IGlkPSJodG1sX2I1NzhkNDMzNzc2MjQwZDdiMzRkOTRmNjZjMTNkNDg2IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5HYWNoaWJvd2xpIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8wOWRmZjJkMjZmODM0ZjhmYjQxYmI1ZTNlMTYwOWRiNS5zZXRDb250ZW50KGh0bWxfYjU3OGQ0MzM3NzYyNDBkN2IzNGQ5NGY2NmMxM2Q0ODYpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfODVjYzBhNmRlODdhNDY4Yjg2MDZhOTIxODEzYTA5ZWYuYmluZFBvcHVwKHBvcHVwXzA5ZGZmMmQyNmY4MzRmOGZiNDFiYjVlM2UxNjA5ZGI1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2YxN2NiZWMxYTlkZTRlZDE5NWM0NzA3MzE1ZjRmNzQ3ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDQ5MDA1NSw3OC4zODMxMzc2XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2FlNTVjMDM1NjM5ODQzODBiM2U3YzA5MmVjNDU1Nzc1ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzg1MDE4OTQ4YTM5MzQwMWU4NTQ0OGEzYmExMmU1YzQwID0gJCgnPGRpdiBpZD0iaHRtbF84NTAxODk0OGEzOTM0MDFlODU0NDhhM2JhMTJlNWM0MCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+SElURUMgQ2l0eSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYWU1NWMwMzU2Mzk4NDM4MGIzZTdjMDkyZWM0NTU3NzUuc2V0Q29udGVudChodG1sXzg1MDE4OTQ4YTM5MzQwMWU4NTQ0OGEzYmExMmU1YzQwKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2YxN2NiZWMxYTlkZTRlZDE5NWM0NzA3MzE1ZjRmNzQ3LmJpbmRQb3B1cChwb3B1cF9hZTU1YzAzNTYzOTg0MzgwYjNlN2MwOTJlYzQ1NTc3NSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9kZmFkNGEzMzZhZTc0MjMxOTUyOWVmYzFjMmEyOTZiMSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQzMDgzNjIsNzguNDEwMjg4Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9jOWFjZGQ0YmZlMmE0ODMxYWU3ZWNlNmI0YTI0NDRkYiA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF85NTEwZDE1NGI1MzM0Mjc5YWJjZmVmZDM1OGJkNzJlNSA9ICQoJzxkaXYgaWQ9Imh0bWxfOTUxMGQxNTRiNTMzNDI3OWFiY2ZlZmQzNThiZDcyZTUiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkp1YmlsZWUgSGlsbHMgLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2M5YWNkZDRiZmUyYTQ4MzFhZTdlY2U2YjRhMjQ0NGRiLnNldENvbnRlbnQoaHRtbF85NTEwZDE1NGI1MzM0Mjc5YWJjZmVmZDM1OGJkNzJlNSk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9kZmFkNGEzMzZhZTc0MjMxOTUyOWVmYzFjMmEyOTZiMS5iaW5kUG9wdXAocG9wdXBfYzlhY2RkNGJmZTJhNDgzMWFlN2VjZTZiNGEyNDQ0ZGIpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMTZjMmY1NDYzYWVhNDA2OThhM2NjNzU3YWMxYjgwNWUgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy4zOTE4NTI0LDc4LjQ2NjAwNTJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMTRhYWMyOWI3YzcyNGE5YzgzOWI4NzQwYzFhZGJjNDggPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfNGVmMzE4OGExNTAzNDM1NGJiYzYyMTg1YWQ1ZjkyZWIgPSAkKCc8ZGl2IGlkPSJodG1sXzRlZjMxODhhMTUwMzQzNTRiYmM2MjE4NWFkNWY5MmViIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5OYW1wYWxseSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMTRhYWMyOWI3YzcyNGE5YzgzOWI4NzQwYzFhZGJjNDguc2V0Q29udGVudChodG1sXzRlZjMxODhhMTUwMzQzNTRiYmM2MjE4NWFkNWY5MmViKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzE2YzJmNTQ2M2FlYTQwNjk4YTNjYzc1N2FjMWI4MDVlLmJpbmRQb3B1cChwb3B1cF8xNGFhYzI5YjdjNzI0YTljODM5Yjg3NDBjMWFkYmM0OCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8yYmZlNWY2YmQ5NzA0ZDNjOWM5MzY2OTgwYTc5YmE5YiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQxMTc3MDYsNzguNDYyMjAwM10sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF8wZjhmZWYwYjAxYTU0YjA2OTU4NWU4MGZlMzFiNmRkNSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9kODhiYmJmZjRkYTg0YTRhYmU0Mzc5MjRjZGJlN2IxOSA9ICQoJzxkaXYgaWQ9Imh0bWxfZDg4YmJiZmY0ZGE4NGE0YWJlNDM3OTI0Y2RiZTdiMTkiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPktoYWlyYXRhYmFkIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8wZjhmZWYwYjAxYTU0YjA2OTU4NWU4MGZlMzFiNmRkNS5zZXRDb250ZW50KGh0bWxfZDg4YmJiZmY0ZGE4NGE0YWJlNDM3OTI0Y2RiZTdiMTkpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMmJmZTVmNmJkOTcwNGQzYzljOTM2Njk4MGE3OWJhOWIuYmluZFBvcHVwKHBvcHVwXzBmOGZlZjBiMDFhNTRiMDY5NTg1ZTgwZmUzMWI2ZGQ1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzE1NTEwMDczMjY3ZDQ3OWZiNmY3ZTY4MmZkMTUxMmQyID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNTI4NjA5Miw3OC4yNjc0MjU0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM1YzM4ZmQiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjNWMzOGZkIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzIzOTc1ZTRkYTQ3NTQ1MmRhMGY0YjBhOTE3NTMzN2RmID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sX2JiMjBhZGM3OWQ4YzRkOTNiM2Q1NjViY2VlYzU4MjY3ID0gJCgnPGRpdiBpZD0iaHRtbF9iYjIwYWRjNzlkOGM0ZDkzYjNkNTY1YmNlZWM1ODI2NyIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+UGF0YW5jaGVydSAtIENsdXN0ZXIgMjwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMjM5NzVlNGRhNDc1NDUyZGEwZjRiMGE5MTc1MzM3ZGYuc2V0Q29udGVudChodG1sX2JiMjBhZGM3OWQ4YzRkOTNiM2Q1NjViY2VlYzU4MjY3KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzE1NTEwMDczMjY3ZDQ3OWZiNmY3ZTY4MmZkMTUxMmQyLmJpbmRQb3B1cChwb3B1cF8yMzk3NWU0ZGE0NzU0NTJkYTBmNGIwYTkxNzUzMzdkZik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8wN2I1ZWMwZjViMjI0ZTE5ODEyYjc5N2E0YWJmYzg5NyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjMxMTA5MTEsNzguNDQyNTg1NF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjMzg2ZGY5IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzM4NmRmOSIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9kMjJlY2Y4YWEzMTg0ODgxOGI0MmJkZTUxODM5YzQ4MyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9mYzg2Mzc5N2ZjZDk0YjIyOWQ3Zjc3ODI3Njc0MmY1MSA9ICQoJzxkaXYgaWQ9Imh0bWxfZmM4NjM3OTdmY2Q5NGIyMjlkN2Y3NzgyNzY3NDJmNTEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlJhamVuZHJhbmFnYXIgLSBDbHVzdGVyIDM8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2QyMmVjZjhhYTMxODQ4ODE4YjQyYmRlNTE4MzljNDgzLnNldENvbnRlbnQoaHRtbF9mYzg2Mzc5N2ZjZDk0YjIyOWQ3Zjc3ODI3Njc0MmY1MSk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl8wN2I1ZWMwZjViMjI0ZTE5ODEyYjc5N2E0YWJmYzg5Ny5iaW5kUG9wdXAocG9wdXBfZDIyZWNmOGFhMzE4NDg4MThiNDJiZGU1MTgzOWM0ODMpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMmE3MWU3ZTQyNjc3NDljODg2NzFmNmVjMWM0YzA0NWMgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy41MDIyMjkyLDc4LjUwODg1ODRdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzE0OWRmMSIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiMxNDlkZjEiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfMzFiMmFmMzI4YmMzNGRhNThlYTk5ZTMzZGM4YzdlZDUgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfNGUyM2UxYjQwMWY2NDZjNjkzNzkyNWM3MDZkOWJkNzkgPSAkKCc8ZGl2IGlkPSJodG1sXzRlMjNlMWI0MDFmNjQ2YzY5Mzc5MjVjNzA2ZDliZDc5IiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5BbHdhbCAtIENsdXN0ZXIgNDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMzFiMmFmMzI4YmMzNGRhNThlYTk5ZTMzZGM4YzdlZDUuc2V0Q29udGVudChodG1sXzRlMjNlMWI0MDFmNjQ2YzY5Mzc5MjVjNzA2ZDliZDc5KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzJhNzFlN2U0MjY3NzQ5Yzg4NjcxZjZlYzFjNGMwNDVjLmJpbmRQb3B1cChwb3B1cF8zMWIyYWYzMjhiYzM0ZGE1OGVhOTllMzNkYzhjN2VkNSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl85ODg1MzU5MzhkYTE0MmU0OThiOTkyNGI0MTk0MTgyZSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjMyODExNDcsNzguNjA0NTM5OV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjMTJjOGU2IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzEyYzhlNiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9kYjZlMzFkODA1MWE0MzYzYjNmZTc2ZjNhN2ZjYjk3NyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF81YTU5OWQ4MTA3MGI0NmY5ODJmOWIwZGIxNzJjNjM0OSA9ICQoJzxkaXYgaWQ9Imh0bWxfNWE1OTlkODEwNzBiNDZmOTgyZjliMGRiMTcyYzYzNDkiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkhheWF0aG5hZ2FyIC0gQ2x1c3RlciA1PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9kYjZlMzFkODA1MWE0MzYzYjNmZTc2ZjNhN2ZjYjk3Ny5zZXRDb250ZW50KGh0bWxfNWE1OTlkODEwNzBiNDZmOTgyZjliMGRiMTcyYzYzNDkpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfOTg4NTM1OTM4ZGExNDJlNDk4Yjk5MjRiNDE5NDE4MmUuYmluZFBvcHVwKHBvcHVwX2RiNmUzMWQ4MDUxYTQzNjNiM2ZlNzZmM2E3ZmNiOTc3KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2RiNmFiOTU3OGZhOTRjNDJhODYwZDlhZWI5MjM3ZjBhID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDc2NzQ2NCw3OC40MjIxMDgyXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiMzN2U2ZDgiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMzdlNmQ4IiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzNmNjAyNTQ5OTZmZjQ2Y2ZiYmQzZmMwYTEzMzg1NWFmID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzY2NTU4YzQ1ODdhYjQ4Mzc5MzNkZTcyY2NiYzIwOTFiID0gJCgnPGRpdiBpZD0iaHRtbF82NjU1OGM0NTg3YWI0ODM3OTMzZGU3MmNjYmMyMDkxYiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+QmFsYW5hZ2FyIC0gQ2x1c3RlciA2PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8zZjYwMjU0OTk2ZmY0NmNmYmJkM2ZjMGExMzM4NTVhZi5zZXRDb250ZW50KGh0bWxfNjY1NThjNDU4N2FiNDgzNzkzM2RlNzJjY2JjMjA5MWIpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZGI2YWI5NTc4ZmE5NGM0MmE4NjBkOWFlYjkyMzdmMGEuYmluZFBvcHVwKHBvcHVwXzNmNjAyNTQ5OTZmZjQ2Y2ZiYmQzZmMwYTEzMzg1NWFmKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzRiNmVjNWYzZjUwMDQ4NzU5NGQ0YzE4ZWYyZTMzN2UyID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNTQ0NzAyOSw3OC40OTE4NDJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzVhZjhjOCIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM1YWY4YzgiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfNTdkZjBmMTg4YWE1NDU1MDkyOGVmZGIzOTAwOTJkMjIpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfNjQzNmRlN2Q3NDA3NDJhOGEwZTNhOWY4ZmU1ODBlZjAgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfMjE3NDU3MDQyODMwNDRmMDkyNGRhYzQ5ZDFiODBmNGEgPSAkKCc8ZGl2IGlkPSJodG1sXzIxNzQ1NzA0MjgzMDQ0ZjA5MjRkYWM0OWQxYjgwZjRhIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5Lb21wYWxseSAtIENsdXN0ZXIgNzwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfNjQzNmRlN2Q3NDA3NDJhOGEwZTNhOWY4ZmU1ODBlZjAuc2V0Q29udGVudChodG1sXzIxNzQ1NzA0MjgzMDQ0ZjA5MjRkYWM0OWQxYjgwZjRhKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzRiNmVjNWYzZjUwMDQ4NzU5NGQ0YzE4ZWYyZTMzN2UyLmJpbmRQb3B1cChwb3B1cF82NDM2ZGU3ZDc0MDc0MmE4YTBlM2E5ZjhmZTU4MGVmMCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8xOGMxYTQ4YmU4ZTM0ODNmOGM1NzM2OGI1ZDBjZWY2ZiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ1Njk2NTQsNzguNDQzNDc4MDYzNjU5NF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODBmZmI0IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwZmZiNCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9hZDUyMTM1MTNjNzI0ZTE0YWUwYjQwYThjNTg2NmM2MyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9iODFiNTczNjE1ZGQ0NmMxYWFiMjUzOTA1NDhmM2EyMiA9ICQoJzxkaXYgaWQ9Imh0bWxfYjgxYjU3MzYxNWRkNDZjMWFhYjI1MzkwNTQ4ZjNhMjIiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlNhbmF0aG5hZ2FyIC0gQ2x1c3RlciA4PC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9hZDUyMTM1MTNjNzI0ZTE0YWUwYjQwYThjNTg2NmM2My5zZXRDb250ZW50KGh0bWxfYjgxYjU3MzYxNWRkNDZjMWFhYjI1MzkwNTQ4ZjNhMjIpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMThjMWE0OGJlOGUzNDgzZjhjNTczNjhiNWQwY2VmNmYuYmluZFBvcHVwKHBvcHVwX2FkNTIxMzUxM2M3MjRlMTRhZTBiNDBhOGM1ODY2YzYzKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzJlMDhlYmMzMjJiMjRjMjE5MTg4ZDlmMGJjNzYyZTk4ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDQ4MzQzOCw3OC41Mjg5NzI3XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiNhNGY4OWYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjYTRmODlmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzRjNWI4ZGI5Yjg3ZjRlN2FiOGY5MjEzMWY3MjM0Zjg3ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzVlMmFiOWFmMjQ4MTQ4MzhhMzI4NTYwYTQ0MmExNTY3ID0gJCgnPGRpdiBpZD0iaHRtbF81ZTJhYjlhZjI0ODE0ODM4YTMyODU2MGE0NDJhMTU2NyIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+TWFsa2FqZ2lyaSAtIENsdXN0ZXIgOTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfNGM1YjhkYjliODdmNGU3YWI4ZjkyMTMxZjcyMzRmODcuc2V0Q29udGVudChodG1sXzVlMmFiOWFmMjQ4MTQ4MzhhMzI4NTYwYTQ0MmExNTY3KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzJlMDhlYmMzMjJiMjRjMjE5MTg4ZDlmMGJjNzYyZTk4LmJpbmRQb3B1cChwb3B1cF80YzViOGRiOWI4N2Y0ZTdhYjhmOTIxMzFmNzIzNGY4Nyk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9iNWU0YTRmNWU2MTU0ZjliOGUwOWRlYTBlYmI1Mjg1NiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQwMjUwOTEsNzguNTYxMjU2Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjYzhlNjg4IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2M4ZTY4OCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9iMGFkZDE1NTJkMzI0YjlkOWQ0Y2JlYjhjZTJhMjVjZiA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9iYzI0MmFkNjY1ZmY0YTRjYmMwYzBiNTk3MWE5MTY2ZCA9ICQoJzxkaXYgaWQ9Imh0bWxfYmMyNDJhZDY2NWZmNGE0Y2JjMGMwYjU5NzFhOTE2NmQiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlVwcGFsIC0gQ2x1c3RlciAxMDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYjBhZGQxNTUyZDMyNGI5ZDlkNGNiZWI4Y2UyYTI1Y2Yuc2V0Q29udGVudChodG1sX2JjMjQyYWQ2NjVmZjRhNGNiYzBjMGI1OTcxYTkxNjZkKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2I1ZTRhNGY1ZTYxNTRmOWI4ZTA5ZGVhMGViYjUyODU2LmJpbmRQb3B1cChwb3B1cF9iMGFkZDE1NTJkMzI0YjlkOWQ0Y2JlYjhjZTJhMjVjZik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9jNjU4ZmU3YWZhYWU0MzJhYjVlNzk3ZGNjMzY1MTY5NyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM1MDE2MTcsNzguNTUxMDkzOF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjZWNjODZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2VjYzg2ZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF8wMmI4MDQ4NGNiZjE0OWJkYjU5ZmY4NTYxODdlYThhNSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF85YzY3MDc3YjJhYTg0OWNhYWE3OGJlOGZiOGZjMWNhMyA9ICQoJzxkaXYgaWQ9Imh0bWxfOWM2NzA3N2IyYWE4NDljYWFhNzhiZThmYjhmYzFjYTMiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkxCIE5hZ2FyIC0gQ2x1c3RlciAxMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMDJiODA0ODRjYmYxNDliZGI1OWZmODU2MTg3ZWE4YTUuc2V0Q29udGVudChodG1sXzljNjcwNzdiMmFhODQ5Y2FhYTc4YmU4ZmI4ZmMxY2EzKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2M2NThmZTdhZmFhZTQzMmFiNWU3OTdkY2MzNjUxNjk3LmJpbmRQb3B1cChwb3B1cF8wMmI4MDQ4NGNiZjE0OWJkYjU5ZmY4NTYxODdlYThhNSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9iM2NjM2Q0ZDliOTY0OWRjYjliYzVhMjRhYjliMDEzNyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQxOTE0MjMsNzguNDk4NTczMl0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjZmY5ZDUzIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2ZmOWQ1MyIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9mOTZkMGNlMmUxODk0NDhmYTZkYjQ0OWE3NmNlOTE0ZCA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9jNjBmZDdlZTQwM2Q0MmE0YWMzODJmNTU1NmMxZDdhYSA9ICQoJzxkaXYgaWQ9Imh0bWxfYzYwZmQ3ZWU0MDNkNDJhNGFjMzgyZjU1NTZjMWQ3YWEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPk11c2hlZXJhYmFkIC0gQ2x1c3RlciAxMjwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZjk2ZDBjZTJlMTg5NDQ4ZmE2ZGI0NDlhNzZjZTkxNGQuc2V0Q29udGVudChodG1sX2M2MGZkN2VlNDAzZDQyYTRhYzM4MmY1NTU2YzFkN2FhKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2IzY2MzZDRkOWI5NjQ5ZGNiOWJjNWEyNGFiOWIwMTM3LmJpbmRQb3B1cChwb3B1cF9mOTZkMGNlMmUxODk0NDhmYTZkYjQ0OWE3NmNlOTE0ZCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl81NTRmOGI2ODI0MzA0ZDUzOGIyNDdlZmMyMzQzODJmNCA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ4NDYzNTYsNzguNTYxMDA5NV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjZmY2ZDM4IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2ZmNmQzOCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9mMzUxNThhNWNiMjY0ZmFiYWI0MDZjZDllMWQ1OGUxNyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF82YzdjNjhkYjI3ZDA0Y2VjOGYyMWE2OWZhNDc3YTcyYSA9ICQoJzxkaXYgaWQ9Imh0bWxfNmM3YzY4ZGIyN2QwNGNlYzhmMjFhNjlmYTQ3N2E3MmEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkthcHJhIC0gQ2x1c3RlciAxMzwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZjM1MTU4YTVjYjI2NGZhYmFiNDA2Y2Q5ZTFkNThlMTcuc2V0Q29udGVudChodG1sXzZjN2M2OGRiMjdkMDRjZWM4ZjIxYTY5ZmE0NzdhNzJhKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzU1NGY4YjY4MjQzMDRkNTM4YjI0N2VmYzIzNDM4MmY0LmJpbmRQb3B1cChwb3B1cF9mMzUxNThhNWNiMjY0ZmFiYWI0MDZjZDllMWQ1OGUxNyk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl80ZjhjMmM3OTEzZDc0NWVmYjE4NDJiMzlmNGY3ZDcwNSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ5MzA4NDEsNzguNDA1NDQwOF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjZmY2ZDM4IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2ZmNmQzOCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF81N2RmMGYxODhhYTU0NTUwOTI4ZWZkYjM5MDA5MmQyMik7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9mMmRjYjY0YzhjNzg0Nzc3OTBjNWUxYzlhZWMxNThkNCA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9iNWRlYjY2MWU2NDQ0NDQ1YWE5N2I5MzQzZjA0MTA2NyA9ICQoJzxkaXYgaWQ9Imh0bWxfYjVkZWI2NjFlNjQ0NDQ0NWFhOTdiOTM0M2YwNDEwNjciIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkt1a2F0cGFsbHkgLSBDbHVzdGVyIDEzPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9mMmRjYjY0YzhjNzg0Nzc3OTBjNWUxYzlhZWMxNThkNC5zZXRDb250ZW50KGh0bWxfYjVkZWI2NjFlNjQ0NDQ0NWFhOTdiOTM0M2YwNDEwNjcpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfNGY4YzJjNzkxM2Q3NDVlZmIxODQyYjM5ZjRmN2Q3MDUuYmluZFBvcHVwKHBvcHVwX2YyZGNiNjRjOGM3ODQ3Nzc5MGM1ZTFjOWFlYzE1OGQ0KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2Q3ZTVmMDU1NDkzMzQ3MmE4MDBiNGRjZDM2YjQ5NDA1ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzY4NDMwNyw3OC41MjM0MjgzXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiNmZjM4MWMiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjZmYzODFjIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzU3ZGYwZjE4OGFhNTQ1NTA5MjhlZmRiMzkwMDkyZDIyKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2NiZTMzZjEyOGU2YjQ0MTc4MjEyM2QzZTQyMDk4ZDE0ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzI0MDYyNjk4OTNhZTQyNTJiYTRkNjE1N2I0MjFhMmUwID0gJCgnPGRpdiBpZD0iaHRtbF8yNDA2MjY5ODkzYWU0MjUyYmE0ZDYxNTdiNDIxYTJlMCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+RGlsc3VraG5hZ2FyIC0gQ2x1c3RlciAxNDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfY2JlMzNmMTI4ZTZiNDQxNzgyMTIzZDNlNDIwOThkMTQuc2V0Q29udGVudChodG1sXzI0MDYyNjk4OTNhZTQyNTJiYTRkNjE1N2I0MjFhMmUwKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2Q3ZTVmMDU1NDkzMzQ3MmE4MDBiNGRjZDM2YjQ5NDA1LmJpbmRQb3B1cChwb3B1cF9jYmUzM2YxMjhlNmI0NDE3ODIxMjNkM2U0MjA5OGQxNCk7CgogICAgICAgICAgICAKICAgICAgICAKPC9zY3JpcHQ+ onload=\"this.contentDocument.open();this.contentDocument.write(atob(this.getAttribute('data-html')));this.contentDocument.close();\" allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe></div></div>"
],
"text/plain": [
"<folium.folium.Map at 0x7f2e9fe515f8>"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"venue_map_clusters = folium.Map(location=[hyd_location.latitude, hyd_location.longitude], zoom_start=11)\n",
"\n",
"# set color scheme for the clusters\n",
"x = np.arange(n_clusters1)\n",
"ys = [i+x+(i*x)**2 for i in range(n_clusters1)]\n",
"colors_array = cm.rainbow(np.linspace(0, 1, len(ys)))\n",
"rainbow = [colors.rgb2hex(i) for i in colors_array]\n",
"\n",
"# add markers to the map\n",
"markers_colors = []\n",
"for lat, lon, poi, cluster in zip(hyd_venues_merged['Latitude'], hyd_venues_merged['Longitude'], hyd_venues_merged['Neighborhood'], hyd_venues_merged['Cluster_labels']):\n",
" label = folium.Popup(str(poi) + ' - Cluster ' + str(cluster), parse_html=True)\n",
" folium.CircleMarker(\n",
" [lat, lon],\n",
" radius=5,\n",
" popup=label,\n",
" color=rainbow[cluster-1],\n",
" fill=True,\n",
" fill_color=rainbow[cluster-1],\n",
" fill_opacity=0.7).add_to(venue_map_clusters)\n",
"venue_map_clusters"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.4 Cluster the Neighborhoods by Shopping Malls using K-means clustering"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Lets cluster the above Shopping malls dataframe using K-means clustering, first we will have to find the number of clusters to be formed such that it should be an optimal one, for that we are going to use elbow curve lineplot with x-axis as k and y-axis as error"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [],
"source": [
"def get_inertia(n_clusters):\n",
" km = KMeans(n_clusters=n_clusters, init='k-means++', max_iter=15, random_state=8)\n",
" km.fit(X2)\n",
" return km.inertia_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We are gonna use above function to get the error score for each k value"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {},
"outputs": [],
"source": [
"X2 = hyd_mall.drop([\"Neighborhoods\"], 1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We are going to pass X2 value as hyd_mall['Shopping Mall']"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (12). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (13). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (14). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (15). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (16). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (17). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (18). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (19). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (20). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (21). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (22). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (23). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n",
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/cluster/k_means_.py:971: ConvergenceWarning: Number of distinct clusters (11) found smaller than n_clusters (24). Possibly due to duplicate points in X.\n",
" return_n_iter=True)\n"
]
},
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Error')"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 720x576 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"scores = [get_inertia(x) for x in range(2, 25)]\n",
"plt.figure(figsize=[10, 8])\n",
"sns.lineplot(x=range(2, 25), y=scores)\n",
"plt.title(\"K vs Error\")\n",
"plt.xticks(range(2, 25))\n",
"plt.xlabel(\"K\")\n",
"plt.ylabel(\"Error\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" From the above elbow graph we can use k value for k-means as 5 as the optimal k"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([1, 4, 1, 0, 2, 1, 3, 1, 1, 2], dtype=int32)"
]
},
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_clusters2 = 5\n",
"hyd_mall_clustering = hyd_mall.drop([\"Neighborhoods\"], 1)\n",
"kmeans2 = KMeans(n_clusters=n_clusters2, init='k-means++', max_iter=15, random_state=8).fit(X2)\n",
"kmeans2.labels_[0:10]"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {},
"outputs": [],
"source": [
"hyd_mall_merged = hyd_mall.copy()\n",
"hyd_mall_merged[\"Cluster_labels\"] = kmeans2.labels_"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.047619</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.010000</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.142857</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.076923</td>\n",
" <td>2</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels\n",
"0 Alwal 0.000000 1\n",
"1 Amberpet 0.047619 4\n",
"2 Ameerpet 0.010000 1\n",
"3 Balanagar 0.142857 0\n",
"4 Dilsukhnagar 0.076923 2"
]
},
"execution_count": 60,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.rename(columns={\"Neighborhoods\": \"Neighborhood\"}, inplace=True)\n",
"hyd_mall_merged.head()"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(25, 5)\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.047619</td>\n",
" <td>4</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.010000</td>\n",
" <td>1</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.142857</td>\n",
" <td>0</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.076923</td>\n",
" <td>2</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"0 Alwal 0.000000 1 17.502229 78.508858\n",
"1 Amberpet 0.047619 4 17.390263 78.516481\n",
"2 Ameerpet 0.010000 1 17.437501 78.448251\n",
"3 Balanagar 0.142857 0 17.476746 78.422108\n",
"4 Dilsukhnagar 0.076923 2 17.368431 78.523428"
]
},
"execution_count": 61,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged = hyd_mall_merged.join(hyd_df.set_index(\"Neighborhood\"), on=\"Neighborhood\")\n",
"print(hyd_mall_merged.shape)\n",
"hyd_mall_merged.head() # check the last columns!"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.142857</td>\n",
" <td>0</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Secunderabad</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.433725</td>\n",
" <td>78.500683</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Rajendranagar</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.311091</td>\n",
" <td>78.442585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Patancheru</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.528609</td>\n",
" <td>78.267425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Musheerabad</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.419142</td>\n",
" <td>78.498573</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Malkajgiri</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>LB Nagar</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.350162</td>\n",
" <td>78.551094</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Serilingampally</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.465657</td>\n",
" <td>78.340672</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Uppal</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.402509</td>\n",
" <td>78.561256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.430836</td>\n",
" <td>78.410288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Hayathnagar</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.328115</td>\n",
" <td>78.604540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Gachibowli</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.443622</td>\n",
" <td>78.351964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.010000</td>\n",
" <td>1</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Kompally</td>\n",
" <td>0.000000</td>\n",
" <td>1</td>\n",
" <td>17.544703</td>\n",
" <td>78.491842</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Kapra</td>\n",
" <td>0.071429</td>\n",
" <td>2</td>\n",
" <td>17.484636</td>\n",
" <td>78.561009</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.076923</td>\n",
" <td>2</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Kukatpally</td>\n",
" <td>0.080000</td>\n",
" <td>2</td>\n",
" <td>17.493084</td>\n",
" <td>78.405441</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Khairatabad</td>\n",
" <td>0.030000</td>\n",
" <td>3</td>\n",
" <td>17.411771</td>\n",
" <td>78.462200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>HITEC City</td>\n",
" <td>0.020000</td>\n",
" <td>3</td>\n",
" <td>17.449005</td>\n",
" <td>78.383138</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Nampally</td>\n",
" <td>0.013699</td>\n",
" <td>3</td>\n",
" <td>17.391852</td>\n",
" <td>78.466005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Saroornagar</td>\n",
" <td>0.055556</td>\n",
" <td>4</td>\n",
" <td>17.361165</td>\n",
" <td>78.538756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.047619</td>\n",
" <td>4</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"3 Balanagar 0.142857 0 17.476746 78.422108\n",
"0 Alwal 0.000000 1 17.502229 78.508858\n",
"22 Secunderabad 0.000000 1 17.433725 78.500683\n",
"20 Sanathnagar 0.000000 1 17.456965 78.443478\n",
"19 Rajendranagar 0.000000 1 17.311091 78.442585\n",
"18 Patancheru 0.000000 1 17.528609 78.267425\n",
"16 Musheerabad 0.000000 1 17.419142 78.498573\n",
"15 Mehdipatnam 0.000000 1 17.394263 78.434251\n",
"14 Malkajgiri 0.000000 1 17.448344 78.528973\n",
"13 LB Nagar 0.000000 1 17.350162 78.551094\n",
"23 Serilingampally 0.000000 1 17.465657 78.340672\n",
"24 Uppal 0.000000 1 17.402509 78.561256\n",
"8 Jubilee Hills 0.000000 1 17.430836 78.410288\n",
"7 Hayathnagar 0.000000 1 17.328115 78.604540\n",
"5 Gachibowli 0.000000 1 17.443622 78.351964\n",
"2 Ameerpet 0.010000 1 17.437501 78.448251\n",
"11 Kompally 0.000000 1 17.544703 78.491842\n",
"9 Kapra 0.071429 2 17.484636 78.561009\n",
"4 Dilsukhnagar 0.076923 2 17.368431 78.523428\n",
"12 Kukatpally 0.080000 2 17.493084 78.405441\n",
"10 Khairatabad 0.030000 3 17.411771 78.462200\n",
"6 HITEC City 0.020000 3 17.449005 78.383138\n",
"17 Nampally 0.013699 3 17.391852 78.466005\n",
"21 Saroornagar 0.055556 4 17.361165 78.538756\n",
"1 Amberpet 0.047619 4 17.390263 78.516481"
]
},
"execution_count": 62,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.sort_values([\"Cluster_labels\"], inplace=True)\n",
"hyd_mall_merged"
]
},
{
"cell_type": "code",
"execution_count": 63,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div style=\"width:100%;\"><div style=\"position:relative;width:100%;height:0;padding-bottom:60%;\"><span style=\"color:#565656\">Make this Notebook Trusted to load map: File -> Trust Notebook</span><iframe src=\"about:blank\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" data-html=PCFET0NUWVBFIGh0bWw+CjxoZWFkPiAgICAKICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiAvPgogICAgPHNjcmlwdD5MX1BSRUZFUl9DQU5WQVMgPSBmYWxzZTsgTF9OT19UT1VDSCA9IGZhbHNlOyBMX0RJU0FCTEVfM0QgPSBmYWxzZTs8L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeS8xLjExLjEvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvTGVhZmxldC5hd2Vzb21lLW1hcmtlcnMvMi4wLjIvbGVhZmxldC5hd2Vzb21lLW1hcmtlcnMuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS4yLjAvZGlzdC9sZWFmbGV0LmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC8zLjIuMC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvY3NzL2Jvb3RzdHJhcC10aGVtZS5taW4uY3NzIi8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNi4zL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9MZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy8yLjAuMi9sZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9yYXdnaXQuY29tL3B5dGhvbi12aXN1YWxpemF0aW9uL2ZvbGl1bS9tYXN0ZXIvZm9saXVtL3RlbXBsYXRlcy9sZWFmbGV0LmF3ZXNvbWUucm90YXRlLmNzcyIvPgogICAgPHN0eWxlPmh0bWwsIGJvZHkge3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTttYXJnaW46IDA7cGFkZGluZzogMDt9PC9zdHlsZT4KICAgIDxzdHlsZT4jbWFwIHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDowO2xlZnQ6MDt9PC9zdHlsZT4KICAgIAogICAgICAgICAgICA8c3R5bGU+ICNtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQgewogICAgICAgICAgICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgIHdpZHRoIDogMTAwLjAlOwogICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAuMCU7CiAgICAgICAgICAgICAgICBsZWZ0OiAwLjAlOwogICAgICAgICAgICAgICAgdG9wOiAwLjAlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICA8L3N0eWxlPgogICAgICAgIAo8L2hlYWQ+Cjxib2R5PiAgICAKICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb2xpdW0tbWFwIiBpZD0ibWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkIiA+PC9kaXY+CiAgICAgICAgCjwvYm9keT4KPHNjcmlwdD4gICAgCiAgICAKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGJvdW5kcyA9IG51bGw7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgdmFyIG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCA9IEwubWFwKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2VudGVyOiBbMTcuMzg4Nzg1OTUsNzguNDYxMDY0NzM0NTMxNDZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgem9vbTogMTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhCb3VuZHM6IGJvdW5kcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyczogW10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JsZENvcHlKdW1wOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyczogTC5DUlMuRVBTRzM4NTcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciB0aWxlX2xheWVyXzcyZDM1ZTk5ODYwNTQ1MmRiNmYxOTg1NTg2OWQ2M2M0ID0gTC50aWxlTGF5ZXIoCiAgICAgICAgICAgICAgICAnaHR0cHM6Ly97c30udGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLAogICAgICAgICAgICAgICAgewogICJhdHRyaWJ1dGlvbiI6IG51bGwsCiAgImRldGVjdFJldGluYSI6IGZhbHNlLAogICJtYXhab29tIjogMTgsCiAgIm1pblpvb20iOiAxLAogICJub1dyYXAiOiBmYWxzZSwKICAic3ViZG9tYWlucyI6ICJhYmMiCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9iNjg2ZWY3MjcwMjQ0NDcyOGJjNDFkYTk2NjgzZDRhZCA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ3Njc0NjQsNzguNDIyMTA4Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjZmYwMDAwIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiI2ZmMDAwMCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9mMDJjMjYwODE0MzA0ZjgzOGYzYWE5MTdiYWU5YmZiMiA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9kNTM1OWRiNzgzNWU0MGVkOTgzYzhmZmU3MDJkOGRjMSA9ICQoJzxkaXYgaWQ9Imh0bWxfZDUzNTlkYjc4MzVlNDBlZDk4M2M4ZmZlNzAyZDhkYzEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkJhbGFuYWdhciAtIENsdXN0ZXIgMDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZjAyYzI2MDgxNDMwNGY4MzhmM2FhOTE3YmFlOWJmYjIuc2V0Q29udGVudChodG1sX2Q1MzU5ZGI3ODM1ZTQwZWQ5ODNjOGZmZTcwMmQ4ZGMxKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2I2ODZlZjcyNzAyNDQ0NzI4YmM0MWRhOTY2ODNkNGFkLmJpbmRQb3B1cChwb3B1cF9mMDJjMjYwODE0MzA0ZjgzOGYzYWE5MTdiYWU5YmZiMik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl9hZWQ5YTc2NWZlOWE0NDZhOTk5Y2IxYmM0YmE2YjJmMSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjUwMjIyOTIsNzguNTA4ODU4NF0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF85Njc2MGJlMWVjZmE0ZTg4YjAzZjRkOWI5Y2QxZmI1NSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF81ZWFlZjZkZGY3Nzg0MTEzOWFmMzc1MmIyYTlmYjE0NCA9ICQoJzxkaXYgaWQ9Imh0bWxfNWVhZWY2ZGRmNzc4NDExMzlhZjM3NTJiMmE5ZmIxNDQiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkFsd2FsIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF85Njc2MGJlMWVjZmE0ZTg4YjAzZjRkOWI5Y2QxZmI1NS5zZXRDb250ZW50KGh0bWxfNWVhZWY2ZGRmNzc4NDExMzlhZjM3NTJiMmE5ZmIxNDQpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfYWVkOWE3NjVmZTlhNDQ2YTk5OWNiMWJjNGJhNmIyZjEuYmluZFBvcHVwKHBvcHVwXzk2NzYwYmUxZWNmYTRlODhiMDNmNGQ5YjljZDFmYjU1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2I1MTU5NTY4MjIyZDQ3ZWFiZmIzMWVhMjg1NjUyYzAzID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDMzNzI0Niw3OC41MDA2ODI3XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzhhMDIwNjdjYjg5YzQyMjViYWE0Yzg3OTk0NjE0MzBlID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzliMGMyNzNkMjA2OTQ4ODk5ZmQ5YmUwYjMyMzI0NmNkID0gJCgnPGRpdiBpZD0iaHRtbF85YjBjMjczZDIwNjk0ODg5OWZkOWJlMGIzMjMyNDZjZCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+U2VjdW5kZXJhYmFkIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF84YTAyMDY3Y2I4OWM0MjI1YmFhNGM4Nzk5NDYxNDMwZS5zZXRDb250ZW50KGh0bWxfOWIwYzI3M2QyMDY5NDg4OTlmZDliZTBiMzIzMjQ2Y2QpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfYjUxNTk1NjgyMjJkNDdlYWJmYjMxZWEyODU2NTJjMDMuYmluZFBvcHVwKHBvcHVwXzhhMDIwNjdjYjg5YzQyMjViYWE0Yzg3OTk0NjE0MzBlKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzk1YjI4ZjFhMzJhYjRmZTU4NDM3ZjQwMTg4ZjkwYzczID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDU2OTY1NCw3OC40NDM0NzgwNjM2NTk0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2QyNGI5MjNhY2QzYjRjMzFhNDU3YzMwOTRlNDAyMjU4ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzE5N2EwOTk4NGRkYTQzZDg5ZjcyYzRhZDk2OTA3YTIyID0gJCgnPGRpdiBpZD0iaHRtbF8xOTdhMDk5ODRkZGE0M2Q4OWY3MmM0YWQ5NjkwN2EyMiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+U2FuYXRobmFnYXIgLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwX2QyNGI5MjNhY2QzYjRjMzFhNDU3YzMwOTRlNDAyMjU4LnNldENvbnRlbnQoaHRtbF8xOTdhMDk5ODRkZGE0M2Q4OWY3MmM0YWQ5NjkwN2EyMik7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl85NWIyOGYxYTMyYWI0ZmU1ODQzN2Y0MDE4OGY5MGM3My5iaW5kUG9wdXAocG9wdXBfZDI0YjkyM2FjZDNiNGMzMWE0NTdjMzA5NGU0MDIyNTgpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMGFiZGUzOTYyNmJkNGEwZWJkYWJlMzM1NGY0OTUyZWQgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy4zMTEwOTExLDc4LjQ0MjU4NTRdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfOGU0MThjMDk0ZjAxNDk3NmEyOTU2MTExM2ExNDBmOTAgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfZTk3YTc3ZWY0YzZiNGNjZGJiODdkMGRlYjExYWFlNTEgPSAkKCc8ZGl2IGlkPSJodG1sX2U5N2E3N2VmNGM2YjRjY2RiYjg3ZDBkZWIxMWFhZTUxIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5SYWplbmRyYW5hZ2FyIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF84ZTQxOGMwOTRmMDE0OTc2YTI5NTYxMTEzYTE0MGY5MC5zZXRDb250ZW50KGh0bWxfZTk3YTc3ZWY0YzZiNGNjZGJiODdkMGRlYjExYWFlNTEpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMGFiZGUzOTYyNmJkNGEwZWJkYWJlMzM1NGY0OTUyZWQuYmluZFBvcHVwKHBvcHVwXzhlNDE4YzA5NGYwMTQ5NzZhMjk1NjExMTNhMTQwZjkwKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2YwYjcwZDMyZjdjNDRkN2ZiMGNkZTdhZjg3ZGYwYWQyID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNTI4NjA5Miw3OC4yNjc0MjU0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2VkNzA4NjkxMzcyNzRhMGI5OGU1NTlkYzVhMmYwOTY0ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzc1NTNmZTM0YWFjOTQ5MGRiOGE2ODhmOWFmNTU3OGIyID0gJCgnPGRpdiBpZD0iaHRtbF83NTUzZmUzNGFhYzk0OTBkYjhhNjg4ZjlhZjU1NzhiMiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+UGF0YW5jaGVydSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZWQ3MDg2OTEzNzI3NGEwYjk4ZTU1OWRjNWEyZjA5NjQuc2V0Q29udGVudChodG1sXzc1NTNmZTM0YWFjOTQ5MGRiOGE2ODhmOWFmNTU3OGIyKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2YwYjcwZDMyZjdjNDRkN2ZiMGNkZTdhZjg3ZGYwYWQyLmJpbmRQb3B1cChwb3B1cF9lZDcwODY5MTM3Mjc0YTBiOThlNTU5ZGM1YTJmMDk2NCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl84MWI3YjI4ZTQ5NzE0MWJiYWFkM2QzYjlhYTNkMjBkMSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQxOTE0MjMsNzguNDk4NTczMl0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF80OWNlOTM3NzdlZDk0YzI1OTM1YzUwMjQxNmFkYTdmMSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF80OTkzYzllNzkzNzA0ZTQ3OGY3NWU2NDk1OTZjODRjYiA9ICQoJzxkaXYgaWQ9Imh0bWxfNDk5M2M5ZTc5MzcwNGU0NzhmNzVlNjQ5NTk2Yzg0Y2IiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPk11c2hlZXJhYmFkIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF80OWNlOTM3NzdlZDk0YzI1OTM1YzUwMjQxNmFkYTdmMS5zZXRDb250ZW50KGh0bWxfNDk5M2M5ZTc5MzcwNGU0NzhmNzVlNjQ5NTk2Yzg0Y2IpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfODFiN2IyOGU0OTcxNDFiYmFhZDNkM2I5YWEzZDIwZDEuYmluZFBvcHVwKHBvcHVwXzQ5Y2U5Mzc3N2VkOTRjMjU5MzVjNTAyNDE2YWRhN2YxKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzM1YjE1ZDZlMGQ5NTQ1YTlhZjRkNWM0ZjA1NTg3YmM5ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzk0MjYyNyw3OC40MzQyNTE0XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzUxZDQ2ZjY1OGQyNzRlN2NhNTMzMjAyOTk2Yzk1YzkxID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzY2YTMyMGU2YWMzMzQyNzJhYWY0YzE1YTRkMDc4NTMxID0gJCgnPGRpdiBpZD0iaHRtbF82NmEzMjBlNmFjMzM0MjcyYWFmNGMxNWE0ZDA3ODUzMSIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+TWVoZGlwYXRuYW0gLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzUxZDQ2ZjY1OGQyNzRlN2NhNTMzMjAyOTk2Yzk1YzkxLnNldENvbnRlbnQoaHRtbF82NmEzMjBlNmFjMzM0MjcyYWFmNGMxNWE0ZDA3ODUzMSk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl8zNWIxNWQ2ZTBkOTU0NWE5YWY0ZDVjNGYwNTU4N2JjOS5iaW5kUG9wdXAocG9wdXBfNTFkNDZmNjU4ZDI3NGU3Y2E1MzMyMDI5OTZjOTVjOTEpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfZGEzOTVjYWI4NDIxNGJkM2FiZTA0NTA5OGZkNDI3MTAgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40NDgzNDM4LDc4LjUyODk3MjddLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfZDZmZmQwNTNmZTY2NDA2MDlkYTMzYTU5ZDMyYzAwNTYgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfNmI4Y2U1M2E3ZDk2NDNjMDhlZGJjYzA5ZjJmZWU4Y2IgPSAkKCc8ZGl2IGlkPSJodG1sXzZiOGNlNTNhN2Q5NjQzYzA4ZWRiY2MwOWYyZmVlOGNiIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5NYWxrYWpnaXJpIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9kNmZmZDA1M2ZlNjY0MDYwOWRhMzNhNTlkMzJjMDA1Ni5zZXRDb250ZW50KGh0bWxfNmI4Y2U1M2E3ZDk2NDNjMDhlZGJjYzA5ZjJmZWU4Y2IpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfZGEzOTVjYWI4NDIxNGJkM2FiZTA0NTA5OGZkNDI3MTAuYmluZFBvcHVwKHBvcHVwX2Q2ZmZkMDUzZmU2NjQwNjA5ZGEzM2E1OWQzMmMwMDU2KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2M5MzE5YjM1MmMzYTQ0MzQ4ZTMxMjRjOWM1YTgxNWYwID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzUwMTYxNyw3OC41NTEwOTM4XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzQyMmM5NDYyZTczNDQyZmJhNjUxMTA4NGZlOTgxN2FkID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzdjNmVlZDRiNTlhYjRhMTU4NGEzNDUwOWFlMWE1YTM4ID0gJCgnPGRpdiBpZD0iaHRtbF83YzZlZWQ0YjU5YWI0YTE1ODRhMzQ1MDlhZTFhNWEzOCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+TEIgTmFnYXIgLSBDbHVzdGVyIDE8L2Rpdj4nKVswXTsKICAgICAgICAgICAgICAgIHBvcHVwXzQyMmM5NDYyZTczNDQyZmJhNjUxMTA4NGZlOTgxN2FkLnNldENvbnRlbnQoaHRtbF83YzZlZWQ0YjU5YWI0YTE1ODRhMzQ1MDlhZTFhNWEzOCk7CiAgICAgICAgICAgIAoKICAgICAgICAgICAgY2lyY2xlX21hcmtlcl9jOTMxOWIzNTJjM2E0NDM0OGUzMTI0YzljNWE4MTVmMC5iaW5kUG9wdXAocG9wdXBfNDIyYzk0NjJlNzM0NDJmYmE2NTExMDg0ZmU5ODE3YWQpOwoKICAgICAgICAgICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIGNpcmNsZV9tYXJrZXJfMjE3ZGEyMWYwMDUwNGNiMGI5MTJjOGYyNTlkZjIwOWUgPSBMLmNpcmNsZU1hcmtlcigKICAgICAgICAgICAgICAgIFsxNy40NjU2NTczNSw3OC4zNDA2NzIzOTU2NTExM10sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF8zZDJhZGFmZGY3ZjI0ZTViYWNlNDNiNmQ3OGRmZGY0NCA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9mY2ZhM2E3MTlkMWU0ODViYWVjNWI1M2YwODM4N2VhMSA9ICQoJzxkaXYgaWQ9Imh0bWxfZmNmYTNhNzE5ZDFlNDg1YmFlYzViNTNmMDgzODdlYTEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlNlcmlsaW5nYW1wYWxseSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfM2QyYWRhZmRmN2YyNGU1YmFjZTQzYjZkNzhkZmRmNDQuc2V0Q29udGVudChodG1sX2ZjZmEzYTcxOWQxZTQ4NWJhZWM1YjUzZjA4Mzg3ZWExKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzIxN2RhMjFmMDA1MDRjYjBiOTEyYzhmMjU5ZGYyMDllLmJpbmRQb3B1cChwb3B1cF8zZDJhZGFmZGY3ZjI0ZTViYWNlNDNiNmQ3OGRmZGY0NCk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8wZDFlMDkxYTQyMmU0NjY2YjE2MzRiYTE1ZDFhMDhkZSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQwMjUwOTEsNzguNTYxMjU2Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9iNjZkOGU5ZWZmNjE0ZmM1YmI5MGRlZmQ1NzVmZWYzMyA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9mNzU5ODEzZDY3ZjA0YWU2YTc0NDE5NmU0ZDliMzY5YyA9ICQoJzxkaXYgaWQ9Imh0bWxfZjc1OTgxM2Q2N2YwNGFlNmE3NDQxOTZlNGQ5YjM2OWMiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPlVwcGFsIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9iNjZkOGU5ZWZmNjE0ZmM1YmI5MGRlZmQ1NzVmZWYzMy5zZXRDb250ZW50KGh0bWxfZjc1OTgxM2Q2N2YwNGFlNmE3NDQxOTZlNGQ5YjM2OWMpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMGQxZTA5MWE0MjJlNDY2NmIxNjM0YmExNWQxYTA4ZGUuYmluZFBvcHVwKHBvcHVwX2I2NmQ4ZTllZmY2MTRmYzViYjkwZGVmZDU3NWZlZjMzKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzNlMjUzZjJkODUxMTRmY2M5MzlmOWEwZjVhNTY0YjY3ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDMwODM2Miw3OC40MTAyODgyXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzlmNmUwZjczY2RjZDRmODI5ZTQ2Nzg2ZjliYTIxN2YxID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzAyZDVlNGEzNDU4ZjRiZmNiOWQ4YzM2Mzc2YjIzMmRjID0gJCgnPGRpdiBpZD0iaHRtbF8wMmQ1ZTRhMzQ1OGY0YmZjYjlkOGMzNjM3NmIyMzJkYyIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+SnViaWxlZSBIaWxscyAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfOWY2ZTBmNzNjZGNkNGY4MjllNDY3ODZmOWJhMjE3ZjEuc2V0Q29udGVudChodG1sXzAyZDVlNGEzNDU4ZjRiZmNiOWQ4YzM2Mzc2YjIzMmRjKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzNlMjUzZjJkODUxMTRmY2M5MzlmOWEwZjVhNTY0YjY3LmJpbmRQb3B1cChwb3B1cF85ZjZlMGY3M2NkY2Q0ZjgyOWU0Njc4NmY5YmEyMTdmMSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl80ZDkyNzVlMzFlZWU0OGM3OWZlZGQ1ODA5M2NjZDQxNiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjMyODExNDcsNzguNjA0NTM5OV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF83MDg0MDE3YmRmOGQ0N2VmYTE2MmMxNDYyYzI3OTNjMiA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF83MmY3Mjk2ZmJlZGU0YjYzOTYzZTZjNGZmYjhhZWMxNyA9ICQoJzxkaXYgaWQ9Imh0bWxfNzJmNzI5NmZiZWRlNGI2Mzk2M2U2YzRmZmI4YWVjMTciIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkhheWF0aG5hZ2FyIC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF83MDg0MDE3YmRmOGQ0N2VmYTE2MmMxNDYyYzI3OTNjMi5zZXRDb250ZW50KGh0bWxfNzJmNzI5NmZiZWRlNGI2Mzk2M2U2YzRmZmI4YWVjMTcpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfNGQ5Mjc1ZTMxZWVlNDhjNzlmZWRkNTgwOTNjY2Q0MTYuYmluZFBvcHVwKHBvcHVwXzcwODQwMTdiZGY4ZDQ3ZWZhMTYyYzE0NjJjMjc5M2MyKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzlmMzlmMDM1OWRlOTRkYjhiOTdhMDNkMWE3MjkyMzEyID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDQzNjIyMiw3OC4zNTE5NjM4XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MDAwZmYiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODAwMGZmIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzM4YjUyZWIwY2IwNTQ3ZTk5MTc4Y2UxYmQzOWVmNGZmID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sX2VlODE4ZmJiYTdmYTRmYjA5ZjU4ZTE4ODhiZmU0ODE1ID0gJCgnPGRpdiBpZD0iaHRtbF9lZTgxOGZiYmE3ZmE0ZmIwOWY1OGUxODg4YmZlNDgxNSIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+R2FjaGlib3dsaSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfMzhiNTJlYjBjYjA1NDdlOTkxNzhjZTFiZDM5ZWY0ZmYuc2V0Q29udGVudChodG1sX2VlODE4ZmJiYTdmYTRmYjA5ZjU4ZTE4ODhiZmU0ODE1KTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzlmMzlmMDM1OWRlOTRkYjhiOTdhMDNkMWE3MjkyMzEyLmJpbmRQb3B1cChwb3B1cF8zOGI1MmViMGNiMDU0N2U5OTE3OGNlMWJkMzllZjRmZik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl84MzFhNmU4ZjJjODY0MDdhOWU5ZDNmNjBhMDFiMmE1YiA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQzNzUwMTIsNzguNDQ4MjUwNV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODAwMGZmIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwMDBmZiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF83MjEwMDViMWQ3ZDI0MGY1OWZkOTNjMTQ5NmJhZmRiOSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9kNmUzMGU2ZmE0ODA0OGIwYTU2ZDk4NmNkMWU3Yjg1ZSA9ICQoJzxkaXYgaWQ9Imh0bWxfZDZlMzBlNmZhNDgwNDhiMGE1NmQ5ODZjZDFlN2I4NWUiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkFtZWVycGV0IC0gQ2x1c3RlciAxPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF83MjEwMDViMWQ3ZDI0MGY1OWZkOTNjMTQ5NmJhZmRiOS5zZXRDb250ZW50KGh0bWxfZDZlMzBlNmZhNDgwNDhiMGE1NmQ5ODZjZDFlN2I4NWUpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfODMxYTZlOGYyYzg2NDA3YTllOWQzZjYwYTAxYjJhNWIuYmluZFBvcHVwKHBvcHVwXzcyMTAwNWIxZDdkMjQwZjU5ZmQ5M2MxNDk2YmFmZGI5KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzQ1ZTg0NmI5YmJjOTQ0NDE5YTVhZDY0MzAzYmM3MDZjID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNTQ0NzAyOSw3OC40OTE4NDJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiIzgwMDBmZiIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiM4MDAwZmYiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfZGJlNDcwYzgzY2FmNDI3NGFjM2MxOTU4MDU1ZDFkOTYgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfM2Y1ZDgwNjdhM2VlNDRhOGE0ZWZjNzdjYmM5YTllOGIgPSAkKCc8ZGl2IGlkPSJodG1sXzNmNWQ4MDY3YTNlZTQ0YThhNGVmYzc3Y2JjOWE5ZThiIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5Lb21wYWxseSAtIENsdXN0ZXIgMTwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZGJlNDcwYzgzY2FmNDI3NGFjM2MxOTU4MDU1ZDFkOTYuc2V0Q29udGVudChodG1sXzNmNWQ4MDY3YTNlZTQ0YThhNGVmYzc3Y2JjOWE5ZThiKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzQ1ZTg0NmI5YmJjOTQ0NDE5YTVhZDY0MzAzYmM3MDZjLmJpbmRQb3B1cChwb3B1cF9kYmU0NzBjODNjYWY0Mjc0YWMzYzE5NTgwNTVkMWQ5Nik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8xYWEyM2UwNTMxZjI0NjNiYTQyYjRkNDg5ZmVmMDFiMyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQ4NDYzNTYsNzguNTYxMDA5NV0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjMDBiNWViIiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzAwYjVlYiIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF80NjZjMDUxNDVmZmE0ODNhYTc1YzA5YWE5NDA0MWJhNSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF85MTJiZWU0NmNlZDQ0NTEwOWIxNTJjN2U3YjM0OTgxMSA9ICQoJzxkaXYgaWQ9Imh0bWxfOTEyYmVlNDZjZWQ0NDUxMDliMTUyYzdlN2IzNDk4MTEiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPkthcHJhIC0gQ2x1c3RlciAyPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF80NjZjMDUxNDVmZmE0ODNhYTc1YzA5YWE5NDA0MWJhNS5zZXRDb250ZW50KGh0bWxfOTEyYmVlNDZjZWQ0NDUxMDliMTUyYzdlN2IzNDk4MTEpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMWFhMjNlMDUzMWYyNDYzYmE0MmI0ZDQ4OWZlZjAxYjMuYmluZFBvcHVwKHBvcHVwXzQ2NmMwNTE0NWZmYTQ4M2FhNzVjMDlhYTk0MDQxYmE1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzRlM2U4YTQzMGE4MzRhOGNhZjY1N2YwOTU0MGVkZTBlID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzY4NDMwNyw3OC41MjM0MjgzXSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiMwMGI1ZWIiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMDBiNWViIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzhhZGQ0ZjhjMDlkNjQyNmJiZDlmMzBmODUxY2Y0MTA1ID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzRiYzZiOTc2NDBiMzRlYTlhM2U0YWFkMTk5ZDE2Nzc2ID0gJCgnPGRpdiBpZD0iaHRtbF80YmM2Yjk3NjQwYjM0ZWE5YTNlNGFhZDE5OWQxNjc3NiIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+RGlsc3VraG5hZ2FyIC0gQ2x1c3RlciAyPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF84YWRkNGY4YzA5ZDY0MjZiYmQ5ZjMwZjg1MWNmNDEwNS5zZXRDb250ZW50KGh0bWxfNGJjNmI5NzY0MGIzNGVhOWEzZTRhYWQxOTlkMTY3NzYpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfNGUzZThhNDMwYTgzNGE4Y2FmNjU3ZjA5NTQwZWRlMGUuYmluZFBvcHVwKHBvcHVwXzhhZGQ0ZjhjMDlkNjQyNmJiZDlmMzBmODUxY2Y0MTA1KTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzA1ZjE3NWJiYmI4NTRiZjg4ZjJlNjUzZmM3MGE1MmU5ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDkzMDg0MSw3OC40MDU0NDA4XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiMwMGI1ZWIiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjMDBiNWViIiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwX2QzMTQ0ODhlZjAzOTQ3NDRhYTMzNDk1YzA2MTdjMDhhID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzc1MDgzYTY3NzEzODQ2NWU4ZmQzNjg5ZGVmYTViNjBkID0gJCgnPGRpdiBpZD0iaHRtbF83NTA4M2E2NzcxMzg0NjVlOGZkMzY4OWRlZmE1YjYwZCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+S3VrYXRwYWxseSAtIENsdXN0ZXIgMjwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZDMxNDQ4OGVmMDM5NDc0NGFhMzM0OTVjMDYxN2MwOGEuc2V0Q29udGVudChodG1sXzc1MDgzYTY3NzEzODQ2NWU4ZmQzNjg5ZGVmYTViNjBkKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzA1ZjE3NWJiYmI4NTRiZjg4ZjJlNjUzZmM3MGE1MmU5LmJpbmRQb3B1cChwb3B1cF9kMzE0NDg4ZWYwMzk0NzQ0YWEzMzQ5NWMwNjE3YzA4YSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl80MmNiNDcwMjkyZWQ0MGEyYjc0N2QzZmU1ZTRiNGQxZCA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjQxMTc3MDYsNzguNDYyMjAwM10sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODBmZmI0IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwZmZiNCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF9hMjYyYTJmYTgyYTk0YTRhODA4MDc5OWViN2U2YWQ4ZSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF9kMGJlNTdiOTdlMGE0NGY4YTIwYTZiZWE5MDQwYTBmNCA9ICQoJzxkaXYgaWQ9Imh0bWxfZDBiZTU3Yjk3ZTBhNDRmOGEyMGE2YmVhOTA0MGEwZjQiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPktoYWlyYXRhYmFkIC0gQ2x1c3RlciAzPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF9hMjYyYTJmYTgyYTk0YTRhODA4MDc5OWViN2U2YWQ4ZS5zZXRDb250ZW50KGh0bWxfZDBiZTU3Yjk3ZTBhNDRmOGEyMGE2YmVhOTA0MGEwZjQpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfNDJjYjQ3MDI5MmVkNDBhMmI3NDdkM2ZlNWU0YjRkMWQuYmluZFBvcHVwKHBvcHVwX2EyNjJhMmZhODJhOTRhNGE4MDgwNzk5ZWI3ZTZhZDhlKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyX2VjMjU5NmMxMzgwNTRjODM4MmU3NTNiZDk1MmJlYTUxID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuNDQ5MDA1NSw3OC4zODMxMzc2XSwKICAgICAgICAgICAgICAgIHsKICAiYnViYmxpbmdNb3VzZUV2ZW50cyI6IHRydWUsCiAgImNvbG9yIjogIiM4MGZmYjQiLAogICJkYXNoQXJyYXkiOiBudWxsLAogICJkYXNoT2Zmc2V0IjogbnVsbCwKICAiZmlsbCI6IHRydWUsCiAgImZpbGxDb2xvciI6ICIjODBmZmI0IiwKICAiZmlsbE9wYWNpdHkiOiAwLjcsCiAgImZpbGxSdWxlIjogImV2ZW5vZGQiLAogICJsaW5lQ2FwIjogInJvdW5kIiwKICAibGluZUpvaW4iOiAicm91bmQiLAogICJvcGFjaXR5IjogMS4wLAogICJyYWRpdXMiOiA1LAogICJzdHJva2UiOiB0cnVlLAogICJ3ZWlnaHQiOiAzCn0KICAgICAgICAgICAgICAgICkuYWRkVG8obWFwXzk2OWM3OWZiZDljZTQyZDY5OTM0ODIxMDllN2U0YTBkKTsKICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgdmFyIHBvcHVwXzk0NWFlY2VjZDZmZDQyMjlhN2IxYzRjZmNmMDU1YTFiID0gTC5wb3B1cCh7bWF4V2lkdGg6ICczMDAnfSk7CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgIHZhciBodG1sXzZiMDk3MWFlMWI4ZDQxZGNiMzEyY2Q2YzhmYWFlMDYwID0gJCgnPGRpdiBpZD0iaHRtbF82YjA5NzFhZTFiOGQ0MWRjYjMxMmNkNmM4ZmFhZTA2MCIgc3R5bGU9IndpZHRoOiAxMDAuMCU7IGhlaWdodDogMTAwLjAlOyI+SElURUMgQ2l0eSAtIENsdXN0ZXIgMzwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfOTQ1YWVjZWNkNmZkNDIyOWE3YjFjNGNmY2YwNTVhMWIuc2V0Q29udGVudChodG1sXzZiMDk3MWFlMWI4ZDQxZGNiMzEyY2Q2YzhmYWFlMDYwKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyX2VjMjU5NmMxMzgwNTRjODM4MmU3NTNiZDk1MmJlYTUxLmJpbmRQb3B1cChwb3B1cF85NDVhZWNlY2Q2ZmQ0MjI5YTdiMWM0Y2ZjZjA1NWExYik7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl8xNjk3MzE0NDAyZGE0NWRhOGFhNDZkNGM0NmE4ZjUwZSA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM5MTg1MjQsNzguNDY2MDA1Ml0sCiAgICAgICAgICAgICAgICB7CiAgImJ1YmJsaW5nTW91c2VFdmVudHMiOiB0cnVlLAogICJjb2xvciI6ICIjODBmZmI0IiwKICAiZGFzaEFycmF5IjogbnVsbCwKICAiZGFzaE9mZnNldCI6IG51bGwsCiAgImZpbGwiOiB0cnVlLAogICJmaWxsQ29sb3IiOiAiIzgwZmZiNCIsCiAgImZpbGxPcGFjaXR5IjogMC43LAogICJmaWxsUnVsZSI6ICJldmVub2RkIiwKICAibGluZUNhcCI6ICJyb3VuZCIsCiAgImxpbmVKb2luIjogInJvdW5kIiwKICAib3BhY2l0eSI6IDEuMCwKICAicmFkaXVzIjogNSwKICAic3Ryb2tlIjogdHJ1ZSwKICAid2VpZ2h0IjogMwp9CiAgICAgICAgICAgICAgICApLmFkZFRvKG1hcF85NjljNzlmYmQ5Y2U0MmQ2OTkzNDgyMTA5ZTdlNGEwZCk7CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBwb3B1cF8wNWYxMGU5ZmEyZDU0NmM1YmM1N2EzMDY3NGY1NjVjYSA9IEwucG9wdXAoe21heFdpZHRoOiAnMzAwJ30pOwoKICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB2YXIgaHRtbF82ZWUwMjM4MmU1YzA0YzI3YjVhYTgwYjYzODQ3MjE0NiA9ICQoJzxkaXYgaWQ9Imh0bWxfNmVlMDIzODJlNWMwNGMyN2I1YWE4MGI2Mzg0NzIxNDYiIHN0eWxlPSJ3aWR0aDogMTAwLjAlOyBoZWlnaHQ6IDEwMC4wJTsiPk5hbXBhbGx5IC0gQ2x1c3RlciAzPC9kaXY+JylbMF07CiAgICAgICAgICAgICAgICBwb3B1cF8wNWYxMGU5ZmEyZDU0NmM1YmM1N2EzMDY3NGY1NjVjYS5zZXRDb250ZW50KGh0bWxfNmVlMDIzODJlNWMwNGMyN2I1YWE4MGI2Mzg0NzIxNDYpOwogICAgICAgICAgICAKCiAgICAgICAgICAgIGNpcmNsZV9tYXJrZXJfMTY5NzMxNDQwMmRhNDVkYThhYTQ2ZDRjNDZhOGY1MGUuYmluZFBvcHVwKHBvcHVwXzA1ZjEwZTlmYTJkNTQ2YzViYzU3YTMwNjc0ZjU2NWNhKTsKCiAgICAgICAgICAgIAogICAgICAgIAogICAgCiAgICAgICAgICAgIHZhciBjaXJjbGVfbWFya2VyXzk2YjJhYjY0NDViODQ1NDFiZGRkYTc0Zjc1N2VkOWU5ID0gTC5jaXJjbGVNYXJrZXIoCiAgICAgICAgICAgICAgICBbMTcuMzYxMTY1NDUsNzguNTM4NzU2MTk1ODg5NjJdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiI2ZmYjM2MCIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiNmZmIzNjAiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfYWNkMTA2N2Y5ZDAwNDEwNGE0ZWFhZWYzOWExYmNjYmUgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfOThmNWM4OGNkOTU4NGI4ODkzZDA0MTY0ZThiMzkzZDMgPSAkKCc8ZGl2IGlkPSJodG1sXzk4ZjVjODhjZDk1ODRiODg5M2QwNDE2NGU4YjM5M2QzIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5TYXJvb3JuYWdhciAtIENsdXN0ZXIgNDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfYWNkMTA2N2Y5ZDAwNDEwNGE0ZWFhZWYzOWExYmNjYmUuc2V0Q29udGVudChodG1sXzk4ZjVjODhjZDk1ODRiODg5M2QwNDE2NGU4YjM5M2QzKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzk2YjJhYjY0NDViODQ1NDFiZGRkYTc0Zjc1N2VkOWU5LmJpbmRQb3B1cChwb3B1cF9hY2QxMDY3ZjlkMDA0MTA0YTRlYWFlZjM5YTFiY2NiZSk7CgogICAgICAgICAgICAKICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgY2lyY2xlX21hcmtlcl85YjI1OGRlYjgxNDY0ZmE0ODQyZTMxNzE0ZjEyZDI5NyA9IEwuY2lyY2xlTWFya2VyKAogICAgICAgICAgICAgICAgWzE3LjM5MDI2MzE1MDAwMDAwMyw3OC41MTY0ODExNzVdLAogICAgICAgICAgICAgICAgewogICJidWJibGluZ01vdXNlRXZlbnRzIjogdHJ1ZSwKICAiY29sb3IiOiAiI2ZmYjM2MCIsCiAgImRhc2hBcnJheSI6IG51bGwsCiAgImRhc2hPZmZzZXQiOiBudWxsLAogICJmaWxsIjogdHJ1ZSwKICAiZmlsbENvbG9yIjogIiNmZmIzNjAiLAogICJmaWxsT3BhY2l0eSI6IDAuNywKICAiZmlsbFJ1bGUiOiAiZXZlbm9kZCIsCiAgImxpbmVDYXAiOiAicm91bmQiLAogICJsaW5lSm9pbiI6ICJyb3VuZCIsCiAgIm9wYWNpdHkiOiAxLjAsCiAgInJhZGl1cyI6IDUsCiAgInN0cm9rZSI6IHRydWUsCiAgIndlaWdodCI6IDMKfQogICAgICAgICAgICAgICAgKS5hZGRUbyhtYXBfOTY5Yzc5ZmJkOWNlNDJkNjk5MzQ4MjEwOWU3ZTRhMGQpOwogICAgICAgICAgICAKICAgIAogICAgICAgICAgICB2YXIgcG9wdXBfZWZlZjk5MTRiZGQ5NDI2NThiZGVjOWRjZWUzMDcxOGEgPSBMLnBvcHVwKHttYXhXaWR0aDogJzMwMCd9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAgICAgdmFyIGh0bWxfZDNlMTg0NWNlMzU4NDU1ZTg2NmEwNDk4NThhNjQ3OTIgPSAkKCc8ZGl2IGlkPSJodG1sX2QzZTE4NDVjZTM1ODQ1NWU4NjZhMDQ5ODU4YTY0NzkyIiBzdHlsZT0id2lkdGg6IDEwMC4wJTsgaGVpZ2h0OiAxMDAuMCU7Ij5BbWJlcnBldCAtIENsdXN0ZXIgNDwvZGl2PicpWzBdOwogICAgICAgICAgICAgICAgcG9wdXBfZWZlZjk5MTRiZGQ5NDI2NThiZGVjOWRjZWUzMDcxOGEuc2V0Q29udGVudChodG1sX2QzZTE4NDVjZTM1ODQ1NWU4NjZhMDQ5ODU4YTY0NzkyKTsKICAgICAgICAgICAgCgogICAgICAgICAgICBjaXJjbGVfbWFya2VyXzliMjU4ZGViODE0NjRmYTQ4NDJlMzE3MTRmMTJkMjk3LmJpbmRQb3B1cChwb3B1cF9lZmVmOTkxNGJkZDk0MjY1OGJkZWM5ZGNlZTMwNzE4YSk7CgogICAgICAgICAgICAKICAgICAgICAKPC9zY3JpcHQ+ onload=\"this.contentDocument.open();this.contentDocument.write(atob(this.getAttribute('data-html')));this.contentDocument.close();\" allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe></div></div>"
],
"text/plain": [
"<folium.folium.Map at 0x7f2e9fc87320>"
]
},
"execution_count": 63,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"map_mall_clusters = folium.Map(location=[hyd_location.latitude, hyd_location.longitude], zoom_start=11)\n",
"\n",
"# set color scheme for the clusters\n",
"x = np.arange(n_clusters2)\n",
"ys = [i+x+(i*x)**2 for i in range(n_clusters2)]\n",
"colors_array = cm.rainbow(np.linspace(0, 1, len(ys)))\n",
"rainbow = [colors.rgb2hex(i) for i in colors_array]\n",
"\n",
"# add markers to the map\n",
"markers_colors = []\n",
"for lat, lon, poi, cluster in zip(hyd_mall_merged['Latitude'], hyd_mall_merged['Longitude'], hyd_mall_merged['Neighborhood'], hyd_mall_merged['Cluster_labels']):\n",
" label = folium.Popup(str(poi) + ' - Cluster ' + str(cluster), parse_html=True)\n",
" folium.CircleMarker(\n",
" [lat, lon],\n",
" radius=5,\n",
" popup=label,\n",
" color=rainbow[cluster-1],\n",
" fill=True,\n",
" fill_color=rainbow[cluster-1],\n",
" fill_opacity=0.7).add_to(map_mall_clusters)\n",
"map_mall_clusters"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" There are 5 clusters out of which we will examine each cluster in the next session, lets save this map as html"
]
},
{
"cell_type": "code",
"execution_count": 64,
"metadata": {},
"outputs": [],
"source": [
"map_mall_clusters.save('map_mall_clusters.html')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 5.5 Examining each Neighborhoods' Shopping Mall cluster"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Balanagar</td>\n",
" <td>0.142857</td>\n",
" <td>0</td>\n",
" <td>17.476746</td>\n",
" <td>78.422108</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"3 Balanagar 0.142857 0 17.476746 78.422108"
]
},
"execution_count": 87,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.loc[hyd_mall_merged['Cluster_labels'] == 0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" This is the cluster 0 with only 1 Neighborhood with mean value more than all the clusters as it is an industrial area with small shopping malls around it"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Alwal</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.502229</td>\n",
" <td>78.508858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Secunderabad</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.433725</td>\n",
" <td>78.500683</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>Sanathnagar</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.456965</td>\n",
" <td>78.443478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>Rajendranagar</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.311091</td>\n",
" <td>78.442585</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Patancheru</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.528609</td>\n",
" <td>78.267425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>Musheerabad</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.419142</td>\n",
" <td>78.498573</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Mehdipatnam</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.394263</td>\n",
" <td>78.434251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>Malkajgiri</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.448344</td>\n",
" <td>78.528973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>LB Nagar</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.350162</td>\n",
" <td>78.551094</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>Serilingampally</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.465657</td>\n",
" <td>78.340672</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>Uppal</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.402509</td>\n",
" <td>78.561256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Jubilee Hills</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.430836</td>\n",
" <td>78.410288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Hayathnagar</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.328115</td>\n",
" <td>78.604540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>Gachibowli</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.443622</td>\n",
" <td>78.351964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Ameerpet</td>\n",
" <td>0.01</td>\n",
" <td>1</td>\n",
" <td>17.437501</td>\n",
" <td>78.448251</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>Kompally</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>17.544703</td>\n",
" <td>78.491842</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"0 Alwal 0.00 1 17.502229 78.508858\n",
"22 Secunderabad 0.00 1 17.433725 78.500683\n",
"20 Sanathnagar 0.00 1 17.456965 78.443478\n",
"19 Rajendranagar 0.00 1 17.311091 78.442585\n",
"18 Patancheru 0.00 1 17.528609 78.267425\n",
"16 Musheerabad 0.00 1 17.419142 78.498573\n",
"15 Mehdipatnam 0.00 1 17.394263 78.434251\n",
"14 Malkajgiri 0.00 1 17.448344 78.528973\n",
"13 LB Nagar 0.00 1 17.350162 78.551094\n",
"23 Serilingampally 0.00 1 17.465657 78.340672\n",
"24 Uppal 0.00 1 17.402509 78.561256\n",
"8 Jubilee Hills 0.00 1 17.430836 78.410288\n",
"7 Hayathnagar 0.00 1 17.328115 78.604540\n",
"5 Gachibowli 0.00 1 17.443622 78.351964\n",
"2 Ameerpet 0.01 1 17.437501 78.448251\n",
"11 Kompally 0.00 1 17.544703 78.491842"
]
},
"execution_count": 88,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.loc[hyd_mall_merged['Cluster_labels'] == 1]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" This is the cluster-1 with almost no shopping malls, some of the areas might be having one or two shopping malls but our model did not detect it because of the radius(2000m) that we have chosed."
]
},
{
"cell_type": "code",
"execution_count": 89,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Kapra</td>\n",
" <td>0.071429</td>\n",
" <td>2</td>\n",
" <td>17.484636</td>\n",
" <td>78.561009</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Dilsukhnagar</td>\n",
" <td>0.076923</td>\n",
" <td>2</td>\n",
" <td>17.368431</td>\n",
" <td>78.523428</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Kukatpally</td>\n",
" <td>0.080000</td>\n",
" <td>2</td>\n",
" <td>17.493084</td>\n",
" <td>78.405441</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"9 Kapra 0.071429 2 17.484636 78.561009\n",
"4 Dilsukhnagar 0.076923 2 17.368431 78.523428\n",
"12 Kukatpally 0.080000 2 17.493084 78.405441"
]
},
"execution_count": 89,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.loc[hyd_mall_merged['Cluster_labels'] == 2]"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>Khairatabad</td>\n",
" <td>0.030000</td>\n",
" <td>3</td>\n",
" <td>17.411771</td>\n",
" <td>78.462200</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>HITEC City</td>\n",
" <td>0.020000</td>\n",
" <td>3</td>\n",
" <td>17.449005</td>\n",
" <td>78.383138</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>Nampally</td>\n",
" <td>0.013699</td>\n",
" <td>3</td>\n",
" <td>17.391852</td>\n",
" <td>78.466005</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"10 Khairatabad 0.030000 3 17.411771 78.462200\n",
"6 HITEC City 0.020000 3 17.449005 78.383138\n",
"17 Nampally 0.013699 3 17.391852 78.466005"
]
},
"execution_count": 90,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.loc[hyd_mall_merged['Cluster_labels'] == 3]"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Neighborhood</th>\n",
" <th>Shopping Mall</th>\n",
" <th>Cluster_labels</th>\n",
" <th>Latitude</th>\n",
" <th>Longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>Saroornagar</td>\n",
" <td>0.055556</td>\n",
" <td>4</td>\n",
" <td>17.361165</td>\n",
" <td>78.538756</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Amberpet</td>\n",
" <td>0.047619</td>\n",
" <td>4</td>\n",
" <td>17.390263</td>\n",
" <td>78.516481</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Neighborhood Shopping Mall Cluster_labels Latitude Longitude\n",
"21 Saroornagar 0.055556 4 17.361165 78.538756\n",
"1 Amberpet 0.047619 4 17.390263 78.516481"
]
},
"execution_count": 91,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hyd_mall_merged.loc[hyd_mall_merged['Cluster_labels'] == 4]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" These clusters 2,3 and 4 has enough number of shopping malls in these neighborhoods with different frequencies of mean.\n",
" Neighborhoods in clusters 2 and 3 comes under main city or popular areas of the city Hyderabad."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 6. Conclusion"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- Most of the shopping malls are situated in the main areas of Hyderabad city, with the highest number in cluster 2,3 and moderate number of malls in cluster 0 and 4. On the other hand, cluster 1 has very low number to completely no shopping malls in the neighborhoods. This represents a great opportunity and high potential areas to open new shopping malls as there is very little to no competition from existing malls and are popular areas of the city with IT hubs.\n",
" \n",
"- Meanwhile, shopping malls in cluster 2 are likely suffering from intense competition due to oversupply and high concentration of shopping malls, this also shows that the oversupply of shopping malls mostly happened in the central area to main area of the city, with the outskirts area still have very few shopping malls. Therefore, this project recommends property developers to invest on these findings to open new shopping malls in neighborhoods in cluster 1 with little to no competition.\n",
" \n",
"- Property developers with unique selling propositions to stand out from the competition can also open new shopping malls in neighborhoods in cluster 4 with moderate competition.\n",
" \n",
"- Finally, property developers are advised to avoid neighborhoods in cluster 2,3 which already have high concentration of shopping malls and suffering from intense competition."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.10"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment