diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index ab1f416..0000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
-# Ignored default folder with query files
-/queries/
-# Datasource local storage ignored files
-/dataSources/
-/dataSources.local.xml
-# Editor-based HTTP Client requests
-/httpRequests/
diff --git a/.idea/SatForecast.iml b/.idea/SatForecast.iml
deleted file mode 100644
index eab9ae5..0000000
--- a/.idea/SatForecast.iml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
deleted file mode 100644
index 105ce2d..0000000
--- a/.idea/inspectionProfiles/profiles_settings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index b9bf2ff..0000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index 262f5a0..0000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 35eb1dd..0000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/main.py b/main.py
deleted file mode 100644
index adfd90f..0000000
--- a/main.py
+++ /dev/null
@@ -1,507 +0,0 @@
-import tkinter as tk
-from tkinter import ttk, messagebox
-from PIL import Image, ImageTk
-import requests
-from io import BytesIO
-import math
-import time
-from datetime import datetime
-import threading
-from pathlib import Path
-import random
-
-
-class RateLimiter:
- def __init__(self, max_per_second=1):
- self.min_interval = 1.0 / max_per_second
- self.last_request = 0
-
- def wait(self):
- elapsed = time.time() - self.last_request
- if elapsed < self.min_interval:
- time.sleep(self.min_interval - elapsed)
- self.last_request = time.time()
-
-
-class WeatherMapApp:
- def __init__(self, root):
- self.root = root
- self.root.title("SatForecast")
- self.root.geometry("1200x800")
-
- # API ключи
- self.owm_api_key = "cc437a23f6a217cd5859bd2d4dc9b6f8"
-
- # Rate limiter
- self.rate_limiter = RateLimiter(max_per_second=2)
-
- # Настройки карты
- self.lon = 37.6173
- self.lat = 55.7558
- self.zoom = 8
- self.dragging = False
- self.drag_start_x = 0
- self.drag_start_y = 0
-
- # Кэш тайлов
- self.cache_dir = Path("tile_cache")
- self.cache_dir.mkdir(exist_ok=True)
-
- # Маркеры
- self.markers = [
- {"name": "Москва", "lat": 55.7558, "lon": 37.6173},
- {"name": "СПб", "lat": 59.9343, "lon": 30.3351},
- ]
-
- # Настройка интерфейса
- self.setup_ui()
-
- # Загрузка данных
- self.load_map()
- self.load_forecast()
-
- def setup_ui(self):
- # Основной контейнер
- main_frame = ttk.Frame(self.root)
- main_frame.pack(fill='both', expand=True)
-
- # Левая панель управления
- control_panel = ttk.Frame(main_frame, width=300)
- control_panel.pack(side='left', fill='y', padx=5, pady=5)
- control_panel.pack_propagate(False)
-
- # Поиск города
- ttk.Label(control_panel, text="Поиск города:").pack(pady=5)
- search_frame = ttk.Frame(control_panel)
- search_frame.pack(fill='x', padx=5)
-
- self.city_entry = ttk.Entry(search_frame)
- self.city_entry.pack(side='left', fill='x', expand=True)
- self.city_entry.bind('', lambda e: self.search_city())
-
- ttk.Button(search_frame, text="🔍", width=3,
- command=self.search_city).pack(side='left')
-
- # Список городов
- ttk.Label(control_panel, text="Избранные города:").pack(pady=5)
- self.city_listbox = tk.Listbox(control_panel, height=8)
- self.city_listbox.pack(fill='x', padx=5)
- self.city_listbox.bind('<>', self.on_city_select)
-
- for marker in self.markers:
- self.city_listbox.insert(tk.END, marker['name'])
-
- # Управление маркерами
- marker_frame = ttk.Frame(control_panel)
- marker_frame.pack(fill='x', padx=5, pady=5)
-
- ttk.Button(marker_frame, text="Добавить маркер",
- command=self.add_current_location).pack(fill='x')
- ttk.Button(marker_frame, text="Удалить маркер",
- command=self.remove_marker).pack(fill='x')
-
- # Слои карты
- ttk.Label(control_panel, text="Слой карты:").pack(pady=5)
-
- layers = [
- ("Спутник (ESRI)", "esri_sat"),
- ("Спутник (Google)", "google_sat"),
- ("OpenStreetMap", "osm"),
- ("CartoDB", "cartodb"),
- ("Температура", "temp"),
- ("Облачность", "clouds"),
- ("Осадки", "precipitation")
- ]
-
- self.layer_var = tk.StringVar(value="esri_sat")
- for text, value in layers:
- ttk.Radiobutton(control_panel, text=text, variable=self.layer_var,
- value=value, command=self.load_map).pack(anchor='w', padx=20)
-
- # Прогноз погоды
- ttk.Label(control_panel, text="Прогноз погоды:").pack(pady=10)
- self.forecast_text = tk.Text(control_panel, height=12, width=35)
- self.forecast_text.pack(fill='both', expand=True, padx=5)
-
- # Карта
- map_frame = ttk.Frame(main_frame)
- map_frame.pack(side='right', fill='both', expand=True)
-
- self.canvas = tk.Canvas(map_frame, bg='#1a1a2e')
- self.canvas.pack(fill='both', expand=True)
-
- # Привязка событий
- self.canvas.bind('', self.start_drag)
- self.canvas.bind('', self.drag_map)
- self.canvas.bind('', self.end_drag)
- self.canvas.bind('', self.mouse_zoom)
-
- # Кнопки масштаба
- zoom_frame = ttk.Frame(map_frame)
- zoom_frame.place(relx=1.0, rely=0.5, anchor='e', x=-10)
-
- ttk.Button(zoom_frame, text="+", width=3,
- command=lambda: self.change_zoom(1)).pack()
- ttk.Button(zoom_frame, text="-", width=3,
- command=lambda: self.change_zoom(-1)).pack()
-
- # Статус бар
- self.status_label = ttk.Label(self.root, text="Готово")
- self.status_label.pack(side='bottom', fill='x')
-
- def get_cache_path(self, layer, x, y, zoom):
- cache_subdir = self.cache_dir / layer / str(zoom) / str(x)
- cache_subdir.mkdir(parents=True, exist_ok=True)
- return cache_subdir / f"{y}.png"
-
- def download_tile_cached(self, url, layer, x, y, zoom):
- cache_path = self.get_cache_path(layer, x, y, zoom)
-
- # Проверяем кэш
- if cache_path.exists():
- max_age = 3 * 3600 if "sat" in layer else 24 * 3600
- if datetime.now().timestamp() - cache_path.stat().st_mtime < max_age:
- try:
- return Image.open(cache_path)
- except:
- pass
-
- try:
- headers = {
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36',
- 'Accept': 'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8',
- 'Accept-Language': 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7',
- 'Referer': 'https://www.openstreetmap.org/',
- 'Sec-Fetch-Dest': 'image',
- 'Sec-Fetch-Mode': 'no-cors',
- 'Sec-Fetch-Site': 'cross-site',
- }
-
- self.rate_limiter.wait()
-
- response = requests.get(url, headers=headers, timeout=15)
-
- if response.status_code == 200:
- content_type = response.headers.get('content-type', '')
- if 'image' in content_type or len(response.content) > 1000:
- img = Image.open(BytesIO(response.content))
- img.save(cache_path)
- print(f"✓ {layer}: {x},{y} zoom={zoom}")
- return img
- else:
- print(f"✗ Не изображение: {url[:80]}")
- else:
- print(f"✗ {response.status_code}: {url[:80]}")
-
- except Exception as e:
- print(f"✗ Ошибка: {e}")
-
- # Возвращаем из кэша
- if cache_path.exists():
- try:
- return Image.open(cache_path)
- except:
- pass
-
- return None
-
- def get_tile_url(self, x, y, zoom):
- """Рабочие бесплатные URL для тайлов"""
- layer = self.layer_var.get()
-
- if layer == "esri_sat":
- # ESRI спутниковые снимки (бесплатно, без ключа)
- return f"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{zoom}/{y}/{x}"
-
- elif layer == "google_sat":
- # Google Maps спутник (бесплатно для некоммерческого использования)
- # Используем разные поддомены для распределения нагрузки
- subdomain = random.choice(['0', '1', '2', '3'])
- return f"https://mt{subdomain}.google.com/vt/lyrs=s&x={x}&y={y}&z={zoom}"
-
- elif layer == "osm":
- # OpenStreetMap
- subdomain = random.choice(['a', 'b', 'c'])
- return f"https://{subdomain}.tile.openstreetmap.org/{zoom}/{x}/{y}.png"
-
- elif layer == "cartodb":
- # CartoDB Light (красивый стиль)
- return f"https://a.basemaps.cartocdn.com/light_all/{zoom}/{x}/{y}.png"
-
- elif layer == "temp":
- return f"https://tile.openweathermap.org/map/temp_new/{zoom}/{x}/{y}.png?appid={self.owm_api_key}"
-
- elif layer == "clouds":
- return f"https://tile.openweathermap.org/map/clouds_new/{zoom}/{x}/{y}.png?appid={self.owm_api_key}"
-
- elif layer == "precipitation":
- return f"https://tile.openweathermap.org/map/precipitation_new/{zoom}/{x}/{y}.png?appid={self.owm_api_key}"
-
- return None
-
- def lat_lon_to_tile(self, lat, lon, zoom):
- lat_rad = math.radians(lat)
- n = 2.0 ** zoom
- xtile = (lon + 180.0) / 360.0 * n
- ytile = (1.0 - math.asinh(math.tan(lat_rad)) / math.pi) / 2.0 * n
- return xtile, ytile
-
- def load_map(self):
- threading.Thread(target=self._load_map_thread, daemon=True).start()
-
- def _load_map_thread(self):
- self.root.after(0, lambda: self.status_label.config(text="Загрузка карты..."))
-
- self.canvas.delete("tile")
-
- center_x, center_y = self.lat_lon_to_tile(self.lat, self.lon, self.zoom)
- center_x_int = int(center_x)
- center_y_int = int(center_y)
-
- tiles = {}
- for dx in range(-1, 2):
- for dy in range(-1, 2):
- x = center_x_int + dx
- y = center_y_int + dy
-
- url = self.get_tile_url(x, y, self.zoom)
- if url:
- layer = self.layer_var.get()
- img = self.download_tile_cached(url, layer, x, y, self.zoom)
-
- if img:
- tiles[(dx, dy)] = ImageTk.PhotoImage(img)
-
- self.root.after(0, self._display_tiles, tiles, center_x, center_y)
- self.root.after(0, lambda: self.status_label.config(
- text=f"Загружено тайлов: {len(tiles)}/9"))
-
- def _display_tiles(self, tiles, center_x, center_y):
- canvas_width = self.canvas.winfo_width()
- canvas_height = self.canvas.winfo_height()
-
- if canvas_width < 100:
- canvas_width = 800
- canvas_height = 600
-
- tile_size = 256
-
- for (dx, dy), photo in tiles.items():
- x_offset = (center_x - int(center_x)) * tile_size
- y_offset = (center_y - int(center_y)) * tile_size
-
- px = canvas_width / 2 + dx * tile_size - x_offset
- py = canvas_height / 2 + dy * tile_size - y_offset
-
- self.canvas.create_image(px, py, image=photo, anchor='nw', tags="tile")
-
- self.draw_markers()
- self.canvas.tile_images = tiles
-
- def draw_markers(self):
- self.canvas.delete("marker")
-
- canvas_width = self.canvas.winfo_width()
- canvas_height = self.canvas.winfo_height()
-
- for marker in self.markers:
- marker_x, marker_y = self.lat_lon_to_tile(
- marker['lat'], marker['lon'], self.zoom)
-
- center_x, center_y = self.lat_lon_to_tile(self.lat, self.lon, self.zoom)
-
- tile_size = 256
- px = canvas_width / 2 + (marker_x - center_x) * tile_size
- py = canvas_height / 2 + (marker_y - center_y) * tile_size
-
- # Красивый маркер
- self.canvas.create_oval(px - 10, py - 10, px + 10, py + 10,
- fill='#ff4444', outline='white', width=2, tags="marker")
- self.canvas.create_oval(px - 3, py - 3, px + 3, py + 3,
- fill='white', tags="marker")
- self.canvas.create_text(px, py - 20, text=marker['name'],
- fill='white', font=('Arial', 10, 'bold'),
- tags="marker")
-
- def start_drag(self, event):
- self.dragging = True
- self.drag_start_x = event.x
- self.drag_start_y = event.y
-
- def drag_map(self, event):
- if not self.dragging:
- return
-
- dx = event.x - self.drag_start_x
- dy = event.y - self.drag_start_y
-
- self.canvas.move("tile", dx, dy)
- self.canvas.move("marker", dx, dy)
-
- tile_size = 256
- n = 2.0 ** self.zoom
-
- self.lon -= dx / tile_size * 360.0 / n
- self.lat += dy / tile_size * 180.0 / n
-
- self.drag_start_x = event.x
- self.drag_start_y = event.y
-
- if abs(dx) > tile_size / 2 or abs(dy) > tile_size / 2:
- self.load_map()
-
- def end_drag(self, event):
- self.dragging = False
- self.load_map()
-
- def mouse_zoom(self, event):
- if event.delta > 0:
- self.change_zoom(1)
- else:
- self.change_zoom(-1)
-
- def change_zoom(self, delta):
- new_zoom = self.zoom + delta
- if 2 <= new_zoom <= 18:
- self.zoom = new_zoom
- self.load_map()
-
- def search_city(self):
- city = self.city_entry.get().strip()
- if not city:
- return
- threading.Thread(target=self._search_city_thread, args=(city,), daemon=True).start()
-
- def _search_city_thread(self, city):
- try:
- url = "https://nominatim.openstreetmap.org/search"
- params = {
- "q": city,
- "format": "json",
- "limit": 1
- }
- headers = {
- "User-Agent": "SatForecast/1.0"
- }
-
- response = requests.get(url, params=params, headers=headers)
- data = response.json()
-
- if data:
- lat = float(data[0]['lat'])
- lon = float(data[0]['lon'])
- self.root.after(0, lambda: self.set_location(lat, lon, city))
- else:
- self.root.after(0, lambda: messagebox.showinfo("Поиск", "Город не найден"))
- except Exception as e:
- self.root.after(0, lambda: messagebox.showerror("Ошибка", str(e)))
-
- def set_location(self, lat, lon, name):
- self.lat = lat
- self.lon = lon
-
- if not any(m['name'] == name for m in self.markers):
- self.markers.append({"name": name, "lat": lat, "lon": lon})
- self.city_listbox.insert(tk.END, name)
-
- self.load_map()
- self.load_forecast()
-
- def on_city_select(self, event):
- selection = self.city_listbox.curselection()
- if selection:
- index = selection[0]
- if index < len(self.markers):
- marker = self.markers[index]
- self.set_location(marker['lat'], marker['lon'], marker['name'])
-
- def add_current_location(self):
- name = f"Точка {len(self.markers) + 1}"
- self.markers.append({"name": name, "lat": self.lat, "lon": self.lon})
- self.city_listbox.insert(tk.END, name)
- self.draw_markers()
-
- def remove_marker(self):
- selection = self.city_listbox.curselection()
- if selection:
- index = selection[0]
- if index < len(self.markers):
- del self.markers[index]
- self.city_listbox.delete(index)
- self.load_map()
-
- def load_forecast(self):
- threading.Thread(target=self._load_forecast_thread, daemon=True).start()
-
- def _load_forecast_thread(self):
- try:
- # Open-Meteo (бесплатно, без ключа)
- url = "https://api.open-meteo.com/v1/forecast"
- params = {
- "latitude": self.lat,
- "longitude": self.lon,
- "hourly": "temperature_2m,precipitation,wind_speed_10m,cloud_cover",
- "daily": "temperature_2m_max,temperature_2m_min,precipitation_sum",
- "timezone": "auto",
- "forecast_days": 3
- }
-
- response = requests.get(url, params=params)
- data = response.json()
-
- forecast_text = f"📍 Прогноз для координат:\n{self.lat:.2f}, {self.lon:.2f}\n\n"
-
- if 'daily' in data:
- forecast_text += "📅 По дням:\n"
- for i in range(3):
- date = data['daily']['time'][i]
- temp_max = data['daily']['temperature_2m_max'][i]
- temp_min = data['daily']['temperature_2m_min'][i]
- precip = data['daily']['precipitation_sum'][i]
-
- weather_emoji = "☀️" if precip == 0 else "🌧️"
- if temp_max > 30:
- weather_emoji = "🔥"
- elif temp_max < 0:
- weather_emoji = "❄️"
-
- forecast_text += f"{date}: {weather_emoji} {temp_min}°C...{temp_max}°C, 💧{precip}мм\n"
-
- if 'hourly' in data:
- forecast_text += "\n🕐 Ближайшие часы:\n"
- current_hour = datetime.now().hour
- for i in range(current_hour, min(current_hour + 8, len(data['hourly']['time']))):
- time = data['hourly']['time'][i].split('T')[1]
- temp = data['hourly']['temperature_2m'][i]
- wind = data['hourly']['wind_speed_10m'][i]
- clouds = data['hourly']['cloud_cover'][i]
-
- cloud_emoji = "☁️" if clouds > 50 else "🌤️" if clouds > 20 else "☀️"
- forecast_text += f"{time}: {cloud_emoji} {temp}°C, 💨{wind}м/с\n"
-
- self.root.after(0, self._update_forecast_display, forecast_text)
- except Exception as e:
- self.root.after(0, lambda: self.status_label.config(text=f"Ошибка прогноза: {e}"))
-
- def _update_forecast_display(self, text):
- self.forecast_text.delete(1.0, tk.END)
- self.forecast_text.insert(1.0, text)
-
-
-def main():
- root = tk.Tk()
- app = WeatherMapApp(root)
-
- style = ttk.Style()
- style.theme_use('clam')
-
- def on_closing():
- if messagebox.askokcancel("Выход", "Закрыть приложение?"):
- root.destroy()
-
- root.protocol("WM_DELETE_WINDOW", on_closing)
- root.mainloop()
-
-
-if __name__ == "__main__":
- main()
\ No newline at end of file
diff --git a/tile_cache/cartodb/9/311/178.png b/tile_cache/cartodb/9/311/178.png
deleted file mode 100644
index 4bbf1c0..0000000
Binary files a/tile_cache/cartodb/9/311/178.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/311/179.png b/tile_cache/cartodb/9/311/179.png
deleted file mode 100644
index dd4abb4..0000000
Binary files a/tile_cache/cartodb/9/311/179.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/311/180.png b/tile_cache/cartodb/9/311/180.png
deleted file mode 100644
index cd599b1..0000000
Binary files a/tile_cache/cartodb/9/311/180.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/312/178.png b/tile_cache/cartodb/9/312/178.png
deleted file mode 100644
index b644b88..0000000
Binary files a/tile_cache/cartodb/9/312/178.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/312/179.png b/tile_cache/cartodb/9/312/179.png
deleted file mode 100644
index 5c3c9b0..0000000
Binary files a/tile_cache/cartodb/9/312/179.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/312/180.png b/tile_cache/cartodb/9/312/180.png
deleted file mode 100644
index 8961896..0000000
Binary files a/tile_cache/cartodb/9/312/180.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/313/178.png b/tile_cache/cartodb/9/313/178.png
deleted file mode 100644
index 5245d77..0000000
Binary files a/tile_cache/cartodb/9/313/178.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/313/179.png b/tile_cache/cartodb/9/313/179.png
deleted file mode 100644
index cf26698..0000000
Binary files a/tile_cache/cartodb/9/313/179.png and /dev/null differ
diff --git a/tile_cache/cartodb/9/313/180.png b/tile_cache/cartodb/9/313/180.png
deleted file mode 100644
index 38832d9..0000000
Binary files a/tile_cache/cartodb/9/313/180.png and /dev/null differ
diff --git a/tile_cache/clouds/8/155/88.png b/tile_cache/clouds/8/155/88.png
deleted file mode 100644
index d28a1d0..0000000
Binary files a/tile_cache/clouds/8/155/88.png and /dev/null differ
diff --git a/tile_cache/clouds/8/155/89.png b/tile_cache/clouds/8/155/89.png
deleted file mode 100644
index f0a74f8..0000000
Binary files a/tile_cache/clouds/8/155/89.png and /dev/null differ
diff --git a/tile_cache/clouds/8/155/90.png b/tile_cache/clouds/8/155/90.png
deleted file mode 100644
index ea1e8a9..0000000
Binary files a/tile_cache/clouds/8/155/90.png and /dev/null differ
diff --git a/tile_cache/clouds/8/156/88.png b/tile_cache/clouds/8/156/88.png
deleted file mode 100644
index b252e3c..0000000
Binary files a/tile_cache/clouds/8/156/88.png and /dev/null differ
diff --git a/tile_cache/clouds/8/156/89.png b/tile_cache/clouds/8/156/89.png
deleted file mode 100644
index 65f07b2..0000000
Binary files a/tile_cache/clouds/8/156/89.png and /dev/null differ
diff --git a/tile_cache/clouds/8/156/90.png b/tile_cache/clouds/8/156/90.png
deleted file mode 100644
index 779e90c..0000000
Binary files a/tile_cache/clouds/8/156/90.png and /dev/null differ
diff --git a/tile_cache/clouds/8/157/88.png b/tile_cache/clouds/8/157/88.png
deleted file mode 100644
index c21aa8e..0000000
Binary files a/tile_cache/clouds/8/157/88.png and /dev/null differ
diff --git a/tile_cache/clouds/8/157/89.png b/tile_cache/clouds/8/157/89.png
deleted file mode 100644
index fd30248..0000000
Binary files a/tile_cache/clouds/8/157/89.png and /dev/null differ
diff --git a/tile_cache/clouds/8/157/90.png b/tile_cache/clouds/8/157/90.png
deleted file mode 100644
index 6ba4c1a..0000000
Binary files a/tile_cache/clouds/8/157/90.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/623/358.png b/tile_cache/esri_sat/10/623/358.png
deleted file mode 100644
index 70eb126..0000000
Binary files a/tile_cache/esri_sat/10/623/358.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/623/359.png b/tile_cache/esri_sat/10/623/359.png
deleted file mode 100644
index bafcc2c..0000000
Binary files a/tile_cache/esri_sat/10/623/359.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/623/360.png b/tile_cache/esri_sat/10/623/360.png
deleted file mode 100644
index 5d71261..0000000
Binary files a/tile_cache/esri_sat/10/623/360.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/624/358.png b/tile_cache/esri_sat/10/624/358.png
deleted file mode 100644
index 3d69d59..0000000
Binary files a/tile_cache/esri_sat/10/624/358.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/624/359.png b/tile_cache/esri_sat/10/624/359.png
deleted file mode 100644
index 2cafd20..0000000
Binary files a/tile_cache/esri_sat/10/624/359.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/624/360.png b/tile_cache/esri_sat/10/624/360.png
deleted file mode 100644
index 88374ab..0000000
Binary files a/tile_cache/esri_sat/10/624/360.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/625/358.png b/tile_cache/esri_sat/10/625/358.png
deleted file mode 100644
index a025cab..0000000
Binary files a/tile_cache/esri_sat/10/625/358.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/625/359.png b/tile_cache/esri_sat/10/625/359.png
deleted file mode 100644
index 7c8c8c8..0000000
Binary files a/tile_cache/esri_sat/10/625/359.png and /dev/null differ
diff --git a/tile_cache/esri_sat/10/625/360.png b/tile_cache/esri_sat/10/625/360.png
deleted file mode 100644
index d588ce0..0000000
Binary files a/tile_cache/esri_sat/10/625/360.png and /dev/null differ
diff --git a/tile_cache/esri_sat/11/1248/717.png b/tile_cache/esri_sat/11/1248/717.png
deleted file mode 100644
index e07b9bc..0000000
Binary files a/tile_cache/esri_sat/11/1248/717.png and /dev/null differ
diff --git a/tile_cache/esri_sat/11/1248/718.png b/tile_cache/esri_sat/11/1248/718.png
deleted file mode 100644
index 328463a..0000000
Binary files a/tile_cache/esri_sat/11/1248/718.png and /dev/null differ
diff --git a/tile_cache/esri_sat/11/1248/719.png b/tile_cache/esri_sat/11/1248/719.png
deleted file mode 100644
index ab44416..0000000
Binary files a/tile_cache/esri_sat/11/1248/719.png and /dev/null differ
diff --git a/tile_cache/esri_sat/11/1249/717.png b/tile_cache/esri_sat/11/1249/717.png
deleted file mode 100644
index d09a797..0000000
Binary files a/tile_cache/esri_sat/11/1249/717.png and /dev/null differ
diff --git a/tile_cache/esri_sat/12/1249/718.png b/tile_cache/esri_sat/12/1249/718.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/12/1249/718.png and /dev/null differ
diff --git a/tile_cache/esri_sat/12/2498/1435.png b/tile_cache/esri_sat/12/2498/1435.png
deleted file mode 100644
index f2d3e71..0000000
Binary files a/tile_cache/esri_sat/12/2498/1435.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/1249/719.png b/tile_cache/esri_sat/13/1249/719.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/1249/719.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/1250/717.png b/tile_cache/esri_sat/13/1250/717.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/1250/717.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/1250/718.png b/tile_cache/esri_sat/13/1250/718.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/1250/718.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/1250/719.png b/tile_cache/esri_sat/13/1250/719.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/1250/719.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2498/1436.png b/tile_cache/esri_sat/13/2498/1436.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2498/1436.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2498/1437.png b/tile_cache/esri_sat/13/2498/1437.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2498/1437.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2499/1435.png b/tile_cache/esri_sat/13/2499/1435.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2499/1435.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2499/1436.png b/tile_cache/esri_sat/13/2499/1436.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2499/1436.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2499/1437.png b/tile_cache/esri_sat/13/2499/1437.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2499/1437.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2500/1435.png b/tile_cache/esri_sat/13/2500/1435.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2500/1435.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2500/1436.png b/tile_cache/esri_sat/13/2500/1436.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2500/1436.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/2500/1437.png b/tile_cache/esri_sat/13/2500/1437.png
deleted file mode 100644
index a7b54f0..0000000
Binary files a/tile_cache/esri_sat/13/2500/1437.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4995/2871.png b/tile_cache/esri_sat/13/4995/2871.png
deleted file mode 100644
index 90b13b3..0000000
Binary files a/tile_cache/esri_sat/13/4995/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4995/2872.png b/tile_cache/esri_sat/13/4995/2872.png
deleted file mode 100644
index 8c94db2..0000000
Binary files a/tile_cache/esri_sat/13/4995/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4995/2873.png b/tile_cache/esri_sat/13/4995/2873.png
deleted file mode 100644
index 4a09086..0000000
Binary files a/tile_cache/esri_sat/13/4995/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4996/2871.png b/tile_cache/esri_sat/13/4996/2871.png
deleted file mode 100644
index d016ae6..0000000
Binary files a/tile_cache/esri_sat/13/4996/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4996/2872.png b/tile_cache/esri_sat/13/4996/2872.png
deleted file mode 100644
index 469e17c..0000000
Binary files a/tile_cache/esri_sat/13/4996/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4997/2871.png b/tile_cache/esri_sat/13/4997/2871.png
deleted file mode 100644
index 4eea614..0000000
Binary files a/tile_cache/esri_sat/13/4997/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4997/2872.png b/tile_cache/esri_sat/13/4997/2872.png
deleted file mode 100644
index 208404c..0000000
Binary files a/tile_cache/esri_sat/13/4997/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4997/2873.png b/tile_cache/esri_sat/13/4997/2873.png
deleted file mode 100644
index c647269..0000000
Binary files a/tile_cache/esri_sat/13/4997/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4997/2874.png b/tile_cache/esri_sat/13/4997/2874.png
deleted file mode 100644
index 9168a32..0000000
Binary files a/tile_cache/esri_sat/13/4997/2874.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4998/2871.png b/tile_cache/esri_sat/13/4998/2871.png
deleted file mode 100644
index 54c99a8..0000000
Binary files a/tile_cache/esri_sat/13/4998/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4998/2872.png b/tile_cache/esri_sat/13/4998/2872.png
deleted file mode 100644
index abf7b81..0000000
Binary files a/tile_cache/esri_sat/13/4998/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4998/2873.png b/tile_cache/esri_sat/13/4998/2873.png
deleted file mode 100644
index c697c31..0000000
Binary files a/tile_cache/esri_sat/13/4998/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4998/2874.png b/tile_cache/esri_sat/13/4998/2874.png
deleted file mode 100644
index 87897de..0000000
Binary files a/tile_cache/esri_sat/13/4998/2874.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4999/2871.png b/tile_cache/esri_sat/13/4999/2871.png
deleted file mode 100644
index 2d0a312..0000000
Binary files a/tile_cache/esri_sat/13/4999/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4999/2872.png b/tile_cache/esri_sat/13/4999/2872.png
deleted file mode 100644
index 93ae6e4..0000000
Binary files a/tile_cache/esri_sat/13/4999/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4999/2873.png b/tile_cache/esri_sat/13/4999/2873.png
deleted file mode 100644
index 6d93355..0000000
Binary files a/tile_cache/esri_sat/13/4999/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/4999/2874.png b/tile_cache/esri_sat/13/4999/2874.png
deleted file mode 100644
index 51eb861..0000000
Binary files a/tile_cache/esri_sat/13/4999/2874.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/5000/2872.png b/tile_cache/esri_sat/13/5000/2872.png
deleted file mode 100644
index 4a9b252..0000000
Binary files a/tile_cache/esri_sat/13/5000/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/5000/2873.png b/tile_cache/esri_sat/13/5000/2873.png
deleted file mode 100644
index 90e5e45..0000000
Binary files a/tile_cache/esri_sat/13/5000/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/13/5000/2874.png b/tile_cache/esri_sat/13/5000/2874.png
deleted file mode 100644
index 1141135..0000000
Binary files a/tile_cache/esri_sat/13/5000/2874.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/19988/11491.png b/tile_cache/esri_sat/14/19988/11491.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/14/19988/11491.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9991/5743.png b/tile_cache/esri_sat/14/9991/5743.png
deleted file mode 100644
index 59ae5e5..0000000
Binary files a/tile_cache/esri_sat/14/9991/5743.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9991/5744.png b/tile_cache/esri_sat/14/9991/5744.png
deleted file mode 100644
index a382e0a..0000000
Binary files a/tile_cache/esri_sat/14/9991/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9991/5745.png b/tile_cache/esri_sat/14/9991/5745.png
deleted file mode 100644
index 33f567c..0000000
Binary files a/tile_cache/esri_sat/14/9991/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9992/5742.png b/tile_cache/esri_sat/14/9992/5742.png
deleted file mode 100644
index 985fdb9..0000000
Binary files a/tile_cache/esri_sat/14/9992/5742.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9992/5743.png b/tile_cache/esri_sat/14/9992/5743.png
deleted file mode 100644
index fcd9fa7..0000000
Binary files a/tile_cache/esri_sat/14/9992/5743.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9992/5744.png b/tile_cache/esri_sat/14/9992/5744.png
deleted file mode 100644
index 6257f2b..0000000
Binary files a/tile_cache/esri_sat/14/9992/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9992/5745.png b/tile_cache/esri_sat/14/9992/5745.png
deleted file mode 100644
index fe313a7..0000000
Binary files a/tile_cache/esri_sat/14/9992/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9992/5746.png b/tile_cache/esri_sat/14/9992/5746.png
deleted file mode 100644
index 5f43beb..0000000
Binary files a/tile_cache/esri_sat/14/9992/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9993/5742.png b/tile_cache/esri_sat/14/9993/5742.png
deleted file mode 100644
index c48a30c..0000000
Binary files a/tile_cache/esri_sat/14/9993/5742.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9993/5743.png b/tile_cache/esri_sat/14/9993/5743.png
deleted file mode 100644
index 100dffb..0000000
Binary files a/tile_cache/esri_sat/14/9993/5743.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9993/5744.png b/tile_cache/esri_sat/14/9993/5744.png
deleted file mode 100644
index 1358ac3..0000000
Binary files a/tile_cache/esri_sat/14/9993/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9993/5745.png b/tile_cache/esri_sat/14/9993/5745.png
deleted file mode 100644
index 70a8993..0000000
Binary files a/tile_cache/esri_sat/14/9993/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9993/5746.png b/tile_cache/esri_sat/14/9993/5746.png
deleted file mode 100644
index f27f895..0000000
Binary files a/tile_cache/esri_sat/14/9993/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9994/5742.png b/tile_cache/esri_sat/14/9994/5742.png
deleted file mode 100644
index c2b1fec..0000000
Binary files a/tile_cache/esri_sat/14/9994/5742.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9994/5743.png b/tile_cache/esri_sat/14/9994/5743.png
deleted file mode 100644
index 23e5b8c..0000000
Binary files a/tile_cache/esri_sat/14/9994/5743.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9994/5744.png b/tile_cache/esri_sat/14/9994/5744.png
deleted file mode 100644
index b8330ea..0000000
Binary files a/tile_cache/esri_sat/14/9994/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9994/5745.png b/tile_cache/esri_sat/14/9994/5745.png
deleted file mode 100644
index eee9fb2..0000000
Binary files a/tile_cache/esri_sat/14/9994/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/14/9994/5746.png b/tile_cache/esri_sat/14/9994/5746.png
deleted file mode 100644
index 8ad2b81..0000000
Binary files a/tile_cache/esri_sat/14/9994/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19986/11489.png b/tile_cache/esri_sat/15/19986/11489.png
deleted file mode 100644
index 3aee4bf..0000000
Binary files a/tile_cache/esri_sat/15/19986/11489.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19986/11490.png b/tile_cache/esri_sat/15/19986/11490.png
deleted file mode 100644
index 4740a55..0000000
Binary files a/tile_cache/esri_sat/15/19986/11490.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19986/11491.png b/tile_cache/esri_sat/15/19986/11491.png
deleted file mode 100644
index 2724592..0000000
Binary files a/tile_cache/esri_sat/15/19986/11491.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19987/11489.png b/tile_cache/esri_sat/15/19987/11489.png
deleted file mode 100644
index 7134729..0000000
Binary files a/tile_cache/esri_sat/15/19987/11489.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19987/11490.png b/tile_cache/esri_sat/15/19987/11490.png
deleted file mode 100644
index 96f2adb..0000000
Binary files a/tile_cache/esri_sat/15/19987/11490.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19987/11491.png b/tile_cache/esri_sat/15/19987/11491.png
deleted file mode 100644
index 30a4b27..0000000
Binary files a/tile_cache/esri_sat/15/19987/11491.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19988/11489.png b/tile_cache/esri_sat/15/19988/11489.png
deleted file mode 100644
index 3c4ec1a..0000000
Binary files a/tile_cache/esri_sat/15/19988/11489.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/19988/11490.png b/tile_cache/esri_sat/15/19988/11490.png
deleted file mode 100644
index c21a5f2..0000000
Binary files a/tile_cache/esri_sat/15/19988/11490.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/4996/2873.png b/tile_cache/esri_sat/15/4996/2873.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/4996/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/4997/2871.png b/tile_cache/esri_sat/15/4997/2871.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/4997/2871.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/4997/2872.png b/tile_cache/esri_sat/15/4997/2872.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/4997/2872.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/4997/2873.png b/tile_cache/esri_sat/15/4997/2873.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/4997/2873.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9992/5745.png b/tile_cache/esri_sat/15/9992/5745.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9992/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9992/5746.png b/tile_cache/esri_sat/15/9992/5746.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9992/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9993/5744.png b/tile_cache/esri_sat/15/9993/5744.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9993/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9993/5745.png b/tile_cache/esri_sat/15/9993/5745.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9993/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9993/5746.png b/tile_cache/esri_sat/15/9993/5746.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9993/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9994/5744.png b/tile_cache/esri_sat/15/9994/5744.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9994/5744.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9994/5745.png b/tile_cache/esri_sat/15/9994/5745.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9994/5745.png and /dev/null differ
diff --git a/tile_cache/esri_sat/15/9994/5746.png b/tile_cache/esri_sat/15/9994/5746.png
deleted file mode 100644
index 2cb95b2..0000000
Binary files a/tile_cache/esri_sat/15/9994/5746.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/152/79.png b/tile_cache/esri_sat/8/152/79.png
deleted file mode 100644
index c42d322..0000000
Binary files a/tile_cache/esri_sat/8/152/79.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/152/80.png b/tile_cache/esri_sat/8/152/80.png
deleted file mode 100644
index a60bcf7..0000000
Binary files a/tile_cache/esri_sat/8/152/80.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/152/81.png b/tile_cache/esri_sat/8/152/81.png
deleted file mode 100644
index 057c4ff..0000000
Binary files a/tile_cache/esri_sat/8/152/81.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/152/82.png b/tile_cache/esri_sat/8/152/82.png
deleted file mode 100644
index 4c84ffd..0000000
Binary files a/tile_cache/esri_sat/8/152/82.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/153/78.png b/tile_cache/esri_sat/8/153/78.png
deleted file mode 100644
index 8156473..0000000
Binary files a/tile_cache/esri_sat/8/153/78.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/153/79.png b/tile_cache/esri_sat/8/153/79.png
deleted file mode 100644
index f5ce264..0000000
Binary files a/tile_cache/esri_sat/8/153/79.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/153/80.png b/tile_cache/esri_sat/8/153/80.png
deleted file mode 100644
index 047e450..0000000
Binary files a/tile_cache/esri_sat/8/153/80.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/153/81.png b/tile_cache/esri_sat/8/153/81.png
deleted file mode 100644
index c6df333..0000000
Binary files a/tile_cache/esri_sat/8/153/81.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/153/82.png b/tile_cache/esri_sat/8/153/82.png
deleted file mode 100644
index 2bf07c6..0000000
Binary files a/tile_cache/esri_sat/8/153/82.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/154/78.png b/tile_cache/esri_sat/8/154/78.png
deleted file mode 100644
index 3c445f3..0000000
Binary files a/tile_cache/esri_sat/8/154/78.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/154/79.png b/tile_cache/esri_sat/8/154/79.png
deleted file mode 100644
index eb4b357..0000000
Binary files a/tile_cache/esri_sat/8/154/79.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/154/80.png b/tile_cache/esri_sat/8/154/80.png
deleted file mode 100644
index 4478864..0000000
Binary files a/tile_cache/esri_sat/8/154/80.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/154/81.png b/tile_cache/esri_sat/8/154/81.png
deleted file mode 100644
index c6bc7e5..0000000
Binary files a/tile_cache/esri_sat/8/154/81.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/154/82.png b/tile_cache/esri_sat/8/154/82.png
deleted file mode 100644
index 0b87106..0000000
Binary files a/tile_cache/esri_sat/8/154/82.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/78.png b/tile_cache/esri_sat/8/155/78.png
deleted file mode 100644
index 6db9404..0000000
Binary files a/tile_cache/esri_sat/8/155/78.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/79.png b/tile_cache/esri_sat/8/155/79.png
deleted file mode 100644
index ed0c2fb..0000000
Binary files a/tile_cache/esri_sat/8/155/79.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/80.png b/tile_cache/esri_sat/8/155/80.png
deleted file mode 100644
index 0eac3a3..0000000
Binary files a/tile_cache/esri_sat/8/155/80.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/81.png b/tile_cache/esri_sat/8/155/81.png
deleted file mode 100644
index 6d6aa88..0000000
Binary files a/tile_cache/esri_sat/8/155/81.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/88.png b/tile_cache/esri_sat/8/155/88.png
deleted file mode 100644
index f9a086d..0000000
Binary files a/tile_cache/esri_sat/8/155/88.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/89.png b/tile_cache/esri_sat/8/155/89.png
deleted file mode 100644
index 4889f8a..0000000
Binary files a/tile_cache/esri_sat/8/155/89.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/155/90.png b/tile_cache/esri_sat/8/155/90.png
deleted file mode 100644
index 38b06b7..0000000
Binary files a/tile_cache/esri_sat/8/155/90.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/156/88.png b/tile_cache/esri_sat/8/156/88.png
deleted file mode 100644
index 8752d6c..0000000
Binary files a/tile_cache/esri_sat/8/156/88.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/156/89.png b/tile_cache/esri_sat/8/156/89.png
deleted file mode 100644
index e76c1c9..0000000
Binary files a/tile_cache/esri_sat/8/156/89.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/156/90.png b/tile_cache/esri_sat/8/156/90.png
deleted file mode 100644
index aa09553..0000000
Binary files a/tile_cache/esri_sat/8/156/90.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/157/88.png b/tile_cache/esri_sat/8/157/88.png
deleted file mode 100644
index 1bf3e17..0000000
Binary files a/tile_cache/esri_sat/8/157/88.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/157/89.png b/tile_cache/esri_sat/8/157/89.png
deleted file mode 100644
index 0f4ddb2..0000000
Binary files a/tile_cache/esri_sat/8/157/89.png and /dev/null differ
diff --git a/tile_cache/esri_sat/8/157/90.png b/tile_cache/esri_sat/8/157/90.png
deleted file mode 100644
index 31585b6..0000000
Binary files a/tile_cache/esri_sat/8/157/90.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/311/178.png b/tile_cache/esri_sat/9/311/178.png
deleted file mode 100644
index be96b63..0000000
Binary files a/tile_cache/esri_sat/9/311/178.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/311/179.png b/tile_cache/esri_sat/9/311/179.png
deleted file mode 100644
index 43dcc71..0000000
Binary files a/tile_cache/esri_sat/9/311/179.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/311/180.png b/tile_cache/esri_sat/9/311/180.png
deleted file mode 100644
index 7fe9f27..0000000
Binary files a/tile_cache/esri_sat/9/311/180.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/312/178.png b/tile_cache/esri_sat/9/312/178.png
deleted file mode 100644
index ac997dc..0000000
Binary files a/tile_cache/esri_sat/9/312/178.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/312/179.png b/tile_cache/esri_sat/9/312/179.png
deleted file mode 100644
index 59148c1..0000000
Binary files a/tile_cache/esri_sat/9/312/179.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/312/180.png b/tile_cache/esri_sat/9/312/180.png
deleted file mode 100644
index 7b0ed31..0000000
Binary files a/tile_cache/esri_sat/9/312/180.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/313/178.png b/tile_cache/esri_sat/9/313/178.png
deleted file mode 100644
index 4398a83..0000000
Binary files a/tile_cache/esri_sat/9/313/178.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/313/179.png b/tile_cache/esri_sat/9/313/179.png
deleted file mode 100644
index 0da4264..0000000
Binary files a/tile_cache/esri_sat/9/313/179.png and /dev/null differ
diff --git a/tile_cache/esri_sat/9/313/180.png b/tile_cache/esri_sat/9/313/180.png
deleted file mode 100644
index b09e863..0000000
Binary files a/tile_cache/esri_sat/9/313/180.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/311/178.png b/tile_cache/google_sat/9/311/178.png
deleted file mode 100644
index 54dd412..0000000
Binary files a/tile_cache/google_sat/9/311/178.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/311/179.png b/tile_cache/google_sat/9/311/179.png
deleted file mode 100644
index 4c6c9f5..0000000
Binary files a/tile_cache/google_sat/9/311/179.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/311/180.png b/tile_cache/google_sat/9/311/180.png
deleted file mode 100644
index 71d8fc6..0000000
Binary files a/tile_cache/google_sat/9/311/180.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/312/178.png b/tile_cache/google_sat/9/312/178.png
deleted file mode 100644
index e09aa3e..0000000
Binary files a/tile_cache/google_sat/9/312/178.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/312/179.png b/tile_cache/google_sat/9/312/179.png
deleted file mode 100644
index 6df1581..0000000
Binary files a/tile_cache/google_sat/9/312/179.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/312/180.png b/tile_cache/google_sat/9/312/180.png
deleted file mode 100644
index af59923..0000000
Binary files a/tile_cache/google_sat/9/312/180.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/313/178.png b/tile_cache/google_sat/9/313/178.png
deleted file mode 100644
index c9cf36f..0000000
Binary files a/tile_cache/google_sat/9/313/178.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/313/179.png b/tile_cache/google_sat/9/313/179.png
deleted file mode 100644
index 588faad..0000000
Binary files a/tile_cache/google_sat/9/313/179.png and /dev/null differ
diff --git a/tile_cache/google_sat/9/313/180.png b/tile_cache/google_sat/9/313/180.png
deleted file mode 100644
index f5e24c9..0000000
Binary files a/tile_cache/google_sat/9/313/180.png and /dev/null differ
diff --git a/tile_cache/osm/8/153/79.png b/tile_cache/osm/8/153/79.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/153/79.png and /dev/null differ
diff --git a/tile_cache/osm/8/153/80.png b/tile_cache/osm/8/153/80.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/153/80.png and /dev/null differ
diff --git a/tile_cache/osm/8/153/81.png b/tile_cache/osm/8/153/81.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/153/81.png and /dev/null differ
diff --git a/tile_cache/osm/8/154/79.png b/tile_cache/osm/8/154/79.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/154/79.png and /dev/null differ
diff --git a/tile_cache/osm/8/154/80.png b/tile_cache/osm/8/154/80.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/154/80.png and /dev/null differ
diff --git a/tile_cache/osm/8/154/81.png b/tile_cache/osm/8/154/81.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/154/81.png and /dev/null differ
diff --git a/tile_cache/osm/8/155/79.png b/tile_cache/osm/8/155/79.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/155/79.png and /dev/null differ
diff --git a/tile_cache/osm/8/155/80.png b/tile_cache/osm/8/155/80.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/155/80.png and /dev/null differ
diff --git a/tile_cache/osm/8/155/81.png b/tile_cache/osm/8/155/81.png
deleted file mode 100644
index 91754d9..0000000
Binary files a/tile_cache/osm/8/155/81.png and /dev/null differ
diff --git a/tile_cache/osm/9/311/178.png b/tile_cache/osm/9/311/178.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/311/178.png and /dev/null differ
diff --git a/tile_cache/osm/9/311/179.png b/tile_cache/osm/9/311/179.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/311/179.png and /dev/null differ
diff --git a/tile_cache/osm/9/311/180.png b/tile_cache/osm/9/311/180.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/311/180.png and /dev/null differ
diff --git a/tile_cache/osm/9/312/178.png b/tile_cache/osm/9/312/178.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/312/178.png and /dev/null differ
diff --git a/tile_cache/osm/9/312/179.png b/tile_cache/osm/9/312/179.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/312/179.png and /dev/null differ
diff --git a/tile_cache/osm/9/312/180.png b/tile_cache/osm/9/312/180.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/312/180.png and /dev/null differ
diff --git a/tile_cache/osm/9/313/178.png b/tile_cache/osm/9/313/178.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/313/178.png and /dev/null differ
diff --git a/tile_cache/osm/9/313/179.png b/tile_cache/osm/9/313/179.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/313/179.png and /dev/null differ
diff --git a/tile_cache/osm/9/313/180.png b/tile_cache/osm/9/313/180.png
deleted file mode 100644
index 039d9bd..0000000
Binary files a/tile_cache/osm/9/313/180.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/148/73.png b/tile_cache/precipitation/8/148/73.png
deleted file mode 100644
index 711b7fd..0000000
Binary files a/tile_cache/precipitation/8/148/73.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/148/74.png b/tile_cache/precipitation/8/148/74.png
deleted file mode 100644
index 23cc57c..0000000
Binary files a/tile_cache/precipitation/8/148/74.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/148/75.png b/tile_cache/precipitation/8/148/75.png
deleted file mode 100644
index f615941..0000000
Binary files a/tile_cache/precipitation/8/148/75.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/149/73.png b/tile_cache/precipitation/8/149/73.png
deleted file mode 100644
index 8d026a8..0000000
Binary files a/tile_cache/precipitation/8/149/73.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/149/74.png b/tile_cache/precipitation/8/149/74.png
deleted file mode 100644
index ac28437..0000000
Binary files a/tile_cache/precipitation/8/149/74.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/149/75.png b/tile_cache/precipitation/8/149/75.png
deleted file mode 100644
index e69d17f..0000000
Binary files a/tile_cache/precipitation/8/149/75.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/150/73.png b/tile_cache/precipitation/8/150/73.png
deleted file mode 100644
index 2924386..0000000
Binary files a/tile_cache/precipitation/8/150/73.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/150/74.png b/tile_cache/precipitation/8/150/74.png
deleted file mode 100644
index 5b03ce0..0000000
Binary files a/tile_cache/precipitation/8/150/74.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/150/75.png b/tile_cache/precipitation/8/150/75.png
deleted file mode 100644
index e066882..0000000
Binary files a/tile_cache/precipitation/8/150/75.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/153/79.png b/tile_cache/precipitation/8/153/79.png
deleted file mode 100644
index 559670f..0000000
Binary files a/tile_cache/precipitation/8/153/79.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/153/80.png b/tile_cache/precipitation/8/153/80.png
deleted file mode 100644
index 3cc512e..0000000
Binary files a/tile_cache/precipitation/8/153/80.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/153/81.png b/tile_cache/precipitation/8/153/81.png
deleted file mode 100644
index 7609557..0000000
Binary files a/tile_cache/precipitation/8/153/81.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/154/79.png b/tile_cache/precipitation/8/154/79.png
deleted file mode 100644
index d7962c6..0000000
Binary files a/tile_cache/precipitation/8/154/79.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/154/80.png b/tile_cache/precipitation/8/154/80.png
deleted file mode 100644
index 709d3bc..0000000
Binary files a/tile_cache/precipitation/8/154/80.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/154/81.png b/tile_cache/precipitation/8/154/81.png
deleted file mode 100644
index c8931de..0000000
Binary files a/tile_cache/precipitation/8/154/81.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/79.png b/tile_cache/precipitation/8/155/79.png
deleted file mode 100644
index d5d990b..0000000
Binary files a/tile_cache/precipitation/8/155/79.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/80.png b/tile_cache/precipitation/8/155/80.png
deleted file mode 100644
index 54e8972..0000000
Binary files a/tile_cache/precipitation/8/155/80.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/81.png b/tile_cache/precipitation/8/155/81.png
deleted file mode 100644
index d5316e9..0000000
Binary files a/tile_cache/precipitation/8/155/81.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/88.png b/tile_cache/precipitation/8/155/88.png
deleted file mode 100644
index a618ca0..0000000
Binary files a/tile_cache/precipitation/8/155/88.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/89.png b/tile_cache/precipitation/8/155/89.png
deleted file mode 100644
index a4997cd..0000000
Binary files a/tile_cache/precipitation/8/155/89.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/155/90.png b/tile_cache/precipitation/8/155/90.png
deleted file mode 100644
index 6645e00..0000000
Binary files a/tile_cache/precipitation/8/155/90.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/156/88.png b/tile_cache/precipitation/8/156/88.png
deleted file mode 100644
index c61ab46..0000000
Binary files a/tile_cache/precipitation/8/156/88.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/156/89.png b/tile_cache/precipitation/8/156/89.png
deleted file mode 100644
index 496ab1b..0000000
Binary files a/tile_cache/precipitation/8/156/89.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/156/90.png b/tile_cache/precipitation/8/156/90.png
deleted file mode 100644
index 0415148..0000000
Binary files a/tile_cache/precipitation/8/156/90.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/157/88.png b/tile_cache/precipitation/8/157/88.png
deleted file mode 100644
index 616c912..0000000
Binary files a/tile_cache/precipitation/8/157/88.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/157/89.png b/tile_cache/precipitation/8/157/89.png
deleted file mode 100644
index a8eb5c6..0000000
Binary files a/tile_cache/precipitation/8/157/89.png and /dev/null differ
diff --git a/tile_cache/precipitation/8/157/90.png b/tile_cache/precipitation/8/157/90.png
deleted file mode 100644
index 03b9e73..0000000
Binary files a/tile_cache/precipitation/8/157/90.png and /dev/null differ
diff --git a/tile_cache/temp/8/155/88.png b/tile_cache/temp/8/155/88.png
deleted file mode 100644
index 68654ee..0000000
Binary files a/tile_cache/temp/8/155/88.png and /dev/null differ
diff --git a/tile_cache/temp/8/155/89.png b/tile_cache/temp/8/155/89.png
deleted file mode 100644
index 97babb7..0000000
Binary files a/tile_cache/temp/8/155/89.png and /dev/null differ
diff --git a/tile_cache/temp/8/155/90.png b/tile_cache/temp/8/155/90.png
deleted file mode 100644
index 6f2a4b0..0000000
Binary files a/tile_cache/temp/8/155/90.png and /dev/null differ
diff --git a/tile_cache/temp/8/156/88.png b/tile_cache/temp/8/156/88.png
deleted file mode 100644
index 62ce63d..0000000
Binary files a/tile_cache/temp/8/156/88.png and /dev/null differ
diff --git a/tile_cache/temp/8/156/89.png b/tile_cache/temp/8/156/89.png
deleted file mode 100644
index d1a9879..0000000
Binary files a/tile_cache/temp/8/156/89.png and /dev/null differ
diff --git a/tile_cache/temp/9/311/178.png b/tile_cache/temp/9/311/178.png
deleted file mode 100644
index 1342763..0000000
Binary files a/tile_cache/temp/9/311/178.png and /dev/null differ
diff --git a/tile_cache/temp/9/311/179.png b/tile_cache/temp/9/311/179.png
deleted file mode 100644
index 107446c..0000000
Binary files a/tile_cache/temp/9/311/179.png and /dev/null differ
diff --git a/tile_cache/temp/9/311/180.png b/tile_cache/temp/9/311/180.png
deleted file mode 100644
index 1bf3c53..0000000
Binary files a/tile_cache/temp/9/311/180.png and /dev/null differ
diff --git a/tile_cache/temp/9/312/178.png b/tile_cache/temp/9/312/178.png
deleted file mode 100644
index 5aa0a23..0000000
Binary files a/tile_cache/temp/9/312/178.png and /dev/null differ
diff --git a/tile_cache/temp/9/312/179.png b/tile_cache/temp/9/312/179.png
deleted file mode 100644
index f6c6bf3..0000000
Binary files a/tile_cache/temp/9/312/179.png and /dev/null differ
diff --git a/tile_cache/temp/9/312/180.png b/tile_cache/temp/9/312/180.png
deleted file mode 100644
index 9515c81..0000000
Binary files a/tile_cache/temp/9/312/180.png and /dev/null differ
diff --git a/tile_cache/temp/9/313/178.png b/tile_cache/temp/9/313/178.png
deleted file mode 100644
index 0c615db..0000000
Binary files a/tile_cache/temp/9/313/178.png and /dev/null differ
diff --git a/tile_cache/temp/9/313/179.png b/tile_cache/temp/9/313/179.png
deleted file mode 100644
index fcb8c84..0000000
Binary files a/tile_cache/temp/9/313/179.png and /dev/null differ
diff --git a/tile_cache/temp/9/313/180.png b/tile_cache/temp/9/313/180.png
deleted file mode 100644
index 47caf7e..0000000
Binary files a/tile_cache/temp/9/313/180.png and /dev/null differ
diff --git a/ui/__init__.py b/ui/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/ui/dialogs/__init__.py b/ui/dialogs/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/ui/main_window.py b/ui/main_window.py
deleted file mode 100644
index e69de29..0000000