diff --git a/Trunk/MonoGameView/Algorithms/BFS.cs b/Trunk/MonoGameView/Algorithms/BFS.cs index e8bbf8e..fae0ed5 100644 --- a/Trunk/MonoGameView/Algorithms/BFS.cs +++ b/Trunk/MonoGameView/Algorithms/BFS.cs @@ -27,7 +27,7 @@ namespace MonoGameView.Algorithms int count = 0; public List Houses { get; set; } - public List BestPath(ContentManager content, GarbageCollector collector, ICloneable[,] grid) + public KeyValuePair,int> BestPath(ContentManager content, GarbageCollector collector, ICloneable[,] grid) { Houses = new List(); for (int x = 0; x < grid.GetLength(0); x++) @@ -44,9 +44,9 @@ namespace MonoGameView.Algorithms - var r = SearchBfs(content, collector, grid, 0).Key; + var r = SearchBfs(content, collector, grid, 0); Console.WriteLine($"Counts : {count}"); - if (r == null) return new List(); + if (r.Key == null) return new KeyValuePair,int>(new List(), 0); return r; } @@ -138,15 +138,17 @@ namespace MonoGameView.Algorithms while (true) { - Console.WriteLine(count); - Console.WriteLine(nodes.Count); - count++; + //Console.WriteLine(count); + //Console.WriteLine(nodes.Count); + //var nodes2 = new List, GarbageCollector, ICloneable[,]>>(); while (true) { + count++; + var item = nodes.Dequeue(); //Thread.Sleep(100); - this.Collector.Coords = item.Item2.Coords; + /*this.Collector.Coords = item.Item2.Coords; this.Collector.TrashContainers = item.Item2.TrashContainers; for (int x = 0; x < item.Item3.GetLength(0); x++) { @@ -154,14 +156,15 @@ namespace MonoGameView.Algorithms { this.Grid[x, y] = item.Item3[x, y]; } - } + }*/ if (Houses.All(c => (item.Item3[c.X, c.Y] as IGarbageLocalization).TrashCans.All(j => j.FillPercent == 0.0)) && item.Item2.TrashContainers.All(i => i.FillPercent == 0.0) ) { - return new KeyValuePair, int>(item.Item1, length); + Console.WriteLine(count); + return new KeyValuePair, int>(item.Item1, count); } if (true)//item.Item2.Counter <= 12) { diff --git a/Trunk/MonoGameView/Algorithms/BestFirstSearch.cs b/Trunk/MonoGameView/Algorithms/BestFirstSearch.cs index 6037b73..f96e334 100644 --- a/Trunk/MonoGameView/Algorithms/BestFirstSearch.cs +++ b/Trunk/MonoGameView/Algorithms/BestFirstSearch.cs @@ -24,11 +24,12 @@ namespace MonoGameView.Algorithms this.Collector = collector; this.Grid = grid; } - int count = 0; + int count; public List Houses { get; set; } public List Dumps { get; set; } public List BestPath(ContentManager content, GarbageCollector collector, ICloneable[,] grid) { + Houses = new List(); Dumps = new List(); for (int x = 0; x < grid.GetLength(0); x++) @@ -48,7 +49,7 @@ namespace MonoGameView.Algorithms - var r = SearchBfs(content, collector, grid, 0).Key; + var r = SearchBestFirst(content, collector, grid, 0).Key; Console.WriteLine($"Counts : {count}"); if (r == null) return new List(); return r; @@ -182,17 +183,17 @@ namespace MonoGameView.Algorithms var closestDump = (closestDumps.Any()) ? closestDumps.Min(b => Math.Pow(t.Item2.Coords.X - b.Coords.X, 2) + Math.Pow(t.Item2.Coords.Y - b.Coords.Y, 2)) : 0.0; - return (int) (p1 * 1000 + 10*closestHouse + closestDump); + return (int) (p1 * 1000 + 100*closestHouse + closestDump); } } - KeyValuePair, int> SearchBfs(ContentManager content, GarbageCollector collector, ICloneable[,] grid, int length) + KeyValuePair, int> SearchBestFirst(ContentManager content, GarbageCollector collector, ICloneable[,] grid, int length) { //Thread.Sleep(1); - int count = 0; + count = 0; var nodes = new PriorityQueue, GarbageCollector, ICloneable[,]>>(); @@ -201,11 +202,12 @@ namespace MonoGameView.Algorithms nodes.Enqueue(f,Priority(f)); while (true) { + count++; var p = nodes.Dequeue(); var item = p.Key; var priority = p.Value; - Thread.Sleep(100); + /*Thread.Sleep(10); this.Collector.Coords = item.Item2.Coords; this.Collector.TrashContainers = item.Item2.TrashContainers; for (int x = 0; x < item.Item3.GetLength(0); x++) @@ -214,7 +216,7 @@ namespace MonoGameView.Algorithms { this.Grid[x, y] = item.Item3[x, y]; } - } + }*/ if (Houses.All(c => (item.Item3[c.X, c.Y] as IGarbageLocalization).TrashCans.All(j => j.FillPercent == 0.0)) && diff --git a/Trunk/MonoGameView/Algorithms/DFS.cs b/Trunk/MonoGameView/Algorithms/DFS.cs index bf41d0d..7b6977b 100644 --- a/Trunk/MonoGameView/Algorithms/DFS.cs +++ b/Trunk/MonoGameView/Algorithms/DFS.cs @@ -28,7 +28,7 @@ namespace CzokoŚmieciarka.MonoGameView.Algorithms int count = 0; public List Houses { get; set; } - public List BestPath(ContentManager content, GarbageCollector collector, ICloneable[,] grid) + public KeyValuePair,int> BestPath(ContentManager content, GarbageCollector collector, ICloneable[,] grid) { Houses = new List(); for (int x = 0; x < grid.GetLength(0); x++) @@ -47,8 +47,8 @@ namespace CzokoŚmieciarka.MonoGameView.Algorithms var r=Search(content, collector, grid, 0).Key; Console.WriteLine($"Counts : {count}"); - if (r == null) return new List(); - return r; + if (r == null) return new KeyValuePair,int>(new List(),0); + return new KeyValuePair, int>(r,count); } @@ -130,8 +130,8 @@ namespace CzokoŚmieciarka.MonoGameView.Algorithms KeyValuePair, int> Search(ContentManager content, GarbageCollector collector, ICloneable[,] grid, int length) { - Thread.Sleep(100); - this.Collector.Coords = collector.Coords; + //Thread.Sleep(10); + /*this.Collector.Coords = collector.Coords; this.Collector.TrashContainers = collector.TrashContainers; for (int x = 0; x < grid.GetLength(0); x++) @@ -142,11 +142,11 @@ namespace CzokoŚmieciarka.MonoGameView.Algorithms this.Grid[x, y] = (ICloneable) grid[x, y].Clone(); } } + */ + //Console.WriteLine(collector.HouseCounter); - Console.WriteLine(collector.HouseCounter); - - if (collector.Counter> 100 || length > 1000) + if (collector.Counter> 1000 || length > 10000) return new KeyValuePair, int>(null,length); count++; if (Houses.All(c => (grid[c.X, c.Y] as IGarbageLocalization).TrashCans.All(j => j.FillPercent == 0.0)) diff --git a/Trunk/MonoGameView/DataModels/Interfaces/IDrawables.cs b/Trunk/MonoGameView/DataModels/Interfaces/IDrawables.cs index 16b886d..8e580b6 100644 --- a/Trunk/MonoGameView/DataModels/Interfaces/IDrawables.cs +++ b/Trunk/MonoGameView/DataModels/Interfaces/IDrawables.cs @@ -6,6 +6,6 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.Interfaces { public interface IDrawables : ICloneable { - void Draw(SpriteBatch spriteBatch, int size); + void Draw(SpriteBatch spriteBatch, int size, int width); } } diff --git a/Trunk/MonoGameView/DataModels/Models/Dump.cs b/Trunk/MonoGameView/DataModels/Models/Dump.cs index e214ea4..c52ef2a 100644 --- a/Trunk/MonoGameView/DataModels/Models/Dump.cs +++ b/Trunk/MonoGameView/DataModels/Models/Dump.cs @@ -14,10 +14,10 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.GeneralModels.Models { } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size, int width) { - batch.Draw(ImageContainer.GetImage(TypeOfGarbage.GarbageType.ToString()), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); - batch.Draw(ImageContainer.GetImage(TypeOfGarbage.GarbageType.ToString()+"Bar"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, (int)Math.Round(FillPercent * 500) / size, 50 / size), Color.White); + batch.Draw(ImageContainer.GetImage(TypeOfGarbage.GarbageType.ToString()), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); + batch.Draw(ImageContainer.GetImage(TypeOfGarbage.GarbageType.ToString()+"Bar"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, (int)Math.Round(FillPercent * width) / size, 50 / size), Color.White); } public override object Clone() diff --git a/Trunk/MonoGameView/DataModels/Models/EmptyHouse.cs b/Trunk/MonoGameView/DataModels/Models/EmptyHouse.cs index 5c1a07e..1ae7530 100644 --- a/Trunk/MonoGameView/DataModels/Models/EmptyHouse.cs +++ b/Trunk/MonoGameView/DataModels/Models/EmptyHouse.cs @@ -21,9 +21,9 @@ namespace MonoGameView.DataModels.Models Coords = coords; TrashCans = new List(); } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size, int width) { - batch.Draw(ImageContainer.GetImage("road2"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); + batch.Draw(ImageContainer.GetImage("road2"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); } public object Clone() diff --git a/Trunk/MonoGameView/DataModels/Models/GarbageCollector.cs b/Trunk/MonoGameView/DataModels/Models/GarbageCollector.cs index c3dd5bc..eb9c6ad 100644 --- a/Trunk/MonoGameView/DataModels/Models/GarbageCollector.cs +++ b/Trunk/MonoGameView/DataModels/Models/GarbageCollector.cs @@ -20,9 +20,9 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.Models { } - public void Draw(SpriteBatch batch,int size) + public void Draw(SpriteBatch batch,int size,int width) { - batch.Draw(ImageContainer.GetImage("collector"), new Rectangle(Coords.X*500/size, Coords.Y*500/size, 500/size, 500/size), Color.White); + batch.Draw(ImageContainer.GetImage("collector"), new Rectangle(Coords.X*width/size, Coords.Y*width/size, width/size, width/size), Color.White); } diff --git a/Trunk/MonoGameView/DataModels/Models/Grass.cs b/Trunk/MonoGameView/DataModels/Models/Grass.cs index 53ec9cc..3b925de 100644 --- a/Trunk/MonoGameView/DataModels/Models/Grass.cs +++ b/Trunk/MonoGameView/DataModels/Models/Grass.cs @@ -25,9 +25,9 @@ namespace MonoGameView.DataModels.Models return new Grass((Coords)Coords.Clone()); } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size, int width) { - batch.Draw(ImageContainer.GetImage("grass"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); + batch.Draw(ImageContainer.GetImage("grass"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); } diff --git a/Trunk/MonoGameView/DataModels/Models/House.cs b/Trunk/MonoGameView/DataModels/Models/House.cs index f45e01f..b4b8ac0 100644 --- a/Trunk/MonoGameView/DataModels/Models/House.cs +++ b/Trunk/MonoGameView/DataModels/Models/House.cs @@ -23,24 +23,24 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.Models Coords = coords; TrashCans = trashCans.Select(x=>(x as ATrashCan)).ToList(); } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size,int width) { - batch.Draw(ImageContainer.GetImage("house"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); + batch.Draw(ImageContainer.GetImage("house"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); foreach (TrashCan can in TrashCans) { switch (can.Garbage.TypeOfGarbage.GarbageType) { case GarbageType.Glass: - batch.Draw(ImageContainer.GetImage("GlassBar"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, (int)Math.Round(can.FillPercent * 500) / size, 50 / size), Color.White); + batch.Draw(ImageContainer.GetImage("GlassBar"), new Rectangle(Coords.X * width / size, Coords.Y * width / size + width/200, (int)Math.Round(can.FillPercent * width) / size, width/5 / size), Color.White); break; case GarbageType.Paper: - batch.Draw(ImageContainer.GetImage("PaperBar"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size + 5, (int)Math.Round(can.FillPercent * 500) / size, 50 / size), Color.White); + batch.Draw(ImageContainer.GetImage("PaperBar"), new Rectangle(Coords.X * width / size, Coords.Y * width / size + 2*width / 200, (int)Math.Round(can.FillPercent * width) / size, width/5 / size), Color.White); break; case GarbageType.PlasticMetal: - batch.Draw(ImageContainer.GetImage("PlasticMetalBar"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size + 10, (int)Math.Round(can.FillPercent * 500) / size, 50 / size), Color.White); + batch.Draw(ImageContainer.GetImage("PlasticMetalBar"), new Rectangle(Coords.X * width / size, Coords.Y * width / size + 3*width / 200, (int)Math.Round(can.FillPercent * width) / size, width/5 / size), Color.White); break; case GarbageType.Organic: - batch.Draw(ImageContainer.GetImage("OrganicBar"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size + 15, (int)Math.Round(can.FillPercent * 500) / size, 50 / size), Color.White); + batch.Draw(ImageContainer.GetImage("OrganicBar"), new Rectangle(Coords.X * width / size, Coords.Y * width / size + 4*width / 200, (int)Math.Round(can.FillPercent * width) / size, width/5 / size), Color.White); break; } } diff --git a/Trunk/MonoGameView/DataModels/Models/Road1.cs b/Trunk/MonoGameView/DataModels/Models/Road1.cs index e1f7e8e..5009ff1 100644 --- a/Trunk/MonoGameView/DataModels/Models/Road1.cs +++ b/Trunk/MonoGameView/DataModels/Models/Road1.cs @@ -25,9 +25,9 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.Models return new Road1((Coords)Coords.Clone()); } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size, int width) { - batch.Draw(ImageContainer.GetImage("road1"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); + batch.Draw(ImageContainer.GetImage("road1"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); } } } diff --git a/Trunk/MonoGameView/DataModels/Models/Road2.cs b/Trunk/MonoGameView/DataModels/Models/Road2.cs index 0b4c7c6..62efd3a 100644 --- a/Trunk/MonoGameView/DataModels/Models/Road2.cs +++ b/Trunk/MonoGameView/DataModels/Models/Road2.cs @@ -24,9 +24,9 @@ namespace CzokoŚmieciarka.MonoGameView.DataModels.Models return new Road2((Coords)Coords.Clone()); } - public void Draw(SpriteBatch batch, int size) + public void Draw(SpriteBatch batch, int size, int width) { - batch.Draw(ImageContainer.GetImage("road2"), new Rectangle(Coords.X * 500 / size, Coords.Y * 500 / size, 500 / size, 500 / size), Color.White); + batch.Draw(ImageContainer.GetImage("road2"), new Rectangle(Coords.X * width / size, Coords.Y * width / size, width / size, width / size), Color.White); } } } diff --git a/Trunk/MonoGameView/Game1.cs b/Trunk/MonoGameView/Game1.cs index 9daff1b..ebdd309 100644 --- a/Trunk/MonoGameView/Game1.cs +++ b/Trunk/MonoGameView/Game1.cs @@ -33,7 +33,7 @@ namespace CzokoŚmieciarka.MonoGameView MapLoader mapLoader = new MapLoader(); Vector2 roadPos; float timer; - const float TIMER = 0.001f; + const float TIMER = 0.1f; int stepN; List steps; GarbageCollector collector; @@ -45,8 +45,8 @@ namespace CzokoŚmieciarka.MonoGameView { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = "Content"; - graphics.PreferredBackBufferWidth =700; - graphics.PreferredBackBufferHeight =500; + graphics.PreferredBackBufferWidth =1400; + graphics.PreferredBackBufferHeight =1000; } @@ -62,29 +62,29 @@ namespace CzokoŚmieciarka.MonoGameView ImageContainer.InitContainer(Content); // TODO: Add your initialization logic here - timer = 0f; + timer = 1f; - mapLoader.Load(out size,out grid,"mapa2.xml"); + mapLoader.Load(out size,out grid,"mapa4.xml"); var containers = new List() { new GarbageCollectorContainer( new TypeOfGarbage(GarbageType.Glass,1), - 10000, + 1000, new BasicGarbage(new TypeOfGarbage(GarbageType.Glass,1),0) ), new GarbageCollectorContainer( new TypeOfGarbage(GarbageType.Paper,1), - 10000, + 1000, new BasicGarbage(new TypeOfGarbage(GarbageType.Paper,1),0) ), new GarbageCollectorContainer( new TypeOfGarbage(GarbageType.Organic,1), - 10000, + 1000, new BasicGarbage(new TypeOfGarbage(GarbageType.Organic,1),0) ), new GarbageCollectorContainer( new TypeOfGarbage(GarbageType.PlasticMetal,1), - 10000, + 1000, new BasicGarbage(new TypeOfGarbage(GarbageType.PlasticMetal,1),0) ), @@ -94,11 +94,14 @@ namespace CzokoŚmieciarka.MonoGameView stepN = 0; var dfs = new DFS(collector,grid); - //steps = dfs.BestPath(Content, collector, grid); - new Thread(delegate() { - var x = dfs.BestPath(Content, collector, grid); + var r = dfs.BestPath(Content, collector, grid); + steps = r.Key; + Console.WriteLine(r); + //displayer.Add("Count", r.Value.ToString()); + //new Thread(delegate() { + // var x = dfs.BestPath(Content, collector, grid); - }).Start(); + //}).Start(); base.Initialize(); } @@ -112,6 +115,7 @@ namespace CzokoŚmieciarka.MonoGameView // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); font = Content.Load("arial"); + // TODO: use this.Content to load your game content here } @@ -134,7 +138,7 @@ namespace CzokoŚmieciarka.MonoGameView { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) Exit(); - /* + var elapsed = (float)gameTime.ElapsedGameTime.TotalSeconds; timer -= elapsed; if (timer<0) @@ -146,7 +150,7 @@ namespace CzokoŚmieciarka.MonoGameView steps.RemoveAt(0); } } - */ + // TODO: Add your update logic here var barsDictionary = new Dictionary(); var collectorDictionary = new Dictionary @@ -177,10 +181,10 @@ namespace CzokoŚmieciarka.MonoGameView { for (int y = 0; y < size; y++) { - grid[x, y].Draw(spriteBatch, size); + grid[x, y].Draw(spriteBatch, size, graphics.PreferredBackBufferHeight); } } - collector.Draw(spriteBatch, size); + collector.Draw(spriteBatch, size, graphics.PreferredBackBufferHeight); Display(displayer.info, displayer.barsPercent); spriteBatch.End(); @@ -194,23 +198,22 @@ namespace CzokoŚmieciarka.MonoGameView /// public void Display(Dictionary info, Dictionary barInfo) { - int x = 510; - int y = 10; + int width = graphics.PreferredBackBufferHeight; + int x = width + width/50; + int y = width/50; foreach (KeyValuePair item in info) { - spriteBatch.DrawString(font, item.Key, new Vector2(x, y), Color.Black); - y += 15; - spriteBatch.DrawString(font, item.Value, new Vector2(x, y), Color.White); - y += 30; - try + if (barInfo.ContainsKey(item.Key)) { var bar = barInfo[item.Key]; - spriteBatch.Draw(ImageContainer.GetImage(item.Key+"Bar"), new Rectangle(x, y, bar * 40, 10), Color.White); - y += 50; - } - catch - { + spriteBatch.Draw(ImageContainer.GetImage(item.Key + "Bar"), new Rectangle(x, y, bar * width / 500, width / 50), Color.White); + y += width / 50; } + spriteBatch.DrawString(font, item.Key, new Vector2(x, y), Color.Black); + y += width*2/100; + spriteBatch.DrawString(font, item.Value, new Vector2(x, y), Color.White); + y += width*3/50; + } } } diff --git a/Trunk/mapa1.xml b/Trunk/mapa1.xml new file mode 100644 index 0000000..1f33510 --- /dev/null +++ b/Trunk/mapa1.xml @@ -0,0 +1 @@ +10Dump00PaperGrass01Dump02GlassGrass03Dump04OrganicGrass05Dump06PlasticMetalGrass07Grass08Grass09Road10Road11Road12Road13Road14Road15Road16Road17Road18Road19Grass20Grass21Grass22Grass23House24Paper73Grass25Grass26Grass27Road28Grass29Grass30Road31House32Paper69Grass33Grass34Grass35Grass36Grass37Road38Grass39Grass40Road41Grass42Grass43Grass44Grass45Grass46Grass47Road48Grass49Grass50Road51Grass52Grass53Road54Road55Road56Road57Road58Grass59Grass60Road61House62Paper96Grass63Grass64House65Paper17Grass66Grass67Road68Grass69Grass70Road71Grass72Grass73Grass74Grass75Grass76Grass77Road78Grass79Grass80Road81Road82Road83Road84Road85Road86Road87Road88Grass89Grass90Grass91Grass92Grass93Grass94House95Paper63Grass96Grass97Grass98Grass99 \ No newline at end of file diff --git a/Trunk/mapa2.xml b/Trunk/mapa2.xml new file mode 100644 index 0000000..3d2cbbf --- /dev/null +++ b/Trunk/mapa2.xml @@ -0,0 +1 @@ +10Dump00PaperGrass01Dump02GlassGrass03Dump04OrganicGrass05Dump06PlasticMetalGrass07Grass08Grass09Road10Road11Road12Road13Road14Road15Road16Road17Road18Road19Grass20Grass21Grass22House23PlasticMetal23Grass24Grass25House26Paper23Organic19PlasticMetal64Grass27Road28Grass29Grass30Road31Grass32Grass33Grass34Grass35Grass36Grass37Road38Grass39Grass40Road41Grass42House43Glass6Organic75Grass44Grass45House46Paper28Glass25Organic3Grass47Road48Grass49Grass50Road51Road52Road53Road54Road55Road56Road57Road58Grass59Grass60Road61Grass62House63Paper98Grass64Grass65House66PlasticMetal61Grass67Road68Grass69Grass70Road71Grass72Grass73Grass74Grass75Grass76Grass77Road78Grass79Grass80Road81Road82Road83Road84Road85Road86Road87Road88Grass89Grass90Grass91Grass92House93Paper27Grass94Grass95House96Organic61Grass97Grass98Grass99 \ No newline at end of file diff --git a/Trunk/mapa3.xml b/Trunk/mapa3.xml new file mode 100644 index 0000000..8ccf6c6 --- /dev/null +++ b/Trunk/mapa3.xml @@ -0,0 +1 @@ +15Grass00Grass01Grass02Grass03Grass04Grass05Grass06Grass07Grass08Grass09Grass010Grass011Grass012Road013Grass014Grass10Road11Road12Road13Road14Road15Road16Road17Road18Road19Road110Road111Road112Road113Grass114Grass20Road21Grass22House23PlasticMetal43Grass24Grass25Grass26House27PlasticMetal37Grass28Grass29Grass210House211Organic74PlasticMetal62Grass212Road213Grass214Grass30Road31Grass32Grass33Grass34Grass35Grass36Grass37Grass38Grass39Grass310Grass311Grass312Road313Grass314Grass40Road41Grass42Grass43Grass44Grass45Grass46Grass47Grass48Grass49Grass410Grass411Grass412Road413Grass414Grass50Road51Grass52House53PlasticMetal28Grass54Grass55Grass56House57PlasticMetal28Grass58Grass59Grass510House511Paper73Glass31Grass512Road513Grass514Grass60Road61Road62Road63Road64Road65Road66Road67Road68Road69Road610Road611Road612Road613Grass614Grass70Grass71Grass72Grass73Grass74Road75Grass76Grass77Grass78Road79Grass710Grass711Grass712Road713Grass714Grass80Grass81Grass82Grass83Grass84Road85House86Glass21Grass87House88Glass77Organic62PlasticMetal14Road89House810Organic70Grass811House812Organic61PlasticMetal30Road813Grass814Grass90Dump91PaperRoad92Dump93GlassGrass94Road95Grass96Grass97Grass98Road99Grass910Grass911Grass912Road913Grass914Grass100Grass101Road102Grass103Grass104Road105Grass106Grass107Grass108Road109Grass1010Grass1011Grass1012Road1013Grass1014Grass110Dump111OrganicRoad112Dump113PlasticMetalGrass114Road115House116Glass96Organic72Grass117House118Paper36PlasticMetal81Road119House1110Glass55PlasticMetal4Grass1111House1112Glass9Road1113Grass1114Grass120Grass121Road122Grass123Grass124Road125Grass126Grass127Grass128Grass129Grass1210Grass1211Grass1212Road1213Grass1214Grass130Road131Road132Road133Road134Road135Road136Road137Road138Road139Road1310Road1311Road1312Road1313Grass1314Grass140Grass141Grass142Grass143Grass144Grass145Grass146Grass147Grass148Grass149Grass1410Grass1411Grass1412Grass1413Grass1414 \ No newline at end of file diff --git a/Trunk/mapa4.xml b/Trunk/mapa4.xml new file mode 100644 index 0000000..77b6dc1 --- /dev/null +++ b/Trunk/mapa4.xml @@ -0,0 +1,12164 @@ + + + + 30 + + + + + Grass + + + + 0 + + + 0 + + + + + + Grass + + + + 0 + + + 1 + + + + + + Grass + + + + 0 + + + 2 + + + + + + Grass + + + + 0 + + + 3 + + + + + + Grass + + + + 0 + + + 4 + + + + + + Grass + + + + 0 + + + 5 + + + + + + Grass + + + + 0 + + + 6 + + + + + + Grass + + + + 0 + + + 7 + + + + + + Grass + + + + 0 + + + 8 + + + + + + Grass + + + + 0 + + + 9 + + + + + + Grass + + + + 0 + + + 10 + + + + + + Grass + + + + 0 + + + 11 + + + + + + Grass + + + + 0 + + + 12 + + + + + + Grass + + + + 0 + + + 13 + + + + + + Grass + + + + 0 + + + 14 + + + + + + Grass + + + + 0 + + + 15 + + + + + + Grass + + + + 0 + + + 16 + + + + + + Grass + + + + 0 + + + 17 + + + + + + Grass + + + + 0 + + + 18 + + + + + + Grass + + + + 0 + + + 19 + + + + + + Grass + + + + 0 + + + 20 + + + + + + Grass + + + + 0 + + + 21 + + + + + + Grass + + + + 0 + + + 22 + + + + + + Grass + + + + 0 + + + 23 + + + + + + Grass + + + + 0 + + + 24 + + + + + + Grass + + + + 0 + + + 25 + + + + + + Grass + + + + 0 + + + 26 + + + + + + Grass + + + + 0 + + + 27 + + + + + + Grass + + + + 0 + + + 28 + + + + + + Grass + + + + 0 + + + 29 + + + + + + Grass + + + + 1 + + + 0 + + + + + + Dump + + + + 1 + + + 1 + + + + + Paper + + + + + + Grass + + + + 1 + + + 2 + + + + + + Dump + + + + 1 + + + 3 + + + + + Glass + + + + + + Grass + + + + 1 + + + 4 + + + + + + Grass + + + + 1 + + + 5 + + + + + + Grass + + + + 1 + + + 6 + + + + + + Grass + + + + 1 + + + 7 + + + + + + Grass + + + + 1 + + + 8 + + + + + + Grass + + + + 1 + + + 9 + + + + + + Grass + + + + 1 + + + 10 + + + + + + Grass + + + + 1 + + + 11 + + + + + + Grass + + + + 1 + + + 12 + + + + + + Grass + + + + 1 + + + 13 + + + + + + Grass + + + + 1 + + + 14 + + + + + + Grass + + + + 1 + + + 15 + + + + + + Grass + + + + 1 + + + 16 + + + + + + Grass + + + + 1 + + + 17 + + + + + + Grass + + + + 1 + + + 18 + + + + + + Grass + + + + 1 + + + 19 + + + + + + Grass + + + + 1 + + + 20 + + + + + + Grass + + + + 1 + + + 21 + + + + + + Grass + + + + 1 + + + 22 + + + + + + Grass + + + + 1 + + + 23 + + + + + + Grass + + + + 1 + + + 24 + + + + + + Grass + + + + 1 + + + 25 + + + + + + Grass + + + + 1 + + + 26 + + + + + + Grass + + + + 1 + + + 27 + + + + + + Grass + + + + 1 + + + 28 + + + + + + Grass + + + + 1 + + + 29 + + + + + + Grass + + + + 2 + + + 0 + + + + + + Road + + + + 2 + + + 1 + + + + + + Road + + + + 2 + + + 2 + + + + + + Road + + + + 2 + + + 3 + + + + + + Road + + + + 2 + + + 4 + + + + + + Road + + + + 2 + + + 5 + + + + + + Road + + + + 2 + + + 6 + + + + + + Road + + + + 2 + + + 7 + + + + + + Road + + + + 2 + + + 8 + + + + + + Road + + + + 2 + + + 9 + + + + + + Road + + + + 2 + + + 10 + + + + + + Road + + + + 2 + + + 11 + + + + + + Road + + + + 2 + + + 12 + + + + + + Road + + + + 2 + + + 13 + + + + + + Road + + + + 2 + + + 14 + + + + + + Road + + + + 2 + + + 15 + + + + + + Road + + + + 2 + + + 16 + + + + + + Road + + + + 2 + + + 17 + + + + + + Road + + + + 2 + + + 18 + + + + + + Road + + + + 2 + + + 19 + + + + + + Road + + + + 2 + + + 20 + + + + + + Road + + + + 2 + + + 21 + + + + + + Road + + + + 2 + + + 22 + + + + + + Road + + + + 2 + + + 23 + + + + + + Road + + + + 2 + + + 24 + + + + + + Road + + + + 2 + + + 25 + + + + + + Road + + + + 2 + + + 26 + + + + + + Road + + + + 2 + + + 27 + + + + + + Grass + + + + 2 + + + 28 + + + + + + Grass + + + + 2 + + + 29 + + + + + + Grass + + + + 3 + + + 0 + + + + + + Dump + + + + 3 + + + 1 + + + + + Organic + + + + + + Grass + + + + 3 + + + 2 + + + + + + Dump + + + + 3 + + + 3 + + + + + PlasticMetal + + + + + + Grass + + + + 3 + + + 4 + + + + + + Grass + + + + 3 + + + 5 + + + + + + Grass + + + + 3 + + + 6 + + + + + + Grass + + + + 3 + + + 7 + + + + + + Grass + + + + 3 + + + 8 + + + + + + Grass + + + + 3 + + + 9 + + + + + + Grass + + + + 3 + + + 10 + + + + + + Grass + + + + 3 + + + 11 + + + + + + Grass + + + + 3 + + + 12 + + + + + + Road + + + + 3 + + + 13 + + + + + + Grass + + + + 3 + + + 14 + + + + + + Grass + + + + 3 + + + 15 + + + + + + Grass + + + + 3 + + + 16 + + + + + + Grass + + + + 3 + + + 17 + + + + + + Grass + + + + 3 + + + 18 + + + + + + Grass + + + + 3 + + + 19 + + + + + + Grass + + + + 3 + + + 20 + + + + + + Grass + + + + 3 + + + 21 + + + + + + Grass + + + + 3 + + + 22 + + + + + + Grass + + + + 3 + + + 23 + + + + + + Grass + + + + 3 + + + 24 + + + + + + Grass + + + + 3 + + + 25 + + + + + + Grass + + + + 3 + + + 26 + + + + + + Road + + + + 3 + + + 27 + + + + + + Grass + + + + 3 + + + 28 + + + + + + Grass + + + + 3 + + + 29 + + + + + + Grass + + + + 4 + + + 0 + + + + + + Grass + + + + 4 + + + 1 + + + + + + Grass + + + + 4 + + + 2 + + + + + + Grass + + + + 4 + + + 3 + + + + + + Grass + + + + 4 + + + 4 + + + + + + Grass + + + + 4 + + + 5 + + + + + + Grass + + + + 4 + + + 6 + + + + + + Grass + + + + 4 + + + 7 + + + + + + Grass + + + + 4 + + + 8 + + + + + + Grass + + + + 4 + + + 9 + + + + + + Grass + + + + 4 + + + 10 + + + + + + Grass + + + + 4 + + + 11 + + + + + + Grass + + + + 4 + + + 12 + + + + + + Road + + + + 4 + + + 13 + + + + + + Grass + + + + 4 + + + 14 + + + + + + Grass + + + + 4 + + + 15 + + + + + + Grass + + + + 4 + + + 16 + + + + + + Grass + + + + 4 + + + 17 + + + + + + Grass + + + + 4 + + + 18 + + + + + + Grass + + + + 4 + + + 19 + + + + + + Grass + + + + 4 + + + 20 + + + + + + Grass + + + + 4 + + + 21 + + + + + + Grass + + + + 4 + + + 22 + + + + + + Grass + + + + 4 + + + 23 + + + + + + Grass + + + + 4 + + + 24 + + + + + + Grass + + + + 4 + + + 25 + + + + + + Grass + + + + 4 + + + 26 + + + + + + Road + + + + 4 + + + 27 + + + + + + Grass + + + + 4 + + + 28 + + + + + + Grass + + + + 4 + + + 29 + + + + + + Grass + + + + 5 + + + 0 + + + + + + Grass + + + + 5 + + + 1 + + + + + + Grass + + + + 5 + + + 2 + + + + + + Grass + + + + 5 + + + 3 + + + + + + Grass + + + + 5 + + + 4 + + + + + + Grass + + + + 5 + + + 5 + + + + + + Grass + + + + 5 + + + 6 + + + + + + Grass + + + + 5 + + + 7 + + + + + + Grass + + + + 5 + + + 8 + + + + + + Grass + + + + 5 + + + 9 + + + + + + Grass + + + + 5 + + + 10 + + + + + + Grass + + + + 5 + + + 11 + + + + + + Grass + + + + 5 + + + 12 + + + + + + Road + + + + 5 + + + 13 + + + + + + Grass + + + + 5 + + + 14 + + + + + + Grass + + + + 5 + + + 15 + + + + + + Grass + + + + 5 + + + 16 + + + + + + Grass + + + + 5 + + + 17 + + + + + + Grass + + + + 5 + + + 18 + + + + + + Grass + + + + 5 + + + 19 + + + + + + Grass + + + + 5 + + + 20 + + + + + + Grass + + + + 5 + + + 21 + + + + + + Grass + + + + 5 + + + 22 + + + + + + Grass + + + + 5 + + + 23 + + + + + + Grass + + + + 5 + + + 24 + + + + + + Grass + + + + 5 + + + 25 + + + + + + Grass + + + + 5 + + + 26 + + + + + + Road + + + + 5 + + + 27 + + + + + + Grass + + + + 5 + + + 28 + + + + + + Grass + + + + 5 + + + 29 + + + + + + Grass + + + + 6 + + + 0 + + + + + + Road + + + + 6 + + + 1 + + + + + + Road + + + + 6 + + + 2 + + + + + + Road + + + + 6 + + + 3 + + + + + + Road + + + + 6 + + + 4 + + + + + + Road + + + + 6 + + + 5 + + + + + + Road + + + + 6 + + + 6 + + + + + + Road + + + + 6 + + + 7 + + + + + + Grass + + + + 6 + + + 8 + + + + + + Grass + + + + 6 + + + 9 + + + + + + Grass + + + + 6 + + + 10 + + + + + + Grass + + + + 6 + + + 11 + + + + + + House + + + + 6 + + + 12 + + + + + + Paper + + + 30 + + + + + + + Road + + + + 6 + + + 13 + + + + + + House + + + + 6 + + + 14 + + + + + + Glass + + + 70 + + + + + + + Grass + + + + 6 + + + 15 + + + + + + Grass + + + + 6 + + + 16 + + + + + + Grass + + + + 6 + + + 17 + + + + + + Grass + + + + 6 + + + 18 + + + + + + Grass + + + + 6 + + + 19 + + + + + + Road + + + + 6 + + + 20 + + + + + + Road + + + + 6 + + + 21 + + + + + + Road + + + + 6 + + + 22 + + + + + + Road + + + + 6 + + + 23 + + + + + + Road + + + + 6 + + + 24 + + + + + + Road + + + + 6 + + + 25 + + + + + + Road + + + + 6 + + + 26 + + + + + + Road + + + + 6 + + + 27 + + + + + + Grass + + + + 6 + + + 28 + + + + + + Grass + + + + 6 + + + 29 + + + + + + Grass + + + + 7 + + + 0 + + + + + + Road + + + + 7 + + + 1 + + + + + + Grass + + + + 7 + + + 2 + + + + + + Grass + + + + 7 + + + 3 + + + + + + Grass + + + + 7 + + + 4 + + + + + + Grass + + + + 7 + + + 5 + + + + + + Grass + + + + 7 + + + 6 + + + + + + Road + + + + 7 + + + 7 + + + + + + Grass + + + + 7 + + + 8 + + + + + + Grass + + + + 7 + + + 9 + + + + + + Grass + + + + 7 + + + 10 + + + + + + Grass + + + + 7 + + + 11 + + + + + + Grass + + + + 7 + + + 12 + + + + + + Road + + + + 7 + + + 13 + + + + + + Grass + + + + 7 + + + 14 + + + + + + Grass + + + + 7 + + + 15 + + + + + + Grass + + + + 7 + + + 16 + + + + + + Grass + + + + 7 + + + 17 + + + + + + Grass + + + + 7 + + + 18 + + + + + + Grass + + + + 7 + + + 19 + + + + + + Road + + + + 7 + + + 20 + + + + + + Grass + + + + 7 + + + 21 + + + + + + Grass + + + + 7 + + + 22 + + + + + + Grass + + + + 7 + + + 23 + + + + + + Grass + + + + 7 + + + 24 + + + + + + Grass + + + + 7 + + + 25 + + + + + + Grass + + + + 7 + + + 26 + + + + + + Road + + + + 7 + + + 27 + + + + + + Grass + + + + 7 + + + 28 + + + + + + Grass + + + + 7 + + + 29 + + + + + + Grass + + + + 8 + + + 0 + + + + + + Road + + + + 8 + + + 1 + + + + + + Grass + + + + 8 + + + 2 + + + + + + Grass + + + + 8 + + + 3 + + + + + + Grass + + + + 8 + + + 4 + + + + + + Grass + + + + 8 + + + 5 + + + + + + Grass + + + + 8 + + + 6 + + + + + + Road + + + + 8 + + + 7 + + + + + + Grass + + + + 8 + + + 8 + + + + + + Grass + + + + 8 + + + 9 + + + + + + Grass + + + + 8 + + + 10 + + + + + + Grass + + + + 8 + + + 11 + + + + + + Grass + + + + 8 + + + 12 + + + + + + Road + + + + 8 + + + 13 + + + + + + Grass + + + + 8 + + + 14 + + + + + + Grass + + + + 8 + + + 15 + + + + + + Grass + + + + 8 + + + 16 + + + + + + Grass + + + + 8 + + + 17 + + + + + + Grass + + + + 8 + + + 18 + + + + + + Grass + + + + 8 + + + 19 + + + + + + Road + + + + 8 + + + 20 + + + + + + Grass + + + + 8 + + + 21 + + + + + + Grass + + + + 8 + + + 22 + + + + + + Grass + + + + 8 + + + 23 + + + + + + Grass + + + + 8 + + + 24 + + + + + + Grass + + + + 8 + + + 25 + + + + + + Grass + + + + 8 + + + 26 + + + + + + Road + + + + 8 + + + 27 + + + + + + Grass + + + + 8 + + + 28 + + + + + + Grass + + + + 8 + + + 29 + + + + + + Grass + + + + 9 + + + 0 + + + + + + Road + + + + 9 + + + 1 + + + + + + Grass + + + + 9 + + + 2 + + + + + + Grass + + + + 9 + + + 3 + + + + + + Grass + + + + 9 + + + 4 + + + + + + Grass + + + + 9 + + + 5 + + + + + + Grass + + + + 9 + + + 6 + + + + + + Road + + + + 9 + + + 7 + + + + + + Grass + + + + 9 + + + 8 + + + + + + Grass + + + + 9 + + + 9 + + + + + + Grass + + + + 9 + + + 10 + + + + + + Grass + + + + 9 + + + 11 + + + + + + Grass + + + + 9 + + + 12 + + + + + + Road + + + + 9 + + + 13 + + + + + + Grass + + + + 9 + + + 14 + + + + + + Grass + + + + 9 + + + 15 + + + + + + Grass + + + + 9 + + + 16 + + + + + + Grass + + + + 9 + + + 17 + + + + + + Grass + + + + 9 + + + 18 + + + + + + Grass + + + + 9 + + + 19 + + + + + + Road + + + + 9 + + + 20 + + + + + + Grass + + + + 9 + + + 21 + + + + + + Grass + + + + 9 + + + 22 + + + + + + Grass + + + + 9 + + + 23 + + + + + + Grass + + + + 9 + + + 24 + + + + + + Grass + + + + 9 + + + 25 + + + + + + Grass + + + + 9 + + + 26 + + + + + + Road + + + + 9 + + + 27 + + + + + + Grass + + + + 9 + + + 28 + + + + + + Grass + + + + 9 + + + 29 + + + + + + Grass + + + + 10 + + + 0 + + + + + + Road + + + + 10 + + + 1 + + + + + + House + + + + 10 + + + 2 + + + + + + Paper + + + 90 + + + + + + + Grass + + + + 10 + + + 3 + + + + + + Grass + + + + 10 + + + 4 + + + + + + Grass + + + + 10 + + + 5 + + + + + + House + + + + 10 + + + 6 + + + + + + Organic + + + 70 + + + + + + + Road + + + + 10 + + + 7 + + + + + + Grass + + + + 10 + + + 8 + + + + + + Grass + + + + 10 + + + 9 + + + + + + Grass + + + + 10 + + + 10 + + + + + + Grass + + + + 10 + + + 11 + + + + + + House + + + + 10 + + + 12 + + + + + + Organic + + + 90 + + + + + Paper + + + 90 + + + + + + + Road + + + + 10 + + + 13 + + + + + + House + + + + 10 + + + 14 + + + + + + Organic + + + 90 + + + + + Paper + + + 90 + + + + + + + Grass + + + + 10 + + + 15 + + + + + + Grass + + + + 10 + + + 16 + + + + + + Grass + + + + 10 + + + 17 + + + + + + Grass + + + + 10 + + + 18 + + + + + + House + + + + 10 + + + 19 + + + + + + Organic + + + 90 + + + + + + + Road + + + + 10 + + + 20 + + + + + + House + + + + 10 + + + 21 + + + + + + Glass + + + 90 + + + + + + + Grass + + + + 10 + + + 22 + + + + + + Grass + + + + 10 + + + 23 + + + + + + Grass + + + + 10 + + + 24 + + + + + + Grass + + + + 10 + + + 25 + + + + + + House + + + + 10 + + + 26 + + + + + + Glass + + + 90 + + + + + + + Road + + + + 10 + + + 27 + + + + + + Grass + + + + 10 + + + 28 + + + + + + Grass + + + + 10 + + + 29 + + + + + + Grass + + + + 11 + + + 0 + + + + + + Road + + + + 11 + + + 1 + + + + + + Grass + + + + 11 + + + 2 + + + + + + Grass + + + + 11 + + + 3 + + + + + + Grass + + + + 11 + + + 4 + + + + + + Grass + + + + 11 + + + 5 + + + + + + Grass + + + + 11 + + + 6 + + + + + + Road + + + + 11 + + + 7 + + + + + + Grass + + + + 11 + + + 8 + + + + + + Grass + + + + 11 + + + 9 + + + + + + Grass + + + + 11 + + + 10 + + + + + + Grass + + + + 11 + + + 11 + + + + + + Grass + + + + 11 + + + 12 + + + + + + Road + + + + 11 + + + 13 + + + + + + Grass + + + + 11 + + + 14 + + + + + + Grass + + + + 11 + + + 15 + + + + + + Grass + + + + 11 + + + 16 + + + + + + Grass + + + + 11 + + + 17 + + + + + + Grass + + + + 11 + + + 18 + + + + + + Grass + + + + 11 + + + 19 + + + + + + Road + + + + 11 + + + 20 + + + + + + Grass + + + + 11 + + + 21 + + + + + + Grass + + + + 11 + + + 22 + + + + + + Grass + + + + 11 + + + 23 + + + + + + Grass + + + + 11 + + + 24 + + + + + + Grass + + + + 11 + + + 25 + + + + + + Grass + + + + 11 + + + 26 + + + + + + Road + + + + 11 + + + 27 + + + + + + Grass + + + + 11 + + + 28 + + + + + + Grass + + + + 11 + + + 29 + + + + + + Grass + + + + 12 + + + 0 + + + + + + Road + + + + 12 + + + 1 + + + + + + Grass + + + + 12 + + + 2 + + + + + + Grass + + + + 12 + + + 3 + + + + + + Grass + + + + 12 + + + 4 + + + + + + Grass + + + + 12 + + + 5 + + + + + + Grass + + + + 12 + + + 6 + + + + + + Road + + + + 12 + + + 7 + + + + + + Grass + + + + 12 + + + 8 + + + + + + Grass + + + + 12 + + + 9 + + + + + + Grass + + + + 12 + + + 10 + + + + + + Grass + + + + 12 + + + 11 + + + + + + Grass + + + + 12 + + + 12 + + + + + + Road + + + + 12 + + + 13 + + + + + + Grass + + + + 12 + + + 14 + + + + + + Grass + + + + 12 + + + 15 + + + + + + Grass + + + + 12 + + + 16 + + + + + + Grass + + + + 12 + + + 17 + + + + + + Grass + + + + 12 + + + 18 + + + + + + Grass + + + + 12 + + + 19 + + + + + + Road + + + + 12 + + + 20 + + + + + + Grass + + + + 12 + + + 21 + + + + + + Grass + + + + 12 + + + 22 + + + + + + Grass + + + + 12 + + + 23 + + + + + + Grass + + + + 12 + + + 24 + + + + + + Grass + + + + 12 + + + 25 + + + + + + Grass + + + + 12 + + + 26 + + + + + + Road + + + + 12 + + + 27 + + + + + + Grass + + + + 12 + + + 28 + + + + + + Grass + + + + 12 + + + 29 + + + + + + Grass + + + + 13 + + + 0 + + + + + + Road + + + + 13 + + + 1 + + + + + + Grass + + + + 13 + + + 2 + + + + + + Grass + + + + 13 + + + 3 + + + + + + Grass + + + + 13 + + + 4 + + + + + + Grass + + + + 13 + + + 5 + + + + + + Grass + + + + 13 + + + 6 + + + + + + Road + + + + 13 + + + 7 + + + + + + Grass + + + + 13 + + + 8 + + + + + + Grass + + + + 13 + + + 9 + + + + + + Grass + + + + 13 + + + 10 + + + + + + Grass + + + + 13 + + + 11 + + + + + + Grass + + + + 13 + + + 12 + + + + + + Road + + + + 13 + + + 13 + + + + + + Grass + + + + 13 + + + 14 + + + + + + Grass + + + + 13 + + + 15 + + + + + + Grass + + + + 13 + + + 16 + + + + + + Grass + + + + 13 + + + 17 + + + + + + Grass + + + + 13 + + + 18 + + + + + + Grass + + + + 13 + + + 19 + + + + + + Road + + + + 13 + + + 20 + + + + + + Grass + + + + 13 + + + 21 + + + + + + Grass + + + + 13 + + + 22 + + + + + + Grass + + + + 13 + + + 23 + + + + + + Grass + + + + 13 + + + 24 + + + + + + Grass + + + + 13 + + + 25 + + + + + + Grass + + + + 13 + + + 26 + + + + + + Road + + + + 13 + + + 27 + + + + + + Grass + + + + 13 + + + 28 + + + + + + Grass + + + + 13 + + + 29 + + + + + + Grass + + + + 14 + + + 0 + + + + + + Road + + + + 14 + + + 1 + + + + + + House + + + + 14 + + + 2 + + + + + + Glass + + + 90 + + + + + + + Grass + + + + 14 + + + 3 + + + + + + Grass + + + + 14 + + + 4 + + + + + + Grass + + + + 14 + + + 5 + + + + + + House + + + + 14 + + + 6 + + + + + + Paper + + + 90 + + + + + + + Road + + + + 14 + + + 7 + + + + + + Grass + + + + 14 + + + 8 + + + + + + Grass + + + + 14 + + + 9 + + + + + + Grass + + + + 14 + + + 10 + + + + + + Grass + + + + 14 + + + 11 + + + + + + House + + + + 14 + + + 12 + + + + + + Organic + + + 90 + + + + + + + Road + + + + 14 + + + 13 + + + + + + House + + + + 14 + + + 14 + + + + + + Paper + + + 30 + + + + + + + Grass + + + + 14 + + + 15 + + + + + + Grass + + + + 14 + + + 16 + + + + + + Grass + + + + 14 + + + 17 + + + + + + Grass + + + + 14 + + + 18 + + + + + + House + + + + 14 + + + 19 + + + + + + Paper + + + 20 + + + + + + + Road + + + + 14 + + + 20 + + + + + + House + + + + 14 + + + 21 + + + + + + Paper + + + 90 + + + + + + + Grass + + + + 14 + + + 22 + + + + + + Grass + + + + 14 + + + 23 + + + + + + Grass + + + + 14 + + + 24 + + + + + + Grass + + + + 14 + + + 25 + + + + + + House + + + + 14 + + + 26 + + + + + + Organic + + + 90 + + + + + + + Road + + + + 14 + + + 27 + + + + + + Grass + + + + 14 + + + 28 + + + + + + Grass + + + + 14 + + + 29 + + + + + + Grass + + + + 15 + + + 0 + + + + + + Road + + + + 15 + + + 1 + + + + + + Grass + + + + 15 + + + 2 + + + + + + Grass + + + + 15 + + + 3 + + + + + + Grass + + + + 15 + + + 4 + + + + + + Grass + + + + 15 + + + 5 + + + + + + Grass + + + + 15 + + + 6 + + + + + + Road + + + + 15 + + + 7 + + + + + + Grass + + + + 15 + + + 8 + + + + + + Grass + + + + 15 + + + 9 + + + + + + Grass + + + + 15 + + + 10 + + + + + + Grass + + + + 15 + + + 11 + + + + + + Grass + + + + 15 + + + 12 + + + + + + Road + + + + 15 + + + 13 + + + + + + Grass + + + + 15 + + + 14 + + + + + + Grass + + + + 15 + + + 15 + + + + + + Grass + + + + 15 + + + 16 + + + + + + Grass + + + + 15 + + + 17 + + + + + + Grass + + + + 15 + + + 18 + + + + + + Grass + + + + 15 + + + 19 + + + + + + Road + + + + 15 + + + 20 + + + + + + Grass + + + + 15 + + + 21 + + + + + + Grass + + + + 15 + + + 22 + + + + + + Grass + + + + 15 + + + 23 + + + + + + Grass + + + + 15 + + + 24 + + + + + + Grass + + + + 15 + + + 25 + + + + + + Grass + + + + 15 + + + 26 + + + + + + Road + + + + 15 + + + 27 + + + + + + Grass + + + + 15 + + + 28 + + + + + + Grass + + + + 15 + + + 29 + + + + + + Grass + + + + 16 + + + 0 + + + + + + Road + + + + 16 + + + 1 + + + + + + Grass + + + + 16 + + + 2 + + + + + + Grass + + + + 16 + + + 3 + + + + + + Grass + + + + 16 + + + 4 + + + + + + Grass + + + + 16 + + + 5 + + + + + + Grass + + + + 16 + + + 6 + + + + + + Road + + + + 16 + + + 7 + + + + + + Grass + + + + 16 + + + 8 + + + + + + Grass + + + + 16 + + + 9 + + + + + + Grass + + + + 16 + + + 10 + + + + + + Grass + + + + 16 + + + 11 + + + + + + Grass + + + + 16 + + + 12 + + + + + + Road + + + + 16 + + + 13 + + + + + + Grass + + + + 16 + + + 14 + + + + + + Grass + + + + 16 + + + 15 + + + + + + Grass + + + + 16 + + + 16 + + + + + + Grass + + + + 16 + + + 17 + + + + + + Grass + + + + 16 + + + 18 + + + + + + Grass + + + + 16 + + + 19 + + + + + + Road + + + + 16 + + + 20 + + + + + + Grass + + + + 16 + + + 21 + + + + + + Grass + + + + 16 + + + 22 + + + + + + Grass + + + + 16 + + + 23 + + + + + + Grass + + + + 16 + + + 24 + + + + + + Grass + + + + 16 + + + 25 + + + + + + Grass + + + + 16 + + + 26 + + + + + + Road + + + + 16 + + + 27 + + + + + + Grass + + + + 16 + + + 28 + + + + + + Grass + + + + 16 + + + 29 + + + + + + Grass + + + + 17 + + + 0 + + + + + + Road + + + + 17 + + + 1 + + + + + + Grass + + + + 17 + + + 2 + + + + + + Grass + + + + 17 + + + 3 + + + + + + Grass + + + + 17 + + + 4 + + + + + + Grass + + + + 17 + + + 5 + + + + + + Grass + + + + 17 + + + 6 + + + + + + Road + + + + 17 + + + 7 + + + + + + Grass + + + + 17 + + + 8 + + + + + + Grass + + + + 17 + + + 9 + + + + + + Grass + + + + 17 + + + 10 + + + + + + Grass + + + + 17 + + + 11 + + + + + + Grass + + + + 17 + + + 12 + + + + + + Road + + + + 17 + + + 13 + + + + + + Grass + + + + 17 + + + 14 + + + + + + Grass + + + + 17 + + + 15 + + + + + + Grass + + + + 17 + + + 16 + + + + + + Grass + + + + 17 + + + 17 + + + + + + Grass + + + + 17 + + + 18 + + + + + + Grass + + + + 17 + + + 19 + + + + + + Road + + + + 17 + + + 20 + + + + + + Grass + + + + 17 + + + 21 + + + + + + Grass + + + + 17 + + + 22 + + + + + + Grass + + + + 17 + + + 23 + + + + + + Grass + + + + 17 + + + 24 + + + + + + Grass + + + + 17 + + + 25 + + + + + + Grass + + + + 17 + + + 26 + + + + + + Road + + + + 17 + + + 27 + + + + + + Grass + + + + 17 + + + 28 + + + + + + Grass + + + + 17 + + + 29 + + + + + + Grass + + + + 18 + + + 0 + + + + + + Road + + + + 18 + + + 1 + + + + + + House + + + + 18 + + + 2 + + + + + + Organic + + + 90 + + + + + + + Grass + + + + 18 + + + 3 + + + + + + Grass + + + + 18 + + + 4 + + + + + + Grass + + + + 18 + + + 5 + + + + + + House + + + + 18 + + + 6 + + + + + + Paper + + + 30 + + + + + + + Road + + + + 18 + + + 7 + + + + + + Grass + + + + 18 + + + 8 + + + + + + Grass + + + + 18 + + + 9 + + + + + + Grass + + + + 18 + + + 10 + + + + + + Grass + + + + 18 + + + 11 + + + + + + House + + + + 18 + + + 12 + + + + + + Paper + + + 90 + + + + + + + Road + + + + 18 + + + 13 + + + + + + House + + + + 18 + + + 14 + + + + + + Glass + + + 20 + + + + + + + Grass + + + + 18 + + + 15 + + + + + + Grass + + + + 18 + + + 16 + + + + + + Grass + + + + 18 + + + 17 + + + + + + Grass + + + + 18 + + + 18 + + + + + + House + + + + 18 + + + 19 + + + + + + Organic + + + 40 + + + + + + + Road + + + + 18 + + + 20 + + + + + + House + + + + 18 + + + 21 + + + + + + Glass + + + 90 + + + + + + + Grass + + + + 18 + + + 22 + + + + + + Grass + + + + 18 + + + 23 + + + + + + Grass + + + + 18 + + + 24 + + + + + + Grass + + + + 18 + + + 25 + + + + + + House + + + + 18 + + + 26 + + + + + + Paper + + + 90 + + + + + + + Road + + + + 18 + + + 27 + + + + + + Grass + + + + 18 + + + 28 + + + + + + Grass + + + + 18 + + + 29 + + + + + + Grass + + + + 19 + + + 0 + + + + + + Road + + + + 19 + + + 1 + + + + + + Grass + + + + 19 + + + 2 + + + + + + Grass + + + + 19 + + + 3 + + + + + + Grass + + + + 19 + + + 4 + + + + + + Grass + + + + 19 + + + 5 + + + + + + Grass + + + + 19 + + + 6 + + + + + + Road + + + + 19 + + + 7 + + + + + + Grass + + + + 19 + + + 8 + + + + + + Grass + + + + 19 + + + 9 + + + + + + Grass + + + + 19 + + + 10 + + + + + + Grass + + + + 19 + + + 11 + + + + + + Grass + + + + 19 + + + 12 + + + + + + Road + + + + 19 + + + 13 + + + + + + Grass + + + + 19 + + + 14 + + + + + + Grass + + + + 19 + + + 15 + + + + + + Grass + + + + 19 + + + 16 + + + + + + Grass + + + + 19 + + + 17 + + + + + + Grass + + + + 19 + + + 18 + + + + + + Grass + + + + 19 + + + 19 + + + + + + Road + + + + 19 + + + 20 + + + + + + Grass + + + + 19 + + + 21 + + + + + + Grass + + + + 19 + + + 22 + + + + + + Grass + + + + 19 + + + 23 + + + + + + Grass + + + + 19 + + + 24 + + + + + + Grass + + + + 19 + + + 25 + + + + + + Grass + + + + 19 + + + 26 + + + + + + Road + + + + 19 + + + 27 + + + + + + Grass + + + + 19 + + + 28 + + + + + + Grass + + + + 19 + + + 29 + + + + + + Grass + + + + 20 + + + 0 + + + + + + Road + + + + 20 + + + 1 + + + + + + Grass + + + + 20 + + + 2 + + + + + + Grass + + + + 20 + + + 3 + + + + + + Grass + + + + 20 + + + 4 + + + + + + Grass + + + + 20 + + + 5 + + + + + + Grass + + + + 20 + + + 6 + + + + + + Road + + + + 20 + + + 7 + + + + + + Grass + + + + 20 + + + 8 + + + + + + Grass + + + + 20 + + + 9 + + + + + + Grass + + + + 20 + + + 10 + + + + + + Grass + + + + 20 + + + 11 + + + + + + Grass + + + + 20 + + + 12 + + + + + + Road + + + + 20 + + + 13 + + + + + + Grass + + + + 20 + + + 14 + + + + + + Grass + + + + 20 + + + 15 + + + + + + Grass + + + + 20 + + + 16 + + + + + + Grass + + + + 20 + + + 17 + + + + + + Grass + + + + 20 + + + 18 + + + + + + Grass + + + + 20 + + + 19 + + + + + + Road + + + + 20 + + + 20 + + + + + + Grass + + + + 20 + + + 21 + + + + + + Grass + + + + 20 + + + 22 + + + + + + Grass + + + + 20 + + + 23 + + + + + + Grass + + + + 20 + + + 24 + + + + + + Grass + + + + 20 + + + 25 + + + + + + Grass + + + + 20 + + + 26 + + + + + + Road + + + + 20 + + + 27 + + + + + + Grass + + + + 20 + + + 28 + + + + + + Grass + + + + 20 + + + 29 + + + + + + Grass + + + + 21 + + + 0 + + + + + + Road + + + + 21 + + + 1 + + + + + + Grass + + + + 21 + + + 2 + + + + + + Grass + + + + 21 + + + 3 + + + + + + Grass + + + + 21 + + + 4 + + + + + + Grass + + + + 21 + + + 5 + + + + + + Grass + + + + 21 + + + 6 + + + + + + Road + + + + 21 + + + 7 + + + + + + Grass + + + + 21 + + + 8 + + + + + + Grass + + + + 21 + + + 9 + + + + + + Grass + + + + 21 + + + 10 + + + + + + Grass + + + + 21 + + + 11 + + + + + + Grass + + + + 21 + + + 12 + + + + + + Road + + + + 21 + + + 13 + + + + + + Grass + + + + 21 + + + 14 + + + + + + Grass + + + + 21 + + + 15 + + + + + + Grass + + + + 21 + + + 16 + + + + + + Grass + + + + 21 + + + 17 + + + + + + Grass + + + + 21 + + + 18 + + + + + + Grass + + + + 21 + + + 19 + + + + + + Road + + + + 21 + + + 20 + + + + + + Grass + + + + 21 + + + 21 + + + + + + Grass + + + + 21 + + + 22 + + + + + + Grass + + + + 21 + + + 23 + + + + + + Grass + + + + 21 + + + 24 + + + + + + Grass + + + + 21 + + + 25 + + + + + + Grass + + + + 21 + + + 26 + + + + + + Road + + + + 21 + + + 27 + + + + + + Grass + + + + 21 + + + 28 + + + + + + Grass + + + + 21 + + + 29 + + + + + + Grass + + + + 22 + + + 0 + + + + + + Road + + + + 22 + + + 1 + + + + + + House + + + + 22 + + + 2 + + + + + + Glass + + + 20 + + + + + + + Grass + + + + 22 + + + 3 + + + + + + Grass + + + + 22 + + + 4 + + + + + + Grass + + + + 22 + + + 5 + + + + + + House + + + + 22 + + + 6 + + + + + + Paper + + + 90 + + + + + + + Road + + + + 22 + + + 7 + + + + + + Grass + + + + 22 + + + 8 + + + + + + Grass + + + + 22 + + + 9 + + + + + + Grass + + + + 22 + + + 10 + + + + + + Grass + + + + 22 + + + 11 + + + + + + House + + + + 22 + + + 12 + + + + + + Glass + + + 20 + + + + + + + Road + + + + 22 + + + 13 + + + + + + House + + + + 22 + + + 14 + + + + + + Organic + + + 40 + + + + + + + Grass + + + + 22 + + + 15 + + + + + + Grass + + + + 22 + + + 16 + + + + + + Grass + + + + 22 + + + 17 + + + + + + Grass + + + + 22 + + + 18 + + + + + + House + + + + 22 + + + 19 + + + + + + Glass + + + 30 + + + + + + + Road + + + + 22 + + + 20 + + + + + + House + + + + 22 + + + 21 + + + + + + Paper + + + 30 + + + + + + + Grass + + + + 22 + + + 22 + + + + + + Grass + + + + 22 + + + 23 + + + + + + Grass + + + + 22 + + + 24 + + + + + + Grass + + + + 22 + + + 25 + + + + + + House + + + + 22 + + + 26 + + + + + + Glass + + + 30 + + + + + + + Road + + + + 22 + + + 27 + + + + + + Grass + + + + 22 + + + 28 + + + + + + Grass + + + + 22 + + + 29 + + + + + + Grass + + + + 23 + + + 0 + + + + + + Road + + + + 23 + + + 1 + + + + + + Grass + + + + 23 + + + 2 + + + + + + Grass + + + + 23 + + + 3 + + + + + + Grass + + + + 23 + + + 4 + + + + + + Grass + + + + 23 + + + 5 + + + + + + Grass + + + + 23 + + + 6 + + + + + + Road + + + + 23 + + + 7 + + + + + + Grass + + + + 23 + + + 8 + + + + + + Grass + + + + 23 + + + 9 + + + + + + Grass + + + + 23 + + + 10 + + + + + + Grass + + + + 23 + + + 11 + + + + + + Grass + + + + 23 + + + 12 + + + + + + Road + + + + 23 + + + 13 + + + + + + Grass + + + + 23 + + + 14 + + + + + + Grass + + + + 23 + + + 15 + + + + + + Grass + + + + 23 + + + 16 + + + + + + Grass + + + + 23 + + + 17 + + + + + + Grass + + + + 23 + + + 18 + + + + + + Grass + + + + 23 + + + 19 + + + + + + Road + + + + 23 + + + 20 + + + + + + Grass + + + + 23 + + + 21 + + + + + + Grass + + + + 23 + + + 22 + + + + + + Grass + + + + 23 + + + 23 + + + + + + Grass + + + + 23 + + + 24 + + + + + + Grass + + + + 23 + + + 25 + + + + + + Grass + + + + 23 + + + 26 + + + + + + Road + + + + 23 + + + 27 + + + + + + Grass + + + + 23 + + + 28 + + + + + + Grass + + + + 23 + + + 29 + + + + + + Grass + + + + 24 + + + 0 + + + + + + Road + + + + 24 + + + 1 + + + + + + Grass + + + + 24 + + + 2 + + + + + + Grass + + + + 24 + + + 3 + + + + + + Grass + + + + 24 + + + 4 + + + + + + House + + + + 24 + + + 5 + + + + + + Organic + + + 50 + + + + + + + Grass + + + + 24 + + + 6 + + + + + + Road + + + + 24 + + + 7 + + + + + + Grass + + + + 24 + + + 8 + + + + + + House + + + + 24 + + + 9 + + + + + + Organic + + + 20 + + + + + + + Grass + + + + 24 + + + 10 + + + + + + Grass + + + + 24 + + + 11 + + + + + + Grass + + + + 24 + + + 12 + + + + + + Road + + + + 24 + + + 13 + + + + + + Grass + + + + 24 + + + 14 + + + + + + Grass + + + + 24 + + + 15 + + + + + + Grass + + + + 24 + + + 16 + + + + + + Grass + + + + 24 + + + 17 + + + + + + House + + + + 24 + + + 18 + + + + + + Glass + + + 90 + + + + + + + Grass + + + + 24 + + + 19 + + + + + + Road + + + + 24 + + + 20 + + + + + + Grass + + + + 24 + + + 21 + + + + + + House + + + + 24 + + + 22 + + + + + + Organic + + + 30 + + + + + + + Grass + + + + 24 + + + 23 + + + + + + Grass + + + + 24 + + + 24 + + + + + + Grass + + + + 24 + + + 25 + + + + + + Grass + + + + 24 + + + 26 + + + + + + Road + + + + 24 + + + 27 + + + + + + Grass + + + + 24 + + + 28 + + + + + + Grass + + + + 24 + + + 29 + + + + + + Grass + + + + 25 + + + 0 + + + + + + Road + + + + 25 + + + 1 + + + + + + Grass + + + + 25 + + + 2 + + + + + + Grass + + + + 25 + + + 3 + + + + + + Grass + + + + 25 + + + 4 + + + + + + Road + + + + 25 + + + 5 + + + + + + Road + + + + 25 + + + 6 + + + + + + Road + + + + 25 + + + 7 + + + + + + Road + + + + 25 + + + 8 + + + + + + Road + + + + 25 + + + 9 + + + + + + Grass + + + + 25 + + + 10 + + + + + + Grass + + + + 25 + + + 11 + + + + + + Grass + + + + 25 + + + 12 + + + + + + Road + + + + 25 + + + 13 + + + + + + Grass + + + + 25 + + + 14 + + + + + + Grass + + + + 25 + + + 15 + + + + + + Grass + + + + 25 + + + 16 + + + + + + Grass + + + + 25 + + + 17 + + + + + + Road + + + + 25 + + + 18 + + + + + + Road + + + + 25 + + + 19 + + + + + + Road + + + + 25 + + + 20 + + + + + + Road + + + + 25 + + + 21 + + + + + + Road + + + + 25 + + + 22 + + + + + + Grass + + + + 25 + + + 23 + + + + + + Grass + + + + 25 + + + 24 + + + + + + Grass + + + + 25 + + + 25 + + + + + + Grass + + + + 25 + + + 26 + + + + + + Road + + + + 25 + + + 27 + + + + + + Grass + + + + 25 + + + 28 + + + + + + Grass + + + + 25 + + + 29 + + + + + + Grass + + + + 26 + + + 0 + + + + + + Road + + + + 26 + + + 1 + + + + + + House + + + + 26 + + + 2 + + + + + + Paper + + + 90 + + + + + + + Grass + + + + 26 + + + 3 + + + + + + Grass + + + + 26 + + + 4 + + + + + + House + + + + 26 + + + 5 + + + + + + Paper + + + 90 + + + + + + + Grass + + + + 26 + + + 6 + + + + + + Grass + + + + 26 + + + 7 + + + + + + Grass + + + + 26 + + + 8 + + + + + + House + + + + 26 + + + 9 + + + + + + Paper + + + 20 + + + + + + + Grass + + + + 26 + + + 10 + + + + + + Grass + + + + 26 + + + 11 + + + + + + House + + + + 26 + + + 12 + + + + + + Glass + + + 30 + + + + + + + Road + + + + 26 + + + 13 + + + + + + House + + + + 26 + + + 14 + + + + + + Organic + + + 90 + + + + + + + Grass + + + + 26 + + + 15 + + + + + + Grass + + + + 26 + + + 16 + + + + + + Grass + + + + 26 + + + 17 + + + + + + House + + + + 26 + + + 18 + + + + + + Glass + + + 90 + + + + + + + Grass + + + + 26 + + + 19 + + + + + + Grass + + + + 26 + + + 20 + + + + + + Grass + + + + 26 + + + 21 + + + + + + House + + + + 26 + + + 22 + + + + + + Paper + + + 90 + + + + + + + Grass + + + + 26 + + + 23 + + + + + + Grass + + + + 26 + + + 24 + + + + + + Grass + + + + 26 + + + 25 + + + + + + House + + + + 26 + + + 26 + + + + + + Organic + + + 90 + + + + + + + Road + + + + 26 + + + 27 + + + + + + Grass + + + + 26 + + + 28 + + + + + + Grass + + + + 26 + + + 29 + + + + + + Grass + + + + 27 + + + 0 + + + + + + Road + + + + 27 + + + 1 + + + + + + Grass + + + + 27 + + + 2 + + + + + + Grass + + + + 27 + + + 3 + + + + + + Grass + + + + 27 + + + 4 + + + + + + Grass + + + + 27 + + + 5 + + + + + + Grass + + + + 27 + + + 6 + + + + + + Grass + + + + 27 + + + 7 + + + + + + Grass + + + + 27 + + + 8 + + + + + + Grass + + + + 27 + + + 9 + + + + + + Grass + + + + 27 + + + 10 + + + + + + Grass + + + + 27 + + + 11 + + + + + + Grass + + + + 27 + + + 12 + + + + + + Road + + + + 27 + + + 13 + + + + + + Grass + + + + 27 + + + 14 + + + + + + Grass + + + + 27 + + + 15 + + + + + + Grass + + + + 27 + + + 16 + + + + + + Grass + + + + 27 + + + 17 + + + + + + Grass + + + + 27 + + + 18 + + + + + + Grass + + + + 27 + + + 19 + + + + + + Grass + + + + 27 + + + 20 + + + + + + Grass + + + + 27 + + + 21 + + + + + + Grass + + + + 27 + + + 22 + + + + + + Grass + + + + 27 + + + 23 + + + + + + Grass + + + + 27 + + + 24 + + + + + + Grass + + + + 27 + + + 25 + + + + + + Grass + + + + 27 + + + 26 + + + + + + Road + + + + 27 + + + 27 + + + + + + Grass + + + + 27 + + + 28 + + + + + + Grass + + + + 27 + + + 29 + + + + + + Grass + + + + 28 + + + 0 + + + + + + Road + + + + 28 + + + 1 + + + + + + Road + + + + 28 + + + 2 + + + + + + Road + + + + 28 + + + 3 + + + + + + Road + + + + 28 + + + 4 + + + + + + Road + + + + 28 + + + 5 + + + + + + Road + + + + 28 + + + 6 + + + + + + Road + + + + 28 + + + 7 + + + + + + Road + + + + 28 + + + 8 + + + + + + Road + + + + 28 + + + 9 + + + + + + Road + + + + 28 + + + 10 + + + + + + Road + + + + 28 + + + 11 + + + + + + Road + + + + 28 + + + 12 + + + + + + Road + + + + 28 + + + 13 + + + + + + Road + + + + 28 + + + 14 + + + + + + Road + + + + 28 + + + 15 + + + + + + Road + + + + 28 + + + 16 + + + + + + Road + + + + 28 + + + 17 + + + + + + Road + + + + 28 + + + 18 + + + + + + Road + + + + 28 + + + 19 + + + + + + Road + + + + 28 + + + 20 + + + + + + Road + + + + 28 + + + 21 + + + + + + Road + + + + 28 + + + 22 + + + + + + Road + + + + 28 + + + 23 + + + + + + Road + + + + 28 + + + 24 + + + + + + Road + + + + 28 + + + 25 + + + + + + Road + + + + 28 + + + 26 + + + + + + Road + + + + 28 + + + 27 + + + + + + Grass + + + + 28 + + + 28 + + + + + + Grass + + + + 28 + + + 29 + + + + + + Grass + + + + 29 + + + 0 + + + + + + Grass + + + + 29 + + + 1 + + + + + + Grass + + + + 29 + + + 2 + + + + + + Grass + + + + 29 + + + 3 + + + + + + Grass + + + + 29 + + + 4 + + + + + + Grass + + + + 29 + + + 5 + + + + + + Grass + + + + 29 + + + 6 + + + + + + Grass + + + + 29 + + + 7 + + + + + + Grass + + + + 29 + + + 8 + + + + + + Grass + + + + 29 + + + 9 + + + + + + Grass + + + + 29 + + + 10 + + + + + + Grass + + + + 29 + + + 11 + + + + + + Grass + + + + 29 + + + 12 + + + + + + Grass + + + + 29 + + + 13 + + + + + + Grass + + + + 29 + + + 14 + + + + + + Grass + + + + 29 + + + 15 + + + + + + Grass + + + + 29 + + + 16 + + + + + + Grass + + + + 29 + + + 17 + + + + + + Grass + + + + 29 + + + 18 + + + + + + Grass + + + + 29 + + + 19 + + + + + + Grass + + + + 29 + + + 20 + + + + + + Grass + + + + 29 + + + 21 + + + + + + Grass + + + + 29 + + + 22 + + + + + + Grass + + + + 29 + + + 23 + + + + + + Grass + + + + 29 + + + 24 + + + + + + Grass + + + + 29 + + + 25 + + + + + + Grass + + + + 29 + + + 26 + + + + + + Grass + + + + 29 + + + 27 + + + + + + Grass + + + + 29 + + + 28 + + + + + + Grass + + + + 29 + + + 29 + + + + +