diff --git a/Cargo.lock b/Cargo.lock
index 8cf8a850c10a7bcddd9747145243d89293f52b3f..fea999535d25b434ffb9be2311046a3b4e5ff1bf 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -113,9 +113,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.42"
+version = "1.0.43"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "595d3cfa7a60d4555cb5067b99f07142a08ea778de5cf993f7b75c7d8fabc486"
+checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf"
 
 [[package]]
 name = "approx"
@@ -384,7 +384,6 @@ dependencies = [
 [[package]]
 name = "bevy_ecs_tilemap"
 version = "0.4.1"
-source = "git+https://github.com/perlindgren/bevy_ecs_tilemap?branch=rotate#36b6c80c60010b281c526c244abdacf8ee24b116"
 dependencies = [
  "anyhow",
  "bevy",
@@ -1118,14 +1117,14 @@ dependencies = [
 
 [[package]]
 name = "cpal"
-version = "0.13.3"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8351ddf2aaa3c583fa388029f8b3d26f3c7035a20911fdd5f2e2ed7ab57dad25"
+checksum = "98f45f0a21f617cd2c788889ef710b63f075c949259593ea09c826f1e47a2418"
 dependencies = [
  "alsa",
- "core-foundation-sys 0.6.2",
+ "core-foundation-sys 0.8.2",
  "coreaudio-rs",
- "jni",
+ "jni 0.19.0",
  "js-sys",
  "lazy_static",
  "libc",
@@ -1313,9 +1312,9 @@ dependencies = [
 
 [[package]]
 name = "filetime"
-version = "0.2.14"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8"
+checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -1741,9 +1740,9 @@ dependencies = [
 
 [[package]]
 name = "guillotiere"
-version = "0.6.1"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9253eedea82720b2bc91fe831c9ce3a31299955ed5eb19b9ed600a625b686212"
+checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
 dependencies = [
  "euclid",
  "svg_fmt",
@@ -1919,6 +1918,20 @@ dependencies = [
  "walkdir",
 ]
 
+[[package]]
+name = "jni"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec"
+dependencies = [
+ "cesu8",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+]
+
 [[package]]
 name = "jni-sys"
 version = "0.3.0"
@@ -1927,9 +1940,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
 name = "jobserver"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "972f5ae5d1cb9c6ae417789196c803205313edde988685da5e3aae0827b9e7fd"
+checksum = "f5ca711fd837261e14ec9e674f092cbb931d3fa1482b017ae59328ddc6f3212b"
 dependencies = [
  "libc",
 ]
@@ -1977,9 +1990,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.98"
+version = "0.2.99"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790"
+checksum = "a7f823d141fe0a24df1e23b4af4e3c7ba9e5966ec514ea068c93024aa7deb765"
 
 [[package]]
 name = "libflate"
@@ -2101,6 +2114,15 @@ version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
 
+[[package]]
+name = "memoffset"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
+dependencies = [
+ "autocfg",
+]
+
 [[package]]
 name = "metal"
 version = "0.21.0"
@@ -2255,7 +2277,7 @@ checksum = "8794322172319b972f528bf90c6b467be0079f1fa82780ffb431088e741a73ab"
 dependencies = [
  "jni-sys",
  "ndk-sys",
- "num_enum 0.5.2",
+ "num_enum 0.5.3",
  "thiserror",
 ]
 
@@ -2320,14 +2342,15 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.20.0"
+version = "0.20.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
+checksum = "df8e5e343312e7fbeb2a52139114e9e702991ef9c2aea6817ff2440b35647d56"
 dependencies = [
  "bitflags",
  "cc",
  "cfg-if 1.0.0",
  "libc",
+ "memoffset",
 ]
 
 [[package]]
@@ -2488,12 +2511,12 @@ dependencies = [
 
 [[package]]
 name = "num_enum"
-version = "0.5.2"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5adf0198d427ee515335639f275e806ca01acf9f07d7cf14bb36a10532a6169"
+checksum = "ee2c8fd66061a707503d515639b8af10fd3807a5b5ee6959f7ff1bd303634bd5"
 dependencies = [
  "derivative",
- "num_enum_derive 0.5.2",
+ "num_enum_derive 0.5.3",
 ]
 
 [[package]]
@@ -2510,9 +2533,9 @@ dependencies = [
 
 [[package]]
 name = "num_enum_derive"
-version = "0.5.2"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1def5a3f69d4707d8a040b12785b98029a39e8c610ae685c7f6265669767482"
+checksum = "474fd1d096da3ad17084694eebed40ba09c4a36c5255cd772bd8b98859cc562e"
 dependencies = [
  "proc-macro-crate 1.0.0",
  "proc-macro2",
@@ -2545,7 +2568,7 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dfa187b38ae20374617b7ad418034ed3dc90ac980181d211518bd03537ae8f8d"
 dependencies = [
- "jni",
+ "jni 0.18.0",
  "ndk 0.3.0",
  "ndk-glue 0.3.0",
  "num-derive",
@@ -2760,9 +2783,9 @@ checksum = "831eb2fcb5b72b09c72a3f2d24c09a28d79886512827cd4674d9bac10557f16a"
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.9"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee"
+checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff"
 dependencies = [
  "bitflags",
 ]
@@ -2947,9 +2970,9 @@ dependencies = [
 
 [[package]]
 name = "sharded-slab"
-version = "0.1.1"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79c719719ee05df97490f80a45acfc99e5a30ce98a1e4fb67aee422745ae14e3"
+checksum = "740223c51853f3145fe7c90360d2d4232f2b62e3449489c207eccde818979982"
 dependencies = [
  "lazy_static",
 ]
@@ -2962,9 +2985,9 @@ checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
 
 [[package]]
 name = "slab"
-version = "0.4.3"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527"
+checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590"
 
 [[package]]
 name = "slice-deque"
@@ -3020,9 +3043,9 @@ dependencies = [
 
 [[package]]
 name = "spirv-std-macros"
-version = "0.4.0-alpha.10"
+version = "0.4.0-alpha.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b9b334f272ad19ae3e071b0d9d3ca275843c77b39f85e29d3908fa2fb6a7cb8"
+checksum = "207e8515dfbb48bff03f64bf5f8388d4e0f2f526ee769cc6556df98477098ca5"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -3033,9 +3056,9 @@ dependencies = [
 
 [[package]]
 name = "spirv-types"
-version = "0.4.0-alpha.10"
+version = "0.4.0-alpha.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cfb357212185d2175e5f92c35902f0dc7590cd05121239b22251d360ef01c53"
+checksum = "71cc4b8f7ec707459fdeddb4f137109947045592f5b0c139f7bf1360058bac6b"
 
 [[package]]
 name = "spirv_cross"
@@ -3209,9 +3232,8 @@ checksum = "7572415bd688d401c52f6e36f4c8e805b9ae1622619303b9fa835d531db0acae"
 
 [[package]]
 name = "tiled"
-version = "0.9.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9b76189425fed476c9cb0e2a97adb0c6c9d370bf69a57cb951814e77a5fe63"
+version = "0.9.6"
+source = "git+https://github.com/perlindgren/rs-tiled?branch=parallax#8e62df52ead53976c1587ce2cb50043176f16cb0"
 dependencies = [
  "base64 0.10.1",
  "libflate",
diff --git a/Cargo.toml b/Cargo.toml
index cea0fe14f1958c9ed2095496616045ff1f5350c1..353b6206bede694ec5357787259e6bd5c36b46be 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -7,9 +7,14 @@ edition = "2018"
 
 [dependencies]
 bevy = { version = "0.5.0", features = ["dynamic"] }
-bevy_ecs_tilemap = { git = "https://github.com/perlindgren/bevy_ecs_tilemap", branch = "rotate", version = "0.4.1", features = ["tiled_map"]} 
+# bevy_ecs_tilemap = { git = "https://github.com/perlindgren/bevy_ecs_tilemap", branch = "rotate", version = "0.4.1", features = ["tiled_map"]} 
+# bevy_ecs_tilemap = { git = "https://github.com/perlindgren/bevy_ecs_tilemap", branch = "tiled_animation", version = "0.4.0", features = ["tiled_map"]} 
+# bevy_ecs_tilemap = { git = "https://github.com/perlindgren/bevy_ecs_tilemap", branch = "animation_and_rotation", version = "0.4.1", features = ["tiled_map"]} 
+bevy_ecs_tilemap = { path = "../bevydev/bevy_ecs_tilemap", features = [
+    "tiled_map",
+] }
 rand = "0.8.4"
 env_logger = "0.9"
 log = "0.4"
 
-# bevy = { version = "0.5.0" }
\ No newline at end of file
+# bevy = { version = "0.5.0" }
diff --git a/assets/Dungeon.piskel b/assets/Dungeon.piskel
index ecbf4ce58b84b276aa1be8c3fca64539301f79f4..e951ef3e7a35b03e4d8aa3bdfaa0b8eac5dcdc72 100644
--- a/assets/Dungeon.piskel
+++ b/assets/Dungeon.piskel
@@ -1 +1 @@
-{"modelVersion":2,"piskel":{"name":"Dungeon","description":"","fps":12,"height":160,"width":160,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,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\"}]}"]}}
\ No newline at end of file
+{"modelVersion":2,"piskel":{"name":"Dungeon","description":"","fps":12,"height":160,"width":160,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,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\"}]}"]}}
\ No newline at end of file
diff --git a/assets/Dungeon.png b/assets/Dungeon.png
index abfba06928a05b0d6e661f14df9cb441f55c3b9c..24b0fce1ff8f2ea5e58125d6e123bb7fe169173a 100644
Binary files a/assets/Dungeon.png and b/assets/Dungeon.png differ
diff --git a/assets/Dungeon.tmx b/assets/Dungeon.tmx
index 358f8b0166b1bd8add96d9280cb9fcd62ebea044..b458c4780f2271c0096c56fd3e83920fe03c177b 100644
--- a/assets/Dungeon.tmx
+++ b/assets/Dungeon.tmx
@@ -3,7 +3,21 @@
  <tileset firstgid="1" name="Dungeon" tilewidth="16" tileheight="16" tilecount="100" columns="10">
   <image source="Dungeon.png" trans="000000" width="160" height="160"/>
  </tileset>
- <layer id="4" name="bg" width="92" height="24">
+ <tileset firstgid="101" name="Obstacles" tilewidth="16" tileheight="16" tilecount="100" columns="10">
+  <image source="Obstacles.png" trans="000000" width="160" height="160"/>
+ </tileset>
+ <tileset firstgid="201" name="Fire" tilewidth="16" tileheight="16" tilecount="4" columns="2">
+  <image source="Fire.png" trans="000000" width="32" height="32"/>
+  <tile id="0">
+   <animation>
+    <frame tileid="0" duration="1000"/>
+    <frame tileid="1" duration="1000"/>
+    <frame tileid="2" duration="1000"/>
+    <frame tileid="3" duration="1000"/>
+   </animation>
+  </tile>
+ </tileset>
+ <layer id="4" name="bg" width="92" height="24" visible="0">
   <data encoding="csv">
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@@ -37,16 +51,16 @@
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,0,0,0,0,0,0,53,201,0,0,71,72,71,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,81,82,81,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,61,62,0,0,0,0,0,0,0,0,71,72,71,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,103,103,0,0,103,102,0,0,0,0,81,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@@ -65,18 +79,18 @@
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-1073741836,1073741836,1073741836,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+22,26,22,22,1610612762,22,32,32,32,32,32,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+22,22,22,25,22,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+35,35,22,22,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+32,32,32,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,11,3,0,0,1,2,1,1,0,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,11,31,31,31,0,0,1,1,3,1,0,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,1610612748,31,31,31,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,11,31,22,22,31,31,31,31,3,3,2,3,3,1,3,1,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-11,12,12,12,21,31,31,22,22,22,22,3,3,3,1,3,3,3,3,1,3,2,2,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-1610612748,21,22,31,22,21,22,31,22,31,31,1,1,3,3,3,3,3,3,3,1,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,11,13,0,0,1,2,1,1,0,0,73,74,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,11,12,22,23,0,0,1,1,3,1,0,0,83,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,101,1610612748,3221225494,1610612758,22,11,12,13,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,11,12,25,22,22,22,21,35,23,3,2,3,3,1,3,1,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+11,12,12,12,25,22,22,2,2,22,31,32,33,3,1,3,3,3,3,1,3,2,2,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+31,32,32,32,32,32,32,2,2,32,32,32,32,3,3,3,3,3,3,3,1,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@@ -87,32 +101,32 @@
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 </data>
  </layer>
- <layer id="2" name="fg" width="92" height="24" visible="0">
+ <layer id="2" name="fg" width="92" height="24">
   <data encoding="csv">
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,42,43,44,42,43,44,42,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,41,0,42,0,42,0,42,0,42,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+3,0,41,0,0,0,0,0,41,0,0,0,0,0,0,0,41,0,41,0,41,0,41,0,41,0,41,0,41,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 </data>
  </layer>
 </map>
diff --git a/src/main.rs b/src/main.rs
index 3eec8a73c9d052fa0cbaada2f39c470deaded2d0..95251e2f89b4ac4e850a8889954286fad1722e36 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -30,12 +30,11 @@ fn main() {
         .add_startup_system(setup.system())
         .add_system_set(
             SystemSet::new()
-                .with_run_criteria(FixedTimestep::step(1.0 / 60.0))
+                //.with_run_criteria(FixedTimestep::step(1.0 / 60.0))
                 .with_system(player_movement.system())
-                .with_system(camera.system())
-                .with_system(parallax.system()),
+                .with_system(camera.system()), // .with_system(parallax.system()),
         )
-        .add_system(set_texture_filters_to_nearest.system())
+        //.add_system(set_texture_filters_to_nearest.system())
         .run();
 }
 
@@ -56,6 +55,7 @@ fn set_texture_filters_to_nearest(
     }
 }
 
+const MAP_SCALE: f32 = 4.0;
 fn setup(
     mut commands: Commands,
     asset_server: Res<AssetServer>,
@@ -68,7 +68,7 @@ fn setup(
     let bottom = -window.height() / 2.0;
 
     // load the tile map
-    let handle: Handle<TiledMap> = asset_server.load("Dungeon.tmx");
+    let handle: Handle<TiledMap> = asset_server.load("Overworld.tmx");
     let map_entity = commands.spawn().id();
     commands.entity(map_entity).insert_bundle(TiledMapBundle {
         tiled_map: handle,
@@ -76,7 +76,7 @@ fn setup(
 
         transform: Transform {
             translation: Vec3::new(0., bottom, 1.0),
-            scale: Vec3::new(4.0, 4.0, 1.0),
+            scale: Vec3::new(MAP_SCALE, MAP_SCALE, 1.0),
             ..Default::default()
         },
 
@@ -98,9 +98,20 @@ fn setup(
             ..Default::default()
         })
         .insert(Player {
-            y: bottom / 2.,
+            player_y: bottom / 2.,
             ..Player::default()
         });
+    // commands.spawn_bundle(TextBundle {
+    //     text: Text::with_section(
+    //         "Game Over",
+    //         TextStyle::default(),
+    //         TextAlignment {
+    //             vertical: VerticalAlign::Center,
+    //             horizontal: HorizontalAlign::Center,
+    //         },
+    //     ),
+    //     ..Default::default()
+    // });
 }
 
 #[derive(Copy, Clone)]
@@ -110,19 +121,21 @@ enum Direction {
     Idle,
 }
 pub struct Player {
-    direction: Direction,
-    jump: bool,
-    index: u32,
-    y: f32,
+    player_direction: Direction,
+    player_jump: bool,
+    player_index: u32,
+    player_y: f32,
+    player_x: f32,
 }
 
 impl Default for Player {
     fn default() -> Self {
         Player {
-            direction: Direction::Idle,
-            jump: false,
-            index: 3,
-            y: 0.,
+            player_direction: Direction::Idle,
+            player_jump: false,
+            player_index: 3,
+            player_y: 0.,
+            player_x: 0.,
         }
     }
 }
@@ -133,9 +146,9 @@ fn player_movement(
     keyboard_input: Res<Input<KeyCode>>,
 ) {
     if let Ok((mut player, mut transform, mut sprite)) = query.single_mut() {
-        let (index, state, dir) = if player.jump {
+        let (index, state, dir) = if player.player_jump {
             // already in jump
-            let mut index = player.index + 1;
+            let mut index = player.player_index + 1;
             match index {
                 4 => {
                     sprite.index = 7;
@@ -150,141 +163,94 @@ fn player_movement(
             };
             if index == 64 {
                 index = 0;
-                player.jump = false
+                player.player_jump = false
             };
 
             if index > 8 && index < (60) {
                 transform.translation.y =
-                    player.y + (((index - 8) as f32) * PI / (60.0 - 8.0)).sin() * 200.0;
+                    player.player_y + (((index - 8) as f32) * PI / (60.0 - 8.0)).sin() * 200.0;
             } else {
-                transform.translation.y = player.y
+                transform.translation.y = player.player_y
             }
 
-            (index, player.direction, 0.)
+            (index, player.player_direction, 0.)
         } else if keyboard_input.pressed(KeyCode::Space) {
             // start jump
-            player.jump = true;
+            player.player_jump = true;
             sprite.index = 3;
             let index = 0;
-            (index, player.direction, 0.)
+            (index, player.player_direction, 0.)
         } else if keyboard_input.pressed(KeyCode::Right) {
             sprite.flip_x = false;
-            match player.direction {
+            match player.player_direction {
                 // already walking
                 Direction::Right => {
-                    let index = (player.index + 1) % 32;
+                    let index = (player.player_index + 1) % 32;
                     sprite.index = (4 * 9) + index / 4;
-                    (index, Direction::Right, 2.)
+                    (index, Direction::Right, 1.)
                 }
                 // starting walking
                 _ => {
                     let index = 3 * 4;
                     sprite.index = (4 * 9) + index / 4;
-                    (index, Direction::Right, 2.)
+                    (index, Direction::Right, 1.)
                 }
             }
         } else if keyboard_input.pressed(KeyCode::Left) {
             sprite.flip_x = true;
-            match player.direction {
+            match player.player_direction {
                 // already walking
                 Direction::Left => {
-                    let index = (player.index + 1) % 32;
+                    let index = (player.player_index + 1) % 32;
                     sprite.index = (4 * 9) + index / 4;
-                    (index, Direction::Left, -2.)
+                    (index, Direction::Left, -1.)
                 }
                 // starting walking
                 _ => {
                     let index = 3 * 4;
                     sprite.index = (4 * 9) + index / 4;
-                    (index, Direction::Left, -2.)
+                    (index, Direction::Left, -1.)
                 }
             }
         } else {
-            match player.direction {
+            match player.player_direction {
                 // already idle
                 Direction::Idle => {
-                    let index = (player.index + 1) % 256;
+                    let index = (player.player_index + 1) % 256;
                     sprite.index = if index > 224 { 0 } else { 9 * 1 + 6 };
                     (index, Direction::Idle, 0.)
                 }
                 // start idle
                 _ => {
-                    player.index = 0;
+                    player.player_index = 0;
                     sprite.index = 0;
                     (0, Direction::Idle, 0.)
                 }
             }
         };
 
-        player.direction = state;
-        player.index = index;
-        transform.translation.x += dir;
+        player.player_direction = state;
+        player.player_index = index;
+        player.player_x += dir * 4.0; // 4.0 seems to be good nominal speed
+        transform.translation.x = player.player_x;
     }
 }
 
-// A simple camera system for moving and zooming the camera.
 pub fn camera(
-    time: Res<Time>,
-    keyboard_input: Res<Input<KeyCode>>,
-    mut query: Query<&mut Transform, With<Camera>>,
+    player_query: Query<&Player>,
+    mut layer_query: Query<(&mut Transform, &Layer)>,
+    mut camera_query: Query<&mut Transform, (With<Camera>, Without<Layer>)>,
 ) {
-    // println!("camera");
-    for mut transform in query.iter_mut() {
-        // print!("-");
-        let mut direction = Vec3::ZERO;
-        let scale = transform.scale.x;
-
-        if keyboard_input.pressed(KeyCode::A) {
-            direction -= Vec3::new(1.0, 0.0, 0.0);
-        }
-
-        if keyboard_input.pressed(KeyCode::D) {
-            direction += Vec3::new(1.0, 0.0, 0.0);
-        }
+    // parallaxing
+    let player = player_query.single().unwrap();
+    let mut camera_transform = camera_query.single_mut().unwrap();
 
-        if keyboard_input.pressed(KeyCode::W) {
-            direction += Vec3::new(0.0, 1.0, 0.0);
-        }
-
-        if keyboard_input.pressed(KeyCode::S) {
-            direction -= Vec3::new(0.0, 1.0, 0.0);
-        }
+    // for now, move the camera to the
+    camera_transform.translation.x = player.player_x;
+    camera_transform.translation.y = player.player_y;
 
-        if keyboard_input.pressed(KeyCode::Z) {
-            let scale = scale + 0.1;
-            transform.scale = Vec3::splat(scale);
-        }
-
-        if keyboard_input.pressed(KeyCode::X) {
-            let scale = scale - 0.1;
-            transform.scale = Vec3::splat(scale);
-        }
-
-        if transform.scale.x < 1.0 {
-            transform.scale = Vec3::splat(1.0)
-        }
-
-        transform.translation += time.delta_seconds() * direction * 500.;
-    }
-}
-
-enum Layers {
-    Cloud,
-}
-
-// parallaxing
-pub fn parallax(
-    mut layer_query: Query<(&mut Transform, &Layer)>,
-    camera_query: Query<&Transform, (With<Camera>, Without<Layer>)>,
-) {
-    let camera_x = camera_query.single().unwrap().translation.x;
     for (mut transform, layer) in layer_query.iter_mut() {
-        match layer.settings.layer_id {
-            0 => transform.translation.x = camera_x / 8.0,
-            1 => {}
-            2 => {}
-            3 => transform.translation.x = -camera_x / 4.0,
-            _ => panic!("illegal layer id"),
-        }
+        // (1. - parallax) gives the per layer translation.
+        transform.translation.x = player.player_x * (1. - layer.settings.parallax_x) / MAP_SCALE;
     }
 }