diff --git a/savegame.json b/savegame.json index 58b5528..36bc500 100644 --- a/savegame.json +++ b/savegame.json @@ -1 +1 @@ -[{"marker":[0],"components":[{"x":16,"y":7}]},{"marker":[1],"components":[{"x":52,"y":34}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[{"x":9,"y":21}]},{"marker":[5],"components":[{"x":10,"y":22}]},{"marker":[6],"components":[{"x":41,"y":7}]},{"marker":[7],"components":[{"x":45,"y":5}]},{"marker":[8],"components":[{"x":47,"y":7}]},{"marker":[9],"components":[{"x":40,"y":8}]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[{"x":14,"y":33}]}][{"marker":[0],"components":[{"glyph":64,"fg":{"r":1.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":0}]},{"marker":[1],"components":[{"glyph":94,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[2],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[3],"components":[{"glyph":105,"fg":{"r":1.0,"g":0.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[4],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[5],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[6],"components":[{"glyph":41,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[7],"components":[{"glyph":105,"fg":{"r":1.0,"g":0.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[8],"components":[{"glyph":111,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[9],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[10],"components":[{"glyph":105,"fg":{"r":1.0,"g":0.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[11],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{"glyph":40,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[16],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]}][{"marker":[0],"components":[{}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[{"visible_tiles":[{"x":19,"y":4},{"x":22,"y":9},{"x":19,"y":3},{"x":16,"y":5},{"x":19,"y":2},{"x":12,"y":7},{"x":21,"y":5},{"x":19,"y":10},{"x":13,"y":7},{"x":24,"y":5},{"x":15,"y":1},{"x":15,"y":8},{"x":15,"y":9},{"x":14,"y":6},{"x":12,"y":8},{"x":11,"y":5},{"x":8,"y":5},{"x":8,"y":6},{"x":12,"y":1},{"x":12,"y":6},{"x":23,"y":6},{"x":10,"y":6},{"x":13,"y":5},{"x":20,"y":6},{"x":13,"y":1},{"x":20,"y":9},{"x":16,"y":4},{"x":12,"y":5},{"x":16,"y":1},{"x":14,"y":8},{"x":9,"y":5},{"x":20,"y":8},{"x":18,"y":1},{"x":16,"y":7},{"x":17,"y":4},{"x":17,"y":6},{"x":17,"y":1},{"x":11,"y":6},{"x":9,"y":6},{"x":12,"y":4},{"x":16,"y":8},{"x":22,"y":8},{"x":20,"y":5},{"x":18,"y":3},{"x":19,"y":5},{"x":21,"y":9},{"x":11,"y":4},{"x":17,"y":8},{"x":18,"y":6},{"x":18,"y":9},{"x":14,"y":5},{"x":12,"y":2},{"x":13,"y":4},{"x":19,"y":1},{"x":18,"y":5},{"x":14,"y":9},{"x":19,"y":6},{"x":23,"y":9},{"x":14,"y":3},{"x":21,"y":8},{"x":18,"y":4},{"x":15,"y":4},{"x":24,"y":9},{"x":15,"y":3},{"x":18,"y":7},{"x":11,"y":2},{"x":15,"y":2},{"x":12,"y":3},{"x":17,"y":9},{"x":15,"y":7},{"x":15,"y":6},{"x":13,"y":8},{"x":17,"y":7},{"x":13,"y":3},{"x":13,"y":2},{"x":10,"y":5},{"x":16,"y":9},{"x":11,"y":1},{"x":16,"y":3},{"x":13,"y":10},{"x":17,"y":3},{"x":11,"y":8},{"x":19,"y":9},{"x":17,"y":5},{"x":14,"y":2},{"x":14,"y":1},{"x":15,"y":5},{"x":14,"y":4},{"x":23,"y":8},{"x":16,"y":6},{"x":18,"y":8},{"x":11,"y":3},{"x":11,"y":7},{"x":17,"y":2},{"x":14,"y":7},{"x":19,"y":8},{"x":16,"y":2},{"x":19,"y":7},{"x":22,"y":6},{"x":23,"y":5},{"x":18,"y":2},{"x":13,"y":6},{"x":22,"y":5},{"x":21,"y":6},{"x":13,"y":9}],"range":8,"dirty":false}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[{"visible_tiles":[{"x":8,"y":24},{"x":16,"y":21},{"x":10,"y":24},{"x":10,"y":25},{"x":8,"y":19},{"x":13,"y":21},{"x":14,"y":18},{"x":16,"y":16},{"x":9,"y":23},{"x":10,"y":20},{"x":8,"y":20},{"x":11,"y":24},{"x":13,"y":19},{"x":9,"y":25},{"x":11,"y":16},{"x":13,"y":20},{"x":12,"y":14},{"x":13,"y":23},{"x":15,"y":26},{"x":11,"y":23},{"x":11,"y":18},{"x":8,"y":25},{"x":14,"y":20},{"x":9,"y":18},{"x":13,"y":25},{"x":11,"y":14},{"x":11,"y":21},{"x":9,"y":22},{"x":12,"y":16},{"x":17,"y":20},{"x":15,"y":22},{"x":12,"y":18},{"x":15,"y":24},{"x":15,"y":19},{"x":14,"y":22},{"x":10,"y":23},{"x":7,"y":18},{"x":16,"y":19},{"x":12,"y":15},{"x":9,"y":24},{"x":11,"y":22},{"x":10,"y":22},{"x":7,"y":20},{"x":18,"y":20},{"x":14,"y":24},{"x":15,"y":18},{"x":15,"y":20},{"x":13,"y":24},{"x":12,"y":24},{"x":11,"y":20},{"x":15,"y":17},{"x":10,"y":19},{"x":16,"y":25},{"x":8,"y":21},{"x":15,"y":25},{"x":7,"y":19},{"x":14,"y":21},{"x":11,"y":15},{"x":11,"y":17},{"x":8,"y":23},{"x":15,"y":23},{"x":10,"y":21},{"x":11,"y":19},{"x":12,"y":17},{"x":13,"y":18},{"x":8,"y":18},{"x":12,"y":19},{"x":7,"y":25},{"x":7,"y":22},{"x":13,"y":22},{"x":12,"y":25},{"x":14,"y":25},{"x":14,"y":19},{"x":9,"y":21},{"x":12,"y":20},{"x":10,"y":18},{"x":12,"y":21},{"x":7,"y":24},{"x":14,"y":23},{"x":16,"y":22},{"x":17,"y":21},{"x":7,"y":23},{"x":12,"y":22},{"x":16,"y":24},{"x":16,"y":23},{"x":16,"y":20},{"x":8,"y":22},{"x":11,"y":25},{"x":15,"y":21},{"x":16,"y":18},{"x":9,"y":20},{"x":12,"y":23},{"x":18,"y":21},{"x":9,"y":19},{"x":7,"y":21}],"range":8,"dirty":false}]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[{"visible_tiles":[{"x":46,"y":11},{"x":44,"y":5},{"x":47,"y":6},{"x":39,"y":5},{"x":46,"y":2},{"x":49,"y":10},{"x":41,"y":2},{"x":45,"y":8},{"x":49,"y":2},{"x":48,"y":3},{"x":45,"y":7},{"x":49,"y":6},{"x":39,"y":9},{"x":54,"y":9},{"x":46,"y":6},{"x":53,"y":9},{"x":45,"y":11},{"x":43,"y":11},{"x":47,"y":5},{"x":46,"y":8},{"x":42,"y":12},{"x":55,"y":10},{"x":47,"y":3},{"x":43,"y":10},{"x":44,"y":11},{"x":44,"y":10},{"x":43,"y":9},{"x":41,"y":13},{"x":41,"y":6},{"x":45,"y":9},{"x":40,"y":8},{"x":49,"y":3},{"x":40,"y":3},{"x":40,"y":10},{"x":49,"y":9},{"x":40,"y":6},{"x":49,"y":7},{"x":49,"y":8},{"x":51,"y":9},{"x":42,"y":7},{"x":50,"y":8},{"x":42,"y":6},{"x":43,"y":6},{"x":39,"y":4},{"x":45,"y":5},{"x":46,"y":7},{"x":49,"y":5},{"x":42,"y":4},{"x":41,"y":4},{"x":46,"y":3},{"x":42,"y":2},{"x":41,"y":11},{"x":41,"y":10},{"x":47,"y":4},{"x":45,"y":4},{"x":47,"y":10},{"x":48,"y":7},{"x":44,"y":2},{"x":42,"y":9},{"x":51,"y":8},{"x":45,"y":10},{"x":44,"y":4},{"x":40,"y":11},{"x":47,"y":2},{"x":47,"y":11},{"x":43,"y":4},{"x":39,"y":6},{"x":47,"y":9},{"x":48,"y":5},{"x":39,"y":10},{"x":42,"y":5},{"x":40,"y":4},{"x":43,"y":8},{"x":52,"y":9},{"x":48,"y":6},{"x":44,"y":8},{"x":46,"y":9},{"x":48,"y":10},{"x":47,"y":7},{"x":49,"y":11},{"x":43,"y":2},{"x":41,"y":7},{"x":48,"y":2},{"x":42,"y":8},{"x":47,"y":8},{"x":44,"y":3},{"x":46,"y":10},{"x":43,"y":3},{"x":44,"y":9},{"x":45,"y":3},{"x":42,"y":3},{"x":41,"y":8},{"x":42,"y":11},{"x":44,"y":6},{"x":39,"y":7},{"x":41,"y":9},{"x":45,"y":6},{"x":40,"y":9},{"x":48,"y":4},{"x":49,"y":4},{"x":46,"y":5},{"x":48,"y":11},{"x":41,"y":3},{"x":48,"y":8},{"x":40,"y":5},{"x":50,"y":9},{"x":41,"y":5},{"x":45,"y":2},{"x":44,"y":7},{"x":43,"y":7},{"x":43,"y":5},{"x":48,"y":9},{"x":39,"y":8},{"x":46,"y":4},{"x":40,"y":7},{"x":40,"y":2},{"x":42,"y":10}],"range":8,"dirty":false}]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[{"visible_tiles":[{"x":22,"y":34},{"x":13,"y":32},{"x":13,"y":35},{"x":21,"y":32},{"x":18,"y":32},{"x":20,"y":32},{"x":13,"y":29},{"x":18,"y":27},{"x":21,"y":28},{"x":16,"y":34},{"x":17,"y":29},{"x":21,"y":33},{"x":20,"y":33},{"x":14,"y":28},{"x":18,"y":33},{"x":15,"y":32},{"x":20,"y":34},{"x":14,"y":36},{"x":13,"y":30},{"x":20,"y":29},{"x":15,"y":33},{"x":18,"y":29},{"x":14,"y":32},{"x":15,"y":35},{"x":19,"y":30},{"x":17,"y":32},{"x":19,"y":29},{"x":19,"y":33},{"x":19,"y":28},{"x":16,"y":28},{"x":21,"y":29},{"x":19,"y":27},{"x":15,"y":31},{"x":14,"y":34},{"x":12,"y":33},{"x":14,"y":27},{"x":14,"y":26},{"x":18,"y":28},{"x":12,"y":29},{"x":22,"y":31},{"x":21,"y":31},{"x":15,"y":25},{"x":16,"y":31},{"x":15,"y":26},{"x":14,"y":30},{"x":12,"y":30},{"x":18,"y":31},{"x":13,"y":31},{"x":22,"y":32},{"x":13,"y":33},{"x":21,"y":34},{"x":16,"y":29},{"x":15,"y":30},{"x":14,"y":33},{"x":12,"y":31},{"x":15,"y":29},{"x":17,"y":30},{"x":12,"y":32},{"x":17,"y":34},{"x":17,"y":27},{"x":15,"y":27},{"x":15,"y":28},{"x":13,"y":34},{"x":16,"y":32},{"x":13,"y":25},{"x":14,"y":35},{"x":20,"y":30},{"x":14,"y":31},{"x":20,"y":27},{"x":16,"y":33},{"x":19,"y":32},{"x":14,"y":29},{"x":13,"y":28},{"x":21,"y":30},{"x":15,"y":36},{"x":12,"y":27},{"x":19,"y":34},{"x":18,"y":34},{"x":19,"y":31},{"x":22,"y":30},{"x":13,"y":26},{"x":13,"y":36},{"x":18,"y":30},{"x":14,"y":25},{"x":13,"y":27},{"x":17,"y":31},{"x":17,"y":33},{"x":22,"y":33},{"x":16,"y":30},{"x":15,"y":34},{"x":12,"y":34},{"x":20,"y":28},{"x":12,"y":28},{"x":16,"y":27},{"x":20,"y":31},{"x":17,"y":28}],"range":8,"dirty":false}]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[{}]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[{}]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[{}]}][{"marker":[0],"components":[{"name":"Player"}]},{"marker":[1],"components":[{"name":"Bear Trap"}]},{"marker":[2],"components":[{"name":"Rations"}]},{"marker":[3],"components":[{"name":"Health Potion"}]},{"marker":[4],"components":[{"name":"Rations"}]},{"marker":[5],"components":[{"name":"Goblin"}]},{"marker":[6],"components":[{"name":"Magic Missile Scroll"}]},{"marker":[7],"components":[{"name":"Health Potion"}]},{"marker":[8],"components":[{"name":"Orc"}]},{"marker":[9],"components":[{"name":"Rations"}]},{"marker":[10],"components":[{"name":"Health Potion"}]},{"marker":[11],"components":[{"name":"Rations"}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{"name":"Shield"}]},{"marker":[16],"components":[{"name":"Goblin"}]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[{}]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[{}]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[{}]}][{"marker":[0],"components":[{"max_hp":30,"hp":30,"defense":2,"power":5}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{}]},{"marker":[3],"components":[{}]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{}]},{"marker":[7],"components":[{}]},{"marker":[8],"components":[null]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[{}]},{"marker":[11],"components":[{}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{}]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{}]},{"marker":[3],"components":[{}]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{}]},{"marker":[7],"components":[{}]},{"marker":[8],"components":[null]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[{}]},{"marker":[11],"components":[{}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{"range":6}]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{"damage":6}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{"damage":20}]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[{"heal_amount":8}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[{"heal_amount":8}]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[{"heal_amount":8}]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{"owner":[0]}]},{"marker":[3],"components":[{"owner":[0]}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[{"owner":[0]}]},{"marker":[11],"components":[{"owner":[0]}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[{"map":{"tiles":["Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","DownStairs","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall"],"rooms":[{"x1":57,"x2":64,"y1":26,"y2":35},{"x1":38,"x2":47,"y1":24,"y2":31},{"x1":48,"x2":54,"y1":31,"y2":40},{"x1":11,"x2":18,"y1":1,"y2":7},{"x1":70,"x2":77,"y1":4,"y2":13},{"x1":14,"x2":23,"y1":10,"y2":17},{"x1":7,"x2":15,"y1":18,"y2":24},{"x1":39,"x2":48,"y1":2,"y2":10},{"x1":4,"x2":10,"y1":2,"y2":8},{"x1":51,"x2":60,"y1":8,"y2":16},{"x1":0,"x2":6,"y1":31,"y2":40},{"x1":22,"x2":30,"y1":22,"y2":30},{"x1":70,"x2":76,"y1":32,"y2":41},{"x1":12,"x2":21,"y1":27,"y2":33}],"width":80,"height":43,"revealed_tiles":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,true,true,true,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,false,true,true,true,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false],"visible_tiles":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"blocked":[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,false,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,false,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,true,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,false,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,false,false,false,false,false,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],"depth":1,"bloodstains":[2805,2807,2806,2885,2886]}}]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{"slot":"Shield"}]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{"owner":[0],"slot":"Shield"}]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[{"defense":1}]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[{"state":"Normal","duration":155}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{}]},{"marker":[3],"components":[null]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[null]},{"marker":[11],"components":[{}]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[17],"components":[null]},{"marker":[14],"components":[null]},{"marker":[16],"components":[null]}] \ No newline at end of file +[{"marker":[0],"components":[{"x":33,"y":16}]},{"marker":[1],"components":[{"x":24,"y":25}]},{"marker":[2],"components":[{"x":21,"y":28}]},{"marker":[3],"components":[{"x":20,"y":29}]},{"marker":[4],"components":[{"x":26,"y":24}]},{"marker":[5],"components":[{"x":44,"y":9}]},{"marker":[6],"components":[{"x":48,"y":9}]},{"marker":[7],"components":[{"x":9,"y":9}]},{"marker":[8],"components":[{"x":11,"y":3}]},{"marker":[9],"components":[{"x":10,"y":2}]},{"marker":[10],"components":[{"x":12,"y":9}]},{"marker":[11],"components":[{"x":71,"y":31}]},{"marker":[12],"components":[{"x":69,"y":35}]},{"marker":[13],"components":[{"x":68,"y":36}]},{"marker":[14],"components":[{"x":72,"y":35}]},{"marker":[15],"components":[{"x":3,"y":21}]},{"marker":[16],"components":[{"x":75,"y":1}]},{"marker":[17],"components":[{"x":73,"y":7}]},{"marker":[18],"components":[{"x":25,"y":11}]},{"marker":[19],"components":[{"x":23,"y":11}]},{"marker":[20],"components":[{"x":53,"y":33}]},{"marker":[21],"components":[{"x":67,"y":21}]},{"marker":[22],"components":[{"x":67,"y":27}]},{"marker":[23],"components":[{"x":68,"y":20}]},{"marker":[24],"components":[{"x":66,"y":20}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{"glyph":64,"fg":{"r":1.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":0}]},{"marker":[1],"components":[{"glyph":41,"fg":{"r":0.0,"g":0.8039216,"b":0.8039216},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[2],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[3],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[4],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[5],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[6],"components":[{"glyph":41,"fg":{"r":1.0,"g":0.64705884,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[7],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[8],"components":[{"glyph":41,"fg":{"r":0.0,"g":0.8039216,"b":0.8039216},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[9],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[10],"components":[{"glyph":41,"fg":{"r":1.0,"g":0.64705884,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[11],"components":[{"glyph":47,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[12],"components":[{"glyph":41,"fg":{"r":1.0,"g":0.7529412,"b":0.79607844},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[13],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[14],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[15],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[16],"components":[{"glyph":41,"fg":{"r":1.0,"g":0.7529412,"b":0.79607844},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[17],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[18],"components":[{"glyph":40,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[19],"components":[{"glyph":103,"fg":{"r":1.0,"g":0.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":1}]},{"marker":[20],"components":[{"glyph":41,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[21],"components":[{"glyph":41,"fg":{"r":0.0,"g":1.0,"b":1.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[22],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[23],"components":[{"glyph":37,"fg":{"r":0.0,"g":1.0,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[24],"components":[{"glyph":41,"fg":{"r":1.0,"g":0.64705884,"b":0.0},"bg":{"r":0.0,"g":0.0,"b":0.0},"render_order":2}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{"visible_tiles":[{"x":37,"y":16},{"x":38,"y":15},{"x":33,"y":13},{"x":27,"y":17},{"x":32,"y":12},{"x":28,"y":17},{"x":30,"y":12},{"x":34,"y":16},{"x":29,"y":18},{"x":30,"y":18},{"x":31,"y":17},{"x":35,"y":20},{"x":36,"y":18},{"x":38,"y":18},{"x":36,"y":13},{"x":33,"y":20},{"x":32,"y":20},{"x":29,"y":20},{"x":36,"y":15},{"x":26,"y":11},{"x":37,"y":13},{"x":38,"y":13},{"x":29,"y":19},{"x":39,"y":14},{"x":33,"y":18},{"x":34,"y":17},{"x":32,"y":18},{"x":36,"y":17},{"x":32,"y":14},{"x":38,"y":12},{"x":34,"y":12},{"x":31,"y":16},{"x":35,"y":15},{"x":25,"y":16},{"x":28,"y":12},{"x":32,"y":15},{"x":30,"y":13},{"x":37,"y":17},{"x":39,"y":20},{"x":27,"y":12},{"x":30,"y":14},{"x":37,"y":14},{"x":38,"y":20},{"x":39,"y":12},{"x":28,"y":15},{"x":33,"y":16},{"x":34,"y":19},{"x":34,"y":14},{"x":35,"y":18},{"x":40,"y":13},{"x":25,"y":17},{"x":39,"y":17},{"x":27,"y":15},{"x":33,"y":17},{"x":38,"y":16},{"x":39,"y":16},{"x":29,"y":16},{"x":31,"y":12},{"x":30,"y":19},{"x":38,"y":19},{"x":35,"y":13},{"x":31,"y":13},{"x":35,"y":16},{"x":32,"y":17},{"x":26,"y":16},{"x":29,"y":12},{"x":26,"y":15},{"x":35,"y":12},{"x":30,"y":16},{"x":37,"y":19},{"x":29,"y":17},{"x":38,"y":14},{"x":34,"y":15},{"x":29,"y":14},{"x":39,"y":13},{"x":33,"y":19},{"x":39,"y":15},{"x":37,"y":12},{"x":35,"y":17},{"x":33,"y":15},{"x":30,"y":20},{"x":36,"y":14},{"x":39,"y":19},{"x":30,"y":15},{"x":31,"y":15},{"x":32,"y":13},{"x":33,"y":14},{"x":35,"y":14},{"x":31,"y":14},{"x":32,"y":16},{"x":37,"y":18},{"x":34,"y":20},{"x":25,"y":15},{"x":40,"y":12},{"x":33,"y":12},{"x":32,"y":19},{"x":31,"y":18},{"x":38,"y":17},{"x":36,"y":20},{"x":27,"y":11},{"x":37,"y":15},{"x":39,"y":18},{"x":35,"y":19},{"x":36,"y":12},{"x":36,"y":19},{"x":37,"y":20},{"x":30,"y":17},{"x":34,"y":13},{"x":31,"y":20},{"x":29,"y":13},{"x":26,"y":17},{"x":28,"y":16},{"x":36,"y":16},{"x":31,"y":19},{"x":27,"y":16},{"x":34,"y":18},{"x":29,"y":15}],"range":8,"dirty":false}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{"visible_tiles":[{"x":13,"y":27},{"x":21,"y":28},{"x":25,"y":23},{"x":17,"y":30},{"x":19,"y":24},{"x":22,"y":25},{"x":22,"y":29},{"x":26,"y":29},{"x":21,"y":26},{"x":20,"y":31},{"x":24,"y":23},{"x":17,"y":27},{"x":29,"y":25},{"x":24,"y":22},{"x":18,"y":31},{"x":23,"y":27},{"x":25,"y":22},{"x":17,"y":26},{"x":20,"y":28},{"x":24,"y":27},{"x":24,"y":26},{"x":29,"y":27},{"x":27,"y":30},{"x":27,"y":26},{"x":26,"y":23},{"x":28,"y":25},{"x":21,"y":22},{"x":13,"y":28},{"x":20,"y":24},{"x":28,"y":29},{"x":17,"y":23},{"x":25,"y":24},{"x":15,"y":28},{"x":24,"y":25},{"x":26,"y":24},{"x":29,"y":26},{"x":23,"y":30},{"x":19,"y":30},{"x":23,"y":26},{"x":25,"y":27},{"x":28,"y":27},{"x":22,"y":26},{"x":14,"y":28},{"x":19,"y":26},{"x":19,"y":25},{"x":26,"y":22},{"x":27,"y":23},{"x":23,"y":25},{"x":22,"y":30},{"x":16,"y":29},{"x":14,"y":27},{"x":26,"y":26},{"x":18,"y":22},{"x":18,"y":25},{"x":24,"y":30},{"x":21,"y":21},{"x":20,"y":27},{"x":21,"y":27},{"x":17,"y":28},{"x":16,"y":28},{"x":18,"y":27},{"x":20,"y":21},{"x":24,"y":28},{"x":26,"y":28},{"x":25,"y":28},{"x":29,"y":29},{"x":19,"y":28},{"x":23,"y":23},{"x":21,"y":20},{"x":17,"y":25},{"x":25,"y":30},{"x":23,"y":29},{"x":29,"y":28},{"x":22,"y":20},{"x":26,"y":25},{"x":27,"y":29},{"x":13,"y":29},{"x":19,"y":27},{"x":26,"y":27},{"x":22,"y":22},{"x":21,"y":25},{"x":24,"y":21},{"x":25,"y":26},{"x":18,"y":23},{"x":19,"y":31},{"x":22,"y":23},{"x":27,"y":22},{"x":18,"y":28},{"x":27,"y":27},{"x":22,"y":31},{"x":23,"y":31},{"x":18,"y":26},{"x":22,"y":24},{"x":18,"y":24},{"x":25,"y":25},{"x":20,"y":20},{"x":27,"y":28},{"x":21,"y":24},{"x":19,"y":29},{"x":21,"y":29},{"x":15,"y":27},{"x":28,"y":26},{"x":27,"y":24},{"x":27,"y":31},{"x":21,"y":31},{"x":21,"y":30},{"x":17,"y":31},{"x":24,"y":29},{"x":18,"y":29},{"x":18,"y":30},{"x":17,"y":24},{"x":23,"y":24},{"x":20,"y":26},{"x":20,"y":22},{"x":22,"y":21},{"x":27,"y":25},{"x":26,"y":30},{"x":17,"y":22},{"x":25,"y":29},{"x":23,"y":28},{"x":17,"y":29},{"x":21,"y":23},{"x":20,"y":30},{"x":20,"y":23},{"x":20,"y":25},{"x":19,"y":23},{"x":25,"y":21},{"x":22,"y":27},{"x":19,"y":22},{"x":23,"y":22},{"x":25,"y":31},{"x":20,"y":29},{"x":16,"y":27},{"x":22,"y":28},{"x":26,"y":31},{"x":14,"y":29},{"x":24,"y":24},{"x":15,"y":29},{"x":24,"y":31},{"x":28,"y":28}],"range":8,"dirty":false}]},{"marker":[3],"components":[{"visible_tiles":[{"x":17,"y":29},{"x":27,"y":27},{"x":18,"y":23},{"x":22,"y":25},{"x":23,"y":27},{"x":17,"y":28},{"x":19,"y":31},{"x":27,"y":31},{"x":23,"y":22},{"x":23,"y":23},{"x":12,"y":27},{"x":18,"y":25},{"x":18,"y":29},{"x":24,"y":26},{"x":25,"y":29},{"x":19,"y":26},{"x":27,"y":24},{"x":24,"y":30},{"x":24,"y":25},{"x":21,"y":23},{"x":25,"y":22},{"x":24,"y":22},{"x":17,"y":23},{"x":23,"y":24},{"x":24,"y":23},{"x":27,"y":29},{"x":22,"y":30},{"x":14,"y":28},{"x":20,"y":30},{"x":22,"y":27},{"x":17,"y":22},{"x":19,"y":30},{"x":28,"y":27},{"x":28,"y":26},{"x":26,"y":29},{"x":21,"y":30},{"x":26,"y":26},{"x":24,"y":29},{"x":25,"y":24},{"x":18,"y":24},{"x":17,"y":31},{"x":25,"y":26},{"x":27,"y":26},{"x":27,"y":30},{"x":21,"y":24},{"x":22,"y":28},{"x":24,"y":31},{"x":24,"y":27},{"x":18,"y":27},{"x":22,"y":21},{"x":24,"y":28},{"x":25,"y":27},{"x":19,"y":22},{"x":23,"y":31},{"x":20,"y":31},{"x":16,"y":28},{"x":23,"y":28},{"x":17,"y":24},{"x":19,"y":29},{"x":20,"y":23},{"x":14,"y":26},{"x":19,"y":27},{"x":26,"y":25},{"x":21,"y":22},{"x":21,"y":25},{"x":23,"y":29},{"x":20,"y":22},{"x":23,"y":25},{"x":25,"y":23},{"x":13,"y":28},{"x":20,"y":29},{"x":21,"y":27},{"x":24,"y":24},{"x":27,"y":28},{"x":18,"y":30},{"x":26,"y":23},{"x":20,"y":28},{"x":21,"y":31},{"x":14,"y":27},{"x":22,"y":31},{"x":23,"y":26},{"x":21,"y":29},{"x":21,"y":26},{"x":15,"y":28},{"x":22,"y":29},{"x":21,"y":21},{"x":26,"y":27},{"x":19,"y":25},{"x":26,"y":24},{"x":12,"y":26},{"x":18,"y":28},{"x":25,"y":28},{"x":25,"y":30},{"x":22,"y":23},{"x":17,"y":26},{"x":17,"y":25},{"x":18,"y":31},{"x":22,"y":22},{"x":17,"y":30},{"x":26,"y":31},{"x":25,"y":25},{"x":13,"y":26},{"x":15,"y":27},{"x":25,"y":31},{"x":16,"y":27},{"x":20,"y":26},{"x":20,"y":24},{"x":19,"y":24},{"x":21,"y":28},{"x":19,"y":28},{"x":19,"y":23},{"x":26,"y":30},{"x":26,"y":28},{"x":28,"y":28},{"x":17,"y":27},{"x":18,"y":26},{"x":20,"y":25},{"x":18,"y":22},{"x":20,"y":27},{"x":13,"y":27},{"x":22,"y":26},{"x":27,"y":25},{"x":23,"y":30},{"x":22,"y":24}],"range":8,"dirty":false}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[{"visible_tiles":[{"x":74,"y":11},{"x":71,"y":3},{"x":74,"y":2},{"x":70,"y":5},{"x":69,"y":7},{"x":73,"y":8},{"x":75,"y":8},{"x":69,"y":0},{"x":66,"y":4},{"x":69,"y":8},{"x":78,"y":2},{"x":76,"y":1},{"x":67,"y":4},{"x":72,"y":10},{"x":76,"y":6},{"x":79,"y":8},{"x":73,"y":10},{"x":69,"y":9},{"x":70,"y":1},{"x":74,"y":12},{"x":71,"y":5},{"x":73,"y":0},{"x":73,"y":1},{"x":71,"y":6},{"x":73,"y":5},{"x":72,"y":2},{"x":72,"y":14},{"x":72,"y":8},{"x":78,"y":9},{"x":71,"y":4},{"x":76,"y":2},{"x":79,"y":9},{"x":76,"y":0},{"x":74,"y":4},{"x":74,"y":3},{"x":78,"y":1},{"x":71,"y":1},{"x":69,"y":3},{"x":77,"y":5},{"x":70,"y":2},{"x":68,"y":4},{"x":72,"y":5},{"x":69,"y":4},{"x":74,"y":0},{"x":75,"y":4},{"x":78,"y":8},{"x":72,"y":0},{"x":73,"y":3},{"x":76,"y":9},{"x":70,"y":9},{"x":72,"y":7},{"x":70,"y":0},{"x":70,"y":6},{"x":72,"y":4},{"x":70,"y":7},{"x":70,"y":8},{"x":74,"y":9},{"x":78,"y":3},{"x":79,"y":7},{"x":73,"y":11},{"x":77,"y":8},{"x":75,"y":6},{"x":76,"y":3},{"x":75,"y":1},{"x":77,"y":7},{"x":78,"y":0},{"x":77,"y":0},{"x":77,"y":6},{"x":74,"y":6},{"x":71,"y":7},{"x":73,"y":6},{"x":72,"y":1},{"x":76,"y":8},{"x":75,"y":9},{"x":75,"y":2},{"x":72,"y":9},{"x":73,"y":2},{"x":77,"y":4},{"x":77,"y":1},{"x":75,"y":0},{"x":79,"y":1},{"x":71,"y":9},{"x":71,"y":2},{"x":72,"y":13},{"x":79,"y":4},{"x":71,"y":0},{"x":68,"y":3},{"x":74,"y":13},{"x":71,"y":8},{"x":78,"y":7},{"x":73,"y":7},{"x":72,"y":11},{"x":69,"y":1},{"x":79,"y":3},{"x":77,"y":9},{"x":66,"y":3},{"x":75,"y":7},{"x":69,"y":2},{"x":73,"y":13},{"x":74,"y":1},{"x":72,"y":12},{"x":69,"y":5},{"x":67,"y":3},{"x":77,"y":3},{"x":75,"y":3},{"x":73,"y":9},{"x":76,"y":5},{"x":74,"y":7},{"x":73,"y":4},{"x":75,"y":5},{"x":68,"y":5},{"x":73,"y":12},{"x":70,"y":3},{"x":76,"y":7},{"x":78,"y":5},{"x":77,"y":2},{"x":74,"y":10},{"x":72,"y":6},{"x":72,"y":3},{"x":73,"y":14},{"x":79,"y":5},{"x":76,"y":4},{"x":79,"y":6},{"x":70,"y":4},{"x":69,"y":6},{"x":65,"y":4},{"x":79,"y":2},{"x":78,"y":4},{"x":78,"y":6},{"x":74,"y":14},{"x":74,"y":5},{"x":74,"y":8}],"range":8,"dirty":false}]},{"marker":[18],"components":[null]},{"marker":[19],"components":[{"visible_tiles":[{"x":30,"y":13},{"x":28,"y":8},{"x":27,"y":7},{"x":26,"y":6},{"x":23,"y":7},{"x":24,"y":11},{"x":21,"y":11},{"x":25,"y":14},{"x":29,"y":7},{"x":22,"y":10},{"x":24,"y":6},{"x":24,"y":7},{"x":26,"y":10},{"x":27,"y":13},{"x":25,"y":8},{"x":29,"y":6},{"x":28,"y":11},{"x":29,"y":8},{"x":27,"y":6},{"x":29,"y":9},{"x":22,"y":11},{"x":24,"y":13},{"x":26,"y":13},{"x":28,"y":13},{"x":26,"y":7},{"x":25,"y":12},{"x":27,"y":12},{"x":30,"y":6},{"x":27,"y":9},{"x":27,"y":11},{"x":21,"y":13},{"x":26,"y":12},{"x":28,"y":10},{"x":21,"y":6},{"x":24,"y":14},{"x":30,"y":7},{"x":27,"y":8},{"x":22,"y":8},{"x":23,"y":13},{"x":22,"y":12},{"x":21,"y":12},{"x":24,"y":12},{"x":21,"y":10},{"x":24,"y":9},{"x":29,"y":12},{"x":28,"y":9},{"x":25,"y":6},{"x":25,"y":13},{"x":26,"y":8},{"x":27,"y":14},{"x":29,"y":11},{"x":24,"y":16},{"x":22,"y":6},{"x":21,"y":9},{"x":22,"y":13},{"x":21,"y":7},{"x":23,"y":6},{"x":23,"y":12},{"x":23,"y":8},{"x":28,"y":14},{"x":24,"y":17},{"x":23,"y":9},{"x":25,"y":17},{"x":26,"y":14},{"x":24,"y":15},{"x":25,"y":18},{"x":23,"y":10},{"x":28,"y":12},{"x":23,"y":14},{"x":31,"y":13},{"x":26,"y":9},{"x":23,"y":11},{"x":21,"y":14},{"x":25,"y":11},{"x":22,"y":7},{"x":21,"y":8},{"x":27,"y":10},{"x":30,"y":14},{"x":28,"y":7},{"x":29,"y":10},{"x":26,"y":11},{"x":24,"y":18},{"x":24,"y":8},{"x":29,"y":13},{"x":24,"y":10},{"x":25,"y":16},{"x":25,"y":10},{"x":22,"y":14},{"x":25,"y":19},{"x":29,"y":14},{"x":31,"y":14},{"x":28,"y":6},{"x":25,"y":9},{"x":25,"y":15},{"x":22,"y":9},{"x":25,"y":7}],"range":8,"dirty":false}]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{}]},{"marker":[3],"components":[{}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[{}]},{"marker":[18],"components":[null]},{"marker":[19],"components":[{}]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{"name":"Player"}]},{"marker":[1],"components":[{"name":"Scroll to Magic Mapping"}]},{"marker":[2],"components":[{"name":"Goblin"}]},{"marker":[3],"components":[{"name":"Goblin"}]},{"marker":[4],"components":[{"name":"Rations"}]},{"marker":[5],"components":[{"name":"Rations"}]},{"marker":[6],"components":[{"name":"Fireball Scroll"}]},{"marker":[7],"components":[{"name":"Rations"}]},{"marker":[8],"components":[{"name":"Scroll to Magic Mapping"}]},{"marker":[9],"components":[{"name":"Rations"}]},{"marker":[10],"components":[{"name":"Fireball Scroll"}]},{"marker":[11],"components":[{"name":"Dagger"}]},{"marker":[12],"components":[{"name":"Confusion Scroll"}]},{"marker":[13],"components":[{"name":"Rations"}]},{"marker":[14],"components":[{"name":"Rations"}]},{"marker":[15],"components":[{"name":"Rations"}]},{"marker":[16],"components":[{"name":"Confusion Scroll"}]},{"marker":[17],"components":[{"name":"Goblin"}]},{"marker":[18],"components":[{"name":"Shield"}]},{"marker":[19],"components":[{"name":"Goblin"}]},{"marker":[20],"components":[{"name":"Magic Missile Scroll"}]},{"marker":[21],"components":[{"name":"Magic Missile Scroll"}]},{"marker":[22],"components":[{"name":"Rations"}]},{"marker":[23],"components":[{"name":"Rations"}]},{"marker":[24],"components":[{"name":"Fireball Scroll"}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{}]},{"marker":[3],"components":[{}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[{}]},{"marker":[18],"components":[null]},{"marker":[19],"components":[{}]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{"max_hp":30,"hp":30,"defense":2,"power":5}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[3],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[18],"components":[null]},{"marker":[19],"components":[{"max_hp":16,"hp":16,"defense":1,"power":4}]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[{}]},{"marker":[6],"components":[{}]},{"marker":[7],"components":[{}]},{"marker":[8],"components":[{}]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[{}]},{"marker":[11],"components":[{}]},{"marker":[12],"components":[{}]},{"marker":[13],"components":[{}]},{"marker":[14],"components":[{}]},{"marker":[15],"components":[{}]},{"marker":[16],"components":[{}]},{"marker":[17],"components":[null]},{"marker":[18],"components":[{}]},{"marker":[19],"components":[null]},{"marker":[20],"components":[{}]},{"marker":[21],"components":[{}]},{"marker":[22],"components":[{}]},{"marker":[23],"components":[{}]},{"marker":[24],"components":[{}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[{}]},{"marker":[6],"components":[{}]},{"marker":[7],"components":[{}]},{"marker":[8],"components":[{}]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[{}]},{"marker":[11],"components":[null]},{"marker":[12],"components":[{}]},{"marker":[13],"components":[{}]},{"marker":[14],"components":[{}]},{"marker":[15],"components":[{}]},{"marker":[16],"components":[{}]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[{}]},{"marker":[21],"components":[{}]},{"marker":[22],"components":[{}]},{"marker":[23],"components":[{}]},{"marker":[24],"components":[{}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{"range":6}]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[{"range":6}]},{"marker":[11],"components":[null]},{"marker":[12],"components":[{"range":6}]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[{"range":6}]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[{"range":6}]},{"marker":[21],"components":[{"range":6}]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[{"range":6}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{"damage":20}]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[{"damage":20}]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[{"damage":20}]},{"marker":[21],"components":[{"damage":20}]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[{"damage":20}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[{"radius":3}]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[{"radius":3}]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[{"radius":3}]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[{"turns":4}]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[{"turns":4}]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[{"map":{"tiles":["Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","DownStairs","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Floor","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall","Wall"],"width":80,"height":43,"revealed_tiles":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"visible_tiles":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"blocked":[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,true,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,true,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,true,false,false,true,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,false,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],"depth":1,"bloodstains":[]}}]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[{"slot":"Melee"}]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[{"slot":"Shield"}]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[{"power":2}]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[{"defense":1}]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[{"state":"WellFed","duration":20}]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[{}]},{"marker":[5],"components":[{}]},{"marker":[6],"components":[null]},{"marker":[7],"components":[{}]},{"marker":[8],"components":[null]},{"marker":[9],"components":[{}]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[{}]},{"marker":[14],"components":[{}]},{"marker":[15],"components":[{}]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[{}]},{"marker":[23],"components":[{}]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[{}]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[{}]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}][{"marker":[0],"components":[null]},{"marker":[1],"components":[null]},{"marker":[2],"components":[null]},{"marker":[3],"components":[null]},{"marker":[4],"components":[null]},{"marker":[5],"components":[null]},{"marker":[6],"components":[null]},{"marker":[7],"components":[null]},{"marker":[8],"components":[null]},{"marker":[9],"components":[null]},{"marker":[10],"components":[null]},{"marker":[11],"components":[null]},{"marker":[12],"components":[null]},{"marker":[13],"components":[null]},{"marker":[14],"components":[null]},{"marker":[15],"components":[null]},{"marker":[16],"components":[null]},{"marker":[17],"components":[null]},{"marker":[18],"components":[null]},{"marker":[19],"components":[null]},{"marker":[20],"components":[null]},{"marker":[21],"components":[null]},{"marker":[22],"components":[null]},{"marker":[23],"components":[null]},{"marker":[24],"components":[null]},{"marker":[26],"components":[null]}] \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index 6b06286..1805b4e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -14,13 +14,16 @@ use player::*; use visibility_system::*; use crate::gamelog::GameLog; +use crate::gui::MainMenuSelection; use crate::healing_system::HealingSystem; use crate::hunger_system::HungerSystem; use crate::inventory_system::{ ItemCollectionSystem, ItemDropSystem, ItemRemoveSystem, ItemUseSystem, }; use crate::particle_system::ParticleSpawnSystem; +use crate::state::{RunState, State}; use crate::trigger_system::TriggerSystem; +use crate::RunState::MapGeneration; mod components; mod damage_system; @@ -30,7 +33,7 @@ mod healing_system; mod hunger_system; mod inventory_system; mod map; -pub mod map_builders; +mod map_builders; mod map_indexing_system; mod melee_combat_system; mod monster_ai_system; @@ -41,428 +44,11 @@ mod rect; mod rex_assets; mod save_load_system; mod spawner; +mod state; mod trigger_system; mod visibility_system; -#[derive(PartialEq, Copy, Clone)] -pub enum RunState { - AwaitingInput, - PreRun, - PlayerTurn, - MonsterTurn, - ShowInventory, - ShowDropItem, - ShowTargeting { - range: i32, - item: Entity, - }, - MainMenu { - menu_selection: gui::MainMenuSelection, - }, - SaveGame, - NextLevel, - ShowRemoveItem, - GameOver, - MagicMapReveal { - row: i32, - }, -} - -pub struct State { - pub ecs: World, -} - -impl State { - pub fn game_over_cleanup(&mut self) { - // Delete everything - let mut to_delete = Vec::new(); - for e in self.ecs.entities().join() { - to_delete.push(e); - } - for del in to_delete.iter() { - self.ecs.delete_entity(*del).expect("Deletion failed"); - } - - // Build a new map and place the player - let mut map_builder = map_builders::new_random_builder(1); - let worldmap; - let player_start; - { - let mut worldmap_resource = self.ecs.write_resource::(); - map_builder.build_map(); - *worldmap_resource = map_builder.get_map(); - player_start = map_builder.get_starting_position(); - worldmap = worldmap_resource.clone(); - } - - // Spawn bad guys - map_builder.spawn_entities(&mut self.ecs); - - // Place the player and update resources - let (player_x, player_y) = (player_start.x, player_start.y); - let player_entity = spawner::player(&mut self.ecs, player_x, player_y); - let mut player_position = self.ecs.write_resource::(); - *player_position = Point::new(player_x, player_y); - let mut position_components = self.ecs.write_storage::(); - let mut player_entity_writer = self.ecs.write_resource::(); - *player_entity_writer = player_entity; - let player_pos_comp = position_components.get_mut(player_entity); - if let Some(player_pos_comp) = player_pos_comp { - player_pos_comp.x = player_x; - player_pos_comp.y = player_y; - } - - // Mark the player's visibility as dirty - let mut viewshed_components = self.ecs.write_storage::(); - let vs = viewshed_components.get_mut(player_entity); - if let Some(vs) = vs { - vs.dirty = true; - } - } -} - -impl State { - fn entities_to_remove_on_level_change(&mut self) -> Vec { - let entities = self.ecs.entities(); - let player = self.ecs.read_storage::(); - let backpack = self.ecs.read_storage::(); - let player_entity = self.ecs.fetch::(); - let equipped = self.ecs.read_storage::(); - - let mut to_delete: Vec = Vec::new(); - for entity in entities.join() { - let mut should_delete = true; - - let p = player.get(entity); - if let Some(_p) = p { - should_delete = false; - } - - let bp = backpack.get(entity); - if let Some(bp) = bp { - if bp.owner == *player_entity { - should_delete = false; - } - } - - if let Some(eq) = equipped.get(entity) { - if eq.owner == *player_entity { - should_delete = false; - } - } - - if should_delete { - to_delete.push(entity); - } - } - - to_delete - } - - fn goto_next_level(&mut self) { - let to_delete = self.entities_to_remove_on_level_change(); - for target in to_delete { - self.ecs - .delete_entity(target) - .expect("Unable to delete entity") - } - - let mut map_builder; - let worldmap; - let current_depth; - let player_start; - { - let mut worldmap_resource = self.ecs.write_resource::(); - current_depth = worldmap_resource.depth; - map_builder = map_builders::new_random_builder(current_depth + 1); - map_builder.build_map(); - *worldmap_resource = map_builder.get_map(); - player_start = map_builder.get_starting_position(); - worldmap = worldmap_resource.clone(); - } - - map_builder.spawn_entities(&mut self.ecs); - - let (player_x, player_y) = (player_start.x, player_start.y); - let mut player_position = self.ecs.write_resource::(); - *player_position = Point::new(player_x, player_y); - let mut position_components = self.ecs.write_storage::(); - let player_entity = self.ecs.fetch::(); - let player_pos_comp = position_components.get_mut(*player_entity); - if let Some(player_pos) = player_pos_comp { - player_pos.x = player_x; - player_pos.y = player_y; - } - - let mut viewshed_components = self.ecs.write_storage::(); - let vs = viewshed_components.get_mut(*player_entity); - if let Some(vs) = vs { - vs.dirty = true; - } - - let mut gamelog = self.ecs.fetch_mut::(); - gamelog - .entries - .push("You descend to the next level, and take a moment to heal".to_string()); - let mut player_health_store = self.ecs.write_storage::(); - let player_health = player_health_store.get_mut(*player_entity); - if let Some(player_health) = player_health { - player_health.hp = i32::max(player_health.hp, player_health.max_hp / 2); - } - } -} - -impl State { - fn run_systems(&mut self) { - let mut vis = VisibilitySystem {}; - vis.run_now(&self.ecs); - - let mut mob = MonsterAI {}; - mob.run_now(&self.ecs); - - let mut trigger = TriggerSystem {}; - trigger.run_now(&self.ecs); - - let mut map_index = MapIndexingSystem {}; - map_index.run_now(&self.ecs); - - let mut melee_system = MeleeCombatSystem {}; - melee_system.run_now(&self.ecs); - - let mut damage_system = DamageSystem {}; - damage_system.run_now(&self.ecs); - - let mut healing_system = HealingSystem {}; - healing_system.run_now(&self.ecs); - - let mut inventory = ItemCollectionSystem {}; - inventory.run_now(&self.ecs); - - let mut potions = ItemUseSystem {}; - potions.run_now(&self.ecs); - - let mut drop_items = ItemDropSystem {}; - drop_items.run_now(&self.ecs); - - let mut remove_items = ItemRemoveSystem {}; - remove_items.run_now(&self.ecs); - - let mut hunger = HungerSystem {}; - hunger.run_now(&self.ecs); - - let mut particle_spawn = ParticleSpawnSystem {}; - particle_spawn.run_now(&self.ecs); - - self.ecs.maintain(); - } -} - -impl GameState for State { - fn tick(&mut self, ctx: &mut rltk::Rltk) { - let mut new_run_state; - { - let run_state = self.ecs.fetch::(); - new_run_state = *run_state; - } - - ctx.cls(); - particle_system::cull_dead_particles(&mut self.ecs, ctx); - - match new_run_state { - RunState::MainMenu { .. } => {} - _ => { - draw_map(&self.ecs, ctx); - - let positions = self.ecs.read_storage::(); - let renderables = self.ecs.read_storage::(); - let hidden = self.ecs.read_storage::(); - let map = self.ecs.fetch::(); - - let mut data = (&positions, &renderables, !&hidden) - .join() - .collect::>(); - data.sort_by(|&a, &b| b.1.render_order.cmp(&a.1.render_order)); - for (pos, render, _hidden) in data.iter() { - let idx = map.xy_idx(pos.x, pos.y); - if map.visible_tiles[idx] { - ctx.set(pos.x, pos.y, render.fg, render.bg, render.glyph) - } - } - - gui::draw_ui(&self.ecs, ctx); - } - } - - match new_run_state { - RunState::PreRun => { - self.run_systems(); - new_run_state = RunState::AwaitingInput; - } - RunState::AwaitingInput => new_run_state = player_input(self, ctx), - RunState::PlayerTurn => { - self.run_systems(); - new_run_state = RunState::MonsterTurn; - match *self.ecs.fetch::() { - RunState::MagicMapReveal { .. } => { - new_run_state = RunState::MagicMapReveal { row: 0 } - } - _ => { - new_run_state = RunState::MonsterTurn; - } - } - } - RunState::MonsterTurn => { - self.run_systems(); - new_run_state = RunState::AwaitingInput; - } - RunState::ShowInventory => { - let result = gui::show_inventory(self, ctx); - match result.0 { - gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, - gui::ItemMenuResult::NoResponse => {} - gui::ItemMenuResult::Selected => { - let item_entity = result.1.unwrap(); - let is_ranged = self.ecs.read_storage::(); - let is_item_ranged = is_ranged.get(item_entity); - if let Some(is_item_ranged) = is_item_ranged { - new_run_state = RunState::ShowTargeting { - range: is_item_ranged.range, - item: item_entity, - } - } else { - let mut intent = self.ecs.write_storage::(); - intent - .insert( - *self.ecs.fetch::(), - WantsToUseItem { - item: item_entity, - target: None, - }, - ) - .expect("Unable to insert intent"); - new_run_state = RunState::PlayerTurn; - } - } - } - } - RunState::ShowDropItem => { - let result = gui::drop_item_menu(self, ctx); - match result.0 { - gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, - gui::ItemMenuResult::NoResponse => {} - gui::ItemMenuResult::Selected => { - let item_entity = result.1.unwrap(); - let mut intent = self.ecs.write_storage::(); - intent - .insert( - *self.ecs.fetch::(), - WantsToDropItem { item: item_entity }, - ) - .expect("Unable to insert intent"); - new_run_state = RunState::PlayerTurn; - } - } - } - RunState::ShowTargeting { range, item } => { - let result = gui::ranged_target(self, ctx, range); - match result.0 { - gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, - gui::ItemMenuResult::NoResponse => {} - gui::ItemMenuResult::Selected => { - let mut intent = self.ecs.write_storage::(); - intent - .insert( - *self.ecs.fetch::(), - WantsToUseItem { - item, - target: result.1, - }, - ) - .expect("Unable to insert intent"); - new_run_state = RunState::PlayerTurn; - } - } - } - RunState::MainMenu { .. } => { - let result = gui::main_menu(self, ctx); - match result { - gui::MainMenuResult::NoSelection { selected } => { - new_run_state = RunState::MainMenu { - menu_selection: selected, - } - } - gui::MainMenuResult::Selected { selected } => match selected { - gui::MainMenuSelection::NewGame => new_run_state = RunState::PreRun, - gui::MainMenuSelection::LoadGame => { - save_load_system::load_game(&mut self.ecs); - new_run_state = RunState::AwaitingInput; - save_load_system::delete_save(); - } - gui::MainMenuSelection::Quit => ::std::process::exit(0), - }, - } - } - RunState::SaveGame => { - save_load_system::save_game(&mut self.ecs); - new_run_state = RunState::MainMenu { - menu_selection: gui::MainMenuSelection::Quit, - }; - } - RunState::NextLevel => { - self.goto_next_level(); - new_run_state = RunState::PreRun; - } - RunState::ShowRemoveItem => { - let result = gui::remove_item_menu(self, ctx); - match result.0 { - gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, - gui::ItemMenuResult::NoResponse => {} - gui::ItemMenuResult::Selected => { - let item_entity = result.1.unwrap(); - let mut intent = self.ecs.write_storage::(); - intent - .insert( - *self.ecs.fetch::(), - WantsToRemoveItem { item: item_entity }, - ) - .expect("Unable to insert intent"); - new_run_state = RunState::PlayerTurn; - } - } - } - RunState::GameOver => { - let result = gui::game_over(ctx); - match result { - gui::GameOverResult::NoSelection => {} - gui::GameOverResult::QuitToMenu => { - self.game_over_cleanup(); - new_run_state = RunState::MainMenu { - menu_selection: gui::MainMenuSelection::NewGame, - }; - } - } - } - RunState::MagicMapReveal { row } => { - let mut map = self.ecs.fetch_mut::(); - for x in 0..MAP_WIDTH { - let idx = map.xy_idx(x as i32, row); - map.revealed_tiles[idx] = true; - } - if row as usize == MAP_HEIGHT - 1 { - new_run_state = RunState::MonsterTurn; - } else { - new_run_state = RunState::MagicMapReveal { row: row + 1 } - } - } - } - - { - let mut run_writer = self.ecs.write_resource::(); - *run_writer = new_run_state; - } - damage_system::delete_the_dead(&mut self.ecs); - } -} +const SHOW_MAPGEN_VISUALIZER: bool = true; fn main() -> rltk::BError { use rltk::RltkBuilder; @@ -472,11 +58,7 @@ fn main() -> rltk::BError { .with_dimensions(80 * 3, 50 * 3) .build()?; context.with_post_scanlines(true); - let mut gs = State { ecs: World::new() }; - - gs.ecs.insert(rltk::RandomNumberGenerator::new()); - gs.ecs.insert(particle_system::ParticleBuilder::new()); - gs.ecs.insert(rex_assets::RexAssets::new()); + let mut gs = State::new(); gs.ecs.register::(); gs.ecs.register::(); @@ -518,24 +100,19 @@ fn main() -> rltk::BError { gs.ecs.insert(SimpleMarkerAllocator::::new()); - let mut map_builder = map_builders::new_random_builder(1); - map_builder.build_map(); - let player_pos = map_builder.get_starting_position(); - let mut map = map_builder.get_map(); - let (player_x, player_y) = (player_pos.x, player_pos.y); - - let player_entity = spawner::player(&mut gs.ecs, player_x, player_y); - map_builder.spawn_entities(&mut gs.ecs); - - gs.ecs.insert(map); - gs.ecs.insert(Point::new(player_x, player_y)); + gs.ecs.insert(Map::new(1)); + gs.ecs.insert(Point::new(0, 0)); + gs.ecs.insert(rltk::RandomNumberGenerator::new()); + let player_entity = spawner::player(&mut gs.ecs, 0, 0); gs.ecs.insert(player_entity); - gs.ecs.insert(RunState::MainMenu { - menu_selection: gui::MainMenuSelection::NewGame, - }); + gs.ecs.insert(RunState::MapGeneration {}); gs.ecs.insert(gamelog::GameLog { entries: vec!["Welcome to Rusty Roguelike".to_string()], }); + gs.ecs.insert(particle_system::ParticleBuilder::new()); + gs.ecs.insert(rex_assets::RexAssets::new()); + + gs.generate_world_map(1); rltk::main_loop(context, gs) } diff --git a/src/map.rs b/src/map.rs index be934cb..77cdc96 100644 --- a/src/map.rs +++ b/src/map.rs @@ -1,6 +1,6 @@ use std::collections::HashSet; -use rltk::{Algorithm2D, BaseMap, FontCharType, Point, RGB, Rltk}; +use rltk::{Algorithm2D, BaseMap, FontCharType, Point, Rltk, RGB}; use serde::{Deserialize, Serialize}; use specs::prelude::*; @@ -128,9 +128,7 @@ impl Algorithm2D for Map { } } -pub fn draw_map(ecs: &World, ctx: &mut Rltk) { - let map = ecs.fetch::(); - +pub fn draw_map(map: &Map, ctx: &mut Rltk) { let mut y = 0; let mut x = 0; for (idx, tile) in map.tiles.iter().enumerate() { diff --git a/src/map_builders/mod.rs b/src/map_builders/mod.rs index 4f8b616..f6c0b78 100644 --- a/src/map_builders/mod.rs +++ b/src/map_builders/mod.rs @@ -1,18 +1,20 @@ use specs::World; -use crate::{Map, Position}; use crate::map_builders::simple_map::SimpleMapBuilder; +use crate::{Map, Position}; -pub mod common; -pub mod simple_map; +mod common; +mod simple_map; pub trait MapBuilder { fn build_map(&mut self); fn spawn_entities(&mut self, ecs: &mut World); fn get_map(&self) -> Map; fn get_starting_position(&self) -> Position; + fn get_snapshot_history(&self) -> Vec; + fn take_snapshot(&mut self); } pub fn new_random_builder(new_depth: i32) -> Box { Box::new(SimpleMapBuilder::new(new_depth)) -} \ No newline at end of file +} diff --git a/src/map_builders/simple_map.rs b/src/map_builders/simple_map.rs index 88348a0..47f796c 100644 --- a/src/map_builders/simple_map.rs +++ b/src/map_builders/simple_map.rs @@ -1,15 +1,16 @@ use rltk::RandomNumberGenerator; use specs::prelude::*; -use crate::{Map, Position, spawner, TileType}; use crate::map_builders::{common, MapBuilder}; use crate::rect::Rect; +use crate::{spawner, Map, Position, TileType, SHOW_MAPGEN_VISUALIZER}; pub struct SimpleMapBuilder { map: Map, starting_position: Position, depth: i32, rooms: Vec, + history: Vec, } impl SimpleMapBuilder { @@ -19,6 +20,7 @@ impl SimpleMapBuilder { map: Map::new(new_depth), depth: new_depth, rooms: Vec::new(), + history: Vec::new(), } } @@ -43,6 +45,7 @@ impl SimpleMapBuilder { } if ok { common::apply_room_to_map(&mut self.map, &new_room); + self.take_snapshot(); if !self.rooms.is_empty() { let (new_x, new_y) = new_room.center(); @@ -57,6 +60,7 @@ impl SimpleMapBuilder { } self.rooms.push(new_room); + self.take_snapshot(); } } @@ -65,7 +69,10 @@ impl SimpleMapBuilder { self.map.tiles[stairs_idx] = TileType::DownStairs; let start_pos = self.rooms[0].center(); - self.starting_position = Position { x: start_pos.0, y: start_pos.1 } + self.starting_position = Position { + x: start_pos.0, + y: start_pos.1, + } } } @@ -87,4 +94,18 @@ impl MapBuilder for SimpleMapBuilder { fn get_starting_position(&self) -> Position { self.starting_position.clone() } + + fn get_snapshot_history(&self) -> Vec { + self.history.clone() + } + + fn take_snapshot(&mut self) { + if SHOW_MAPGEN_VISUALIZER { + let mut snapshot = self.map.clone(); + for v in snapshot.revealed_tiles.iter_mut() { + *v = true; + } + self.history.push(snapshot); + } + } } diff --git a/src/state.rs b/src/state.rs new file mode 100644 index 0000000..e4643f7 --- /dev/null +++ b/src/state.rs @@ -0,0 +1,432 @@ +use specs::prelude::*; + +use crate::*; + +#[derive(PartialEq, Copy, Clone)] +pub enum RunState { + AwaitingInput, + PreRun, + PlayerTurn, + MonsterTurn, + ShowInventory, + ShowDropItem, + ShowTargeting { + range: i32, + item: Entity, + }, + MainMenu { + menu_selection: gui::MainMenuSelection, + }, + SaveGame, + NextLevel, + ShowRemoveItem, + GameOver, + MagicMapReveal { + row: i32, + }, + MapGeneration, +} + +pub struct State { + pub ecs: World, + mapgen_next_state: Option, + mapgen_history: Vec, + mapgen_index: usize, + mapgen_timer: f32, +} + +impl State { + pub fn new() -> Self { + Self { + ecs: World::new(), + mapgen_history: Vec::new(), + mapgen_index: 0, + mapgen_timer: 0., + mapgen_next_state: Some(RunState::MainMenu { + menu_selection: MainMenuSelection::NewGame, + }), + } + } + + pub fn game_over_cleanup(&mut self) { + // Delete everything + let mut to_delete = Vec::new(); + for e in self.ecs.entities().join() { + to_delete.push(e); + } + for del in to_delete.iter() { + self.ecs.delete_entity(*del).expect("Deletion failed"); + } + + { + let player_entity = spawner::player(&mut self.ecs, 0, 0); + let mut player_entity_writer = self.ecs.write_resource::(); + *player_entity_writer = player_entity + } + + self.generate_world_map(1); + } + + fn entities_to_remove_on_level_change(&mut self) -> Vec { + let entities = self.ecs.entities(); + let player = self.ecs.read_storage::(); + let backpack = self.ecs.read_storage::(); + let player_entity = self.ecs.fetch::(); + let equipped = self.ecs.read_storage::(); + + let mut to_delete: Vec = Vec::new(); + for entity in entities.join() { + let mut should_delete = true; + + let p = player.get(entity); + if let Some(_p) = p { + should_delete = false; + } + + let bp = backpack.get(entity); + if let Some(bp) = bp { + if bp.owner == *player_entity { + should_delete = false; + } + } + + if let Some(eq) = equipped.get(entity) { + if eq.owner == *player_entity { + should_delete = false; + } + } + + if should_delete { + to_delete.push(entity); + } + } + + to_delete + } + + fn goto_next_level(&mut self) { + let to_delete = self.entities_to_remove_on_level_change(); + for target in to_delete { + self.ecs + .delete_entity(target) + .expect("Unable to delete entity") + } + + let current_depth; + { + let mut worldmap_resource = self.ecs.write_resource::(); + current_depth = worldmap_resource.depth; + } + self.generate_world_map(current_depth + 1); + + let player_entity = self.ecs.fetch::(); + let mut gamelog = self.ecs.fetch_mut::(); + gamelog + .entries + .push("You descend to the next level, and take a moment to heal".to_string()); + let mut player_health_store = self.ecs.write_storage::(); + let player_health = player_health_store.get_mut(*player_entity); + if let Some(player_health) = player_health { + player_health.hp = i32::max(player_health.hp, player_health.max_hp / 2); + } + } + + fn run_systems(&mut self) { + let mut vis = VisibilitySystem {}; + vis.run_now(&self.ecs); + + let mut mob = MonsterAI {}; + mob.run_now(&self.ecs); + + let mut trigger = TriggerSystem {}; + trigger.run_now(&self.ecs); + + let mut map_index = MapIndexingSystem {}; + map_index.run_now(&self.ecs); + + let mut melee_system = MeleeCombatSystem {}; + melee_system.run_now(&self.ecs); + + let mut damage_system = DamageSystem {}; + damage_system.run_now(&self.ecs); + + let mut healing_system = HealingSystem {}; + healing_system.run_now(&self.ecs); + + let mut inventory = ItemCollectionSystem {}; + inventory.run_now(&self.ecs); + + let mut potions = ItemUseSystem {}; + potions.run_now(&self.ecs); + + let mut drop_items = ItemDropSystem {}; + drop_items.run_now(&self.ecs); + + let mut remove_items = ItemRemoveSystem {}; + remove_items.run_now(&self.ecs); + + let mut hunger = HungerSystem {}; + hunger.run_now(&self.ecs); + + let mut particle_spawn = ParticleSpawnSystem {}; + particle_spawn.run_now(&self.ecs); + + self.ecs.maintain(); + } + + pub fn generate_world_map(&mut self, new_depth: i32) { + self.mapgen_index = 0; + self.mapgen_timer = 0.0; + self.mapgen_history.clear(); + + let mut map_builder = map_builders::new_random_builder(new_depth); + map_builder.build_map(); + self.mapgen_history = map_builder.get_snapshot_history(); + let player_start; + { + let mut world_map_resource = self.ecs.write_resource::(); + *world_map_resource = map_builder.get_map(); + player_start = map_builder.get_starting_position(); + } + + map_builder.spawn_entities(&mut self.ecs); + + let (player_x, player_y) = (player_start.x, player_start.y); + let mut player_pos = self.ecs.write_resource::(); + *player_pos = Point::new(player_x, player_y); + let mut pos_comp = self.ecs.write_storage::(); + let player_entity = self.ecs.fetch::(); + if let Some(player_pos_comp) = pos_comp.get_mut(*player_entity) { + player_pos_comp.x = player_x; + player_pos_comp.y = player_y; + } + + let mut viewshed_comp = self.ecs.write_storage::(); + if let Some(vs) = viewshed_comp.get_mut(*player_entity) { + vs.dirty = true; + } + } +} + +impl GameState for State { + fn tick(&mut self, ctx: &mut rltk::Rltk) { + let mut new_run_state; + { + let run_state = self.ecs.fetch::(); + new_run_state = *run_state; + } + + ctx.cls(); + particle_system::cull_dead_particles(&mut self.ecs, ctx); + + match new_run_state { + RunState::MainMenu { .. } => {} + _ => { + draw_map(&self.ecs.fetch::(), ctx); + + let positions = self.ecs.read_storage::(); + let renderables = self.ecs.read_storage::(); + let hidden = self.ecs.read_storage::(); + let map = self.ecs.fetch::(); + + let mut data = (&positions, &renderables, !&hidden) + .join() + .collect::>(); + data.sort_by(|&a, &b| b.1.render_order.cmp(&a.1.render_order)); + for (pos, render, _hidden) in data.iter() { + let idx = map.xy_idx(pos.x, pos.y); + if map.visible_tiles[idx] { + ctx.set(pos.x, pos.y, render.fg, render.bg, render.glyph) + } + } + + gui::draw_ui(&self.ecs, ctx); + } + } + + match new_run_state { + RunState::PreRun => { + self.run_systems(); + new_run_state = RunState::AwaitingInput; + } + RunState::AwaitingInput => new_run_state = player_input(self, ctx), + RunState::PlayerTurn => { + self.run_systems(); + new_run_state = RunState::MonsterTurn; + match *self.ecs.fetch::() { + RunState::MagicMapReveal { .. } => { + new_run_state = RunState::MagicMapReveal { row: 0 } + } + _ => { + new_run_state = RunState::MonsterTurn; + } + } + } + RunState::MonsterTurn => { + self.run_systems(); + new_run_state = RunState::AwaitingInput; + } + RunState::ShowInventory => { + let result = gui::show_inventory(self, ctx); + match result.0 { + gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, + gui::ItemMenuResult::NoResponse => {} + gui::ItemMenuResult::Selected => { + let item_entity = result.1.unwrap(); + let is_ranged = self.ecs.read_storage::(); + let is_item_ranged = is_ranged.get(item_entity); + if let Some(is_item_ranged) = is_item_ranged { + new_run_state = RunState::ShowTargeting { + range: is_item_ranged.range, + item: item_entity, + } + } else { + let mut intent = self.ecs.write_storage::(); + intent + .insert( + *self.ecs.fetch::(), + WantsToUseItem { + item: item_entity, + target: None, + }, + ) + .expect("Unable to insert intent"); + new_run_state = RunState::PlayerTurn; + } + } + } + } + RunState::ShowDropItem => { + let result = gui::drop_item_menu(self, ctx); + match result.0 { + gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, + gui::ItemMenuResult::NoResponse => {} + gui::ItemMenuResult::Selected => { + let item_entity = result.1.unwrap(); + let mut intent = self.ecs.write_storage::(); + intent + .insert( + *self.ecs.fetch::(), + WantsToDropItem { item: item_entity }, + ) + .expect("Unable to insert intent"); + new_run_state = RunState::PlayerTurn; + } + } + } + RunState::ShowTargeting { range, item } => { + let result = gui::ranged_target(self, ctx, range); + match result.0 { + gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, + gui::ItemMenuResult::NoResponse => {} + gui::ItemMenuResult::Selected => { + let mut intent = self.ecs.write_storage::(); + intent + .insert( + *self.ecs.fetch::(), + WantsToUseItem { + item, + target: result.1, + }, + ) + .expect("Unable to insert intent"); + new_run_state = RunState::PlayerTurn; + } + } + } + RunState::MainMenu { .. } => { + let result = gui::main_menu(self, ctx); + match result { + gui::MainMenuResult::NoSelection { selected } => { + new_run_state = RunState::MainMenu { + menu_selection: selected, + } + } + gui::MainMenuResult::Selected { selected } => match selected { + gui::MainMenuSelection::NewGame => new_run_state = RunState::PreRun, + gui::MainMenuSelection::LoadGame => { + save_load_system::load_game(&mut self.ecs); + new_run_state = RunState::AwaitingInput; + save_load_system::delete_save(); + } + gui::MainMenuSelection::Quit => ::std::process::exit(0), + }, + } + } + RunState::SaveGame => { + save_load_system::save_game(&mut self.ecs); + new_run_state = RunState::MainMenu { + menu_selection: gui::MainMenuSelection::Quit, + }; + } + RunState::NextLevel => { + self.goto_next_level(); + new_run_state = RunState::PreRun; + } + RunState::ShowRemoveItem => { + let result = gui::remove_item_menu(self, ctx); + match result.0 { + gui::ItemMenuResult::Cancel => new_run_state = RunState::AwaitingInput, + gui::ItemMenuResult::NoResponse => {} + gui::ItemMenuResult::Selected => { + let item_entity = result.1.unwrap(); + let mut intent = self.ecs.write_storage::(); + intent + .insert( + *self.ecs.fetch::(), + WantsToRemoveItem { item: item_entity }, + ) + .expect("Unable to insert intent"); + new_run_state = RunState::PlayerTurn; + } + } + } + RunState::GameOver => { + let result = gui::game_over(ctx); + match result { + gui::GameOverResult::NoSelection => {} + gui::GameOverResult::QuitToMenu => { + self.game_over_cleanup(); + new_run_state = RunState::MainMenu { + menu_selection: gui::MainMenuSelection::NewGame, + }; + } + } + } + RunState::MagicMapReveal { row } => { + let mut map = self.ecs.fetch_mut::(); + for x in 0..MAP_WIDTH { + let idx = map.xy_idx(x as i32, row); + map.revealed_tiles[idx] = true; + } + if row as usize == MAP_HEIGHT - 1 { + new_run_state = RunState::MonsterTurn; + } else { + new_run_state = RunState::MagicMapReveal { row: row + 1 } + } + } + RunState::MapGeneration => { + if !SHOW_MAPGEN_VISUALIZER { + new_run_state = self.mapgen_next_state.unwrap(); + } + ctx.cls(); + draw_map(&self.mapgen_history[self.mapgen_index], ctx); + + self.mapgen_timer += ctx.frame_time_ms; + if self.mapgen_timer > 300.0 { + self.mapgen_timer = 0.0; + self.mapgen_index += 1; + if self.mapgen_index >= self.mapgen_history.len() { + new_run_state = self.mapgen_next_state.unwrap(); + } + } + } + } + + { + let mut run_writer = self.ecs.write_resource::(); + *run_writer = new_run_state; + } + damage_system::delete_the_dead(&mut self.ecs); + } +}