From: Chuck Scott
+The library creates and manages per-zoom-level clusters for large amounts of markers.
+
+This is an enhanced V3 implementation of the
+V2 MarkerClusterer by Xiaoxi Wu. It is based on the
+V3 MarkerClusterer port by Luke Mahe. MarkerClustererPlus was created by Gary Little.
+
+v2.0 release: MarkerClustererPlus v2.0 is backward compatible with MarkerClusterer v1.0. It
+ adds support for the For a description and examples of how to use this library, check out the how-to. This class is an object containing general information about a cluster icon. This is
+ the object that a This class represents the object for values in the This class extends This class represents the optional parameter passed to
+ the
+Note: Be sure to include markerclusterer.js in your HTML document.
+
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/abseiling.svg b/assets/MapIcons/blackIcons/abseiling.svg
new file mode 100644
index 00000000..5f48712b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/abseiling.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/accounting.svg b/assets/MapIcons/blackIcons/accounting.svg
new file mode 100644
index 00000000..8e24414d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/accounting.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/airport.svg b/assets/MapIcons/blackIcons/airport.svg
new file mode 100644
index 00000000..e7adebd8
--- /dev/null
+++ b/assets/MapIcons/blackIcons/airport.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/amusement-park.svg b/assets/MapIcons/blackIcons/amusement-park.svg
new file mode 100644
index 00000000..534ee1fc
--- /dev/null
+++ b/assets/MapIcons/blackIcons/amusement-park.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/aquarium.svg b/assets/MapIcons/blackIcons/aquarium.svg
new file mode 100644
index 00000000..99bfe2c7
--- /dev/null
+++ b/assets/MapIcons/blackIcons/aquarium.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/archery.svg b/assets/MapIcons/blackIcons/archery.svg
new file mode 100644
index 00000000..972cc675
--- /dev/null
+++ b/assets/MapIcons/blackIcons/archery.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/art-gallery.svg b/assets/MapIcons/blackIcons/art-gallery.svg
new file mode 100644
index 00000000..69771a24
--- /dev/null
+++ b/assets/MapIcons/blackIcons/art-gallery.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/assistive-listening-system.svg b/assets/MapIcons/blackIcons/assistive-listening-system.svg
new file mode 100644
index 00000000..00248fd9
--- /dev/null
+++ b/assets/MapIcons/blackIcons/assistive-listening-system.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/atm.svg b/assets/MapIcons/blackIcons/atm.svg
new file mode 100644
index 00000000..db8121dc
--- /dev/null
+++ b/assets/MapIcons/blackIcons/atm.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/audio-description.svg b/assets/MapIcons/blackIcons/audio-description.svg
new file mode 100644
index 00000000..00d9c99d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/audio-description.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bakery.svg b/assets/MapIcons/blackIcons/bakery.svg
new file mode 100644
index 00000000..c1af96ce
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bakery.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bank.svg b/assets/MapIcons/blackIcons/bank.svg
new file mode 100644
index 00000000..8ac44dd4
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bank.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bar.svg b/assets/MapIcons/blackIcons/bar.svg
new file mode 100644
index 00000000..7a733a6c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bar.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/baseball.svg b/assets/MapIcons/blackIcons/baseball.svg
new file mode 100644
index 00000000..4431e7ca
--- /dev/null
+++ b/assets/MapIcons/blackIcons/baseball.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/beauty-salon.svg b/assets/MapIcons/blackIcons/beauty-salon.svg
new file mode 100644
index 00000000..5510fb69
--- /dev/null
+++ b/assets/MapIcons/blackIcons/beauty-salon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bicycle-store.svg b/assets/MapIcons/blackIcons/bicycle-store.svg
new file mode 100644
index 00000000..2526124f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bicycle-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bicycling.svg b/assets/MapIcons/blackIcons/bicycling.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bicycling.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/boat-ramp.svg b/assets/MapIcons/blackIcons/boat-ramp.svg
new file mode 100644
index 00000000..9444a3b9
--- /dev/null
+++ b/assets/MapIcons/blackIcons/boat-ramp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/boat-tour.svg b/assets/MapIcons/blackIcons/boat-tour.svg
new file mode 100644
index 00000000..100ad05c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/boat-tour.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/boating.svg b/assets/MapIcons/blackIcons/boating.svg
new file mode 100644
index 00000000..8f6b4599
--- /dev/null
+++ b/assets/MapIcons/blackIcons/boating.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/book-store.svg b/assets/MapIcons/blackIcons/book-store.svg
new file mode 100644
index 00000000..7b5c887e
--- /dev/null
+++ b/assets/MapIcons/blackIcons/book-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bowling-alley.svg b/assets/MapIcons/blackIcons/bowling-alley.svg
new file mode 100644
index 00000000..0cc8b676
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bowling-alley.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/braille.svg b/assets/MapIcons/blackIcons/braille.svg
new file mode 100644
index 00000000..9f2aefb6
--- /dev/null
+++ b/assets/MapIcons/blackIcons/braille.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/bus-station.svg b/assets/MapIcons/blackIcons/bus-station.svg
new file mode 100644
index 00000000..4255b6a2
--- /dev/null
+++ b/assets/MapIcons/blackIcons/bus-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/cafe.svg b/assets/MapIcons/blackIcons/cafe.svg
new file mode 100644
index 00000000..bbbe9a79
--- /dev/null
+++ b/assets/MapIcons/blackIcons/cafe.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/campground.svg b/assets/MapIcons/blackIcons/campground.svg
new file mode 100644
index 00000000..41cde05d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/campground.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/canoe.svg b/assets/MapIcons/blackIcons/canoe.svg
new file mode 100644
index 00000000..bc3e059f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/canoe.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/car-dealer.svg b/assets/MapIcons/blackIcons/car-dealer.svg
new file mode 100644
index 00000000..9b39007f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/car-dealer.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/car-rental.svg b/assets/MapIcons/blackIcons/car-rental.svg
new file mode 100644
index 00000000..1e647b4b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/car-rental.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/car-repair.svg b/assets/MapIcons/blackIcons/car-repair.svg
new file mode 100644
index 00000000..2e960b91
--- /dev/null
+++ b/assets/MapIcons/blackIcons/car-repair.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/car-wash.svg b/assets/MapIcons/blackIcons/car-wash.svg
new file mode 100644
index 00000000..c6e5ba7a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/car-wash.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/casino.svg b/assets/MapIcons/blackIcons/casino.svg
new file mode 100644
index 00000000..2781b651
--- /dev/null
+++ b/assets/MapIcons/blackIcons/casino.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/cemetery.svg b/assets/MapIcons/blackIcons/cemetery.svg
new file mode 100644
index 00000000..39eb3b13
--- /dev/null
+++ b/assets/MapIcons/blackIcons/cemetery.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/chairlift.svg b/assets/MapIcons/blackIcons/chairlift.svg
new file mode 100644
index 00000000..7e6be254
--- /dev/null
+++ b/assets/MapIcons/blackIcons/chairlift.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/church.svg b/assets/MapIcons/blackIcons/church.svg
new file mode 100644
index 00000000..a3262a00
--- /dev/null
+++ b/assets/MapIcons/blackIcons/church.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/circle.svg b/assets/MapIcons/blackIcons/circle.svg
new file mode 100644
index 00000000..73297108
--- /dev/null
+++ b/assets/MapIcons/blackIcons/circle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/city-hall.svg b/assets/MapIcons/blackIcons/city-hall.svg
new file mode 100644
index 00000000..2687d543
--- /dev/null
+++ b/assets/MapIcons/blackIcons/city-hall.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/climbing.svg b/assets/MapIcons/blackIcons/climbing.svg
new file mode 100644
index 00000000..5bfd2241
--- /dev/null
+++ b/assets/MapIcons/blackIcons/climbing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/closed-captioning.svg b/assets/MapIcons/blackIcons/closed-captioning.svg
new file mode 100644
index 00000000..b7ec201b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/closed-captioning.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/clothing-store.svg b/assets/MapIcons/blackIcons/clothing-store.svg
new file mode 100644
index 00000000..6c4ba2d7
--- /dev/null
+++ b/assets/MapIcons/blackIcons/clothing-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/compass.svg b/assets/MapIcons/blackIcons/compass.svg
new file mode 100644
index 00000000..5006f46c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/compass.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/convenience-store.svg b/assets/MapIcons/blackIcons/convenience-store.svg
new file mode 100644
index 00000000..a184ba97
--- /dev/null
+++ b/assets/MapIcons/blackIcons/convenience-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/courthouse.svg b/assets/MapIcons/blackIcons/courthouse.svg
new file mode 100644
index 00000000..cb1d1faa
--- /dev/null
+++ b/assets/MapIcons/blackIcons/courthouse.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/cross-country-skiing.svg b/assets/MapIcons/blackIcons/cross-country-skiing.svg
new file mode 100644
index 00000000..cb81a0c3
--- /dev/null
+++ b/assets/MapIcons/blackIcons/cross-country-skiing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/crosshairs.svg b/assets/MapIcons/blackIcons/crosshairs.svg
new file mode 100644
index 00000000..a6a3c189
--- /dev/null
+++ b/assets/MapIcons/blackIcons/crosshairs.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/dentist.svg b/assets/MapIcons/blackIcons/dentist.svg
new file mode 100644
index 00000000..0470c6dd
--- /dev/null
+++ b/assets/MapIcons/blackIcons/dentist.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/department-store.svg b/assets/MapIcons/blackIcons/department-store.svg
new file mode 100644
index 00000000..8e8625a6
--- /dev/null
+++ b/assets/MapIcons/blackIcons/department-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/diving.svg b/assets/MapIcons/blackIcons/diving.svg
new file mode 100644
index 00000000..07a72c7f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/diving.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/doctor.svg b/assets/MapIcons/blackIcons/doctor.svg
new file mode 100644
index 00000000..8d8ac46d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/doctor.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/electrician.svg b/assets/MapIcons/blackIcons/electrician.svg
new file mode 100644
index 00000000..7aed199f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/electrician.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/electronics-store.svg b/assets/MapIcons/blackIcons/electronics-store.svg
new file mode 100644
index 00000000..9f848a5a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/electronics-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/embassy.svg b/assets/MapIcons/blackIcons/embassy.svg
new file mode 100644
index 00000000..a90331d2
--- /dev/null
+++ b/assets/MapIcons/blackIcons/embassy.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/expand.svg b/assets/MapIcons/blackIcons/expand.svg
new file mode 100644
index 00000000..a384f957
--- /dev/null
+++ b/assets/MapIcons/blackIcons/expand.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/female.svg b/assets/MapIcons/blackIcons/female.svg
new file mode 100644
index 00000000..169de5f1
--- /dev/null
+++ b/assets/MapIcons/blackIcons/female.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/finance.svg b/assets/MapIcons/blackIcons/finance.svg
new file mode 100644
index 00000000..bea8745f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/finance.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/fire-station.svg b/assets/MapIcons/blackIcons/fire-station.svg
new file mode 100644
index 00000000..4cd8f2cf
--- /dev/null
+++ b/assets/MapIcons/blackIcons/fire-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/fish-cleaning.svg b/assets/MapIcons/blackIcons/fish-cleaning.svg
new file mode 100644
index 00000000..b2823435
--- /dev/null
+++ b/assets/MapIcons/blackIcons/fish-cleaning.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/fishing-pier.svg b/assets/MapIcons/blackIcons/fishing-pier.svg
new file mode 100644
index 00000000..a811717d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/fishing-pier.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/fishing.svg b/assets/MapIcons/blackIcons/fishing.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/fishing.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/florist.svg b/assets/MapIcons/blackIcons/florist.svg
new file mode 100644
index 00000000..57a86416
--- /dev/null
+++ b/assets/MapIcons/blackIcons/florist.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/food.svg b/assets/MapIcons/blackIcons/food.svg
new file mode 100644
index 00000000..879bbf13
--- /dev/null
+++ b/assets/MapIcons/blackIcons/food.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/fullscreen.svg b/assets/MapIcons/blackIcons/fullscreen.svg
new file mode 100644
index 00000000..2fb9b3d8
--- /dev/null
+++ b/assets/MapIcons/blackIcons/fullscreen.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/funeral-home.svg b/assets/MapIcons/blackIcons/funeral-home.svg
new file mode 100644
index 00000000..e9cac1c1
--- /dev/null
+++ b/assets/MapIcons/blackIcons/funeral-home.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/furniture-store.svg b/assets/MapIcons/blackIcons/furniture-store.svg
new file mode 100644
index 00000000..58776c27
--- /dev/null
+++ b/assets/MapIcons/blackIcons/furniture-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/gas-station.svg b/assets/MapIcons/blackIcons/gas-station.svg
new file mode 100644
index 00000000..c9e4ebc7
--- /dev/null
+++ b/assets/MapIcons/blackIcons/gas-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/general-contractor.svg b/assets/MapIcons/blackIcons/general-contractor.svg
new file mode 100644
index 00000000..d368a2fb
--- /dev/null
+++ b/assets/MapIcons/blackIcons/general-contractor.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/golf.svg b/assets/MapIcons/blackIcons/golf.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/golf.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/grocery-or-supermarket.svg b/assets/MapIcons/blackIcons/grocery-or-supermarket.svg
new file mode 100644
index 00000000..6a0f7ccf
--- /dev/null
+++ b/assets/MapIcons/blackIcons/grocery-or-supermarket.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/gym.svg b/assets/MapIcons/blackIcons/gym.svg
new file mode 100644
index 00000000..c7284166
--- /dev/null
+++ b/assets/MapIcons/blackIcons/gym.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/hair-care.svg b/assets/MapIcons/blackIcons/hair-care.svg
new file mode 100644
index 00000000..140a9245
--- /dev/null
+++ b/assets/MapIcons/blackIcons/hair-care.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/hang-gliding.svg b/assets/MapIcons/blackIcons/hang-gliding.svg
new file mode 100644
index 00000000..23343098
--- /dev/null
+++ b/assets/MapIcons/blackIcons/hang-gliding.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/hardware-store.svg b/assets/MapIcons/blackIcons/hardware-store.svg
new file mode 100644
index 00000000..0e7ce9fb
--- /dev/null
+++ b/assets/MapIcons/blackIcons/hardware-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/health.svg b/assets/MapIcons/blackIcons/health.svg
new file mode 100644
index 00000000..e961991a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/health.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/hindu-temple.svg b/assets/MapIcons/blackIcons/hindu-temple.svg
new file mode 100644
index 00000000..c910237c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/hindu-temple.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/horse-riding.svg b/assets/MapIcons/blackIcons/horse-riding.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/horse-riding.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/hospital.svg b/assets/MapIcons/blackIcons/hospital.svg
new file mode 100644
index 00000000..ac11886d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/hospital.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/ice-fishing.svg b/assets/MapIcons/blackIcons/ice-fishing.svg
new file mode 100644
index 00000000..a4bd3711
--- /dev/null
+++ b/assets/MapIcons/blackIcons/ice-fishing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/ice-skating.svg b/assets/MapIcons/blackIcons/ice-skating.svg
new file mode 100644
index 00000000..b1645c4d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/ice-skating.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/inline-skating.svg b/assets/MapIcons/blackIcons/inline-skating.svg
new file mode 100644
index 00000000..b2d84e1b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/inline-skating.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/insurance-agency.svg b/assets/MapIcons/blackIcons/insurance-agency.svg
new file mode 100644
index 00000000..0251623a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/insurance-agency.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/jet-skiing.svg b/assets/MapIcons/blackIcons/jet-skiing.svg
new file mode 100644
index 00000000..154329a4
--- /dev/null
+++ b/assets/MapIcons/blackIcons/jet-skiing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/jewelry-store.svg b/assets/MapIcons/blackIcons/jewelry-store.svg
new file mode 100644
index 00000000..0ad4dc57
--- /dev/null
+++ b/assets/MapIcons/blackIcons/jewelry-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/kayaking.svg b/assets/MapIcons/blackIcons/kayaking.svg
new file mode 100644
index 00000000..1e5414a6
--- /dev/null
+++ b/assets/MapIcons/blackIcons/kayaking.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/laundry.svg b/assets/MapIcons/blackIcons/laundry.svg
new file mode 100644
index 00000000..9f1f8f3a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/laundry.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/lawyer.svg b/assets/MapIcons/blackIcons/lawyer.svg
new file mode 100644
index 00000000..f5f954de
--- /dev/null
+++ b/assets/MapIcons/blackIcons/lawyer.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/library.svg b/assets/MapIcons/blackIcons/library.svg
new file mode 100644
index 00000000..9cbb0bad
--- /dev/null
+++ b/assets/MapIcons/blackIcons/library.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/liquor-store.svg b/assets/MapIcons/blackIcons/liquor-store.svg
new file mode 100644
index 00000000..99ef90b5
--- /dev/null
+++ b/assets/MapIcons/blackIcons/liquor-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/local-government.svg b/assets/MapIcons/blackIcons/local-government.svg
new file mode 100644
index 00000000..38f75070
--- /dev/null
+++ b/assets/MapIcons/blackIcons/local-government.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/location-arrow.svg b/assets/MapIcons/blackIcons/location-arrow.svg
new file mode 100644
index 00000000..fcaabafa
--- /dev/null
+++ b/assets/MapIcons/blackIcons/location-arrow.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/locksmith.svg b/assets/MapIcons/blackIcons/locksmith.svg
new file mode 100644
index 00000000..ca55997a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/locksmith.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/lodging.svg b/assets/MapIcons/blackIcons/lodging.svg
new file mode 100644
index 00000000..4be626e9
--- /dev/null
+++ b/assets/MapIcons/blackIcons/lodging.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/low-vision-access.svg b/assets/MapIcons/blackIcons/low-vision-access.svg
new file mode 100644
index 00000000..a1041b0c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/low-vision-access.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/male.svg b/assets/MapIcons/blackIcons/male.svg
new file mode 100644
index 00000000..201777d3
--- /dev/null
+++ b/assets/MapIcons/blackIcons/male.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/map-pin.svg b/assets/MapIcons/blackIcons/map-pin.svg
new file mode 100644
index 00000000..81f83b6e
--- /dev/null
+++ b/assets/MapIcons/blackIcons/map-pin.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/marina.svg b/assets/MapIcons/blackIcons/marina.svg
new file mode 100644
index 00000000..732cc8e4
--- /dev/null
+++ b/assets/MapIcons/blackIcons/marina.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/mosque.svg b/assets/MapIcons/blackIcons/mosque.svg
new file mode 100644
index 00000000..1373ae2d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/mosque.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/motobike-trail.svg b/assets/MapIcons/blackIcons/motobike-trail.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/motobike-trail.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/movie-rental.svg b/assets/MapIcons/blackIcons/movie-rental.svg
new file mode 100644
index 00000000..dd3cfd7b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/movie-rental.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/movie-theater.svg b/assets/MapIcons/blackIcons/movie-theater.svg
new file mode 100644
index 00000000..2365dd16
--- /dev/null
+++ b/assets/MapIcons/blackIcons/movie-theater.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/moving-company.svg b/assets/MapIcons/blackIcons/moving-company.svg
new file mode 100644
index 00000000..80c6aa07
--- /dev/null
+++ b/assets/MapIcons/blackIcons/moving-company.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/museum.svg b/assets/MapIcons/blackIcons/museum.svg
new file mode 100644
index 00000000..79994267
--- /dev/null
+++ b/assets/MapIcons/blackIcons/museum.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/natural-feature.svg b/assets/MapIcons/blackIcons/natural-feature.svg
new file mode 100644
index 00000000..b7176b33
--- /dev/null
+++ b/assets/MapIcons/blackIcons/natural-feature.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/night-club.svg b/assets/MapIcons/blackIcons/night-club.svg
new file mode 100644
index 00000000..4ab36b0a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/night-club.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/open-captioning.svg b/assets/MapIcons/blackIcons/open-captioning.svg
new file mode 100644
index 00000000..a3d7da2d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/open-captioning.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/painter.svg b/assets/MapIcons/blackIcons/painter.svg
new file mode 100644
index 00000000..ca54f45b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/painter.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/park.svg b/assets/MapIcons/blackIcons/park.svg
new file mode 100644
index 00000000..5bef4951
--- /dev/null
+++ b/assets/MapIcons/blackIcons/park.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/parking.svg b/assets/MapIcons/blackIcons/parking.svg
new file mode 100644
index 00000000..b586bb52
--- /dev/null
+++ b/assets/MapIcons/blackIcons/parking.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/pet-store.svg b/assets/MapIcons/blackIcons/pet-store.svg
new file mode 100644
index 00000000..ace272da
--- /dev/null
+++ b/assets/MapIcons/blackIcons/pet-store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/pharmacy.svg b/assets/MapIcons/blackIcons/pharmacy.svg
new file mode 100644
index 00000000..36b83bed
--- /dev/null
+++ b/assets/MapIcons/blackIcons/pharmacy.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/physiotherapist.svg b/assets/MapIcons/blackIcons/physiotherapist.svg
new file mode 100644
index 00000000..06ea0683
--- /dev/null
+++ b/assets/MapIcons/blackIcons/physiotherapist.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/place-of-worship.svg b/assets/MapIcons/blackIcons/place-of-worship.svg
new file mode 100644
index 00000000..3c9c5e1f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/place-of-worship.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/playground.svg b/assets/MapIcons/blackIcons/playground.svg
new file mode 100644
index 00000000..f31cf959
--- /dev/null
+++ b/assets/MapIcons/blackIcons/playground.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/plumber.svg b/assets/MapIcons/blackIcons/plumber.svg
new file mode 100644
index 00000000..c1c47d99
--- /dev/null
+++ b/assets/MapIcons/blackIcons/plumber.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/point-of-interest.svg b/assets/MapIcons/blackIcons/point-of-interest.svg
new file mode 100644
index 00000000..490bba90
--- /dev/null
+++ b/assets/MapIcons/blackIcons/point-of-interest.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/police.svg b/assets/MapIcons/blackIcons/police.svg
new file mode 100644
index 00000000..f844bfed
--- /dev/null
+++ b/assets/MapIcons/blackIcons/police.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/political.svg b/assets/MapIcons/blackIcons/political.svg
new file mode 100644
index 00000000..925806e5
--- /dev/null
+++ b/assets/MapIcons/blackIcons/political.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/post-box.svg b/assets/MapIcons/blackIcons/post-box.svg
new file mode 100644
index 00000000..506f2588
--- /dev/null
+++ b/assets/MapIcons/blackIcons/post-box.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/post-office.svg b/assets/MapIcons/blackIcons/post-office.svg
new file mode 100644
index 00000000..769c3a95
--- /dev/null
+++ b/assets/MapIcons/blackIcons/post-office.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/postal-code-prefix.svg b/assets/MapIcons/blackIcons/postal-code-prefix.svg
new file mode 100644
index 00000000..fb1b495f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/postal-code-prefix.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/postal-code.svg b/assets/MapIcons/blackIcons/postal-code.svg
new file mode 100644
index 00000000..fb1b495f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/postal-code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/rafting.svg b/assets/MapIcons/blackIcons/rafting.svg
new file mode 100644
index 00000000..abae6d28
--- /dev/null
+++ b/assets/MapIcons/blackIcons/rafting.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/real-estate-agency.svg b/assets/MapIcons/blackIcons/real-estate-agency.svg
new file mode 100644
index 00000000..a693d4ed
--- /dev/null
+++ b/assets/MapIcons/blackIcons/real-estate-agency.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/restaurant.svg b/assets/MapIcons/blackIcons/restaurant.svg
new file mode 100644
index 00000000..42ca1a46
--- /dev/null
+++ b/assets/MapIcons/blackIcons/restaurant.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/roofing-contractor.svg b/assets/MapIcons/blackIcons/roofing-contractor.svg
new file mode 100644
index 00000000..73a386f7
--- /dev/null
+++ b/assets/MapIcons/blackIcons/roofing-contractor.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/route-pin.svg b/assets/MapIcons/blackIcons/route-pin.svg
new file mode 100644
index 00000000..bbe3cacb
--- /dev/null
+++ b/assets/MapIcons/blackIcons/route-pin.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/route.svg b/assets/MapIcons/blackIcons/route.svg
new file mode 100644
index 00000000..4ee046d5
--- /dev/null
+++ b/assets/MapIcons/blackIcons/route.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/rv-park.svg b/assets/MapIcons/blackIcons/rv-park.svg
new file mode 100644
index 00000000..07c8c905
--- /dev/null
+++ b/assets/MapIcons/blackIcons/rv-park.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/sailing.svg b/assets/MapIcons/blackIcons/sailing.svg
new file mode 100644
index 00000000..74ed8457
--- /dev/null
+++ b/assets/MapIcons/blackIcons/sailing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/school.svg b/assets/MapIcons/blackIcons/school.svg
new file mode 100644
index 00000000..77b6a3a4
--- /dev/null
+++ b/assets/MapIcons/blackIcons/school.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/scuba-diving.svg b/assets/MapIcons/blackIcons/scuba-diving.svg
new file mode 100644
index 00000000..f08bf515
--- /dev/null
+++ b/assets/MapIcons/blackIcons/scuba-diving.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/search.svg b/assets/MapIcons/blackIcons/search.svg
new file mode 100644
index 00000000..4cbb2a08
--- /dev/null
+++ b/assets/MapIcons/blackIcons/search.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/sheild.svg b/assets/MapIcons/blackIcons/sheild.svg
new file mode 100644
index 00000000..0b6ccb32
--- /dev/null
+++ b/assets/MapIcons/blackIcons/sheild.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/shopping-mall.svg b/assets/MapIcons/blackIcons/shopping-mall.svg
new file mode 100644
index 00000000..71b2e1ab
--- /dev/null
+++ b/assets/MapIcons/blackIcons/shopping-mall.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/sign-language.svg b/assets/MapIcons/blackIcons/sign-language.svg
new file mode 100644
index 00000000..f6fa169c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/sign-language.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/skateboarding.svg b/assets/MapIcons/blackIcons/skateboarding.svg
new file mode 100644
index 00000000..b3f95450
--- /dev/null
+++ b/assets/MapIcons/blackIcons/skateboarding.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/ski-jumping.svg b/assets/MapIcons/blackIcons/ski-jumping.svg
new file mode 100644
index 00000000..0087b2c5
--- /dev/null
+++ b/assets/MapIcons/blackIcons/ski-jumping.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/skiing.svg b/assets/MapIcons/blackIcons/skiing.svg
new file mode 100644
index 00000000..b3cb6110
--- /dev/null
+++ b/assets/MapIcons/blackIcons/skiing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/sledding.svg b/assets/MapIcons/blackIcons/sledding.svg
new file mode 100644
index 00000000..039c563c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/sledding.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/snow-shoeing.svg b/assets/MapIcons/blackIcons/snow-shoeing.svg
new file mode 100644
index 00000000..660eb695
--- /dev/null
+++ b/assets/MapIcons/blackIcons/snow-shoeing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/snow.svg b/assets/MapIcons/blackIcons/snow.svg
new file mode 100644
index 00000000..4a239a4f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/snow.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/snowboarding.svg b/assets/MapIcons/blackIcons/snowboarding.svg
new file mode 100644
index 00000000..a4acc5f6
--- /dev/null
+++ b/assets/MapIcons/blackIcons/snowboarding.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/snowmobile.svg b/assets/MapIcons/blackIcons/snowmobile.svg
new file mode 100644
index 00000000..d10b5769
--- /dev/null
+++ b/assets/MapIcons/blackIcons/snowmobile.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/spa.svg b/assets/MapIcons/blackIcons/spa.svg
new file mode 100644
index 00000000..f545ff0d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/spa.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/square-pin.svg b/assets/MapIcons/blackIcons/square-pin.svg
new file mode 100644
index 00000000..fd68e9c9
--- /dev/null
+++ b/assets/MapIcons/blackIcons/square-pin.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/square-rounded.svg b/assets/MapIcons/blackIcons/square-rounded.svg
new file mode 100644
index 00000000..ad681c59
--- /dev/null
+++ b/assets/MapIcons/blackIcons/square-rounded.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/square.svg b/assets/MapIcons/blackIcons/square.svg
new file mode 100644
index 00000000..12a56907
--- /dev/null
+++ b/assets/MapIcons/blackIcons/square.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/stadium.svg b/assets/MapIcons/blackIcons/stadium.svg
new file mode 100644
index 00000000..44fa2f17
--- /dev/null
+++ b/assets/MapIcons/blackIcons/stadium.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/storage.svg b/assets/MapIcons/blackIcons/storage.svg
new file mode 100644
index 00000000..8fc4bbf3
--- /dev/null
+++ b/assets/MapIcons/blackIcons/storage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/store.svg b/assets/MapIcons/blackIcons/store.svg
new file mode 100644
index 00000000..5807dd1a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/store.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/subway-station.svg b/assets/MapIcons/blackIcons/subway-station.svg
new file mode 100644
index 00000000..ae6580e7
--- /dev/null
+++ b/assets/MapIcons/blackIcons/subway-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/surfing.svg b/assets/MapIcons/blackIcons/surfing.svg
new file mode 100644
index 00000000..a4fd24b5
--- /dev/null
+++ b/assets/MapIcons/blackIcons/surfing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/swimming.svg b/assets/MapIcons/blackIcons/swimming.svg
new file mode 100644
index 00000000..8db10c13
--- /dev/null
+++ b/assets/MapIcons/blackIcons/swimming.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/synagogue.svg b/assets/MapIcons/blackIcons/synagogue.svg
new file mode 100644
index 00000000..5f54ea3a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/synagogue.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/taxi-stand.svg b/assets/MapIcons/blackIcons/taxi-stand.svg
new file mode 100644
index 00000000..42d94cd8
--- /dev/null
+++ b/assets/MapIcons/blackIcons/taxi-stand.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/tennis.svg b/assets/MapIcons/blackIcons/tennis.svg
new file mode 100644
index 00000000..2c3bb05a
--- /dev/null
+++ b/assets/MapIcons/blackIcons/tennis.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/toilet.svg b/assets/MapIcons/blackIcons/toilet.svg
new file mode 100644
index 00000000..422ed3f0
--- /dev/null
+++ b/assets/MapIcons/blackIcons/toilet.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/trail-walking.svg b/assets/MapIcons/blackIcons/trail-walking.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/trail-walking.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/train-station.svg b/assets/MapIcons/blackIcons/train-station.svg
new file mode 100644
index 00000000..5e62b54c
--- /dev/null
+++ b/assets/MapIcons/blackIcons/train-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/transit-station.svg b/assets/MapIcons/blackIcons/transit-station.svg
new file mode 100644
index 00000000..f50e02bd
--- /dev/null
+++ b/assets/MapIcons/blackIcons/transit-station.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/travel-agency.svg b/assets/MapIcons/blackIcons/travel-agency.svg
new file mode 100644
index 00000000..85be5839
--- /dev/null
+++ b/assets/MapIcons/blackIcons/travel-agency.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/unisex.svg b/assets/MapIcons/blackIcons/unisex.svg
new file mode 100644
index 00000000..1c6b00a6
--- /dev/null
+++ b/assets/MapIcons/blackIcons/unisex.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/university.svg b/assets/MapIcons/blackIcons/university.svg
new file mode 100644
index 00000000..4463e02b
--- /dev/null
+++ b/assets/MapIcons/blackIcons/university.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/veterinary-care.svg b/assets/MapIcons/blackIcons/veterinary-care.svg
new file mode 100644
index 00000000..b30f2f5f
--- /dev/null
+++ b/assets/MapIcons/blackIcons/veterinary-care.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/viewing.svg b/assets/MapIcons/blackIcons/viewing.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/viewing.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/volume-control-telephone.svg b/assets/MapIcons/blackIcons/volume-control-telephone.svg
new file mode 100644
index 00000000..d57b20b2
--- /dev/null
+++ b/assets/MapIcons/blackIcons/volume-control-telephone.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/walking.svg b/assets/MapIcons/blackIcons/walking.svg
new file mode 100644
index 00000000..66dc9051
--- /dev/null
+++ b/assets/MapIcons/blackIcons/walking.svg
@@ -0,0 +1 @@
+undefined
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/waterskiing.svg b/assets/MapIcons/blackIcons/waterskiing.svg
new file mode 100644
index 00000000..a45aaf76
--- /dev/null
+++ b/assets/MapIcons/blackIcons/waterskiing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/whale-watching.svg b/assets/MapIcons/blackIcons/whale-watching.svg
new file mode 100644
index 00000000..55834ccd
--- /dev/null
+++ b/assets/MapIcons/blackIcons/whale-watching.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/wheelchair.svg b/assets/MapIcons/blackIcons/wheelchair.svg
new file mode 100644
index 00000000..bbaa7e55
--- /dev/null
+++ b/assets/MapIcons/blackIcons/wheelchair.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/wind-surfing.svg b/assets/MapIcons/blackIcons/wind-surfing.svg
new file mode 100644
index 00000000..fc7b5124
--- /dev/null
+++ b/assets/MapIcons/blackIcons/wind-surfing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/zoo.svg b/assets/MapIcons/blackIcons/zoo.svg
new file mode 100644
index 00000000..8ea845f3
--- /dev/null
+++ b/assets/MapIcons/blackIcons/zoo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/zoom-in-alt.svg b/assets/MapIcons/blackIcons/zoom-in-alt.svg
new file mode 100644
index 00000000..ddc3196e
--- /dev/null
+++ b/assets/MapIcons/blackIcons/zoom-in-alt.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/zoom-in.svg b/assets/MapIcons/blackIcons/zoom-in.svg
new file mode 100644
index 00000000..87b238ba
--- /dev/null
+++ b/assets/MapIcons/blackIcons/zoom-in.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/zoom-out-alt.svg b/assets/MapIcons/blackIcons/zoom-out-alt.svg
new file mode 100644
index 00000000..fade492d
--- /dev/null
+++ b/assets/MapIcons/blackIcons/zoom-out-alt.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/blackIcons/zoom-out.svg b/assets/MapIcons/blackIcons/zoom-out.svg
new file mode 100644
index 00000000..c40a2293
--- /dev/null
+++ b/assets/MapIcons/blackIcons/zoom-out.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/MapIcons/colorNumbers/00_reference.html b/assets/MapIcons/colorNumbers/00_reference.html
new file mode 100644
index 00000000..cc65213a
--- /dev/null
+++ b/assets/MapIcons/colorNumbers/00_reference.html
@@ -0,0 +1,1226 @@
+
+abseiling.svg
+accounting.svg
+airport.svg
+amusement-park.svg
+aquarium.svg
+archery.svg
+art-gallery.svg
+assistive-listening-system.svg
+atm.svg
+audio-description.svg
+bakery.svg
+bank.svg
+bar.svg
+baseball.svg
+beauty-salon.svg
+bicycle-store.svg
+bicycling.svg
+boating.svg
+boat-ramp.svg
+boat-tour.svg
+book-store.svg
+bowling-alley.svg
+braille.svg
+bus-station.svg
+cafe.svg
+campground.svg
+canoe.svg
+car-dealer.svg
+car-rental.svg
+car-repair.svg
+car-wash.svg
+casino.svg
+cemetery.svg
+chairlift.svg
+church.svg
+circle.svg
+city-hall.svg
+climbing.svg
+closed-captioning.svg
+clothing-store.svg
+compass.svg
+convenience-store.svg
+courthouse.svg
+cross-country-skiing.svg
+crosshairs.svg
+dentist.svg
+department-store.svg
+diving.svg
+doctor.svg
+electrician.svg
+electronics-store.svg
+embassy.svg
+expand.svg
+female.svg
+finance.svg
+fire-station.svg
+fish-cleaning.svg
+fishing-pier.svg
+fishing.svg
+florist.svg
+food.svg
+fullscreen.svg
+funeral-home.svg
+furniture-store.svg
+gas-station.svg
+general-contractor.svg
+golf.svg
+grocery-or-supermarket.svg
+gym.svg
+hair-care.svg
+hang-gliding.svg
+hardware-store.svg
+health.svg
+hindu-temple.svg
+horse-riding.svg
+hospital.svg
+ice-fishing.svg
+ice-skating.svg
+inline-skating.svg
+insurance-agency.svg
+jet-skiing.svg
+jewelry-store.svg
+kayaking.svg
+laundry.svg
+lawyer.svg
+library.svg
+liquor-store.svg
+local-government.svg
+location-arrow.svg
+locksmith.svg
+lodging.svg
+low-vision-access.svg
+male.svg
+map-pin.svg
+marina.svg
+mosque.svg
+motobike-trail.svg
+movie-rental.svg
+movie-theater.svg
+moving-company.svg
+museum.svg
+natural-feature.svg
+night-club.svg
+open-captioning.svg
+painter.svg
+parking.svg
+park.svg
+pet-store.svg
+pharmacy.svg
+physiotherapist.svg
+place-of-worship.svg
+playground.svg
+plumber.svg
+point-of-interest.svg
+police.svg
+political.svg
+postal-code-prefix.svg
+postal-code.svg
+post-box.svg
+post-office.svg
+rafting.svg
+real-estate-agency.svg
+restaurant.svg
+roofing-contractor.svg
+route-pin.svg
+route.svg
+rv-park.svg
+sailing.svg
+school.svg
+scuba-diving.svg
+search.svg
+sheild.svg
+shopping-mall.svg
+sign-language.svg
+skateboarding.svg
+skiing.svg
+ski-jumping.svg
+sledding.svg
+snowboarding.svg
+snowmobile.svg
+snow-shoeing.svg
+snow.svg
+spa.svg
+square-pin.svg
+square-rounded.svg
+square.svg
+stadium.svg
+storage.svg
+store.svg
+subway-station.svg
+surfing.svg
+swimming.svg
+synagogue.svg
+taxi-stand.svg
+tennis.svg
+toilet.svg
+trail-walking.svg
+train-station.svg
+transit-station.svg
+travel-agency.svg
+unisex.svg
+university.svg
+veterinary-care.svg
+viewing.svg
+volume-control-telephone.svg
+walking.svg
+waterskiing.svg
+whale-watching.svg
+wheelchair.svg
+wind-surfing.svg
+zoom-in-alt.svg
+zoom-in.svg
+zoom-out-alt.svg
+zoom-out.svg
+zoo.svg
+
\ No newline at end of file
diff --git a/assets/MapIcons/colorNumbers/marker_black!.png b/assets/MapIcons/colorNumbers/marker_black!.png
new file mode 100644
index 00000000..a32ff3d5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black#.png b/assets/MapIcons/colorNumbers/marker_black#.png
new file mode 100644
index 00000000..382e5e69
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black$.png b/assets/MapIcons/colorNumbers/marker_black$.png
new file mode 100644
index 00000000..0aca6957
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black%.png b/assets/MapIcons/colorNumbers/marker_black%.png
new file mode 100644
index 00000000..4f71e2a8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black&.png b/assets/MapIcons/colorNumbers/marker_black&.png
new file mode 100644
index 00000000..0a30fa4d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black+.png b/assets/MapIcons/colorNumbers/marker_black+.png
new file mode 100644
index 00000000..6ddbe240
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black-.png b/assets/MapIcons/colorNumbers/marker_black-.png
new file mode 100644
index 00000000..05503923
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black.png b/assets/MapIcons/colorNumbers/marker_black.png
new file mode 100644
index 00000000..13746327
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black1.png b/assets/MapIcons/colorNumbers/marker_black1.png
new file mode 100644
index 00000000..7dd5c3fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black10.png b/assets/MapIcons/colorNumbers/marker_black10.png
new file mode 100644
index 00000000..c4175b1d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black100.png b/assets/MapIcons/colorNumbers/marker_black100.png
new file mode 100644
index 00000000..7906f292
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black11.png b/assets/MapIcons/colorNumbers/marker_black11.png
new file mode 100644
index 00000000..8a42de49
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black12.png b/assets/MapIcons/colorNumbers/marker_black12.png
new file mode 100644
index 00000000..c51a36c2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black13.png b/assets/MapIcons/colorNumbers/marker_black13.png
new file mode 100644
index 00000000..63dd7bbc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black14.png b/assets/MapIcons/colorNumbers/marker_black14.png
new file mode 100644
index 00000000..b9f4fb70
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black15.png b/assets/MapIcons/colorNumbers/marker_black15.png
new file mode 100644
index 00000000..7de999ea
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black16.png b/assets/MapIcons/colorNumbers/marker_black16.png
new file mode 100644
index 00000000..f3f847cb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black17.png b/assets/MapIcons/colorNumbers/marker_black17.png
new file mode 100644
index 00000000..12b34dbc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black18.png b/assets/MapIcons/colorNumbers/marker_black18.png
new file mode 100644
index 00000000..3bc8fc42
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black19.png b/assets/MapIcons/colorNumbers/marker_black19.png
new file mode 100644
index 00000000..a55a811a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black2.png b/assets/MapIcons/colorNumbers/marker_black2.png
new file mode 100644
index 00000000..a83954fc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black20.png b/assets/MapIcons/colorNumbers/marker_black20.png
new file mode 100644
index 00000000..47dbc710
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black21.png b/assets/MapIcons/colorNumbers/marker_black21.png
new file mode 100644
index 00000000..94dc0582
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black22.png b/assets/MapIcons/colorNumbers/marker_black22.png
new file mode 100644
index 00000000..96bf87b1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black23.png b/assets/MapIcons/colorNumbers/marker_black23.png
new file mode 100644
index 00000000..b03718b1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black24.png b/assets/MapIcons/colorNumbers/marker_black24.png
new file mode 100644
index 00000000..b5393ca6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black25.png b/assets/MapIcons/colorNumbers/marker_black25.png
new file mode 100644
index 00000000..1c1798d6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black26.png b/assets/MapIcons/colorNumbers/marker_black26.png
new file mode 100644
index 00000000..e4d6ca4d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black27.png b/assets/MapIcons/colorNumbers/marker_black27.png
new file mode 100644
index 00000000..75f7e5bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black28.png b/assets/MapIcons/colorNumbers/marker_black28.png
new file mode 100644
index 00000000..66b912ea
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black29.png b/assets/MapIcons/colorNumbers/marker_black29.png
new file mode 100644
index 00000000..1534e8ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black3.png b/assets/MapIcons/colorNumbers/marker_black3.png
new file mode 100644
index 00000000..0e97bc57
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black30.png b/assets/MapIcons/colorNumbers/marker_black30.png
new file mode 100644
index 00000000..9c3ca4ba
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black31.png b/assets/MapIcons/colorNumbers/marker_black31.png
new file mode 100644
index 00000000..b008ae8b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black32.png b/assets/MapIcons/colorNumbers/marker_black32.png
new file mode 100644
index 00000000..696078e7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black33.png b/assets/MapIcons/colorNumbers/marker_black33.png
new file mode 100644
index 00000000..71251d6f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black34.png b/assets/MapIcons/colorNumbers/marker_black34.png
new file mode 100644
index 00000000..478d2eda
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black35.png b/assets/MapIcons/colorNumbers/marker_black35.png
new file mode 100644
index 00000000..c91b1310
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black36.png b/assets/MapIcons/colorNumbers/marker_black36.png
new file mode 100644
index 00000000..bc0e7ca2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black37.png b/assets/MapIcons/colorNumbers/marker_black37.png
new file mode 100644
index 00000000..8a620eda
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black38.png b/assets/MapIcons/colorNumbers/marker_black38.png
new file mode 100644
index 00000000..01851166
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black39.png b/assets/MapIcons/colorNumbers/marker_black39.png
new file mode 100644
index 00000000..6c8765cd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black4.png b/assets/MapIcons/colorNumbers/marker_black4.png
new file mode 100644
index 00000000..51837e19
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black40.png b/assets/MapIcons/colorNumbers/marker_black40.png
new file mode 100644
index 00000000..8ecefba3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black41.png b/assets/MapIcons/colorNumbers/marker_black41.png
new file mode 100644
index 00000000..8a0bfce3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black42.png b/assets/MapIcons/colorNumbers/marker_black42.png
new file mode 100644
index 00000000..9cea77fc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black43.png b/assets/MapIcons/colorNumbers/marker_black43.png
new file mode 100644
index 00000000..0ab7b15a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black44.png b/assets/MapIcons/colorNumbers/marker_black44.png
new file mode 100644
index 00000000..f21fd1e6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black45.png b/assets/MapIcons/colorNumbers/marker_black45.png
new file mode 100644
index 00000000..a8b03eb5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black46.png b/assets/MapIcons/colorNumbers/marker_black46.png
new file mode 100644
index 00000000..ab7c7a82
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black47.png b/assets/MapIcons/colorNumbers/marker_black47.png
new file mode 100644
index 00000000..08ebd7c0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black48.png b/assets/MapIcons/colorNumbers/marker_black48.png
new file mode 100644
index 00000000..e835b414
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black49.png b/assets/MapIcons/colorNumbers/marker_black49.png
new file mode 100644
index 00000000..53c69711
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black5.png b/assets/MapIcons/colorNumbers/marker_black5.png
new file mode 100644
index 00000000..058e979d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black50.png b/assets/MapIcons/colorNumbers/marker_black50.png
new file mode 100644
index 00000000..8984545b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black51.png b/assets/MapIcons/colorNumbers/marker_black51.png
new file mode 100644
index 00000000..efd24236
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black52.png b/assets/MapIcons/colorNumbers/marker_black52.png
new file mode 100644
index 00000000..e0419e58
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black53.png b/assets/MapIcons/colorNumbers/marker_black53.png
new file mode 100644
index 00000000..9adeb0b2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black54.png b/assets/MapIcons/colorNumbers/marker_black54.png
new file mode 100644
index 00000000..cd107d6e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black55.png b/assets/MapIcons/colorNumbers/marker_black55.png
new file mode 100644
index 00000000..ede5c72f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black56.png b/assets/MapIcons/colorNumbers/marker_black56.png
new file mode 100644
index 00000000..af2dd053
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black57.png b/assets/MapIcons/colorNumbers/marker_black57.png
new file mode 100644
index 00000000..4bd2f247
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black58.png b/assets/MapIcons/colorNumbers/marker_black58.png
new file mode 100644
index 00000000..084401ba
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black59.png b/assets/MapIcons/colorNumbers/marker_black59.png
new file mode 100644
index 00000000..cf77d681
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black6.png b/assets/MapIcons/colorNumbers/marker_black6.png
new file mode 100644
index 00000000..18c731a7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black60.png b/assets/MapIcons/colorNumbers/marker_black60.png
new file mode 100644
index 00000000..24475f01
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black61.png b/assets/MapIcons/colorNumbers/marker_black61.png
new file mode 100644
index 00000000..6464a6b7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black62.png b/assets/MapIcons/colorNumbers/marker_black62.png
new file mode 100644
index 00000000..c89a9e80
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black63.png b/assets/MapIcons/colorNumbers/marker_black63.png
new file mode 100644
index 00000000..0d9c6138
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black64.png b/assets/MapIcons/colorNumbers/marker_black64.png
new file mode 100644
index 00000000..ec1ee82b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black65.png b/assets/MapIcons/colorNumbers/marker_black65.png
new file mode 100644
index 00000000..366b23fd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black66.png b/assets/MapIcons/colorNumbers/marker_black66.png
new file mode 100644
index 00000000..43b45153
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black67.png b/assets/MapIcons/colorNumbers/marker_black67.png
new file mode 100644
index 00000000..8d133267
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black68.png b/assets/MapIcons/colorNumbers/marker_black68.png
new file mode 100644
index 00000000..bf002c30
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black69.png b/assets/MapIcons/colorNumbers/marker_black69.png
new file mode 100644
index 00000000..22235cb2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black7.png b/assets/MapIcons/colorNumbers/marker_black7.png
new file mode 100644
index 00000000..0ad6fa05
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black70.png b/assets/MapIcons/colorNumbers/marker_black70.png
new file mode 100644
index 00000000..d18b05df
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black71.png b/assets/MapIcons/colorNumbers/marker_black71.png
new file mode 100644
index 00000000..9343b594
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black72.png b/assets/MapIcons/colorNumbers/marker_black72.png
new file mode 100644
index 00000000..ce991b31
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black73.png b/assets/MapIcons/colorNumbers/marker_black73.png
new file mode 100644
index 00000000..e8dd7138
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black74.png b/assets/MapIcons/colorNumbers/marker_black74.png
new file mode 100644
index 00000000..20e61482
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black75.png b/assets/MapIcons/colorNumbers/marker_black75.png
new file mode 100644
index 00000000..d2f82777
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black76.png b/assets/MapIcons/colorNumbers/marker_black76.png
new file mode 100644
index 00000000..df1cf6ef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black77.png b/assets/MapIcons/colorNumbers/marker_black77.png
new file mode 100644
index 00000000..6bbbc5ab
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black78.png b/assets/MapIcons/colorNumbers/marker_black78.png
new file mode 100644
index 00000000..30eaebad
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black79.png b/assets/MapIcons/colorNumbers/marker_black79.png
new file mode 100644
index 00000000..600c1f8e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black8.png b/assets/MapIcons/colorNumbers/marker_black8.png
new file mode 100644
index 00000000..1d298917
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black80.png b/assets/MapIcons/colorNumbers/marker_black80.png
new file mode 100644
index 00000000..a1a54058
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black81.png b/assets/MapIcons/colorNumbers/marker_black81.png
new file mode 100644
index 00000000..deaf3907
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black82.png b/assets/MapIcons/colorNumbers/marker_black82.png
new file mode 100644
index 00000000..744a6912
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black83.png b/assets/MapIcons/colorNumbers/marker_black83.png
new file mode 100644
index 00000000..c5752ec9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black84.png b/assets/MapIcons/colorNumbers/marker_black84.png
new file mode 100644
index 00000000..861a7ec6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black85.png b/assets/MapIcons/colorNumbers/marker_black85.png
new file mode 100644
index 00000000..adeecdbd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black86.png b/assets/MapIcons/colorNumbers/marker_black86.png
new file mode 100644
index 00000000..7078c90f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black87.png b/assets/MapIcons/colorNumbers/marker_black87.png
new file mode 100644
index 00000000..1fe17bd1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black88.png b/assets/MapIcons/colorNumbers/marker_black88.png
new file mode 100644
index 00000000..5d1752f5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black89.png b/assets/MapIcons/colorNumbers/marker_black89.png
new file mode 100644
index 00000000..62349366
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black9.png b/assets/MapIcons/colorNumbers/marker_black9.png
new file mode 100644
index 00000000..d83a4101
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black90.png b/assets/MapIcons/colorNumbers/marker_black90.png
new file mode 100644
index 00000000..69f18c15
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black91.png b/assets/MapIcons/colorNumbers/marker_black91.png
new file mode 100644
index 00000000..baa4b9fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black92.png b/assets/MapIcons/colorNumbers/marker_black92.png
new file mode 100644
index 00000000..b2c9bbbd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black93.png b/assets/MapIcons/colorNumbers/marker_black93.png
new file mode 100644
index 00000000..73089367
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black94.png b/assets/MapIcons/colorNumbers/marker_black94.png
new file mode 100644
index 00000000..82b07d66
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black95.png b/assets/MapIcons/colorNumbers/marker_black95.png
new file mode 100644
index 00000000..b4330be1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black96.png b/assets/MapIcons/colorNumbers/marker_black96.png
new file mode 100644
index 00000000..ed689375
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black97.png b/assets/MapIcons/colorNumbers/marker_black97.png
new file mode 100644
index 00000000..dc72479d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black98.png b/assets/MapIcons/colorNumbers/marker_black98.png
new file mode 100644
index 00000000..ae2ae898
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black99.png b/assets/MapIcons/colorNumbers/marker_black99.png
new file mode 100644
index 00000000..9e906d08
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black=.png b/assets/MapIcons/colorNumbers/marker_black=.png
new file mode 100644
index 00000000..ff29318d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_black@.png b/assets/MapIcons/colorNumbers/marker_black@.png
new file mode 100644
index 00000000..c768c9ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_black@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackA.png b/assets/MapIcons/colorNumbers/marker_blackA.png
new file mode 100644
index 00000000..0b917963
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackB.png b/assets/MapIcons/colorNumbers/marker_blackB.png
new file mode 100644
index 00000000..3badb249
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackC.png b/assets/MapIcons/colorNumbers/marker_blackC.png
new file mode 100644
index 00000000..6ad2b0d0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackD.png b/assets/MapIcons/colorNumbers/marker_blackD.png
new file mode 100644
index 00000000..6d505cb7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackE.png b/assets/MapIcons/colorNumbers/marker_blackE.png
new file mode 100644
index 00000000..43243266
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackF.png b/assets/MapIcons/colorNumbers/marker_blackF.png
new file mode 100644
index 00000000..affdbca1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackG.png b/assets/MapIcons/colorNumbers/marker_blackG.png
new file mode 100644
index 00000000..fa2417ac
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackH.png b/assets/MapIcons/colorNumbers/marker_blackH.png
new file mode 100644
index 00000000..17134cbb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackI.png b/assets/MapIcons/colorNumbers/marker_blackI.png
new file mode 100644
index 00000000..0aa77c74
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackJ.png b/assets/MapIcons/colorNumbers/marker_blackJ.png
new file mode 100644
index 00000000..91fab516
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackK.png b/assets/MapIcons/colorNumbers/marker_blackK.png
new file mode 100644
index 00000000..637a3d0c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackL.png b/assets/MapIcons/colorNumbers/marker_blackL.png
new file mode 100644
index 00000000..597c4c53
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackM.png b/assets/MapIcons/colorNumbers/marker_blackM.png
new file mode 100644
index 00000000..c34d0504
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackN.png b/assets/MapIcons/colorNumbers/marker_blackN.png
new file mode 100644
index 00000000..21fe2c28
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackO.png b/assets/MapIcons/colorNumbers/marker_blackO.png
new file mode 100644
index 00000000..76727239
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackP.png b/assets/MapIcons/colorNumbers/marker_blackP.png
new file mode 100644
index 00000000..df4ebad9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackQ.png b/assets/MapIcons/colorNumbers/marker_blackQ.png
new file mode 100644
index 00000000..4de2d736
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackR.png b/assets/MapIcons/colorNumbers/marker_blackR.png
new file mode 100644
index 00000000..7e5ba363
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackS.png b/assets/MapIcons/colorNumbers/marker_blackS.png
new file mode 100644
index 00000000..7e4573ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackT.png b/assets/MapIcons/colorNumbers/marker_blackT.png
new file mode 100644
index 00000000..ce503d7d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackU.png b/assets/MapIcons/colorNumbers/marker_blackU.png
new file mode 100644
index 00000000..09527bd7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackV.png b/assets/MapIcons/colorNumbers/marker_blackV.png
new file mode 100644
index 00000000..7698ea0b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackW.png b/assets/MapIcons/colorNumbers/marker_blackW.png
new file mode 100644
index 00000000..722ed4f6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackX.png b/assets/MapIcons/colorNumbers/marker_blackX.png
new file mode 100644
index 00000000..e699c46c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackY.png b/assets/MapIcons/colorNumbers/marker_blackY.png
new file mode 100644
index 00000000..79b6a4e5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blackZ.png b/assets/MapIcons/colorNumbers/marker_blackZ.png
new file mode 100644
index 00000000..1a54d33d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blackZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue!.png b/assets/MapIcons/colorNumbers/marker_blue!.png
new file mode 100644
index 00000000..37c66c84
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue#.png b/assets/MapIcons/colorNumbers/marker_blue#.png
new file mode 100644
index 00000000..daa34a7d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue$.png b/assets/MapIcons/colorNumbers/marker_blue$.png
new file mode 100644
index 00000000..74533347
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue%.png b/assets/MapIcons/colorNumbers/marker_blue%.png
new file mode 100644
index 00000000..f39083a9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue&.png b/assets/MapIcons/colorNumbers/marker_blue&.png
new file mode 100644
index 00000000..3800f7f2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue+.png b/assets/MapIcons/colorNumbers/marker_blue+.png
new file mode 100644
index 00000000..81147377
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue-.png b/assets/MapIcons/colorNumbers/marker_blue-.png
new file mode 100644
index 00000000..6b0c49e2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue.png b/assets/MapIcons/colorNumbers/marker_blue.png
new file mode 100644
index 00000000..eb7d65fd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue1.png b/assets/MapIcons/colorNumbers/marker_blue1.png
new file mode 100644
index 00000000..66d8a8ca
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue10.png b/assets/MapIcons/colorNumbers/marker_blue10.png
new file mode 100644
index 00000000..2d7c47f9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue100.png b/assets/MapIcons/colorNumbers/marker_blue100.png
new file mode 100644
index 00000000..88892572
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue11.png b/assets/MapIcons/colorNumbers/marker_blue11.png
new file mode 100644
index 00000000..babf59da
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue12.png b/assets/MapIcons/colorNumbers/marker_blue12.png
new file mode 100644
index 00000000..f1b725b0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue13.png b/assets/MapIcons/colorNumbers/marker_blue13.png
new file mode 100644
index 00000000..7de0dd76
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue14.png b/assets/MapIcons/colorNumbers/marker_blue14.png
new file mode 100644
index 00000000..9f32a967
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue15.png b/assets/MapIcons/colorNumbers/marker_blue15.png
new file mode 100644
index 00000000..9266f128
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue16.png b/assets/MapIcons/colorNumbers/marker_blue16.png
new file mode 100644
index 00000000..66da62c8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue17.png b/assets/MapIcons/colorNumbers/marker_blue17.png
new file mode 100644
index 00000000..7b819162
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue18.png b/assets/MapIcons/colorNumbers/marker_blue18.png
new file mode 100644
index 00000000..23bcfd9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue19.png b/assets/MapIcons/colorNumbers/marker_blue19.png
new file mode 100644
index 00000000..3faf2149
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue2.png b/assets/MapIcons/colorNumbers/marker_blue2.png
new file mode 100644
index 00000000..deefdbe5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue20.png b/assets/MapIcons/colorNumbers/marker_blue20.png
new file mode 100644
index 00000000..f6d60cdf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue21.png b/assets/MapIcons/colorNumbers/marker_blue21.png
new file mode 100644
index 00000000..b495d8e8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue22.png b/assets/MapIcons/colorNumbers/marker_blue22.png
new file mode 100644
index 00000000..fb7cb638
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue23.png b/assets/MapIcons/colorNumbers/marker_blue23.png
new file mode 100644
index 00000000..b377b559
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue24.png b/assets/MapIcons/colorNumbers/marker_blue24.png
new file mode 100644
index 00000000..a3ea06f7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue25.png b/assets/MapIcons/colorNumbers/marker_blue25.png
new file mode 100644
index 00000000..9201711a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue26.png b/assets/MapIcons/colorNumbers/marker_blue26.png
new file mode 100644
index 00000000..81fe4e42
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue27.png b/assets/MapIcons/colorNumbers/marker_blue27.png
new file mode 100644
index 00000000..5ee38e15
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue28.png b/assets/MapIcons/colorNumbers/marker_blue28.png
new file mode 100644
index 00000000..9e557285
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue29.png b/assets/MapIcons/colorNumbers/marker_blue29.png
new file mode 100644
index 00000000..24bb6faa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue3.png b/assets/MapIcons/colorNumbers/marker_blue3.png
new file mode 100644
index 00000000..886db58b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue30.png b/assets/MapIcons/colorNumbers/marker_blue30.png
new file mode 100644
index 00000000..3972f79b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue31.png b/assets/MapIcons/colorNumbers/marker_blue31.png
new file mode 100644
index 00000000..82f72fd6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue32.png b/assets/MapIcons/colorNumbers/marker_blue32.png
new file mode 100644
index 00000000..9c1d5a47
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue33.png b/assets/MapIcons/colorNumbers/marker_blue33.png
new file mode 100644
index 00000000..c30487ee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue34.png b/assets/MapIcons/colorNumbers/marker_blue34.png
new file mode 100644
index 00000000..6e26d45b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue35.png b/assets/MapIcons/colorNumbers/marker_blue35.png
new file mode 100644
index 00000000..68f118ab
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue36.png b/assets/MapIcons/colorNumbers/marker_blue36.png
new file mode 100644
index 00000000..7089afe1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue37.png b/assets/MapIcons/colorNumbers/marker_blue37.png
new file mode 100644
index 00000000..2a769cc2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue38.png b/assets/MapIcons/colorNumbers/marker_blue38.png
new file mode 100644
index 00000000..d15fd08a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue39.png b/assets/MapIcons/colorNumbers/marker_blue39.png
new file mode 100644
index 00000000..6b13f156
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue4.png b/assets/MapIcons/colorNumbers/marker_blue4.png
new file mode 100644
index 00000000..60188d67
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue40.png b/assets/MapIcons/colorNumbers/marker_blue40.png
new file mode 100644
index 00000000..6a9c03be
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue41.png b/assets/MapIcons/colorNumbers/marker_blue41.png
new file mode 100644
index 00000000..546b8b0d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue42.png b/assets/MapIcons/colorNumbers/marker_blue42.png
new file mode 100644
index 00000000..fe8cad44
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue43.png b/assets/MapIcons/colorNumbers/marker_blue43.png
new file mode 100644
index 00000000..13799970
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue44.png b/assets/MapIcons/colorNumbers/marker_blue44.png
new file mode 100644
index 00000000..762f15f7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue45.png b/assets/MapIcons/colorNumbers/marker_blue45.png
new file mode 100644
index 00000000..98173832
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue46.png b/assets/MapIcons/colorNumbers/marker_blue46.png
new file mode 100644
index 00000000..352e4cd8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue47.png b/assets/MapIcons/colorNumbers/marker_blue47.png
new file mode 100644
index 00000000..202bf772
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue48.png b/assets/MapIcons/colorNumbers/marker_blue48.png
new file mode 100644
index 00000000..70720b7d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue49.png b/assets/MapIcons/colorNumbers/marker_blue49.png
new file mode 100644
index 00000000..ee584ec6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue5.png b/assets/MapIcons/colorNumbers/marker_blue5.png
new file mode 100644
index 00000000..739b26e7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue50.png b/assets/MapIcons/colorNumbers/marker_blue50.png
new file mode 100644
index 00000000..c9801bc4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue51.png b/assets/MapIcons/colorNumbers/marker_blue51.png
new file mode 100644
index 00000000..544debe1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue52.png b/assets/MapIcons/colorNumbers/marker_blue52.png
new file mode 100644
index 00000000..eceac8ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue53.png b/assets/MapIcons/colorNumbers/marker_blue53.png
new file mode 100644
index 00000000..b7d1d421
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue54.png b/assets/MapIcons/colorNumbers/marker_blue54.png
new file mode 100644
index 00000000..5bf569fc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue55.png b/assets/MapIcons/colorNumbers/marker_blue55.png
new file mode 100644
index 00000000..26e07b68
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue56.png b/assets/MapIcons/colorNumbers/marker_blue56.png
new file mode 100644
index 00000000..c8e57ea1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue57.png b/assets/MapIcons/colorNumbers/marker_blue57.png
new file mode 100644
index 00000000..ef0fc465
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue58.png b/assets/MapIcons/colorNumbers/marker_blue58.png
new file mode 100644
index 00000000..70f9e656
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue59.png b/assets/MapIcons/colorNumbers/marker_blue59.png
new file mode 100644
index 00000000..a75e82fb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue6.png b/assets/MapIcons/colorNumbers/marker_blue6.png
new file mode 100644
index 00000000..497ba526
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue60.png b/assets/MapIcons/colorNumbers/marker_blue60.png
new file mode 100644
index 00000000..3772f4c5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue61.png b/assets/MapIcons/colorNumbers/marker_blue61.png
new file mode 100644
index 00000000..db3d07a0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue62.png b/assets/MapIcons/colorNumbers/marker_blue62.png
new file mode 100644
index 00000000..ecfc729a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue63.png b/assets/MapIcons/colorNumbers/marker_blue63.png
new file mode 100644
index 00000000..31113970
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue64.png b/assets/MapIcons/colorNumbers/marker_blue64.png
new file mode 100644
index 00000000..ecc7f9b1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue65.png b/assets/MapIcons/colorNumbers/marker_blue65.png
new file mode 100644
index 00000000..e0a32c4b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue66.png b/assets/MapIcons/colorNumbers/marker_blue66.png
new file mode 100644
index 00000000..cbd4adb4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue67.png b/assets/MapIcons/colorNumbers/marker_blue67.png
new file mode 100644
index 00000000..ceb3d51f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue68.png b/assets/MapIcons/colorNumbers/marker_blue68.png
new file mode 100644
index 00000000..524dd5b8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue69.png b/assets/MapIcons/colorNumbers/marker_blue69.png
new file mode 100644
index 00000000..80762eb5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue7.png b/assets/MapIcons/colorNumbers/marker_blue7.png
new file mode 100644
index 00000000..2bef4610
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue70.png b/assets/MapIcons/colorNumbers/marker_blue70.png
new file mode 100644
index 00000000..da8d9ad1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue71.png b/assets/MapIcons/colorNumbers/marker_blue71.png
new file mode 100644
index 00000000..0a13de63
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue72.png b/assets/MapIcons/colorNumbers/marker_blue72.png
new file mode 100644
index 00000000..b89f8ba5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue73.png b/assets/MapIcons/colorNumbers/marker_blue73.png
new file mode 100644
index 00000000..cb99deef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue74.png b/assets/MapIcons/colorNumbers/marker_blue74.png
new file mode 100644
index 00000000..59b97cc6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue75.png b/assets/MapIcons/colorNumbers/marker_blue75.png
new file mode 100644
index 00000000..dbfd67d3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue76.png b/assets/MapIcons/colorNumbers/marker_blue76.png
new file mode 100644
index 00000000..d726e3b9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue77.png b/assets/MapIcons/colorNumbers/marker_blue77.png
new file mode 100644
index 00000000..247af5f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue78.png b/assets/MapIcons/colorNumbers/marker_blue78.png
new file mode 100644
index 00000000..a7df6ad7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue79.png b/assets/MapIcons/colorNumbers/marker_blue79.png
new file mode 100644
index 00000000..2e710db0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue8.png b/assets/MapIcons/colorNumbers/marker_blue8.png
new file mode 100644
index 00000000..d70a30d2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue80.png b/assets/MapIcons/colorNumbers/marker_blue80.png
new file mode 100644
index 00000000..533ac373
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue81.png b/assets/MapIcons/colorNumbers/marker_blue81.png
new file mode 100644
index 00000000..f3bd24fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue82.png b/assets/MapIcons/colorNumbers/marker_blue82.png
new file mode 100644
index 00000000..2ad3d144
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue83.png b/assets/MapIcons/colorNumbers/marker_blue83.png
new file mode 100644
index 00000000..7128f065
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue84.png b/assets/MapIcons/colorNumbers/marker_blue84.png
new file mode 100644
index 00000000..d7669323
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue85.png b/assets/MapIcons/colorNumbers/marker_blue85.png
new file mode 100644
index 00000000..911e7a77
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue86.png b/assets/MapIcons/colorNumbers/marker_blue86.png
new file mode 100644
index 00000000..d7f1e480
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue87.png b/assets/MapIcons/colorNumbers/marker_blue87.png
new file mode 100644
index 00000000..3d23a210
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue88.png b/assets/MapIcons/colorNumbers/marker_blue88.png
new file mode 100644
index 00000000..af565fbd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue89.png b/assets/MapIcons/colorNumbers/marker_blue89.png
new file mode 100644
index 00000000..294d3577
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue9.png b/assets/MapIcons/colorNumbers/marker_blue9.png
new file mode 100644
index 00000000..42230111
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue90.png b/assets/MapIcons/colorNumbers/marker_blue90.png
new file mode 100644
index 00000000..36daf4af
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue91.png b/assets/MapIcons/colorNumbers/marker_blue91.png
new file mode 100644
index 00000000..6aef0b2f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue92.png b/assets/MapIcons/colorNumbers/marker_blue92.png
new file mode 100644
index 00000000..8d46945b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue93.png b/assets/MapIcons/colorNumbers/marker_blue93.png
new file mode 100644
index 00000000..c3278b0a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue94.png b/assets/MapIcons/colorNumbers/marker_blue94.png
new file mode 100644
index 00000000..6b099fde
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue95.png b/assets/MapIcons/colorNumbers/marker_blue95.png
new file mode 100644
index 00000000..3e3a6568
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue96.png b/assets/MapIcons/colorNumbers/marker_blue96.png
new file mode 100644
index 00000000..dcc795dd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue97.png b/assets/MapIcons/colorNumbers/marker_blue97.png
new file mode 100644
index 00000000..fbc3090b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue98.png b/assets/MapIcons/colorNumbers/marker_blue98.png
new file mode 100644
index 00000000..f1cf667e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue99.png b/assets/MapIcons/colorNumbers/marker_blue99.png
new file mode 100644
index 00000000..c29ba871
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue=.png b/assets/MapIcons/colorNumbers/marker_blue=.png
new file mode 100644
index 00000000..98d68a04
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blue@.png b/assets/MapIcons/colorNumbers/marker_blue@.png
new file mode 100644
index 00000000..18a758fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blue@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueA.png b/assets/MapIcons/colorNumbers/marker_blueA.png
new file mode 100644
index 00000000..b617f764
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueB.png b/assets/MapIcons/colorNumbers/marker_blueB.png
new file mode 100644
index 00000000..f0845cce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueC.png b/assets/MapIcons/colorNumbers/marker_blueC.png
new file mode 100644
index 00000000..01603fd9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueD.png b/assets/MapIcons/colorNumbers/marker_blueD.png
new file mode 100644
index 00000000..afed129b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueE.png b/assets/MapIcons/colorNumbers/marker_blueE.png
new file mode 100644
index 00000000..854696ad
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueF.png b/assets/MapIcons/colorNumbers/marker_blueF.png
new file mode 100644
index 00000000..57295d89
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueG.png b/assets/MapIcons/colorNumbers/marker_blueG.png
new file mode 100644
index 00000000..43a8dfaa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueH.png b/assets/MapIcons/colorNumbers/marker_blueH.png
new file mode 100644
index 00000000..79c35d43
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueI.png b/assets/MapIcons/colorNumbers/marker_blueI.png
new file mode 100644
index 00000000..53afe8ff
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueJ.png b/assets/MapIcons/colorNumbers/marker_blueJ.png
new file mode 100644
index 00000000..25b0c6e2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueK.png b/assets/MapIcons/colorNumbers/marker_blueK.png
new file mode 100644
index 00000000..09a6c5b6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueL.png b/assets/MapIcons/colorNumbers/marker_blueL.png
new file mode 100644
index 00000000..25e74d19
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueM.png b/assets/MapIcons/colorNumbers/marker_blueM.png
new file mode 100644
index 00000000..0188203e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueN.png b/assets/MapIcons/colorNumbers/marker_blueN.png
new file mode 100644
index 00000000..87c6112b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueO.png b/assets/MapIcons/colorNumbers/marker_blueO.png
new file mode 100644
index 00000000..858dd456
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueP.png b/assets/MapIcons/colorNumbers/marker_blueP.png
new file mode 100644
index 00000000..847532e2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueQ.png b/assets/MapIcons/colorNumbers/marker_blueQ.png
new file mode 100644
index 00000000..f0715704
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueR.png b/assets/MapIcons/colorNumbers/marker_blueR.png
new file mode 100644
index 00000000..5ace8570
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueS.png b/assets/MapIcons/colorNumbers/marker_blueS.png
new file mode 100644
index 00000000..e32829f2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueT.png b/assets/MapIcons/colorNumbers/marker_blueT.png
new file mode 100644
index 00000000..b663202c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueU.png b/assets/MapIcons/colorNumbers/marker_blueU.png
new file mode 100644
index 00000000..611ce71d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueV.png b/assets/MapIcons/colorNumbers/marker_blueV.png
new file mode 100644
index 00000000..06594441
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueW.png b/assets/MapIcons/colorNumbers/marker_blueW.png
new file mode 100644
index 00000000..adc5127d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueX.png b/assets/MapIcons/colorNumbers/marker_blueX.png
new file mode 100644
index 00000000..c01f954d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueY.png b/assets/MapIcons/colorNumbers/marker_blueY.png
new file mode 100644
index 00000000..1e6fa8a8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_blueZ.png b/assets/MapIcons/colorNumbers/marker_blueZ.png
new file mode 100644
index 00000000..82a51dc3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_blueZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green!.png b/assets/MapIcons/colorNumbers/marker_green!.png
new file mode 100644
index 00000000..df9984f7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green#.png b/assets/MapIcons/colorNumbers/marker_green#.png
new file mode 100644
index 00000000..4326c047
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green$.png b/assets/MapIcons/colorNumbers/marker_green$.png
new file mode 100644
index 00000000..f5206aa6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green%.png b/assets/MapIcons/colorNumbers/marker_green%.png
new file mode 100644
index 00000000..ba507e03
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green&.png b/assets/MapIcons/colorNumbers/marker_green&.png
new file mode 100644
index 00000000..975a5821
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green+.png b/assets/MapIcons/colorNumbers/marker_green+.png
new file mode 100644
index 00000000..16f593cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green-.png b/assets/MapIcons/colorNumbers/marker_green-.png
new file mode 100644
index 00000000..224f674e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green.png b/assets/MapIcons/colorNumbers/marker_green.png
new file mode 100644
index 00000000..9b829d6f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green1.png b/assets/MapIcons/colorNumbers/marker_green1.png
new file mode 100644
index 00000000..fd471427
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green10.png b/assets/MapIcons/colorNumbers/marker_green10.png
new file mode 100644
index 00000000..f7986526
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green100.png b/assets/MapIcons/colorNumbers/marker_green100.png
new file mode 100644
index 00000000..926415ed
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green11.png b/assets/MapIcons/colorNumbers/marker_green11.png
new file mode 100644
index 00000000..548affc6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green12.png b/assets/MapIcons/colorNumbers/marker_green12.png
new file mode 100644
index 00000000..e05d4093
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green13.png b/assets/MapIcons/colorNumbers/marker_green13.png
new file mode 100644
index 00000000..5053997b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green14.png b/assets/MapIcons/colorNumbers/marker_green14.png
new file mode 100644
index 00000000..5126fec1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green15.png b/assets/MapIcons/colorNumbers/marker_green15.png
new file mode 100644
index 00000000..63ecc145
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green16.png b/assets/MapIcons/colorNumbers/marker_green16.png
new file mode 100644
index 00000000..aea63c72
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green17.png b/assets/MapIcons/colorNumbers/marker_green17.png
new file mode 100644
index 00000000..38a9175c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green18.png b/assets/MapIcons/colorNumbers/marker_green18.png
new file mode 100644
index 00000000..c93a5d04
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green19.png b/assets/MapIcons/colorNumbers/marker_green19.png
new file mode 100644
index 00000000..0171fd89
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green2.png b/assets/MapIcons/colorNumbers/marker_green2.png
new file mode 100644
index 00000000..8f8f5707
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green20.png b/assets/MapIcons/colorNumbers/marker_green20.png
new file mode 100644
index 00000000..aee5b72d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green21.png b/assets/MapIcons/colorNumbers/marker_green21.png
new file mode 100644
index 00000000..3677a2dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green22.png b/assets/MapIcons/colorNumbers/marker_green22.png
new file mode 100644
index 00000000..fe343446
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green23.png b/assets/MapIcons/colorNumbers/marker_green23.png
new file mode 100644
index 00000000..c1d5380b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green24.png b/assets/MapIcons/colorNumbers/marker_green24.png
new file mode 100644
index 00000000..c2ae300c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green25.png b/assets/MapIcons/colorNumbers/marker_green25.png
new file mode 100644
index 00000000..0365824e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green26.png b/assets/MapIcons/colorNumbers/marker_green26.png
new file mode 100644
index 00000000..27e9d42f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green27.png b/assets/MapIcons/colorNumbers/marker_green27.png
new file mode 100644
index 00000000..4f86c540
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green28.png b/assets/MapIcons/colorNumbers/marker_green28.png
new file mode 100644
index 00000000..e177cce8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green29.png b/assets/MapIcons/colorNumbers/marker_green29.png
new file mode 100644
index 00000000..c3516963
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green3.png b/assets/MapIcons/colorNumbers/marker_green3.png
new file mode 100644
index 00000000..069c1df9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green30.png b/assets/MapIcons/colorNumbers/marker_green30.png
new file mode 100644
index 00000000..ad103ec9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green31.png b/assets/MapIcons/colorNumbers/marker_green31.png
new file mode 100644
index 00000000..5cffde2f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green32.png b/assets/MapIcons/colorNumbers/marker_green32.png
new file mode 100644
index 00000000..0c18b34c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green33.png b/assets/MapIcons/colorNumbers/marker_green33.png
new file mode 100644
index 00000000..ce8f8afc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green34.png b/assets/MapIcons/colorNumbers/marker_green34.png
new file mode 100644
index 00000000..710aeb95
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green35.png b/assets/MapIcons/colorNumbers/marker_green35.png
new file mode 100644
index 00000000..5855320c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green36.png b/assets/MapIcons/colorNumbers/marker_green36.png
new file mode 100644
index 00000000..ececd565
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green37.png b/assets/MapIcons/colorNumbers/marker_green37.png
new file mode 100644
index 00000000..b78240be
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green38.png b/assets/MapIcons/colorNumbers/marker_green38.png
new file mode 100644
index 00000000..9ec89a83
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green39.png b/assets/MapIcons/colorNumbers/marker_green39.png
new file mode 100644
index 00000000..1b0361cb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green4.png b/assets/MapIcons/colorNumbers/marker_green4.png
new file mode 100644
index 00000000..9d01ce55
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green40.png b/assets/MapIcons/colorNumbers/marker_green40.png
new file mode 100644
index 00000000..324fe18e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green41.png b/assets/MapIcons/colorNumbers/marker_green41.png
new file mode 100644
index 00000000..d783db23
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green42.png b/assets/MapIcons/colorNumbers/marker_green42.png
new file mode 100644
index 00000000..54257dde
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green43.png b/assets/MapIcons/colorNumbers/marker_green43.png
new file mode 100644
index 00000000..8ce5d7ae
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green44.png b/assets/MapIcons/colorNumbers/marker_green44.png
new file mode 100644
index 00000000..7ab2454a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green45.png b/assets/MapIcons/colorNumbers/marker_green45.png
new file mode 100644
index 00000000..33f78c0b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green46.png b/assets/MapIcons/colorNumbers/marker_green46.png
new file mode 100644
index 00000000..3023db9f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green47.png b/assets/MapIcons/colorNumbers/marker_green47.png
new file mode 100644
index 00000000..07076501
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green48.png b/assets/MapIcons/colorNumbers/marker_green48.png
new file mode 100644
index 00000000..ef5e2fbd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green49.png b/assets/MapIcons/colorNumbers/marker_green49.png
new file mode 100644
index 00000000..d34e95cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green5.png b/assets/MapIcons/colorNumbers/marker_green5.png
new file mode 100644
index 00000000..c458254f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green50.png b/assets/MapIcons/colorNumbers/marker_green50.png
new file mode 100644
index 00000000..96cec797
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green51.png b/assets/MapIcons/colorNumbers/marker_green51.png
new file mode 100644
index 00000000..dbbde770
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green52.png b/assets/MapIcons/colorNumbers/marker_green52.png
new file mode 100644
index 00000000..e26bf617
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green53.png b/assets/MapIcons/colorNumbers/marker_green53.png
new file mode 100644
index 00000000..0019911d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green54.png b/assets/MapIcons/colorNumbers/marker_green54.png
new file mode 100644
index 00000000..2e7b190b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green55.png b/assets/MapIcons/colorNumbers/marker_green55.png
new file mode 100644
index 00000000..0a2e0dfa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green56.png b/assets/MapIcons/colorNumbers/marker_green56.png
new file mode 100644
index 00000000..e4440d72
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green57.png b/assets/MapIcons/colorNumbers/marker_green57.png
new file mode 100644
index 00000000..53dd5474
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green58.png b/assets/MapIcons/colorNumbers/marker_green58.png
new file mode 100644
index 00000000..b5810be6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green59.png b/assets/MapIcons/colorNumbers/marker_green59.png
new file mode 100644
index 00000000..c1728c84
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green6.png b/assets/MapIcons/colorNumbers/marker_green6.png
new file mode 100644
index 00000000..299a2884
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green60.png b/assets/MapIcons/colorNumbers/marker_green60.png
new file mode 100644
index 00000000..27aca76e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green61.png b/assets/MapIcons/colorNumbers/marker_green61.png
new file mode 100644
index 00000000..e819823b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green62.png b/assets/MapIcons/colorNumbers/marker_green62.png
new file mode 100644
index 00000000..72e8ad7e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green63.png b/assets/MapIcons/colorNumbers/marker_green63.png
new file mode 100644
index 00000000..7fa86286
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green64.png b/assets/MapIcons/colorNumbers/marker_green64.png
new file mode 100644
index 00000000..114f019b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green65.png b/assets/MapIcons/colorNumbers/marker_green65.png
new file mode 100644
index 00000000..3a3cdba7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green66.png b/assets/MapIcons/colorNumbers/marker_green66.png
new file mode 100644
index 00000000..b9c7b388
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green67.png b/assets/MapIcons/colorNumbers/marker_green67.png
new file mode 100644
index 00000000..32f1850a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green68.png b/assets/MapIcons/colorNumbers/marker_green68.png
new file mode 100644
index 00000000..ba100f37
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green69.png b/assets/MapIcons/colorNumbers/marker_green69.png
new file mode 100644
index 00000000..787851d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green7.png b/assets/MapIcons/colorNumbers/marker_green7.png
new file mode 100644
index 00000000..945b17fe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green70.png b/assets/MapIcons/colorNumbers/marker_green70.png
new file mode 100644
index 00000000..6a056ad6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green71.png b/assets/MapIcons/colorNumbers/marker_green71.png
new file mode 100644
index 00000000..b7ed7188
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green72.png b/assets/MapIcons/colorNumbers/marker_green72.png
new file mode 100644
index 00000000..4ec2ad56
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green73.png b/assets/MapIcons/colorNumbers/marker_green73.png
new file mode 100644
index 00000000..032b5ddf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green74.png b/assets/MapIcons/colorNumbers/marker_green74.png
new file mode 100644
index 00000000..437fc4bf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green75.png b/assets/MapIcons/colorNumbers/marker_green75.png
new file mode 100644
index 00000000..a09567a3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green76.png b/assets/MapIcons/colorNumbers/marker_green76.png
new file mode 100644
index 00000000..be0f5541
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green77.png b/assets/MapIcons/colorNumbers/marker_green77.png
new file mode 100644
index 00000000..b30f1fe7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green78.png b/assets/MapIcons/colorNumbers/marker_green78.png
new file mode 100644
index 00000000..754afd87
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green79.png b/assets/MapIcons/colorNumbers/marker_green79.png
new file mode 100644
index 00000000..bfb56eb7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green8.png b/assets/MapIcons/colorNumbers/marker_green8.png
new file mode 100644
index 00000000..7c8fa2a2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green80.png b/assets/MapIcons/colorNumbers/marker_green80.png
new file mode 100644
index 00000000..3f904350
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green81.png b/assets/MapIcons/colorNumbers/marker_green81.png
new file mode 100644
index 00000000..be16c6c6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green82.png b/assets/MapIcons/colorNumbers/marker_green82.png
new file mode 100644
index 00000000..8829759e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green83.png b/assets/MapIcons/colorNumbers/marker_green83.png
new file mode 100644
index 00000000..76005c92
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green84.png b/assets/MapIcons/colorNumbers/marker_green84.png
new file mode 100644
index 00000000..5eff4010
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green85.png b/assets/MapIcons/colorNumbers/marker_green85.png
new file mode 100644
index 00000000..bf3dcc45
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green86.png b/assets/MapIcons/colorNumbers/marker_green86.png
new file mode 100644
index 00000000..7afc5476
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green87.png b/assets/MapIcons/colorNumbers/marker_green87.png
new file mode 100644
index 00000000..5a0219ca
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green88.png b/assets/MapIcons/colorNumbers/marker_green88.png
new file mode 100644
index 00000000..8bbe5b40
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green89.png b/assets/MapIcons/colorNumbers/marker_green89.png
new file mode 100644
index 00000000..b84597fc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green9.png b/assets/MapIcons/colorNumbers/marker_green9.png
new file mode 100644
index 00000000..fc2ec7c0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green90.png b/assets/MapIcons/colorNumbers/marker_green90.png
new file mode 100644
index 00000000..4ad8391a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green91.png b/assets/MapIcons/colorNumbers/marker_green91.png
new file mode 100644
index 00000000..21829132
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green92.png b/assets/MapIcons/colorNumbers/marker_green92.png
new file mode 100644
index 00000000..362ce8d8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green93.png b/assets/MapIcons/colorNumbers/marker_green93.png
new file mode 100644
index 00000000..c78c56e7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green94.png b/assets/MapIcons/colorNumbers/marker_green94.png
new file mode 100644
index 00000000..073a4d16
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green95.png b/assets/MapIcons/colorNumbers/marker_green95.png
new file mode 100644
index 00000000..fc7b0691
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green96.png b/assets/MapIcons/colorNumbers/marker_green96.png
new file mode 100644
index 00000000..6cfb422d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green97.png b/assets/MapIcons/colorNumbers/marker_green97.png
new file mode 100644
index 00000000..583a6a8e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green98.png b/assets/MapIcons/colorNumbers/marker_green98.png
new file mode 100644
index 00000000..ade5c7a6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green99.png b/assets/MapIcons/colorNumbers/marker_green99.png
new file mode 100644
index 00000000..ec49b96b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green=.png b/assets/MapIcons/colorNumbers/marker_green=.png
new file mode 100644
index 00000000..3feaa71d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_green@.png b/assets/MapIcons/colorNumbers/marker_green@.png
new file mode 100644
index 00000000..a3fdb48b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_green@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenA.png b/assets/MapIcons/colorNumbers/marker_greenA.png
new file mode 100644
index 00000000..50fc10a6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenB.png b/assets/MapIcons/colorNumbers/marker_greenB.png
new file mode 100644
index 00000000..a4209b40
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenC.png b/assets/MapIcons/colorNumbers/marker_greenC.png
new file mode 100644
index 00000000..ef6ef6c6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenD.png b/assets/MapIcons/colorNumbers/marker_greenD.png
new file mode 100644
index 00000000..0d6fe52a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenE.png b/assets/MapIcons/colorNumbers/marker_greenE.png
new file mode 100644
index 00000000..64706569
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenF.png b/assets/MapIcons/colorNumbers/marker_greenF.png
new file mode 100644
index 00000000..e53d6694
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenG.png b/assets/MapIcons/colorNumbers/marker_greenG.png
new file mode 100644
index 00000000..b26f4c1d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenH.png b/assets/MapIcons/colorNumbers/marker_greenH.png
new file mode 100644
index 00000000..a1d13bbf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenI.png b/assets/MapIcons/colorNumbers/marker_greenI.png
new file mode 100644
index 00000000..5ed45cf6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenJ.png b/assets/MapIcons/colorNumbers/marker_greenJ.png
new file mode 100644
index 00000000..bdba42f2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenK.png b/assets/MapIcons/colorNumbers/marker_greenK.png
new file mode 100644
index 00000000..e54775dd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenL.png b/assets/MapIcons/colorNumbers/marker_greenL.png
new file mode 100644
index 00000000..20262f74
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenM.png b/assets/MapIcons/colorNumbers/marker_greenM.png
new file mode 100644
index 00000000..bec30d2b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenN.png b/assets/MapIcons/colorNumbers/marker_greenN.png
new file mode 100644
index 00000000..a1c29c4c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenO.png b/assets/MapIcons/colorNumbers/marker_greenO.png
new file mode 100644
index 00000000..43c8a34c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenP.png b/assets/MapIcons/colorNumbers/marker_greenP.png
new file mode 100644
index 00000000..0628259c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenQ.png b/assets/MapIcons/colorNumbers/marker_greenQ.png
new file mode 100644
index 00000000..441a10e8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenR.png b/assets/MapIcons/colorNumbers/marker_greenR.png
new file mode 100644
index 00000000..f4008853
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenS.png b/assets/MapIcons/colorNumbers/marker_greenS.png
new file mode 100644
index 00000000..b71d9945
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenT.png b/assets/MapIcons/colorNumbers/marker_greenT.png
new file mode 100644
index 00000000..bff59bda
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenU.png b/assets/MapIcons/colorNumbers/marker_greenU.png
new file mode 100644
index 00000000..752907aa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenV.png b/assets/MapIcons/colorNumbers/marker_greenV.png
new file mode 100644
index 00000000..e67d8ed7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenW.png b/assets/MapIcons/colorNumbers/marker_greenW.png
new file mode 100644
index 00000000..4b7106bf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenX.png b/assets/MapIcons/colorNumbers/marker_greenX.png
new file mode 100644
index 00000000..2056710c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenY.png b/assets/MapIcons/colorNumbers/marker_greenY.png
new file mode 100644
index 00000000..9fa84aad
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greenZ.png b/assets/MapIcons/colorNumbers/marker_greenZ.png
new file mode 100644
index 00000000..87d8cb07
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greenZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey!.png b/assets/MapIcons/colorNumbers/marker_grey!.png
new file mode 100644
index 00000000..4079546f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey#.png b/assets/MapIcons/colorNumbers/marker_grey#.png
new file mode 100644
index 00000000..6c429361
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey$.png b/assets/MapIcons/colorNumbers/marker_grey$.png
new file mode 100644
index 00000000..2c69231e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey%.png b/assets/MapIcons/colorNumbers/marker_grey%.png
new file mode 100644
index 00000000..05353347
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey&.png b/assets/MapIcons/colorNumbers/marker_grey&.png
new file mode 100644
index 00000000..bdbd391f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey+.png b/assets/MapIcons/colorNumbers/marker_grey+.png
new file mode 100644
index 00000000..048e7ced
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey-.png b/assets/MapIcons/colorNumbers/marker_grey-.png
new file mode 100644
index 00000000..7c10a6ab
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey.png b/assets/MapIcons/colorNumbers/marker_grey.png
new file mode 100644
index 00000000..2fae2842
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey1.png b/assets/MapIcons/colorNumbers/marker_grey1.png
new file mode 100644
index 00000000..1fae735a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey10.png b/assets/MapIcons/colorNumbers/marker_grey10.png
new file mode 100644
index 00000000..e66d8ae2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey100.png b/assets/MapIcons/colorNumbers/marker_grey100.png
new file mode 100644
index 00000000..fa27ea93
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey11.png b/assets/MapIcons/colorNumbers/marker_grey11.png
new file mode 100644
index 00000000..8e0eba96
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey12.png b/assets/MapIcons/colorNumbers/marker_grey12.png
new file mode 100644
index 00000000..0aa21ff5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey13.png b/assets/MapIcons/colorNumbers/marker_grey13.png
new file mode 100644
index 00000000..6f814da8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey14.png b/assets/MapIcons/colorNumbers/marker_grey14.png
new file mode 100644
index 00000000..7e48dabf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey15.png b/assets/MapIcons/colorNumbers/marker_grey15.png
new file mode 100644
index 00000000..42f9a4ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey16.png b/assets/MapIcons/colorNumbers/marker_grey16.png
new file mode 100644
index 00000000..3495b461
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey17.png b/assets/MapIcons/colorNumbers/marker_grey17.png
new file mode 100644
index 00000000..bca5a548
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey18.png b/assets/MapIcons/colorNumbers/marker_grey18.png
new file mode 100644
index 00000000..40fea808
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey19.png b/assets/MapIcons/colorNumbers/marker_grey19.png
new file mode 100644
index 00000000..2c10116c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey2.png b/assets/MapIcons/colorNumbers/marker_grey2.png
new file mode 100644
index 00000000..544c9375
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey20.png b/assets/MapIcons/colorNumbers/marker_grey20.png
new file mode 100644
index 00000000..dd470750
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey21.png b/assets/MapIcons/colorNumbers/marker_grey21.png
new file mode 100644
index 00000000..fccb8f75
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey22.png b/assets/MapIcons/colorNumbers/marker_grey22.png
new file mode 100644
index 00000000..86d75a69
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey23.png b/assets/MapIcons/colorNumbers/marker_grey23.png
new file mode 100644
index 00000000..399516c4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey24.png b/assets/MapIcons/colorNumbers/marker_grey24.png
new file mode 100644
index 00000000..d056a895
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey25.png b/assets/MapIcons/colorNumbers/marker_grey25.png
new file mode 100644
index 00000000..1b94e6a1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey26.png b/assets/MapIcons/colorNumbers/marker_grey26.png
new file mode 100644
index 00000000..e6ffd4f2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey27.png b/assets/MapIcons/colorNumbers/marker_grey27.png
new file mode 100644
index 00000000..cb452116
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey28.png b/assets/MapIcons/colorNumbers/marker_grey28.png
new file mode 100644
index 00000000..5a7f28f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey29.png b/assets/MapIcons/colorNumbers/marker_grey29.png
new file mode 100644
index 00000000..192f35bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey3.png b/assets/MapIcons/colorNumbers/marker_grey3.png
new file mode 100644
index 00000000..89f6b42a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey30.png b/assets/MapIcons/colorNumbers/marker_grey30.png
new file mode 100644
index 00000000..7230dc36
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey31.png b/assets/MapIcons/colorNumbers/marker_grey31.png
new file mode 100644
index 00000000..ff57e9d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey32.png b/assets/MapIcons/colorNumbers/marker_grey32.png
new file mode 100644
index 00000000..dca97556
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey33.png b/assets/MapIcons/colorNumbers/marker_grey33.png
new file mode 100644
index 00000000..4c37addc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey34.png b/assets/MapIcons/colorNumbers/marker_grey34.png
new file mode 100644
index 00000000..a661a880
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey35.png b/assets/MapIcons/colorNumbers/marker_grey35.png
new file mode 100644
index 00000000..a3cbd6e6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey36.png b/assets/MapIcons/colorNumbers/marker_grey36.png
new file mode 100644
index 00000000..bf01d3a2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey37.png b/assets/MapIcons/colorNumbers/marker_grey37.png
new file mode 100644
index 00000000..10f202d2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey38.png b/assets/MapIcons/colorNumbers/marker_grey38.png
new file mode 100644
index 00000000..f49a4714
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey39.png b/assets/MapIcons/colorNumbers/marker_grey39.png
new file mode 100644
index 00000000..9562d991
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey4.png b/assets/MapIcons/colorNumbers/marker_grey4.png
new file mode 100644
index 00000000..2b9b2a49
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey40.png b/assets/MapIcons/colorNumbers/marker_grey40.png
new file mode 100644
index 00000000..7b38147c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey41.png b/assets/MapIcons/colorNumbers/marker_grey41.png
new file mode 100644
index 00000000..9c8215a0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey42.png b/assets/MapIcons/colorNumbers/marker_grey42.png
new file mode 100644
index 00000000..52805f30
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey43.png b/assets/MapIcons/colorNumbers/marker_grey43.png
new file mode 100644
index 00000000..2022791a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey44.png b/assets/MapIcons/colorNumbers/marker_grey44.png
new file mode 100644
index 00000000..3d790e8b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey45.png b/assets/MapIcons/colorNumbers/marker_grey45.png
new file mode 100644
index 00000000..0e255cff
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey46.png b/assets/MapIcons/colorNumbers/marker_grey46.png
new file mode 100644
index 00000000..b4b38810
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey47.png b/assets/MapIcons/colorNumbers/marker_grey47.png
new file mode 100644
index 00000000..19d23cb3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey48.png b/assets/MapIcons/colorNumbers/marker_grey48.png
new file mode 100644
index 00000000..8d23a5b5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey49.png b/assets/MapIcons/colorNumbers/marker_grey49.png
new file mode 100644
index 00000000..f22c265b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey5.png b/assets/MapIcons/colorNumbers/marker_grey5.png
new file mode 100644
index 00000000..49796f95
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey50.png b/assets/MapIcons/colorNumbers/marker_grey50.png
new file mode 100644
index 00000000..93e740b4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey51.png b/assets/MapIcons/colorNumbers/marker_grey51.png
new file mode 100644
index 00000000..4d6e134c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey52.png b/assets/MapIcons/colorNumbers/marker_grey52.png
new file mode 100644
index 00000000..26eca3e7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey53.png b/assets/MapIcons/colorNumbers/marker_grey53.png
new file mode 100644
index 00000000..8270fb1d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey54.png b/assets/MapIcons/colorNumbers/marker_grey54.png
new file mode 100644
index 00000000..b1c9e598
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey55.png b/assets/MapIcons/colorNumbers/marker_grey55.png
new file mode 100644
index 00000000..84a11c5e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey56.png b/assets/MapIcons/colorNumbers/marker_grey56.png
new file mode 100644
index 00000000..34d2000e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey57.png b/assets/MapIcons/colorNumbers/marker_grey57.png
new file mode 100644
index 00000000..b355e8e6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey58.png b/assets/MapIcons/colorNumbers/marker_grey58.png
new file mode 100644
index 00000000..868a20a9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey59.png b/assets/MapIcons/colorNumbers/marker_grey59.png
new file mode 100644
index 00000000..71eb4db0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey6.png b/assets/MapIcons/colorNumbers/marker_grey6.png
new file mode 100644
index 00000000..d030894f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey60.png b/assets/MapIcons/colorNumbers/marker_grey60.png
new file mode 100644
index 00000000..bcbd31b0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey61.png b/assets/MapIcons/colorNumbers/marker_grey61.png
new file mode 100644
index 00000000..3aa1a6b6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey62.png b/assets/MapIcons/colorNumbers/marker_grey62.png
new file mode 100644
index 00000000..68b8e834
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey63.png b/assets/MapIcons/colorNumbers/marker_grey63.png
new file mode 100644
index 00000000..5be27c04
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey64.png b/assets/MapIcons/colorNumbers/marker_grey64.png
new file mode 100644
index 00000000..a07afe61
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey65.png b/assets/MapIcons/colorNumbers/marker_grey65.png
new file mode 100644
index 00000000..804b269c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey66.png b/assets/MapIcons/colorNumbers/marker_grey66.png
new file mode 100644
index 00000000..2ed99214
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey67.png b/assets/MapIcons/colorNumbers/marker_grey67.png
new file mode 100644
index 00000000..207ecbf6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey68.png b/assets/MapIcons/colorNumbers/marker_grey68.png
new file mode 100644
index 00000000..5e7e48df
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey69.png b/assets/MapIcons/colorNumbers/marker_grey69.png
new file mode 100644
index 00000000..92e40683
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey7.png b/assets/MapIcons/colorNumbers/marker_grey7.png
new file mode 100644
index 00000000..5b39698e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey70.png b/assets/MapIcons/colorNumbers/marker_grey70.png
new file mode 100644
index 00000000..35c7d125
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey71.png b/assets/MapIcons/colorNumbers/marker_grey71.png
new file mode 100644
index 00000000..a36c7cf8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey72.png b/assets/MapIcons/colorNumbers/marker_grey72.png
new file mode 100644
index 00000000..89de2f17
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey73.png b/assets/MapIcons/colorNumbers/marker_grey73.png
new file mode 100644
index 00000000..b9ba7140
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey74.png b/assets/MapIcons/colorNumbers/marker_grey74.png
new file mode 100644
index 00000000..ec41fd90
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey75.png b/assets/MapIcons/colorNumbers/marker_grey75.png
new file mode 100644
index 00000000..3485c8fd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey76.png b/assets/MapIcons/colorNumbers/marker_grey76.png
new file mode 100644
index 00000000..3b6ac4cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey77.png b/assets/MapIcons/colorNumbers/marker_grey77.png
new file mode 100644
index 00000000..eaedd280
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey78.png b/assets/MapIcons/colorNumbers/marker_grey78.png
new file mode 100644
index 00000000..288510b4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey79.png b/assets/MapIcons/colorNumbers/marker_grey79.png
new file mode 100644
index 00000000..11072629
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey8.png b/assets/MapIcons/colorNumbers/marker_grey8.png
new file mode 100644
index 00000000..64a03ae3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey80.png b/assets/MapIcons/colorNumbers/marker_grey80.png
new file mode 100644
index 00000000..c2347538
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey81.png b/assets/MapIcons/colorNumbers/marker_grey81.png
new file mode 100644
index 00000000..3baf41ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey82.png b/assets/MapIcons/colorNumbers/marker_grey82.png
new file mode 100644
index 00000000..9865bedd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey83.png b/assets/MapIcons/colorNumbers/marker_grey83.png
new file mode 100644
index 00000000..aed027d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey84.png b/assets/MapIcons/colorNumbers/marker_grey84.png
new file mode 100644
index 00000000..23f517af
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey85.png b/assets/MapIcons/colorNumbers/marker_grey85.png
new file mode 100644
index 00000000..c9287b28
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey86.png b/assets/MapIcons/colorNumbers/marker_grey86.png
new file mode 100644
index 00000000..9e68f879
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey87.png b/assets/MapIcons/colorNumbers/marker_grey87.png
new file mode 100644
index 00000000..2c9c8420
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey88.png b/assets/MapIcons/colorNumbers/marker_grey88.png
new file mode 100644
index 00000000..c57a9e4b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey89.png b/assets/MapIcons/colorNumbers/marker_grey89.png
new file mode 100644
index 00000000..8e9c5bda
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey9.png b/assets/MapIcons/colorNumbers/marker_grey9.png
new file mode 100644
index 00000000..39df3680
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey90.png b/assets/MapIcons/colorNumbers/marker_grey90.png
new file mode 100644
index 00000000..4337eee8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey91.png b/assets/MapIcons/colorNumbers/marker_grey91.png
new file mode 100644
index 00000000..93c1d6bb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey92.png b/assets/MapIcons/colorNumbers/marker_grey92.png
new file mode 100644
index 00000000..73889875
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey93.png b/assets/MapIcons/colorNumbers/marker_grey93.png
new file mode 100644
index 00000000..a1e95c01
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey94.png b/assets/MapIcons/colorNumbers/marker_grey94.png
new file mode 100644
index 00000000..a21b91e5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey95.png b/assets/MapIcons/colorNumbers/marker_grey95.png
new file mode 100644
index 00000000..a087294a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey96.png b/assets/MapIcons/colorNumbers/marker_grey96.png
new file mode 100644
index 00000000..bd50336f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey97.png b/assets/MapIcons/colorNumbers/marker_grey97.png
new file mode 100644
index 00000000..98a475a5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey98.png b/assets/MapIcons/colorNumbers/marker_grey98.png
new file mode 100644
index 00000000..1985ba6a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey99.png b/assets/MapIcons/colorNumbers/marker_grey99.png
new file mode 100644
index 00000000..22f16ec5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey=.png b/assets/MapIcons/colorNumbers/marker_grey=.png
new file mode 100644
index 00000000..aa31a37b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_grey@.png b/assets/MapIcons/colorNumbers/marker_grey@.png
new file mode 100644
index 00000000..e00fb354
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_grey@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyA.png b/assets/MapIcons/colorNumbers/marker_greyA.png
new file mode 100644
index 00000000..28dd222a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyB.png b/assets/MapIcons/colorNumbers/marker_greyB.png
new file mode 100644
index 00000000..a975e81c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyC.png b/assets/MapIcons/colorNumbers/marker_greyC.png
new file mode 100644
index 00000000..ff28d213
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyD.png b/assets/MapIcons/colorNumbers/marker_greyD.png
new file mode 100644
index 00000000..73a6049c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyE.png b/assets/MapIcons/colorNumbers/marker_greyE.png
new file mode 100644
index 00000000..7f37feee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyF.png b/assets/MapIcons/colorNumbers/marker_greyF.png
new file mode 100644
index 00000000..7530af68
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyG.png b/assets/MapIcons/colorNumbers/marker_greyG.png
new file mode 100644
index 00000000..9df5d534
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyH.png b/assets/MapIcons/colorNumbers/marker_greyH.png
new file mode 100644
index 00000000..f5fbedca
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyI.png b/assets/MapIcons/colorNumbers/marker_greyI.png
new file mode 100644
index 00000000..d033712d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyJ.png b/assets/MapIcons/colorNumbers/marker_greyJ.png
new file mode 100644
index 00000000..005dad87
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyK.png b/assets/MapIcons/colorNumbers/marker_greyK.png
new file mode 100644
index 00000000..53787615
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyL.png b/assets/MapIcons/colorNumbers/marker_greyL.png
new file mode 100644
index 00000000..00785ba3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyM.png b/assets/MapIcons/colorNumbers/marker_greyM.png
new file mode 100644
index 00000000..e399c45a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyN.png b/assets/MapIcons/colorNumbers/marker_greyN.png
new file mode 100644
index 00000000..c411b5b8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyO.png b/assets/MapIcons/colorNumbers/marker_greyO.png
new file mode 100644
index 00000000..15eecbf0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyP.png b/assets/MapIcons/colorNumbers/marker_greyP.png
new file mode 100644
index 00000000..05e339f5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyQ.png b/assets/MapIcons/colorNumbers/marker_greyQ.png
new file mode 100644
index 00000000..7d94ee37
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyR.png b/assets/MapIcons/colorNumbers/marker_greyR.png
new file mode 100644
index 00000000..c832481a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyS.png b/assets/MapIcons/colorNumbers/marker_greyS.png
new file mode 100644
index 00000000..dae044fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyT.png b/assets/MapIcons/colorNumbers/marker_greyT.png
new file mode 100644
index 00000000..b2503bde
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyU.png b/assets/MapIcons/colorNumbers/marker_greyU.png
new file mode 100644
index 00000000..77569754
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyV.png b/assets/MapIcons/colorNumbers/marker_greyV.png
new file mode 100644
index 00000000..79991a17
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyW.png b/assets/MapIcons/colorNumbers/marker_greyW.png
new file mode 100644
index 00000000..5fe1e1a0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyX.png b/assets/MapIcons/colorNumbers/marker_greyX.png
new file mode 100644
index 00000000..63b539d9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyY.png b/assets/MapIcons/colorNumbers/marker_greyY.png
new file mode 100644
index 00000000..5ca10634
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_greyZ.png b/assets/MapIcons/colorNumbers/marker_greyZ.png
new file mode 100644
index 00000000..979a9192
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_greyZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange!.png b/assets/MapIcons/colorNumbers/marker_orange!.png
new file mode 100644
index 00000000..2424b03f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange#.png b/assets/MapIcons/colorNumbers/marker_orange#.png
new file mode 100644
index 00000000..0491868a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange$.png b/assets/MapIcons/colorNumbers/marker_orange$.png
new file mode 100644
index 00000000..ddcebe42
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange%.png b/assets/MapIcons/colorNumbers/marker_orange%.png
new file mode 100644
index 00000000..f01919d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange&.png b/assets/MapIcons/colorNumbers/marker_orange&.png
new file mode 100644
index 00000000..739080c1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange+.png b/assets/MapIcons/colorNumbers/marker_orange+.png
new file mode 100644
index 00000000..d937e878
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange-.png b/assets/MapIcons/colorNumbers/marker_orange-.png
new file mode 100644
index 00000000..eaadffd4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange.png b/assets/MapIcons/colorNumbers/marker_orange.png
new file mode 100644
index 00000000..4f9e0f08
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange1.png b/assets/MapIcons/colorNumbers/marker_orange1.png
new file mode 100644
index 00000000..7d10555b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange10.png b/assets/MapIcons/colorNumbers/marker_orange10.png
new file mode 100644
index 00000000..93b3cea4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange100.png b/assets/MapIcons/colorNumbers/marker_orange100.png
new file mode 100644
index 00000000..7f8553b2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange11.png b/assets/MapIcons/colorNumbers/marker_orange11.png
new file mode 100644
index 00000000..3add8e69
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange12.png b/assets/MapIcons/colorNumbers/marker_orange12.png
new file mode 100644
index 00000000..d2f70d54
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange13.png b/assets/MapIcons/colorNumbers/marker_orange13.png
new file mode 100644
index 00000000..b7e238ea
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange14.png b/assets/MapIcons/colorNumbers/marker_orange14.png
new file mode 100644
index 00000000..7c41a1f6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange15.png b/assets/MapIcons/colorNumbers/marker_orange15.png
new file mode 100644
index 00000000..95b0d0c9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange16.png b/assets/MapIcons/colorNumbers/marker_orange16.png
new file mode 100644
index 00000000..80869c2a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange17.png b/assets/MapIcons/colorNumbers/marker_orange17.png
new file mode 100644
index 00000000..7fec2261
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange18.png b/assets/MapIcons/colorNumbers/marker_orange18.png
new file mode 100644
index 00000000..300fea2c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange19.png b/assets/MapIcons/colorNumbers/marker_orange19.png
new file mode 100644
index 00000000..342f768c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange2.png b/assets/MapIcons/colorNumbers/marker_orange2.png
new file mode 100644
index 00000000..3de6dbd6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange20.png b/assets/MapIcons/colorNumbers/marker_orange20.png
new file mode 100644
index 00000000..a40f9f49
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange21.png b/assets/MapIcons/colorNumbers/marker_orange21.png
new file mode 100644
index 00000000..a7a535bb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange22.png b/assets/MapIcons/colorNumbers/marker_orange22.png
new file mode 100644
index 00000000..c9b0a306
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange23.png b/assets/MapIcons/colorNumbers/marker_orange23.png
new file mode 100644
index 00000000..f69b2cf4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange24.png b/assets/MapIcons/colorNumbers/marker_orange24.png
new file mode 100644
index 00000000..7155cf20
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange25.png b/assets/MapIcons/colorNumbers/marker_orange25.png
new file mode 100644
index 00000000..801f29d0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange26.png b/assets/MapIcons/colorNumbers/marker_orange26.png
new file mode 100644
index 00000000..b5def6f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange27.png b/assets/MapIcons/colorNumbers/marker_orange27.png
new file mode 100644
index 00000000..e1daf828
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange28.png b/assets/MapIcons/colorNumbers/marker_orange28.png
new file mode 100644
index 00000000..27a9717e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange29.png b/assets/MapIcons/colorNumbers/marker_orange29.png
new file mode 100644
index 00000000..839ed5a2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange3.png b/assets/MapIcons/colorNumbers/marker_orange3.png
new file mode 100644
index 00000000..ac91f9a0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange30.png b/assets/MapIcons/colorNumbers/marker_orange30.png
new file mode 100644
index 00000000..3aa5cfe9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange31.png b/assets/MapIcons/colorNumbers/marker_orange31.png
new file mode 100644
index 00000000..44853ebe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange32.png b/assets/MapIcons/colorNumbers/marker_orange32.png
new file mode 100644
index 00000000..8942d17b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange33.png b/assets/MapIcons/colorNumbers/marker_orange33.png
new file mode 100644
index 00000000..0d289c54
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange34.png b/assets/MapIcons/colorNumbers/marker_orange34.png
new file mode 100644
index 00000000..33513946
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange35.png b/assets/MapIcons/colorNumbers/marker_orange35.png
new file mode 100644
index 00000000..52084c6b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange36.png b/assets/MapIcons/colorNumbers/marker_orange36.png
new file mode 100644
index 00000000..cb15ef4b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange37.png b/assets/MapIcons/colorNumbers/marker_orange37.png
new file mode 100644
index 00000000..b339fdd3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange38.png b/assets/MapIcons/colorNumbers/marker_orange38.png
new file mode 100644
index 00000000..c5c51782
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange39.png b/assets/MapIcons/colorNumbers/marker_orange39.png
new file mode 100644
index 00000000..aca33a9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange4.png b/assets/MapIcons/colorNumbers/marker_orange4.png
new file mode 100644
index 00000000..b2bb8f26
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange40.png b/assets/MapIcons/colorNumbers/marker_orange40.png
new file mode 100644
index 00000000..fe542965
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange41.png b/assets/MapIcons/colorNumbers/marker_orange41.png
new file mode 100644
index 00000000..64b55989
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange42.png b/assets/MapIcons/colorNumbers/marker_orange42.png
new file mode 100644
index 00000000..1481e34d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange43.png b/assets/MapIcons/colorNumbers/marker_orange43.png
new file mode 100644
index 00000000..a572a257
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange44.png b/assets/MapIcons/colorNumbers/marker_orange44.png
new file mode 100644
index 00000000..bfce3f31
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange45.png b/assets/MapIcons/colorNumbers/marker_orange45.png
new file mode 100644
index 00000000..0141c73a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange46.png b/assets/MapIcons/colorNumbers/marker_orange46.png
new file mode 100644
index 00000000..99f730f9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange47.png b/assets/MapIcons/colorNumbers/marker_orange47.png
new file mode 100644
index 00000000..e293672e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange48.png b/assets/MapIcons/colorNumbers/marker_orange48.png
new file mode 100644
index 00000000..c8fd3695
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange49.png b/assets/MapIcons/colorNumbers/marker_orange49.png
new file mode 100644
index 00000000..8c2024d8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange5.png b/assets/MapIcons/colorNumbers/marker_orange5.png
new file mode 100644
index 00000000..952527fe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange50.png b/assets/MapIcons/colorNumbers/marker_orange50.png
new file mode 100644
index 00000000..413fc2c8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange51.png b/assets/MapIcons/colorNumbers/marker_orange51.png
new file mode 100644
index 00000000..822dfb17
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange52.png b/assets/MapIcons/colorNumbers/marker_orange52.png
new file mode 100644
index 00000000..3e5a4efe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange53.png b/assets/MapIcons/colorNumbers/marker_orange53.png
new file mode 100644
index 00000000..d346b1ec
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange54.png b/assets/MapIcons/colorNumbers/marker_orange54.png
new file mode 100644
index 00000000..a8eda6d6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange55.png b/assets/MapIcons/colorNumbers/marker_orange55.png
new file mode 100644
index 00000000..38ad36b3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange56.png b/assets/MapIcons/colorNumbers/marker_orange56.png
new file mode 100644
index 00000000..5bfd4be3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange57.png b/assets/MapIcons/colorNumbers/marker_orange57.png
new file mode 100644
index 00000000..e7591c05
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange58.png b/assets/MapIcons/colorNumbers/marker_orange58.png
new file mode 100644
index 00000000..c35034af
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange59.png b/assets/MapIcons/colorNumbers/marker_orange59.png
new file mode 100644
index 00000000..7098840a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange6.png b/assets/MapIcons/colorNumbers/marker_orange6.png
new file mode 100644
index 00000000..a9adca44
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange60.png b/assets/MapIcons/colorNumbers/marker_orange60.png
new file mode 100644
index 00000000..2b4ca266
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange61.png b/assets/MapIcons/colorNumbers/marker_orange61.png
new file mode 100644
index 00000000..fbd907bc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange62.png b/assets/MapIcons/colorNumbers/marker_orange62.png
new file mode 100644
index 00000000..a7831c1c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange63.png b/assets/MapIcons/colorNumbers/marker_orange63.png
new file mode 100644
index 00000000..d59ed7cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange64.png b/assets/MapIcons/colorNumbers/marker_orange64.png
new file mode 100644
index 00000000..a82c2639
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange65.png b/assets/MapIcons/colorNumbers/marker_orange65.png
new file mode 100644
index 00000000..887bc82f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange66.png b/assets/MapIcons/colorNumbers/marker_orange66.png
new file mode 100644
index 00000000..51ca2f0a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange67.png b/assets/MapIcons/colorNumbers/marker_orange67.png
new file mode 100644
index 00000000..b89ae334
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange68.png b/assets/MapIcons/colorNumbers/marker_orange68.png
new file mode 100644
index 00000000..ae08e3a1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange69.png b/assets/MapIcons/colorNumbers/marker_orange69.png
new file mode 100644
index 00000000..ac5bc371
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange7.png b/assets/MapIcons/colorNumbers/marker_orange7.png
new file mode 100644
index 00000000..be0cfdb5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange70.png b/assets/MapIcons/colorNumbers/marker_orange70.png
new file mode 100644
index 00000000..9068af82
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange71.png b/assets/MapIcons/colorNumbers/marker_orange71.png
new file mode 100644
index 00000000..7c8cf375
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange72.png b/assets/MapIcons/colorNumbers/marker_orange72.png
new file mode 100644
index 00000000..80434e7b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange73.png b/assets/MapIcons/colorNumbers/marker_orange73.png
new file mode 100644
index 00000000..bac82fa7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange74.png b/assets/MapIcons/colorNumbers/marker_orange74.png
new file mode 100644
index 00000000..79e8306a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange75.png b/assets/MapIcons/colorNumbers/marker_orange75.png
new file mode 100644
index 00000000..b81e41d2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange76.png b/assets/MapIcons/colorNumbers/marker_orange76.png
new file mode 100644
index 00000000..64b98483
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange77.png b/assets/MapIcons/colorNumbers/marker_orange77.png
new file mode 100644
index 00000000..88ae5805
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange78.png b/assets/MapIcons/colorNumbers/marker_orange78.png
new file mode 100644
index 00000000..d4a3536b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange79.png b/assets/MapIcons/colorNumbers/marker_orange79.png
new file mode 100644
index 00000000..2b40e3f2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange8.png b/assets/MapIcons/colorNumbers/marker_orange8.png
new file mode 100644
index 00000000..d6986fc4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange80.png b/assets/MapIcons/colorNumbers/marker_orange80.png
new file mode 100644
index 00000000..676ab791
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange81.png b/assets/MapIcons/colorNumbers/marker_orange81.png
new file mode 100644
index 00000000..db4c2d19
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange82.png b/assets/MapIcons/colorNumbers/marker_orange82.png
new file mode 100644
index 00000000..56eaf930
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange83.png b/assets/MapIcons/colorNumbers/marker_orange83.png
new file mode 100644
index 00000000..a84742c6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange84.png b/assets/MapIcons/colorNumbers/marker_orange84.png
new file mode 100644
index 00000000..8d173624
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange85.png b/assets/MapIcons/colorNumbers/marker_orange85.png
new file mode 100644
index 00000000..619238dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange86.png b/assets/MapIcons/colorNumbers/marker_orange86.png
new file mode 100644
index 00000000..cb246f2f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange87.png b/assets/MapIcons/colorNumbers/marker_orange87.png
new file mode 100644
index 00000000..efd42710
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange88.png b/assets/MapIcons/colorNumbers/marker_orange88.png
new file mode 100644
index 00000000..631b4b62
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange89.png b/assets/MapIcons/colorNumbers/marker_orange89.png
new file mode 100644
index 00000000..e5934a4b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange9.png b/assets/MapIcons/colorNumbers/marker_orange9.png
new file mode 100644
index 00000000..d1cc4972
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange90.png b/assets/MapIcons/colorNumbers/marker_orange90.png
new file mode 100644
index 00000000..1a469ea0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange91.png b/assets/MapIcons/colorNumbers/marker_orange91.png
new file mode 100644
index 00000000..a9f8adf4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange92.png b/assets/MapIcons/colorNumbers/marker_orange92.png
new file mode 100644
index 00000000..45cbd7ed
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange93.png b/assets/MapIcons/colorNumbers/marker_orange93.png
new file mode 100644
index 00000000..cec4c965
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange94.png b/assets/MapIcons/colorNumbers/marker_orange94.png
new file mode 100644
index 00000000..18219d82
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange95.png b/assets/MapIcons/colorNumbers/marker_orange95.png
new file mode 100644
index 00000000..720a1bad
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange96.png b/assets/MapIcons/colorNumbers/marker_orange96.png
new file mode 100644
index 00000000..66601a45
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange97.png b/assets/MapIcons/colorNumbers/marker_orange97.png
new file mode 100644
index 00000000..c19dc2b5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange98.png b/assets/MapIcons/colorNumbers/marker_orange98.png
new file mode 100644
index 00000000..8ebfcf08
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange99.png b/assets/MapIcons/colorNumbers/marker_orange99.png
new file mode 100644
index 00000000..a1b98ae9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange=.png b/assets/MapIcons/colorNumbers/marker_orange=.png
new file mode 100644
index 00000000..d2bf4689
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orange@.png b/assets/MapIcons/colorNumbers/marker_orange@.png
new file mode 100644
index 00000000..3c9d6e94
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orange@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeA.png b/assets/MapIcons/colorNumbers/marker_orangeA.png
new file mode 100644
index 00000000..96c566c9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeB.png b/assets/MapIcons/colorNumbers/marker_orangeB.png
new file mode 100644
index 00000000..159d27dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeC.png b/assets/MapIcons/colorNumbers/marker_orangeC.png
new file mode 100644
index 00000000..65592e0c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeD.png b/assets/MapIcons/colorNumbers/marker_orangeD.png
new file mode 100644
index 00000000..e3e87f7b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeE.png b/assets/MapIcons/colorNumbers/marker_orangeE.png
new file mode 100644
index 00000000..fd23c094
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeF.png b/assets/MapIcons/colorNumbers/marker_orangeF.png
new file mode 100644
index 00000000..33b0c12f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeG.png b/assets/MapIcons/colorNumbers/marker_orangeG.png
new file mode 100644
index 00000000..7710c97e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeH.png b/assets/MapIcons/colorNumbers/marker_orangeH.png
new file mode 100644
index 00000000..7053a7ae
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeI.png b/assets/MapIcons/colorNumbers/marker_orangeI.png
new file mode 100644
index 00000000..6b7e663b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeJ.png b/assets/MapIcons/colorNumbers/marker_orangeJ.png
new file mode 100644
index 00000000..2470d9bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeK.png b/assets/MapIcons/colorNumbers/marker_orangeK.png
new file mode 100644
index 00000000..317cf88e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeL.png b/assets/MapIcons/colorNumbers/marker_orangeL.png
new file mode 100644
index 00000000..c9b94d51
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeM.png b/assets/MapIcons/colorNumbers/marker_orangeM.png
new file mode 100644
index 00000000..86c54d0b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeN.png b/assets/MapIcons/colorNumbers/marker_orangeN.png
new file mode 100644
index 00000000..5dd7696f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeO.png b/assets/MapIcons/colorNumbers/marker_orangeO.png
new file mode 100644
index 00000000..4c2b95bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeP.png b/assets/MapIcons/colorNumbers/marker_orangeP.png
new file mode 100644
index 00000000..b4f68917
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeQ.png b/assets/MapIcons/colorNumbers/marker_orangeQ.png
new file mode 100644
index 00000000..7144b48c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeR.png b/assets/MapIcons/colorNumbers/marker_orangeR.png
new file mode 100644
index 00000000..b310ef44
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeS.png b/assets/MapIcons/colorNumbers/marker_orangeS.png
new file mode 100644
index 00000000..baf106cf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeT.png b/assets/MapIcons/colorNumbers/marker_orangeT.png
new file mode 100644
index 00000000..61f46372
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeU.png b/assets/MapIcons/colorNumbers/marker_orangeU.png
new file mode 100644
index 00000000..6b8e4d5d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeV.png b/assets/MapIcons/colorNumbers/marker_orangeV.png
new file mode 100644
index 00000000..5a7e2748
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeW.png b/assets/MapIcons/colorNumbers/marker_orangeW.png
new file mode 100644
index 00000000..16b17873
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeX.png b/assets/MapIcons/colorNumbers/marker_orangeX.png
new file mode 100644
index 00000000..904df563
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeY.png b/assets/MapIcons/colorNumbers/marker_orangeY.png
new file mode 100644
index 00000000..74363159
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_orangeZ.png b/assets/MapIcons/colorNumbers/marker_orangeZ.png
new file mode 100644
index 00000000..e59004eb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_orangeZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple!.png b/assets/MapIcons/colorNumbers/marker_purple!.png
new file mode 100644
index 00000000..80403151
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple#.png b/assets/MapIcons/colorNumbers/marker_purple#.png
new file mode 100644
index 00000000..571a5901
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple$.png b/assets/MapIcons/colorNumbers/marker_purple$.png
new file mode 100644
index 00000000..49b7d3ce
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple%.png b/assets/MapIcons/colorNumbers/marker_purple%.png
new file mode 100644
index 00000000..2637a888
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple&.png b/assets/MapIcons/colorNumbers/marker_purple&.png
new file mode 100644
index 00000000..05e094dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple+.png b/assets/MapIcons/colorNumbers/marker_purple+.png
new file mode 100644
index 00000000..1b1d95b2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple-.png b/assets/MapIcons/colorNumbers/marker_purple-.png
new file mode 100644
index 00000000..bb30a577
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple.png b/assets/MapIcons/colorNumbers/marker_purple.png
new file mode 100644
index 00000000..7cf906f7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple1.png b/assets/MapIcons/colorNumbers/marker_purple1.png
new file mode 100644
index 00000000..5b24064d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple10.png b/assets/MapIcons/colorNumbers/marker_purple10.png
new file mode 100644
index 00000000..d639a375
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple100.png b/assets/MapIcons/colorNumbers/marker_purple100.png
new file mode 100644
index 00000000..7e1d9eb1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple11.png b/assets/MapIcons/colorNumbers/marker_purple11.png
new file mode 100644
index 00000000..f0ddc37e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple12.png b/assets/MapIcons/colorNumbers/marker_purple12.png
new file mode 100644
index 00000000..1add8f51
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple13.png b/assets/MapIcons/colorNumbers/marker_purple13.png
new file mode 100644
index 00000000..e8342bae
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple14.png b/assets/MapIcons/colorNumbers/marker_purple14.png
new file mode 100644
index 00000000..19c5e9cf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple15.png b/assets/MapIcons/colorNumbers/marker_purple15.png
new file mode 100644
index 00000000..5206fb83
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple16.png b/assets/MapIcons/colorNumbers/marker_purple16.png
new file mode 100644
index 00000000..0c1d30cf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple17.png b/assets/MapIcons/colorNumbers/marker_purple17.png
new file mode 100644
index 00000000..2c3e53cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple18.png b/assets/MapIcons/colorNumbers/marker_purple18.png
new file mode 100644
index 00000000..0afcf7d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple19.png b/assets/MapIcons/colorNumbers/marker_purple19.png
new file mode 100644
index 00000000..524b8982
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple2.png b/assets/MapIcons/colorNumbers/marker_purple2.png
new file mode 100644
index 00000000..a0cc1757
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple20.png b/assets/MapIcons/colorNumbers/marker_purple20.png
new file mode 100644
index 00000000..5d87fd4c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple21.png b/assets/MapIcons/colorNumbers/marker_purple21.png
new file mode 100644
index 00000000..e77b1c8b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple22.png b/assets/MapIcons/colorNumbers/marker_purple22.png
new file mode 100644
index 00000000..2a76231a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple23.png b/assets/MapIcons/colorNumbers/marker_purple23.png
new file mode 100644
index 00000000..91287c61
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple24.png b/assets/MapIcons/colorNumbers/marker_purple24.png
new file mode 100644
index 00000000..53f20c3d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple25.png b/assets/MapIcons/colorNumbers/marker_purple25.png
new file mode 100644
index 00000000..caa246ee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple26.png b/assets/MapIcons/colorNumbers/marker_purple26.png
new file mode 100644
index 00000000..706733d0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple27.png b/assets/MapIcons/colorNumbers/marker_purple27.png
new file mode 100644
index 00000000..bc1f0bf8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple28.png b/assets/MapIcons/colorNumbers/marker_purple28.png
new file mode 100644
index 00000000..b6cb164d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple29.png b/assets/MapIcons/colorNumbers/marker_purple29.png
new file mode 100644
index 00000000..f12bdb6d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple3.png b/assets/MapIcons/colorNumbers/marker_purple3.png
new file mode 100644
index 00000000..00821883
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple30.png b/assets/MapIcons/colorNumbers/marker_purple30.png
new file mode 100644
index 00000000..d96de44e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple31.png b/assets/MapIcons/colorNumbers/marker_purple31.png
new file mode 100644
index 00000000..c1c06738
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple32.png b/assets/MapIcons/colorNumbers/marker_purple32.png
new file mode 100644
index 00000000..7a8391f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple33.png b/assets/MapIcons/colorNumbers/marker_purple33.png
new file mode 100644
index 00000000..40ff9fdb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple34.png b/assets/MapIcons/colorNumbers/marker_purple34.png
new file mode 100644
index 00000000..ab6c1da6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple35.png b/assets/MapIcons/colorNumbers/marker_purple35.png
new file mode 100644
index 00000000..b650bef1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple36.png b/assets/MapIcons/colorNumbers/marker_purple36.png
new file mode 100644
index 00000000..edca52e7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple37.png b/assets/MapIcons/colorNumbers/marker_purple37.png
new file mode 100644
index 00000000..870f52f5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple38.png b/assets/MapIcons/colorNumbers/marker_purple38.png
new file mode 100644
index 00000000..115dc542
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple39.png b/assets/MapIcons/colorNumbers/marker_purple39.png
new file mode 100644
index 00000000..134ae14f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple4.png b/assets/MapIcons/colorNumbers/marker_purple4.png
new file mode 100644
index 00000000..ab08db39
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple40.png b/assets/MapIcons/colorNumbers/marker_purple40.png
new file mode 100644
index 00000000..f29ffa61
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple41.png b/assets/MapIcons/colorNumbers/marker_purple41.png
new file mode 100644
index 00000000..6425e780
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple42.png b/assets/MapIcons/colorNumbers/marker_purple42.png
new file mode 100644
index 00000000..5233b9d4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple43.png b/assets/MapIcons/colorNumbers/marker_purple43.png
new file mode 100644
index 00000000..5a7796f8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple44.png b/assets/MapIcons/colorNumbers/marker_purple44.png
new file mode 100644
index 00000000..c8bc9d29
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple45.png b/assets/MapIcons/colorNumbers/marker_purple45.png
new file mode 100644
index 00000000..af39eb22
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple46.png b/assets/MapIcons/colorNumbers/marker_purple46.png
new file mode 100644
index 00000000..d5d24134
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple47.png b/assets/MapIcons/colorNumbers/marker_purple47.png
new file mode 100644
index 00000000..044285a8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple48.png b/assets/MapIcons/colorNumbers/marker_purple48.png
new file mode 100644
index 00000000..0ee79a8f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple49.png b/assets/MapIcons/colorNumbers/marker_purple49.png
new file mode 100644
index 00000000..0d175fd7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple5.png b/assets/MapIcons/colorNumbers/marker_purple5.png
new file mode 100644
index 00000000..d6075e26
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple50.png b/assets/MapIcons/colorNumbers/marker_purple50.png
new file mode 100644
index 00000000..ae091b04
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple51.png b/assets/MapIcons/colorNumbers/marker_purple51.png
new file mode 100644
index 00000000..98d90813
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple52.png b/assets/MapIcons/colorNumbers/marker_purple52.png
new file mode 100644
index 00000000..a7c0394d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple53.png b/assets/MapIcons/colorNumbers/marker_purple53.png
new file mode 100644
index 00000000..4559954f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple54.png b/assets/MapIcons/colorNumbers/marker_purple54.png
new file mode 100644
index 00000000..9b8faa5e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple55.png b/assets/MapIcons/colorNumbers/marker_purple55.png
new file mode 100644
index 00000000..ca0be999
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple56.png b/assets/MapIcons/colorNumbers/marker_purple56.png
new file mode 100644
index 00000000..ffe9e114
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple57.png b/assets/MapIcons/colorNumbers/marker_purple57.png
new file mode 100644
index 00000000..48bca137
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple58.png b/assets/MapIcons/colorNumbers/marker_purple58.png
new file mode 100644
index 00000000..fe3e3196
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple59.png b/assets/MapIcons/colorNumbers/marker_purple59.png
new file mode 100644
index 00000000..85805a8f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple6.png b/assets/MapIcons/colorNumbers/marker_purple6.png
new file mode 100644
index 00000000..3029774c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple60.png b/assets/MapIcons/colorNumbers/marker_purple60.png
new file mode 100644
index 00000000..09e13bf7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple61.png b/assets/MapIcons/colorNumbers/marker_purple61.png
new file mode 100644
index 00000000..41e17f77
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple62.png b/assets/MapIcons/colorNumbers/marker_purple62.png
new file mode 100644
index 00000000..401a0442
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple63.png b/assets/MapIcons/colorNumbers/marker_purple63.png
new file mode 100644
index 00000000..e4142949
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple64.png b/assets/MapIcons/colorNumbers/marker_purple64.png
new file mode 100644
index 00000000..f313abc1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple65.png b/assets/MapIcons/colorNumbers/marker_purple65.png
new file mode 100644
index 00000000..755193e9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple66.png b/assets/MapIcons/colorNumbers/marker_purple66.png
new file mode 100644
index 00000000..524b5b4a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple67.png b/assets/MapIcons/colorNumbers/marker_purple67.png
new file mode 100644
index 00000000..c1592eac
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple68.png b/assets/MapIcons/colorNumbers/marker_purple68.png
new file mode 100644
index 00000000..b1f50cad
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple69.png b/assets/MapIcons/colorNumbers/marker_purple69.png
new file mode 100644
index 00000000..e5f2172c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple7.png b/assets/MapIcons/colorNumbers/marker_purple7.png
new file mode 100644
index 00000000..61590555
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple70.png b/assets/MapIcons/colorNumbers/marker_purple70.png
new file mode 100644
index 00000000..7a202321
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple71.png b/assets/MapIcons/colorNumbers/marker_purple71.png
new file mode 100644
index 00000000..efdd28d5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple72.png b/assets/MapIcons/colorNumbers/marker_purple72.png
new file mode 100644
index 00000000..cb0e1e64
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple73.png b/assets/MapIcons/colorNumbers/marker_purple73.png
new file mode 100644
index 00000000..019c780f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple74.png b/assets/MapIcons/colorNumbers/marker_purple74.png
new file mode 100644
index 00000000..82e65601
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple75.png b/assets/MapIcons/colorNumbers/marker_purple75.png
new file mode 100644
index 00000000..38264a17
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple76.png b/assets/MapIcons/colorNumbers/marker_purple76.png
new file mode 100644
index 00000000..f03f2721
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple77.png b/assets/MapIcons/colorNumbers/marker_purple77.png
new file mode 100644
index 00000000..e0837996
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple78.png b/assets/MapIcons/colorNumbers/marker_purple78.png
new file mode 100644
index 00000000..c7e27501
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple79.png b/assets/MapIcons/colorNumbers/marker_purple79.png
new file mode 100644
index 00000000..4d31fe76
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple8.png b/assets/MapIcons/colorNumbers/marker_purple8.png
new file mode 100644
index 00000000..66676799
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple80.png b/assets/MapIcons/colorNumbers/marker_purple80.png
new file mode 100644
index 00000000..c5315d96
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple81.png b/assets/MapIcons/colorNumbers/marker_purple81.png
new file mode 100644
index 00000000..71eb7d50
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple82.png b/assets/MapIcons/colorNumbers/marker_purple82.png
new file mode 100644
index 00000000..62b3cb9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple83.png b/assets/MapIcons/colorNumbers/marker_purple83.png
new file mode 100644
index 00000000..cd57ac19
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple84.png b/assets/MapIcons/colorNumbers/marker_purple84.png
new file mode 100644
index 00000000..f45eaaf2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple85.png b/assets/MapIcons/colorNumbers/marker_purple85.png
new file mode 100644
index 00000000..c599444d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple86.png b/assets/MapIcons/colorNumbers/marker_purple86.png
new file mode 100644
index 00000000..b2c1afa7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple87.png b/assets/MapIcons/colorNumbers/marker_purple87.png
new file mode 100644
index 00000000..ca90d2f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple88.png b/assets/MapIcons/colorNumbers/marker_purple88.png
new file mode 100644
index 00000000..0ebfefe6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple89.png b/assets/MapIcons/colorNumbers/marker_purple89.png
new file mode 100644
index 00000000..7485be81
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple9.png b/assets/MapIcons/colorNumbers/marker_purple9.png
new file mode 100644
index 00000000..2133b8ff
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple90.png b/assets/MapIcons/colorNumbers/marker_purple90.png
new file mode 100644
index 00000000..9bff7ee0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple91.png b/assets/MapIcons/colorNumbers/marker_purple91.png
new file mode 100644
index 00000000..64130cae
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple92.png b/assets/MapIcons/colorNumbers/marker_purple92.png
new file mode 100644
index 00000000..039d9e0a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple93.png b/assets/MapIcons/colorNumbers/marker_purple93.png
new file mode 100644
index 00000000..c0e95b6f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple94.png b/assets/MapIcons/colorNumbers/marker_purple94.png
new file mode 100644
index 00000000..53f0123c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple95.png b/assets/MapIcons/colorNumbers/marker_purple95.png
new file mode 100644
index 00000000..e29581fe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple96.png b/assets/MapIcons/colorNumbers/marker_purple96.png
new file mode 100644
index 00000000..d4fa9cac
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple97.png b/assets/MapIcons/colorNumbers/marker_purple97.png
new file mode 100644
index 00000000..02aaa755
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple98.png b/assets/MapIcons/colorNumbers/marker_purple98.png
new file mode 100644
index 00000000..20b9bbfe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple99.png b/assets/MapIcons/colorNumbers/marker_purple99.png
new file mode 100644
index 00000000..7b047c58
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple=.png b/assets/MapIcons/colorNumbers/marker_purple=.png
new file mode 100644
index 00000000..18b9b87f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purple@.png b/assets/MapIcons/colorNumbers/marker_purple@.png
new file mode 100644
index 00000000..214e2094
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purple@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleA.png b/assets/MapIcons/colorNumbers/marker_purpleA.png
new file mode 100644
index 00000000..e37ff16e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleB.png b/assets/MapIcons/colorNumbers/marker_purpleB.png
new file mode 100644
index 00000000..5ebacb3b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleC.png b/assets/MapIcons/colorNumbers/marker_purpleC.png
new file mode 100644
index 00000000..f180170c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleD.png b/assets/MapIcons/colorNumbers/marker_purpleD.png
new file mode 100644
index 00000000..1354ae7e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleE.png b/assets/MapIcons/colorNumbers/marker_purpleE.png
new file mode 100644
index 00000000..b8cb4b2a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleF.png b/assets/MapIcons/colorNumbers/marker_purpleF.png
new file mode 100644
index 00000000..2ba34bf5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleG.png b/assets/MapIcons/colorNumbers/marker_purpleG.png
new file mode 100644
index 00000000..ec8aef63
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleH.png b/assets/MapIcons/colorNumbers/marker_purpleH.png
new file mode 100644
index 00000000..4bf7a10a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleI.png b/assets/MapIcons/colorNumbers/marker_purpleI.png
new file mode 100644
index 00000000..eb427c22
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleJ.png b/assets/MapIcons/colorNumbers/marker_purpleJ.png
new file mode 100644
index 00000000..a2b45a16
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleK.png b/assets/MapIcons/colorNumbers/marker_purpleK.png
new file mode 100644
index 00000000..84bb0253
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleL.png b/assets/MapIcons/colorNumbers/marker_purpleL.png
new file mode 100644
index 00000000..d5197a54
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleM.png b/assets/MapIcons/colorNumbers/marker_purpleM.png
new file mode 100644
index 00000000..7d4f1bf1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleN.png b/assets/MapIcons/colorNumbers/marker_purpleN.png
new file mode 100644
index 00000000..e5d7182c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleO.png b/assets/MapIcons/colorNumbers/marker_purpleO.png
new file mode 100644
index 00000000..3e8e6d9d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleP.png b/assets/MapIcons/colorNumbers/marker_purpleP.png
new file mode 100644
index 00000000..6989ec37
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleQ.png b/assets/MapIcons/colorNumbers/marker_purpleQ.png
new file mode 100644
index 00000000..7a58f45b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleR.png b/assets/MapIcons/colorNumbers/marker_purpleR.png
new file mode 100644
index 00000000..4c4afcf4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleS.png b/assets/MapIcons/colorNumbers/marker_purpleS.png
new file mode 100644
index 00000000..52b869f4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleT.png b/assets/MapIcons/colorNumbers/marker_purpleT.png
new file mode 100644
index 00000000..107904e4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleU.png b/assets/MapIcons/colorNumbers/marker_purpleU.png
new file mode 100644
index 00000000..c2806495
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleV.png b/assets/MapIcons/colorNumbers/marker_purpleV.png
new file mode 100644
index 00000000..abc750b3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleW.png b/assets/MapIcons/colorNumbers/marker_purpleW.png
new file mode 100644
index 00000000..e2f26177
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleX.png b/assets/MapIcons/colorNumbers/marker_purpleX.png
new file mode 100644
index 00000000..88f440df
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleY.png b/assets/MapIcons/colorNumbers/marker_purpleY.png
new file mode 100644
index 00000000..49958b20
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_purpleZ.png b/assets/MapIcons/colorNumbers/marker_purpleZ.png
new file mode 100644
index 00000000..30f280d5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_purpleZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red!.png b/assets/MapIcons/colorNumbers/marker_red!.png
new file mode 100644
index 00000000..a18a5d8a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red#.png b/assets/MapIcons/colorNumbers/marker_red#.png
new file mode 100644
index 00000000..759013dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red$.png b/assets/MapIcons/colorNumbers/marker_red$.png
new file mode 100644
index 00000000..2a1643b8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red%.png b/assets/MapIcons/colorNumbers/marker_red%.png
new file mode 100644
index 00000000..ec0df894
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red&.png b/assets/MapIcons/colorNumbers/marker_red&.png
new file mode 100644
index 00000000..83292df2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red+.png b/assets/MapIcons/colorNumbers/marker_red+.png
new file mode 100644
index 00000000..19a026d1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red-.png b/assets/MapIcons/colorNumbers/marker_red-.png
new file mode 100644
index 00000000..f4a55ace
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red.png b/assets/MapIcons/colorNumbers/marker_red.png
new file mode 100644
index 00000000..12e71654
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red1.png b/assets/MapIcons/colorNumbers/marker_red1.png
new file mode 100644
index 00000000..f720f014
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red10.png b/assets/MapIcons/colorNumbers/marker_red10.png
new file mode 100644
index 00000000..15583ba8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red100.png b/assets/MapIcons/colorNumbers/marker_red100.png
new file mode 100644
index 00000000..72d5e276
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red11.png b/assets/MapIcons/colorNumbers/marker_red11.png
new file mode 100644
index 00000000..847acf33
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red12.png b/assets/MapIcons/colorNumbers/marker_red12.png
new file mode 100644
index 00000000..73bec04e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red13.png b/assets/MapIcons/colorNumbers/marker_red13.png
new file mode 100644
index 00000000..bf3f363d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red14.png b/assets/MapIcons/colorNumbers/marker_red14.png
new file mode 100644
index 00000000..ec07d68b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red15.png b/assets/MapIcons/colorNumbers/marker_red15.png
new file mode 100644
index 00000000..b28d87b0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red16.png b/assets/MapIcons/colorNumbers/marker_red16.png
new file mode 100644
index 00000000..e9c8f79c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red17.png b/assets/MapIcons/colorNumbers/marker_red17.png
new file mode 100644
index 00000000..a87487b3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red18.png b/assets/MapIcons/colorNumbers/marker_red18.png
new file mode 100644
index 00000000..2adc13b8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red19.png b/assets/MapIcons/colorNumbers/marker_red19.png
new file mode 100644
index 00000000..b69a854b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red2.png b/assets/MapIcons/colorNumbers/marker_red2.png
new file mode 100644
index 00000000..a7d74851
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red20.png b/assets/MapIcons/colorNumbers/marker_red20.png
new file mode 100644
index 00000000..78e296ff
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red21.png b/assets/MapIcons/colorNumbers/marker_red21.png
new file mode 100644
index 00000000..3cd91d8e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red22.png b/assets/MapIcons/colorNumbers/marker_red22.png
new file mode 100644
index 00000000..5d4b3dbf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red23.png b/assets/MapIcons/colorNumbers/marker_red23.png
new file mode 100644
index 00000000..49151907
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red24.png b/assets/MapIcons/colorNumbers/marker_red24.png
new file mode 100644
index 00000000..9b603b8e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red25.png b/assets/MapIcons/colorNumbers/marker_red25.png
new file mode 100644
index 00000000..e04efcfb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red26.png b/assets/MapIcons/colorNumbers/marker_red26.png
new file mode 100644
index 00000000..5b9af475
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red27.png b/assets/MapIcons/colorNumbers/marker_red27.png
new file mode 100644
index 00000000..59d56af1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red28.png b/assets/MapIcons/colorNumbers/marker_red28.png
new file mode 100644
index 00000000..036ec631
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red29.png b/assets/MapIcons/colorNumbers/marker_red29.png
new file mode 100644
index 00000000..a6e0d4ef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red3.png b/assets/MapIcons/colorNumbers/marker_red3.png
new file mode 100644
index 00000000..0283e0bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red30.png b/assets/MapIcons/colorNumbers/marker_red30.png
new file mode 100644
index 00000000..4bffd8be
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red31.png b/assets/MapIcons/colorNumbers/marker_red31.png
new file mode 100644
index 00000000..699f8252
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red32.png b/assets/MapIcons/colorNumbers/marker_red32.png
new file mode 100644
index 00000000..91f08c95
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red33.png b/assets/MapIcons/colorNumbers/marker_red33.png
new file mode 100644
index 00000000..0d448d43
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red34.png b/assets/MapIcons/colorNumbers/marker_red34.png
new file mode 100644
index 00000000..6aeeb7a5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red35.png b/assets/MapIcons/colorNumbers/marker_red35.png
new file mode 100644
index 00000000..b1eff514
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red36.png b/assets/MapIcons/colorNumbers/marker_red36.png
new file mode 100644
index 00000000..28347de7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red37.png b/assets/MapIcons/colorNumbers/marker_red37.png
new file mode 100644
index 00000000..401e315a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red38.png b/assets/MapIcons/colorNumbers/marker_red38.png
new file mode 100644
index 00000000..ebfa8d9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red39.png b/assets/MapIcons/colorNumbers/marker_red39.png
new file mode 100644
index 00000000..d1a5ce9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red4.png b/assets/MapIcons/colorNumbers/marker_red4.png
new file mode 100644
index 00000000..bc5453af
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red40.png b/assets/MapIcons/colorNumbers/marker_red40.png
new file mode 100644
index 00000000..8c02707e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red41.png b/assets/MapIcons/colorNumbers/marker_red41.png
new file mode 100644
index 00000000..65898399
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red42.png b/assets/MapIcons/colorNumbers/marker_red42.png
new file mode 100644
index 00000000..e2284a4d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red43.png b/assets/MapIcons/colorNumbers/marker_red43.png
new file mode 100644
index 00000000..0e5a35f9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red44.png b/assets/MapIcons/colorNumbers/marker_red44.png
new file mode 100644
index 00000000..d51aadf6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red45.png b/assets/MapIcons/colorNumbers/marker_red45.png
new file mode 100644
index 00000000..6ea7721d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red46.png b/assets/MapIcons/colorNumbers/marker_red46.png
new file mode 100644
index 00000000..4cd621b7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red47.png b/assets/MapIcons/colorNumbers/marker_red47.png
new file mode 100644
index 00000000..1d20d4b4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red48.png b/assets/MapIcons/colorNumbers/marker_red48.png
new file mode 100644
index 00000000..ef72a1a9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red49.png b/assets/MapIcons/colorNumbers/marker_red49.png
new file mode 100644
index 00000000..d2a8f25f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red5.png b/assets/MapIcons/colorNumbers/marker_red5.png
new file mode 100644
index 00000000..16b5ac91
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red50.png b/assets/MapIcons/colorNumbers/marker_red50.png
new file mode 100644
index 00000000..4c351043
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red51.png b/assets/MapIcons/colorNumbers/marker_red51.png
new file mode 100644
index 00000000..02bf5664
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red52.png b/assets/MapIcons/colorNumbers/marker_red52.png
new file mode 100644
index 00000000..ce6cceb4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red53.png b/assets/MapIcons/colorNumbers/marker_red53.png
new file mode 100644
index 00000000..c4a61481
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red54.png b/assets/MapIcons/colorNumbers/marker_red54.png
new file mode 100644
index 00000000..ca27efed
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red55.png b/assets/MapIcons/colorNumbers/marker_red55.png
new file mode 100644
index 00000000..3ca6c4cc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red56.png b/assets/MapIcons/colorNumbers/marker_red56.png
new file mode 100644
index 00000000..edc52599
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red57.png b/assets/MapIcons/colorNumbers/marker_red57.png
new file mode 100644
index 00000000..fc926eda
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red58.png b/assets/MapIcons/colorNumbers/marker_red58.png
new file mode 100644
index 00000000..6549dbbf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red59.png b/assets/MapIcons/colorNumbers/marker_red59.png
new file mode 100644
index 00000000..1c8d6f67
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red6.png b/assets/MapIcons/colorNumbers/marker_red6.png
new file mode 100644
index 00000000..27b40f2a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red60.png b/assets/MapIcons/colorNumbers/marker_red60.png
new file mode 100644
index 00000000..e45570b6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red61.png b/assets/MapIcons/colorNumbers/marker_red61.png
new file mode 100644
index 00000000..7b2cc119
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red62.png b/assets/MapIcons/colorNumbers/marker_red62.png
new file mode 100644
index 00000000..0a6f7b26
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red63.png b/assets/MapIcons/colorNumbers/marker_red63.png
new file mode 100644
index 00000000..56689e13
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red64.png b/assets/MapIcons/colorNumbers/marker_red64.png
new file mode 100644
index 00000000..784e8f80
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red65.png b/assets/MapIcons/colorNumbers/marker_red65.png
new file mode 100644
index 00000000..0f06eade
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red66.png b/assets/MapIcons/colorNumbers/marker_red66.png
new file mode 100644
index 00000000..011580ed
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red67.png b/assets/MapIcons/colorNumbers/marker_red67.png
new file mode 100644
index 00000000..8acbe1b2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red68.png b/assets/MapIcons/colorNumbers/marker_red68.png
new file mode 100644
index 00000000..3d15771e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red69.png b/assets/MapIcons/colorNumbers/marker_red69.png
new file mode 100644
index 00000000..6737ca9a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red7.png b/assets/MapIcons/colorNumbers/marker_red7.png
new file mode 100644
index 00000000..7021b7c7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red70.png b/assets/MapIcons/colorNumbers/marker_red70.png
new file mode 100644
index 00000000..e850dfca
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red71.png b/assets/MapIcons/colorNumbers/marker_red71.png
new file mode 100644
index 00000000..0b6661b8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red72.png b/assets/MapIcons/colorNumbers/marker_red72.png
new file mode 100644
index 00000000..adae5350
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red73.png b/assets/MapIcons/colorNumbers/marker_red73.png
new file mode 100644
index 00000000..5964999e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red74.png b/assets/MapIcons/colorNumbers/marker_red74.png
new file mode 100644
index 00000000..96f71208
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red75.png b/assets/MapIcons/colorNumbers/marker_red75.png
new file mode 100644
index 00000000..f0744d5b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red76.png b/assets/MapIcons/colorNumbers/marker_red76.png
new file mode 100644
index 00000000..28d722d2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red77.png b/assets/MapIcons/colorNumbers/marker_red77.png
new file mode 100644
index 00000000..61d83e5f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red78.png b/assets/MapIcons/colorNumbers/marker_red78.png
new file mode 100644
index 00000000..74afc879
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red79.png b/assets/MapIcons/colorNumbers/marker_red79.png
new file mode 100644
index 00000000..c4e98672
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red8.png b/assets/MapIcons/colorNumbers/marker_red8.png
new file mode 100644
index 00000000..0f6abe68
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red80.png b/assets/MapIcons/colorNumbers/marker_red80.png
new file mode 100644
index 00000000..22bff909
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red81.png b/assets/MapIcons/colorNumbers/marker_red81.png
new file mode 100644
index 00000000..0df198b1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red82.png b/assets/MapIcons/colorNumbers/marker_red82.png
new file mode 100644
index 00000000..da824fb1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red83.png b/assets/MapIcons/colorNumbers/marker_red83.png
new file mode 100644
index 00000000..76a5c1fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red84.png b/assets/MapIcons/colorNumbers/marker_red84.png
new file mode 100644
index 00000000..6275a1f3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red85.png b/assets/MapIcons/colorNumbers/marker_red85.png
new file mode 100644
index 00000000..f74bc20f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red86.png b/assets/MapIcons/colorNumbers/marker_red86.png
new file mode 100644
index 00000000..1b2ff28d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red87.png b/assets/MapIcons/colorNumbers/marker_red87.png
new file mode 100644
index 00000000..2db10fe1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red88.png b/assets/MapIcons/colorNumbers/marker_red88.png
new file mode 100644
index 00000000..7fbc7229
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red89.png b/assets/MapIcons/colorNumbers/marker_red89.png
new file mode 100644
index 00000000..1d279a87
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red9.png b/assets/MapIcons/colorNumbers/marker_red9.png
new file mode 100644
index 00000000..bc0a3c64
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red90.png b/assets/MapIcons/colorNumbers/marker_red90.png
new file mode 100644
index 00000000..0cfae058
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red91.png b/assets/MapIcons/colorNumbers/marker_red91.png
new file mode 100644
index 00000000..ed01f388
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red92.png b/assets/MapIcons/colorNumbers/marker_red92.png
new file mode 100644
index 00000000..8deb0201
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red93.png b/assets/MapIcons/colorNumbers/marker_red93.png
new file mode 100644
index 00000000..3e388271
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red94.png b/assets/MapIcons/colorNumbers/marker_red94.png
new file mode 100644
index 00000000..a3786fb1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red95.png b/assets/MapIcons/colorNumbers/marker_red95.png
new file mode 100644
index 00000000..f5d15661
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red96.png b/assets/MapIcons/colorNumbers/marker_red96.png
new file mode 100644
index 00000000..638ce87b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red97.png b/assets/MapIcons/colorNumbers/marker_red97.png
new file mode 100644
index 00000000..92e34b35
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red98.png b/assets/MapIcons/colorNumbers/marker_red98.png
new file mode 100644
index 00000000..8098415a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red99.png b/assets/MapIcons/colorNumbers/marker_red99.png
new file mode 100644
index 00000000..dcf3f91e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red=.png b/assets/MapIcons/colorNumbers/marker_red=.png
new file mode 100644
index 00000000..d37f5034
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_red@.png b/assets/MapIcons/colorNumbers/marker_red@.png
new file mode 100644
index 00000000..392738f7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_red@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redA.png b/assets/MapIcons/colorNumbers/marker_redA.png
new file mode 100644
index 00000000..2cfc76dc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redB.png b/assets/MapIcons/colorNumbers/marker_redB.png
new file mode 100644
index 00000000..f8c984a1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redC.png b/assets/MapIcons/colorNumbers/marker_redC.png
new file mode 100644
index 00000000..cc4fbe8f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redD.png b/assets/MapIcons/colorNumbers/marker_redD.png
new file mode 100644
index 00000000..17aea011
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redE.png b/assets/MapIcons/colorNumbers/marker_redE.png
new file mode 100644
index 00000000..effe6009
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redF.png b/assets/MapIcons/colorNumbers/marker_redF.png
new file mode 100644
index 00000000..5cc3c610
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redG.png b/assets/MapIcons/colorNumbers/marker_redG.png
new file mode 100644
index 00000000..69d4b264
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redH.png b/assets/MapIcons/colorNumbers/marker_redH.png
new file mode 100644
index 00000000..6bc37165
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redI.png b/assets/MapIcons/colorNumbers/marker_redI.png
new file mode 100644
index 00000000..8a7906ee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redJ.png b/assets/MapIcons/colorNumbers/marker_redJ.png
new file mode 100644
index 00000000..95851875
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redK.png b/assets/MapIcons/colorNumbers/marker_redK.png
new file mode 100644
index 00000000..b6a91de5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redL.png b/assets/MapIcons/colorNumbers/marker_redL.png
new file mode 100644
index 00000000..0a139b1a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redM.png b/assets/MapIcons/colorNumbers/marker_redM.png
new file mode 100644
index 00000000..91165016
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redN.png b/assets/MapIcons/colorNumbers/marker_redN.png
new file mode 100644
index 00000000..5f08383e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redO.png b/assets/MapIcons/colorNumbers/marker_redO.png
new file mode 100644
index 00000000..6e0ee558
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redP.png b/assets/MapIcons/colorNumbers/marker_redP.png
new file mode 100644
index 00000000..ae30fc88
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redQ.png b/assets/MapIcons/colorNumbers/marker_redQ.png
new file mode 100644
index 00000000..ff680642
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redR.png b/assets/MapIcons/colorNumbers/marker_redR.png
new file mode 100644
index 00000000..b87abbd7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redS.png b/assets/MapIcons/colorNumbers/marker_redS.png
new file mode 100644
index 00000000..abdbebc6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redT.png b/assets/MapIcons/colorNumbers/marker_redT.png
new file mode 100644
index 00000000..8b32df27
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redU.png b/assets/MapIcons/colorNumbers/marker_redU.png
new file mode 100644
index 00000000..3274080d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redV.png b/assets/MapIcons/colorNumbers/marker_redV.png
new file mode 100644
index 00000000..8713d961
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redW.png b/assets/MapIcons/colorNumbers/marker_redW.png
new file mode 100644
index 00000000..74b7a719
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redX.png b/assets/MapIcons/colorNumbers/marker_redX.png
new file mode 100644
index 00000000..dbca0f4f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redY.png b/assets/MapIcons/colorNumbers/marker_redY.png
new file mode 100644
index 00000000..44dbb86f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_redZ.png b/assets/MapIcons/colorNumbers/marker_redZ.png
new file mode 100644
index 00000000..e10b201e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_redZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white!.png b/assets/MapIcons/colorNumbers/marker_white!.png
new file mode 100644
index 00000000..5cf2120a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white#.png b/assets/MapIcons/colorNumbers/marker_white#.png
new file mode 100644
index 00000000..e6beb9fb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white$.png b/assets/MapIcons/colorNumbers/marker_white$.png
new file mode 100644
index 00000000..1e13333c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white%.png b/assets/MapIcons/colorNumbers/marker_white%.png
new file mode 100644
index 00000000..096d2793
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white&.png b/assets/MapIcons/colorNumbers/marker_white&.png
new file mode 100644
index 00000000..4e3b3d45
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white+.png b/assets/MapIcons/colorNumbers/marker_white+.png
new file mode 100644
index 00000000..a3e61dc8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white-.png b/assets/MapIcons/colorNumbers/marker_white-.png
new file mode 100644
index 00000000..f639e46d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white.png b/assets/MapIcons/colorNumbers/marker_white.png
new file mode 100644
index 00000000..46b56067
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white1.png b/assets/MapIcons/colorNumbers/marker_white1.png
new file mode 100644
index 00000000..228111a8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white10.png b/assets/MapIcons/colorNumbers/marker_white10.png
new file mode 100644
index 00000000..45019933
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white100.png b/assets/MapIcons/colorNumbers/marker_white100.png
new file mode 100644
index 00000000..287bdc1b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white11.png b/assets/MapIcons/colorNumbers/marker_white11.png
new file mode 100644
index 00000000..00e308f3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white12.png b/assets/MapIcons/colorNumbers/marker_white12.png
new file mode 100644
index 00000000..3ff46839
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white13.png b/assets/MapIcons/colorNumbers/marker_white13.png
new file mode 100644
index 00000000..b6379d2c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white14.png b/assets/MapIcons/colorNumbers/marker_white14.png
new file mode 100644
index 00000000..4c95bcd6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white15.png b/assets/MapIcons/colorNumbers/marker_white15.png
new file mode 100644
index 00000000..2efa66de
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white16.png b/assets/MapIcons/colorNumbers/marker_white16.png
new file mode 100644
index 00000000..c05edd8a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white17.png b/assets/MapIcons/colorNumbers/marker_white17.png
new file mode 100644
index 00000000..f7bdd526
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white18.png b/assets/MapIcons/colorNumbers/marker_white18.png
new file mode 100644
index 00000000..c3c2b98e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white19.png b/assets/MapIcons/colorNumbers/marker_white19.png
new file mode 100644
index 00000000..1062029e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white2.png b/assets/MapIcons/colorNumbers/marker_white2.png
new file mode 100644
index 00000000..df955b83
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white20.png b/assets/MapIcons/colorNumbers/marker_white20.png
new file mode 100644
index 00000000..dc1e9ea0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white21.png b/assets/MapIcons/colorNumbers/marker_white21.png
new file mode 100644
index 00000000..fdbce249
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white22.png b/assets/MapIcons/colorNumbers/marker_white22.png
new file mode 100644
index 00000000..9896a678
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white23.png b/assets/MapIcons/colorNumbers/marker_white23.png
new file mode 100644
index 00000000..bf56130a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white24.png b/assets/MapIcons/colorNumbers/marker_white24.png
new file mode 100644
index 00000000..3247feb1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white25.png b/assets/MapIcons/colorNumbers/marker_white25.png
new file mode 100644
index 00000000..fa8237d8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white26.png b/assets/MapIcons/colorNumbers/marker_white26.png
new file mode 100644
index 00000000..2cbf9462
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white27.png b/assets/MapIcons/colorNumbers/marker_white27.png
new file mode 100644
index 00000000..ba60c44e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white28.png b/assets/MapIcons/colorNumbers/marker_white28.png
new file mode 100644
index 00000000..33ece363
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white29.png b/assets/MapIcons/colorNumbers/marker_white29.png
new file mode 100644
index 00000000..55631600
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white3.png b/assets/MapIcons/colorNumbers/marker_white3.png
new file mode 100644
index 00000000..0ee2ff61
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white30.png b/assets/MapIcons/colorNumbers/marker_white30.png
new file mode 100644
index 00000000..bc19cc5e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white31.png b/assets/MapIcons/colorNumbers/marker_white31.png
new file mode 100644
index 00000000..086ad071
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white32.png b/assets/MapIcons/colorNumbers/marker_white32.png
new file mode 100644
index 00000000..aaf0d451
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white33.png b/assets/MapIcons/colorNumbers/marker_white33.png
new file mode 100644
index 00000000..b8ccfa58
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white34.png b/assets/MapIcons/colorNumbers/marker_white34.png
new file mode 100644
index 00000000..f5176224
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white35.png b/assets/MapIcons/colorNumbers/marker_white35.png
new file mode 100644
index 00000000..acc5f9be
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white36.png b/assets/MapIcons/colorNumbers/marker_white36.png
new file mode 100644
index 00000000..1f459b41
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white37.png b/assets/MapIcons/colorNumbers/marker_white37.png
new file mode 100644
index 00000000..16d8defe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white38.png b/assets/MapIcons/colorNumbers/marker_white38.png
new file mode 100644
index 00000000..65dc39c7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white39.png b/assets/MapIcons/colorNumbers/marker_white39.png
new file mode 100644
index 00000000..6f26d623
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white4.png b/assets/MapIcons/colorNumbers/marker_white4.png
new file mode 100644
index 00000000..a170dae3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white40.png b/assets/MapIcons/colorNumbers/marker_white40.png
new file mode 100644
index 00000000..59c6dad9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white41.png b/assets/MapIcons/colorNumbers/marker_white41.png
new file mode 100644
index 00000000..d0d8aaa5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white42.png b/assets/MapIcons/colorNumbers/marker_white42.png
new file mode 100644
index 00000000..0d9a394d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white43.png b/assets/MapIcons/colorNumbers/marker_white43.png
new file mode 100644
index 00000000..5000bf6d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white44.png b/assets/MapIcons/colorNumbers/marker_white44.png
new file mode 100644
index 00000000..27a445ba
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white45.png b/assets/MapIcons/colorNumbers/marker_white45.png
new file mode 100644
index 00000000..c9b8004e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white46.png b/assets/MapIcons/colorNumbers/marker_white46.png
new file mode 100644
index 00000000..5cdff5c3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white47.png b/assets/MapIcons/colorNumbers/marker_white47.png
new file mode 100644
index 00000000..b306bfca
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white48.png b/assets/MapIcons/colorNumbers/marker_white48.png
new file mode 100644
index 00000000..0ef59df4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white49.png b/assets/MapIcons/colorNumbers/marker_white49.png
new file mode 100644
index 00000000..70f1fe72
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white5.png b/assets/MapIcons/colorNumbers/marker_white5.png
new file mode 100644
index 00000000..4173e8b3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white50.png b/assets/MapIcons/colorNumbers/marker_white50.png
new file mode 100644
index 00000000..a78c7a55
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white51.png b/assets/MapIcons/colorNumbers/marker_white51.png
new file mode 100644
index 00000000..9642738b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white52.png b/assets/MapIcons/colorNumbers/marker_white52.png
new file mode 100644
index 00000000..e7d492bb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white53.png b/assets/MapIcons/colorNumbers/marker_white53.png
new file mode 100644
index 00000000..f3db7198
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white54.png b/assets/MapIcons/colorNumbers/marker_white54.png
new file mode 100644
index 00000000..0d220a89
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white55.png b/assets/MapIcons/colorNumbers/marker_white55.png
new file mode 100644
index 00000000..757c32da
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white56.png b/assets/MapIcons/colorNumbers/marker_white56.png
new file mode 100644
index 00000000..b09efba5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white57.png b/assets/MapIcons/colorNumbers/marker_white57.png
new file mode 100644
index 00000000..3f1308bf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white58.png b/assets/MapIcons/colorNumbers/marker_white58.png
new file mode 100644
index 00000000..aff29fdd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white59.png b/assets/MapIcons/colorNumbers/marker_white59.png
new file mode 100644
index 00000000..6d0a5690
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white6.png b/assets/MapIcons/colorNumbers/marker_white6.png
new file mode 100644
index 00000000..7e75af41
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white60.png b/assets/MapIcons/colorNumbers/marker_white60.png
new file mode 100644
index 00000000..a2809795
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white61.png b/assets/MapIcons/colorNumbers/marker_white61.png
new file mode 100644
index 00000000..b1b484b9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white62.png b/assets/MapIcons/colorNumbers/marker_white62.png
new file mode 100644
index 00000000..5dab1de8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white63.png b/assets/MapIcons/colorNumbers/marker_white63.png
new file mode 100644
index 00000000..f619aa37
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white64.png b/assets/MapIcons/colorNumbers/marker_white64.png
new file mode 100644
index 00000000..94e4714c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white65.png b/assets/MapIcons/colorNumbers/marker_white65.png
new file mode 100644
index 00000000..9945f1b4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white66.png b/assets/MapIcons/colorNumbers/marker_white66.png
new file mode 100644
index 00000000..c0a41ae4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white67.png b/assets/MapIcons/colorNumbers/marker_white67.png
new file mode 100644
index 00000000..20d5ba7c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white68.png b/assets/MapIcons/colorNumbers/marker_white68.png
new file mode 100644
index 00000000..0c076657
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white69.png b/assets/MapIcons/colorNumbers/marker_white69.png
new file mode 100644
index 00000000..fc2dd8b3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white7.png b/assets/MapIcons/colorNumbers/marker_white7.png
new file mode 100644
index 00000000..b34fcef3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white70.png b/assets/MapIcons/colorNumbers/marker_white70.png
new file mode 100644
index 00000000..861171b2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white71.png b/assets/MapIcons/colorNumbers/marker_white71.png
new file mode 100644
index 00000000..300210bc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white72.png b/assets/MapIcons/colorNumbers/marker_white72.png
new file mode 100644
index 00000000..6ce12983
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white73.png b/assets/MapIcons/colorNumbers/marker_white73.png
new file mode 100644
index 00000000..22081dd9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white74.png b/assets/MapIcons/colorNumbers/marker_white74.png
new file mode 100644
index 00000000..0c3d1bf7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white75.png b/assets/MapIcons/colorNumbers/marker_white75.png
new file mode 100644
index 00000000..95efb673
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white76.png b/assets/MapIcons/colorNumbers/marker_white76.png
new file mode 100644
index 00000000..82518b89
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white77.png b/assets/MapIcons/colorNumbers/marker_white77.png
new file mode 100644
index 00000000..f550adf3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white78.png b/assets/MapIcons/colorNumbers/marker_white78.png
new file mode 100644
index 00000000..35b01716
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white79.png b/assets/MapIcons/colorNumbers/marker_white79.png
new file mode 100644
index 00000000..b969984f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white8.png b/assets/MapIcons/colorNumbers/marker_white8.png
new file mode 100644
index 00000000..354124f9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white80.png b/assets/MapIcons/colorNumbers/marker_white80.png
new file mode 100644
index 00000000..8d787d24
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white81.png b/assets/MapIcons/colorNumbers/marker_white81.png
new file mode 100644
index 00000000..564a0f8f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white82.png b/assets/MapIcons/colorNumbers/marker_white82.png
new file mode 100644
index 00000000..52866ce2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white83.png b/assets/MapIcons/colorNumbers/marker_white83.png
new file mode 100644
index 00000000..0f138682
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white84.png b/assets/MapIcons/colorNumbers/marker_white84.png
new file mode 100644
index 00000000..38bbfe9c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white85.png b/assets/MapIcons/colorNumbers/marker_white85.png
new file mode 100644
index 00000000..72a141fb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white86.png b/assets/MapIcons/colorNumbers/marker_white86.png
new file mode 100644
index 00000000..ec4da788
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white87.png b/assets/MapIcons/colorNumbers/marker_white87.png
new file mode 100644
index 00000000..be424bd7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white88.png b/assets/MapIcons/colorNumbers/marker_white88.png
new file mode 100644
index 00000000..ed61e553
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white89.png b/assets/MapIcons/colorNumbers/marker_white89.png
new file mode 100644
index 00000000..874b1e53
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white9.png b/assets/MapIcons/colorNumbers/marker_white9.png
new file mode 100644
index 00000000..ee948559
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white90.png b/assets/MapIcons/colorNumbers/marker_white90.png
new file mode 100644
index 00000000..0fe43d0d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white91.png b/assets/MapIcons/colorNumbers/marker_white91.png
new file mode 100644
index 00000000..e48f7aef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white92.png b/assets/MapIcons/colorNumbers/marker_white92.png
new file mode 100644
index 00000000..4e602238
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white93.png b/assets/MapIcons/colorNumbers/marker_white93.png
new file mode 100644
index 00000000..71cdac11
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white94.png b/assets/MapIcons/colorNumbers/marker_white94.png
new file mode 100644
index 00000000..35406c29
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white95.png b/assets/MapIcons/colorNumbers/marker_white95.png
new file mode 100644
index 00000000..46db43fb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white96.png b/assets/MapIcons/colorNumbers/marker_white96.png
new file mode 100644
index 00000000..57a54d8c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white97.png b/assets/MapIcons/colorNumbers/marker_white97.png
new file mode 100644
index 00000000..b5313719
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white98.png b/assets/MapIcons/colorNumbers/marker_white98.png
new file mode 100644
index 00000000..fcf146b6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white99.png b/assets/MapIcons/colorNumbers/marker_white99.png
new file mode 100644
index 00000000..83498d87
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white=.png b/assets/MapIcons/colorNumbers/marker_white=.png
new file mode 100644
index 00000000..0a34140d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_white@.png b/assets/MapIcons/colorNumbers/marker_white@.png
new file mode 100644
index 00000000..895cdfe8
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_white@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteA.png b/assets/MapIcons/colorNumbers/marker_whiteA.png
new file mode 100644
index 00000000..366ce04c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteB.png b/assets/MapIcons/colorNumbers/marker_whiteB.png
new file mode 100644
index 00000000..3edf1d8c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteC.png b/assets/MapIcons/colorNumbers/marker_whiteC.png
new file mode 100644
index 00000000..bfbd5c96
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteD.png b/assets/MapIcons/colorNumbers/marker_whiteD.png
new file mode 100644
index 00000000..744da81b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteE.png b/assets/MapIcons/colorNumbers/marker_whiteE.png
new file mode 100644
index 00000000..abfb8fb6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteF.png b/assets/MapIcons/colorNumbers/marker_whiteF.png
new file mode 100644
index 00000000..39050f7c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteG.png b/assets/MapIcons/colorNumbers/marker_whiteG.png
new file mode 100644
index 00000000..8d545834
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteH.png b/assets/MapIcons/colorNumbers/marker_whiteH.png
new file mode 100644
index 00000000..c296d5ee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteI.png b/assets/MapIcons/colorNumbers/marker_whiteI.png
new file mode 100644
index 00000000..1ba27537
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteJ.png b/assets/MapIcons/colorNumbers/marker_whiteJ.png
new file mode 100644
index 00000000..c5fc81d3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteK.png b/assets/MapIcons/colorNumbers/marker_whiteK.png
new file mode 100644
index 00000000..952865d9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteL.png b/assets/MapIcons/colorNumbers/marker_whiteL.png
new file mode 100644
index 00000000..40022d5f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteM.png b/assets/MapIcons/colorNumbers/marker_whiteM.png
new file mode 100644
index 00000000..dd9ee9a4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteN.png b/assets/MapIcons/colorNumbers/marker_whiteN.png
new file mode 100644
index 00000000..6ff8013b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteO.png b/assets/MapIcons/colorNumbers/marker_whiteO.png
new file mode 100644
index 00000000..250170ee
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteP.png b/assets/MapIcons/colorNumbers/marker_whiteP.png
new file mode 100644
index 00000000..a886b1aa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteQ.png b/assets/MapIcons/colorNumbers/marker_whiteQ.png
new file mode 100644
index 00000000..8146d77a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteR.png b/assets/MapIcons/colorNumbers/marker_whiteR.png
new file mode 100644
index 00000000..242d5c8c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteS.png b/assets/MapIcons/colorNumbers/marker_whiteS.png
new file mode 100644
index 00000000..71292a60
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteT.png b/assets/MapIcons/colorNumbers/marker_whiteT.png
new file mode 100644
index 00000000..35d67366
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteU.png b/assets/MapIcons/colorNumbers/marker_whiteU.png
new file mode 100644
index 00000000..90c4e24a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteV.png b/assets/MapIcons/colorNumbers/marker_whiteV.png
new file mode 100644
index 00000000..d3207d01
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteW.png b/assets/MapIcons/colorNumbers/marker_whiteW.png
new file mode 100644
index 00000000..7775ae8b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteX.png b/assets/MapIcons/colorNumbers/marker_whiteX.png
new file mode 100644
index 00000000..3b8761bc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteY.png b/assets/MapIcons/colorNumbers/marker_whiteY.png
new file mode 100644
index 00000000..8fd6d63d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_whiteZ.png b/assets/MapIcons/colorNumbers/marker_whiteZ.png
new file mode 100644
index 00000000..1d058621
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_whiteZ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow!.png b/assets/MapIcons/colorNumbers/marker_yellow!.png
new file mode 100644
index 00000000..d46e792e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow!.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow#.png b/assets/MapIcons/colorNumbers/marker_yellow#.png
new file mode 100644
index 00000000..99a4d382
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow#.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow$.png b/assets/MapIcons/colorNumbers/marker_yellow$.png
new file mode 100644
index 00000000..a0754ba4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow$.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow%.png b/assets/MapIcons/colorNumbers/marker_yellow%.png
new file mode 100644
index 00000000..6f6ca05f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow%.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow&.png b/assets/MapIcons/colorNumbers/marker_yellow&.png
new file mode 100644
index 00000000..fb2963f0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow&.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow+.png b/assets/MapIcons/colorNumbers/marker_yellow+.png
new file mode 100644
index 00000000..eaf98231
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow+.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow-.png b/assets/MapIcons/colorNumbers/marker_yellow-.png
new file mode 100644
index 00000000..9899fefe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow-.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow.png b/assets/MapIcons/colorNumbers/marker_yellow.png
new file mode 100644
index 00000000..82e2639c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow1.png b/assets/MapIcons/colorNumbers/marker_yellow1.png
new file mode 100644
index 00000000..86a6f040
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow1.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow10.png b/assets/MapIcons/colorNumbers/marker_yellow10.png
new file mode 100644
index 00000000..34b92c07
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow10.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow100.png b/assets/MapIcons/colorNumbers/marker_yellow100.png
new file mode 100644
index 00000000..0d90048f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow100.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow11.png b/assets/MapIcons/colorNumbers/marker_yellow11.png
new file mode 100644
index 00000000..ff5b1aa5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow11.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow12.png b/assets/MapIcons/colorNumbers/marker_yellow12.png
new file mode 100644
index 00000000..06e1121e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow12.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow13.png b/assets/MapIcons/colorNumbers/marker_yellow13.png
new file mode 100644
index 00000000..0b5224d3
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow13.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow14.png b/assets/MapIcons/colorNumbers/marker_yellow14.png
new file mode 100644
index 00000000..91b3c2bd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow14.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow15.png b/assets/MapIcons/colorNumbers/marker_yellow15.png
new file mode 100644
index 00000000..7ef2c1c2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow15.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow16.png b/assets/MapIcons/colorNumbers/marker_yellow16.png
new file mode 100644
index 00000000..900d0a40
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow16.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow17.png b/assets/MapIcons/colorNumbers/marker_yellow17.png
new file mode 100644
index 00000000..cf901142
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow17.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow18.png b/assets/MapIcons/colorNumbers/marker_yellow18.png
new file mode 100644
index 00000000..93dfdbc9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow18.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow19.png b/assets/MapIcons/colorNumbers/marker_yellow19.png
new file mode 100644
index 00000000..0045126b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow19.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow2.png b/assets/MapIcons/colorNumbers/marker_yellow2.png
new file mode 100644
index 00000000..90c9956d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow2.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow20.png b/assets/MapIcons/colorNumbers/marker_yellow20.png
new file mode 100644
index 00000000..e31823d7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow20.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow21.png b/assets/MapIcons/colorNumbers/marker_yellow21.png
new file mode 100644
index 00000000..3bda902d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow21.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow22.png b/assets/MapIcons/colorNumbers/marker_yellow22.png
new file mode 100644
index 00000000..493828f5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow22.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow23.png b/assets/MapIcons/colorNumbers/marker_yellow23.png
new file mode 100644
index 00000000..86cf344a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow23.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow24.png b/assets/MapIcons/colorNumbers/marker_yellow24.png
new file mode 100644
index 00000000..2633b759
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow24.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow25.png b/assets/MapIcons/colorNumbers/marker_yellow25.png
new file mode 100644
index 00000000..aca14727
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow25.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow26.png b/assets/MapIcons/colorNumbers/marker_yellow26.png
new file mode 100644
index 00000000..a018f341
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow26.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow27.png b/assets/MapIcons/colorNumbers/marker_yellow27.png
new file mode 100644
index 00000000..5ef8c90e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow27.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow28.png b/assets/MapIcons/colorNumbers/marker_yellow28.png
new file mode 100644
index 00000000..22437ace
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow28.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow29.png b/assets/MapIcons/colorNumbers/marker_yellow29.png
new file mode 100644
index 00000000..8849aebe
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow29.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow3.png b/assets/MapIcons/colorNumbers/marker_yellow3.png
new file mode 100644
index 00000000..2c281531
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow3.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow30.png b/assets/MapIcons/colorNumbers/marker_yellow30.png
new file mode 100644
index 00000000..0bd38499
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow30.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow31.png b/assets/MapIcons/colorNumbers/marker_yellow31.png
new file mode 100644
index 00000000..0a1678fc
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow31.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow32.png b/assets/MapIcons/colorNumbers/marker_yellow32.png
new file mode 100644
index 00000000..d4c3ae55
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow32.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow33.png b/assets/MapIcons/colorNumbers/marker_yellow33.png
new file mode 100644
index 00000000..de690c4a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow33.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow34.png b/assets/MapIcons/colorNumbers/marker_yellow34.png
new file mode 100644
index 00000000..99d9739b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow34.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow35.png b/assets/MapIcons/colorNumbers/marker_yellow35.png
new file mode 100644
index 00000000..2c321283
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow35.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow36.png b/assets/MapIcons/colorNumbers/marker_yellow36.png
new file mode 100644
index 00000000..09932bf7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow36.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow37.png b/assets/MapIcons/colorNumbers/marker_yellow37.png
new file mode 100644
index 00000000..3426f8be
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow37.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow38.png b/assets/MapIcons/colorNumbers/marker_yellow38.png
new file mode 100644
index 00000000..66f00e16
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow38.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow39.png b/assets/MapIcons/colorNumbers/marker_yellow39.png
new file mode 100644
index 00000000..6c6333da
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow39.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow4.png b/assets/MapIcons/colorNumbers/marker_yellow4.png
new file mode 100644
index 00000000..7e1310ef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow4.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow40.png b/assets/MapIcons/colorNumbers/marker_yellow40.png
new file mode 100644
index 00000000..2dacdd64
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow40.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow41.png b/assets/MapIcons/colorNumbers/marker_yellow41.png
new file mode 100644
index 00000000..548bdc9b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow41.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow42.png b/assets/MapIcons/colorNumbers/marker_yellow42.png
new file mode 100644
index 00000000..aa54ca15
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow42.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow43.png b/assets/MapIcons/colorNumbers/marker_yellow43.png
new file mode 100644
index 00000000..3a31e865
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow43.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow44.png b/assets/MapIcons/colorNumbers/marker_yellow44.png
new file mode 100644
index 00000000..25394e24
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow44.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow45.png b/assets/MapIcons/colorNumbers/marker_yellow45.png
new file mode 100644
index 00000000..453e3d3b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow45.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow46.png b/assets/MapIcons/colorNumbers/marker_yellow46.png
new file mode 100644
index 00000000..9bb8cf77
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow46.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow47.png b/assets/MapIcons/colorNumbers/marker_yellow47.png
new file mode 100644
index 00000000..1daee476
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow47.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow48.png b/assets/MapIcons/colorNumbers/marker_yellow48.png
new file mode 100644
index 00000000..1078562b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow48.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow49.png b/assets/MapIcons/colorNumbers/marker_yellow49.png
new file mode 100644
index 00000000..0e1b2092
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow49.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow5.png b/assets/MapIcons/colorNumbers/marker_yellow5.png
new file mode 100644
index 00000000..8e283549
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow5.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow50.png b/assets/MapIcons/colorNumbers/marker_yellow50.png
new file mode 100644
index 00000000..5afe8b91
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow50.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow51.png b/assets/MapIcons/colorNumbers/marker_yellow51.png
new file mode 100644
index 00000000..3406fdac
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow51.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow52.png b/assets/MapIcons/colorNumbers/marker_yellow52.png
new file mode 100644
index 00000000..51cebda2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow52.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow53.png b/assets/MapIcons/colorNumbers/marker_yellow53.png
new file mode 100644
index 00000000..d3552da9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow53.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow54.png b/assets/MapIcons/colorNumbers/marker_yellow54.png
new file mode 100644
index 00000000..3b8685db
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow54.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow55.png b/assets/MapIcons/colorNumbers/marker_yellow55.png
new file mode 100644
index 00000000..8faf0585
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow55.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow56.png b/assets/MapIcons/colorNumbers/marker_yellow56.png
new file mode 100644
index 00000000..f5628286
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow56.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow57.png b/assets/MapIcons/colorNumbers/marker_yellow57.png
new file mode 100644
index 00000000..82fd7ea9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow57.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow58.png b/assets/MapIcons/colorNumbers/marker_yellow58.png
new file mode 100644
index 00000000..29e9eb87
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow58.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow59.png b/assets/MapIcons/colorNumbers/marker_yellow59.png
new file mode 100644
index 00000000..358d7cf9
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow59.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow6.png b/assets/MapIcons/colorNumbers/marker_yellow6.png
new file mode 100644
index 00000000..a0305095
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow6.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow60.png b/assets/MapIcons/colorNumbers/marker_yellow60.png
new file mode 100644
index 00000000..2ad8343a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow60.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow61.png b/assets/MapIcons/colorNumbers/marker_yellow61.png
new file mode 100644
index 00000000..42b37fa2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow61.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow62.png b/assets/MapIcons/colorNumbers/marker_yellow62.png
new file mode 100644
index 00000000..a8255e28
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow62.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow63.png b/assets/MapIcons/colorNumbers/marker_yellow63.png
new file mode 100644
index 00000000..500141eb
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow63.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow64.png b/assets/MapIcons/colorNumbers/marker_yellow64.png
new file mode 100644
index 00000000..a9891c57
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow64.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow65.png b/assets/MapIcons/colorNumbers/marker_yellow65.png
new file mode 100644
index 00000000..12e5760f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow65.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow66.png b/assets/MapIcons/colorNumbers/marker_yellow66.png
new file mode 100644
index 00000000..29e9d3fd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow66.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow67.png b/assets/MapIcons/colorNumbers/marker_yellow67.png
new file mode 100644
index 00000000..3c2a6949
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow67.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow68.png b/assets/MapIcons/colorNumbers/marker_yellow68.png
new file mode 100644
index 00000000..b9aae64e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow68.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow69.png b/assets/MapIcons/colorNumbers/marker_yellow69.png
new file mode 100644
index 00000000..cff219e1
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow69.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow7.png b/assets/MapIcons/colorNumbers/marker_yellow7.png
new file mode 100644
index 00000000..ba72aa2b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow7.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow70.png b/assets/MapIcons/colorNumbers/marker_yellow70.png
new file mode 100644
index 00000000..8f250e10
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow70.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow71.png b/assets/MapIcons/colorNumbers/marker_yellow71.png
new file mode 100644
index 00000000..b3d4e9d5
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow71.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow72.png b/assets/MapIcons/colorNumbers/marker_yellow72.png
new file mode 100644
index 00000000..0733fc1b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow72.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow73.png b/assets/MapIcons/colorNumbers/marker_yellow73.png
new file mode 100644
index 00000000..06d2f1ef
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow73.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow74.png b/assets/MapIcons/colorNumbers/marker_yellow74.png
new file mode 100644
index 00000000..3d9a0f9e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow74.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow75.png b/assets/MapIcons/colorNumbers/marker_yellow75.png
new file mode 100644
index 00000000..d7612c4e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow75.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow76.png b/assets/MapIcons/colorNumbers/marker_yellow76.png
new file mode 100644
index 00000000..d246d530
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow76.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow77.png b/assets/MapIcons/colorNumbers/marker_yellow77.png
new file mode 100644
index 00000000..5d3f7b08
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow77.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow78.png b/assets/MapIcons/colorNumbers/marker_yellow78.png
new file mode 100644
index 00000000..7bbe712f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow78.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow79.png b/assets/MapIcons/colorNumbers/marker_yellow79.png
new file mode 100644
index 00000000..f6a5f643
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow79.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow8.png b/assets/MapIcons/colorNumbers/marker_yellow8.png
new file mode 100644
index 00000000..212450fa
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow8.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow80.png b/assets/MapIcons/colorNumbers/marker_yellow80.png
new file mode 100644
index 00000000..1ca9429d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow80.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow81.png b/assets/MapIcons/colorNumbers/marker_yellow81.png
new file mode 100644
index 00000000..63e570d2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow81.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow82.png b/assets/MapIcons/colorNumbers/marker_yellow82.png
new file mode 100644
index 00000000..ed051ce6
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow82.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow83.png b/assets/MapIcons/colorNumbers/marker_yellow83.png
new file mode 100644
index 00000000..7b9306d0
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow83.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow84.png b/assets/MapIcons/colorNumbers/marker_yellow84.png
new file mode 100644
index 00000000..c697a673
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow84.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow85.png b/assets/MapIcons/colorNumbers/marker_yellow85.png
new file mode 100644
index 00000000..b30c874e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow85.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow86.png b/assets/MapIcons/colorNumbers/marker_yellow86.png
new file mode 100644
index 00000000..9ba4304e
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow86.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow87.png b/assets/MapIcons/colorNumbers/marker_yellow87.png
new file mode 100644
index 00000000..54444bcf
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow87.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow88.png b/assets/MapIcons/colorNumbers/marker_yellow88.png
new file mode 100644
index 00000000..5cac5615
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow88.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow89.png b/assets/MapIcons/colorNumbers/marker_yellow89.png
new file mode 100644
index 00000000..07094498
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow89.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow9.png b/assets/MapIcons/colorNumbers/marker_yellow9.png
new file mode 100644
index 00000000..874afac2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow9.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow90.png b/assets/MapIcons/colorNumbers/marker_yellow90.png
new file mode 100644
index 00000000..bc226876
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow90.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow91.png b/assets/MapIcons/colorNumbers/marker_yellow91.png
new file mode 100644
index 00000000..34771373
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow91.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow92.png b/assets/MapIcons/colorNumbers/marker_yellow92.png
new file mode 100644
index 00000000..6d4fd00d
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow92.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow93.png b/assets/MapIcons/colorNumbers/marker_yellow93.png
new file mode 100644
index 00000000..6a487941
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow93.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow94.png b/assets/MapIcons/colorNumbers/marker_yellow94.png
new file mode 100644
index 00000000..4ebbec77
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow94.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow95.png b/assets/MapIcons/colorNumbers/marker_yellow95.png
new file mode 100644
index 00000000..b86343ea
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow95.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow96.png b/assets/MapIcons/colorNumbers/marker_yellow96.png
new file mode 100644
index 00000000..9186902a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow96.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow97.png b/assets/MapIcons/colorNumbers/marker_yellow97.png
new file mode 100644
index 00000000..52dea196
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow97.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow98.png b/assets/MapIcons/colorNumbers/marker_yellow98.png
new file mode 100644
index 00000000..7fc2b8b7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow98.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow99.png b/assets/MapIcons/colorNumbers/marker_yellow99.png
new file mode 100644
index 00000000..fde0ceba
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow99.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow=.png b/assets/MapIcons/colorNumbers/marker_yellow=.png
new file mode 100644
index 00000000..13d9d531
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow=.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellow@.png b/assets/MapIcons/colorNumbers/marker_yellow@.png
new file mode 100644
index 00000000..e0d916fd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellow@.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowA.png b/assets/MapIcons/colorNumbers/marker_yellowA.png
new file mode 100644
index 00000000..94463efd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowA.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowB.png b/assets/MapIcons/colorNumbers/marker_yellowB.png
new file mode 100644
index 00000000..eb38f68c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowB.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowC.png b/assets/MapIcons/colorNumbers/marker_yellowC.png
new file mode 100644
index 00000000..f2f44421
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowC.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowD.png b/assets/MapIcons/colorNumbers/marker_yellowD.png
new file mode 100644
index 00000000..f2ebd116
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowD.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowE.png b/assets/MapIcons/colorNumbers/marker_yellowE.png
new file mode 100644
index 00000000..ef39d899
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowE.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowF.png b/assets/MapIcons/colorNumbers/marker_yellowF.png
new file mode 100644
index 00000000..cd5be52f
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowF.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowG.png b/assets/MapIcons/colorNumbers/marker_yellowG.png
new file mode 100644
index 00000000..86a0063b
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowG.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowH.png b/assets/MapIcons/colorNumbers/marker_yellowH.png
new file mode 100644
index 00000000..ad46aa1c
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowH.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowI.png b/assets/MapIcons/colorNumbers/marker_yellowI.png
new file mode 100644
index 00000000..6caf94da
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowI.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowJ.png b/assets/MapIcons/colorNumbers/marker_yellowJ.png
new file mode 100644
index 00000000..346b274a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowJ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowK.png b/assets/MapIcons/colorNumbers/marker_yellowK.png
new file mode 100644
index 00000000..34348f2a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowK.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowL.png b/assets/MapIcons/colorNumbers/marker_yellowL.png
new file mode 100644
index 00000000..e6298c39
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowL.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowM.png b/assets/MapIcons/colorNumbers/marker_yellowM.png
new file mode 100644
index 00000000..d7d4a8cd
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowM.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowN.png b/assets/MapIcons/colorNumbers/marker_yellowN.png
new file mode 100644
index 00000000..6daef268
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowN.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowO.png b/assets/MapIcons/colorNumbers/marker_yellowO.png
new file mode 100644
index 00000000..ffa63d31
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowO.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowP.png b/assets/MapIcons/colorNumbers/marker_yellowP.png
new file mode 100644
index 00000000..856f9771
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowP.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowQ.png b/assets/MapIcons/colorNumbers/marker_yellowQ.png
new file mode 100644
index 00000000..2d19e2c4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowQ.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowR.png b/assets/MapIcons/colorNumbers/marker_yellowR.png
new file mode 100644
index 00000000..565aff5a
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowR.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowS.png b/assets/MapIcons/colorNumbers/marker_yellowS.png
new file mode 100644
index 00000000..455fb626
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowS.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowT.png b/assets/MapIcons/colorNumbers/marker_yellowT.png
new file mode 100644
index 00000000..c8da96c4
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowT.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowU.png b/assets/MapIcons/colorNumbers/marker_yellowU.png
new file mode 100644
index 00000000..e6a63f34
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowU.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowV.png b/assets/MapIcons/colorNumbers/marker_yellowV.png
new file mode 100644
index 00000000..a4995cd2
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowV.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowW.png b/assets/MapIcons/colorNumbers/marker_yellowW.png
new file mode 100644
index 00000000..01fb4bc7
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowW.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowX.png b/assets/MapIcons/colorNumbers/marker_yellowX.png
new file mode 100644
index 00000000..c8825254
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowX.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowY.png b/assets/MapIcons/colorNumbers/marker_yellowY.png
new file mode 100644
index 00000000..67da2034
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowY.png differ
diff --git a/assets/MapIcons/colorNumbers/marker_yellowZ.png b/assets/MapIcons/colorNumbers/marker_yellowZ.png
new file mode 100644
index 00000000..8f090e68
Binary files /dev/null and b/assets/MapIcons/colorNumbers/marker_yellowZ.png differ
diff --git a/assets/MapIcons/index.html b/assets/MapIcons/index.html
new file mode 100644
index 00000000..b0dc99df
--- /dev/null
+++ b/assets/MapIcons/index.html
@@ -0,0 +1,3 @@
+Black Icons
+marker_black100.png
+marker_black10.png
+marker_black11.png
+marker_black12.png
+marker_black13.png
+marker_black14.png
+marker_black15.png
+marker_black16.png
+marker_black17.png
+marker_black18.png
+marker_black19.png
+marker_black1.png
+marker_black20.png
+marker_black21.png
+marker_black22.png
+marker_black23.png
+marker_black24.png
+marker_black25.png
+marker_black26.png
+marker_black27.png
+marker_black28.png
+marker_black29.png
+marker_black2.png
+marker_black30.png
+marker_black31.png
+marker_black32.png
+marker_black33.png
+marker_black34.png
+marker_black35.png
+marker_black36.png
+marker_black37.png
+marker_black38.png
+marker_black39.png
+marker_black3.png
+marker_black40.png
+marker_black41.png
+marker_black42.png
+marker_black43.png
+marker_black44.png
+marker_black45.png
+marker_black46.png
+marker_black47.png
+marker_black48.png
+marker_black49.png
+marker_black4.png
+marker_black50.png
+marker_black51.png
+marker_black52.png
+marker_black53.png
+marker_black54.png
+marker_black55.png
+marker_black56.png
+marker_black57.png
+marker_black58.png
+marker_black59.png
+marker_black5.png
+marker_black60.png
+marker_black61.png
+marker_black62.png
+marker_black63.png
+marker_black64.png
+marker_black65.png
+marker_black66.png
+marker_black67.png
+marker_black68.png
+marker_black69.png
+marker_black6.png
+marker_black70.png
+marker_black71.png
+marker_black72.png
+marker_black73.png
+marker_black74.png
+marker_black75.png
+marker_black76.png
+marker_black77.png
+marker_black78.png
+marker_black79.png
+marker_black7.png
+marker_black80.png
+marker_black81.png
+marker_black82.png
+marker_black83.png
+marker_black84.png
+marker_black85.png
+marker_black86.png
+marker_black87.png
+marker_black88.png
+marker_black89.png
+marker_black8.png
+marker_black90.png
+marker_black91.png
+marker_black92.png
+marker_black93.png
+marker_black94.png
+marker_black95.png
+marker_black96.png
+marker_black97.png
+marker_black98.png
+marker_black99.png
+marker_black9.png
+marker_blackA.png
+marker_blackB.png
+marker_blackC.png
+marker_blackD.png
+marker_blackE.png
+marker_blackF.png
+marker_blackG.png
+marker_blackH.png
+marker_blackI.png
+marker_blackJ.png
+marker_blackK.png
+marker_blackL.png
+marker_blackM.png
+marker_blackN.png
+marker_blackO.png
+marker_black=.png
+marker_black-.png
+marker_black!.png
+marker_black.png
+marker_black@.png
+marker_black$.png
+marker_black&.png
+marker_black#.png
+marker_black%.png
+marker_black+.png
+marker_blackP.png
+marker_blackQ.png
+marker_blackR.png
+marker_blackS.png
+marker_blackT.png
+marker_blackU.png
+marker_blackV.png
+marker_blackW.png
+marker_blackX.png
+marker_blackY.png
+marker_blackZ.png
+marker_blue100.png
+marker_blue10.png
+marker_blue11.png
+marker_blue12.png
+marker_blue13.png
+marker_blue14.png
+marker_blue15.png
+marker_blue16.png
+marker_blue17.png
+marker_blue18.png
+marker_blue19.png
+marker_blue1.png
+marker_blue20.png
+marker_blue21.png
+marker_blue22.png
+marker_blue23.png
+marker_blue24.png
+marker_blue25.png
+marker_blue26.png
+marker_blue27.png
+marker_blue28.png
+marker_blue29.png
+marker_blue2.png
+marker_blue30.png
+marker_blue31.png
+marker_blue32.png
+marker_blue33.png
+marker_blue34.png
+marker_blue35.png
+marker_blue36.png
+marker_blue37.png
+marker_blue38.png
+marker_blue39.png
+marker_blue3.png
+marker_blue40.png
+marker_blue41.png
+marker_blue42.png
+marker_blue43.png
+marker_blue44.png
+marker_blue45.png
+marker_blue46.png
+marker_blue47.png
+marker_blue48.png
+marker_blue49.png
+marker_blue4.png
+marker_blue50.png
+marker_blue51.png
+marker_blue52.png
+marker_blue53.png
+marker_blue54.png
+marker_blue55.png
+marker_blue56.png
+marker_blue57.png
+marker_blue58.png
+marker_blue59.png
+marker_blue5.png
+marker_blue60.png
+marker_blue61.png
+marker_blue62.png
+marker_blue63.png
+marker_blue64.png
+marker_blue65.png
+marker_blue66.png
+marker_blue67.png
+marker_blue68.png
+marker_blue69.png
+marker_blue6.png
+marker_blue70.png
+marker_blue71.png
+marker_blue72.png
+marker_blue73.png
+marker_blue74.png
+marker_blue75.png
+marker_blue76.png
+marker_blue77.png
+marker_blue78.png
+marker_blue79.png
+marker_blue7.png
+marker_blue80.png
+marker_blue81.png
+marker_blue82.png
+marker_blue83.png
+marker_blue84.png
+marker_blue85.png
+marker_blue86.png
+marker_blue87.png
+marker_blue88.png
+marker_blue89.png
+marker_blue8.png
+marker_blue90.png
+marker_blue91.png
+marker_blue92.png
+marker_blue93.png
+marker_blue94.png
+marker_blue95.png
+marker_blue96.png
+marker_blue97.png
+marker_blue98.png
+marker_blue99.png
+marker_blue9.png
+marker_blueA.png
+marker_blueB.png
+marker_blueC.png
+marker_blueD.png
+marker_blueE.png
+marker_blueF.png
+marker_blueG.png
+marker_blueH.png
+marker_blueI.png
+marker_blueJ.png
+marker_blueK.png
+marker_blueL.png
+marker_blueM.png
+marker_blueN.png
+marker_blueO.png
+marker_blue=.png
+marker_blue-.png
+marker_blue!.png
+marker_blue.png
+marker_blue@.png
+marker_blue$.png
+marker_blue&.png
+marker_blue#.png
+marker_blue%.png
+marker_blue+.png
+marker_blueP.png
+marker_blueQ.png
+marker_blueR.png
+marker_blueS.png
+marker_blueT.png
+marker_blueU.png
+marker_blueV.png
+marker_blueW.png
+marker_blueX.png
+marker_blueY.png
+marker_blueZ.png
+marker_green100.png
+marker_green10.png
+marker_green11.png
+marker_green12.png
+marker_green13.png
+marker_green14.png
+marker_green15.png
+marker_green16.png
+marker_green17.png
+marker_green18.png
+marker_green19.png
+marker_green1.png
+marker_green20.png
+marker_green21.png
+marker_green22.png
+marker_green23.png
+marker_green24.png
+marker_green25.png
+marker_green26.png
+marker_green27.png
+marker_green28.png
+marker_green29.png
+marker_green2.png
+marker_green30.png
+marker_green31.png
+marker_green32.png
+marker_green33.png
+marker_green34.png
+marker_green35.png
+marker_green36.png
+marker_green37.png
+marker_green38.png
+marker_green39.png
+marker_green3.png
+marker_green40.png
+marker_green41.png
+marker_green42.png
+marker_green43.png
+marker_green44.png
+marker_green45.png
+marker_green46.png
+marker_green47.png
+marker_green48.png
+marker_green49.png
+marker_green4.png
+marker_green50.png
+marker_green51.png
+marker_green52.png
+marker_green53.png
+marker_green54.png
+marker_green55.png
+marker_green56.png
+marker_green57.png
+marker_green58.png
+marker_green59.png
+marker_green5.png
+marker_green60.png
+marker_green61.png
+marker_green62.png
+marker_green63.png
+marker_green64.png
+marker_green65.png
+marker_green66.png
+marker_green67.png
+marker_green68.png
+marker_green69.png
+marker_green6.png
+marker_green70.png
+marker_green71.png
+marker_green72.png
+marker_green73.png
+marker_green74.png
+marker_green75.png
+marker_green76.png
+marker_green77.png
+marker_green78.png
+marker_green79.png
+marker_green7.png
+marker_green80.png
+marker_green81.png
+marker_green82.png
+marker_green83.png
+marker_green84.png
+marker_green85.png
+marker_green86.png
+marker_green87.png
+marker_green88.png
+marker_green89.png
+marker_green8.png
+marker_green90.png
+marker_green91.png
+marker_green92.png
+marker_green93.png
+marker_green94.png
+marker_green95.png
+marker_green96.png
+marker_green97.png
+marker_green98.png
+marker_green99.png
+marker_green9.png
+marker_greenA.png
+marker_greenB.png
+marker_greenC.png
+marker_greenD.png
+marker_greenE.png
+marker_greenF.png
+marker_greenG.png
+marker_greenH.png
+marker_greenI.png
+marker_greenJ.png
+marker_greenK.png
+marker_greenL.png
+marker_greenM.png
+marker_greenN.png
+marker_greenO.png
+marker_green=.png
+marker_green-.png
+marker_green!.png
+marker_green.png
+marker_green@.png
+marker_green$.png
+marker_green&.png
+marker_green#.png
+marker_green%.png
+marker_green+.png
+marker_greenP.png
+marker_greenQ.png
+marker_greenR.png
+marker_greenS.png
+marker_greenT.png
+marker_greenU.png
+marker_greenV.png
+marker_greenW.png
+marker_greenX.png
+marker_greenY.png
+marker_greenZ.png
+marker_grey100.png
+marker_grey10.png
+marker_grey11.png
+marker_grey12.png
+marker_grey13.png
+marker_grey14.png
+marker_grey15.png
+marker_grey16.png
+marker_grey17.png
+marker_grey18.png
+marker_grey19.png
+marker_grey1.png
+marker_grey20.png
+marker_grey21.png
+marker_grey22.png
+marker_grey23.png
+marker_grey24.png
+marker_grey25.png
+marker_grey26.png
+marker_grey27.png
+marker_grey28.png
+marker_grey29.png
+marker_grey2.png
+marker_grey30.png
+marker_grey31.png
+marker_grey32.png
+marker_grey33.png
+marker_grey34.png
+marker_grey35.png
+marker_grey36.png
+marker_grey37.png
+marker_grey38.png
+marker_grey39.png
+marker_grey3.png
+marker_grey40.png
+marker_grey41.png
+marker_grey42.png
+marker_grey43.png
+marker_grey44.png
+marker_grey45.png
+marker_grey46.png
+marker_grey47.png
+marker_grey48.png
+marker_grey49.png
+marker_grey4.png
+marker_grey50.png
+marker_grey51.png
+marker_grey52.png
+marker_grey53.png
+marker_grey54.png
+marker_grey55.png
+marker_grey56.png
+marker_grey57.png
+marker_grey58.png
+marker_grey59.png
+marker_grey5.png
+marker_grey60.png
+marker_grey61.png
+marker_grey62.png
+marker_grey63.png
+marker_grey64.png
+marker_grey65.png
+marker_grey66.png
+marker_grey67.png
+marker_grey68.png
+marker_grey69.png
+marker_grey6.png
+marker_grey70.png
+marker_grey71.png
+marker_grey72.png
+marker_grey73.png
+marker_grey74.png
+marker_grey75.png
+marker_grey76.png
+marker_grey77.png
+marker_grey78.png
+marker_grey79.png
+marker_grey7.png
+marker_grey80.png
+marker_grey81.png
+marker_grey82.png
+marker_grey83.png
+marker_grey84.png
+marker_grey85.png
+marker_grey86.png
+marker_grey87.png
+marker_grey88.png
+marker_grey89.png
+marker_grey8.png
+marker_grey90.png
+marker_grey91.png
+marker_grey92.png
+marker_grey93.png
+marker_grey94.png
+marker_grey95.png
+marker_grey96.png
+marker_grey97.png
+marker_grey98.png
+marker_grey99.png
+marker_grey9.png
+marker_greyA.png
+marker_greyB.png
+marker_greyC.png
+marker_greyD.png
+marker_greyE.png
+marker_greyF.png
+marker_greyG.png
+marker_greyH.png
+marker_greyI.png
+marker_greyJ.png
+marker_greyK.png
+marker_greyL.png
+marker_greyM.png
+marker_greyN.png
+marker_greyO.png
+marker_grey=.png
+marker_grey-.png
+marker_grey!.png
+marker_grey.png
+marker_grey@.png
+marker_grey$.png
+marker_grey&.png
+marker_grey#.png
+marker_grey%.png
+marker_grey+.png
+marker_greyP.png
+marker_greyQ.png
+marker_greyR.png
+marker_greyS.png
+marker_greyT.png
+marker_greyU.png
+marker_greyV.png
+marker_greyW.png
+marker_greyX.png
+marker_greyY.png
+marker_greyZ.png
+marker_orange10.png
+marker_orange11.png
+marker_orange12.png
+marker_orange13.png
+marker_orange14.png
+marker_orange15.png
+marker_orange16.png
+marker_orange17.png
+marker_orange18.png
+marker_orange19.png
+marker_orange1.png
+marker_orange20.png
+marker_orange21.png
+marker_orange22.png
+marker_orange23.png
+marker_orange24.png
+marker_orange25.png
+marker_orange26.png
+marker_orange27.png
+marker_orange28.png
+marker_orange29.png
+marker_orange2.png
+marker_orange30.png
+marker_orange31.png
+marker_orange32.png
+marker_orange33.png
+marker_orange34.png
+marker_orange35.png
+marker_orange36.png
+marker_orange37.png
+marker_orange38.png
+marker_orange39.png
+marker_orange3.png
+marker_orange40.png
+marker_orange41.png
+marker_orange42.png
+marker_orange43.png
+marker_orange44.png
+marker_orange45.png
+marker_orange46.png
+marker_orange47.png
+marker_orange48.png
+marker_orange49.png
+marker_orange4.png
+marker_orange50.png
+marker_orange51.png
+marker_orange52.png
+marker_orange53.png
+marker_orange54.png
+marker_orange55.png
+marker_orange56.png
+marker_orange57.png
+marker_orange58.png
+marker_orange59.png
+marker_orange5.png
+marker_orange60.png
+marker_orange61.png
+marker_orange62.png
+marker_orange63.png
+marker_orange64.png
+marker_orange65.png
+marker_orange66.png
+marker_orange67.png
+marker_orange68.png
+marker_orange69.png
+marker_orange6.png
+marker_orange70.png
+marker_orange71.png
+marker_orange72.png
+marker_orange73.png
+marker_orange74.png
+marker_orange75.png
+marker_orange76.png
+marker_orange77.png
+marker_orange78.png
+marker_orange79.png
+marker_orange7.png
+marker_orange80.png
+marker_orange81.png
+marker_orange82.png
+marker_orange83.png
+marker_orange84.png
+marker_orange85.png
+marker_orange86.png
+marker_orange87.png
+marker_orange88.png
+marker_orange89.png
+marker_orange8.png
+marker_orange90.png
+marker_orange91.png
+marker_orange92.png
+marker_orange93.png
+marker_orange94.png
+marker_orange95.png
+marker_orange96.png
+marker_orange97.png
+marker_orange98.png
+marker_orange99.png
+marker_orange9.png
+marker_orangeA.png
+marker_orangeB.png
+marker_orangeC.png
+marker_orangeD.png
+marker_orangeE.png
+marker_orangeF.png
+marker_orangeG.png
+marker_orangeH.png
+marker_orangeI.png
+marker_orangeJ.png
+marker_orangeK.png
+marker_orangeL.png
+marker_orangeM.png
+marker_orangeN.png
+marker_orangeO.png
+marker_orange=.png
+marker_orange-.png
+marker_orange!.png
+marker_orange.png
+marker_orange@.png
+marker_orange$.png
+marker_orange&.png
+marker_orange#.png
+marker_orange%.png
+marker_orange+.png
+marker_orangeP.png
+marker_orangeQ.png
+marker_orangeR.png
+marker_orangeS.png
+marker_orangeT.png
+marker_orangeU.png
+marker_orangeV.png
+marker_orangeW.png
+marker_orangeX.png
+marker_orangeY.png
+marker_orangeZ.png
+marker_purple100.png
+marker_purple10.png
+marker_purple11.png
+marker_purple12.png
+marker_purple13.png
+marker_purple14.png
+marker_purple15.png
+marker_purple16.png
+marker_purple17.png
+marker_purple18.png
+marker_purple19.png
+marker_purple1.png
+marker_purple20.png
+marker_purple21.png
+marker_purple22.png
+marker_purple23.png
+marker_purple24.png
+marker_purple25.png
+marker_purple26.png
+marker_purple27.png
+marker_purple28.png
+marker_purple29.png
+marker_purple2.png
+marker_purple30.png
+marker_purple31.png
+marker_purple32.png
+marker_purple33.png
+marker_purple34.png
+marker_purple35.png
+marker_purple36.png
+marker_purple37.png
+marker_purple38.png
+marker_purple39.png
+marker_purple3.png
+marker_purple40.png
+marker_purple41.png
+marker_purple42.png
+marker_purple43.png
+marker_purple44.png
+marker_purple45.png
+marker_purple46.png
+marker_purple47.png
+marker_purple48.png
+marker_purple49.png
+marker_purple4.png
+marker_purple50.png
+marker_purple51.png
+marker_purple52.png
+marker_purple53.png
+marker_purple54.png
+marker_purple55.png
+marker_purple56.png
+marker_purple57.png
+marker_purple58.png
+marker_purple59.png
+marker_purple5.png
+marker_purple60.png
+marker_purple61.png
+marker_purple62.png
+marker_purple63.png
+marker_purple64.png
+marker_purple65.png
+marker_purple66.png
+marker_purple67.png
+marker_purple68.png
+marker_purple69.png
+marker_purple6.png
+marker_purple70.png
+marker_purple71.png
+marker_purple72.png
+marker_purple73.png
+marker_purple74.png
+marker_purple75.png
+marker_purple76.png
+marker_purple77.png
+marker_purple78.png
+marker_purple79.png
+marker_purple7.png
+marker_purple80.png
+marker_purple81.png
+marker_purple82.png
+marker_purple83.png
+marker_purple84.png
+marker_purple85.png
+marker_purple86.png
+marker_purple87.png
+marker_purple88.png
+marker_purple89.png
+marker_purple8.png
+marker_purple90.png
+marker_purple91.png
+marker_purple92.png
+marker_purple93.png
+marker_purple94.png
+marker_purple95.png
+marker_purple96.png
+marker_purple97.png
+marker_purple98.png
+marker_purple99.png
+marker_purple9.png
+marker_purpleA.png
+marker_purpleB.png
+marker_purpleC.png
+marker_purpleD.png
+marker_purpleE.png
+marker_purpleF.png
+marker_purpleG.png
+marker_purpleH.png
+marker_purpleI.png
+marker_purpleJ.png
+marker_purpleK.png
+marker_purpleL.png
+marker_purpleM.png
+marker_purpleN.png
+marker_purpleO.png
+marker_purple=.png
+marker_purple-.png
+marker_purple!.png
+marker_purple.png
+marker_purple@.png
+marker_purple$.png
+marker_purple&.png
+marker_purple#.png
+marker_purple%.png
+marker_purple+.png
+marker_purpleP.png
+marker_purpleQ.png
+marker_purpleR.png
+marker_purpleS.png
+marker_purpleT.png
+marker_purpleU.png
+marker_purpleV.png
+marker_purpleW.png
+marker_purpleX.png
+marker_purpleY.png
+marker_purpleZ.png
+marker_red100.png
+marker_red10.png
+marker_red11.png
+marker_red12.png
+marker_red13.png
+marker_red14.png
+marker_red15.png
+marker_red16.png
+marker_red17.png
+marker_red18.png
+marker_red19.png
+marker_red1.png
+marker_red20.png
+marker_red21.png
+marker_red22.png
+marker_red23.png
+marker_red24.png
+marker_red25.png
+marker_red26.png
+marker_red27.png
+marker_red28.png
+marker_red29.png
+marker_red2.png
+marker_red30.png
+marker_red31.png
+marker_red32.png
+marker_red33.png
+marker_red34.png
+marker_red35.png
+marker_red36.png
+marker_red37.png
+marker_red38.png
+marker_red39.png
+marker_red3.png
+marker_red40.png
+marker_red41.png
+marker_red42.png
+marker_red43.png
+marker_red44.png
+marker_red45.png
+marker_red46.png
+marker_red47.png
+marker_red48.png
+marker_red49.png
+marker_red4.png
+marker_red50.png
+marker_red51.png
+marker_red52.png
+marker_red53.png
+marker_red54.png
+marker_red55.png
+marker_red56.png
+marker_red57.png
+marker_red58.png
+marker_red59.png
+marker_red5.png
+marker_red60.png
+marker_red61.png
+marker_red62.png
+marker_red63.png
+marker_red64.png
+marker_red65.png
+marker_red66.png
+marker_red67.png
+marker_red68.png
+marker_red69.png
+marker_red6.png
+marker_red70.png
+marker_red71.png
+marker_red72.png
+marker_red73.png
+marker_red74.png
+marker_red75.png
+marker_red76.png
+marker_red77.png
+marker_red78.png
+marker_red79.png
+marker_red7.png
+marker_red80.png
+marker_red81.png
+marker_red82.png
+marker_red83.png
+marker_red84.png
+marker_red85.png
+marker_red86.png
+marker_red87.png
+marker_red88.png
+marker_red89.png
+marker_red8.png
+marker_red90.png
+marker_red91.png
+marker_red92.png
+marker_red93.png
+marker_red94.png
+marker_red95.png
+marker_red96.png
+marker_red97.png
+marker_red98.png
+marker_red99.png
+marker_red9.png
+marker_redA.png
+marker_redB.png
+marker_redC.png
+marker_redD.png
+marker_redE.png
+marker_redF.png
+marker_redG.png
+marker_redH.png
+marker_redI.png
+marker_redJ.png
+marker_redK.png
+marker_redL.png
+marker_redM.png
+marker_redN.png
+marker_redO.png
+marker_red=.png
+marker_red-.png
+marker_red!.png
+marker_red.png
+marker_red@.png
+marker_red$.png
+marker_red&.png
+marker_red#.png
+marker_red%.png
+marker_red+.png
+marker_redP.png
+marker_redQ.png
+marker_redR.png
+marker_redS.png
+marker_redT.png
+marker_redU.png
+marker_redV.png
+marker_redW.png
+marker_redX.png
+marker_redY.png
+marker_redZ.png
+marker_white100.png
+marker_white10.png
+marker_white11.png
+marker_white12.png
+marker_white13.png
+marker_white14.png
+marker_white15.png
+marker_white16.png
+marker_white17.png
+marker_white18.png
+marker_white19.png
+marker_white1.png
+marker_white20.png
+marker_white21.png
+marker_white22.png
+marker_white23.png
+marker_white24.png
+marker_white25.png
+marker_white26.png
+marker_white27.png
+marker_white28.png
+marker_white29.png
+marker_white2.png
+marker_white30.png
+marker_white31.png
+marker_white32.png
+marker_white33.png
+marker_white34.png
+marker_white35.png
+marker_white36.png
+marker_white37.png
+marker_white38.png
+marker_white39.png
+marker_white3.png
+marker_white40.png
+marker_white41.png
+marker_white42.png
+marker_white43.png
+marker_white44.png
+marker_white45.png
+marker_white46.png
+marker_white47.png
+marker_white48.png
+marker_white49.png
+marker_white4.png
+marker_white50.png
+marker_white51.png
+marker_white52.png
+marker_white53.png
+marker_white54.png
+marker_white55.png
+marker_white56.png
+marker_white57.png
+marker_white58.png
+marker_white59.png
+marker_white5.png
+marker_white60.png
+marker_white61.png
+marker_white62.png
+marker_white63.png
+marker_white64.png
+marker_white65.png
+marker_white66.png
+marker_white67.png
+marker_white68.png
+marker_white69.png
+marker_white6.png
+marker_white70.png
+marker_white71.png
+marker_white72.png
+marker_white73.png
+marker_white74.png
+marker_white75.png
+marker_white76.png
+marker_white77.png
+marker_white78.png
+marker_white79.png
+marker_white7.png
+marker_white80.png
+marker_white81.png
+marker_white82.png
+marker_white83.png
+marker_white84.png
+marker_white85.png
+marker_white86.png
+marker_white87.png
+marker_white88.png
+marker_white89.png
+marker_white8.png
+marker_white90.png
+marker_white91.png
+marker_white92.png
+marker_white93.png
+marker_white94.png
+marker_white95.png
+marker_white96.png
+marker_white97.png
+marker_white98.png
+marker_white99.png
+marker_white9.png
+marker_whiteA.png
+marker_whiteB.png
+marker_whiteC.png
+marker_whiteD.png
+marker_whiteE.png
+marker_whiteF.png
+marker_whiteG.png
+marker_whiteH.png
+marker_whiteI.png
+marker_whiteJ.png
+marker_whiteK.png
+marker_whiteL.png
+marker_whiteM.png
+marker_whiteN.png
+marker_whiteO.png
+marker_white=.png
+marker_white-.png
+marker_white!.png
+marker_white.png
+marker_white@.png
+marker_white$.png
+marker_white&.png
+marker_white#.png
+marker_white%.png
+marker_white+.png
+marker_whiteP.png
+marker_whiteQ.png
+marker_whiteR.png
+marker_whiteS.png
+marker_whiteT.png
+marker_whiteU.png
+marker_whiteV.png
+marker_whiteW.png
+marker_whiteX.png
+marker_whiteY.png
+marker_whiteZ.png
+marker_yellow100.png
+marker_yellow10.png
+marker_yellow11.png
+marker_yellow12.png
+marker_yellow13.png
+marker_yellow14.png
+marker_yellow15.png
+marker_yellow16.png
+marker_yellow17.png
+marker_yellow18.png
+marker_yellow19.png
+marker_yellow1.png
+marker_yellow20.png
+marker_yellow21.png
+marker_yellow22.png
+marker_yellow23.png
+marker_yellow24.png
+marker_yellow25.png
+marker_yellow26.png
+marker_yellow27.png
+marker_yellow28.png
+marker_yellow29.png
+marker_yellow2.png
+marker_yellow30.png
+marker_yellow31.png
+marker_yellow32.png
+marker_yellow33.png
+marker_yellow34.png
+marker_yellow35.png
+marker_yellow36.png
+marker_yellow37.png
+marker_yellow38.png
+marker_yellow39.png
+marker_yellow3.png
+marker_yellow40.png
+marker_yellow41.png
+marker_yellow42.png
+marker_yellow43.png
+marker_yellow44.png
+marker_yellow45.png
+marker_yellow46.png
+marker_yellow47.png
+marker_yellow48.png
+marker_yellow49.png
+marker_yellow4.png
+marker_yellow50.png
+marker_yellow51.png
+marker_yellow52.png
+marker_yellow53.png
+marker_yellow54.png
+marker_yellow55.png
+marker_yellow56.png
+marker_yellow57.png
+marker_yellow58.png
+marker_yellow59.png
+marker_yellow5.png
+marker_yellow60.png
+marker_yellow61.png
+marker_yellow62.png
+marker_yellow63.png
+marker_yellow64.png
+marker_yellow65.png
+marker_yellow66.png
+marker_yellow67.png
+marker_yellow68.png
+marker_yellow69.png
+marker_yellow6.png
+marker_yellow70.png
+marker_yellow71.png
+marker_yellow72.png
+marker_yellow73.png
+marker_yellow74.png
+marker_yellow75.png
+marker_yellow76.png
+marker_yellow77.png
+marker_yellow78.png
+marker_yellow79.png
+marker_yellow7.png
+marker_yellow80.png
+marker_yellow81.png
+marker_yellow82.png
+marker_yellow83.png
+marker_yellow84.png
+marker_yellow85.png
+marker_yellow86.png
+marker_yellow87.png
+marker_yellow88.png
+marker_yellow89.png
+marker_yellow8.png
+marker_yellow90.png
+marker_yellow91.png
+marker_yellow92.png
+marker_yellow93.png
+marker_yellow94.png
+marker_yellow95.png
+marker_yellow96.png
+marker_yellow97.png
+marker_yellow98.png
+marker_yellow99.png
+marker_yellow9.png
+marker_yellowA.png
+marker_yellowB.png
+marker_yellowC.png
+marker_yellowD.png
+marker_yellowE.png
+marker_yellowF.png
+marker_yellowG.png
+marker_yellowH.png
+marker_yellowI.png
+marker_yellowJ.png
+marker_yellowK.png
+marker_yellowL.png
+marker_yellowM.png
+marker_yellowN.png
+marker_yellowO.png
+marker_yellow=.png
+marker_yellow-.png
+marker_yellow!.png
+marker_yellow.png
+marker_yellow@.png
+marker_yellow$.png
+marker_yellow&.png
+marker_yellow#.png
+marker_yellow%.png
+marker_yellow+.png
+marker_yellowP.png
+marker_yellowQ.png
+marker_yellowR.png
+marker_yellowS.png
+marker_yellowT.png
+marker_yellowU.png
+marker_yellowV.png
+marker_yellowW.png
+marker_yellowX.png
+marker_yellowY.png
+marker_yellowZ.png
+Colored and Numbered Pushpins
+Standard Icons
\ No newline at end of file
diff --git a/assets/MapIcons/standard/00_reference.html b/assets/MapIcons/standard/00_reference.html
new file mode 100644
index 00000000..7841b6ef
--- /dev/null
+++ b/assets/MapIcons/standard/00_reference.html
@@ -0,0 +1,186 @@
+
+
\ No newline at end of file
diff --git a/assets/MapIcons/standard/POI.png b/assets/MapIcons/standard/POI.png
new file mode 100644
index 00000000..6256627b
Binary files /dev/null and b/assets/MapIcons/standard/POI.png differ
diff --git a/assets/MapIcons/standard/POI.shadow.png b/assets/MapIcons/standard/POI.shadow.png
new file mode 100644
index 00000000..0125f3d4
Binary files /dev/null and b/assets/MapIcons/standard/POI.shadow.png differ
diff --git a/assets/MapIcons/standard/arts.png b/assets/MapIcons/standard/arts.png
new file mode 100644
index 00000000..950b6792
Binary files /dev/null and b/assets/MapIcons/standard/arts.png differ
diff --git a/assets/MapIcons/standard/arts.shadow.png b/assets/MapIcons/standard/arts.shadow.png
new file mode 100644
index 00000000..43742bd3
Binary files /dev/null and b/assets/MapIcons/standard/arts.shadow.png differ
diff --git a/assets/MapIcons/standard/bar.png b/assets/MapIcons/standard/bar.png
new file mode 100644
index 00000000..718408dc
Binary files /dev/null and b/assets/MapIcons/standard/bar.png differ
diff --git a/assets/MapIcons/standard/bar.shadow.png b/assets/MapIcons/standard/bar.shadow.png
new file mode 100644
index 00000000..c443dcbb
Binary files /dev/null and b/assets/MapIcons/standard/bar.shadow.png differ
diff --git a/assets/MapIcons/standard/blue-dot.png b/assets/MapIcons/standard/blue-dot.png
new file mode 100644
index 00000000..98b280d3
Binary files /dev/null and b/assets/MapIcons/standard/blue-dot.png differ
diff --git a/assets/MapIcons/standard/blue-pushpin.png b/assets/MapIcons/standard/blue-pushpin.png
new file mode 100644
index 00000000..6e010b03
Binary files /dev/null and b/assets/MapIcons/standard/blue-pushpin.png differ
diff --git a/assets/MapIcons/standard/blue.png b/assets/MapIcons/standard/blue.png
new file mode 100644
index 00000000..69590b92
Binary files /dev/null and b/assets/MapIcons/standard/blue.png differ
diff --git a/assets/MapIcons/standard/bus.png b/assets/MapIcons/standard/bus.png
new file mode 100644
index 00000000..1763461d
Binary files /dev/null and b/assets/MapIcons/standard/bus.png differ
diff --git a/assets/MapIcons/standard/bus.shadow.png b/assets/MapIcons/standard/bus.shadow.png
new file mode 100644
index 00000000..355043bf
Binary files /dev/null and b/assets/MapIcons/standard/bus.shadow.png differ
diff --git a/assets/MapIcons/standard/cabs.png b/assets/MapIcons/standard/cabs.png
new file mode 100644
index 00000000..af810d8b
Binary files /dev/null and b/assets/MapIcons/standard/cabs.png differ
diff --git a/assets/MapIcons/standard/cabs.shadow.png b/assets/MapIcons/standard/cabs.shadow.png
new file mode 100644
index 00000000..8231f11d
Binary files /dev/null and b/assets/MapIcons/standard/cabs.shadow.png differ
diff --git a/assets/MapIcons/standard/camera.png b/assets/MapIcons/standard/camera.png
new file mode 100644
index 00000000..fed4a918
Binary files /dev/null and b/assets/MapIcons/standard/camera.png differ
diff --git a/assets/MapIcons/standard/camera.shadow.png b/assets/MapIcons/standard/camera.shadow.png
new file mode 100644
index 00000000..608216b2
Binary files /dev/null and b/assets/MapIcons/standard/camera.shadow.png differ
diff --git a/assets/MapIcons/standard/campfire.png b/assets/MapIcons/standard/campfire.png
new file mode 100644
index 00000000..d532ffd9
Binary files /dev/null and b/assets/MapIcons/standard/campfire.png differ
diff --git a/assets/MapIcons/standard/campfire.shadow.png b/assets/MapIcons/standard/campfire.shadow.png
new file mode 100644
index 00000000..4d913317
Binary files /dev/null and b/assets/MapIcons/standard/campfire.shadow.png differ
diff --git a/assets/MapIcons/standard/campground.png b/assets/MapIcons/standard/campground.png
new file mode 100644
index 00000000..917c9572
Binary files /dev/null and b/assets/MapIcons/standard/campground.png differ
diff --git a/assets/MapIcons/standard/campground.shadow.png b/assets/MapIcons/standard/campground.shadow.png
new file mode 100644
index 00000000..5286bfb6
Binary files /dev/null and b/assets/MapIcons/standard/campground.shadow.png differ
diff --git a/assets/MapIcons/standard/caution.png b/assets/MapIcons/standard/caution.png
new file mode 100644
index 00000000..7118e0ab
Binary files /dev/null and b/assets/MapIcons/standard/caution.png differ
diff --git a/assets/MapIcons/standard/caution.shadow.png b/assets/MapIcons/standard/caution.shadow.png
new file mode 100644
index 00000000..7c1abdde
Binary files /dev/null and b/assets/MapIcons/standard/caution.shadow.png differ
diff --git a/assets/MapIcons/standard/coffeehouse.png b/assets/MapIcons/standard/coffeehouse.png
new file mode 100644
index 00000000..d6b4068b
Binary files /dev/null and b/assets/MapIcons/standard/coffeehouse.png differ
diff --git a/assets/MapIcons/standard/coffeehouse.shadow.png b/assets/MapIcons/standard/coffeehouse.shadow.png
new file mode 100644
index 00000000..3089e3b6
Binary files /dev/null and b/assets/MapIcons/standard/coffeehouse.shadow.png differ
diff --git a/assets/MapIcons/standard/convienancestore.png b/assets/MapIcons/standard/convienancestore.png
new file mode 100644
index 00000000..bbd7e6d1
Binary files /dev/null and b/assets/MapIcons/standard/convienancestore.png differ
diff --git a/assets/MapIcons/standard/convienancestore.shadow.png b/assets/MapIcons/standard/convienancestore.shadow.png
new file mode 100644
index 00000000..6e9b77a6
Binary files /dev/null and b/assets/MapIcons/standard/convienancestore.shadow.png differ
diff --git a/assets/MapIcons/standard/cycling.png b/assets/MapIcons/standard/cycling.png
new file mode 100644
index 00000000..678d3bef
Binary files /dev/null and b/assets/MapIcons/standard/cycling.png differ
diff --git a/assets/MapIcons/standard/cycling.shadow.png b/assets/MapIcons/standard/cycling.shadow.png
new file mode 100644
index 00000000..9eb3efec
Binary files /dev/null and b/assets/MapIcons/standard/cycling.shadow.png differ
diff --git a/assets/MapIcons/standard/dollar.png b/assets/MapIcons/standard/dollar.png
new file mode 100644
index 00000000..f30fb89f
Binary files /dev/null and b/assets/MapIcons/standard/dollar.png differ
diff --git a/assets/MapIcons/standard/dollar.shadow.png b/assets/MapIcons/standard/dollar.shadow.png
new file mode 100644
index 00000000..b175867b
Binary files /dev/null and b/assets/MapIcons/standard/dollar.shadow.png differ
diff --git a/assets/MapIcons/standard/drinking_water.png b/assets/MapIcons/standard/drinking_water.png
new file mode 100644
index 00000000..3c7cfa2a
Binary files /dev/null and b/assets/MapIcons/standard/drinking_water.png differ
diff --git a/assets/MapIcons/standard/drinking_water.shadow.png b/assets/MapIcons/standard/drinking_water.shadow.png
new file mode 100644
index 00000000..bce5d438
Binary files /dev/null and b/assets/MapIcons/standard/drinking_water.shadow.png differ
diff --git a/assets/MapIcons/standard/earthquake.png b/assets/MapIcons/standard/earthquake.png
new file mode 100644
index 00000000..3e26a03d
Binary files /dev/null and b/assets/MapIcons/standard/earthquake.png differ
diff --git a/assets/MapIcons/standard/earthquake.shadow.png b/assets/MapIcons/standard/earthquake.shadow.png
new file mode 100644
index 00000000..119fd243
Binary files /dev/null and b/assets/MapIcons/standard/earthquake.shadow.png differ
diff --git a/assets/MapIcons/standard/electronics.png b/assets/MapIcons/standard/electronics.png
new file mode 100644
index 00000000..c7b29502
Binary files /dev/null and b/assets/MapIcons/standard/electronics.png differ
diff --git a/assets/MapIcons/standard/electronics.shadow.png b/assets/MapIcons/standard/electronics.shadow.png
new file mode 100644
index 00000000..6ffae58e
Binary files /dev/null and b/assets/MapIcons/standard/electronics.shadow.png differ
diff --git a/assets/MapIcons/standard/euro.png b/assets/MapIcons/standard/euro.png
new file mode 100644
index 00000000..3c3a2d4a
Binary files /dev/null and b/assets/MapIcons/standard/euro.png differ
diff --git a/assets/MapIcons/standard/euro.shadow.png b/assets/MapIcons/standard/euro.shadow.png
new file mode 100644
index 00000000..dbc185d8
Binary files /dev/null and b/assets/MapIcons/standard/euro.shadow.png differ
diff --git a/assets/MapIcons/standard/fallingrocks.png b/assets/MapIcons/standard/fallingrocks.png
new file mode 100644
index 00000000..2770cba6
Binary files /dev/null and b/assets/MapIcons/standard/fallingrocks.png differ
diff --git a/assets/MapIcons/standard/fallingrocks.shadow.png b/assets/MapIcons/standard/fallingrocks.shadow.png
new file mode 100644
index 00000000..aad18a24
Binary files /dev/null and b/assets/MapIcons/standard/fallingrocks.shadow.png differ
diff --git a/assets/MapIcons/standard/ferry.png b/assets/MapIcons/standard/ferry.png
new file mode 100644
index 00000000..87120263
Binary files /dev/null and b/assets/MapIcons/standard/ferry.png differ
diff --git a/assets/MapIcons/standard/ferry.shadow.png b/assets/MapIcons/standard/ferry.shadow.png
new file mode 100644
index 00000000..67283423
Binary files /dev/null and b/assets/MapIcons/standard/ferry.shadow.png differ
diff --git a/assets/MapIcons/standard/firedept.png b/assets/MapIcons/standard/firedept.png
new file mode 100644
index 00000000..4a9aceda
Binary files /dev/null and b/assets/MapIcons/standard/firedept.png differ
diff --git a/assets/MapIcons/standard/firedept.shadow.png b/assets/MapIcons/standard/firedept.shadow.png
new file mode 100644
index 00000000..2b665f14
Binary files /dev/null and b/assets/MapIcons/standard/firedept.shadow.png differ
diff --git a/assets/MapIcons/standard/fishing.png b/assets/MapIcons/standard/fishing.png
new file mode 100644
index 00000000..8b9980d0
Binary files /dev/null and b/assets/MapIcons/standard/fishing.png differ
diff --git a/assets/MapIcons/standard/fishing.shadow.png b/assets/MapIcons/standard/fishing.shadow.png
new file mode 100644
index 00000000..cc808789
Binary files /dev/null and b/assets/MapIcons/standard/fishing.shadow.png differ
diff --git a/assets/MapIcons/standard/flag.png b/assets/MapIcons/standard/flag.png
new file mode 100644
index 00000000..6e5c8ac3
Binary files /dev/null and b/assets/MapIcons/standard/flag.png differ
diff --git a/assets/MapIcons/standard/flag.shadow.png b/assets/MapIcons/standard/flag.shadow.png
new file mode 100644
index 00000000..e6ac9d35
Binary files /dev/null and b/assets/MapIcons/standard/flag.shadow.png differ
diff --git a/assets/MapIcons/standard/gas.png b/assets/MapIcons/standard/gas.png
new file mode 100644
index 00000000..52107b7a
Binary files /dev/null and b/assets/MapIcons/standard/gas.png differ
diff --git a/assets/MapIcons/standard/gas.shadow.png b/assets/MapIcons/standard/gas.shadow.png
new file mode 100644
index 00000000..99d8abed
Binary files /dev/null and b/assets/MapIcons/standard/gas.shadow.png differ
diff --git a/assets/MapIcons/standard/golfer.png b/assets/MapIcons/standard/golfer.png
new file mode 100644
index 00000000..e1d1a8b1
Binary files /dev/null and b/assets/MapIcons/standard/golfer.png differ
diff --git a/assets/MapIcons/standard/golfer.shadow.png b/assets/MapIcons/standard/golfer.shadow.png
new file mode 100644
index 00000000..b8124fbf
Binary files /dev/null and b/assets/MapIcons/standard/golfer.shadow.png differ
diff --git a/assets/MapIcons/standard/green-dot.png b/assets/MapIcons/standard/green-dot.png
new file mode 100644
index 00000000..c6e68366
Binary files /dev/null and b/assets/MapIcons/standard/green-dot.png differ
diff --git a/assets/MapIcons/standard/green.png b/assets/MapIcons/standard/green.png
new file mode 100644
index 00000000..0f79315e
Binary files /dev/null and b/assets/MapIcons/standard/green.png differ
diff --git a/assets/MapIcons/standard/grn-pushpin.png b/assets/MapIcons/standard/grn-pushpin.png
new file mode 100644
index 00000000..61d29725
Binary files /dev/null and b/assets/MapIcons/standard/grn-pushpin.png differ
diff --git a/assets/MapIcons/standard/grocerystore.png b/assets/MapIcons/standard/grocerystore.png
new file mode 100644
index 00000000..0543d7d9
Binary files /dev/null and b/assets/MapIcons/standard/grocerystore.png differ
diff --git a/assets/MapIcons/standard/grocerystore.shadow.png b/assets/MapIcons/standard/grocerystore.shadow.png
new file mode 100644
index 00000000..e85b5d87
Binary files /dev/null and b/assets/MapIcons/standard/grocerystore.shadow.png differ
diff --git a/assets/MapIcons/standard/groecerystore.png b/assets/MapIcons/standard/groecerystore.png
new file mode 100644
index 00000000..0543d7d9
Binary files /dev/null and b/assets/MapIcons/standard/groecerystore.png differ
diff --git a/assets/MapIcons/standard/groecerystore.shadow.png b/assets/MapIcons/standard/groecerystore.shadow.png
new file mode 100644
index 00000000..e85b5d87
Binary files /dev/null and b/assets/MapIcons/standard/groecerystore.shadow.png differ
diff --git a/assets/MapIcons/standard/helicopter.png b/assets/MapIcons/standard/helicopter.png
new file mode 100644
index 00000000..52e586a4
Binary files /dev/null and b/assets/MapIcons/standard/helicopter.png differ
diff --git a/assets/MapIcons/standard/helicopter.shadow.png b/assets/MapIcons/standard/helicopter.shadow.png
new file mode 100644
index 00000000..3339d3ac
Binary files /dev/null and b/assets/MapIcons/standard/helicopter.shadow.png differ
diff --git a/assets/MapIcons/standard/hiker.png b/assets/MapIcons/standard/hiker.png
new file mode 100644
index 00000000..e59052c6
Binary files /dev/null and b/assets/MapIcons/standard/hiker.png differ
diff --git a/assets/MapIcons/standard/hiker.shadow.png b/assets/MapIcons/standard/hiker.shadow.png
new file mode 100644
index 00000000..a67cfe10
Binary files /dev/null and b/assets/MapIcons/standard/hiker.shadow.png differ
diff --git a/assets/MapIcons/standard/homegardenbusiness.png b/assets/MapIcons/standard/homegardenbusiness.png
new file mode 100644
index 00000000..3c91d092
Binary files /dev/null and b/assets/MapIcons/standard/homegardenbusiness.png differ
diff --git a/assets/MapIcons/standard/homegardenbusiness.shadow.png b/assets/MapIcons/standard/homegardenbusiness.shadow.png
new file mode 100644
index 00000000..5735f94b
Binary files /dev/null and b/assets/MapIcons/standard/homegardenbusiness.shadow.png differ
diff --git a/assets/MapIcons/standard/horsebackriding.png b/assets/MapIcons/standard/horsebackriding.png
new file mode 100644
index 00000000..de690e91
Binary files /dev/null and b/assets/MapIcons/standard/horsebackriding.png differ
diff --git a/assets/MapIcons/standard/horsebackriding.shadow.png b/assets/MapIcons/standard/horsebackriding.shadow.png
new file mode 100644
index 00000000..388285b6
Binary files /dev/null and b/assets/MapIcons/standard/horsebackriding.shadow.png differ
diff --git a/assets/MapIcons/standard/hospitals.png b/assets/MapIcons/standard/hospitals.png
new file mode 100644
index 00000000..38dace0a
Binary files /dev/null and b/assets/MapIcons/standard/hospitals.png differ
diff --git a/assets/MapIcons/standard/hospitals.shadow.png b/assets/MapIcons/standard/hospitals.shadow.png
new file mode 100644
index 00000000..ed0f5beb
Binary files /dev/null and b/assets/MapIcons/standard/hospitals.shadow.png differ
diff --git a/assets/MapIcons/standard/hotsprings.png b/assets/MapIcons/standard/hotsprings.png
new file mode 100644
index 00000000..c93cc3c7
Binary files /dev/null and b/assets/MapIcons/standard/hotsprings.png differ
diff --git a/assets/MapIcons/standard/hotsprings.shadow.png b/assets/MapIcons/standard/hotsprings.shadow.png
new file mode 100644
index 00000000..a47701c4
Binary files /dev/null and b/assets/MapIcons/standard/hotsprings.shadow.png differ
diff --git a/assets/MapIcons/standard/info.png b/assets/MapIcons/standard/info.png
new file mode 100644
index 00000000..ed9daafe
Binary files /dev/null and b/assets/MapIcons/standard/info.png differ
diff --git a/assets/MapIcons/standard/info.shadow.png b/assets/MapIcons/standard/info.shadow.png
new file mode 100644
index 00000000..b6bb912a
Binary files /dev/null and b/assets/MapIcons/standard/info.shadow.png differ
diff --git a/assets/MapIcons/standard/info_circle.png b/assets/MapIcons/standard/info_circle.png
new file mode 100644
index 00000000..921c2cfb
Binary files /dev/null and b/assets/MapIcons/standard/info_circle.png differ
diff --git a/assets/MapIcons/standard/info_circle.shadow.png b/assets/MapIcons/standard/info_circle.shadow.png
new file mode 100644
index 00000000..0018bc0a
Binary files /dev/null and b/assets/MapIcons/standard/info_circle.shadow.png differ
diff --git a/assets/MapIcons/standard/landmarks-jp.png b/assets/MapIcons/standard/landmarks-jp.png
new file mode 100644
index 00000000..e18c0338
Binary files /dev/null and b/assets/MapIcons/standard/landmarks-jp.png differ
diff --git a/assets/MapIcons/standard/landmarks-jp.shadow.png b/assets/MapIcons/standard/landmarks-jp.shadow.png
new file mode 100644
index 00000000..e3f4ce58
Binary files /dev/null and b/assets/MapIcons/standard/landmarks-jp.shadow.png differ
diff --git a/assets/MapIcons/standard/lightblue.png b/assets/MapIcons/standard/lightblue.png
new file mode 100644
index 00000000..03586d7d
Binary files /dev/null and b/assets/MapIcons/standard/lightblue.png differ
diff --git a/assets/MapIcons/standard/lodging.png b/assets/MapIcons/standard/lodging.png
new file mode 100644
index 00000000..a0f43edf
Binary files /dev/null and b/assets/MapIcons/standard/lodging.png differ
diff --git a/assets/MapIcons/standard/lodging.shadow.png b/assets/MapIcons/standard/lodging.shadow.png
new file mode 100644
index 00000000..6c947e91
Binary files /dev/null and b/assets/MapIcons/standard/lodging.shadow.png differ
diff --git a/assets/MapIcons/standard/ltblu-pushpin.png b/assets/MapIcons/standard/ltblu-pushpin.png
new file mode 100644
index 00000000..64fb9730
Binary files /dev/null and b/assets/MapIcons/standard/ltblu-pushpin.png differ
diff --git a/assets/MapIcons/standard/ltblue-dot.png b/assets/MapIcons/standard/ltblue-dot.png
new file mode 100644
index 00000000..d21f0c58
Binary files /dev/null and b/assets/MapIcons/standard/ltblue-dot.png differ
diff --git a/assets/MapIcons/standard/man.png b/assets/MapIcons/standard/man.png
new file mode 100644
index 00000000..a095deb8
Binary files /dev/null and b/assets/MapIcons/standard/man.png differ
diff --git a/assets/MapIcons/standard/man.shadow.png b/assets/MapIcons/standard/man.shadow.png
new file mode 100644
index 00000000..eef72a7f
Binary files /dev/null and b/assets/MapIcons/standard/man.shadow.png differ
diff --git a/assets/MapIcons/standard/marina.png b/assets/MapIcons/standard/marina.png
new file mode 100644
index 00000000..dc6a7756
Binary files /dev/null and b/assets/MapIcons/standard/marina.png differ
diff --git a/assets/MapIcons/standard/marina.shadow.png b/assets/MapIcons/standard/marina.shadow.png
new file mode 100644
index 00000000..659f9a71
Binary files /dev/null and b/assets/MapIcons/standard/marina.shadow.png differ
diff --git a/assets/MapIcons/standard/mechanic.png b/assets/MapIcons/standard/mechanic.png
new file mode 100644
index 00000000..566764a7
Binary files /dev/null and b/assets/MapIcons/standard/mechanic.png differ
diff --git a/assets/MapIcons/standard/mechanic.shadow.png b/assets/MapIcons/standard/mechanic.shadow.png
new file mode 100644
index 00000000..66e71aae
Binary files /dev/null and b/assets/MapIcons/standard/mechanic.shadow.png differ
diff --git a/assets/MapIcons/standard/motorcycling.png b/assets/MapIcons/standard/motorcycling.png
new file mode 100644
index 00000000..94fc943d
Binary files /dev/null and b/assets/MapIcons/standard/motorcycling.png differ
diff --git a/assets/MapIcons/standard/motorcycling.shadow.png b/assets/MapIcons/standard/motorcycling.shadow.png
new file mode 100644
index 00000000..66a63fd8
Binary files /dev/null and b/assets/MapIcons/standard/motorcycling.shadow.png differ
diff --git a/assets/MapIcons/standard/movies.png b/assets/MapIcons/standard/movies.png
new file mode 100644
index 00000000..920d721c
Binary files /dev/null and b/assets/MapIcons/standard/movies.png differ
diff --git a/assets/MapIcons/standard/movies.shadow.png b/assets/MapIcons/standard/movies.shadow.png
new file mode 100644
index 00000000..3769af6e
Binary files /dev/null and b/assets/MapIcons/standard/movies.shadow.png differ
diff --git a/assets/MapIcons/standard/msmarker.shadow.png b/assets/MapIcons/standard/msmarker.shadow.png
new file mode 100644
index 00000000..f460f3fd
Binary files /dev/null and b/assets/MapIcons/standard/msmarker.shadow.png differ
diff --git a/assets/MapIcons/standard/orange-dot.png b/assets/MapIcons/standard/orange-dot.png
new file mode 100644
index 00000000..96bcaf37
Binary files /dev/null and b/assets/MapIcons/standard/orange-dot.png differ
diff --git a/assets/MapIcons/standard/orange.png b/assets/MapIcons/standard/orange.png
new file mode 100644
index 00000000..8bee9da3
Binary files /dev/null and b/assets/MapIcons/standard/orange.png differ
diff --git a/assets/MapIcons/standard/parkinglot.png b/assets/MapIcons/standard/parkinglot.png
new file mode 100644
index 00000000..b1384358
Binary files /dev/null and b/assets/MapIcons/standard/parkinglot.png differ
diff --git a/assets/MapIcons/standard/parkinglot.shadow.png b/assets/MapIcons/standard/parkinglot.shadow.png
new file mode 100644
index 00000000..d117b7bb
Binary files /dev/null and b/assets/MapIcons/standard/parkinglot.shadow.png differ
diff --git a/assets/MapIcons/standard/partly_cloudy.png b/assets/MapIcons/standard/partly_cloudy.png
new file mode 100644
index 00000000..74184a5e
Binary files /dev/null and b/assets/MapIcons/standard/partly_cloudy.png differ
diff --git a/assets/MapIcons/standard/partly_cloudy.shadow.png b/assets/MapIcons/standard/partly_cloudy.shadow.png
new file mode 100644
index 00000000..c5f779b6
Binary files /dev/null and b/assets/MapIcons/standard/partly_cloudy.shadow.png differ
diff --git a/assets/MapIcons/standard/pharmacy-us.png b/assets/MapIcons/standard/pharmacy-us.png
new file mode 100644
index 00000000..891c1590
Binary files /dev/null and b/assets/MapIcons/standard/pharmacy-us.png differ
diff --git a/assets/MapIcons/standard/pharmacy-us.shadow.png b/assets/MapIcons/standard/pharmacy-us.shadow.png
new file mode 100644
index 00000000..a4a93270
Binary files /dev/null and b/assets/MapIcons/standard/pharmacy-us.shadow.png differ
diff --git a/assets/MapIcons/standard/phone.png b/assets/MapIcons/standard/phone.png
new file mode 100644
index 00000000..116063aa
Binary files /dev/null and b/assets/MapIcons/standard/phone.png differ
diff --git a/assets/MapIcons/standard/phone.shadow.png b/assets/MapIcons/standard/phone.shadow.png
new file mode 100644
index 00000000..8450886e
Binary files /dev/null and b/assets/MapIcons/standard/phone.shadow.png differ
diff --git a/assets/MapIcons/standard/picnic.png b/assets/MapIcons/standard/picnic.png
new file mode 100644
index 00000000..4344c597
Binary files /dev/null and b/assets/MapIcons/standard/picnic.png differ
diff --git a/assets/MapIcons/standard/picnic.shadow.png b/assets/MapIcons/standard/picnic.shadow.png
new file mode 100644
index 00000000..2f8a5e59
Binary files /dev/null and b/assets/MapIcons/standard/picnic.shadow.png differ
diff --git a/assets/MapIcons/standard/pink-dot.png b/assets/MapIcons/standard/pink-dot.png
new file mode 100644
index 00000000..e946fe60
Binary files /dev/null and b/assets/MapIcons/standard/pink-dot.png differ
diff --git a/assets/MapIcons/standard/pink-pushpin.png b/assets/MapIcons/standard/pink-pushpin.png
new file mode 100644
index 00000000..30649980
Binary files /dev/null and b/assets/MapIcons/standard/pink-pushpin.png differ
diff --git a/assets/MapIcons/standard/pink.png b/assets/MapIcons/standard/pink.png
new file mode 100644
index 00000000..71a7cd65
Binary files /dev/null and b/assets/MapIcons/standard/pink.png differ
diff --git a/assets/MapIcons/standard/plane.png b/assets/MapIcons/standard/plane.png
new file mode 100644
index 00000000..0a647d78
Binary files /dev/null and b/assets/MapIcons/standard/plane.png differ
diff --git a/assets/MapIcons/standard/plane.shadow.png b/assets/MapIcons/standard/plane.shadow.png
new file mode 100644
index 00000000..e2699c68
Binary files /dev/null and b/assets/MapIcons/standard/plane.shadow.png differ
diff --git a/assets/MapIcons/standard/police.png b/assets/MapIcons/standard/police.png
new file mode 100644
index 00000000..5bd6348b
Binary files /dev/null and b/assets/MapIcons/standard/police.png differ
diff --git a/assets/MapIcons/standard/police.shadow.png b/assets/MapIcons/standard/police.shadow.png
new file mode 100644
index 00000000..9c9088e7
Binary files /dev/null and b/assets/MapIcons/standard/police.shadow.png differ
diff --git a/assets/MapIcons/standard/postoffice-jp.png b/assets/MapIcons/standard/postoffice-jp.png
new file mode 100644
index 00000000..e8b97594
Binary files /dev/null and b/assets/MapIcons/standard/postoffice-jp.png differ
diff --git a/assets/MapIcons/standard/postoffice-jp.shadow.png b/assets/MapIcons/standard/postoffice-jp.shadow.png
new file mode 100644
index 00000000..f6ab3419
Binary files /dev/null and b/assets/MapIcons/standard/postoffice-jp.shadow.png differ
diff --git a/assets/MapIcons/standard/postoffice-us.png b/assets/MapIcons/standard/postoffice-us.png
new file mode 100644
index 00000000..eaeb9a16
Binary files /dev/null and b/assets/MapIcons/standard/postoffice-us.png differ
diff --git a/assets/MapIcons/standard/postoffice-us.shadow.png b/assets/MapIcons/standard/postoffice-us.shadow.png
new file mode 100644
index 00000000..b315b2d1
Binary files /dev/null and b/assets/MapIcons/standard/postoffice-us.shadow.png differ
diff --git a/assets/MapIcons/standard/purple-dot.png b/assets/MapIcons/standard/purple-dot.png
new file mode 100644
index 00000000..c0d40cb7
Binary files /dev/null and b/assets/MapIcons/standard/purple-dot.png differ
diff --git a/assets/MapIcons/standard/purple-pushpin.png b/assets/MapIcons/standard/purple-pushpin.png
new file mode 100644
index 00000000..9fc54ac9
Binary files /dev/null and b/assets/MapIcons/standard/purple-pushpin.png differ
diff --git a/assets/MapIcons/standard/purple.png b/assets/MapIcons/standard/purple.png
new file mode 100644
index 00000000..b5787389
Binary files /dev/null and b/assets/MapIcons/standard/purple.png differ
diff --git a/assets/MapIcons/standard/pushpin_shadow.png b/assets/MapIcons/standard/pushpin_shadow.png
new file mode 100644
index 00000000..162aa0fa
Binary files /dev/null and b/assets/MapIcons/standard/pushpin_shadow.png differ
diff --git a/assets/MapIcons/standard/question.png b/assets/MapIcons/standard/question.png
new file mode 100644
index 00000000..2e8ffafc
Binary files /dev/null and b/assets/MapIcons/standard/question.png differ
diff --git a/assets/MapIcons/standard/question.shadow.png b/assets/MapIcons/standard/question.shadow.png
new file mode 100644
index 00000000..3fd89756
Binary files /dev/null and b/assets/MapIcons/standard/question.shadow.png differ
diff --git a/assets/MapIcons/standard/rail.png b/assets/MapIcons/standard/rail.png
new file mode 100644
index 00000000..b51e6ac3
Binary files /dev/null and b/assets/MapIcons/standard/rail.png differ
diff --git a/assets/MapIcons/standard/rail.shadow.png b/assets/MapIcons/standard/rail.shadow.png
new file mode 100644
index 00000000..531faad7
Binary files /dev/null and b/assets/MapIcons/standard/rail.shadow.png differ
diff --git a/assets/MapIcons/standard/rainy.png b/assets/MapIcons/standard/rainy.png
new file mode 100644
index 00000000..161e8785
Binary files /dev/null and b/assets/MapIcons/standard/rainy.png differ
diff --git a/assets/MapIcons/standard/rainy.shadow.png b/assets/MapIcons/standard/rainy.shadow.png
new file mode 100644
index 00000000..f621c83a
Binary files /dev/null and b/assets/MapIcons/standard/rainy.shadow.png differ
diff --git a/assets/MapIcons/standard/rangerstation.png b/assets/MapIcons/standard/rangerstation.png
new file mode 100644
index 00000000..154e3350
Binary files /dev/null and b/assets/MapIcons/standard/rangerstation.png differ
diff --git a/assets/MapIcons/standard/rangerstation.shadow.png b/assets/MapIcons/standard/rangerstation.shadow.png
new file mode 100644
index 00000000..d3f0aad9
Binary files /dev/null and b/assets/MapIcons/standard/rangerstation.shadow.png differ
diff --git a/assets/MapIcons/standard/realestate.png b/assets/MapIcons/standard/realestate.png
new file mode 100644
index 00000000..5fb9c47a
Binary files /dev/null and b/assets/MapIcons/standard/realestate.png differ
diff --git a/assets/MapIcons/standard/realestate.shadow.png b/assets/MapIcons/standard/realestate.shadow.png
new file mode 100644
index 00000000..9a83b76c
Binary files /dev/null and b/assets/MapIcons/standard/realestate.shadow.png differ
diff --git a/assets/MapIcons/standard/recycle.png b/assets/MapIcons/standard/recycle.png
new file mode 100644
index 00000000..787c8d46
Binary files /dev/null and b/assets/MapIcons/standard/recycle.png differ
diff --git a/assets/MapIcons/standard/recycle.shadow.png b/assets/MapIcons/standard/recycle.shadow.png
new file mode 100644
index 00000000..02658ce8
Binary files /dev/null and b/assets/MapIcons/standard/recycle.shadow.png differ
diff --git a/assets/MapIcons/standard/red-dot.png b/assets/MapIcons/standard/red-dot.png
new file mode 100644
index 00000000..b0f3f0e9
Binary files /dev/null and b/assets/MapIcons/standard/red-dot.png differ
diff --git a/assets/MapIcons/standard/red-pushpin.png b/assets/MapIcons/standard/red-pushpin.png
new file mode 100644
index 00000000..203512d5
Binary files /dev/null and b/assets/MapIcons/standard/red-pushpin.png differ
diff --git a/assets/MapIcons/standard/red.png b/assets/MapIcons/standard/red.png
new file mode 100644
index 00000000..e993751a
Binary files /dev/null and b/assets/MapIcons/standard/red.png differ
diff --git a/assets/MapIcons/standard/restaurant.png b/assets/MapIcons/standard/restaurant.png
new file mode 100644
index 00000000..847056da
Binary files /dev/null and b/assets/MapIcons/standard/restaurant.png differ
diff --git a/assets/MapIcons/standard/restaurant.shadow.png b/assets/MapIcons/standard/restaurant.shadow.png
new file mode 100644
index 00000000..f5defac5
Binary files /dev/null and b/assets/MapIcons/standard/restaurant.shadow.png differ
diff --git a/assets/MapIcons/standard/sailing.png b/assets/MapIcons/standard/sailing.png
new file mode 100644
index 00000000..d0c32354
Binary files /dev/null and b/assets/MapIcons/standard/sailing.png differ
diff --git a/assets/MapIcons/standard/sailing.shadow.png b/assets/MapIcons/standard/sailing.shadow.png
new file mode 100644
index 00000000..eaf52a83
Binary files /dev/null and b/assets/MapIcons/standard/sailing.shadow.png differ
diff --git a/assets/MapIcons/standard/salon.png b/assets/MapIcons/standard/salon.png
new file mode 100644
index 00000000..d8c9d8f4
Binary files /dev/null and b/assets/MapIcons/standard/salon.png differ
diff --git a/assets/MapIcons/standard/salon.shadow.png b/assets/MapIcons/standard/salon.shadow.png
new file mode 100644
index 00000000..11990937
Binary files /dev/null and b/assets/MapIcons/standard/salon.shadow.png differ
diff --git a/assets/MapIcons/standard/shopping.png b/assets/MapIcons/standard/shopping.png
new file mode 100644
index 00000000..eab3f935
Binary files /dev/null and b/assets/MapIcons/standard/shopping.png differ
diff --git a/assets/MapIcons/standard/shopping.shadow.png b/assets/MapIcons/standard/shopping.shadow.png
new file mode 100644
index 00000000..5434dff1
Binary files /dev/null and b/assets/MapIcons/standard/shopping.shadow.png differ
diff --git a/assets/MapIcons/standard/ski.png b/assets/MapIcons/standard/ski.png
new file mode 100644
index 00000000..691caf95
Binary files /dev/null and b/assets/MapIcons/standard/ski.png differ
diff --git a/assets/MapIcons/standard/ski.shadow.png b/assets/MapIcons/standard/ski.shadow.png
new file mode 100644
index 00000000..af7cffcf
Binary files /dev/null and b/assets/MapIcons/standard/ski.shadow.png differ
diff --git a/assets/MapIcons/standard/snack_bar.png b/assets/MapIcons/standard/snack_bar.png
new file mode 100644
index 00000000..77c4e9ec
Binary files /dev/null and b/assets/MapIcons/standard/snack_bar.png differ
diff --git a/assets/MapIcons/standard/snack_bar.shadow.png b/assets/MapIcons/standard/snack_bar.shadow.png
new file mode 100644
index 00000000..8fb26f05
Binary files /dev/null and b/assets/MapIcons/standard/snack_bar.shadow.png differ
diff --git a/assets/MapIcons/standard/snowflake_simple.png b/assets/MapIcons/standard/snowflake_simple.png
new file mode 100644
index 00000000..2615d219
Binary files /dev/null and b/assets/MapIcons/standard/snowflake_simple.png differ
diff --git a/assets/MapIcons/standard/snowflake_simple.shadow.png b/assets/MapIcons/standard/snowflake_simple.shadow.png
new file mode 100644
index 00000000..712c93fc
Binary files /dev/null and b/assets/MapIcons/standard/snowflake_simple.shadow.png differ
diff --git a/assets/MapIcons/standard/sportvenue.png b/assets/MapIcons/standard/sportvenue.png
new file mode 100644
index 00000000..7025e9e6
Binary files /dev/null and b/assets/MapIcons/standard/sportvenue.png differ
diff --git a/assets/MapIcons/standard/sportvenue.shadow.png b/assets/MapIcons/standard/sportvenue.shadow.png
new file mode 100644
index 00000000..eb1f7f5a
Binary files /dev/null and b/assets/MapIcons/standard/sportvenue.shadow.png differ
diff --git a/assets/MapIcons/standard/subway.png b/assets/MapIcons/standard/subway.png
new file mode 100644
index 00000000..3bdf7147
Binary files /dev/null and b/assets/MapIcons/standard/subway.png differ
diff --git a/assets/MapIcons/standard/subway.shadow.png b/assets/MapIcons/standard/subway.shadow.png
new file mode 100644
index 00000000..ccc60bb5
Binary files /dev/null and b/assets/MapIcons/standard/subway.shadow.png differ
diff --git a/assets/MapIcons/standard/sunny.png b/assets/MapIcons/standard/sunny.png
new file mode 100644
index 00000000..377afafa
Binary files /dev/null and b/assets/MapIcons/standard/sunny.png differ
diff --git a/assets/MapIcons/standard/sunny.shadow.png b/assets/MapIcons/standard/sunny.shadow.png
new file mode 100644
index 00000000..9cda737e
Binary files /dev/null and b/assets/MapIcons/standard/sunny.shadow.png differ
diff --git a/assets/MapIcons/standard/swimming.png b/assets/MapIcons/standard/swimming.png
new file mode 100644
index 00000000..8a2d1c7e
Binary files /dev/null and b/assets/MapIcons/standard/swimming.png differ
diff --git a/assets/MapIcons/standard/swimming.shadow.png b/assets/MapIcons/standard/swimming.shadow.png
new file mode 100644
index 00000000..432f19c3
Binary files /dev/null and b/assets/MapIcons/standard/swimming.shadow.png differ
diff --git a/assets/MapIcons/standard/toilets.png b/assets/MapIcons/standard/toilets.png
new file mode 100644
index 00000000..06cf74e9
Binary files /dev/null and b/assets/MapIcons/standard/toilets.png differ
diff --git a/assets/MapIcons/standard/toilets.shadow.png b/assets/MapIcons/standard/toilets.shadow.png
new file mode 100644
index 00000000..0cdf6e34
Binary files /dev/null and b/assets/MapIcons/standard/toilets.shadow.png differ
diff --git a/assets/MapIcons/standard/trail.png b/assets/MapIcons/standard/trail.png
new file mode 100644
index 00000000..9ef85e8a
Binary files /dev/null and b/assets/MapIcons/standard/trail.png differ
diff --git a/assets/MapIcons/standard/trail.shadow.png b/assets/MapIcons/standard/trail.shadow.png
new file mode 100644
index 00000000..6267a2a0
Binary files /dev/null and b/assets/MapIcons/standard/trail.shadow.png differ
diff --git a/assets/MapIcons/standard/tram.png b/assets/MapIcons/standard/tram.png
new file mode 100644
index 00000000..e2800e74
Binary files /dev/null and b/assets/MapIcons/standard/tram.png differ
diff --git a/assets/MapIcons/standard/tram.shadow.png b/assets/MapIcons/standard/tram.shadow.png
new file mode 100644
index 00000000..21139b47
Binary files /dev/null and b/assets/MapIcons/standard/tram.shadow.png differ
diff --git a/assets/MapIcons/standard/tree.png b/assets/MapIcons/standard/tree.png
new file mode 100644
index 00000000..47117e50
Binary files /dev/null and b/assets/MapIcons/standard/tree.png differ
diff --git a/assets/MapIcons/standard/tree.shadow.png b/assets/MapIcons/standard/tree.shadow.png
new file mode 100644
index 00000000..b8c45270
Binary files /dev/null and b/assets/MapIcons/standard/tree.shadow.png differ
diff --git a/assets/MapIcons/standard/truck.png b/assets/MapIcons/standard/truck.png
new file mode 100644
index 00000000..ac8872fd
Binary files /dev/null and b/assets/MapIcons/standard/truck.png differ
diff --git a/assets/MapIcons/standard/truck.shadow.png b/assets/MapIcons/standard/truck.shadow.png
new file mode 100644
index 00000000..91e0da84
Binary files /dev/null and b/assets/MapIcons/standard/truck.shadow.png differ
diff --git a/assets/MapIcons/standard/volcano.png b/assets/MapIcons/standard/volcano.png
new file mode 100644
index 00000000..85b38c38
Binary files /dev/null and b/assets/MapIcons/standard/volcano.png differ
diff --git a/assets/MapIcons/standard/volcano.shadow.png b/assets/MapIcons/standard/volcano.shadow.png
new file mode 100644
index 00000000..6c4d7ceb
Binary files /dev/null and b/assets/MapIcons/standard/volcano.shadow.png differ
diff --git a/assets/MapIcons/standard/water.png b/assets/MapIcons/standard/water.png
new file mode 100644
index 00000000..ed6a213a
Binary files /dev/null and b/assets/MapIcons/standard/water.png differ
diff --git a/assets/MapIcons/standard/water.shadow.png b/assets/MapIcons/standard/water.shadow.png
new file mode 100644
index 00000000..f33315ea
Binary files /dev/null and b/assets/MapIcons/standard/water.shadow.png differ
diff --git a/assets/MapIcons/standard/waterfalls.png b/assets/MapIcons/standard/waterfalls.png
new file mode 100644
index 00000000..60c8c1e4
Binary files /dev/null and b/assets/MapIcons/standard/waterfalls.png differ
diff --git a/assets/MapIcons/standard/waterfalls.shadow.png b/assets/MapIcons/standard/waterfalls.shadow.png
new file mode 100644
index 00000000..e9a78370
Binary files /dev/null and b/assets/MapIcons/standard/waterfalls.shadow.png differ
diff --git a/assets/MapIcons/standard/webcam.png b/assets/MapIcons/standard/webcam.png
new file mode 100644
index 00000000..6516594a
Binary files /dev/null and b/assets/MapIcons/standard/webcam.png differ
diff --git a/assets/MapIcons/standard/webcam.shadow.png b/assets/MapIcons/standard/webcam.shadow.png
new file mode 100644
index 00000000..2d55eb7c
Binary files /dev/null and b/assets/MapIcons/standard/webcam.shadow.png differ
diff --git a/assets/MapIcons/standard/wheel_chair_accessible.png b/assets/MapIcons/standard/wheel_chair_accessible.png
new file mode 100644
index 00000000..eb5b6c24
Binary files /dev/null and b/assets/MapIcons/standard/wheel_chair_accessible.png differ
diff --git a/assets/MapIcons/standard/wheel_chair_accessible.shadow.png b/assets/MapIcons/standard/wheel_chair_accessible.shadow.png
new file mode 100644
index 00000000..56ad1ac0
Binary files /dev/null and b/assets/MapIcons/standard/wheel_chair_accessible.shadow.png differ
diff --git a/assets/MapIcons/standard/woman.png b/assets/MapIcons/standard/woman.png
new file mode 100644
index 00000000..4b094392
Binary files /dev/null and b/assets/MapIcons/standard/woman.png differ
diff --git a/assets/MapIcons/standard/woman.shadow.png b/assets/MapIcons/standard/woman.shadow.png
new file mode 100644
index 00000000..2ec16200
Binary files /dev/null and b/assets/MapIcons/standard/woman.shadow.png differ
diff --git a/assets/MapIcons/standard/yellow-dot.png b/assets/MapIcons/standard/yellow-dot.png
new file mode 100644
index 00000000..79974d60
Binary files /dev/null and b/assets/MapIcons/standard/yellow-dot.png differ
diff --git a/assets/MapIcons/standard/yellow.png b/assets/MapIcons/standard/yellow.png
new file mode 100644
index 00000000..a9d65acc
Binary files /dev/null and b/assets/MapIcons/standard/yellow.png differ
diff --git a/assets/MapIcons/standard/yen.png b/assets/MapIcons/standard/yen.png
new file mode 100644
index 00000000..9e7de687
Binary files /dev/null and b/assets/MapIcons/standard/yen.png differ
diff --git a/assets/MapIcons/standard/yen.shadow.png b/assets/MapIcons/standard/yen.shadow.png
new file mode 100644
index 00000000..b842710d
Binary files /dev/null and b/assets/MapIcons/standard/yen.shadow.png differ
diff --git a/assets/MapIcons/standard/ylw-pushpin.png b/assets/MapIcons/standard/ylw-pushpin.png
new file mode 100644
index 00000000..c33c5203
Binary files /dev/null and b/assets/MapIcons/standard/ylw-pushpin.png differ
diff --git a/classes/data/dataMemberInfo.php b/classes/data/dataMemberInfo.php
index c596768c..eabfb30f 100644
--- a/classes/data/dataMemberInfo.php
+++ b/classes/data/dataMemberInfo.php
@@ -55,6 +55,18 @@ class GlmDataMemberInfo extends GlmDataAbstract
* @access public
*/
public $doPostProcessing = true;
+ /**
+ * Individual post processing override
+ * Leave as false. Make true to force that specific
+ * post processing if $doPostProcessing is off.
+ *
+ * @var boolean
+ * @access public
+ */
+ public $postProcessAmenity = false;
+ public $postProcessCategory = false;
+ public $postProcessShortDescr = false;
+ public $postProcessCamUrl = false;
/**
* Post Processing Primary Contact flag
*
@@ -382,28 +394,28 @@ class GlmDataMemberInfo extends GlmDataAbstract
'list' => $this->config['video_type'],
'use' => 'a'
),
-
+
// Live Cam URL
'live_cam_url' => array (
'field' => 'live_cam_url',
'type' => 'text',
'use' => 'a'
),
-
+
// Live Cam Title
'live_cam_title' => array (
'field' => 'live_cam_title',
'type' => 'text',
'use' => 'a'
),
-
+
// Live Cam Description
'live_cam_descr' => array (
'field' => 'live_cam_descr',
'type' => 'text',
'use' => 'a'
),
-
+
// Live Cam Type
'live_cam_type' => array (
'field' => 'live_cam_type',
@@ -465,73 +477,84 @@ class GlmDataMemberInfo extends GlmDataAbstract
}
// Only run these tests for 'l' (getList), 'g' (getEntry), 'e' (editEntry), 'u' (updateEntry)
- if (!$this->doPostProcessing || ($a != 'l' && $a != 'g' && $a != 'e' && $a != 'u')) {
+ if ($a != 'l' && $a != 'g' && $a != 'e' && $a != 'u') {
return $r;
}
// Get Amenity Data for this entry
- $sql = "
- SELECT A.*
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "amenities AS A,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "amenity_ref AS R
- WHERE R.ref_type = ".$this->config['ref_type_numb']['MemberInfo']."
- AND R.ref_dest = ".$r['id']."
- AND A.id = R.amenity
- ;";
-
- $r['amenities'] = $this->wpdb->get_results($sql, ARRAY_A);
+ if ($this->doPostProcessing || $this->postProcessAmenity) {
+ $sql = "
+ SELECT A.*
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "amenities AS A,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "amenity_ref AS R
+ WHERE R.ref_type = ".$this->config['ref_type_numb']['MemberInfo']."
+ AND R.ref_dest = ".$r['id']."
+ AND A.id = R.amenity
+ ;";
+
+ $r['amenities'] = $this->wpdb->get_results($sql, ARRAY_A);
+ }
// Get Member Category data for this entry
- $sql = "
- SELECT CMI.member_info AS member_info_id, C.id, C.name, C.descr, C.short_descr,
- COALESCE (
- (
- SELECT name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "categories
- WHERE id = C.parent
- ), ''
- ) AS parent_name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "categories AS C,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "category_member_info AS CMI
- WHERE C.id = CMI.category
- AND CMI.member_info = ".$r['id']."
- ;";
- $r['categories'] = $this->wpdb->get_results($sql, ARRAY_A);
-
- if ((strlen($r['short_descr']) == 0) && ($r['descr'] > 0)) {
- $r['short_descr'] = $r['descr'];
+ if ($this->doPostProcessing || $this->postProcessCategory) {
+ $sql = "
+ SELECT CMI.member_info AS member_info_id, C.id, C.name, C.descr, C.short_descr,
+ COALESCE (
+ (
+ SELECT name
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "categories
+ WHERE id = C.parent
+ ), ''
+ ) AS parent_name
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "categories AS C,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "category_member_info AS CMI
+ WHERE C.id = CMI.category
+ AND CMI.member_info = ".$r['id']."
+ ;";
+ $r['categories'] = $this->wpdb->get_results($sql, ARRAY_A);
}
- $dotdotdot = '';
- if (strlen($r['short_descr']) > 120 ) {
- $dotdotdot = ' ...';
+
+ if ($this->doPostProcessing || $this->postProcessShortDescr) {
+ if ((strlen($r['short_descr']) == 0) && ($r['descr'] > 0)) {
+ $r['short_descr'] = $r['descr'];
+ }
+ $dotdotdot = '';
+ if (strlen($r['short_descr']) > 120 ) {
+ $dotdotdot = ' ...';
+ }
+
+ $formattedStr = trim(preg_replace('/\s\s+/', ' ', $r['short_descr']));
+ $r['short_descr'] = substr($formattedStr, 0, 120).$dotdotdot;
}
-
+
+
/*
* This will add a protocol prefix to the live cam url
*/
- $liveCamUrl = $r['live_cam_url'];
- if ($liveCamUrl != "") {
- if (!preg_match("~^(?:f|ht)tps?://~i", $liveCamUrl)) {
- $r['live_cam_url'] = "http://" . $liveCamUrl;
+ if ($this->doPostProcessing || $this->postProcessCamUrl) {
+ $liveCamUrl = $r['live_cam_url'];
+ if ($liveCamUrl != "") {
+ if (!preg_match("~^(?:f|ht)tps?://~i", $liveCamUrl)) {
+ $r['live_cam_url'] = "http://" . $liveCamUrl;
+ }
}
}
- $formattedStr = trim(preg_replace('/\s\s+/', ' ', $r['short_descr']));
- $r['short_descr'] = substr($formattedStr, 0, 120).$dotdotdot;
-
// If post processing primary contact - Yes, we're cheating here and referencing an add-on directly
- if (isset($this->config['addOns']['glm-member-db-contacts']) && $this->postProcessPrimaryContact) {
-
- // Get basic primary contact information
- $sql = "
- SELECT id, fname, lname, email
- FROM ".GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX. "contacts
- WHERE ref_type = ".$this->config['ref_type_numb']['Member']."
- AND ref_dest = ".$r['member_pointer']."
- AND primary_contact
- ";
- $r['primary_contact'] = current($this->wpdb->get_results($sql, ARRAY_A));
+ if ($this->doPostProcessing || $this->postProcessPrimaryContact) {
+ if (isset($this->config['addOns']['glm-member-db-contacts']) && $this->postProcessPrimaryContact) {
+
+ // Get basic primary contact information
+ $sql = "
+ SELECT id, fname, lname, email
+ FROM ".GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX. "contacts
+ WHERE ref_type = ".$this->config['ref_type_numb']['Member']."
+ AND ref_dest = ".$r['member_pointer']."
+ AND primary_contact
+ ";
+ $r['primary_contact'] = current($this->wpdb->get_results($sql, ARRAY_A));
+ }
}
return $r;
@@ -663,7 +686,7 @@ class GlmDataMemberInfo extends GlmDataAbstract
* @return object Class object
*
*/
- public function getSimpleMemberInfoList($where = '')
+ public function getSimpleMemberInfoList($where = '', $forMapItems = false)
{
$this->doPostProcessing = false;
@@ -686,6 +709,23 @@ class GlmDataMemberInfo extends GlmDataAbstract
'lon' => $f['lon']
);
+ if ($forMapItems) {
+ $this->fields = array_merge($this->fields, array(
+ 'addr1' => $f['addr1'],
+ 'addr2' => $f['addr2'],
+ 'city' => $f['city'],
+ 'state' => $f['state'],
+ 'zip' => $f['zip'],
+ 'phone' => $f['phone'],
+ 'email' => $f['email'],
+ 'url' => $f['url'],
+ 'region'=> $f['region'],
+ 'descr' => $f['descr'],
+ 'short_descr' => $f['short_descr']
+ ));
+ }
+
+
// Get the simplified list
$list = $this->getList($where);
diff --git a/controllers/front.php b/controllers/front.php
index 77f15173..43ff11d5 100644
--- a/controllers/front.php
+++ b/controllers/front.php
@@ -64,7 +64,10 @@ class glmMembersFront extends GlmPluginSupport
}
/*
- * Include any misc add-on hooks and filters in add-on setup folder frontMisc.php file.
+ * Include the following files in the setup folder of add-ons
+ *
+ * * Misc hooks and filters - frontMisc.php
+ * * Map hooks between add-ons - mapHooks.php
*
* Note that filter and hook callback functions must be included in-line as shown below...
*
@@ -83,6 +86,12 @@ class glmMembersFront extends GlmPluginSupport
require_once $miscFile;
}
+ // Check for a mapHooks.php file - Maps various add_filters to apply_filters for the add-on
+ $mapHooksFile = GLM_MEMBERS_WORDPRESS_PLUGIN_PATH.$a['slug'].'/setup/mapHooks.php';
+ if (is_file($mapHooksFile)) {
+ require_once $mapHooksFile;
+ }
+
}
// Add filters for use anywhere else (apply_filter). Will have to add this to index.php eventually
@@ -326,12 +335,12 @@ class glmMembersFront extends GlmPluginSupport
$action = $shortcodeData['action'];
/* Get any requested "action" from a form submission - Overrides short-code default action
- *
+ *
* This has been commented out because it does not appear to be used
* and was causing the wrong model to be used after a category-based
* search to a page with more than one model..
*/
- /*
+ /*
if (isset($_REQUEST['glm_action']) && $_REQUEST['glm_action'] != '') {
$a = sanitize_text_field($_REQUEST['glm_action']);
if ($a != '') {
@@ -411,7 +420,7 @@ class glmMembersFront extends GlmPluginSupport
}
// check for an invalid model class name
- if (! class_exists($className)) {
+ if (! class_exists($className)) {
$errorMsg .= "Model class doesn't exist: ".$className;
diff --git a/css/front.css b/css/front.css
index f6fcab52..8f2dc56f 100644
--- a/css/front.css
+++ b/css/front.css
@@ -648,6 +648,15 @@ input[type="submit"].glm-member-button {
padding: 10px 20px;
border-radius: 5px;
}
+.glm-member-button-small,
+input[type="submit"].glm-member-button {
+ font-size: 0.9em !important;
+ padding: .0em .3em 0em .3em !important;
+ margin-right: 2px !important;
+ line-height: 1.8em !important;
+ height: 1.8em !important;
+ border-radius: 5px;
+}
.glm-member-entry-container,
.glm-member-list-container {
background: white none repeat scroll 0 0;
@@ -838,6 +847,9 @@ input[type="submit"].glm-member-button {
/* margin: 10px 0 10px 0;*/
margin: 0 auto;
}
+.glm-map-tall {
+ height: 600px;
+}
/* overrride whatever was causing the 100% width for images in Google Maps */
.glm-map img {
max-width: none !important;
diff --git a/js/googleMapsMarkerClusterer/docs/makerClustererPlusReference.html b/js/googleMapsMarkerClusterer/docs/makerClustererPlusReference.html
new file mode 100644
index 00000000..077f9442
--- /dev/null
+++ b/js/googleMapsMarkerClusterer/docs/makerClustererPlusReference.html
@@ -0,0 +1,1087 @@
+
+
+
+
+
+arts.png
+arts.shadow.png
+bar.png
+bar.shadow.png
+blue-dot.png
+blue.png
+blue-pushpin.png
+bus.png
+bus.shadow.png
+cabs.png
+cabs.shadow.png
+camera.png
+camera.shadow.png
+campfire.png
+campfire.shadow.png
+campground.png
+campground.shadow.png
+caution.png
+caution.shadow.png
+coffeehouse.png
+coffeehouse.shadow.png
+convienancestore.png
+convienancestore.shadow.png
+cycling.png
+cycling.shadow.png
+dollar.png
+dollar.shadow.png
+drinking_water.png
+drinking_water.shadow.png
+earthquake.png
+earthquake.shadow.png
+electronics.png
+electronics.shadow.png
+euro.png
+euro.shadow.png
+fallingrocks.png
+fallingrocks.shadow.png
+ferry.png
+ferry.shadow.png
+firedept.png
+firedept.shadow.png
+fishing.png
+fishing.shadow.png
+flag.png
+flag.shadow.png
+gas.png
+gas.shadow.png
+golfer.png
+golfer.shadow.png
+green-dot.png
+green.png
+grn-pushpin.png
+grocerystore.png
+grocerystore.shadow.png
+groecerystore.png
+groecerystore.shadow.png
+helicopter.png
+helicopter.shadow.png
+hiker.png
+hiker.shadow.png
+homegardenbusiness.png
+homegardenbusiness.shadow.png
+horsebackriding.png
+horsebackriding.shadow.png
+hospitals.png
+hospitals.shadow.png
+hotsprings.png
+hotsprings.shadow.png
+images.html
+info_circle.png
+info_circle.shadow.png
+info.png
+info.shadow.png
+landmarks-jp.png
+landmarks-jp.shadow.png
+lightblue.png
+lodging.png
+lodging.shadow.png
+ltblue-dot.png
+ltblu-pushpin.png
+man.png
+man.shadow.png
+marina.png
+marina.shadow.png
+mechanic.png
+mechanic.shadow.png
+motorcycling.png
+motorcycling.shadow.png
+movies.png
+movies.shadow.png
+msmarker.shadow.png
+orange-dot.png
+orange.png
+parkinglot.png
+parkinglot.shadow.png
+partly_cloudy.png
+partly_cloudy.shadow.png
+pharmacy-us.png
+pharmacy-us.shadow.png
+phone.png
+phone.shadow.png
+picnic.png
+picnic.shadow.png
+pink-dot.png
+pink.png
+pink-pushpin.png
+plane.png
+plane.shadow.png
+POI.png
+POI.shadow.png
+police.png
+police.shadow.png
+postoffice-jp.png
+postoffice-jp.shadow.png
+postoffice-us.png
+postoffice-us.shadow.png
+purple-dot.png
+purple.png
+purple-pushpin.png
+pushpin_shadow.png
+question.png
+question.shadow.png
+rail.png
+rail.shadow.png
+rainy.png
+rainy.shadow.png
+rangerstation.png
+rangerstation.shadow.png
+realestate.png
+realestate.shadow.png
+recycle.png
+recycle.shadow.png
+red-dot.png
+red.png
+red-pushpin.png
+restaurant.png
+restaurant.shadow.png
+sailing.png
+sailing.shadow.png
+salon.png
+salon.shadow.png
+shopping.png
+shopping.shadow.png
+ski.png
+ski.shadow.png
+snack_bar.png
+snack_bar.shadow.png
+snowflake_simple.png
+snowflake_simple.shadow.png
+sportvenue.png
+sportvenue.shadow.png
+subway.png
+subway.shadow.png
+sunny.png
+sunny.shadow.png
+swimming.png
+swimming.shadow.png
+toilets.png
+toilets.shadow.png
+trail.png
+trail.shadow.png
+tram.png
+tram.shadow.png
+tree.png
+tree.shadow.png
+truck.png
+truck.shadow.png
+volcano.png
+volcano.shadow.png
+waterfalls.png
+waterfalls.shadow.png
+water.png
+water.shadow.png
+webcam.png
+webcam.shadow.png
+wheel_chair_accessible.png
+wheel_chair_accessible.shadow.png
+woman.png
+woman.shadow.png
+yellow-dot.png
+yellow.png
+yen.png
+yen.shadow.png
+ylw-pushpin.png MarkerClustererPlus for Google Maps V3
+ ignoreHidden
, title
, batchSizeIE
,
+ and calculator
properties as well as support for four more events. It also allows
+ greater control over the styling of the text that appears on the cluster marker. The
+ documentation has been significantly improved and the overall code has been simplified and
+ polished. Very large numbers of markers can now be managed without causing Javascript timeout
+ errors on Internet Explorer. Note that the name of the clusterclick
event has been
+ deprecated. The new name is click
, so please change your application code now.class Cluster
+
+
+ Constructor
+
+
+
+
+
+
+
+
+ Constructor
+
+ Description
+
+
+
+
+
+
+ Cluster(mc:MarkerClusterer)
Creates a single cluster that manages a group of proximate markers.
+ Used internally, do not call this constructor directly.
+ Methods
+
+
+
+
+
+
+
+
+
+ Methods
+
+
+ Return Value
+
+
+ Description
+
+
+
+
+
+
+ getCenter()
+
+
+ google.maps.LatLng
Returns the center of the cluster. You can call this from
+a
+ click
, mouseover
, or mouseout
event handler
+for the MarkerClusterer
object.
+
+
+
+
+
+ getMarkers()
+
+
+ Array
Returns the array of markers managed by the cluster. You can call this from
+a
+ click
, mouseover
, or mouseout
event handler
+for the MarkerClusterer
object.
+
+
+
+
+
+
+ getSize()
+
+
+ number
Returns the number of markers managed by the cluster. You can call this from
+a
+ click
, mouseover
, or mouseout
event handler
+for the MarkerClusterer
object.class ClusterIconInfo
+ calculator
function returns.Properties
+
+
+
+
+
+
+
+
+
+ Properties
+
+
+ Type
+
+
+ Description
+
+
+
+
+
+
+ index
+
+
+ number
The index plus 1 of the element in the
+ styles
+ array to be used to style the cluster icon.
+
+
+
+
+
+ text
+
+
+ string
The text of the label to be shown on the cluster icon.
+
+
+
+
+
+
+
+ title
+
+
+ string
The tooltip to display when the mouse moves over the cluster icon.
+ If this value is
+ undefined
or ""
, title
is set to the
+ value of the title
property passed to the MarkerClusterer.class ClusterIconStyle
+ styles
array passed
+ to the MarkerClusterer
constructor. The element in this array that is used to
+ style the cluster icon is determined by calling the calculator
function.Properties
+
+
+
+
+
+
+
+
+
+ Properties
+
+
+ Type
+
+
+ Description
+
+
+
+
+
+
+ anchorIcon
+
+
+ Array
The anchor position (in pixels) of the cluster icon. This is the
+ spot on the cluster icon that is to be aligned with the cluster position. The format is
+
+ [yoffset, xoffset]
where yoffset
increases as you go down and
+ xoffset
increases to the right of the top-left corner of the icon. The default
+ anchor position is the center of the cluster icon.
+
+
+
+
+
+ anchorText
+
+
+ Array
The position (in pixels) from the center of the cluster icon to
+ where the text label is to be centered and drawn. The format is
+ [yoffset, xoffset]
+ where yoffset
increases as you go down from center and xoffset
+ increases to the right of center. The default is [0, 0]
.
+
+
+
+
+
+ backgroundPosition
+
+
+ string
The position of the cluster icon image
+ within the image defined by
+ url
. The format is "xpos ypos"
+ (the same format as for the CSS background-position
property). You must set
+ this property appropriately when the image defined by url
represents a sprite
+ containing multiple images. Note that the position must be specified in px units. The default value is "0 0"
.
+
+
+
+
+
+ fontFamily
+
+
+ string
The value of the CSS
+ font-family
+ property for the label text shown on the cluster icon. The default value is "Arial,sans-serif"
.
+
+
+
+
+
+ fontStyle
+
+
+ string
The value of the CSS
+ font-style
+ property for the label text shown on the cluster icon. The default value is "normal"
.
+
+
+
+
+
+ fontWeight
+
+
+ string
The value of the CSS
+ font-weight
+ property for the label text shown on the cluster icon. The default value is "bold"
.
+
+
+
+
+
+ height
+
+
+ number
The display height (in pixels) of the cluster icon. Required.
+
+
+
+
+
+
+ textColor
+
+
+ string
The color of the label text shown on the
+ cluster icon. The default value is
+ "black"
.
+
+
+
+
+
+ textDecoration
+
+
+ string
The value of the CSS
+ text-decoration
+ property for the label text shown on the cluster icon. The default value is "none"
.
+
+
+
+
+
+ textSize
+
+
+ number
The size (in pixels) of the label text shown on the
+ cluster icon. The default value is
+ 11
.
+
+
+
+
+
+ url
+
+
+ string
The URL of the cluster icon image file. Required.
+
+
+
+
+
+
+
+ width
+
+
+ number
The display width (in pixels) of the cluster icon. Required.
+ class MarkerClusterer
+ google.maps.OverlayView
.Constructor
+
+
+
+
+
+
+
+
+ Constructor
+
+ Description
+
+
+
+
+
+
+ MarkerClusterer(map:google.maps.Map, opt_markers?:Array.<google.maps.Marker>, opt_options?:MarkerClustererOptions)
Creates a MarkerClusterer object with the options specified in
+ MarkerClustererOptions
.Methods
+
+
+
+
+
+
+
+
+ Methods
+
+
+ Return Value
+
+
+ Description
+
+
+
+
+
+
+ addMarker(marker:google.maps.Marker, opt_nodraw?:boolean)
+
+
+ None
Adds a marker to the clusterer. The clusters are redrawn unless
+
+ opt_nodraw
is set to true
.
+
+
+
+
+
+ addMarkers(markers:Array.<google.maps.Marker>, opt_nodraw?:boolean)
+
+
+ None
Adds an array of markers to the clusterer. The clusters are redrawn unless
+
+ opt_nodraw
is set to true
.
+
+
+
+
+
+ clearMarkers()
+
+
+ None
Removes all clusters and markers from the map and also removes all markers
+ managed by the clusterer.
+
+
+
+
+
+
+ fitMapToMarkers()
+
+
+ None
Fits the map to the bounds of the markers managed by the clusterer.
+
+
+
+
+
+
+ getAverageCenter()
+
+
+ boolean
Returns the value of the
+ averageCenter
property.
+
+
+
+
+
+ getBatchSizeIE()
+
+
+ number
Returns the value of the
+ batchSizeIE
property.
+
+
+
+
+
+ getCalculator()
+
+
+ function
Returns the value of the
+ calculator
property.
+
+
+
+
+
+ getClusterClass()
+
+
+ string
Returns the value of the
+ clusterClass
property.
+
+
+
+
+
+ getClusters()
+
+
+ Array
Returns the current array of clusters formed by the clusterer.
+
+
+
+
+
+
+ getEnableRetinaIcons()
+
+
+ boolean
Returns the value of the
+ enableRetinaIcons
property.
+
+
+
+
+
+ getGridSize()
+
+
+ number
Returns the value of the
+ gridSize
property.
+
+
+
+
+
+ getIgnoreHidden()
+
+
+ boolean
Returns the value of the
+ ignoreHidden
property.
+
+
+
+
+
+ getImageExtension()
+
+
+ string
Returns the value of the
+ imageExtension
property.
+
+
+
+
+
+ getImagePath()
+
+
+ string
Returns the value of the
+ imagePath
property.
+
+
+
+
+
+ getImageSizes()
+
+
+ Array
Returns the value of the
+ imageSizes
property.
+
+
+
+
+
+ getMarkers()
+
+
+ Array
Returns the array of markers managed by the clusterer.
+
+
+
+
+
+
+ getMaxZoom()
+
+
+ number
Returns the value of the
+ maxZoom
property.
+
+
+
+
+
+ getMinimumClusterSize()
+
+
+ number
Returns the value of the
+ minimumClusterSize
property.
+
+
+
+
+
+ getStyles()
+
+
+ Array
Returns the value of the
+ styles
property.
+
+
+
+
+
+ getTitle()
+
+
+ string
Returns the value of the
+ title
property.
+
+
+
+
+
+ getTotalClusters()
+
+
+ number
Returns the number of clusters formed by the clusterer.
+
+
+
+
+
+
+ getTotalMarkers()
+
+
+ number
Returns the number of markers managed by the clusterer.
+
+
+
+
+
+
+ getZoomOnClick()
+
+
+ boolean
Returns the value of the
+ zoomOnClick
property.
+
+
+
+
+
+ removeMarker(marker:google.maps.Marker, opt_nodraw?:boolean)
+
+
+ boolean
Removes a marker from the cluster. The clusters are redrawn unless
+
+ opt_nodraw
is set to true
. Returns true
if the
+ marker was removed from the clusterer.
+
+
+
+
+
+ removeMarkers(markers:Array.<google.maps.Marker>, opt_nodraw?:boolean)
+
+
+ boolean
Removes an array of markers from the cluster. The clusters are redrawn unless
+
+ opt_nodraw
is set to true
. Returns true
if markers
+ were removed from the clusterer.
+
+
+
+
+
+ repaint()
+
+
+ None
Recalculates and redraws all the marker clusters from scratch.
+ Call this after changing any properties.
+
+
+
+
+
+
+ setAverageCenter(averageCenter:boolean)
+
+
+ None
Sets the value of the
+ averageCenter
property.
+
+
+
+
+
+ setBatchSizeIE(batchSizeIE:number)
+
+
+ None
Sets the value of the
+ batchSizeIE
property.
+
+
+
+
+
+ setCalculator(calculator:function(Array.<google.maps.Marker>|number))
+
+
+ None
Sets the value of the
+ calculator
property.
+
+
+
+
+
+ setClusterClass(clusterClass:string)
+
+
+ None
Sets the value of the
+ clusterClass
property.
+
+
+
+
+
+ setEnableRetinaIcons(enableRetinaIcons:boolean)
+
+
+ None
Sets the value of the
+ enableRetinaIcons
property.
+
+
+
+
+
+ setGridSize(gridSize:number)
+
+
+ None
Sets the value of the
+ gridSize
property.
+
+
+
+
+
+ setIgnoreHidden(ignoreHidden:boolean)
+
+
+ None
Sets the value of the
+ ignoreHidden
property.
+
+
+
+
+
+ setImageExtension(imageExtension:string)
+
+
+ None
Sets the value of the
+ imageExtension
property.
+
+
+
+
+
+ setImagePath(imagePath:string)
+
+
+ None
Sets the value of the
+ imagePath
property.
+
+
+
+
+
+ setImageSizes(imageSizes:Array)
+
+
+ None
Sets the value of the
+ imageSizes
property.
+
+
+
+
+
+ setMaxZoom(maxZoom:number)
+
+
+ None
Sets the value of the
+ maxZoom
property.
+
+
+
+
+
+ setMinimumClusterSize(minimumClusterSize:number)
+
+
+ None
Sets the value of the
+ minimumClusterSize
property.
+
+
+
+
+
+ setStyles(styles:Array.<ClusterIconStyle>)
+
+
+ None
Sets the value of the
+ styles
property.
+
+
+
+
+
+ setTitle(title:string)
+
+
+ None
Sets the value of the
+ title
property.
+
+
+
+
+
+
+ setZoomOnClick(zoomOnClick:boolean)
+
+
+ None
Sets the value of the
+ zoomOnClick
property.Events
+
+
+
+
+
+
+
+
+
+ Events
+
+
+ Arguments
+
+
+ Description
+
+
+
+
+
+
+ click
+
+
+ c:Cluster
This event is fired when a cluster marker is clicked.
+
+
+
+
+
+
+ clusteringbegin
+
+
+ mc:MarkerClusterer
This event is fired when the
+ MarkerClusterer
begins
+ clustering markers.
+
+
+
+
+
+ clusteringend
+
+
+ mc:MarkerClusterer
This event is fired when the
+ MarkerClusterer
stops
+ clustering markers.
+
+
+
+
+
+ mouseout
+
+
+ c:Cluster
This event is fired when the mouse moves out of a cluster marker.
+
+
+
+
+
+
+
+ mouseover
+
+
+ c:Cluster
This event is fired when the mouse moves over a cluster marker.
+ class MarkerClustererOptions
+ MarkerClusterer
constructor. There is no constructor for this class. Instead, this class is instantiated as a javascript object literal.Properties
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/js/googleMapsMarkerClusterer/docs/markerClustererPlusExamples.html b/js/googleMapsMarkerClusterer/docs/markerClustererPlusExamples.html
new file mode 100644
index 00000000..f2dcb437
--- /dev/null
+++ b/js/googleMapsMarkerClusterer/docs/markerClustererPlusExamples.html
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+ Properties
+
+
+ Type
+
+
+ Description
+
+
+
+
+
+
+ averageCenter
+
+
+ boolean
Whether the position of a cluster marker should be
+ the average position of all markers in the cluster. If set to
+ false
, the
+ cluster marker is positioned at the location of the first marker added to the cluster. The default value is false
.
+
+
+
+
+
+ batchSize
+
+
+ number
Set this property to the
+ number of markers to be processed in a single batch when using a browser other than
+ Internet Explorer (for Internet Explorer, use the batchSizeIE property instead). The default value is
+ MarkerClusterer.BATCH_SIZE
.
+
+
+
+
+
+ batchSizeIE
+
+
+ number
When Internet Explorer is
+ being used, markers are processed in several batches with a small delay inserted between
+ each batch in an attempt to avoid Javascript timeout errors. Set this property to the
+ number of markers to be processed in a single batch; select as high a number as you can
+ without causing a timeout error in the browser. This number might need to be as low as 100
+ if 15,000 markers are being managed, for example. The default value is
+ MarkerClusterer.BATCH_SIZE_IE
.
+
+
+
+
+
+ calculator
+
+
+ function
The function used to determine
+ the text to be displayed on a cluster marker and the index indicating which style to use
+ for the cluster marker. The input parameters for the function are (1) the array of markers
+ represented by a cluster marker and (2) the number of cluster icon styles. It returns a
+
+ ClusterIconInfo
object. The default calculator
returns a
+ text
property which is the number of markers in the cluster and an
+ index
property which is one higher than the lowest integer such that
+ 10^i
exceeds the number of markers in the cluster, or the size of the styles
+ array, whichever is less. The styles
array element used has an index of
+ index
minus 1. For example, the default calculator
returns a
+ text
value of "125"
and an index
of 3
+ for a cluster icon representing 125 markers so the element used in the styles
+ array is 2
. A calculator
may also return a title
+ property that contains the text of the tooltip to be used for the cluster marker. If
+ title
is not defined, the tooltip is set to the value of the title
+ property for the MarkerClusterer. The default value is MarkerClusterer.CALCULATOR
.
+
+
+
+
+
+ clusterClass
+
+
+ string
The name of the CSS class defining general styles
+ for the cluster markers. Use this class to define CSS styles that are not set up by the code
+ that processes the
+ styles
array. The default value is "cluster"
.
+
+
+
+
+
+ enableRetinaIcons
+
+
+ boolean
Whether to allow the use of cluster icons that
+have sizes that are some multiple (typically double) of their actual display size. Icons such
+as these look better when viewed on high-resolution monitors such as Apple's Retina displays.
+Note: if this property is
+ true
, sprites cannot be used as cluster icons. The default value is false
.
+
+
+
+
+
+ gridSize
+
+
+ number
The grid size of a cluster in pixels. The grid is a square. The default value is
+ 60
.
+
+
+
+
+
+ ignoreHidden
+
+
+ boolean
Whether to ignore hidden markers in clusters. You
+ may want to set this to
+ true
to ensure that hidden markers are not included
+ in the marker count that appears on a cluster marker (this count is the value of the
+ text
property of the result returned by the default calculator
).
+ If set to true
and you change the visibility of a marker being clustered, be
+ sure to also call MarkerClusterer.repaint()
. The default value is false
.
+
+
+
+
+
+ imageExtension
+
+
+ string
The extension name for the cluster icon image files (e.g.,
+ "png"
or
+ "jpg"
). The default value is MarkerClusterer.IMAGE_EXTENSION
.
+
+
+
+
+
+ imagePath
+
+
+ string
The full URL of the root name of the group of image files to use for cluster icons.
+ The complete file name is of the form
+ imagePath
n.imageExtension
+ where n is the image file number (1, 2, etc.). The default value is MarkerClusterer.IMAGE_PATH
.
+
+
+
+
+
+ imageSizes
+
+
+ Array
An array of numbers containing the widths of the group of
+
+ imagePath
n.imageExtension
image files.
+ (The images are assumed to be square.) The default value is MarkerClusterer.IMAGE_SIZES
.
+
+
+
+
+
+ maxZoom
+
+
+ number
The maximum zoom level at which clustering is enabled or
+
+ null
if clustering is to be enabled at all zoom levels. The default value is null
.
+
+
+
+
+
+ minimumClusterSize
+
+
+ number
The minimum number of markers needed in a cluster
+ before the markers are hidden and a cluster marker appears. The default value is
+ 2
.
+
+
+
+
+
+ styles
+
+
+ Array
An array of
+ ClusterIconStyle
elements defining the styles
+ of the cluster markers to be used. The element to be used to style a given cluster marker
+ is determined by the function defined by the calculator
property.
+ The default is an array of ClusterIconStyle
elements whose properties are derived
+ from the values for imagePath
, imageExtension
, and
+ imageSizes
.
+
+
+
+
+
+ title
+
+
+ string
The tooltip to display when the mouse moves over a cluster
+ marker. (Alternatively, you can use a custom
+ calculator
function to specify a
+ different tooltip for each cluster marker.) The default value is ""
.
+
+
+
+
+
+
+ zoomOnClick
+
+
+ boolean
Whether to zoom the map when a cluster marker is
+ clicked. You may want to set this to
+ false
if you have installed a handler
+ for the click
event and it deals with zooming on its own. The default value is true
.MarkerClustererPlus Examples
+
+
+
+
+ <script src="/path/to/markerclusterer.js" type="text/javascript"></script>
+
+
To use a marker clusterer, create a MarkerClusterer
object.
+ In the simplest case, just pass a map to it.
+var center = new google.maps.LatLng(37.4419, -122.1419); +var options = { + 'zoom': 13, + 'center': center, + 'mapTypeId': google.maps.MapTypeId.ROADMAP +}; + +var map = new google.maps.Map(document.getElementById("map"), options); +var mc = new MarkerClusterer(map); ++ +
You may also specify a number of options to fine-tune the marker + clusterer's performance. These options are passed via an object. +
+ ++var center = new google.maps.LatLng(37.4419, -122.1419); +var options = { + 'zoom': 13, + 'center': center, + 'mapTypeId': google.maps.MapTypeId.ROADMAP +}; + +var map = new google.maps.Map(document.getElementById("map"), options); + +var mcOptions = {gridSize: 50, maxZoom: 15}; +var mc = new MarkerClusterer(map, [], mcOptions); ++ +
Once you create a marker clusterer, you will want to add markers to it.
+ You can add markers using the
+ addMarker()
or addMarkers()
method or by
+ providing an array of markers to the constructor:
+var center = new google.maps.LatLng(37.4419, -122.1419); +var options = { + 'zoom': 13, + 'center': center, + 'mapTypeId': google.maps.MapTypeId.ROADMAP +}; + +var map = new google.maps.Map(document.getElementById("map"), options); + +var mcOptions = {gridSize: 50, maxZoom: 15}; +var markers = [...]; // Create the markers you want to add and collect them into an array. +var mc = new MarkerClusterer(map, markers, mcOptions); ++ +
This example will show 100 markers on a map.
+ ++var center = new google.maps.LatLng(37.4419, -122.1419); +var options = { + 'zoom': 13, + 'center': center, + 'mapTypeId': google.maps.MapTypeId.ROADMAP +}; + +var map = new google.maps.Map(document.getElementById("map"), options); + +var markers = []; +for (var i = 0; i < 100; i++) { + var latLng = new google.maps.LatLng(data.photos[i].latitude, + data.photos[i].longitude); + var marker = new google.maps.Marker({'position': latLng}); + markers.push(marker); +} +var markerCluster = new MarkerClusterer(map, markers); ++ +
View example (simple_example.html)
+ +With this example, you can test a marker clusterer with
+ different maximum zoom levels, grid sizes and styles, all the options.
View example + (advanced_example.html)
+ +This example compares adding markers with a + marker clusterer to the normal method of adding markers, and + display the time for each.
+View example + (speed_test_example.html)
+ +This example shows how to add event listeners to a + marker clusterer.
+View example + (events_example.html)
+ + \ No newline at end of file diff --git a/js/googleMapsMarkerClusterer/examples/advanced_example.html b/js/googleMapsMarkerClusterer/examples/advanced_example.html new file mode 100644 index 00000000..fcdeb95a --- /dev/null +++ b/js/googleMapsMarkerClusterer/examples/advanced_example.html @@ -0,0 +1,200 @@ + + + + ++ * This is an enhanced V3 implementation of the + * V2 MarkerClusterer by Xiaoxi Wu. It is based on the + * V3 MarkerClusterer port by Luke Mahe. MarkerClustererPlus was created by Gary Little. + *
+ * v2.0 release: MarkerClustererPlus v2.0 is backward compatible with MarkerClusterer v1.0. It
+ * adds support for the ignoreHidden
, title
, batchSizeIE
,
+ * and calculator
properties as well as support for four more events. It also allows
+ * greater control over the styling of the text that appears on the cluster marker. The
+ * documentation has been significantly improved and the overall code has been simplified and
+ * polished. Very large numbers of markers can now be managed without causing Javascript timeout
+ * errors on Internet Explorer. Note that the name of the clusterclick
event has been
+ * deprecated. The new name is click
, so please change your application code now.
+ */
+
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+/**
+ * @name ClusterIconStyle
+ * @class This class represents the object for values in the styles
array passed
+ * to the {@link MarkerClusterer} constructor. The element in this array that is used to
+ * style the cluster icon is determined by calling the calculator
function.
+ *
+ * @property {string} url The URL of the cluster icon image file. Required.
+ * @property {number} height The display height (in pixels) of the cluster icon. Required.
+ * @property {number} width The display width (in pixels) of the cluster icon. Required.
+ * @property {Array} [anchorText] The position (in pixels) from the center of the cluster icon to
+ * where the text label is to be centered and drawn. The format is [yoffset, xoffset]
+ * where yoffset
increases as you go down from center and xoffset
+ * increases to the right of center. The default is [0, 0]
.
+ * @property {Array} [anchorIcon] The anchor position (in pixels) of the cluster icon. This is the
+ * spot on the cluster icon that is to be aligned with the cluster position. The format is
+ * [yoffset, xoffset]
where yoffset
increases as you go down and
+ * xoffset
increases to the right of the top-left corner of the icon. The default
+ * anchor position is the center of the cluster icon.
+ * @property {string} [textColor="black"] The color of the label text shown on the
+ * cluster icon.
+ * @property {number} [textSize=11] The size (in pixels) of the label text shown on the
+ * cluster icon.
+ * @property {string} [textDecoration="none"] The value of the CSS text-decoration
+ * property for the label text shown on the cluster icon.
+ * @property {string} [fontWeight="bold"] The value of the CSS font-weight
+ * property for the label text shown on the cluster icon.
+ * @property {string} [fontStyle="normal"] The value of the CSS font-style
+ * property for the label text shown on the cluster icon.
+ * @property {string} [fontFamily="Arial,sans-serif"] The value of the CSS font-family
+ * property for the label text shown on the cluster icon.
+ * @property {string} [backgroundPosition="0 0"] The position of the cluster icon image
+ * within the image defined by url
. The format is "xpos ypos"
+ * (the same format as for the CSS background-position
property). You must set
+ * this property appropriately when the image defined by url
represents a sprite
+ * containing multiple images. Note that the position must be specified in px units.
+ */
+/**
+ * @name ClusterIconInfo
+ * @class This class is an object containing general information about a cluster icon. This is
+ * the object that a calculator
function returns.
+ *
+ * @property {string} text The text of the label to be shown on the cluster icon.
+ * @property {number} index The index plus 1 of the element in the styles
+ * array to be used to style the cluster icon.
+ * @property {string} title The tooltip to display when the mouse moves over the cluster icon.
+ * If this value is undefined
or ""
, title
is set to the
+ * value of the title
property passed to the MarkerClusterer.
+ */
+/**
+ * A cluster icon.
+ *
+ * @constructor
+ * @extends google.maps.OverlayView
+ * @param {Cluster} cluster The cluster with which the icon is to be associated.
+ * @param {Array} [styles] An array of {@link ClusterIconStyle} defining the cluster icons
+ * to use for various cluster sizes.
+ * @private
+ */
+function ClusterIcon(cluster, styles) {
+ cluster.getMarkerClusterer().extend(ClusterIcon, google.maps.OverlayView);
+
+ this.cluster_ = cluster;
+ this.className_ = cluster.getMarkerClusterer().getClusterClass();
+ this.styles_ = styles;
+ this.center_ = null;
+ this.div_ = null;
+ this.sums_ = null;
+ this.visible_ = false;
+
+ this.setMap(cluster.getMap()); // Note: this causes onAdd to be called
+}
+
+
+/**
+ * Adds the icon to the DOM.
+ */
+ClusterIcon.prototype.onAdd = function () {
+ var cClusterIcon = this;
+ var cMouseDownInCluster;
+ var cDraggingMapByCluster;
+
+ this.div_ = document.createElement("div");
+ this.div_.className = this.className_;
+ if (this.visible_) {
+ this.show();
+ }
+
+ this.getPanes().overlayMouseTarget.appendChild(this.div_);
+
+ // Fix for Issue 157
+ this.boundsChangedListener_ = google.maps.event.addListener(this.getMap(), "bounds_changed", function () {
+ cDraggingMapByCluster = cMouseDownInCluster;
+ });
+
+ google.maps.event.addDomListener(this.div_, "mousedown", function () {
+ cMouseDownInCluster = true;
+ cDraggingMapByCluster = false;
+ });
+
+ google.maps.event.addDomListener(this.div_, "click", function (e) {
+ cMouseDownInCluster = false;
+ if (!cDraggingMapByCluster) {
+ var theBounds;
+ var mz;
+ var mc = cClusterIcon.cluster_.getMarkerClusterer();
+ /**
+ * This event is fired when a cluster marker is clicked.
+ * @name MarkerClusterer#click
+ * @param {Cluster} c The cluster that was clicked.
+ * @event
+ */
+ google.maps.event.trigger(mc, "click", cClusterIcon.cluster_);
+ google.maps.event.trigger(mc, "clusterclick", cClusterIcon.cluster_); // deprecated name
+
+ // The default click handler follows. Disable it by setting
+ // the zoomOnClick property to false.
+ if (mc.getZoomOnClick()) {
+ // Zoom into the cluster.
+ mz = mc.getMaxZoom();
+ theBounds = cClusterIcon.cluster_.getBounds();
+ mc.getMap().fitBounds(theBounds);
+ // There is a fix for Issue 170 here:
+ setTimeout(function () {
+ mc.getMap().fitBounds(theBounds);
+ // Don't zoom beyond the max zoom level
+ if (mz !== null && (mc.getMap().getZoom() > mz)) {
+ mc.getMap().setZoom(mz + 1);
+ }
+ }, 100);
+ }
+
+ // Prevent event propagation to the map:
+ e.cancelBubble = true;
+ if (e.stopPropagation) {
+ e.stopPropagation();
+ }
+ }
+ });
+
+ google.maps.event.addDomListener(this.div_, "mouseover", function () {
+ var mc = cClusterIcon.cluster_.getMarkerClusterer();
+ /**
+ * This event is fired when the mouse moves over a cluster marker.
+ * @name MarkerClusterer#mouseover
+ * @param {Cluster} c The cluster that the mouse moved over.
+ * @event
+ */
+ google.maps.event.trigger(mc, "mouseover", cClusterIcon.cluster_);
+ });
+
+ google.maps.event.addDomListener(this.div_, "mouseout", function () {
+ var mc = cClusterIcon.cluster_.getMarkerClusterer();
+ /**
+ * This event is fired when the mouse moves out of a cluster marker.
+ * @name MarkerClusterer#mouseout
+ * @param {Cluster} c The cluster that the mouse moved out of.
+ * @event
+ */
+ google.maps.event.trigger(mc, "mouseout", cClusterIcon.cluster_);
+ });
+};
+
+
+/**
+ * Removes the icon from the DOM.
+ */
+ClusterIcon.prototype.onRemove = function () {
+ if (this.div_ && this.div_.parentNode) {
+ this.hide();
+ google.maps.event.removeListener(this.boundsChangedListener_);
+ google.maps.event.clearInstanceListeners(this.div_);
+ this.div_.parentNode.removeChild(this.div_);
+ this.div_ = null;
+ }
+};
+
+
+/**
+ * Draws the icon.
+ */
+ClusterIcon.prototype.draw = function () {
+ if (this.visible_) {
+ var pos = this.getPosFromLatLng_(this.center_);
+ this.div_.style.top = pos.y + "px";
+ this.div_.style.left = pos.x + "px";
+ }
+};
+
+
+/**
+ * Hides the icon.
+ */
+ClusterIcon.prototype.hide = function () {
+ if (this.div_) {
+ this.div_.style.display = "none";
+ }
+ this.visible_ = false;
+};
+
+
+/**
+ * Positions and shows the icon.
+ */
+ClusterIcon.prototype.show = function () {
+ if (this.div_) {
+ var img = "";
+ // NOTE: values must be specified in px units
+ var bp = this.backgroundPosition_.split(" ");
+ var spriteH = parseInt(bp[0].replace(/^\s+|\s+$/g, ""), 10);
+ var spriteV = parseInt(bp[1].replace(/^\s+|\s+$/g, ""), 10);
+ var pos = this.getPosFromLatLng_(this.center_);
+ this.div_.style.cssText = this.createCss(pos);
+ img = "";
+ this.div_.innerHTML = img + "
MarkerClusterer
object with which this
+ * cluster is associated.
+ */
+function Cluster(mc) {
+ this.markerClusterer_ = mc;
+ this.map_ = mc.getMap();
+ this.gridSize_ = mc.getGridSize();
+ this.minClusterSize_ = mc.getMinimumClusterSize();
+ this.averageCenter_ = mc.getAverageCenter();
+ this.markers_ = [];
+ this.center_ = null;
+ this.bounds_ = null;
+ this.clusterIcon_ = new ClusterIcon(this, mc.getStyles());
+}
+
+
+/**
+ * Returns the number of markers managed by the cluster. You can call this from
+ * a click
, mouseover
, or mouseout
event handler
+ * for the MarkerClusterer
object.
+ *
+ * @return {number} The number of markers in the cluster.
+ */
+Cluster.prototype.getSize = function () {
+ return this.markers_.length;
+};
+
+
+/**
+ * Returns the array of markers managed by the cluster. You can call this from
+ * a click
, mouseover
, or mouseout
event handler
+ * for the MarkerClusterer
object.
+ *
+ * @return {Array} The array of markers in the cluster.
+ */
+Cluster.prototype.getMarkers = function () {
+ return this.markers_;
+};
+
+
+/**
+ * Returns the center of the cluster. You can call this from
+ * a click
, mouseover
, or mouseout
event handler
+ * for the MarkerClusterer
object.
+ *
+ * @return {google.maps.LatLng} The center of the cluster.
+ */
+Cluster.prototype.getCenter = function () {
+ return this.center_;
+};
+
+
+/**
+ * Returns the map with which the cluster is associated.
+ *
+ * @return {google.maps.Map} The map.
+ * @ignore
+ */
+Cluster.prototype.getMap = function () {
+ return this.map_;
+};
+
+
+/**
+ * Returns the MarkerClusterer
object with which the cluster is associated.
+ *
+ * @return {MarkerClusterer} The associated marker clusterer.
+ * @ignore
+ */
+Cluster.prototype.getMarkerClusterer = function () {
+ return this.markerClusterer_;
+};
+
+
+/**
+ * Returns the bounds of the cluster.
+ *
+ * @return {google.maps.LatLngBounds} the cluster bounds.
+ * @ignore
+ */
+Cluster.prototype.getBounds = function () {
+ var i;
+ var bounds = new google.maps.LatLngBounds(this.center_, this.center_);
+ var markers = this.getMarkers();
+ for (i = 0; i < markers.length; i++) {
+ bounds.extend(markers[i].getPosition());
+ }
+ return bounds;
+};
+
+
+/**
+ * Removes the cluster from the map.
+ *
+ * @ignore
+ */
+Cluster.prototype.remove = function () {
+ this.clusterIcon_.setMap(null);
+ this.markers_ = [];
+ delete this.markers_;
+};
+
+
+/**
+ * Adds a marker to the cluster.
+ *
+ * @param {google.maps.Marker} marker The marker to be added.
+ * @return {boolean} True if the marker was added.
+ * @ignore
+ */
+Cluster.prototype.addMarker = function (marker) {
+ var i;
+ var mCount;
+ var mz;
+
+ if (this.isMarkerAlreadyAdded_(marker)) {
+ return false;
+ }
+
+ if (!this.center_) {
+ this.center_ = marker.getPosition();
+ this.calculateBounds_();
+ } else {
+ if (this.averageCenter_) {
+ var l = this.markers_.length + 1;
+ var lat = (this.center_.lat() * (l - 1) + marker.getPosition().lat()) / l;
+ var lng = (this.center_.lng() * (l - 1) + marker.getPosition().lng()) / l;
+ this.center_ = new google.maps.LatLng(lat, lng);
+ this.calculateBounds_();
+ }
+ }
+
+ marker.isAdded = true;
+ this.markers_.push(marker);
+
+ mCount = this.markers_.length;
+ mz = this.markerClusterer_.getMaxZoom();
+ if (mz !== null && this.map_.getZoom() > mz) {
+ // Zoomed in past max zoom, so show the marker.
+ if (marker.getMap() !== this.map_) {
+ marker.setMap(this.map_);
+ }
+ } else if (mCount < this.minClusterSize_) {
+ // Min cluster size not reached so show the marker.
+ if (marker.getMap() !== this.map_) {
+ marker.setMap(this.map_);
+ }
+ } else if (mCount === this.minClusterSize_) {
+ // Hide the markers that were showing.
+ for (i = 0; i < mCount; i++) {
+ this.markers_[i].setMap(null);
+ }
+ } else {
+ marker.setMap(null);
+ }
+
+ this.updateIcon_();
+ return true;
+};
+
+
+/**
+ * Determines if a marker lies within the cluster's bounds.
+ *
+ * @param {google.maps.Marker} marker The marker to check.
+ * @return {boolean} True if the marker lies in the bounds.
+ * @ignore
+ */
+Cluster.prototype.isMarkerInClusterBounds = function (marker) {
+ return this.bounds_.contains(marker.getPosition());
+};
+
+
+/**
+ * Calculates the extended bounds of the cluster with the grid.
+ */
+Cluster.prototype.calculateBounds_ = function () {
+ var bounds = new google.maps.LatLngBounds(this.center_, this.center_);
+ this.bounds_ = this.markerClusterer_.getExtendedBounds(bounds);
+};
+
+
+/**
+ * Updates the cluster icon.
+ */
+Cluster.prototype.updateIcon_ = function () {
+ var mCount = this.markers_.length;
+ var mz = this.markerClusterer_.getMaxZoom();
+
+ if (mz !== null && this.map_.getZoom() > mz) {
+ this.clusterIcon_.hide();
+ return;
+ }
+
+ if (mCount < this.minClusterSize_) {
+ // Min cluster size not yet reached.
+ this.clusterIcon_.hide();
+ return;
+ }
+
+ var numStyles = this.markerClusterer_.getStyles().length;
+ var sums = this.markerClusterer_.getCalculator()(this.markers_, numStyles);
+ this.clusterIcon_.setCenter(this.center_);
+ this.clusterIcon_.useStyle(sums);
+ this.clusterIcon_.show();
+};
+
+
+/**
+ * Determines if a marker has already been added to the cluster.
+ *
+ * @param {google.maps.Marker} marker The marker to check.
+ * @return {boolean} True if the marker has already been added.
+ */
+Cluster.prototype.isMarkerAlreadyAdded_ = function (marker) {
+ var i;
+ if (this.markers_.indexOf) {
+ return this.markers_.indexOf(marker) !== -1;
+ } else {
+ for (i = 0; i < this.markers_.length; i++) {
+ if (marker === this.markers_[i]) {
+ return true;
+ }
+ }
+ }
+ return false;
+};
+
+
+/**
+ * @name MarkerClustererOptions
+ * @class This class represents the optional parameter passed to
+ * the {@link MarkerClusterer} constructor.
+ * @property {number} [gridSize=60] The grid size of a cluster in pixels. The grid is a square.
+ * @property {number} [maxZoom=null] The maximum zoom level at which clustering is enabled or
+ * null
if clustering is to be enabled at all zoom levels.
+ * @property {boolean} [zoomOnClick=true] Whether to zoom the map when a cluster marker is
+ * clicked. You may want to set this to false
if you have installed a handler
+ * for the click
event and it deals with zooming on its own.
+ * @property {boolean} [averageCenter=false] Whether the position of a cluster marker should be
+ * the average position of all markers in the cluster. If set to false
, the
+ * cluster marker is positioned at the location of the first marker added to the cluster.
+ * @property {number} [minimumClusterSize=2] The minimum number of markers needed in a cluster
+ * before the markers are hidden and a cluster marker appears.
+ * @property {boolean} [ignoreHidden=false] Whether to ignore hidden markers in clusters. You
+ * may want to set this to true
to ensure that hidden markers are not included
+ * in the marker count that appears on a cluster marker (this count is the value of the
+ * text
property of the result returned by the default calculator
).
+ * If set to true
and you change the visibility of a marker being clustered, be
+ * sure to also call MarkerClusterer.repaint()
.
+ * @property {string} [title=""] The tooltip to display when the mouse moves over a cluster
+ * marker. (Alternatively, you can use a custom calculator
function to specify a
+ * different tooltip for each cluster marker.)
+ * @property {function} [calculator=MarkerClusterer.CALCULATOR] The function used to determine
+ * the text to be displayed on a cluster marker and the index indicating which style to use
+ * for the cluster marker. The input parameters for the function are (1) the array of markers
+ * represented by a cluster marker and (2) the number of cluster icon styles. It returns a
+ * {@link ClusterIconInfo} object. The default calculator
returns a
+ * text
property which is the number of markers in the cluster and an
+ * index
property which is one higher than the lowest integer such that
+ * 10^i
exceeds the number of markers in the cluster, or the size of the styles
+ * array, whichever is less. The styles
array element used has an index of
+ * index
minus 1. For example, the default calculator
returns a
+ * text
value of "125"
and an index
of 3
+ * for a cluster icon representing 125 markers so the element used in the styles
+ * array is 2
. A calculator
may also return a title
+ * property that contains the text of the tooltip to be used for the cluster marker. If
+ * title
is not defined, the tooltip is set to the value of the title
+ * property for the MarkerClusterer.
+ * @property {string} [clusterClass="cluster"] The name of the CSS class defining general styles
+ * for the cluster markers. Use this class to define CSS styles that are not set up by the code
+ * that processes the styles
array.
+ * @property {Array} [styles] An array of {@link ClusterIconStyle} elements defining the styles
+ * of the cluster markers to be used. The element to be used to style a given cluster marker
+ * is determined by the function defined by the calculator
property.
+ * The default is an array of {@link ClusterIconStyle} elements whose properties are derived
+ * from the values for imagePath
, imageExtension
, and
+ * imageSizes
.
+ * @property {boolean} [enableRetinaIcons=false] Whether to allow the use of cluster icons that
+ * have sizes that are some multiple (typically double) of their actual display size. Icons such
+ * as these look better when viewed on high-resolution monitors such as Apple's Retina displays.
+ * Note: if this property is true
, sprites cannot be used as cluster icons.
+ * @property {number} [batchSize=MarkerClusterer.BATCH_SIZE] Set this property to the
+ * number of markers to be processed in a single batch when using a browser other than
+ * Internet Explorer (for Internet Explorer, use the batchSizeIE property instead).
+ * @property {number} [batchSizeIE=MarkerClusterer.BATCH_SIZE_IE] When Internet Explorer is
+ * being used, markers are processed in several batches with a small delay inserted between
+ * each batch in an attempt to avoid Javascript timeout errors. Set this property to the
+ * number of markers to be processed in a single batch; select as high a number as you can
+ * without causing a timeout error in the browser. This number might need to be as low as 100
+ * if 15,000 markers are being managed, for example.
+ * @property {string} [imagePath=MarkerClusterer.IMAGE_PATH]
+ * The full URL of the root name of the group of image files to use for cluster icons.
+ * The complete file name is of the form imagePath
n.imageExtension
+ * where n is the image file number (1, 2, etc.).
+ * @property {string} [imageExtension=MarkerClusterer.IMAGE_EXTENSION]
+ * The extension name for the cluster icon image files (e.g., "png"
or
+ * "jpg"
).
+ * @property {Array} [imageSizes=MarkerClusterer.IMAGE_SIZES]
+ * An array of numbers containing the widths of the group of
+ * imagePath
n.imageExtension
image files.
+ * (The images are assumed to be square.)
+ */
+/**
+ * Creates a MarkerClusterer object with the options specified in {@link MarkerClustererOptions}.
+ * @constructor
+ * @extends google.maps.OverlayView
+ * @param {google.maps.Map} map The Google map to attach to.
+ * @param {Array.gridSize
property.
+ *
+ * @return {number} The grid size.
+ */
+MarkerClusterer.prototype.getGridSize = function () {
+ return this.gridSize_;
+};
+
+
+/**
+ * Sets the value of the gridSize
property.
+ *
+ * @param {number} gridSize The grid size.
+ */
+MarkerClusterer.prototype.setGridSize = function (gridSize) {
+ this.gridSize_ = gridSize;
+};
+
+
+/**
+ * Returns the value of the minimumClusterSize
property.
+ *
+ * @return {number} The minimum cluster size.
+ */
+MarkerClusterer.prototype.getMinimumClusterSize = function () {
+ return this.minClusterSize_;
+};
+
+/**
+ * Sets the value of the minimumClusterSize
property.
+ *
+ * @param {number} minimumClusterSize The minimum cluster size.
+ */
+MarkerClusterer.prototype.setMinimumClusterSize = function (minimumClusterSize) {
+ this.minClusterSize_ = minimumClusterSize;
+};
+
+
+/**
+ * Returns the value of the maxZoom
property.
+ *
+ * @return {number} The maximum zoom level.
+ */
+MarkerClusterer.prototype.getMaxZoom = function () {
+ return this.maxZoom_;
+};
+
+
+/**
+ * Sets the value of the maxZoom
property.
+ *
+ * @param {number} maxZoom The maximum zoom level.
+ */
+MarkerClusterer.prototype.setMaxZoom = function (maxZoom) {
+ this.maxZoom_ = maxZoom;
+};
+
+
+/**
+ * Returns the value of the styles
property.
+ *
+ * @return {Array} The array of styles defining the cluster markers to be used.
+ */
+MarkerClusterer.prototype.getStyles = function () {
+ return this.styles_;
+};
+
+
+/**
+ * Sets the value of the styles
property.
+ *
+ * @param {Array.title
property.
+ *
+ * @return {string} The content of the title text.
+ */
+MarkerClusterer.prototype.getTitle = function () {
+ return this.title_;
+};
+
+
+/**
+ * Sets the value of the title
property.
+ *
+ * @param {string} title The value of the title property.
+ */
+MarkerClusterer.prototype.setTitle = function (title) {
+ this.title_ = title;
+};
+
+
+/**
+ * Returns the value of the zoomOnClick
property.
+ *
+ * @return {boolean} True if zoomOnClick property is set.
+ */
+MarkerClusterer.prototype.getZoomOnClick = function () {
+ return this.zoomOnClick_;
+};
+
+
+/**
+ * Sets the value of the zoomOnClick
property.
+ *
+ * @param {boolean} zoomOnClick The value of the zoomOnClick property.
+ */
+MarkerClusterer.prototype.setZoomOnClick = function (zoomOnClick) {
+ this.zoomOnClick_ = zoomOnClick;
+};
+
+
+/**
+ * Returns the value of the averageCenter
property.
+ *
+ * @return {boolean} True if averageCenter property is set.
+ */
+MarkerClusterer.prototype.getAverageCenter = function () {
+ return this.averageCenter_;
+};
+
+
+/**
+ * Sets the value of the averageCenter
property.
+ *
+ * @param {boolean} averageCenter The value of the averageCenter property.
+ */
+MarkerClusterer.prototype.setAverageCenter = function (averageCenter) {
+ this.averageCenter_ = averageCenter;
+};
+
+
+/**
+ * Returns the value of the ignoreHidden
property.
+ *
+ * @return {boolean} True if ignoreHidden property is set.
+ */
+MarkerClusterer.prototype.getIgnoreHidden = function () {
+ return this.ignoreHidden_;
+};
+
+
+/**
+ * Sets the value of the ignoreHidden
property.
+ *
+ * @param {boolean} ignoreHidden The value of the ignoreHidden property.
+ */
+MarkerClusterer.prototype.setIgnoreHidden = function (ignoreHidden) {
+ this.ignoreHidden_ = ignoreHidden;
+};
+
+
+/**
+ * Returns the value of the enableRetinaIcons
property.
+ *
+ * @return {boolean} True if enableRetinaIcons property is set.
+ */
+MarkerClusterer.prototype.getEnableRetinaIcons = function () {
+ return this.enableRetinaIcons_;
+};
+
+
+/**
+ * Sets the value of the enableRetinaIcons
property.
+ *
+ * @param {boolean} enableRetinaIcons The value of the enableRetinaIcons property.
+ */
+MarkerClusterer.prototype.setEnableRetinaIcons = function (enableRetinaIcons) {
+ this.enableRetinaIcons_ = enableRetinaIcons;
+};
+
+
+/**
+ * Returns the value of the imageExtension
property.
+ *
+ * @return {string} The value of the imageExtension property.
+ */
+MarkerClusterer.prototype.getImageExtension = function () {
+ return this.imageExtension_;
+};
+
+
+/**
+ * Sets the value of the imageExtension
property.
+ *
+ * @param {string} imageExtension The value of the imageExtension property.
+ */
+MarkerClusterer.prototype.setImageExtension = function (imageExtension) {
+ this.imageExtension_ = imageExtension;
+};
+
+
+/**
+ * Returns the value of the imagePath
property.
+ *
+ * @return {string} The value of the imagePath property.
+ */
+MarkerClusterer.prototype.getImagePath = function () {
+ return this.imagePath_;
+};
+
+
+/**
+ * Sets the value of the imagePath
property.
+ *
+ * @param {string} imagePath The value of the imagePath property.
+ */
+MarkerClusterer.prototype.setImagePath = function (imagePath) {
+ this.imagePath_ = imagePath;
+};
+
+
+/**
+ * Returns the value of the imageSizes
property.
+ *
+ * @return {Array} The value of the imageSizes property.
+ */
+MarkerClusterer.prototype.getImageSizes = function () {
+ return this.imageSizes_;
+};
+
+
+/**
+ * Sets the value of the imageSizes
property.
+ *
+ * @param {Array} imageSizes The value of the imageSizes property.
+ */
+MarkerClusterer.prototype.setImageSizes = function (imageSizes) {
+ this.imageSizes_ = imageSizes;
+};
+
+
+/**
+ * Returns the value of the calculator
property.
+ *
+ * @return {function} the value of the calculator property.
+ */
+MarkerClusterer.prototype.getCalculator = function () {
+ return this.calculator_;
+};
+
+
+/**
+ * Sets the value of the calculator
property.
+ *
+ * @param {function(Array.batchSizeIE
property.
+ *
+ * @return {number} the value of the batchSizeIE property.
+ */
+MarkerClusterer.prototype.getBatchSizeIE = function () {
+ return this.batchSizeIE_;
+};
+
+
+/**
+ * Sets the value of the batchSizeIE
property.
+ *
+ * @param {number} batchSizeIE The value of the batchSizeIE property.
+ */
+MarkerClusterer.prototype.setBatchSizeIE = function (batchSizeIE) {
+ this.batchSizeIE_ = batchSizeIE;
+};
+
+
+/**
+ * Returns the value of the clusterClass
property.
+ *
+ * @return {string} the value of the clusterClass property.
+ */
+MarkerClusterer.prototype.getClusterClass = function () {
+ return this.clusterClass_;
+};
+
+
+/**
+ * Sets the value of the clusterClass
property.
+ *
+ * @param {string} clusterClass The value of the clusterClass property.
+ */
+MarkerClusterer.prototype.setClusterClass = function (clusterClass) {
+ this.clusterClass_ = clusterClass;
+};
+
+
+/**
+ * Returns the array of markers managed by the clusterer.
+ *
+ * @return {Array} The array of markers managed by the clusterer.
+ */
+MarkerClusterer.prototype.getMarkers = function () {
+ return this.markers_;
+};
+
+
+/**
+ * Returns the number of markers managed by the clusterer.
+ *
+ * @return {number} The number of markers.
+ */
+MarkerClusterer.prototype.getTotalMarkers = function () {
+ return this.markers_.length;
+};
+
+
+/**
+ * Returns the current array of clusters formed by the clusterer.
+ *
+ * @return {Array} The array of clusters formed by the clusterer.
+ */
+MarkerClusterer.prototype.getClusters = function () {
+ return this.clusters_;
+};
+
+
+/**
+ * Returns the number of clusters formed by the clusterer.
+ *
+ * @return {number} The number of clusters formed by the clusterer.
+ */
+MarkerClusterer.prototype.getTotalClusters = function () {
+ return this.clusters_.length;
+};
+
+
+/**
+ * Adds a marker to the clusterer. The clusters are redrawn unless
+ * opt_nodraw
is set to true
.
+ *
+ * @param {google.maps.Marker} marker The marker to add.
+ * @param {boolean} [opt_nodraw] Set to true
to prevent redrawing.
+ */
+MarkerClusterer.prototype.addMarker = function (marker, opt_nodraw) {
+ this.pushMarkerTo_(marker);
+ if (!opt_nodraw) {
+ this.redraw_();
+ }
+};
+
+
+/**
+ * Adds an array of markers to the clusterer. The clusters are redrawn unless
+ * opt_nodraw
is set to true
.
+ *
+ * @param {Array.true
to prevent redrawing.
+ */
+MarkerClusterer.prototype.addMarkers = function (markers, opt_nodraw) {
+ var key;
+ for (key in markers) {
+ if (markers.hasOwnProperty(key)) {
+ this.pushMarkerTo_(markers[key]);
+ }
+ }
+ if (!opt_nodraw) {
+ this.redraw_();
+ }
+};
+
+
+/**
+ * Pushes a marker to the clusterer.
+ *
+ * @param {google.maps.Marker} marker The marker to add.
+ */
+MarkerClusterer.prototype.pushMarkerTo_ = function (marker) {
+ // If the marker is draggable add a listener so we can update the clusters on the dragend:
+ if (marker.getDraggable()) {
+ var cMarkerClusterer = this;
+ google.maps.event.addListener(marker, "dragend", function () {
+ if (cMarkerClusterer.ready_) {
+ this.isAdded = false;
+ cMarkerClusterer.repaint();
+ }
+ });
+ }
+ marker.isAdded = false;
+ this.markers_.push(marker);
+};
+
+
+/**
+ * Removes a marker from the cluster. The clusters are redrawn unless
+ * opt_nodraw
is set to true
. Returns true
if the
+ * marker was removed from the clusterer.
+ *
+ * @param {google.maps.Marker} marker The marker to remove.
+ * @param {boolean} [opt_nodraw] Set to true
to prevent redrawing.
+ * @return {boolean} True if the marker was removed from the clusterer.
+ */
+MarkerClusterer.prototype.removeMarker = function (marker, opt_nodraw) {
+ var removed = this.removeMarker_(marker);
+
+ if (!opt_nodraw && removed) {
+ this.repaint();
+ }
+
+ return removed;
+};
+
+
+/**
+ * Removes an array of markers from the cluster. The clusters are redrawn unless
+ * opt_nodraw
is set to true
. Returns true
if markers
+ * were removed from the clusterer.
+ *
+ * @param {Array.true
to prevent redrawing.
+ * @return {boolean} True if markers were removed from the clusterer.
+ */
+MarkerClusterer.prototype.removeMarkers = function (markers, opt_nodraw) {
+ var i, r;
+ var removed = false;
+
+ for (i = 0; i < markers.length; i++) {
+ r = this.removeMarker_(markers[i]);
+ removed = removed || r;
+ }
+
+ if (!opt_nodraw && removed) {
+ this.repaint();
+ }
+
+ return removed;
+};
+
+
+/**
+ * Removes a marker and returns true if removed, false if not.
+ *
+ * @param {google.maps.Marker} marker The marker to remove
+ * @return {boolean} Whether the marker was removed or not
+ */
+MarkerClusterer.prototype.removeMarker_ = function (marker) {
+ var i;
+ var index = -1;
+ if (this.markers_.indexOf) {
+ index = this.markers_.indexOf(marker);
+ } else {
+ for (i = 0; i < this.markers_.length; i++) {
+ if (marker === this.markers_[i]) {
+ index = i;
+ break;
+ }
+ }
+ }
+
+ if (index === -1) {
+ // Marker is not in our list of markers, so do nothing:
+ return false;
+ }
+
+ marker.setMap(null);
+ this.markers_.splice(index, 1); // Remove the marker from the list of managed markers
+ return true;
+};
+
+
+/**
+ * Removes all clusters and markers from the map and also removes all markers
+ * managed by the clusterer.
+ */
+MarkerClusterer.prototype.clearMarkers = function () {
+ this.resetViewport_(true);
+ this.markers_ = [];
+};
+
+
+/**
+ * Recalculates and redraws all the marker clusters from scratch.
+ * Call this after changing any properties.
+ */
+MarkerClusterer.prototype.repaint = function () {
+ var oldClusters = this.clusters_.slice();
+ this.clusters_ = [];
+ this.resetViewport_(false);
+ this.redraw_();
+
+ // Remove the old clusters.
+ // Do it in a timeout to prevent blinking effect.
+ setTimeout(function () {
+ var i;
+ for (i = 0; i < oldClusters.length; i++) {
+ oldClusters[i].remove();
+ }
+ }, 0);
+};
+
+
+/**
+ * Returns the current bounds extended by the grid size.
+ *
+ * @param {google.maps.LatLngBounds} bounds The bounds to extend.
+ * @return {google.maps.LatLngBounds} The extended bounds.
+ * @ignore
+ */
+MarkerClusterer.prototype.getExtendedBounds = function (bounds) {
+ var projection = this.getProjection();
+
+ // Turn the bounds into latlng.
+ var tr = new google.maps.LatLng(bounds.getNorthEast().lat(),
+ bounds.getNorthEast().lng());
+ var bl = new google.maps.LatLng(bounds.getSouthWest().lat(),
+ bounds.getSouthWest().lng());
+
+ // Convert the points to pixels and the extend out by the grid size.
+ var trPix = projection.fromLatLngToDivPixel(tr);
+ trPix.x += this.gridSize_;
+ trPix.y -= this.gridSize_;
+
+ var blPix = projection.fromLatLngToDivPixel(bl);
+ blPix.x -= this.gridSize_;
+ blPix.y += this.gridSize_;
+
+ // Convert the pixel points back to LatLng
+ var ne = projection.fromDivPixelToLatLng(trPix);
+ var sw = projection.fromDivPixelToLatLng(blPix);
+
+ // Extend the bounds to contain the new bounds.
+ bounds.extend(ne);
+ bounds.extend(sw);
+
+ return bounds;
+};
+
+
+/**
+ * Redraws all the clusters.
+ */
+MarkerClusterer.prototype.redraw_ = function () {
+ this.createClusters_(0);
+};
+
+
+/**
+ * Removes all clusters from the map. The markers are also removed from the map
+ * if opt_hide
is set to true
.
+ *
+ * @param {boolean} [opt_hide] Set to true
to also remove the markers
+ * from the map.
+ */
+MarkerClusterer.prototype.resetViewport_ = function (opt_hide) {
+ var i, marker;
+ // Remove all the clusters
+ for (i = 0; i < this.clusters_.length; i++) {
+ this.clusters_[i].remove();
+ }
+ this.clusters_ = [];
+
+ // Reset the markers to not be added and to be removed from the map.
+ for (i = 0; i < this.markers_.length; i++) {
+ marker = this.markers_[i];
+ marker.isAdded = false;
+ if (opt_hide) {
+ marker.setMap(null);
+ }
+ }
+};
+
+
+/**
+ * Calculates the distance between two latlng locations in km.
+ *
+ * @param {google.maps.LatLng} p1 The first lat lng point.
+ * @param {google.maps.LatLng} p2 The second lat lng point.
+ * @return {number} The distance between the two points in km.
+ * @see http://www.movable-type.co.uk/scripts/latlong.html
+*/
+MarkerClusterer.prototype.distanceBetweenPoints_ = function (p1, p2) {
+ var R = 6371; // Radius of the Earth in km
+ var dLat = (p2.lat() - p1.lat()) * Math.PI / 180;
+ var dLon = (p2.lng() - p1.lng()) * Math.PI / 180;
+ var a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
+ Math.cos(p1.lat() * Math.PI / 180) * Math.cos(p2.lat() * Math.PI / 180) *
+ Math.sin(dLon / 2) * Math.sin(dLon / 2);
+ var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
+ var d = R * c;
+ return d;
+};
+
+
+/**
+ * Determines if a marker is contained in a bounds.
+ *
+ * @param {google.maps.Marker} marker The marker to check.
+ * @param {google.maps.LatLngBounds} bounds The bounds to check against.
+ * @return {boolean} True if the marker is in the bounds.
+ */
+MarkerClusterer.prototype.isMarkerInBounds_ = function (marker, bounds) {
+ return bounds.contains(marker.getPosition());
+};
+
+
+/**
+ * Adds a marker to a cluster, or creates a new cluster.
+ *
+ * @param {google.maps.Marker} marker The marker to add.
+ */
+MarkerClusterer.prototype.addToClosestCluster_ = function (marker) {
+ var i, d, cluster, center;
+ var distance = 40000; // Some large number
+ var clusterToAddTo = null;
+ for (i = 0; i < this.clusters_.length; i++) {
+ cluster = this.clusters_[i];
+ center = cluster.getCenter();
+ if (center) {
+ d = this.distanceBetweenPoints_(center, marker.getPosition());
+ if (d < distance) {
+ distance = d;
+ clusterToAddTo = cluster;
+ }
+ }
+ }
+
+ if (clusterToAddTo && clusterToAddTo.isMarkerInClusterBounds(marker)) {
+ clusterToAddTo.addMarker(marker);
+ } else {
+ cluster = new Cluster(this);
+ cluster.addMarker(marker);
+ this.clusters_.push(cluster);
+ }
+};
+
+
+/**
+ * Creates the clusters. This is done in batches to avoid timeout errors
+ * in some browsers when there is a huge number of markers.
+ *
+ * @param {number} iFirst The index of the first marker in the batch of
+ * markers to be added to clusters.
+ */
+MarkerClusterer.prototype.createClusters_ = function (iFirst) {
+ var i, marker;
+ var mapBounds;
+ var cMarkerClusterer = this;
+ if (!this.ready_) {
+ return;
+ }
+
+ // Cancel previous batch processing if we're working on the first batch:
+ if (iFirst === 0) {
+ /**
+ * This event is fired when the MarkerClusterer
begins
+ * clustering markers.
+ * @name MarkerClusterer#clusteringbegin
+ * @param {MarkerClusterer} mc The MarkerClusterer whose markers are being clustered.
+ * @event
+ */
+ google.maps.event.trigger(this, "clusteringbegin", this);
+
+ if (typeof this.timerRefStatic !== "undefined") {
+ clearTimeout(this.timerRefStatic);
+ delete this.timerRefStatic;
+ }
+ }
+
+ // Get our current map view bounds.
+ // Create a new bounds object so we don't affect the map.
+ //
+ // See Comments 9 & 11 on Issue 3651 relating to this workaround for a Google Maps bug:
+ if (this.getMap().getZoom() > 3) {
+ mapBounds = new google.maps.LatLngBounds(this.getMap().getBounds().getSouthWest(),
+ this.getMap().getBounds().getNorthEast());
+ } else {
+ mapBounds = new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472, -178.48388434375), new google.maps.LatLng(-85.08136444384544, 178.00048865625));
+ }
+ var bounds = this.getExtendedBounds(mapBounds);
+
+ var iLast = Math.min(iFirst + this.batchSize_, this.markers_.length);
+
+ for (i = iFirst; i < iLast; i++) {
+ marker = this.markers_[i];
+ if (!marker.isAdded && this.isMarkerInBounds_(marker, bounds)) {
+ if (!this.ignoreHidden_ || (this.ignoreHidden_ && marker.getVisible())) {
+ this.addToClosestCluster_(marker);
+ }
+ }
+ }
+
+ if (iLast < this.markers_.length) {
+ this.timerRefStatic = setTimeout(function () {
+ cMarkerClusterer.createClusters_(iLast);
+ }, 0);
+ } else {
+ delete this.timerRefStatic;
+
+ /**
+ * This event is fired when the MarkerClusterer
stops
+ * clustering markers.
+ * @name MarkerClusterer#clusteringend
+ * @param {MarkerClusterer} mc The MarkerClusterer whose markers are being clustered.
+ * @event
+ */
+ google.maps.event.trigger(this, "clusteringend", this);
+ }
+};
+
+
+/**
+ * Extends an object's prototype by another's.
+ *
+ * @param {Object} obj1 The object to be extended.
+ * @param {Object} obj2 The object to extend with.
+ * @return {Object} The new extended object.
+ * @ignore
+ */
+MarkerClusterer.prototype.extend = function (obj1, obj2) {
+ return (function (object) {
+ var property;
+ for (property in object.prototype) {
+ this.prototype[property] = object.prototype[property];
+ }
+ return this;
+ }).apply(obj1, [obj2]);
+};
+
+
+/**
+ * The default function for determining the label text and style
+ * for a cluster icon.
+ *
+ * @param {Array.
+The library creates and manages per-zoom-level clusters for large amounts of
+markers.
+
+This is a v3 implementation of the
+v2 MarkerClusterer.
For a description and examples of how to use this library, check out the how-to.
+ + This class extends google.maps.OverlayView
.
Constructor | + +Description | +
---|---|
MarkerClusterer(map:google.maps.Map, opt_markers:Array.<google.maps.Marker>, opt_options:Object) |
+
+ A Marker Clusterer that clusters markers. | +
Name | + +Type | + +Description | +
---|---|---|
gridSize |
+ number |
+ The grid size of a cluster in pixels. | +
maxZoom |
+ number |
+ The maximum zoom level that a marker can be part of a cluster. | +
zoomOnClick |
+ boolean |
+ Whether the default behaviour of clicking on a cluster is to zoom into it. | +
averageCenter |
+ boolean |
+ Whether the center of each cluster should be the average of all markers in the cluster. | +
minimumClusterSize |
+ number |
+ The minimum number of markers to be in a cluster before the markers are hidden and a count is shown. | +
styles |
+ object |
+ An object that has style properties. | +
Name | + +Type | + +Description | +
---|---|---|
url |
+ string |
+ The image url. | +
height |
+ number |
+ The image height. | +
width |
+ number |
+ The image width. | +
anchor |
+ Array |
+ The anchor position of the label text. | +
textColor |
+ string |
+ The text color. | +
textSize |
+ number |
+ The text size. | +
backgroundPosition |
+ string |
+ The position of the backgound x, y. | +
iconAnchor |
+ Array |
+ The anchor position of the icon x, y. | +
Methods | + + +Return Value | + + +Description | +
---|---|---|
addMarker(marker:google.maps.Marker, opt_nodraw:boolean) |
+
+
+ None |
+
+
+ Adds a marker to the clusterer and redraws if needed. | +
addMarkers(markers:Array.<google.maps.Marker>, opt_nodraw:boolean) |
+
+
+ None |
+
+
+ Adds an array of markers to the clusterer. | +
clearMarkers() |
+
+
+ None |
+
+
+ Clears all clusters and markers from the clusterer. | +
getCalculator() |
+
+
+ function(Array|number) |
+
+
+ Gets the calculator function. | +
getExtendedBounds(bounds:google.maps.LatLngBounds) |
+
+
+ google.maps.LatLngBounds |
+
+
+ Extends a bounds object by the grid size. | +
getGridSize() |
+
+
+ number |
+
+
+ Gets the size of the grid. | +
getMap() |
+
+
+ google.maps.Map |
+
+
+ Gets the google map that the clusterer is associated with. | +
getMarkers() |
+
+
+ Array. |
+
+
+ Gets the array of markers in the clusterer. | +
getMaxZoom() |
+
+
+ number |
+
+
+ Gets the max zoom for the clusterer. | +
getStyles() |
+
+
+ Object |
+
+
+ Gets the styles. | +
getTotalClusters() |
+
+
+ number |
+
+
+ Gets the number of clusters in the clusterer. | +
getTotalMarkers() |
+
+
+ Array. |
+
+
+ Gets the array of markers in the clusterer. | +
isZoomOnClick() |
+
+
+ boolean |
+
+
+ Whether zoom on click is set. | +
redraw() |
+
+
+ None |
+
+
+ Redraws the clusters. | +
removeMarker(marker:google.maps.Marker) |
+
+
+ boolean |
+
+
+ Removes a marker from the cluster. | +
resetViewport() |
+
+
+ None |
+
+
+ Clears all existing clusters and recreates them. | +
setCalculator(calculator:function(Array|number)) |
+
+
+ None |
+
+
+ Sets the calculator function. | +
setGridSize(size:number) |
+
+
+ None |
+
+
+ Sets the size of the grid. | +
setMap(map:google.maps.Map) |
+
+
+ None |
+
+
+ Sets the google map that the clusterer is associated with. | +
setMaxZoom(maxZoom:number) |
+
+
+ None |
+
+
+ Sets the max zoom for the clusterer. | +
setStyles(styles:Object) |
+
+
+ None |
+
+
+ Sets the styles. | +
+
+
jasmine.undefined
instead of undefined
, since undefined
is just
+ * a plain old variable and may be redefined by somebody else.
+ *
+ * @private
+ */
+jasmine.undefined = jasmine.___undefined___;
+
+/**
+ * Show diagnostic messages in the console if set to true
+ *
+ */
+jasmine.VERBOSE = false;
+
+/**
+ * Default interval in milliseconds for event loop yields (e.g. to allow network activity or to refresh the screen with the HTML-based runner). Small values here may result in slow test running. Zero means no updates until all tests have completed.
+ *
+ */
+jasmine.DEFAULT_UPDATE_INTERVAL = 250;
+
+/**
+ * Maximum levels of nesting that will be included when an object is pretty-printed
+ */
+jasmine.MAX_PRETTY_PRINT_DEPTH = 40;
+
+/**
+ * Default timeout interval in milliseconds for waitsFor() blocks.
+ */
+jasmine.DEFAULT_TIMEOUT_INTERVAL = 5000;
+
+/**
+ * By default exceptions thrown in the context of a test are caught by jasmine so that it can run the remaining tests in the suite.
+ * Set to false to let the exception bubble up in the browser.
+ *
+ */
+jasmine.CATCH_EXCEPTIONS = true;
+
+jasmine.getGlobal = function() {
+ function getGlobal() {
+ return this;
+ }
+
+ return getGlobal();
+};
+
+/**
+ * Allows for bound functions to be compared. Internal use only.
+ *
+ * @ignore
+ * @private
+ * @param base {Object} bound 'this' for the function
+ * @param name {Function} function to find
+ */
+jasmine.bindOriginal_ = function(base, name) {
+ var original = base[name];
+ if (original.apply) {
+ return function() {
+ return original.apply(base, arguments);
+ };
+ } else {
+ // IE support
+ return jasmine.getGlobal()[name];
+ }
+};
+
+jasmine.setTimeout = jasmine.bindOriginal_(jasmine.getGlobal(), 'setTimeout');
+jasmine.clearTimeout = jasmine.bindOriginal_(jasmine.getGlobal(), 'clearTimeout');
+jasmine.setInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'setInterval');
+jasmine.clearInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'clearInterval');
+
+jasmine.MessageResult = function(values) {
+ this.type = 'log';
+ this.values = values;
+ this.trace = new Error(); // todo: test better
+};
+
+jasmine.MessageResult.prototype.toString = function() {
+ var text = "";
+ for (var i = 0; i < this.values.length; i++) {
+ if (i > 0) text += " ";
+ if (jasmine.isString_(this.values[i])) {
+ text += this.values[i];
+ } else {
+ text += jasmine.pp(this.values[i]);
+ }
+ }
+ return text;
+};
+
+jasmine.ExpectationResult = function(params) {
+ this.type = 'expect';
+ this.matcherName = params.matcherName;
+ this.passed_ = params.passed;
+ this.expected = params.expected;
+ this.actual = params.actual;
+ this.message = this.passed_ ? 'Passed.' : params.message;
+
+ var trace = (params.trace || new Error(this.message));
+ this.trace = this.passed_ ? '' : trace;
+};
+
+jasmine.ExpectationResult.prototype.toString = function () {
+ return this.message;
+};
+
+jasmine.ExpectationResult.prototype.passed = function () {
+ return this.passed_;
+};
+
+/**
+ * Getter for the Jasmine environment. Ensures one gets created
+ */
+jasmine.getEnv = function() {
+ var env = jasmine.currentEnv_ = jasmine.currentEnv_ || new jasmine.Env();
+ return env;
+};
+
+/**
+ * @ignore
+ * @private
+ * @param value
+ * @returns {Boolean}
+ */
+jasmine.isArray_ = function(value) {
+ return jasmine.isA_("Array", value);
+};
+
+/**
+ * @ignore
+ * @private
+ * @param value
+ * @returns {Boolean}
+ */
+jasmine.isString_ = function(value) {
+ return jasmine.isA_("String", value);
+};
+
+/**
+ * @ignore
+ * @private
+ * @param value
+ * @returns {Boolean}
+ */
+jasmine.isNumber_ = function(value) {
+ return jasmine.isA_("Number", value);
+};
+
+/**
+ * @ignore
+ * @private
+ * @param {String} typeName
+ * @param value
+ * @returns {Boolean}
+ */
+jasmine.isA_ = function(typeName, value) {
+ return Object.prototype.toString.apply(value) === '[object ' + typeName + ']';
+};
+
+/**
+ * Pretty printer for expecations. Takes any object and turns it into a human-readable string.
+ *
+ * @param value {Object} an object to be outputted
+ * @returns {String}
+ */
+jasmine.pp = function(value) {
+ var stringPrettyPrinter = new jasmine.StringPrettyPrinter();
+ stringPrettyPrinter.format(value);
+ return stringPrettyPrinter.string;
+};
+
+/**
+ * Returns true if the object is a DOM Node.
+ *
+ * @param {Object} obj object to check
+ * @returns {Boolean}
+ */
+jasmine.isDomNode = function(obj) {
+ return obj.nodeType > 0;
+};
+
+/**
+ * Returns a matchable 'generic' object of the class type. For use in expecations of type when values don't matter.
+ *
+ * @example
+ * // don't care about which function is passed in, as long as it's a function
+ * expect(mySpy).toHaveBeenCalledWith(jasmine.any(Function));
+ *
+ * @param {Class} clazz
+ * @returns matchable object of the type clazz
+ */
+jasmine.any = function(clazz) {
+ return new jasmine.Matchers.Any(clazz);
+};
+
+/**
+ * Returns a matchable subset of a JSON object. For use in expectations when you don't care about all of the
+ * attributes on the object.
+ *
+ * @example
+ * // don't care about any other attributes than foo.
+ * expect(mySpy).toHaveBeenCalledWith(jasmine.objectContaining({foo: "bar"});
+ *
+ * @param sample {Object} sample
+ * @returns matchable object for the sample
+ */
+jasmine.objectContaining = function (sample) {
+ return new jasmine.Matchers.ObjectContaining(sample);
+};
+
+/**
+ * Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.
+ *
+ * Spies should be created in test setup, before expectations. They can then be checked, using the standard Jasmine
+ * expectation syntax. Spies can be checked if they were called or not and what the calling params were.
+ *
+ * A Spy has the following fields: wasCalled, callCount, mostRecentCall, and argsForCall (see docs).
+ *
+ * Spies are torn down at the end of every spec.
+ *
+ * Note: Do not call new jasmine.Spy() directly - a spy must be created using spyOn, jasmine.createSpy or jasmine.createSpyObj.
+ *
+ * @example
+ * // a stub
+ * var myStub = jasmine.createSpy('myStub'); // can be used anywhere
+ *
+ * // spy example
+ * var foo = {
+ * not: function(bool) { return !bool; }
+ * }
+ *
+ * // actual foo.not will not be called, execution stops
+ * spyOn(foo, 'not');
+
+ // foo.not spied upon, execution will continue to implementation
+ * spyOn(foo, 'not').andCallThrough();
+ *
+ * // fake example
+ * var foo = {
+ * not: function(bool) { return !bool; }
+ * }
+ *
+ * // foo.not(val) will return val
+ * spyOn(foo, 'not').andCallFake(function(value) {return value;});
+ *
+ * // mock example
+ * foo.not(7 == 7);
+ * expect(foo.not).toHaveBeenCalled();
+ * expect(foo.not).toHaveBeenCalledWith(true);
+ *
+ * @constructor
+ * @see spyOn, jasmine.createSpy, jasmine.createSpyObj
+ * @param {String} name
+ */
+jasmine.Spy = function(name) {
+ /**
+ * The name of the spy, if provided.
+ */
+ this.identity = name || 'unknown';
+ /**
+ * Is this Object a spy?
+ */
+ this.isSpy = true;
+ /**
+ * The actual function this spy stubs.
+ */
+ this.plan = function() {
+ };
+ /**
+ * Tracking of the most recent call to the spy.
+ * @example
+ * var mySpy = jasmine.createSpy('foo');
+ * mySpy(1, 2);
+ * mySpy.mostRecentCall.args = [1, 2];
+ */
+ this.mostRecentCall = {};
+
+ /**
+ * Holds arguments for each call to the spy, indexed by call count
+ * @example
+ * var mySpy = jasmine.createSpy('foo');
+ * mySpy(1, 2);
+ * mySpy(7, 8);
+ * mySpy.mostRecentCall.args = [7, 8];
+ * mySpy.argsForCall[0] = [1, 2];
+ * mySpy.argsForCall[1] = [7, 8];
+ */
+ this.argsForCall = [];
+ this.calls = [];
+};
+
+/**
+ * Tells a spy to call through to the actual implemenatation.
+ *
+ * @example
+ * var foo = {
+ * bar: function() { // do some stuff }
+ * }
+ *
+ * // defining a spy on an existing property: foo.bar
+ * spyOn(foo, 'bar').andCallThrough();
+ */
+jasmine.Spy.prototype.andCallThrough = function() {
+ this.plan = this.originalValue;
+ return this;
+};
+
+/**
+ * For setting the return value of a spy.
+ *
+ * @example
+ * // defining a spy from scratch: foo() returns 'baz'
+ * var foo = jasmine.createSpy('spy on foo').andReturn('baz');
+ *
+ * // defining a spy on an existing property: foo.bar() returns 'baz'
+ * spyOn(foo, 'bar').andReturn('baz');
+ *
+ * @param {Object} value
+ */
+jasmine.Spy.prototype.andReturn = function(value) {
+ this.plan = function() {
+ return value;
+ };
+ return this;
+};
+
+/**
+ * For throwing an exception when a spy is called.
+ *
+ * @example
+ * // defining a spy from scratch: foo() throws an exception w/ message 'ouch'
+ * var foo = jasmine.createSpy('spy on foo').andThrow('baz');
+ *
+ * // defining a spy on an existing property: foo.bar() throws an exception w/ message 'ouch'
+ * spyOn(foo, 'bar').andThrow('baz');
+ *
+ * @param {String} exceptionMsg
+ */
+jasmine.Spy.prototype.andThrow = function(exceptionMsg) {
+ this.plan = function() {
+ throw exceptionMsg;
+ };
+ return this;
+};
+
+/**
+ * Calls an alternate implementation when a spy is called.
+ *
+ * @example
+ * var baz = function() {
+ * // do some stuff, return something
+ * }
+ * // defining a spy from scratch: foo() calls the function baz
+ * var foo = jasmine.createSpy('spy on foo').andCall(baz);
+ *
+ * // defining a spy on an existing property: foo.bar() calls an anonymnous function
+ * spyOn(foo, 'bar').andCall(function() { return 'baz';} );
+ *
+ * @param {Function} fakeFunc
+ */
+jasmine.Spy.prototype.andCallFake = function(fakeFunc) {
+ this.plan = fakeFunc;
+ return this;
+};
+
+/**
+ * Resets all of a spy's the tracking variables so that it can be used again.
+ *
+ * @example
+ * spyOn(foo, 'bar');
+ *
+ * foo.bar();
+ *
+ * expect(foo.bar.callCount).toEqual(1);
+ *
+ * foo.bar.reset();
+ *
+ * expect(foo.bar.callCount).toEqual(0);
+ */
+jasmine.Spy.prototype.reset = function() {
+ this.wasCalled = false;
+ this.callCount = 0;
+ this.argsForCall = [];
+ this.calls = [];
+ this.mostRecentCall = {};
+};
+
+jasmine.createSpy = function(name) {
+
+ var spyObj = function() {
+ spyObj.wasCalled = true;
+ spyObj.callCount++;
+ var args = jasmine.util.argsToArray(arguments);
+ spyObj.mostRecentCall.object = this;
+ spyObj.mostRecentCall.args = args;
+ spyObj.argsForCall.push(args);
+ spyObj.calls.push({object: this, args: args});
+ return spyObj.plan.apply(this, arguments);
+ };
+
+ var spy = new jasmine.Spy(name);
+
+ for (var prop in spy) {
+ spyObj[prop] = spy[prop];
+ }
+
+ spyObj.reset();
+
+ return spyObj;
+};
+
+/**
+ * Determines whether an object is a spy.
+ *
+ * @param {jasmine.Spy|Object} putativeSpy
+ * @returns {Boolean}
+ */
+jasmine.isSpy = function(putativeSpy) {
+ return putativeSpy && putativeSpy.isSpy;
+};
+
+/**
+ * Creates a more complicated spy: an Object that has every property a function that is a spy. Used for stubbing something
+ * large in one call.
+ *
+ * @param {String} baseName name of spy class
+ * @param {Array} methodNames array of names of methods to make spies
+ */
+jasmine.createSpyObj = function(baseName, methodNames) {
+ if (!jasmine.isArray_(methodNames) || methodNames.length === 0) {
+ throw new Error('createSpyObj requires a non-empty array of method names to create spies for');
+ }
+ var obj = {};
+ for (var i = 0; i < methodNames.length; i++) {
+ obj[methodNames[i]] = jasmine.createSpy(baseName + '.' + methodNames[i]);
+ }
+ return obj;
+};
+
+/**
+ * All parameters are pretty-printed and concatenated together, then written to the current spec's output.
+ *
+ * Be careful not to leave calls to jasmine.log
in production code.
+ */
+jasmine.log = function() {
+ var spec = jasmine.getEnv().currentSpec;
+ spec.log.apply(spec, arguments);
+};
+
+/**
+ * Function that installs a spy on an existing object's method name. Used within a Spec to create a spy.
+ *
+ * @example
+ * // spy example
+ * var foo = {
+ * not: function(bool) { return !bool; }
+ * }
+ * spyOn(foo, 'not'); // actual foo.not will not be called, execution stops
+ *
+ * @see jasmine.createSpy
+ * @param obj
+ * @param methodName
+ * @return {jasmine.Spy} a Jasmine spy that can be chained with all spy methods
+ */
+var spyOn = function(obj, methodName) {
+ return jasmine.getEnv().currentSpec.spyOn(obj, methodName);
+};
+if (isCommonJS) exports.spyOn = spyOn;
+
+/**
+ * Creates a Jasmine spec that will be added to the current suite.
+ *
+ * // TODO: pending tests
+ *
+ * @example
+ * it('should be true', function() {
+ * expect(true).toEqual(true);
+ * });
+ *
+ * @param {String} desc description of this specification
+ * @param {Function} func defines the preconditions and expectations of the spec
+ */
+var it = function(desc, func) {
+ return jasmine.getEnv().it(desc, func);
+};
+if (isCommonJS) exports.it = it;
+
+/**
+ * Creates a disabled Jasmine spec.
+ *
+ * A convenience method that allows existing specs to be disabled temporarily during development.
+ *
+ * @param {String} desc description of this specification
+ * @param {Function} func defines the preconditions and expectations of the spec
+ */
+var xit = function(desc, func) {
+ return jasmine.getEnv().xit(desc, func);
+};
+if (isCommonJS) exports.xit = xit;
+
+/**
+ * Starts a chain for a Jasmine expectation.
+ *
+ * It is passed an Object that is the actual value and should chain to one of the many
+ * jasmine.Matchers functions.
+ *
+ * @param {Object} actual Actual value to test against and expected value
+ * @return {jasmine.Matchers}
+ */
+var expect = function(actual) {
+ return jasmine.getEnv().currentSpec.expect(actual);
+};
+if (isCommonJS) exports.expect = expect;
+
+/**
+ * Defines part of a jasmine spec. Used in cominbination with waits or waitsFor in asynchrnous specs.
+ *
+ * @param {Function} func Function that defines part of a jasmine spec.
+ */
+var runs = function(func) {
+ jasmine.getEnv().currentSpec.runs(func);
+};
+if (isCommonJS) exports.runs = runs;
+
+/**
+ * Waits a fixed time period before moving to the next block.
+ *
+ * @deprecated Use waitsFor() instead
+ * @param {Number} timeout milliseconds to wait
+ */
+var waits = function(timeout) {
+ jasmine.getEnv().currentSpec.waits(timeout);
+};
+if (isCommonJS) exports.waits = waits;
+
+/**
+ * Waits for the latchFunction to return true before proceeding to the next block.
+ *
+ * @param {Function} latchFunction
+ * @param {String} optional_timeoutMessage
+ * @param {Number} optional_timeout
+ */
+var waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
+ jasmine.getEnv().currentSpec.waitsFor.apply(jasmine.getEnv().currentSpec, arguments);
+};
+if (isCommonJS) exports.waitsFor = waitsFor;
+
+/**
+ * A function that is called before each spec in a suite.
+ *
+ * Used for spec setup, including validating assumptions.
+ *
+ * @param {Function} beforeEachFunction
+ */
+var beforeEach = function(beforeEachFunction) {
+ jasmine.getEnv().beforeEach(beforeEachFunction);
+};
+if (isCommonJS) exports.beforeEach = beforeEach;
+
+/**
+ * A function that is called after each spec in a suite.
+ *
+ * Used for restoring any state that is hijacked during spec execution.
+ *
+ * @param {Function} afterEachFunction
+ */
+var afterEach = function(afterEachFunction) {
+ jasmine.getEnv().afterEach(afterEachFunction);
+};
+if (isCommonJS) exports.afterEach = afterEach;
+
+/**
+ * Defines a suite of specifications.
+ *
+ * Stores the description and all defined specs in the Jasmine environment as one suite of specs. Variables declared
+ * are accessible by calls to beforeEach, it, and afterEach. Describe blocks can be nested, allowing for specialization
+ * of setup in some tests.
+ *
+ * @example
+ * // TODO: a simple suite
+ *
+ * // TODO: a simple suite with a nested describe block
+ *
+ * @param {String} description A string, usually the class under test.
+ * @param {Function} specDefinitions function that defines several specs.
+ */
+var describe = function(description, specDefinitions) {
+ return jasmine.getEnv().describe(description, specDefinitions);
+};
+if (isCommonJS) exports.describe = describe;
+
+/**
+ * Disables a suite of specifications. Used to disable some suites in a file, or files, temporarily during development.
+ *
+ * @param {String} description A string, usually the class under test.
+ * @param {Function} specDefinitions function that defines several specs.
+ */
+var xdescribe = function(description, specDefinitions) {
+ return jasmine.getEnv().xdescribe(description, specDefinitions);
+};
+if (isCommonJS) exports.xdescribe = xdescribe;
+
+
+// Provide the XMLHttpRequest class for IE 5.x-6.x:
+jasmine.XmlHttpRequest = (typeof XMLHttpRequest == "undefined") ? function() {
+ function tryIt(f) {
+ try {
+ return f();
+ } catch(e) {
+ }
+ return null;
+ }
+
+ var xhr = tryIt(function() {
+ return new ActiveXObject("Msxml2.XMLHTTP.6.0");
+ }) ||
+ tryIt(function() {
+ return new ActiveXObject("Msxml2.XMLHTTP.3.0");
+ }) ||
+ tryIt(function() {
+ return new ActiveXObject("Msxml2.XMLHTTP");
+ }) ||
+ tryIt(function() {
+ return new ActiveXObject("Microsoft.XMLHTTP");
+ });
+
+ if (!xhr) throw new Error("This browser does not support XMLHttpRequest.");
+
+ return xhr;
+} : XMLHttpRequest;
+/**
+ * @namespace
+ */
+jasmine.util = {};
+
+/**
+ * Declare that a child class inherit it's prototype from the parent class.
+ *
+ * @private
+ * @param {Function} childClass
+ * @param {Function} parentClass
+ */
+jasmine.util.inherit = function(childClass, parentClass) {
+ /**
+ * @private
+ */
+ var subclass = function() {
+ };
+ subclass.prototype = parentClass.prototype;
+ childClass.prototype = new subclass();
+};
+
+jasmine.util.formatException = function(e) {
+ var lineNumber;
+ if (e.line) {
+ lineNumber = e.line;
+ }
+ else if (e.lineNumber) {
+ lineNumber = e.lineNumber;
+ }
+
+ var file;
+
+ if (e.sourceURL) {
+ file = e.sourceURL;
+ }
+ else if (e.fileName) {
+ file = e.fileName;
+ }
+
+ var message = (e.name && e.message) ? (e.name + ': ' + e.message) : e.toString();
+
+ if (file && lineNumber) {
+ message += ' in ' + file + ' (line ' + lineNumber + ')';
+ }
+
+ return message;
+};
+
+jasmine.util.htmlEscape = function(str) {
+ if (!str) return str;
+ return str.replace(/&/g, '&')
+ .replace(//g, '>');
+};
+
+jasmine.util.argsToArray = function(args) {
+ var arrayOfArgs = [];
+ for (var i = 0; i < args.length; i++) arrayOfArgs.push(args[i]);
+ return arrayOfArgs;
+};
+
+jasmine.util.extend = function(destination, source) {
+ for (var property in source) destination[property] = source[property];
+ return destination;
+};
+
+/**
+ * Environment for Jasmine
+ *
+ * @constructor
+ */
+jasmine.Env = function() {
+ this.currentSpec = null;
+ this.currentSuite = null;
+ this.currentRunner_ = new jasmine.Runner(this);
+
+ this.reporter = new jasmine.MultiReporter();
+
+ this.updateInterval = jasmine.DEFAULT_UPDATE_INTERVAL;
+ this.defaultTimeoutInterval = jasmine.DEFAULT_TIMEOUT_INTERVAL;
+ this.lastUpdate = 0;
+ this.specFilter = function() {
+ return true;
+ };
+
+ this.nextSpecId_ = 0;
+ this.nextSuiteId_ = 0;
+ this.equalityTesters_ = [];
+
+ // wrap matchers
+ this.matchersClass = function() {
+ jasmine.Matchers.apply(this, arguments);
+ };
+ jasmine.util.inherit(this.matchersClass, jasmine.Matchers);
+
+ jasmine.Matchers.wrapInto_(jasmine.Matchers.prototype, this.matchersClass);
+};
+
+
+jasmine.Env.prototype.setTimeout = jasmine.setTimeout;
+jasmine.Env.prototype.clearTimeout = jasmine.clearTimeout;
+jasmine.Env.prototype.setInterval = jasmine.setInterval;
+jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
+
+/**
+ * @returns an object containing jasmine version build info, if set.
+ */
+jasmine.Env.prototype.version = function () {
+ if (jasmine.version_) {
+ return jasmine.version_;
+ } else {
+ throw new Error('Version not set');
+ }
+};
+
+/**
+ * @returns string containing jasmine version build info, if set.
+ */
+jasmine.Env.prototype.versionString = function() {
+ if (!jasmine.version_) {
+ return "version unknown";
+ }
+
+ var version = this.version();
+ var versionString = version.major + "." + version.minor + "." + version.build;
+ if (version.release_candidate) {
+ versionString += ".rc" + version.release_candidate;
+ }
+ versionString += " revision " + version.revision;
+ return versionString;
+};
+
+/**
+ * @returns a sequential integer starting at 0
+ */
+jasmine.Env.prototype.nextSpecId = function () {
+ return this.nextSpecId_++;
+};
+
+/**
+ * @returns a sequential integer starting at 0
+ */
+jasmine.Env.prototype.nextSuiteId = function () {
+ return this.nextSuiteId_++;
+};
+
+/**
+ * Register a reporter to receive status updates from Jasmine.
+ * @param {jasmine.Reporter} reporter An object which will receive status updates.
+ */
+jasmine.Env.prototype.addReporter = function(reporter) {
+ this.reporter.addReporter(reporter);
+};
+
+jasmine.Env.prototype.execute = function() {
+ this.currentRunner_.execute();
+};
+
+jasmine.Env.prototype.describe = function(description, specDefinitions) {
+ var suite = new jasmine.Suite(this, description, specDefinitions, this.currentSuite);
+
+ var parentSuite = this.currentSuite;
+ if (parentSuite) {
+ parentSuite.add(suite);
+ } else {
+ this.currentRunner_.add(suite);
+ }
+
+ this.currentSuite = suite;
+
+ var declarationError = null;
+ try {
+ specDefinitions.call(suite);
+ } catch(e) {
+ declarationError = e;
+ }
+
+ if (declarationError) {
+ this.it("encountered a declaration exception", function() {
+ throw declarationError;
+ });
+ }
+
+ this.currentSuite = parentSuite;
+
+ return suite;
+};
+
+jasmine.Env.prototype.beforeEach = function(beforeEachFunction) {
+ if (this.currentSuite) {
+ this.currentSuite.beforeEach(beforeEachFunction);
+ } else {
+ this.currentRunner_.beforeEach(beforeEachFunction);
+ }
+};
+
+jasmine.Env.prototype.currentRunner = function () {
+ return this.currentRunner_;
+};
+
+jasmine.Env.prototype.afterEach = function(afterEachFunction) {
+ if (this.currentSuite) {
+ this.currentSuite.afterEach(afterEachFunction);
+ } else {
+ this.currentRunner_.afterEach(afterEachFunction);
+ }
+
+};
+
+jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
+ return {
+ execute: function() {
+ }
+ };
+};
+
+jasmine.Env.prototype.it = function(description, func) {
+ var spec = new jasmine.Spec(this, this.currentSuite, description);
+ this.currentSuite.add(spec);
+ this.currentSpec = spec;
+
+ if (func) {
+ spec.runs(func);
+ }
+
+ return spec;
+};
+
+jasmine.Env.prototype.xit = function(desc, func) {
+ return {
+ id: this.nextSpecId(),
+ runs: function() {
+ }
+ };
+};
+
+jasmine.Env.prototype.compareRegExps_ = function(a, b, mismatchKeys, mismatchValues) {
+ if (a.source != b.source)
+ mismatchValues.push("expected pattern /" + b.source + "/ is not equal to the pattern /" + a.source + "/");
+
+ if (a.ignoreCase != b.ignoreCase)
+ mismatchValues.push("expected modifier i was" + (b.ignoreCase ? " " : " not ") + "set and does not equal the origin modifier");
+
+ if (a.global != b.global)
+ mismatchValues.push("expected modifier g was" + (b.global ? " " : " not ") + "set and does not equal the origin modifier");
+
+ if (a.multiline != b.multiline)
+ mismatchValues.push("expected modifier m was" + (b.multiline ? " " : " not ") + "set and does not equal the origin modifier");
+
+ if (a.sticky != b.sticky)
+ mismatchValues.push("expected modifier y was" + (b.sticky ? " " : " not ") + "set and does not equal the origin modifier");
+
+ return (mismatchValues.length === 0);
+};
+
+jasmine.Env.prototype.compareObjects_ = function(a, b, mismatchKeys, mismatchValues) {
+ if (a.__Jasmine_been_here_before__ === b && b.__Jasmine_been_here_before__ === a) {
+ return true;
+ }
+
+ a.__Jasmine_been_here_before__ = b;
+ b.__Jasmine_been_here_before__ = a;
+
+ var hasKey = function(obj, keyName) {
+ return obj !== null && obj[keyName] !== jasmine.undefined;
+ };
+
+ for (var property in b) {
+ if (!hasKey(a, property) && hasKey(b, property)) {
+ mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
+ }
+ }
+ for (property in a) {
+ if (!hasKey(b, property) && hasKey(a, property)) {
+ mismatchKeys.push("expected missing key '" + property + "', but present in actual.");
+ }
+ }
+ for (property in b) {
+ if (property == '__Jasmine_been_here_before__') continue;
+ if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
+ mismatchValues.push("'" + property + "' was '" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "' in expected, but was '" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "' in actual.");
+ }
+ }
+
+ if (jasmine.isArray_(a) && jasmine.isArray_(b) && a.length != b.length) {
+ mismatchValues.push("arrays were not the same length");
+ }
+
+ delete a.__Jasmine_been_here_before__;
+ delete b.__Jasmine_been_here_before__;
+ return (mismatchKeys.length === 0 && mismatchValues.length === 0);
+};
+
+jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
+ mismatchKeys = mismatchKeys || [];
+ mismatchValues = mismatchValues || [];
+
+ for (var i = 0; i < this.equalityTesters_.length; i++) {
+ var equalityTester = this.equalityTesters_[i];
+ var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
+ if (result !== jasmine.undefined) return result;
+ }
+
+ if (a === b) return true;
+
+ if (a === jasmine.undefined || a === null || b === jasmine.undefined || b === null) {
+ return (a == jasmine.undefined && b == jasmine.undefined);
+ }
+
+ if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
+ return a === b;
+ }
+
+ if (a instanceof Date && b instanceof Date) {
+ return a.getTime() == b.getTime();
+ }
+
+ if (a.jasmineMatches) {
+ return a.jasmineMatches(b);
+ }
+
+ if (b.jasmineMatches) {
+ return b.jasmineMatches(a);
+ }
+
+ if (a instanceof jasmine.Matchers.ObjectContaining) {
+ return a.matches(b);
+ }
+
+ if (b instanceof jasmine.Matchers.ObjectContaining) {
+ return b.matches(a);
+ }
+
+ if (jasmine.isString_(a) && jasmine.isString_(b)) {
+ return (a == b);
+ }
+
+ if (jasmine.isNumber_(a) && jasmine.isNumber_(b)) {
+ return (a == b);
+ }
+
+ if (a instanceof RegExp && b instanceof RegExp) {
+ return this.compareRegExps_(a, b, mismatchKeys, mismatchValues);
+ }
+
+ if (typeof a === "object" && typeof b === "object") {
+ return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
+ }
+
+ //Straight check
+ return (a === b);
+};
+
+jasmine.Env.prototype.contains_ = function(haystack, needle) {
+ if (jasmine.isArray_(haystack)) {
+ for (var i = 0; i < haystack.length; i++) {
+ if (this.equals_(haystack[i], needle)) return true;
+ }
+ return false;
+ }
+ return haystack.indexOf(needle) >= 0;
+};
+
+jasmine.Env.prototype.addEqualityTester = function(equalityTester) {
+ this.equalityTesters_.push(equalityTester);
+};
+/** No-op base class for Jasmine reporters.
+ *
+ * @constructor
+ */
+jasmine.Reporter = function() {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.reportRunnerStarting = function(runner) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.reportRunnerResults = function(runner) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.reportSuiteResults = function(suite) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.reportSpecStarting = function(spec) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.reportSpecResults = function(spec) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.Reporter.prototype.log = function(str) {
+};
+
+/**
+ * Blocks are functions with executable code that make up a spec.
+ *
+ * @constructor
+ * @param {jasmine.Env} env
+ * @param {Function} func
+ * @param {jasmine.Spec} spec
+ */
+jasmine.Block = function(env, func, spec) {
+ this.env = env;
+ this.func = func;
+ this.spec = spec;
+};
+
+jasmine.Block.prototype.execute = function(onComplete) {
+ if (!jasmine.CATCH_EXCEPTIONS) {
+ this.func.apply(this.spec);
+ }
+ else {
+ try {
+ this.func.apply(this.spec);
+ } catch (e) {
+ this.spec.fail(e);
+ }
+ }
+ onComplete();
+};
+/** JavaScript API reporter.
+ *
+ * @constructor
+ */
+jasmine.JsApiReporter = function() {
+ this.started = false;
+ this.finished = false;
+ this.suites_ = [];
+ this.results_ = {};
+};
+
+jasmine.JsApiReporter.prototype.reportRunnerStarting = function(runner) {
+ this.started = true;
+ var suites = runner.topLevelSuites();
+ for (var i = 0; i < suites.length; i++) {
+ var suite = suites[i];
+ this.suites_.push(this.summarize_(suite));
+ }
+};
+
+jasmine.JsApiReporter.prototype.suites = function() {
+ return this.suites_;
+};
+
+jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
+ var isSuite = suiteOrSpec instanceof jasmine.Suite;
+ var summary = {
+ id: suiteOrSpec.id,
+ name: suiteOrSpec.description,
+ type: isSuite ? 'suite' : 'spec',
+ children: []
+ };
+
+ if (isSuite) {
+ var children = suiteOrSpec.children();
+ for (var i = 0; i < children.length; i++) {
+ summary.children.push(this.summarize_(children[i]));
+ }
+ }
+ return summary;
+};
+
+jasmine.JsApiReporter.prototype.results = function() {
+ return this.results_;
+};
+
+jasmine.JsApiReporter.prototype.resultsForSpec = function(specId) {
+ return this.results_[specId];
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.JsApiReporter.prototype.reportRunnerResults = function(runner) {
+ this.finished = true;
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.JsApiReporter.prototype.reportSuiteResults = function(suite) {
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
+ this.results_[spec.id] = {
+ messages: spec.results().getItems(),
+ result: spec.results().failedCount > 0 ? "failed" : "passed"
+ };
+};
+
+//noinspection JSUnusedLocalSymbols
+jasmine.JsApiReporter.prototype.log = function(str) {
+};
+
+jasmine.JsApiReporter.prototype.resultsForSpecs = function(specIds){
+ var results = {};
+ for (var i = 0; i < specIds.length; i++) {
+ var specId = specIds[i];
+ results[specId] = this.summarizeResult_(this.results_[specId]);
+ }
+ return results;
+};
+
+jasmine.JsApiReporter.prototype.summarizeResult_ = function(result){
+ var summaryMessages = [];
+ var messagesLength = result.messages.length;
+ for (var messageIndex = 0; messageIndex < messagesLength; messageIndex++) {
+ var resultMessage = result.messages[messageIndex];
+ summaryMessages.push({
+ text: resultMessage.type == 'log' ? resultMessage.toString() : jasmine.undefined,
+ passed: resultMessage.passed ? resultMessage.passed() : true,
+ type: resultMessage.type,
+ message: resultMessage.message,
+ trace: {
+ stack: resultMessage.passed && !resultMessage.passed() ? resultMessage.trace.stack : jasmine.undefined
+ }
+ });
+ }
+
+ return {
+ result : result.result,
+ messages : summaryMessages
+ };
+};
+
+/**
+ * @constructor
+ * @param {jasmine.Env} env
+ * @param actual
+ * @param {jasmine.Spec} spec
+ */
+jasmine.Matchers = function(env, actual, spec, opt_isNot) {
+ this.env = env;
+ this.actual = actual;
+ this.spec = spec;
+ this.isNot = opt_isNot || false;
+ this.reportWasCalled_ = false;
+};
+
+// todo: @deprecated as of Jasmine 0.11, remove soon [xw]
+jasmine.Matchers.pp = function(str) {
+ throw new Error("jasmine.Matchers.pp() is no longer supported, please use jasmine.pp() instead!");
+};
+
+// todo: @deprecated Deprecated as of Jasmine 0.10. Rewrite your custom matchers to return true or false. [xw]
+jasmine.Matchers.prototype.report = function(result, failing_message, details) {
+ throw new Error("As of jasmine 0.11, custom matchers must be implemented differently -- please see jasmine docs");
+};
+
+jasmine.Matchers.wrapInto_ = function(prototype, matchersClass) {
+ for (var methodName in prototype) {
+ if (methodName == 'report') continue;
+ var orig = prototype[methodName];
+ matchersClass.prototype[methodName] = jasmine.Matchers.matcherFn_(methodName, orig);
+ }
+};
+
+jasmine.Matchers.matcherFn_ = function(matcherName, matcherFunction) {
+ return function() {
+ var matcherArgs = jasmine.util.argsToArray(arguments);
+ var result = matcherFunction.apply(this, arguments);
+
+ if (this.isNot) {
+ result = !result;
+ }
+
+ if (this.reportWasCalled_) return result;
+
+ var message;
+ if (!result) {
+ if (this.message) {
+ message = this.message.apply(this, arguments);
+ if (jasmine.isArray_(message)) {
+ message = message[this.isNot ? 1 : 0];
+ }
+ } else {
+ var englishyPredicate = matcherName.replace(/[A-Z]/g, function(s) { return ' ' + s.toLowerCase(); });
+ message = "Expected " + jasmine.pp(this.actual) + (this.isNot ? " not " : " ") + englishyPredicate;
+ if (matcherArgs.length > 0) {
+ for (var i = 0; i < matcherArgs.length; i++) {
+ if (i > 0) message += ",";
+ message += " " + jasmine.pp(matcherArgs[i]);
+ }
+ }
+ message += ".";
+ }
+ }
+ var expectationResult = new jasmine.ExpectationResult({
+ matcherName: matcherName,
+ passed: result,
+ expected: matcherArgs.length > 1 ? matcherArgs : matcherArgs[0],
+ actual: this.actual,
+ message: message
+ });
+ this.spec.addMatcherResult(expectationResult);
+ return jasmine.undefined;
+ };
+};
+
+
+
+
+/**
+ * toBe: compares the actual to the expected using ===
+ * @param expected
+ */
+jasmine.Matchers.prototype.toBe = function(expected) {
+ return this.actual === expected;
+};
+
+/**
+ * toNotBe: compares the actual to the expected using !==
+ * @param expected
+ * @deprecated as of 1.0. Use not.toBe() instead.
+ */
+jasmine.Matchers.prototype.toNotBe = function(expected) {
+ return this.actual !== expected;
+};
+
+/**
+ * toEqual: compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc.
+ *
+ * @param expected
+ */
+jasmine.Matchers.prototype.toEqual = function(expected) {
+ return this.env.equals_(this.actual, expected);
+};
+
+/**
+ * toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual
+ * @param expected
+ * @deprecated as of 1.0. Use not.toEqual() instead.
+ */
+jasmine.Matchers.prototype.toNotEqual = function(expected) {
+ return !this.env.equals_(this.actual, expected);
+};
+
+/**
+ * Matcher that compares the actual to the expected using a regular expression. Constructs a RegExp, so takes
+ * a pattern or a String.
+ *
+ * @param expected
+ */
+jasmine.Matchers.prototype.toMatch = function(expected) {
+ return new RegExp(expected).test(this.actual);
+};
+
+/**
+ * Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
+ * @param expected
+ * @deprecated as of 1.0. Use not.toMatch() instead.
+ */
+jasmine.Matchers.prototype.toNotMatch = function(expected) {
+ return !(new RegExp(expected).test(this.actual));
+};
+
+/**
+ * Matcher that compares the actual to jasmine.undefined.
+ */
+jasmine.Matchers.prototype.toBeDefined = function() {
+ return (this.actual !== jasmine.undefined);
+};
+
+/**
+ * Matcher that compares the actual to jasmine.undefined.
+ */
+jasmine.Matchers.prototype.toBeUndefined = function() {
+ return (this.actual === jasmine.undefined);
+};
+
+/**
+ * Matcher that compares the actual to null.
+ */
+jasmine.Matchers.prototype.toBeNull = function() {
+ return (this.actual === null);
+};
+
+/**
+ * Matcher that compares the actual to NaN.
+ */
+jasmine.Matchers.prototype.toBeNaN = function() {
+ this.message = function() {
+ return [ "Expected " + jasmine.pp(this.actual) + " to be NaN." ];
+ };
+
+ return (this.actual !== this.actual);
+};
+
+/**
+ * Matcher that boolean not-nots the actual.
+ */
+jasmine.Matchers.prototype.toBeTruthy = function() {
+ return !!this.actual;
+};
+
+
+/**
+ * Matcher that boolean nots the actual.
+ */
+jasmine.Matchers.prototype.toBeFalsy = function() {
+ return !this.actual;
+};
+
+
+/**
+ * Matcher that checks to see if the actual, a Jasmine spy, was called.
+ */
+jasmine.Matchers.prototype.toHaveBeenCalled = function() {
+ if (arguments.length > 0) {
+ throw new Error('toHaveBeenCalled does not take arguments, use toHaveBeenCalledWith');
+ }
+
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function() {
+ return [
+ "Expected spy " + this.actual.identity + " to have been called.",
+ "Expected spy " + this.actual.identity + " not to have been called."
+ ];
+ };
+
+ return this.actual.wasCalled;
+};
+
+/** @deprecated Use expect(xxx).toHaveBeenCalled() instead */
+jasmine.Matchers.prototype.wasCalled = jasmine.Matchers.prototype.toHaveBeenCalled;
+
+/**
+ * Matcher that checks to see if the actual, a Jasmine spy, was not called.
+ *
+ * @deprecated Use expect(xxx).not.toHaveBeenCalled() instead
+ */
+jasmine.Matchers.prototype.wasNotCalled = function() {
+ if (arguments.length > 0) {
+ throw new Error('wasNotCalled does not take arguments');
+ }
+
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function() {
+ return [
+ "Expected spy " + this.actual.identity + " to not have been called.",
+ "Expected spy " + this.actual.identity + " to have been called."
+ ];
+ };
+
+ return !this.actual.wasCalled;
+};
+
+/**
+ * Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters.
+ *
+ * @example
+ *
+ */
+jasmine.Matchers.prototype.toHaveBeenCalledWith = function() {
+ var expectedArgs = jasmine.util.argsToArray(arguments);
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+ this.message = function() {
+ var invertedMessage = "Expected spy " + this.actual.identity + " not to have been called with " + jasmine.pp(expectedArgs) + " but it was.";
+ var positiveMessage = "";
+ if (this.actual.callCount === 0) {
+ positiveMessage = "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but it was never called.";
+ } else {
+ positiveMessage = "Expected spy " + this.actual.identity + " to have been called with " + jasmine.pp(expectedArgs) + " but actual calls were " + jasmine.pp(this.actual.argsForCall).replace(/^\[ | \]$/g, '')
+ }
+ return [positiveMessage, invertedMessage];
+ };
+
+ return this.env.contains_(this.actual.argsForCall, expectedArgs);
+};
+
+/** @deprecated Use expect(xxx).toHaveBeenCalledWith() instead */
+jasmine.Matchers.prototype.wasCalledWith = jasmine.Matchers.prototype.toHaveBeenCalledWith;
+
+/** @deprecated Use expect(xxx).not.toHaveBeenCalledWith() instead */
+jasmine.Matchers.prototype.wasNotCalledWith = function() {
+ var expectedArgs = jasmine.util.argsToArray(arguments);
+ if (!jasmine.isSpy(this.actual)) {
+ throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+ }
+
+ this.message = function() {
+ return [
+ "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was",
+ "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was"
+ ];
+ };
+
+ return !this.env.contains_(this.actual.argsForCall, expectedArgs);
+};
+
+/**
+ * Matcher that checks that the expected item is an element in the actual Array.
+ *
+ * @param {Object} expected
+ */
+jasmine.Matchers.prototype.toContain = function(expected) {
+ return this.env.contains_(this.actual, expected);
+};
+
+/**
+ * Matcher that checks that the expected item is NOT an element in the actual Array.
+ *
+ * @param {Object} expected
+ * @deprecated as of 1.0. Use not.toContain() instead.
+ */
+jasmine.Matchers.prototype.toNotContain = function(expected) {
+ return !this.env.contains_(this.actual, expected);
+};
+
+jasmine.Matchers.prototype.toBeLessThan = function(expected) {
+ return this.actual < expected;
+};
+
+jasmine.Matchers.prototype.toBeGreaterThan = function(expected) {
+ return this.actual > expected;
+};
+
+/**
+ * Matcher that checks that the expected item is equal to the actual item
+ * up to a given level of decimal precision (default 2).
+ *
+ * @param {Number} expected
+ * @param {Number} precision, as number of decimal places
+ */
+jasmine.Matchers.prototype.toBeCloseTo = function(expected, precision) {
+ if (!(precision === 0)) {
+ precision = precision || 2;
+ }
+ return Math.abs(expected - this.actual) < (Math.pow(10, -precision) / 2);
+};
+
+/**
+ * Matcher that checks that the expected exception was thrown by the actual.
+ *
+ * @param {String} [expected]
+ */
+jasmine.Matchers.prototype.toThrow = function(expected) {
+ var result = false;
+ var exception;
+ if (typeof this.actual != 'function') {
+ throw new Error('Actual is not a function');
+ }
+ try {
+ this.actual();
+ } catch (e) {
+ exception = e;
+ }
+ if (exception) {
+ result = (expected === jasmine.undefined || this.env.equals_(exception.message || exception, expected.message || expected));
+ }
+
+ var not = this.isNot ? "not " : "";
+
+ this.message = function() {
+ if (exception && (expected === jasmine.undefined || !this.env.equals_(exception.message || exception, expected.message || expected))) {
+ return ["Expected function " + not + "to throw", expected ? expected.message || expected : "an exception", ", but it threw", exception.message || exception].join(' ');
+ } else {
+ return "Expected function to throw an exception.";
+ }
+ };
+
+ return result;
+};
+
+jasmine.Matchers.Any = function(expectedClass) {
+ this.expectedClass = expectedClass;
+};
+
+jasmine.Matchers.Any.prototype.jasmineMatches = function(other) {
+ if (this.expectedClass == String) {
+ return typeof other == 'string' || other instanceof String;
+ }
+
+ if (this.expectedClass == Number) {
+ return typeof other == 'number' || other instanceof Number;
+ }
+
+ if (this.expectedClass == Function) {
+ return typeof other == 'function' || other instanceof Function;
+ }
+
+ if (this.expectedClass == Object) {
+ return typeof other == 'object';
+ }
+
+ return other instanceof this.expectedClass;
+};
+
+jasmine.Matchers.Any.prototype.jasmineToString = function() {
+ return 'jasmine.log
in production code.
+ */
+jasmine.Spec.prototype.log = function() {
+ return this.results_.log(arguments);
+};
+
+jasmine.Spec.prototype.runs = function (func) {
+ var block = new jasmine.Block(this.env, func, this);
+ this.addToQueue(block);
+ return this;
+};
+
+jasmine.Spec.prototype.addToQueue = function (block) {
+ if (this.queue.isRunning()) {
+ this.queue.insertNext(block);
+ } else {
+ this.queue.add(block);
+ }
+};
+
+/**
+ * @param {jasmine.ExpectationResult} result
+ */
+jasmine.Spec.prototype.addMatcherResult = function(result) {
+ this.results_.addResult(result);
+};
+
+jasmine.Spec.prototype.expect = function(actual) {
+ var positive = new (this.getMatchersClass_())(this.env, actual, this);
+ positive.not = new (this.getMatchersClass_())(this.env, actual, this, true);
+ return positive;
+};
+
+/**
+ * Waits a fixed time period before moving to the next block.
+ *
+ * @deprecated Use waitsFor() instead
+ * @param {Number} timeout milliseconds to wait
+ */
+jasmine.Spec.prototype.waits = function(timeout) {
+ var waitsFunc = new jasmine.WaitsBlock(this.env, timeout, this);
+ this.addToQueue(waitsFunc);
+ return this;
+};
+
+/**
+ * Waits for the latchFunction to return true before proceeding to the next block.
+ *
+ * @param {Function} latchFunction
+ * @param {String} optional_timeoutMessage
+ * @param {Number} optional_timeout
+ */
+jasmine.Spec.prototype.waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
+ var latchFunction_ = null;
+ var optional_timeoutMessage_ = null;
+ var optional_timeout_ = null;
+
+ for (var i = 0; i < arguments.length; i++) {
+ var arg = arguments[i];
+ switch (typeof arg) {
+ case 'function':
+ latchFunction_ = arg;
+ break;
+ case 'string':
+ optional_timeoutMessage_ = arg;
+ break;
+ case 'number':
+ optional_timeout_ = arg;
+ break;
+ }
+ }
+
+ var waitsForFunc = new jasmine.WaitsForBlock(this.env, optional_timeout_, latchFunction_, optional_timeoutMessage_, this);
+ this.addToQueue(waitsForFunc);
+ return this;
+};
+
+jasmine.Spec.prototype.fail = function (e) {
+ var expectationResult = new jasmine.ExpectationResult({
+ passed: false,
+ message: e ? jasmine.util.formatException(e) : 'Exception',
+ trace: { stack: e.stack }
+ });
+ this.results_.addResult(expectationResult);
+};
+
+jasmine.Spec.prototype.getMatchersClass_ = function() {
+ return this.matchersClass || this.env.matchersClass;
+};
+
+jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
+ var parent = this.getMatchersClass_();
+ var newMatchersClass = function() {
+ parent.apply(this, arguments);
+ };
+ jasmine.util.inherit(newMatchersClass, parent);
+ jasmine.Matchers.wrapInto_(matchersPrototype, newMatchersClass);
+ this.matchersClass = newMatchersClass;
+};
+
+jasmine.Spec.prototype.finishCallback = function() {
+ this.env.reporter.reportSpecResults(this);
+};
+
+jasmine.Spec.prototype.finish = function(onComplete) {
+ this.removeAllSpies();
+ this.finishCallback();
+ if (onComplete) {
+ onComplete();
+ }
+};
+
+jasmine.Spec.prototype.after = function(doAfter) {
+ if (this.queue.isRunning()) {
+ this.queue.add(new jasmine.Block(this.env, doAfter, this), true);
+ } else {
+ this.afterCallbacks.unshift(doAfter);
+ }
+};
+
+jasmine.Spec.prototype.execute = function(onComplete) {
+ var spec = this;
+ if (!spec.env.specFilter(spec)) {
+ spec.results_.skipped = true;
+ spec.finish(onComplete);
+ return;
+ }
+
+ this.env.reporter.reportSpecStarting(this);
+
+ spec.env.currentSpec = spec;
+
+ spec.addBeforesAndAftersToQueue();
+
+ spec.queue.start(function () {
+ spec.finish(onComplete);
+ });
+};
+
+jasmine.Spec.prototype.addBeforesAndAftersToQueue = function() {
+ var runner = this.env.currentRunner();
+ var i;
+
+ for (var suite = this.suite; suite; suite = suite.parentSuite) {
+ for (i = 0; i < suite.before_.length; i++) {
+ this.queue.addBefore(new jasmine.Block(this.env, suite.before_[i], this));
+ }
+ }
+ for (i = 0; i < runner.before_.length; i++) {
+ this.queue.addBefore(new jasmine.Block(this.env, runner.before_[i], this));
+ }
+ for (i = 0; i < this.afterCallbacks.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, this.afterCallbacks[i], this), true);
+ }
+ for (suite = this.suite; suite; suite = suite.parentSuite) {
+ for (i = 0; i < suite.after_.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, suite.after_[i], this), true);
+ }
+ }
+ for (i = 0; i < runner.after_.length; i++) {
+ this.queue.add(new jasmine.Block(this.env, runner.after_[i], this), true);
+ }
+};
+
+jasmine.Spec.prototype.explodes = function() {
+ throw 'explodes function should not have been called';
+};
+
+jasmine.Spec.prototype.spyOn = function(obj, methodName, ignoreMethodDoesntExist) {
+ if (obj == jasmine.undefined) {
+ throw "spyOn could not find an object to spy upon for " + methodName + "()";
+ }
+
+ if (!ignoreMethodDoesntExist && obj[methodName] === jasmine.undefined) {
+ throw methodName + '() method does not exist';
+ }
+
+ if (!ignoreMethodDoesntExist && obj[methodName] && obj[methodName].isSpy) {
+ throw new Error(methodName + ' has already been spied upon');
+ }
+
+ var spyObj = jasmine.createSpy(methodName);
+
+ this.spies_.push(spyObj);
+ spyObj.baseObj = obj;
+ spyObj.methodName = methodName;
+ spyObj.originalValue = obj[methodName];
+
+ obj[methodName] = spyObj;
+
+ return spyObj;
+};
+
+jasmine.Spec.prototype.removeAllSpies = function() {
+ for (var i = 0; i < this.spies_.length; i++) {
+ var spy = this.spies_[i];
+ spy.baseObj[spy.methodName] = spy.originalValue;
+ }
+ this.spies_ = [];
+};
+
+/**
+ * Internal representation of a Jasmine suite.
+ *
+ * @constructor
+ * @param {jasmine.Env} env
+ * @param {String} description
+ * @param {Function} specDefinitions
+ * @param {jasmine.Suite} parentSuite
+ */
+jasmine.Suite = function(env, description, specDefinitions, parentSuite) {
+ var self = this;
+ self.id = env.nextSuiteId ? env.nextSuiteId() : null;
+ self.description = description;
+ self.queue = new jasmine.Queue(env);
+ self.parentSuite = parentSuite;
+ self.env = env;
+ self.before_ = [];
+ self.after_ = [];
+ self.children_ = [];
+ self.suites_ = [];
+ self.specs_ = [];
+};
+
+jasmine.Suite.prototype.getFullName = function() {
+ var fullName = this.description;
+ for (var parentSuite = this.parentSuite; parentSuite; parentSuite = parentSuite.parentSuite) {
+ fullName = parentSuite.description + ' ' + fullName;
+ }
+ return fullName;
+};
+
+jasmine.Suite.prototype.finish = function(onComplete) {
+ this.env.reporter.reportSuiteResults(this);
+ this.finished = true;
+ if (typeof(onComplete) == 'function') {
+ onComplete();
+ }
+};
+
+jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
+ beforeEachFunction.typeName = 'beforeEach';
+ this.before_.unshift(beforeEachFunction);
+};
+
+jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
+ afterEachFunction.typeName = 'afterEach';
+ this.after_.unshift(afterEachFunction);
+};
+
+jasmine.Suite.prototype.results = function() {
+ return this.queue.results();
+};
+
+jasmine.Suite.prototype.add = function(suiteOrSpec) {
+ this.children_.push(suiteOrSpec);
+ if (suiteOrSpec instanceof jasmine.Suite) {
+ this.suites_.push(suiteOrSpec);
+ this.env.currentRunner().addSuite(suiteOrSpec);
+ } else {
+ this.specs_.push(suiteOrSpec);
+ }
+ this.queue.add(suiteOrSpec);
+};
+
+jasmine.Suite.prototype.specs = function() {
+ return this.specs_;
+};
+
+jasmine.Suite.prototype.suites = function() {
+ return this.suites_;
+};
+
+jasmine.Suite.prototype.children = function() {
+ return this.children_;
+};
+
+jasmine.Suite.prototype.execute = function(onComplete) {
+ var self = this;
+ this.queue.start(function () {
+ self.finish(onComplete);
+ });
+};
+jasmine.WaitsBlock = function(env, timeout, spec) {
+ this.timeout = timeout;
+ jasmine.Block.call(this, env, null, spec);
+};
+
+jasmine.util.inherit(jasmine.WaitsBlock, jasmine.Block);
+
+jasmine.WaitsBlock.prototype.execute = function (onComplete) {
+ if (jasmine.VERBOSE) {
+ this.env.reporter.log('>> Jasmine waiting for ' + this.timeout + ' ms...');
+ }
+ this.env.setTimeout(function () {
+ onComplete();
+ }, this.timeout);
+};
+/**
+ * A block which waits for some condition to become true, with timeout.
+ *
+ * @constructor
+ * @extends jasmine.Block
+ * @param {jasmine.Env} env The Jasmine environment.
+ * @param {Number} timeout The maximum time in milliseconds to wait for the condition to become true.
+ * @param {Function} latchFunction A function which returns true when the desired condition has been met.
+ * @param {String} message The message to display if the desired condition hasn't been met within the given time period.
+ * @param {jasmine.Spec} spec The Jasmine spec.
+ */
+jasmine.WaitsForBlock = function(env, timeout, latchFunction, message, spec) {
+ this.timeout = timeout || env.defaultTimeoutInterval;
+ this.latchFunction = latchFunction;
+ this.message = message;
+ this.totalTimeSpentWaitingForLatch = 0;
+ jasmine.Block.call(this, env, null, spec);
+};
+jasmine.util.inherit(jasmine.WaitsForBlock, jasmine.Block);
+
+jasmine.WaitsForBlock.TIMEOUT_INCREMENT = 10;
+
+jasmine.WaitsForBlock.prototype.execute = function(onComplete) {
+ if (jasmine.VERBOSE) {
+ this.env.reporter.log('>> Jasmine waiting for ' + (this.message || 'something to happen'));
+ }
+ var latchFunctionResult;
+ try {
+ latchFunctionResult = this.latchFunction.apply(this.spec);
+ } catch (e) {
+ this.spec.fail(e);
+ onComplete();
+ return;
+ }
+
+ if (latchFunctionResult) {
+ onComplete();
+ } else if (this.totalTimeSpentWaitingForLatch >= this.timeout) {
+ var message = 'timed out after ' + this.timeout + ' msec waiting for ' + (this.message || 'something to happen');
+ this.spec.fail({
+ name: 'timeout',
+ message: message
+ });
+
+ this.abort = true;
+ onComplete();
+ } else {
+ this.totalTimeSpentWaitingForLatch += jasmine.WaitsForBlock.TIMEOUT_INCREMENT;
+ var self = this;
+ this.env.setTimeout(function() {
+ self.execute(onComplete);
+ }, jasmine.WaitsForBlock.TIMEOUT_INCREMENT);
+ }
+};
+
+jasmine.version_= {
+ "major": 1,
+ "minor": 3,
+ "build": 1,
+ "revision": 1354556913
+};
diff --git a/js/js-storage-master/Jasmine/lib/js.cookie.js b/js/js-storage-master/Jasmine/lib/js.cookie.js
new file mode 100644
index 00000000..c0a81d67
--- /dev/null
+++ b/js/js-storage-master/Jasmine/lib/js.cookie.js
@@ -0,0 +1,155 @@
+/*!
+ * JavaScript Cookie v2.1.1
+ * https://github.com/js-cookie/js-cookie
+ *
+ * Copyright 2006, 2015 Klaus Hartl & Fagner Brack
+ * Released under the MIT license
+ */
+;(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ define(factory);
+ } else if (typeof exports === 'object') {
+ module.exports = factory();
+ } else {
+ var OldCookies = window.Cookies;
+ var api = window.Cookies = factory();
+ api.noConflict = function () {
+ window.Cookies = OldCookies;
+ return api;
+ };
+ }
+}(function () {
+ function extend() {
+ var i = 0;
+ var result = {};
+ for (; i < arguments.length; i++) {
+ var attributes = arguments[i];
+ for (var key in attributes) {
+ result[key] = attributes[key];
+ }
+ }
+ return result;
+ }
+
+ function init(converter) {
+ function api(key, value, attributes) {
+ var result;
+ if (typeof document === 'undefined') {
+ return;
+ }
+
+ // Write
+
+ if (arguments.length > 1) {
+ attributes = extend({
+ path: '/'
+ }, api.defaults, attributes);
+
+ if (typeof attributes.expires === 'number') {
+ var expires = new Date();
+ expires.setMilliseconds(expires.getMilliseconds() + attributes.expires * 864e+5);
+ attributes.expires = expires;
+ }
+
+ try {
+ result = JSON.stringify(value);
+ if (/^[\{\[]/.test(result)) {
+ value = result;
+ }
+ } catch (e) {
+ }
+
+ if (!converter.write) {
+ value = encodeURIComponent(String(value))
+ .replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);
+ } else {
+ value = converter.write(value, key);
+ }
+
+ key = encodeURIComponent(String(key));
+ key = key.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent);
+ key = key.replace(/[\(\)]/g, escape);
+
+ return (document.cookie = [
+ key, '=', value,
+ attributes.expires && '; expires=' + attributes.expires.toUTCString(), // use expires attribute, max-age is not supported by IE
+ attributes.path && '; path=' + attributes.path,
+ attributes.domain && '; domain=' + attributes.domain,
+ attributes.secure ? '; secure' : ''
+ ].join(''));
+ }
+
+ // Read
+
+ if (!key) {
+ result = {};
+ }
+
+ // To prevent the for loop in the first place assign an empty array
+ // in case there are no cookies at all. Also prevents odd result when
+ // calling "get()"
+ var cookies = document.cookie ? document.cookie.split('; ') : [];
+ var rdecode = /(%[0-9A-Z]{2})+/g;
+ var i = 0;
+
+ for (; i < cookies.length; i++) {
+ var parts = cookies[i].split('=');
+ var name = parts[0].replace(rdecode, decodeURIComponent);
+ var cookie = parts.slice(1).join('=');
+
+ if (cookie.charAt(0) === '"') {
+ cookie = cookie.slice(1, -1);
+ }
+
+ try {
+ cookie = converter.read ?
+ converter.read(cookie, name) : converter(cookie, name) ||
+ cookie.replace(rdecode, decodeURIComponent);
+
+ if (this.json) {
+ try {
+ cookie = JSON.parse(cookie);
+ } catch (e) {
+ }
+ }
+
+ if (key === name) {
+ result = cookie;
+ break;
+ }
+
+ if (!key) {
+ result[name] = cookie;
+ }
+ } catch (e) {
+ }
+ }
+
+ return result;
+ }
+
+ api.set = api;
+ api.get = function (key) {
+ return api(key);
+ };
+ api.getJSON = function () {
+ return api.apply({
+ json: true
+ }, [].slice.call(arguments));
+ };
+ api.defaults = {};
+
+ api.remove = function (key, attributes) {
+ api(key, '', extend(attributes, {
+ expires: -1
+ }));
+ };
+
+ api.withConverter = init;
+
+ return api;
+ }
+
+ return init(function () {
+ });
+}));
diff --git a/js/js-storage-master/Jasmine/spec/js.storage.spec.js b/js/js-storage-master/Jasmine/spec/js.storage.spec.js
new file mode 100644
index 00000000..27105755
--- /dev/null
+++ b/js/js-storage-master/Jasmine/spec/js.storage.spec.js
@@ -0,0 +1,474 @@
+function getWindowStorage(name) {
+ if (testStorage(name)) return window[name];
+ return window[name.replace('Storage', 'CookieStorage')];
+}
+
+function testStorage(name) {
+ if (!window[name]) return false;
+ var foo = 'jsapi';
+ try {
+ window[name].setItem(foo, foo);
+ window[name].removeItem(foo);
+ return true;
+ } catch (e) {
+ return false;
+ }
+}
+
+function clearAll() {
+ wl.clear();
+ ws.clear();
+ if (typeof Cookies !== 'undefined') {
+ for (var key in Cookies.get()) {
+ if (key != '') {
+ Cookies.remove(key, {path: window.cookieStorage._path});
+ }
+ }
+ }
+}
+
+wl = getWindowStorage('localStorage');
+ws = getWindowStorage('sessionStorage');
+clearAll();
+
+describe("JS Storage", function () {
+ /* Basic tests */
+ describe('Basics', function () {
+ if (testStorage('localStorage')) {
+ it("Storage are natively avalaible", function () {
+ expect(window.localStorage).toEqual(jasmine.any(Object));
+ expect(window.sessionStorage).toEqual(jasmine.any(Object));
+ });
+ } else {
+ it("Storage are not natively avalaible but cookie fallback is enable", function () {
+ expect(wl).toEqual(jasmine.any(Object));
+ expect(ws).toEqual(jasmine.any(Object));
+ });
+ }
+ it("'createNamespace' create a new namespace in all storages", function () {
+ var ns = Storages.initNamespaceStorage('test_ns');
+ expect(Storages.namespaceStorages['test_ns']).toEqual(ns);
+ expect(wl.getItem('test_ns')).toEqual("{}");
+ expect(ws.getItem('test_ns')).toEqual("{}");
+ if (typeof Cookies !== 'undefined') {
+ expect(window.cookieStorage.getItem('test_ns')).toEqual("{}");
+ }
+ });
+ });
+
+
+ /* Tests on all storage */
+ var storage_types = ['localStorage', 'sessionStorage'];
+ if (typeof Cookies !== 'undefined') {
+ storage_types.push('cookieStorage');
+ } else {
+ console.log("Skipping Storages.cookieStorage specs. Could not load js-cookie.");
+ }
+ storage_types.push('ns.localStorage');
+ storage_types.push('ns.sessionStorage');
+ if (typeof Cookies !== 'undefined') {
+ storage_types.push('ns.cookieStorage');
+ }
+
+ for (var s in storage_types) {
+ describe(storage_types[s], function () {
+ var substorage, storage, wstorage;
+
+ if (storage_types[s].indexOf('ns.') === 0) {
+ substorage = storage_types[s].substr(3);
+ storage = Storages.initNamespaceStorage('test_ns')[substorage];
+ wstorage = {
+ getItem: function (n) {
+ var ret = getWindowStorage(substorage).getItem('test_ns');
+ ret = JSON.parse(ret);
+ ret = ret[n];
+ if (typeof ret == "object") return JSON.stringify(ret);
+ else if (typeof ret == "undefined") return null;
+ return ret;
+ },
+ setItem: function (n, v) {
+ var ret = JSON.parse(getWindowStorage(substorage).getItem('test_ns'));
+ try {
+ v = JSON.parse(v);
+ } catch (e) {
+ }
+ ret[n] = v;
+ getWindowStorage(substorage).setItem('test_ns', JSON.stringify(ret));
+ }
+ };
+ } else {
+ substorage = false;
+ storage = Storages[storage_types[s]];
+ wstorage = getWindowStorage(storage_types[s]);
+ }
+
+ beforeEach(function () {
+ if (substorage) Storages.initNamespaceStorage('test_ns');
+ });
+ afterEach(function () {
+ clearAll();
+ });
+
+ /* Remove tests */
+ it("'removeAll' removes all items", function () {
+ wstorage.setItem("itemToDelete1", "value1");
+ wstorage.setItem("itemToDelete2", "value2");
+ storage.removeAll();
+ if (substorage) Storages.initNamespaceStorage('test_ns');
+ expect(wstorage.getItem("itemToDelete1")).toEqual(null);
+ expect(wstorage.getItem("itemToDelete2")).toEqual(null);
+ });
+
+ it("'remove' removes one item (by name)", function () {
+ wstorage.setItem("itemToDelete", "value");
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove("itemToDelete");
+ expect(wstorage.getItem("itemToDelete")).toEqual(null);
+ expect(wstorage.getItem("itemToNotDelete")).toEqual("value");
+ });
+
+ it("'remove' removes one item (by chain arguments)", function () {
+ wstorage.setItem("itemToDelete", JSON.stringify({"item1": "value1", "item2": "value2"}));
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove("itemToDelete", "item1");
+ expect(JSON.parse(wstorage.getItem("itemToDelete"))).toEqual({"item2": "value2"});
+ expect(wstorage.getItem("itemToNotDelete")).toEqual("value");
+ });
+
+ it("'remove' removes one item (by js syntax)", function () {
+ wstorage.setItem("itemToDelete", JSON.stringify({"item1": "value1", "item2": "value2"}));
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove("itemToDelete.item1");
+ expect(JSON.parse(wstorage.getItem("itemToDelete"))).toEqual({"item2": "value2"});
+ expect(wstorage.getItem("itemToNotDelete")).toEqual("value");
+ });
+
+ it("'remove' removes multiple items (by name)", function () {
+ wstorage.setItem("itemToDelete1", "value1");
+ wstorage.setItem("itemToDelete2", "value2");
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove(["itemToDelete1", "itemToDelete2"]);
+ expect(storage.get("itemToDelete1")).toEqual(null);
+ expect(storage.get("itemToDelete2")).toEqual(null);
+ expect(storage.get("itemToNotDelete")).toEqual("value");
+ });
+
+ it("'remove' removes multiple items (by chain arguments)", function () {
+ wstorage.setItem("itemToDelete", JSON.stringify({
+ "item1": "value1",
+ "item2": "value2",
+ "item3": "value3"
+ }));
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove("itemToDelete", ["item1", "item2"]);
+ expect(JSON.parse(wstorage.getItem("itemToDelete"))).toEqual({"item3": "value3"});
+ expect(wstorage.getItem("itemToNotDelete")).toEqual("value");
+ });
+
+ it("'remove' removes multiple items (by js syntax)", function () {
+ wstorage.setItem("itemToDelete", JSON.stringify({
+ "prop1": {
+ "item1": "value1",
+ "item2": "value2",
+ "item3": "value3"
+ }
+ }));
+ wstorage.setItem("itemToNotDelete", "value");
+ storage.remove("itemToDelete.prop1", ["item1", "item2"]);
+ expect(JSON.parse(wstorage.getItem("itemToDelete")).prop1).toEqual({"item3": "value3"});
+ expect(wstorage.getItem("itemToNotDelete")).toEqual("value");
+ });
+
+
+ /* Set tests */
+ it("'set' stores one item (by name)", function () {
+ var ret = storage.set("item", "value");
+ expect(ret).toEqual("value");
+ expect(wstorage.getItem("item")).toEqual("value");
+ });
+
+ it("'set' stores one item (by chain arguments)", function () {
+ var ret = storage.set("item", "itemprop", "value");
+ expect(ret).toEqual({"itemprop": "value"});
+ expect(JSON.parse(wstorage.getItem("item"))).toEqual({"itemprop": "value"});
+ });
+
+ it("'set' stores one item (by js syntax)", function () {
+ var ret = storage.set("item.itemprop", "value");
+ expect(ret).toEqual({"itemprop": "value"});
+ expect(JSON.parse(wstorage.getItem("item"))).toEqual({"itemprop": "value"});
+ });
+
+ it("'set' stores multiple items (by name)", function () {
+ var ret = storage.set({"item1": "value1", "item2": "value2"});
+ expect(ret).toEqual({"item1": "value1", "item2": "value2"});
+ expect(wstorage.getItem("item1")).toEqual("value1");
+ expect(wstorage.getItem("item2")).toEqual("value2");
+ });
+
+ it("'set' stores multiple items (by chain arguments)", function () {
+ var ret = storage.set("item", "prop1", {"item1": "value1", "item2": "value2"});
+ expect(ret).toEqual({"prop1": {"item1": "value1", "item2": "value2"}});
+ expect(JSON.parse(wstorage.getItem("item")).prop1.item1).toEqual("value1");
+ expect(JSON.parse(wstorage.getItem("item")).prop1.item2).toEqual("value2");
+ });
+
+ it("'set' stores multiple items (by js syntax)", function () {
+ var ret = storage.set("item.prop1", {"item1": "value1", "item2": "value2"});
+ expect(ret).toEqual({"prop1": {"item1": "value1", "item2": "value2"}});
+ expect(JSON.parse(wstorage.getItem("item")).prop1.item1).toEqual("value1");
+ expect(JSON.parse(wstorage.getItem("item")).prop1.item2).toEqual("value2");
+ });
+
+ it("'set' stores array as first level and update just one index og the array (by js syntax)", function () {
+ var ret;
+ ret = storage.set("item.2", [1, 2, 3]);
+ expect(ret).toEqual([undefined, undefined, [1, 2, 3]]); // ret contains value before insertion in storage, so array contains undefined values
+ expect(JSON.parse(wstorage.getItem("item"))).toEqual([null, null, [1, 2, 3]]); // storage use json, so undefined values are converted to null values
+ ret = storage.set("item.2.0", 4);
+ expect(ret).toEqual([null, null, [4, 2, 3]]);
+ expect(JSON.parse(wstorage.getItem("item"))[2]).toEqual([4, 2, 3]);
+ });
+
+ it("'set' stores array as second level and update just one index og the array (by js syntax)", function () {
+ var ret;
+ ret = storage.set("item.prop1.2", [1, 2, 3]);
+ expect(ret).toEqual({prop1: [undefined, undefined, [1, 2, 3]]}); // ret contains value before insertion in storage, so array contains undefined values
+ expect(JSON.parse(wstorage.getItem("item"))).toEqual({prop1: [null, null, [1, 2, 3]]}); // storage use json, so undefined values are converted to null values
+ ret = storage.set("item.prop1.2.0", 4);
+ expect(ret).toEqual({prop1: [null, null, [4, 2, 3]]});
+ expect(JSON.parse(wstorage.getItem("item")).prop1[2]).toEqual([4, 2, 3]);
+ });
+
+
+ /* Get tests */
+ it("'get' retrieves one item (by name)", function () {
+ storage.set("item", "value");
+ expect(storage.get("item")).toEqual("value");
+ });
+
+ it("'get' retrieves one item (by chain arguments)", function () {
+ storage.set("item", "itemprop", "value");
+ expect(storage.get("item", "itemprop")).toEqual("value");
+ });
+
+ it("'get' retrieves one item (by js syntax)", function () {
+ storage.set("item", "itemprop", "value");
+ expect(storage.get("item.itemprop")).toEqual("value");
+ });
+
+ it("'get' retrieves multiple items (by name)", function () {
+ storage.set("item1", "value1");
+ storage.set("item2", "value2");
+ storage.set("item3", "value3");
+ expect(storage.get(["item1", "item3"])).toEqual({"item1": "value1", "item3": "value3"});
+ });
+
+ it("'get' retrieves multiple items (by chain arguments)", function () {
+ storage.set("item", {"itemprop1": "value1", "itemprop2": "value2", "itemprop3": "value3"});
+ expect(storage.get("item", ["itemprop1", "itemprop3"])).toEqual({
+ "itemprop1": "value1",
+ "itemprop3": "value3"
+ });
+ });
+
+ it("'get' retrieves multiple items (by js syntax)", function () {
+ storage.set("item", "item1", {"item1prop1": "value1", "item1prop2": "value2", "item1prop3": "value3"});
+ expect(storage.get("item.item1", ["item1prop1", "item1prop3"])).toEqual({
+ "item1prop1": "value1",
+ "item1prop3": "value3"
+ });
+ });
+
+ /* alwaysUseJson tests */
+ it("'alwaysUseJson' activated", function () {
+ var ret;
+
+ Storages.alwaysUseJsonInStorage(true);
+
+ ret = storage.set("item", 1);
+ expect(ret).toEqual(1);
+ expect(storage.get("item")).toEqual(1);
+
+ ret = storage.set("item", "1");
+ expect(ret).toEqual("1");
+ expect(storage.get("item")).toEqual("1");
+
+ Storages.alwaysUseJsonInStorage(false);
+ });
+
+ /* Keys tests */
+ it("'keys' returns the keys associated with a storage", function () {
+ storage.set("item1", "value1");
+ storage.set("item2", "value2");
+ expect(storage.keys()).toEqual(["item1", "item2"]);
+ });
+
+ it("'keys' returns the keys associated with an item in a storage (by name)", function () {
+ storage.set("item", {"item1": "value1", "item2": "value2"});
+ expect(storage.keys("item")).toEqual(["item1", "item2"]);
+ });
+
+ it("'keys' returns the keys associated with an item in a storage (by chain arguments)", function () {
+ storage.set("item", "itemprop", {"item1": "value1", "item2": "value2"});
+ expect(storage.keys("item", "itemprop")).toEqual(["item1", "item2"]);
+ });
+
+ it("'keys' returns the keys associated with an item in a storage (by js syntax)", function () {
+ storage.set("item.itemprop", {"item1": "value1", "item2": "value2"});
+ expect(storage.keys("item", "itemprop")).toEqual(["item1", "item2"]);
+ });
+
+ /* isEmpty tests */
+ it("'isEmpty' returns true if there is no items in storage", function () {
+ expect(storage.isEmpty()).toBeTruthy();
+ storage.set("item", "value");
+ expect(storage.isEmpty()).toBeFalsy();
+ });
+
+ it("'isEmpty' returns true if item in storage is empty (by name)", function () {
+ storage.set("item1", "value");
+ storage.set("item2", "");
+ storage.set("item3", []);
+ storage.set("item4", [1]);
+ storage.set("item5", {});
+ storage.set("item6", {"prop": "value"});
+
+ expect(storage.isEmpty("item1")).toBeFalsy();
+ expect(storage.isEmpty("item2")).toBeTruthy();
+ expect(storage.isEmpty("item3")).toBeTruthy();
+ expect(storage.isEmpty("item4")).toBeFalsy();
+ expect(storage.isEmpty("item5")).toBeTruthy();
+ expect(storage.isEmpty("item6")).toBeFalsy();
+ });
+
+ it("'isEmpty' returns true if item in storage is empty (by chain arguments)", function () {
+ storage.set("item", "prop1", "value1");
+ expect(storage.isEmpty("item", "prop1")).toBeFalsy();
+ expect(storage.isEmpty("item", "prop2")).toBeTruthy();
+ });
+
+ it("'isEmpty' returns true if item in storage is empty (by js syntax)", function () {
+ storage.set("item", "prop1", "value1");
+ expect(storage.isEmpty("item.prop1")).toBeFalsy();
+ expect(storage.isEmpty("item.prop2")).toBeTruthy();
+ });
+
+ it("'isEmpty' returns true if multiple items in storage are empty (by name)", function () {
+ storage.set({"item1": "value1", "item2": "value2", "item3": "", "item4": ""});
+ expect(storage.isEmpty(["item1", "item2"])).toBeFalsy();
+ expect(storage.isEmpty(["item3", "item4"])).toBeTruthy();
+ expect(storage.isEmpty(["item1", "item3"])).toBeFalsy();
+ });
+
+ it("'isEmpty' returns true if multiple items in storage are empty (by chain arguments)", function () {
+ storage.set("item1", "prop1", {"item1": "value1", "item2": "value2", "item3": "", "item4": ""});
+ expect(storage.isEmpty("item1", "prop1", ["item1", "item2"])).toBeFalsy();
+ expect(storage.isEmpty("item1", "prop1", ["item3", "item4"])).toBeTruthy();
+ expect(storage.isEmpty("item1", "prop1", ["item1", "item3"])).toBeFalsy();
+ });
+
+ it("'isEmpty' returns true if multiple items in storage are empty (by js syntax)", function () {
+ storage.set("item1", "prop1", {"item1": "value1", "item2": "value2", "item3": "", "item4": ""});
+ expect(storage.isEmpty("item1.prop1", ["item1", "item2"])).toBeFalsy();
+ expect(storage.isEmpty("item1.prop1", ["item3", "item4"])).toBeTruthy();
+ expect(storage.isEmpty("item1.prop1", ["item1", "item3"])).toBeFalsy();
+ });
+
+
+ /* isSet tests */
+ it("'isSet' returns true if item in storage exists (by name)", function () {
+ storage.set("item1", "value");
+ storage.set("item2", null);
+ storage.set("item3", "");
+ expect(storage.isSet("item1")).toBeTruthy();
+ expect(storage.isSet("item2")).toBeFalsy();
+ expect(storage.isSet("item3")).toBeTruthy();
+ expect(storage.isSet("item4")).toBeFalsy();
+ });
+
+ it("'isSet' returns true if item in storage exists (by chain arguments)", function () {
+ storage.set("item", "prop1", "value1");
+ expect(storage.isSet("item", "prop1")).toBeTruthy();
+ expect(storage.isSet("item", "prop2")).toBeFalsy();
+ });
+
+ it("'isSet' returns true if item in storage exists (by js syntax)", function () {
+ storage.set("item", "prop1", "value1");
+ expect(storage.isSet("item.prop1")).toBeTruthy();
+ expect(storage.isSet("item.prop2")).toBeFalsy();
+ });
+
+ it("'isSet' returns true if multiple items in storage exist (by name)", function () {
+ storage.set({"item1": "value1", "item2": "value2", "item3": "", "item4": null});
+ expect(storage.isSet(["item1", "item2"])).toBeTruthy();
+ expect(storage.isSet(["item1", "item3"])).toBeTruthy();
+ expect(storage.isSet(["item1", "item4"])).toBeFalsy();
+ });
+
+ it("'isSet' returns true if multiple items in storage exist (by chain arguments)", function () {
+ storage.set("item1", "prop1", {"item1": "value1", "item2": "value2", "item3": "", "item4": null});
+ expect(storage.isSet("item1", "prop1", ["item1", "item2"])).toBeTruthy();
+ expect(storage.isSet("item1", "prop1", ["item1", "item3"])).toBeTruthy();
+ expect(storage.isSet("item1", "prop1", ["item1", "item4"])).toBeFalsy();
+ });
+
+ it("'isSet' returns true if multiple items in storage exist (by js syntax)", function () {
+ storage.set("item1", "prop1", {"item1": "value1", "item2": "value2", "item3": "", "item4": null});
+ expect(storage.isSet("item1.prop1", ["item1", "item2"])).toBeTruthy();
+ expect(storage.isSet("item1.prop1", ["item1", "item3"])).toBeTruthy();
+ expect(storage.isSet("item1.prop1", ["item1", "item4"])).toBeFalsy();
+ });
+ });
+ }
+
+
+ /* Specific tests */
+ describe("Specific cases", function () {
+ clearAll();
+ it("'removeAll' reinitialize namespace if true is given in arguments", function () {
+ Storages.localStorage.set("item", "value");
+ Storages.sessionStorage.set("item", "value");
+ var ns = Storages.initNamespaceStorage("test_ns");
+ ns.localStorage.set("item", "value");
+ ns.sessionStorage.set("item", "value");
+ Storages.localStorage.removeAll(true);
+ expect(Storages.localStorage.get("item")).toEqual(null);
+ expect(Storages.sessionStorage.get("item")).toEqual("value");
+ expect(ns.localStorage.get("item")).toEqual(null);
+ expect(ns.sessionStorage.get("item")).toEqual("value");
+ });
+
+ it("'Storages.removeAllStorages' remove all items in all storages", function () {
+ Storages.localStorage.set("item", "value");
+ Storages.sessionStorage.set("item", "value");
+ Storages.initNamespaceStorage("test_ns");
+ Storages.removeAllStorages();
+ expect(Storages.localStorage.get("item")).toEqual(null);
+ expect(Storages.sessionStorage.get("item")).toEqual(null);
+ expect(Storages.localStorage.get("test_ns")).toEqual(null);
+ expect(Storages.sessionStorage.get("test_ns")).toEqual(null);
+ if (typeof Cookies !== 'undefined') {
+ expect(Storages.cookieStorage.get("item")).toEqual(null);
+ expect(Storages.cookieStorage.get("test_ns")).toEqual(null);
+ }
+ expect(Storages.namespaceStorages).toEqual({});
+ });
+
+ it("'Storages.removeAllStorages' remove all items in all storages and reinitialize namespace if true is given in arguments", function () {
+ Storages.localStorage.set("item", "value");
+ Storages.sessionStorage.set("item", "value");
+ var ns = Storages.initNamespaceStorage("test_ns");
+ Storages.removeAllStorages(true);
+ expect(Storages.localStorage.get("item")).toEqual(null);
+ expect(Storages.sessionStorage.get("item")).toEqual(null);
+ expect(Storages.localStorage.get("test_ns")).toEqual({});
+ expect(Storages.sessionStorage.get("test_ns")).toEqual({});
+ if (typeof Cookies !== 'undefined') {
+ expect(Storages.cookieStorage.get("item")).toEqual(null);
+ expect(Storages.cookieStorage.get("test_ns")).toEqual({});
+ }
+ expect(Storages.namespaceStorages["test_ns"]).toEqual(ns);
+ });
+ });
+});
diff --git a/js/js-storage-master/README.md b/js/js-storage-master/README.md
new file mode 100644
index 00000000..ed8fe3be
--- /dev/null
+++ b/js/js-storage-master/README.md
@@ -0,0 +1,206 @@
+JS Storage
+==========
+
+JS Storage is a plugin that simplifies access to storages (HTML5), cookies, and namespace storage functionality and provides compatiblity for old browsers with cookies!
+
+Functionalities:
+* To store object easily, encode/decode it with JSON automatically
+* Ability to define namespace and use it as a specific storage
+* Magic getter and setter to have access at an infinite object level with one call
+* Add js-cookie (https://github.com/js-cookie/js-cookie) and manage your cookies with this API
+
+
+Storages
+--------
+#### Local storage
+ Storages.localStorage
+
+#### Session storage
+ Storages.sessionStorage
+
+#### Cookie storage (only if js-cookie added)
+ Storages.cookieStorage
+
+#### Namespace storage
+ ns=Storages.initNamespaceStorage('ns_name');
+ ns.localStorage // Namespace in localStorage
+ ns.sessionStorage // Namespace in sessionStorage
+ ns.cookieStorage // Namespace in cookieStorage (only if js-cookie added)
+
+Public methods on storage
+-------------------------
+
+Public methods are usable on all storage objects (Storages.localStorage, Storages.sessionStorage, Storages.cookieStorage or object returned by Storages.initNamespaceStorage)
+
+ storage=Storages.localStorage
+
+### `get()`
+Get an item from a storage.
+If last argument is an array (can be preceded by other arguments to parse storage), get() returns an object with value for each item of this array.
+
+ storage.get('foo') // Return storage.foo
+ storage.get('foo.foo2.foo3...') // Return storage.foo.foo2.foo3...
+ storage.get('foo','foo2','foo3'...) // Return storage.foo.foo2.foo3...
+ storage.get(['foo','foo2']) // Return {foo:storage.foo,foo2:storage.foo2}
+
+### `set()`
+Set an item in a storage.
+If argument is an object, set() sets value on storage for each property of this object.
+
+ storage.set('foo','value') // Set storage.foo to "value"
+ storage.set('foo.foo2.foo3...','value') // Set storage.foo.foo2.foo3... to "value"
+ storage.set('foo','foo2','foo3'...,'value') // Set storage.foo.foo2.foo3... to "value"
+ storage.set({'foo':'value','foo2':'value2'}) // Set storage.foo to "value" and storage.foo2 to "value2"
+
+### `keys()`
+Get keys of a storage or an item in a storage.
+
+ storage.set('foo','value')
+ storage.set('foo2','foo3'..., {'foo4':'value4','foo5':'value5'})
+ storage.keys() // Return keys of storage (["foo", "foo2"])
+ storage.keys('foo2') // Return keys of storage.foo2 (["foo3"])
+ storage.keys('foo2.foo3...') // Return keys of storage.foo2.foo3... (["foo4", "foo5"])
+ storage.keys('foo2','foo3'...) // Return keys of storage.foo2.foo3... (["foo4", "foo5"])
+
+### `isEmpty()`
+Check if a storage or an item in a storage is empty (if equal to "", 0, null, undefined, [] or {}).
+If last argument is an array (can be preceded by other arguments to parse storage), isEmpty() tests storage for each item of this array, and returns true only if all tests return true.
+
+ storage.set('foo','value')
+ storage.set('foo2','foo3'..., {'foo4':'value4','foo5':'value5'})
+ storage.set('foo6','')
+ storage.set('foo7',{})
+ storage.isEmpty('foo') // Check if storage.foo is empty (false)
+ storage.isEmpty('foo6') // Check if storage.foo6 is empty (true)
+ storage.isEmpty('foo7') // Check if storage.foo7 is empty (true)
+ storage.isEmpty('foo2.foo3...') // Check if storage.foo2.foo3... is empty (false)
+ storage.isEmpty('foo2','foo3'...) // Check if storage.foo2.foo3... is empty (false)
+ storage.isEmpty(['foo','foo2']) // Check if storage.foo and storage.foo2 are empty (false)
+ storage.isEmpty(['foo','foo7']) // Check if storage.foo and storage.foo7 are empty (false)
+ storage.isEmpty(['foo6','foo7']) // Check if storage.foo6 and storage.foo7 are empty (true)
+ storage.isEmpty('foo2','foo3'...,['foo6','foo7']) // Check if storage.foo2.foo3...foo6 and storage.foo2.foo3...foo7 are empty (true)
+
+### `isSet()`
+Check if an item exists in a storage (if not null or undefined).
+If last argument is an array (can be preceded by other arguments to parse storage), isSet() tests storage for each item of this array, and returns true only if all test return true.
+
+ storage.set('foo','value')
+ storage.set('foo2','foo3'..., {'foo4':'value4','foo5':'value5'})
+ storage.set('foo6','')
+ storage.isSet('foo') // Check if storage.foo exists (true)
+ storage.isSet('foo6') // Check if storage.foo6 exists (true)
+ storage.isSet('foo7') // Check if storage.foo7 exists (false)
+ storage.isSet('foo2.foo3'...) // Check if storage.foo2.foo3... exists (true)
+ storage.isSet('foo2','foo3'...) // Check if storage.foo2.foo3... exists (true)
+ storage.isSet(['foo','foo2']) // Check if storage.foo and storage.foo2 exist (true)
+ storage.isSet(['foo','foo7']) // Check if storage.foo and storage.foo7 exist (false)
+ storage.isSet('foo2','foo3'...,['foo6','foo7']) // Check if storage.foo2.foo3...foo6 and storage.foo2.foo3...foo7 exist (false)
+
+### `remove()`
+Delete an item from a storage.
+If last argument is an array (can be preceded by other arguments to parse storage), remove() removes value of storage for each item of this array.
+
+ storage.remove('foo') // Delete storage.foo
+ storage.remove('foo.foo2.foo3'...) // Delete storage.foo.foo2.foo3...
+ storage.remove('foo','foo2','foo3'...) // Delete storage.foo.foo2.foo3...
+ storage.remove(['foo','foo2']) // Delete storage.foo and storage.foo2
+
+### `removeAll()`
+Truncate the storage
+
+ storage.removeAll() // Delete all items from the storage
+ storage.removeAll(true) // Only on global storages. Delete all items from the storage and reinitialize previously initialized namespaces
+
+### `setExpires()`
+Only on cookieStorage.
+Sets expires date in days (default value is null, cookie is valid for session only; only cookies set after setExpires() call will be affected).
+
+ storage.setExpires(10) // Set expiry date to today + 10 days
+
+This method returns the storage object, so you can:
+
+ storage.setExpires(10).set('foo','value') // Set expiry date to today + 10 days and set a new cookie
+
+### `setPath()`
+Only on cookieStorage.
+Sets path for cookies (default value is null; only cookies set after setPath() call will be affected).
+
+ storage.setPath('/') // Set path to '/'
+
+This method return the storage object, so you can:
+
+ storage.setPath('/').set('foo','value') // Set path to '/' and set a new cookie
+
+### `setDomain()`
+Only on cookieStorage.
+Sets domain for cookies (default value is null; only cookies set after setDomain() call will be affected).
+
+ storage.setDomain('www.ndd.com') // Set domain to www.ndd.com
+
+This method return the storage object, so you can:
+
+ storage.setDomain('www.ndd.com').set('foo','value') // Set domain to www.ndd.com and set a new cookie
+
+### `setConf()`
+Only on cookieStorage.
+Sets cookie configuration with an object (only cookies set after setConf() call will be affected).
+
+ storage.setConf({path:'/',expires:10,'domain':'www.ndd.com'}) // Set expiry date, domain and path
+
+This method return the storage object, so you can:
+
+ storage.setConf({path:'/',expires:10}).set('foo','value') // Set configuration and set a new cookie
+
+### `setDefaultConf()`
+Only on cookieStorage.
+Sets default configuration (only cookies set after setDefaultConf() call will be affected).
+
+ storage.setDefaultConf() // Set path, domain and expiry date to null
+
+This method return the storage object, so you can:
+
+ storage.setDefaultConf().set('foo','value') // Set default configuration and set a new cookie
+
+### `Storages.namespaceStorages`
+Object that contains all initilialized namespace storages.
+
+### `Storages.removeAllStorages()`
+Delete all items of all storages.
+As removeAll(), if first argument given is set to true, namespaces are reinitialized.
+Else, Storages.namespaceStorages is set to an empty object and previous namespaces are lost.
+
+### `Storages.alwaysUseJsonInStorage()`
+By default, basic values (string, int...) are always stored as string in html5 storages.
+
+ window.localStorage.setItem('foo', 1);
+ window.localStorage.getItem('foo'); // Return "1"
+
+So by default, if you do equivalent with the plugin, there will be the same behavior.
+
+ Storages.localStorage.set('foo', 1);
+ Storages.localStorage.get('foo'); // Return "1"
+
+This is the case only if you store basic values in the root of the storage.
+In others cases, plugin use JSON to store values.
+
+ Storages.localStorage.set('foo.foo2', 1);
+ Storages.localStorage.get('foo.foo2'); // Return 1
+ window.localStorage.getItem('foo'); // Return "{"foo2":1}"
+
+If you want to be able to store typed values even on the root of the storages, call `Storages.alwaysUseJsonInStorage(true)`
+
+ Storages.alwaysUseJsonInStorage(true);
+
+ Storages.localStorage.set('foo', 1);
+ Storages.localStorage.get('foo'); // Return 1
+ window.localStorage.getItem('foo'); // Return "1"
+
+ Storages.localStorage.set('foo', '1');
+ Storages.localStorage.get('foo'); // Return "1"
+ window.localStorage.getItem('foo'); // Return ""1"", because value is JSON encoded
+
+
+Compatibility
+-------------
+
+JS Storage is compatible with all browsers that support storage and JSON natively (so all recents browsers) except IE8.
diff --git a/js/js-storage-master/bower.json b/js/js-storage-master/bower.json
new file mode 100644
index 00000000..69e59977
--- /dev/null
+++ b/js/js-storage-master/bower.json
@@ -0,0 +1,36 @@
+{
+ "name": "js-storage",
+ "version": "1.0.1",
+ "main": "js.storage.js",
+ "description": "Plugin that simplify access to storages (HTML5) & cookies, add namespace storage and provide compatiblity for old browsers",
+ "keywords": [
+ "storage",
+ "html5",
+ "localStorage",
+ "sessionStorage",
+ "cookie",
+ "namespace"
+ ],
+ "author": {
+ "name": "Julien Maurel",
+ "url": "https://github.com/julien-maurel"
+ },
+ "licenses": [
+ {
+ "type": "MIT",
+ "url": "http://www.opensource.org/licenses/mit-license.php"
+ }
+ ],
+ "homepage": "https://github.com/julien-maurel/js-storage",
+ "bugs": "https://github.com/julien-maurel/js-storage/issues",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/julien-maurel/js-storage.git"
+ },
+ "ignore": [
+ "Jasmine",
+ "gulp.js",
+ "/*.txt",
+ "/*.json"
+ ]
+}
diff --git a/js/js-storage-master/gulpfile.js b/js/js-storage-master/gulpfile.js
new file mode 100644
index 00000000..b4be42b6
--- /dev/null
+++ b/js/js-storage-master/gulpfile.js
@@ -0,0 +1,15 @@
+var gulp = require('gulp'),
+ uglify = require('gulp-uglify'),
+ rename = require('gulp-rename');
+
+// Compress task
+gulp.task('compress', function () {
+ return gulp.src('./js.storage.js')
+ .pipe(uglify({
+ preserveComments: function (win, doc) {
+ return /Licensed under/.test(doc.value);
+ }
+ }))
+ .pipe(rename('js.storage.min.js'))
+ .pipe(gulp.dest('./'));
+});
\ No newline at end of file
diff --git a/js/js-storage-master/js.storage.js b/js/js-storage-master/js.storage.js
new file mode 100644
index 00000000..ef12adf3
--- /dev/null
+++ b/js/js-storage-master/js.storage.js
@@ -0,0 +1,638 @@
+/*
+ * JS Storage Plugin
+ *
+ * Copyright (c) 2016 Julien Maurel
+ *
+ * Licensed under the MIT license:
+ * http://www.opensource.org/licenses/mit-license.php
+ *
+ * Project home:
+ * https://github.com/julien-maurel/js-storage
+ *
+ * Version: 1.0.1
+ */
+(function (factory) {
+ var registeredInModuleLoader = false;
+ if (typeof define === 'function' && define.amd) {
+ define(factory);
+ registeredInModuleLoader = true;
+ }
+ if (typeof exports === 'object') {
+ module.exports = factory();
+ registeredInModuleLoader = true;
+ }
+ if (!registeredInModuleLoader) {
+ var OldStorages = window.Storages;
+ var api = window.Storages = factory();
+ api.noConflict = function () {
+ window.Storages = OldStorages;
+ return api;
+ };
+ }
+}(function () {
+ // Variables used by utilities functions (like isPlainObject...)
+ var class2type = {};
+ var toString = class2type.toString;
+ var hasOwn = class2type.hasOwnProperty;
+ var fnToString = hasOwn.toString;
+ var ObjectFunctionString = fnToString.call(Object);
+ var getProto = Object.getPrototypeOf;
+ var apis = {};
+
+ // Prefix to use with cookie fallback
+ var cookie_local_prefix = "ls_";
+ var cookie_session_prefix = "ss_";
+
+ // Get items from a storage
+ function _get() {
+ var storage = this._type, l = arguments.length, s = window[storage], a = arguments, a0 = a[0], vi, ret, tmp, i, j;
+ if (l < 1) {
+ throw new Error('Minimum 1 argument must be given');
+ } else if (Array.isArray(a0)) {
+ // If second argument is an array, return an object with value of storage for each item in this array
+ ret = {};
+ for (i in a0) {
+ if (a0.hasOwnProperty(i)) {
+ vi = a0[i];
+ try {
+ ret[vi] = JSON.parse(s.getItem(vi));
+ } catch (e) {
+ ret[vi] = s.getItem(vi);
+ }
+ }
+ }
+ return ret;
+ } else if (l == 1) {
+ // If only 1 argument, return value directly
+ try {
+ return JSON.parse(s.getItem(a0));
+ } catch (e) {
+ return s.getItem(a0);
+ }
+ } else {
+ // If more than 1 argument, parse storage to retrieve final value to return it
+ // Get first level
+ try {
+ ret = JSON.parse(s.getItem(a0));
+ } catch (e) {
+ throw new ReferenceError(a0 + ' is not defined in this storage');
+ }
+ // Parse next levels
+ for (i = 1; i < l - 1; i++) {
+ ret = ret[a[i]];
+ if (ret === undefined) {
+ throw new ReferenceError([].slice.call(a, 1, i + 1).join('.') + ' is not defined in this storage');
+ }
+ }
+ // If last argument is an array, return an object with value for each item in this array
+ // Else return value normally
+ if (Array.isArray(a[i])) {
+ tmp = ret;
+ ret = {};
+ for (j in a[i]) {
+ if (a[i].hasOwnProperty(j)) {
+ ret[a[i][j]] = tmp[a[i][j]];
+ }
+ }
+ return ret;
+ } else {
+ return ret[a[i]];
+ }
+ }
+ }
+
+ // Set items of a storage
+ function _set() {
+ var storage = this._type, l = arguments.length, s = window[storage], a = arguments, a0 = a[0], a1 = a[1], vi, to_store = isNaN(a1) ? {} : [], type, tmp, i;
+ if (l < 1 || !_isPlainObject(a0) && l < 2) {
+ throw new Error('Minimum 2 arguments must be given or first parameter must be an object');
+ } else if (_isPlainObject(a0)) {
+ // If first argument is an object, set values of storage for each property of this object
+ for (i in a0) {
+ if (a0.hasOwnProperty(i)) {
+ vi = a0[i];
+ if (!_isPlainObject(vi) && !this.alwaysUseJson) {
+ s.setItem(i, vi);
+ } else {
+ s.setItem(i, JSON.stringify(vi));
+ }
+ }
+ }
+ return a0;
+ } else if (l == 2) {
+ // If only 2 arguments, set value of storage directly
+ if (typeof a1 === 'object' || this.alwaysUseJson) {
+ s.setItem(a0, JSON.stringify(a1));
+ } else {
+ s.setItem(a0, a1);
+ }
+ return a1;
+ } else {
+ // If more than 3 arguments, parse storage to retrieve final node and set value
+ // Get first level
+ try {
+ tmp = s.getItem(a0);
+ if (tmp != null) {
+ to_store = JSON.parse(tmp);
+ }
+ } catch (e) {
+ }
+ tmp = to_store;
+ // Parse next levels and set value
+ for (i = 1; i < l - 2; i++) {
+ vi = a[i];
+ type = isNaN(a[i + 1]) ? "object" : "array";
+ if (!tmp[vi] || type == "object" && !_isPlainObject(tmp[vi]) || type == "array" && !Array.isArray(tmp[vi])) {
+ if (type == "array") tmp[vi] = [];
+ else tmp[vi] = {};
+ }
+ tmp = tmp[vi];
+ }
+ tmp[a[i]] = a[i + 1];
+ s.setItem(a0, JSON.stringify(to_store));
+ return to_store;
+ }
+ }
+
+ // Remove items from a storage
+ function _remove() {
+ var storage = this._type, l = arguments.length, s = window[storage], a = arguments, a0 = a[0], to_store, tmp, i, j;
+ if (l < 1) {
+ throw new Error('Minimum 1 argument must be given');
+ } else if (Array.isArray(a0)) {
+ // If first argument is an array, remove values from storage for each item of this array
+ for (i in a0) {
+ if (a0.hasOwnProperty(i)) {
+ s.removeItem(a0[i]);
+ }
+ }
+ return true;
+ } else if (l == 1) {
+ // If only 2 arguments, remove value from storage directly
+ s.removeItem(a0);
+ return true;
+ } else {
+ // If more than 2 arguments, parse storage to retrieve final node and remove value
+ // Get first level
+ try {
+ to_store = tmp = JSON.parse(s.getItem(a0));
+ } catch (e) {
+ throw new ReferenceError(a0 + ' is not defined in this storage');
+ }
+ // Parse next levels and remove value
+ for (i = 1; i < l - 1; i++) {
+ tmp = tmp[a[i]];
+ if (tmp === undefined) {
+ throw new ReferenceError([].slice.call(a, 1, i).join('.') + ' is not defined in this storage');
+ }
+ }
+ // If last argument is an array,remove value for each item in this array
+ // Else remove value normally
+ if (Array.isArray(a[i])) {
+ for (j in a[i]) {
+ if (a[i].hasOwnProperty(j)) {
+ delete tmp[a[i][j]];
+ }
+ }
+ } else {
+ delete tmp[a[i]];
+ }
+ s.setItem(a0, JSON.stringify(to_store));
+ return true;
+ }
+ }
+
+ // Remove all items from a storage
+ function _removeAll(reinit_ns) {
+ var keys = _keys.call(this), i;
+ for (i in keys) {
+ if (keys.hasOwnProperty(i)) {
+ _remove.call(this, keys[i]);
+ }
+ }
+ // Reinitialize all namespace storages
+ if (reinit_ns) {
+ for (i in apis.namespaceStorages) {
+ if (apis.namespaceStorages.hasOwnProperty(i)) {
+ _createNamespace(i);
+ }
+ }
+ }
+ }
+
+ // Check if items of a storage are empty
+ function _isEmpty() {
+ var l = arguments.length, a = arguments, a0 = a[0], i;
+ if (l == 0) {
+ // If no argument, test if storage is empty
+ return (_keys.call(this).length == 0);
+ } else if (Array.isArray(a0)) {
+ // If first argument is an array, test each item of this array and return true only if all items are empty
+ for (i = 0; i < a0.length; i++) {
+ if (!_isEmpty.call(this, a0[i])) {
+ return false;
+ }
+ }
+ return true;
+ } else {
+ // If at least 1 argument, try to get value and test it
+ try {
+ var v = _get.apply(this, arguments);
+ // Convert result to an object (if last argument is an array, _get return already an object) and test each item
+ if (!Array.isArray(a[l - 1])) {
+ v = {'totest': v};
+ }
+ for (i in v) {
+ if (v.hasOwnProperty(i) && !(
+ (_isPlainObject(v[i]) && _isEmptyObject(v[i])) ||
+ (Array.isArray(v[i]) && !v[i].length) ||
+ (!v[i])
+ )) {
+ return false;
+ }
+ }
+ return true;
+ } catch (e) {
+ return true;
+ }
+ }
+ }
+
+ // Check if items of a storage exist
+ function _isSet() {
+ var l = arguments.length, a = arguments, a0 = a[0], i;
+ if (l < 1) {
+ throw new Error('Minimum 1 argument must be given');
+ }
+ if (Array.isArray(a0)) {
+ // If first argument is an array, test each item of this array and return true only if all items exist
+ for (i = 0; i < a0.length; i++) {
+ if (!_isSet.call(this, a0[i])) {
+ return false;
+ }
+ }
+ return true;
+ } else {
+ // For other case, try to get value and test it
+ try {
+ var v = _get.apply(this, arguments);
+ // Convert result to an object (if last argument is an array, _get return already an object) and test each item
+ if (!Array.isArray(a[l - 1])) {
+ v = {'totest': v};
+ }
+ for (i in v) {
+ if (v.hasOwnProperty(i) && !(v[i] !== undefined && v[i] !== null)) {
+ return false;
+ }
+ }
+ return true;
+ } catch (e) {
+ return false;
+ }
+ }
+ }
+
+ // Get keys of a storage or of an item of the storage
+ function _keys() {
+ var storage = this._type, l = arguments.length, s = window[storage], keys = [], o = {};
+ // If at least 1 argument, get value from storage to retrieve keys
+ // Else, use storage to retrieve keys
+ if (l > 0) {
+ o = _get.apply(this, arguments);
+ } else {
+ o = s;
+ }
+ if (o && o._cookie) {
+ // If storage is a cookie, use js-cookie to retrieve keys
+ var cookies = Cookies.get();
+ for (var key in cookies) {
+ if (cookies.hasOwnProperty(key) && key != '') {
+ keys.push(key.replace(o._prefix, ''));
+ }
+ }
+ } else {
+ for (var i in o) {
+ if (o.hasOwnProperty(i)) {
+ keys.push(i);
+ }
+ }
+ }
+ return keys;
+ }
+
+ // Create new namespace storage
+ function _createNamespace(name) {
+ if (!name || typeof name != "string") {
+ throw new Error('First parameter must be a string');
+ }
+ if (storage_available) {
+ if (!window.localStorage.getItem(name)) {
+ window.localStorage.setItem(name, '{}');
+ }
+ if (!window.sessionStorage.getItem(name)) {
+ window.sessionStorage.setItem(name, '{}');
+ }
+ } else {
+ if (!window.localCookieStorage.getItem(name)) {
+ window.localCookieStorage.setItem(name, '{}');
+ }
+ if (!window.sessionCookieStorage.getItem(name)) {
+ window.sessionCookieStorage.setItem(name, '{}');
+ }
+ }
+ var ns = {
+ localStorage: _extend({}, apis.localStorage, {_ns: name}),
+ sessionStorage: _extend({}, apis.sessionStorage, {_ns: name})
+ };
+ if (typeof Cookies !== 'undefined') {
+ if (!window.cookieStorage.getItem(name)) {
+ window.cookieStorage.setItem(name, '{}');
+ }
+ ns.cookieStorage = _extend({}, apis.cookieStorage, {_ns: name});
+ }
+ apis.namespaceStorages[name] = ns;
+ return ns;
+ }
+
+ // Test if storage is natively available on browser
+ function _testStorage(name) {
+ var foo = 'jsapi';
+ try {
+ if (!window[name]) {
+ return false;
+ }
+ window[name].setItem(foo, foo);
+ window[name].removeItem(foo);
+ return true;
+ } catch (e) {
+ return false;
+ }
+ }
+
+ // Test if a variable is a plain object (from jQuery)
+ function _isPlainObject(obj) {
+ var proto, Ctor;
+
+ // Detect obvious negatives
+ // Use toString instead of jQuery.type to catch host objects
+ if (!obj || toString.call(obj) !== "[object Object]") {
+ return false;
+ }
+
+ proto = getProto(obj);
+
+ // Objects with no prototype (e.g., `Object.create( null )`) are plain
+ if (!proto) {
+ return true;
+ }
+
+ // Objects with prototype are plain iff they were constructed by a global Object function
+ Ctor = hasOwn.call(proto, "constructor") && proto.constructor;
+ return typeof Ctor === "function" && fnToString.call(Ctor) === ObjectFunctionString;
+ }
+
+ // Test if a variable is an empty object (from jQuery)
+ function _isEmptyObject(obj) {
+ var name;
+
+ for (name in obj) {
+ return false;
+ }
+ return true;
+ }
+
+ // Merge objects
+ function _extend() {
+ var i = 1;
+ var result = arguments[0];
+ for (; i < arguments.length; i++) {
+ var attributes = arguments[i];
+ for (var key in attributes) {
+ if (attributes.hasOwnProperty(key)) {
+ result[key] = attributes[key];
+ }
+ }
+ }
+ return result;
+ }
+
+ // Check if storages are natively available on browser
+ var storage_available = _testStorage('localStorage');
+
+ // Namespace object
+ var storage = {
+ _type: '',
+ _ns: '',
+ _callMethod: function (f, a) {
+ a = Array.prototype.slice.call(a);
+ var p = [], a0 = a[0];
+
+ if (this._ns) {
+ p.push(this._ns);
+ }
+ if (typeof a0 === 'string' && a0.indexOf('.') !== -1) {
+ a.shift();
+ [].unshift.apply(a, a0.split('.'));
+ }
+ [].push.apply(p, a);
+ return f.apply(this, p);
+ },
+ // Define if plugin always use JSON to store values (even to store simple values like string, int...) or not
+ alwaysUseJson: false,
+ // Get items. If no parameters and storage have a namespace, return all namespace
+ get: function () {
+ return this._callMethod(_get, arguments);
+ },
+ // Set items
+ set: function () {
+ var l = arguments.length, a = arguments, a0 = a[0];
+ if (l < 1 || !_isPlainObject(a0) && l < 2) {
+ throw new Error('Minimum 2 arguments must be given or first parameter must be an object');
+ }
+ // If first argument is an object and storage is a namespace storage, set values individually
+ if (_isPlainObject(a0) && this._ns) {
+ for (var i in a0) {
+ if (a0.hasOwnProperty(i)) {
+ this._callMethod(_set, [i, a0[i]]);
+ }
+ }
+ return a0;
+ } else {
+ var r = this._callMethod(_set, a);
+ if (this._ns) {
+ return r[a0.split('.')[0]];
+ } else {
+ return r;
+ }
+ }
+ },
+ // Delete items
+ remove: function () {
+ if (arguments.length < 1) {
+ throw new Error('Minimum 1 argument must be given');
+ }
+ return this._callMethod(_remove, arguments);
+ },
+ // Delete all items
+ removeAll: function (reinit_ns) {
+ if (this._ns) {
+ this._callMethod(_set, [{}]);
+ return true;
+ } else {
+ return this._callMethod(_removeAll, [reinit_ns]);
+ }
+ },
+ // Items empty
+ isEmpty: function () {
+ return this._callMethod(_isEmpty, arguments);
+ },
+ // Items exists
+ isSet: function () {
+ if (arguments.length < 1) {
+ throw new Error('Minimum 1 argument must be given');
+ }
+ return this._callMethod(_isSet, arguments);
+ },
+ // Get keys of items
+ keys: function () {
+ return this._callMethod(_keys, arguments);
+ }
+ };
+
+ // Use js-cookie for compatibility with old browsers and give access to cookieStorage
+ if (typeof Cookies !== 'undefined') {
+ // sessionStorage is valid for one window/tab. To simulate that with cookie, we set a name for the window and use it for the name of the cookie
+ if (!window.name) {
+ window.name = Math.floor(Math.random() * 100000000);
+ }
+ var cookie_storage = {
+ _cookie: true,
+ _prefix: '',
+ _expires: null,
+ _path: null,
+ _domain: null,
+ setItem: function (n, v) {
+ Cookies.set(this._prefix + n, v, {expires: this._expires, path: this._path, domain: this._domain});
+ },
+ getItem: function (n) {
+ return Cookies.get(this._prefix + n);
+ },
+ removeItem: function (n) {
+ return Cookies.remove(this._prefix + n, {path: this._path});
+ },
+ clear: function () {
+ var cookies = Cookies.get();
+ for (var key in cookies) {
+ if (cookies.hasOwnProperty(key) && key != '') {
+ if (!this._prefix && key.indexOf(cookie_local_prefix) === -1 && key.indexOf(cookie_session_prefix) === -1 || this._prefix && key.indexOf(this._prefix) === 0) {
+ Cookies.remove(key);
+ }
+ }
+ }
+ },
+ setExpires: function (e) {
+ this._expires = e;
+ return this;
+ },
+ setPath: function (p) {
+ this._path = p;
+ return this;
+ },
+ setDomain: function (d) {
+ this._domain = d;
+ return this;
+ },
+ setConf: function (c) {
+ if (c.path) {
+ this._path = c.path;
+ }
+ if (c.domain) {
+ this._domain = c.domain;
+ }
+ if (c.expires) {
+ this._expires = c.expires;
+ }
+ return this;
+ },
+ setDefaultConf: function () {
+ this._path = this._domain = this._expires = null;
+ }
+ };
+ if (!storage_available) {
+ window.localCookieStorage = _extend({}, cookie_storage, {
+ _prefix: cookie_local_prefix,
+ _expires: 365 * 10
+ });
+ window.sessionCookieStorage = _extend({}, cookie_storage, {_prefix: cookie_session_prefix + window.name + '_'});
+ }
+ window.cookieStorage = _extend({}, cookie_storage);
+ // cookieStorage API
+ apis.cookieStorage = _extend({}, storage, {
+ _type: 'cookieStorage',
+ setExpires: function (e) {
+ window.cookieStorage.setExpires(e);
+ return this;
+ },
+ setPath: function (p) {
+ window.cookieStorage.setPath(p);
+ return this;
+ },
+ setDomain: function (d) {
+ window.cookieStorage.setDomain(d);
+ return this;
+ },
+ setConf: function (c) {
+ window.cookieStorage.setConf(c);
+ return this;
+ },
+ setDefaultConf: function () {
+ window.cookieStorage.setDefaultConf();
+ return this;
+ }
+ });
+ }
+
+ // Get a new API on a namespace
+ apis.initNamespaceStorage = function (ns) {
+ return _createNamespace(ns);
+ };
+ if (storage_available) {
+ // About alwaysUseJson
+ // By default, all values are string on html storages and the plugin don't use json to store simple values (strings, int, float...)
+ // So by default, if you do storage.setItem('test',2), value in storage will be "2", not 2
+ // If you set this property to true, all values set with the plugin will be stored as json to have typed values in any cases
+
+ // localStorage API
+ apis.localStorage = _extend({}, storage, {_type: 'localStorage'});
+ // sessionStorage API
+ apis.sessionStorage = _extend({}, storage, {_type: 'sessionStorage'});
+ } else {
+ // localStorage API
+ apis.localStorage = _extend({}, storage, {_type: 'localCookieStorage'});
+ // sessionStorage API
+ apis.sessionStorage = _extend({}, storage, {_type: 'sessionCookieStorage'});
+ }
+ // List of all namespace storage
+ apis.namespaceStorages = {};
+ // Remove all items in all storages
+ apis.removeAllStorages = function (reinit_ns) {
+ apis.localStorage.removeAll(reinit_ns);
+ apis.sessionStorage.removeAll(reinit_ns);
+ if (apis.cookieStorage) {
+ apis.cookieStorage.removeAll(reinit_ns);
+ }
+ if (!reinit_ns) {
+ apis.namespaceStorages = {};
+ }
+ };
+ apis.alwaysUseJsonInStorage = function (value) {
+ storage.alwaysUseJson = value;
+ apis.localStorage.alwaysUseJson = value;
+ apis.sessionStorage.alwaysUseJson = value;
+ if (apis.cookieStorage) {
+ apis.cookieStorage.alwaysUseJson = value;
+ }
+ };
+
+ return apis;
+}));
diff --git a/js/js-storage-master/js.storage.min.js b/js/js-storage-master/js.storage.min.js
new file mode 100644
index 00000000..466eacc5
--- /dev/null
+++ b/js/js-storage-master/js.storage.min.js
@@ -0,0 +1,14 @@
+/*
+ * JS Storage Plugin
+ *
+ * Copyright (c) 2016 Julien Maurel
+ *
+ * Licensed under the MIT license:
+ * http://www.opensource.org/licenses/mit-license.php
+ *
+ * Project home:
+ * https://github.com/julien-maurel/js-storage
+ *
+ * Version: 1.0.1
+ */
+!function(e){var t=!1;if("function"==typeof define&&define.amd&&(define(e),t=!0),"object"==typeof exports&&(module.exports=e(),t=!0),!t){var r=window.Storages,o=window.Storages=e();o.noConflict=function(){return window.Storages=r,o}}}(function(){function e(){var e,t,r,o,n,i=this._type,s=arguments.length,a=window[i],f=arguments,c=f[0];if(1>s)throw new Error("Minimum 1 argument must be given");if(Array.isArray(c)){t={};for(o in c)if(c.hasOwnProperty(o)){e=c[o];try{t[e]=JSON.parse(a.getItem(e))}catch(h){t[e]=a.getItem(e)}}return t}if(1!=s){try{t=JSON.parse(a.getItem(c))}catch(h){throw new ReferenceError(c+" is not defined in this storage")}for(o=1;s-1>o;o++)if(t=t[f[o]],void 0===t)throw new ReferenceError([].slice.call(f,1,o+1).join(".")+" is not defined in this storage");if(Array.isArray(f[o])){r=t,t={};for(n in f[o])f[o].hasOwnProperty(n)&&(t[f[o][n]]=r[f[o][n]]);return t}return t[f[o]]}try{return JSON.parse(a.getItem(c))}catch(h){return a.getItem(c)}}function t(){var e,t,r,o,n=this._type,i=arguments.length,s=window[n],a=arguments,f=a[0],h=a[1],l=isNaN(h)?{}:[];if(1>i||!c(f)&&2>i)throw new Error("Minimum 2 arguments must be given or first parameter must be an object");if(c(f)){for(o in f)f.hasOwnProperty(o)&&(e=f[o],c(e)||this.alwaysUseJson?s.setItem(o,JSON.stringify(e)):s.setItem(o,e));return f}if(2==i)return"object"==typeof h||this.alwaysUseJson?s.setItem(f,JSON.stringify(h)):s.setItem(f,h),h;try{r=s.getItem(f),null!=r&&(l=JSON.parse(r))}catch(u){}for(r=l,o=1;i-2>o;o++)e=a[o],t=isNaN(a[o+1])?"object":"array",(!r[e]||"object"==t&&!c(r[e])||"array"==t&&!Array.isArray(r[e]))&&("array"==t?r[e]=[]:r[e]={}),r=r[e];return r[a[o]]=a[o+1],s.setItem(f,JSON.stringify(l)),l}function r(){var e,t,r,o,n=this._type,i=arguments.length,s=window[n],a=arguments,f=a[0];if(1>i)throw new Error("Minimum 1 argument must be given");if(Array.isArray(f)){for(r in f)f.hasOwnProperty(r)&&s.removeItem(f[r]);return!0}if(1==i)return s.removeItem(f),!0;try{e=t=JSON.parse(s.getItem(f))}catch(c){throw new ReferenceError(f+" is not defined in this storage")}for(r=1;i-1>r;r++)if(t=t[a[r]],void 0===t)throw new ReferenceError([].slice.call(a,1,r).join(".")+" is not defined in this storage");if(Array.isArray(a[r]))for(o in a[r])a[r].hasOwnProperty(o)&&delete t[a[r][o]];else delete t[a[r]];return s.setItem(f,JSON.stringify(e)),!0}function o(e){var t,o=s.call(this);for(t in o)o.hasOwnProperty(t)&&r.call(this,o[t]);if(e)for(t in d.namespaceStorages)d.namespaceStorages.hasOwnProperty(t)&&a(t)}function n(){var t,r=arguments.length,o=arguments,i=o[0];if(0==r)return 0==s.call(this).length;if(Array.isArray(i)){for(t=0;t