Repository: pydantic/FastUI
Branch: main
Commit: b5a33bc6e5cd
Files: 146
Total size: 855.4 KB
Directory structure:
gitextract_8bolxsaa/
├── .eslintrc.cjs
├── .github/
│ ├── dependabot.yml
│ └── workflows/
│ └── ci.yml
├── .gitignore
├── .pre-commit-config.yaml
├── .prettierignore
├── LICENSE
├── Makefile
├── README.md
├── build-docs.sh
├── bump_npm.py
├── demo/
│ ├── README.md
│ ├── __init__.py
│ ├── auth.py
│ ├── auth_user.py
│ ├── cities.json
│ ├── components_list.py
│ ├── forms.py
│ ├── main.py
│ ├── shared.py
│ ├── sse.py
│ ├── tables.py
│ └── tests.py
├── docs/
│ ├── api/
│ │ ├── python_components.md
│ │ └── typescript_components.md
│ ├── extra/
│ │ └── tweaks.css
│ ├── guide.md
│ ├── index.md
│ └── plugins.py
├── mkdocs.yml
├── package.json
├── pyproject.toml
├── requirements/
│ ├── docs.in
│ └── docs.txt
├── src/
│ ├── npm-fastui/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src/
│ │ │ ├── Defaults.tsx
│ │ │ ├── components/
│ │ │ │ ├── Code.tsx
│ │ │ │ ├── CodeLazy.tsx
│ │ │ │ ├── Custom.tsx
│ │ │ │ ├── FireEvent.tsx
│ │ │ │ ├── FormField.tsx
│ │ │ │ ├── Iframe.tsx
│ │ │ │ ├── Json.tsx
│ │ │ │ ├── LinkList.tsx
│ │ │ │ ├── Markdown.tsx
│ │ │ │ ├── MarkdownLazy.tsx
│ │ │ │ ├── PageTitle.tsx
│ │ │ │ ├── ServerLoad.tsx
│ │ │ │ ├── button.tsx
│ │ │ │ ├── details.tsx
│ │ │ │ ├── display.tsx
│ │ │ │ ├── div.tsx
│ │ │ │ ├── error.tsx
│ │ │ │ ├── footer.tsx
│ │ │ │ ├── form.tsx
│ │ │ │ ├── heading.tsx
│ │ │ │ ├── image.tsx
│ │ │ │ ├── index.tsx
│ │ │ │ ├── link.tsx
│ │ │ │ ├── modal.tsx
│ │ │ │ ├── navbar.tsx
│ │ │ │ ├── pagination.tsx
│ │ │ │ ├── paragraph.tsx
│ │ │ │ ├── spinner.tsx
│ │ │ │ ├── table.tsx
│ │ │ │ ├── text.tsx
│ │ │ │ ├── toast.tsx
│ │ │ │ └── video.tsx
│ │ │ ├── controller.tsx
│ │ │ ├── dev.tsx
│ │ │ ├── events.ts
│ │ │ ├── hooks/
│ │ │ │ ├── className.ts
│ │ │ │ ├── config.ts
│ │ │ │ ├── error.tsx
│ │ │ │ ├── eventContext.tsx
│ │ │ │ └── locationContext.tsx
│ │ │ ├── index.tsx
│ │ │ ├── models.d.ts
│ │ │ └── tools.ts
│ │ ├── tsconfig.json
│ │ └── typedoc.json
│ ├── npm-fastui-bootstrap/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src/
│ │ │ ├── footer.tsx
│ │ │ ├── index.tsx
│ │ │ ├── modal.tsx
│ │ │ ├── navbar.tsx
│ │ │ ├── pagination.tsx
│ │ │ └── toast.tsx
│ │ ├── tsconfig.json
│ │ └── typedoc.json
│ ├── npm-fastui-prebuilt/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.html
│ │ ├── package.json
│ │ ├── src/
│ │ │ ├── App.tsx
│ │ │ ├── main.scss
│ │ │ ├── main.tsx
│ │ │ └── vite-env.d.ts
│ │ ├── tsconfig.json
│ │ ├── tsconfig.node.json
│ │ ├── typedoc.json
│ │ └── vite.config.ts
│ └── python-fastui/
│ ├── LICENSE
│ ├── README.md
│ ├── fastui/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── auth/
│ │ │ ├── __init__.py
│ │ │ ├── github.py
│ │ │ └── shared.py
│ │ ├── base.py
│ │ ├── class_name.py
│ │ ├── components/
│ │ │ ├── __init__.py
│ │ │ ├── display.py
│ │ │ ├── forms.py
│ │ │ ├── py.typed
│ │ │ └── tables.py
│ │ ├── dev.py
│ │ ├── events.py
│ │ ├── forms.py
│ │ ├── generate_typescript.py
│ │ ├── json_schema.py
│ │ ├── py.typed
│ │ └── types.py
│ ├── pyproject.toml
│ ├── requirements/
│ │ ├── all.txt
│ │ ├── lint.in
│ │ ├── lint.txt
│ │ ├── pyproject.txt
│ │ ├── render.txt
│ │ ├── test.in
│ │ └── test.txt
│ └── tests/
│ ├── test_auth_github.py
│ ├── test_auth_shared.py
│ ├── test_components.py
│ ├── test_dev.py
│ ├── test_forms.py
│ ├── test_json_schema.py
│ ├── test_prebuilt_html.py
│ └── test_tables_display.py
├── tsconfig.json
├── typedoc.base.json
└── typedoc.json
================================================
FILE CONTENTS
================================================
================================================
FILE: .eslintrc.cjs
================================================
module.exports = {
root: true,
env: { browser: true, es2020: true },
extends: [
'standard',
'eslint:recommended',
'plugin:react/recommended',
'plugin:@typescript-eslint/recommended',
'plugin:react-hooks/recommended',
'prettier',
],
ignorePatterns: ['node_modules', 'dist', 'htmlcov'],
parser: '@typescript-eslint/parser',
plugins: ['react', '@typescript-eslint', 'react-refresh', 'simple-import-sort'],
rules: {
'react-refresh/only-export-components': 'off', // how much effect does this have?
'@typescript-eslint/no-explicit-any': 'off',
'no-use-before-define': 'off',
'react/react-in-jsx-scope': 'off',
'react/prop-types': 'off',
'react/display-name': 'off',
'import/order': [
'error',
{
'newlines-between': 'always',
groups: ['builtin', 'external', 'internal', 'object', 'type', 'parent', 'index', 'sibling'],
pathGroups: [
{
pattern: '@/**',
group: 'internal',
},
{
pattern: './../**',
group: 'parent',
},
],
},
],
},
}
================================================
FILE: .github/dependabot.yml
================================================
# Keep GitHub Actions up to date with GitHub's Dependabot...
# https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem
version: 2
updates:
- package-ecosystem: github-actions
directory: /
groups:
github-actions:
patterns:
- "*" # Group all Actions updates into a single larger pull request
schedule:
interval: monthly
================================================
FILE: .github/workflows/ci.yml
================================================
name: CI
on:
push:
branches:
- main
tags:
- '**'
pull_request:
types: [opened, synchronize]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- uses: actions/setup-node@v4
with:
node-version: 18
- run: pip install -r src/python-fastui/requirements/all.txt
- run: pip install src/python-fastui
- run: npm install
- uses: pre-commit/action@v3.0.1
with:
extra_args: --all-files
env:
SKIP: no-commit-to-branch
docs-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
# note: PPPR_TOKEN is not available on PRs sourced from forks, but the necessary
# dependencies are also listed in docs.txt :)
- name: install
run: |
pip install --upgrade pip
pip install --extra-index-url https://pydantic:${PPPR_TOKEN}@pppr.pydantic.dev/simple/ mkdocs-material mkdocstrings-python
pip install -r requirements/docs.txt
# note -- we can use these in the future when mkdocstrings-typescript and griffe-typedoc beocome publicly available
# pip install --extra-index-url https://pydantic:${PPPR_TOKEN}@pppr.pydantic.dev/simple/ mkdocs-material mkdocstrings-python griffe-typedoc mkdocstrings-typescript
# npm install
# npm install -g typedoc
env:
PPPR_TOKEN: ${{ secrets.PPPR_TOKEN }}
- name: build site
run: mkdocs build --strict
test:
name: test ${{ matrix.python-version }} on ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-15-intel, macos-latest]
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14']
exclude:
- os: macos-15-intel
python-version: '3.10'
- os: macos-15-intel
python-version: '3.11'
- os: macos-15-intel
python-version: '3.12'
- os: macos-latest
python-version: '3.13'
runs-on: ${{ matrix.os }}
env:
PYTHON: ${{ matrix.python-version }}
OS: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: set up python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- run: pip install -r src/python-fastui/requirements/test.txt
- run: pip install -r src/python-fastui/requirements/pyproject.txt
- run: pip install -e src/python-fastui
- run: coverage run -m pytest src
# display coverage and fail if it's below 80%, which shouldn't happen
- run: coverage report --fail-under=80
# test demo on 3.11 and 3.12, these tests are intentionally omitted from coverage
- if: matrix.python-version == '3.11' || matrix.python-version == '3.12'
run: pytest demo/tests.py
- run: coverage xml
- uses: codecov/codecov-action@v5
with:
file: ./coverage.xml
env_vars: PYTHON,OS
npm-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- run: npm install
- run: npm run build
- run: tree src
check: # This job does nothing and is only used for the branch protection
if: always()
needs: [lint, test, npm-build]
runs-on: ubuntu-latest
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
id: all-green
with:
jobs: ${{ toJSON(needs) }}
release:
needs: [check]
if: "success() && startsWith(github.ref, 'refs/tags/')"
runs-on: ubuntu-latest
environment: release
permissions:
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- run: pip install -U build
- id: check-version
uses: samuelcolvin/check-python-version@v4.1
with:
version_file_path: 'src/python-fastui/fastui/__init__.py'
- run: python -m build --outdir dist src/python-fastui
- run: ls -lh dist
- uses: pypa/gh-action-pypi-publish@release/v1
================================================
FILE: .gitignore
================================================
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
/**/*.egg-info
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# python
/env*/
__pycache__/
/.logfire/
/frontend-dist/
/scratch/
/packages-dist/
/.coverage
/users.db
================================================
FILE: .pre-commit-config.yaml
================================================
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: no-commit-to-branch
- id: check-yaml
args: ['--unsafe']
- id: check-toml
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: local
hooks:
- id: python-format
name: python-format
types_or: [python]
entry: make format
language: system
pass_filenames: false
- id: python-typecheck
name: python-typecheck
types_or: [python]
entry: make typecheck
language: system
pass_filenames: false
- id: js-prettier
name: js-prettier
types_or: [javascript, jsx, ts, tsx, css, json, markdown]
entry: npm run prettier
language: system
exclude: '^docs/.*'
- id: js-lint
name: js-lint
types_or: [ts, tsx]
entry: npm run lint-fix
language: system
pass_filenames: false
- id: js-typecheck
name: js-typecheck
types_or: [ts, tsx]
entry: npm run typecheck
language: system
pass_filenames: false
- id: python-generate-ts
name: python-generate-ts
types_or: [python]
entry: make typescript-models
language: system
pass_filenames: false
================================================
FILE: .prettierignore
================================================
htmlcov/
================================================
FILE: LICENSE
================================================
The MIT License (MIT)
Copyright (c) 2023 to present Pydantic Services inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: Makefile
================================================
.DEFAULT_GOAL:=all
path = src/python-fastui
.PHONY: install
install:
pip install -U pip pre-commit pip-tools
pip install -r $(path)/requirements/all.txt
pip install -e $(path)
pre-commit install
.PHONY: install-docs
install-docs:
pip install -r requirements/docs.txt
# note -- mkdocstrings-typescript and griffe-typedoc are not yet publicly available
# but the following can be added above the pip install -r requirements/docs.txt line in the future
# pip install mkdocstrings-python mkdocstrings-typescript griffe-typedoc
.PHONY: update-lockfiles
update-lockfiles:
@echo "Updating requirements files using pip-compile"
pip-compile -q --strip-extras -o $(path)/requirements/lint.txt $(path)/requirements/lint.in
pip-compile -q --strip-extras -o $(path)/requirements/pyproject.txt -c $(path)/requirements/lint.txt $(path)/pyproject.toml --extra=fastapi
pip-compile -q --strip-extras -o $(path)/requirements/test.txt -c $(path)/requirements/lint.txt -c $(path)/requirements/pyproject.txt $(path)/requirements/test.in
pip install --dry-run -r $(path)/requirements/all.txt
.PHONY: format
format:
ruff check --fix-only $(path) demo
ruff format $(path) demo
.PHONY: lint
lint:
ruff check $(path) demo
ruff format --check $(path) demo
.PHONY: typecheck
typecheck:
pyright
.PHONY: test
test:
coverage run -m pytest
.PHONY: testcov
testcov: test
coverage html
.PHONY: typescript-models
typescript-models:
fastui generate fastui:FastUI src/npm-fastui/src/models.d.ts
.PHONY: dev
dev:
uvicorn demo:app --reload --reload-dir .
.PHONY: docs
docs:
mkdocs build
.PHONY: serve
serve:
mkdocs serve
.PHONY: all
all: testcov lint
================================================
FILE: README.md
================================================
# NOTE: this project is inactive, see [#368](https://github.com/pydantic/FastUI/issues/368)
# FastUI
Find the documentation [here](https://docs.pydantic.dev/fastui/).
Join the discussion in the #fastui slack channel [here](https://pydanticlogfire.slack.com/archives/C0720M7D31S)
[](https://github.com/pydantic/FastUI/actions?query=event%3Apush+branch%3Amain+workflow%3ACI)
[](https://pypi.python.org/pypi/fastui)
[](https://github.com/pydantic/FastUI)
[](https://github.com/pydantic/FastUI/blob/main/LICENSE)
**Please note:** FastUI is still an active work in progress, do not expect it to be complete.
## The Principle (short version)
You can see a simple demo of an application built with FastUI [here](https://fastui-demo.onrender.com).
FastUI is a new way to build web application user interfaces defined by declarative Python code.
This means:
- **If you're a Python developer** — you can build responsive web applications using React without writing a single line of JavaScript, or touching `npm`.
- **If you're a frontend developer** — you can concentrate on building magical components that are truly reusable, no copy-pasting components for each view.
- **For everyone** — a true separation of concerns, the backend defines the entire application; while the frontend is free to implement just the user interface
At its heart, FastUI is a set of matching [Pydantic](https://docs.pydantic.dev) models and TypeScript interfaces that allow you to define a user interface. This interface is validated at build time by TypeScript and pyright/mypy and at runtime by Pydantic.
## The Practice — Usage
FastUI is made up of 4 things:
- [`fastui` PyPI package](https://pypi.python.org/pypi/fastui) — Pydantic models for UI components, and some utilities. While it works well with [FastAPI](https://fastapi.tiangolo.com) it doesn't depend on FastAPI, and most of it could be used with any python web framework.
- [`@pydantic/fastui` npm package](https://www.npmjs.com/package/@pydantic/fastui) — a React TypeScript package that lets you reuse the machinery and types of FastUI while implementing your own components
- [`@pydantic/fastui-bootstrap` npm package](https://www.npmjs.com/package/@pydantic/fastui-bootstrap) — implementation/customisation of all FastUI components using [Bootstrap](https://getbootstrap.com)
- [`@pydantic/fastui-prebuilt` npm package](https://www.jsdelivr.com/package/npm/@pydantic/fastui-prebuilt) (available on [jsdelivr.com CDN](https://www.jsdelivr.com/package/npm/@pydantic/fastui-prebuilt)) providing a pre-built version of the FastUI React app so you can use it without installing any npm packages or building anything yourself. The Python package provides a simple HTML page to serve this app.
Here's a simple but complete FastAPI application that uses FastUI to show some user profiles:
```python
from datetime import date
from fastapi import FastAPI, HTTPException
from fastapi.responses import HTMLResponse
from fastui import FastUI, AnyComponent, prebuilt_html, components as c
from fastui.components.display import DisplayMode, DisplayLookup
from fastui.events import GoToEvent, BackEvent
from pydantic import BaseModel, Field
app = FastAPI()
class User(BaseModel):
id: int
name: str
dob: date = Field(title='Date of Birth')
# define some users
users = [
User(id=1, name='John', dob=date(1990, 1, 1)),
User(id=2, name='Jack', dob=date(1991, 1, 1)),
User(id=3, name='Jill', dob=date(1992, 1, 1)),
User(id=4, name='Jane', dob=date(1993, 1, 1)),
]
@app.get("/api/", response_model=FastUI, response_model_exclude_none=True)
def users_table() -> list[AnyComponent]:
"""
Show a table of four users, `/api` is the endpoint the frontend will connect to
when a user visits `/` to fetch components to render.
"""
return [
c.Page( # Page provides a basic container for components
components=[
c.Heading(text='Users', level=2), # renders `
Users `
c.Table(
data=users,
# define two columns for the table
columns=[
# the first is the users, name rendered as a link to their profile
DisplayLookup(field='name', on_click=GoToEvent(url='/user/{id}/')),
# the second is the date of birth, rendered as a date
DisplayLookup(field='dob', mode=DisplayMode.date),
],
),
]
),
]
@app.get("/api/user/{user_id}/", response_model=FastUI, response_model_exclude_none=True)
def user_profile(user_id: int) -> list[AnyComponent]:
"""
User profile page, the frontend will fetch this when the user visits `/user/{id}/`.
"""
try:
user = next(u for u in users if u.id == user_id)
except StopIteration:
raise HTTPException(status_code=404, detail="User not found")
return [
c.Page(
components=[
c.Heading(text=user.name, level=2),
c.Link(components=[c.Text(text='Back')], on_click=BackEvent()),
c.Details(data=user),
]
),
]
@app.get('/{path:path}')
async def html_landing() -> HTMLResponse:
"""Simple HTML page which serves the React app, comes last as it matches all paths."""
return HTMLResponse(prebuilt_html(title='FastUI Demo'))
```
Which renders like this:

Of course, that's a very simple application, the [full demo](https://fastui-demo.onrender.com) is more complete.
### Components
FastUI already defines a rich set of components.
All components are listed in the [demo app](https://fastui-demo.onrender.com).
## The Principle (long version)
FastUI is an implementation of the RESTful principle; but not as it's usually understood, instead I mean the principle defined in the original [PhD dissertation](https://ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm) by Roy Fielding, and excellently summarised in [this essay on htmx.org](https://htmx.org/essays/how-did-rest-come-to-mean-the-opposite-of-rest/) (HTMX people, I'm sorry to use your article to promote React which I know you despise 🙏).
The RESTful principle as described in the HTMX article is that the frontend doesn't need to (and shouldn't) know anything about the application you're building. Instead, it should just provide all the components you need to construct the interface, the backend can then tell the frontend what to do.
Think of your frontend as a puppet, and the backend as the hand within it — the puppet doesn't need to know what to say, that's kind of the point.
Building an application this way has a number of significant advantages:
- You only need to write code in one place to build a new feature — add a new view, change the behavior of an existing view or alter the URL structure
- Deploying the front and backend can be completely decoupled, provided the frontend knows how to render all the components the backend is going to ask it to use, you're good to go
- You should be able to reuse a rich set of opensource components, they should end up being better tested and more reliable than anything you could build yourself, this is possible because the components need no context about how they're going to be used (note: since FastUI is brand new, this isn't true yet, hopefully we get there)
- We can use Pydantic, TypeScript and JSON Schema to provide guarantees that the two sides are communicating with an agreed schema
In the abstract, FastUI is like the opposite of GraphQL but with the same goal — GraphQL lets frontend developers extend an application without any new backend development; FastUI lets backend developers extend an application without any new frontend development.
### Beyond Python and React
Of course, this principle shouldn't be limited to Python and React applications — provided we use the same set of agreed schemas and encoding to communicate, we should be able to use any frontend and backend that implements the schema. Interchangeably.
This could mean:
- Implementing a web frontend using another JS framework like Vue — lots of work, limited value IMHO
- Implementing a web frontend using an edge server, so the browser just sees HTML — lots of work but very valuable
- Implementing frontends for other platforms like mobile or IOT — lots of work, no idea if it's actually a good idea?
- Implementing the component models in another language like Rust or Go — since there's actually not that much code in the backend, so this would be a relatively small and mechanical task
================================================
FILE: build-docs.sh
================================================
#!/usr/bin/env bash
set -e
set -x
python3 -V
python3 -m pip install --extra-index-url https://pydantic:${PPPR_TOKEN}@pppr.pydantic.dev/simple/ mkdocs-material mkdocstrings-python
python3 -m pip install -r ./requirements/docs.txt
# note -- we can use these in the future when mkdocstrings-typescript and griffe-typedoc beocome publicly available
# python3 -m pip install --extra-index-url https://pydantic:$PPPR_TOKEN@pppr.pydantic.dev/simple/ mkdocs-material mkdocstrings-python griffe-typedoc mkdocstrings-typescript
# npm install
# npm install -g typedoc
python3 -m mkdocs build
================================================
FILE: bump_npm.py
================================================
#!/usr/bin/env python
from __future__ import annotations
import json
import re
from pathlib import Path
def replace_package_json(package_json: Path, new_version: str, deps: bool = False) -> tuple[Path, str]:
content = package_json.read_text()
content, r_count = re.subn(r'"version": *".*?"', f'"version": "{new_version}"', content, count=1)
assert r_count == 1 , f'Failed to update version in {package_json}, expect replacement count 1, got {r_count}'
if deps:
content, r_count = re.subn(r'"(@pydantic/.+?)": *".*?"', fr'"\1": "{new_version}"', content)
assert r_count == 1, f'Failed to update version in {package_json}, expect replacement count 1, got {r_count}'
return package_json, content
def main():
this_dir = Path(__file__).parent
fastui_package_json = this_dir / 'src/npm-fastui/package.json'
with fastui_package_json.open() as f:
old_version = json.load(f)['version']
rest, patch_version = old_version.rsplit('.', 1)
new_version = f'{rest}.{int(patch_version) + 1}'
bootstrap_package_json = this_dir / 'src/npm-fastui-bootstrap/package.json'
prebuilt_package_json = this_dir / 'src/npm-fastui-prebuilt/package.json'
to_update: list[tuple[Path, str]] = [
replace_package_json(fastui_package_json, new_version),
replace_package_json(bootstrap_package_json, new_version, deps=True),
replace_package_json(prebuilt_package_json, new_version),
]
python_init = this_dir / 'src/python-fastui/fastui/__init__.py'
python_content = python_init.read_text()
python_content, r_count = re.subn(r"(_PREBUILT_VERSION = )'.+'", fr"\1'{new_version}'", python_content)
assert r_count == 1, f'Failed to update version in {python_init}, expect replacement count 1, got {r_count}'
to_update.append((python_init, python_content))
# logic is finished, no update all files
print(f'Updating files:')
for package_json, content in to_update:
print(f' {package_json.relative_to(this_dir)}')
package_json.write_text(content)
print(f"""
Bumped from `{old_version}` to `{new_version}` in {len(to_update)} files.
To publish the new version, run:
> npm --workspaces publish
""")
if __name__ == '__main__':
main()
================================================
FILE: demo/README.md
================================================
# FastUI Demo
This a simple demo app for FastUI, it's deployed at [fastui-demo.onrender.com](https://fastui-demo.onrender.com).
## Running
To run the demo app, execute the following commands from the FastUI repo root
```bash
# create a virtual env
python3.11 -m venv env311
# activate the env
. env311/bin/activate
# install deps
make install
# run the demo server
make dev
```
Then navigate to [http://localhost:8000](http://localhost:8000)
If you want to run the dev version of the React frontend, run
```bash
npm install
npm run dev
```
This will run at [http://localhost:3000](http://localhost:3000), and connect to the backend running at `localhost:3000`.
================================================
FILE: demo/__init__.py
================================================
from __future__ import annotations as _annotations
import sys
from contextlib import asynccontextmanager
from fastapi import FastAPI
from fastapi.responses import HTMLResponse, PlainTextResponse
from fastui import prebuilt_html
from fastui.auth import fastapi_auth_exception_handling
from fastui.dev import dev_fastapi_app
from httpx import AsyncClient
from .auth import router as auth_router
from .components_list import router as components_router
from .forms import router as forms_router
from .main import router as main_router
from .sse import router as sse_router
from .tables import router as table_router
@asynccontextmanager
async def lifespan(app_: FastAPI):
async with AsyncClient() as client:
app_.state.httpx_client = client
yield
frontend_reload = '--reload' in sys.argv
if frontend_reload:
# dev_fastapi_app reloads in the browser when the Python source changes
app = dev_fastapi_app(lifespan=lifespan)
else:
app = FastAPI(lifespan=lifespan)
fastapi_auth_exception_handling(app)
app.include_router(components_router, prefix='/api/components')
app.include_router(sse_router, prefix='/api/components')
app.include_router(table_router, prefix='/api/table')
app.include_router(forms_router, prefix='/api/forms')
app.include_router(auth_router, prefix='/api/auth')
app.include_router(main_router, prefix='/api')
@app.get('/robots.txt', response_class=PlainTextResponse)
async def robots_txt() -> str:
return 'User-agent: *\nAllow: /'
@app.get('/favicon.ico', status_code=404, response_class=PlainTextResponse)
async def favicon_ico() -> str:
return 'page not found'
@app.get('/{path:path}')
async def html_landing() -> HTMLResponse:
return HTMLResponse(prebuilt_html(title='FastUI Demo'))
================================================
FILE: demo/auth.py
================================================
from __future__ import annotations as _annotations
import asyncio
import json
import os
from dataclasses import asdict
from typing import Annotated, Literal, TypeAlias
from fastapi import APIRouter, Depends, Request
from fastui import AnyComponent, FastUI
from fastui import components as c
from fastui.auth import AuthRedirect, GitHubAuthProvider
from fastui.events import AuthEvent, GoToEvent, PageEvent
from fastui.forms import fastui_form
from httpx import AsyncClient
from pydantic import BaseModel, EmailStr, Field, SecretStr
from .auth_user import User
from .shared import demo_page
router = APIRouter()
GITHUB_CLIENT_ID = os.getenv('GITHUB_CLIENT_ID', '0d0315f9c2e055d032e2')
# this will give an error when making requests to GitHub, but at least the app will run
GITHUB_CLIENT_SECRET = SecretStr(os.getenv('GITHUB_CLIENT_SECRET', 'dummy-secret'))
# use 'http://localhost:3000/auth/login/github/redirect' in development
GITHUB_REDIRECT = os.getenv('GITHUB_REDIRECT')
async def get_github_auth(request: Request) -> GitHubAuthProvider:
client: AsyncClient = request.app.state.httpx_client
return GitHubAuthProvider(
httpx_client=client,
github_client_id=GITHUB_CLIENT_ID,
github_client_secret=GITHUB_CLIENT_SECRET,
redirect_uri=GITHUB_REDIRECT,
scopes=['user:email'],
)
LoginKind: TypeAlias = Literal['password', 'github']
@router.get('/login/{kind}', response_model=FastUI, response_model_exclude_none=True)
def auth_login(
kind: LoginKind,
user: Annotated[User | None, Depends(User.from_request_opt)],
) -> list[AnyComponent]:
if user is not None:
# already logged in
raise AuthRedirect('/auth/profile')
return demo_page(
c.LinkList(
links=[
c.Link(
components=[c.Text(text='Password Login')],
on_click=PageEvent(name='tab', push_path='/auth/login/password', context={'kind': 'password'}),
active='/auth/login/password',
),
c.Link(
components=[c.Text(text='GitHub Login')],
on_click=PageEvent(name='tab', push_path='/auth/login/github', context={'kind': 'github'}),
active='/auth/login/github',
),
],
mode='tabs',
class_name='+ mb-4',
),
c.ServerLoad(
path='/auth/login/content/{kind}',
load_trigger=PageEvent(name='tab'),
components=auth_login_content(kind),
),
title='Authentication',
)
@router.get('/login/content/{kind}', response_model=FastUI, response_model_exclude_none=True)
def auth_login_content(kind: LoginKind) -> list[AnyComponent]:
match kind:
case 'password':
return [
c.Heading(text='Password Login', level=3),
c.Paragraph(
text=(
'This is a very simple demo of password authentication, '
'here you can "login" with any email address and password.'
)
),
c.Paragraph(text='(Passwords are not saved and is email stored in the browser via a JWT only)'),
c.ModelForm(model=LoginForm, submit_url='/api/auth/login', display_mode='page'),
]
case 'github':
return [
c.Heading(text='GitHub Login', level=3),
c.Paragraph(text='Demo of GitHub authentication.'),
c.Paragraph(text='(Credentials are stored in the browser via a JWT only)'),
c.Button(text='Login with GitHub', on_click=GoToEvent(url='/auth/login/github/gen')),
]
case _:
raise ValueError(f'Invalid kind {kind!r}')
class LoginForm(BaseModel):
email: EmailStr = Field(
title='Email Address', description='Enter whatever value you like', json_schema_extra={'autocomplete': 'email'}
)
password: SecretStr = Field(
title='Password',
description='Enter whatever value you like, password is not checked',
json_schema_extra={'autocomplete': 'current-password'},
)
@router.post('/login', response_model=FastUI, response_model_exclude_none=True)
async def login_form_post(form: Annotated[LoginForm, fastui_form(LoginForm)]) -> list[AnyComponent]:
user = User(email=form.email, extra={})
token = user.encode_token()
return [c.FireEvent(event=AuthEvent(token=token, url='/auth/profile'))]
@router.get('/profile', response_model=FastUI, response_model_exclude_none=True)
async def profile(user: Annotated[User, Depends(User.from_request)]) -> list[AnyComponent]:
return demo_page(
c.Paragraph(text=f'You are logged in as "{user.email}".'),
c.Button(text='Logout', on_click=PageEvent(name='submit-form')),
c.Heading(text='User Data:', level=3),
c.Code(language='json', text=json.dumps(asdict(user), indent=2)),
c.Form(
submit_url='/api/auth/logout',
form_fields=[c.FormFieldInput(name='test', title='', initial='data', html_type='hidden')],
footer=[],
submit_trigger=PageEvent(name='submit-form'),
),
title='Authentication',
)
@router.post('/logout', response_model=FastUI, response_model_exclude_none=True)
async def logout_form_post() -> list[AnyComponent]:
return [c.FireEvent(event=AuthEvent(token=False, url='/auth/login/password'))]
@router.get('/login/github/gen', response_model=FastUI, response_model_exclude_none=True)
async def auth_github_gen(github_auth: Annotated[GitHubAuthProvider, Depends(get_github_auth)]) -> list[AnyComponent]:
auth_url = await github_auth.authorization_url()
return [c.FireEvent(event=GoToEvent(url=auth_url))]
@router.get('/login/github/redirect', response_model=FastUI, response_model_exclude_none=True)
async def github_redirect(
code: str,
state: str | None,
github_auth: Annotated[GitHubAuthProvider, Depends(get_github_auth)],
) -> list[AnyComponent]:
exchange = await github_auth.exchange_code(code, state)
user_info, emails = await asyncio.gather(
github_auth.get_github_user(exchange), github_auth.get_github_user_emails(exchange)
)
user = User(
email=next((e.email for e in emails if e.primary and e.verified), None),
extra={
'github_user_info': user_info.model_dump(),
'github_emails': [e.model_dump() for e in emails],
},
)
token = user.encode_token()
return [c.FireEvent(event=AuthEvent(token=token, url='/auth/profile'))]
================================================
FILE: demo/auth_user.py
================================================
import json
from dataclasses import asdict, dataclass
from datetime import datetime, timedelta
from typing import Annotated, Any
import jwt
from fastapi import Header, HTTPException
from fastui.auth import AuthRedirect
from typing_extensions import Self
JWT_SECRET = 'secret'
@dataclass
class User:
email: str | None
extra: dict[str, Any]
def encode_token(self) -> str:
payload = asdict(self)
payload['exp'] = datetime.now() + timedelta(hours=1)
return jwt.encode(payload, JWT_SECRET, algorithm='HS256', json_encoder=CustomJsonEncoder)
@classmethod
def from_request(cls, authorization: Annotated[str, Header()] = '') -> Self:
user = cls.from_request_opt(authorization)
if user is None:
raise AuthRedirect('/auth/login/password')
else:
return user
@classmethod
def from_request_opt(cls, authorization: Annotated[str, Header()] = '') -> Self | None:
try:
token = authorization.split(' ', 1)[1]
except IndexError:
return None
try:
payload = jwt.decode(token, JWT_SECRET, algorithms=['HS256'])
except jwt.ExpiredSignatureError:
return None
except jwt.DecodeError:
raise HTTPException(status_code=401, detail='Invalid token')
else:
# existing token might not have 'exp' field
payload.pop('exp', None)
return cls(**payload)
class CustomJsonEncoder(json.JSONEncoder):
def default(self, obj: Any) -> Any:
if isinstance(obj, datetime):
return obj.isoformat()
else:
return super().default(obj)
================================================
FILE: demo/cities.json
================================================
[
{
"city": "Kandahār",
"city_ascii": "Kandahar",
"lat": 31.62,
"lng": 65.7158,
"country": "Afghanistan",
"iso2": "AF",
"iso3": "AFG",
"admin_name": "Kandahār",
"capital": "admin",
"population": 614254.0,
"id": 1004003059
},
{
"city": "Herāt",
"city_ascii": "Herat",
"lat": 34.3419,
"lng": 62.2031,
"country": "Afghanistan",
"iso2": "AF",
"iso3": "AFG",
"admin_name": "Herāt",
"capital": "admin",
"population": 556205.0,
"id": 1004237782
},
{
"city": "Mazār-e Sharīf",
"city_ascii": "Mazar-e Sharif",
"lat": 36.7,
"lng": 67.1167,
"country": "Afghanistan",
"iso2": "AF",
"iso3": "AFG",
"admin_name": "Balkh",
"capital": "admin",
"population": 469247.0,
"id": 1004436363
},
{
"city": "Farāh",
"city_ascii": "Farah",
"lat": 32.3436,
"lng": 62.1194,
"country": "Afghanistan",
"iso2": "AF",
"iso3": "AFG",
"admin_name": "Farāh",
"capital": "admin",
"population": 500000.0,
"id": 1004523791
},
{
"city": "Kabul",
"city_ascii": "Kabul",
"lat": 34.5253,
"lng": 69.1783,
"country": "Afghanistan",
"iso2": "AF",
"iso3": "AFG",
"admin_name": "Kābul",
"capital": "primary",
"population": 4273156.0,
"id": 1004993580
},
{
"city": "Tirana",
"city_ascii": "Tirana",
"lat": 41.3289,
"lng": 19.8178,
"country": "Albania",
"iso2": "AL",
"iso3": "ALB",
"admin_name": "Tiranë",
"capital": "primary",
"population": 418495.0,
"id": 1008162156
},
{
"city": "Oran",
"city_ascii": "Oran",
"lat": 35.6969,
"lng": -0.6331,
"country": "Algeria",
"iso2": "DZ",
"iso3": "DZA",
"admin_name": "Oran",
"capital": "admin",
"population": 852000.0,
"id": 1012126319
},
{
"city": "Constantine",
"city_ascii": "Constantine",
"lat": 36.365,
"lng": 6.6147,
"country": "Algeria",
"iso2": "DZ",
"iso3": "DZA",
"admin_name": "Constantine",
"capital": "admin",
"population": 448374.0,
"id": 1012275076
},
{
"city": "Algiers",
"city_ascii": "Algiers",
"lat": 36.7539,
"lng": 3.0589,
"country": "Algeria",
"iso2": "DZ",
"iso3": "DZA",
"admin_name": "Alger",
"capital": "primary",
"population": 3415811.0,
"id": 1012973369
},
{
"city": "Huambo",
"city_ascii": "Huambo",
"lat": -12.7767,
"lng": 15.7347,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Huambo",
"capital": "admin",
"population": 665564.0,
"id": 1024079828
},
{
"city": "Lobito",
"city_ascii": "Lobito",
"lat": -12.3597,
"lng": 13.5308,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Benguela",
"capital": null,
"population": 393079.0,
"id": 1024128946
},
{
"city": "Benguela",
"city_ascii": "Benguela",
"lat": -12.55,
"lng": 13.4167,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Benguela",
"capital": "admin",
"population": 561775.0,
"id": 1024141961
},
{
"city": "Belas",
"city_ascii": "Belas",
"lat": -8.9983,
"lng": 13.265,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Luanda",
"capital": null,
"population": 500000.0,
"id": 1024196826
},
{
"city": "Luena",
"city_ascii": "Luena",
"lat": -11.7918,
"lng": 19.9062,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Moxico",
"capital": "admin",
"population": 357413.0,
"id": 1024283760
},
{
"city": "Saurimo",
"city_ascii": "Saurimo",
"lat": -9.65,
"lng": 20.4,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Lunda-Sul",
"capital": "admin",
"population": 393000.0,
"id": 1024326839
},
{
"city": "Cabinda",
"city_ascii": "Cabinda",
"lat": -5.56,
"lng": 12.19,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Cabinda",
"capital": "admin",
"population": 739182.0,
"id": 1024474012
},
{
"city": "Cacuaco",
"city_ascii": "Cacuaco",
"lat": -8.8053,
"lng": 13.2444,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Luanda",
"capital": null,
"population": 1279488.0,
"id": 1024559448
},
{
"city": "Cubal",
"city_ascii": "Cubal",
"lat": -13.1117,
"lng": 14.3672,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Benguela",
"capital": null,
"population": 357618.0,
"id": 1024580158
},
{
"city": "Lubango",
"city_ascii": "Lubango",
"lat": -14.9167,
"lng": 13.5,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Huíla",
"capital": "admin",
"population": 776249.0,
"id": 1024669127
},
{
"city": "Malanje",
"city_ascii": "Malanje",
"lat": -9.5333,
"lng": 16.35,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Malanje",
"capital": "admin",
"population": 604215.0,
"id": 1024774947
},
{
"city": "Cuito",
"city_ascii": "Cuito",
"lat": -12.3833,
"lng": 16.9333,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Bié",
"capital": "admin",
"population": 355423.0,
"id": 1024939858
},
{
"city": "Luanda",
"city_ascii": "Luanda",
"lat": -8.8383,
"lng": 13.2344,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Luanda",
"capital": "primary",
"population": 9051000.0,
"id": 1024949724
},
{
"city": "Talatona",
"city_ascii": "Talatona",
"lat": -8.9167,
"lng": 13.1833,
"country": "Angola",
"iso2": "AO",
"iso3": "AGO",
"admin_name": "Luanda",
"capital": null,
"population": 500000.0,
"id": 1024988332
},
{
"city": "Sumqayıt",
"city_ascii": "Sumqayit",
"lat": 40.5917,
"lng": 49.6397,
"country": "Azerbaijan",
"iso2": "AZ",
"iso3": "AZE",
"admin_name": "Sumqayıt",
"capital": "admin",
"population": 341200.0,
"id": 1031630283
},
{
"city": "Baku",
"city_ascii": "Baku",
"lat": 40.3667,
"lng": 49.8352,
"country": "Azerbaijan",
"iso2": "AZ",
"iso3": "AZE",
"admin_name": "Bakı",
"capital": "primary",
"population": 2300500.0,
"id": 1031946365
},
{
"city": "Lanús",
"city_ascii": "Lanus",
"lat": -34.7,
"lng": -58.4,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Buenos Aires",
"capital": "minor",
"population": 459263.0,
"id": 1032009573
},
{
"city": "Comodoro Rivadavia",
"city_ascii": "Comodoro Rivadavia",
"lat": -45.8647,
"lng": -67.4808,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Chubut",
"capital": "minor",
"population": 730266.0,
"id": 1032042035
},
{
"city": "Corrientes",
"city_ascii": "Corrientes",
"lat": -27.4833,
"lng": -58.8167,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Corrientes",
"capital": "admin",
"population": 352646.0,
"id": 1032173097
},
{
"city": "San Miguel de Tucumán",
"city_ascii": "San Miguel de Tucuman",
"lat": -26.8167,
"lng": -65.2167,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Tucumán",
"capital": "admin",
"population": 605767.0,
"id": 1032233996
},
{
"city": "Mar del Plata",
"city_ascii": "Mar del Plata",
"lat": -38.0,
"lng": -57.55,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Buenos Aires",
"capital": "minor",
"population": 682605.0,
"id": 1032456103
},
{
"city": "Santiago del Estero",
"city_ascii": "Santiago del Estero",
"lat": -27.7833,
"lng": -64.2667,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Santiago del Estero",
"capital": "admin",
"population": 911506.0,
"id": 1032492280
},
{
"city": "Buenos Aires",
"city_ascii": "Buenos Aires",
"lat": -34.5997,
"lng": -58.3819,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Buenos Aires, Ciudad Autónoma de",
"capital": "primary",
"population": 16710000.0,
"id": 1032717330
},
{
"city": "Florencio Varela",
"city_ascii": "Florencio Varela",
"lat": -34.8167,
"lng": -58.2833,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Buenos Aires",
"capital": null,
"population": 426005.0,
"id": 1032730758
},
{
"city": "Rosario",
"city_ascii": "Rosario",
"lat": -32.9575,
"lng": -60.6394,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Santa Fe",
"capital": "minor",
"population": 1276000.0,
"id": 1032770677
},
{
"city": "Córdoba",
"city_ascii": "Cordoba",
"lat": -31.4167,
"lng": -64.1833,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Córdoba",
"capital": "admin",
"population": 1565112.0,
"id": 1032803249
},
{
"city": "Santa Fe",
"city_ascii": "Santa Fe",
"lat": -31.6333,
"lng": -60.7,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Santa Fe",
"capital": "admin",
"population": 405683.0,
"id": 1032817575
},
{
"city": "San Juan",
"city_ascii": "San Juan",
"lat": -31.5342,
"lng": -68.5261,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "San Juan",
"capital": "admin",
"population": 471389.0,
"id": 1032869625
},
{
"city": "Salta",
"city_ascii": "Salta",
"lat": -24.7833,
"lng": -65.4167,
"country": "Argentina",
"iso2": "AR",
"iso3": "ARG",
"admin_name": "Salta",
"capital": "admin",
"population": 535303.0,
"id": 1032926124
},
{
"city": "Central Coast",
"city_ascii": "Central Coast",
"lat": -33.3,
"lng": 151.2,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "New South Wales",
"capital": null,
"population": 346596.0,
"id": 1036067845
},
{
"city": "Sydney",
"city_ascii": "Sydney",
"lat": -33.8678,
"lng": 151.21,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "New South Wales",
"capital": "admin",
"population": 4840600.0,
"id": 1036074917
},
{
"city": "Canberra",
"city_ascii": "Canberra",
"lat": -35.2931,
"lng": 149.1269,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Australian Capital Territory",
"capital": "primary",
"population": 381488.0,
"id": 1036142029
},
{
"city": "Gold Coast",
"city_ascii": "Gold Coast",
"lat": -28.0167,
"lng": 153.4,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Queensland",
"capital": null,
"population": 638090.0,
"id": 1036153217
},
{
"city": "Perth",
"city_ascii": "Perth",
"lat": -31.9559,
"lng": 115.8606,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Western Australia",
"capital": "admin",
"population": 2141834.0,
"id": 1036178956
},
{
"city": "Brisbane",
"city_ascii": "Brisbane",
"lat": -27.4678,
"lng": 153.0281,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Queensland",
"capital": "admin",
"population": 2360241.0,
"id": 1036192929
},
{
"city": "Melbourne",
"city_ascii": "Melbourne",
"lat": -37.8142,
"lng": 144.9631,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Victoria",
"capital": "admin",
"population": 4529500.0,
"id": 1036533631
},
{
"city": "Adelaide",
"city_ascii": "Adelaide",
"lat": -34.9275,
"lng": 138.6,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "South Australia",
"capital": "admin",
"population": 1295714.0,
"id": 1036538171
},
{
"city": "Cranbourne",
"city_ascii": "Cranbourne",
"lat": -38.0996,
"lng": 145.2834,
"country": "Australia",
"iso2": "AU",
"iso3": "AUS",
"admin_name": "Victoria",
"capital": null,
"population": 460491.0,
"id": 1036685862
},
{
"city": "Vienna",
"city_ascii": "Vienna",
"lat": 48.2083,
"lng": 16.3725,
"country": "Austria",
"iso2": "AT",
"iso3": "AUT",
"admin_name": "Wien",
"capital": "primary",
"population": 1973403.0,
"id": 1040261752
},
{
"city": "Manama",
"city_ascii": "Manama",
"lat": 26.225,
"lng": 50.5775,
"country": "Bahrain",
"iso2": "BH",
"iso3": "BHR",
"admin_name": "Al ‘Āşimah",
"capital": "primary",
"population": 436000.0,
"id": 1048989486
},
{
"city": "Kushtia",
"city_ascii": "Kushtia",
"lat": 23.9101,
"lng": 89.1231,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Khulna",
"capital": null,
"population": 418312.0,
"id": 1050000610
},
{
"city": "Rangapukur",
"city_ascii": "Rangapukur",
"lat": 25.56,
"lng": 89.25,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Rangpur",
"capital": null,
"population": 1031388.0,
"id": 1050032005
},
{
"city": "Tungi",
"city_ascii": "Tungi",
"lat": 23.9,
"lng": 90.41,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": null,
"population": 350000.0,
"id": 1050143008
},
{
"city": "Farīdpur",
"city_ascii": "Faridpur",
"lat": 23.602,
"lng": 89.833,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": null,
"population": 557632.0,
"id": 1050187264
},
{
"city": "Mymensingh",
"city_ascii": "Mymensingh",
"lat": 24.7539,
"lng": 90.4031,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Mymensingh",
"capital": "admin",
"population": 576722.0,
"id": 1050399881
},
{
"city": "Nārāyanganj",
"city_ascii": "Narayanganj",
"lat": 23.62,
"lng": 90.5,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": null,
"population": 1572386.0,
"id": 1050424421
},
{
"city": "Gāzipura",
"city_ascii": "Gazipura",
"lat": 23.9889,
"lng": 90.375,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": null,
"population": 1199215.0,
"id": 1050449249
},
{
"city": "Dhaka",
"city_ascii": "Dhaka",
"lat": 23.7639,
"lng": 90.3889,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": "primary",
"population": 18627000.0,
"id": 1050529279
},
{
"city": "Rājshāhi",
"city_ascii": "Rajshahi",
"lat": 24.3667,
"lng": 88.6,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Rājshāhi",
"capital": "admin",
"population": 763580.0,
"id": 1050547831
},
{
"city": "Tāngāil",
"city_ascii": "Tangail",
"lat": 24.2644,
"lng": 89.9181,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Dhaka",
"capital": null,
"population": 392300.0,
"id": 1050628940
},
{
"city": "Sylhet",
"city_ascii": "Sylhet",
"lat": 24.9,
"lng": 91.8667,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Sylhet",
"capital": "admin",
"population": 479837.0,
"id": 1050646703
},
{
"city": "Khulna",
"city_ascii": "Khulna",
"lat": 22.8167,
"lng": 89.55,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Khulna",
"capital": "admin",
"population": 1400689.0,
"id": 1050667339
},
{
"city": "Chauddagram",
"city_ascii": "Chauddagram",
"lat": 23.2283,
"lng": 91.3133,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Chattogram",
"capital": null,
"population": 443648.0,
"id": 1050749168
},
{
"city": "Chattogram",
"city_ascii": "Chattogram",
"lat": 22.335,
"lng": 91.8325,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Chattogram",
"capital": "admin",
"population": 7000000.0,
"id": 1050830722
},
{
"city": "Barura",
"city_ascii": "Barura",
"lat": 23.375,
"lng": 91.0583,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Chattogram",
"capital": null,
"population": 473590.0,
"id": 1050831924
},
{
"city": "Bogra",
"city_ascii": "Bogra",
"lat": 24.85,
"lng": 89.3667,
"country": "Bangladesh",
"iso2": "BD",
"iso3": "BGD",
"admin_name": "Rājshāhi",
"capital": null,
"population": 400983.0,
"id": 1050833664
},
{
"city": "Yerevan",
"city_ascii": "Yerevan",
"lat": 40.1814,
"lng": 44.5144,
"country": "Armenia",
"iso2": "AM",
"iso3": "ARM",
"admin_name": "Yerevan",
"capital": "primary",
"population": 1075800.0,
"id": 1051074169
},
{
"city": "Antwerp",
"city_ascii": "Antwerp",
"lat": 51.2178,
"lng": 4.4003,
"country": "Belgium",
"iso2": "BE",
"iso3": "BEL",
"admin_name": "Flanders",
"capital": "minor",
"population": 529247.0,
"id": 1056168623
},
{
"city": "Brussels",
"city_ascii": "Brussels",
"lat": 50.8467,
"lng": 4.3525,
"country": "Belgium",
"iso2": "BE",
"iso3": "BEL",
"admin_name": "Brussels-Capital Region",
"capital": "primary",
"population": 1743000.0,
"id": 1056469830
},
{
"city": "La Paz",
"city_ascii": "La Paz",
"lat": -16.5,
"lng": -68.15,
"country": "Bolivia",
"iso2": "BO",
"iso3": "BOL",
"admin_name": "La Paz",
"capital": "primary",
"population": 2867504.0,
"id": 1068000064
},
{
"city": "El Alto",
"city_ascii": "El Alto",
"lat": -16.5047,
"lng": -68.1633,
"country": "Bolivia",
"iso2": "BO",
"iso3": "BOL",
"admin_name": "La Paz",
"capital": null,
"population": 943000.0,
"id": 1068007058
},
{
"city": "Santa Cruz",
"city_ascii": "Santa Cruz",
"lat": -17.7892,
"lng": -63.1975,
"country": "Bolivia",
"iso2": "BO",
"iso3": "BOL",
"admin_name": "Santa Cruz",
"capital": "admin",
"population": 3151676.0,
"id": 1068129363
},
{
"city": "Oruro",
"city_ascii": "Oruro",
"lat": -17.9667,
"lng": -67.1167,
"country": "Bolivia",
"iso2": "BO",
"iso3": "BOL",
"admin_name": "Oruro",
"capital": null,
"population": 351802.0,
"id": 1068626742
},
{
"city": "Cochabamba",
"city_ascii": "Cochabamba",
"lat": -17.3833,
"lng": -66.1667,
"country": "Bolivia",
"iso2": "BO",
"iso3": "BOL",
"admin_name": "Cochabamba",
"capital": "admin",
"population": 856198.0,
"id": 1068793894
},
{
"city": "Sarajevo",
"city_ascii": "Sarajevo",
"lat": 43.8564,
"lng": 18.4131,
"country": "Bosnia and Herzegovina",
"iso2": "BA",
"iso3": "BIH",
"admin_name": "Bosnia and Herzegovina, Federation of",
"capital": "primary",
"population": 419957.0,
"id": 1070966777
},
{
"city": "Jaboatão",
"city_ascii": "Jaboatao",
"lat": -8.1803,
"lng": -35.0014,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pernambuco",
"capital": null,
"population": 702621.0,
"id": 1076000699
},
{
"city": "Juiz de Fora",
"city_ascii": "Juiz de Fora",
"lat": -21.7619,
"lng": -43.3494,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 573285.0,
"id": 1076006144
},
{
"city": "Maringá",
"city_ascii": "Maringa",
"lat": -23.4,
"lng": -51.9167,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Paraná",
"capital": null,
"population": 403063.0,
"id": 1076013378
},
{
"city": "Ananindeua",
"city_ascii": "Ananindeua",
"lat": -1.3658,
"lng": -48.3719,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pará",
"capital": null,
"population": 540410.0,
"id": 1076025295
},
{
"city": "Santos",
"city_ascii": "Santos",
"lat": -23.9369,
"lng": -46.325,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 1897551.0,
"id": 1076033299
},
{
"city": "Goiânia",
"city_ascii": "Goiania",
"lat": -16.6667,
"lng": -49.25,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Goiás",
"capital": "admin",
"population": 1393575.0,
"id": 1076034054
},
{
"city": "Porto Velho",
"city_ascii": "Porto Velho",
"lat": -8.7619,
"lng": -63.9039,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rondônia",
"capital": "admin",
"population": 428527.0,
"id": 1076045591
},
{
"city": "Joinvile",
"city_ascii": "Joinvile",
"lat": -26.3204,
"lng": -48.8437,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Santa Catarina",
"capital": null,
"population": 515288.0,
"id": 1076050637
},
{
"city": "Cuiabá",
"city_ascii": "Cuiaba",
"lat": -15.5958,
"lng": -56.0969,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Mato Grosso",
"capital": "admin",
"population": 585367.0,
"id": 1076112309
},
{
"city": "Montes Claros",
"city_ascii": "Montes Claros",
"lat": -16.7306,
"lng": -43.8639,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 361915.0,
"id": 1076113275
},
{
"city": "Recife",
"city_ascii": "Recife",
"lat": -8.05,
"lng": -34.9,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pernambuco",
"capital": "admin",
"population": 1653461.0,
"id": 1076137337
},
{
"city": "Brasília",
"city_ascii": "Brasilia",
"lat": -15.7939,
"lng": -47.8828,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Distrito Federal",
"capital": "primary",
"population": 3039444.0,
"id": 1076144436
},
{
"city": "Campinas",
"city_ascii": "Campinas",
"lat": -22.9058,
"lng": -47.0608,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 1213792.0,
"id": 1076145766
},
{
"city": "Piracicaba",
"city_ascii": "Piracicaba",
"lat": -22.7253,
"lng": -47.6492,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 391449.0,
"id": 1076166252
},
{
"city": "Macapá",
"city_ascii": "Macapa",
"lat": 0.033,
"lng": -51.0653,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Amapá",
"capital": "admin",
"population": 512902.0,
"id": 1076189884
},
{
"city": "Florianópolis",
"city_ascii": "Florianopolis",
"lat": -27.6122,
"lng": -48.4853,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Santa Catarina",
"capital": "admin",
"population": 477798.0,
"id": 1076190259
},
{
"city": "Serra",
"city_ascii": "Serra",
"lat": -20.1289,
"lng": -40.3078,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Espírito Santo",
"capital": null,
"population": 485376.0,
"id": 1076191325
},
{
"city": "Anápolis",
"city_ascii": "Anapolis",
"lat": -16.3339,
"lng": -48.9519,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Goiás",
"capital": null,
"population": 366491.0,
"id": 1076208869
},
{
"city": "Campina Grande",
"city_ascii": "Campina Grande",
"lat": -7.2306,
"lng": -35.8811,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Paraíba",
"capital": null,
"population": 405072.0,
"id": 1076218697
},
{
"city": "Natal",
"city_ascii": "Natal",
"lat": -6.9838,
"lng": -60.2699,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Amazonas",
"capital": null,
"population": 980588.0,
"id": 1076336975
},
{
"city": "Iguaçu",
"city_ascii": "Iguacu",
"lat": -22.74,
"lng": -43.47,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio de Janeiro",
"capital": null,
"population": 844583.0,
"id": 1076339714
},
{
"city": "Vitória",
"city_ascii": "Vitoria",
"lat": -20.2889,
"lng": -40.3083,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Espírito Santo",
"capital": "admin",
"population": 355875.0,
"id": 1076376829
},
{
"city": "Rio Branco",
"city_ascii": "Rio Branco",
"lat": -9.9747,
"lng": -67.81,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Acre",
"capital": "admin",
"population": 413418.0,
"id": 1076391263
},
{
"city": "Caruaru",
"city_ascii": "Caruaru",
"lat": -8.2828,
"lng": -35.9758,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pernambuco",
"capital": null,
"population": 347088.0,
"id": 1076397475
},
{
"city": "Vila Velha",
"city_ascii": "Vila Velha",
"lat": -20.3364,
"lng": -40.2936,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Espírito Santo",
"capital": null,
"population": 472762.0,
"id": 1076404077
},
{
"city": "Abaeté",
"city_ascii": "Abaete",
"lat": -19.1583,
"lng": -45.4522,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 800000.0,
"id": 1076413528
},
{
"city": "Maceió",
"city_ascii": "Maceio",
"lat": -9.6658,
"lng": -35.735,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Alagoas",
"capital": "admin",
"population": 1025360.0,
"id": 1076440479
},
{
"city": "Mauá",
"city_ascii": "Maua",
"lat": -23.6678,
"lng": -46.4608,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 453286.0,
"id": 1076477498
},
{
"city": "Cariacica",
"city_ascii": "Cariacica",
"lat": -20.2639,
"lng": -40.42,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Espírito Santo",
"capital": null,
"population": 348738.0,
"id": 1076479479
},
{
"city": "São Gonçalo",
"city_ascii": "Sao Goncalo",
"lat": -22.8269,
"lng": -43.0539,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio de Janeiro",
"capital": null,
"population": 1077687.0,
"id": 1076485783
},
{
"city": "Uberlândia",
"city_ascii": "Uberlandia",
"lat": -18.9231,
"lng": -48.2886,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 604013.0,
"id": 1076495001
},
{
"city": "Niterói",
"city_ascii": "Niteroi",
"lat": -22.8833,
"lng": -43.1036,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio de Janeiro",
"capital": null,
"population": 496696.0,
"id": 1076501425
},
{
"city": "Ribeirão Prêto",
"city_ascii": "Ribeirao Preto",
"lat": -21.1783,
"lng": -47.8067,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 711825.0,
"id": 1076524478
},
{
"city": "Aracaju",
"city_ascii": "Aracaju",
"lat": -10.9167,
"lng": -37.05,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Sergipe",
"capital": "admin",
"population": 632744.0,
"id": 1076527830
},
{
"city": "São Paulo",
"city_ascii": "Sao Paulo",
"lat": -23.55,
"lng": -46.6333,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": "admin",
"population": 23086000.0,
"id": 1076532519
},
{
"city": "Fortaleza",
"city_ascii": "Fortaleza",
"lat": -3.7275,
"lng": -38.5275,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Ceará",
"capital": "admin",
"population": 2452185.0,
"id": 1076567885
},
{
"city": "Vila Velha",
"city_ascii": "Vila Velha",
"lat": 3.2167,
"lng": -51.2167,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Amapá",
"capital": null,
"population": 1209091.0,
"id": 1076575691
},
{
"city": "Campos",
"city_ascii": "Campos",
"lat": -21.7539,
"lng": -41.3239,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio de Janeiro",
"capital": null,
"population": 463731.0,
"id": 1076606365
},
{
"city": "Manaus",
"city_ascii": "Manaus",
"lat": -3.1,
"lng": -60.0167,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Amazonas",
"capital": "admin",
"population": 2219580.0,
"id": 1076607274
},
{
"city": "Blumenau",
"city_ascii": "Blumenau",
"lat": -26.9333,
"lng": -49.05,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Santa Catarina",
"capital": null,
"population": 361855.0,
"id": 1076618665
},
{
"city": "Boa Vista",
"city_ascii": "Boa Vista",
"lat": 2.8194,
"lng": -60.6714,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Roraima",
"capital": "admin",
"population": 419652.0,
"id": 1076621300
},
{
"city": "Santo André",
"city_ascii": "Santo Andre",
"lat": -23.6572,
"lng": -46.5333,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 721368.0,
"id": 1076625886
},
{
"city": "Belém",
"city_ascii": "Belem",
"lat": -1.4558,
"lng": -48.5039,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pará",
"capital": "admin",
"population": 1499641.0,
"id": 1076646823
},
{
"city": "Porto Alegre",
"city_ascii": "Porto Alegre",
"lat": -30.0331,
"lng": -51.23,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio Grande do Sul",
"capital": "admin",
"population": 1484941.0,
"id": 1076658221
},
{
"city": "Campo Grande",
"city_ascii": "Campo Grande",
"lat": -20.4839,
"lng": -54.615,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Mato Grosso do Sul",
"capital": "admin",
"population": 906092.0,
"id": 1076660445
},
{
"city": "Natal",
"city_ascii": "Natal",
"lat": -5.7833,
"lng": -35.2,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio Grande do Norte",
"capital": "admin",
"population": 877662.0,
"id": 1076697777
},
{
"city": "Curitiba",
"city_ascii": "Curitiba",
"lat": -25.4297,
"lng": -49.2711,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Paraná",
"capital": "admin",
"population": 1879355.0,
"id": 1076701712
},
{
"city": "Londrina",
"city_ascii": "Londrina",
"lat": -23.31,
"lng": -51.1628,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Paraná",
"capital": null,
"population": 548249.0,
"id": 1076723241
},
{
"city": "Teresina",
"city_ascii": "Teresina",
"lat": -5.0949,
"lng": -42.8042,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Piauí",
"capital": "admin",
"population": 953172.0,
"id": 1076727667
},
{
"city": "Guarulhos",
"city_ascii": "Guarulhos",
"lat": -23.4628,
"lng": -46.5328,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 1324781.0,
"id": 1076730420
},
{
"city": "Franca",
"city_ascii": "Franca",
"lat": -20.5389,
"lng": -47.4008,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 358539.0,
"id": 1076740256
},
{
"city": "Sorocaba",
"city_ascii": "Sorocaba",
"lat": -23.5017,
"lng": -47.4581,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 644919.0,
"id": 1076758708
},
{
"city": "São José do Rio Prêto",
"city_ascii": "Sao Jose do Rio Preto",
"lat": -20.8081,
"lng": -49.3811,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 469173.0,
"id": 1076760827
},
{
"city": "São José dos Campos",
"city_ascii": "Sao Jose dos Campos",
"lat": -23.1789,
"lng": -45.8869,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 729737.0,
"id": 1076783887
},
{
"city": "Olinda",
"city_ascii": "Olinda",
"lat": -8.0,
"lng": -34.8833,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Pernambuco",
"capital": null,
"population": 393115.0,
"id": 1076784718
},
{
"city": "Osasco",
"city_ascii": "Osasco",
"lat": -23.5328,
"lng": -46.7919,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 694844.0,
"id": 1076786452
},
{
"city": "São Bernardo do Campo",
"city_ascii": "Sao Bernardo do Campo",
"lat": -23.7,
"lng": -46.55,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 816925.0,
"id": 1076793227
},
{
"city": "Caxias do Sul",
"city_ascii": "Caxias do Sul",
"lat": -29.1667,
"lng": -51.1833,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio Grande do Sul",
"capital": null,
"population": 435564.0,
"id": 1076809957
},
{
"city": "Vitória da Conquista",
"city_ascii": "Vitoria da Conquista",
"lat": -14.8658,
"lng": -40.8389,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Bahia",
"capital": null,
"population": 343230.0,
"id": 1076812020
},
{
"city": "São Luís",
"city_ascii": "Sao Luis",
"lat": -2.5283,
"lng": -44.3044,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Maranhão",
"capital": "admin",
"population": 1108975.0,
"id": 1076819308
},
{
"city": "Contagem",
"city_ascii": "Contagem",
"lat": -19.9319,
"lng": -44.0539,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 648766.0,
"id": 1076845191
},
{
"city": "São Vicente",
"city_ascii": "Sao Vicente",
"lat": -23.9633,
"lng": -46.3922,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 355542.0,
"id": 1076857089
},
{
"city": "Mogi das Cruzes",
"city_ascii": "Mogi das Cruzes",
"lat": -23.5228,
"lng": -46.1878,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 450785.0,
"id": 1076857883
},
{
"city": "Diadema",
"city_ascii": "Diadema",
"lat": -23.6861,
"lng": -46.6106,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 426757.0,
"id": 1076867279
},
{
"city": "Caucaia",
"city_ascii": "Caucaia",
"lat": -3.7167,
"lng": -38.65,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Ceará",
"capital": null,
"population": 368918.0,
"id": 1076870058
},
{
"city": "Carapicuíba",
"city_ascii": "Carapicuiba",
"lat": -23.5192,
"lng": -46.8358,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 403183.0,
"id": 1076874103
},
{
"city": "Rio de Janeiro",
"city_ascii": "Rio de Janeiro",
"lat": -22.9111,
"lng": -43.2056,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Rio de Janeiro",
"capital": "admin",
"population": 12592000.0,
"id": 1076887657
},
{
"city": "Feira de Santana",
"city_ascii": "Feira de Santana",
"lat": -12.25,
"lng": -38.95,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Bahia",
"capital": null,
"population": 617528.0,
"id": 1076892244
},
{
"city": "Bauru",
"city_ascii": "Bauru",
"lat": -22.315,
"lng": -49.0608,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 366992.0,
"id": 1076905338
},
{
"city": "João Pessoa",
"city_ascii": "Joao Pessoa",
"lat": -7.12,
"lng": -34.88,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Paraíba",
"capital": "admin",
"population": 801718.0,
"id": 1076922014
},
{
"city": "Salvador",
"city_ascii": "Salvador",
"lat": -12.9747,
"lng": -38.4767,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Bahia",
"capital": "admin",
"population": 2886698.0,
"id": 1076923789
},
{
"city": "Itaquaquecetuba",
"city_ascii": "Itaquaquecetuba",
"lat": -23.4864,
"lng": -46.3486,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 352801.0,
"id": 1076942224
},
{
"city": "Betim",
"city_ascii": "Betim",
"lat": -19.9678,
"lng": -44.1978,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": null,
"population": 378089.0,
"id": 1076953384
},
{
"city": "Belo Horizonte",
"city_ascii": "Belo Horizonte",
"lat": -19.9167,
"lng": -43.9333,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "Minas Gerais",
"capital": "admin",
"population": 5328000.0,
"id": 1076967355
},
{
"city": "Jundiaí",
"city_ascii": "Jundiai",
"lat": -23.1858,
"lng": -46.8839,
"country": "Brazil",
"iso2": "BR",
"iso3": "BRA",
"admin_name": "São Paulo",
"capital": null,
"population": 401896.0,
"id": 1076998392
},
{
"city": "Plovdiv",
"city_ascii": "Plovdiv",
"lat": 42.15,
"lng": 24.75,
"country": "Bulgaria",
"iso2": "BG",
"iso3": "BGR",
"admin_name": "Plovdiv",
"capital": "admin",
"population": 383540.0,
"id": 1100436706
},
{
"city": "Sofia",
"city_ascii": "Sofia",
"lat": 42.7,
"lng": 23.33,
"country": "Bulgaria",
"iso2": "BG",
"iso3": "BGR",
"admin_name": "Sofia-Grad",
"capital": "primary",
"population": 1547779.0,
"id": 1100762037
},
{
"city": "Varna",
"city_ascii": "Varna",
"lat": 43.2167,
"lng": 27.9167,
"country": "Bulgaria",
"iso2": "BG",
"iso3": "BGR",
"admin_name": "Varna",
"capital": "admin",
"population": 348668.0,
"id": 1100789115
},
{
"city": "Maungdaw",
"city_ascii": "Maungdaw",
"lat": 20.8167,
"lng": 92.3667,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Rakhine State",
"capital": null,
"population": 400000.0,
"id": 1104000431
},
{
"city": "Taunggyi",
"city_ascii": "Taunggyi",
"lat": 20.7836,
"lng": 97.0354,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Shan State",
"capital": "admin",
"population": 381639.0,
"id": 1104364374
},
{
"city": "Mandalay",
"city_ascii": "Mandalay",
"lat": 21.9831,
"lng": 96.0844,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Mandalay",
"capital": "admin",
"population": 1319452.0,
"id": 1104468217
},
{
"city": "Hpa-An",
"city_ascii": "Hpa-An",
"lat": 16.8906,
"lng": 97.6333,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Kayin State",
"capital": "admin",
"population": 421525.0,
"id": 1104494124
},
{
"city": "Rangoon",
"city_ascii": "Rangoon",
"lat": 16.795,
"lng": 96.16,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Yangon",
"capital": "primary",
"population": 5209541.0,
"id": 1104616656
},
{
"city": "Kyaukse",
"city_ascii": "Kyaukse",
"lat": 21.6131,
"lng": 96.1303,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Mandalay",
"capital": null,
"population": 741071.0,
"id": 1104814217
},
{
"city": "Nay Pyi Taw",
"city_ascii": "Nay Pyi Taw",
"lat": 19.7475,
"lng": 96.115,
"country": "Myanmar",
"iso2": "MM",
"iso3": "MMR",
"admin_name": "Nay Pyi Taw",
"capital": "primary",
"population": 1160242.0,
"id": 1104838105
},
{
"city": "Bujumbura",
"city_ascii": "Bujumbura",
"lat": -3.3833,
"lng": 29.3667,
"country": "Burundi",
"iso2": "BI",
"iso3": "BDI",
"admin_name": "Bujumbura Mairie",
"capital": "primary",
"population": 1075000.0,
"id": 1108101689
},
{
"city": "Hrodna",
"city_ascii": "Hrodna",
"lat": 53.6667,
"lng": 23.8333,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Hrodzyenskaya Voblasts’",
"capital": "admin",
"population": 357493.0,
"id": 1112187197
},
{
"city": "Minsk",
"city_ascii": "Minsk",
"lat": 53.9,
"lng": 27.5667,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Minsk",
"capital": "primary",
"population": 2009786.0,
"id": 1112348503
},
{
"city": "Vitsyebsk",
"city_ascii": "Vitsyebsk",
"lat": 55.1917,
"lng": 30.2056,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Vitsyebskaya Voblasts’",
"capital": "admin",
"population": 366299.0,
"id": 1112480679
},
{
"city": "Mahilyow",
"city_ascii": "Mahilyow",
"lat": 53.9167,
"lng": 30.35,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Mahilyowskaya Voblasts’",
"capital": "admin",
"population": 357100.0,
"id": 1112518993
},
{
"city": "Homyel’",
"city_ascii": "Homyel'",
"lat": 52.4453,
"lng": 30.9842,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Homyel’skaya Voblasts’",
"capital": "admin",
"population": 510300.0,
"id": 1112580227
},
{
"city": "Brest",
"city_ascii": "Brest",
"lat": 52.1347,
"lng": 23.6569,
"country": "Belarus",
"iso2": "BY",
"iso3": "BLR",
"admin_name": "Brestskaya Voblasts’",
"capital": "admin",
"population": 340723.0,
"id": 1112896927
},
{
"city": "Phnom Penh",
"city_ascii": "Phnom Penh",
"lat": 11.5694,
"lng": 104.9211,
"country": "Cambodia",
"iso2": "KH",
"iso3": "KHM",
"admin_name": "Phnom Penh",
"capital": "primary",
"population": 2129371.0,
"id": 1116260534
},
{
"city": "Yaoundé",
"city_ascii": "Yaounde",
"lat": 3.8667,
"lng": 11.5167,
"country": "Cameroon",
"iso2": "CM",
"iso3": "CMR",
"admin_name": "Centre",
"capital": "primary",
"population": 2440462.0,
"id": 1120298240
},
{
"city": "Bafoussam",
"city_ascii": "Bafoussam",
"lat": 5.4667,
"lng": 10.4167,
"country": "Cameroon",
"iso2": "CM",
"iso3": "CMR",
"admin_name": "Ouest",
"capital": "admin",
"population": 1146000.0,
"id": 1120435460
},
{
"city": "Douala",
"city_ascii": "Douala",
"lat": 4.05,
"lng": 9.7,
"country": "Cameroon",
"iso2": "CM",
"iso3": "CMR",
"admin_name": "Littoral",
"capital": "admin",
"population": 5768400.0,
"id": 1120494607
},
{
"city": "Garoua",
"city_ascii": "Garoua",
"lat": 9.3,
"lng": 13.4,
"country": "Cameroon",
"iso2": "CM",
"iso3": "CMR",
"admin_name": "Nord",
"capital": "admin",
"population": 600000.0,
"id": 1120803808
},
{
"city": "Bamenda",
"city_ascii": "Bamenda",
"lat": 5.9614,
"lng": 10.1517,
"country": "Cameroon",
"iso2": "CM",
"iso3": "CMR",
"admin_name": "North-West",
"capital": "admin",
"population": 2000000.0,
"id": 1120909610
},
{
"city": "Surrey",
"city_ascii": "Surrey",
"lat": 49.19,
"lng": -122.8489,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "British Columbia",
"capital": null,
"population": 517887.0,
"id": 1124001454
},
{
"city": "Mississauga",
"city_ascii": "Mississauga",
"lat": 43.6,
"lng": -79.65,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": null,
"population": 721599.0,
"id": 1124112672
},
{
"city": "Halifax",
"city_ascii": "Halifax",
"lat": 44.6475,
"lng": -63.5906,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Nova Scotia",
"capital": "admin",
"population": 403131.0,
"id": 1124130981
},
{
"city": "Kitchener",
"city_ascii": "Kitchener",
"lat": 43.4186,
"lng": -80.4728,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": null,
"population": 470015.0,
"id": 1124158530
},
{
"city": "Winnipeg",
"city_ascii": "Winnipeg",
"lat": 49.8844,
"lng": -97.1464,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Manitoba",
"capital": "admin",
"population": 705244.0,
"id": 1124224963
},
{
"city": "Toronto",
"city_ascii": "Toronto",
"lat": 43.7417,
"lng": -79.3733,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": "admin",
"population": 5429524.0,
"id": 1124279679
},
{
"city": "Edmonton",
"city_ascii": "Edmonton",
"lat": 53.5344,
"lng": -113.4903,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Alberta",
"capital": "admin",
"population": 1062643.0,
"id": 1124290735
},
{
"city": "Ottawa",
"city_ascii": "Ottawa",
"lat": 45.4247,
"lng": -75.695,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": "primary",
"population": 989567.0,
"id": 1124399363
},
{
"city": "London",
"city_ascii": "London",
"lat": 42.9836,
"lng": -81.2497,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": null,
"population": 383822.0,
"id": 1124469960
},
{
"city": "Hamilton",
"city_ascii": "Hamilton",
"lat": 43.2567,
"lng": -79.8692,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": null,
"population": 693645.0,
"id": 1124567288
},
{
"city": "Montréal",
"city_ascii": "Montreal",
"lat": 45.5089,
"lng": -73.5617,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Quebec",
"capital": null,
"population": 3519595.0,
"id": 1124586170
},
{
"city": "Brampton",
"city_ascii": "Brampton",
"lat": 43.6833,
"lng": -79.7667,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Ontario",
"capital": null,
"population": 593638.0,
"id": 1124625989
},
{
"city": "Calgary",
"city_ascii": "Calgary",
"lat": 51.05,
"lng": -114.0667,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Alberta",
"capital": null,
"population": 1239220.0,
"id": 1124690423
},
{
"city": "Quebec City",
"city_ascii": "Quebec City",
"lat": 46.8139,
"lng": -71.2081,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Quebec",
"capital": "admin",
"population": 705103.0,
"id": 1124823933
},
{
"city": "Vancouver",
"city_ascii": "Vancouver",
"lat": 49.25,
"lng": -123.1,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "British Columbia",
"capital": null,
"population": 2264823.0,
"id": 1124825478
},
{
"city": "Laval",
"city_ascii": "Laval",
"lat": 45.5833,
"lng": -73.75,
"country": "Canada",
"iso2": "CA",
"iso3": "CAN",
"admin_name": "Quebec",
"capital": null,
"population": 422993.0,
"id": 1124922301
},
{
"city": "Bangui",
"city_ascii": "Bangui",
"lat": 4.3733,
"lng": 18.5628,
"country": "Central African Republic",
"iso2": "CF",
"iso3": "CAF",
"admin_name": "Bangui",
"capital": "primary",
"population": 889231.0,
"id": 1140080881
},
{
"city": "Colombo",
"city_ascii": "Colombo",
"lat": 6.9344,
"lng": 79.8428,
"country": "Sri Lanka",
"iso2": "LK",
"iso3": "LKA",
"admin_name": "Western",
"capital": "primary",
"population": 2323826.0,
"id": 1144251314
},
{
"city": "N’Djamena",
"city_ascii": "N'Djamena",
"lat": 12.11,
"lng": 15.05,
"country": "Chad",
"iso2": "TD",
"iso3": "TCD",
"admin_name": "N’Djamena",
"capital": "primary",
"population": 1092066.0,
"id": 1148708596
},
{
"city": "Puente Alto",
"city_ascii": "Puente Alto",
"lat": -33.6167,
"lng": -70.5667,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Región Metropolitana",
"capital": "minor",
"population": 573935.0,
"id": 1152516346
},
{
"city": "Santiago",
"city_ascii": "Santiago",
"lat": -33.4372,
"lng": -70.6506,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Región Metropolitana",
"capital": "primary",
"population": 7171000.0,
"id": 1152554349
},
{
"city": "Maipú",
"city_ascii": "Maipu",
"lat": -33.5167,
"lng": -70.7667,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Región Metropolitana",
"capital": null,
"population": 521627.0,
"id": 1152583016
},
{
"city": "Antofagasta",
"city_ascii": "Antofagasta",
"lat": -23.65,
"lng": -70.4,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Antofagasta",
"capital": "admin",
"population": 348517.0,
"id": 1152734289
},
{
"city": "Concepción",
"city_ascii": "Concepcion",
"lat": -36.8282,
"lng": -73.0514,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Biobío",
"capital": "admin",
"population": 719944.0,
"id": 1152838958
},
{
"city": "La Florida",
"city_ascii": "La Florida",
"lat": -33.5333,
"lng": -70.5833,
"country": "Chile",
"iso2": "CL",
"iso3": "CHL",
"admin_name": "Región Metropolitana",
"capital": null,
"population": 366916.0,
"id": 1152939649
},
{
"city": "Cencheng",
"city_ascii": "Cencheng",
"lat": 22.9297,
"lng": 111.0186,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 772113.0,
"id": 1156000460
},
{
"city": "Yongji",
"city_ascii": "Yongji",
"lat": 34.867,
"lng": 110.4417,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 444724.0,
"id": 1156001205
},
{
"city": "Xiaoganzhan",
"city_ascii": "Xiaoganzhan",
"lat": 30.9273,
"lng": 113.911,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 4921000.0,
"id": 1156002290
},
{
"city": "Lengshuijiang",
"city_ascii": "Lengshuijiang",
"lat": 27.6858,
"lng": 111.4279,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 370300.0,
"id": 1156002852
},
{
"city": "Liaocheng",
"city_ascii": "Liaocheng",
"lat": 36.45,
"lng": 115.9833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 5952128.0,
"id": 1156006600
},
{
"city": "Yatou",
"city_ascii": "Yatou",
"lat": 37.1653,
"lng": 122.4867,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 714211.0,
"id": 1156009046
},
{
"city": "Loudi",
"city_ascii": "Loudi",
"lat": 27.7378,
"lng": 111.9974,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 3931800.0,
"id": 1156010654
},
{
"city": "Changsha",
"city_ascii": "Changsha",
"lat": 22.3762,
"lng": 112.6877,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 717700.0,
"id": 1156011120
},
{
"city": "Yingcheng",
"city_ascii": "Yingcheng",
"lat": 24.1878,
"lng": 113.4042,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 986400.0,
"id": 1156012356
},
{
"city": "Longyan",
"city_ascii": "Longyan",
"lat": 25.0881,
"lng": 117.0244,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2723637.0,
"id": 1156012979
},
{
"city": "Heshan",
"city_ascii": "Heshan",
"lat": 22.7697,
"lng": 112.9578,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 516500.0,
"id": 1156013872
},
{
"city": "Wancheng",
"city_ascii": "Wancheng",
"lat": 18.8,
"lng": 110.4,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "minor",
"population": 578600.0,
"id": 1156017483
},
{
"city": "Kaihua",
"city_ascii": "Kaihua",
"lat": 23.3715,
"lng": 104.2437,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 481505.0,
"id": 1156017759
},
{
"city": "Botou",
"city_ascii": "Botou",
"lat": 38.074,
"lng": 116.57,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 584308.0,
"id": 1156018338
},
{
"city": "Huadian",
"city_ascii": "Huadian",
"lat": 42.9633,
"lng": 126.7478,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 455339.0,
"id": 1156018839
},
{
"city": "Bijie",
"city_ascii": "Bijie",
"lat": 27.3019,
"lng": 105.2863,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 6899636.0,
"id": 1156018927
},
{
"city": "Wuxi",
"city_ascii": "Wuxi",
"lat": 31.5667,
"lng": 120.2833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 3245179.0,
"id": 1156019650
},
{
"city": "Lianzhou",
"city_ascii": "Lianzhou",
"lat": 24.7868,
"lng": 112.3735,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 384700.0,
"id": 1156020454
},
{
"city": "Meishan",
"city_ascii": "Meishan",
"lat": 34.1736,
"lng": 112.839,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 936000.0,
"id": 1156023073
},
{
"city": "Zigong",
"city_ascii": "Zigong",
"lat": 29.3498,
"lng": 104.7645,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": null,
"population": 2678899.0,
"id": 1156023354
},
{
"city": "Sanzhou",
"city_ascii": "Sanzhou",
"lat": 30.82,
"lng": 108.4,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Chongqing",
"capital": null,
"population": 1680000.0,
"id": 1156025536
},
{
"city": "Wuxue",
"city_ascii": "Wuxue",
"lat": 29.8518,
"lng": 115.5539,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 644247.0,
"id": 1156027100
},
{
"city": "Suzhou",
"city_ascii": "Suzhou",
"lat": 31.3,
"lng": 120.6194,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 4330000.0,
"id": 1156029196
},
{
"city": "Shanhu",
"city_ascii": "Shanhu",
"lat": 29.5908,
"lng": 120.8176,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 679762.0,
"id": 1156029691
},
{
"city": "Qinbaling",
"city_ascii": "Qinbaling",
"lat": 35.7278,
"lng": 107.64,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": null,
"population": 2211191.0,
"id": 1156032582
},
{
"city": "Baotou",
"city_ascii": "Baotou",
"lat": 40.6562,
"lng": 109.8345,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": null,
"population": 2709378.0,
"id": 1156032751
},
{
"city": "Rizhao",
"city_ascii": "Rizhao",
"lat": 35.4164,
"lng": 119.4331,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 2968365.0,
"id": 1156032841
},
{
"city": "Jingcheng",
"city_ascii": "Jingcheng",
"lat": 32.0058,
"lng": 120.2547,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 684360.0,
"id": 1156033208
},
{
"city": "Jiangyin",
"city_ascii": "Jiangyin",
"lat": 31.9087,
"lng": 120.2653,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 1285785.0,
"id": 1156033234
},
{
"city": "Qingping",
"city_ascii": "Qingping",
"lat": 34.538,
"lng": 113.3796,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 797200.0,
"id": 1156033855
},
{
"city": "Longjiang",
"city_ascii": "Longjiang",
"lat": 27.582,
"lng": 120.5488,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 464695.0,
"id": 1156034166
},
{
"city": "Xinpu",
"city_ascii": "Xinpu",
"lat": 34.5906,
"lng": 119.1801,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 4599360.0,
"id": 1156035381
},
{
"city": "Huichang",
"city_ascii": "Huichang",
"lat": 34.9136,
"lng": 112.7852,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 367113.0,
"id": 1156035769
},
{
"city": "Chuzhou",
"city_ascii": "Chuzhou",
"lat": 32.3062,
"lng": 118.3115,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 3987054.0,
"id": 1156036420
},
{
"city": "Jingdezhen",
"city_ascii": "Jingdezhen",
"lat": 29.2942,
"lng": 117.2036,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 1673200.0,
"id": 1156038165
},
{
"city": "Hongjiang",
"city_ascii": "Hongjiang",
"lat": 27.1167,
"lng": 109.95,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 498100.0,
"id": 1156039152
},
{
"city": "Hengzhou",
"city_ascii": "Hengzhou",
"lat": 22.6896,
"lng": 109.2674,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 908400.0,
"id": 1156041202
},
{
"city": "Zhuzhou",
"city_ascii": "Zhuzhou",
"lat": 27.8407,
"lng": 113.1469,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 4020800.0,
"id": 1156041962
},
{
"city": "Linxia Chengguanzhen",
"city_ascii": "Linxia Chengguanzhen",
"lat": 35.6,
"lng": 103.2167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 355968.0,
"id": 1156043522
},
{
"city": "Leling",
"city_ascii": "Leling",
"lat": 37.7333,
"lng": 117.2167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 689867.0,
"id": 1156044041
},
{
"city": "Lincang",
"city_ascii": "Lincang",
"lat": 23.8864,
"lng": 100.0871,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 2536000.0,
"id": 1156044130
},
{
"city": "Zhuozhou",
"city_ascii": "Zhuozhou",
"lat": 39.4887,
"lng": 115.9918,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 603535.0,
"id": 1156045160
},
{
"city": "Nantong",
"city_ascii": "Nantong",
"lat": 31.9829,
"lng": 120.8873,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 2261382.0,
"id": 1156045365
},
{
"city": "Puxi",
"city_ascii": "Puxi",
"lat": 35.2125,
"lng": 114.735,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 809535.0,
"id": 1156046618
},
{
"city": "Lianshan",
"city_ascii": "Lianshan",
"lat": 40.7523,
"lng": 120.828,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 2426000.0,
"id": 1156046704
},
{
"city": "Xushan",
"city_ascii": "Xushan",
"lat": 30.1697,
"lng": 121.2665,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1502000.0,
"id": 1156046916
},
{
"city": "Yan’an Beilu",
"city_ascii": "Yan'an Beilu",
"lat": 44.0144,
"lng": 87.2674,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 426253.0,
"id": 1156048097
},
{
"city": "Ürümqi",
"city_ascii": "Urumqi",
"lat": 43.8225,
"lng": 87.6125,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "admin",
"population": 4335017.0,
"id": 1156051276
},
{
"city": "Shuyangzha",
"city_ascii": "Shuyangzha",
"lat": 34.1299,
"lng": 118.7734,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 1770000.0,
"id": 1156051957
},
{
"city": "Wenling",
"city_ascii": "Wenling",
"lat": 28.3797,
"lng": 121.3718,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 1416199.0,
"id": 1156052493
},
{
"city": "Haicheng",
"city_ascii": "Haicheng",
"lat": 40.8523,
"lng": 122.7474,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 1293877.0,
"id": 1156052713
},
{
"city": "Yunfu",
"city_ascii": "Yunfu",
"lat": 22.9242,
"lng": 112.0353,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2526900.0,
"id": 1156057251
},
{
"city": "Leiyang",
"city_ascii": "Leiyang",
"lat": 26.4179,
"lng": 112.8457,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1151554.0,
"id": 1156057789
},
{
"city": "Changzhi",
"city_ascii": "Changzhi",
"lat": 36.1953,
"lng": 113.097,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 3334565.0,
"id": 1156057944
},
{
"city": "Dunhua",
"city_ascii": "Dunhua",
"lat": 43.3667,
"lng": 128.2333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 483811.0,
"id": 1156058709
},
{
"city": "Wudalianchi",
"city_ascii": "Wudalianchi",
"lat": 48.6433,
"lng": 126.1408,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 360000.0,
"id": 1156059331
},
{
"city": "Jingling",
"city_ascii": "Jingling",
"lat": 30.6667,
"lng": 113.1667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 1247400.0,
"id": 1156060544
},
{
"city": "Siping",
"city_ascii": "Siping",
"lat": 43.1715,
"lng": 124.3644,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 3385156.0,
"id": 1156063295
},
{
"city": "Ghulja",
"city_ascii": "Ghulja",
"lat": 43.9,
"lng": 81.35,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 542507.0,
"id": 1156064979
},
{
"city": "Pingxiang",
"city_ascii": "Pingxiang",
"lat": 27.6333,
"lng": 113.85,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 1933200.0,
"id": 1156066465
},
{
"city": "Luoyang",
"city_ascii": "Luoyang",
"lat": 34.6587,
"lng": 112.4245,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 2372571.0,
"id": 1156069315
},
{
"city": "Zhangjiajie",
"city_ascii": "Zhangjiajie",
"lat": 29.1255,
"lng": 110.4844,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1537900.0,
"id": 1156072884
},
{
"city": "Shanghai",
"city_ascii": "Shanghai",
"lat": 31.1667,
"lng": 121.4667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanghai",
"capital": "admin",
"population": 24073000.0,
"id": 1156073548
},
{
"city": "Shishi",
"city_ascii": "Shishi",
"lat": 24.7355,
"lng": 118.6434,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 693000.0,
"id": 1156077046
},
{
"city": "Zhugang",
"city_ascii": "Zhugang",
"lat": 28.1277,
"lng": 121.2288,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 616346.0,
"id": 1156077330
},
{
"city": "Yiwu",
"city_ascii": "Yiwu",
"lat": 29.3081,
"lng": 120.0698,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1234015.0,
"id": 1156078044
},
{
"city": "Changchun",
"city_ascii": "Changchun",
"lat": 43.9,
"lng": 125.2,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "admin",
"population": 4408154.0,
"id": 1156078103
},
{
"city": "Xiashi",
"city_ascii": "Xiashi",
"lat": 30.5333,
"lng": 120.6833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1076199.0,
"id": 1156080077
},
{
"city": "Linghai",
"city_ascii": "Linghai",
"lat": 41.1676,
"lng": 121.3558,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 412513.0,
"id": 1156081300
},
{
"city": "Xining",
"city_ascii": "Xining",
"lat": 36.6239,
"lng": 101.7787,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Qinghai",
"capital": "admin",
"population": 2467965.0,
"id": 1156081448
},
{
"city": "Kaiyuan",
"city_ascii": "Kaiyuan",
"lat": 42.538,
"lng": 124.0371,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 545624.0,
"id": 1156081841
},
{
"city": "Beian",
"city_ascii": "Beian",
"lat": 48.2395,
"lng": 126.5037,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 470000.0,
"id": 1156084414
},
{
"city": "Guangyuan",
"city_ascii": "Guangyuan",
"lat": 32.4353,
"lng": 105.8398,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": null,
"population": 2484122.0,
"id": 1156084562
},
{
"city": "Duyun",
"city_ascii": "Duyun",
"lat": 26.2672,
"lng": 107.5143,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 493574.0,
"id": 1156084618
},
{
"city": "Linyi",
"city_ascii": "Linyi",
"lat": 35.1041,
"lng": 118.3502,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 11018365.0,
"id": 1156086320
},
{
"city": "Zijinglu",
"city_ascii": "Zijinglu",
"lat": 34.7513,
"lng": 112.9854,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 807857.0,
"id": 1156086381
},
{
"city": "Wugang",
"city_ascii": "Wugang",
"lat": 26.7345,
"lng": 110.6293,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 734870.0,
"id": 1156089788
},
{
"city": "Tieling",
"city_ascii": "Tieling",
"lat": 42.2841,
"lng": 123.8365,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 2717732.0,
"id": 1156089994
},
{
"city": "Qinhuangdao",
"city_ascii": "Qinhuangdao",
"lat": 39.9398,
"lng": 119.5881,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 3146300.0,
"id": 1156091093
},
{
"city": "Shangzhou",
"city_ascii": "Shangzhou",
"lat": 33.868,
"lng": 109.9244,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 2341742.0,
"id": 1156091241
},
{
"city": "Luanzhou",
"city_ascii": "Luanzhou",
"lat": 39.7396,
"lng": 118.6978,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 554315.0,
"id": 1156092104
},
{
"city": "Tai’an",
"city_ascii": "Tai'an",
"lat": 36.2001,
"lng": 117.0809,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 5494207.0,
"id": 1156095188
},
{
"city": "Dengtacun",
"city_ascii": "Dengtacun",
"lat": 41.4237,
"lng": 123.3203,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 496122.0,
"id": 1156096868
},
{
"city": "Benxi",
"city_ascii": "Benxi",
"lat": 41.292,
"lng": 123.761,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 1709538.0,
"id": 1156097909
},
{
"city": "Baojishi",
"city_ascii": "Baojishi",
"lat": 34.3609,
"lng": 107.1751,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 3738700.0,
"id": 1156101096
},
{
"city": "Rongcheng",
"city_ascii": "Rongcheng",
"lat": 29.8239,
"lng": 112.9019,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 1162770.0,
"id": 1156102432
},
{
"city": "Puyang Chengguanzhen",
"city_ascii": "Puyang Chengguanzhen",
"lat": 35.7004,
"lng": 114.98,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 666322.0,
"id": 1156103317
},
{
"city": "Qincheng",
"city_ascii": "Qincheng",
"lat": 34.5809,
"lng": 105.7311,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 3262549.0,
"id": 1156104017
},
{
"city": "Ruiming",
"city_ascii": "Ruiming",
"lat": 25.8833,
"lng": 116.0333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 640600.0,
"id": 1156104573
},
{
"city": "Taishan",
"city_ascii": "Taishan",
"lat": 22.2486,
"lng": 112.785,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 953900.0,
"id": 1156105450
},
{
"city": "Jiangmen",
"city_ascii": "Jiangmen",
"lat": 22.5833,
"lng": 113.0833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 4630300.0,
"id": 1156105613
},
{
"city": "Kuaidamao",
"city_ascii": "Kuaidamao",
"lat": 41.7302,
"lng": 125.9471,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 2324439.0,
"id": 1156106507
},
{
"city": "Qinzhou",
"city_ascii": "Qinzhou",
"lat": 21.95,
"lng": 108.6167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 3304400.0,
"id": 1156106602
},
{
"city": "Xigazê",
"city_ascii": "Xigaze",
"lat": 29.25,
"lng": 88.8833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tibet",
"capital": "minor",
"population": 798153.0,
"id": 1156107208
},
{
"city": "Xiangyang",
"city_ascii": "Xiangyang",
"lat": 32.0654,
"lng": 112.1531,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 5680000.0,
"id": 1156107325
},
{
"city": "Shangzhi",
"city_ascii": "Shangzhi",
"lat": 45.2116,
"lng": 127.962,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 585386.0,
"id": 1156107332
},
{
"city": "Yibin",
"city_ascii": "Yibin",
"lat": 28.7596,
"lng": 104.64,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 4588804.0,
"id": 1156107603
},
{
"city": "Langfang",
"city_ascii": "Langfang",
"lat": 39.5196,
"lng": 116.7006,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 5464087.0,
"id": 1156109017
},
{
"city": "Qingdao",
"city_ascii": "Qingdao",
"lat": 36.1167,
"lng": 120.4,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 5818255.0,
"id": 1156112588
},
{
"city": "Kashgar",
"city_ascii": "Kashgar",
"lat": 39.4681,
"lng": 75.9938,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 920000.0,
"id": 1156113193
},
{
"city": "Pizhou",
"city_ascii": "Pizhou",
"lat": 34.3422,
"lng": 118.0097,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 1458038.0,
"id": 1156114238
},
{
"city": "Hebi",
"city_ascii": "Hebi",
"lat": 35.7497,
"lng": 114.2887,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 1569208.0,
"id": 1156114258
},
{
"city": "Xichang",
"city_ascii": "Xichang",
"lat": 27.8983,
"lng": 102.2706,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 712434.0,
"id": 1156116456
},
{
"city": "Wuhan",
"city_ascii": "Wuhan",
"lat": 30.5872,
"lng": 114.2881,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "admin",
"population": 10251000.0,
"id": 1156117184
},
{
"city": "Taizhou",
"city_ascii": "Taizhou",
"lat": 32.4831,
"lng": 119.9,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 5031000.0,
"id": 1156119229
},
{
"city": "Xianyang",
"city_ascii": "Xianyang",
"lat": 34.35,
"lng": 108.7167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": "minor",
"population": 5096001.0,
"id": 1156120117
},
{
"city": "Rongcheng",
"city_ascii": "Rongcheng",
"lat": 26.2312,
"lng": 104.0966,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 1302891.0,
"id": 1156122888
},
{
"city": "Yangjiang",
"city_ascii": "Yangjiang",
"lat": 21.8556,
"lng": 111.9627,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2555600.0,
"id": 1156123172
},
{
"city": "Deyang",
"city_ascii": "Deyang",
"lat": 31.1289,
"lng": 104.395,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 3877000.0,
"id": 1156127147
},
{
"city": "Bazhou",
"city_ascii": "Bazhou",
"lat": 39.1235,
"lng": 116.386,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 622975.0,
"id": 1156127276
},
{
"city": "Nangandao",
"city_ascii": "Nangandao",
"lat": 35.2992,
"lng": 113.8851,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 5708191.0,
"id": 1156127660
},
{
"city": "Huanghua",
"city_ascii": "Huanghua",
"lat": 38.371,
"lng": 117.3329,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 548507.0,
"id": 1156131099
},
{
"city": "Chizhou",
"city_ascii": "Chizhou",
"lat": 30.6583,
"lng": 117.4849,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 1402518.0,
"id": 1156131504
},
{
"city": "Kumul",
"city_ascii": "Kumul",
"lat": 42.8193,
"lng": 93.5151,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 673383.0,
"id": 1156131545
},
{
"city": "Qingyuan",
"city_ascii": "Qingyuan",
"lat": 23.6842,
"lng": 113.0507,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 3969473.0,
"id": 1156135890
},
{
"city": "Meicheng",
"city_ascii": "Meicheng",
"lat": 30.6412,
"lng": 116.5689,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 500292.0,
"id": 1156136207
},
{
"city": "Beidao",
"city_ascii": "Beidao",
"lat": 34.602,
"lng": 105.918,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 1225000.0,
"id": 1156137209
},
{
"city": "Xinyu",
"city_ascii": "Xinyu",
"lat": 27.795,
"lng": 114.9242,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 1202499.0,
"id": 1156138735
},
{
"city": "Luocheng",
"city_ascii": "Luocheng",
"lat": 22.7645,
"lng": 111.5745,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 984100.0,
"id": 1156138895
},
{
"city": "Wuzhong",
"city_ascii": "Wuzhong",
"lat": 37.9874,
"lng": 106.1919,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Ningxia",
"capital": "minor",
"population": 1382713.0,
"id": 1156139322
},
{
"city": "Chang’an",
"city_ascii": "Chang'an",
"lat": 29.4761,
"lng": 113.448,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 537500.0,
"id": 1156139784
},
{
"city": "Baiyin",
"city_ascii": "Baiyin",
"lat": 36.5448,
"lng": 104.1766,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 1708751.0,
"id": 1156140738
},
{
"city": "Fuxin",
"city_ascii": "Fuxin",
"lat": 42.0127,
"lng": 121.6486,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 1819339.0,
"id": 1156141954
},
{
"city": "Dashiqiao",
"city_ascii": "Dashiqiao",
"lat": 40.6328,
"lng": 122.5021,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 704891.0,
"id": 1156141962
},
{
"city": "Anda",
"city_ascii": "Anda",
"lat": 46.4078,
"lng": 125.3252,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 520000.0,
"id": 1156142150
},
{
"city": "Yiyang",
"city_ascii": "Yiyang",
"lat": 26.4103,
"lng": 112.3913,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 810447.0,
"id": 1156142520
},
{
"city": "Huaibei",
"city_ascii": "Huaibei",
"lat": 33.9562,
"lng": 116.789,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 2114276.0,
"id": 1156142626
},
{
"city": "Songyang",
"city_ascii": "Songyang",
"lat": 34.4603,
"lng": 113.028,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 668592.0,
"id": 1156143149
},
{
"city": "Gaizhou",
"city_ascii": "Gaizhou",
"lat": 40.4019,
"lng": 122.3499,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 691595.0,
"id": 1156145272
},
{
"city": "Pencheng",
"city_ascii": "Pencheng",
"lat": 29.6792,
"lng": 115.6611,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 419047.0,
"id": 1156147187
},
{
"city": "Hanchuan",
"city_ascii": "Hanchuan",
"lat": 30.652,
"lng": 113.8274,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 1092700.0,
"id": 1156149248
},
{
"city": "Huili Chengguanzhen",
"city_ascii": "Huili Chengguanzhen",
"lat": 26.6614,
"lng": 102.2469,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 430066.0,
"id": 1156149320
},
{
"city": "Jiannan",
"city_ascii": "Jiannan",
"lat": 31.3446,
"lng": 104.1994,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 477868.0,
"id": 1156155414
},
{
"city": "Xishan",
"city_ascii": "Xishan",
"lat": 27.6609,
"lng": 113.4946,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1060000.0,
"id": 1156155575
},
{
"city": "Pingdu",
"city_ascii": "Pingdu",
"lat": 36.7833,
"lng": 119.9556,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1378900.0,
"id": 1156157078
},
{
"city": "Jinzhou",
"city_ascii": "Jinzhou",
"lat": 41.1144,
"lng": 121.1292,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 3126463.0,
"id": 1156157151
},
{
"city": "Yangquan",
"city_ascii": "Yangquan",
"lat": 37.8576,
"lng": 113.5762,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 1368502.0,
"id": 1156157844
},
{
"city": "Jiaozuo",
"city_ascii": "Jiaozuo",
"lat": 35.229,
"lng": 113.2304,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 3590700.0,
"id": 1156157854
},
{
"city": "Luofeng",
"city_ascii": "Luofeng",
"lat": 37.359,
"lng": 120.396,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 570898.0,
"id": 1156158643
},
{
"city": "Shenzhen",
"city_ascii": "Shenzhen",
"lat": 22.535,
"lng": 114.054,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 17619000.0,
"id": 1156158707
},
{
"city": "Xicheng",
"city_ascii": "Xicheng",
"lat": 23.3629,
"lng": 103.1545,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 459781.0,
"id": 1156161838
},
{
"city": "Jincheng",
"city_ascii": "Jincheng",
"lat": 35.4906,
"lng": 112.8483,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 2279146.0,
"id": 1156163376
},
{
"city": "Guiping",
"city_ascii": "Guiping",
"lat": 23.4,
"lng": 110.0833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 1511011.0,
"id": 1156165517
},
{
"city": "Changping",
"city_ascii": "Changping",
"lat": 40.2248,
"lng": 116.1944,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Beijing",
"capital": null,
"population": 614821.0,
"id": 1156166828
},
{
"city": "Hechi",
"city_ascii": "Hechi",
"lat": 24.6928,
"lng": 108.085,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 3545700.0,
"id": 1156167204
},
{
"city": "Zhaoqing",
"city_ascii": "Zhaoqing",
"lat": 23.05,
"lng": 112.4667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 4151700.0,
"id": 1156170144
},
{
"city": "Ningbo",
"city_ascii": "Ningbo",
"lat": 29.875,
"lng": 121.5492,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 4087523.0,
"id": 1156170787
},
{
"city": "Anguo",
"city_ascii": "Anguo",
"lat": 38.4177,
"lng": 115.3204,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 370317.0,
"id": 1156172518
},
{
"city": "Ximeicun",
"city_ascii": "Ximeicun",
"lat": 24.9633,
"lng": 118.3811,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": null,
"population": 1508000.0,
"id": 1156173813
},
{
"city": "Tianjin",
"city_ascii": "Tianjin",
"lat": 39.1467,
"lng": 117.2056,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tianjin",
"capital": "admin",
"population": 10368000.0,
"id": 1156174046
},
{
"city": "Kuiju",
"city_ascii": "Kuiju",
"lat": 36.8528,
"lng": 119.3904,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 564501.0,
"id": 1156174997
},
{
"city": "Dalian",
"city_ascii": "Dalian",
"lat": 38.9,
"lng": 121.6,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 5871474.0,
"id": 1156175472
},
{
"city": "Yuci",
"city_ascii": "Yuci",
"lat": 37.6823,
"lng": 112.7281,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 840000.0,
"id": 1156177817
},
{
"city": "Dandong",
"city_ascii": "Dandong",
"lat": 40.1167,
"lng": 124.3833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 2444697.0,
"id": 1156178316
},
{
"city": "Zhangye",
"city_ascii": "Zhangye",
"lat": 38.9355,
"lng": 100.4553,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 1199515.0,
"id": 1156180353
},
{
"city": "Quzhou",
"city_ascii": "Quzhou",
"lat": 28.9545,
"lng": 118.8763,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 902767.0,
"id": 1156180376
},
{
"city": "Luocheng",
"city_ascii": "Luocheng",
"lat": 30.9793,
"lng": 104.28,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 591115.0,
"id": 1156180482
},
{
"city": "Jinghong",
"city_ascii": "Jinghong",
"lat": 22.0057,
"lng": 100.7948,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 519935.0,
"id": 1156181533
},
{
"city": "Wutong",
"city_ascii": "Wutong",
"lat": 30.6326,
"lng": 120.5474,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1029754.0,
"id": 1156182309
},
{
"city": "Zhengzhou",
"city_ascii": "Zhengzhou",
"lat": 34.7492,
"lng": 113.6605,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "admin",
"population": 5621593.0,
"id": 1156183137
},
{
"city": "Haikou",
"city_ascii": "Haikou",
"lat": 20.02,
"lng": 110.32,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "admin",
"population": 2873358.0,
"id": 1156183327
},
{
"city": "Lingyuan",
"city_ascii": "Lingyuan",
"lat": 41.2407,
"lng": 119.3957,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 570660.0,
"id": 1156184681
},
{
"city": "Zhumadian",
"city_ascii": "Zhumadian",
"lat": 32.9773,
"lng": 114.0253,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 7231234.0,
"id": 1156184822
},
{
"city": "Jinchang",
"city_ascii": "Jinchang",
"lat": 38.5168,
"lng": 102.1866,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 438026.0,
"id": 1156184861
},
{
"city": "Yong’an",
"city_ascii": "Yong'an",
"lat": 25.9733,
"lng": 117.3593,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 357000.0,
"id": 1156185328
},
{
"city": "Meishan",
"city_ascii": "Meishan",
"lat": 30.0575,
"lng": 103.8381,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": null,
"population": 2950545.0,
"id": 1156185501
},
{
"city": "Changzhou",
"city_ascii": "Changzhou",
"lat": 31.8122,
"lng": 119.9692,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 3601079.0,
"id": 1156185511
},
{
"city": "Fuzhou",
"city_ascii": "Fuzhou",
"lat": 26.0769,
"lng": 119.2917,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "admin",
"population": 3671192.0,
"id": 1156188037
},
{
"city": "Wenzhou",
"city_ascii": "Wenzhou",
"lat": 27.9991,
"lng": 120.6561,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 3604446.0,
"id": 1156188829
},
{
"city": "Nanyang",
"city_ascii": "Nanyang",
"lat": 32.9987,
"lng": 112.5292,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 10013600.0,
"id": 1156192287
},
{
"city": "Weichanglu",
"city_ascii": "Weichanglu",
"lat": 37.1792,
"lng": 119.9333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 859424.0,
"id": 1156194600
},
{
"city": "Xiangtan",
"city_ascii": "Xiangtan",
"lat": 27.8431,
"lng": 112.9228,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 2864800.0,
"id": 1156195684
},
{
"city": "Fuyuan",
"city_ascii": "Fuyuan",
"lat": 48.3614,
"lng": 134.2875,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 480000.0,
"id": 1156196485
},
{
"city": "Zaoyang",
"city_ascii": "Zaoyang",
"lat": 32.1287,
"lng": 112.7581,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 1004741.0,
"id": 1156197076
},
{
"city": "Wuchuan",
"city_ascii": "Wuchuan",
"lat": 21.4283,
"lng": 110.7749,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 972400.0,
"id": 1156198103
},
{
"city": "Huanglongsi",
"city_ascii": "Huanglongsi",
"lat": 34.795,
"lng": 114.345,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 4824016.0,
"id": 1156198356
},
{
"city": "Nanchang",
"city_ascii": "Nanchang",
"lat": 28.6842,
"lng": 115.8872,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "admin",
"population": 3576547.0,
"id": 1156198892
},
{
"city": "Huanggang",
"city_ascii": "Huanggang",
"lat": 30.45,
"lng": 114.875,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 6333000.0,
"id": 1156200037
},
{
"city": "Zhoushan",
"city_ascii": "Zhoushan",
"lat": 29.9887,
"lng": 122.2049,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 882932.0,
"id": 1156200283
},
{
"city": "Dengtalu",
"city_ascii": "Dengtalu",
"lat": 36.1386,
"lng": 114.1066,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 887000.0,
"id": 1156202014
},
{
"city": "Lingcheng",
"city_ascii": "Lingcheng",
"lat": 22.7,
"lng": 110.35,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": null,
"population": 1211637.0,
"id": 1156202191
},
{
"city": "Liaoyang",
"city_ascii": "Liaoyang",
"lat": 41.2643,
"lng": 123.1772,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 1858768.0,
"id": 1156202749
},
{
"city": "Yangshe",
"city_ascii": "Yangshe",
"lat": 31.8775,
"lng": 120.5512,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 1432044.0,
"id": 1156203000
},
{
"city": "Leshan",
"city_ascii": "Leshan",
"lat": 29.5854,
"lng": 103.7575,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": null,
"population": 3235759.0,
"id": 1156203130
},
{
"city": "Huizhou",
"city_ascii": "Huizhou",
"lat": 23.1115,
"lng": 114.4152,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2509243.0,
"id": 1156203268
},
{
"city": "Jiujiang",
"city_ascii": "Jiujiang",
"lat": 29.7048,
"lng": 116.0021,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 4896800.0,
"id": 1156206041
},
{
"city": "Laiyang",
"city_ascii": "Laiyang",
"lat": 36.9758,
"lng": 120.7136,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 874127.0,
"id": 1156207330
},
{
"city": "Laiwu",
"city_ascii": "Laiwu",
"lat": 36.1833,
"lng": 117.6667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1248636.0,
"id": 1156207332
},
{
"city": "Xiping",
"city_ascii": "Xiping",
"lat": 25.6005,
"lng": 103.8166,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 652604.0,
"id": 1156207794
},
{
"city": "Licheng",
"city_ascii": "Licheng",
"lat": 24.4935,
"lng": 110.3902,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 352472.0,
"id": 1156208986
},
{
"city": "Hohhot",
"city_ascii": "Hohhot",
"lat": 40.8151,
"lng": 111.6629,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": "admin",
"population": 3446100.0,
"id": 1156210167
},
{
"city": "Suqian",
"city_ascii": "Suqian",
"lat": 33.9331,
"lng": 118.2831,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 4986192.0,
"id": 1156212349
},
{
"city": "Xiamen",
"city_ascii": "Xiamen",
"lat": 24.4797,
"lng": 118.0819,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 3707090.0,
"id": 1156212809
},
{
"city": "Xiangyang",
"city_ascii": "Xiangyang",
"lat": 34.2999,
"lng": 108.4816,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 541554.0,
"id": 1156215566
},
{
"city": "Pingliang",
"city_ascii": "Pingliang",
"lat": 35.5412,
"lng": 106.6819,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 2068033.0,
"id": 1156216904
},
{
"city": "Xiantao",
"city_ascii": "Xiantao",
"lat": 30.3833,
"lng": 113.4,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 1140100.0,
"id": 1156216927
},
{
"city": "Yanjiang",
"city_ascii": "Yanjiang",
"lat": 30.1256,
"lng": 104.6397,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 2593843.0,
"id": 1156217114
},
{
"city": "Shijiazhuang",
"city_ascii": "Shijiazhuang",
"lat": 38.0422,
"lng": 114.5086,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "admin",
"population": 4098243.0,
"id": 1156217541
},
{
"city": "Yiyang",
"city_ascii": "Yiyang",
"lat": 28.5833,
"lng": 112.3333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 4413800.0,
"id": 1156218615
},
{
"city": "Yuyao",
"city_ascii": "Yuyao",
"lat": 30.0372,
"lng": 121.1546,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 1095000.0,
"id": 1156221984
},
{
"city": "Heze",
"city_ascii": "Heze",
"lat": 35.2333,
"lng": 115.4333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 8795939.0,
"id": 1156225008
},
{
"city": "Hejin",
"city_ascii": "Hejin",
"lat": 35.5914,
"lng": 110.706,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 395527.0,
"id": 1156225234
},
{
"city": "Chuxiong",
"city_ascii": "Chuxiong",
"lat": 25.0461,
"lng": 101.5436,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 588620.0,
"id": 1156225985
},
{
"city": "Shuozhou",
"city_ascii": "Shuozhou",
"lat": 39.3408,
"lng": 112.4292,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 1714857.0,
"id": 1156227167
},
{
"city": "Beijing",
"city_ascii": "Beijing",
"lat": 39.904,
"lng": 116.4075,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Beijing",
"capital": "primary",
"population": 18522000.0,
"id": 1156228865
},
{
"city": "Yichun",
"city_ascii": "Yichun",
"lat": 27.8041,
"lng": 114.383,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 5573200.0,
"id": 1156229590
},
{
"city": "Yidu",
"city_ascii": "Yidu",
"lat": 30.388,
"lng": 111.4505,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 384598.0,
"id": 1156230664
},
{
"city": "Shihezi",
"city_ascii": "Shihezi",
"lat": 44.3054,
"lng": 86.0804,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 717000.0,
"id": 1156232270
},
{
"city": "Huangshi",
"city_ascii": "Huangshi",
"lat": 30.2018,
"lng": 115.0326,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 2471700.0,
"id": 1156234290
},
{
"city": "Guilin",
"city_ascii": "Guilin",
"lat": 25.2819,
"lng": 110.2864,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 5085500.0,
"id": 1156235364
},
{
"city": "Suihua",
"city_ascii": "Suihua",
"lat": 46.6384,
"lng": 126.9808,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 5418153.0,
"id": 1156235493
},
{
"city": "Jiangguanchi",
"city_ascii": "Jiangguanchi",
"lat": 34.0244,
"lng": 113.8201,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 4379998.0,
"id": 1156235735
},
{
"city": "Gaoyou",
"city_ascii": "Gaoyou",
"lat": 32.7847,
"lng": 119.4432,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 811800.0,
"id": 1156235854
},
{
"city": "Xin’an",
"city_ascii": "Xin'an",
"lat": 34.3662,
"lng": 118.3369,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 920628.0,
"id": 1156236053
},
{
"city": "Suohe",
"city_ascii": "Suohe",
"lat": 34.7879,
"lng": 113.392,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 626700.0,
"id": 1156236948
},
{
"city": "Guangzhou",
"city_ascii": "Guangzhou",
"lat": 23.13,
"lng": 113.26,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "admin",
"population": 26940000.0,
"id": 1156237133
},
{
"city": "Gaoping",
"city_ascii": "Gaoping",
"lat": 35.7911,
"lng": 112.9259,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 484862.0,
"id": 1156238773
},
{
"city": "Anqing",
"city_ascii": "Anqing",
"lat": 30.5,
"lng": 117.0333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 4723000.0,
"id": 1156238875
},
{
"city": "Zhangjiakou Shi Xuanhua Qu",
"city_ascii": "Zhangjiakou Shi Xuanhua Qu",
"lat": 40.5944,
"lng": 115.0243,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 409745.0,
"id": 1156240430
},
{
"city": "Harbin",
"city_ascii": "Harbin",
"lat": 45.75,
"lng": 126.6333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "admin",
"population": 3830000.0,
"id": 1156241528
},
{
"city": "Zhangzhou",
"city_ascii": "Zhangzhou",
"lat": 24.5093,
"lng": 117.6612,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 5140000.0,
"id": 1156241637
},
{
"city": "Tongshan",
"city_ascii": "Tongshan",
"lat": 34.261,
"lng": 117.1859,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 9083790.0,
"id": 1156241678
},
{
"city": "Xi’an",
"city_ascii": "Xi'an",
"lat": 34.2667,
"lng": 108.9,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": "admin",
"population": 12328000.0,
"id": 1156244079
},
{
"city": "Fu’an",
"city_ascii": "Fu'an",
"lat": 27.1,
"lng": 119.6333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 577000.0,
"id": 1156244234
},
{
"city": "Yushan",
"city_ascii": "Yushan",
"lat": 31.3867,
"lng": 120.9766,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 2092496.0,
"id": 1156245000
},
{
"city": "Shuangyashan",
"city_ascii": "Shuangyashan",
"lat": 46.6388,
"lng": 131.1545,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 1462626.0,
"id": 1156245904
},
{
"city": "Fuyang",
"city_ascii": "Fuyang",
"lat": 32.8986,
"lng": 115.8045,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 8200264.0,
"id": 1156248008
},
{
"city": "Guankou",
"city_ascii": "Guankou",
"lat": 28.1417,
"lng": 113.625,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1168056.0,
"id": 1156249346
},
{
"city": "Mudanjiang",
"city_ascii": "Mudanjiang",
"lat": 44.5861,
"lng": 129.5997,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 2798723.0,
"id": 1156249698
},
{
"city": "Liaoyuan",
"city_ascii": "Liaoyuan",
"lat": 42.8976,
"lng": 125.1381,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 1176239.0,
"id": 1156249772
},
{
"city": "Chengxiang",
"city_ascii": "Chengxiang",
"lat": 31.4515,
"lng": 121.1043,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 831113.0,
"id": 1156254788
},
{
"city": "Xingyi",
"city_ascii": "Xingyi",
"lat": 25.091,
"lng": 104.9011,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 1004132.0,
"id": 1156255316
},
{
"city": "Ankang",
"city_ascii": "Ankang",
"lat": 32.6877,
"lng": 109.0235,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 2629906.0,
"id": 1156255711
},
{
"city": "Daye",
"city_ascii": "Daye",
"lat": 30.1003,
"lng": 114.9699,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 909724.0,
"id": 1156255811
},
{
"city": "Baoding",
"city_ascii": "Baoding",
"lat": 38.8671,
"lng": 115.4845,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 11860000.0,
"id": 1156256829
},
{
"city": "Yingkou",
"city_ascii": "Yingkou",
"lat": 40.6653,
"lng": 122.2297,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 2428534.0,
"id": 1156257074
},
{
"city": "Xinxing",
"city_ascii": "Xinxing",
"lat": 39.8734,
"lng": 124.1453,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 627475.0,
"id": 1156258586
},
{
"city": "Guixi",
"city_ascii": "Guixi",
"lat": 28.2861,
"lng": 117.2083,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 647240.0,
"id": 1156259342
},
{
"city": "Dongyang",
"city_ascii": "Dongyang",
"lat": 29.2785,
"lng": 120.2282,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 804398.0,
"id": 1156259752
},
{
"city": "Jieyang",
"city_ascii": "Jieyang",
"lat": 23.5533,
"lng": 116.3649,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 6089400.0,
"id": 1156260378
},
{
"city": "Nagqu",
"city_ascii": "Nagqu",
"lat": 31.4766,
"lng": 92.0569,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tibet",
"capital": "minor",
"population": 504838.0,
"id": 1156260844
},
{
"city": "Xindi",
"city_ascii": "Xindi",
"lat": 29.8182,
"lng": 113.4653,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 819446.0,
"id": 1156263165
},
{
"city": "Zhuangyuan",
"city_ascii": "Zhuangyuan",
"lat": 37.3056,
"lng": 120.8275,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 626683.0,
"id": 1156263400
},
{
"city": "Wusong",
"city_ascii": "Wusong",
"lat": 30.9333,
"lng": 117.7667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 1311726.0,
"id": 1156264408
},
{
"city": "Hancheng",
"city_ascii": "Hancheng",
"lat": 35.4768,
"lng": 110.4419,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 391164.0,
"id": 1156265838
},
{
"city": "Mishan",
"city_ascii": "Mishan",
"lat": 45.542,
"lng": 131.8666,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 420000.0,
"id": 1156267144
},
{
"city": "Hailin",
"city_ascii": "Hailin",
"lat": 44.5735,
"lng": 129.3825,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 420000.0,
"id": 1156267191
},
{
"city": "Guangshui",
"city_ascii": "Guangshui",
"lat": 31.6189,
"lng": 113.8229,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 755910.0,
"id": 1156267419
},
{
"city": "Bazhou",
"city_ascii": "Bazhou",
"lat": 31.8576,
"lng": 106.7559,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 3283148.0,
"id": 1156271365
},
{
"city": "Zhoukou",
"city_ascii": "Zhoukou",
"lat": 33.625,
"lng": 114.6418,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 9026015.0,
"id": 1156272098
},
{
"city": "Qingyang",
"city_ascii": "Qingyang",
"lat": 24.8141,
"lng": 118.5792,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2111000.0,
"id": 1156273372
},
{
"city": "Xinyang",
"city_ascii": "Xinyang",
"lat": 32.1264,
"lng": 114.0672,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 6234401.0,
"id": 1156273453
},
{
"city": "Hangzhou",
"city_ascii": "Hangzhou",
"lat": 30.25,
"lng": 120.1675,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "admin",
"population": 9523000.0,
"id": 1156275243
},
{
"city": "Jiexiu",
"city_ascii": "Jiexiu",
"lat": 37.0282,
"lng": 111.9103,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 406517.0,
"id": 1156275703
},
{
"city": "Chifeng",
"city_ascii": "Chifeng",
"lat": 42.2663,
"lng": 118.9223,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": "minor",
"population": 4341245.0,
"id": 1156277458
},
{
"city": "Qamdo",
"city_ascii": "Qamdo",
"lat": 31.1375,
"lng": 97.1777,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tibet",
"capital": "minor",
"population": 760966.0,
"id": 1156277802
},
{
"city": "Ji’an",
"city_ascii": "Ji'an",
"lat": 27.1172,
"lng": 114.9793,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 4956600.0,
"id": 1156278215
},
{
"city": "Jian’ou",
"city_ascii": "Jian'ou",
"lat": 27.0387,
"lng": 118.3215,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 456000.0,
"id": 1156278784
},
{
"city": "Shache",
"city_ascii": "Shache",
"lat": 38.4261,
"lng": 77.25,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": null,
"population": 851374.0,
"id": 1156278934
},
{
"city": "Ailan Mubage",
"city_ascii": "Ailan Mubage",
"lat": 43.908,
"lng": 81.2777,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 526745.0,
"id": 1156279608
},
{
"city": "Lanzhou",
"city_ascii": "Lanzhou",
"lat": 36.0617,
"lng": 103.8318,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "admin",
"population": 3067141.0,
"id": 1156280566
},
{
"city": "Yulinshi",
"city_ascii": "Yulinshi",
"lat": 38.2655,
"lng": 109.7388,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 3634750.0,
"id": 1156280672
},
{
"city": "Taihe",
"city_ascii": "Taihe",
"lat": 30.8706,
"lng": 105.3784,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 924531.0,
"id": 1156281983
},
{
"city": "Huazhou",
"city_ascii": "Huazhou",
"lat": 21.654,
"lng": 110.6294,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 1302100.0,
"id": 1156282637
},
{
"city": "Xiulin",
"city_ascii": "Xiulin",
"lat": 29.7211,
"lng": 112.4037,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 577022.0,
"id": 1156284109
},
{
"city": "Chenzhou",
"city_ascii": "Chenzhou",
"lat": 25.7989,
"lng": 113.0267,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 4744500.0,
"id": 1156291915
},
{
"city": "Yicheng",
"city_ascii": "Yicheng",
"lat": 31.3697,
"lng": 119.8239,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 1285785.0,
"id": 1156292419
},
{
"city": "Yuanping",
"city_ascii": "Yuanping",
"lat": 38.7299,
"lng": 112.7134,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 491213.0,
"id": 1156294277
},
{
"city": "Sanming",
"city_ascii": "Sanming",
"lat": 26.2658,
"lng": 117.6302,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2580000.0,
"id": 1156294429
},
{
"city": "Xingtai",
"city_ascii": "Xingtai",
"lat": 37.0659,
"lng": 114.4753,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 7111106.0,
"id": 1156294952
},
{
"city": "Minzhu",
"city_ascii": "Minzhu",
"lat": 43.7192,
"lng": 127.337,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 453265.0,
"id": 1156295044
},
{
"city": "Yingtan",
"city_ascii": "Yingtan",
"lat": 28.2333,
"lng": 117.0,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 1175000.0,
"id": 1156301061
},
{
"city": "Lichuan",
"city_ascii": "Lichuan",
"lat": 30.2965,
"lng": 108.9378,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 913700.0,
"id": 1156302762
},
{
"city": "Feicheng",
"city_ascii": "Feicheng",
"lat": 36.186,
"lng": 116.772,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 946627.0,
"id": 1156303834
},
{
"city": "Jieshou",
"city_ascii": "Jieshou",
"lat": 33.2605,
"lng": 115.3618,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 650870.0,
"id": 1156304827
},
{
"city": "Shenyang",
"city_ascii": "Shenyang",
"lat": 41.8025,
"lng": 123.4281,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "admin",
"population": 7964000.0,
"id": 1156309382
},
{
"city": "Shaoyang",
"city_ascii": "Shaoyang",
"lat": 27.2418,
"lng": 111.4725,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 7370500.0,
"id": 1156310366
},
{
"city": "Qian’an",
"city_ascii": "Qian'an",
"lat": 40.0059,
"lng": 118.6973,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 728160.0,
"id": 1156315498
},
{
"city": "Wuhu",
"city_ascii": "Wuhu",
"lat": 31.334,
"lng": 118.3622,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 3842100.0,
"id": 1156315512
},
{
"city": "Taizhou",
"city_ascii": "Taizhou",
"lat": 28.6583,
"lng": 121.4221,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 2162461.0,
"id": 1156322307
},
{
"city": "Rucheng",
"city_ascii": "Rucheng",
"lat": 32.3852,
"lng": 120.5634,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 1267066.0,
"id": 1156323529
},
{
"city": "Yushu",
"city_ascii": "Yushu",
"lat": 44.8249,
"lng": 126.5451,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 1304436.0,
"id": 1156326773
},
{
"city": "Xiangshui",
"city_ascii": "Xiangshui",
"lat": 26.5964,
"lng": 104.8314,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 1221000.0,
"id": 1156328867
},
{
"city": "Luohe",
"city_ascii": "Luohe",
"lat": 33.583,
"lng": 114.0109,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 2544266.0,
"id": 1156330876
},
{
"city": "Taixing",
"city_ascii": "Taixing",
"lat": 32.1724,
"lng": 120.0142,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 1073921.0,
"id": 1156331200
},
{
"city": "Hai’an",
"city_ascii": "Hai'an",
"lat": 32.532,
"lng": 120.4604,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 874334.0,
"id": 1156332302
},
{
"city": "Hefei",
"city_ascii": "Hefei",
"lat": 31.8639,
"lng": 117.2808,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "admin",
"population": 4216940.0,
"id": 1156332710
},
{
"city": "Lianran",
"city_ascii": "Lianran",
"lat": 24.9211,
"lng": 102.4778,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 341341.0,
"id": 1156332794
},
{
"city": "Huzhou",
"city_ascii": "Huzhou",
"lat": 30.8925,
"lng": 120.0875,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1558826.0,
"id": 1156335543
},
{
"city": "Heihe",
"city_ascii": "Heihe",
"lat": 50.2458,
"lng": 127.4886,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 1673899.0,
"id": 1156339225
},
{
"city": "Fuyang",
"city_ascii": "Fuyang",
"lat": 30.0553,
"lng": 119.95,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 771000.0,
"id": 1156340393
},
{
"city": "Jiangshan",
"city_ascii": "Jiangshan",
"lat": 28.7412,
"lng": 118.6225,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 467862.0,
"id": 1156346497
},
{
"city": "Danjiangkou",
"city_ascii": "Danjiangkou",
"lat": 32.5408,
"lng": 111.5098,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 443755.0,
"id": 1156347994
},
{
"city": "Jiamusi",
"city_ascii": "Jiamusi",
"lat": 46.8081,
"lng": 130.3653,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 2552097.0,
"id": 1156350864
},
{
"city": "Jiangjiafan",
"city_ascii": "Jiangjiafan",
"lat": 31.0238,
"lng": 111.9709,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 400000.0,
"id": 1156352568
},
{
"city": "Huaihua",
"city_ascii": "Huaihua",
"lat": 27.5494,
"lng": 109.9592,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 4979600.0,
"id": 1156353465
},
{
"city": "Bozhou",
"city_ascii": "Bozhou",
"lat": 33.8626,
"lng": 115.7742,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 4996844.0,
"id": 1156356860
},
{
"city": "Tongliao",
"city_ascii": "Tongliao",
"lat": 43.6172,
"lng": 122.264,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": "minor",
"population": 3139153.0,
"id": 1156358686
},
{
"city": "Yinchuan",
"city_ascii": "Yinchuan",
"lat": 38.4795,
"lng": 106.2254,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Ningxia",
"capital": "admin",
"population": 1901793.0,
"id": 1156359072
},
{
"city": "Liuzhou",
"city_ascii": "Liuzhou",
"lat": 24.3264,
"lng": 109.4281,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 4157934.0,
"id": 1156360785
},
{
"city": "Meizhou",
"city_ascii": "Meizhou",
"lat": 24.2998,
"lng": 116.1191,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 4378800.0,
"id": 1156361028
},
{
"city": "Liangshi",
"city_ascii": "Liangshi",
"lat": 27.2578,
"lng": 111.7351,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 1335900.0,
"id": 1156366507
},
{
"city": "Xinmin",
"city_ascii": "Xinmin",
"lat": 41.9952,
"lng": 122.8224,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 680000.0,
"id": 1156368551
},
{
"city": "Lhasa",
"city_ascii": "Lhasa",
"lat": 29.6534,
"lng": 91.1719,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tibet",
"capital": "admin",
"population": 902500.0,
"id": 1156369972
},
{
"city": "Sanya",
"city_ascii": "Sanya",
"lat": 18.2533,
"lng": 109.5036,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "minor",
"population": 1031396.0,
"id": 1156373900
},
{
"city": "Guang’an",
"city_ascii": "Guang'an",
"lat": 30.4673,
"lng": 106.6336,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 3205476.0,
"id": 1156377302
},
{
"city": "Beipiao",
"city_ascii": "Beipiao",
"lat": 41.802,
"lng": 120.7621,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 496164.0,
"id": 1156378599
},
{
"city": "Zibo",
"city_ascii": "Zibo",
"lat": 36.7831,
"lng": 118.0497,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 2631647.0,
"id": 1156381094
},
{
"city": "Hanzhong",
"city_ascii": "Hanzhong",
"lat": 33.0794,
"lng": 107.026,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 3416196.0,
"id": 1156382678
},
{
"city": "Guli",
"city_ascii": "Guli",
"lat": 28.9008,
"lng": 120.0284,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 723490.0,
"id": 1156383681
},
{
"city": "Shiyan",
"city_ascii": "Shiyan",
"lat": 32.6351,
"lng": 110.7755,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 3398000.0,
"id": 1156383921
},
{
"city": "Fangting",
"city_ascii": "Fangting",
"lat": 31.1282,
"lng": 104.1695,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 412758.0,
"id": 1156384608
},
{
"city": "Wenlan",
"city_ascii": "Wenlan",
"lat": 23.3989,
"lng": 103.3631,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 585976.0,
"id": 1156385754
},
{
"city": "Yingmen",
"city_ascii": "Yingmen",
"lat": 39.9487,
"lng": 97.4395,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": null,
"population": 350000.0,
"id": 1156386711
},
{
"city": "Jixi",
"city_ascii": "Jixi",
"lat": 45.2937,
"lng": 130.965,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 1862165.0,
"id": 1156393765
},
{
"city": "Daqing",
"city_ascii": "Daqing",
"lat": 46.5979,
"lng": 125.008,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 2904532.0,
"id": 1156403962
},
{
"city": "Fujin",
"city_ascii": "Fujin",
"lat": 47.2489,
"lng": 132.0341,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 470000.0,
"id": 1156404715
},
{
"city": "Yanji",
"city_ascii": "Yanji",
"lat": 42.9044,
"lng": 129.5067,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 513072.0,
"id": 1156405468
},
{
"city": "Shangrao",
"city_ascii": "Shangrao",
"lat": 28.4419,
"lng": 117.9633,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 6810700.0,
"id": 1156405492
},
{
"city": "Hejian",
"city_ascii": "Hejian",
"lat": 38.4451,
"lng": 116.0897,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 810306.0,
"id": 1156405731
},
{
"city": "Anlu",
"city_ascii": "Anlu",
"lat": 31.2575,
"lng": 113.6783,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 720000.0,
"id": 1156406202
},
{
"city": "Zhuanghe",
"city_ascii": "Zhuanghe",
"lat": 39.6896,
"lng": 122.9664,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 905852.0,
"id": 1156410076
},
{
"city": "Ezhou",
"city_ascii": "Ezhou",
"lat": 30.3972,
"lng": 114.8842,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 1079353.0,
"id": 1156414637
},
{
"city": "Anshun",
"city_ascii": "Anshun",
"lat": 26.2456,
"lng": 105.934,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 2353100.0,
"id": 1156415948
},
{
"city": "Linfen",
"city_ascii": "Linfen",
"lat": 36.0812,
"lng": 111.5087,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 4316610.0,
"id": 1156416074
},
{
"city": "Mianyang",
"city_ascii": "Mianyang",
"lat": 31.4669,
"lng": 104.7385,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 4868243.0,
"id": 1156417758
},
{
"city": "Beihai",
"city_ascii": "Beihai",
"lat": 21.4667,
"lng": 109.1,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 1853227.0,
"id": 1156421449
},
{
"city": "Chengdu",
"city_ascii": "Chengdu",
"lat": 30.66,
"lng": 104.0633,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "admin",
"population": 14645000.0,
"id": 1156421555
},
{
"city": "Xinshi",
"city_ascii": "Xinshi",
"lat": 31.0236,
"lng": 113.1079,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 636776.0,
"id": 1156422214
},
{
"city": "Xuanzhou",
"city_ascii": "Xuanzhou",
"lat": 30.9475,
"lng": 118.7518,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 2532938.0,
"id": 1156424311
},
{
"city": "Beining",
"city_ascii": "Beining",
"lat": 41.5961,
"lng": 121.7928,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 514898.0,
"id": 1156424678
},
{
"city": "Nangong",
"city_ascii": "Nangong",
"lat": 37.3606,
"lng": 115.3803,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 476096.0,
"id": 1156426803
},
{
"city": "Puyang",
"city_ascii": "Puyang",
"lat": 35.7639,
"lng": 115.03,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 3598740.0,
"id": 1156431924
},
{
"city": "Baicheng",
"city_ascii": "Baicheng",
"lat": 45.6148,
"lng": 122.832,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 2032356.0,
"id": 1156435764
},
{
"city": "Aksu",
"city_ascii": "Aksu",
"lat": 41.185,
"lng": 80.2904,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 535657.0,
"id": 1156436913
},
{
"city": "Taozhou",
"city_ascii": "Taozhou",
"lat": 30.8956,
"lng": 119.411,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 499132.0,
"id": 1156438524
},
{
"city": "Chongzuo",
"city_ascii": "Chongzuo",
"lat": 22.4167,
"lng": 107.3667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 2099400.0,
"id": 1156438670
},
{
"city": "Bengbu",
"city_ascii": "Bengbu",
"lat": 32.9354,
"lng": 117.3531,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 3296408.0,
"id": 1156440668
},
{
"city": "Kaiyuan",
"city_ascii": "Kaiyuan",
"lat": 36.0656,
"lng": 113.8153,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 1160000.0,
"id": 1156441554
},
{
"city": "Jianshe",
"city_ascii": "Jianshe",
"lat": 34.2189,
"lng": 113.7693,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 687130.0,
"id": 1156444449
},
{
"city": "Changde",
"city_ascii": "Changde",
"lat": 29.0397,
"lng": 111.6839,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 5827200.0,
"id": 1156449091
},
{
"city": "Sizhan",
"city_ascii": "Sizhan",
"lat": 39.0099,
"lng": 106.3694,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Ningxia",
"capital": null,
"population": 751389.0,
"id": 1156450911
},
{
"city": "Linhai",
"city_ascii": "Linhai",
"lat": 28.8523,
"lng": 121.1409,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 1028813.0,
"id": 1156451663
},
{
"city": "Fenyang",
"city_ascii": "Fenyang",
"lat": 37.2647,
"lng": 111.7775,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 416212.0,
"id": 1156455704
},
{
"city": "Xinji",
"city_ascii": "Xinji",
"lat": 37.9423,
"lng": 115.2118,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 615919.0,
"id": 1156456552
},
{
"city": "Shantou",
"city_ascii": "Shantou",
"lat": 23.3735,
"lng": 116.6941,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 4312192.0,
"id": 1156457499
},
{
"city": "Hezhou",
"city_ascii": "Hezhou",
"lat": 24.4164,
"lng": 111.5478,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 2072600.0,
"id": 1156459799
},
{
"city": "Shuizhai",
"city_ascii": "Shuizhai",
"lat": 33.4433,
"lng": 114.8994,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 1003698.0,
"id": 1156462734
},
{
"city": "Yanjiao",
"city_ascii": "Yanjiao",
"lat": 39.9432,
"lng": 116.8036,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 363809.0,
"id": 1156470847
},
{
"city": "Weihai",
"city_ascii": "Weihai",
"lat": 37.5,
"lng": 122.1,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 2906548.0,
"id": 1156473300
},
{
"city": "Meihekou",
"city_ascii": "Meihekou",
"lat": 42.5279,
"lng": 125.678,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 618251.0,
"id": 1156474288
},
{
"city": "Sanhe",
"city_ascii": "Sanhe",
"lat": 39.9808,
"lng": 117.0701,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 652042.0,
"id": 1156476348
},
{
"city": "Wafangdian",
"city_ascii": "Wafangdian",
"lat": 39.6271,
"lng": 121.9972,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 1024876.0,
"id": 1156476417
},
{
"city": "Kunming",
"city_ascii": "Kunming",
"lat": 25.0433,
"lng": 102.7061,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "admin",
"population": 4422686.0,
"id": 1156477539
},
{
"city": "Dongguan",
"city_ascii": "Dongguan",
"lat": 23.0475,
"lng": 113.7493,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 10646000.0,
"id": 1156478242
},
{
"city": "Huilong",
"city_ascii": "Huilong",
"lat": 31.8131,
"lng": 121.6574,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 972525.0,
"id": 1156485081
},
{
"city": "Gaobeidian",
"city_ascii": "Gaobeidian",
"lat": 39.3257,
"lng": 115.8678,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 640280.0,
"id": 1156487293
},
{
"city": "Qufu",
"city_ascii": "Qufu",
"lat": 35.6,
"lng": 116.9833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 640498.0,
"id": 1156490037
},
{
"city": "Lianyuan",
"city_ascii": "Lianyuan",
"lat": 27.6961,
"lng": 111.6659,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1162928.0,
"id": 1156490109
},
{
"city": "Jiaxing",
"city_ascii": "Jiaxing",
"lat": 30.7522,
"lng": 120.75,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1518654.0,
"id": 1156491661
},
{
"city": "Lu’an",
"city_ascii": "Lu'an",
"lat": 31.7542,
"lng": 116.5078,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 5611701.0,
"id": 1156499624
},
{
"city": "Zhanjiang",
"city_ascii": "Zhanjiang",
"lat": 21.1967,
"lng": 110.4031,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 7332000.0,
"id": 1156502170
},
{
"city": "Guankou",
"city_ascii": "Guankou",
"lat": 30.9933,
"lng": 103.624,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": null,
"population": 671200.0,
"id": 1156503907
},
{
"city": "Zhuji",
"city_ascii": "Zhuji",
"lat": 29.7169,
"lng": 120.2314,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1157938.0,
"id": 1156504227
},
{
"city": "Jining",
"city_ascii": "Jining",
"lat": 35.4,
"lng": 116.5667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 8357897.0,
"id": 1156504601
},
{
"city": "Zhongba",
"city_ascii": "Zhongba",
"lat": 31.7761,
"lng": 104.7406,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 762140.0,
"id": 1156515985
},
{
"city": "Neijiang",
"city_ascii": "Neijiang",
"lat": 29.5872,
"lng": 105.0635,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 3702847.0,
"id": 1156516335
},
{
"city": "Dingxi",
"city_ascii": "Dingxi",
"lat": 35.5806,
"lng": 104.6263,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 2698624.0,
"id": 1156518274
},
{
"city": "Fengcheng",
"city_ascii": "Fengcheng",
"lat": 40.4543,
"lng": 124.0646,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 543933.0,
"id": 1156519626
},
{
"city": "Gaoping",
"city_ascii": "Gaoping",
"lat": 30.7824,
"lng": 106.1281,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 2174000.0,
"id": 1156522457
},
{
"city": "Zhufeng",
"city_ascii": "Zhufeng",
"lat": 36.0,
"lng": 119.4167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1081960.0,
"id": 1156522825
},
{
"city": "Dezhou",
"city_ascii": "Dezhou",
"lat": 37.4513,
"lng": 116.3105,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 5611194.0,
"id": 1156524080
},
{
"city": "Xiangxiang",
"city_ascii": "Xiangxiang",
"lat": 27.7389,
"lng": 112.5223,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 787216.0,
"id": 1156524101
},
{
"city": "Huangshan",
"city_ascii": "Huangshan",
"lat": 29.7132,
"lng": 118.3151,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 1358980.0,
"id": 1156527426
},
{
"city": "Sanmenxia",
"city_ascii": "Sanmenxia",
"lat": 34.7736,
"lng": 111.195,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 2234018.0,
"id": 1156529682
},
{
"city": "Fuding",
"city_ascii": "Fuding",
"lat": 27.2,
"lng": 120.2,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 542000.0,
"id": 1156530120
},
{
"city": "Yucheng",
"city_ascii": "Yucheng",
"lat": 36.9329,
"lng": 116.6403,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 522878.0,
"id": 1156530681
},
{
"city": "Fangchenggang",
"city_ascii": "Fangchenggang",
"lat": 21.6,
"lng": 108.3,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 1046068.0,
"id": 1156532454
},
{
"city": "Xingren",
"city_ascii": "Xingren",
"lat": 25.4352,
"lng": 105.1907,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 417919.0,
"id": 1156533633
},
{
"city": "Dongtai",
"city_ascii": "Dongtai",
"lat": 32.8534,
"lng": 120.3037,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 990306.0,
"id": 1156536785
},
{
"city": "Zunyi",
"city_ascii": "Zunyi",
"lat": 27.705,
"lng": 106.9336,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 6606675.0,
"id": 1156539782
},
{
"city": "Hegang",
"city_ascii": "Hegang",
"lat": 47.3139,
"lng": 130.2775,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 1058665.0,
"id": 1156541759
},
{
"city": "Xinhualu",
"city_ascii": "Xinhualu",
"lat": 34.3962,
"lng": 113.7249,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 758079.0,
"id": 1156544851
},
{
"city": "Jianguang",
"city_ascii": "Jianguang",
"lat": 28.1958,
"lng": 115.7833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 1507402.0,
"id": 1156545200
},
{
"city": "Yan’an",
"city_ascii": "Yan'an",
"lat": 36.5952,
"lng": 109.4863,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 2282581.0,
"id": 1156546342
},
{
"city": "Baoshan",
"city_ascii": "Baoshan",
"lat": 25.1211,
"lng": 99.169,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 2627000.0,
"id": 1156546994
},
{
"city": "Jinhua",
"city_ascii": "Jinhua",
"lat": 29.1046,
"lng": 119.6494,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 1463990.0,
"id": 1156547188
},
{
"city": "Chaozhou",
"city_ascii": "Chaozhou",
"lat": 23.67,
"lng": 116.63,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2656600.0,
"id": 1156549118
},
{
"city": "Zêtang",
"city_ascii": "Zetang",
"lat": 29.238,
"lng": 91.771,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Tibet",
"capital": null,
"population": 382610.0,
"id": 1156561299
},
{
"city": "Binzhou",
"city_ascii": "Binzhou",
"lat": 37.3806,
"lng": 118.0125,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 3928568.0,
"id": 1156564962
},
{
"city": "Maoming",
"city_ascii": "Maoming",
"lat": 21.6618,
"lng": 110.9178,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 6313200.0,
"id": 1156568722
},
{
"city": "Chengjiao",
"city_ascii": "Chengjiao",
"lat": 35.4043,
"lng": 114.0593,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 495744.0,
"id": 1156571332
},
{
"city": "Wanyuan",
"city_ascii": "Wanyuan",
"lat": 32.0691,
"lng": 108.0351,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 407594.0,
"id": 1156571429
},
{
"city": "Turpan",
"city_ascii": "Turpan",
"lat": 42.9512,
"lng": 89.1895,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 622903.0,
"id": 1156573684
},
{
"city": "Shuanghe",
"city_ascii": "Shuanghe",
"lat": 30.3866,
"lng": 106.7756,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 360000.0,
"id": 1156573894
},
{
"city": "Wenchang",
"city_ascii": "Wenchang",
"lat": 31.054,
"lng": 116.9507,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 664455.0,
"id": 1156574542
},
{
"city": "Wuhai",
"city_ascii": "Wuhai",
"lat": 39.6844,
"lng": 106.8158,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": "minor",
"population": 532902.0,
"id": 1156575615
},
{
"city": "Da’an",
"city_ascii": "Da'an",
"lat": 45.505,
"lng": 124.2863,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 418232.0,
"id": 1156577983
},
{
"city": "Danyang",
"city_ascii": "Danyang",
"lat": 31.9948,
"lng": 119.575,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 980662.0,
"id": 1156578273
},
{
"city": "Zhongshan",
"city_ascii": "Zhongshan",
"lat": 22.5333,
"lng": 113.35,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2909633.0,
"id": 1156579621
},
{
"city": "Huludao",
"city_ascii": "Huludao",
"lat": 40.7094,
"lng": 120.8378,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": "minor",
"population": 2623541.0,
"id": 1156580218
},
{
"city": "Luzhou",
"city_ascii": "Luzhou",
"lat": 28.8918,
"lng": 105.4409,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 4218427.0,
"id": 1156582079
},
{
"city": "Dangyang",
"city_ascii": "Dangyang",
"lat": 30.8258,
"lng": 111.791,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 560000.0,
"id": 1156585505
},
{
"city": "Qingzhen",
"city_ascii": "Qingzhen",
"lat": 26.5555,
"lng": 106.4646,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 467992.0,
"id": 1156587033
},
{
"city": "Yutan",
"city_ascii": "Yutan",
"lat": 28.3147,
"lng": 112.554,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 1368117.0,
"id": 1156592042
},
{
"city": "Anqiu",
"city_ascii": "Anqiu",
"lat": 36.3619,
"lng": 119.1072,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 947723.0,
"id": 1156592047
},
{
"city": "Zhaodong",
"city_ascii": "Zhaodong",
"lat": 46.0635,
"lng": 125.9773,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 666532.0,
"id": 1156601489
},
{
"city": "Nanning",
"city_ascii": "Nanning",
"lat": 22.8192,
"lng": 108.315,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "admin",
"population": 3837978.0,
"id": 1156605439
},
{
"city": "Sihui",
"city_ascii": "Sihui",
"lat": 23.3448,
"lng": 112.6956,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 593400.0,
"id": 1156609451
},
{
"city": "Nehe",
"city_ascii": "Nehe",
"lat": 48.48,
"lng": 124.8738,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 740000.0,
"id": 1156609562
},
{
"city": "Lecheng",
"city_ascii": "Lecheng",
"lat": 25.1307,
"lng": 113.3472,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 419500.0,
"id": 1156612198
},
{
"city": "Shaoguan",
"city_ascii": "Shaoguan",
"lat": 24.8011,
"lng": 113.5927,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2997600.0,
"id": 1156617066
},
{
"city": "Xinzhou",
"city_ascii": "Xinzhou",
"lat": 38.4178,
"lng": 112.7233,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 3067501.0,
"id": 1156617534
},
{
"city": "Wuzhou",
"city_ascii": "Wuzhou",
"lat": 23.4833,
"lng": 111.3167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 3061100.0,
"id": 1156620133
},
{
"city": "Ning’an",
"city_ascii": "Ning'an",
"lat": 44.3439,
"lng": 129.4656,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 440000.0,
"id": 1156629205
},
{
"city": "Zhongxiang",
"city_ascii": "Zhongxiang",
"lat": 31.169,
"lng": 112.5853,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 1022514.0,
"id": 1156631720
},
{
"city": "Taiyuan",
"city_ascii": "Taiyuan",
"lat": 37.8733,
"lng": 112.5425,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "admin",
"population": 3875053.0,
"id": 1156632014
},
{
"city": "Longba",
"city_ascii": "Longba",
"lat": 33.535,
"lng": 105.349,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": null,
"population": 2567718.0,
"id": 1156633259
},
{
"city": "Huai’an",
"city_ascii": "Huai'an",
"lat": 33.5058,
"lng": 119.1392,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 2632788.0,
"id": 1156634228
},
{
"city": "Zhenzhou",
"city_ascii": "Zhenzhou",
"lat": 32.2739,
"lng": 119.1619,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 564021.0,
"id": 1156634387
},
{
"city": "Nanjing",
"city_ascii": "Nanjing",
"lat": 32.0608,
"lng": 118.7789,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "admin",
"population": 8422000.0,
"id": 1156644065
},
{
"city": "Pudong",
"city_ascii": "Pudong",
"lat": 31.2231,
"lng": 121.5397,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanghai",
"capital": "minor",
"population": 5681512.0,
"id": 1156644508
},
{
"city": "Jilin",
"city_ascii": "Jilin",
"lat": 43.8519,
"lng": 126.5481,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 2396000.0,
"id": 1156646448
},
{
"city": "Encheng",
"city_ascii": "Encheng",
"lat": 22.1879,
"lng": 112.3131,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 509700.0,
"id": 1156653230
},
{
"city": "Suining",
"city_ascii": "Suining",
"lat": 30.5098,
"lng": 105.5737,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 3252619.0,
"id": 1156655650
},
{
"city": "Dingzhou",
"city_ascii": "Dingzhou",
"lat": 38.5158,
"lng": 114.9845,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 1165182.0,
"id": 1156656582
},
{
"city": "Xunyang",
"city_ascii": "Xunyang",
"lat": 32.8357,
"lng": 109.359,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": null,
"population": 426677.0,
"id": 1156656651
},
{
"city": "Jiaji",
"city_ascii": "Jiaji",
"lat": 19.2431,
"lng": 110.4642,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "minor",
"population": 515700.0,
"id": 1156658217
},
{
"city": "Zhongshu",
"city_ascii": "Zhongshu",
"lat": 27.8116,
"lng": 106.4133,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 679624.0,
"id": 1156658422
},
{
"city": "Panshi",
"city_ascii": "Panshi",
"lat": 42.9392,
"lng": 126.0561,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 370238.0,
"id": 1156659612
},
{
"city": "Jin’e",
"city_ascii": "Jin'e",
"lat": 29.3395,
"lng": 105.2868,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 633210.0,
"id": 1156661253
},
{
"city": "Huaiyin",
"city_ascii": "Huaiyin",
"lat": 33.5819,
"lng": 119.028,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 1264000.0,
"id": 1156662372
},
{
"city": "Heyuan",
"city_ascii": "Heyuan",
"lat": 23.7503,
"lng": 114.6923,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 3093900.0,
"id": 1156665165
},
{
"city": "Yakeshi",
"city_ascii": "Yakeshi",
"lat": 49.2842,
"lng": 120.7283,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Inner Mongolia",
"capital": "minor",
"population": 352173.0,
"id": 1156666223
},
{
"city": "Shaoyang",
"city_ascii": "Shaoyang",
"lat": 32.9387,
"lng": 119.8404,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 1253548.0,
"id": 1156668366
},
{
"city": "Chaohucun",
"city_ascii": "Chaohucun",
"lat": 31.6783,
"lng": 117.7353,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 782000.0,
"id": 1156671495
},
{
"city": "Shengli",
"city_ascii": "Shengli",
"lat": 37.45,
"lng": 118.4667,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 2193518.0,
"id": 1156672254
},
{
"city": "Gaomi",
"city_ascii": "Gaomi",
"lat": 36.3833,
"lng": 119.75,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 868715.0,
"id": 1156673331
},
{
"city": "Qionghu",
"city_ascii": "Qionghu",
"lat": 28.8417,
"lng": 112.3595,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 667104.0,
"id": 1156678111
},
{
"city": "Gulou",
"city_ascii": "Gulou",
"lat": 26.0865,
"lng": 119.298,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2606000.0,
"id": 1156680279
},
{
"city": "Yuxi",
"city_ascii": "Yuxi",
"lat": 24.3495,
"lng": 102.5432,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 2386000.0,
"id": 1156682309
},
{
"city": "Lanxi",
"city_ascii": "Lanxi",
"lat": 29.2167,
"lng": 119.4722,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 560514.0,
"id": 1156686465
},
{
"city": "Kaifeng Chengguanzhen",
"city_ascii": "Kaifeng Chengguanzhen",
"lat": 34.8519,
"lng": 114.3481,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 872000.0,
"id": 1156686574
},
{
"city": "Qingnian",
"city_ascii": "Qingnian",
"lat": 36.8494,
"lng": 115.7061,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 760781.0,
"id": 1156689964
},
{
"city": "Shahe",
"city_ascii": "Shahe",
"lat": 36.8622,
"lng": 114.502,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 486329.0,
"id": 1156690538
},
{
"city": "Miluo Chengguanzhen",
"city_ascii": "Miluo Chengguanzhen",
"lat": 28.8049,
"lng": 113.0745,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 692080.0,
"id": 1156690651
},
{
"city": "Tanbei",
"city_ascii": "Tanbei",
"lat": 35.0907,
"lng": 112.9317,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 447701.0,
"id": 1156690688
},
{
"city": "Yongzhou",
"city_ascii": "Yongzhou",
"lat": 26.4515,
"lng": 111.5953,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 5452100.0,
"id": 1156694479
},
{
"city": "Gongzhuling",
"city_ascii": "Gongzhuling",
"lat": 43.5036,
"lng": 124.8088,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 1092692.0,
"id": 1156696810
},
{
"city": "Hengyang",
"city_ascii": "Hengyang",
"lat": 26.8968,
"lng": 112.5857,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": null,
"population": 7243400.0,
"id": 1156696884
},
{
"city": "Cangzhou",
"city_ascii": "Cangzhou",
"lat": 38.3037,
"lng": 116.8452,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 7544300.0,
"id": 1156698069
},
{
"city": "Wuxi",
"city_ascii": "Wuxi",
"lat": 26.5895,
"lng": 111.8481,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 853197.0,
"id": 1156698595
},
{
"city": "Leping",
"city_ascii": "Leping",
"lat": 28.9632,
"lng": 117.1203,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 852800.0,
"id": 1156705082
},
{
"city": "Yuncheng",
"city_ascii": "Yuncheng",
"lat": 35.0304,
"lng": 110.998,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 5134779.0,
"id": 1156705644
},
{
"city": "Xingcheng",
"city_ascii": "Xingcheng",
"lat": 40.6189,
"lng": 120.7205,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 546176.0,
"id": 1156705922
},
{
"city": "Chaoyang",
"city_ascii": "Chaoyang",
"lat": 41.5757,
"lng": 120.4486,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 3044641.0,
"id": 1156706927
},
{
"city": "Pinghu",
"city_ascii": "Pinghu",
"lat": 30.7005,
"lng": 121.0104,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 671834.0,
"id": 1156720536
},
{
"city": "Zhuhai",
"city_ascii": "Zhuhai",
"lat": 22.2769,
"lng": 113.5678,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2439585.0,
"id": 1156722242
},
{
"city": "Wu’an",
"city_ascii": "Wu'an",
"lat": 36.6941,
"lng": 114.1847,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 819000.0,
"id": 1156729960
},
{
"city": "Helixi",
"city_ascii": "Helixi",
"lat": 30.6267,
"lng": 118.9861,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 376857.0,
"id": 1156734041
},
{
"city": "Pingdingshan",
"city_ascii": "Pingdingshan",
"lat": 33.735,
"lng": 113.2999,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 4904701.0,
"id": 1156735124
},
{
"city": "Foshan",
"city_ascii": "Foshan",
"lat": 23.0292,
"lng": 113.1056,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 9498863.0,
"id": 1156738403
},
{
"city": "Yicheng",
"city_ascii": "Yicheng",
"lat": 31.7117,
"lng": 112.2551,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 512530.0,
"id": 1156742818
},
{
"city": "Qujing",
"city_ascii": "Qujing",
"lat": 25.5102,
"lng": 103.8029,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 6155400.0,
"id": 1156747998
},
{
"city": "Yingchuan",
"city_ascii": "Yingchuan",
"lat": 34.1511,
"lng": 113.4733,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 1131896.0,
"id": 1156748426
},
{
"city": "Jiaozhou",
"city_ascii": "Jiaozhou",
"lat": 36.2481,
"lng": 119.9625,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 900500.0,
"id": 1156752602
},
{
"city": "Puning",
"city_ascii": "Puning",
"lat": 23.2993,
"lng": 116.1586,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 2118200.0,
"id": 1156756494
},
{
"city": "Zunhua",
"city_ascii": "Zunhua",
"lat": 40.1881,
"lng": 117.9593,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 737011.0,
"id": 1156756935
},
{
"city": "Yichun",
"city_ascii": "Yichun",
"lat": 47.7235,
"lng": 128.8893,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 1148126.0,
"id": 1156757274
},
{
"city": "Zhengjiatun",
"city_ascii": "Zhengjiatun",
"lat": 43.513,
"lng": 123.5003,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 419529.0,
"id": 1156759747
},
{
"city": "Wuwei",
"city_ascii": "Wuwei",
"lat": 37.9278,
"lng": 102.6329,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 1815059.0,
"id": 1156760291
},
{
"city": "Xintai",
"city_ascii": "Xintai",
"lat": 35.91,
"lng": 117.78,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1315942.0,
"id": 1156761230
},
{
"city": "Nanchong",
"city_ascii": "Nanchong",
"lat": 30.7991,
"lng": 106.0784,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 6278614.0,
"id": 1156762337
},
{
"city": "Xiaoxita",
"city_ascii": "Xiaoxita",
"lat": 30.7083,
"lng": 111.2803,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": "minor",
"population": 4137900.0,
"id": 1156764447
},
{
"city": "Suoluntun",
"city_ascii": "Suoluntun",
"lat": 45.2279,
"lng": 124.8432,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 495900.0,
"id": 1156764587
},
{
"city": "Tieli",
"city_ascii": "Tieli",
"lat": 46.9838,
"lng": 128.04,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 390000.0,
"id": 1156769379
},
{
"city": "Zhijiang",
"city_ascii": "Zhijiang",
"lat": 30.4271,
"lng": 111.7506,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 495995.0,
"id": 1156769646
},
{
"city": "Tianchang",
"city_ascii": "Tianchang",
"lat": 32.6853,
"lng": 119.0041,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 602840.0,
"id": 1156770851
},
{
"city": "Qiqihar",
"city_ascii": "Qiqihar",
"lat": 47.3398,
"lng": 123.9512,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 5367003.0,
"id": 1156775905
},
{
"city": "Gaozhou",
"city_ascii": "Gaozhou",
"lat": 21.9135,
"lng": 110.8481,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 1414100.0,
"id": 1156785303
},
{
"city": "Yangchun",
"city_ascii": "Yangchun",
"lat": 22.1717,
"lng": 111.7846,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 891800.0,
"id": 1156787307
},
{
"city": "Shouguang",
"city_ascii": "Shouguang",
"lat": 36.8833,
"lng": 118.7333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1039205.0,
"id": 1156787809
},
{
"city": "Laohekou",
"city_ascii": "Laohekou",
"lat": 32.3849,
"lng": 111.6695,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 471482.0,
"id": 1156791804
},
{
"city": "Rongjiawan",
"city_ascii": "Rongjiawan",
"lat": 29.1409,
"lng": 113.1087,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "minor",
"population": 826000.0,
"id": 1156795164
},
{
"city": "Zaozhuang",
"city_ascii": "Zaozhuang",
"lat": 34.8667,
"lng": 117.55,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 3729140.0,
"id": 1156796454
},
{
"city": "Huazhou",
"city_ascii": "Huazhou",
"lat": 32.6832,
"lng": 112.079,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 1468061.0,
"id": 1156796734
},
{
"city": "Zhangjiakou",
"city_ascii": "Zhangjiakou",
"lat": 40.8108,
"lng": 114.8811,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 4345485.0,
"id": 1156800221
},
{
"city": "Hengshui",
"city_ascii": "Hengshui",
"lat": 37.7348,
"lng": 115.686,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 4472000.0,
"id": 1156803028
},
{
"city": "Tongren",
"city_ascii": "Tongren",
"lat": 27.7233,
"lng": 109.1885,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 3168800.0,
"id": 1156803442
},
{
"city": "Hailun",
"city_ascii": "Hailun",
"lat": 47.4585,
"lng": 126.9632,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 850000.0,
"id": 1156804488
},
{
"city": "Shangqiu",
"city_ascii": "Shangqiu",
"lat": 34.4259,
"lng": 115.6467,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 7816831.0,
"id": 1156805441
},
{
"city": "Putian",
"city_ascii": "Putian",
"lat": 25.4394,
"lng": 119.0103,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 3210714.0,
"id": 1156811601
},
{
"city": "Jiaojiangcun",
"city_ascii": "Jiaojiangcun",
"lat": 28.6804,
"lng": 121.45,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 471500.0,
"id": 1156812073
},
{
"city": "Yucheng",
"city_ascii": "Yucheng",
"lat": 29.9888,
"lng": 103.0007,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 1507258.0,
"id": 1156817119
},
{
"city": "Zouping",
"city_ascii": "Zouping",
"lat": 36.8625,
"lng": 117.7424,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 774517.0,
"id": 1156817518
},
{
"city": "Guyuan",
"city_ascii": "Guyuan",
"lat": 36.008,
"lng": 106.2782,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Ningxia",
"capital": null,
"population": 1426000.0,
"id": 1156817541
},
{
"city": "Yangzhou",
"city_ascii": "Yangzhou",
"lat": 32.3912,
"lng": 119.4363,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 4559797.0,
"id": 1156818601
},
{
"city": "Dayan",
"city_ascii": "Dayan",
"lat": 26.8808,
"lng": 100.2208,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 1296000.0,
"id": 1156828380
},
{
"city": "Quanzhou",
"city_ascii": "Quanzhou",
"lat": 24.9139,
"lng": 118.5858,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 8782285.0,
"id": 1156829655
},
{
"city": "Ganzhou",
"city_ascii": "Ganzhou",
"lat": 25.8292,
"lng": 114.9336,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": "minor",
"population": 8970014.0,
"id": 1156832475
},
{
"city": "Tengyue",
"city_ascii": "Tengyue",
"lat": 25.0208,
"lng": 98.4972,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": "minor",
"population": 644765.0,
"id": 1156832866
},
{
"city": "Dazhou",
"city_ascii": "Dazhou",
"lat": 31.2152,
"lng": 107.4947,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 5468097.0,
"id": 1156834076
},
{
"city": "Lingbao Chengguanzhen",
"city_ascii": "Lingbao Chengguanzhen",
"lat": 34.5221,
"lng": 110.8786,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 656571.0,
"id": 1156837145
},
{
"city": "Songzi",
"city_ascii": "Songzi",
"lat": 30.1772,
"lng": 111.7732,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 765911.0,
"id": 1156837705
},
{
"city": "Dali",
"city_ascii": "Dali",
"lat": 25.6808,
"lng": 100.3003,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 771128.0,
"id": 1156840276
},
{
"city": "Yongcheng",
"city_ascii": "Yongcheng",
"lat": 33.9317,
"lng": 116.4459,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": null,
"population": 1240382.0,
"id": 1156841802
},
{
"city": "Ma’anshan",
"city_ascii": "Ma'anshan",
"lat": 31.6858,
"lng": 118.5101,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": "minor",
"population": 2202899.0,
"id": 1156847452
},
{
"city": "Tongchuan",
"city_ascii": "Tongchuan",
"lat": 34.9057,
"lng": 108.9422,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": "minor",
"population": 834437.0,
"id": 1156849608
},
{
"city": "Fushun",
"city_ascii": "Fushun",
"lat": 41.8708,
"lng": 123.8917,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 2024000.0,
"id": 1156857743
},
{
"city": "Lishui",
"city_ascii": "Lishui",
"lat": 28.45,
"lng": 119.9167,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 2507396.0,
"id": 1156858793
},
{
"city": "Leizhou",
"city_ascii": "Leizhou",
"lat": 20.9147,
"lng": 110.0806,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 1494700.0,
"id": 1156863840
},
{
"city": "Longzhou",
"city_ascii": "Longzhou",
"lat": 30.32,
"lng": 112.23,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 520000.0,
"id": 1156863928
},
{
"city": "Mingguang",
"city_ascii": "Mingguang",
"lat": 32.7816,
"lng": 117.9899,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 532732.0,
"id": 1156864248
},
{
"city": "Chengguan",
"city_ascii": "Chengguan",
"lat": 35.5256,
"lng": 113.6976,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 740435.0,
"id": 1156866870
},
{
"city": "Suzhou",
"city_ascii": "Suzhou",
"lat": 33.6333,
"lng": 116.9683,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 5352924.0,
"id": 1156871297
},
{
"city": "Qingzhou",
"city_ascii": "Qingzhou",
"lat": 36.6967,
"lng": 118.4797,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 914047.0,
"id": 1156874864
},
{
"city": "Taihecun",
"city_ascii": "Taihecun",
"lat": 45.768,
"lng": 131.0063,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Heilongjiang",
"capital": "minor",
"population": 920471.0,
"id": 1156875484
},
{
"city": "Huainan",
"city_ascii": "Huainan",
"lat": 32.4831,
"lng": 117.0164,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Anhui",
"capital": null,
"population": 2333896.0,
"id": 1156877299
},
{
"city": "Chengtangcun",
"city_ascii": "Chengtangcun",
"lat": 35.0833,
"lng": 117.15,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 1603659.0,
"id": 1156883901
},
{
"city": "Karamay",
"city_ascii": "Karamay",
"lat": 45.5799,
"lng": 84.8892,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 391008.0,
"id": 1156892128
},
{
"city": "Shaoxing",
"city_ascii": "Shaoxing",
"lat": 30.0,
"lng": 120.5833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": "minor",
"population": 2521964.0,
"id": 1156893449
},
{
"city": "Fuqing",
"city_ascii": "Fuqing",
"lat": 25.7232,
"lng": 119.3735,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 1390487.0,
"id": 1156893569
},
{
"city": "Kuqa",
"city_ascii": "Kuqa",
"lat": 41.7156,
"lng": 82.9322,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 462588.0,
"id": 1156894895
},
{
"city": "Guigang",
"city_ascii": "Guigang",
"lat": 23.0961,
"lng": 109.6092,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 4409200.0,
"id": 1156895251
},
{
"city": "Jurong",
"city_ascii": "Jurong",
"lat": 31.9579,
"lng": 119.1595,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 617706.0,
"id": 1156897463
},
{
"city": "Dehui",
"city_ascii": "Dehui",
"lat": 44.5333,
"lng": 125.7,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": null,
"population": 839786.0,
"id": 1156898134
},
{
"city": "Xiping",
"city_ascii": "Xiping",
"lat": 40.082,
"lng": 113.2981,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": "minor",
"population": 1873000.0,
"id": 1156898522
},
{
"city": "Yueqing",
"city_ascii": "Yueqing",
"lat": 28.1188,
"lng": 120.9621,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 488980.0,
"id": 1156900058
},
{
"city": "Yulin",
"city_ascii": "Yulin",
"lat": 22.6293,
"lng": 110.1507,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 5849700.0,
"id": 1156901312
},
{
"city": "Dadukou",
"city_ascii": "Dadukou",
"lat": 26.5849,
"lng": 101.7149,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 1214121.0,
"id": 1156901342
},
{
"city": "Changshu",
"city_ascii": "Changshu",
"lat": 31.65,
"lng": 120.7333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": null,
"population": 1677050.0,
"id": 1156901538
},
{
"city": "Anshan",
"city_ascii": "Anshan",
"lat": 41.1066,
"lng": 122.9895,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Liaoning",
"capital": null,
"population": 3645884.0,
"id": 1156901825
},
{
"city": "Weinan",
"city_ascii": "Weinan",
"lat": 34.4996,
"lng": 109.4684,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shaanxi",
"capital": "minor",
"population": 5286077.0,
"id": 1156903687
},
{
"city": "Tangshan",
"city_ascii": "Tangshan",
"lat": 39.6292,
"lng": 118.1742,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 3399231.0,
"id": 1156904299
},
{
"city": "Hongzhai",
"city_ascii": "Hongzhai",
"lat": 34.9857,
"lng": 104.5446,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": null,
"population": 355037.0,
"id": 1156905289
},
{
"city": "Ningde",
"city_ascii": "Ningde",
"lat": 26.6617,
"lng": 119.5228,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2910000.0,
"id": 1156909802
},
{
"city": "Xiaoyi",
"city_ascii": "Xiaoyi",
"lat": 37.1449,
"lng": 111.7718,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shanxi",
"capital": null,
"population": 468770.0,
"id": 1156910270
},
{
"city": "Nada",
"city_ascii": "Nada",
"lat": 19.5,
"lng": 109.5833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "minor",
"population": 977700.0,
"id": 1156911678
},
{
"city": "Weifang",
"city_ascii": "Weifang",
"lat": 36.7167,
"lng": 119.1,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 2636154.0,
"id": 1156912965
},
{
"city": "Xingcheng",
"city_ascii": "Xingcheng",
"lat": 24.1681,
"lng": 115.6669,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 993000.0,
"id": 1156913008
},
{
"city": "Fuzhou",
"city_ascii": "Fuzhou",
"lat": 27.9814,
"lng": 116.3577,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 4047200.0,
"id": 1156915325
},
{
"city": "Qianxi",
"city_ascii": "Qianxi",
"lat": 27.0284,
"lng": 106.0327,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": null,
"population": 695947.0,
"id": 1156919716
},
{
"city": "Shenzhou",
"city_ascii": "Shenzhou",
"lat": 38.0005,
"lng": 115.5541,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 566087.0,
"id": 1156921843
},
{
"city": "Zhaotong",
"city_ascii": "Zhaotong",
"lat": 27.3328,
"lng": 103.7144,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Yunnan",
"capital": null,
"population": 5591000.0,
"id": 1156924687
},
{
"city": "Laibin",
"city_ascii": "Laibin",
"lat": 23.7333,
"lng": 109.2333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 2233900.0,
"id": 1156925734
},
{
"city": "Nanping",
"city_ascii": "Nanping",
"lat": 26.6448,
"lng": 118.1728,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Fujian",
"capital": "minor",
"population": 2690000.0,
"id": 1156927445
},
{
"city": "Langzhong",
"city_ascii": "Langzhong",
"lat": 31.5504,
"lng": 105.9938,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Sichuan",
"capital": "minor",
"population": 728935.0,
"id": 1156930148
},
{
"city": "Guiyang",
"city_ascii": "Guiyang",
"lat": 26.5794,
"lng": 106.7078,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guizhou",
"capital": "admin",
"population": 3299724.0,
"id": 1156932620
},
{
"city": "Yantai",
"city_ascii": "Yantai",
"lat": 37.3997,
"lng": 121.2664,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 2511053.0,
"id": 1156932948
},
{
"city": "Licheng",
"city_ascii": "Licheng",
"lat": 31.4174,
"lng": 119.4786,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 749522.0,
"id": 1156933354
},
{
"city": "Zhenjiang",
"city_ascii": "Zhenjiang",
"lat": 32.2109,
"lng": 119.4551,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 3210418.0,
"id": 1156934125
},
{
"city": "Mizhou",
"city_ascii": "Mizhou",
"lat": 35.99,
"lng": 119.3801,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "minor",
"population": 1060000.0,
"id": 1156935002
},
{
"city": "Chongqing",
"city_ascii": "Chongqing",
"lat": 29.55,
"lng": 106.5069,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Chongqing",
"capital": "admin",
"population": 12135000.0,
"id": 1156936556
},
{
"city": "Xinyi",
"city_ascii": "Xinyi",
"lat": 22.3559,
"lng": 110.9369,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 1013900.0,
"id": 1156936644
},
{
"city": "Shanwei",
"city_ascii": "Shanwei",
"lat": 22.7664,
"lng": 115.3331,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": "minor",
"population": 2993600.0,
"id": 1156939010
},
{
"city": "Renqiu",
"city_ascii": "Renqiu",
"lat": 38.7094,
"lng": 116.1008,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": null,
"population": 822455.0,
"id": 1156943939
},
{
"city": "Lianjiang",
"city_ascii": "Lianjiang",
"lat": 21.6146,
"lng": 110.2794,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangdong",
"capital": null,
"population": 1509400.0,
"id": 1156944106
},
{
"city": "Macheng",
"city_ascii": "Macheng",
"lat": 31.1817,
"lng": 115.0189,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hubei",
"capital": null,
"population": 849090.0,
"id": 1156949639
},
{
"city": "Guangming",
"city_ascii": "Guangming",
"lat": 45.3357,
"lng": 122.7765,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 437559.0,
"id": 1156955625
},
{
"city": "Zhongwei",
"city_ascii": "Zhongwei",
"lat": 37.5139,
"lng": 105.1884,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Ningxia",
"capital": "minor",
"population": 1067336.0,
"id": 1156956616
},
{
"city": "Handan",
"city_ascii": "Handan",
"lat": 36.6116,
"lng": 114.4894,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hebei",
"capital": "minor",
"population": 2708015.0,
"id": 1156957080
},
{
"city": "Xibeijie",
"city_ascii": "Xibeijie",
"lat": 39.737,
"lng": 98.5049,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Gansu",
"capital": "minor",
"population": 1095947.0,
"id": 1156960560
},
{
"city": "Baishan",
"city_ascii": "Baishan",
"lat": 41.9377,
"lng": 126.4179,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 1296127.0,
"id": 1156960624
},
{
"city": "Changsha",
"city_ascii": "Changsha",
"lat": 28.1987,
"lng": 112.9709,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hunan",
"capital": "admin",
"population": 4766296.0,
"id": 1156961497
},
{
"city": "Korla",
"city_ascii": "Korla",
"lat": 41.7259,
"lng": 86.1746,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Xinjiang",
"capital": "minor",
"population": 770000.0,
"id": 1156965620
},
{
"city": "Shuangqiao",
"city_ascii": "Shuangqiao",
"lat": 35.0833,
"lng": 112.5833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Henan",
"capital": "minor",
"population": 733000.0,
"id": 1156968311
},
{
"city": "Jinan",
"city_ascii": "Jinan",
"lat": 36.6667,
"lng": 116.9833,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": "admin",
"population": 5606374.0,
"id": 1156972469
},
{
"city": "Laixi",
"city_ascii": "Laixi",
"lat": 36.8667,
"lng": 120.5333,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Shandong",
"capital": null,
"population": 762900.0,
"id": 1156973102
},
{
"city": "Baicheng",
"city_ascii": "Baicheng",
"lat": 23.901,
"lng": 106.6194,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Guangxi",
"capital": "minor",
"population": 3669400.0,
"id": 1156981113
},
{
"city": "Wencheng",
"city_ascii": "Wencheng",
"lat": 19.6167,
"lng": 110.75,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Hainan",
"capital": "minor",
"population": 568900.0,
"id": 1156985313
},
{
"city": "Baisha",
"city_ascii": "Baisha",
"lat": 29.4774,
"lng": 119.2853,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 446000.0,
"id": 1156988315
},
{
"city": "Shulan",
"city_ascii": "Shulan",
"lat": 44.4079,
"lng": 126.9429,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jilin",
"capital": "minor",
"population": 663403.0,
"id": 1156989733
},
{
"city": "Rui’an",
"city_ascii": "Rui'an",
"lat": 27.778,
"lng": 120.6526,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Zhejiang",
"capital": null,
"population": 1424667.0,
"id": 1156993705
},
{
"city": "Yancheng",
"city_ascii": "Yancheng",
"lat": 33.3936,
"lng": 120.1339,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangsu",
"capital": "minor",
"population": 7260240.0,
"id": 1156995410
},
{
"city": "Zhangshu",
"city_ascii": "Zhangshu",
"lat": 28.0667,
"lng": 115.5375,
"country": "China",
"iso2": "CN",
"iso3": "CHN",
"admin_name": "Jiangxi",
"capital": null,
"population": 610424.0,
"id": 1156996913
},
{
"city": "Zhongli",
"city_ascii": "Zhongli",
"lat": 24.965,
"lng": 121.2168,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Taoyuan",
"capital": null,
"population": 1632616.0,
"id": 1158025380
},
{
"city": "Tainan",
"city_ascii": "Tainan",
"lat": 22.9833,
"lng": 120.1833,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Tainan",
"capital": "admin",
"population": 1874686.0,
"id": 1158061376
},
{
"city": "Taoyuan District",
"city_ascii": "Taoyuan District",
"lat": 24.9913,
"lng": 121.3143,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Taoyuan",
"capital": "admin",
"population": 443273.0,
"id": 1158127875
},
{
"city": "Pingtung",
"city_ascii": "Pingtung",
"lat": 22.6761,
"lng": 120.4942,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Pingtung",
"capital": "admin",
"population": 503530.0,
"id": 1158209038
},
{
"city": "Hsinchu",
"city_ascii": "Hsinchu",
"lat": 24.8167,
"lng": 120.9833,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Hsinchu",
"capital": "admin",
"population": 499348.0,
"id": 1158276420
},
{
"city": "Kaohsiung",
"city_ascii": "Kaohsiung",
"lat": 22.615,
"lng": 120.2975,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Kaohsiung",
"capital": "admin",
"population": 2733566.0,
"id": 1158331334
},
{
"city": "Changhua",
"city_ascii": "Changhua",
"lat": 24.0667,
"lng": 120.5333,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Changhua",
"capital": "admin",
"population": 750000.0,
"id": 1158439005
},
{
"city": "Taichung",
"city_ascii": "Taichung",
"lat": 24.1439,
"lng": 120.6794,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Taichung",
"capital": "admin",
"population": 3033885.0,
"id": 1158689622
},
{
"city": "Keelung",
"city_ascii": "Keelung",
"lat": 25.1333,
"lng": 121.7333,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Keelung",
"capital": "admin",
"population": 370155.0,
"id": 1158820647
},
{
"city": "Taipei",
"city_ascii": "Taipei",
"lat": 25.0375,
"lng": 121.5625,
"country": "Taiwan",
"iso2": "TW",
"iso3": "TWN",
"admin_name": "Taipei",
"capital": "primary",
"population": 9078000.0,
"id": 1158881289
},
{
"city": "Neiva",
"city_ascii": "Neiva",
"lat": 2.9345,
"lng": -75.2809,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Huila",
"capital": "admin",
"population": 353033.0,
"id": 1170159963
},
{
"city": "Barranquilla",
"city_ascii": "Barranquilla",
"lat": 10.9833,
"lng": -74.8019,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Atlántico",
"capital": "admin",
"population": 1326588.0,
"id": 1170179113
},
{
"city": "Ibagué",
"city_ascii": "Ibague",
"lat": 4.4333,
"lng": -75.2333,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Tolima",
"capital": "admin",
"population": 541101.0,
"id": 1170245063
},
{
"city": "Buenaventura",
"city_ascii": "Buenaventura",
"lat": 3.8772,
"lng": -77.0267,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Valle del Cauca",
"capital": "minor",
"population": 423927.0,
"id": 1170287988
},
{
"city": "Pasto",
"city_ascii": "Pasto",
"lat": 1.2078,
"lng": -77.2772,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Nariño",
"capital": "admin",
"population": 392930.0,
"id": 1170320545
},
{
"city": "Pereira",
"city_ascii": "Pereira",
"lat": 4.8143,
"lng": -75.6946,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Risaralda",
"capital": "admin",
"population": 590554.0,
"id": 1170386718
},
{
"city": "Cali",
"city_ascii": "Cali",
"lat": 3.4206,
"lng": -76.5222,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Valle del Cauca",
"capital": "admin",
"population": 2471474.0,
"id": 1170417589
},
{
"city": "Bello",
"city_ascii": "Bello",
"lat": 6.3333,
"lng": -75.5667,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Antioquia",
"capital": "minor",
"population": 495483.0,
"id": 1170423489
},
{
"city": "Villavicencio",
"city_ascii": "Villavicencio",
"lat": 4.15,
"lng": -73.6333,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Meta",
"capital": "admin",
"population": 664148.0,
"id": 1170426927
},
{
"city": "Valledupar",
"city_ascii": "Valledupar",
"lat": 10.4833,
"lng": -73.25,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Cesar",
"capital": "admin",
"population": 544134.0,
"id": 1170481949
},
{
"city": "Bogotá",
"city_ascii": "Bogota",
"lat": 4.7111,
"lng": -74.0722,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Bogotá",
"capital": "primary",
"population": 7968095.0,
"id": 1170483426
},
{
"city": "Soacha",
"city_ascii": "Soacha",
"lat": 4.5872,
"lng": -74.2214,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Cundinamarca",
"capital": "minor",
"population": 522442.0,
"id": 1170512000
},
{
"city": "Palermo",
"city_ascii": "Palermo",
"lat": 2.8917,
"lng": -75.4375,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Huila",
"capital": "minor",
"population": 800000.0,
"id": 1170614290
},
{
"city": "Medellín",
"city_ascii": "Medellin",
"lat": 6.2308,
"lng": -75.5906,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Antioquia",
"capital": "admin",
"population": 2529403.0,
"id": 1170680389
},
{
"city": "Santa Marta",
"city_ascii": "Santa Marta",
"lat": 11.2419,
"lng": -74.2053,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Magdalena",
"capital": "admin",
"population": 515556.0,
"id": 1170715594
},
{
"city": "Cúcuta",
"city_ascii": "Cucuta",
"lat": 7.8942,
"lng": -72.5039,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Norte de Santander",
"capital": "admin",
"population": 750000.0,
"id": 1170743755
},
{
"city": "Soledad",
"city_ascii": "Soledad",
"lat": 10.9167,
"lng": -74.75,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Atlántico",
"capital": "minor",
"population": 698852.0,
"id": 1170765625
},
{
"city": "Timbío",
"city_ascii": "Timbio",
"lat": 2.3445,
"lng": -76.6839,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Cauca",
"capital": "minor",
"population": 4444444.0,
"id": 1170815311
},
{
"city": "Montería",
"city_ascii": "Monteria",
"lat": 8.75,
"lng": -75.8833,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Córdoba",
"capital": "admin",
"population": 505334.0,
"id": 1170855299
},
{
"city": "Cartagena",
"city_ascii": "Cartagena",
"lat": 10.4,
"lng": -75.5,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Bolívar",
"capital": "admin",
"population": 1036412.0,
"id": 1170886102
},
{
"city": "Manizales",
"city_ascii": "Manizales",
"lat": 5.1,
"lng": -75.55,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Caldas",
"capital": "admin",
"population": 434403.0,
"id": 1170930654
},
{
"city": "Bucaramanga",
"city_ascii": "Bucaramanga",
"lat": 7.1333,
"lng": -73.0,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Santander",
"capital": "admin",
"population": 870752.0,
"id": 1170940590
},
{
"city": "Palmira",
"city_ascii": "Palmira",
"lat": 3.5833,
"lng": -76.25,
"country": "Colombia",
"iso2": "CO",
"iso3": "COL",
"admin_name": "Valle del Cauca",
"capital": "minor",
"population": 349294.0,
"id": 1170969619
},
{
"city": "Brazzaville",
"city_ascii": "Brazzaville",
"lat": -4.2694,
"lng": 15.2714,
"country": "Congo (Brazzaville)",
"iso2": "CG",
"iso3": "COG",
"admin_name": "Brazzaville",
"capital": "primary",
"population": 1827000.0,
"id": 1178340306
},
{
"city": "Pointe-Noire",
"city_ascii": "Pointe-Noire",
"lat": -4.8,
"lng": 11.85,
"country": "Congo (Brazzaville)",
"iso2": "CG",
"iso3": "COG",
"admin_name": "Pointe-Noire",
"capital": "admin",
"population": 829134.0,
"id": 1178411563
},
{
"city": "Kinshasa",
"city_ascii": "Kinshasa",
"lat": -4.325,
"lng": 15.3222,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Kinshasa",
"capital": "primary",
"population": 12836000.0,
"id": 1180000363
},
{
"city": "Bunia",
"city_ascii": "Bunia",
"lat": 1.5667,
"lng": 30.25,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Ituri",
"capital": "admin",
"population": 900666.0,
"id": 1180006418
},
{
"city": "Kananga",
"city_ascii": "Kananga",
"lat": -5.897,
"lng": 22.4488,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Kasaï Central",
"capital": "admin",
"population": 1971704.0,
"id": 1180172460
},
{
"city": "Uvira",
"city_ascii": "Uvira",
"lat": -3.4,
"lng": 29.15,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Sud-Kivu",
"capital": null,
"population": 590000.0,
"id": 1180205443
},
{
"city": "Kolwezi",
"city_ascii": "Kolwezi",
"lat": -10.7167,
"lng": 25.4667,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Lualaba",
"capital": "admin",
"population": 572942.0,
"id": 1180380965
},
{
"city": "Mbuji-Mayi",
"city_ascii": "Mbuji-Mayi",
"lat": -6.15,
"lng": 23.6,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Kasaï Oriental",
"capital": "admin",
"population": 2643000.0,
"id": 1180399586
},
{
"city": "Bukavu",
"city_ascii": "Bukavu",
"lat": -2.5,
"lng": 28.8667,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Sud-Kivu",
"capital": "admin",
"population": 1133000.0,
"id": 1180475821
},
{
"city": "Kisangani",
"city_ascii": "Kisangani",
"lat": 0.5153,
"lng": 25.1911,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Tshopo",
"capital": "admin",
"population": 935977.0,
"id": 1180478201
},
{
"city": "Lubumbashi",
"city_ascii": "Lubumbashi",
"lat": -11.6647,
"lng": 27.4794,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Haut-Katanga",
"capital": "admin",
"population": 1786397.0,
"id": 1180506234
},
{
"city": "Kikwit",
"city_ascii": "Kikwit",
"lat": -5.0386,
"lng": 18.8181,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Kwilu",
"capital": null,
"population": 458000.0,
"id": 1180518247
},
{
"city": "Tshikapa",
"city_ascii": "Tshikapa",
"lat": -6.4167,
"lng": 20.8,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Kasaï",
"capital": null,
"population": 732000.0,
"id": 1180581239
},
{
"city": "Mbandaka",
"city_ascii": "Mbandaka",
"lat": 0.0478,
"lng": 18.2558,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Équateur",
"capital": "admin",
"population": 1187837.0,
"id": 1180720887
},
{
"city": "Likasi",
"city_ascii": "Likasi",
"lat": -10.9833,
"lng": 26.7333,
"country": "Congo (Kinshasa)",
"iso2": "CD",
"iso3": "COD",
"admin_name": "Haut-Katanga",
"capital": null,
"population": 495000.0,
"id": 1180978192
},
{
"city": "San José",
"city_ascii": "San Jose",
"lat": 9.9325,
"lng": -84.08,
"country": "Costa Rica",
"iso2": "CR",
"iso3": "CRI",
"admin_name": "San José",
"capital": "primary",
"population": 1543000.0,
"id": 1188749877
},
{
"city": "Zagreb",
"city_ascii": "Zagreb",
"lat": 45.8167,
"lng": 15.9833,
"country": "Croatia",
"iso2": "HR",
"iso3": "HRV",
"admin_name": "Zagreb, Grad",
"capital": "primary",
"population": 809268.0,
"id": 1191233290
},
{
"city": "Havana",
"city_ascii": "Havana",
"lat": 23.1367,
"lng": -82.3589,
"country": "Cuba",
"iso2": "CU",
"iso3": "CUB",
"admin_name": "La Habana",
"capital": "primary",
"population": 2141652.0,
"id": 1192752771
},
{
"city": "Santiago de Cuba",
"city_ascii": "Santiago de Cuba",
"lat": 20.0217,
"lng": -75.8294,
"country": "Cuba",
"iso2": "CU",
"iso3": "CUB",
"admin_name": "Santiago de Cuba",
"capital": "admin",
"population": 917340.0,
"id": 1192766111
},
{
"city": "Holguín",
"city_ascii": "Holguin",
"lat": 20.8869,
"lng": -76.2592,
"country": "Cuba",
"iso2": "CU",
"iso3": "CUB",
"admin_name": "Holguín",
"capital": "admin",
"population": 350191.0,
"id": 1192920574
},
{
"city": "Olomouc",
"city_ascii": "Olomouc",
"lat": 49.5939,
"lng": 17.2508,
"country": "Czechia",
"iso2": "CZ",
"iso3": "CZE",
"admin_name": "Olomoucký Kraj",
"capital": "admin",
"population": 384000.0,
"id": 1203328061
},
{
"city": "Brno",
"city_ascii": "Brno",
"lat": 49.1925,
"lng": 16.6083,
"country": "Czechia",
"iso2": "CZ",
"iso3": "CZE",
"admin_name": "Jihomoravský Kraj",
"capital": "admin",
"population": 382405.0,
"id": 1203676514
},
{
"city": "Prague",
"city_ascii": "Prague",
"lat": 50.0875,
"lng": 14.4214,
"country": "Czechia",
"iso2": "CZ",
"iso3": "CZE",
"admin_name": "Praha",
"capital": "primary",
"population": 1335084.0,
"id": 1203744823
},
{
"city": "Abomey-Calavi",
"city_ascii": "Abomey-Calavi",
"lat": 6.4486,
"lng": 2.3556,
"country": "Benin",
"iso2": "BJ",
"iso3": "BEN",
"admin_name": "Atlantique",
"capital": null,
"population": 655965.0,
"id": 1204016569
},
{
"city": "Cotonou",
"city_ascii": "Cotonou",
"lat": 6.3667,
"lng": 2.4333,
"country": "Benin",
"iso2": "BJ",
"iso3": "BEN",
"admin_name": "Littoral",
"capital": "primary",
"population": 762000.0,
"id": 1204955174
},
{
"city": "Copenhagen",
"city_ascii": "Copenhagen",
"lat": 55.6761,
"lng": 12.5683,
"country": "Denmark",
"iso2": "DK",
"iso3": "DNK",
"admin_name": "Hovedstaden",
"capital": "primary",
"population": 1366301.0,
"id": 1208763942
},
{
"city": "Santo Domingo",
"city_ascii": "Santo Domingo",
"lat": 18.4764,
"lng": -69.8933,
"country": "Dominican Republic",
"iso2": "DO",
"iso3": "DOM",
"admin_name": "Ozama",
"capital": "primary",
"population": 2581827.0,
"id": 1214636202
},
{
"city": "Santo Domingo Este",
"city_ascii": "Santo Domingo Este",
"lat": 18.4855,
"lng": -69.8734,
"country": "Dominican Republic",
"iso2": "DO",
"iso3": "DOM",
"admin_name": "Ozama",
"capital": "admin",
"population": 948855.0,
"id": 1214664832
},
{
"city": "Santiago",
"city_ascii": "Santiago",
"lat": 19.4572,
"lng": -70.6889,
"country": "Dominican Republic",
"iso2": "DO",
"iso3": "DOM",
"admin_name": "Cibao Norte",
"capital": "admin",
"population": 1343423.0,
"id": 1214985348
},
{
"city": "Quito",
"city_ascii": "Quito",
"lat": -0.22,
"lng": -78.5125,
"country": "Ecuador",
"iso2": "EC",
"iso3": "ECU",
"admin_name": "Pichincha",
"capital": "primary",
"population": 2011388.0,
"id": 1218441993
},
{
"city": "Guayaquil",
"city_ascii": "Guayaquil",
"lat": -2.19,
"lng": -79.8875,
"country": "Ecuador",
"iso2": "EC",
"iso3": "ECU",
"admin_name": "Guayas",
"capital": "admin",
"population": 2723665.0,
"id": 1218802178
},
{
"city": "San Salvador",
"city_ascii": "San Salvador",
"lat": 13.6989,
"lng": -89.1914,
"country": "El Salvador",
"iso2": "SV",
"iso3": "SLV",
"admin_name": "San Salvador",
"capital": "primary",
"population": 567698.0,
"id": 1222647454
},
{
"city": "Usulután",
"city_ascii": "Usulutan",
"lat": 13.35,
"lng": -88.45,
"country": "El Salvador",
"iso2": "SV",
"iso3": "SLV",
"admin_name": "Usulután",
"capital": "admin",
"population": 378606.0,
"id": 1222984157
},
{
"city": "Godē",
"city_ascii": "Gode",
"lat": 5.9527,
"lng": 43.5516,
"country": "Ethiopia",
"iso2": "ET",
"iso3": "ETH",
"admin_name": "Sumalē",
"capital": null,
"population": 980782.0,
"id": 1231128743
},
{
"city": "Ērer Sātā",
"city_ascii": "Erer Sata",
"lat": 9.5667,
"lng": 41.3833,
"country": "Ethiopia",
"iso2": "ET",
"iso3": "ETH",
"admin_name": "Sumalē",
"capital": null,
"population": 649000.0,
"id": 1231563638
},
{
"city": "Addis Ababa",
"city_ascii": "Addis Ababa",
"lat": 9.03,
"lng": 38.74,
"country": "Ethiopia",
"iso2": "ET",
"iso3": "ETH",
"admin_name": "Ādīs Ābeba",
"capital": "primary",
"population": 3041002.0,
"id": 1231824991
},
{
"city": "Asmara",
"city_ascii": "Asmara",
"lat": 15.3228,
"lng": 38.925,
"country": "Eritrea",
"iso2": "ER",
"iso3": "ERI",
"admin_name": "Ma’ĭkel",
"capital": "primary",
"population": 963000.0,
"id": 1232791236
},
{
"city": "Tallinn",
"city_ascii": "Tallinn",
"lat": 59.4372,
"lng": 24.7453,
"country": "Estonia",
"iso2": "EE",
"iso3": "EST",
"admin_name": "Tallinn",
"capital": "primary",
"population": 438341.0,
"id": 1233260021
},
{
"city": "Helsinki",
"city_ascii": "Helsinki",
"lat": 60.1708,
"lng": 24.9375,
"country": "Finland",
"iso2": "FI",
"iso3": "FIN",
"admin_name": "Uusimaa",
"capital": "primary",
"population": 1268296.0,
"id": 1246177997
},
{
"city": "Paris",
"city_ascii": "Paris",
"lat": 48.8567,
"lng": 2.3522,
"country": "France",
"iso2": "FR",
"iso3": "FRA",
"admin_name": "Île-de-France",
"capital": "primary",
"population": 11060000.0,
"id": 1250015082
},
{
"city": "Lyon",
"city_ascii": "Lyon",
"lat": 45.76,
"lng": 4.84,
"country": "France",
"iso2": "FR",
"iso3": "FRA",
"admin_name": "Auvergne-Rhône-Alpes",
"capital": "admin",
"population": 522969.0,
"id": 1250196189
},
{
"city": "Toulouse",
"city_ascii": "Toulouse",
"lat": 43.6045,
"lng": 1.444,
"country": "France",
"iso2": "FR",
"iso3": "FRA",
"admin_name": "Occitanie",
"capital": "admin",
"population": 493465.0,
"id": 1250258110
},
{
"city": "Marseille",
"city_ascii": "Marseille",
"lat": 43.2964,
"lng": 5.37,
"country": "France",
"iso2": "FR",
"iso3": "FRA",
"admin_name": "Provence-Alpes-Côte d’Azur",
"capital": "admin",
"population": 870731.0,
"id": 1250774071
},
{
"city": "Nice",
"city_ascii": "Nice",
"lat": 43.7034,
"lng": 7.2663,
"country": "France",
"iso2": "FR",
"iso3": "FRA",
"admin_name": "Provence-Alpes-Côte d’Azur",
"capital": "minor",
"population": 342669.0,
"id": 1250774553
},
{
"city": "Djibouti",
"city_ascii": "Djibouti",
"lat": 11.5883,
"lng": 43.145,
"country": "Djibouti",
"iso2": "DJ",
"iso3": "DJI",
"admin_name": "Djibouti",
"capital": "primary",
"population": 603900.0,
"id": 1262028958
},
{
"city": "Libreville",
"city_ascii": "Libreville",
"lat": 0.3903,
"lng": 9.4542,
"country": "Gabon",
"iso2": "GA",
"iso3": "GAB",
"admin_name": "Estuaire",
"capital": "primary",
"population": 797003.0,
"id": 1266952885
},
{
"city": "Tbilisi",
"city_ascii": "Tbilisi",
"lat": 41.7225,
"lng": 44.7925,
"country": "Georgia",
"iso2": "GE",
"iso3": "GEO",
"admin_name": "Tbilisi",
"capital": "primary",
"population": 1118035.0,
"id": 1268203191
},
{
"city": "Serekunda",
"city_ascii": "Serekunda",
"lat": 13.4333,
"lng": -16.6667,
"country": "The Gambia",
"iso2": "GM",
"iso3": "GMB",
"admin_name": "Kanifing",
"capital": null,
"population": 340000.0,
"id": 1270640044
},
{
"city": "Banjul",
"city_ascii": "Banjul",
"lat": 13.4531,
"lng": -16.5775,
"country": "The Gambia",
"iso2": "GM",
"iso3": "GMB",
"admin_name": "Banjul",
"capital": "primary",
"population": 413397.0,
"id": 1270723713
},
{
"city": "Wuppertal",
"city_ascii": "Wuppertal",
"lat": 51.2667,
"lng": 7.1833,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "minor",
"population": 355004.0,
"id": 1276004611
},
{
"city": "Cologne",
"city_ascii": "Cologne",
"lat": 50.9364,
"lng": 6.9528,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": null,
"population": 1083498.0,
"id": 1276015998
},
{
"city": "Hamburg",
"city_ascii": "Hamburg",
"lat": 53.55,
"lng": 10.0,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Hamburg",
"capital": "admin",
"population": 2484800.0,
"id": 1276041799
},
{
"city": "Frankfurt",
"city_ascii": "Frankfurt",
"lat": 50.1106,
"lng": 8.6822,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Hesse",
"capital": "minor",
"population": 764104.0,
"id": 1276054552
},
{
"city": "Nuremberg",
"city_ascii": "Nuremberg",
"lat": 49.4539,
"lng": 11.0775,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Bavaria",
"capital": "minor",
"population": 515543.0,
"id": 1276166609
},
{
"city": "Stuttgart",
"city_ascii": "Stuttgart",
"lat": 48.7775,
"lng": 9.18,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Baden-Württemberg",
"capital": "admin",
"population": 2787724.0,
"id": 1276171358
},
{
"city": "Bochum",
"city_ascii": "Bochum",
"lat": 51.4819,
"lng": 7.2158,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "minor",
"population": 364454.0,
"id": 1276227288
},
{
"city": "Bremen",
"city_ascii": "Bremen",
"lat": 53.0833,
"lng": 8.8,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Bremen",
"capital": "admin",
"population": 566573.0,
"id": 1276376509
},
{
"city": "Berlin",
"city_ascii": "Berlin",
"lat": 52.52,
"lng": 13.405,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Berlin",
"capital": "primary",
"population": 4473101.0,
"id": 1276451290
},
{
"city": "Hannover",
"city_ascii": "Hannover",
"lat": 52.3667,
"lng": 9.7167,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Lower Saxony",
"capital": "admin",
"population": 542668.0,
"id": 1276457707
},
{
"city": "Dresden",
"city_ascii": "Dresden",
"lat": 51.05,
"lng": 13.74,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Saxony",
"capital": "admin",
"population": 561922.0,
"id": 1276561036
},
{
"city": "Dortmund",
"city_ascii": "Dortmund",
"lat": 51.5167,
"lng": 7.4667,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "minor",
"population": 587696.0,
"id": 1276562886
},
{
"city": "Leipzig",
"city_ascii": "Leipzig",
"lat": 51.34,
"lng": 12.375,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Saxony",
"capital": "minor",
"population": 615081.0,
"id": 1276563678
},
{
"city": "Düsseldorf",
"city_ascii": "Dusseldorf",
"lat": 51.2333,
"lng": 6.7833,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "admin",
"population": 645923.0,
"id": 1276615258
},
{
"city": "Munich",
"city_ascii": "Munich",
"lat": 48.1375,
"lng": 11.575,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "Bavaria",
"capital": "admin",
"population": 2606021.0,
"id": 1276692352
},
{
"city": "Essen",
"city_ascii": "Essen",
"lat": 51.4508,
"lng": 7.0131,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "minor",
"population": 582415.0,
"id": 1276769247
},
{
"city": "Duisburg",
"city_ascii": "Duisburg",
"lat": 51.4347,
"lng": 6.7625,
"country": "Germany",
"iso2": "DE",
"iso3": "DEU",
"admin_name": "North Rhine-Westphalia",
"capital": "minor",
"population": 495885.0,
"id": 1276977172
},
{
"city": "Boankra",
"city_ascii": "Boankra",
"lat": 6.6944,
"lng": -1.4028,
"country": "Ghana",
"iso2": "GH",
"iso3": "GHA",
"admin_name": "Ashanti",
"capital": null,
"population": 3348000.0,
"id": 1288164978
},
{
"city": "Kumasi",
"city_ascii": "Kumasi",
"lat": 6.6667,
"lng": -1.6167,
"country": "Ghana",
"iso2": "GH",
"iso3": "GHA",
"admin_name": "Ashanti",
"capital": "admin",
"population": 2069350.0,
"id": 1288181103
},
{
"city": "Accra",
"city_ascii": "Accra",
"lat": 5.55,
"lng": -0.2,
"country": "Ghana",
"iso2": "GH",
"iso3": "GHA",
"admin_name": "Greater Accra",
"capital": "primary",
"population": 2388000.0,
"id": 1288299415
},
{
"city": "Domaa-Ahenkro",
"city_ascii": "Domaa-Ahenkro",
"lat": 7.2833,
"lng": -2.8833,
"country": "Ghana",
"iso2": "GH",
"iso3": "GHA",
"admin_name": "Bono",
"capital": null,
"population": 1000000.0,
"id": 1288459533
},
{
"city": "Tamale",
"city_ascii": "Tamale",
"lat": 9.4075,
"lng": -0.8533,
"country": "Ghana",
"iso2": "GH",
"iso3": "GHA",
"admin_name": "Northern",
"capital": "admin",
"population": 1095808.0,
"id": 1288890688
},
{
"city": "Thessaloníki",
"city_ascii": "Thessaloniki",
"lat": 40.6403,
"lng": 22.9347,
"country": "Greece",
"iso2": "GR",
"iso3": "GRC",
"admin_name": "Kentrikí Makedonía",
"capital": "admin",
"population": 824676.0,
"id": 1300397999
},
{
"city": "Piraeus",
"city_ascii": "Piraeus",
"lat": 37.943,
"lng": 23.6469,
"country": "Greece",
"iso2": "GR",
"iso3": "GRC",
"admin_name": "Attikí",
"capital": "minor",
"population": 448997.0,
"id": 1300458367
},
{
"city": "Athens",
"city_ascii": "Athens",
"lat": 37.9842,
"lng": 23.7281,
"country": "Greece",
"iso2": "GR",
"iso3": "GRC",
"admin_name": "Attikí",
"capital": "primary",
"population": 3041131.0,
"id": 1300715560
},
{
"city": "Guatemala City",
"city_ascii": "Guatemala City",
"lat": 14.6099,
"lng": -90.5252,
"country": "Guatemala",
"iso2": "GT",
"iso3": "GTM",
"admin_name": "Guatemala",
"capital": "primary",
"population": 2934841.0,
"id": 1320197916
},
{
"city": "Villa Nueva",
"city_ascii": "Villa Nueva",
"lat": 14.5314,
"lng": -90.5964,
"country": "Guatemala",
"iso2": "GT",
"iso3": "GTM",
"admin_name": "Guatemala",
"capital": "minor",
"population": 618397.0,
"id": 1320353009
},
{
"city": "Mixco",
"city_ascii": "Mixco",
"lat": 14.6338,
"lng": -90.6146,
"country": "Guatemala",
"iso2": "GT",
"iso3": "GTM",
"admin_name": "Guatemala",
"capital": "minor",
"population": 517505.0,
"id": 1320420152
},
{
"city": "Conakry",
"city_ascii": "Conakry",
"lat": 9.5092,
"lng": -13.7122,
"country": "Guinea",
"iso2": "GN",
"iso3": "GIN",
"admin_name": "Conakry",
"capital": "primary",
"population": 1667864.0,
"id": 1324568159
},
{
"city": "Mamou",
"city_ascii": "Mamou",
"lat": 10.3833,
"lng": -12.0833,
"country": "Guinea",
"iso2": "GN",
"iso3": "GIN",
"admin_name": "Mamou",
"capital": "admin",
"population": 376269.0,
"id": 1324990909
},
{
"city": "Carrefour",
"city_ascii": "Carrefour",
"lat": 18.5344,
"lng": -72.4094,
"country": "Haiti",
"iso2": "HT",
"iso3": "HTI",
"admin_name": "Ouest",
"capital": null,
"population": 511345.0,
"id": 1332000098
},
{
"city": "Pétion-Ville",
"city_ascii": "Petion-Ville",
"lat": 18.5128,
"lng": -72.2864,
"country": "Haiti",
"iso2": "HT",
"iso3": "HTI",
"admin_name": "Ouest",
"capital": null,
"population": 359615.0,
"id": 1332051873
},
{
"city": "Port-au-Prince",
"city_ascii": "Port-au-Prince",
"lat": 18.5333,
"lng": -72.3333,
"country": "Haiti",
"iso2": "HT",
"iso3": "HTI",
"admin_name": "Ouest",
"capital": "primary",
"population": 987310.0,
"id": 1332401940
},
{
"city": "Tegucigalpa",
"city_ascii": "Tegucigalpa",
"lat": 14.1,
"lng": -87.2167,
"country": "Honduras",
"iso2": "HN",
"iso3": "HND",
"admin_name": "Francisco Morazán",
"capital": "primary",
"population": 1682725.0,
"id": 1340344059
},
{
"city": "San Pedro Sula",
"city_ascii": "San Pedro Sula",
"lat": 15.5,
"lng": -88.0333,
"country": "Honduras",
"iso2": "HN",
"iso3": "HND",
"admin_name": "Cortés",
"capital": "admin",
"population": 760182.0,
"id": 1340568412
},
{
"city": "Comayagüela",
"city_ascii": "Comayaguela",
"lat": 14.0981,
"lng": -87.2097,
"country": "Honduras",
"iso2": "HN",
"iso3": "HND",
"admin_name": "Francisco Morazán",
"capital": null,
"population": 1250000.0,
"id": 1340762485
},
{
"city": "Sham Shui Po",
"city_ascii": "Sham Shui Po",
"lat": 22.3307,
"lng": 114.1622,
"country": "Hong Kong",
"iso2": "HK",
"iso3": "HKG",
"admin_name": null,
"capital": null,
"population": 405869.0,
"id": 1344000058
},
{
"city": "Kowloon City",
"city_ascii": "Kowloon City",
"lat": 22.3282,
"lng": 114.1916,
"country": "Hong Kong",
"iso2": "HK",
"iso3": "HKG",
"admin_name": null,
"capital": null,
"population": 418732.0,
"id": 1344000061
},
{
"city": "Kowloon",
"city_ascii": "Kowloon",
"lat": 22.3167,
"lng": 114.1833,
"country": "Hong Kong",
"iso2": "HK",
"iso3": "HKG",
"admin_name": null,
"capital": null,
"population": 2108419.0,
"id": 1344538284
},
{
"city": "Sha Tin",
"city_ascii": "Sha Tin",
"lat": 22.3802,
"lng": 114.1898,
"country": "Hong Kong",
"iso2": "HK",
"iso3": "HKG",
"admin_name": null,
"capital": null,
"population": 640000.0,
"id": 1344745541
},
{
"city": "Hong Kong",
"city_ascii": "Hong Kong",
"lat": 22.3,
"lng": 114.2,
"country": "Hong Kong",
"iso2": "HK",
"iso3": "HKG",
"admin_name": null,
"capital": "primary",
"population": 7450000.0,
"id": 1344982653
},
{
"city": "Budapest",
"city_ascii": "Budapest",
"lat": 47.4925,
"lng": 19.0514,
"country": "Hungary",
"iso2": "HU",
"iso3": "HUN",
"admin_name": "Budapest",
"capital": "primary",
"population": 2997958.0,
"id": 1348611435
},
{
"city": "Noida",
"city_ascii": "Noida",
"lat": 28.57,
"lng": 77.32,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 637272.0,
"id": 1356002491
},
{
"city": "Āvadi",
"city_ascii": "Avadi",
"lat": 13.1097,
"lng": 80.0972,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 345996.0,
"id": 1356009111
},
{
"city": "Calicut",
"city_ascii": "Calicut",
"lat": 11.25,
"lng": 75.77,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Kerala",
"capital": "minor",
"population": 431560.0,
"id": 1356010401
},
{
"city": "Farīdābād",
"city_ascii": "Faridabad",
"lat": 28.4167,
"lng": 77.3,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Haryāna",
"capital": null,
"population": 1404653.0,
"id": 1356013205
},
{
"city": "Rasūlpur",
"city_ascii": "Rasulpur",
"lat": 28.57,
"lng": 77.32,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 637272.0,
"id": 1356018224
},
{
"city": "Bhayandar",
"city_ascii": "Bhayandar",
"lat": 19.29,
"lng": 72.85,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 809378.0,
"id": 1356019118
},
{
"city": "Bhātpāra",
"city_ascii": "Bhatpara",
"lat": 22.87,
"lng": 88.41,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 386019.0,
"id": 1356022456
},
{
"city": "Thiruvananthapuram",
"city_ascii": "Thiruvananthapuram",
"lat": 8.4875,
"lng": 76.9525,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Kerala",
"capital": "admin",
"population": 743691.0,
"id": 1356024354
},
{
"city": "Bīkaner",
"city_ascii": "Bikaner",
"lat": 28.0167,
"lng": 73.3119,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 529007.0,
"id": 1356026593
},
{
"city": "Tumkūr",
"city_ascii": "Tumkur",
"lat": 13.34,
"lng": 77.1,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 599078.0,
"id": 1356033724
},
{
"city": "Tinnevelly",
"city_ascii": "Tinnevelly",
"lat": 8.7136,
"lng": 77.7567,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 497826.0,
"id": 1356037155
},
{
"city": "Durgāpur",
"city_ascii": "Durgapur",
"lat": 23.55,
"lng": 87.32,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 581409.0,
"id": 1356045686
},
{
"city": "Gaya",
"city_ascii": "Gaya",
"lat": 24.75,
"lng": 85.01,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 474093.0,
"id": 1356045727
},
{
"city": "Ujjain",
"city_ascii": "Ujjain",
"lat": 23.17,
"lng": 75.79,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Madhya Pradesh",
"capital": null,
"population": 515215.0,
"id": 1356050735
},
{
"city": "Nāgercoil",
"city_ascii": "Nagercoil",
"lat": 8.1833,
"lng": 77.4119,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 622759.0,
"id": 1356051733
},
{
"city": "Ajmer",
"city_ascii": "Ajmer",
"lat": 26.4499,
"lng": 74.6399,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 551101.0,
"id": 1356058258
},
{
"city": "Kurnool",
"city_ascii": "Kurnool",
"lat": 15.83,
"lng": 78.05,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 457633.0,
"id": 1356058372
},
{
"city": "Kolkāta",
"city_ascii": "Kolkata",
"lat": 22.5675,
"lng": 88.37,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": "admin",
"population": 18502000.0,
"id": 1356060520
},
{
"city": "Sasarām",
"city_ascii": "Sasaram",
"lat": 24.95,
"lng": 84.03,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 358283.0,
"id": 1356061200
},
{
"city": "Mathura",
"city_ascii": "Mathura",
"lat": 27.4925,
"lng": 77.6736,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 441894.0,
"id": 1356066081
},
{
"city": "Bhilai",
"city_ascii": "Bhilai",
"lat": 21.21,
"lng": 81.38,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chhattīsgarh",
"capital": null,
"population": 624700.0,
"id": 1356071083
},
{
"city": "Alīgarh",
"city_ascii": "Aligarh",
"lat": 27.88,
"lng": 78.08,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1131160.0,
"id": 1356076391
},
{
"city": "Bhīlwāra",
"city_ascii": "Bhilwara",
"lat": 25.35,
"lng": 74.63,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 509483.0,
"id": 1356077831
},
{
"city": "Pune",
"city_ascii": "Pune",
"lat": 18.5203,
"lng": 73.8567,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 8231000.0,
"id": 1356081074
},
{
"city": "Akola",
"city_ascii": "Akola",
"lat": 20.7,
"lng": 77.0,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 425817.0,
"id": 1356089496
},
{
"city": "Gulbarga",
"city_ascii": "Gulbarga",
"lat": 17.329,
"lng": 76.825,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 533587.0,
"id": 1356091187
},
{
"city": "Āsansol",
"city_ascii": "Asansol",
"lat": 23.68,
"lng": 86.99,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 563917.0,
"id": 1356093694
},
{
"city": "Korba",
"city_ascii": "Korba",
"lat": 22.35,
"lng": 82.68,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chhattīsgarh",
"capital": null,
"population": 365253.0,
"id": 1356093877
},
{
"city": "Raurkela",
"city_ascii": "Raurkela",
"lat": 22.2492,
"lng": 84.8828,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Odisha",
"capital": null,
"population": 600000.0,
"id": 1356096816
},
{
"city": "Bhilai",
"city_ascii": "Bhilai",
"lat": 21.3667,
"lng": 81.7167,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chhattīsgarh",
"capital": null,
"population": 625700.0,
"id": 1356098574
},
{
"city": "Dāsarhalli",
"city_ascii": "Dasarhalli",
"lat": 13.0465,
"lng": 77.513,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 349720.0,
"id": 1356103194
},
{
"city": "Dhanbād",
"city_ascii": "Dhanbad",
"lat": 23.7998,
"lng": 86.4305,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jhārkhand",
"capital": null,
"population": 1162472.0,
"id": 1356103392
},
{
"city": "Jāmnagar",
"city_ascii": "Jamnagar",
"lat": 22.47,
"lng": 70.07,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": null,
"population": 479920.0,
"id": 1356104995
},
{
"city": "Rānchi",
"city_ascii": "Ranchi",
"lat": 23.36,
"lng": 85.33,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jhārkhand",
"capital": "admin",
"population": 1073440.0,
"id": 1356110588
},
{
"city": "Kolhāpur",
"city_ascii": "Kolhapur",
"lat": 16.6917,
"lng": 74.2333,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 561489.0,
"id": 1356110593
},
{
"city": "Jabalpur",
"city_ascii": "Jabalpur",
"lat": 23.1667,
"lng": 79.9333,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Madhya Pradesh",
"capital": null,
"population": 1267564.0,
"id": 1356115460
},
{
"city": "Pānihāti",
"city_ascii": "Panihati",
"lat": 22.69,
"lng": 88.37,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 377347.0,
"id": 1356118632
},
{
"city": "Sahāranpur",
"city_ascii": "Saharanpur",
"lat": 29.964,
"lng": 77.546,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 705478.0,
"id": 1356139858
},
{
"city": "Bhubaneshwar",
"city_ascii": "Bhubaneshwar",
"lat": 20.27,
"lng": 85.84,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Odisha",
"capital": "admin",
"population": 837737.0,
"id": 1356140143
},
{
"city": "Karnāl",
"city_ascii": "Karnal",
"lat": 29.686,
"lng": 76.989,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Haryāna",
"capital": null,
"population": 357334.0,
"id": 1356145204
},
{
"city": "Vārānasi",
"city_ascii": "Varanasi",
"lat": 25.3189,
"lng": 83.0128,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1198491.0,
"id": 1356145782
},
{
"city": "Chāpra",
"city_ascii": "Chapra",
"lat": 25.7848,
"lng": 84.7274,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 567123.0,
"id": 1356147120
},
{
"city": "Agartala",
"city_ascii": "Agartala",
"lat": 23.8333,
"lng": 91.2833,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tripura",
"capital": "admin",
"population": 522613.0,
"id": 1356148992
},
{
"city": "Agwār",
"city_ascii": "Agwar",
"lat": 27.18,
"lng": 78.02,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1585705.0,
"id": 1356151564
},
{
"city": "Rohtak",
"city_ascii": "Rohtak",
"lat": 28.8909,
"lng": 76.5796,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Haryāna",
"capital": null,
"population": 374292.0,
"id": 1356162915
},
{
"city": "Sīkar",
"city_ascii": "Sikar",
"lat": 27.62,
"lng": 75.15,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 359293.0,
"id": 1356163729
},
{
"city": "Bhāngar",
"city_ascii": "Bhangar",
"lat": 22.58,
"lng": 88.42,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 632107.0,
"id": 1356177796
},
{
"city": "Najafgarh",
"city_ascii": "Najafgarh",
"lat": 28.6092,
"lng": 76.9798,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Delhi",
"capital": null,
"population": 1203180.0,
"id": 1356180206
},
{
"city": "Āgra",
"city_ascii": "Agra",
"lat": 27.18,
"lng": 78.02,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1585704.0,
"id": 1356187395
},
{
"city": "Gorakhpur",
"city_ascii": "Gorakhpur",
"lat": 26.7637,
"lng": 83.4039,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 673446.0,
"id": 1356190221
},
{
"city": "Bellary",
"city_ascii": "Bellary",
"lat": 15.1,
"lng": 76.9167,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 410445.0,
"id": 1356209152
},
{
"city": "Dhūlia",
"city_ascii": "Dhulia",
"lat": 20.8997,
"lng": 74.7697,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 750000.0,
"id": 1356224695
},
{
"city": "Mumbai",
"city_ascii": "Mumbai",
"lat": 19.0761,
"lng": 72.8775,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": "admin",
"population": 24973000.0,
"id": 1356226629
},
{
"city": "Madurai",
"city_ascii": "Madurai",
"lat": 9.9252,
"lng": 78.1198,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": "minor",
"population": 1561129.0,
"id": 1356257289
},
{
"city": "Kālkāji Devi",
"city_ascii": "Kalkaji Devi",
"lat": 28.5485,
"lng": 77.2513,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Delhi",
"capital": null,
"population": 824177.0,
"id": 1356264482
},
{
"city": "Udaipur",
"city_ascii": "Udaipur",
"lat": 24.58,
"lng": 73.68,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 451100.0,
"id": 1356266094
},
{
"city": "Morādābād",
"city_ascii": "Moradabad",
"lat": 28.8389,
"lng": 78.7769,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 887871.0,
"id": 1356269375
},
{
"city": "Nellore",
"city_ascii": "Nellore",
"lat": 14.45,
"lng": 79.99,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 547621.0,
"id": 1356280972
},
{
"city": "Jaipur",
"city_ascii": "Jaipur",
"lat": 26.9,
"lng": 75.8,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": "admin",
"population": 3073350.0,
"id": 1356293537
},
{
"city": "Quilon",
"city_ascii": "Quilon",
"lat": 8.88,
"lng": 76.6,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Kerala",
"capital": null,
"population": 397419.0,
"id": 1356304110
},
{
"city": "Ahmedabad",
"city_ascii": "Ahmedabad",
"lat": 23.03,
"lng": 72.58,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": "minor",
"population": 8009000.0,
"id": 1356304381
},
{
"city": "Solāpur",
"city_ascii": "Solapur",
"lat": 17.68,
"lng": 75.92,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 951558.0,
"id": 1356314385
},
{
"city": "Rājkot",
"city_ascii": "Rajkot",
"lat": 22.3,
"lng": 70.7833,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": null,
"population": 1335397.0,
"id": 1356317190
},
{
"city": "Cuddapah",
"city_ascii": "Cuddapah",
"lat": 14.47,
"lng": 78.82,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 344893.0,
"id": 1356360140
},
{
"city": "Gwalior",
"city_ascii": "Gwalior",
"lat": 26.2215,
"lng": 78.178,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Madhya Pradesh",
"capital": null,
"population": 1069276.0,
"id": 1356363967
},
{
"city": "Nāgpur",
"city_ascii": "Nagpur",
"lat": 21.1497,
"lng": 79.0806,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": "admin",
"population": 2405665.0,
"id": 1356365743
},
{
"city": "Guntūr",
"city_ascii": "Guntur",
"lat": 16.3008,
"lng": 80.4428,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 647508.0,
"id": 1356374905
},
{
"city": "Chennai",
"city_ascii": "Chennai",
"lat": 13.0825,
"lng": 80.275,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": "admin",
"population": 12395000.0,
"id": 1356374944
},
{
"city": "Raipur",
"city_ascii": "Raipur",
"lat": 21.25,
"lng": 81.63,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chhattīsgarh",
"capital": "admin",
"population": 1010087.0,
"id": 1356374983
},
{
"city": "Ulhāsnagar",
"city_ascii": "Ulhasnagar",
"lat": 19.22,
"lng": 73.15,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 506098.0,
"id": 1356375341
},
{
"city": "Meerut",
"city_ascii": "Meerut",
"lat": 28.98,
"lng": 77.71,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1305429.0,
"id": 1356390476
},
{
"city": "Belgaum",
"city_ascii": "Belgaum",
"lat": 15.85,
"lng": 74.5,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 488157.0,
"id": 1356390535
},
{
"city": "Indore",
"city_ascii": "Indore",
"lat": 22.7167,
"lng": 75.8472,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Madhya Pradesh",
"capital": null,
"population": 1994397.0,
"id": 1356402812
},
{
"city": "Bangalore",
"city_ascii": "Bangalore",
"lat": 12.9789,
"lng": 77.5917,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": "admin",
"population": 15386000.0,
"id": 1356410365
},
{
"city": "Shāhjānpur",
"city_ascii": "Shahjanpur",
"lat": 27.88,
"lng": 79.91,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 346103.0,
"id": 1356415439
},
{
"city": "Mirzāpur",
"city_ascii": "Mirzapur",
"lat": 25.146,
"lng": 82.569,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 2496970.0,
"id": 1356427908
},
{
"city": "Srīnagar",
"city_ascii": "Srinagar",
"lat": 34.09,
"lng": 74.79,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jammu and Kashmīr",
"capital": "admin",
"population": 1180570.0,
"id": 1356442950
},
{
"city": "Davangere",
"city_ascii": "Davangere",
"lat": 14.4666,
"lng": 75.9242,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 435125.0,
"id": 1356445061
},
{
"city": "Patiāla",
"city_ascii": "Patiala",
"lat": 30.34,
"lng": 76.38,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 763280.0,
"id": 1356458416
},
{
"city": "Amrāvati",
"city_ascii": "Amravati",
"lat": 20.9258,
"lng": 77.7647,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 549370.0,
"id": 1356462099
},
{
"city": "Chinchvad",
"city_ascii": "Chinchvad",
"lat": 18.6186,
"lng": 73.8037,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1729320.0,
"id": 1356475483
},
{
"city": "Purnea",
"city_ascii": "Purnea",
"lat": 25.778,
"lng": 87.476,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 496830.0,
"id": 1356486511
},
{
"city": "Jammu",
"city_ascii": "Jammu",
"lat": 32.73,
"lng": 74.87,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jammu and Kashmīr",
"capital": "admin",
"population": 502197.0,
"id": 1356491738
},
{
"city": "Jalandhar",
"city_ascii": "Jalandhar",
"lat": 31.2569,
"lng": 75.4432,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 873725.0,
"id": 1356494816
},
{
"city": "Jamshedpur",
"city_ascii": "Jamshedpur",
"lat": 22.7925,
"lng": 86.1842,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jhārkhand",
"capital": null,
"population": 1558000.0,
"id": 1356501259
},
{
"city": "Shorāpur",
"city_ascii": "Shorapur",
"lat": 16.52,
"lng": 76.76,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 412291.0,
"id": 1356512373
},
{
"city": "Delhi Cantonment",
"city_ascii": "Delhi Cantonment",
"lat": 28.6,
"lng": 77.1333,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Delhi",
"capital": null,
"population": 405633.0,
"id": 1356526853
},
{
"city": "Loni",
"city_ascii": "Loni",
"lat": 28.75,
"lng": 77.28,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 516082.0,
"id": 1356528413
},
{
"city": "Kalamboli",
"city_ascii": "Kalamboli",
"lat": 19.2333,
"lng": 73.1333,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1246381.0,
"id": 1356537020
},
{
"city": "Tiruppūr",
"city_ascii": "Tiruppur",
"lat": 11.1085,
"lng": 77.3411,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 877778.0,
"id": 1356539761
},
{
"city": "Narela",
"city_ascii": "Narela",
"lat": 28.8527,
"lng": 77.0929,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Delhi",
"capital": null,
"population": 661994.0,
"id": 1356542019
},
{
"city": "Kūkatpalli",
"city_ascii": "Kukatpalli",
"lat": 17.4849,
"lng": 78.4138,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 385821.0,
"id": 1356553747
},
{
"city": "Nāsik",
"city_ascii": "Nasik",
"lat": 20.0,
"lng": 73.78,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1486053.0,
"id": 1356562598
},
{
"city": "Salem",
"city_ascii": "Salem",
"lat": 11.65,
"lng": 78.15,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 693236.0,
"id": 1356567087
},
{
"city": "Brahmapur",
"city_ascii": "Brahmapur",
"lat": 19.315,
"lng": 84.7941,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Odisha",
"capital": null,
"population": 634220.0,
"id": 1356569354
},
{
"city": "Alwar",
"city_ascii": "Alwar",
"lat": 27.5498,
"lng": 76.6355,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 341422.0,
"id": 1356570855
},
{
"city": "Kākināda",
"city_ascii": "Kakinada",
"lat": 16.9661,
"lng": 82.255,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 384182.0,
"id": 1356573609
},
{
"city": "Cawnpore",
"city_ascii": "Cawnpore",
"lat": 26.4499,
"lng": 80.3319,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 2701324.0,
"id": 1356575238
},
{
"city": "Bettiah",
"city_ascii": "Bettiah",
"lat": 26.8014,
"lng": 84.5028,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 414453.0,
"id": 1356590604
},
{
"city": "Chānda",
"city_ascii": "Chanda",
"lat": 19.95,
"lng": 79.297,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 355739.0,
"id": 1356592607
},
{
"city": "Guwāhāti",
"city_ascii": "Guwahati",
"lat": 26.1722,
"lng": 91.7458,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Assam",
"capital": null,
"population": 1116267.0,
"id": 1356593800
},
{
"city": "Padiāla",
"city_ascii": "Padiala",
"lat": 30.5667,
"lng": 76.6333,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 406192.0,
"id": 1356667176
},
{
"city": "Thāne",
"city_ascii": "Thane",
"lat": 19.1972,
"lng": 72.9722,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1886941.0,
"id": 1356681152
},
{
"city": "Ambattūr",
"city_ascii": "Ambattur",
"lat": 13.1143,
"lng": 80.1548,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 466205.0,
"id": 1356685959
},
{
"city": "Ghāziābād",
"city_ascii": "Ghaziabad",
"lat": 28.67,
"lng": 77.42,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 2375820.0,
"id": 1356691871
},
{
"city": "Vishākhapatnam",
"city_ascii": "Vishakhapatnam",
"lat": 17.7042,
"lng": 83.2978,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 2035922.0,
"id": 1356692563
},
{
"city": "Bareilly",
"city_ascii": "Bareilly",
"lat": 28.364,
"lng": 79.415,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 1000000.0,
"id": 1356698199
},
{
"city": "Vadodara",
"city_ascii": "Vadodara",
"lat": 22.3,
"lng": 73.2,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": null,
"population": 2065771.0,
"id": 1356705249
},
{
"city": "Vasai",
"city_ascii": "Vasai",
"lat": 19.47,
"lng": 72.8,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1222390.0,
"id": 1356707797
},
{
"city": "Kochi",
"city_ascii": "Kochi",
"lat": 9.97,
"lng": 76.28,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Kerala",
"capital": null,
"population": 677381.0,
"id": 1356707865
},
{
"city": "Jhānsi",
"city_ascii": "Jhansi",
"lat": 25.4486,
"lng": 78.5696,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 507000.0,
"id": 1356712664
},
{
"city": "Prayagraj",
"city_ascii": "Prayagraj",
"lat": 25.4358,
"lng": 81.8464,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": null,
"population": 5954391.0,
"id": 1356718332
},
{
"city": "Salt Lake City",
"city_ascii": "Salt Lake City",
"lat": 22.61,
"lng": 88.4,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 403316.0,
"id": 1356720205
},
{
"city": "Nānded",
"city_ascii": "Nanded",
"lat": 19.15,
"lng": 77.3,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 550439.0,
"id": 1356722310
},
{
"city": "Shiliguri",
"city_ascii": "Shiliguri",
"lat": 26.71,
"lng": 88.43,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 701489.0,
"id": 1356724691
},
{
"city": "Jodhpur",
"city_ascii": "Jodhpur",
"lat": 26.28,
"lng": 73.02,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 1033918.0,
"id": 1356727084
},
{
"city": "Bhopāl",
"city_ascii": "Bhopal",
"lat": 23.25,
"lng": 77.4167,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Madhya Pradesh",
"capital": "admin",
"population": 1798218.0,
"id": 1356734039
},
{
"city": "Jalgaon",
"city_ascii": "Jalgaon",
"lat": 21.004,
"lng": 75.568,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 460468.0,
"id": 1356734842
},
{
"city": "Chandīgarh",
"city_ascii": "Chandigarh",
"lat": 30.75,
"lng": 76.78,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chandīgarh",
"capital": "admin",
"population": 1055450.0,
"id": 1356739179
},
{
"city": "Sūrat",
"city_ascii": "Surat",
"lat": 21.1702,
"lng": 72.8311,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": null,
"population": 6538000.0,
"id": 1356758738
},
{
"city": "Bhāgalpur",
"city_ascii": "Bhagalpur",
"lat": 25.25,
"lng": 87.0,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 410210.0,
"id": 1356760990
},
{
"city": "Bhiwandi",
"city_ascii": "Bhiwandi",
"lat": 19.2967,
"lng": 73.0631,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 709665.0,
"id": 1356763571
},
{
"city": "Vijayavāda",
"city_ascii": "Vijayawada",
"lat": 16.5193,
"lng": 80.6305,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 1048240.0,
"id": 1356807575
},
{
"city": "Kota",
"city_ascii": "Kota",
"lat": 25.18,
"lng": 75.83,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 1001694.0,
"id": 1356820310
},
{
"city": "Bilāspur",
"city_ascii": "Bilaspur",
"lat": 22.09,
"lng": 82.15,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Chhattīsgarh",
"capital": null,
"population": 1625502.0,
"id": 1356820491
},
{
"city": "Patna",
"city_ascii": "Patna",
"lat": 25.6,
"lng": 85.1,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": "admin",
"population": 1684222.0,
"id": 1356821429
},
{
"city": "Hosūr",
"city_ascii": "Hosur",
"lat": 12.7409,
"lng": 77.8253,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 345000.0,
"id": 1356829362
},
{
"city": "Rājahmundry",
"city_ascii": "Rajahmundry",
"lat": 16.98,
"lng": 81.78,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 341831.0,
"id": 1356831716
},
{
"city": "Gurgaon",
"city_ascii": "Gurgaon",
"lat": 28.456,
"lng": 77.029,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Haryāna",
"capital": null,
"population": 876824.0,
"id": 1356836043
},
{
"city": "Karūr",
"city_ascii": "Karur",
"lat": 10.9601,
"lng": 78.0766,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 358468.0,
"id": 1356837900
},
{
"city": "Aurangābād",
"city_ascii": "Aurangabad",
"lat": 19.88,
"lng": 75.32,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 1371330.0,
"id": 1356840670
},
{
"city": "Māndvi",
"city_ascii": "Mandvi",
"lat": 19.3,
"lng": 72.85,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 814655.0,
"id": 1356843310
},
{
"city": "Darbhanga",
"city_ascii": "Darbhanga",
"lat": 26.17,
"lng": 85.9,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Bihār",
"capital": null,
"population": 380125.0,
"id": 1356846195
},
{
"city": "Māler Kotla",
"city_ascii": "Maler Kotla",
"lat": 30.5167,
"lng": 75.8833,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 374000.0,
"id": 1356847218
},
{
"city": "Warangal",
"city_ascii": "Warangal",
"lat": 17.9689,
"lng": 79.5941,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Andhra Pradesh",
"capital": null,
"population": 704570.0,
"id": 1356851618
},
{
"city": "Hyderābād",
"city_ascii": "Hyderabad",
"lat": 17.385,
"lng": 78.4867,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Telangāna",
"capital": "admin",
"population": 10494000.0,
"id": 1356871768
},
{
"city": "Cuttack",
"city_ascii": "Cuttack",
"lat": 20.5236,
"lng": 85.7881,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Odisha",
"capital": null,
"population": 606007.0,
"id": 1356872061
},
{
"city": "Delhi",
"city_ascii": "Delhi",
"lat": 28.61,
"lng": 77.23,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Delhi",
"capital": "admin",
"population": 32226000.0,
"id": 1356872604
},
{
"city": "Trichinopoly",
"city_ascii": "Trichinopoly",
"lat": 10.7903,
"lng": 78.7047,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 916857.0,
"id": 1356884472
},
{
"city": "Lucknow",
"city_ascii": "Lucknow",
"lat": 26.85,
"lng": 80.95,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttar Pradesh",
"capital": "admin",
"population": 3382000.0,
"id": 1356891790
},
{
"city": "Sāngli",
"city_ascii": "Sangli",
"lat": 16.8667,
"lng": 74.5667,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 436639.0,
"id": 1356921375
},
{
"city": "Amritsar",
"city_ascii": "Amritsar",
"lat": 31.64,
"lng": 74.86,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 1132383.0,
"id": 1356926507
},
{
"city": "Sirūr",
"city_ascii": "Sirur",
"lat": 18.83,
"lng": 74.38,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 385414.0,
"id": 1356926718
},
{
"city": "Ludhiāna",
"city_ascii": "Ludhiana",
"lat": 30.91,
"lng": 75.85,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Punjab",
"capital": null,
"population": 1618879.0,
"id": 1356929498
},
{
"city": "Sardārshahr",
"city_ascii": "Sardarshahr",
"lat": 28.4401,
"lng": 74.4908,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Rājasthān",
"capital": null,
"population": 382474.0,
"id": 1356932502
},
{
"city": "Hazāribāgh",
"city_ascii": "Hazaribagh",
"lat": 23.98,
"lng": 85.35,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Jhārkhand",
"capital": null,
"population": 394532.0,
"id": 1356960055
},
{
"city": "Dehra Dūn",
"city_ascii": "Dehra Dun",
"lat": 30.345,
"lng": 78.029,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Uttarākhand",
"capital": "admin",
"population": 578420.0,
"id": 1356970407
},
{
"city": "Mangalore",
"city_ascii": "Mangalore",
"lat": 12.902,
"lng": 74.8253,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Karnātaka",
"capital": null,
"population": 623841.0,
"id": 1356972351
},
{
"city": "Ahmadnagar",
"city_ascii": "Ahmadnagar",
"lat": 19.08,
"lng": 74.73,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Mahārāshtra",
"capital": null,
"population": 350859.0,
"id": 1356972679
},
{
"city": "Vellore",
"city_ascii": "Vellore",
"lat": 12.9165,
"lng": 79.1325,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 696110.0,
"id": 1356977661
},
{
"city": "Bhāvnagar",
"city_ascii": "Bhavnagar",
"lat": 21.76,
"lng": 72.15,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Gujarāt",
"capital": null,
"population": 643365.0,
"id": 1356982375
},
{
"city": "Hāora",
"city_ascii": "Haora",
"lat": 22.58,
"lng": 88.3294,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "West Bengal",
"capital": null,
"population": 1077075.0,
"id": 1356986516
},
{
"city": "Coimbatore",
"city_ascii": "Coimbatore",
"lat": 11.0168,
"lng": 76.9558,
"country": "India",
"iso2": "IN",
"iso3": "IND",
"admin_name": "Tamil Nādu",
"capital": null,
"population": 959823.0,
"id": 1356999503
},
{
"city": "Tangerang",
"city_ascii": "Tangerang",
"lat": -6.1783,
"lng": 106.6319,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 2237006.0,
"id": 1360002844
},
{
"city": "Bekasi",
"city_ascii": "Bekasi",
"lat": -6.2349,
"lng": 106.9923,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 2381053.0,
"id": 1360006015
},
{
"city": "Lembok",
"city_ascii": "Lembok",
"lat": -8.565,
"lng": 116.351,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Nusa Tenggara Barat",
"capital": null,
"population": 495651.0,
"id": 1360013261
},
{
"city": "Mataram",
"city_ascii": "Mataram",
"lat": -8.5833,
"lng": 116.1167,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Nusa Tenggara Barat",
"capital": "admin",
"population": 408900.0,
"id": 1360021952
},
{
"city": "Tasikmalaya",
"city_ascii": "Tasikmalaya",
"lat": -7.3161,
"lng": 108.1975,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 678027.0,
"id": 1360027771
},
{
"city": "Sangereng",
"city_ascii": "Sangereng",
"lat": -6.2889,
"lng": 106.7181,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 1644899.0,
"id": 1360029147
},
{
"city": "Makassar",
"city_ascii": "Makassar",
"lat": -5.1619,
"lng": 119.4362,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sulawesi Selatan",
"capital": "admin",
"population": 1338663.0,
"id": 1360051337
},
{
"city": "Malang",
"city_ascii": "Malang",
"lat": -7.98,
"lng": 112.62,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Timur",
"capital": null,
"population": 2795209.0,
"id": 1360141408
},
{
"city": "Cimahi",
"city_ascii": "Cimahi",
"lat": -6.8712,
"lng": 107.5548,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 586580.0,
"id": 1360181436
},
{
"city": "Bengkulu",
"city_ascii": "Bengkulu",
"lat": -3.7956,
"lng": 102.2592,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Bengkulu",
"capital": "admin",
"population": 360495.0,
"id": 1360191448
},
{
"city": "Bandar Lampung",
"city_ascii": "Bandar Lampung",
"lat": -5.45,
"lng": 105.2667,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Lampung",
"capital": "admin",
"population": 1166761.0,
"id": 1360243491
},
{
"city": "Bandung",
"city_ascii": "Bandung",
"lat": -6.912,
"lng": 107.6097,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": "admin",
"population": 432557.0,
"id": 1360313023
},
{
"city": "Serang",
"city_ascii": "Serang",
"lat": -6.12,
"lng": 106.1503,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Banten",
"capital": "admin",
"population": 613356.0,
"id": 1360329102
},
{
"city": "Yogyakarta",
"city_ascii": "Yogyakarta",
"lat": -7.8014,
"lng": 110.3644,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Yogyakarta",
"capital": "admin",
"population": 422732.0,
"id": 1360384833
},
{
"city": "Bagam",
"city_ascii": "Bagam",
"lat": 1.0833,
"lng": 104.0333,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Kepulauan Riau",
"capital": null,
"population": 1230097.0,
"id": 1360405604
},
{
"city": "Pekanbaru",
"city_ascii": "Pekanbaru",
"lat": 0.5092,
"lng": 101.4453,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Riau",
"capital": "admin",
"population": 983356.0,
"id": 1360422679
},
{
"city": "Surabaya",
"city_ascii": "Surabaya",
"lat": -7.2458,
"lng": 112.7378,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Timur",
"capital": "admin",
"population": 6499000.0,
"id": 1360484663
},
{
"city": "Balikpapan",
"city_ascii": "Balikpapan",
"lat": -1.2768,
"lng": 116.8277,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Kalimantan Timur",
"capital": null,
"population": 598043.0,
"id": 1360500922
},
{
"city": "Cilacap",
"city_ascii": "Cilacap",
"lat": -7.7167,
"lng": 109.017,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Tengah",
"capital": "minor",
"population": 1174964.0,
"id": 1360503809
},
{
"city": "Jayapura",
"city_ascii": "Jayapura",
"lat": -2.533,
"lng": 140.717,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Papua",
"capital": "admin",
"population": 413283.0,
"id": 1360517692
},
{
"city": "Palu",
"city_ascii": "Palu",
"lat": -0.895,
"lng": 119.8594,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sulawesi Tengah",
"capital": "admin",
"population": 359350.0,
"id": 1360518272
},
{
"city": "Medan",
"city_ascii": "Medan",
"lat": 3.5894,
"lng": 98.6739,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sumatera Utara",
"capital": "admin",
"population": 3632000.0,
"id": 1360543171
},
{
"city": "Sumedang",
"city_ascii": "Sumedang",
"lat": -6.84,
"lng": 107.9208,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 1240000.0,
"id": 1360564479
},
{
"city": "Cilegon",
"city_ascii": "Cilegon",
"lat": -6.0027,
"lng": 106.0112,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Banten",
"capital": null,
"population": 387543.0,
"id": 1360643410
},
{
"city": "Jambi",
"city_ascii": "Jambi",
"lat": -1.59,
"lng": 103.61,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jambi",
"capital": "admin",
"population": 612162.0,
"id": 1360645580
},
{
"city": "Samarinda",
"city_ascii": "Samarinda",
"lat": -0.5,
"lng": 117.1378,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Kalimantan Timur",
"capital": "admin",
"population": 753370.0,
"id": 1360684979
},
{
"city": "Banjarmasin",
"city_ascii": "Banjarmasin",
"lat": -3.32,
"lng": 114.5925,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Kalimantan Selatan",
"capital": "admin",
"population": 692793.0,
"id": 1360685223
},
{
"city": "Kupang",
"city_ascii": "Kupang",
"lat": -10.1702,
"lng": 123.6077,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Nusa Tenggara Timur",
"capital": "admin",
"population": 433970.0,
"id": 1360696757
},
{
"city": "Jepara",
"city_ascii": "Jepara",
"lat": -6.5333,
"lng": 110.6667,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Tengah",
"capital": "minor",
"population": 1257912.0,
"id": 1360703818
},
{
"city": "Cibinong",
"city_ascii": "Cibinong",
"lat": -6.485,
"lng": 106.842,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": "minor",
"population": 363424.0,
"id": 1360730847
},
{
"city": "Semarang",
"city_ascii": "Semarang",
"lat": -6.9667,
"lng": 110.4167,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Tengah",
"capital": "admin",
"population": 1621384.0,
"id": 1360745537
},
{
"city": "Ambon",
"city_ascii": "Ambon",
"lat": -3.7,
"lng": 128.1667,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Maluku",
"capital": "admin",
"population": 372249.0,
"id": 1360756802
},
{
"city": "Jakarta",
"city_ascii": "Jakarta",
"lat": -6.175,
"lng": 106.8275,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jakarta",
"capital": "primary",
"population": 33756000.0,
"id": 1360771077
},
{
"city": "Manado",
"city_ascii": "Manado",
"lat": 1.4931,
"lng": 124.8413,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sulawesi Utara",
"capital": "admin",
"population": 461636.0,
"id": 1360771278
},
{
"city": "Bogor",
"city_ascii": "Bogor",
"lat": -6.5966,
"lng": 106.7972,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 1030720.0,
"id": 1360771925
},
{
"city": "Denpasar",
"city_ascii": "Denpasar",
"lat": -8.65,
"lng": 115.2167,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Bali",
"capital": "admin",
"population": 1779122.0,
"id": 1360848527
},
{
"city": "Surakarta",
"city_ascii": "Surakarta",
"lat": -7.5667,
"lng": 110.8167,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Tengah",
"capital": null,
"population": 552118.0,
"id": 1360853933
},
{
"city": "Padang",
"city_ascii": "Padang",
"lat": -0.95,
"lng": 100.3531,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sumatera Barat",
"capital": "admin",
"population": 914970.0,
"id": 1360900986
},
{
"city": "Palembang",
"city_ascii": "Palembang",
"lat": -2.9861,
"lng": 104.7556,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Sumatera Selatan",
"capital": "admin",
"population": 1535952.0,
"id": 1360902897
},
{
"city": "Depok",
"city_ascii": "Depok",
"lat": -6.394,
"lng": 106.8225,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Jawa Barat",
"capital": null,
"population": 2330333.0,
"id": 1360962899
},
{
"city": "Pontianak",
"city_ascii": "Pontianak",
"lat": -0.0206,
"lng": 109.3414,
"country": "Indonesia",
"iso2": "ID",
"iso3": "IDN",
"admin_name": "Kalimantan Barat",
"capital": "admin",
"population": 618388.0,
"id": 1360992394
},
{
"city": "Kāshān",
"city_ascii": "Kashan",
"lat": 33.9833,
"lng": 51.4333,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Eşfahān",
"capital": "minor",
"population": 5000000.0,
"id": 1364006067
},
{
"city": "Eşfahān",
"city_ascii": "Esfahan",
"lat": 32.6447,
"lng": 51.6675,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Eşfahān",
"capital": "admin",
"population": 2219343.0,
"id": 1364023865
},
{
"city": "Zāhedān",
"city_ascii": "Zahedan",
"lat": 29.4964,
"lng": 60.8628,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Sīstān va Balūchestān",
"capital": "admin",
"population": 587730.0,
"id": 1364072353
},
{
"city": "Qazvīn",
"city_ascii": "Qazvin",
"lat": 36.2667,
"lng": 50.0,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Qazvīn",
"capital": "admin",
"population": 402748.0,
"id": 1364073420
},
{
"city": "Bandar ‘Abbās",
"city_ascii": "Bandar `Abbas",
"lat": 27.1833,
"lng": 56.2667,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Hormozgān",
"capital": "admin",
"population": 526648.0,
"id": 1364120623
},
{
"city": "Mashhad",
"city_ascii": "Mashhad",
"lat": 36.3,
"lng": 59.6,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Khorāsān-e Raẕavī",
"capital": "admin",
"population": 3372090.0,
"id": 1364123206
},
{
"city": "Hamadān",
"city_ascii": "Hamadan",
"lat": 34.8064,
"lng": 48.5161,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Hamadān",
"capital": "admin",
"population": 554406.0,
"id": 1364126377
},
{
"city": "Tabrīz",
"city_ascii": "Tabriz",
"lat": 38.0814,
"lng": 46.3006,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Āz̄arbāyjān-e Sharqī",
"capital": "admin",
"population": 1558693.0,
"id": 1364141756
},
{
"city": "Orūmīyeh",
"city_ascii": "Orumiyeh",
"lat": 37.5486,
"lng": 45.0675,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Āz̄arbāyjān-e Gharbī",
"capital": "admin",
"population": 736224.0,
"id": 1364158221
},
{
"city": "Sanandaj",
"city_ascii": "Sanandaj",
"lat": 35.3144,
"lng": 46.9922,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Kordestān",
"capital": "admin",
"population": 412767.0,
"id": 1364178783
},
{
"city": "Karaj",
"city_ascii": "Karaj",
"lat": 35.8272,
"lng": 50.9489,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Alborz",
"capital": "admin",
"population": 1973470.0,
"id": 1364258511
},
{
"city": "Tehran",
"city_ascii": "Tehran",
"lat": 35.6892,
"lng": 51.3889,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Tehrān",
"capital": "primary",
"population": 14148000.0,
"id": 1364305026
},
{
"city": "Zanjān",
"city_ascii": "Zanjan",
"lat": 36.6789,
"lng": 48.5056,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Zanjān",
"capital": "admin",
"population": 433475.0,
"id": 1364312712
},
{
"city": "Ahvāz",
"city_ascii": "Ahvaz",
"lat": 31.3203,
"lng": 48.6692,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Khūzestān",
"capital": "admin",
"population": 1261042.0,
"id": 1364350188
},
{
"city": "Yazd",
"city_ascii": "Yazd",
"lat": 31.8822,
"lng": 54.3397,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Yazd",
"capital": "admin",
"population": 529673.0,
"id": 1364429875
},
{
"city": "Shīrāz",
"city_ascii": "Shiraz",
"lat": 29.61,
"lng": 52.5425,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Fārs",
"capital": "admin",
"population": 1565572.0,
"id": 1364432238
},
{
"city": "Ardabīl",
"city_ascii": "Ardabil",
"lat": 38.2425,
"lng": 48.29,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Ardabīl",
"capital": "admin",
"population": 529374.0,
"id": 1364437616
},
{
"city": "Kermānshāh",
"city_ascii": "Kermanshah",
"lat": 34.3142,
"lng": 47.065,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Kermānshāh",
"capital": "admin",
"population": 952285.0,
"id": 1364535690
},
{
"city": "Khorramābād",
"city_ascii": "Khorramabad",
"lat": 33.4878,
"lng": 48.3558,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Lorestān",
"capital": "admin",
"population": 373416.0,
"id": 1364548806
},
{
"city": "Kermān",
"city_ascii": "Kerman",
"lat": 30.2833,
"lng": 57.0833,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Kermān",
"capital": "admin",
"population": 738374.0,
"id": 1364554896
},
{
"city": "Arāk",
"city_ascii": "Arak",
"lat": 34.0917,
"lng": 49.6892,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Markazī",
"capital": "admin",
"population": 520944.0,
"id": 1364624691
},
{
"city": "Rasht",
"city_ascii": "Rasht",
"lat": 37.2808,
"lng": 49.5831,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Gīlān",
"capital": "admin",
"population": 679995.0,
"id": 1364630382
},
{
"city": "Qom",
"city_ascii": "Qom",
"lat": 34.64,
"lng": 50.8764,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Qom",
"capital": "admin",
"population": 1201158.0,
"id": 1364701633
},
{
"city": "Madan",
"city_ascii": "Madan",
"lat": 30.3392,
"lng": 48.3042,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Khūzestān",
"capital": null,
"population": 370180.0,
"id": 1364708556
},
{
"city": "Gorgān",
"city_ascii": "Gorgan",
"lat": 36.8386,
"lng": 54.4347,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Golestān",
"capital": "admin",
"population": 350676.0,
"id": 1364802450
},
{
"city": "Eslāmshahr",
"city_ascii": "Eslamshahr",
"lat": 35.5606,
"lng": 51.2347,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Tehrān",
"capital": "minor",
"population": 448129.0,
"id": 1364870126
},
{
"city": "Bahār",
"city_ascii": "Bahar",
"lat": 34.9072,
"lng": 48.4414,
"country": "Iran",
"iso2": "IR",
"iso3": "IRN",
"admin_name": "Hamadān",
"capital": "minor",
"population": 673405.0,
"id": 1364891653
},
{
"city": "An Najaf",
"city_ascii": "An Najaf",
"lat": 32.0,
"lng": 44.33,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "An Najaf",
"capital": "admin",
"population": 724700.0,
"id": 1368003357
},
{
"city": "Az Zubayr",
"city_ascii": "Az Zubayr",
"lat": 30.3833,
"lng": 47.7,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Al Başrah",
"capital": "minor",
"population": 370000.0,
"id": 1368147923
},
{
"city": "Mosul",
"city_ascii": "Mosul",
"lat": 36.34,
"lng": 43.13,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Nīnawá",
"capital": "admin",
"population": 1694000.0,
"id": 1368194914
},
{
"city": "An Nāşirīyah",
"city_ascii": "An Nasiriyah",
"lat": 31.0439,
"lng": 46.2575,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Dhī Qār",
"capital": "admin",
"population": 541600.0,
"id": 1368273311
},
{
"city": "Al ‘Amārah",
"city_ascii": "Al `Amarah",
"lat": 31.8333,
"lng": 47.15,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Maysān",
"capital": "admin",
"population": 511500.0,
"id": 1368336235
},
{
"city": "Kirkuk",
"city_ascii": "Kirkuk",
"lat": 35.4667,
"lng": 44.3167,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Karkūk",
"capital": "admin",
"population": 975000.0,
"id": 1368344172
},
{
"city": "Ba‘qūbah",
"city_ascii": "Ba`qubah",
"lat": 33.75,
"lng": 44.6333,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Diyālá",
"capital": "admin",
"population": 467900.0,
"id": 1368444902
},
{
"city": "Erbil",
"city_ascii": "Erbil",
"lat": 36.1912,
"lng": 44.0092,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Arbīl",
"capital": "admin",
"population": 846000.0,
"id": 1368578192
},
{
"city": "Baghdad",
"city_ascii": "Baghdad",
"lat": 33.3153,
"lng": 44.3661,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Baghdād",
"capital": "primary",
"population": 6183000.0,
"id": 1368596238
},
{
"city": "Karbalā’",
"city_ascii": "Karbala'",
"lat": 32.6167,
"lng": 44.0333,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Karbalā’",
"capital": "admin",
"population": 690100.0,
"id": 1368597794
},
{
"city": "Al Başrah",
"city_ascii": "Al Basrah",
"lat": 30.515,
"lng": 47.81,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Al Başrah",
"capital": "admin",
"population": 1326564.0,
"id": 1368714645
},
{
"city": "As Sulaymānīyah",
"city_ascii": "As Sulaymaniyah",
"lat": 35.5572,
"lng": 45.4356,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "As Sulaymānīyah",
"capital": "admin",
"population": 878146.0,
"id": 1368735317
},
{
"city": "Ar Ramādī",
"city_ascii": "Ar Ramadi",
"lat": 33.4258,
"lng": 43.2992,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Al Anbār",
"capital": "admin",
"population": 874543.0,
"id": 1368838855
},
{
"city": "Ad Dīwānīyah",
"city_ascii": "Ad Diwaniyah",
"lat": 31.9892,
"lng": 44.9247,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Al Qādisīyah",
"capital": "admin",
"population": 391600.0,
"id": 1368864006
},
{
"city": "Al Ḩillah",
"city_ascii": "Al Hillah",
"lat": 32.4833,
"lng": 44.4333,
"country": "Iraq",
"iso2": "IQ",
"iso3": "IRQ",
"admin_name": "Bābil",
"capital": "admin",
"population": 541034.0,
"id": 1368916692
},
{
"city": "Dublin",
"city_ascii": "Dublin",
"lat": 53.35,
"lng": -6.2603,
"country": "Ireland",
"iso2": "IE",
"iso3": "IRL",
"admin_name": "Dublin",
"capital": "primary",
"population": 1173179.0,
"id": 1372595407
},
{
"city": "Haifa",
"city_ascii": "Haifa",
"lat": 32.8192,
"lng": 34.9992,
"country": "Israel",
"iso2": "IL",
"iso3": "ISR",
"admin_name": "Haifa",
"capital": "admin",
"population": 600000.0,
"id": 1376133727
},
{
"city": "Jerusalem",
"city_ascii": "Jerusalem",
"lat": 31.7784,
"lng": 35.2066,
"country": "Israel",
"iso2": "IL",
"iso3": "ISR",
"admin_name": "Jerusalem",
"capital": "primary",
"population": 919438.0,
"id": 1376261644
},
{
"city": "Tel Aviv-Yafo",
"city_ascii": "Tel Aviv-Yafo",
"lat": 32.08,
"lng": 34.78,
"country": "Israel",
"iso2": "IL",
"iso3": "ISR",
"admin_name": "Tel Aviv",
"capital": "admin",
"population": 1388400.0,
"id": 1376401542
},
{
"city": "Bologna",
"city_ascii": "Bologna",
"lat": 44.4939,
"lng": 11.3428,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Emilia-Romagna",
"capital": "admin",
"population": 392564.0,
"id": 1380202039
},
{
"city": "Turin",
"city_ascii": "Turin",
"lat": 45.0792,
"lng": 7.6761,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Piedmont",
"capital": "admin",
"population": 870952.0,
"id": 1380244627
},
{
"city": "Rome",
"city_ascii": "Rome",
"lat": 41.8931,
"lng": 12.4828,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Lazio",
"capital": "primary",
"population": 2872800.0,
"id": 1380382862
},
{
"city": "Palermo",
"city_ascii": "Palermo",
"lat": 38.1157,
"lng": 13.3613,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Sicilia",
"capital": "admin",
"population": 668405.0,
"id": 1380428434
},
{
"city": "Naples",
"city_ascii": "Naples",
"lat": 40.8333,
"lng": 14.25,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Campania",
"capital": "admin",
"population": 966144.0,
"id": 1380646673
},
{
"city": "Genoa",
"city_ascii": "Genoa",
"lat": 44.4111,
"lng": 8.9328,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Liguria",
"capital": "admin",
"population": 580097.0,
"id": 1380716540
},
{
"city": "Milan",
"city_ascii": "Milan",
"lat": 45.4669,
"lng": 9.19,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Lombardy",
"capital": "admin",
"population": 1366180.0,
"id": 1380724377
},
{
"city": "Florence",
"city_ascii": "Florence",
"lat": 43.7714,
"lng": 11.2542,
"country": "Italy",
"iso2": "IT",
"iso3": "ITA",
"admin_name": "Tuscany",
"capital": "admin",
"population": 380948.0,
"id": 1380726561
},
{
"city": "Abidjan",
"city_ascii": "Abidjan",
"lat": 5.3167,
"lng": -4.0333,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Abidjan",
"capital": "primary",
"population": 4980000.0,
"id": 1384207980
},
{
"city": "Cocody",
"city_ascii": "Cocody",
"lat": 5.35,
"lng": -3.9667,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Abidjan",
"capital": null,
"population": 692583.0,
"id": 1384351512
},
{
"city": "San-Pédro",
"city_ascii": "San-Pedro",
"lat": 4.75,
"lng": -6.6333,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Bas-Sassandra",
"capital": "admin",
"population": 390654.0,
"id": 1384436547
},
{
"city": "Port-Bouët",
"city_ascii": "Port-Bouet",
"lat": 5.2667,
"lng": -3.9,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Abidjan",
"capital": null,
"population": 618795.0,
"id": 1384512844
},
{
"city": "Daloa",
"city_ascii": "Daloa",
"lat": 6.8833,
"lng": -6.45,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Sassandra-Marahoué",
"capital": "admin",
"population": 421871.0,
"id": 1384564974
},
{
"city": "Yamoussoukro",
"city_ascii": "Yamoussoukro",
"lat": 6.8161,
"lng": -5.2742,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Yamoussoukro",
"capital": "primary",
"population": 355573.0,
"id": 1384683557
},
{
"city": "Yopougon",
"city_ascii": "Yopougon",
"lat": 5.3167,
"lng": -4.0667,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Abidjan",
"capital": null,
"population": 1571065.0,
"id": 1384759584
},
{
"city": "Koumassi",
"city_ascii": "Koumassi",
"lat": 5.3,
"lng": -3.95,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Abidjan",
"capital": null,
"population": 412282.0,
"id": 1384863297
},
{
"city": "Bouaké",
"city_ascii": "Bouake",
"lat": 7.6833,
"lng": -5.0167,
"country": "Côte d'Ivoire",
"iso2": "CI",
"iso3": "CIV",
"admin_name": "Vallée du Bandama",
"capital": "admin",
"population": 659233.0,
"id": 1384983838
},
{
"city": "Kingston",
"city_ascii": "Kingston",
"lat": 17.9714,
"lng": -76.7931,
"country": "Jamaica",
"iso2": "JM",
"iso3": "JAM",
"admin_name": "Kingston",
"capital": "primary",
"population": 580000.0,
"id": 1388709177
},
{
"city": "Sapporo",
"city_ascii": "Sapporo",
"lat": 43.0667,
"lng": 141.35,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hokkaidō",
"capital": "admin",
"population": 1961690.0,
"id": 1392000195
},
{
"city": "Takasaki",
"city_ascii": "Takasaki",
"lat": 36.3219,
"lng": 139.0033,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Gunma",
"capital": null,
"population": 372639.0,
"id": 1392000529
},
{
"city": "Toyama",
"city_ascii": "Toyama",
"lat": 36.6959,
"lng": 137.2137,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Toyama",
"capital": "admin",
"population": 413028.0,
"id": 1392000560
},
{
"city": "Takatsuki",
"city_ascii": "Takatsuki",
"lat": 34.85,
"lng": 135.6167,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 347496.0,
"id": 1392003061
},
{
"city": "Suginami-ku",
"city_ascii": "Suginami-ku",
"lat": 35.6995,
"lng": 139.6364,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 583609.0,
"id": 1392003090
},
{
"city": "Kitakyūshū",
"city_ascii": "Kitakyushu",
"lat": 33.8833,
"lng": 130.8833,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Fukuoka",
"capital": null,
"population": 935084.0,
"id": 1392003140
},
{
"city": "Himeji",
"city_ascii": "Himeji",
"lat": 34.8167,
"lng": 134.6833,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hyōgo",
"capital": null,
"population": 527596.0,
"id": 1392003149
},
{
"city": "Amagasaki",
"city_ascii": "Amagasaki",
"lat": 34.7333,
"lng": 135.4,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hyōgo",
"capital": null,
"population": 450506.0,
"id": 1392003182
},
{
"city": "Kurashiki",
"city_ascii": "Kurashiki",
"lat": 34.5833,
"lng": 133.7667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Okayama",
"capital": null,
"population": 474862.0,
"id": 1392003246
},
{
"city": "Toyonaka",
"city_ascii": "Toyonaka",
"lat": 34.7833,
"lng": 135.4667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 401233.0,
"id": 1392003256
},
{
"city": "Kita-ku",
"city_ascii": "Kita-ku",
"lat": 35.7528,
"lng": 139.7336,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 353058.0,
"id": 1392003263
},
{
"city": "Sakai",
"city_ascii": "Sakai",
"lat": 34.5733,
"lng": 135.4831,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 824408.0,
"id": 1392003291
},
{
"city": "Shinagawa-ku",
"city_ascii": "Shinagawa-ku",
"lat": 35.6092,
"lng": 139.7302,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 415729.0,
"id": 1392003304
},
{
"city": "Kōtō-ku",
"city_ascii": "Koto-ku",
"lat": 35.6728,
"lng": 139.8173,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 523117.0,
"id": 1392003346
},
{
"city": "Kawasaki",
"city_ascii": "Kawasaki",
"lat": 35.5167,
"lng": 139.7,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kanagawa",
"capital": null,
"population": 1539522.0,
"id": 1392003356
},
{
"city": "Katsushika-ku",
"city_ascii": "Katsushika-ku",
"lat": 35.7434,
"lng": 139.8472,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 453410.0,
"id": 1392003368
},
{
"city": "Yokosuka",
"city_ascii": "Yokosuka",
"lat": 35.25,
"lng": 139.6667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kanagawa",
"capital": null,
"population": 390275.0,
"id": 1392003389
},
{
"city": "Ōta-ku",
"city_ascii": "Ota-ku",
"lat": 35.5613,
"lng": 139.716,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 737187.0,
"id": 1392003511
},
{
"city": "Saitama",
"city_ascii": "Saitama",
"lat": 35.8614,
"lng": 139.6456,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Saitama",
"capital": "admin",
"population": 1325843.0,
"id": 1392017719
},
{
"city": "Ichikawa",
"city_ascii": "Ichikawa",
"lat": 35.7219,
"lng": 139.9311,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": null,
"population": 496657.0,
"id": 1392076347
},
{
"city": "Ōita",
"city_ascii": "Oita",
"lat": 33.2333,
"lng": 131.6067,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōita",
"capital": "admin",
"population": 477186.0,
"id": 1392081193
},
{
"city": "Aomori",
"city_ascii": "Aomori",
"lat": 40.8223,
"lng": 140.7307,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aomori",
"capital": "admin",
"population": 425962.0,
"id": 1392083898
},
{
"city": "Nerima",
"city_ascii": "Nerima",
"lat": 35.7355,
"lng": 139.6517,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 742463.0,
"id": 1392093402
},
{
"city": "Gifu",
"city_ascii": "Gifu",
"lat": 35.4232,
"lng": 136.7608,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Gifu",
"capital": "admin",
"population": 400118.0,
"id": 1392097787
},
{
"city": "Kumamoto",
"city_ascii": "Kumamoto",
"lat": 32.8031,
"lng": 130.7078,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kumamoto",
"capital": "admin",
"population": 738385.0,
"id": 1392106283
},
{
"city": "Chiba",
"city_ascii": "Chiba",
"lat": 35.6073,
"lng": 140.1064,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": "admin",
"population": 981738.0,
"id": 1392107144
},
{
"city": "Nishinomiya-hama",
"city_ascii": "Nishinomiya-hama",
"lat": 34.7376,
"lng": 135.3416,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hyōgo",
"capital": null,
"population": 487010.0,
"id": 1392114116
},
{
"city": "Higashi-ōsaka",
"city_ascii": "Higashi-osaka",
"lat": 34.6794,
"lng": 135.6008,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 490819.0,
"id": 1392117396
},
{
"city": "Yokohama",
"city_ascii": "Yokohama",
"lat": 35.4442,
"lng": 139.6381,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kanagawa",
"capital": "admin",
"population": 3757630.0,
"id": 1392118339
},
{
"city": "Kagoshima",
"city_ascii": "Kagoshima",
"lat": 31.6,
"lng": 130.55,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kagoshima",
"capital": "admin",
"population": 593754.0,
"id": 1392120675
},
{
"city": "Kashiwa",
"city_ascii": "Kashiwa",
"lat": 35.8676,
"lng": 139.9758,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": null,
"population": 433941.0,
"id": 1392133166
},
{
"city": "Edogawa",
"city_ascii": "Edogawa",
"lat": 35.7066,
"lng": 139.8683,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": null,
"population": 697932.0,
"id": 1392135698
},
{
"city": "Nagasaki",
"city_ascii": "Nagasaki",
"lat": 32.7447,
"lng": 129.8736,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Nagasaki",
"capital": "admin",
"population": 404656.0,
"id": 1392162566
},
{
"city": "Ōtsu",
"city_ascii": "Otsu",
"lat": 35.0167,
"lng": 135.85,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Shiga",
"capital": "admin",
"population": 342607.0,
"id": 1392164106
},
{
"city": "Hachiōji",
"city_ascii": "Hachioji",
"lat": 35.6664,
"lng": 139.316,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 575721.0,
"id": 1392172935
},
{
"city": "Hamamatsu",
"city_ascii": "Hamamatsu",
"lat": 34.7108,
"lng": 137.7275,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Shizuoka",
"capital": null,
"population": 788211.0,
"id": 1392174500
},
{
"city": "Miyazaki",
"city_ascii": "Miyazaki",
"lat": 31.9167,
"lng": 131.4167,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Miyazaki",
"capital": "admin",
"population": 397476.0,
"id": 1392216224
},
{
"city": "Matsuyama",
"city_ascii": "Matsuyama",
"lat": 33.8333,
"lng": 132.7667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ehime",
"capital": "admin",
"population": 506743.0,
"id": 1392220893
},
{
"city": "Shizuoka",
"city_ascii": "Shizuoka",
"lat": 34.9756,
"lng": 138.3828,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Shizuoka",
"capital": "admin",
"population": 685589.0,
"id": 1392235505
},
{
"city": "Tokorozawa",
"city_ascii": "Tokorozawa",
"lat": 35.7996,
"lng": 139.4686,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Saitama",
"capital": null,
"population": 341289.0,
"id": 1392340764
},
{
"city": "Hiroshima",
"city_ascii": "Hiroshima",
"lat": 34.3914,
"lng": 132.4519,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hiroshima",
"capital": "admin",
"population": 1198021.0,
"id": 1392373695
},
{
"city": "Ichinomiya",
"city_ascii": "Ichinomiya",
"lat": 35.3039,
"lng": 136.8031,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aichi",
"capital": null,
"population": 378681.0,
"id": 1392379530
},
{
"city": "Nagoya",
"city_ascii": "Nagoya",
"lat": 35.1833,
"lng": 136.9,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aichi",
"capital": "admin",
"population": 9197000.0,
"id": 1392407472
},
{
"city": "Ōsaka",
"city_ascii": "Osaka",
"lat": 34.6939,
"lng": 135.5022,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": "admin",
"population": 15126000.0,
"id": 1392419823
},
{
"city": "Takamatsu",
"city_ascii": "Takamatsu",
"lat": 34.35,
"lng": 134.05,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kagawa",
"capital": "admin",
"population": 417814.0,
"id": 1392427161
},
{
"city": "Sendai",
"city_ascii": "Sendai",
"lat": 38.2682,
"lng": 140.8694,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Miyagi",
"capital": "admin",
"population": 1061177.0,
"id": 1392457903
},
{
"city": "Adachi",
"city_ascii": "Adachi",
"lat": 35.7749,
"lng": 139.8044,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 682326.0,
"id": 1392464568
},
{
"city": "Toyohashi",
"city_ascii": "Toyohashi",
"lat": 34.7692,
"lng": 137.3915,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aichi",
"capital": null,
"population": 371507.0,
"id": 1392482960
},
{
"city": "Toyota",
"city_ascii": "Toyota",
"lat": 35.0824,
"lng": 137.1563,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aichi",
"capital": null,
"population": 422106.0,
"id": 1392498272
},
{
"city": "Honchō",
"city_ascii": "Honcho",
"lat": 35.6946,
"lng": 139.9826,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": null,
"population": 641499.0,
"id": 1392505502
},
{
"city": "Utsunomiya",
"city_ascii": "Utsunomiya",
"lat": 36.5551,
"lng": 139.8826,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tochigi",
"capital": "admin",
"population": 518197.0,
"id": 1392506125
},
{
"city": "Nara",
"city_ascii": "Nara",
"lat": 34.6844,
"lng": 135.805,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Nara",
"capital": "admin",
"population": 352377.0,
"id": 1392520831
},
{
"city": "Shinjuku",
"city_ascii": "Shinjuku",
"lat": 35.6939,
"lng": 139.7034,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 349385.0,
"id": 1392536374
},
{
"city": "Fukuyama",
"city_ascii": "Fukuyama",
"lat": 34.4833,
"lng": 133.3667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hiroshima",
"capital": null,
"population": 459576.0,
"id": 1392551602
},
{
"city": "Fukuoka",
"city_ascii": "Fukuoka",
"lat": 33.5833,
"lng": 130.4,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Fukuoka",
"capital": "admin",
"population": 2286000.0,
"id": 1392576294
},
{
"city": "Nagano",
"city_ascii": "Nagano",
"lat": 36.6486,
"lng": 138.1947,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Nagano",
"capital": "admin",
"population": 367184.0,
"id": 1392603439
},
{
"city": "Koshigaya",
"city_ascii": "Koshigaya",
"lat": 35.8911,
"lng": 139.7909,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Saitama",
"capital": null,
"population": 346768.0,
"id": 1392606124
},
{
"city": "Kyōto",
"city_ascii": "Kyoto",
"lat": 35.0117,
"lng": 135.7683,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kyōto",
"capital": "admin",
"population": 1464890.0,
"id": 1392622735
},
{
"city": "Fujisawa",
"city_ascii": "Fujisawa",
"lat": 35.35,
"lng": 139.4667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kanagawa",
"capital": null,
"population": 436744.0,
"id": 1392640771
},
{
"city": "Matsudo",
"city_ascii": "Matsudo",
"lat": 35.7876,
"lng": 139.9032,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Chiba",
"capital": null,
"population": 497514.0,
"id": 1392642525
},
{
"city": "Kanazawa",
"city_ascii": "Kanazawa",
"lat": 36.5611,
"lng": 136.6564,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ishikawa",
"capital": "admin",
"population": 462479.0,
"id": 1392684679
},
{
"city": "Tokyo",
"city_ascii": "Tokyo",
"lat": 35.6897,
"lng": 139.6922,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": "primary",
"population": 37732000.0,
"id": 1392685764
},
{
"city": "Machida",
"city_ascii": "Machida",
"lat": 35.7106,
"lng": 139.4386,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 434414.0,
"id": 1392788615
},
{
"city": "Setagaya",
"city_ascii": "Setagaya",
"lat": 35.6466,
"lng": 139.6532,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 940509.0,
"id": 1392792380
},
{
"city": "Kawagoe",
"city_ascii": "Kawagoe",
"lat": 35.9251,
"lng": 139.4858,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Saitama",
"capital": null,
"population": 354598.0,
"id": 1392825080
},
{
"city": "Itabashi",
"city_ascii": "Itabashi",
"lat": 35.7512,
"lng": 139.7093,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 581337.0,
"id": 1392836404
},
{
"city": "Okazaki",
"city_ascii": "Okazaki",
"lat": 34.9543,
"lng": 137.1744,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Aichi",
"capital": null,
"population": 385376.0,
"id": 1392862345
},
{
"city": "Nakano",
"city_ascii": "Nakano",
"lat": 35.7073,
"lng": 139.6637,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Tōkyō",
"capital": null,
"population": 341014.0,
"id": 1392891845
},
{
"city": "Wakayama",
"city_ascii": "Wakayama",
"lat": 34.2333,
"lng": 135.1667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Wakayama",
"capital": "admin",
"population": 353299.0,
"id": 1392907296
},
{
"city": "Niigata",
"city_ascii": "Niigata",
"lat": 37.9161,
"lng": 139.0364,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Niigata",
"capital": "admin",
"population": 790646.0,
"id": 1392913753
},
{
"city": "Minamisuita",
"city_ascii": "Minamisuita",
"lat": 34.7594,
"lng": 135.5169,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 384953.0,
"id": 1392948850
},
{
"city": "Okayama",
"city_ascii": "Okayama",
"lat": 34.65,
"lng": 133.9167,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Okayama",
"capital": "admin",
"population": 720043.0,
"id": 1392954750
},
{
"city": "Sagamihara",
"city_ascii": "Sagamihara",
"lat": 35.5667,
"lng": 139.3667,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Kanagawa",
"capital": null,
"population": 722973.0,
"id": 1392967248
},
{
"city": "Kawaguchi",
"city_ascii": "Kawaguchi",
"lat": 35.8077,
"lng": 139.7241,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Saitama",
"capital": null,
"population": 593353.0,
"id": 1392975133
},
{
"city": "Kōbe",
"city_ascii": "Kobe",
"lat": 34.69,
"lng": 135.1956,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Hyōgo",
"capital": "admin",
"population": 1521707.0,
"id": 1392978082
},
{
"city": "Hirakata",
"city_ascii": "Hirakata",
"lat": 34.8167,
"lng": 135.65,
"country": "Japan",
"iso2": "JP",
"iso3": "JPN",
"admin_name": "Ōsaka",
"capital": null,
"population": 396694.0,
"id": 1392999987
},
{
"city": "Qaraghandy",
"city_ascii": "Qaraghandy",
"lat": 49.8028,
"lng": 73.1056,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 497777.0,
"id": 1398274508
},
{
"city": "Almaty",
"city_ascii": "Almaty",
"lat": 43.2775,
"lng": 76.8958,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 1916822.0,
"id": 1398351701
},
{
"city": "Öskemen",
"city_ascii": "Oskemen",
"lat": 49.9833,
"lng": 82.6167,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 346127.0,
"id": 1398371414
},
{
"city": "Semey",
"city_ascii": "Semey",
"lat": 50.4333,
"lng": 80.2667,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 350201.0,
"id": 1398405657
},
{
"city": "Nur-Sultan",
"city_ascii": "Nur-Sultan",
"lat": 51.1472,
"lng": 71.4222,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "primary",
"population": 1078362.0,
"id": 1398516045
},
{
"city": "Aqtöbe",
"city_ascii": "Aqtobe",
"lat": 50.2836,
"lng": 57.2297,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 387807.0,
"id": 1398602716
},
{
"city": "Taraz",
"city_ascii": "Taraz",
"lat": 42.9,
"lng": 71.3667,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 357795.0,
"id": 1398626276
},
{
"city": "Pavlodar",
"city_ascii": "Pavlodar",
"lat": 52.3,
"lng": 76.95,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 353930.0,
"id": 1398790087
},
{
"city": "Shymkent",
"city_ascii": "Shymkent",
"lat": 42.3167,
"lng": 69.5958,
"country": "Kazakhstan",
"iso2": "KZ",
"iso3": "KAZ",
"admin_name": null,
"capital": "admin",
"population": 1028673.0,
"id": 1398791401
},
{
"city": "Al Mafraq",
"city_ascii": "Al Mafraq",
"lat": 32.3399,
"lng": 36.2052,
"country": "Jordan",
"iso2": "JO",
"iso3": "JOR",
"admin_name": "Al Mafraq",
"capital": "admin",
"population": 580000.0,
"id": 1400040712
},
{
"city": "Az Zarqā’",
"city_ascii": "Az Zarqa'",
"lat": 32.0833,
"lng": 36.1,
"country": "Jordan",
"iso2": "JO",
"iso3": "JOR",
"admin_name": "Az Zarqā’",
"capital": "admin",
"population": 481300.0,
"id": 1400161837
},
{
"city": "Irbid",
"city_ascii": "Irbid",
"lat": 32.55,
"lng": 35.85,
"country": "Jordan",
"iso2": "JO",
"iso3": "JOR",
"admin_name": "Irbid",
"capital": "admin",
"population": 569068.0,
"id": 1400221568
},
{
"city": "Amman",
"city_ascii": "Amman",
"lat": 31.9497,
"lng": 35.9328,
"country": "Jordan",
"iso2": "JO",
"iso3": "JOR",
"admin_name": "Al ‘Āşimah",
"capital": "primary",
"population": 4007526.0,
"id": 1400522593
},
{
"city": "Nairobi",
"city_ascii": "Nairobi",
"lat": -1.2864,
"lng": 36.8172,
"country": "Kenya",
"iso2": "KE",
"iso3": "KEN",
"admin_name": "Nairobi City",
"capital": "primary",
"population": 5545000.0,
"id": 1404000661
},
{
"city": "Kisumu",
"city_ascii": "Kisumu",
"lat": -0.0833,
"lng": 34.7667,
"country": "Kenya",
"iso2": "KE",
"iso3": "KEN",
"admin_name": "Kisumu",
"capital": "admin",
"population": 409928.0,
"id": 1404511920
},
{
"city": "Mombasa",
"city_ascii": "Mombasa",
"lat": -4.05,
"lng": 39.6667,
"country": "Kenya",
"iso2": "KE",
"iso3": "KEN",
"admin_name": "Mombasa",
"capital": "admin",
"population": 1208333.0,
"id": 1404512373
},
{
"city": "Meru",
"city_ascii": "Meru",
"lat": 0.05,
"lng": 37.65,
"country": "Kenya",
"iso2": "KE",
"iso3": "KEN",
"admin_name": "Meru",
"capital": "admin",
"population": 1833000.0,
"id": 1404588252
},
{
"city": "Nampo",
"city_ascii": "Nampo",
"lat": 38.7333,
"lng": 125.4,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "Namp’o",
"capital": null,
"population": 703317.0,
"id": 1408358410
},
{
"city": "Hamhŭng",
"city_ascii": "Hamhung",
"lat": 39.9167,
"lng": 127.5333,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "Hamnam",
"capital": "admin",
"population": 768551.0,
"id": 1408482040
},
{
"city": "Ch’ŏngjin",
"city_ascii": "Ch'ongjin",
"lat": 41.7833,
"lng": 129.7667,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "Hambuk",
"capital": "admin",
"population": 667929.0,
"id": 1408498177
},
{
"city": "Sunch’ŏn",
"city_ascii": "Sunch'on",
"lat": 39.4167,
"lng": 125.9333,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "P’yŏngnam",
"capital": null,
"population": 437000.0,
"id": 1408510801
},
{
"city": "Wŏnsan",
"city_ascii": "Wonsan",
"lat": 39.1475,
"lng": 127.4461,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "Kangwŏn",
"capital": "admin",
"population": 363127.0,
"id": 1408692125
},
{
"city": "Pyongyang",
"city_ascii": "Pyongyang",
"lat": 39.0194,
"lng": 125.7381,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "P’yŏngyang",
"capital": "primary",
"population": 2863000.0,
"id": 1408738594
},
{
"city": "Sinŭiju",
"city_ascii": "Sinuiju",
"lat": 40.1,
"lng": 124.4,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "P’yŏngbuk",
"capital": "admin",
"population": 352000.0,
"id": 1408740449
},
{
"city": "Tanch’ŏn",
"city_ascii": "Tanch'on",
"lat": 40.458,
"lng": 128.911,
"country": "North Korea",
"iso2": "KP",
"iso3": "PRK",
"admin_name": "Hamnam",
"capital": null,
"population": 345876.0,
"id": 1408940912
},
{
"city": "Gwangju",
"city_ascii": "Gwangju",
"lat": 35.1653,
"lng": 126.8486,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gwangju",
"capital": "admin",
"population": 1490092.0,
"id": 1410000087
},
{
"city": "Yeosu",
"city_ascii": "Yeosu",
"lat": 34.7333,
"lng": 127.7333,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Jeonnam",
"capital": "minor",
"population": 341994.0,
"id": 1410002025
},
{
"city": "Ch’ŏnan",
"city_ascii": "Ch'onan",
"lat": 36.8167,
"lng": 127.1667,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Chungnam",
"capital": null,
"population": 651661.0,
"id": 1410020455
},
{
"city": "Hwasu-dong",
"city_ascii": "Hwasu-dong",
"lat": 37.1997,
"lng": 126.8314,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 655350.0,
"id": 1410037247
},
{
"city": "Daegu",
"city_ascii": "Daegu",
"lat": 35.8717,
"lng": 128.6017,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Daegu",
"capital": "admin",
"population": 2461002.0,
"id": 1410095252
},
{
"city": "Ulsan",
"city_ascii": "Ulsan",
"lat": 35.55,
"lng": 129.3167,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Ulsan",
"capital": "admin",
"population": 1166033.0,
"id": 1410134602
},
{
"city": "Incheon",
"city_ascii": "Incheon",
"lat": 37.4833,
"lng": 126.6333,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Incheon",
"capital": "admin",
"population": 2936117.0,
"id": 1410160313
},
{
"city": "Tongjin",
"city_ascii": "Tongjin",
"lat": 37.2333,
"lng": 127.2,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 1076369.0,
"id": 1410160862
},
{
"city": "Yanggok",
"city_ascii": "Yanggok",
"lat": 37.6333,
"lng": 127.2167,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 713321.0,
"id": 1410188674
},
{
"city": "Sihŭng",
"city_ascii": "Sihung",
"lat": 37.3799,
"lng": 126.8029,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 425184.0,
"id": 1410313432
},
{
"city": "Jeju",
"city_ascii": "Jeju",
"lat": 33.5097,
"lng": 126.5219,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Jeju",
"capital": "admin",
"population": 435413.0,
"id": 1410364424
},
{
"city": "Paju",
"city_ascii": "Paju",
"lat": 37.8667,
"lng": 126.8,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": "minor",
"population": 415345.0,
"id": 1410365324
},
{
"city": "Masan",
"city_ascii": "Masan",
"lat": 35.1833,
"lng": 128.55,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeongnam",
"capital": null,
"population": 429612.0,
"id": 1410394650
},
{
"city": "Bucheon",
"city_ascii": "Bucheon",
"lat": 37.5,
"lng": 126.7833,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": "minor",
"population": 867678.0,
"id": 1410428222
},
{
"city": "Jeonju",
"city_ascii": "Jeonju",
"lat": 35.8167,
"lng": 127.15,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Jeonbuk",
"capital": "admin",
"population": 631532.0,
"id": 1410494847
},
{
"city": "Goyang",
"city_ascii": "Goyang",
"lat": 37.65,
"lng": 126.8,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": "minor",
"population": 1061929.0,
"id": 1410511255
},
{
"city": "Anyang",
"city_ascii": "Anyang",
"lat": 37.3833,
"lng": 126.9333,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 573296.0,
"id": 1410581095
},
{
"city": "Ansan",
"city_ascii": "Ansan",
"lat": 37.3167,
"lng": 126.8333,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 652800.0,
"id": 1410585171
},
{
"city": "Changwon",
"city_ascii": "Changwon",
"lat": 35.2708,
"lng": 128.6631,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeongnam",
"capital": "admin",
"population": 1046054.0,
"id": 1410592618
},
{
"city": "Busan",
"city_ascii": "Busan",
"lat": 35.18,
"lng": 129.075,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Busan",
"capital": "admin",
"population": 3453198.0,
"id": 1410601465
},
{
"city": "Sŏngnam",
"city_ascii": "Songnam",
"lat": 37.4333,
"lng": 127.15,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 948757.0,
"id": 1410622472
},
{
"city": "Kumi",
"city_ascii": "Kumi",
"lat": 36.1195,
"lng": 128.3444,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeongbuk",
"capital": null,
"population": 407880.0,
"id": 1410638233
},
{
"city": "Pyeongtaek",
"city_ascii": "Pyeongtaek",
"lat": 36.9922,
"lng": 127.1128,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 457873.0,
"id": 1410641095
},
{
"city": "Suwon",
"city_ascii": "Suwon",
"lat": 37.2667,
"lng": 127.0167,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": "admin",
"population": 1234300.0,
"id": 1410679777
},
{
"city": "Gimpo",
"city_ascii": "Gimpo",
"lat": 37.7,
"lng": 126.6,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": "minor",
"population": 352683.0,
"id": 1410797548
},
{
"city": "Kimhae",
"city_ascii": "Kimhae",
"lat": 35.2342,
"lng": 128.8811,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeongnam",
"capital": null,
"population": 550758.0,
"id": 1410836094
},
{
"city": "Seoul",
"city_ascii": "Seoul",
"lat": 37.56,
"lng": 126.99,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Seoul",
"capital": "primary",
"population": 23016000.0,
"id": 1410836482
},
{
"city": "Uijeongbu",
"city_ascii": "Uijeongbu",
"lat": 37.7486,
"lng": 127.0389,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeonggi",
"capital": null,
"population": 421579.0,
"id": 1410888678
},
{
"city": "Cheongju",
"city_ascii": "Cheongju",
"lat": 36.6333,
"lng": 127.4833,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Chungbuk",
"capital": "admin",
"population": 833276.0,
"id": 1410964361
},
{
"city": "Pohang",
"city_ascii": "Pohang",
"lat": 36.0322,
"lng": 129.365,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Gyeongbuk",
"capital": "minor",
"population": 520305.0,
"id": 1410983252
},
{
"city": "Daejeon",
"city_ascii": "Daejeon",
"lat": 36.351,
"lng": 127.385,
"country": "South Korea",
"iso2": "KR",
"iso3": "KOR",
"admin_name": "Daejeon",
"capital": "admin",
"population": 1475221.0,
"id": 1410993875
},
{
"city": "Kuwait City",
"city_ascii": "Kuwait City",
"lat": 29.3697,
"lng": 47.9783,
"country": "Kuwait",
"iso2": "KW",
"iso3": "KWT",
"admin_name": "Al ‘Āşimah",
"capital": "primary",
"population": 3000000.0,
"id": 1414102075
},
{
"city": "Al Jahrā’",
"city_ascii": "Al Jahra'",
"lat": 29.35,
"lng": 47.6833,
"country": "Kuwait",
"iso2": "KW",
"iso3": "KWT",
"admin_name": "Al Jahrā’",
"capital": null,
"population": 393432.0,
"id": 1414182001
},
{
"city": "Bishkek",
"city_ascii": "Bishkek",
"lat": 42.8747,
"lng": 74.6122,
"country": "Kyrgyzstan",
"iso2": "KG",
"iso3": "KGZ",
"admin_name": "Bishkek",
"capital": "primary",
"population": 1074075.0,
"id": 1417191971
},
{
"city": "Vientiane",
"city_ascii": "Vientiane",
"lat": 17.9667,
"lng": 102.6,
"country": "Laos",
"iso2": "LA",
"iso3": "LAO",
"admin_name": "Viangchan",
"capital": "primary",
"population": 948487.0,
"id": 1418732714
},
{
"city": "Beirut",
"city_ascii": "Beirut",
"lat": 33.8869,
"lng": 35.5131,
"country": "Lebanon",
"iso2": "LB",
"iso3": "LBN",
"admin_name": "Beyrouth",
"capital": "primary",
"population": 361366.0,
"id": 1422847713
},
{
"city": "Tripoli",
"city_ascii": "Tripoli",
"lat": 34.4367,
"lng": 35.8344,
"country": "Lebanon",
"iso2": "LB",
"iso3": "LBN",
"admin_name": "Liban-Nord",
"capital": "admin",
"population": 530000.0,
"id": 1422886065
},
{
"city": "Maseru",
"city_ascii": "Maseru",
"lat": -29.31,
"lng": 27.48,
"country": "Lesotho",
"iso2": "LS",
"iso3": "LSO",
"admin_name": "Maseru",
"capital": "primary",
"population": 519186.0,
"id": 1426977668
},
{
"city": "Riga",
"city_ascii": "Riga",
"lat": 56.9489,
"lng": 24.1064,
"country": "Latvia",
"iso2": "LV",
"iso3": "LVA",
"admin_name": "Rīga",
"capital": "primary",
"population": 920643.0,
"id": 1428586192
},
{
"city": "Monrovia",
"city_ascii": "Monrovia",
"lat": 6.3133,
"lng": -10.8014,
"country": "Liberia",
"iso2": "LR",
"iso3": "LBR",
"admin_name": "Montserrado",
"capital": "primary",
"population": 1021762.0,
"id": 1430477826
},
{
"city": "Tripoli",
"city_ascii": "Tripoli",
"lat": 32.8872,
"lng": 13.1914,
"country": "Libya",
"iso2": "LY",
"iso3": "LBY",
"admin_name": "Ţarābulus",
"capital": "primary",
"population": 1293016.0,
"id": 1434201852
},
{
"city": "Ajdābiyā",
"city_ascii": "Ajdabiya",
"lat": 30.7556,
"lng": 20.2253,
"country": "Libya",
"iso2": "LY",
"iso3": "LBY",
"admin_name": "Al Wāḩāt",
"capital": "admin",
"population": 416000.0,
"id": 1434401280
},
{
"city": "Benghazi",
"city_ascii": "Benghazi",
"lat": 32.1167,
"lng": 20.0667,
"country": "Libya",
"iso2": "LY",
"iso3": "LBY",
"admin_name": "Banghāzī",
"capital": "admin",
"population": 631555.0,
"id": 1434915572
},
{
"city": "Kaunas",
"city_ascii": "Kaunas",
"lat": 54.8972,
"lng": 23.8861,
"country": "Lithuania",
"iso2": "LT",
"iso3": "LTU",
"admin_name": "Kauno Miestas",
"capital": "admin",
"population": 381007.0,
"id": 1440302852
},
{
"city": "Vilnius",
"city_ascii": "Vilnius",
"lat": 54.6872,
"lng": 25.28,
"country": "Lithuania",
"iso2": "LT",
"iso3": "LTU",
"admin_name": "Vilniaus Miestas",
"capital": "primary",
"population": 708203.0,
"id": 1440887149
},
{
"city": "Macau",
"city_ascii": "Macau",
"lat": 22.2006,
"lng": 113.5461,
"country": "Macau",
"iso2": "MO",
"iso3": "MAC",
"admin_name": null,
"capital": null,
"population": 568700.0,
"id": 1446227359
},
{
"city": "Androtsy",
"city_ascii": "Androtsy",
"lat": -24.1,
"lng": 46.3,
"country": "Madagascar",
"iso2": "MG",
"iso3": "MDG",
"admin_name": "Toliara",
"capital": null,
"population": 809313.0,
"id": 1450017816
},
{
"city": "Betsiboka",
"city_ascii": "Betsiboka",
"lat": -16.95,
"lng": 46.83,
"country": "Madagascar",
"iso2": "MG",
"iso3": "MDG",
"admin_name": "Mahajanga",
"capital": null,
"population": 394561.0,
"id": 1450524066
},
{
"city": "Antananarivo",
"city_ascii": "Antananarivo",
"lat": -18.9333,
"lng": 47.5167,
"country": "Madagascar",
"iso2": "MG",
"iso3": "MDG",
"admin_name": "Antananarivo",
"capital": "primary",
"population": 2610000.0,
"id": 1450978461
},
{
"city": "Blantyre",
"city_ascii": "Blantyre",
"lat": -15.7861,
"lng": 35.0058,
"country": "Malawi",
"iso2": "MW",
"iso3": "MWI",
"admin_name": "Blantyre",
"capital": "admin",
"population": 1895973.0,
"id": 1454145012
},
{
"city": "Lilongwe",
"city_ascii": "Lilongwe",
"lat": -13.9833,
"lng": 33.7833,
"country": "Malawi",
"iso2": "MW",
"iso3": "MWI",
"admin_name": "Lilongwe",
"capital": "primary",
"population": 989318.0,
"id": 1454688499
},
{
"city": "Seremban",
"city_ascii": "Seremban",
"lat": 2.7222,
"lng": 101.9417,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Negeri Sembilan",
"capital": "admin",
"population": 419536.0,
"id": 1458051507
},
{
"city": "Kota Bharu",
"city_ascii": "Kota Bharu",
"lat": 6.1333,
"lng": 102.25,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Kelantan",
"capital": "admin",
"population": 491237.0,
"id": 1458150101
},
{
"city": "Shah Alam",
"city_ascii": "Shah Alam",
"lat": 3.0722,
"lng": 101.5167,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Selangor",
"capital": "admin",
"population": 584340.0,
"id": 1458194263
},
{
"city": "George Town",
"city_ascii": "George Town",
"lat": 5.4144,
"lng": 100.3292,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Pulau Pinang",
"capital": "admin",
"population": 794313.0,
"id": 1458236750
},
{
"city": "Sandakan",
"city_ascii": "Sandakan",
"lat": 5.8388,
"lng": 118.1173,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Sabah",
"capital": null,
"population": 396290.0,
"id": 1458405180
},
{
"city": "Seberang Jaya",
"city_ascii": "Seberang Jaya",
"lat": 5.4,
"lng": 100.4667,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Pulau Pinang",
"capital": null,
"population": 946092.0,
"id": 1458417183
},
{
"city": "Ipoh",
"city_ascii": "Ipoh",
"lat": 4.5972,
"lng": 101.075,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Perak",
"capital": "admin",
"population": 866772.0,
"id": 1458423505
},
{
"city": "Kota Kinabalu",
"city_ascii": "Kota Kinabalu",
"lat": 5.975,
"lng": 116.0725,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Sabah",
"capital": "admin",
"population": 452058.0,
"id": 1458441859
},
{
"city": "Melaka",
"city_ascii": "Melaka",
"lat": 2.1944,
"lng": 102.2486,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Melaka",
"capital": "admin",
"population": 455300.0,
"id": 1458467506
},
{
"city": "Butterworth",
"city_ascii": "Butterworth",
"lat": 5.3992,
"lng": 100.3639,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Pulau Pinang",
"capital": null,
"population": 821652.0,
"id": 1458469233
},
{
"city": "Klang",
"city_ascii": "Klang",
"lat": 3.0333,
"lng": 101.45,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Selangor",
"capital": null,
"population": 878000.0,
"id": 1458509635
},
{
"city": "Sungai Petani",
"city_ascii": "Sungai Petani",
"lat": 5.65,
"lng": 100.48,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Kedah",
"capital": null,
"population": 358499.0,
"id": 1458639918
},
{
"city": "Johor Bahru",
"city_ascii": "Johor Bahru",
"lat": 1.4556,
"lng": 103.7611,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Johor",
"capital": "admin",
"population": 497097.0,
"id": 1458747615
},
{
"city": "Kuantan",
"city_ascii": "Kuantan",
"lat": 3.8167,
"lng": 103.3333,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Pahang",
"capital": "admin",
"population": 607778.0,
"id": 1458763489
},
{
"city": "Kuala Lumpur",
"city_ascii": "Kuala Lumpur",
"lat": 3.1478,
"lng": 101.6953,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Kuala Lumpur",
"capital": "primary",
"population": 8911000.0,
"id": 1458988644
},
{
"city": "Petaling Jaya",
"city_ascii": "Petaling Jaya",
"lat": 3.0972,
"lng": 101.6444,
"country": "Malaysia",
"iso2": "MY",
"iso3": "MYS",
"admin_name": "Selangor",
"capital": null,
"population": 638516.0,
"id": 1458989343
},
{
"city": "Balandougou",
"city_ascii": "Balandougou",
"lat": 13.3558,
"lng": -9.5517,
"country": "Mali",
"iso2": "ML",
"iso3": "MLI",
"admin_name": "Kayes",
"capital": null,
"population": 1596882.0,
"id": 1466367944
},
{
"city": "Bamako",
"city_ascii": "Bamako",
"lat": 12.6458,
"lng": -7.9922,
"country": "Mali",
"iso2": "ML",
"iso3": "MLI",
"admin_name": "Bamako",
"capital": "primary",
"population": 2009109.0,
"id": 1466965925
},
{
"city": "Valletta",
"city_ascii": "Valletta",
"lat": 35.8983,
"lng": 14.5125,
"country": "Malta",
"iso2": "MT",
"iso3": "MLT",
"admin_name": "Valletta",
"capital": "primary",
"population": 480134.0,
"id": 1470574399
},
{
"city": "Nouakchott",
"city_ascii": "Nouakchott",
"lat": 18.0858,
"lng": -15.9785,
"country": "Mauritania",
"iso2": "MR",
"iso3": "MRT",
"admin_name": "Nouakchott Ouest",
"capital": "primary",
"population": 1077169.0,
"id": 1478414984
},
{
"city": "Guadalupe",
"city_ascii": "Guadalupe",
"lat": 25.6775,
"lng": -100.2597,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Nuevo León",
"capital": "minor",
"population": 691931.0,
"id": 1484002410
},
{
"city": "Ecatepec",
"city_ascii": "Ecatepec",
"lat": 19.6097,
"lng": -99.06,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 1929926.0,
"id": 1484003694
},
{
"city": "Cancún",
"city_ascii": "Cancun",
"lat": 21.1606,
"lng": -86.8475,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Quintana Roo",
"capital": "minor",
"population": 888797.0,
"id": 1484010310
},
{
"city": "Hermosillo",
"city_ascii": "Hermosillo",
"lat": 29.0989,
"lng": -110.9542,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Sonora",
"capital": "admin",
"population": 855563.0,
"id": 1484015319
},
{
"city": "Ciudad Nezahualcóyotl",
"city_ascii": "Ciudad Nezahualcoyotl",
"lat": 19.4081,
"lng": -99.0186,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": null,
"population": 1109363.0,
"id": 1484016661
},
{
"city": "Tlajomulco de Zúñiga",
"city_ascii": "Tlajomulco de Zuniga",
"lat": 20.4736,
"lng": -103.4431,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Jalisco",
"capital": "minor",
"population": 727750.0,
"id": 1484017493
},
{
"city": "Nezahualcóyotl",
"city_ascii": "Nezahualcoyotl",
"lat": 19.4006,
"lng": -99.0148,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 1077208.0,
"id": 1484074285
},
{
"city": "Tlaquepaque",
"city_ascii": "Tlaquepaque",
"lat": 20.6167,
"lng": -103.3167,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Jalisco",
"capital": "minor",
"population": 664193.0,
"id": 1484087945
},
{
"city": "Gómez Palacio",
"city_ascii": "Gomez Palacio",
"lat": 25.5611,
"lng": -103.4983,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Durango",
"capital": "minor",
"population": 342286.0,
"id": 1484092318
},
{
"city": "Saltillo",
"city_ascii": "Saltillo",
"lat": 25.4231,
"lng": -100.9919,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Coahuila",
"capital": "admin",
"population": 864431.0,
"id": 1484107245
},
{
"city": "Zapopan",
"city_ascii": "Zapopan",
"lat": 20.7167,
"lng": -103.4,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Jalisco",
"capital": "minor",
"population": 1476491.0,
"id": 1484198680
},
{
"city": "Torreón",
"city_ascii": "Torreon",
"lat": 25.5394,
"lng": -103.4486,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Coahuila",
"capital": "minor",
"population": 716672.0,
"id": 1484215762
},
{
"city": "Mexico City",
"city_ascii": "Mexico City",
"lat": 19.4333,
"lng": -99.1333,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Ciudad de México",
"capital": "primary",
"population": 21804000.0,
"id": 1484247881
},
{
"city": "San Nicolás de los Garza",
"city_ascii": "San Nicolas de los Garza",
"lat": 25.75,
"lng": -100.2833,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Nuevo León",
"capital": "minor",
"population": 443273.0,
"id": 1484264138
},
{
"city": "Xalapa",
"city_ascii": "Xalapa",
"lat": 19.54,
"lng": -96.9275,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Veracruz",
"capital": "admin",
"population": 424755.0,
"id": 1484334948
},
{
"city": "Chihuahua",
"city_ascii": "Chihuahua",
"lat": 28.6353,
"lng": -106.0889,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Chihuahua",
"capital": "admin",
"population": 878062.0,
"id": 1484335603
},
{
"city": "Tecámac",
"city_ascii": "Tecamac",
"lat": 19.7131,
"lng": -98.9683,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 364579.0,
"id": 1484363321
},
{
"city": "Ciudad López Mateos",
"city_ascii": "Ciudad Lopez Mateos",
"lat": 19.55,
"lng": -99.2833,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 489937.0,
"id": 1484363879
},
{
"city": "Mérida",
"city_ascii": "Merida",
"lat": 20.97,
"lng": -89.62,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Yucatán",
"capital": "admin",
"population": 892363.0,
"id": 1484396779
},
{
"city": "Puebla",
"city_ascii": "Puebla",
"lat": 19.0333,
"lng": -98.1833,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Puebla",
"capital": "admin",
"population": 1576259.0,
"id": 1484416394
},
{
"city": "Tepic",
"city_ascii": "Tepic",
"lat": 21.5083,
"lng": -104.8931,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Nayarit",
"capital": "admin",
"population": 413609.0,
"id": 1484433877
},
{
"city": "Los Mochis",
"city_ascii": "Los Mochis",
"lat": 25.7835,
"lng": -108.9937,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Sinaloa",
"capital": "minor",
"population": 490000.0,
"id": 1484443585
},
{
"city": "Ixtapaluca",
"city_ascii": "Ixtapaluca",
"lat": 19.3186,
"lng": -98.8822,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 542211.0,
"id": 1484452937
},
{
"city": "Villahermosa",
"city_ascii": "Villahermosa",
"lat": 17.9892,
"lng": -92.9281,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Tabasco",
"capital": "admin",
"population": 353577.0,
"id": 1484460894
},
{
"city": "Acapulco de Juárez",
"city_ascii": "Acapulco de Juarez",
"lat": 16.8636,
"lng": -99.8825,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Guerrero",
"capital": "minor",
"population": 673478.0,
"id": 1484463183
},
{
"city": "Chimalhuacán",
"city_ascii": "Chimalhuacan",
"lat": 19.4167,
"lng": -98.9,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 614453.0,
"id": 1484504936
},
{
"city": "Culiacán",
"city_ascii": "Culiacan",
"lat": 24.8069,
"lng": -107.3939,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Sinaloa",
"capital": "admin",
"population": 808416.0,
"id": 1484516810
},
{
"city": "Monterrey",
"city_ascii": "Monterrey",
"lat": 25.6667,
"lng": -100.3,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Nuevo León",
"capital": "admin",
"population": 5341171.0,
"id": 1484559591
},
{
"city": "Tultitlán de Mariano Escobedo",
"city_ascii": "Tultitlan de Mariano Escobedo",
"lat": 19.645,
"lng": -99.1694,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 520557.0,
"id": 1484562374
},
{
"city": "San Luis Potosí",
"city_ascii": "San Luis Potosi",
"lat": 22.1511,
"lng": -100.9761,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "San Luis Potosí",
"capital": "admin",
"population": 772828.0,
"id": 1484583620
},
{
"city": "Nicolás Romero",
"city_ascii": "Nicolas Romero",
"lat": 19.5833,
"lng": -99.3667,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 366602.0,
"id": 1484589606
},
{
"city": "Nuevo Laredo",
"city_ascii": "Nuevo Laredo",
"lat": 27.4861,
"lng": -99.5069,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Tamaulipas",
"capital": "minor",
"population": 384033.0,
"id": 1484597234
},
{
"city": "Querétaro",
"city_ascii": "Queretaro",
"lat": 20.5875,
"lng": -100.3928,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Querétaro",
"capital": "admin",
"population": 801940.0,
"id": 1484604775
},
{
"city": "Heroica Matamoros",
"city_ascii": "Heroica Matamoros",
"lat": 25.8797,
"lng": -97.5042,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Tamaulipas",
"capital": "minor",
"population": 541979.0,
"id": 1484614906
},
{
"city": "Irapuato",
"city_ascii": "Irapuato",
"lat": 20.6667,
"lng": -101.35,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Guanajuato",
"capital": "minor",
"population": 592953.0,
"id": 1484625454
},
{
"city": "Aguascalientes",
"city_ascii": "Aguascalientes",
"lat": 21.876,
"lng": -102.296,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Aguascalientes",
"capital": "admin",
"population": 934424.0,
"id": 1484666646
},
{
"city": "Morelia",
"city_ascii": "Morelia",
"lat": 19.7683,
"lng": -101.1894,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Michoacán",
"capital": null,
"population": 962555.0,
"id": 1484669072
},
{
"city": "Tijuana",
"city_ascii": "Tijuana",
"lat": 32.525,
"lng": -117.0333,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Baja California",
"capital": "minor",
"population": 2002000.0,
"id": 1484708778
},
{
"city": "Ensenada",
"city_ascii": "Ensenada",
"lat": 31.8578,
"lng": -116.6058,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Baja California",
"capital": "minor",
"population": 557430.0,
"id": 1484714297
},
{
"city": "Minatitlán",
"city_ascii": "Minatitlan",
"lat": 17.9833,
"lng": -94.55,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Veracruz",
"capital": "minor",
"population": 356020.0,
"id": 1484735713
},
{
"city": "Reynosa",
"city_ascii": "Reynosa",
"lat": 26.0922,
"lng": -98.2778,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Tamaulipas",
"capital": "minor",
"population": 725793.0,
"id": 1484737671
},
{
"city": "Tonalá",
"city_ascii": "Tonala",
"lat": 20.6167,
"lng": -103.2333,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Jalisco",
"capital": "minor",
"population": 569913.0,
"id": 1484750897
},
{
"city": "Orizaba",
"city_ascii": "Orizaba",
"lat": 18.85,
"lng": -97.1,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Veracruz",
"capital": "minor",
"population": 355333.0,
"id": 1484766767
},
{
"city": "Mexicali",
"city_ascii": "Mexicali",
"lat": 32.6633,
"lng": -115.4678,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Baja California",
"capital": "admin",
"population": 1102342.0,
"id": 1484788702
},
{
"city": "León de los Aldama",
"city_ascii": "Leon de los Aldama",
"lat": 21.1167,
"lng": -101.6833,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Guanajuato",
"capital": "minor",
"population": 1579803.0,
"id": 1484811199
},
{
"city": "Tuxtla",
"city_ascii": "Tuxtla",
"lat": 16.7528,
"lng": -93.1167,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Chiapas",
"capital": "admin",
"population": 598710.0,
"id": 1484832519
},
{
"city": "Juárez",
"city_ascii": "Juarez",
"lat": 31.7386,
"lng": -106.487,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Chihuahua",
"capital": "minor",
"population": 1321004.0,
"id": 1484840083
},
{
"city": "Mazatlán",
"city_ascii": "Mazatlan",
"lat": 23.2167,
"lng": -106.4167,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Sinaloa",
"capital": "minor",
"population": 658354.0,
"id": 1484841466
},
{
"city": "Naucalpan de Juárez",
"city_ascii": "Naucalpan de Juarez",
"lat": 19.4753,
"lng": -99.2378,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 913681.0,
"id": 1484850125
},
{
"city": "Durango",
"city_ascii": "Durango",
"lat": 24.025,
"lng": -104.6675,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Durango",
"capital": "admin",
"population": 654876.0,
"id": 1484854616
},
{
"city": "Ciudad Apodaca",
"city_ascii": "Ciudad Apodaca",
"lat": 25.7817,
"lng": -100.1886,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Nuevo León",
"capital": "minor",
"population": 523370.0,
"id": 1484855080
},
{
"city": "Tlalnepantla",
"city_ascii": "Tlalnepantla",
"lat": 19.5367,
"lng": -99.1947,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "México",
"capital": "minor",
"population": 653410.0,
"id": 1484861603
},
{
"city": "Guadalajara",
"city_ascii": "Guadalajara",
"lat": 20.6767,
"lng": -103.3475,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Jalisco",
"capital": "admin",
"population": 5525000.0,
"id": 1484950208
},
{
"city": "Celaya",
"city_ascii": "Celaya",
"lat": 20.5222,
"lng": -100.8122,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Guanajuato",
"capital": "minor",
"population": 494304.0,
"id": 1484979555
},
{
"city": "Veracruz",
"city_ascii": "Veracruz",
"lat": 19.1903,
"lng": -96.1533,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Veracruz",
"capital": "minor",
"population": 428323.0,
"id": 1484992153
},
{
"city": "Tapachula",
"city_ascii": "Tapachula",
"lat": 14.9,
"lng": -92.2667,
"country": "Mexico",
"iso2": "MX",
"iso3": "MEX",
"admin_name": "Chiapas",
"capital": "minor",
"population": 348156.0,
"id": 1484997178
},
{
"city": "Ulaanbaatar",
"city_ascii": "Ulaanbaatar",
"lat": 47.9203,
"lng": 106.9172,
"country": "Mongolia",
"iso2": "MN",
"iso3": "MNG",
"admin_name": "Ulaanbaatar",
"capital": "primary",
"population": 1396288.0,
"id": 1496024767
},
{
"city": "Chisinau",
"city_ascii": "Chisinau",
"lat": 47.0228,
"lng": 28.8353,
"country": "Moldova",
"iso2": "MD",
"iso3": "MDA",
"admin_name": "Chişinău",
"capital": "primary",
"population": 702300.0,
"id": 1498011437
},
{
"city": "Rabat",
"city_ascii": "Rabat",
"lat": 34.0209,
"lng": -6.8416,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Rabat-Salé-Kénitra",
"capital": "primary",
"population": 572717.0,
"id": 1504023252
},
{
"city": "Agadir",
"city_ascii": "Agadir",
"lat": 30.4333,
"lng": -9.6,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Souss-Massa",
"capital": "admin",
"population": 421844.0,
"id": 1504116858
},
{
"city": "Marrakech",
"city_ascii": "Marrakech",
"lat": 31.63,
"lng": -8.0089,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Marrakech-Safi",
"capital": "admin",
"population": 928850.0,
"id": 1504172585
},
{
"city": "Casablanca",
"city_ascii": "Casablanca",
"lat": 33.5333,
"lng": -7.5833,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Casablanca-Settat",
"capital": "admin",
"population": 4370000.0,
"id": 1504175315
},
{
"city": "Meknès",
"city_ascii": "Meknes",
"lat": 33.895,
"lng": -5.5547,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Fès-Meknès",
"capital": null,
"population": 520428.0,
"id": 1504333193
},
{
"city": "Mediouna",
"city_ascii": "Mediouna",
"lat": 33.45,
"lng": -7.51,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Casablanca-Settat",
"capital": null,
"population": 822851.0,
"id": 1504371270
},
{
"city": "Kenitra",
"city_ascii": "Kenitra",
"lat": 34.25,
"lng": -6.5833,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Rabat-Salé-Kénitra",
"capital": null,
"population": 431282.0,
"id": 1504534876
},
{
"city": "Tétouan",
"city_ascii": "Tetouan",
"lat": 35.5667,
"lng": -5.3667,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Tanger-Tétouan-Al Hoceïma",
"capital": null,
"population": 380787.0,
"id": 1504709141
},
{
"city": "El Kelaa des Srarhna",
"city_ascii": "El Kelaa des Srarhna",
"lat": 32.0481,
"lng": -7.4083,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Marrakech-Safi",
"capital": null,
"population": 1450021.0,
"id": 1504846488
},
{
"city": "Tangier",
"city_ascii": "Tangier",
"lat": 35.7767,
"lng": -5.8039,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Tanger-Tétouan-Al Hoceïma",
"capital": "admin",
"population": 947952.0,
"id": 1504861504
},
{
"city": "Fès",
"city_ascii": "Fes",
"lat": 34.0433,
"lng": -5.0033,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Fès-Meknès",
"capital": "admin",
"population": 1112072.0,
"id": 1504861997
},
{
"city": "Oujda-Angad",
"city_ascii": "Oujda-Angad",
"lat": 34.6867,
"lng": -1.9114,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Oriental",
"capital": "admin",
"population": 494252.0,
"id": 1504891036
},
{
"city": "Sale",
"city_ascii": "Sale",
"lat": 34.0333,
"lng": -6.8,
"country": "Morocco",
"iso2": "MA",
"iso3": "MAR",
"admin_name": "Rabat-Salé-Kénitra",
"capital": null,
"population": 850403.0,
"id": 1504989034
},
{
"city": "Maputo",
"city_ascii": "Maputo",
"lat": -25.9667,
"lng": 32.5833,
"country": "Mozambique",
"iso2": "MZ",
"iso3": "MOZ",
"admin_name": "Maputo",
"capital": "primary",
"population": 1191613.0,
"id": 1508074843
},
{
"city": "Beira",
"city_ascii": "Beira",
"lat": -19.8333,
"lng": 34.85,
"country": "Mozambique",
"iso2": "MZ",
"iso3": "MOZ",
"admin_name": "Sofala",
"capital": "admin",
"population": 436240.0,
"id": 1508407369
},
{
"city": "António Enes",
"city_ascii": "Antonio Enes",
"lat": -16.2333,
"lng": 39.9167,
"country": "Mozambique",
"iso2": "MZ",
"iso3": "MOZ",
"admin_name": "Nampula",
"capital": null,
"population": 347175.0,
"id": 1508591443
},
{
"city": "Matola",
"city_ascii": "Matola",
"lat": -25.9667,
"lng": 32.4667,
"country": "Mozambique",
"iso2": "MZ",
"iso3": "MOZ",
"admin_name": "Maputo",
"capital": null,
"population": 1032197.0,
"id": 1508768577
},
{
"city": "Nampula",
"city_ascii": "Nampula",
"lat": -15.1167,
"lng": 39.2667,
"country": "Mozambique",
"iso2": "MZ",
"iso3": "MOZ",
"admin_name": "Nampula",
"capital": "admin",
"population": 743000.0,
"id": 1508958445
},
{
"city": "Muscat",
"city_ascii": "Muscat",
"lat": 23.6139,
"lng": 58.5922,
"country": "Oman",
"iso2": "OM",
"iso3": "OMN",
"admin_name": "Masqaţ",
"capital": "primary",
"population": 1421409.0,
"id": 1512035506
},
{
"city": "Bawshar",
"city_ascii": "Bawshar",
"lat": 23.5333,
"lng": 58.3833,
"country": "Oman",
"iso2": "OM",
"iso3": "OMN",
"admin_name": "Masqaţ",
"capital": null,
"population": 383257.0,
"id": 1512506161
},
{
"city": "Pokhara",
"city_ascii": "Pokhara",
"lat": 28.2083,
"lng": 83.9889,
"country": "Nepal",
"iso2": "NP",
"iso3": "NPL",
"admin_name": "Gaṇḍakī",
"capital": "admin",
"population": 353841.0,
"id": 1524416084
},
{
"city": "Kathmandu",
"city_ascii": "Kathmandu",
"lat": 27.7172,
"lng": 85.324,
"country": "Nepal",
"iso2": "NP",
"iso3": "NPL",
"admin_name": null,
"capital": "primary",
"population": 975453.0,
"id": 1524589448
},
{
"city": "Bharatpur",
"city_ascii": "Bharatpur",
"lat": 27.6833,
"lng": 84.4333,
"country": "Nepal",
"iso2": "NP",
"iso3": "NPL",
"admin_name": null,
"capital": null,
"population": 369377.0,
"id": 1524780273
},
{
"city": "Amsterdam",
"city_ascii": "Amsterdam",
"lat": 52.3728,
"lng": 4.8936,
"country": "Netherlands",
"iso2": "NL",
"iso3": "NLD",
"admin_name": "Noord-Holland",
"capital": "primary",
"population": 1459402.0,
"id": 1528355309
},
{
"city": "The Hague",
"city_ascii": "The Hague",
"lat": 52.08,
"lng": 4.31,
"country": "Netherlands",
"iso2": "NL",
"iso3": "NLD",
"admin_name": "Zuid-Holland",
"capital": "primary",
"population": 548320.0,
"id": 1528799905
},
{
"city": "Utrecht",
"city_ascii": "Utrecht",
"lat": 52.0833,
"lng": 5.1167,
"country": "Netherlands",
"iso2": "NL",
"iso3": "NLD",
"admin_name": "Utrecht",
"capital": "admin",
"population": 359370.0,
"id": 1528871692
},
{
"city": "Rotterdam",
"city_ascii": "Rotterdam",
"lat": 51.9167,
"lng": 4.5,
"country": "Netherlands",
"iso2": "NL",
"iso3": "NLD",
"admin_name": "Zuid-Holland",
"capital": "minor",
"population": 631155.0,
"id": 1528892850
},
{
"city": "Christchurch",
"city_ascii": "Christchurch",
"lat": -43.531,
"lng": 172.6365,
"country": "New Zealand",
"iso2": "NZ",
"iso3": "NZL",
"admin_name": "Canterbury",
"capital": "admin",
"population": 383200.0,
"id": 1554377228
},
{
"city": "Auckland",
"city_ascii": "Auckland",
"lat": -36.8406,
"lng": 174.74,
"country": "New Zealand",
"iso2": "NZ",
"iso3": "NZL",
"admin_name": "Auckland",
"capital": "admin",
"population": 1346091.0,
"id": 1554435911
},
{
"city": "Wellington",
"city_ascii": "Wellington",
"lat": -41.2889,
"lng": 174.7772,
"country": "New Zealand",
"iso2": "NZ",
"iso3": "NZL",
"admin_name": "Wellington",
"capital": "primary",
"population": 418500.0,
"id": 1554772152
},
{
"city": "Manukau City",
"city_ascii": "Manukau City",
"lat": -37.0,
"lng": 174.885,
"country": "New Zealand",
"iso2": "NZ",
"iso3": "NZL",
"admin_name": "Auckland",
"capital": null,
"population": 375600.0,
"id": 1554797148
},
{
"city": "Managua",
"city_ascii": "Managua",
"lat": 12.1544,
"lng": -86.2738,
"country": "Nicaragua",
"iso2": "NI",
"iso3": "NIC",
"admin_name": "Managua",
"capital": "primary",
"population": 1028808.0,
"id": 1558296252
},
{
"city": "Niamey",
"city_ascii": "Niamey",
"lat": 13.515,
"lng": 2.1175,
"country": "Niger",
"iso2": "NE",
"iso3": "NER",
"admin_name": "Niamey",
"capital": "primary",
"population": 1026848.0,
"id": 1562932886
},
{
"city": "Ugep",
"city_ascii": "Ugep",
"lat": 5.8,
"lng": 8.0833,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Cross River",
"capital": "minor",
"population": 420000.0,
"id": 1566000091
},
{
"city": "Uyo",
"city_ascii": "Uyo",
"lat": 5.05,
"lng": 7.9333,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Akwa Ibom",
"capital": "admin",
"population": 429900.0,
"id": 1566061694
},
{
"city": "Port Harcourt",
"city_ascii": "Port Harcourt",
"lat": 4.8242,
"lng": 7.0336,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Rivers",
"capital": "admin",
"population": 1865000.0,
"id": 1566070649
},
{
"city": "Benin City",
"city_ascii": "Benin City",
"lat": 6.3333,
"lng": 5.6222,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Edo",
"capital": "admin",
"population": 1147188.0,
"id": 1566080151
},
{
"city": "Nnewi",
"city_ascii": "Nnewi",
"lat": 6.0167,
"lng": 6.9167,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Anambra",
"capital": "minor",
"population": 391227.0,
"id": 1566097410
},
{
"city": "Ado-Ekiti",
"city_ascii": "Ado-Ekiti",
"lat": 7.6167,
"lng": 5.2167,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ekiti",
"capital": "admin",
"population": 446749.0,
"id": 1566196391
},
{
"city": "Shagamu",
"city_ascii": "Shagamu",
"lat": 6.8333,
"lng": 3.65,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ogun",
"capital": "minor",
"population": 1132270.0,
"id": 1566202131
},
{
"city": "Enugu",
"city_ascii": "Enugu",
"lat": 6.4528,
"lng": 7.5111,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Enugu",
"capital": "admin",
"population": 715774.0,
"id": 1566212729
},
{
"city": "Umuahia",
"city_ascii": "Umuahia",
"lat": 5.5333,
"lng": 7.4833,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Abia",
"capital": "admin",
"population": 359230.0,
"id": 1566217980
},
{
"city": "Aba",
"city_ascii": "Aba",
"lat": 5.1167,
"lng": 7.3667,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Abia",
"capital": "minor",
"population": 1530000.0,
"id": 1566262000
},
{
"city": "Zaria",
"city_ascii": "Zaria",
"lat": 11.0667,
"lng": 7.7,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Kaduna",
"capital": "minor",
"population": 408198.0,
"id": 1566287704
},
{
"city": "Warri",
"city_ascii": "Warri",
"lat": 5.5167,
"lng": 5.75,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Delta",
"capital": "minor",
"population": 830106.0,
"id": 1566325734
},
{
"city": "Abuja",
"city_ascii": "Abuja",
"lat": 9.0667,
"lng": 7.4833,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Federal Capital Territory",
"capital": "primary",
"population": 3770000.0,
"id": 1566342270
},
{
"city": "Ibadan",
"city_ascii": "Ibadan",
"lat": 7.3964,
"lng": 3.9167,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Oyo",
"capital": "admin",
"population": 3552000.0,
"id": 1566366407
},
{
"city": "Kaduna",
"city_ascii": "Kaduna",
"lat": 10.5167,
"lng": 7.4333,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Kaduna",
"capital": "admin",
"population": 760084.0,
"id": 1566368729
},
{
"city": "Ogbomoso",
"city_ascii": "Ogbomoso",
"lat": 8.1333,
"lng": 4.25,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Oyo",
"capital": "minor",
"population": 1032000.0,
"id": 1566373448
},
{
"city": "Gusau",
"city_ascii": "Gusau",
"lat": 12.15,
"lng": 6.6667,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Zamfara",
"capital": "admin",
"population": 383162.0,
"id": 1566383682
},
{
"city": "Osogbo",
"city_ascii": "Osogbo",
"lat": 7.7667,
"lng": 4.5667,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Osun",
"capital": "admin",
"population": 731000.0,
"id": 1566395088
},
{
"city": "Saki",
"city_ascii": "Saki",
"lat": 8.6667,
"lng": 3.4,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Oyo",
"capital": "minor",
"population": 388225.0,
"id": 1566404680
},
{
"city": "Kano",
"city_ascii": "Kano",
"lat": 12.0,
"lng": 8.5167,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Kano",
"capital": "admin",
"population": 3848885.0,
"id": 1566422868
},
{
"city": "Ilorin",
"city_ascii": "Ilorin",
"lat": 8.5,
"lng": 4.55,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Kwara",
"capital": "admin",
"population": 847582.0,
"id": 1566480168
},
{
"city": "Bauchi",
"city_ascii": "Bauchi",
"lat": 10.3158,
"lng": 9.8442,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Bauchi",
"capital": "admin",
"population": 693700.0,
"id": 1566483284
},
{
"city": "Ikeja",
"city_ascii": "Ikeja",
"lat": 6.6186,
"lng": 3.3426,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Lagos",
"capital": "admin",
"population": 861300.0,
"id": 1566486388
},
{
"city": "Calabar",
"city_ascii": "Calabar",
"lat": 4.9767,
"lng": 8.3383,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Cross River",
"capital": "admin",
"population": 461796.0,
"id": 1566495489
},
{
"city": "Maiduguri",
"city_ascii": "Maiduguri",
"lat": 11.8333,
"lng": 13.15,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Borno",
"capital": "admin",
"population": 1197497.0,
"id": 1566540296
},
{
"city": "Agege",
"city_ascii": "Agege",
"lat": 6.6219,
"lng": 3.3258,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Lagos",
"capital": "minor",
"population": 459939.0,
"id": 1566564887
},
{
"city": "Akure",
"city_ascii": "Akure",
"lat": 7.25,
"lng": 5.195,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ondo",
"capital": "admin",
"population": 847903.0,
"id": 1566568277
},
{
"city": "Sokoto",
"city_ascii": "Sokoto",
"lat": 13.0622,
"lng": 5.2339,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Sokoto",
"capital": "admin",
"population": 427760.0,
"id": 1566574518
},
{
"city": "Onitsha",
"city_ascii": "Onitsha",
"lat": 6.1667,
"lng": 6.7833,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Anambra",
"capital": "minor",
"population": 1483000.0,
"id": 1566593483
},
{
"city": "Lagos",
"city_ascii": "Lagos",
"lat": 6.455,
"lng": 3.3841,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Lagos",
"capital": "minor",
"population": 16637000.0,
"id": 1566593751
},
{
"city": "Somolu",
"city_ascii": "Somolu",
"lat": 6.5408,
"lng": 3.3872,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Lagos",
"capital": "minor",
"population": 403569.0,
"id": 1566609760
},
{
"city": "Owerri",
"city_ascii": "Owerri",
"lat": 5.4833,
"lng": 7.0333,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Imo",
"capital": "admin",
"population": 908109.0,
"id": 1566679132
},
{
"city": "Ikare",
"city_ascii": "Ikare",
"lat": 7.5167,
"lng": 5.75,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ondo",
"capital": "minor",
"population": 1099931.0,
"id": 1566683694
},
{
"city": "Jalingo",
"city_ascii": "Jalingo",
"lat": 8.9195,
"lng": 11.3264,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Taraba",
"capital": "admin",
"population": 660213.0,
"id": 1566732241
},
{
"city": "Ile-Ife",
"city_ascii": "Ile-Ife",
"lat": 7.4667,
"lng": 4.5667,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Osun",
"capital": "minor",
"population": 501952.0,
"id": 1566756897
},
{
"city": "Jos",
"city_ascii": "Jos",
"lat": 9.9167,
"lng": 8.8903,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Plateau",
"capital": "admin",
"population": 622802.0,
"id": 1566773679
},
{
"city": "Yola",
"city_ascii": "Yola",
"lat": 9.23,
"lng": 12.46,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Adamawa",
"capital": "admin",
"population": 392854.0,
"id": 1566782065
},
{
"city": "Owo",
"city_ascii": "Owo",
"lat": 7.1961,
"lng": 5.5864,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ondo",
"capital": "minor",
"population": 425700.0,
"id": 1566833788
},
{
"city": "Gwoza",
"city_ascii": "Gwoza",
"lat": 11.0861,
"lng": 13.6914,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Borno",
"capital": "minor",
"population": 388600.0,
"id": 1566834535
},
{
"city": "Oyo",
"city_ascii": "Oyo",
"lat": 7.85,
"lng": 3.933,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Oyo",
"capital": "minor",
"population": 386723.0,
"id": 1566930579
},
{
"city": "Ilesa",
"city_ascii": "Ilesa",
"lat": 7.6167,
"lng": 4.7167,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Osun",
"capital": "minor",
"population": 384334.0,
"id": 1566937414
},
{
"city": "Abeokuta",
"city_ascii": "Abeokuta",
"lat": 7.1608,
"lng": 3.3483,
"country": "Nigeria",
"iso2": "NG",
"iso3": "NGA",
"admin_name": "Ogun",
"capital": "admin",
"population": 888924.0,
"id": 1566979497
},
{
"city": "Oslo",
"city_ascii": "Oslo",
"lat": 59.9133,
"lng": 10.7389,
"country": "Norway",
"iso2": "NO",
"iso3": "NOR",
"admin_name": "Oslo",
"capital": "primary",
"population": 1064235.0,
"id": 1578324706
},
{
"city": "Mardan",
"city_ascii": "Mardan",
"lat": 34.2012,
"lng": 72.0258,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Khyber Pakhtunkhwa",
"capital": "minor",
"population": 358604.0,
"id": 1586001546
},
{
"city": "Dera Ghazi Khan",
"city_ascii": "Dera Ghazi Khan",
"lat": 30.0331,
"lng": 70.64,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 399064.0,
"id": 1586002238
},
{
"city": "Gujrat",
"city_ascii": "Gujrat",
"lat": 32.5739,
"lng": 74.0789,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 390533.0,
"id": 1586006990
},
{
"city": "Bahawalpur",
"city_ascii": "Bahawalpur",
"lat": 29.3956,
"lng": 71.6836,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 762111.0,
"id": 1586038700
},
{
"city": "Karachi",
"city_ascii": "Karachi",
"lat": 24.86,
"lng": 67.01,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Sindh",
"capital": "admin",
"population": 15738000.0,
"id": 1586129469
},
{
"city": "Rahimyar Khan",
"city_ascii": "Rahimyar Khan",
"lat": 28.42,
"lng": 70.3,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": null,
"population": 420419.0,
"id": 1586136399
},
{
"city": "Sialkot City",
"city_ascii": "Sialkot City",
"lat": 32.4925,
"lng": 74.5311,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 655852.0,
"id": 1586141444
},
{
"city": "Hyderabad City",
"city_ascii": "Hyderabad City",
"lat": 25.3792,
"lng": 68.3683,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Sindh",
"capital": "minor",
"population": 1732693.0,
"id": 1586185019
},
{
"city": "Multan",
"city_ascii": "Multan",
"lat": 30.1978,
"lng": 71.4697,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 1871843.0,
"id": 1586256291
},
{
"city": "Jhang City",
"city_ascii": "Jhang City",
"lat": 31.2694,
"lng": 72.3161,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 414131.0,
"id": 1586288677
},
{
"city": "Shekhupura",
"city_ascii": "Shekhupura",
"lat": 31.7111,
"lng": 73.9878,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 473129.0,
"id": 1586291726
},
{
"city": "Islamabad",
"city_ascii": "Islamabad",
"lat": 33.6931,
"lng": 73.0639,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Islamabad",
"capital": "primary",
"population": 1014825.0,
"id": 1586306717
},
{
"city": "Faisalabad",
"city_ascii": "Faisalabad",
"lat": 31.4167,
"lng": 73.0911,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 3203846.0,
"id": 1586323916
},
{
"city": "Sarai Alamgir",
"city_ascii": "Sarai Alamgir",
"lat": 32.9,
"lng": 73.75,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": null,
"population": 350288.0,
"id": 1586338206
},
{
"city": "Cantonment",
"city_ascii": "Cantonment",
"lat": 31.5167,
"lng": 74.3833,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": null,
"population": 374872.0,
"id": 1586338974
},
{
"city": "Rawalpindi",
"city_ascii": "Rawalpindi",
"lat": 33.6,
"lng": 73.0333,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 2098231.0,
"id": 1586344001
},
{
"city": "Sukkur",
"city_ascii": "Sukkur",
"lat": 27.7061,
"lng": 68.8483,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Sindh",
"capital": "minor",
"population": 499900.0,
"id": 1586383591
},
{
"city": "Gujranwala",
"city_ascii": "Gujranwala",
"lat": 32.1567,
"lng": 74.19,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 2027001.0,
"id": 1586400472
},
{
"city": "Chiniot",
"city_ascii": "Chiniot",
"lat": 31.7194,
"lng": 72.9842,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 477781.0,
"id": 1586413435
},
{
"city": "Quetta",
"city_ascii": "Quetta",
"lat": 30.1833,
"lng": 67.0,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Balochistan",
"capital": "admin",
"population": 1001205.0,
"id": 1586556108
},
{
"city": "Saidu Sharif",
"city_ascii": "Saidu Sharif",
"lat": 34.75,
"lng": 72.3572,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Khyber Pakhtunkhwa",
"capital": "minor",
"population": 1860310.0,
"id": 1586619596
},
{
"city": "Larkana",
"city_ascii": "Larkana",
"lat": 27.5583,
"lng": 68.2111,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Sindh",
"capital": "minor",
"population": 490508.0,
"id": 1586678302
},
{
"city": "Sargodha",
"city_ascii": "Sargodha",
"lat": 32.0836,
"lng": 72.6711,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "minor",
"population": 659862.0,
"id": 1586696588
},
{
"city": "Bhawana",
"city_ascii": "Bhawana",
"lat": 31.5661,
"lng": 72.6461,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": null,
"population": 373841.0,
"id": 1586746564
},
{
"city": "Lahore",
"city_ascii": "Lahore",
"lat": 31.5497,
"lng": 74.3436,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Punjab",
"capital": "admin",
"population": 12306000.0,
"id": 1586801463
},
{
"city": "Peshawar",
"city_ascii": "Peshawar",
"lat": 34.0144,
"lng": 71.5675,
"country": "Pakistan",
"iso2": "PK",
"iso3": "PAK",
"admin_name": "Khyber Pakhtunkhwa",
"capital": "admin",
"population": 1970042.0,
"id": 1586851102
},
{
"city": "Panama City",
"city_ascii": "Panama City",
"lat": 8.9833,
"lng": -79.5167,
"country": "Panama",
"iso2": "PA",
"iso3": "PAN",
"admin_name": "Panamá",
"capital": "primary",
"population": 1500189.0,
"id": 1591672475
},
{
"city": "Port Moresby",
"city_ascii": "Port Moresby",
"lat": -9.4789,
"lng": 147.1494,
"country": "Papua New Guinea",
"iso2": "PG",
"iso3": "PNG",
"admin_name": "National Capital",
"capital": "primary",
"population": 700000.0,
"id": 1598685395
},
{
"city": "Asunción",
"city_ascii": "Asuncion",
"lat": -25.3,
"lng": -57.6333,
"country": "Paraguay",
"iso2": "PY",
"iso3": "PRY",
"admin_name": "Asunción",
"capital": "primary",
"population": 524190.0,
"id": 1600057911
},
{
"city": "Cusco",
"city_ascii": "Cusco",
"lat": -13.525,
"lng": -71.9722,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Cusco",
"capital": "admin",
"population": 428450.0,
"id": 1604162901
},
{
"city": "Chimbote",
"city_ascii": "Chimbote",
"lat": -9.0745,
"lng": -78.5936,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Ancash",
"capital": null,
"population": 497875.0,
"id": 1604199858
},
{
"city": "Huancayo",
"city_ascii": "Huancayo",
"lat": -12.0667,
"lng": -75.2167,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Junín",
"capital": "admin",
"population": 378203.0,
"id": 1604249985
},
{
"city": "Piura",
"city_ascii": "Piura",
"lat": -5.2,
"lng": -80.6333,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Piura",
"capital": "admin",
"population": 473025.0,
"id": 1604331641
},
{
"city": "Callao",
"city_ascii": "Callao",
"lat": -12.0333,
"lng": -77.1333,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Callao",
"capital": "admin",
"population": 1129854.0,
"id": 1604422141
},
{
"city": "Iquitos",
"city_ascii": "Iquitos",
"lat": -3.75,
"lng": -73.25,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Loreto",
"capital": "admin",
"population": 377609.0,
"id": 1604493809
},
{
"city": "Trujillo",
"city_ascii": "Trujillo",
"lat": -8.112,
"lng": -79.0288,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "La Libertad",
"capital": "admin",
"population": 919899.0,
"id": 1604613706
},
{
"city": "Arequipa",
"city_ascii": "Arequipa",
"lat": -16.4,
"lng": -71.5333,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Arequipa",
"capital": "admin",
"population": 1008290.0,
"id": 1604723954
},
{
"city": "Lima",
"city_ascii": "Lima",
"lat": -12.06,
"lng": -77.0375,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Lima",
"capital": "primary",
"population": 10320000.0,
"id": 1604728603
},
{
"city": "Chiclayo",
"city_ascii": "Chiclayo",
"lat": -6.763,
"lng": -79.8366,
"country": "Peru",
"iso2": "PE",
"iso3": "PER",
"admin_name": "Lambayeque",
"capital": "admin",
"population": 552508.0,
"id": 1604799615
},
{
"city": "Marikina City",
"city_ascii": "Marikina City",
"lat": 14.65,
"lng": 121.1,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Marikina",
"capital": "admin",
"population": 456059.0,
"id": 1608000077
},
{
"city": "Iligan",
"city_ascii": "Iligan",
"lat": 8.23,
"lng": 124.25,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Iligan",
"capital": "admin",
"population": 363115.0,
"id": 1608000268
},
{
"city": "Butuan",
"city_ascii": "Butuan",
"lat": 8.9534,
"lng": 125.5288,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Butuan",
"capital": "admin",
"population": 372910.0,
"id": 1608000722
},
{
"city": "Angeles City",
"city_ascii": "Angeles City",
"lat": 15.1472,
"lng": 120.5847,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Angeles",
"capital": "admin",
"population": 462928.0,
"id": 1608036027
},
{
"city": "Biñan",
"city_ascii": "Binan",
"lat": 14.3333,
"lng": 121.0833,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Laguna",
"capital": null,
"population": 407437.0,
"id": 1608039268
},
{
"city": "Malabon",
"city_ascii": "Malabon",
"lat": 14.66,
"lng": 120.96,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Malabon",
"capital": "admin",
"population": 380522.0,
"id": 1608045841
},
{
"city": "Cebu City",
"city_ascii": "Cebu City",
"lat": 10.32,
"lng": 123.75,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cebu",
"capital": "admin",
"population": 964169.0,
"id": 1608136151
},
{
"city": "Baguio City",
"city_ascii": "Baguio City",
"lat": 16.4119,
"lng": 120.5933,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Baguio",
"capital": "admin",
"population": 366358.0,
"id": 1608164766
},
{
"city": "Mandaluyong City",
"city_ascii": "Mandaluyong City",
"lat": 14.58,
"lng": 121.03,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Mandaluyong",
"capital": "admin",
"population": 425758.0,
"id": 1608166320
},
{
"city": "General Santos",
"city_ascii": "General Santos",
"lat": 6.1167,
"lng": 125.1667,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "General Santos",
"capital": "admin",
"population": 697315.0,
"id": 1608171585
},
{
"city": "Zamboanga City",
"city_ascii": "Zamboanga City",
"lat": 6.9042,
"lng": 122.0761,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Zamboanga",
"capital": "admin",
"population": 977234.0,
"id": 1608189351
},
{
"city": "Tondo",
"city_ascii": "Tondo",
"lat": 14.617,
"lng": 120.967,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Manila",
"capital": null,
"population": 654220.0,
"id": 1608204201
},
{
"city": "Tarlac City",
"city_ascii": "Tarlac City",
"lat": 15.4869,
"lng": 120.59,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Tarlac",
"capital": "admin",
"population": 385398.0,
"id": 1608237027
},
{
"city": "Bacolod",
"city_ascii": "Bacolod",
"lat": 10.6765,
"lng": 122.9509,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Bacolod",
"capital": "admin",
"population": 600783.0,
"id": 1608244137
},
{
"city": "Pasig City",
"city_ascii": "Pasig City",
"lat": 14.575,
"lng": 121.0833,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Pasig",
"capital": "admin",
"population": 803159.0,
"id": 1608278212
},
{
"city": "Cainta",
"city_ascii": "Cainta",
"lat": 14.5667,
"lng": 121.1167,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Rizal",
"capital": null,
"population": 376933.0,
"id": 1608314665
},
{
"city": "City of Parañaque",
"city_ascii": "City of Paranaque",
"lat": 14.47,
"lng": 121.02,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Parañaque",
"capital": "admin",
"population": 689992.0,
"id": 1608379532
},
{
"city": "Batangas",
"city_ascii": "Batangas",
"lat": 13.83,
"lng": 121.0,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Batangas",
"capital": "admin",
"population": 351437.0,
"id": 1608417616
},
{
"city": "Dasmariñas",
"city_ascii": "Dasmarinas",
"lat": 14.3294,
"lng": 120.9367,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cavite",
"capital": null,
"population": 703141.0,
"id": 1608418544
},
{
"city": "Lapu-Lapu City",
"city_ascii": "Lapu-Lapu City",
"lat": 10.3127,
"lng": 123.9488,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Lapu-Lapu",
"capital": "admin",
"population": 497604.0,
"id": 1608430676
},
{
"city": "Pasay City",
"city_ascii": "Pasay City",
"lat": 14.55,
"lng": 121.0,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Pasay",
"capital": "admin",
"population": 440656.0,
"id": 1608448280
},
{
"city": "Muntinlupa City",
"city_ascii": "Muntinlupa City",
"lat": 14.38,
"lng": 121.05,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Muntinlupa",
"capital": "admin",
"population": 543445.0,
"id": 1608473406
},
{
"city": "Valenzuela",
"city_ascii": "Valenzuela",
"lat": 14.7,
"lng": 120.98,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Valenzuela",
"capital": "admin",
"population": 714978.0,
"id": 1608492120
},
{
"city": "Taytay",
"city_ascii": "Taytay",
"lat": 14.5692,
"lng": 121.1325,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Rizal",
"capital": null,
"population": 386451.0,
"id": 1608530771
},
{
"city": "Rodriguez",
"city_ascii": "Rodriguez",
"lat": 14.7167,
"lng": 121.1167,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Rizal",
"capital": null,
"population": 443954.0,
"id": 1608543530
},
{
"city": "Las Piñas City",
"city_ascii": "Las Pinas City",
"lat": 14.45,
"lng": 120.98,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Las Piñas",
"capital": null,
"population": 606293.0,
"id": 1608544537
},
{
"city": "Santa Rosa",
"city_ascii": "Santa Rosa",
"lat": 14.3167,
"lng": 121.1167,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Laguna",
"capital": null,
"population": 414812.0,
"id": 1608571683
},
{
"city": "Cabuyao",
"city_ascii": "Cabuyao",
"lat": 14.275,
"lng": 121.125,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Laguna",
"capital": null,
"population": 355330.0,
"id": 1608604441
},
{
"city": "Lipa City",
"city_ascii": "Lipa City",
"lat": 13.9411,
"lng": 121.1622,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Batangas",
"capital": null,
"population": 372931.0,
"id": 1608615113
},
{
"city": "Manila",
"city_ascii": "Manila",
"lat": 14.5958,
"lng": 120.9772,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Manila",
"capital": "primary",
"population": 24922000.0,
"id": 1608618140
},
{
"city": "Canagatan",
"city_ascii": "Canagatan",
"lat": 18.0,
"lng": 121.8,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cagayan",
"capital": null,
"population": 1273219.0,
"id": 1608697675
},
{
"city": "Makati City",
"city_ascii": "Makati City",
"lat": 14.5567,
"lng": 121.0214,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Makati",
"capital": "admin",
"population": 629616.0,
"id": 1608725647
},
{
"city": "Taguig City",
"city_ascii": "Taguig City",
"lat": 14.52,
"lng": 121.05,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Taguig",
"capital": "admin",
"population": 886722.0,
"id": 1608766695
},
{
"city": "Mandaue City",
"city_ascii": "Mandaue City",
"lat": 10.3333,
"lng": 123.9333,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Mandaue",
"capital": "admin",
"population": 364116.0,
"id": 1608794590
},
{
"city": "Imus",
"city_ascii": "Imus",
"lat": 14.4297,
"lng": 120.9367,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cavite",
"capital": null,
"population": 496794.0,
"id": 1608802508
},
{
"city": "Antipolo",
"city_ascii": "Antipolo",
"lat": 14.5842,
"lng": 121.1763,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Rizal",
"capital": "admin",
"population": 887399.0,
"id": 1608824345
},
{
"city": "General Trias",
"city_ascii": "General Trias",
"lat": 14.3833,
"lng": 120.8833,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cavite",
"capital": null,
"population": 450583.0,
"id": 1608826995
},
{
"city": "Cagayan de Oro",
"city_ascii": "Cagayan de Oro",
"lat": 8.4833,
"lng": 124.65,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cagayan de Oro",
"capital": "admin",
"population": 728402.0,
"id": 1608831546
},
{
"city": "San Jose del Monte",
"city_ascii": "San Jose del Monte",
"lat": 14.8139,
"lng": 121.0453,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Bulacan",
"capital": null,
"population": 651813.0,
"id": 1608850554
},
{
"city": "San Fernando",
"city_ascii": "San Fernando",
"lat": 15.0333,
"lng": 120.6833,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Pampanga",
"capital": "admin",
"population": 354666.0,
"id": 1608862124
},
{
"city": "Bacoor",
"city_ascii": "Bacoor",
"lat": 14.4624,
"lng": 120.9645,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Cavite",
"capital": null,
"population": 664625.0,
"id": 1608869358
},
{
"city": "Iloilo",
"city_ascii": "Iloilo",
"lat": 10.7167,
"lng": 122.5667,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Iloilo",
"capital": "admin",
"population": 457626.0,
"id": 1608875987
},
{
"city": "Caloocan City",
"city_ascii": "Caloocan City",
"lat": 14.65,
"lng": 120.97,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Caloocan",
"capital": "admin",
"population": 1661584.0,
"id": 1608897690
},
{
"city": "Davao",
"city_ascii": "Davao",
"lat": 7.0667,
"lng": 125.6,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Davao",
"capital": "admin",
"population": 1776949.0,
"id": 1608906877
},
{
"city": "Quezon City",
"city_ascii": "Quezon City",
"lat": 14.63,
"lng": 121.03,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Quezon",
"capital": "admin",
"population": 2960048.0,
"id": 1608974097
},
{
"city": "City of Calamba",
"city_ascii": "City of Calamba",
"lat": 14.2167,
"lng": 121.1667,
"country": "Philippines",
"iso2": "PH",
"iso3": "PHL",
"admin_name": "Laguna",
"capital": null,
"population": 539671.0,
"id": 1608985581
},
{
"city": "Warsaw",
"city_ascii": "Warsaw",
"lat": 52.23,
"lng": 21.0111,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Mazowieckie",
"capital": "primary",
"population": 1860281.0,
"id": 1616024847
},
{
"city": "Wrocław",
"city_ascii": "Wroclaw",
"lat": 51.11,
"lng": 17.0325,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Dolnośląskie",
"capital": "admin",
"population": 672929.0,
"id": 1616108520
},
{
"city": "Kraków",
"city_ascii": "Krakow",
"lat": 50.0614,
"lng": 19.9372,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Małopolskie",
"capital": "admin",
"population": 800653.0,
"id": 1616172264
},
{
"city": "Szczecin",
"city_ascii": "Szczecin",
"lat": 53.4325,
"lng": 14.5481,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Zachodniopomorskie",
"capital": "admin",
"population": 403833.0,
"id": 1616256546
},
{
"city": "Gdańsk",
"city_ascii": "Gdansk",
"lat": 54.3475,
"lng": 18.6453,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Pomorskie",
"capital": "admin",
"population": 486022.0,
"id": 1616406372
},
{
"city": "Bydgoszcz",
"city_ascii": "Bydgoszcz",
"lat": 53.1219,
"lng": 18.0003,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Kujawsko-Pomorskie",
"capital": "admin",
"population": 346739.0,
"id": 1616454014
},
{
"city": "Poznań",
"city_ascii": "Poznan",
"lat": 52.4083,
"lng": 16.9336,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Wielkopolskie",
"capital": "admin",
"population": 546859.0,
"id": 1616725607
},
{
"city": "Łódź",
"city_ascii": "Lodz",
"lat": 51.7769,
"lng": 19.4547,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Łódzkie",
"capital": "admin",
"population": 690422.0,
"id": 1616832750
},
{
"city": "Lublin",
"city_ascii": "Lublin",
"lat": 51.25,
"lng": 22.5667,
"country": "Poland",
"iso2": "PL",
"iso3": "POL",
"admin_name": "Lubelskie",
"capital": "admin",
"population": 339850.0,
"id": 1616953501
},
{
"city": "Porto",
"city_ascii": "Porto",
"lat": 41.1621,
"lng": -8.622,
"country": "Portugal",
"iso2": "PT",
"iso3": "PRT",
"admin_name": "Porto",
"capital": "admin",
"population": 1278210.0,
"id": 1620356810
},
{
"city": "Aves",
"city_ascii": "Aves",
"lat": 41.44,
"lng": -8.3,
"country": "Portugal",
"iso2": "PT",
"iso3": "PRT",
"admin_name": "Porto",
"capital": null,
"population": 425411.0,
"id": 1620507201
},
{
"city": "Lisbon",
"city_ascii": "Lisbon",
"lat": 38.7253,
"lng": -9.15,
"country": "Portugal",
"iso2": "PT",
"iso3": "PRT",
"admin_name": "Lisboa",
"capital": "primary",
"population": 2719000.0,
"id": 1620619017
},
{
"city": "Sintra",
"city_ascii": "Sintra",
"lat": 38.7992,
"lng": -9.3883,
"country": "Portugal",
"iso2": "PT",
"iso3": "PRT",
"admin_name": "Lisboa",
"capital": "minor",
"population": 377835.0,
"id": 1620848791
},
{
"city": "Bissau",
"city_ascii": "Bissau",
"lat": 11.85,
"lng": -15.5667,
"country": "Guinea-Bissau",
"iso2": "GW",
"iso3": "GNB",
"admin_name": "Bissau",
"capital": "primary",
"population": 492004.0,
"id": 1624168850
},
{
"city": "San Juan",
"city_ascii": "San Juan",
"lat": 18.3985,
"lng": -66.061,
"country": "Puerto Rico",
"iso2": "PR",
"iso3": "PRI",
"admin_name": "Puerto Rico",
"capital": "primary",
"population": 1915105.0,
"id": 1630035577
},
{
"city": "Ar Rayyān",
"city_ascii": "Ar Rayyan",
"lat": 25.25,
"lng": 51.4,
"country": "Qatar",
"iso2": "QA",
"iso3": "QAT",
"admin_name": "Ar Rayyān",
"capital": "admin",
"population": 605712.0,
"id": 1634097551
},
{
"city": "Doha",
"city_ascii": "Doha",
"lat": 25.2867,
"lng": 51.5333,
"country": "Qatar",
"iso2": "QA",
"iso3": "QAT",
"admin_name": "Ad Dawḩah",
"capital": "primary",
"population": 1186023.0,
"id": 1634459660
},
{
"city": "Bucharest",
"city_ascii": "Bucharest",
"lat": 44.4325,
"lng": 26.1039,
"country": "Romania",
"iso2": "RO",
"iso3": "ROU",
"admin_name": "Bucureşti",
"capital": "primary",
"population": 1883425.0,
"id": 1642414442
},
{
"city": "Surgut",
"city_ascii": "Surgut",
"lat": 61.25,
"lng": 73.4333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Khanty-Mansiyskiy Avtonomnyy Okrug-Yugra",
"capital": null,
"population": 395900.0,
"id": 1643007475
},
{
"city": "Naberezhnyye Chelny",
"city_ascii": "Naberezhnyye Chelny",
"lat": 55.7,
"lng": 52.3333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tatarstan",
"capital": null,
"population": 533839.0,
"id": 1643008493
},
{
"city": "Sochi",
"city_ascii": "Sochi",
"lat": 43.5853,
"lng": 39.7203,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Krasnodarskiy Kray",
"capital": null,
"population": 411524.0,
"id": 1643009782
},
{
"city": "Kursk",
"city_ascii": "Kursk",
"lat": 51.7167,
"lng": 36.1833,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kurskaya Oblast’",
"capital": "admin",
"population": 450977.0,
"id": 1643011077
},
{
"city": "Nizhniy Novgorod",
"city_ascii": "Nizhniy Novgorod",
"lat": 56.3269,
"lng": 44.0075,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Nizhegorodskaya Oblast’",
"capital": "admin",
"population": 1264075.0,
"id": 1643012126
},
{
"city": "Rostov",
"city_ascii": "Rostov",
"lat": 47.2333,
"lng": 39.7,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Rostovskaya Oblast’",
"capital": "admin",
"population": 1137704.0,
"id": 1643013518
},
{
"city": "Chita",
"city_ascii": "Chita",
"lat": 52.0333,
"lng": 113.5,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Zabaykal’skiy Kray",
"capital": "admin",
"population": 347088.0,
"id": 1643036673
},
{
"city": "Tyumen",
"city_ascii": "Tyumen",
"lat": 57.15,
"lng": 65.5333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tyumenskaya Oblast’",
"capital": "admin",
"population": 744554.0,
"id": 1643040435
},
{
"city": "Kazan",
"city_ascii": "Kazan",
"lat": 55.7964,
"lng": 49.1089,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tatarstan",
"capital": "admin",
"population": 1243500.0,
"id": 1643101260
},
{
"city": "Kirov",
"city_ascii": "Kirov",
"lat": 58.6,
"lng": 49.65,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kirovskaya Oblast’",
"capital": "admin",
"population": 501468.0,
"id": 1643106064
},
{
"city": "Kaluga",
"city_ascii": "Kaluga",
"lat": 54.5333,
"lng": 36.2667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kaluzhskaya Oblast’",
"capital": "admin",
"population": 341892.0,
"id": 1643161747
},
{
"city": "Cheboksary",
"city_ascii": "Cheboksary",
"lat": 56.1333,
"lng": 47.25,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Chuvashiya",
"capital": "admin",
"population": 489498.0,
"id": 1643163382
},
{
"city": "Khabarovsk",
"city_ascii": "Khabarovsk",
"lat": 48.4833,
"lng": 135.0667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Khabarovskiy Kray",
"capital": "admin",
"population": 616242.0,
"id": 1643175363
},
{
"city": "Kaliningrad",
"city_ascii": "Kaliningrad",
"lat": 54.7003,
"lng": 20.4531,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kaliningradskaya Oblast’",
"capital": "admin",
"population": 475056.0,
"id": 1643178106
},
{
"city": "Samara",
"city_ascii": "Samara",
"lat": 53.2028,
"lng": 50.1408,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Samarskaya Oblast’",
"capital": "admin",
"population": 1169719.0,
"id": 1643205757
},
{
"city": "Ryazan",
"city_ascii": "Ryazan",
"lat": 54.63,
"lng": 39.7425,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Ryazanskaya Oblast’",
"capital": "admin",
"population": 537622.0,
"id": 1643205787
},
{
"city": "Bryansk",
"city_ascii": "Bryansk",
"lat": 53.25,
"lng": 34.3667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Bryanskaya Oblast’",
"capital": "admin",
"population": 406553.0,
"id": 1643208827
},
{
"city": "Kemerovo",
"city_ascii": "Kemerovo",
"lat": 55.3667,
"lng": 86.0667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kemerovskaya Oblast’",
"capital": "admin",
"population": 558973.0,
"id": 1643216311
},
{
"city": "Chelyabinsk",
"city_ascii": "Chelyabinsk",
"lat": 55.15,
"lng": 61.4,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Chelyabinskaya Oblast’",
"capital": "admin",
"population": 1202371.0,
"id": 1643224011
},
{
"city": "Tula",
"city_ascii": "Tula",
"lat": 54.2,
"lng": 37.6167,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tul’skaya Oblast’",
"capital": "admin",
"population": 485221.0,
"id": 1643255206
},
{
"city": "Tolyatti",
"city_ascii": "Tolyatti",
"lat": 53.5089,
"lng": 49.4222,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Samarskaya Oblast’",
"capital": null,
"population": 693072.0,
"id": 1643256295
},
{
"city": "Tomsk",
"city_ascii": "Tomsk",
"lat": 56.4886,
"lng": 84.9522,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tomskaya Oblast’",
"capital": "admin",
"population": 572740.0,
"id": 1643258928
},
{
"city": "Perm",
"city_ascii": "Perm",
"lat": 58.0139,
"lng": 56.2489,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Permskiy Kray",
"capital": "admin",
"population": 1048005.0,
"id": 1643294442
},
{
"city": "Ivanovo",
"city_ascii": "Ivanovo",
"lat": 57.0,
"lng": 41.0,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Ivanovskaya Oblast’",
"capital": "admin",
"population": 406933.0,
"id": 1643297945
},
{
"city": "Moscow",
"city_ascii": "Moscow",
"lat": 55.7558,
"lng": 37.6178,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Moskva",
"capital": "primary",
"population": 17332000.0,
"id": 1643318494
},
{
"city": "Barnaul",
"city_ascii": "Barnaul",
"lat": 53.3333,
"lng": 83.75,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Altayskiy Kray",
"capital": "admin",
"population": 633301.0,
"id": 1643318931
},
{
"city": "Yaroslavl",
"city_ascii": "Yaroslavl",
"lat": 57.6167,
"lng": 39.85,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Yaroslavskaya Oblast’",
"capital": "admin",
"population": 608079.0,
"id": 1643338528
},
{
"city": "Omsk",
"city_ascii": "Omsk",
"lat": 54.9667,
"lng": 73.3833,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Omskaya Oblast’",
"capital": "admin",
"population": 1178391.0,
"id": 1643360863
},
{
"city": "Novosibirsk",
"city_ascii": "Novosibirsk",
"lat": 55.0333,
"lng": 82.9167,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Novosibirskaya Oblast’",
"capital": "admin",
"population": 1625631.0,
"id": 1643399240
},
{
"city": "Belgorod",
"city_ascii": "Belgorod",
"lat": 50.6,
"lng": 36.6,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Belgorodskaya Oblast’",
"capital": "admin",
"population": 391702.0,
"id": 1643407900
},
{
"city": "Astrakhan",
"city_ascii": "Astrakhan",
"lat": 46.35,
"lng": 48.035,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Astrakhanskaya Oblast’",
"capital": "admin",
"population": 532504.0,
"id": 1643407929
},
{
"city": "Krasnodar",
"city_ascii": "Krasnodar",
"lat": 45.0333,
"lng": 38.9667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Krasnodarskiy Kray",
"capital": "admin",
"population": 948827.0,
"id": 1643438227
},
{
"city": "Irkutsk",
"city_ascii": "Irkutsk",
"lat": 52.2833,
"lng": 104.2833,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Irkutskaya Oblast’",
"capital": "admin",
"population": 623736.0,
"id": 1643439037
},
{
"city": "Tver",
"city_ascii": "Tver",
"lat": 56.8578,
"lng": 35.9219,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Tverskaya Oblast’",
"capital": "admin",
"population": 424969.0,
"id": 1643456559
},
{
"city": "Penza",
"city_ascii": "Penza",
"lat": 53.2,
"lng": 45.0,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Penzenskaya Oblast’",
"capital": "admin",
"population": 523726.0,
"id": 1643492830
},
{
"city": "Krasnoyarsk",
"city_ascii": "Krasnoyarsk",
"lat": 56.0089,
"lng": 92.8719,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Krasnoyarskiy Kray",
"capital": "admin",
"population": 1083865.0,
"id": 1643544975
},
{
"city": "Saratov",
"city_ascii": "Saratov",
"lat": 51.5333,
"lng": 46.0167,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Saratovskaya Oblast’",
"capital": "admin",
"population": 845300.0,
"id": 1643556540
},
{
"city": "Volgograd",
"city_ascii": "Volgograd",
"lat": 48.7086,
"lng": 44.5147,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Volgogradskaya Oblast’",
"capital": "admin",
"population": 1015586.0,
"id": 1643577201
},
{
"city": "Makhachkala",
"city_ascii": "Makhachkala",
"lat": 42.9833,
"lng": 47.4833,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Dagestan",
"capital": "admin",
"population": 592976.0,
"id": 1643580480
},
{
"city": "Yekaterinburg",
"city_ascii": "Yekaterinburg",
"lat": 56.8356,
"lng": 60.6128,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Sverdlovskaya Oblast’",
"capital": "admin",
"population": 1468833.0,
"id": 1643582706
},
{
"city": "Saint Petersburg",
"city_ascii": "Saint Petersburg",
"lat": 59.95,
"lng": 30.3167,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Sankt-Peterburg",
"capital": "admin",
"population": 5384342.0,
"id": 1643616350
},
{
"city": "Novokuznetsk",
"city_ascii": "Novokuznetsk",
"lat": 53.7667,
"lng": 87.1333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Kemerovskaya Oblast’",
"capital": null,
"population": 552105.0,
"id": 1643628717
},
{
"city": "Ulyanovsk",
"city_ascii": "Ulyanovsk",
"lat": 54.3167,
"lng": 48.3667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Ul’yanovskaya Oblast’",
"capital": "admin",
"population": 624518.0,
"id": 1643668944
},
{
"city": "Orenburg",
"city_ascii": "Orenburg",
"lat": 51.7667,
"lng": 55.1,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Orenburgskaya Oblast’",
"capital": "admin",
"population": 564773.0,
"id": 1643685056
},
{
"city": "Vladimir",
"city_ascii": "Vladimir",
"lat": 56.1286,
"lng": 40.4058,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Vladimirskaya Oblast’",
"capital": "admin",
"population": 356168.0,
"id": 1643712167
},
{
"city": "Ufa",
"city_ascii": "Ufa",
"lat": 54.7261,
"lng": 55.9475,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Bashkortostan",
"capital": "admin",
"population": 1115560.0,
"id": 1643722928
},
{
"city": "Lipetsk",
"city_ascii": "Lipetsk",
"lat": 52.6167,
"lng": 39.6,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Lipetskaya Oblast’",
"capital": "admin",
"population": 510439.0,
"id": 1643772906
},
{
"city": "Ulan-Ude",
"city_ascii": "Ulan-Ude",
"lat": 51.8272,
"lng": 107.6064,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Buryatiya",
"capital": "admin",
"population": 439128.0,
"id": 1643774900
},
{
"city": "Arkhangelsk",
"city_ascii": "Arkhangelsk",
"lat": 64.55,
"lng": 40.5333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Arkhangel’skaya Oblast’",
"capital": "admin",
"population": 351488.0,
"id": 1643797198
},
{
"city": "Voronezh",
"city_ascii": "Voronezh",
"lat": 51.6717,
"lng": 39.2106,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Voronezhskaya Oblast’",
"capital": "admin",
"population": 1050602.0,
"id": 1643811064
},
{
"city": "Vladivostok",
"city_ascii": "Vladivostok",
"lat": 43.1333,
"lng": 131.9,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Primorskiy Kray",
"capital": "admin",
"population": 606589.0,
"id": 1643832017
},
{
"city": "Stavropol",
"city_ascii": "Stavropol",
"lat": 45.05,
"lng": 41.9833,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Stavropol’skiy Kray",
"capital": "admin",
"population": 450680.0,
"id": 1643947228
},
{
"city": "Izhevsk",
"city_ascii": "Izhevsk",
"lat": 56.85,
"lng": 53.2167,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Udmurtiya",
"capital": "admin",
"population": 646277.0,
"id": 1643983138
},
{
"city": "Magnitogorsk",
"city_ascii": "Magnitogorsk",
"lat": 53.3833,
"lng": 59.0333,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Chelyabinskaya Oblast’",
"capital": null,
"population": 418241.0,
"id": 1643987830
},
{
"city": "Balashikha",
"city_ascii": "Balashikha",
"lat": 55.8167,
"lng": 37.9667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Moskovskaya Oblast’",
"capital": null,
"population": 468221.0,
"id": 1643989845
},
{
"city": "Nizhniy Tagil",
"city_ascii": "Nizhniy Tagil",
"lat": 57.9167,
"lng": 59.9667,
"country": "Russia",
"iso2": "RU",
"iso3": "RUS",
"admin_name": "Sverdlovskaya Oblast’",
"capital": null,
"population": 355693.0,
"id": 1643992310
},
{
"city": "Kigali",
"city_ascii": "Kigali",
"lat": -1.9536,
"lng": 30.0606,
"country": "Rwanda",
"iso2": "RW",
"iso3": "RWA",
"admin_name": "Kigali",
"capital": "primary",
"population": 1156663.0,
"id": 1646923541
},
{
"city": "Al Qaţīf",
"city_ascii": "Al Qatif",
"lat": 26.556,
"lng": 49.996,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ash Sharqīyah",
"capital": null,
"population": 524182.0,
"id": 1682001245
},
{
"city": "Mecca",
"city_ascii": "Mecca",
"lat": 21.4225,
"lng": 39.8233,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Makkah al Mukarramah",
"capital": "admin",
"population": 1675368.0,
"id": 1682169241
},
{
"city": "Ḩā’il",
"city_ascii": "Ha'il",
"lat": 27.5167,
"lng": 41.6833,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ḩā’il",
"capital": "admin",
"population": 385257.0,
"id": 1682249750
},
{
"city": "Medina",
"city_ascii": "Medina",
"lat": 24.47,
"lng": 39.61,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Al Madīnah al Munawwarah",
"capital": "admin",
"population": 1180770.0,
"id": 1682345785
},
{
"city": "Ḩafr al Bāţin",
"city_ascii": "Hafr al Batin",
"lat": 28.4342,
"lng": 45.9636,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ash Sharqīyah",
"capital": null,
"population": 600000.0,
"id": 1682394909
},
{
"city": "Ad Dammām",
"city_ascii": "Ad Dammam",
"lat": 26.4333,
"lng": 50.1,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ash Sharqīyah",
"capital": "admin",
"population": 903312.0,
"id": 1682452296
},
{
"city": "Buraydah",
"city_ascii": "Buraydah",
"lat": 26.3333,
"lng": 43.9667,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Al Qaşīm",
"capital": "admin",
"population": 467410.0,
"id": 1682470726
},
{
"city": "Al Ḩillah",
"city_ascii": "Al Hillah",
"lat": 23.4895,
"lng": 46.7564,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ar Riyāḑ",
"capital": null,
"population": 594605.0,
"id": 1682494753
},
{
"city": "Al Jubayl",
"city_ascii": "Al Jubayl",
"lat": 27.0,
"lng": 49.6544,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ash Sharqīyah",
"capital": null,
"population": 392948.0,
"id": 1682564079
},
{
"city": "Tabūk",
"city_ascii": "Tabuk",
"lat": 28.3972,
"lng": 36.5789,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Tabūk",
"capital": "admin",
"population": 547957.0,
"id": 1682590992
},
{
"city": "Jeddah",
"city_ascii": "Jeddah",
"lat": 21.5433,
"lng": 39.1728,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Makkah al Mukarramah",
"capital": null,
"population": 3976000.0,
"id": 1682926944
},
{
"city": "Al Kharj",
"city_ascii": "Al Kharj",
"lat": 24.1483,
"lng": 47.305,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ar Riyāḑ",
"capital": null,
"population": 376325.0,
"id": 1682947408
},
{
"city": "Aţ Ţā’if",
"city_ascii": "At Ta'if",
"lat": 21.2751,
"lng": 40.4062,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Makkah al Mukarramah",
"capital": null,
"population": 579970.0,
"id": 1682956102
},
{
"city": "Al Hufūf",
"city_ascii": "Al Hufuf",
"lat": 25.3833,
"lng": 49.5833,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ash Sharqīyah",
"capital": null,
"population": 660788.0,
"id": 1682958157
},
{
"city": "Riyadh",
"city_ascii": "Riyadh",
"lat": 24.6333,
"lng": 46.7167,
"country": "Saudi Arabia",
"iso2": "SA",
"iso3": "SAU",
"admin_name": "Ar Riyāḑ",
"capital": "primary",
"population": 7237000.0,
"id": 1682999334
},
{
"city": "Pikine",
"city_ascii": "Pikine",
"lat": 14.75,
"lng": -17.4,
"country": "Senegal",
"iso2": "SN",
"iso3": "SEN",
"admin_name": "Dakar",
"capital": null,
"population": 1170791.0,
"id": 1686165071
},
{
"city": "Thiès",
"city_ascii": "Thies",
"lat": 14.7833,
"lng": -16.9167,
"country": "Senegal",
"iso2": "SN",
"iso3": "SEN",
"admin_name": "Thiès",
"capital": "admin",
"population": 394544.0,
"id": 1686527948
},
{
"city": "Dakar",
"city_ascii": "Dakar",
"lat": 14.6928,
"lng": -17.4467,
"country": "Senegal",
"iso2": "SN",
"iso3": "SEN",
"admin_name": "Dakar",
"capital": "primary",
"population": 1438725.0,
"id": 1686604760
},
{
"city": "Touba",
"city_ascii": "Touba",
"lat": 14.8667,
"lng": -15.8833,
"country": "Senegal",
"iso2": "SN",
"iso3": "SEN",
"admin_name": "Diourbel",
"capital": null,
"population": 529176.0,
"id": 1686956738
},
{
"city": "Novi Sad",
"city_ascii": "Novi Sad",
"lat": 45.2542,
"lng": 19.8425,
"country": "Serbia",
"iso2": "RS",
"iso3": "SRB",
"admin_name": "Novi Sad",
"capital": "admin",
"population": 380000.0,
"id": 1688169087
},
{
"city": "Belgrade",
"city_ascii": "Belgrade",
"lat": 44.82,
"lng": 20.46,
"country": "Serbia",
"iso2": "RS",
"iso3": "SRB",
"admin_name": "Beograd",
"capital": "primary",
"population": 1378682.0,
"id": 1688374696
},
{
"city": "Freetown",
"city_ascii": "Freetown",
"lat": 8.4844,
"lng": -13.2344,
"country": "Sierra Leone",
"iso2": "SL",
"iso3": "SLE",
"admin_name": "Western Area",
"capital": "primary",
"population": 951000.0,
"id": 1694085071
},
{
"city": "Singapore",
"city_ascii": "Singapore",
"lat": 1.3,
"lng": 103.8,
"country": "Singapore",
"iso2": "SG",
"iso3": "SGP",
"admin_name": null,
"capital": "primary",
"population": 5983000.0,
"id": 1702341327
},
{
"city": "Bratislava",
"city_ascii": "Bratislava",
"lat": 48.1439,
"lng": 17.1097,
"country": "Slovakia",
"iso2": "SK",
"iso3": "SVK",
"admin_name": "Bratislava",
"capital": "primary",
"population": 475503.0,
"id": 1703195001
},
{
"city": "Haiphong",
"city_ascii": "Haiphong",
"lat": 20.8651,
"lng": 106.6838,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hải Phòng",
"capital": "admin",
"population": 2103500.0,
"id": 1704000623
},
{
"city": "Huế",
"city_ascii": "Hue",
"lat": 16.4667,
"lng": 107.5792,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Thừa Thiên-Huế",
"capital": "admin",
"population": 652572.0,
"id": 1704016023
},
{
"city": "Thanh Hóa",
"city_ascii": "Thanh Hoa",
"lat": 19.8075,
"lng": 105.7764,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Thanh Hóa",
"capital": "admin",
"population": 393294.0,
"id": 1704016079
},
{
"city": "Bắc Ninh",
"city_ascii": "Bac Ninh",
"lat": 21.1833,
"lng": 106.05,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Bắc Ninh",
"capital": "admin",
"population": 520000.0,
"id": 1704025181
},
{
"city": "Thủ Đức",
"city_ascii": "Thu Duc",
"lat": 10.8266,
"lng": 106.7609,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hồ Chí Minh",
"capital": "minor",
"population": 1013795.0,
"id": 1704361621
},
{
"city": "Hanoi",
"city_ascii": "Hanoi",
"lat": 21.0283,
"lng": 105.8542,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hà Nội",
"capital": "primary",
"population": 8246600.0,
"id": 1704413791
},
{
"city": "Nha Trang",
"city_ascii": "Nha Trang",
"lat": 12.245,
"lng": 109.1917,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Khánh Hòa",
"capital": "admin",
"population": 392279.0,
"id": 1704497901
},
{
"city": "Buôn Ma Thuột",
"city_ascii": "Buon Ma Thuot",
"lat": 12.6667,
"lng": 108.05,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Đắk Lắk",
"capital": "admin",
"population": 340000.0,
"id": 1704542086
},
{
"city": "Vũng Tàu",
"city_ascii": "Vung Tau",
"lat": 10.3833,
"lng": 107.1167,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Bà Rịa-Vũng Tàu",
"capital": "admin",
"population": 341552.0,
"id": 1704581438
},
{
"city": "Tân An",
"city_ascii": "Tan An",
"lat": 10.905,
"lng": 106.6994,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hồ Chí Minh",
"capital": null,
"population": 618984.0,
"id": 1704599287
},
{
"city": "Ho Chi Minh City",
"city_ascii": "Ho Chi Minh City",
"lat": 10.7756,
"lng": 106.7019,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hồ Chí Minh",
"capital": "admin",
"population": 15136000.0,
"id": 1704774326
},
{
"city": "Cần Thơ",
"city_ascii": "Can Tho",
"lat": 10.0333,
"lng": 105.7833,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Cần Thơ",
"capital": "admin",
"population": 1237300.0,
"id": 1704783472
},
{
"city": "Biên Hòa",
"city_ascii": "Bien Hoa",
"lat": 10.95,
"lng": 106.8167,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Đồng Nai",
"capital": "admin",
"population": 1104000.0,
"id": 1704863046
},
{
"city": "Thủ Dầu Một",
"city_ascii": "Thu Dau Mot",
"lat": 10.9667,
"lng": 106.65,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Bình Dương",
"capital": "admin",
"population": 417000.0,
"id": 1704890399
},
{
"city": "Nam Định",
"city_ascii": "Nam Dinh",
"lat": 20.42,
"lng": 106.1683,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Nam Định",
"capital": "admin",
"population": 352108.0,
"id": 1704906277
},
{
"city": "Hải Dương",
"city_ascii": "Hai Duong",
"lat": 20.9397,
"lng": 106.3306,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Hải Dương",
"capital": "admin",
"population": 507469.0,
"id": 1704909566
},
{
"city": "Vinh",
"city_ascii": "Vinh",
"lat": 18.6667,
"lng": 105.6667,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Nghệ An",
"capital": "admin",
"population": 490000.0,
"id": 1704960059
},
{
"city": "Quảng Hà",
"city_ascii": "Quang Ha",
"lat": 15.9333,
"lng": 108.2667,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Quảng Nam",
"capital": null,
"population": 1000000.0,
"id": 1704966442
},
{
"city": "Tân Uyên",
"city_ascii": "Tan Uyen",
"lat": 11.0508,
"lng": 106.7636,
"country": "Vietnam",
"iso2": "VN",
"iso3": "VNM",
"admin_name": "Bình Dương",
"capital": "minor",
"population": 466053.0,
"id": 1704985934
},
{
"city": "Boosaaso",
"city_ascii": "Boosaaso",
"lat": 11.2886,
"lng": 49.1819,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Bari",
"capital": "admin",
"population": 2000000.0,
"id": 1706054548
},
{
"city": "Gaalkacyo",
"city_ascii": "Gaalkacyo",
"lat": 6.7697,
"lng": 47.4308,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Mudug",
"capital": "admin",
"population": 950000.0,
"id": 1706067930
},
{
"city": "Kismaayo",
"city_ascii": "Kismaayo",
"lat": -0.3581,
"lng": 42.5453,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Jubbada Hoose",
"capital": "admin",
"population": 358000.0,
"id": 1706091701
},
{
"city": "Marka",
"city_ascii": "Marka",
"lat": 1.6833,
"lng": 44.75,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Shabeellaha Hoose",
"capital": "admin",
"population": 499000.0,
"id": 1706165964
},
{
"city": "Buurhakaba",
"city_ascii": "Buurhakaba",
"lat": 2.7833,
"lng": 44.0833,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Bay",
"capital": "minor",
"population": 360795.0,
"id": 1706176225
},
{
"city": "Burco",
"city_ascii": "Burco",
"lat": 9.5279,
"lng": 45.5345,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Togdheer",
"capital": "admin",
"population": 750211.0,
"id": 1706322754
},
{
"city": "Qardho",
"city_ascii": "Qardho",
"lat": 9.5,
"lng": 49.0833,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Bari",
"capital": null,
"population": 365000.0,
"id": 1706405003
},
{
"city": "Cadaado",
"city_ascii": "Cadaado",
"lat": 6.1403,
"lng": 46.6256,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Galguduud",
"capital": null,
"population": 534023.0,
"id": 1706406560
},
{
"city": "Garoowe",
"city_ascii": "Garoowe",
"lat": 8.4,
"lng": 48.4667,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Nugaal",
"capital": "admin",
"population": 385000.0,
"id": 1706512367
},
{
"city": "Baidoa",
"city_ascii": "Baidoa",
"lat": 3.1167,
"lng": 43.65,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Bay",
"capital": "admin",
"population": 950000.0,
"id": 1706563100
},
{
"city": "Baardheere",
"city_ascii": "Baardheere",
"lat": 2.3333,
"lng": 42.2833,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Gedo",
"capital": null,
"population": 755500.0,
"id": 1706822684
},
{
"city": "Hargeysa",
"city_ascii": "Hargeysa",
"lat": 9.5631,
"lng": 44.0675,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Woqooyi Galbeed",
"capital": "admin",
"population": 1200000.0,
"id": 1706832021
},
{
"city": "Berbera",
"city_ascii": "Berbera",
"lat": 10.4356,
"lng": 45.0164,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Woqooyi Galbeed",
"capital": null,
"population": 478000.0,
"id": 1706893125
},
{
"city": "Mogadishu",
"city_ascii": "Mogadishu",
"lat": 2.0392,
"lng": 45.3419,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Banaadir",
"capital": "primary",
"population": 4249083.0,
"id": 1706893395
},
{
"city": "Ceel Baraf",
"city_ascii": "Ceel Baraf",
"lat": 3.2073,
"lng": 45.7587,
"country": "Somalia",
"iso2": "SO",
"iso3": "SOM",
"admin_name": "Shabeellaha Dhexe",
"capital": null,
"population": 384630.0,
"id": 1706959191
},
{
"city": "Newcastle",
"city_ascii": "Newcastle",
"lat": -27.7464,
"lng": 29.9328,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "KwaZulu-Natal",
"capital": null,
"population": 363236.0,
"id": 1710031016
},
{
"city": "Durban",
"city_ascii": "Durban",
"lat": -29.8833,
"lng": 31.05,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "KwaZulu-Natal",
"capital": null,
"population": 595061.0,
"id": 1710149138
},
{
"city": "Pretoria",
"city_ascii": "Pretoria",
"lat": -25.7461,
"lng": 28.1881,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Gauteng",
"capital": "primary",
"population": 741651.0,
"id": 1710176249
},
{
"city": "Vereeniging",
"city_ascii": "Vereeniging",
"lat": -26.6736,
"lng": 27.9319,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Gauteng",
"capital": null,
"population": 1074000.0,
"id": 1710271883
},
{
"city": "Kimberley",
"city_ascii": "Kimberley",
"lat": -28.7383,
"lng": 24.7639,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Northern Cape",
"capital": "admin",
"population": 500757.0,
"id": 1710282622
},
{
"city": "Rustenburg",
"city_ascii": "Rustenburg",
"lat": -25.6667,
"lng": 27.2428,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "North West",
"capital": null,
"population": 549575.0,
"id": 1710326039
},
{
"city": "Welkom",
"city_ascii": "Welkom",
"lat": -27.9831,
"lng": 26.7208,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Free State",
"capital": null,
"population": 431944.0,
"id": 1710480365
},
{
"city": "Johannesburg",
"city_ascii": "Johannesburg",
"lat": -26.2044,
"lng": 28.0456,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Gauteng",
"capital": "admin",
"population": 8000000.0,
"id": 1710550792
},
{
"city": "Soweto",
"city_ascii": "Soweto",
"lat": -26.2678,
"lng": 27.8585,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Gauteng",
"capital": null,
"population": 1271628.0,
"id": 1710627007
},
{
"city": "Cape Town",
"city_ascii": "Cape Town",
"lat": -33.9253,
"lng": 18.4239,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Western Cape",
"capital": "primary",
"population": 433688.0,
"id": 1710680650
},
{
"city": "Pietermaritzburg",
"city_ascii": "Pietermaritzburg",
"lat": -29.6167,
"lng": 30.3833,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "KwaZulu-Natal",
"capital": "admin",
"population": 750845.0,
"id": 1710690280
},
{
"city": "Khayelitsha",
"city_ascii": "Khayelitsha",
"lat": -34.0403,
"lng": 18.6778,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Western Cape",
"capital": null,
"population": 391749.0,
"id": 1710736316
},
{
"city": "Katlehong",
"city_ascii": "Katlehong",
"lat": -26.3333,
"lng": 28.15,
"country": "South Africa",
"iso2": "ZA",
"iso3": "ZAF",
"admin_name": "Gauteng",
"capital": null,
"population": 467890.0,
"id": 1710975690
},
{
"city": "Bulawayo",
"city_ascii": "Bulawayo",
"lat": -20.17,
"lng": 28.58,
"country": "Zimbabwe",
"iso2": "ZW",
"iso3": "ZWE",
"admin_name": "Bulawayo",
"capital": "admin",
"population": 653337.0,
"id": 1716032632
},
{
"city": "Harare",
"city_ascii": "Harare",
"lat": -17.8292,
"lng": 31.0522,
"country": "Zimbabwe",
"iso2": "ZW",
"iso3": "ZWE",
"admin_name": "Harare",
"capital": "primary",
"population": 2150000.0,
"id": 1716196799
},
{
"city": "Chitungwiza",
"city_ascii": "Chitungwiza",
"lat": -17.9939,
"lng": 31.0481,
"country": "Zimbabwe",
"iso2": "ZW",
"iso3": "ZWE",
"admin_name": "Harare",
"capital": null,
"population": 371244.0,
"id": 1716688236
},
{
"city": "Murcia",
"city_ascii": "Murcia",
"lat": 37.9861,
"lng": -1.1303,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Murcia",
"capital": "admin",
"population": 672773.0,
"id": 1724107739
},
{
"city": "Bilbao",
"city_ascii": "Bilbao",
"lat": 43.2569,
"lng": -2.9236,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Basque Country",
"capital": "minor",
"population": 775000.0,
"id": 1724331267
},
{
"city": "Málaga",
"city_ascii": "Malaga",
"lat": 36.7194,
"lng": -4.42,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Andalusia",
"capital": "minor",
"population": 967250.0,
"id": 1724397372
},
{
"city": "Las Palmas",
"city_ascii": "Las Palmas",
"lat": 28.1272,
"lng": -15.4314,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Canary Islands",
"capital": "admin",
"population": 378797.0,
"id": 1724501748
},
{
"city": "Barcelona",
"city_ascii": "Barcelona",
"lat": 41.3825,
"lng": 2.1769,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Catalonia",
"capital": "admin",
"population": 4800000.0,
"id": 1724594040
},
{
"city": "Madrid",
"city_ascii": "Madrid",
"lat": 40.4169,
"lng": -3.7033,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Madrid",
"capital": "primary",
"population": 6211000.0,
"id": 1724616994
},
{
"city": "Palma",
"city_ascii": "Palma",
"lat": 39.5667,
"lng": 2.65,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Balearic Islands",
"capital": "admin",
"population": 550000.0,
"id": 1724728111
},
{
"city": "Zaragoza",
"city_ascii": "Zaragoza",
"lat": 41.65,
"lng": -0.8833,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Aragon",
"capital": "admin",
"population": 675301.0,
"id": 1724907391
},
{
"city": "Valencia",
"city_ascii": "Valencia",
"lat": 39.47,
"lng": -0.3764,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Valencia",
"capital": "admin",
"population": 792492.0,
"id": 1724981666
},
{
"city": "Sevilla",
"city_ascii": "Sevilla",
"lat": 37.24,
"lng": -5.99,
"country": "Spain",
"iso2": "ES",
"iso3": "ESP",
"admin_name": "Andalusia",
"capital": "admin",
"population": 1100000.0,
"id": 1724991838
},
{
"city": "Juba",
"city_ascii": "Juba",
"lat": 4.85,
"lng": 31.6,
"country": "South Sudan",
"iso2": "SS",
"iso3": "SSD",
"admin_name": "Central Equatoria",
"capital": "primary",
"population": 525953.0,
"id": 1728444337
},
{
"city": "Kassala",
"city_ascii": "Kassala",
"lat": 15.45,
"lng": 36.4,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Kassala",
"capital": "admin",
"population": 536009.0,
"id": 1729157224
},
{
"city": "Gedaref",
"city_ascii": "Gedaref",
"lat": 14.0333,
"lng": 35.3833,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Gedaref",
"capital": "admin",
"population": 354927.0,
"id": 1729215057
},
{
"city": "El Obeid",
"city_ascii": "El Obeid",
"lat": 13.1833,
"lng": 30.2167,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "North Kordofan",
"capital": "admin",
"population": 418280.0,
"id": 1729215531
},
{
"city": "Kūstī",
"city_ascii": "Kusti",
"lat": 13.1667,
"lng": 32.6667,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "White Nile",
"capital": null,
"population": 345068.0,
"id": 1729229371
},
{
"city": "Khartoum",
"city_ascii": "Khartoum",
"lat": 15.5006,
"lng": 32.56,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Khartoum",
"capital": "primary",
"population": 7869000.0,
"id": 1729268475
},
{
"city": "Khartoum North",
"city_ascii": "Khartoum North",
"lat": 15.6333,
"lng": 32.6333,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Khartoum",
"capital": null,
"population": 936349.0,
"id": 1729318628
},
{
"city": "Wad Medani",
"city_ascii": "Wad Medani",
"lat": 14.4,
"lng": 33.5167,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Gezira",
"capital": "admin",
"population": 345290.0,
"id": 1729581572
},
{
"city": "Port Sudan",
"city_ascii": "Port Sudan",
"lat": 19.6167,
"lng": 37.2167,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Red Sea",
"capital": "admin",
"population": 579942.0,
"id": 1729710259
},
{
"city": "Al Mijlad",
"city_ascii": "Al Mijlad",
"lat": 11.0339,
"lng": 27.74,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "West Kordofan",
"capital": null,
"population": 985000.0,
"id": 1729768355
},
{
"city": "Nyala",
"city_ascii": "Nyala",
"lat": 12.05,
"lng": 24.8833,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "South Darfur",
"capital": "admin",
"population": 492984.0,
"id": 1729833248
},
{
"city": "Omdurman",
"city_ascii": "Omdurman",
"lat": 15.65,
"lng": 32.4833,
"country": "Sudan",
"iso2": "SD",
"iso3": "SDN",
"admin_name": "Khartoum",
"capital": null,
"population": 2805396.0,
"id": 1729912179
},
{
"city": "Gothenburg",
"city_ascii": "Gothenburg",
"lat": 57.7075,
"lng": 11.9675,
"country": "Sweden",
"iso2": "SE",
"iso3": "SWE",
"admin_name": "Västra Götaland",
"capital": "admin",
"population": 607882.0,
"id": 1752059374
},
{
"city": "Stockholm",
"city_ascii": "Stockholm",
"lat": 59.3294,
"lng": 18.0686,
"country": "Sweden",
"iso2": "SE",
"iso3": "SWE",
"admin_name": "Stockholm",
"capital": "primary",
"population": 1611776.0,
"id": 1752425602
},
{
"city": "Malmö",
"city_ascii": "Malmo",
"lat": 55.6058,
"lng": 13.0358,
"country": "Sweden",
"iso2": "SE",
"iso3": "SWE",
"admin_name": "Skåne",
"capital": "admin",
"population": 351749.0,
"id": 1752705818
},
{
"city": "Zürich",
"city_ascii": "Zurich",
"lat": 47.3744,
"lng": 8.5411,
"country": "Switzerland",
"iso2": "CH",
"iso3": "CHE",
"admin_name": "Zürich",
"capital": "admin",
"population": 436332.0,
"id": 1756539143
},
{
"city": "Homs",
"city_ascii": "Homs",
"lat": 34.7333,
"lng": 36.7167,
"country": "Syria",
"iso2": "SY",
"iso3": "SYR",
"admin_name": "Ḩimş",
"capital": "admin",
"population": 775404.0,
"id": 1760013934
},
{
"city": "Ḩamāh",
"city_ascii": "Hamah",
"lat": 35.1333,
"lng": 36.75,
"country": "Syria",
"iso2": "SY",
"iso3": "SYR",
"admin_name": "Ḩamāh",
"capital": "admin",
"population": 696863.0,
"id": 1760197502
},
{
"city": "Aleppo",
"city_ascii": "Aleppo",
"lat": 36.2,
"lng": 37.16,
"country": "Syria",
"iso2": "SY",
"iso3": "SYR",
"admin_name": "Ḩalab",
"capital": "admin",
"population": 1916781.0,
"id": 1760366651
},
{
"city": "Latakia",
"city_ascii": "Latakia",
"lat": 35.5167,
"lng": 35.7833,
"country": "Syria",
"iso2": "SY",
"iso3": "SYR",
"admin_name": "Al Lādhiqīyah",
"capital": "admin",
"population": 700000.0,
"id": 1760555544
},
{
"city": "Damascus",
"city_ascii": "Damascus",
"lat": 33.5131,
"lng": 36.2919,
"country": "Syria",
"iso2": "SY",
"iso3": "SYR",
"admin_name": "Dimashq",
"capital": "primary",
"population": 1754000.0,
"id": 1760685964
},
{
"city": "Khŭjand",
"city_ascii": "Khujand",
"lat": 40.2833,
"lng": 69.6333,
"country": "Tajikistan",
"iso2": "TJ",
"iso3": "TJK",
"admin_name": "Sughd",
"capital": "admin",
"population": 770000.0,
"id": 1762372787
},
{
"city": "Dushanbe",
"city_ascii": "Dushanbe",
"lat": 38.5367,
"lng": 68.78,
"country": "Tajikistan",
"iso2": "TJ",
"iso3": "TJK",
"admin_name": "Dushanbe",
"capital": "primary",
"population": 863400.0,
"id": 1762930616
},
{
"city": "Bangkok",
"city_ascii": "Bangkok",
"lat": 13.7525,
"lng": 100.4942,
"country": "Thailand",
"iso2": "TH",
"iso3": "THA",
"admin_name": "Krung Thep Maha Nakhon",
"capital": "primary",
"population": 18007000.0,
"id": 1764068610
},
{
"city": "Chiang Mai",
"city_ascii": "Chiang Mai",
"lat": 18.7953,
"lng": 98.9986,
"country": "Thailand",
"iso2": "TH",
"iso3": "THA",
"admin_name": "Chiang Mai",
"capital": "admin",
"population": 1198000.0,
"id": 1764662886
},
{
"city": "Lomé",
"city_ascii": "Lome",
"lat": 6.1319,
"lng": 1.2228,
"country": "Togo",
"iso2": "TG",
"iso3": "TGO",
"admin_name": "Maritime",
"capital": "primary",
"population": 837437.0,
"id": 1768409132
},
{
"city": "Sharjah",
"city_ascii": "Sharjah",
"lat": 25.3575,
"lng": 55.3908,
"country": "United Arab Emirates",
"iso2": "AE",
"iso3": "ARE",
"admin_name": "Ash Shāriqah",
"capital": "admin",
"population": 1247749.0,
"id": 1784152993
},
{
"city": "Abu Dhabi",
"city_ascii": "Abu Dhabi",
"lat": 24.4667,
"lng": 54.3667,
"country": "United Arab Emirates",
"iso2": "AE",
"iso3": "ARE",
"admin_name": "Abū Z̧aby",
"capital": "primary",
"population": 1483000.0,
"id": 1784176710
},
{
"city": "‘Ajmān",
"city_ascii": "`Ajman",
"lat": 25.4136,
"lng": 55.4456,
"country": "United Arab Emirates",
"iso2": "AE",
"iso3": "ARE",
"admin_name": "‘Ajmān",
"capital": "admin",
"population": 490035.0,
"id": 1784337875
},
{
"city": "Al ‘Ayn",
"city_ascii": "Al `Ayn",
"lat": 24.2075,
"lng": 55.7447,
"country": "United Arab Emirates",
"iso2": "AE",
"iso3": "ARE",
"admin_name": "Abū Z̧aby",
"capital": null,
"population": 766936.0,
"id": 1784674685
},
{
"city": "Dubai",
"city_ascii": "Dubai",
"lat": 25.2631,
"lng": 55.2972,
"country": "United Arab Emirates",
"iso2": "AE",
"iso3": "ARE",
"admin_name": "Dubayy",
"capital": "admin",
"population": 3331420.0,
"id": 1784736618
},
{
"city": "Sidi Bouzid",
"city_ascii": "Sidi Bouzid",
"lat": 35.0381,
"lng": 9.4858,
"country": "Tunisia",
"iso2": "TN",
"iso3": "TUN",
"admin_name": "Sidi Bouzid",
"capital": "admin",
"population": 429912.0,
"id": 1788196439
},
{
"city": "Tunis",
"city_ascii": "Tunis",
"lat": 36.8064,
"lng": 10.1817,
"country": "Tunisia",
"iso2": "TN",
"iso3": "TUN",
"admin_name": "Tunis",
"capital": "primary",
"population": 1056247.0,
"id": 1788742103
},
{
"city": "Esenler",
"city_ascii": "Esenler",
"lat": 41.0339,
"lng": 28.8903,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": null,
"population": 444561.0,
"id": 1792000667
},
{
"city": "Konya",
"city_ascii": "Konya",
"lat": 37.8667,
"lng": 32.4833,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Konya",
"capital": "admin",
"population": 2232374.0,
"id": 1792014004
},
{
"city": "Trabzon",
"city_ascii": "Trabzon",
"lat": 41.005,
"lng": 39.7225,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Trabzon",
"capital": "admin",
"population": 426882.0,
"id": 1792019202
},
{
"city": "Hatay",
"city_ascii": "Hatay",
"lat": 36.2025,
"lng": 36.1606,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Hatay",
"capital": "admin",
"population": 377793.0,
"id": 1792115763
},
{
"city": "Avcılar",
"city_ascii": "Avcilar",
"lat": 40.9792,
"lng": 28.7214,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": null,
"population": 435625.0,
"id": 1792144759
},
{
"city": "Elazığ",
"city_ascii": "Elazig",
"lat": 38.6744,
"lng": 39.2228,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Elazığ",
"capital": "admin",
"population": 421726.0,
"id": 1792156766
},
{
"city": "Denizli",
"city_ascii": "Denizli",
"lat": 37.7667,
"lng": 29.0833,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Denizli",
"capital": "admin",
"population": 1027782.0,
"id": 1792161179
},
{
"city": "Samsun",
"city_ascii": "Samsun",
"lat": 41.2903,
"lng": 36.3336,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Samsun",
"capital": "admin",
"population": 1335716.0,
"id": 1792169057
},
{
"city": "Yüreğir",
"city_ascii": "Yuregir",
"lat": 36.9981,
"lng": 35.3439,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Adana",
"capital": "minor",
"population": 407054.0,
"id": 1792234391
},
{
"city": "Bağcılar",
"city_ascii": "Bagcilar",
"lat": 41.0344,
"lng": 28.8564,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": null,
"population": 734369.0,
"id": 1792374908
},
{
"city": "Sarıyer",
"city_ascii": "Sariyer",
"lat": 41.1669,
"lng": 29.0572,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": "minor",
"population": 342503.0,
"id": 1792425356
},
{
"city": "Çankaya",
"city_ascii": "Cankaya",
"lat": 39.9244,
"lng": 32.8856,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Ankara",
"capital": "minor",
"population": 914501.0,
"id": 1792458894
},
{
"city": "Malatya",
"city_ascii": "Malatya",
"lat": 38.3486,
"lng": 38.3194,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Malatya",
"capital": "admin",
"population": 426381.0,
"id": 1792485155
},
{
"city": "Erzurum",
"city_ascii": "Erzurum",
"lat": 39.9086,
"lng": 41.2769,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Erzurum",
"capital": "admin",
"population": 767848.0,
"id": 1792511957
},
{
"city": "Mersin",
"city_ascii": "Mersin",
"lat": 36.8,
"lng": 34.6333,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Mersin",
"capital": "admin",
"population": 1814468.0,
"id": 1792520282
},
{
"city": "Kâğıthane",
"city_ascii": "Kagithane",
"lat": 41.0719,
"lng": 28.9664,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": null,
"population": 437026.0,
"id": 1792526380
},
{
"city": "Diyarbakır",
"city_ascii": "Diyarbakir",
"lat": 37.91,
"lng": 40.24,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Diyarbakır",
"capital": "admin",
"population": 1732396.0,
"id": 1792536241
},
{
"city": "Akçaabat",
"city_ascii": "Akcaabat",
"lat": 41.0167,
"lng": 39.55,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Trabzon",
"capital": "minor",
"population": 1215351.0,
"id": 1792536331
},
{
"city": "Ankara",
"city_ascii": "Ankara",
"lat": 39.93,
"lng": 32.85,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Ankara",
"capital": "primary",
"population": 5503985.0,
"id": 1792572891
},
{
"city": "Batman",
"city_ascii": "Batman",
"lat": 37.887,
"lng": 41.132,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Batman",
"capital": "admin",
"population": 447106.0,
"id": 1792630786
},
{
"city": "Gebze",
"city_ascii": "Gebze",
"lat": 40.8,
"lng": 29.4333,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Kocaeli",
"capital": "minor",
"population": 371000.0,
"id": 1792650082
},
{
"city": "Seyhan",
"city_ascii": "Seyhan",
"lat": 36.9831,
"lng": 35.3328,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Adana",
"capital": "minor",
"population": 792536.0,
"id": 1792655353
},
{
"city": "Konak",
"city_ascii": "Konak",
"lat": 38.4189,
"lng": 27.1285,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İzmir",
"capital": "minor",
"population": 356563.0,
"id": 1792668647
},
{
"city": "Selçuklu",
"city_ascii": "Selcuklu",
"lat": 37.8814,
"lng": 32.4922,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Konya",
"capital": "minor",
"population": 648850.0,
"id": 1792683478
},
{
"city": "İzmir",
"city_ascii": "Izmir",
"lat": 38.42,
"lng": 27.14,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İzmir",
"capital": "admin",
"population": 4320519.0,
"id": 1792725579
},
{
"city": "Kahramanmaraş",
"city_ascii": "Kahramanmaras",
"lat": 37.5833,
"lng": 36.9333,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Kahramanmaraş",
"capital": "admin",
"population": 443575.0,
"id": 1792726797
},
{
"city": "Pamukkale",
"city_ascii": "Pamukkale",
"lat": 37.9167,
"lng": 29.1167,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Denizli",
"capital": null,
"population": 346625.0,
"id": 1792749284
},
{
"city": "Istanbul",
"city_ascii": "Istanbul",
"lat": 41.0136,
"lng": 28.955,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": "admin",
"population": 16079000.0,
"id": 1792756324
},
{
"city": "Esenyurt",
"city_ascii": "Esenyurt",
"lat": 41.047,
"lng": 28.658,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": null,
"population": 891120.0,
"id": 1792759121
},
{
"city": "Yıldırım",
"city_ascii": "Yildirim",
"lat": 40.11,
"lng": 29.0821,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Bursa",
"capital": "minor",
"population": 643681.0,
"id": 1792764051
},
{
"city": "Adana",
"city_ascii": "Adana",
"lat": 37.0,
"lng": 35.3213,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Adana",
"capital": "admin",
"population": 1765981.0,
"id": 1792783772
},
{
"city": "Manisa",
"city_ascii": "Manisa",
"lat": 38.6306,
"lng": 27.4222,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Manisa",
"capital": "admin",
"population": 356702.0,
"id": 1792804328
},
{
"city": "Pendik",
"city_ascii": "Pendik",
"lat": 40.8747,
"lng": 29.235,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": "minor",
"population": 693599.0,
"id": 1792824929
},
{
"city": "Meram",
"city_ascii": "Meram",
"lat": 37.8364,
"lng": 32.4383,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Konya",
"capital": "minor",
"population": 342315.0,
"id": 1792895883
},
{
"city": "Bursa",
"city_ascii": "Bursa",
"lat": 40.1833,
"lng": 29.05,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Bursa",
"capital": "admin",
"population": 2901396.0,
"id": 1792903330
},
{
"city": "Kayapınar",
"city_ascii": "Kayapinar",
"lat": 37.94,
"lng": 40.19,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Diyarbakır",
"capital": "minor",
"population": 362407.0,
"id": 1792910994
},
{
"city": "Gaziantep",
"city_ascii": "Gaziantep",
"lat": 37.0628,
"lng": 37.3792,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Gaziantep",
"capital": "admin",
"population": 2028563.0,
"id": 1792911843
},
{
"city": "Eskişehir",
"city_ascii": "Eskisehir",
"lat": 39.7767,
"lng": 30.5206,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Eskişehir",
"capital": "admin",
"population": 871187.0,
"id": 1792933981
},
{
"city": "Şanlıurfa",
"city_ascii": "Sanliurfa",
"lat": 37.1583,
"lng": 38.7917,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Şanlıurfa",
"capital": "admin",
"population": 1985753.0,
"id": 1792937570
},
{
"city": "Sivas",
"city_ascii": "Sivas",
"lat": 39.75,
"lng": 37.0167,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Sivas",
"capital": "admin",
"population": 377561.0,
"id": 1792938326
},
{
"city": "Van",
"city_ascii": "Van",
"lat": 38.4942,
"lng": 43.38,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Van",
"capital": "admin",
"population": 353419.0,
"id": 1792940471
},
{
"city": "Kayseri",
"city_ascii": "Kayseri",
"lat": 38.7225,
"lng": 35.4875,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Kayseri",
"capital": "admin",
"population": 1389680.0,
"id": 1792945815
},
{
"city": "Kocaeli",
"city_ascii": "Kocaeli",
"lat": 40.7625,
"lng": 29.9175,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Kocaeli",
"capital": "admin",
"population": 363416.0,
"id": 1792965114
},
{
"city": "Antalya",
"city_ascii": "Antalya",
"lat": 36.8874,
"lng": 30.7075,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "Antalya",
"capital": "admin",
"population": 2426356.0,
"id": 1792988434
},
{
"city": "Kartal",
"city_ascii": "Kartal",
"lat": 40.8872,
"lng": 29.19,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": "minor",
"population": 461155.0,
"id": 1792988658
},
{
"city": "Küçükçekmece",
"city_ascii": "Kucukcekmece",
"lat": 41.0,
"lng": 28.8,
"country": "Turkey",
"iso2": "TR",
"iso3": "TUR",
"admin_name": "İstanbul",
"capital": "minor",
"population": 770317.0,
"id": 1792992349
},
{
"city": "Ashgabat",
"city_ascii": "Ashgabat",
"lat": 37.95,
"lng": 58.3833,
"country": "Turkmenistan",
"iso2": "TM",
"iso3": "TKM",
"admin_name": "Aşgabat",
"capital": "primary",
"population": 828100.0,
"id": 1795049992
},
{
"city": "Türkmenabat",
"city_ascii": "Turkmenabat",
"lat": 39.0833,
"lng": 63.5667,
"country": "Turkmenistan",
"iso2": "TM",
"iso3": "TKM",
"admin_name": "Lebap",
"capital": "admin",
"population": 408906.0,
"id": 1795079064
},
{
"city": "Nansana",
"city_ascii": "Nansana",
"lat": 0.3639,
"lng": 32.5286,
"country": "Uganda",
"iso2": "UG",
"iso3": "UGA",
"admin_name": "Wakiso",
"capital": null,
"population": 532800.0,
"id": 1800032516
},
{
"city": "Mbale",
"city_ascii": "Mbale",
"lat": 1.0806,
"lng": 34.175,
"country": "Uganda",
"iso2": "UG",
"iso3": "UGA",
"admin_name": "Mbale",
"capital": "admin",
"population": 586300.0,
"id": 1800265900
},
{
"city": "Kampala",
"city_ascii": "Kampala",
"lat": 0.3136,
"lng": 32.5811,
"country": "Uganda",
"iso2": "UG",
"iso3": "UGA",
"admin_name": "Kampala",
"capital": "primary",
"population": 1680600.0,
"id": 1800406299
},
{
"city": "Dnipro",
"city_ascii": "Dnipro",
"lat": 48.4675,
"lng": 35.04,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Dnipropetrovska Oblast",
"capital": "admin",
"population": 980948.0,
"id": 1804152933
},
{
"city": "Odesa",
"city_ascii": "Odesa",
"lat": 46.4775,
"lng": 30.7326,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Odeska Oblast",
"capital": "admin",
"population": 1017699.0,
"id": 1804178102
},
{
"city": "Kyiv",
"city_ascii": "Kyiv",
"lat": 50.45,
"lng": 30.5233,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Kyiv, Misto",
"capital": "primary",
"population": 2963199.0,
"id": 1804382913
},
{
"city": "Mykolaiv",
"city_ascii": "Mykolaiv",
"lat": 46.975,
"lng": 31.995,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Mykolaivska Oblast",
"capital": "admin",
"population": 498748.0,
"id": 1804398395
},
{
"city": "Kryvyi Rih",
"city_ascii": "Kryvyi Rih",
"lat": 47.9086,
"lng": 33.3433,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Dnipropetrovska Oblast",
"capital": "minor",
"population": 629695.0,
"id": 1804544901
},
{
"city": "Kharkiv",
"city_ascii": "Kharkiv",
"lat": 49.9925,
"lng": 36.2311,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Kharkivska Oblast",
"capital": "admin",
"population": 1446107.0,
"id": 1804588111
},
{
"city": "Mariupol",
"city_ascii": "Mariupol",
"lat": 47.0958,
"lng": 37.5494,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Donetska Oblast",
"capital": "minor",
"population": 449498.0,
"id": 1804630021
},
{
"city": "Zaporizhzhia",
"city_ascii": "Zaporizhzhia",
"lat": 47.85,
"lng": 35.1175,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Zaporizka Oblast",
"capital": "admin",
"population": 741717.0,
"id": 1804644752
},
{
"city": "Vinnytsia",
"city_ascii": "Vinnytsia",
"lat": 49.2333,
"lng": 28.4833,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Vinnytska Oblast",
"capital": "admin",
"population": 371855.0,
"id": 1804658571
},
{
"city": "Simferopol",
"city_ascii": "Simferopol",
"lat": 44.9484,
"lng": 34.1,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Krym, Avtonomna Respublika",
"capital": "admin",
"population": 341799.0,
"id": 1804665958
},
{
"city": "Luhansk",
"city_ascii": "Luhansk",
"lat": 48.5667,
"lng": 39.3333,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Luhanska Oblast",
"capital": "admin",
"population": 417990.0,
"id": 1804688214
},
{
"city": "Sevastopol",
"city_ascii": "Sevastopol",
"lat": 44.605,
"lng": 33.5225,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Sevastopol, Misto",
"capital": "admin",
"population": 522057.0,
"id": 1804806030
},
{
"city": "Makiivka",
"city_ascii": "Makiivka",
"lat": 48.0556,
"lng": 37.9611,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Donetska Oblast",
"capital": "minor",
"population": 343158.0,
"id": 1804926154
},
{
"city": "Lviv",
"city_ascii": "Lviv",
"lat": 49.8425,
"lng": 24.0322,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Lvivska Oblast",
"capital": "admin",
"population": 724314.0,
"id": 1804939658
},
{
"city": "Donetsk",
"city_ascii": "Donetsk",
"lat": 48.0028,
"lng": 37.8053,
"country": "Ukraine",
"iso2": "UA",
"iso3": "UKR",
"admin_name": "Donetska Oblast",
"capital": "admin",
"population": 929063.0,
"id": 1804963805
},
{
"city": "Skopje",
"city_ascii": "Skopje",
"lat": 41.9961,
"lng": 21.4317,
"country": "Macedonia",
"iso2": "MK",
"iso3": "MKD",
"admin_name": "Skopje",
"capital": "primary",
"population": 640000.0,
"id": 1807600615
},
{
"city": "Ḩalwān",
"city_ascii": "Halwan",
"lat": 29.8453,
"lng": 31.3333,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Qāhirah",
"capital": null,
"population": 619293.0,
"id": 1818000039
},
{
"city": "Cairo",
"city_ascii": "Cairo",
"lat": 30.0444,
"lng": 31.2358,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Qāhirah",
"capital": "primary",
"population": 20296000.0,
"id": 1818253931
},
{
"city": "Al Manşūrah",
"city_ascii": "Al Mansurah",
"lat": 31.05,
"lng": 31.3833,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Ad Daqahlīyah",
"capital": "admin",
"population": 960423.0,
"id": 1818255319
},
{
"city": "Al ‘Āshir min Ramaḑān",
"city_ascii": "Al `Ashir min Ramadan",
"lat": 30.3065,
"lng": 31.7415,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Ash Sharqīyah",
"capital": null,
"population": 511987.0,
"id": 1818297014
},
{
"city": "Al Maḩallah al Kubrá",
"city_ascii": "Al Mahallah al Kubra",
"lat": 30.9686,
"lng": 31.1636,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Gharbīyah",
"capital": null,
"population": 535278.0,
"id": 1818406471
},
{
"city": "Asyūţ",
"city_ascii": "Asyut",
"lat": 27.1833,
"lng": 31.1667,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Asyūţ",
"capital": "admin",
"population": 389307.0,
"id": 1818456592
},
{
"city": "Suez",
"city_ascii": "Suez",
"lat": 29.9667,
"lng": 32.55,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "As Suways",
"capital": "admin",
"population": 516959.0,
"id": 1818495972
},
{
"city": "Ţanţā",
"city_ascii": "Tanta",
"lat": 30.7833,
"lng": 31.0,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Gharbīyah",
"capital": "admin",
"population": 429503.0,
"id": 1818501770
},
{
"city": "Port Said",
"city_ascii": "Port Said",
"lat": 31.2625,
"lng": 32.3061,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Būr Sa‘īd",
"capital": "admin",
"population": 524433.0,
"id": 1818628574
},
{
"city": "Alexandria",
"city_ascii": "Alexandria",
"lat": 31.1975,
"lng": 29.8925,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Iskandarīyah",
"capital": "admin",
"population": 4870000.0,
"id": 1818695837
},
{
"city": "Ash Shuhadā’",
"city_ascii": "Ash Shuhada'",
"lat": 30.6039,
"lng": 30.9021,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Minūfīyah",
"capital": null,
"population": 358486.0,
"id": 1818906012
},
{
"city": "Shubrā al Khaymah",
"city_ascii": "Shubra al Khaymah",
"lat": 30.1286,
"lng": 31.2422,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Qalyūbīyah",
"capital": null,
"population": 1025569.0,
"id": 1818909612
},
{
"city": "Giza",
"city_ascii": "Giza",
"lat": 29.987,
"lng": 31.2118,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Al Jīzah",
"capital": "admin",
"population": 5598402.0,
"id": 1818925479
},
{
"city": "Bibā",
"city_ascii": "Biba",
"lat": 28.9218,
"lng": 30.9844,
"country": "Egypt",
"iso2": "EG",
"iso3": "EGY",
"admin_name": "Banī Suwayf",
"capital": null,
"population": 385528.0,
"id": 1818994454
},
{
"city": "Nottingham",
"city_ascii": "Nottingham",
"lat": 52.9533,
"lng": -1.15,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Nottingham",
"capital": null,
"population": 768638.0,
"id": 1826122597
},
{
"city": "Manchester",
"city_ascii": "Manchester",
"lat": 53.4794,
"lng": -2.2453,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Manchester",
"capital": null,
"population": 2705000.0,
"id": 1826246335
},
{
"city": "Sheffield",
"city_ascii": "Sheffield",
"lat": 53.3808,
"lng": -1.4703,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Sheffield",
"capital": null,
"population": 518090.0,
"id": 1826289852
},
{
"city": "Leeds",
"city_ascii": "Leeds",
"lat": 53.8003,
"lng": -1.5497,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Leeds",
"capital": null,
"population": 789194.0,
"id": 1826343963
},
{
"city": "Caerdydd",
"city_ascii": "Caerdydd",
"lat": 51.4817,
"lng": -3.1792,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Cardiff",
"capital": null,
"population": 479000.0,
"id": 1826362422
},
{
"city": "Birmingham",
"city_ascii": "Birmingham",
"lat": 52.48,
"lng": -1.9025,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Birmingham",
"capital": null,
"population": 2919600.0,
"id": 1826423213
},
{
"city": "Leicester",
"city_ascii": "Leicester",
"lat": 52.6344,
"lng": -1.1319,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Leicester",
"capital": null,
"population": 508916.0,
"id": 1826431946
},
{
"city": "Edinburgh",
"city_ascii": "Edinburgh",
"lat": 55.9533,
"lng": -3.1892,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Edinburgh, City of",
"capital": null,
"population": 488050.0,
"id": 1826492520
},
{
"city": "Liverpool",
"city_ascii": "Liverpool",
"lat": 53.4075,
"lng": -2.9919,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Liverpool",
"capital": null,
"population": 864122.0,
"id": 1826558678
},
{
"city": "Southampton",
"city_ascii": "Southampton",
"lat": 50.9025,
"lng": -1.4042,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Southampton",
"capital": null,
"population": 855569.0,
"id": 1826602892
},
{
"city": "London",
"city_ascii": "London",
"lat": 51.5072,
"lng": -0.1275,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "London, City of",
"capital": "primary",
"population": 11262000.0,
"id": 1826645935
},
{
"city": "Stoke-on-Trent",
"city_ascii": "Stoke-on-Trent",
"lat": 53.0,
"lng": -2.1833,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Stoke-on-Trent",
"capital": null,
"population": 372775.0,
"id": 1826799578
},
{
"city": "Glasgow",
"city_ascii": "Glasgow",
"lat": 55.8611,
"lng": -4.25,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Glasgow City",
"capital": null,
"population": 626410.0,
"id": 1826836462
},
{
"city": "Bristol",
"city_ascii": "Bristol",
"lat": 51.4536,
"lng": -2.5975,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Bristol, City of",
"capital": null,
"population": 567111.0,
"id": 1826921049
},
{
"city": "Worthing",
"city_ascii": "Worthing",
"lat": 50.8147,
"lng": -0.3714,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "West Sussex",
"capital": null,
"population": 474485.0,
"id": 1826936965
},
{
"city": "Portsmouth",
"city_ascii": "Portsmouth",
"lat": 50.8058,
"lng": -1.0872,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Portsmouth",
"capital": null,
"population": 855679.0,
"id": 1826964096
},
{
"city": "Coventry",
"city_ascii": "Coventry",
"lat": 52.4081,
"lng": -1.5106,
"country": "United Kingdom",
"iso2": "GB",
"iso3": "GBR",
"admin_name": "Coventry",
"capital": null,
"population": 362690.0,
"id": 1826979198
},
{
"city": "Mwanza",
"city_ascii": "Mwanza",
"lat": -2.5167,
"lng": 32.9,
"country": "Tanzania",
"iso2": "TZ",
"iso3": "TZA",
"admin_name": "Mwanza",
"capital": "admin",
"population": 706453.0,
"id": 1834011288
},
{
"city": "Mbeya",
"city_ascii": "Mbeya",
"lat": -8.9,
"lng": 33.45,
"country": "Tanzania",
"iso2": "TZ",
"iso3": "TZA",
"admin_name": "Mbeya",
"capital": "admin",
"population": 467000.0,
"id": 1834396594
},
{
"city": "Arusha",
"city_ascii": "Arusha",
"lat": -3.3667,
"lng": 36.6833,
"country": "Tanzania",
"iso2": "TZ",
"iso3": "TZA",
"admin_name": "Arusha",
"capital": "admin",
"population": 416442.0,
"id": 1834484937
},
{
"city": "Dar es Salaam",
"city_ascii": "Dar es Salaam",
"lat": -6.8161,
"lng": 39.2803,
"country": "Tanzania",
"iso2": "TZ",
"iso3": "TZA",
"admin_name": "Dar es Salaam",
"capital": "primary",
"population": 7962000.0,
"id": 1834843853
},
{
"city": "Rochester",
"city_ascii": "Rochester",
"lat": 43.168,
"lng": -77.6162,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 737309.0,
"id": 1840000373
},
{
"city": "Syracuse",
"city_ascii": "Syracuse",
"lat": 43.0407,
"lng": -76.1437,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 418875.0,
"id": 1840000378
},
{
"city": "Buffalo",
"city_ascii": "Buffalo",
"lat": 42.9018,
"lng": -78.8487,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 1004655.0,
"id": 1840000386
},
{
"city": "Albany",
"city_ascii": "Albany",
"lat": 42.6664,
"lng": -73.7987,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": "admin",
"population": 604077.0,
"id": 1840000417
},
{
"city": "Worcester",
"city_ascii": "Worcester",
"lat": 42.2705,
"lng": -71.8079,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Massachusetts",
"capital": null,
"population": 573573.0,
"id": 1840000434
},
{
"city": "Boston",
"city_ascii": "Boston",
"lat": 42.3188,
"lng": -71.0852,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Massachusetts",
"capital": "admin",
"population": 4208580.0,
"id": 1840000455
},
{
"city": "Springfield",
"city_ascii": "Springfield",
"lat": 42.1155,
"lng": -72.5395,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Massachusetts",
"capital": null,
"population": 620494.0,
"id": 1840000466
},
{
"city": "Chicago",
"city_ascii": "Chicago",
"lat": 41.8375,
"lng": -87.6866,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Illinois",
"capital": null,
"population": 8595181.0,
"id": 1840000494
},
{
"city": "Poughkeepsie",
"city_ascii": "Poughkeepsie",
"lat": 41.695,
"lng": -73.9211,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 423386.0,
"id": 1840000500
},
{
"city": "Toledo",
"city_ascii": "Toledo",
"lat": 41.6638,
"lng": -83.5827,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 490832.0,
"id": 1840000572
},
{
"city": "Cleveland",
"city_ascii": "Cleveland",
"lat": 41.4764,
"lng": -81.6805,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 1683059.0,
"id": 1840000596
},
{
"city": "Philadelphia",
"city_ascii": "Philadelphia",
"lat": 40.0077,
"lng": -75.1339,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": null,
"population": 5512873.0,
"id": 1840000673
},
{
"city": "Akron",
"city_ascii": "Akron",
"lat": 41.0798,
"lng": -81.5219,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 546549.0,
"id": 1840000791
},
{
"city": "Allentown",
"city_ascii": "Allentown",
"lat": 40.5961,
"lng": -75.4756,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": null,
"population": 714136.0,
"id": 1840001044
},
{
"city": "Pittsburgh",
"city_ascii": "Pittsburgh",
"lat": 40.4397,
"lng": -79.9763,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": null,
"population": 1720279.0,
"id": 1840001254
},
{
"city": "Harrisburg",
"city_ascii": "Harrisburg",
"lat": 40.2752,
"lng": -76.8843,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": "admin",
"population": 472261.0,
"id": 1840001288
},
{
"city": "Baltimore",
"city_ascii": "Baltimore",
"lat": 39.3051,
"lng": -76.6144,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Maryland",
"capital": null,
"population": 2205092.0,
"id": 1840001592
},
{
"city": "St. Louis",
"city_ascii": "St. Louis",
"lat": 38.6359,
"lng": -90.2451,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Missouri",
"capital": null,
"population": 2092481.0,
"id": 1840001651
},
{
"city": "Wichita",
"city_ascii": "Wichita",
"lat": 37.6895,
"lng": -97.3443,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Kansas",
"capital": null,
"population": 491916.0,
"id": 1840001686
},
{
"city": "Richmond",
"city_ascii": "Richmond",
"lat": 37.5295,
"lng": -77.4756,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Virginia",
"capital": "admin",
"population": 1008069.0,
"id": 1840001698
},
{
"city": "New Orleans",
"city_ascii": "New Orleans",
"lat": 30.0687,
"lng": -89.9288,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Louisiana",
"capital": null,
"population": 925443.0,
"id": 1840001839
},
{
"city": "Madison",
"city_ascii": "Madison",
"lat": 43.0822,
"lng": -89.393,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Wisconsin",
"capital": "admin",
"population": 461778.0,
"id": 1840002915
},
{
"city": "Grand Rapids",
"city_ascii": "Grand Rapids",
"lat": 42.9619,
"lng": -85.6562,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Michigan",
"capital": null,
"population": 604311.0,
"id": 1840002928
},
{
"city": "Milwaukee",
"city_ascii": "Milwaukee",
"lat": 43.0642,
"lng": -87.9675,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Wisconsin",
"capital": null,
"population": 1340981.0,
"id": 1840003046
},
{
"city": "Providence",
"city_ascii": "Providence",
"lat": 41.823,
"lng": -71.4187,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Rhode Island",
"capital": "admin",
"population": 1270149.0,
"id": 1840003289
},
{
"city": "Scranton",
"city_ascii": "Scranton",
"lat": 41.4044,
"lng": -75.6649,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": null,
"population": 376974.0,
"id": 1840003389
},
{
"city": "Youngstown",
"city_ascii": "Youngstown",
"lat": 41.0993,
"lng": -80.6463,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 363541.0,
"id": 1840003563
},
{
"city": "Lancaster",
"city_ascii": "Lancaster",
"lat": 40.042,
"lng": -76.3012,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Pennsylvania",
"capital": null,
"population": 430621.0,
"id": 1840003718
},
{
"city": "Columbus",
"city_ascii": "Columbus",
"lat": 39.9862,
"lng": -82.9855,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": "admin",
"population": 1556848.0,
"id": 1840003760
},
{
"city": "Cincinnati",
"city_ascii": "Cincinnati",
"lat": 39.1413,
"lng": -84.506,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 1712287.0,
"id": 1840003814
},
{
"city": "Virginia Beach",
"city_ascii": "Virginia Beach",
"lat": 36.7335,
"lng": -76.0435,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Virginia",
"capital": null,
"population": 1500764.0,
"id": 1840003871
},
{
"city": "Detroit",
"city_ascii": "Detroit",
"lat": 42.3834,
"lng": -83.1024,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Michigan",
"capital": null,
"population": 3522856.0,
"id": 1840003971
},
{
"city": "Hartford",
"city_ascii": "Hartford",
"lat": 41.7661,
"lng": -72.6834,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Connecticut",
"capital": "admin",
"population": 907046.0,
"id": 1840004773
},
{
"city": "Bridgeport",
"city_ascii": "Bridgeport",
"lat": 41.1918,
"lng": -73.1954,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Connecticut",
"capital": null,
"population": 975078.0,
"id": 1840004836
},
{
"city": "New Haven",
"city_ascii": "New Haven",
"lat": 41.3113,
"lng": -72.9246,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Connecticut",
"capital": null,
"population": 587648.0,
"id": 1840004850
},
{
"city": "Hempstead",
"city_ascii": "Hempstead",
"lat": 40.6629,
"lng": -73.6089,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 791018.0,
"id": 1840005293
},
{
"city": "Washington",
"city_ascii": "Washington",
"lat": 38.9047,
"lng": -77.0163,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "District of Columbia",
"capital": "primary",
"population": 4810669.0,
"id": 1840006060
},
{
"city": "Birmingham",
"city_ascii": "Birmingham",
"lat": 33.5279,
"lng": -86.7971,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Alabama",
"capital": null,
"population": 704676.0,
"id": 1840006507
},
{
"city": "Des Moines",
"city_ascii": "Des Moines",
"lat": 41.5725,
"lng": -93.6105,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Iowa",
"capital": "admin",
"population": 514654.0,
"id": 1840007069
},
{
"city": "Minneapolis",
"city_ascii": "Minneapolis",
"lat": 44.9635,
"lng": -93.2678,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Minnesota",
"capital": null,
"population": 2856952.0,
"id": 1840007830
},
{
"city": "Kansas City",
"city_ascii": "Kansas City",
"lat": 39.1238,
"lng": -94.5541,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Missouri",
"capital": null,
"population": 1644497.0,
"id": 1840008535
},
{
"city": "Omaha",
"city_ascii": "Omaha",
"lat": 41.2627,
"lng": -96.0529,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Nebraska",
"capital": null,
"population": 806485.0,
"id": 1840009315
},
{
"city": "Honolulu",
"city_ascii": "Honolulu",
"lat": 21.3294,
"lng": -157.846,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Hawaii",
"capital": "admin",
"population": 835291.0,
"id": 1840013305
},
{
"city": "Greensboro",
"city_ascii": "Greensboro",
"lat": 36.0956,
"lng": -79.8271,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "North Carolina",
"capital": null,
"population": 345270.0,
"id": 1840013356
},
{
"city": "Durham",
"city_ascii": "Durham",
"lat": 35.9792,
"lng": -78.9022,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "North Carolina",
"capital": null,
"population": 399762.0,
"id": 1840013364
},
{
"city": "Fayetteville",
"city_ascii": "Fayetteville",
"lat": 36.0714,
"lng": -94.1661,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Arkansas",
"capital": null,
"population": 381636.0,
"id": 1840013368
},
{
"city": "Greenville",
"city_ascii": "Greenville",
"lat": 34.8354,
"lng": -82.3646,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "South Carolina",
"capital": null,
"population": 450487.0,
"id": 1840013501
},
{
"city": "Atlanta",
"city_ascii": "Atlanta",
"lat": 33.7628,
"lng": -84.422,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Georgia",
"capital": "admin",
"population": 5046555.0,
"id": 1840013660
},
{
"city": "Baton Rouge",
"city_ascii": "Baton Rouge",
"lat": 30.442,
"lng": -91.1311,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Louisiana",
"capital": "admin",
"population": 610751.0,
"id": 1840013941
},
{
"city": "Bonita Springs",
"city_ascii": "Bonita Springs",
"lat": 26.3558,
"lng": -81.7859,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 347581.0,
"id": 1840014227
},
{
"city": "Knoxville",
"city_ascii": "Knoxville",
"lat": 35.9692,
"lng": -83.9496,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Tennessee",
"capital": null,
"population": 619925.0,
"id": 1840014486
},
{
"city": "Raleigh",
"city_ascii": "Raleigh",
"lat": 35.8324,
"lng": -78.6429,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "North Carolina",
"capital": "admin",
"population": 1062018.0,
"id": 1840014497
},
{
"city": "Charlotte",
"city_ascii": "Charlotte",
"lat": 35.2083,
"lng": -80.8303,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "North Carolina",
"capital": null,
"population": 1516107.0,
"id": 1840014557
},
{
"city": "Chattanooga",
"city_ascii": "Chattanooga",
"lat": 35.066,
"lng": -85.2481,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Tennessee",
"capital": null,
"population": 403233.0,
"id": 1840014569
},
{
"city": "Columbia",
"city_ascii": "Columbia",
"lat": 34.0378,
"lng": -80.9036,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "South Carolina",
"capital": "admin",
"population": 640502.0,
"id": 1840014730
},
{
"city": "Pensacola",
"city_ascii": "Pensacola",
"lat": 30.4413,
"lng": -87.1911,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 360711.0,
"id": 1840015005
},
{
"city": "Jacksonville",
"city_ascii": "Jacksonville",
"lat": 30.3322,
"lng": -81.6749,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 1220191.0,
"id": 1840015031
},
{
"city": "Palm Coast",
"city_ascii": "Palm Coast",
"lat": 29.5389,
"lng": -81.2457,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 403834.0,
"id": 1840015064
},
{
"city": "Palm Bay",
"city_ascii": "Palm Bay",
"lat": 27.9631,
"lng": -80.6593,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 528322.0,
"id": 1840015094
},
{
"city": "Orlando",
"city_ascii": "Orlando",
"lat": 28.4773,
"lng": -81.337,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 1927699.0,
"id": 1840015099
},
{
"city": "Kissimmee",
"city_ascii": "Kissimmee",
"lat": 28.3041,
"lng": -81.4169,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 399929.0,
"id": 1840015109
},
{
"city": "Port St. Lucie",
"city_ascii": "Port St. Lucie",
"lat": 27.2796,
"lng": -80.3884,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 468979.0,
"id": 1840015119
},
{
"city": "Cape Coral",
"city_ascii": "Cape Coral",
"lat": 26.6443,
"lng": -81.9957,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 682773.0,
"id": 1840015130
},
{
"city": "Miami",
"city_ascii": "Miami",
"lat": 25.784,
"lng": -80.2101,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 5711945.0,
"id": 1840015149
},
{
"city": "Charleston",
"city_ascii": "Charleston",
"lat": 32.8168,
"lng": -79.9687,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "South Carolina",
"capital": null,
"population": 685517.0,
"id": 1840015163
},
{
"city": "Winston-Salem",
"city_ascii": "Winston-Salem",
"lat": 36.1029,
"lng": -80.261,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "North Carolina",
"capital": null,
"population": 420400.0,
"id": 1840015324
},
{
"city": "Memphis",
"city_ascii": "Memphis",
"lat": 35.1087,
"lng": -89.9663,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Tennessee",
"capital": null,
"population": 1034498.0,
"id": 1840015457
},
{
"city": "Little Rock",
"city_ascii": "Little Rock",
"lat": 34.7256,
"lng": -92.3577,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Arkansas",
"capital": "admin",
"population": 457379.0,
"id": 1840015509
},
{
"city": "Tampa",
"city_ascii": "Tampa",
"lat": 27.9945,
"lng": -82.4447,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 2683956.0,
"id": 1840015982
},
{
"city": "Sarasota",
"city_ascii": "Sarasota",
"lat": 27.3387,
"lng": -82.5432,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Florida",
"capital": null,
"population": 727388.0,
"id": 1840015988
},
{
"city": "Denver",
"city_ascii": "Denver",
"lat": 39.762,
"lng": -104.8758,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Colorado",
"capital": "admin",
"population": 2650725.0,
"id": 1840018789
},
{
"city": "Aurora",
"city_ascii": "Aurora",
"lat": 39.7083,
"lng": -104.7237,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Colorado",
"capital": null,
"population": 383496.0,
"id": 1840018794
},
{
"city": "Colorado Springs",
"city_ascii": "Colorado Springs",
"lat": 38.8674,
"lng": -104.7605,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Colorado",
"capital": null,
"population": 628808.0,
"id": 1840018825
},
{
"city": "Concord",
"city_ascii": "Concord",
"lat": 37.9722,
"lng": -122.0016,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 640270.0,
"id": 1840018905
},
{
"city": "Bakersfield",
"city_ascii": "Bakersfield",
"lat": 35.3529,
"lng": -119.0359,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 590845.0,
"id": 1840019148
},
{
"city": "Albuquerque",
"city_ascii": "Albuquerque",
"lat": 35.1054,
"lng": -106.6465,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New Mexico",
"capital": null,
"population": 765693.0,
"id": 1840019176
},
{
"city": "Indio",
"city_ascii": "Indio",
"lat": 33.7346,
"lng": -116.2346,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 361831.0,
"id": 1840019304
},
{
"city": "Anaheim",
"city_ascii": "Anaheim",
"lat": 33.839,
"lng": -117.8574,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 348204.0,
"id": 1840019322
},
{
"city": "Denton",
"city_ascii": "Denton",
"lat": 33.2175,
"lng": -97.1418,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 445814.0,
"id": 1840019390
},
{
"city": "Arlington",
"city_ascii": "Arlington",
"lat": 32.6998,
"lng": -97.125,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 392304.0,
"id": 1840019422
},
{
"city": "Dallas",
"city_ascii": "Dallas",
"lat": 32.7935,
"lng": -96.7667,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 5668165.0,
"id": 1840019440
},
{
"city": "Austin",
"city_ascii": "Austin",
"lat": 30.3005,
"lng": -97.7522,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": "admin",
"population": 1659251.0,
"id": 1840019590
},
{
"city": "Portland",
"city_ascii": "Portland",
"lat": 45.5371,
"lng": -122.65,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Oregon",
"capital": null,
"population": 2036875.0,
"id": 1840019941
},
{
"city": "Reno",
"city_ascii": "Reno",
"lat": 39.5497,
"lng": -119.8483,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Nevada",
"capital": null,
"population": 463328.0,
"id": 1840020121
},
{
"city": "Ogden",
"city_ascii": "Ogden",
"lat": 41.2279,
"lng": -111.9682,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Utah",
"capital": null,
"population": 608259.0,
"id": 1840020135
},
{
"city": "Provo",
"city_ascii": "Provo",
"lat": 40.2457,
"lng": -111.6457,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Utah",
"capital": null,
"population": 551645.0,
"id": 1840020174
},
{
"city": "Modesto",
"city_ascii": "Modesto",
"lat": 37.6375,
"lng": -121.0028,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 382994.0,
"id": 1840020287
},
{
"city": "Oakland",
"city_ascii": "Oakland",
"lat": 37.7904,
"lng": -122.2166,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 437548.0,
"id": 1840020296
},
{
"city": "Fresno",
"city_ascii": "Fresno",
"lat": 36.783,
"lng": -119.7939,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 719558.0,
"id": 1840020319
},
{
"city": "Las Vegas",
"city_ascii": "Las Vegas",
"lat": 36.2333,
"lng": -115.2654,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Nevada",
"capital": null,
"population": 2150373.0,
"id": 1840020364
},
{
"city": "Oklahoma City",
"city_ascii": "Oklahoma City",
"lat": 35.4676,
"lng": -97.5136,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Oklahoma",
"capital": "admin",
"population": 994284.0,
"id": 1840020428
},
{
"city": "Oxnard",
"city_ascii": "Oxnard",
"lat": 34.1964,
"lng": -119.1815,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 366330.0,
"id": 1840020474
},
{
"city": "Long Beach",
"city_ascii": "Long Beach",
"lat": 33.7977,
"lng": -118.167,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 466565.0,
"id": 1840020490
},
{
"city": "Los Angeles",
"city_ascii": "Los Angeles",
"lat": 34.1141,
"lng": -118.4068,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 12121244.0,
"id": 1840020491
},
{
"city": "Lancaster",
"city_ascii": "Lancaster",
"lat": 34.6935,
"lng": -118.1753,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 381732.0,
"id": 1840020516
},
{
"city": "Riverside",
"city_ascii": "Riverside",
"lat": 33.9381,
"lng": -117.3949,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 2022285.0,
"id": 1840020551
},
{
"city": "Murrieta",
"city_ascii": "Murrieta",
"lat": 33.5719,
"lng": -117.1909,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 509526.0,
"id": 1840020553
},
{
"city": "Mesa",
"city_ascii": "Mesa",
"lat": 33.4015,
"lng": -111.7178,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Arizona",
"capital": null,
"population": 497752.0,
"id": 1840020566
},
{
"city": "Phoenix",
"city_ascii": "Phoenix",
"lat": 33.5722,
"lng": -112.0892,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Arizona",
"capital": "admin",
"population": 4047095.0,
"id": 1840020568
},
{
"city": "Mission Viejo",
"city_ascii": "Mission Viejo",
"lat": 33.6096,
"lng": -117.6551,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 588540.0,
"id": 1840020580
},
{
"city": "Fort Worth",
"city_ascii": "Fort Worth",
"lat": 32.7817,
"lng": -97.3474,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 908469.0,
"id": 1840020696
},
{
"city": "Houston",
"city_ascii": "Houston",
"lat": 29.786,
"lng": -95.3885,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 5650910.0,
"id": 1840020925
},
{
"city": "McAllen",
"city_ascii": "McAllen",
"lat": 26.2252,
"lng": -98.2467,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 809002.0,
"id": 1840021024
},
{
"city": "Spokane",
"city_ascii": "Spokane",
"lat": 47.6671,
"lng": -117.433,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Washington",
"capital": null,
"population": 440270.0,
"id": 1840021093
},
{
"city": "Seattle",
"city_ascii": "Seattle",
"lat": 47.6211,
"lng": -122.3244,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Washington",
"capital": null,
"population": 3438221.0,
"id": 1840021117
},
{
"city": "Salt Lake City",
"city_ascii": "Salt Lake City",
"lat": 40.7776,
"lng": -111.9311,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Utah",
"capital": "admin",
"population": 1135344.0,
"id": 1840021383
},
{
"city": "Sacramento",
"city_ascii": "Sacramento",
"lat": 38.5677,
"lng": -121.4685,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": "admin",
"population": 1924167.0,
"id": 1840021491
},
{
"city": "Stockton",
"city_ascii": "Stockton",
"lat": 37.9765,
"lng": -121.3109,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 406822.0,
"id": 1840021517
},
{
"city": "San Francisco",
"city_ascii": "San Francisco",
"lat": 37.7558,
"lng": -122.4449,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 3290197.0,
"id": 1840021543
},
{
"city": "San Jose",
"city_ascii": "San Jose",
"lat": 37.3012,
"lng": -121.848,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 1729879.0,
"id": 1840021570
},
{
"city": "Tulsa",
"city_ascii": "Tulsa",
"lat": 36.1283,
"lng": -95.9042,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Oklahoma",
"capital": null,
"population": 715983.0,
"id": 1840021672
},
{
"city": "Victorville",
"city_ascii": "Victorville",
"lat": 34.5277,
"lng": -117.3536,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 389060.0,
"id": 1840021731
},
{
"city": "San Diego",
"city_ascii": "San Diego",
"lat": 32.8313,
"lng": -117.1222,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "California",
"capital": null,
"population": 3084174.0,
"id": 1840021990
},
{
"city": "Tucson",
"city_ascii": "Tucson",
"lat": 32.1541,
"lng": -110.8787,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Arizona",
"capital": null,
"population": 875284.0,
"id": 1840022101
},
{
"city": "San Antonio",
"city_ascii": "San Antonio",
"lat": 29.4632,
"lng": -98.5238,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 1910785.0,
"id": 1840022220
},
{
"city": "El Paso",
"city_ascii": "El Paso",
"lat": 31.8476,
"lng": -106.43,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Texas",
"capital": null,
"population": 794344.0,
"id": 1840023252
},
{
"city": "Boise",
"city_ascii": "Boise",
"lat": 43.6005,
"lng": -116.2308,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Idaho",
"capital": "admin",
"population": 422665.0,
"id": 1840027142
},
{
"city": "Augusta",
"city_ascii": "Augusta",
"lat": 33.3645,
"lng": -82.0708,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Georgia",
"capital": null,
"population": 409668.0,
"id": 1840029462
},
{
"city": "Indianapolis",
"city_ascii": "Indianapolis",
"lat": 39.7771,
"lng": -86.1458,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Indiana",
"capital": "admin",
"population": 1659305.0,
"id": 1840030084
},
{
"city": "Louisville",
"city_ascii": "Louisville",
"lat": 38.1663,
"lng": -85.6485,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Kentucky",
"capital": null,
"population": 1022630.0,
"id": 1840030815
},
{
"city": "Bronx",
"city_ascii": "Bronx",
"lat": 40.8501,
"lng": -73.8662,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 1472654.0,
"id": 1840033999
},
{
"city": "Manhattan",
"city_ascii": "Manhattan",
"lat": 40.7834,
"lng": -73.9662,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 1694263.0,
"id": 1840034000
},
{
"city": "Queens",
"city_ascii": "Queens",
"lat": 40.7498,
"lng": -73.7976,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 2405464.0,
"id": 1840034002
},
{
"city": "New York",
"city_ascii": "New York",
"lat": 40.6943,
"lng": -73.9249,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 18972871.0,
"id": 1840034016
},
{
"city": "Brooklyn",
"city_ascii": "Brooklyn",
"lat": 40.6501,
"lng": -73.9496,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 2736074.0,
"id": 1840034030
},
{
"city": "Staten Island",
"city_ascii": "Staten Island",
"lat": 40.5834,
"lng": -74.1496,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 495747.0,
"id": 1840034032
},
{
"city": "Dayton",
"city_ascii": "Dayton",
"lat": 39.7805,
"lng": -84.2003,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Ohio",
"capital": null,
"population": 709300.0,
"id": 1840034249
},
{
"city": "Nashville",
"city_ascii": "Nashville",
"lat": 36.1715,
"lng": -86.7842,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "Tennessee",
"capital": "admin",
"population": 1098486.0,
"id": 1840036155
},
{
"city": "Brookhaven",
"city_ascii": "Brookhaven",
"lat": 40.832,
"lng": -72.9517,
"country": "United States",
"iso2": "US",
"iso3": "USA",
"admin_name": "New York",
"capital": null,
"population": 485984.0,
"id": 1840057464
},
{
"city": "Ouagadougou",
"city_ascii": "Ouagadougou",
"lat": 12.3686,
"lng": -1.5275,
"country": "Burkina Faso",
"iso2": "BF",
"iso3": "BFA",
"admin_name": "Centre",
"capital": "primary",
"population": 2453496.0,
"id": 1854029208
},
{
"city": "Bobo-Dioulasso",
"city_ascii": "Bobo-Dioulasso",
"lat": 11.1833,
"lng": -4.2833,
"country": "Burkina Faso",
"iso2": "BF",
"iso3": "BFA",
"admin_name": "Hauts-Bassins",
"capital": "admin",
"population": 903887.0,
"id": 1854348796
},
{
"city": "Montevideo",
"city_ascii": "Montevideo",
"lat": -34.8836,
"lng": -56.1819,
"country": "Uruguay",
"iso2": "UY",
"iso3": "URY",
"admin_name": "Montevideo",
"capital": "primary",
"population": 1719453.0,
"id": 1858107000
},
{
"city": "Tashkent",
"city_ascii": "Tashkent",
"lat": 41.3111,
"lng": 69.2797,
"country": "Uzbekistan",
"iso2": "UZ",
"iso3": "UZB",
"admin_name": "Toshkent",
"capital": "primary",
"population": 2571668.0,
"id": 1860331871
},
{
"city": "Samarkand",
"city_ascii": "Samarkand",
"lat": 39.6547,
"lng": 66.9758,
"country": "Uzbekistan",
"iso2": "UZ",
"iso3": "UZB",
"admin_name": "Samarqand",
"capital": "admin",
"population": 546303.0,
"id": 1860388706
},
{
"city": "Qo‘qon",
"city_ascii": "Qo`qon",
"lat": 40.5286,
"lng": 70.9425,
"country": "Uzbekistan",
"iso2": "UZ",
"iso3": "UZB",
"admin_name": "Farg‘ona",
"capital": null,
"population": 350000.0,
"id": 1860403462
},
{
"city": "Andijon",
"city_ascii": "Andijon",
"lat": 40.7833,
"lng": 72.3333,
"country": "Uzbekistan",
"iso2": "UZ",
"iso3": "UZB",
"admin_name": "Andijon",
"capital": "admin",
"population": 441700.0,
"id": 1860445095
},
{
"city": "Namangan",
"city_ascii": "Namangan",
"lat": 41.0011,
"lng": 71.6683,
"country": "Uzbekistan",
"iso2": "UZ",
"iso3": "UZB",
"admin_name": "Namangan",
"capital": "admin",
"population": 626120.0,
"id": 1860894033
},
{
"city": "Maracaibo",
"city_ascii": "Maracaibo",
"lat": 10.6333,
"lng": -71.6333,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Zulia",
"capital": "admin",
"population": 2658355.0,
"id": 1862072711
},
{
"city": "Maracay",
"city_ascii": "Maracay",
"lat": 10.2469,
"lng": -67.5958,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Aragua",
"capital": "admin",
"population": 407109.0,
"id": 1862284350
},
{
"city": "Valencia",
"city_ascii": "Valencia",
"lat": 10.1667,
"lng": -68.0,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Carabobo",
"capital": "admin",
"population": 1484430.0,
"id": 1862309871
},
{
"city": "Ciudad Bolívar",
"city_ascii": "Ciudad Bolivar",
"lat": 8.1219,
"lng": -63.55,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Bolívar",
"capital": "admin",
"population": 567953.0,
"id": 1862318264
},
{
"city": "Cabimas",
"city_ascii": "Cabimas",
"lat": 10.4,
"lng": -71.4333,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Zulia",
"capital": "minor",
"population": 351735.0,
"id": 1862398719
},
{
"city": "Barcelona",
"city_ascii": "Barcelona",
"lat": 10.1333,
"lng": -64.6833,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Anzoátegui",
"capital": "admin",
"population": 448016.0,
"id": 1862418619
},
{
"city": "Santa Teresa del Tuy",
"city_ascii": "Santa Teresa del Tuy",
"lat": 10.2333,
"lng": -66.65,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Miranda",
"capital": "minor",
"population": 525321.0,
"id": 1862528581
},
{
"city": "Maturín",
"city_ascii": "Maturin",
"lat": 9.7423,
"lng": -63.1889,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Monagas",
"capital": "admin",
"population": 514046.0,
"id": 1862546949
},
{
"city": "Cumaná",
"city_ascii": "Cumana",
"lat": 10.45,
"lng": -64.1667,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Sucre",
"capital": "admin",
"population": 374706.0,
"id": 1862583279
},
{
"city": "Petare",
"city_ascii": "Petare",
"lat": 10.4833,
"lng": -66.8167,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Miranda",
"capital": "minor",
"population": 369000.0,
"id": 1862595613
},
{
"city": "Barinas",
"city_ascii": "Barinas",
"lat": 8.6333,
"lng": -70.2,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Barinas",
"capital": "admin",
"population": 816264.0,
"id": 1862647790
},
{
"city": "Catia La Mar",
"city_ascii": "Catia La Mar",
"lat": 10.6,
"lng": -67.0333,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "La Guaira",
"capital": "minor",
"population": 661897.0,
"id": 1862657837
},
{
"city": "Caracas",
"city_ascii": "Caracas",
"lat": 10.4806,
"lng": -66.9036,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Distrito Capital",
"capital": "primary",
"population": 2245744.0,
"id": 1862748204
},
{
"city": "Barquisimeto",
"city_ascii": "Barquisimeto",
"lat": 10.0678,
"lng": -69.3467,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Lara",
"capital": "admin",
"population": 1059092.0,
"id": 1862860739
},
{
"city": "Ciudad Guayana",
"city_ascii": "Ciudad Guayana",
"lat": 8.3667,
"lng": -62.65,
"country": "Venezuela",
"iso2": "VE",
"iso3": "VEN",
"admin_name": "Bolívar",
"capital": "minor",
"population": 751331.0,
"id": 1862889027
},
{
"city": "Ibb",
"city_ascii": "Ibb",
"lat": 13.9667,
"lng": 44.1667,
"country": "Yemen",
"iso2": "YE",
"iso3": "YEM",
"admin_name": "Ibb",
"capital": "admin",
"population": 350864.0,
"id": 1887321491
},
{
"city": "Ta‘izz",
"city_ascii": "Ta`izz",
"lat": 13.5789,
"lng": 44.0219,
"country": "Yemen",
"iso2": "YE",
"iso3": "YEM",
"admin_name": "Ta‘izz",
"capital": "admin",
"population": 615467.0,
"id": 1887324526
},
{
"city": "Sanaa",
"city_ascii": "Sanaa",
"lat": 15.3483,
"lng": 44.2064,
"country": "Yemen",
"iso2": "YE",
"iso3": "YEM",
"admin_name": "Amānat al ‘Āşimah",
"capital": "primary",
"population": 2957000.0,
"id": 1887750814
},
{
"city": "Aden",
"city_ascii": "Aden",
"lat": 12.8,
"lng": 45.0333,
"country": "Yemen",
"iso2": "YE",
"iso3": "YEM",
"admin_name": "‘Adan",
"capital": "admin",
"population": 507355.0,
"id": 1887867886
},
{
"city": "Al Ḩudaydah",
"city_ascii": "Al Hudaydah",
"lat": 14.8022,
"lng": 42.9511,
"country": "Yemen",
"iso2": "YE",
"iso3": "YEM",
"admin_name": "Al Ḩudaydah",
"capital": "admin",
"population": 548433.0,
"id": 1887984890
},
{
"city": "Ndola",
"city_ascii": "Ndola",
"lat": -12.9667,
"lng": 28.6333,
"country": "Zambia",
"iso2": "ZM",
"iso3": "ZMB",
"admin_name": "Copperbelt",
"capital": "admin",
"population": 528330.0,
"id": 1894032745
},
{
"city": "Lusaka",
"city_ascii": "Lusaka",
"lat": -15.4167,
"lng": 28.2833,
"country": "Zambia",
"iso2": "ZM",
"iso3": "ZMB",
"admin_name": "Lusaka",
"capital": "primary",
"population": 2467563.0,
"id": 1894157390
},
{
"city": "Kitwe",
"city_ascii": "Kitwe",
"lat": -12.8167,
"lng": 28.2,
"country": "Zambia",
"iso2": "ZM",
"iso3": "ZMB",
"admin_name": "Copperbelt",
"capital": null,
"population": 504194.0,
"id": 1894321752
},
{
"city": "Gaza",
"city_ascii": "Gaza",
"lat": 31.5069,
"lng": 34.456,
"country": "Gaza Strip",
"iso2": "XG",
"iso3": "XGZ",
"admin_name": null,
"capital": "primary",
"population": 590481.0,
"id": 1916116052
}
]
================================================
FILE: demo/components_list.py
================================================
from __future__ import annotations as _annotations
import asyncio
from fastapi import APIRouter
from fastui import AnyComponent, FastUI
from fastui import components as c
from fastui.events import GoToEvent, PageEvent
from .shared import demo_page
router = APIRouter()
def panel(*components: AnyComponent) -> AnyComponent:
return c.Div(class_name='col border rounded m-1 p-2 pb-3', components=list(components))
@router.get('', response_model=FastUI, response_model_exclude_none=True)
def components_view() -> list[AnyComponent]:
return demo_page(
c.Div(
components=[
c.Heading(text='Text', level=2),
c.Text(text='This is a text component.'),
]
),
c.Div(
components=[
c.Heading(text='Paragraph', level=2),
c.Paragraph(text='This is a paragraph component.'),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Heading', level=2),
c.Heading(text='This is an H3', level=3),
c.Heading(text='This is an H4', level=4),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Code', level=2),
c.Code(
language='python',
text="""\
from pydantic import BaseModel
class Delivery(BaseModel):
dimensions: tuple[int, int]
m = Delivery(dimensions=['10', '20'])
print(m.dimensions)
#> (10, 20)
""",
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Link List', level=2),
c.Markdown(
text=(
'This is a simple unstyled list of links, '
'LinkList is also used in `Navbar` and `Pagination`.'
)
),
c.LinkList(
links=[
c.Link(
components=[c.Text(text='Internal Link - the the home page')],
on_click=GoToEvent(url='/'),
),
c.Link(
components=[c.Text(text='Pydantic (External link)')],
on_click=GoToEvent(url='https://pydantic.dev'),
),
c.Link(
components=[c.Text(text='FastUI repo (New tab)')],
on_click=GoToEvent(url='https://github.com/pydantic/FastUI', target='_blank'),
),
],
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Button and Modal', level=2),
c.Paragraph(text='The button below will open a modal with static content.'),
c.Button(text='Show Static Modal', on_click=PageEvent(name='static-modal')),
c.Button(text='Secondary Button', named_style='secondary', class_name='+ ms-2'),
c.Button(text='Warning Button', named_style='warning', class_name='+ ms-2'),
c.Modal(
title='Static Modal',
body=[c.Paragraph(text='This is some static content that was set when the modal was defined.')],
footer=[
c.Button(text='Close', on_click=PageEvent(name='static-modal', clear=True)),
],
open_trigger=PageEvent(name='static-modal'),
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Dynamic Modal', level=2),
c.Markdown(
text=(
'The button below will open a modal with content loaded from the server when '
"it's opened using `ServerLoad`."
)
),
c.Button(text='Show Dynamic Modal', on_click=PageEvent(name='dynamic-modal')),
c.Modal(
title='Dynamic Modal',
body=[c.ServerLoad(path='/components/dynamic-content')],
footer=[
c.Button(text='Close', on_click=PageEvent(name='dynamic-modal', clear=True)),
],
open_trigger=PageEvent(name='dynamic-modal'),
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Modal Form / Confirm prompt', level=2),
c.Markdown(text='The button below will open a modal with a form.'),
c.Button(text='Show Modal Form', on_click=PageEvent(name='modal-form')),
c.Modal(
title='Modal Form',
body=[
c.Paragraph(text='Form inside a modal!'),
c.Form(
form_fields=[
c.FormFieldInput(name='foobar', title='Foobar', required=True),
],
submit_url='/api/components/modal-form',
footer=[],
submit_trigger=PageEvent(name='modal-form-submit'),
),
],
footer=[
c.Button(
text='Cancel', named_style='secondary', on_click=PageEvent(name='modal-form', clear=True)
),
c.Button(text='Submit', on_click=PageEvent(name='modal-form-submit')),
],
open_trigger=PageEvent(name='modal-form'),
),
c.Button(text='Show Modal Prompt', on_click=PageEvent(name='modal-prompt'), class_name='+ ms-2'),
c.Modal(
title='Form Prompt',
body=[
c.Paragraph(text='Are you sure you want to do whatever?'),
c.Form(
form_fields=[],
submit_url='/api/components/modal-prompt',
loading=[c.Spinner(text='Okay, good luck...')],
footer=[],
submit_trigger=PageEvent(name='modal-form-submit'),
),
],
footer=[
c.Button(
text='Cancel', named_style='secondary', on_click=PageEvent(name='modal-prompt', clear=True)
),
c.Button(text='Submit', on_click=PageEvent(name='modal-form-submit')),
],
open_trigger=PageEvent(name='modal-prompt'),
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Server Load', level=2),
c.Paragraph(text='Even simpler example of server load, replacing existing content.'),
c.Button(text='Load Content from Server', on_click=PageEvent(name='server-load')),
c.Div(
components=[
c.ServerLoad(
path='/components/dynamic-content',
load_trigger=PageEvent(name='server-load'),
components=[c.Text(text='before')],
),
],
class_name='py-2',
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Server Load SSE', level=2),
c.Markdown(
text=(
'`ServerLoad` can also be used to load content from an SSE stream.\n\n'
"Here the response is the streamed output from OpenAI's GPT-4 chat model."
)
),
c.Button(text='Load SSE content', on_click=PageEvent(name='server-load-sse')),
c.Div(
components=[
c.ServerLoad(
path='/components/sse',
sse=True,
load_trigger=PageEvent(name='server-load-sse'),
components=[c.Text(text='before')],
),
],
class_name='my-2 p-2 border rounded',
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Iframe', level=2),
c.Markdown(text='`Iframe` can be used to embed external content.'),
c.Iframe(src='https://pydantic.dev', width='100%', height=400),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Image', level=2),
c.Paragraph(text='An image component.'),
c.Image(
src='https://avatars.githubusercontent.com/u/110818415',
alt='Pydantic Logo',
width=200,
height=200,
loading='lazy',
referrer_policy='no-referrer',
class_name='border rounded',
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Spinner', level=2),
c.Paragraph(
text=(
'A component displayed while waiting for content to load, '
'this is also used automatically while loading server content.'
)
),
c.Spinner(text='Content incoming...'),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Video', level=2),
c.Paragraph(text='A video component.'),
c.Video(
sources=['https://www.w3schools.com/html/mov_bbb.mp4'],
autoplay=False,
controls=True,
loop=False,
),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Custom', level=2),
c.Markdown(
text="""\
Below is a custom component, in this case it implements [cowsay](https://en.wikipedia.org/wiki/Cowsay),
but you might be able to do something even more useful with it.
The statement spoken by the famous cow is provided by the backend."""
),
c.Custom(data='This is a custom component', sub_type='cowsay'),
],
class_name='border-top mt-3 pt-1',
),
c.Div(
components=[
c.Heading(text='Button and Toast', level=2),
c.Paragraph(text='The button below will open a toast.'),
c.Button(text='Show Toast', on_click=PageEvent(name='show-toast')),
c.Toast(
title='Toast',
body=[c.Paragraph(text='This is a toast.')],
open_trigger=PageEvent(name='show-toast'),
position='bottom-end',
),
],
class_name='border-top mt-3 pt-1',
),
title='Components',
)
@router.get('/dynamic-content', response_model=FastUI, response_model_exclude_none=True)
async def modal_view() -> list[AnyComponent]:
await asyncio.sleep(0.5)
return [c.Paragraph(text='This is some dynamic content. Open devtools to see me being fetched from the server.')]
@router.post('/modal-form', response_model=FastUI, response_model_exclude_none=True)
async def modal_form_submit() -> list[AnyComponent]:
await asyncio.sleep(0.5)
return [c.FireEvent(event=PageEvent(name='modal-form', clear=True))]
@router.post('/modal-prompt', response_model=FastUI, response_model_exclude_none=True)
async def modal_prompt_submit() -> list[AnyComponent]:
await asyncio.sleep(0.5)
return [c.FireEvent(event=PageEvent(name='modal-prompt', clear=True))]
================================================
FILE: demo/forms.py
================================================
from __future__ import annotations as _annotations
import enum
from collections import defaultdict
from datetime import date
from typing import Annotated, Literal, TypeAlias
from fastapi import APIRouter, Request, UploadFile
from fastui import AnyComponent, FastUI
from fastui import components as c
from fastui.events import GoToEvent, PageEvent
from fastui.forms import FormFile, SelectSearchResponse, Textarea, fastui_form
from httpx import AsyncClient
from pydantic import BaseModel, EmailStr, Field, SecretStr, field_validator
from pydantic_core import PydanticCustomError
from .shared import demo_page
router = APIRouter()
@router.get('/search', response_model=SelectSearchResponse)
async def search_view(request: Request, q: str) -> SelectSearchResponse:
path_ends = f'name/{q}' if q else 'all'
client: AsyncClient = request.app.state.httpx_client
r = await client.get(f'https://restcountries.com/v3.1/{path_ends}')
if r.status_code == 404:
options = []
else:
r.raise_for_status()
data = r.json()
if path_ends == 'all':
# if we got all, filter to the 20 most populous countries
data.sort(key=lambda x: x['population'], reverse=True)
data = data[0:20]
data.sort(key=lambda x: x['name']['common'])
regions = defaultdict(list)
for co in data:
regions[co['region']].append({'value': co['cca3'], 'label': co['name']['common']})
options = [{'label': k, 'options': v} for k, v in regions.items()]
return SelectSearchResponse(options=options)
FormKind: TypeAlias = Literal['login', 'select', 'big']
@router.get('/{kind}', response_model=FastUI, response_model_exclude_none=True)
def forms_view(kind: FormKind) -> list[AnyComponent]:
return demo_page(
c.LinkList(
links=[
c.Link(
components=[c.Text(text='Login Form')],
on_click=PageEvent(name='change-form', push_path='/forms/login', context={'kind': 'login'}),
active='/forms/login',
),
c.Link(
components=[c.Text(text='Select Form')],
on_click=PageEvent(name='change-form', push_path='/forms/select', context={'kind': 'select'}),
active='/forms/select',
),
c.Link(
components=[c.Text(text='Big Form')],
on_click=PageEvent(name='change-form', push_path='/forms/big', context={'kind': 'big'}),
active='/forms/big',
),
],
mode='tabs',
class_name='+ mb-4',
),
c.ServerLoad(
path='/forms/content/{kind}',
load_trigger=PageEvent(name='change-form'),
components=form_content(kind),
),
title='Forms',
)
@router.get('/content/{kind}', response_model=FastUI, response_model_exclude_none=True)
def form_content(kind: FormKind):
match kind:
case 'login':
return [
c.Heading(text='Login Form', level=2),
c.Paragraph(text='Simple login form with email and password.'),
c.ModelForm(model=LoginForm, display_mode='page', submit_url='/api/forms/login'),
]
case 'select':
return [
c.Heading(text='Select Form', level=2),
c.Paragraph(text='Form showing different ways of doing select.'),
c.ModelForm(model=SelectForm, display_mode='page', submit_url='/api/forms/select'),
]
case 'big':
return [
c.Heading(text='Large Form', level=2),
c.Paragraph(text='Form with a lot of fields.'),
c.ModelForm(model=BigModel, display_mode='page', submit_url='/api/forms/big'),
]
case _:
raise ValueError(f'Invalid kind {kind!r}')
class LoginForm(BaseModel):
email: EmailStr = Field(title='Email Address', description="Try 'x@y' to trigger server side validation")
password: SecretStr
@router.post('/login', response_model=FastUI, response_model_exclude_none=True)
async def login_form_post(form: Annotated[LoginForm, fastui_form(LoginForm)]):
print(form)
return [c.FireEvent(event=GoToEvent(url='/'))]
class ToolEnum(str, enum.Enum):
hammer = 'hammer'
screwdriver = 'screwdriver'
saw = 'saw'
claw_hammer = 'claw_hammer'
class SelectForm(BaseModel):
select_single: ToolEnum = Field(title='Select Single')
select_multiple: list[ToolEnum] = Field(title='Select Multiple')
search_select_single: str = Field(json_schema_extra={'search_url': '/api/forms/search'})
search_select_multiple: list[str] = Field(json_schema_extra={'search_url': '/api/forms/search'})
@field_validator('select_multiple', 'search_select_multiple', mode='before')
@classmethod
def correct_select_multiple(cls, v: list[str]) -> list[str]:
if isinstance(v, list):
return v
else:
return [v]
@router.post('/select', response_model=FastUI, response_model_exclude_none=True)
async def select_form_post(form: Annotated[SelectForm, fastui_form(SelectForm)]):
# print(form)
return [c.FireEvent(event=GoToEvent(url='/'))]
class SizeModel(BaseModel):
width: int = Field(description='This is a field of a nested model')
height: int = Field(description='This is a field of a nested model')
class BigModel(BaseModel):
name: str | None = Field(
None, description='This field is not required, it must start with a capital letter if provided'
)
info: Annotated[str | None, Textarea(rows=5)] = Field(None, description='Optional free text information about you.')
repo: str = Field(json_schema_extra={'placeholder': '{org}/{repo}'}, title='GitHub repository')
profile_pic: Annotated[UploadFile, FormFile(accept='image/*', max_size=16_000)] = Field(
description='Upload a profile picture, must not be more than 16kb'
)
profile_pics: Annotated[list[UploadFile], FormFile(accept='image/*')] | None = Field(
None, description='Upload multiple images'
)
dob: date = Field(title='Date of Birth', description='Your date of birth, this is required hence bold')
human: bool | None = Field(
None, title='Is human', description='Are you human?', json_schema_extra={'mode': 'switch'}
)
size: SizeModel
position: tuple[
Annotated[int, Field(description='X Coordinate')],
Annotated[int, Field(description='Y Coordinate')],
]
@field_validator('name')
def name_validator(cls, v: str | None) -> str:
if v and v[0].islower():
raise PydanticCustomError('lower', 'Name must start with a capital letter')
return v
@router.post('/big', response_model=FastUI, response_model_exclude_none=True)
async def big_form_post(form: Annotated[BigModel, fastui_form(BigModel)]):
print(form)
return [c.FireEvent(event=GoToEvent(url='/'))]
================================================
FILE: demo/main.py
================================================
from __future__ import annotations as _annotations
from fastapi import APIRouter
from fastui import AnyComponent, FastUI
from fastui import components as c
from .shared import demo_page
router = APIRouter()
@router.get('/', response_model=FastUI, response_model_exclude_none=True)
def api_index() -> list[AnyComponent]:
# language=markdown
markdown = """\
This site provides a demo of [FastUI](https://github.com/pydantic/FastUI), the code for the demo
is [here](https://github.com/pydantic/FastUI/tree/main/demo).
You can find the documentation for FastUI [here](https://docs.pydantic.dev/fastui/).
The following components are demonstrated:
* `Markdown` — that's me :-)
* `Text`— example [here](/components#text)
* `Paragraph` — example [here](/components#paragraph)
* `PageTitle` — you'll see the title in the browser tab change when you navigate through the site
* `Heading` — example [here](/components#heading)
* `Code` — example [here](/components#code)
* `Button` — example [here](/components#button-and-modal)
* `Link` — example [here](/components#link-list)
* `LinkList` — example [here](/components#link-list)
* `Navbar` — see the top of this page
* `Footer` — see the bottom of this page
* `Modal` — static example [here](/components#button-and-modal), dynamic content example [here](/components#dynamic-modal)
* `ServerLoad` — see [dynamic modal example](/components#dynamic-modal) and [SSE example](/components#server-load-sse)
* `Image` - example [here](/components#image)
* `Iframe` - example [here](/components#iframe)
* `Video` - example [here](/components#video)
* `Toast` - example [here](/components#toast)
* `Table` — See [cities table](/table/cities) and [users table](/table/users)
* `Pagination` — See the bottom of the [cities table](/table/cities)
* `ModelForm` — See [forms](/forms/login)
Authentication is supported via:
* token based authentication — see [here](/auth/login/password) for an example of password authentication
* GitHub OAuth — see [here](/auth/login/github) for an example of GitHub OAuth login
"""
return demo_page(c.Markdown(text=markdown))
@router.get('/{path:path}', status_code=404)
async def api_404():
# so we don't fall through to the index page
return {'message': 'Not Found'}
================================================
FILE: demo/shared.py
================================================
from __future__ import annotations as _annotations
from fastui import AnyComponent
from fastui import components as c
from fastui.events import GoToEvent
def demo_page(*components: AnyComponent, title: str | None = None) -> list[AnyComponent]:
return [
c.PageTitle(text=f'FastUI Demo — {title}' if title else 'FastUI Demo'),
c.Navbar(
title='FastUI Demo',
title_event=GoToEvent(url='/'),
start_links=[
c.Link(
components=[c.Text(text='Components')],
on_click=GoToEvent(url='/components'),
active='startswith:/components',
),
c.Link(
components=[c.Text(text='Tables')],
on_click=GoToEvent(url='/table/cities'),
active='startswith:/table',
),
c.Link(
components=[c.Text(text='Auth')],
on_click=GoToEvent(url='/auth/login/password'),
active='startswith:/auth',
),
c.Link(
components=[c.Text(text='Forms')],
on_click=GoToEvent(url='/forms/login'),
active='startswith:/forms',
),
],
),
c.Page(
components=[
*((c.Heading(text=title),) if title else ()),
*components,
],
),
c.Footer(
extra_text='FastUI Demo',
links=[
c.Link(
components=[c.Text(text='Github')], on_click=GoToEvent(url='https://github.com/pydantic/FastUI')
),
c.Link(components=[c.Text(text='PyPI')], on_click=GoToEvent(url='https://pypi.org/project/fastui/')),
c.Link(components=[c.Text(text='NPM')], on_click=GoToEvent(url='https://www.npmjs.com/org/pydantic/')),
],
),
]
================================================
FILE: demo/sse.py
================================================
import asyncio
from collections.abc import AsyncIterable
from itertools import chain
from fastapi import APIRouter
from fastui import FastUI
from fastui import components as c
from starlette.responses import StreamingResponse
router = APIRouter()
async def canned_ai_response_generator() -> AsyncIterable[str]:
prompt = '**User:** What is SSE? Please include a javascript code example.\n\n**AI:** '
output = ''
for time, text in chain([(0.5, prompt)], CANNED_RESPONSE):
await asyncio.sleep(time)
output += text
m = FastUI(root=[c.Markdown(text=output)])
yield f'data: {m.model_dump_json(by_alias=True, exclude_none=True)}\n\n'
@router.get('/sse')
async def sse_ai_response() -> StreamingResponse:
return StreamingResponse(canned_ai_response_generator(), media_type='text/event-stream')
async def run_openai():
from time import perf_counter
from openai import AsyncOpenAI
messages = [
{'role': 'system', 'content': 'please response in markdown only.'},
{'role': 'user', 'content': 'What is SSE? Please include a javascript code example.'},
]
chunks = await AsyncOpenAI().chat.completions.create(
model='gpt-4',
messages=messages,
stream=True,
)
last = None
result_chunks = []
async for chunk in chunks:
now = perf_counter()
if last is not None:
t = now - last
else:
t = 0
text = chunk.choices[0].delta.content
print(repr(text), t)
if text is not None:
result_chunks.append((t, text))
last = now
print(result_chunks)
text = ''.join(text for _, text in result_chunks)
print(text)
if __name__ == '__main__':
asyncio.run(run_openai())
CANNED_RESPONSE: list[tuple[float, str]] = [
(0.00000, ''),
(0.07685, 'Server'),
(0.00111, '-S'),
(0.00081, 'ent'),
(0.10528, ' Events'),
(0.00109, ' ('),
(0.00062, 'S'),
(0.10290, 'SE'),
(0.00075, ')'),
(0.00091, ' is'),
(0.10360, ' a'),
(0.00089, ' standard'),
(0.00054, ' that'),
(0.19121, ' allows'),
(0.00088, ' web'),
(0.00067, ' servers'),
(0.22486, ' to'),
(0.00101, ' push'),
(0.00057, ' updates'),
(0.10352, ' to'),
(0.00148, ' the'),
(0.00084, ' client'),
(0.10238, '-side'),
(0.00090, '.'),
(0.00104, ' Unlike'),
(0.10156, ' WebSocket'),
(0.00109, ' communication'),
(0.00063, ','),
(0.10474, ' SSE'),
(0.00080, ' is'),
(0.00085, ' un'),
(0.10158, 'id'),
(0.00080, 'irectional'),
(0.00097, ','),
(0.10401, ' meaning'),
(0.00099, ' the'),
(0.00104, ' updates'),
(0.11338, ' flow'),
(0.00078, ' from'),
(0.00080, ' server'),
(0.09008, ' to'),
(0.00072, ' client'),
(0.00105, ' and'),
(0.10391, ' not'),
(0.00084, ' the'),
(0.00080, ' other'),
(0.10613, ' way'),
(0.00110, ' around'),
(0.00080, '.\n\n'),
(0.10567, 'S'),
(0.00076, 'SE'),
(0.00085, ' is'),
(0.09538, ' generally'),
(0.00134, ' used'),
(0.00052, ' for'),
(0.10731, ' real'),
(0.00108, '-time'),
(0.00079, ' applications'),
(0.09934, ' where'),
(0.00065, ' updates'),
(0.00061, ' from'),
(0.10913, ' the'),
(0.00111, ' server'),
(0.00071, ' are'),
(0.09556, ' needed'),
(0.00065, ' periodically'),
(0.00103, ','),
(0.10564, ' for'),
(0.00184, ' example'),
(0.00077, ','),
(0.17375, ' live'),
(0.00067, ' news'),
(0.00073, ' updates'),
(0.02926, ','),
(0.00084, ' real'),
(0.00052, '-time'),
(0.10552, ' monitoring'),
(0.00080, ','),
(0.00063, ' etc'),
(0.10336, '.'),
(0.00087, ' It'),
(0.00095, ' is'),
(0.10473, ' based'),
(0.00100, ' on'),
(0.00058, ' HTTP'),
(0.10139, ' protocol'),
(0.00096, ' and'),
(0.00049, ' provides'),
(0.14795, ' a'),
(0.00073, ' simpler'),
(0.00088, ' alternative'),
(0.10304, ' to'),
(0.00092, ' Web'),
(0.00055, 'S'),
(0.10849, 'ockets'),
(0.00076, ' for'),
(0.00096, ' use'),
(0.09727, ' cases'),
(0.00087, ' where'),
(0.00080, ' you'),
(0.11029, ' do'),
(0.00060, ' not'),
(0.00046, ' require'),
(0.12591, ' bid'),
(0.00084, 'irectional'),
(0.00064, ' communication'),
(0.07139, '.\n\n'),
(0.00082, '**'),
(0.00064, 'JavaScript'),
(0.10693, ' Example'),
(0.00078, '**\n\n'),
(0.00064, '```'),
(0.14820, 'javascript'),
(0.00102, '\n'),
(0.00066, 'let'),
(0.10841, ' event'),
(0.00073, 'Source'),
(0.00112, ' ='),
(0.09982, ' new'),
(0.00171, ' Event'),
(0.00087, 'Source'),
(0.10119, '("'),
(0.00129, 'https'),
(0.00078, '://'),
(0.10253, 'api'),
(0.00080, '.example'),
(0.00086, '.com'),
(0.10223, '/stream'),
(0.00069, '");\n\n'),
(0.00051, 'event'),
(0.10391, 'Source'),
(0.00082, '.on'),
(0.00090, 'message'),
(0.10570, ' ='),
(0.00286, ' function'),
(0.00061, '(event'),
(0.08790, ')'),
(0.00098, ' {\n'),
(0.00058, ' '),
(0.09117, ' console'),
(0.00061, '.log'),
(0.00118, '("'),
(0.14843, 'New'),
(0.00085, ' event'),
(0.00054, ' received'),
(0.09681, ':'),
(0.00078, ' ",'),
(0.00092, ' event'),
(0.09540, '.data'),
(0.00075, ');\n'),
(0.00077, '};\n\n'),
(0.10102, 'event'),
(0.00096, 'Source'),
(0.00058, '.onerror'),
(0.09409, ' ='),
(0.00088, ' function'),
(0.00063, '(err'),
(0.10187, ')'),
(0.00080, ' {\n'),
(0.00062, ' '),
(0.10227, ' console'),
(0.00098, '.error'),
(0.00062, '("'),
(0.09445, 'Event'),
(0.00103, 'Source'),
(0.00080, ' failed'),
(0.10366, ':",'),
(0.00073, ' err'),
(0.00101, ');\n'),
(0.09442, '};\n'),
(0.00088, '``'),
(0.00051, '`\n\n'),
(0.10121, 'Here'),
(0.00156, ','),
(0.00077, ' `'),
(0.09582, 'https'),
(0.00072, '://'),
(0.00083, 'api'),
(0.09987, '.example'),
(0.00082, '.com'),
(0.00088, '/stream'),
(0.10323, '`'),
(0.00070, ' is'),
(0.00075, ' the'),
(0.09308, ' endpoint'),
(0.00118, ' which'),
(0.00080, ' sends'),
(0.10005, ' the'),
(0.00091, ' updates'),
(0.00091, '.\n\n'),
(0.09656, '**'),
(0.00272, 'Fast'),
(0.00068, 'API'),
(0.10638, ' Example'),
(0.00069, '**\n\n'),
(0.00068, '```'),
(0.09220, 'python'),
(0.00068, '\n'),
(0.00102, 'from'),
(0.16155, ' fast'),
(0.00082, 'api'),
(0.00054, ' import'),
(0.09223, ' Fast'),
(0.00075, 'API'),
(0.00064, '\n'),
(0.09892, 'from'),
(0.00071, ' fast'),
(0.00051, 'api'),
(0.00075, '.responses'),
(0.00071, ' import'),
(0.00058, ' Streaming'),
(0.00081, 'Response'),
(0.00052, '\n\n'),
(0.10306, 'app'),
(0.00075, ' ='),
(0.00088, ' Fast'),
(0.09503, 'API'),
(0.00260, '()\n\n'),
(0.00054, 'def'),
(0.09160, ' event'),
(0.00075, '_generator'),
(0.00067, '():\n'),
(0.09801, ' '),
(0.00080, ' yield'),
(0.00086, " {'"),
(0.07686, 'data'),
(0.00125, "':"),
(0.00087, " '"),
(0.08182, 'Initial'),
(0.00086, ' message'),
(0.00052, "'}\n"),
(0.16532, ' '),
(0.00114, ' for'),
(0.00058, ' i'),
(0.10338, ' in'),
(0.00080, ' range'),
(0.00082, '('),
(0.10311, '5'),
(0.00075, '):\n'),
(0.00066, ' '),
(0.09347, ' yield'),
(0.00080, " {'"),
(0.00060, 'data'),
(0.10470, "':"),
(0.00077, ' f'),
(0.00052, "'M"),
(0.10310, 'essage'),
(0.00070, ' {'),
(0.00103, 'i'),
(0.09362, "}'"),
(0.00091, '}\n\n'),
(0.00068, '@app'),
(0.09475, '.get'),
(0.00078, '("/'),
(0.00078, 'stream'),
(0.08145, '")\n'),
(0.00064, 'async'),
(0.00067, ' def'),
(0.08127, ' get'),
(0.00141, '_event'),
(0.00049, '_stream'),
(0.08973, '():\n'),
(0.00095, ' '),
(0.00089, ' return'),
(0.07297, ' Streaming'),
(0.00092, 'Response'),
(0.19895, '(event'),
(0.00075, '_generator'),
(0.00049, '(),'),
(0.00092, ' media_type'),
(0.00066, '='),
(0.00052, "'text/"),
(0.00073, "event-stream'"),
(0.00050, ')\n'),
(0.07387, '``'),
(0.00066, '`\n\n'),
(0.00054, 'In'),
(0.08289, ' the'),
(0.00088, ' Fast'),
(0.00093, 'API'),
(0.14361, ' example'),
(0.00087, ','),
(0.00060, ' the'),
(0.01910, ' client'),
(0.00074, ' would'),
(0.00059, ' receive'),
(0.08010, ' an'),
(0.00232, ' event'),
(0.00059, ' with'),
(0.07788, " '"),
(0.00101, 'Initial'),
(0.00061, ' message'),
(0.50112, "',"),
(0.00061, ' followed'),
(0.00049, ' by'),
(0.05819, " '"),
(0.00072, 'Message'),
(0.00060, ' '),
(0.11164, '0'),
(0.00075, "',"),
(0.00096, " '"),
(0.10626, 'Message'),
(0.00081, ' '),
(0.00051, '1'),
(0.11977, "',"),
(0.00071, ' ...,'),
(0.00051, " '"),
(0.11939, 'Message'),
(0.00081, ' '),
(0.00059, '4'),
(0.11833, "'."),
(0.00059, ' Each'),
(0.00025, ' message'),
(0.11457, ' is'),
(0.00063, ' an'),
(0.00058, ' individual'),
(0.11788, ' Server'),
(0.00084, '-S'),
(0.00037, 'ent'),
(0.00046, ' Event'),
(0.00026, '.'),
]
================================================
FILE: demo/tables.py
================================================
from datetime import date
from functools import cache
from pathlib import Path
import pydantic
from fastapi import APIRouter
from fastui import AnyComponent, FastUI
from fastui import components as c
from fastui.components.display import DisplayLookup, DisplayMode
from fastui.events import BackEvent, GoToEvent
from pydantic import BaseModel, Field, TypeAdapter
from .shared import demo_page
router = APIRouter()
class City(BaseModel):
id: int = Field(title='ID')
city: str = Field(title='Name')
city_ascii: str = Field(title='City Ascii')
lat: float = Field(title='Latitude')
lng: float = Field(title='Longitude')
country: str = Field(title='Country')
iso2: str = Field(title='ISO2')
iso3: str = Field(title='ISO3')
admin_name: str | None = Field(title='Admin Name')
capital: str | None = Field(title='Capital')
population: float = Field(title='Population')
@cache
def cities_list() -> list[City]:
cities_adapter = TypeAdapter(list[City])
cities_file = Path(__file__).parent / 'cities.json'
cities = cities_adapter.validate_json(cities_file.read_bytes())
cities.sort(key=lambda city: city.population, reverse=True)
return cities
@cache
def cities_lookup() -> dict[id, City]:
return {city.id: city for city in cities_list()}
class FilterForm(pydantic.BaseModel):
country: str = Field(json_schema_extra={'search_url': '/api/forms/search', 'placeholder': 'Filter by Country...'})
@router.get('/cities', response_model=FastUI, response_model_exclude_none=True)
def cities_view(page: int = 1, country: str | None = None) -> list[AnyComponent]:
cities = cities_list()
page_size = 50
filter_form_initial = {}
if country:
cities = [city for city in cities if city.iso3 == country]
country_name = cities[0].country if cities else country
filter_form_initial['country'] = {'value': country, 'label': country_name}
return demo_page(
*tabs(),
c.ModelForm(
model=FilterForm,
submit_url='.',
initial=filter_form_initial,
method='GOTO',
submit_on_change=True,
display_mode='inline',
),
c.Table(
data=cities[(page - 1) * page_size : page * page_size],
data_model=City,
columns=[
DisplayLookup(field='city', on_click=GoToEvent(url='./{id}'), table_width_percent=33),
DisplayLookup(field='country', table_width_percent=33),
DisplayLookup(field='population', table_width_percent=33),
],
),
c.Pagination(page=page, page_size=page_size, total=len(cities)),
title='Cities',
)
@router.get('/cities/{city_id}', response_model=FastUI, response_model_exclude_none=True)
def city_view(city_id: int) -> list[AnyComponent]:
city = cities_lookup()[city_id]
return demo_page(
*tabs(),
c.Link(components=[c.Text(text='Back')], on_click=BackEvent()),
c.Details(data=city),
title=city.city,
)
class User(BaseModel):
id: int = Field(title='ID')
name: str = Field(title='Name')
dob: date = Field(title='Date of Birth')
enabled: bool | None = None
status_markdown: str | None = Field(default=None, title='Status')
users: list[User] = [
User(id=1, name='John', dob=date(1990, 1, 1), enabled=True, status_markdown='**Active**'),
User(id=2, name='Jane', dob=date(1991, 1, 1), enabled=False, status_markdown='*Inactive*'),
User(id=3, name='Jack', dob=date(1992, 1, 1)),
]
@router.get('/users', response_model=FastUI, response_model_exclude_none=True)
def users_view() -> list[AnyComponent]:
return demo_page(
*tabs(),
c.Table(
data=users,
columns=[
DisplayLookup(field='name', on_click=GoToEvent(url='/table/users/{id}/')),
DisplayLookup(field='dob', mode=DisplayMode.date),
DisplayLookup(field='enabled'),
DisplayLookup(field='status_markdown', mode=DisplayMode.markdown),
],
),
title='Users',
)
def tabs() -> list[AnyComponent]:
return [
c.LinkList(
links=[
c.Link(
components=[c.Text(text='Cities')],
on_click=GoToEvent(url='/table/cities'),
active='startswith:/table/cities',
),
c.Link(
components=[c.Text(text='Users')],
on_click=GoToEvent(url='/table/users'),
active='startswith:/table/users',
),
],
mode='tabs',
class_name='+ mb-4',
),
]
@router.get('/users/{id}/', response_model=FastUI, response_model_exclude_none=True)
def user_profile(id: int) -> list[AnyComponent]:
user: User | None = users[id - 1] if id <= len(users) else None
return demo_page(
*tabs(),
c.Link(components=[c.Text(text='Back')], on_click=BackEvent()),
c.Details(
data=user,
fields=[
DisplayLookup(field='name'),
DisplayLookup(field='dob', mode=DisplayMode.date),
DisplayLookup(field='enabled'),
],
),
title=user.name,
)
================================================
FILE: demo/tests.py
================================================
import re
import pytest
from dirty_equals import IsList, IsStr
from fastapi.testclient import TestClient
from . import app
@pytest.fixture
def client():
with TestClient(app) as test_client:
yield test_client
def test_index(client: TestClient):
r = client.get('/')
assert r.status_code == 200, r.text
assert r.text.startswith('\n')
assert r.headers.get('content-type') == 'text/html; charset=utf-8'
def test_api_root(client: TestClient):
r = client.get('/api/')
assert r.status_code == 200
data = r.json()
assert data == [
{
'text': 'FastUI Demo',
'type': 'PageTitle',
},
{
'title': 'FastUI Demo',
'titleEvent': {'url': '/', 'type': 'go-to'},
'startLinks': IsList(length=4),
'endLinks': [],
'type': 'Navbar',
},
{
'components': [
{
'text': IsStr(regex='This site provides a demo of.*', regex_flags=re.DOTALL),
'type': 'Markdown',
},
],
'type': 'Page',
},
{
'extraText': 'FastUI Demo',
'links': IsList(length=3),
'type': 'Footer',
},
]
def get_menu_links():
"""
This is pretty cursory, we just go through the menu and load each page.
"""
with TestClient(app) as client:
r = client.get('/api/')
assert r.status_code == 200
data = r.json()
for link in data[1]['startLinks']:
url = link['onClick']['url']
yield pytest.param(f'/api{url}', id=url)
@pytest.mark.parametrize('url', get_menu_links())
def test_menu_links(client: TestClient, url: str):
r = client.get(url)
assert r.status_code == 200
data = r.json()
assert isinstance(data, list)
# def test_forms_validate_correct_select_multiple(client: TestClient):
# countries = client.get('api/forms/search', params={'q': None})
# countries_options = countries.json()['options']
# r = client.post(
# 'api/forms/select',
# data={
# 'select_single': ToolEnum._member_names_[0],
# 'select_multiple': ToolEnum._member_names_[0],
# 'search_select_single': countries_options[0]['options'][0]['value'],
# 'search_select_multiple': countries_options[0]['options'][0]['value'],
# },
# )
# assert r.status_code == 200
# TODO tests for forms, including submission
================================================
FILE: docs/api/python_components.md
================================================
# Python Components
::: fastui.components
handler: python
options:
inherited_members: true
docstring_options:
ignore_init_summary: false
members:
- Text
- Paragraph
- PageTitle
- Div
- Page
- Heading
- Markdown
- Code
- Json
- Button
- Link
- LinkList
- Navbar
- Modal
- ServerLoad
- Image
- Iframe
- FireEvent
- Error
- Spinner
- Toast
- Custom
- Table
- Pagination
- Display
- Details
- Form
- FormField
- ModelForm
- Footer
- AnyComponent
- FormFieldBoolean
- FormFieldFile
- FormFieldInput
- FormFieldSelect
- FormFieldSelectSearch
================================================
FILE: docs/api/typescript_components.md
================================================
# TypeScript Components
!!! warning "🚧 Work in Progress"
This page is a work in progress.
================================================
FILE: docs/extra/tweaks.css
================================================
/* Revert hue value to that of pre mkdocs-material v9.4.0 */
[data-md-color-scheme='slate'] {
--md-hue: 230;
--md-default-bg-color: hsla(230, 15%, 21%, 1);
}
================================================
FILE: docs/guide.md
================================================
!!! warning "🚧 Work in Progress"
This page is a work in progress.
================================================
FILE: docs/index.md
================================================
# FastUI
## The Principle
FastUI is a new way to build web application user interfaces defined by declarative Python code.
This means:
- **If you're a Python developer** — you can build responsive web applications using React without writing a single line of JavaScript, or touching `npm`.
- **If you're a frontend developer** — you can concentrate on building magical components that are truly reusable, no copy-pasting components for each view.
- **For everyone** — a true separation of concerns, the backend defines the entire application; while the frontend is free to implement just the user interface
At its heart, FastUI is a set of matching [Pydantic](https://docs.pydantic.dev) models and TypeScript interfaces that allow you to define a user interface. This interface is validated at build time by TypeScript and pyright/mypy and at runtime by Pydantic.
You can see a simple demo of an application built with FastUI [here](https://fastui-demo.onrender.com).
## The Practice - Installation
FastUI is made up of 4 things:
- [`fastui` PyPI package](https://pypi.python.org/pypi/fastui) — Pydantic models for UI components, and some utilities. While it works well with [FastAPI](https://fastapi.tiangolo.com) it doesn't depend on FastAPI, and most of it could be used with any python web framework.
- [`@pydantic/fastui` npm package](https://www.npmjs.com/package/@pydantic/fastui) — a React TypeScript package that lets you reuse the machinery and types of FastUI while implementing your own components
- [`@pydantic/fastui-bootstrap` npm package](https://www.npmjs.com/package/@pydantic/fastui-bootstrap) — implementation/customisation of all FastUI components using [Bootstrap](https://getbootstrap.com)
- [`@pydantic/fastui-prebuilt` npm package](https://www.jsdelivr.com/package/npm/@pydantic/fastui-prebuilt) (available on [jsdelivr.com CDN](https://www.jsdelivr.com/package/npm/@pydantic/fastui-prebuilt)) providing a pre-built version of the FastUI React app so you can use it without installing any npm packages or building anything yourself. The Python package provides a simple HTML page to serve this app.
## Usage
Here's a simple but complete FastAPI application that uses FastUI to show some user profiles:
```python
from datetime import date
from fastapi import FastAPI, HTTPException
from fastapi.responses import HTMLResponse
from fastui import FastUI, AnyComponent, prebuilt_html, components as c
from fastui.components.display import DisplayMode, DisplayLookup
from fastui.events import GoToEvent, BackEvent
from pydantic import BaseModel, Field
app = FastAPI()
class User(BaseModel):
id: int
name: str
dob: date = Field(title='Date of Birth')
# define some users
users = [
User(id=1, name='John', dob=date(1990, 1, 1)),
User(id=2, name='Jack', dob=date(1991, 1, 1)),
User(id=3, name='Jill', dob=date(1992, 1, 1)),
User(id=4, name='Jane', dob=date(1993, 1, 1)),
]
@app.get("/api/", response_model=FastUI, response_model_exclude_none=True)
def users_table() -> list[AnyComponent]:
"""
Show a table of four users, `/api` is the endpoint the frontend will connect to
when a user visits `/` to fetch components to render.
"""
return [
c.Page( # Page provides a basic container for components
components=[
c.Heading(text='Users', level=2), # renders `Users `
c.Table(
data=users,
# define two columns for the table
columns=[
# the first is the users, name rendered as a link to their profile
DisplayLookup(field='name', on_click=GoToEvent(url='/user/{id}/')),
# the second is the date of birth, rendered as a date
DisplayLookup(field='dob', mode=DisplayMode.date),
],
),
]
),
]
@app.get("/api/user/{user_id}/", response_model=FastUI, response_model_exclude_none=True)
def user_profile(user_id: int) -> list[AnyComponent]:
"""
User profile page, the frontend will fetch this when the user visits `/user/{id}/`.
"""
try:
user = next(u for u in users if u.id == user_id)
except StopIteration:
raise HTTPException(status_code=404, detail="User not found")
return [
c.Page(
components=[
c.Heading(text=user.name, level=2),
c.Link(components=[c.Text(text='Back')], on_click=BackEvent()),
c.Details(data=user),
]
),
]
@app.get('/{path:path}')
async def html_landing() -> HTMLResponse:
"""Simple HTML page which serves the React app, comes last as it matches all paths."""
return HTMLResponse(prebuilt_html(title='FastUI Demo'))
```
Which renders like this:

Of course, that's a very simple application, the [full demo](https://fastui-demo.onrender.com) is more complete.
### The Principle (long version)
FastUI is an implementation of the RESTful principle; but not as it's usually understood, instead I mean the principle defined in the original [PhD dissertation](https://ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm) by Roy Fielding, and excellently summarised in [this essay on htmx.org](https://htmx.org/essays/how-did-rest-come-to-mean-the-opposite-of-rest/) (HTMX people, I'm sorry to use your article to promote React which I know you despise 🙏).
The RESTful principle as described in the HTMX article is that the frontend doesn't need to (and shouldn't) know anything about the application you're building. Instead, it should just provide all the components you need to construct the interface, the backend can then tell the frontend what to do.
Think of your frontend as a puppet, and the backend as the hand within it — the puppet doesn't need to know what to say, that's kind of the point.
Building an application this way has a number of significant advantages:
- You only need to write code in one place to build a new feature — add a new view, change the behavior of an existing view or alter the URL structure
- Deploying the front and backend can be completely decoupled, provided the frontend knows how to render all the components the backend is going to ask it to use, you're good to go
- You should be able to reuse a rich set of opensource components, they should end up being better tested and more reliable than anything you could build yourself, this is possible because the components need no context about how they're going to be used (note: since FastUI is brand new, this isn't true yet, hopefully we get there)
- We can use Pydantic, TypeScript and JSON Schema to provide guarantees that the two sides are communicating with an agreed schema
In the abstract, FastUI is like the opposite of GraphQL but with the same goal — GraphQL lets frontend developers extend an application without any new backend development; FastUI lets backend developers extend an application without any new frontend development.
#### Beyond Python and React
Of course, this principle shouldn't be limited to Python and React applications — provided we use the same set of agreed schemas and encoding to communicate, we should be able to use any frontend and backend that implements the schema. Interchangeably.
This could mean:
- Implementing a web frontend using another JS framework like Vue — lots of work, limited value
- Implementing a web frontend using an edge server, so the browser just sees HTML — lots of work but very valuable
- Implementing frontends for other platforms like mobile or IOT — lots of work, no idea if it's actually a good idea?
- Implementing the component models in another language like Rust or Go — since there's actually not that much code in the backend, so this would be a relatively small and mechanical task
================================================
FILE: docs/plugins.py
================================================
import os
import re
from typing import Match
from mkdocs.config import Config
from mkdocs.structure.files import Files
from mkdocs.structure.pages import Page
try:
import pytest
except ImportError:
pytest = None
def on_pre_build(config: Config):
pass
def on_files(files: Files, config: Config) -> Files:
return remove_files(files)
def remove_files(files: Files) -> Files:
to_remove = []
for file in files:
if file.src_path in {'plugins.py'}:
to_remove.append(file)
elif file.src_path.startswith('__pycache__/'):
to_remove.append(file)
for f in to_remove:
files.remove(f)
return files
def on_page_markdown(markdown: str, page: Page, config: Config, files: Files) -> str:
markdown = remove_code_fence_attributes(markdown)
return add_version(markdown, page)
def add_version(markdown: str, page: Page) -> str:
if page.file.src_uri == 'index.md':
version_ref = os.getenv('GITHUB_REF')
if version_ref and version_ref.startswith('refs/tags/'):
version = re.sub('^refs/tags/', '', version_ref.lower())
url = f'https://github.com/pydantic/FastUI/releases/tag/{version}'
version_str = f'Documentation for version: [{version}]({url})'
elif sha := os.getenv('GITHUB_SHA'):
sha = sha[:7]
url = f'https://github.com/pydantic/FastUI/commit/{sha}'
version_str = f'Documentation for development version: [{sha}]({url})'
else:
version_str = 'Documentation for development version'
markdown = re.sub(r'{{ *version *}}', version_str, markdown)
return markdown
def remove_code_fence_attributes(markdown: str) -> str:
"""
There's no way to add attributes to code fences that works with both pycharm and mkdocs, hence we use
`py key="value"` to provide attributes to pytest-examples, then remove those attributes here.
https://youtrack.jetbrains.com/issue/IDEA-297873 & https://python-markdown.github.io/extensions/fenced_code_blocks/
"""
def remove_attrs(match: Match[str]) -> str:
suffix = re.sub(
r' (?:test|lint|upgrade|group|requires|output|rewrite_assert)=".+?"', '', match.group(2), flags=re.M
)
return f'{match.group(1)}{suffix}'
return re.sub(r'^( *``` *py)(.*)', remove_attrs, markdown, flags=re.M)
================================================
FILE: mkdocs.yml
================================================
site_name: FastUI
site_description: Build web application user interfaces defined by declarative Python code.
site_url: https://docs.pydantic.dev/fastui/
theme:
name: 'material'
palette:
- media: "(prefers-color-scheme: light)"
scheme: default
primary: pink
accent: pink
toggle:
icon: material/lightbulb-outline
name: "Switch to dark mode"
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: pink
accent: pink
toggle:
icon: material/lightbulb
name: "Switch to light mode"
features:
- content.code.annotate
- content.tabs.link
- content.code.copy
- announce.dismiss
- navigation.tabs
- search.suggest
- search.highlight
logo: assets/logo-white.svg
favicon: assets/favicon.png
repo_name: pydantic/FastUI
repo_url: https://github.com/pydantic/FastUI
edit_uri: ''
# https://www.mkdocs.org/user-guide/configuration/#validation
validation:
omitted_files: warn
absolute_links: warn
unrecognized_links: warn
extra_css:
- 'extra/tweaks.css'
# TODO: add flarelytics support
# extra_javascript:
# - '/flarelytics/client.js'
markdown_extensions:
- toc:
permalink: true
- admonition
- pymdownx.details
- pymdownx.extra
- pymdownx.superfences
- pymdownx.highlight:
anchor_linenums: true
- pymdownx.inlinehilite
- pymdownx.snippets
- attr_list
- md_in_html
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji
emoji_generator: !!python/name:material.extensions.emoji.to_svg
watch:
- src
plugins:
- search
- mkdocstrings:
handlers:
python:
paths:
- src/python-fastui
options:
members_order: source
separate_signature: true
docstring_options:
ignore_init_summary: true
merge_init_into_class: true
show_signature_annotations: true
signature_crossrefs: true
- mkdocs-simple-hooks:
hooks:
on_pre_build: 'docs.plugins:on_pre_build'
on_files: 'docs.plugins:on_files'
on_page_markdown: 'docs.plugins:on_page_markdown'
nav:
- Introduction: index.md
- Guide: guide.md
- API Documentation:
- Python Components: api/python_components.md
- TypeScript Components: api/typescript_components.md
================================================
FILE: package.json
================================================
{
"name": "FastUI",
"private": true,
"type": "module",
"workspaces": [
"src/*"
],
"scripts": {
"dev": "npm run --workspace=@pydantic/fastui-prebuilt dev",
"build": "npm run --workspaces prepublishOnly",
"typecheck": "npm run --workspaces typecheck",
"lint": "eslint src --ext .ts,.tsx --report-unused-disable-directives --max-warnings 0",
"lint-fix": "npm run lint -- --fix",
"prettier": "prettier --write",
"format": "npm run prettier -- . && npm run lint-fix",
"generate-json-schema": "./src/python-fastui/tests/react-fastui-json-schema.sh"
},
"prettier": {
"singleQuote": true,
"semi": false,
"trailingComma": "all",
"tabWidth": 2,
"printWidth": 119,
"bracketSpacing": true
},
"devDependencies": {
"@types/node": "^20.9.1",
"@types/react": "^18.2.15",
"@types/react-dom": "^18.2.7",
"@typescript-eslint/eslint-plugin": "^6.0.0",
"@typescript-eslint/parser": "^6.0.0",
"eslint": "^8.53.0",
"eslint-config-prettier": "^9.0.0",
"eslint-config-standard": "^17.1.0",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.4",
"eslint-plugin-simple-import-sort": "^10.0.0",
"json-schema-to-typescript": "^15.0.4",
"typescript": "^5.0.2"
},
"dependencies": {
"prettier": "^3.2.5",
"typedoc": "^0.25.13"
}
}
================================================
FILE: pyproject.toml
================================================
# this is not the used for the python package "fastui",
# for that see packages/python-fastui/pyproject.toml
[tool.ruff]
line-length = 120
extend-select = ["Q", "RUF100", "UP", "I"]
flake8-quotes = {inline-quotes = "single", multiline-quotes = "double"}
format.quote-style="single"
target-version = "py310"
[tool.pyright]
include = ["src/python-fastui/fastui"]
[tool.pytest.ini_options]
testpaths = [
"src/python-fastui/tests",
"demo/tests.py",
]
xfail_strict = true
filterwarnings = ["error"]
asyncio_mode = "auto"
[tool.coverage.run]
source = ["src/python-fastui/fastui"]
omit = [
"src/python-fastui/fastui/__main__.py",
"src/python-fastui/fastui/generate_typescript.py",
]
[tool.coverage.report]
precision = 2
exclude_lines = [
'pragma: no cover',
'raise NotImplementedError',
'if TYPE_CHECKING:',
'if typing.TYPE_CHECKING:',
'@overload',
'@typing.overload',
'\(Protocol\):$',
]
================================================
FILE: requirements/docs.in
================================================
mkdocs
mkdocs-material
mkdocs-simple-hooks
mkdocstrings[python]
mkdocs-redirects
mkdocs-material-extensions
================================================
FILE: requirements/docs.txt
================================================
#
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --output-file=requirements/docs.txt requirements/docs.in
#
babel==2.14.0
# via mkdocs-material
certifi==2024.2.2
# via requests
charset-normalizer==3.3.2
# via requests
click==8.1.7
# via
# mkdocs
# mkdocstrings
colorama==0.4.6
# via
# griffe
# mkdocs-material
ghp-import==2.1.0
# via mkdocs
griffe==0.44.0
# via mkdocstrings-python
idna==3.7
# via requests
jinja2==3.1.3
# via
# mkdocs
# mkdocs-material
# mkdocstrings
markdown==3.6
# via
# mkdocs
# mkdocs-autorefs
# mkdocs-material
# mkdocstrings
# pymdown-extensions
markupsafe==2.1.5
# via
# jinja2
# mkdocs
# mkdocs-autorefs
# mkdocstrings
mergedeep==1.3.4
# via mkdocs
mkdocs==1.5.3
# via
# -r requirements/docs.in
# mkdocs-autorefs
# mkdocs-material
# mkdocs-redirects
# mkdocs-simple-hooks
# mkdocstrings
mkdocs-autorefs==1.0.1
# via mkdocstrings
mkdocs-material==9.5.18
# via -r requirements/docs.in
mkdocs-material-extensions==1.3.1
# via
# -r requirements/docs.in
# mkdocs-material
mkdocs-redirects==1.2.1
# via -r requirements/docs.in
mkdocs-simple-hooks==0.1.5
# via -r requirements/docs.in
mkdocstrings[python]==0.24.3
# via
# -r requirements/docs.in
# mkdocstrings-python
mkdocstrings-python==1.10.0
# via mkdocstrings
packaging==24.0
# via mkdocs
paginate==0.5.6
# via mkdocs-material
pathspec==0.12.1
# via mkdocs
platformdirs==4.2.0
# via
# mkdocs
# mkdocstrings
pygments==2.17.2
# via mkdocs-material
pymdown-extensions==10.8
# via
# mkdocs-material
# mkdocstrings
python-dateutil==2.9.0.post0
# via ghp-import
pyyaml==6.0.1
# via
# mkdocs
# pymdown-extensions
# pyyaml-env-tag
pyyaml-env-tag==0.1
# via mkdocs
regex==2024.4.16
# via mkdocs-material
requests==2.31.0
# via mkdocs-material
six==1.16.0
# via python-dateutil
urllib3==2.2.1
# via requests
watchdog==4.0.0
# via mkdocs
================================================
FILE: src/npm-fastui/LICENSE
================================================
The MIT License (MIT)
Copyright (c) 2023 to present Pydantic Services inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: src/npm-fastui/README.md
================================================
# FastUI
React frontend for [FastUI](https://github.com/pydantic/FastUI).
================================================
FILE: src/npm-fastui/package.json
================================================
{
"name": "@pydantic/fastui",
"version": "0.0.26",
"description": "Build better UIs faster.",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"author": "Samuel Colvin",
"license": "MIT",
"homepage": "https://github.com/pydantic/fastui",
"private": false,
"keywords": [
"fastui",
"jsx",
"typescript",
"react",
"fastapi"
],
"scripts": {
"prepublishOnly": "rm -rf dist && tsc",
"typecheck": "tsc --noEmit",
"typewatch": "tsc --noEmit --watch"
},
"dependencies": {
"@microsoft/fetch-event-source": "^2.0.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-markdown": "^9.0.1",
"react-select": "^5.8.0",
"react-syntax-highlighter": "^15.5.0",
"remark-gfm": "^4.0.0"
},
"devDependencies": {
"@types/react-syntax-highlighter": "^15.5.10"
}
}
================================================
FILE: src/npm-fastui/src/Defaults.tsx
================================================
import { FC, ReactNode } from 'react'
export const DefaultNotFound: FC<{ url: string }> = ({ url }) => Page not found: {url}
// default here does nothing
export const DefaultTransition: FC<{ children: ReactNode; transitioning: boolean }> = ({ children }) => (
{children}
)
================================================
FILE: src/npm-fastui/src/components/Code.tsx
================================================
import { lazy } from 'react'
export const CodeComp = lazy(() => import('./CodeLazy'))
================================================
FILE: src/npm-fastui/src/components/CodeLazy.tsx
================================================
import * as codeStyles from 'react-syntax-highlighter/dist/esm/styles/prism'
import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter'
import type { Code } from '../models'
import { useClassName } from '../hooks/className'
export default function (props: Code) {
const { text, language, codeStyle } = props
const codeLookup = codeStyle as keyof typeof codeStyles
const style = (codeStyle && codeStyles[codeLookup]) || codeStyles.coldarkCold
return (
{text}
)
}
================================================
FILE: src/npm-fastui/src/components/Custom.tsx
================================================
import { FC } from 'react'
import type { Custom } from '../models'
import { DisplayError } from '../hooks/error'
import { JsonComp } from './Json'
export const CustomComp: FC = (props) => {
const { data, subType, library } = props
const description = [`The custom component "${subType}"`]
if (library) {
description.push(`from library "${library}"`)
}
description.push(`has no implementation with this frontend app.`)
return (
Custom component data:
)
}
================================================
FILE: src/npm-fastui/src/components/FireEvent.tsx
================================================
import { FC, useEffect } from 'react'
import type { FireEvent } from '../models'
import { useFireEvent } from '../events'
export const FireEventComp: FC = ({ event, message }) => {
const { fireEvent } = useFireEvent()
useEffect(() => {
// debounce the event so changes to fireEvent (from location changes) don't trigger the event many times
const clear = setTimeout(() => fireEvent(event), 50)
return () => clearTimeout(clear)
}, [fireEvent, event])
return <>{message}>
}
================================================
FILE: src/npm-fastui/src/components/FormField.tsx
================================================
import { FC, useState } from 'react'
import AsyncSelect from 'react-select/async'
import Select, { StylesConfig } from 'react-select'
import type {
FormFieldInput,
FormFieldTextarea,
FormFieldBoolean,
FormFieldFile,
FormFieldSelect,
FormFieldSelectSearch,
SelectOption,
SelectOptions,
SelectGroup,
} from '../models'
import { useClassName } from '../hooks/className'
import { debounce, useRequest } from '../tools'
type PrivateOnChange = () => void
interface FormFieldInputProps extends FormFieldInput {
onChange?: PrivateOnChange
}
export const FormFieldInputComp: FC = (props) => {
const { name, placeholder, required, htmlType, locked, autocomplete, onChange } = props
return (
)
}
interface FormFieldTextareaProps extends FormFieldTextarea {
onChange?: PrivateOnChange
}
export const FormFieldTextareaComp: FC = (props) => {
const { name, placeholder, required, locked, rows, cols, autocomplete } = props
return (
)
}
interface FormFieldBooleanProps extends FormFieldBoolean {
onChange?: PrivateOnChange
}
export const FormFieldBooleanComp: FC = (props) => {
const { name, required, locked, onChange } = props
return (
)
}
interface FormFieldFileProps extends FormFieldFile {
onChange?: PrivateOnChange
}
export const FormFieldFileComp: FC = (props) => {
const { name, required, locked, multiple, accept } = props
return (
)
}
// cheat slightly and match bootstrap 😱
// TODO make this configurable as an argument to `FastUI`
const styles: StylesConfig = {
control: (base) => ({ ...base, borderRadius: '0.375rem', border: '1px solid #dee2e6' }),
}
interface FormFieldSelectProps extends FormFieldSelect {
onChange?: PrivateOnChange
}
export const FormFieldSelectComp: FC = (props) => {
if (props.vanilla) {
return
} else {
return
}
}
export const FormFieldSelectVanillaComp: FC = (props) => {
const { name, required, locked, options, multiple, initial, placeholder, onChange, autocomplete } = props
const className = useClassName(props)
const classNameSelect = useClassName(props, { el: 'select' })
return (
onChange && onChange()}
autoComplete={autocomplete}
>
{multiple ? null : }
{options.map((option, i) => (
))}
)
}
export const FormFieldSelectReactComp: FC = (props) => {
const { name, required, locked, options, multiple, initial, placeholder, onChange } = props
const className = useClassName(props)
const classNameSelectReact = useClassName(props, { el: 'select-react' })
let value
if (Array.isArray(initial)) {
value = findDefaultArray(options, initial)
} else {
value = findDefault(options, initial)
}
const reactSelectOnChanged = () => {
// TODO this is a hack to wait for the input to be updated, can we do better?
setTimeout(() => {
onChange && onChange()
}, 50)
}
return (
)
}
const SelectOptionComp: FC<{ option: SelectOption | SelectGroup }> = ({ option }) => {
if ('options' in option) {
return (
{option.options.map((o) => (
))}
)
} else {
return {option.label}
}
}
function findDefaultArray(options: SelectOptions, value: string[]): SelectOption[] {
const foundValues = value.map((v) => findDefault(options, v))
return foundValues.filter((v) => v) as SelectOption[]
}
function findDefault(options: SelectOptions, value?: string): SelectOption | undefined {
for (const option of options) {
if ('options' in option) {
const found = findDefault(option.options, value)
if (found) {
return found
}
} else if (option.value === value) {
return option
}
}
}
interface FormFieldSelectSearchProps extends FormFieldSelectSearch {
onChange?: PrivateOnChange
}
export const FormFieldSelectSearchComp: FC = (props) => {
const { name, required, locked, searchUrl, initial, multiple, placeholder, onChange } = props
const [isLoading, setIsLoading] = useState(false)
const request = useRequest()
const loadOptions = debounce((inputValue: string, callback: (options: SelectOptions) => void) => {
setIsLoading(true)
request({
url: searchUrl,
query: { q: inputValue },
})
.then(([, response]) => {
const { options } = response as { options: SelectOptions }
callback(options)
setIsLoading(false)
})
.catch(() => {
setIsLoading(false)
})
}, props.debounce ?? 300)
const reactSelectOnChanged = () => {
// TODO this is a hack to wait for the input to be updated, can we do better?
setTimeout(() => {
onChange && onChange()
}, 50)
}
return (
(inputValue ? 'No results' : 'Type to search')}
name={name}
required={required}
isDisabled={locked}
isLoading={isLoading}
aria-describedby={descId(props)}
styles={styles}
placeholder={placeholder}
onChange={reactSelectOnChanged}
/>
)
}
const Label: FC = (props) => {
let { title } = props
if (!Array.isArray(title)) {
title = [title]
}
return (
{title.map((t, i) => (
{i > 0 ? <> ›> : null} {t}
))}
)
}
export type FormFieldProps =
| FormFieldInputProps
| FormFieldTextareaProps
| FormFieldBooleanProps
| FormFieldFileProps
| FormFieldSelectProps
| FormFieldSelectSearchProps
const inputId = (props: FormFieldProps) => `form-field-${props.name}`
const descId = (props: FormFieldProps) => (props.description ? `${inputId(props)}-desc` : undefined)
const ErrorDescription: FC = (props) => {
const { description, error } = props
const descClassName = useClassName(props, { el: 'description' })
const errorClassName = useClassName(props, { el: 'error' })
return (
<>
{description ? (
{description}
) : null}
{error ? {error}
: null}
>
)
}
================================================
FILE: src/npm-fastui/src/components/Iframe.tsx
================================================
import { FC } from 'react'
import type { Iframe } from '../models'
export const IframeComp: FC